From 119c11f9d3ada714351ebe3694d733a74908072a Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 16 Apr 2022 15:20:10 +0800 Subject: [PATCH 001/120] Add skeleton code for NotionalTradeModule --- .../modules/v1/NotionalTradeModule.sol | 216 ++++++++++++++++++ 1 file changed, 216 insertions(+) create mode 100644 contracts/protocol/modules/v1/NotionalTradeModule.sol diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol new file mode 100644 index 000000000..22691ac87 --- /dev/null +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -0,0 +1,216 @@ +/* + Copyright 2021 Set Labs Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + SPDX-License-Identifier: Apache License, Version 2.0 +*/ + +pragma solidity 0.6.10; +pragma experimental "ABIEncoderV2"; + +import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol"; +import { ReentrancyGuard } from "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; + +import { IController } from "../../../interfaces/IController.sol"; +import { IDebtIssuanceModule } from "../../../interfaces/IDebtIssuanceModule.sol"; +import { ISetToken } from "../../../interfaces/ISetToken.sol"; +import { ModuleBase } from "../../lib/ModuleBase.sol"; +import "@openzeppelin/contracts/utils/EnumerableSet.sol"; + +contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable { + using EnumerableSet for EnumerableSet.AddressSet; + + /* ============ Structs ============ */ + + + /* ============ Events ============ */ + + /** + * @dev Emitted on updateAnySetAllowed() + * @param _anySetAllowed true if any set is allowed to initialize this module, false otherwise + */ + event AnySetAllowedUpdated( + bool indexed _anySetAllowed + ); + + /** + * @dev Emitted on updateAllowedSetToken() + * @param _setToken SetToken being whose allowance to initialize this module is being updated + * @param _added true if added false if removed + */ + event SetTokenStatusUpdated( + ISetToken indexed _setToken, + bool indexed _added + ); + + /* ============ Constants ============ */ + + // String identifying the DebtIssuanceModule in the IntegrationRegistry. Note: Governance must add DefaultIssuanceModule as + // the string as the integration name + string constant internal DEFAULT_ISSUANCE_MODULE_NAME = "DefaultIssuanceModule"; + + /* ============ State Variables ============ */ + + // Internal mapping of enabled collateral and borrow tokens for syncing positions + mapping(ISetToken => bool) internal redeemToUnderlying; + + // Mapping of SetToken to boolean indicating if SetToken is on allow list. Updateable by governance + mapping(ISetToken => bool) public allowedSetTokens; + + // Mapping of SetToken to fCash positions + mapping(ISetToken => EnumerableSet.AddressSet) private fCashPositions; + + // Boolean that returns if any SetToken can initialize this module. If false, then subject to allow list. Updateable by governance. + bool public anySetAllowed; + + /* ============ Constructor ============ */ + + constructor( + IController _controller + ) + public + ModuleBase(_controller) + { + } + + /* ============ External Functions ============ */ + + function trade( + ISetToken _setToken, + IERC20 _sendToken, + uint256 _sendQuantity, + IERC20 _receiveToken, + uint256 _minReceiveQuantity + ) + external + nonReentrant + onlyManagerAndValidSet(_setToken) + returns(uint256 receiveQuantity) + { + } + + function redeemMaturedPositions(ISetToken _setToken) public nonReentrant onlyValidAndInitializedSet(_setToken) { + _redeemMaturedPositions(_setToken); + } + + function initialize( + ISetToken _setToken, + address[] calldata _fCashPositions + ) + external + onlySetManager(_setToken, msg.sender) + onlyValidAndPendingSet(_setToken) + { + if (!anySetAllowed) { + require(allowedSetTokens[_setToken], "Not allowed SetToken"); + } + + // Initialize module before trying register + _setToken.initializeModule(); + + // Get debt issuance module registered to this module and require that it is initialized + require(_setToken.isInitializedModule(getAndValidateAdapter(DEFAULT_ISSUANCE_MODULE_NAME)), "Issuance not initialized"); + + // Try if register exists on any of the modules including the debt issuance module + address[] memory modules = _setToken.getModules(); + for(uint256 i = 0; i < modules.length; i++) { + try IDebtIssuanceModule(modules[i]).registerToIssuanceModule(_setToken) {} catch {} + } + + // _collateralAssets and _borrowAssets arrays are validated in their respective internal functions + _addFCashPositions(_setToken, _fCashPositions); + } + + /** + * @dev MANAGER ONLY: Removes this module from the SetToken, via call by the SetToken. Any deposited collateral assets + * are disabled to be used as collateral on Aave. Aave Settings and manager enabled assets state is deleted. + * Note: Function will revert is there is any debt remaining on Aave + */ + function removeModule() external override onlyValidAndInitializedSet(ISetToken(msg.sender)) { + ISetToken setToken = ISetToken(msg.sender); + + // Redeem matured positions prior to any removal action + _redeemMaturedPositions(setToken); + + delete fCashPositions[setToken]; + + // Try if unregister exists on any of the modules + address[] memory modules = setToken.getModules(); + for(uint256 i = 0; i < modules.length; i++) { + try IDebtIssuanceModule(modules[i]).unregisterFromIssuanceModule(setToken) {} catch {} + } + } + + /** + * @dev MANAGER ONLY: Add registration of this module on the debt issuance module for the SetToken. + * Note: if the debt issuance module is not added to SetToken before this module is initialized, then this function + * needs to be called if the debt issuance module is later added and initialized to prevent state inconsistencies + * @param _setToken Instance of the SetToken + * @param _debtIssuanceModule Debt issuance module address to register + */ + function registerToModule(ISetToken _setToken, IDebtIssuanceModule _debtIssuanceModule) external onlyManagerAndValidSet(_setToken) { + require(_setToken.isInitializedModule(address(_debtIssuanceModule)), "Issuance not initialized"); + + _debtIssuanceModule.registerToIssuanceModule(_setToken); + } + + /** + * @dev GOVERNANCE ONLY: Enable/disable ability of a SetToken to initialize this module. Only callable by governance. + * @param _setToken Instance of the SetToken + * @param _status Bool indicating if _setToken is allowed to initialize this module + */ + function updateAllowedSetToken(ISetToken _setToken, bool _status) external onlyOwner { + require(controller.isSet(address(_setToken)) || allowedSetTokens[_setToken], "Invalid SetToken"); + allowedSetTokens[_setToken] = _status; + emit SetTokenStatusUpdated(_setToken, _status); + } + + /** + * @dev GOVERNANCE ONLY: Toggle whether ANY SetToken is allowed to initialize this module. Only callable by governance. + * @param _anySetAllowed Bool indicating if ANY SetToken is allowed to initialize this module + */ + function updateAnySetAllowed(bool _anySetAllowed) external onlyOwner { + anySetAllowed = _anySetAllowed; + emit AnySetAllowedUpdated(_anySetAllowed); + } + + function moduleIssueHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external onlyModule(_setToken) { + _redeemMaturedPositions(_setToken); + } + + function moduleRedeemHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external onlyModule(_setToken) { + _redeemMaturedPositions(_setToken); + } + + + /* ============ External Getter Functions ============ */ + + function getFCashPositions(ISetToken _setToken) external view returns(address[] memory positions) { + uint256 length = fCashPositions[_setToken].length(); + for(uint256 i = 0; i < length; i++) { + positions[i] = fCashPositions[_setToken].at(i); + } + } + + /* ============ Internal Functions ============ */ + + function _redeemMaturedPositions(ISetToken _setToken) internal { + } + function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { + for(uint256 i = 0; i < _fCashPositions.length; i++) { + fCashPositions[_setToken].add(_fCashPositions[i]); + } + } +} From 9db07043f3619c641605403f1dbf8ada0e31c619 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 16 Apr 2022 17:09:49 +0800 Subject: [PATCH 002/120] Add skeleton test for NotionalTradeModule --- .../modules/v1/notionalTradeModule.spec.ts | 223 ++++++++++++++++++ utils/contracts/index.ts | 1 + utils/deploys/deployModules.ts | 74 +++--- 3 files changed, 255 insertions(+), 43 deletions(-) create mode 100644 test/protocol/modules/v1/notionalTradeModule.spec.ts diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts new file mode 100644 index 000000000..a809a304e --- /dev/null +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -0,0 +1,223 @@ +import "module-alias/register"; +import { Address } from "@utils/types"; +import { Account } from "@utils/test/types"; +import { NotionalTradeModule, DebtIssuanceMock, SetToken } from "@utils/contracts"; +import DeployHelper from "@utils/deploys"; +import { ether } from "@utils/index"; +import { + getAccounts, + getWaffleExpect, + getSystemFixture, + getRandomAccount, + getRandomAddress, +} from "@utils/test/index"; +import { SystemFixture } from "@utils/fixtures"; + +const expect = getWaffleExpect(); + +describe("NotionalTradeModule", () => { + let owner: Account; + let deployer: DeployHelper; + let setup: SystemFixture; + + let debtIssuanceMock: DebtIssuanceMock; + let notionalTradeModule: NotionalTradeModule; + + beforeEach(async () => { + [owner] = await getAccounts(); + + deployer = new DeployHelper(owner.wallet); + + setup = getSystemFixture(owner.address); + await setup.initialize(); + + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + debtIssuanceMock = await deployer.mocks.deployDebtIssuanceMock(); + await setup.controller.addModule(debtIssuanceMock.address); + + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceMock.address + ); + }); + + describe("#constructor", async () => { + let subjectController: Address; + + beforeEach(async () => { + subjectController = setup.controller.address; + }); + + async function subject(): Promise { + return deployer.modules.deployNotionalTradeModule(subjectController); + } + + it("should set the correct controller", async () => { + const notionalTradeModule = await subject(); + + const controller = await notionalTradeModule.controller(); + expect(controller).to.eq(subjectController); + }); + }); + + describe("#initialize", async () => { + let setToken: SetToken; + let isAllowListed: boolean = true; + let subjectSetToken: Address; + let subjectFCashPositions: Address[]; + let subjectCaller: Account; + + beforeEach(async () => { + setToken = await setup.createSetToken( + [setup.weth.address, setup.dai.address], + [ether(1), ether(100)], + [notionalTradeModule.address, debtIssuanceMock.address], + ); + await debtIssuanceMock.initialize(setToken.address); + + if (isAllowListed) { + // Add SetToken to allow list + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + } + + subjectSetToken = setToken.address; + subjectFCashPositions = [setup.weth.address, setup.dai.address]; + subjectCaller = owner; + }); + + async function subject(): Promise { + return notionalTradeModule + .connect(subjectCaller.wallet) + .initialize(subjectSetToken, subjectFCashPositions); + } + + describe("when isAllowListed is true", () => { + before(async () => { + isAllowListed = true; + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule(notionalTradeModule.address); + expect(isModuleEnabled).to.eq(true); + }); + + it("should register on the debt issuance module", async () => { + await subject(); + const isRegistered = await debtIssuanceMock.isRegistered(setToken.address); + expect(isRegistered).to.be.true; + }); + + describe("when debt issuance module is not added to integration registry", async () => { + beforeEach(async () => { + await setup.integrationRegistry.removeIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + ); + }); + + afterEach(async () => { + // Add debt issuance address to integration + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceMock.address, + ); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be valid adapter"); + }); + }); + + describe("when debt issuance module is not initialized on SetToken", async () => { + beforeEach(async () => { + await setToken.removeModule(debtIssuanceMock.address); + }); + + afterEach(async () => { + await setToken.addModule(debtIssuanceMock.address); + await debtIssuanceMock.initialize(setToken.address); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); + }); + + describe("when the caller is not the SetToken manager", async () => { + beforeEach(async () => { + subjectCaller = await getRandomAccount(); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); + + describe("when SetToken is not in pending state", async () => { + beforeEach(async () => { + const newModule = await getRandomAddress(); + await setup.controller.addModule(newModule); + + const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( + [setup.weth.address], + [ether(1)], + [newModule], + ); + + subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be pending initialization"); + }); + }); + + describe("when the SetToken is not enabled on the controller", async () => { + beforeEach(async () => { + const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( + [setup.weth.address], + [ether(1)], + [notionalTradeModule.address], + ); + + subjectSetToken = nonEnabledSetToken.address; + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); + }); + }); + }); + + describe("when isAllowListed is false", async () => { + before(async () => { + isAllowListed = false; + }); + + describe("when SetToken is not allowlisted", async () => { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Not allowed SetToken"); + }); + }); + + describe("when any Set can initialize this module", async () => { + beforeEach(async () => { + await notionalTradeModule.updateAnySetAllowed(true); + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule(notionalTradeModule.address); + expect(isModuleEnabled).to.eq(true); + }); + }); + }); + }); +}); diff --git a/utils/contracts/index.ts b/utils/contracts/index.ts index ea0f05978..09319203b 100644 --- a/utils/contracts/index.ts +++ b/utils/contracts/index.ts @@ -56,6 +56,7 @@ export { ModuleBaseV2Mock } from "../../typechain/ModuleBaseV2Mock"; export { ModuleIssuanceHookMock } from "../../typechain/ModuleIssuanceHookMock"; export { NAVIssuanceCaller } from "../../typechain/NAVIssuanceCaller"; export { NAVIssuanceHookMock } from "../../typechain/NAVIssuanceHookMock"; +export { NotionalTradeModule } from "../../typechain/NotionalTradeModule"; export { OneInchExchangeAdapter } from "../../typechain/OneInchExchangeAdapter"; export { OneInchExchangeMock } from "../../typechain/OneInchExchangeMock"; export { OracleAdapterMock } from "../../typechain/OracleAdapterMock"; diff --git a/utils/deploys/deployModules.ts b/utils/deploys/deployModules.ts index 6e10b64cc..82c3e18c5 100644 --- a/utils/deploys/deployModules.ts +++ b/utils/deploys/deployModules.ts @@ -13,6 +13,7 @@ import { GeneralIndexModule, GovernanceModule, IssuanceModule, + NotionalTradeModule, PerpV2LeverageModuleV2, PerpV2BasisTradingModule, SingleIndexModule, @@ -21,7 +22,7 @@ import { StreamingFeeModule, TradeModule, WrapModule, - WrapModuleV2 + WrapModuleV2, } from "../contracts"; import { Address } from "../types"; @@ -38,6 +39,7 @@ import { SlippageIssuanceModule__factory } from "../../typechain/factories/Slipp import { GeneralIndexModule__factory } from "../../typechain/factories/GeneralIndexModule__factory"; import { GovernanceModule__factory } from "../../typechain/factories/GovernanceModule__factory"; import { IssuanceModule__factory } from "../../typechain/factories/IssuanceModule__factory"; +import { NotionalTradeModule__factory } from "../../typechain/factories/NotionalTradeModule__factory"; import { PerpV2LeverageModuleV2__factory } from "../../typechain/factories/PerpV2LeverageModuleV2__factory"; import { PerpV2BasisTradingModule__factory } from "../../typechain/factories/PerpV2BasisTradingModule__factory"; import { SingleIndexModule__factory } from "../../typechain/factories/SingleIndexModule__factory"; @@ -110,8 +112,14 @@ export default class DeployModules { return await new StakingModule__factory(this._deployerSigner).deploy(controller); } - public async deployCustomOracleNavIssuanceModule(controller: Address, weth: Address): Promise { - return await new CustomOracleNavIssuanceModule__factory(this._deployerSigner).deploy(controller, weth); + public async deployCustomOracleNavIssuanceModule( + controller: Address, + weth: Address, + ): Promise { + return await new CustomOracleNavIssuanceModule__factory(this._deployerSigner).deploy( + controller, + weth, + ); } public async deploySingleIndexModule( @@ -119,7 +127,7 @@ export default class DeployModules { weth: Address, uniswapRouter: Address, sushiswapRouter: Address, - balancerProxy: Address + balancerProxy: Address, ): Promise { return await new SingleIndexModule__factory(this._deployerSigner).deploy( controller, @@ -132,12 +140,9 @@ export default class DeployModules { public async deployGeneralIndexModule( controller: Address, - weth: Address + weth: Address, ): Promise { - return await new GeneralIndexModule__factory(this._deployerSigner).deploy( - controller, - weth - ); + return await new GeneralIndexModule__factory(this._deployerSigner).deploy(controller, weth); } public async deployGovernanceModule(controller: Address): Promise { @@ -151,39 +156,34 @@ export default class DeployModules { cEth: Address, weth: Address, libraryName: string, - libraryAddress: Address + libraryAddress: Address, ): Promise { return await new CompoundLeverageModule__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner - ).deploy( - controller, - compToken, - comptroller, - cEth, - weth, - ); + this._deployerSigner, + ).deploy(controller, compToken, comptroller, cEth, weth); } public async deployAaveLeverageModule( controller: Address, lendingPoolAddressesProvider: Address, libraryName: string, - libraryAddress: Address + libraryAddress: Address, ): Promise { return await new AaveLeverageModule__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner - ).deploy( - controller, - lendingPoolAddressesProvider - ); + this._deployerSigner, + ).deploy(controller, lendingPoolAddressesProvider); + } + + public async deployNotionalTradeModule(controller: Address): Promise { + return await new NotionalTradeModule__factory(this._deployerSigner).deploy(controller); } public async deployWrapModuleV2(controller: Address, weth: Address): Promise { @@ -201,7 +201,7 @@ export default class DeployModules { perpV2LibraryName: string, perpV2LibraryAddress: Address, perpV2PositionsLibraryName: string, - perpV2PositionsLibraryAddress: Address + perpV2PositionsLibraryAddress: Address, ): Promise { return await new PerpV2LeverageModuleV2__factory( // @ts-ignore @@ -210,14 +210,8 @@ export default class DeployModules { [perpV2LibraryName]: perpV2LibraryAddress, [perpV2PositionsLibraryName]: perpV2PositionsLibraryAddress, }, - this._deployerSigner - ).deploy( - controller, - perpVault, - perpQuoter, - perpMarketRegistry, - maxPerpPositionsPerSet - ); + this._deployerSigner, + ).deploy(controller, perpVault, perpQuoter, perpMarketRegistry, maxPerpPositionsPerSet); } public async deployPerpV2BasisTradingModule( @@ -231,7 +225,7 @@ export default class DeployModules { perpV2LibraryName: string, perpV2LibraryAddress: Address, perpV2PositionsLibraryName: string, - perpV2PositionsLibraryAddress: Address + perpV2PositionsLibraryAddress: Address, ): Promise { return await new PerpV2BasisTradingModule__factory( // @ts-ignore @@ -240,13 +234,7 @@ export default class DeployModules { [perpV2LibraryName]: perpV2LibraryAddress, [perpV2PositionsLibraryName]: perpV2PositionsLibraryAddress, }, - this._deployerSigner - ).deploy( - controller, - perpVault, - perpQuoter, - perpMarketRegistry, - maxPerpPositionsPerSet - ); + this._deployerSigner, + ).deploy(controller, perpVault, perpQuoter, perpMarketRegistry, maxPerpPositionsPerSet); } -} \ No newline at end of file +} From 83cdd7cf072e3738e00a118ee98bc79fe885ef8d Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 17 Apr 2022 10:38:01 +0800 Subject: [PATCH 003/120] Add component issuance hook --- .../modules/v1/NotionalTradeModule.sol | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 22691ac87..58c99d6b4 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -25,11 +25,12 @@ import { ReentrancyGuard } from "@openzeppelin/contracts/utils/ReentrancyGuard.s import { IController } from "../../../interfaces/IController.sol"; import { IDebtIssuanceModule } from "../../../interfaces/IDebtIssuanceModule.sol"; +import { IModuleIssuanceHook } from "../../../interfaces/IModuleIssuanceHook.sol"; import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; -contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable { +contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; /* ============ Structs ============ */ @@ -186,15 +187,34 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable { emit AnySetAllowedUpdated(_anySetAllowed); } - function moduleIssueHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external onlyModule(_setToken) { + function moduleIssueHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external override onlyModule(_setToken) { _redeemMaturedPositions(_setToken); } - function moduleRedeemHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external onlyModule(_setToken) { + function moduleRedeemHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external override onlyModule(_setToken) { _redeemMaturedPositions(_setToken); } + function componentIssueHook( + ISetToken _setToken, + uint256 _setTokenQuantity, + IERC20 _component, + bool _isEquity + ) external override onlyModule(_setToken) { + } + + function componentRedeemHook( + ISetToken _setToken, + uint256 _setTokenQuantity, + IERC20 _component, + bool _isEquity + ) external override onlyModule(_setToken) { + } + + + + /* ============ External Getter Functions ============ */ function getFCashPositions(ISetToken _setToken) external view returns(address[] memory positions) { From 816958e55d96616b8803595fe5ec268ec70bdae4 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 17 Apr 2022 12:11:42 +0800 Subject: [PATCH 004/120] Add WrappedfCash Interface and Mock --- contracts/interfaces/IWrappedfCash.sol | 75 ++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 contracts/interfaces/IWrappedfCash.sol diff --git a/contracts/interfaces/IWrappedfCash.sol b/contracts/interfaces/IWrappedfCash.sol new file mode 100644 index 000000000..383e457b0 --- /dev/null +++ b/contracts/interfaces/IWrappedfCash.sol @@ -0,0 +1,75 @@ +// SPDX-License-Identifier: GPL-3.0-only +pragma solidity 0.6.10; +pragma experimental "ABIEncoderV2"; + +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import "@openzeppelin/contracts/token/ERC777/IERC777.sol"; + +/// @notice Different types of internal tokens +/// - UnderlyingToken: underlying asset for a cToken (except for Ether) +/// - cToken: Compound interest bearing token +/// - cETH: Special handling for cETH tokens +/// - Ether: the one and only +/// - NonMintable: tokens that do not have an underlying (therefore not cTokens) +enum TokenType { + UnderlyingToken, + cToken, + cETH, + Ether, + NonMintable +} + +interface IWrappedfCash { + struct RedeemOpts { + bool redeemToUnderlying; + bool transferfCash; + address receiver; + // Zero signifies no maximum slippage + uint32 maxImpliedRate; + } + + /// @notice Mints wrapped fCash ERC20 tokens + function mint( + uint256 depositAmountExternal, + uint88 fCashAmount, + address receiver, + uint32 minImpliedRate, + bool useUnderlying + ) external; + + function redeem(uint256 amount, RedeemOpts memory data) external; + function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external; + function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external; + + /// @notice Returns the underlying fCash ID of the token + function getfCashId() external view returns (uint256); + + /// @notice Returns the underlying fCash maturity of the token + function getMaturity() external view returns (uint40 maturity); + + /// @notice True if the fCash has matured, assets mature exactly on the block time + function hasMatured() external view returns (bool); + + /// @notice Returns the underlying fCash currency + function getCurrencyId() external view returns (uint16 currencyId); + + /// @notice Returns the components of the fCash idd + function getDecodedID() external view returns (uint16 currencyId, uint40 maturity); + + /// @notice Returns the current market index for this fCash asset. If this returns + /// zero that means it is idiosyncratic and cannot be traded. + function getMarketIndex() external view returns (uint8); + + /// @notice Returns the token and precision of the token that this token settles + /// to. For example, fUSDC will return the USDC token address and 1e6. The zero + /// address will represent ETH. + function getUnderlyingToken() external view returns (IERC20 underlyingToken, int256 underlyingPrecision); + + /// @notice Returns the asset token which the fCash settles to. This will be an interest + /// bearing token like a cToken or aToken. + function getAssetToken() external view returns (IERC20 assetToken, int256 assetPrecision, TokenType tokenType); +} + + +interface IWrappedfCashComplete is IWrappedfCash, IERC777 {} + From 2ae8c4a32b8c4b82714fed81a46f9c9ff1229840 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 17 Apr 2022 14:17:01 +0800 Subject: [PATCH 005/120] Remove wrongly cased file --- contracts/interfaces/IWrappedfCash.sol | 75 -------------------------- 1 file changed, 75 deletions(-) delete mode 100644 contracts/interfaces/IWrappedfCash.sol diff --git a/contracts/interfaces/IWrappedfCash.sol b/contracts/interfaces/IWrappedfCash.sol deleted file mode 100644 index 383e457b0..000000000 --- a/contracts/interfaces/IWrappedfCash.sol +++ /dev/null @@ -1,75 +0,0 @@ -// SPDX-License-Identifier: GPL-3.0-only -pragma solidity 0.6.10; -pragma experimental "ABIEncoderV2"; - -import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import "@openzeppelin/contracts/token/ERC777/IERC777.sol"; - -/// @notice Different types of internal tokens -/// - UnderlyingToken: underlying asset for a cToken (except for Ether) -/// - cToken: Compound interest bearing token -/// - cETH: Special handling for cETH tokens -/// - Ether: the one and only -/// - NonMintable: tokens that do not have an underlying (therefore not cTokens) -enum TokenType { - UnderlyingToken, - cToken, - cETH, - Ether, - NonMintable -} - -interface IWrappedfCash { - struct RedeemOpts { - bool redeemToUnderlying; - bool transferfCash; - address receiver; - // Zero signifies no maximum slippage - uint32 maxImpliedRate; - } - - /// @notice Mints wrapped fCash ERC20 tokens - function mint( - uint256 depositAmountExternal, - uint88 fCashAmount, - address receiver, - uint32 minImpliedRate, - bool useUnderlying - ) external; - - function redeem(uint256 amount, RedeemOpts memory data) external; - function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external; - function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external; - - /// @notice Returns the underlying fCash ID of the token - function getfCashId() external view returns (uint256); - - /// @notice Returns the underlying fCash maturity of the token - function getMaturity() external view returns (uint40 maturity); - - /// @notice True if the fCash has matured, assets mature exactly on the block time - function hasMatured() external view returns (bool); - - /// @notice Returns the underlying fCash currency - function getCurrencyId() external view returns (uint16 currencyId); - - /// @notice Returns the components of the fCash idd - function getDecodedID() external view returns (uint16 currencyId, uint40 maturity); - - /// @notice Returns the current market index for this fCash asset. If this returns - /// zero that means it is idiosyncratic and cannot be traded. - function getMarketIndex() external view returns (uint8); - - /// @notice Returns the token and precision of the token that this token settles - /// to. For example, fUSDC will return the USDC token address and 1e6. The zero - /// address will represent ETH. - function getUnderlyingToken() external view returns (IERC20 underlyingToken, int256 underlyingPrecision); - - /// @notice Returns the asset token which the fCash settles to. This will be an interest - /// bearing token like a cToken or aToken. - function getAssetToken() external view returns (IERC20 assetToken, int256 assetPrecision, TokenType tokenType); -} - - -interface IWrappedfCashComplete is IWrappedfCash, IERC777 {} - From 905ef8b00a1e8314803f625e7d0592d69018924c Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 17 Apr 2022 14:56:19 +0800 Subject: [PATCH 006/120] Add WrappedFCash ERC-777 Interface and Mock --- contracts/interfaces/IWrappedFCash.sol | 75 +++++++++++ contracts/mocks/WrappedfCashMock.sol | 122 ++++++++++++++++++ .../modules/v1/AaveLeverageModule.sol | 2 +- .../modules/v1/NotionalTradeModule.sol | 26 ++++ contracts/protocol/modules/v1/TradeModule.sol | 2 +- 5 files changed, 225 insertions(+), 2 deletions(-) create mode 100644 contracts/interfaces/IWrappedFCash.sol create mode 100644 contracts/mocks/WrappedfCashMock.sol diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol new file mode 100644 index 000000000..383e457b0 --- /dev/null +++ b/contracts/interfaces/IWrappedFCash.sol @@ -0,0 +1,75 @@ +// SPDX-License-Identifier: GPL-3.0-only +pragma solidity 0.6.10; +pragma experimental "ABIEncoderV2"; + +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import "@openzeppelin/contracts/token/ERC777/IERC777.sol"; + +/// @notice Different types of internal tokens +/// - UnderlyingToken: underlying asset for a cToken (except for Ether) +/// - cToken: Compound interest bearing token +/// - cETH: Special handling for cETH tokens +/// - Ether: the one and only +/// - NonMintable: tokens that do not have an underlying (therefore not cTokens) +enum TokenType { + UnderlyingToken, + cToken, + cETH, + Ether, + NonMintable +} + +interface IWrappedfCash { + struct RedeemOpts { + bool redeemToUnderlying; + bool transferfCash; + address receiver; + // Zero signifies no maximum slippage + uint32 maxImpliedRate; + } + + /// @notice Mints wrapped fCash ERC20 tokens + function mint( + uint256 depositAmountExternal, + uint88 fCashAmount, + address receiver, + uint32 minImpliedRate, + bool useUnderlying + ) external; + + function redeem(uint256 amount, RedeemOpts memory data) external; + function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external; + function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external; + + /// @notice Returns the underlying fCash ID of the token + function getfCashId() external view returns (uint256); + + /// @notice Returns the underlying fCash maturity of the token + function getMaturity() external view returns (uint40 maturity); + + /// @notice True if the fCash has matured, assets mature exactly on the block time + function hasMatured() external view returns (bool); + + /// @notice Returns the underlying fCash currency + function getCurrencyId() external view returns (uint16 currencyId); + + /// @notice Returns the components of the fCash idd + function getDecodedID() external view returns (uint16 currencyId, uint40 maturity); + + /// @notice Returns the current market index for this fCash asset. If this returns + /// zero that means it is idiosyncratic and cannot be traded. + function getMarketIndex() external view returns (uint8); + + /// @notice Returns the token and precision of the token that this token settles + /// to. For example, fUSDC will return the USDC token address and 1e6. The zero + /// address will represent ETH. + function getUnderlyingToken() external view returns (IERC20 underlyingToken, int256 underlyingPrecision); + + /// @notice Returns the asset token which the fCash settles to. This will be an interest + /// bearing token like a cToken or aToken. + function getAssetToken() external view returns (IERC20 assetToken, int256 assetPrecision, TokenType tokenType); +} + + +interface IWrappedfCashComplete is IWrappedfCash, IERC777 {} + diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol new file mode 100644 index 000000000..77d948723 --- /dev/null +++ b/contracts/mocks/WrappedfCashMock.sol @@ -0,0 +1,122 @@ +/* + Copyright 2020 Set Labs Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + SPDX-License-Identifier: Apache License, Version 2.0 +*/ + +pragma solidity 0.6.10; +pragma experimental "ABIEncoderV2"; + +import "@openzeppelin/contracts/token/ERC777/ERC777.sol"; +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import { TokenType, IWrappedfCash } from "../interfaces/IWrappedFCash.sol"; + +// mock class using BasicToken +contract WrappedfCashMock is ERC777, IWrappedfCash { + + uint256 private fCashId; + uint40 private maturity; + bool private _hasMatured; + uint16 private currencyId; + uint8 private marketIndex; + IERC20 private underlyingToken; + int256 private underlyingPrecision; + IERC20 private assetToken; + int256 private assetPrecision; + TokenType private tokenType; + + constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC777("FCashMock", "FCM", new address[](0)) { + assetToken = _assetToken; + underlyingToken = _underlyingToken; + } + + /// @notice Mints wrapped fCash ERC20 tokens + function mint( + uint256 depositAmountExternal, + uint88 fCashAmount, + address receiver, + uint32 minImpliedRate, + bool useUnderlying + ) external override{ + _mint(receiver, fCashAmount, "", ""); + } + + function redeem(uint256 amount, RedeemOpts memory opts) public override { + bytes memory data = abi.encode(opts); + burn(amount, data); + } + + function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external override { + redeem(amount, RedeemOpts({ + redeemToUnderlying: false, + transferfCash: false, + receiver: receiver, + maxImpliedRate: maxImpliedRate + })); + } + + function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external override { + redeem(amount, RedeemOpts({ + redeemToUnderlying: true, + transferfCash: false, + receiver: receiver, + maxImpliedRate: maxImpliedRate + })); + } + + /// @notice Returns the underlying fCash ID of the token + function getfCashId() external override view returns (uint256) { + return fCashId; + } + + /// @notice Returns the underlying fCash maturity of the token + function getMaturity() external override view returns (uint40) { + return maturity; + } + + /// @notice True if the fCash has matured, assets mature exactly on the block time + function hasMatured() external override view returns (bool) { + return _hasMatured; + } + + /// @notice Returns the underlying fCash currency + function getCurrencyId() external override view returns (uint16) { + return currencyId; + } + + /// @notice Returns the components of the fCash idd + function getDecodedID() external override view returns (uint16, uint40) { + return (currencyId, maturity); + } + + /// @notice Returns the current market index for this fCash asset. If this returns + /// zero that means it is idiosyncratic and cannot be traded. + function getMarketIndex() external override view returns (uint8) { + return marketIndex; + } + + /// @notice Returns the token and precision of the token that this token settles + /// to. For example, fUSDC will return the USDC token address and 1e6. The zero + /// address will represent ETH. + function getUnderlyingToken() external override view returns (IERC20, int256) { + return (underlyingToken, underlyingPrecision); + } + + /// @notice Returns the asset token which the fCash settles to. This will be an interest + /// bearing token like a cToken or aToken. + function getAssetToken() external override view returns (IERC20, int256, TokenType) { + return (assetToken, assetPrecision, tokenType); + } +} diff --git a/contracts/protocol/modules/v1/AaveLeverageModule.sol b/contracts/protocol/modules/v1/AaveLeverageModule.sol index a4799d518..bcf973d4f 100644 --- a/contracts/protocol/modules/v1/AaveLeverageModule.sol +++ b/contracts/protocol/modules/v1/AaveLeverageModule.sol @@ -1135,4 +1135,4 @@ contract AaveLeverageModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssu uint256 borrowNotionalBalance = underlyingToReserveTokens[_borrowAsset].variableDebtToken.balanceOf(address(_setToken)); return borrowNotionalBalance.preciseDivCeil(_setTotalSupply).toInt256().mul(-1); } -} \ No newline at end of file +} diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 58c99d6b4..972240d32 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -26,6 +26,7 @@ import { ReentrancyGuard } from "@openzeppelin/contracts/utils/ReentrancyGuard.s import { IController } from "../../../interfaces/IController.sol"; import { IDebtIssuanceModule } from "../../../interfaces/IDebtIssuanceModule.sol"; import { IModuleIssuanceHook } from "../../../interfaces/IModuleIssuanceHook.sol"; +import { IWrappedfCashComplete } from "../../../interfaces/IWrappedFCash.sol"; import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; @@ -227,7 +228,32 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ Internal Functions ============ */ function _redeemMaturedPositions(ISetToken _setToken) internal { + uint fCashPositionLength = fCashPositions[_setToken].length(); + if(fCashPositionLength == 0) return; + bool toUnderlying = redeemToUnderlying[_setToken]; + for(uint256 i = 0; i < fCashPositionLength; i++) { + IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositions[_setToken].at(i)); + if(fCashPosition.hasMatured()) { + _redeemFCashPosition(_setToken, fCashPosition, toUnderlying); + } + } } + function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, bool _toUnderlying) internal { + uint256 fCashBalance = _fCashPosition.balanceOf(address(_setToken)); + if(fCashBalance == 0) return; + + // TODO: Review if this value is correct / what is max implied rate ? + uint32 maxImpliedRate = type(uint32).max; + _fCashPosition.operatorSend(address(_setToken), address(this), fCashBalance, "", ""); + + if(_toUnderlying) { + _fCashPosition.redeemToUnderlying(fCashBalance, address(_setToken), maxImpliedRate); + } else { + _fCashPosition.redeemToAsset(fCashBalance, address(_setToken), maxImpliedRate); + } + + } + function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { for(uint256 i = 0; i < _fCashPositions.length; i++) { fCashPositions[_setToken].add(_fCashPositions[i]); diff --git a/contracts/protocol/modules/v1/TradeModule.sol b/contracts/protocol/modules/v1/TradeModule.sol index c98919d8a..09e399990 100644 --- a/contracts/protocol/modules/v1/TradeModule.sol +++ b/contracts/protocol/modules/v1/TradeModule.sol @@ -320,4 +320,4 @@ contract TradeModule is ModuleBase, ReentrancyGuard { currentReceiveTokenBalance.sub(_tradeInfo.preTradeReceiveTokenBalance) ); } -} \ No newline at end of file +} From 8e4e271df7dc71245f7363518c07fb3d90de008d Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 20 Apr 2022 19:12:20 +0800 Subject: [PATCH 007/120] Extend notional trade module code with mint / and redeem helper functions --- contracts/interfaces/IWrappedFCash.sol | 2 +- .../modules/v1/NotionalTradeModule.sol | 51 +++++++++++++++---- 2 files changed, 41 insertions(+), 12 deletions(-) diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol index 383e457b0..21401e455 100644 --- a/contracts/interfaces/IWrappedFCash.sol +++ b/contracts/interfaces/IWrappedFCash.sol @@ -71,5 +71,5 @@ interface IWrappedfCash { } -interface IWrappedfCashComplete is IWrappedfCash, IERC777 {} +interface IWrappedfCashComplete is IWrappedfCash, IERC20 {} diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 972240d32..7423154de 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -91,16 +91,29 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function trade( ISetToken _setToken, - IERC20 _sendToken, + address _sendToken, uint256 _sendQuantity, - IERC20 _receiveToken, - uint256 _minReceiveQuantity + address _receiveToken, + uint256 _minReceiveQuantity, + bool _useUnderlying ) external nonReentrant onlyManagerAndValidSet(_setToken) returns(uint256 receiveQuantity) { + if(fCashPositions[_setToken].contains(_sendToken)) + { + return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), _sendQuantity, _useUnderlying); + } + else if(fCashPositions[_setToken].contains(_receiveToken)) + { + return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), _minReceiveQuantity, _minReceiveQuantity, _useUnderlying); + } + else { + revert("Neither send nor receive token is a registered fCash position"); + } + } function redeemMaturedPositions(ISetToken _setToken) public nonReentrant onlyValidAndInitializedSet(_setToken) { @@ -234,23 +247,39 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss for(uint256 i = 0; i < fCashPositionLength; i++) { IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositions[_setToken].at(i)); if(fCashPosition.hasMatured()) { - _redeemFCashPosition(_setToken, fCashPosition, toUnderlying); + uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); + _redeemFCashPosition(_setToken, fCashPosition, fCashBalance, toUnderlying); } } } - function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, bool _toUnderlying) internal { - uint256 fCashBalance = _fCashPosition.balanceOf(address(_setToken)); - if(fCashBalance == 0) return; + + function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _amount, bool _toUnderlying) internal returns(uint256) { + if(_amount == 0) return 0; // TODO: Review if this value is correct / what is max implied rate ? uint32 maxImpliedRate = type(uint32).max; - _fCashPosition.operatorSend(address(_setToken), address(this), fCashBalance, "", ""); - + IERC20 receiveToken; + uint256 balanceBefore; if(_toUnderlying) { - _fCashPosition.redeemToUnderlying(fCashBalance, address(_setToken), maxImpliedRate); + (receiveToken,) = _fCashPosition.getUnderlyingToken(); + balanceBefore = receiveToken.balanceOf(address(_setToken)); + _fCashPosition.redeemToUnderlying(_amount, address(_setToken), maxImpliedRate); } else { - _fCashPosition.redeemToAsset(fCashBalance, address(_setToken), maxImpliedRate); + (receiveToken,,) = _fCashPosition.getAssetToken(); + balanceBefore = receiveToken.balanceOf(address(_setToken)); + _fCashPosition.redeemToAsset(_amount, address(_setToken), maxImpliedRate); } + uint256 balanceAfter = receiveToken.balanceOf(address(_setToken)); + return balanceAfter.sub(balanceBefore); + + } + + function _mintFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _fCashAmount, uint256 _maxAssetAmount, bool _useUnderlying) internal returns(uint256 assetAmountSpent) { + if(_fCashAmount == 0) return 0; + + // TODO: Review if this value is correct / what is max implied rate ? + uint32 minImpliedRate = 0; + _fCashPosition.mint(_maxAssetAmount, uint88(_fCashAmount), address(_setToken), minImpliedRate, _useUnderlying); } From 88934db200c4b4a886eec3c19dce9fbd7aa23b34 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 20 Apr 2022 19:39:16 +0800 Subject: [PATCH 008/120] Adjust redeem function to use operatorBurn and add input token transfer for minting --- .../modules/v1/NotionalTradeModule.sol | 48 +++++++++++++++---- 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 7423154de..a22e93dbe 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -20,13 +20,14 @@ pragma solidity 0.6.10; pragma experimental "ABIEncoderV2"; import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import { IERC777 } from "@openzeppelin/contracts/token/ERC777/IERC777.sol"; import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol"; import { ReentrancyGuard } from "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; import { IController } from "../../../interfaces/IController.sol"; import { IDebtIssuanceModule } from "../../../interfaces/IDebtIssuanceModule.sol"; import { IModuleIssuanceHook } from "../../../interfaces/IModuleIssuanceHook.sol"; -import { IWrappedfCashComplete } from "../../../interfaces/IWrappedFCash.sol"; +import { IWrappedfCash, IWrappedfCashComplete } from "../../../interfaces/IWrappedFCash.sol"; import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; @@ -258,28 +259,59 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // TODO: Review if this value is correct / what is max implied rate ? uint32 maxImpliedRate = type(uint32).max; + IERC20 receiveToken; - uint256 balanceBefore; if(_toUnderlying) { (receiveToken,) = _fCashPosition.getUnderlyingToken(); - balanceBefore = receiveToken.balanceOf(address(_setToken)); - _fCashPosition.redeemToUnderlying(_amount, address(_setToken), maxImpliedRate); } else { (receiveToken,,) = _fCashPosition.getAssetToken(); - balanceBefore = receiveToken.balanceOf(address(_setToken)); - _fCashPosition.redeemToAsset(_amount, address(_setToken), maxImpliedRate); } + + uint256 balanceBefore = receiveToken.balanceOf(address(_setToken)); + IERC777(address(_fCashPosition)).operatorBurn( + address(_setToken), + _amount, + abi.encode(IWrappedfCash.RedeemOpts(_toUnderlying, false, address(_setToken), maxImpliedRate)), + "" + ); uint256 balanceAfter = receiveToken.balanceOf(address(_setToken)); + return balanceAfter.sub(balanceBefore); } - function _mintFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _fCashAmount, uint256 _maxAssetAmount, bool _useUnderlying) internal returns(uint256 assetAmountSpent) { + function _mintFCashPosition( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition, + uint256 _fCashAmount, + uint256 _maxAssetAmount, + bool _useUnderlying + ) + internal + returns(uint256 assetAmountSpent) + { if(_fCashAmount == 0) return 0; - // TODO: Review if this value is correct / what is max implied rate ? uint32 minImpliedRate = 0; + + IERC20 paymentToken; + if(_useUnderlying) { + (paymentToken,) = _fCashPosition.getUnderlyingToken(); + } else { + (paymentToken,,) = _fCashPosition.getAssetToken(); + } + + paymentToken.transferFrom(address(_setToken), address(this), _maxAssetAmount); + + uint256 balanceBefore = paymentToken.balanceOf(address(this)); _fCashPosition.mint(_maxAssetAmount, uint88(_fCashAmount), address(_setToken), minImpliedRate, _useUnderlying); + assetAmountSpent = paymentToken.balanceOf(address(this)).sub(balanceBefore); + + require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); + + if(_maxAssetAmount > assetAmountSpent) { + paymentToken.transfer(address(_setToken), _maxAssetAmount.sub(assetAmountSpent)); + } } From 9a0e0416140b257bef35bb94ba209934aa03a693 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 21 Apr 2022 19:01:35 +0800 Subject: [PATCH 009/120] Remove component after redemption --- contracts/protocol/modules/v1/NotionalTradeModule.sol | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index a22e93dbe..0de7d20a0 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -244,14 +244,22 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function _redeemMaturedPositions(ISetToken _setToken) internal { uint fCashPositionLength = fCashPositions[_setToken].length(); if(fCashPositionLength == 0) return; + bool toUnderlying = redeemToUnderlying[_setToken]; + for(uint256 i = 0; i < fCashPositionLength; i++) { IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositions[_setToken].at(i)); + if(fCashPosition.hasMatured()) { uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); _redeemFCashPosition(_setToken, fCashPosition, fCashBalance, toUnderlying); + if(_setToken.isComponent(address(fCashPosition))) { + _setToken.removeComponent(address(fCashPosition)); + } } + } + } function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _amount, bool _toUnderlying) internal returns(uint256) { From 0143a47b19fdab479e2f2c485c51827faeaf5ddd Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 21 Apr 2022 19:42:29 +0800 Subject: [PATCH 010/120] Add skeleton integration test for NotionalTradeModule --- test/integration/notionalTradeModule.spec.ts | 139 +++++++++++++++++++ 1 file changed, 139 insertions(+) create mode 100644 test/integration/notionalTradeModule.spec.ts diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts new file mode 100644 index 000000000..2d4421383 --- /dev/null +++ b/test/integration/notionalTradeModule.spec.ts @@ -0,0 +1,139 @@ +import "module-alias/register"; + +import { BigNumber } from "ethers"; + +import { Account, ForkedTokens } from "@utils/test/types"; +import DeployHelper from "@utils/deploys"; +import { ether } from "@utils/index"; +import { + cacheBeforeEach, + getAccounts, + getForkedTokens, + getRandomAccount, + getSystemFixture, + getWaffleExpect, + initializeForkedTokens, +} from "@utils/test/index"; + +import { SystemFixture } from "@utils/fixtures"; +import { + SetToken, + DebtIssuanceModuleV2, + ManagerIssuanceHookMock, +} from "@utils/contracts"; + +import { IERC20 } from "@typechain/IERC20"; +import { MAX_UINT_256 } from "@utils/constants"; + +const expect = getWaffleExpect(); + +/** + * Tests the icETH rebalance flow. + * + * The icETH product is a composite product composed of: + * 1. stETH + * 2. WETH + */ +describe("Notional trade module integration [ @forked-mainnet ]", () => { + let owner: Account; + let manager: Account; + + let deployer: DeployHelper; + + + let setup: SystemFixture; + let tokens: ForkedTokens; + + let weth: IERC20; + let steth: IERC20; + let debtIssuanceModule: DebtIssuanceModuleV2; + let mockPreIssuanceHook: ManagerIssuanceHookMock; + + let setToken: SetToken; + let issueQuantity: BigNumber; + + cacheBeforeEach(async () => { + [owner, manager] = await getAccounts(); + + deployer = new DeployHelper(owner.wallet); + + setup = getSystemFixture(owner.address); + await setup.initialize(); + + // Setup ForkedTokens + await initializeForkedTokens(deployer); + tokens = getForkedTokens(); + weth = tokens.weth; + steth = tokens.steth; + + + // Deploy DebtIssuanceModuleV2 + debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + setup.controller.address + ); + + await setup.controller.addModule(debtIssuanceModule.address); + + // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization + mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); + + // Create liquidity + const ape = await getRandomAccount(); // The wallet adding initial liquidity + await weth.transfer(ape.address, ether(50)); + await steth.transfer(ape.address, ether(50000)); + + }); + + async function initialize() { + // Create Set token + setToken = await setup.createSetToken( + [steth.address], + [ether(2)], + [debtIssuanceModule.address], + manager.address, + ); + + // Fund owner with stETH + await tokens.steth.transfer(owner.address, ether(11000)); + + // stETH has balance rounding errors that crash DebtIssuanceModuleV2 with: + // "Invalid transfer in. Results in undercollateralization" + // > transfer quantity = 1000000000000000000 + // > stETH balanceOf after transfer = 999999999999999999 + // Transfer steth to set token to overcollaterize the position by exactly the rounding error + // Transferring 2 results in steth.balanceOf(setToken) == 1 + await tokens.steth.transfer(setToken.address, 2); + + await steth + .connect(owner.wallet) + .approve(debtIssuanceModule.address, MAX_UINT_256); + + + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address + ); + + + // Issue + issueQuantity = ether(1); + + await debtIssuanceModule + .connect(owner.wallet) + .issue(setToken.address, issueQuantity, owner.address); + } + + describe("#trade", async () => { + cacheBeforeEach(initialize); + it("should work", async () => { + const setTokenBalance = await setToken.balanceOf(owner.address); + expect(setTokenBalance).to.eq(issueQuantity); + }); + }); + +}); From 0fc426e707325ae57bc4a346607093b8fd3c60fd Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 21 Apr 2022 20:21:13 +0800 Subject: [PATCH 011/120] Deploy notional trade module in test --- test/integration/notionalTradeModule.spec.ts | 31 ++++++++++---------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 2d4421383..833965bc0 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -15,11 +15,12 @@ import { initializeForkedTokens, } from "@utils/test/index"; -import { SystemFixture } from "@utils/fixtures"; +import { SystemFixture } from "@utils/fixtures"; import { SetToken, DebtIssuanceModuleV2, ManagerIssuanceHookMock, + NotionalTradeModule, } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; @@ -40,7 +41,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let deployer: DeployHelper; - let setup: SystemFixture; let tokens: ForkedTokens; @@ -48,6 +48,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let steth: IERC20; let debtIssuanceModule: DebtIssuanceModuleV2; let mockPreIssuanceHook: ManagerIssuanceHookMock; + let notionalTradeModule: NotionalTradeModule; let setToken: SetToken; let issueQuantity: BigNumber; @@ -66,22 +67,25 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { weth = tokens.weth; steth = tokens.steth; - // Deploy DebtIssuanceModuleV2 debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( - setup.controller.address + setup.controller.address, ); - await setup.controller.addModule(debtIssuanceModule.address); + // Deploy NotionalTradeModule + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); // Create liquidity - const ape = await getRandomAccount(); // The wallet adding initial liquidity + const ape = await getRandomAccount(); // The wallet adding initial liquidity await weth.transfer(ape.address, ether(50)); await steth.transfer(ape.address, ether(50000)); - }); async function initialize() { @@ -89,7 +93,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { setToken = await setup.createSetToken( [steth.address], [ether(2)], - [debtIssuanceModule.address], + [debtIssuanceModule.address, notionalTradeModule.address], manager.address, ); @@ -104,22 +108,18 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { // Transferring 2 results in steth.balanceOf(setToken) == 1 await tokens.steth.transfer(setToken.address, 2); - await steth - .connect(owner.wallet) - .approve(debtIssuanceModule.address, MAX_UINT_256); - + await steth.connect(owner.wallet).approve(debtIssuanceModule.address, MAX_UINT_256); // Initialize debIssuance module await debtIssuanceModule.connect(manager.wallet).initialize( setToken.address, - ether(.1), + ether(0.1), ether(0), // No issue fee ether(0), // No redeem fee owner.address, - mockPreIssuanceHook.address + mockPreIssuanceHook.address, ); - // Issue issueQuantity = ether(1); @@ -135,5 +135,4 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(setTokenBalance).to.eq(issueQuantity); }); }); - }); From a76bbeb7b769426cfbd8c470f1ceb839dd1c0ed3 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 21 Apr 2022 20:36:13 +0800 Subject: [PATCH 012/120] Install notional solidity sdk from github branch --- package.json | 1 + yarn.lock | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/package.json b/package.json index be4064c04..46c77386b 100644 --- a/package.json +++ b/package.json @@ -110,6 +110,7 @@ "fs-extra": "^5.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", + "notional-solidity-sdk": "https://github.com/notional-finance/notional-solidity-sdk.git#feature/fcash-erc20", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/yarn.lock b/yarn.lock index de087a8af..2c5205f55 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4804,6 +4804,11 @@ dot-prop@^5.1.0: dependencies: is-obj "^2.0.0" +dotenv@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== + dotenv@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" @@ -9526,6 +9531,12 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== +"notional-solidity-sdk@https://github.com/notional-finance/notional-solidity-sdk.git#feature/fcash-erc20": + version "1.0.0" + resolved "https://github.com/notional-finance/notional-solidity-sdk.git#06bc5d83b16b7a7c977a15f9e169fbd5d14c4807" + dependencies: + dotenv "^10.0.0" + npm-audit-report@^2.1.5: version "2.1.5" resolved "https://registry.yarnpkg.com/npm-audit-report/-/npm-audit-report-2.1.5.tgz#a5b8850abe2e8452fce976c8960dd432981737b5" From cf669fbb670638de6baa5a6409ff9510ef14e14b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 14:33:02 +0800 Subject: [PATCH 013/120] Add 0.8.11 solidity compiler --- hardhat.config.ts | 19 +++++++++++++++---- package.json | 1 + yarn.lock | 5 +++++ 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/hardhat.config.ts b/hardhat.config.ts index 3ac61f90d..7fff02683 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -25,10 +25,21 @@ checkForkedProviderEnvironment(); const config: HardhatUserConfig = { solidity: { - version: "0.6.10", - settings: { - optimizer: { enabled: true, runs: 200 }, - }, + compilers: [ + { + version: "0.6.10", + settings: { optimizer: { enabled: true, runs: 200 } }, + }, + { + version: "0.8.11", + settings: { + optimizer: { + enabled: true, + runs: 200, + }, + }, + }, + ], }, networks: { hardhat: { diff --git a/package.json b/package.json index 46c77386b..b325596d6 100644 --- a/package.json +++ b/package.json @@ -105,6 +105,7 @@ "web3": "^1.2.9" }, "dependencies": { + "@uniswap/v3-core": "1.0.1", "@uniswap/v3-sdk": "^3.5.1", "ethers": "^5.5.2", "fs-extra": "^5.0.0", diff --git a/yarn.lock b/yarn.lock index 2c5205f55..a8a9e053c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2219,6 +2219,11 @@ resolved "https://registry.yarnpkg.com/@uniswap/v3-core/-/v3-core-1.0.0.tgz#6c24adacc4c25dceee0ba3ca142b35adbd7e359d" integrity sha512-kSC4djMGKMHj7sLMYVnn61k9nu+lHjMIxgg9CDQT+s2QYLoA56GbSK9Oxr+qJXzzygbkrmuY6cwgP6cW2JXPFA== +"@uniswap/v3-core@1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@uniswap/v3-core/-/v3-core-1.0.1.tgz#b6d2bdc6ba3c3fbd610bdc502395d86cd35264a0" + integrity sha512-7pVk4hEm00j9tc71Y9+ssYpO6ytkeI0y7WE9P6UcmNzhxPePwyAxImuhVsTqWK9YFvzgtvzJHi64pBl4jUzKMQ== + "@uniswap/v3-periphery@^1.0.1", "@uniswap/v3-periphery@^1.1.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@uniswap/v3-periphery/-/v3-periphery-1.2.1.tgz#7775630bea774a2cf989ab87ce3c328ac52e0d50" From d476e020030dcfa967d6512f1009fa4c4bf2d760 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 14:35:56 +0800 Subject: [PATCH 014/120] Import notional-solidity-sdk --- package.json | 2 +- yarn.lock | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index b325596d6..e457d40bf 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "fs-extra": "^5.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", - "notional-solidity-sdk": "https://github.com/notional-finance/notional-solidity-sdk.git#feature/fcash-erc20", + "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#642a7caf9651950f88cfd3f944e7ec473b93073e", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/yarn.lock b/yarn.lock index a8a9e053c..e89a5224a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1615,6 +1615,11 @@ dependencies: "@octokit/openapi-types" "^11.2.0" +"@openzeppelin/contracts-upgradeable@^4.5.2": + version "4.5.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.5.2.tgz#90d9e47bacfd8693bfad0ac8a394645575528d05" + integrity sha512-xgWZYaPlrEOQo3cBj97Ufiuv79SPd8Brh4GcFYhPgb6WvAq4ppz8dWKL6h+jLAK01rUqMRp/TS9AdXgAeNvCLA== + "@openzeppelin/contracts@3.4.1-solc-0.7-2": version "3.4.1-solc-0.7-2" resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-3.4.1-solc-0.7-2.tgz#371c67ebffe50f551c3146a9eec5fe6ffe862e92" @@ -9536,11 +9541,13 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -"notional-solidity-sdk@https://github.com/notional-finance/notional-solidity-sdk.git#feature/fcash-erc20": +"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#642a7caf9651950f88cfd3f944e7ec473b93073e": version "1.0.0" - resolved "https://github.com/notional-finance/notional-solidity-sdk.git#06bc5d83b16b7a7c977a15f9e169fbd5d14c4807" + resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#642a7caf9651950f88cfd3f944e7ec473b93073e" dependencies: + "@openzeppelin/contracts-upgradeable" "^4.5.2" dotenv "^10.0.0" + openzeppelin-contracts-V4 "npm:@openzeppelin/contracts@4.5" npm-audit-report@^2.1.5: version "2.1.5" @@ -9898,6 +9905,11 @@ opener@^1.5.2: resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== +"openzeppelin-contracts-V4@npm:@openzeppelin/contracts@4.5": + version "4.5.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.5.0.tgz#3fd75d57de172b3743cdfc1206883f56430409cc" + integrity sha512-fdkzKPYMjrRiPK6K4y64e6GzULR7R7RwxSigHS8DDp7aWDeoReqsQI+cxHV1UuhAqX69L1lAaWDxenfP+xiqzA== + optionator@^0.8.1, optionator@^0.8.2: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" From 15013d511b199166b4108a742f7ac47fd82e149b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 14:47:17 +0800 Subject: [PATCH 015/120] Create derivative contract from imported WrappedfCash --- .solhint.json | 2 +- .solhintignore | 1 + .../protocol/integration/wrap/notional/WrappedfCash.sol | 9 +++++++++ 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 contracts/protocol/integration/wrap/notional/WrappedfCash.sol diff --git a/.solhint.json b/.solhint.json index 997c4c612..ca5139919 100644 --- a/.solhint.json +++ b/.solhint.json @@ -2,6 +2,6 @@ "extends": "solhint:recommended", "rules": { "reason-string": ["warn", { "maxLength": 50 }], - "compiler-version": ["error", "0.6.10"] + "compiler-version": ["error", ">=0.6.10"] } } diff --git a/.solhintignore b/.solhintignore index 633e063eb..290fa60c9 100644 --- a/.solhintignore +++ b/.solhintignore @@ -2,3 +2,4 @@ node_modules contracts/mocks contracts/Migrations.sol contracts/external +contracts/protocol/integration/wrap/notional diff --git a/contracts/protocol/integration/wrap/notional/WrappedfCash.sol b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol new file mode 100644 index 000000000..022ff21d4 --- /dev/null +++ b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.11; +import { WrappedfCash as WrappedfCashBase } from "notional-solidity-sdk/contracts/fCash/WrappedfCash.sol"; +import { NotionalProxy } from "notional-solidity-sdk/interfaces/notional/NotionalProxy.sol"; + +contract WrappedfCash is WrappedfCashBase { + constructor(NotionalProxy _notionalProxy) WrappedfCashBase(_notionalProxy){ + } +} From 3841b8a75734e77273ccbe61cdadbe5a7bfc9e6f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 16:16:37 +0800 Subject: [PATCH 016/120] Upgrade notional-solidity-sdk --- package.json | 2 +- yarn.lock | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index e457d40bf..abf819e46 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "fs-extra": "^5.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", - "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#642a7caf9651950f88cfd3f944e7ec473b93073e", + "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#494ffdbbf9e17f2f13f66b13c9bf0868b2e3d79a", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/yarn.lock b/yarn.lock index e89a5224a..b76d0389f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9541,9 +9541,9 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#642a7caf9651950f88cfd3f944e7ec473b93073e": +"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#494ffdbbf9e17f2f13f66b13c9bf0868b2e3d79a": version "1.0.0" - resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#642a7caf9651950f88cfd3f944e7ec473b93073e" + resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#494ffdbbf9e17f2f13f66b13c9bf0868b2e3d79a" dependencies: "@openzeppelin/contracts-upgradeable" "^4.5.2" dotenv "^10.0.0" From fe5c5e57f43a0432fb782fb6e47309cffc88717b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 16:26:35 +0800 Subject: [PATCH 017/120] Deploy WrappedFCashBeacon in notional trade module test --- test/integration/notionalTradeModule.spec.ts | 10 ++++++++++ utils/contracts/index.ts | 1 + utils/contracts/notional.ts | 2 ++ utils/deploys/deployExternal.ts | 12 ++++++++++++ 4 files changed, 25 insertions(+) create mode 100644 utils/contracts/notional.ts diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 833965bc0..38f9ee3b7 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -21,6 +21,7 @@ import { DebtIssuanceModuleV2, ManagerIssuanceHookMock, NotionalTradeModule, + WrappedfCash, } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; @@ -53,6 +54,9 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let setToken: SetToken; let issueQuantity: BigNumber; + const notionalProxyAddress = "0x1344a36a1b56144c3bc62e7757377d288fde0369"; + let wrappedfCashBeacon: WrappedfCash; + cacheBeforeEach(async () => { [owner, manager] = await getAccounts(); @@ -67,6 +71,12 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { weth = tokens.weth; steth = tokens.steth; + // Deploy WrappedfCash + wrappedfCashBeacon = await deployer.external.deployWrappedfCash( + notionalProxyAddress + ); + console.log("wrappedfCashBeacon:", wrappedfCashBeacon.address); + // Deploy DebtIssuanceModuleV2 debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( setup.controller.address, diff --git a/utils/contracts/index.ts b/utils/contracts/index.ts index 09319203b..8aa3ff9e7 100644 --- a/utils/contracts/index.ts +++ b/utils/contracts/index.ts @@ -124,6 +124,7 @@ export { WrapAdapterMock } from "../../typechain/WrapAdapterMock"; export { WrapV2AdapterMock } from "../../typechain/WrapV2AdapterMock"; export { WrapModule } from "../../typechain/WrapModule"; export { WrapModuleV2 } from "../../typechain/WrapModuleV2"; +export { WrappedfCash } from "../../typechain/WrappedfCash"; export { YearnWrapV2Adapter } from "../../typechain/YearnWrapV2Adapter"; export { YearnStrategyMock } from "../../typechain/YearnStrategyMock"; export { ZeroExApiAdapter } from "../../typechain/ZeroExApiAdapter"; diff --git a/utils/contracts/notional.ts b/utils/contracts/notional.ts new file mode 100644 index 000000000..bd8391b79 --- /dev/null +++ b/utils/contracts/notional.ts @@ -0,0 +1,2 @@ +// External Uniswap Contracts +export { WrappedfCash } from "../../typechain/WrappedfCash"; diff --git a/utils/deploys/deployExternal.ts b/utils/deploys/deployExternal.ts index 891235f05..aece215b5 100644 --- a/utils/deploys/deployExternal.ts +++ b/utils/deploys/deployExternal.ts @@ -36,6 +36,7 @@ import { PriceOracleProxy__factory } from "../../typechain/factories/PriceOracle import { Unitroller__factory } from "../../typechain/factories/Unitroller__factory"; import { WETH9__factory } from "../../typechain/factories/WETH9__factory"; import { WhitePaperInterestRateModel__factory } from "../../typechain/factories/WhitePaperInterestRateModel__factory"; +import { WrappedfCash__factory } from "../../typechain/factories/WrappedfCash__factory"; import { CurveDeposit, @@ -69,6 +70,10 @@ import { UniswapV2Router02, } from "../contracts/uniswap"; +import { + WrappedfCash +} from "../contracts/notional"; + import { StakingRewards__factory } from "../../typechain/factories/StakingRewards__factory"; import { Uni__factory } from "../../typechain/factories/Uni__factory"; import { UniswapGovernorAlpha__factory } from "../../typechain/factories/UniswapGovernorAlpha__factory"; @@ -713,7 +718,14 @@ export default class DeployExternalContracts { return await new PerpV2ClearingHouse__factory(this._deployerSigner).deploy(); } + // Notional + public async deployWrappedfCash(notionalProxy: Address): Promise { + return await new WrappedfCash__factory(this._deployerSigner).deploy(notionalProxy); + } + + public async getVToken(token: Address): Promise { return await new PerpV2BaseToken__factory(this._deployerSigner).attach(token); } + } From a7df03ae688745bfa2e2e4d8fb67db7fb1ecb610 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 16:36:36 +0800 Subject: [PATCH 018/120] Deploy WrappedFCashFactory in notional trade module test --- .../integration/wrap/notional/WrappedfCashFactory.sol | 8 ++++++++ test/integration/notionalTradeModule.spec.ts | 7 +++++++ utils/contracts/index.ts | 1 + utils/contracts/notional.ts | 1 + utils/deploys/deployExternal.ts | 8 +++++++- 5 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol diff --git a/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol b/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol new file mode 100644 index 000000000..e1bc31703 --- /dev/null +++ b/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.11; +import { WrappedfCashFactory as WrappedfCashFactoryBase } from "notional-solidity-sdk/contracts/fCash/WrappedfCashFactory.sol"; + +contract WrappedfCashFactory is WrappedfCashFactoryBase { + constructor(address _beacon) WrappedfCashFactoryBase(_beacon){ + } +} diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 38f9ee3b7..a0bbe1f97 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -22,6 +22,7 @@ import { ManagerIssuanceHookMock, NotionalTradeModule, WrappedfCash, + WrappedfCashFactory, } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; @@ -56,6 +57,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const notionalProxyAddress = "0x1344a36a1b56144c3bc62e7757377d288fde0369"; let wrappedfCashBeacon: WrappedfCash; + let wrappedfCashFactory: WrappedfCashFactory; cacheBeforeEach(async () => { [owner, manager] = await getAccounts(); @@ -77,6 +79,11 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); console.log("wrappedfCashBeacon:", wrappedfCashBeacon.address); + wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( + wrappedfCashBeacon.address + ); + console.log("wrappedfCashFactory:", wrappedfCashFactory.address); + // Deploy DebtIssuanceModuleV2 debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( setup.controller.address, diff --git a/utils/contracts/index.ts b/utils/contracts/index.ts index 8aa3ff9e7..cf98d0c75 100644 --- a/utils/contracts/index.ts +++ b/utils/contracts/index.ts @@ -125,6 +125,7 @@ export { WrapV2AdapterMock } from "../../typechain/WrapV2AdapterMock"; export { WrapModule } from "../../typechain/WrapModule"; export { WrapModuleV2 } from "../../typechain/WrapModuleV2"; export { WrappedfCash } from "../../typechain/WrappedfCash"; +export { WrappedfCashFactory } from "../../typechain/WrappedfCashFactory"; export { YearnWrapV2Adapter } from "../../typechain/YearnWrapV2Adapter"; export { YearnStrategyMock } from "../../typechain/YearnStrategyMock"; export { ZeroExApiAdapter } from "../../typechain/ZeroExApiAdapter"; diff --git a/utils/contracts/notional.ts b/utils/contracts/notional.ts index bd8391b79..db5715c7d 100644 --- a/utils/contracts/notional.ts +++ b/utils/contracts/notional.ts @@ -1,2 +1,3 @@ // External Uniswap Contracts export { WrappedfCash } from "../../typechain/WrappedfCash"; +export { WrappedfCashFactory } from "../../typechain/WrappedfCashFactory"; diff --git a/utils/deploys/deployExternal.ts b/utils/deploys/deployExternal.ts index aece215b5..dca28331b 100644 --- a/utils/deploys/deployExternal.ts +++ b/utils/deploys/deployExternal.ts @@ -37,6 +37,7 @@ import { Unitroller__factory } from "../../typechain/factories/Unitroller__facto import { WETH9__factory } from "../../typechain/factories/WETH9__factory"; import { WhitePaperInterestRateModel__factory } from "../../typechain/factories/WhitePaperInterestRateModel__factory"; import { WrappedfCash__factory } from "../../typechain/factories/WrappedfCash__factory"; +import { WrappedfCashFactory__factory } from "../../typechain/factories/WrappedfCashFactory__factory"; import { CurveDeposit, @@ -71,7 +72,8 @@ import { } from "../contracts/uniswap"; import { - WrappedfCash + WrappedfCash, + WrappedfCashFactory } from "../contracts/notional"; import { StakingRewards__factory } from "../../typechain/factories/StakingRewards__factory"; @@ -723,6 +725,10 @@ export default class DeployExternalContracts { return await new WrappedfCash__factory(this._deployerSigner).deploy(notionalProxy); } + public async deployWrappedfCashFactory(beacon: Address): Promise { + return await new WrappedfCashFactory__factory(this._deployerSigner).deploy(beacon); + } + public async getVToken(token: Address): Promise { return await new PerpV2BaseToken__factory(this._deployerSigner).attach(token); From f353aa95b5b24ce8e376f4e0a665d6ac720dcb4f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 20:22:56 +0800 Subject: [PATCH 019/120] Add some extra tests against notional proxy --- .../interfaces/external/INotionalProxy.sol | 4 + hardhat.config.ts | 2 +- test/integration/notionalTradeModule.spec.ts | 93 +++++++++++++++++-- utils/contracts/index.ts | 1 + 4 files changed, 90 insertions(+), 10 deletions(-) create mode 100644 contracts/interfaces/external/INotionalProxy.sol diff --git a/contracts/interfaces/external/INotionalProxy.sol b/contracts/interfaces/external/INotionalProxy.sol new file mode 100644 index 000000000..ada426e2c --- /dev/null +++ b/contracts/interfaces/external/INotionalProxy.sol @@ -0,0 +1,4 @@ +pragma solidity ^0.8.11; +import { NotionalProxy } from "notional-solidity-sdk/interfaces/notional/NotionalProxy.sol"; + +interface INotionalProxy is NotionalProxy {} diff --git a/hardhat.config.ts b/hardhat.config.ts index 7fff02683..29be0527f 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -12,7 +12,7 @@ import "./tasks"; const forkingConfig = { url: `https://eth-mainnet.alchemyapi.io/v2/${process.env.ALCHEMY_TOKEN}`, - blockNumber: 12198000, + blockNumber: 14634000, }; const mochaConfig = { diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index a0bbe1f97..91c63afba 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -1,6 +1,7 @@ import "module-alias/register"; -import { BigNumber } from "ethers"; +import { BigNumber, constants } from "ethers"; +import { ethers } from "hardhat"; import { Account, ForkedTokens } from "@utils/test/types"; import DeployHelper from "@utils/deploys"; @@ -19,6 +20,7 @@ import { SystemFixture } from "@utils/fixtures"; import { SetToken, DebtIssuanceModuleV2, + INotionalProxy, ManagerIssuanceHookMock, NotionalTradeModule, WrappedfCash, @@ -26,6 +28,7 @@ import { } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; +import { IERC20Metadata } from "@typechain/IERC20Metadata"; import { MAX_UINT_256 } from "@utils/constants"; const expect = getWaffleExpect(); @@ -58,6 +61,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const notionalProxyAddress = "0x1344a36a1b56144c3bc62e7757377d288fde0369"; let wrappedfCashBeacon: WrappedfCash; let wrappedfCashFactory: WrappedfCashFactory; + let notionalProxy: INotionalProxy; cacheBeforeEach(async () => { [owner, manager] = await getAccounts(); @@ -73,14 +77,17 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { weth = tokens.weth; steth = tokens.steth; + notionalProxy = (await ethers.getContractAt( + "INotionalProxy", + notionalProxyAddress, + )) as INotionalProxy; + // Deploy WrappedfCash - wrappedfCashBeacon = await deployer.external.deployWrappedfCash( - notionalProxyAddress - ); + wrappedfCashBeacon = await deployer.external.deployWrappedfCash(notionalProxyAddress); console.log("wrappedfCashBeacon:", wrappedfCashBeacon.address); wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( - wrappedfCashBeacon.address + wrappedfCashBeacon.address, ); console.log("wrappedfCashFactory:", wrappedfCashFactory.address); @@ -145,11 +152,79 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .issue(setToken.address, issueQuantity, owner.address); } - describe("#trade", async () => { + describe("Notional setup", async () => { cacheBeforeEach(initialize); - it("should work", async () => { - const setTokenBalance = await setToken.balanceOf(owner.address); - expect(setTokenBalance).to.eq(issueQuantity); + + const daiCurrencyId = 2; + + it("owner should work", async () => { + const owner = await notionalProxy.owner(); + console.log("owner:", owner); + }); + + it("max currency id should work", async () => { + const maxCurrencyId = await notionalProxy.getMaxCurrencyId(); + expect(maxCurrencyId).to.eq(4); + }); + + it("getCurrencyId should work", async () => { + const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; + const currencyId = await notionalProxy.getCurrencyId(cdaiAddress); + expect(currencyId).to.eq(daiCurrencyId); + }); + + [1, 2, 3, 4].forEach(currencyId => { + describe(`With currencyId: ${currencyId}`, () => { + it("getCurrency should work", async () => { + const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); + const underlyingContract = (await ethers.getContractAt( + "IERC20Metadata", + underlyingToken.tokenAddress, + )) as IERC20Metadata; + + const tokenSymbol = + underlyingToken.tokenAddress == constants.AddressZero + ? "ETH" + : await underlyingContract.symbol(); + console.log("Underlying token", { + assetAddress: assetToken.tokenAddress, + underlyingAddress: underlyingToken.tokenAddress, + symbol: tokenSymbol, + }); + }); + + + it("getDepositParameters should work", async () => { + await notionalProxy.getDepositParameters(currencyId); + }); + + it("getInitializationParameters should work", async () => { + await notionalProxy.getInitializationParameters(currencyId); + }); + + it("getRateStorage should work", async () => { + await notionalProxy.getRateStorage(currencyId); + }); + + it("getCurrencyAndRates should work", async () => { + await notionalProxy.getCurrencyAndRates(currencyId); + }); + + it("getActiveMarkets should work", async () => { + const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); + console.log("activeMarkets:", activeMarkets); + }); + + + }); + }); + describe("When currency id is invalid", () => { + const invalidCurrencyId = 5; + it("getActiveMarkets should revert correctly", async () => { + await expect( + notionalProxy.getActiveMarkets(invalidCurrencyId), + ).to.be.revertedWith("Invalid currency id"); + }); }); }); }); diff --git a/utils/contracts/index.ts b/utils/contracts/index.ts index cf98d0c75..207d53c79 100644 --- a/utils/contracts/index.ts +++ b/utils/contracts/index.ts @@ -45,6 +45,7 @@ export { GovernanceAdapterMock } from "../../typechain/GovernanceAdapterMock"; export { GovernanceModule } from "../../typechain/GovernanceModule"; export { IntegrationRegistry } from "../../typechain/IntegrationRegistry"; export { InvokeMock } from "../../typechain/InvokeMock"; +export { INotionalProxy } from "../../typechain/INotionalProxy"; export { ISetValuer } from "../../typechain/ISetValuer"; export { IssuanceModule } from "../../typechain/IssuanceModule"; export { KyberExchangeAdapter } from "../../typechain/KyberExchangeAdapter"; From 6345496d8d4d3f6851605b1dca9562e59430b27e Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 22 Apr 2022 21:20:05 +0800 Subject: [PATCH 020/120] Adjustments to enable the notional tests to be run against mainnet node directly --- hardhat.config.ts | 4 +- test/integration/notionalTradeModule.spec.ts | 91 ++++++++++---------- 2 files changed, 47 insertions(+), 48 deletions(-) diff --git a/hardhat.config.ts b/hardhat.config.ts index 29be0527f..f4cb1f951 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -61,9 +61,9 @@ const config: HardhatUserConfig = { accounts: [`0x${process.env.KOVAN_DEPLOY_PRIVATE_KEY}`], }, staging_mainnet: { - url: "https://mainnet.infura.io/v3/" + process.env.INFURA_TOKEN, + url: `https://eth-mainnet.alchemyapi.io/v2/${process.env.ALCHEMY_TOKEN}`, // @ts-ignore - accounts: [`0x${process.env.STAGING_MAINNET_DEPLOY_PRIVATE_KEY}`], + // accounts: [`0x${process.env.STAGING_MAINNET_DEPLOY_PRIVATE_KEY}`], }, production: { url: "https://mainnet.infura.io/v3/" + process.env.INFURA_TOKEN, diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 91c63afba..3c9aca7d8 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -63,53 +63,53 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let wrappedfCashFactory: WrappedfCashFactory; let notionalProxy: INotionalProxy; - cacheBeforeEach(async () => { - [owner, manager] = await getAccounts(); + beforeEach(async () => { + // [owner, manager] = await getAccounts(); - deployer = new DeployHelper(owner.wallet); + // deployer = new DeployHelper(owner.wallet); - setup = getSystemFixture(owner.address); - await setup.initialize(); + // setup = getSystemFixture(owner.address); + // await setup.initialize(); - // Setup ForkedTokens - await initializeForkedTokens(deployer); - tokens = getForkedTokens(); - weth = tokens.weth; - steth = tokens.steth; + // // Setup ForkedTokens + // await initializeForkedTokens(deployer); + // tokens = getForkedTokens(); + // weth = tokens.weth; + // steth = tokens.steth; notionalProxy = (await ethers.getContractAt( "INotionalProxy", notionalProxyAddress, )) as INotionalProxy; - // Deploy WrappedfCash - wrappedfCashBeacon = await deployer.external.deployWrappedfCash(notionalProxyAddress); - console.log("wrappedfCashBeacon:", wrappedfCashBeacon.address); - - wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( - wrappedfCashBeacon.address, - ); - console.log("wrappedfCashFactory:", wrappedfCashFactory.address); - - // Deploy DebtIssuanceModuleV2 - debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( - setup.controller.address, - ); - await setup.controller.addModule(debtIssuanceModule.address); - - // Deploy NotionalTradeModule - notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - setup.controller.address, - ); - await setup.controller.addModule(notionalTradeModule.address); - - // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization - mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); - - // Create liquidity - const ape = await getRandomAccount(); // The wallet adding initial liquidity - await weth.transfer(ape.address, ether(50)); - await steth.transfer(ape.address, ether(50000)); + // // Deploy WrappedfCash + // wrappedfCashBeacon = await deployer.external.deployWrappedfCash(notionalProxyAddress); + // console.log("wrappedfCashBeacon:", wrappedfCashBeacon.address); + + // wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( + // wrappedfCashBeacon.address, + // ); + // console.log("wrappedfCashFactory:", wrappedfCashFactory.address); + + // // Deploy DebtIssuanceModuleV2 + // debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + // setup.controller.address, + // ); + // await setup.controller.addModule(debtIssuanceModule.address); + + // // Deploy NotionalTradeModule + // notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + // setup.controller.address, + // ); + // await setup.controller.addModule(notionalTradeModule.address); + + // // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization + // mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); + + // // Create liquidity + // const ape = await getRandomAccount(); // The wallet adding initial liquidity + // await weth.transfer(ape.address, ether(50)); + // await steth.transfer(ape.address, ether(50000)); }); async function initialize() { @@ -153,7 +153,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } describe("Notional setup", async () => { - cacheBeforeEach(initialize); + // cacheBeforeEach(initialize); const daiCurrencyId = 2; @@ -173,7 +173,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(currencyId).to.eq(daiCurrencyId); }); - [1, 2, 3, 4].forEach(currencyId => { + [1, 2, 3, 4].forEach((currencyId) => { describe(`With currencyId: ${currencyId}`, () => { it("getCurrency should work", async () => { const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); @@ -193,7 +193,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); }); - it("getDepositParameters should work", async () => { await notionalProxy.getDepositParameters(currencyId); }); @@ -211,19 +210,19 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); it("getActiveMarkets should work", async () => { + const latestBlock = await ethers.provider.getBlock("latest"); + console.log("Latest block before calling getActiveMarkets:", latestBlock); const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); console.log("activeMarkets:", activeMarkets); }); - - }); }); describe("When currency id is invalid", () => { const invalidCurrencyId = 5; it("getActiveMarkets should revert correctly", async () => { - await expect( - notionalProxy.getActiveMarkets(invalidCurrencyId), - ).to.be.revertedWith("Invalid currency id"); + await expect(notionalProxy.getActiveMarkets(invalidCurrencyId)).to.be.revertedWith( + "Invalid currency id", + ); }); }); }); From 8b2d37a71dd0cb3083bb62a10eb686d2c79cf0a3 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 24 Apr 2022 16:00:05 +0800 Subject: [PATCH 021/120] Import newer version of notional solidity sdk fork with MarketData struct fixed --- package.json | 2 +- test/integration/notionalTradeModule.spec.ts | 96 ++++++++++++-------- yarn.lock | 4 +- 3 files changed, 63 insertions(+), 39 deletions(-) diff --git a/package.json b/package.json index abf819e46..e29b0320d 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "fs-extra": "^5.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", - "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#494ffdbbf9e17f2f13f66b13c9bf0868b2e3d79a", + "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 3c9aca7d8..a9d50b41d 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -159,7 +159,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { it("owner should work", async () => { const owner = await notionalProxy.owner(); - console.log("owner:", owner); }); it("max currency id should work", async () => { @@ -173,47 +172,72 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(currencyId).to.eq(daiCurrencyId); }); - [1, 2, 3, 4].forEach((currencyId) => { - describe(`With currencyId: ${currencyId}`, () => { - it("getCurrency should work", async () => { - const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); - const underlyingContract = (await ethers.getContractAt( - "IERC20Metadata", - underlyingToken.tokenAddress, - )) as IERC20Metadata; - - const tokenSymbol = - underlyingToken.tokenAddress == constants.AddressZero - ? "ETH" - : await underlyingContract.symbol(); - console.log("Underlying token", { - assetAddress: assetToken.tokenAddress, - underlyingAddress: underlyingToken.tokenAddress, - symbol: tokenSymbol, + describe("When currencyId is valid", () => { + [1, 2, 3, 4].forEach((currencyId) => { + describe(`With currencyId: ${currencyId}`, () => { + it("getCurrency should work", async () => { + const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); + const underlyingContract = (await ethers.getContractAt( + "IERC20Metadata", + underlyingToken.tokenAddress, + )) as IERC20Metadata; + + const tokenSymbol = + underlyingToken.tokenAddress == constants.AddressZero + ? "ETH" + : await underlyingContract.symbol(); + console.log("Underlying token", { + assetAddress: assetToken.tokenAddress, + underlyingAddress: underlyingToken.tokenAddress, + symbol: tokenSymbol, + }); }); - }); - it("getDepositParameters should work", async () => { - await notionalProxy.getDepositParameters(currencyId); - }); + it("getDepositParameters should work", async () => { + await notionalProxy.getDepositParameters(currencyId); + }); - it("getInitializationParameters should work", async () => { - await notionalProxy.getInitializationParameters(currencyId); - }); + it("getInitializationParameters should work", async () => { + await notionalProxy.getInitializationParameters(currencyId); + }); - it("getRateStorage should work", async () => { - await notionalProxy.getRateStorage(currencyId); - }); + it("getRateStorage should work", async () => { + await notionalProxy.getRateStorage(currencyId); + }); - it("getCurrencyAndRates should work", async () => { - await notionalProxy.getCurrencyAndRates(currencyId); - }); + it("getCurrencyAndRates should work", async () => { + await notionalProxy.getCurrencyAndRates(currencyId); + }); + + it("getActiveMarkets should work", async () => { + const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); + expect(activeMarkets.length).to.be.gte(2); + }); + + describe("When the maturity is valid", () => { + let maturity: number; + let referenceTime: number; + beforeEach(async () => { + const secondsInQuarter = 3 * 30 * 24 * 60 * 60; + const latestBlock = await ethers.provider.getBlock("latest"); + const blockTime = latestBlock.timestamp; + referenceTime = blockTime - (blockTime % secondsInQuarter); + const quarters = referenceTime / secondsInQuarter; + + maturity = referenceTime + secondsInQuarter; + }) + it("getSettlementRate should work", async () => { + const settlementRate = await notionalProxy.getSettlementRate(currencyId, maturity); + expect(settlementRate.underlyingDecimals.gt(0)).to.be.true; + }); + + it("getMarket should work", async () => { + const marketData = await notionalProxy.getMarket(currencyId, maturity, maturity); + expect(marketData.maturity).to.eq(maturity); + }); + }) + - it("getActiveMarkets should work", async () => { - const latestBlock = await ethers.provider.getBlock("latest"); - console.log("Latest block before calling getActiveMarkets:", latestBlock); - const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); - console.log("activeMarkets:", activeMarkets); }); }); }); diff --git a/yarn.lock b/yarn.lock index b76d0389f..8d465ce02 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9541,9 +9541,9 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#494ffdbbf9e17f2f13f66b13c9bf0868b2e3d79a": +"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c": version "1.0.0" - resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#494ffdbbf9e17f2f13f66b13c9bf0868b2e3d79a" + resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c" dependencies: "@openzeppelin/contracts-upgradeable" "^4.5.2" dotenv "^10.0.0" From 8772bfd4f1ac586347c6624c01eaf58ed239b7fc Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 24 Apr 2022 20:16:28 +0800 Subject: [PATCH 022/120] Test view methods of wrappedFCash contract deployed from factory --- .../wrap/notional/nBeaconProxy.sol | 7 + .../wrap/notional/nUpgradeableBeacon.sol | 11 + package.json | 2 +- test/integration/notionalTradeModule.spec.ts | 432 ++++++++++-------- yarn.lock | 4 +- 5 files changed, 273 insertions(+), 183 deletions(-) create mode 100644 contracts/protocol/integration/wrap/notional/nBeaconProxy.sol create mode 100644 contracts/protocol/integration/wrap/notional/nUpgradeableBeacon.sol diff --git a/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol b/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol new file mode 100644 index 000000000..ce440b7da --- /dev/null +++ b/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol @@ -0,0 +1,7 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.11; +import { nBeaconProxy as nBeaconProxyBase } from "notional-solidity-sdk/contracts/fCash/nBeaconProxy.sol"; + +contract nBeaconProxy is nBeaconProxyBase { + constructor(address beacon, bytes memory data) payable nBeaconProxyBase(beacon, data) { } +} diff --git a/contracts/protocol/integration/wrap/notional/nUpgradeableBeacon.sol b/contracts/protocol/integration/wrap/notional/nUpgradeableBeacon.sol new file mode 100644 index 000000000..1c0dd1854 --- /dev/null +++ b/contracts/protocol/integration/wrap/notional/nUpgradeableBeacon.sol @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.11; + +import "openzeppelin-contracts-V4/proxy/beacon/UpgradeableBeacon.sol"; + +/// @dev Re-exporting to make available to brownie +/// UpgradeableBeacon is Ownable, default owner is the deployer +contract nUpgradeableBeacon is UpgradeableBeacon { + constructor(address implementation_) UpgradeableBeacon(implementation_) {} +} + diff --git a/package.json b/package.json index e29b0320d..201e07c7f 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "fs-extra": "^5.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", - "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c", + "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#c4bc894d8bf81de7e1c8e65e1c49774574cc135b", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index a9d50b41d..1aab380e2 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -29,6 +29,10 @@ import { import { IERC20 } from "@typechain/IERC20"; import { IERC20Metadata } from "@typechain/IERC20Metadata"; +import { NBeaconProxy } from "@typechain/NBeaconProxy"; +import { NBeaconProxy__factory } from "@typechain/factories/NBeaconProxy__factory"; +import { NUpgradeableBeacon } from "@typechain/NUpgradeableBeacon"; +import { NUpgradeableBeacon__factory } from "@typechain/factories/NUpgradeableBeacon__factory"; import { MAX_UINT_256 } from "@utils/constants"; const expect = getWaffleExpect(); @@ -41,213 +45,281 @@ const expect = getWaffleExpect(); * 2. WETH */ describe("Notional trade module integration [ @forked-mainnet ]", () => { - let owner: Account; - let manager: Account; + const notionalProxyAddress = "0x1344a36a1b56144c3bc62e7757377d288fde0369"; + const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; + let notionalProxy: INotionalProxy; - let deployer: DeployHelper; + beforeEach(async () => { + notionalProxy = (await ethers.getContractAt( + "INotionalProxy", + notionalProxyAddress, + )) as INotionalProxy; + }); - let setup: SystemFixture; - let tokens: ForkedTokens; + describe("Test notional proxy", async () => { + // // cacheBeforeEach(initialize); + // const daiCurrencyId = 2; + // it("owner should work", async () => { + // const owner = await notionalProxy.owner(); + // }); + // it("max currency id should work", async () => { + // const maxCurrencyId = await notionalProxy.getMaxCurrencyId(); + // expect(maxCurrencyId).to.eq(4); + // }); + // it("getCurrencyId should work", async () => { + // const currencyId = await notionalProxy.getCurrencyId(cdaiAddress); + // expect(currencyId).to.eq(daiCurrencyId); + // }); + // describe("When currencyId is valid", () => { + // [1, 2, 3, 4].forEach((currencyId) => { + // describe(`With currencyId: ${currencyId}`, () => { + // it("getCurrency should work", async () => { + // const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); + // const underlyingContract = (await ethers.getContractAt( + // "IERC20Metadata", + // underlyingToken.tokenAddress, + // )) as IERC20Metadata; + // const tokenSymbol = + // underlyingToken.tokenAddress == constants.AddressZero + // ? "ETH" + // : await underlyingContract.symbol(); + // console.log("Underlying token", { + // assetAddress: assetToken.tokenAddress, + // underlyingAddress: underlyingToken.tokenAddress, + // symbol: tokenSymbol, + // }); + // }); + + // it("getDepositParameters should work", async () => { + // await notionalProxy.getDepositParameters(currencyId); + // }); + + // it("getInitializationParameters should work", async () => { + // await notionalProxy.getInitializationParameters(currencyId); + // }); + + // it("getRateStorage should work", async () => { + // await notionalProxy.getRateStorage(currencyId); + // }); + + // it("getCurrencyAndRates should work", async () => { + // await notionalProxy.getCurrencyAndRates(currencyId); + // }); + + // it("getActiveMarkets should work", async () => { + // const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); + // expect(activeMarkets.length).to.be.gte(2); + // }); + + // describe("When the maturity is valid", () => { + // let maturity: number; + // let referenceTime: number; + // beforeEach(async () => { + // const secondsInQuarter = 3 * 30 * 24 * 60 * 60; + // const latestBlock = await ethers.provider.getBlock("latest"); + // const blockTime = latestBlock.timestamp; + // referenceTime = blockTime - (blockTime % secondsInQuarter); + // const quarters = referenceTime / secondsInQuarter; + // maturity = referenceTime + secondsInQuarter; + // }); + // it("getSettlementRate should work", async () => { + // const settlementRate = await notionalProxy.getSettlementRate(currencyId, maturity); + // expect(settlementRate.underlyingDecimals.gt(0)).to.be.true; + // }); + // it("getMarket should work", async () => { + // const marketData = await notionalProxy.getMarket(currencyId, maturity, maturity); + // expect(marketData.maturity).to.eq(maturity); + // }); + // }); + // }); + // }); + // }); + // describe("When currency id is invalid", () => { + // const invalidCurrencyId = 5; + // it("getActiveMarkets should revert correctly", async () => { + // await expect(notionalProxy.getActiveMarkets(invalidCurrencyId)).to.be.revertedWith( + // "Invalid currency id", + // ); + // }); + // }); + }); - let weth: IERC20; - let steth: IERC20; - let debtIssuanceModule: DebtIssuanceModuleV2; - let mockPreIssuanceHook: ManagerIssuanceHookMock; - let notionalTradeModule: NotionalTradeModule; + describe("Test WrappedfCash contract", () => { + let owner: Account; + let manager: Account; - let setToken: SetToken; - let issueQuantity: BigNumber; + let deployer: DeployHelper; - const notionalProxyAddress = "0x1344a36a1b56144c3bc62e7757377d288fde0369"; - let wrappedfCashBeacon: WrappedfCash; - let wrappedfCashFactory: WrappedfCashFactory; - let notionalProxy: INotionalProxy; + let setup: SystemFixture; + let tokens: ForkedTokens; - beforeEach(async () => { - // [owner, manager] = await getAccounts(); + let weth: IERC20; + let steth: IERC20; + let debtIssuanceModule: DebtIssuanceModuleV2; + let mockPreIssuanceHook: ManagerIssuanceHookMock; + let notionalTradeModule: NotionalTradeModule; - // deployer = new DeployHelper(owner.wallet); + let setToken: SetToken; + let issueQuantity: BigNumber; - // setup = getSystemFixture(owner.address); - // await setup.initialize(); + let wrappedfCashImplementation: WrappedfCash; + let wrappedfCashBeacon: NUpgradeableBeacon; + let wrappedfCashFactory: WrappedfCashFactory; - // // Setup ForkedTokens - // await initializeForkedTokens(deployer); - // tokens = getForkedTokens(); - // weth = tokens.weth; - // steth = tokens.steth; + beforeEach(async () => { + [owner, manager] = await getAccounts(); - notionalProxy = (await ethers.getContractAt( - "INotionalProxy", - notionalProxyAddress, - )) as INotionalProxy; + deployer = new DeployHelper(owner.wallet); - // // Deploy WrappedfCash - // wrappedfCashBeacon = await deployer.external.deployWrappedfCash(notionalProxyAddress); - // console.log("wrappedfCashBeacon:", wrappedfCashBeacon.address); - - // wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( - // wrappedfCashBeacon.address, - // ); - // console.log("wrappedfCashFactory:", wrappedfCashFactory.address); - - // // Deploy DebtIssuanceModuleV2 - // debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( - // setup.controller.address, - // ); - // await setup.controller.addModule(debtIssuanceModule.address); - - // // Deploy NotionalTradeModule - // notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - // setup.controller.address, - // ); - // await setup.controller.addModule(notionalTradeModule.address); - - // // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization - // mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); - - // // Create liquidity - // const ape = await getRandomAccount(); // The wallet adding initial liquidity - // await weth.transfer(ape.address, ether(50)); - // await steth.transfer(ape.address, ether(50000)); - }); + setup = getSystemFixture(owner.address); + await setup.initialize(); - async function initialize() { - // Create Set token - setToken = await setup.createSetToken( - [steth.address], - [ether(2)], - [debtIssuanceModule.address, notionalTradeModule.address], - manager.address, - ); - - // Fund owner with stETH - await tokens.steth.transfer(owner.address, ether(11000)); - - // stETH has balance rounding errors that crash DebtIssuanceModuleV2 with: - // "Invalid transfer in. Results in undercollateralization" - // > transfer quantity = 1000000000000000000 - // > stETH balanceOf after transfer = 999999999999999999 - // Transfer steth to set token to overcollaterize the position by exactly the rounding error - // Transferring 2 results in steth.balanceOf(setToken) == 1 - await tokens.steth.transfer(setToken.address, 2); - - await steth.connect(owner.wallet).approve(debtIssuanceModule.address, MAX_UINT_256); - - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, - ); - - // Issue - issueQuantity = ether(1); - - await debtIssuanceModule - .connect(owner.wallet) - .issue(setToken.address, issueQuantity, owner.address); - } - - describe("Notional setup", async () => { - // cacheBeforeEach(initialize); - - const daiCurrencyId = 2; - - it("owner should work", async () => { - const owner = await notionalProxy.owner(); - }); + // Setup ForkedTokens + await initializeForkedTokens(deployer); + tokens = getForkedTokens(); + weth = tokens.weth; + steth = tokens.steth; - it("max currency id should work", async () => { - const maxCurrencyId = await notionalProxy.getMaxCurrencyId(); - expect(maxCurrencyId).to.eq(4); - }); + // Deploy WrappedfCash + wrappedfCashImplementation = await deployer.external.deployWrappedfCash(notionalProxyAddress); - it("getCurrencyId should work", async () => { - const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; - const currencyId = await notionalProxy.getCurrencyId(cdaiAddress); - expect(currencyId).to.eq(daiCurrencyId); - }); + wrappedfCashBeacon = await new NUpgradeableBeacon__factory(owner.wallet).deploy( + wrappedfCashImplementation.address, + ); - describe("When currencyId is valid", () => { - [1, 2, 3, 4].forEach((currencyId) => { - describe(`With currencyId: ${currencyId}`, () => { - it("getCurrency should work", async () => { - const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); - const underlyingContract = (await ethers.getContractAt( - "IERC20Metadata", - underlyingToken.tokenAddress, - )) as IERC20Metadata; - - const tokenSymbol = - underlyingToken.tokenAddress == constants.AddressZero - ? "ETH" - : await underlyingContract.symbol(); - console.log("Underlying token", { - assetAddress: assetToken.tokenAddress, - underlyingAddress: underlyingToken.tokenAddress, - symbol: tokenSymbol, - }); - }); + wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( + wrappedfCashBeacon.address, + ); - it("getDepositParameters should work", async () => { - await notionalProxy.getDepositParameters(currencyId); - }); + // Deploy DebtIssuanceModuleV2 + debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + setup.controller.address, + ); + await setup.controller.addModule(debtIssuanceModule.address); - it("getInitializationParameters should work", async () => { - await notionalProxy.getInitializationParameters(currencyId); - }); + // Deploy NotionalTradeModule + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization + mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); - it("getRateStorage should work", async () => { - await notionalProxy.getRateStorage(currencyId); + // Create liquidity + const ape = await getRandomAccount(); // The wallet adding initial liquidity + await weth.transfer(ape.address, ether(50)); + await steth.transfer(ape.address, ether(50000)); + + await initialize(); + }); + + async function initialize() { + // Create Set token + setToken = await setup.createSetToken( + [steth.address], + [ether(2)], + [debtIssuanceModule.address, notionalTradeModule.address], + manager.address, + ); + + // Fund owner with stETH + await tokens.steth.transfer(owner.address, ether(11000)); + + // stETH has balance rounding errors that crash DebtIssuanceModuleV2 with: + // "Invalid transfer in. Results in undercollateralization" + // > transfer quantity = 1000000000000000000 + // > stETH balanceOf after transfer = 999999999999999999 + // Transfer steth to set token to overcollaterize the position by exactly the rounding error + // Transferring 2 results in steth.balanceOf(setToken) == 1 + await tokens.steth.transfer(setToken.address, 2); + + await steth.connect(owner.wallet).approve(debtIssuanceModule.address, MAX_UINT_256); + + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + + // Issue + issueQuantity = ether(1); + + await debtIssuanceModule + .connect(owner.wallet) + .issue(setToken.address, issueQuantity, owner.address); + } + + describe("Test WrappedFCash contracts", () => { + // DAI currencyId + const currencyId = 2; + let maturity: BigNumber; + let wrappedFCashInstance: WrappedfCash; + beforeEach(async () => { + const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); + maturity = activeMarkets[0].maturity; + }); + describe("Deploying WrappedfCash directly", () => { + beforeEach(async () => { + wrappedFCashInstance = await deployer.external.deployWrappedfCash(notionalProxyAddress); + }); + it("initialization should work", async () => { + const initializationData = wrappedfCashImplementation.interface.encodeFunctionData( + "initialize", + [currencyId, maturity], + ); + await owner.wallet.sendTransaction({ + to: wrappedFCashInstance.address, + data: initializationData, }); + }); + }); + + describe("Deploying WrappedfCash with beacon proxy", () => { + let proxyContract; + it("deployment should work", async () => { + const initializationData = wrappedfCashImplementation.interface.encodeFunctionData( + "initialize", + [currencyId, maturity], + ); + proxyContract = await new NBeaconProxy__factory(owner.wallet).deploy( + wrappedfCashBeacon.address, + initializationData, + ); + wrappedFCashInstance = wrappedfCashImplementation.attach(proxyContract.address); + }); + }); - it("getCurrencyAndRates should work", async () => { - await notionalProxy.getCurrencyAndRates(currencyId); + describe("WrappedFCashFactory", () => { + it("Can create new wrappedFCash instance", async () => { + await wrappedfCashFactory.deployWrapper(currencyId, maturity); + }); + describe("When WrappedfCash is deployed", () => { + beforeEach(async () => { + const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( + currencyId, + maturity, + ); + await wrappedfCashFactory.deployWrapper(currencyId, maturity); + wrappedFCashInstance = wrappedfCashImplementation.attach(wrappeFCashAddress); }); - it("getActiveMarkets should work", async () => { - const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); - expect(activeMarkets.length).to.be.gte(2); + it("getCurrencyId works correctly", async () => { + const returnedCurrencyId = await wrappedFCashInstance.getCurrencyId(); + expect(returnedCurrencyId).to.eq(currencyId); }); - describe("When the maturity is valid", () => { - let maturity: number; - let referenceTime: number; - beforeEach(async () => { - const secondsInQuarter = 3 * 30 * 24 * 60 * 60; - const latestBlock = await ethers.provider.getBlock("latest"); - const blockTime = latestBlock.timestamp; - referenceTime = blockTime - (blockTime % secondsInQuarter); - const quarters = referenceTime / secondsInQuarter; - - maturity = referenceTime + secondsInQuarter; - }) - it("getSettlementRate should work", async () => { - const settlementRate = await notionalProxy.getSettlementRate(currencyId, maturity); - expect(settlementRate.underlyingDecimals.gt(0)).to.be.true; - }); - - it("getMarket should work", async () => { - const marketData = await notionalProxy.getMarket(currencyId, maturity, maturity); - expect(marketData.maturity).to.eq(maturity); - }); - }) - + it("getAssetToken works", async () => { + const [assetTokenAddress] = await wrappedFCashInstance.getAssetToken(); + expect(assetTokenAddress).to.eq(cdaiAddress); + }); }); }); }); - describe("When currency id is invalid", () => { - const invalidCurrencyId = 5; - it("getActiveMarkets should revert correctly", async () => { - await expect(notionalProxy.getActiveMarkets(invalidCurrencyId)).to.be.revertedWith( - "Invalid currency id", - ); - }); - }); }); }); diff --git a/yarn.lock b/yarn.lock index 8d465ce02..e3f7d1fd2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9541,9 +9541,9 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c": +"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#c4bc894d8bf81de7e1c8e65e1c49774574cc135b": version "1.0.0" - resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c" + resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#c4bc894d8bf81de7e1c8e65e1c49774574cc135b" dependencies: "@openzeppelin/contracts-upgradeable" "^4.5.2" dotenv "^10.0.0" From 472e34336b462ed899513548d869eea94194ea6f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 24 Apr 2022 21:06:58 +0800 Subject: [PATCH 023/120] Downgrade notional-solidity-sdk version --- package.json | 2 +- test/integration/notionalTradeModule.spec.ts | 21 -------------------- yarn.lock | 4 ++-- 3 files changed, 3 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index 201e07c7f..e29b0320d 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "fs-extra": "^5.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", - "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#c4bc894d8bf81de7e1c8e65e1c49774574cc135b", + "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 1aab380e2..7f524b32b 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -89,28 +89,22 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { // symbol: tokenSymbol, // }); // }); - // it("getDepositParameters should work", async () => { // await notionalProxy.getDepositParameters(currencyId); // }); - // it("getInitializationParameters should work", async () => { // await notionalProxy.getInitializationParameters(currencyId); // }); - // it("getRateStorage should work", async () => { // await notionalProxy.getRateStorage(currencyId); // }); - // it("getCurrencyAndRates should work", async () => { // await notionalProxy.getCurrencyAndRates(currencyId); // }); - // it("getActiveMarkets should work", async () => { // const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); // expect(activeMarkets.length).to.be.gte(2); // }); - // describe("When the maturity is valid", () => { // let maturity: number; // let referenceTime: number; @@ -263,21 +257,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); maturity = activeMarkets[0].maturity; }); - describe("Deploying WrappedfCash directly", () => { - beforeEach(async () => { - wrappedFCashInstance = await deployer.external.deployWrappedfCash(notionalProxyAddress); - }); - it("initialization should work", async () => { - const initializationData = wrappedfCashImplementation.interface.encodeFunctionData( - "initialize", - [currencyId, maturity], - ); - await owner.wallet.sendTransaction({ - to: wrappedFCashInstance.address, - data: initializationData, - }); - }); - }); describe("Deploying WrappedfCash with beacon proxy", () => { let proxyContract; diff --git a/yarn.lock b/yarn.lock index e3f7d1fd2..8d465ce02 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9541,9 +9541,9 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#c4bc894d8bf81de7e1c8e65e1c49774574cc135b": +"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c": version "1.0.0" - resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#c4bc894d8bf81de7e1c8e65e1c49774574cc135b" + resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c" dependencies: "@openzeppelin/contracts-upgradeable" "^4.5.2" dotenv "^10.0.0" From 7ca77268bb2535478762cac2fe7ee657ac6d7893 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 25 Apr 2022 19:16:12 +0800 Subject: [PATCH 024/120] Add mint test --- test/integration/notionalTradeModule.spec.ts | 21 ++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 7f524b32b..a8840907a 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -148,6 +148,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let tokens: ForkedTokens; let weth: IERC20; + let dai: IERC20; let steth: IERC20; let debtIssuanceModule: DebtIssuanceModuleV2; let mockPreIssuanceHook: ManagerIssuanceHookMock; @@ -173,7 +174,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { tokens = getForkedTokens(); weth = tokens.weth; steth = tokens.steth; - + dai = tokens.dai; // Deploy WrappedfCash wrappedfCashImplementation = await deployer.external.deployWrappedfCash(notionalProxyAddress); @@ -249,7 +250,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } describe("Test WrappedFCash contracts", () => { - // DAI currencyId + // kAI currencyId const currencyId = 2; let maturity: BigNumber; let wrappedFCashInstance: WrappedfCash; @@ -297,6 +298,22 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(assetTokenAddress).to.eq(cdaiAddress); }); + it("mint works", async () => { + const depositAmountExternal = ethers.utils.parseEther("1"); + const fCashAmount = ethers.utils.parseEther("1"); + const receiver = owner.address; + const minImpliedRate = 0; + const useUnderlying = true; + await dai.transfer(owner.address, depositAmountExternal); + await dai.connect(owner.wallet).approve(wrappedFCashInstance.address, depositAmountExternal); + await wrappedFCashInstance.mint( + depositAmountExternal, + fCashAmount, + receiver, + minImpliedRate, + useUnderlying, + ); + }); }); }); }); From df79de92d99e4373c9c21b97fede3878be27f429 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 26 Apr 2022 09:33:44 +0800 Subject: [PATCH 025/120] Try to deploy Notional upgrade in test --- external/abi/notional/BatchAction.json | 121840 ++++++++++++++++ external/abi/notional/ERC1155Action.json | 94889 ++++++++++++ external/abi/notional/Router.json | 25958 ++++ test/integration/notionalTradeModule.spec.ts | 105 +- 4 files changed, 242776 insertions(+), 16 deletions(-) create mode 100644 external/abi/notional/BatchAction.json create mode 100644 external/abi/notional/ERC1155Action.json create mode 100644 external/abi/notional/Router.json diff --git a/external/abi/notional/BatchAction.json b/external/abi/notional/BatchAction.json new file mode 100644 index 000000000..aaa44cf6b --- /dev/null +++ b/external/abi/notional/BatchAction.json @@ -0,0 +1,121840 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum DepositActionType", + "name": "actionType", + "type": "uint8" + }, + { + "internalType": "uint16", + "name": "currencyId", + "type": "uint16" + }, + { + "internalType": "uint256", + "name": "depositActionAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawAmountInternalPrecision", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "withdrawEntireCashBalance", + "type": "bool" + }, + { + "internalType": "bool", + "name": "redeemToUnderlying", + "type": "bool" + } + ], + "internalType": "struct BalanceAction[]", + "name": "actions", + "type": "tuple[]" + } + ], + "name": "batchBalanceAction", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum DepositActionType", + "name": "actionType", + "type": "uint8" + }, + { + "internalType": "uint16", + "name": "currencyId", + "type": "uint16" + }, + { + "internalType": "uint256", + "name": "depositActionAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawAmountInternalPrecision", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "withdrawEntireCashBalance", + "type": "bool" + }, + { + "internalType": "bool", + "name": "redeemToUnderlying", + "type": "bool" + }, + { + "internalType": "bytes32[]", + "name": "trades", + "type": "bytes32[]" + } + ], + "internalType": "struct BalanceActionWithTrades[]", + "name": "actions", + "type": "tuple[]" + } + ], + "name": "batchBalanceAndTradeAction", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum DepositActionType", + "name": "actionType", + "type": "uint8" + }, + { + "internalType": "uint16", + "name": "currencyId", + "type": "uint16" + }, + { + "internalType": "uint256", + "name": "depositActionAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawAmountInternalPrecision", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "withdrawEntireCashBalance", + "type": "bool" + }, + { + "internalType": "bool", + "name": "redeemToUnderlying", + "type": "bool" + }, + { + "internalType": "bytes32[]", + "name": "trades", + "type": "bytes32[]" + } + ], + "internalType": "struct BalanceActionWithTrades[]", + "name": "actions", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "callbackData", + "type": "bytes" + } + ], + "name": "batchBalanceAndTradeActionWithCallback", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint16", + "name": "currencyId", + "type": "uint16" + }, + { + "internalType": "bool", + "name": "depositUnderlying", + "type": "bool" + }, + { + "internalType": "bytes32[]", + "name": "trades", + "type": "bytes32[]" + } + ], + "internalType": "struct BatchLend[]", + "name": "actions", + "type": "tuple[]" + } + ], + "name": "batchLend", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getLibInfo", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseRouter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "allSourcePaths": { + "141": "interfaces/IEIP20NonStandard.sol", + "147": "interfaces/aave/ILendingPool.sol", + "151": "interfaces/compound/CErc20Interface.sol", + "152": "interfaces/compound/CEtherInterface.sol", + "153": "interfaces/compound/CTokenInterface.sol", + "155": "interfaces/notional/AssetRateAdapter.sol", + "157": "interfaces/notional/IRewarder.sol", + "159": "interfaces/notional/NotionalCallback.sol", + "21": "contracts/external/FreeCollateralExternal.sol", + "22": "contracts/external/MigrateIncentives.sol", + "25": "contracts/external/SettleAssetsExternal.sol", + "28": "contracts/external/actions/ActionGuards.sol", + "29": "contracts/external/actions/BatchAction.sol", + "35": "contracts/external/actions/TradingAction.sol", + "38": "contracts/external/actions/nTokenMintAction.sol", + "39": "contracts/external/actions/nTokenRedeemAction.sol", + "6": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/math/SafeMath.sol", + "60": "contracts/global/Constants.sol", + "61": "contracts/global/Deployments.sol", + "62": "contracts/global/LibStorage.sol", + "63": "contracts/global/StorageLayoutV1.sol", + "65": "contracts/global/Types.sol", + "66": "contracts/internal/AccountContextHandler.sol", + "67": "contracts/internal/balances/BalanceHandler.sol", + "68": "contracts/internal/balances/Incentives.sol", + "69": "contracts/internal/balances/TokenHandler.sol", + "70": "contracts/internal/balances/protocols/AaveHandler.sol", + "71": "contracts/internal/balances/protocols/CompoundHandler.sol", + "72": "contracts/internal/balances/protocols/GenericToken.sol", + "76": "contracts/internal/markets/AssetRate.sol", + "77": "contracts/internal/markets/CashGroup.sol", + "78": "contracts/internal/markets/DateTime.sol", + "79": "contracts/internal/markets/Market.sol", + "80": "contracts/internal/nToken/nTokenCalculations.sol", + "81": "contracts/internal/nToken/nTokenHandler.sol", + "82": "contracts/internal/nToken/nTokenSupply.sol", + "83": "contracts/internal/portfolio/BitmapAssetsHandler.sol", + "84": "contracts/internal/portfolio/PortfolioHandler.sol", + "85": "contracts/internal/portfolio/TransferAssets.sol", + "86": "contracts/internal/settlement/SettleBitmapAssets.sol", + "87": "contracts/internal/settlement/SettlePortfolioAssets.sol", + "88": "contracts/internal/valuation/AssetHandler.sol", + "89": "contracts/internal/valuation/ExchangeRate.sol", + "90": "contracts/internal/valuation/FreeCollateral.sol", + "91": "contracts/math/ABDKMath64x64.sol", + "92": "contracts/math/Bitmap.sol", + "93": "contracts/math/FloatingPoint56.sol", + "94": "contracts/math/SafeInt256.sol" + }, + "ast": { + "absolutePath": "contracts/external/actions/BatchAction.sol", + "exportedSymbols": { + "ABDKMath64x64": [ + 44430 + ], + "AaveHandler": [ + 26669 + ], + "AccountBalance": [ + 57824 + ], + "AccountContext": [ + 57743 + ], + "AccountContextHandler": [ + 24055 + ], + "ActionGuards": [ + 3662 + ], + "AggregatorInterface": [ + 62384 + ], + "AggregatorV2V3Interface": [ + 58997 + ], + "AggregatorV3Interface": [ + 62430 + ], + "AssetHandler": [ + 40067 + ], + "AssetRate": [ + 30677 + ], + "AssetRateAdapter": [ + 59041 + ], + "AssetRateParameters": [ + 57639 + ], + "AssetRateStorage": [ + 57707 + ], + "AssetStorageState": [ + 57500 + ], + "BalanceAction": [ + 57521 + ], + "BalanceActionWithTrades": [ + 57537 + ], + "BalanceHandler": [ + 25398 + ], + "BalanceState": [ + 57632 + ], + "BalanceStorage": [ + 57767 + ], + "BatchAction": [ + 4840 + ], + "BatchLend": [ + 57508 + ], + "Bitmap": [ + 44771 + ], + "BitmapAssetsHandler": [ + 37096 + ], + "CErc20Interface": [ + 59445 + ], + "CEtherInterface": [ + 59757 + ], + "CTokenInterface": [ + 59740 + ], + "CashGroup": [ + 31956 + ], + "CashGroupParameters": [ + 57648 + ], + "CashGroupSettings": [ + 57732 + ], + "CompoundHandler": [ + 26861 + ], + "Constants": [ + 22832 + ], + "Context": [ + 62453 + ], + "DateTime": [ + 32595 + ], + "Deployments": [ + 22839 + ], + "DepositActionType": [ + 57495 + ], + "ERC20": [ + 60749 + ], + "ETHRate": [ + 57613 + ], + "ETHRateStorage": [ + 57702 + ], + "ExchangeRate": [ + 40263 + ], + "FloatingPoint56": [ + 44847 + ], + "FreeCollateral": [ + 41676 + ], + "FreeCollateralExternal": [ + 618 + ], + "GenericToken": [ + 26993 + ], + "IAToken": [ + 60771 + ], + "IATokenFull": [ + 60806 + ], + "IEIP20NonStandard": [ + 61875 + ], + "IERC20": [ + 59607 + ], + "ILendingPool": [ + 60888 + ], + "IRewarder": [ + 59057 + ], + "IScaledBalanceToken": [ + 60796 + ], + "Incentives": [ + 25585 + ], + "LendingPoolStorage": [ + 60812 + ], + "LibStorage": [ + 23238 + ], + "LiquidationFactors": [ + 57591 + ], + "Market": [ + 34509 + ], + "MarketParameters": [ + 57678 + ], + "MarketStorage": [ + 57787 + ], + "MigrateIncentives": [ + 775 + ], + "NotionalCallback": [ + 58532 + ], + "PortfolioAsset": [ + 57661 + ], + "PortfolioAssetStorage": [ + 57799 + ], + "PortfolioHandler": [ + 38387 + ], + "PortfolioState": [ + 57602 + ], + "SafeInt256": [ + 45162 + ], + "SafeMath": [ + 56637 + ], + "SettleAmount": [ + 57542 + ], + "SettleAssetsExternal": [ + 1878 + ], + "SettleBitmapAssets": [ + 38867 + ], + "SettlePortfolioAssets": [ + 39292 + ], + "SettlementRateStorage": [ + 57774 + ], + "StorageLayoutV1": [ + 23292 + ], + "Token": [ + 57553 + ], + "TokenHandler": [ + 26426 + ], + "TokenStorage": [ + 57689 + ], + "TokenType": [ + 57480 + ], + "TradeActionType": [ + 57487 + ], + "TradingAction": [ + 11085 + ], + "TransferAssets": [ + 38618 + ], + "ifCashStorage": [ + 57790 + ], + "nTokenCalculations": [ + 35079 + ], + "nTokenContext": [ + 57758 + ], + "nTokenHandler": [ + 36105 + ], + "nTokenMintAction": [ + 12854 + ], + "nTokenPortfolio": [ + 57568 + ], + "nTokenRedeemAction": [ + 13836 + ], + "nTokenSupply": [ + 36407 + ], + "nTokenTotalSupplyStorage": [ + 57813 + ], + "nTokenTotalSupplyStorage_deprecated": [ + 57806 + ] + }, + "id": 4841, + "license": "GPL-3.0-only", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3664, + "literals": [ + "solidity", + "^", + "0.7", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "41:23:29" + }, + { + "id": 3665, + "literals": [ + "abicoder", + "v2" + ], + "nodeType": "PragmaDirective", + "src": "65:19:29" + }, + { + "absolutePath": "contracts/external/actions/TradingAction.sol", + "file": "./TradingAction.sol", + "id": 3666, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 11086, + "src": "86:29:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/actions/ActionGuards.sol", + "file": "./ActionGuards.sol", + "id": 3667, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 3663, + "src": "116:28:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/actions/nTokenMintAction.sol", + "file": "./nTokenMintAction.sol", + "id": 3668, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 12855, + "src": "145:32:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/actions/nTokenRedeemAction.sol", + "file": "./nTokenRedeemAction.sol", + "id": 3669, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 13837, + "src": "178:34:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/SettleAssetsExternal.sol", + "file": "../SettleAssetsExternal.sol", + "id": 3670, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 1879, + "src": "213:37:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/FreeCollateralExternal.sol", + "file": "../FreeCollateralExternal.sol", + "id": 3671, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 619, + "src": "251:39:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/math/SafeInt256.sol", + "file": "../../math/SafeInt256.sol", + "id": 3672, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 45163, + "src": "291:35:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/global/StorageLayoutV1.sol", + "file": "../../global/StorageLayoutV1.sol", + "id": 3673, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 23293, + "src": "327:42:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/internal/balances/BalanceHandler.sol", + "file": "../../internal/balances/BalanceHandler.sol", + "id": 3674, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 25399, + "src": "370:52:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/internal/portfolio/PortfolioHandler.sol", + "file": "../../internal/portfolio/PortfolioHandler.sol", + "id": 3675, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 38388, + "src": "423:55:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/internal/AccountContextHandler.sol", + "file": "../../internal/AccountContextHandler.sol", + "id": 3676, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 24056, + "src": "479:50:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/NotionalCallback.sol", + "file": "../../../interfaces/notional/NotionalCallback.sol", + "id": 3677, + "nodeType": "ImportDirective", + "scope": 4841, + "sourceUnit": 58533, + "src": "530:59:29", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 3678, + "name": "StorageLayoutV1", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 23292, + "src": "615:15:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_StorageLayoutV1_$23292", + "typeString": "contract StorageLayoutV1" + } + }, + "id": 3679, + "nodeType": "InheritanceSpecifier", + "src": "615:15:29" + }, + { + "baseName": { + "id": 3680, + "name": "ActionGuards", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3662, + "src": "632:12:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ActionGuards_$3662", + "typeString": "contract ActionGuards" + } + }, + "id": 3681, + "nodeType": "InheritanceSpecifier", + "src": "632:12:29" + } + ], + "contractDependencies": [ + 3662, + 23292 + ], + "contractKind": "contract", + "fullyImplemented": true, + "id": 4840, + "linearizedBaseContracts": [ + 4840, + 3662, + 23292 + ], + "name": "BatchAction", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 3684, + "libraryName": { + "id": 3682, + "name": "BalanceHandler", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 25398, + "src": "657:14:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BalanceHandler_$25398", + "typeString": "library BalanceHandler" + } + }, + "nodeType": "UsingForDirective", + "src": "651:38:29", + "typeName": { + "id": 3683, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "676:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + } + }, + { + "id": 3687, + "libraryName": { + "id": 3685, + "name": "PortfolioHandler", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 38387, + "src": "700:16:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_PortfolioHandler_$38387", + "typeString": "library PortfolioHandler" + } + }, + "nodeType": "UsingForDirective", + "src": "694:42:29", + "typeName": { + "id": 3686, + "name": "PortfolioState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57602, + "src": "721:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", + "typeString": "struct PortfolioState" + } + } + }, + { + "id": 3690, + "libraryName": { + "id": 3688, + "name": "AccountContextHandler", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 24055, + "src": "747:21:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_AccountContextHandler_$24055", + "typeString": "library AccountContextHandler" + } + }, + "nodeType": "UsingForDirective", + "src": "741:47:29", + "typeName": { + "id": 3689, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "773:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + } + }, + { + "id": 3693, + "libraryName": { + "id": 3691, + "name": "AssetRate", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 30677, + "src": "799:9:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_AssetRate_$30677", + "typeString": "library AssetRate" + } + }, + "nodeType": "UsingForDirective", + "src": "793:40:29", + "typeName": { + "id": 3692, + "name": "AssetRateParameters", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57639, + "src": "813:19:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AssetRateParameters_$57639_storage_ptr", + "typeString": "struct AssetRateParameters" + } + } + }, + { + "id": 3696, + "libraryName": { + "id": 3694, + "name": "TokenHandler", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 26426, + "src": "844:12:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_TokenHandler_$26426", + "typeString": "library TokenHandler" + } + }, + "nodeType": "UsingForDirective", + "src": "838:29:29", + "typeName": { + "id": 3695, + "name": "Token", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57553, + "src": "861:5:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", + "typeString": "struct Token" + } + } + }, + { + "id": 3699, + "libraryName": { + "id": 3697, + "name": "SafeInt256", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 45162, + "src": "878:10:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeInt256_$45162", + "typeString": "library SafeInt256" + } + }, + "nodeType": "UsingForDirective", + "src": "872:28:29", + "typeName": { + "id": 3698, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "893:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + }, + { + "body": { + "id": 3811, + "nodeType": "Block", + "src": "1378:1390:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3714, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3711, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "1396:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 3712, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1407:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1407:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "1396:21:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3715, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1421:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1421:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 3719, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "1443:4:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BatchAction_$4840", + "typeString": "contract BatchAction" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_BatchAction_$4840", + "typeString": "contract BatchAction" + } + ], + "id": 3718, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1435:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3717, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1435:7:29", + "typeDescriptions": {} + } + }, + "id": 3720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1435:13:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1421:27:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1396:52:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a6564", + "id": 3723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1450:14:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + }, + "value": "Unauthorized" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + } + ], + "id": 3710, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1388:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3724, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1388:77:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3725, + "nodeType": "ExpressionStatement", + "src": "1388:77:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3727, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "1495:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3726, + "name": "requireValidAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3661, + "src": "1475:19:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", + "typeString": "function (address) view" + } + }, + "id": 3728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1475:28:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3729, + "nodeType": "ExpressionStatement", + "src": "1475:28:29" + }, + { + "assignments": [ + 3731 + ], + "declarations": [ + { + "constant": false, + "id": 3731, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 3811, + "src": "1514:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 3730, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "1514:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 3735, + "initialValue": { + "arguments": [ + { + "id": 3733, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "1578:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3732, + "name": "_settleAccountIfRequired", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "1553:24:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) returns (struct AccountContext memory)" + } + }, + "id": 3734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1553:33:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1514:72:29" + }, + { + "assignments": [ + 3737 + ], + "declarations": [ + { + "constant": false, + "id": 3737, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 3811, + "src": "1596:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 3736, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "1596:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + } + ], + "id": 3738, + "nodeType": "VariableDeclarationStatement", + "src": "1596:32:29" + }, + { + "body": { + "id": 3804, + "nodeType": "Block", + "src": "1684:1019:29", + "statements": [ + { + "assignments": [ + 3751 + ], + "declarations": [ + { + "constant": false, + "id": 3751, + "mutability": "mutable", + "name": "action", + "nodeType": "VariableDeclaration", + "scope": 3804, + "src": "1698:29:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction" + }, + "typeName": { + "id": 3750, + "name": "BalanceAction", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57521, + "src": "1698:13:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_storage_ptr", + "typeString": "struct BalanceAction" + } + }, + "visibility": "internal" + } + ], + "id": 3755, + "initialValue": { + "baseExpression": { + "id": 3752, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3705, + "src": "1730:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceAction calldata[] calldata" + } + }, + "id": 3754, + "indexExpression": { + "id": 3753, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "1738:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1730:10:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1698:42:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3756, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "1953:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 3757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1957:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1953:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3773, + "nodeType": "IfStatement", + "src": "1949:118:29", + "trueBody": { + "id": 3772, + "nodeType": "Block", + "src": "1960:107:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 3768, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3760, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "1986:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3761, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57512, + "src": "1986:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 3762, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3705, + "src": "2006:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceAction calldata[] calldata" + } + }, + "id": 3766, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3763, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "2014:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 3764, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2018:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2014:5:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2006:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57512, + "src": "2006:25:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "1986:45:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e736f7274656420616374696f6e73", + "id": 3769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2033:18:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", + "typeString": "literal_string \"Unsorted actions\"" + }, + "value": "Unsorted actions" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", + "typeString": "literal_string \"Unsorted actions\"" + } + ], + "id": 3759, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "1978:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1978:74:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3771, + "nodeType": "ExpressionStatement", + "src": "1978:74:29" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3777, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "2165:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 3778, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "2174:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57512, + "src": "2174:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 3780, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3731, + "src": "2193:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "expression": { + "id": 3774, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "2135:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 3776, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "loadBalanceState", + "nodeType": "MemberAccess", + "referencedDeclaration": 25360, + "src": "2135:29:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" + } + }, + "id": 3781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2135:73:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3782, + "nodeType": "ExpressionStatement", + "src": "2135:73:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3784, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "2262:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3785, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "2287:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "expression": { + "id": 3786, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "2317:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "actionType", + "nodeType": "MemberAccess", + "referencedDeclaration": 57510, + "src": "2317:17:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + { + "expression": { + "id": 3788, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "2352:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "depositActionAmount", + "nodeType": "MemberAccess", + "referencedDeclaration": 57514, + "src": "2352:26:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3783, + "name": "_executeDepositAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4451, + "src": "2223:21:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_uint256_$returns$__$", + "typeString": "function (address,struct BalanceState memory,enum DepositActionType,uint256)" + } + }, + "id": 3790, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2223:169:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3791, + "nodeType": "ExpressionStatement", + "src": "2223:169:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3793, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "2460:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3794, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3731, + "src": "2485:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 3795, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "2517:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "expression": { + "id": 3796, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "2547:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "withdrawAmountInternalPrecision", + "nodeType": "MemberAccess", + "referencedDeclaration": 57516, + "src": "2547:38:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 3798, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "2603:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "withdrawEntireCashBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57518, + "src": "2603:32:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "expression": { + "id": 3800, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3751, + "src": "2653:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", + "typeString": "struct BalanceAction calldata" + } + }, + "id": 3801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "redeemToUnderlying", + "nodeType": "MemberAccess", + "referencedDeclaration": 57520, + "src": "2653:25:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3792, + "name": "_calculateWithdrawActionAndFinalize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4637, + "src": "2407:35:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_uint256_$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (address,struct AccountContext memory,struct BalanceState memory,uint256,bool,bool)" + } + }, + "id": 3802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2407:285:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3803, + "nodeType": "ExpressionStatement", + "src": "2407:285:29" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3743, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "1659:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3744, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3705, + "src": "1663:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceAction calldata[] calldata" + } + }, + "id": 3745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "1663:14:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1659:18:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3805, + "initializationExpression": { + "assignments": [ + 3740 + ], + "declarations": [ + { + "constant": false, + "id": 3740, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 3805, + "src": "1644:9:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3739, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1644:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3742, + "initialValue": { + "hexValue": "30", + "id": 3741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1656:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1644:13:29" + }, + "loopExpression": { + "expression": { + "id": 3748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1679:3:29", + "subExpression": { + "id": 3747, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "1679:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3749, + "nodeType": "ExpressionStatement", + "src": "1679:3:29" + }, + "nodeType": "ForStatement", + "src": "1639:1064:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3807, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3702, + "src": "2737:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3808, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3731, + "src": "2746:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "id": 3806, + "name": "_finalizeAccountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4663, + "src": "2713:23:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", + "typeString": "function (address,struct AccountContext memory)" + } + }, + "id": 3809, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2713:48:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3810, + "nodeType": "ExpressionStatement", + "src": "2713:48:29" + } + ] + }, + "documentation": { + "id": 3700, + "nodeType": "StructuredDocumentation", + "src": "906:330:29", + "text": "@notice Executes a batch of balance transfers including minting and redeeming nTokens.\n @param account the account for the action\n @param actions array of balance actions to take, must be sorted by currency id\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange\n @dev auth:msg.sender auth:ERC1155" + }, + "functionSelector": "6e6a32a6", + "id": 3812, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 3708, + "modifierName": { + "id": 3707, + "name": "nonReentrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3626, + "src": "1361:12:29", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1361:12:29" + } + ], + "name": "batchBalanceAction", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3706, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3702, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 3812, + "src": "1269:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3701, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1269:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3705, + "mutability": "mutable", + "name": "actions", + "nodeType": "VariableDeclaration", + "scope": 3812, + "src": "1286:32:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceAction[]" + }, + "typeName": { + "baseType": { + "id": 3703, + "name": "BalanceAction", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57521, + "src": "1286:13:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceAction_$57521_storage_ptr", + "typeString": "struct BalanceAction" + } + }, + "id": 3704, + "nodeType": "ArrayTypeName", + "src": "1286:15:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_storage_$dyn_storage_ptr", + "typeString": "struct BalanceAction[]" + } + }, + "visibility": "internal" + } + ], + "src": "1268:51:29" + }, + "returnParameters": { + "id": 3709, + "nodeType": "ParameterList", + "parameters": [], + "src": "1378:0:29" + }, + "scope": 4840, + "src": "1241:1527:29", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 3855, + "nodeType": "Block", + "src": "3390:284:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3824, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3815, + "src": "3408:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 3825, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3419:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3419:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "3408:21:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3828, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3433:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3433:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 3832, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "3455:4:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BatchAction_$4840", + "typeString": "contract BatchAction" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_BatchAction_$4840", + "typeString": "contract BatchAction" + } + ], + "id": 3831, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3447:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3830, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3447:7:29", + "typeDescriptions": {} + } + }, + "id": 3833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3447:13:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3433:27:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "3408:52:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a6564", + "id": 3836, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3462:14:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + }, + "value": "Unauthorized" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + } + ], + "id": 3823, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3400:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3837, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3400:77:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3838, + "nodeType": "ExpressionStatement", + "src": "3400:77:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3840, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3815, + "src": "3507:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3839, + "name": "requireValidAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3661, + "src": "3487:19:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", + "typeString": "function (address) view" + } + }, + "id": 3841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3487:28:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3842, + "nodeType": "ExpressionStatement", + "src": "3487:28:29" + }, + { + "assignments": [ + 3844 + ], + "declarations": [ + { + "constant": false, + "id": 3844, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "3525:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 3843, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "3525:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 3849, + "initialValue": { + "arguments": [ + { + "id": 3846, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3815, + "src": "3592:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3847, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3818, + "src": "3601:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + ], + "id": 3845, + "name": "_batchBalanceAndTradeAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4359, + "src": "3564:27:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct BalanceActionWithTrades calldata[] calldata) returns (struct AccountContext memory)" + } + }, + "id": 3848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3564:45:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3525:84:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3851, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3815, + "src": "3643:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3852, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3844, + "src": "3652:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "id": 3850, + "name": "_finalizeAccountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4663, + "src": "3619:23:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", + "typeString": "function (address,struct AccountContext memory)" + } + }, + "id": 3853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3619:48:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3854, + "nodeType": "ExpressionStatement", + "src": "3619:48:29" + } + ] + }, + "documentation": { + "id": 3813, + "nodeType": "StructuredDocumentation", + "src": "2774:456:29", + "text": "@notice Executes a batch of balance transfers and trading actions\n @param account the account for the action\n @param actions array of balance actions with trades to take, must be sorted by currency id\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n @dev auth:msg.sender auth:ERC1155" + }, + "functionSelector": "0276b64b", + "id": 3856, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 3821, + "modifierName": { + "id": 3820, + "name": "nonReentrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3626, + "src": "3373:12:29", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "3373:12:29" + } + ], + "name": "batchBalanceAndTradeAction", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3819, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3815, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 3856, + "src": "3271:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3814, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3271:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3818, + "mutability": "mutable", + "name": "actions", + "nodeType": "VariableDeclaration", + "scope": 3856, + "src": "3288:42:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades[]" + }, + "typeName": { + "baseType": { + "id": 3816, + "name": "BalanceActionWithTrades", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57537, + "src": "3288:23:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", + "typeString": "struct BalanceActionWithTrades" + } + }, + "id": 3817, + "nodeType": "ArrayTypeName", + "src": "3288:25:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", + "typeString": "struct BalanceActionWithTrades[]" + } + }, + "visibility": "internal" + } + ], + "src": "3270:61:29" + }, + "returnParameters": { + "id": 3822, + "nodeType": "ParameterList", + "parameters": [], + "src": "3390:0:29" + }, + "scope": 4840, + "src": "3235:439:29", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 4140, + "nodeType": "Block", + "src": "4595:5307:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3868, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "4613:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 3869, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4624:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4624:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "4613:21:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3872, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "4638:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3873, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "4638:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "id": 3876, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "4660:4:29", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BatchAction_$4840", + "typeString": "contract BatchAction" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_BatchAction_$4840", + "typeString": "contract BatchAction" + } + ], + "id": 3875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4652:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3874, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4652:7:29", + "typeDescriptions": {} + } + }, + "id": 3877, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4652:13:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4638:27:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4613:52:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a6564", + "id": 3880, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4667:14:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + }, + "value": "Unauthorized" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + } + ], + "id": 3867, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4605:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4605:77:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3882, + "nodeType": "ExpressionStatement", + "src": "4605:77:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3884, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "4712:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3883, + "name": "requireValidAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3661, + "src": "4692:19:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", + "typeString": "function (address) view" + } + }, + "id": 3885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4692:28:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3886, + "nodeType": "ExpressionStatement", + "src": "4692:28:29" + }, + { + "assignments": [ + 3888 + ], + "declarations": [ + { + "constant": false, + "id": 3888, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4140, + "src": "4731:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 3887, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "4731:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 3892, + "initialValue": { + "arguments": [ + { + "id": 3890, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "4795:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3889, + "name": "_settleAccountIfRequired", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "4770:24:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) returns (struct AccountContext memory)" + } + }, + "id": 3891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4770:33:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4731:72:29" + }, + { + "assignments": [ + 3894 + ], + "declarations": [ + { + "constant": false, + "id": 3894, + "mutability": "mutable", + "name": "portfolioState", + "nodeType": "VariableDeclaration", + "scope": 4140, + "src": "4980:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState" + }, + "typeName": { + "id": 3893, + "name": "PortfolioState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57602, + "src": "4980:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", + "typeString": "struct PortfolioState" + } + }, + "visibility": "internal" + } + ], + "id": 3902, + "initialValue": { + "arguments": [ + { + "id": 3897, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "5069:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 3898, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "5090:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 3899, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "assetArrayLength", + "nodeType": "MemberAccess", + "referencedDeclaration": 57738, + "src": "5090:31:29", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "hexValue": "30", + "id": 3900, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5135:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "expression": { + "id": 3895, + "name": "PortfolioHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38387, + "src": "5019:16:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", + "typeString": "type(library PortfolioHandler)" + } + }, + "id": 3896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "buildPortfolioState", + "nodeType": "MemberAccess", + "referencedDeclaration": 38148, + "src": "5019:36:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$_t_uint256_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "function (address,uint8,uint256) view returns (struct PortfolioState memory)" + } + }, + "id": 3901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5019:127:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4980:166:29" + }, + { + "assignments": [ + 3904 + ], + "declarations": [ + { + "constant": false, + "id": 3904, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 4140, + "src": "5156:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 3903, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "5156:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + } + ], + "id": 3905, + "nodeType": "VariableDeclarationStatement", + "src": "5156:32:29" + }, + { + "body": { + "id": 4119, + "nodeType": "Block", + "src": "5244:4125:29", + "statements": [ + { + "assignments": [ + 3918 + ], + "declarations": [ + { + "constant": false, + "id": 3918, + "mutability": "mutable", + "name": "action", + "nodeType": "VariableDeclaration", + "scope": 4119, + "src": "5258:25:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend" + }, + "typeName": { + "id": 3917, + "name": "BatchLend", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57508, + "src": "5258:9:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_storage_ptr", + "typeString": "struct BatchLend" + } + }, + "visibility": "internal" + } + ], + "id": 3922, + "initialValue": { + "baseExpression": { + "id": 3919, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3862, + "src": "5286:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BatchLend calldata[] calldata" + } + }, + "id": 3921, + "indexExpression": { + "id": 3920, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3907, + "src": "5294:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5286:10:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5258:38:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3923, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3907, + "src": "5509:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 3924, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5513:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5509:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3940, + "nodeType": "IfStatement", + "src": "5505:118:29", + "trueBody": { + "id": 3939, + "nodeType": "Block", + "src": "5516:107:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 3935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3927, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "5542:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 3928, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "5542:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 3929, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3862, + "src": "5562:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BatchLend calldata[] calldata" + } + }, + "id": 3933, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3930, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3907, + "src": "5570:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 3931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5574:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "5570:5:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5562:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 3934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "5562:25:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "5542:45:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e736f7274656420616374696f6e73", + "id": 3936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5589:18:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", + "typeString": "literal_string \"Unsorted actions\"" + }, + "value": "Unsorted actions" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", + "typeString": "literal_string \"Unsorted actions\"" + } + ], + "id": 3926, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5534:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5534:74:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3938, + "nodeType": "ExpressionStatement", + "src": "5534:74:29" + } + ] + } + }, + { + "assignments": [ + 3942 + ], + "declarations": [ + { + "constant": false, + "id": 3942, + "mutability": "mutable", + "name": "numTrades", + "nodeType": "VariableDeclaration", + "scope": 4119, + "src": "5733:17:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3941, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5733:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3946, + "initialValue": { + "expression": { + "expression": { + "id": 3943, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "5753:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 3944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "trades", + "nodeType": "MemberAccess", + "referencedDeclaration": 57507, + "src": "5753:13:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + }, + "id": 3945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5753:20:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5733:40:29" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3948, + "name": "numTrades", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3942, + "src": "5795:9:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 3949, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5807:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "5795:13:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3947, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5787:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5787:22:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3952, + "nodeType": "ExpressionStatement", + "src": "5787:22:29" + }, + { + "body": { + "id": 3982, + "nodeType": "Block", + "src": "5882:129:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 3979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "baseExpression": { + "expression": { + "id": 3968, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "5921:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 3969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "trades", + "nodeType": "MemberAccess", + "referencedDeclaration": 57507, + "src": "5921:13:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + }, + "id": 3971, + "indexExpression": { + "id": 3970, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3954, + "src": "5935:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5921:16:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3967, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5914:6:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes1_$", + "typeString": "type(bytes1)" + }, + "typeName": { + "id": 3966, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "5914:6:29", + "typeDescriptions": {} + } + }, + "id": 3972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5914:24:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 3965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5908:5:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3964, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "5908:5:29", + "typeDescriptions": {} + } + }, + "id": 3973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5908:31:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "expression": { + "id": 3976, + "name": "TradeActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57487, + "src": "5949:15:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_TradeActionType_$57487_$", + "typeString": "type(enum TradeActionType)" + } + }, + "id": 3977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "Lend", + "nodeType": "MemberAccess", + "src": "5949:20:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_TradeActionType_$57487", + "typeString": "enum TradeActionType" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_enum$_TradeActionType_$57487", + "typeString": "enum TradeActionType" + } + ], + "id": 3975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5943:5:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint8_$", + "typeString": "type(uint8)" + }, + "typeName": { + "id": 3974, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "5943:5:29", + "typeDescriptions": {} + } + }, + "id": 3978, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5943:27:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "5908:62:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3963, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5900:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5900:71:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3981, + "nodeType": "ExpressionStatement", + "src": "5900:71:29" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3957, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3954, + "src": "5862:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 3958, + "name": "numTrades", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3942, + "src": "5866:9:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5862:13:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3983, + "initializationExpression": { + "assignments": [ + 3954 + ], + "declarations": [ + { + "constant": false, + "id": 3954, + "mutability": "mutable", + "name": "j", + "nodeType": "VariableDeclaration", + "scope": 3983, + "src": "5847:9:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3953, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5847:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3956, + "initialValue": { + "hexValue": "30", + "id": 3955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5859:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5847:13:29" + }, + "loopExpression": { + "expression": { + "id": 3961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5877:3:29", + "subExpression": { + "id": 3960, + "name": "j", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3954, + "src": "5877:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3962, + "nodeType": "ExpressionStatement", + "src": "5877:3:29" + }, + "nodeType": "ForStatement", + "src": "5842:169:29" + }, + { + "expression": { + "arguments": [ + { + "id": 3987, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "6110:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 3988, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "6119:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 3989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "6119:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 3990, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "6138:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "expression": { + "id": 3984, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "6080:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 3986, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "loadBalanceState", + "nodeType": "MemberAccess", + "referencedDeclaration": 25360, + "src": "6080:29:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" + } + }, + "id": 3991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6080:73:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3992, + "nodeType": "ExpressionStatement", + "src": "6080:73:29" + }, + { + "expression": { + "id": 4007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "expression": { + "id": 3993, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "6168:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 3995, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "6168:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3996, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3894, + "src": "6196:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + } + ], + "id": 3997, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "6167:44:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "tuple(int256,struct PortfolioState memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3999, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "6246:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4000, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "6271:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 4001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "6271:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "expression": { + "id": 4002, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "6306:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 4003, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "trades", + "nodeType": "MemberAccess", + "referencedDeclaration": 57507, + "src": "6306:13:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + }, + { + "id": 4004, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "6337:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 4005, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3894, + "src": "6369:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + ], + "id": 3998, + "name": "_executeTrades", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4738, + "src": "6214:14:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint16_$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_PortfolioState_$57602_memory_ptr_$returns$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "function (address,uint16,bytes32[] calldata,struct AccountContext memory,struct PortfolioState memory) returns (int256,struct PortfolioState memory)" + } + }, + "id": 4006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6214:183:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "tuple(int256,struct PortfolioState memory)" + } + }, + "src": "6167:230:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4008, + "nodeType": "ExpressionStatement", + "src": "6167:230:29" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4010, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "6494:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4011, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "6494:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "hexValue": "30", + "id": 4012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6524:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6494:31:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4009, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "6486:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6486:40:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4015, + "nodeType": "ExpressionStatement", + "src": "6486:40:29" + }, + { + "assignments": [ + 4017 + ], + "declarations": [ + { + "constant": false, + "id": 4017, + "mutability": "mutable", + "name": "requiredCash", + "nodeType": "VariableDeclaration", + "scope": 4119, + "src": "6978:19:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4016, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "6978:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4026, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "expression": { + "id": 4021, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "7035:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4022, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "7035:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4018, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "7000:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4019, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "storedCashBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57617, + "src": "7000:30:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "7000:34:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7000:62:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "neg", + "nodeType": "MemberAccess", + "referencedDeclaration": 44999, + "src": "7000:66:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256) pure returns (int256)" + } + }, + "id": 4025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7000:68:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6978:90:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4027, + "name": "requiredCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4017, + "src": "7086:12:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 4028, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7101:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7086:16:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4110, + "nodeType": "IfStatement", + "src": "7082:2109:29", + "trueBody": { + "id": 4109, + "nodeType": "Block", + "src": "7104:2087:29", + "statements": [ + { + "condition": { + "expression": { + "id": 4030, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "7126:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 4031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "depositUnderlying", + "nodeType": "MemberAccess", + "referencedDeclaration": 57504, + "src": "7126:24:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 4107, + "nodeType": "Block", + "src": "8601:576:29", + "statements": [ + { + "assignments": [ + 4089 + ], + "declarations": [ + { + "constant": false, + "id": 4089, + "mutability": "mutable", + "name": "assetToken", + "nodeType": "VariableDeclaration", + "scope": 4107, + "src": "8810:23:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token" + }, + "typeName": { + "id": 4088, + "name": "Token", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57553, + "src": "8810:5:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", + "typeString": "struct Token" + } + }, + "visibility": "internal" + } + ], + "id": 4095, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 4092, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "8863:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 4093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "8863:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + ], + "expression": { + "id": 4090, + "name": "TokenHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26426, + "src": "8836:12:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TokenHandler_$26426_$", + "typeString": "type(library TokenHandler)" + } + }, + "id": 4091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAssetToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 25650, + "src": "8836:26:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_struct$_Token_$57553_memory_ptr_$", + "typeString": "function (uint256) view returns (struct Token memory)" + } + }, + "id": 4094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8836:45:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8810:71:29" + }, + { + "expression": { + "arguments": [ + { + "id": 4099, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "8959:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4102, + "name": "requiredCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4017, + "src": "9021:12:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4100, + "name": "assetToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4089, + "src": "8992:10:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token memory" + } + }, + "id": 4101, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "convertToExternal", + "nodeType": "MemberAccess", + "referencedDeclaration": 26408, + "src": "8992:28:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_Token_$57553_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_Token_$57553_memory_ptr_$", + "typeString": "function (struct Token memory,int256) pure returns (int256)" + } + }, + "id": 4103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8992:42:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "hexValue": "66616c7365", + "id": 4104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9060:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 4096, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "8903:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4098, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "depositAssetToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 24222, + "src": "8903:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,int256,bool) returns (int256)" + } + }, + "id": 4105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8903:255:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4106, + "nodeType": "ExpressionStatement", + "src": "8903:255:29" + } + ] + }, + "id": 4108, + "nodeType": "IfStatement", + "src": "7122:2055:29", + "trueBody": { + "id": 4087, + "nodeType": "Block", + "src": "7152:1443:29", + "statements": [ + { + "assignments": [ + 4033 + ], + "declarations": [ + { + "constant": false, + "id": 4033, + "mutability": "mutable", + "name": "ar", + "nodeType": "VariableDeclaration", + "scope": 4087, + "src": "7323:29:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", + "typeString": "struct AssetRateParameters" + }, + "typeName": { + "id": 4032, + "name": "AssetRateParameters", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57639, + "src": "7323:19:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AssetRateParameters_$57639_storage_ptr", + "typeString": "struct AssetRateParameters" + } + }, + "visibility": "internal" + } + ], + "id": 4039, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 4036, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "7388:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 4037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "7388:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + ], + "expression": { + "id": 4034, + "name": "AssetRate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 30677, + "src": "7355:9:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_AssetRate_$30677_$", + "typeString": "type(library AssetRate)" + } + }, + "id": 4035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "buildAssetRateStateful", + "nodeType": "MemberAccess", + "referencedDeclaration": 30437, + "src": "7355:32:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$_t_struct$_AssetRateParameters_$57639_memory_ptr_$", + "typeString": "function (uint256) returns (struct AssetRateParameters memory)" + } + }, + "id": 4038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7355:51:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", + "typeString": "struct AssetRateParameters memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7323:83:29" + }, + { + "assignments": [ + 4041 + ], + "declarations": [ + { + "constant": false, + "id": 4041, + "mutability": "mutable", + "name": "underlyingToken", + "nodeType": "VariableDeclaration", + "scope": 4087, + "src": "7428:28:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token" + }, + "typeName": { + "id": 4040, + "name": "Token", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57553, + "src": "7428:5:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", + "typeString": "struct Token" + } + }, + "visibility": "internal" + } + ], + "id": 4047, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 4044, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3918, + "src": "7491:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", + "typeString": "struct BatchLend calldata" + } + }, + "id": 4045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57502, + "src": "7491:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + ], + "expression": { + "id": 4042, + "name": "TokenHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 26426, + "src": "7459:12:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TokenHandler_$26426_$", + "typeString": "type(library TokenHandler)" + } + }, + "id": 4043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getUnderlyingToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 25663, + "src": "7459:31:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_struct$_Token_$57553_memory_ptr_$", + "typeString": "function (uint256) view returns (struct Token memory)" + } + }, + "id": 4046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7459:50:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7428:81:29" + }, + { + "assignments": [ + 4049 + ], + "declarations": [ + { + "constant": false, + "id": 4049, + "mutability": "mutable", + "name": "underlyingExternalAmount", + "nodeType": "VariableDeclaration", + "scope": 4087, + "src": "7531:31:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4048, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7531:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4057, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 4054, + "name": "requiredCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4017, + "src": "7622:12:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4052, + "name": "ar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "7599:2:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", + "typeString": "struct AssetRateParameters memory" + } + }, + "id": 4053, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "convertToUnderlying", + "nodeType": "MemberAccess", + "referencedDeclaration": 30154, + "src": "7599:22:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_AssetRateParameters_$57639_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_AssetRateParameters_$57639_memory_ptr_$", + "typeString": "function (struct AssetRateParameters memory,int256) pure returns (int256)" + } + }, + "id": 4055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7599:36:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4050, + "name": "underlyingToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4041, + "src": "7565:15:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token memory" + } + }, + "id": 4051, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "convertToExternal", + "nodeType": "MemberAccess", + "referencedDeclaration": 26408, + "src": "7565:33:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_Token_$57553_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_Token_$57553_memory_ptr_$", + "typeString": "function (struct Token memory,int256) pure returns (int256)" + } + }, + "id": 4056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7565:71:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7531:105:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4058, + "name": "underlyingToken", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4041, + "src": "7663:15:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", + "typeString": "struct Token memory" + } + }, + "id": 4059, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "decimals", + "nodeType": "MemberAccess", + "referencedDeclaration": 57548, + "src": "7663:24:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4060, + "name": "Constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22832, + "src": "7690:9:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", + "typeString": "type(library Constants)" + } + }, + "id": 4061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "INTERNAL_TOKEN_PRECISION", + "nodeType": "MemberAccess", + "referencedDeclaration": 22575, + "src": "7690:34:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "7663:61:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4071, + "nodeType": "IfStatement", + "src": "7659:536:29", + "trueBody": { + "id": 4070, + "nodeType": "Block", + "src": "7726:469:29", + "statements": [ + { + "expression": { + "id": 4068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4063, + "name": "underlyingExternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4049, + "src": "8114:24:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "31", + "id": 4066, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8170:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "expression": { + "id": 4064, + "name": "underlyingExternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4049, + "src": "8141:24:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "8141:28:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8141:31:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "8114:58:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4069, + "nodeType": "ExpressionStatement", + "src": "8114:58:29" + } + ] + } + }, + { + "assignments": [ + 4073 + ], + "declarations": [ + { + "constant": false, + "id": 4073, + "mutability": "mutable", + "name": "assetAmountInternal", + "nodeType": "VariableDeclaration", + "scope": 4087, + "src": "8387:26:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4072, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8387:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4079, + "initialValue": { + "arguments": [ + { + "id": 4076, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "8452:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4077, + "name": "underlyingExternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4049, + "src": "8461:24:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4074, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "8416:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4075, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "depositUnderlyingToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 24323, + "src": "8416:35:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,int256) returns (int256)" + } + }, + "id": 4078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8416:70:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "8387:99:29" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4081, + "name": "assetAmountInternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4073, + "src": "8516:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 4082, + "name": "requiredCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4017, + "src": "8539:12:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "8516:35:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "496e73756666696369656e74206465706f736974", + "id": 4084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8553:22:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8fcaef683f0d1614f3145343efc9a3d2cb7c83cead426db44ecb090c666d824", + "typeString": "literal_string \"Insufficient deposit\"" + }, + "value": "Insufficient deposit" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_f8fcaef683f0d1614f3145343efc9a3d2cb7c83cead426db44ecb090c666d824", + "typeString": "literal_string \"Insufficient deposit\"" + } + ], + "id": 4080, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "8508:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8508:68:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4086, + "nodeType": "ExpressionStatement", + "src": "8508:68:29" + } + ] + } + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4114, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "9327:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4115, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "9336:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "hexValue": "66616c7365", + "id": 4116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9352:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 4111, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3904, + "src": "9305:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4113, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finalize", + "nodeType": "MemberAccess", + "referencedDeclaration": 24546, + "src": "9305:21:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,struct AccountContext memory,bool) returns (int256)" + } + }, + "id": 4117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9305:53:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4118, + "nodeType": "ExpressionStatement", + "src": "9305:53:29" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3910, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3907, + "src": "5219:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3911, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3862, + "src": "5223:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BatchLend calldata[] calldata" + } + }, + "id": 3912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5223:14:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5219:18:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4120, + "initializationExpression": { + "assignments": [ + 3907 + ], + "declarations": [ + { + "constant": false, + "id": 3907, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 4120, + "src": "5204:9:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3906, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5204:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3909, + "initialValue": { + "hexValue": "30", + "id": 3908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5216:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5204:13:29" + }, + "loopExpression": { + "expression": { + "id": 3915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5239:3:29", + "subExpression": { + "id": 3914, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3907, + "src": "5239:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3916, + "nodeType": "ExpressionStatement", + "src": "5239:3:29" + }, + "nodeType": "ForStatement", + "src": "5199:4170:29" + }, + { + "condition": { + "id": 4124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "9548:33:29", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4121, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "9549:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4122, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "isBitmapEnabled", + "nodeType": "MemberAccess", + "referencedDeclaration": 23385, + "src": "9549:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) pure returns (bool)" + } + }, + "id": 4123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9549:32:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4134, + "nodeType": "IfStatement", + "src": "9544:221:29", + "trueBody": { + "id": 4133, + "nodeType": "Block", + "src": "9583:182:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4128, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "9723:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4129, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3894, + "src": "9732:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + }, + { + "hexValue": "66616c7365", + "id": 4130, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9748:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 4125, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "9680:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4127, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "storeAssetsAndUpdateContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 24054, + "src": "9680:42:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_bool_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory,address,struct PortfolioState memory,bool)" + } + }, + "id": 4131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9680:74:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4132, + "nodeType": "ExpressionStatement", + "src": "9680:74:29" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4136, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3859, + "src": "9871:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4137, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3888, + "src": "9880:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "id": 4135, + "name": "_finalizeAccountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4663, + "src": "9847:23:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", + "typeString": "function (address,struct AccountContext memory)" + } + }, + "id": 4138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9847:48:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4139, + "nodeType": "ExpressionStatement", + "src": "9847:48:29" + } + ] + }, + "documentation": { + "id": 3857, + "nodeType": "StructuredDocumentation", + "src": "3680:802:29", + "text": "@notice Executes a batch of lending actions. This is different from batchBalanceAndTrade because\n it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces\n the gas costs for lending because there is no second token transfer where residual balances are sent\n back to the account.\n @dev Note that this method does not work with native ETH because it requires the ability to pull payment\n from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.\n @param account the account for the action\n @param actions array of batch lending actions\n @dev emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebt\n @dev auth:msg.sender auth:ERC1155" + }, + "functionSelector": "541f5270", + "id": 4141, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "id": 3865, + "modifierName": { + "id": 3864, + "name": "nonReentrant", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3626, + "src": "4578:12:29", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "4578:12:29" + } + ], + "name": "batchLend", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3863, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3859, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4141, + "src": "4506:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3858, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4506:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3862, + "mutability": "mutable", + "name": "actions", + "nodeType": "VariableDeclaration", + "scope": 4141, + "src": "4523:28:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BatchLend[]" + }, + "typeName": { + "baseType": { + "id": 3860, + "name": "BatchLend", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57508, + "src": "4523:9:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BatchLend_$57508_storage_ptr", + "typeString": "struct BatchLend" + } + }, + "id": 3861, + "nodeType": "ArrayTypeName", + "src": "4523:11:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_storage_$dyn_storage_ptr", + "typeString": "struct BatchLend[]" + } + }, + "visibility": "internal" + } + ], + "src": "4505:47:29" + }, + "returnParameters": { + "id": 3866, + "nodeType": "ParameterList", + "parameters": [], + "src": "4595:0:29" + }, + "scope": 4840, + "src": "4487:5415:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 4200, + "nodeType": "Block", + "src": "11344:1235:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 4153, + "name": "authorizedCallbackContract", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23285, + "src": "11437:26:29", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 4156, + "indexExpression": { + "expression": { + "id": 4154, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "11464:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11464:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11437:38:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a6564", + "id": 4157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11477:14:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + }, + "value": "Unauthorized" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + } + ], + "id": 4152, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11429:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11429:63:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4159, + "nodeType": "ExpressionStatement", + "src": "11429:63:29" + }, + { + "expression": { + "arguments": [ + { + "id": 4161, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4144, + "src": "11522:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4160, + "name": "requireValidAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3661, + "src": "11502:19:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", + "typeString": "function (address) view" + } + }, + "id": 4162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11502:28:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4163, + "nodeType": "ExpressionStatement", + "src": "11502:28:29" + }, + { + "assignments": [ + 4165 + ], + "declarations": [ + { + "constant": false, + "id": 4165, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4200, + "src": "11541:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4164, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "11541:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 4170, + "initialValue": { + "arguments": [ + { + "id": 4167, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4144, + "src": "11608:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4168, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4147, + "src": "11617:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + ], + "id": 4166, + "name": "_batchBalanceAndTradeAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4359, + "src": "11580:27:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct BalanceActionWithTrades calldata[] calldata) returns (struct AccountContext memory)" + } + }, + "id": 4169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11580:45:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11541:84:29" + }, + { + "expression": { + "arguments": [ + { + "id": 4174, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4144, + "src": "11668:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4171, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4165, + "src": "11635:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4173, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "setAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23372, + "src": "11635:32:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory,address)" + } + }, + "id": 4175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11635:41:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4176, + "nodeType": "ExpressionStatement", + "src": "11635:41:29" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 4182, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "12001:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "12001:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 4184, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4144, + "src": "12013:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4185, + "name": "callbackData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4149, + "src": "12022:12:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "arguments": [ + { + "expression": { + "id": 4178, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "11972:3:29", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11972:10:29", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 4177, + "name": "NotionalCallback", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58532, + "src": "11955:16:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalCallback_$58532_$", + "typeString": "type(contract NotionalCallback)" + } + }, + "id": 4180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11955:28:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_NotionalCallback_$58532", + "typeString": "contract NotionalCallback" + } + }, + "id": 4181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "notionalCallback", + "nodeType": "MemberAccess", + "referencedDeclaration": 58531, + "src": "11955:45:29", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (address,address,bytes memory) external" + } + }, + "id": 4186, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11955:80:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4187, + "nodeType": "ExpressionStatement", + "src": "11955:80:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4188, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4165, + "src": "12050:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4189, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "hasDebt", + "nodeType": "MemberAccess", + "referencedDeclaration": 57736, + "src": "12050:22:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30783030", + "id": 4190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12076:4:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "src": "12050:30:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4199, + "nodeType": "IfStatement", + "src": "12046:527:29", + "trueBody": { + "id": 4198, + "nodeType": "Block", + "src": "12082:491:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4195, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4144, + "src": "12554:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4192, + "name": "FreeCollateralExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 618, + "src": "12502:22:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + }, + "id": 4194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "checkFreeCollateralAndRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 553, + "src": "12502:51:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 4196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12502:60:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4197, + "nodeType": "ExpressionStatement", + "src": "12502:60:29" + } + ] + } + } + ] + }, + "documentation": { + "id": 4142, + "nodeType": "StructuredDocumentation", + "src": "9908:1246:29", + "text": "@notice Executes a batch of balance transfers and trading actions via an authorized callback contract. This\n can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform\n other actions on behalf of the user.\n Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract\n needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM\n will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting\n and will mainly be used for contracts that make migrating assets a better user experience.\n @param account the account that will take all the actions\n @param actions array of balance actions with trades to take, must be sorted by currency id\n @param callbackData arbitrary bytes to be passed backed to the caller in the callback\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n @dev auth:authorizedCallbackContract" + }, + "functionSelector": "5950d8e9", + "id": 4201, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "batchBalanceAndTradeActionWithCallback", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4144, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "11216:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4143, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11216:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4147, + "mutability": "mutable", + "name": "actions", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "11241:42:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades[]" + }, + "typeName": { + "baseType": { + "id": 4145, + "name": "BalanceActionWithTrades", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57537, + "src": "11241:23:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", + "typeString": "struct BalanceActionWithTrades" + } + }, + "id": 4146, + "nodeType": "ArrayTypeName", + "src": "11241:25:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", + "typeString": "struct BalanceActionWithTrades[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4149, + "mutability": "mutable", + "name": "callbackData", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "11293:27:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4148, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "11293:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "11206:120:29" + }, + "returnParameters": { + "id": 4151, + "nodeType": "ParameterList", + "parameters": [], + "src": "11344:0:29" + }, + "scope": 4840, + "src": "11159:1420:29", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 4358, + "nodeType": "Block", + "src": "12746:2767:29", + "statements": [ + { + "assignments": [ + 4212 + ], + "declarations": [ + { + "constant": false, + "id": 4212, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4358, + "src": "12756:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4211, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "12756:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 4216, + "initialValue": { + "arguments": [ + { + "id": 4214, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "12820:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4213, + "name": "_settleAccountIfRequired", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4796, + "src": "12795:24:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) returns (struct AccountContext memory)" + } + }, + "id": 4215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12795:33:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12756:72:29" + }, + { + "assignments": [ + 4218 + ], + "declarations": [ + { + "constant": false, + "id": 4218, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 4358, + "src": "12838:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 4217, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "12838:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + } + ], + "id": 4219, + "nodeType": "VariableDeclarationStatement", + "src": "12838:32:29" + }, + { + "assignments": [ + 4221 + ], + "declarations": [ + { + "constant": false, + "id": 4221, + "mutability": "mutable", + "name": "portfolioState", + "nodeType": "VariableDeclaration", + "scope": 4358, + "src": "13047:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState" + }, + "typeName": { + "id": 4220, + "name": "PortfolioState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57602, + "src": "13047:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", + "typeString": "struct PortfolioState" + } + }, + "visibility": "internal" + } + ], + "id": 4229, + "initialValue": { + "arguments": [ + { + "id": 4224, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "13136:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4225, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "13157:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4226, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "assetArrayLength", + "nodeType": "MemberAccess", + "referencedDeclaration": 57738, + "src": "13157:31:29", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "hexValue": "30", + "id": 4227, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13202:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "expression": { + "id": 4222, + "name": "PortfolioHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38387, + "src": "13086:16:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", + "typeString": "type(library PortfolioHandler)" + } + }, + "id": 4223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "buildPortfolioState", + "nodeType": "MemberAccess", + "referencedDeclaration": 38148, + "src": "13086:36:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$_t_uint256_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "function (address,uint8,uint256) view returns (struct PortfolioState memory)" + } + }, + "id": 4228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13086:127:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13047:166:29" + }, + { + "body": { + "id": 4340, + "nodeType": "Block", + "src": "13269:1716:29", + "statements": [ + { + "assignments": [ + 4242 + ], + "declarations": [ + { + "constant": false, + "id": 4242, + "mutability": "mutable", + "name": "action", + "nodeType": "VariableDeclaration", + "scope": 4340, + "src": "13283:39:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades" + }, + "typeName": { + "id": 4241, + "name": "BalanceActionWithTrades", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57537, + "src": "13283:23:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", + "typeString": "struct BalanceActionWithTrades" + } + }, + "visibility": "internal" + } + ], + "id": 4246, + "initialValue": { + "baseExpression": { + "id": 4243, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4206, + "src": "13325:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + }, + "id": 4245, + "indexExpression": { + "id": 4244, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4231, + "src": "13333:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13325:10:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13283:52:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4247, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4231, + "src": "13548:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 4248, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13552:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "13548:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4264, + "nodeType": "IfStatement", + "src": "13544:118:29", + "trueBody": { + "id": 4263, + "nodeType": "Block", + "src": "13555:107:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 4259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4251, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "13581:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57525, + "src": "13581:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 4253, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4206, + "src": "13601:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + }, + "id": 4257, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4254, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4231, + "src": "13609:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 4255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13613:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "13609:5:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13601:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57525, + "src": "13601:25:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "13581:45:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e736f7274656420616374696f6e73", + "id": 4260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13628:18:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", + "typeString": "literal_string \"Unsorted actions\"" + }, + "value": "Unsorted actions" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", + "typeString": "literal_string \"Unsorted actions\"" + } + ], + "id": 4250, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13573:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13573:74:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4262, + "nodeType": "ExpressionStatement", + "src": "13573:74:29" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4268, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "13760:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4269, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "13769:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57525, + "src": "13769:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 4271, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "13788:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "expression": { + "id": 4265, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4218, + "src": "13730:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4267, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "loadBalanceState", + "nodeType": "MemberAccess", + "referencedDeclaration": 25360, + "src": "13730:29:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" + } + }, + "id": 4272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13730:73:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4273, + "nodeType": "ExpressionStatement", + "src": "13730:73:29" + }, + { + "expression": { + "arguments": [ + { + "id": 4275, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "13944:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4276, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4218, + "src": "13969:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "expression": { + "id": 4277, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "13999:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "actionType", + "nodeType": "MemberAccess", + "referencedDeclaration": 57523, + "src": "13999:17:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + { + "expression": { + "id": 4279, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14034:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "depositActionAmount", + "nodeType": "MemberAccess", + "referencedDeclaration": 57527, + "src": "14034:26:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4274, + "name": "_executeDepositAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4451, + "src": "13905:21:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_uint256_$returns$__$", + "typeString": "function (address,struct BalanceState memory,enum DepositActionType,uint256)" + } + }, + "id": 4281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13905:169:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4282, + "nodeType": "ExpressionStatement", + "src": "13905:169:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "expression": { + "id": 4283, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14093:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "trades", + "nodeType": "MemberAccess", + "referencedDeclaration": 57536, + "src": "14093:13:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + }, + "id": 4285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "14093:20:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 4286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14116:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "14093:24:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4327, + "nodeType": "IfStatement", + "src": "14089:586:29", + "trueBody": { + "id": 4326, + "nodeType": "Block", + "src": "14119:556:29", + "statements": [ + { + "assignments": [ + 4289 + ], + "declarations": [ + { + "constant": false, + "id": 4289, + "mutability": "mutable", + "name": "netCash", + "nodeType": "VariableDeclaration", + "scope": 4326, + "src": "14137:14:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4288, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "14137:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4290, + "nodeType": "VariableDeclarationStatement", + "src": "14137:14:29" + }, + { + "expression": { + "id": 4303, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 4291, + "name": "netCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4289, + "src": "14170:7:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4292, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4221, + "src": "14179:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + } + ], + "id": 4293, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "14169:25:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "tuple(int256,struct PortfolioState memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4295, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "14233:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4296, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14262:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57525, + "src": "14262:17:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "expression": { + "id": 4298, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14301:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "trades", + "nodeType": "MemberAccess", + "referencedDeclaration": 57536, + "src": "14301:13:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + }, + { + "id": 4300, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "14336:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 4301, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4221, + "src": "14372:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + ], + "id": 4294, + "name": "_executeTrades", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4738, + "src": "14197:14:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint16_$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_PortfolioState_$57602_memory_ptr_$returns$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "function (address,uint16,bytes32[] calldata,struct AccountContext memory,struct PortfolioState memory) returns (int256,struct PortfolioState memory)" + } + }, + "id": 4302, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14197:207:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", + "typeString": "tuple(int256,struct PortfolioState memory)" + } + }, + "src": "14169:235:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4304, + "nodeType": "ExpressionStatement", + "src": "14169:235:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4305, + "name": "netCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4289, + "src": "14512:7:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14522:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "14512:11:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4315, + "nodeType": "IfStatement", + "src": "14508:66:29", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 4309, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4218, + "src": "14546:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4310, + "name": "netCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4289, + "src": "14560:7:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "neg", + "nodeType": "MemberAccess", + "referencedDeclaration": 44999, + "src": "14560:11:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256) pure returns (int256)" + } + }, + "id": 4312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14560:13:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4308, + "name": "_checkSufficientCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4767, + "src": "14525:20:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_BalanceState_$57632_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (struct BalanceState memory,int256) pure" + } + }, + "id": 4313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14525:49:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4314, + "nodeType": "ExpressionStatement", + "src": "14525:49:29" + } + }, + { + "expression": { + "id": 4324, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4316, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4218, + "src": "14592:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4318, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "14592:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4322, + "name": "netCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4289, + "src": "14652:7:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4319, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4218, + "src": "14621:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4320, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "14621:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "14621:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14621:39:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "14592:68:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4325, + "nodeType": "ExpressionStatement", + "src": "14592:68:29" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4329, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "14742:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4330, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "14767:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 4331, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4218, + "src": "14799:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "expression": { + "id": 4332, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14829:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "withdrawAmountInternalPrecision", + "nodeType": "MemberAccess", + "referencedDeclaration": 57529, + "src": "14829:38:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 4334, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14885:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "withdrawEntireCashBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57531, + "src": "14885:32:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "expression": { + "id": 4336, + "name": "action", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4242, + "src": "14935:6:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata" + } + }, + "id": 4337, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "redeemToUnderlying", + "nodeType": "MemberAccess", + "referencedDeclaration": 57533, + "src": "14935:25:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4328, + "name": "_calculateWithdrawActionAndFinalize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4637, + "src": "14689:35:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_uint256_$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (address,struct AccountContext memory,struct BalanceState memory,uint256,bool,bool)" + } + }, + "id": 4338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14689:285:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4339, + "nodeType": "ExpressionStatement", + "src": "14689:285:29" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4234, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4231, + "src": "13244:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4235, + "name": "actions", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4206, + "src": "13248:7:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades calldata[] calldata" + } + }, + "id": 4236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "13248:14:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13244:18:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4341, + "initializationExpression": { + "assignments": [ + 4231 + ], + "declarations": [ + { + "constant": false, + "id": 4231, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 4341, + "src": "13229:9:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4230, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13229:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4233, + "initialValue": { + "hexValue": "30", + "id": 4232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13241:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "13229:13:29" + }, + "loopExpression": { + "expression": { + "id": 4239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "13264:3:29", + "subExpression": { + "id": 4238, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4231, + "src": "13264:1:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4240, + "nodeType": "ExpressionStatement", + "src": "13264:3:29" + }, + "nodeType": "ForStatement", + "src": "13224:1761:29" + }, + { + "condition": { + "id": 4345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "15164:33:29", + "subExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4342, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "15165:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4343, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "isBitmapEnabled", + "nodeType": "MemberAccess", + "referencedDeclaration": 23385, + "src": "15165:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) pure returns (bool)" + } + }, + "id": 4344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15165:32:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4355, + "nodeType": "IfStatement", + "src": "15160:221:29", + "trueBody": { + "id": 4354, + "nodeType": "Block", + "src": "15199:182:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4349, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4203, + "src": "15339:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4350, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4221, + "src": "15348:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + }, + { + "hexValue": "66616c7365", + "id": 4351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15364:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 4346, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "15296:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4348, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "storeAssetsAndUpdateContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 24054, + "src": "15296:42:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_bool_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory,address,struct PortfolioState memory,bool)" + } + }, + "id": 4352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15296:74:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4353, + "nodeType": "ExpressionStatement", + "src": "15296:74:29" + } + ] + } + }, + { + "expression": { + "id": 4356, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4212, + "src": "15492:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "functionReturnParameters": 4210, + "id": 4357, + "nodeType": "Return", + "src": "15485:21:29" + } + ] + }, + "id": 4359, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_batchBalanceAndTradeAction", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4207, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4203, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4359, + "src": "12631:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4202, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12631:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4206, + "mutability": "mutable", + "name": "actions", + "nodeType": "VariableDeclaration", + "scope": 4359, + "src": "12656:42:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", + "typeString": "struct BalanceActionWithTrades[]" + }, + "typeName": { + "baseType": { + "id": 4204, + "name": "BalanceActionWithTrades", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57537, + "src": "12656:23:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", + "typeString": "struct BalanceActionWithTrades" + } + }, + "id": 4205, + "nodeType": "ArrayTypeName", + "src": "12656:25:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", + "typeString": "struct BalanceActionWithTrades[]" + } + }, + "visibility": "internal" + } + ], + "src": "12621:83:29" + }, + "returnParameters": { + "id": 4210, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4209, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4359, + "src": "12723:21:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4208, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "12723:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "src": "12722:23:29" + }, + "scope": 4840, + "src": "12585:2928:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 4450, + "nodeType": "Block", + "src": "15739:1507:29", + "statements": [ + { + "assignments": [ + 4372 + ], + "declarations": [ + { + "constant": false, + "id": 4372, + "mutability": "mutable", + "name": "depositActionAmount", + "nodeType": "VariableDeclaration", + "scope": 4450, + "src": "15749:26:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4371, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "15749:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4377, + "initialValue": { + "arguments": [ + { + "id": 4375, + "name": "depositActionAmount_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "15795:20:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4373, + "name": "SafeInt256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 45162, + "src": "15778:10:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", + "typeString": "type(library SafeInt256)" + } + }, + "id": 4374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "toInt", + "nodeType": "MemberAccess", + "referencedDeclaration": 45127, + "src": "15778:16:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", + "typeString": "function (uint256) pure returns (int256)" + } + }, + "id": 4376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15778:38:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "15749:67:29" + }, + { + "assignments": [ + 4379 + ], + "declarations": [ + { + "constant": false, + "id": 4379, + "mutability": "mutable", + "name": "assetInternalAmount", + "nodeType": "VariableDeclaration", + "scope": 4450, + "src": "15826:26:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4378, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "15826:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4380, + "nodeType": "VariableDeclarationStatement", + "src": "15826:26:29" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4382, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4372, + "src": "15870:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15893:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "15870:24:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4381, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "15862:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15862:33:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4386, + "nodeType": "ExpressionStatement", + "src": "15862:33:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4387, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "15910:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4388, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "15925:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4389, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "None", + "nodeType": "MemberAccess", + "src": "15925:22:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "15910:37:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4393, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "16003:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4394, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "16018:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4395, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "DepositAsset", + "nodeType": "MemberAccess", + "src": "16018:30:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "16003:45:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4397, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "16064:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4398, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "16079:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4399, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "DepositAssetAndMintNToken", + "nodeType": "MemberAccess", + "src": "16079:43:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "16064:58:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16003:119:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4412, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "16539:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4413, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "16554:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "DepositUnderlying", + "nodeType": "MemberAccess", + "src": "16554:35:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "16539:50:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4416, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "16605:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4417, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "16620:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4418, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "DepositUnderlyingAndMintNToken", + "nodeType": "MemberAccess", + "src": "16620:48:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "16605:63:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16539:129:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4433, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4430, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "16880:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4431, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "16895:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "ConvertCashToNToken", + "nodeType": "MemberAccess", + "src": "16895:37:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "16880:52:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4439, + "nodeType": "IfStatement", + "src": "16876:206:29", + "trueBody": { + "id": 4438, + "nodeType": "Block", + "src": "16934:148:29", + "statements": [ + { + "expression": { + "id": 4436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4434, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4379, + "src": "17030:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 4435, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4372, + "src": "17052:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "17030:41:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4437, + "nodeType": "ExpressionStatement", + "src": "17030:41:29" + } + ] + } + }, + "id": 4440, + "nodeType": "IfStatement", + "src": "16522:560:29", + "trueBody": { + "id": 4429, + "nodeType": "Block", + "src": "16679:191:29", + "statements": [ + { + "expression": { + "id": 4427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4421, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4379, + "src": "16772:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4424, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4362, + "src": "16830:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4425, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4372, + "src": "16839:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4422, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4364, + "src": "16794:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4423, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "depositUnderlyingToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 24323, + "src": "16794:35:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,int256) returns (int256)" + } + }, + "id": 4426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16794:65:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "16772:87:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4428, + "nodeType": "ExpressionStatement", + "src": "16772:87:29" + } + ] + } + }, + "id": 4441, + "nodeType": "IfStatement", + "src": "15986:1096:29", + "trueBody": { + "id": 4411, + "nodeType": "Block", + "src": "16133:383:29", + "statements": [ + { + "expression": { + "id": 4409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4402, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4379, + "src": "16333:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4405, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4362, + "src": "16403:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4406, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4372, + "src": "16428:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "hexValue": "66616c7365", + "id": 4407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16465:5:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 4403, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4364, + "src": "16355:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4404, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "depositAssetToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 24222, + "src": "16355:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,int256,bool) returns (int256)" + } + }, + "id": 4408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16355:150:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "16333:172:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4410, + "nodeType": "ExpressionStatement", + "src": "16333:172:29" + } + ] + } + }, + "id": 4442, + "nodeType": "IfStatement", + "src": "15906:1176:29", + "trueBody": { + "id": 4392, + "nodeType": "Block", + "src": "15949:31:29", + "statements": [ + { + "functionReturnParameters": 4370, + "id": 4391, + "nodeType": "Return", + "src": "15963:7:29" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4444, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4364, + "src": "17126:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "id": 4445, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "17152:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + { + "id": 4446, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4372, + "src": "17177:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4447, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4379, + "src": "17210:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4443, + "name": "_executeNTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4565, + "src": "17092:20:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (struct BalanceState memory,enum DepositActionType,int256,int256)" + } + }, + "id": 4448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17092:147:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4449, + "nodeType": "ExpressionStatement", + "src": "17092:147:29" + } + ] + }, + "documentation": { + "id": 4360, + "nodeType": "StructuredDocumentation", + "src": "15519:26:29", + "text": "@dev Executes deposits" + }, + "id": 4451, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_executeDepositAction", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4369, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4362, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4451, + "src": "15590:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4361, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15590:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4364, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 4451, + "src": "15615:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 4363, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "15615:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4366, + "mutability": "mutable", + "name": "depositType", + "nodeType": "VariableDeclaration", + "scope": 4451, + "src": "15657:29:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "typeName": { + "id": 4365, + "name": "DepositActionType", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57495, + "src": "15657:17:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4368, + "mutability": "mutable", + "name": "depositActionAmount_", + "nodeType": "VariableDeclaration", + "scope": 4451, + "src": "15696:28:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4367, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15696:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15580:150:29" + }, + "returnParameters": { + "id": 4370, + "nodeType": "ParameterList", + "parameters": [], + "src": "15739:0:29" + }, + "scope": 4840, + "src": "15550:1696:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4564, + "nodeType": "Block", + "src": "17486:1804:29", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4463, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "17586:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4464, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "17601:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "DepositAssetAndMintNToken", + "nodeType": "MemberAccess", + "src": "17601:43:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "17586:58:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4467, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "17660:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4468, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "17675:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "DepositUnderlyingAndMintNToken", + "nodeType": "MemberAccess", + "src": "17675:48:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "17660:63:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17586:137:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4472, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "17739:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4473, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "17754:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "ConvertCashToNToken", + "nodeType": "MemberAccess", + "src": "17754:37:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "17739:52:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17586:205:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "id": 4515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4512, + "name": "depositType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "18464:11:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4513, + "name": "DepositActionType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57495, + "src": "18479:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", + "typeString": "type(enum DepositActionType)" + } + }, + "id": 4514, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "RedeemNToken", + "nodeType": "MemberAccess", + "src": "18479:30:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "src": "18464:45:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4562, + "nodeType": "IfStatement", + "src": "18460:824:29", + "trueBody": { + "id": 4561, + "nodeType": "Block", + "src": "18511:773:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "expression": { + "id": 4524, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18764:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4525, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netNTokenSupplyChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57627, + "src": "18764:34:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "arguments": [ + { + "expression": { + "id": 4520, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18664:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4521, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netNTokenTransfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 57625, + "src": "18664:30:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4517, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18585:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4518, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "storedNTokenBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57619, + "src": "18585:53:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "18585:78:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18585:110:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "18585:178:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18585:214:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 4527, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "18803:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "18585:237:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "496e73756666696369656e7420746f6b656e2062616c616e6365", + "id": 4529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18840:28:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a7e5e4d46ea524835ea36125140e247d59a2bce707f2094f88605dba8157d192", + "typeString": "literal_string \"Insufficient token balance\"" + }, + "value": "Insufficient token balance" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a7e5e4d46ea524835ea36125140e247d59a2bce707f2094f88605dba8157d192", + "typeString": "literal_string \"Insufficient token balance\"" + } + ], + "id": 4516, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18525:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4530, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18525:357:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4531, + "nodeType": "ExpressionStatement", + "src": "18525:357:29" + }, + { + "expression": { + "id": 4540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4532, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18897:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4534, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netNTokenSupplyChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57627, + "src": "18897:34:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4538, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "18990:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4535, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18934:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4536, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netNTokenSupplyChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57627, + "src": "18934:34:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4537, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 44959, + "src": "18934:38:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18934:89:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "18897:126:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4541, + "nodeType": "ExpressionStatement", + "src": "18897:126:29" + }, + { + "assignments": [ + 4543 + ], + "declarations": [ + { + "constant": false, + "id": 4543, + "mutability": "mutable", + "name": "assetCash", + "nodeType": "VariableDeclaration", + "scope": 4561, + "src": "19038:16:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4542, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "19038:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4550, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 4546, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "19114:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4547, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57615, + "src": "19114:23:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 4548, + "name": "depositActionAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "19155:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4544, + "name": "nTokenRedeemAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13836, + "src": "19057:18:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", + "typeString": "type(library nTokenRedeemAction)" + } + }, + "id": 4545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "nTokenRedeemViaBatch", + "nodeType": "MemberAccess", + "referencedDeclaration": 12926, + "src": "19057:39:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_uint16_$_t_int256_$returns$_t_int256_$", + "typeString": "function (uint16,int256) returns (int256)" + } + }, + "id": 4549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19057:131:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "19038:150:29" + }, + { + "expression": { + "id": 4559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4551, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "19203:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4553, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "19203:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4557, + "name": "assetCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4543, + "src": "19263:9:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4554, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "19232:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4555, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "19232:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "19232:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19232:41:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "19203:70:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4560, + "nodeType": "ExpressionStatement", + "src": "19203:70:29" + } + ] + } + }, + "id": 4563, + "nodeType": "IfStatement", + "src": "17569:1715:29", + "trueBody": { + "id": 4511, + "nodeType": "Block", + "src": "17802:652:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4478, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "17929:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + { + "id": 4479, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4460, + "src": "17943:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4477, + "name": "_checkSufficientCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4767, + "src": "17908:20:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_BalanceState_$57632_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (struct BalanceState memory,int256) pure" + } + }, + "id": 4480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17908:55:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4481, + "nodeType": "ExpressionStatement", + "src": "17908:55:29" + }, + { + "expression": { + "id": 4490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4482, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "17977:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4484, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "17977:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4488, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4460, + "src": "18037:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4485, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18006:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4486, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "18006:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 44959, + "src": "18006:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18006:51:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "17977:80:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4491, + "nodeType": "ExpressionStatement", + "src": "17977:80:29" + }, + { + "assignments": [ + 4493 + ], + "declarations": [ + { + "constant": false, + "id": 4493, + "mutability": "mutable", + "name": "tokensMinted", + "nodeType": "VariableDeclaration", + "scope": 4511, + "src": "18168:19:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4492, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "18168:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4500, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 4496, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18235:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4497, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57615, + "src": "18235:23:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 4498, + "name": "assetInternalAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4460, + "src": "18276:19:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 4494, + "name": "nTokenMintAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12854, + "src": "18190:16:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", + "typeString": "type(library nTokenMintAction)" + } + }, + "id": 4495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "nTokenMint", + "nodeType": "MemberAccess", + "referencedDeclaration": 12310, + "src": "18190:27:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_uint16_$_t_int256_$returns$_t_int256_$", + "typeString": "function (uint16,int256) returns (int256)" + } + }, + "id": 4499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18190:119:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "18168:141:29" + }, + { + "expression": { + "id": 4509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4501, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18324:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4503, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netNTokenSupplyChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57627, + "src": "18324:34:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4507, + "name": "tokensMinted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4493, + "src": "18417:12:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4504, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4454, + "src": "18361:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4505, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netNTokenSupplyChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57627, + "src": "18361:34:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "18361:38:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18361:82:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "18324:119:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4510, + "nodeType": "ExpressionStatement", + "src": "18324:119:29" + } + ] + } + } + ] + }, + "documentation": { + "id": 4452, + "nodeType": "StructuredDocumentation", + "src": "17252:32:29", + "text": "@dev Executes nToken actions" + }, + "id": 4565, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_executeNTokenAction", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4461, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4454, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 4565, + "src": "17328:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 4453, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "17328:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4456, + "mutability": "mutable", + "name": "depositType", + "nodeType": "VariableDeclaration", + "scope": 4565, + "src": "17370:29:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + }, + "typeName": { + "id": 4455, + "name": "DepositActionType", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57495, + "src": "17370:17:29", + "typeDescriptions": { + "typeIdentifier": "t_enum$_DepositActionType_$57495", + "typeString": "enum DepositActionType" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4458, + "mutability": "mutable", + "name": "depositActionAmount", + "nodeType": "VariableDeclaration", + "scope": 4565, + "src": "17409:26:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4457, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "17409:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4460, + "mutability": "mutable", + "name": "assetInternalAmount", + "nodeType": "VariableDeclaration", + "scope": 4565, + "src": "17445:26:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4459, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "17445:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "17318:159:29" + }, + "returnParameters": { + "id": 4462, + "nodeType": "ParameterList", + "parameters": [], + "src": "17486:0:29" + }, + "scope": 4840, + "src": "17289:2001:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4636, + "nodeType": "Block", + "src": "19653:1082:29", + "statements": [ + { + "assignments": [ + 4582 + ], + "declarations": [ + { + "constant": false, + "id": 4582, + "mutability": "mutable", + "name": "withdrawAmount", + "nodeType": "VariableDeclaration", + "scope": 4636, + "src": "19663:21:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4581, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "19663:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4587, + "initialValue": { + "arguments": [ + { + "id": 4585, + "name": "withdrawAmountInternalPrecision", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4574, + "src": "19704:31:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4583, + "name": "SafeInt256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 45162, + "src": "19687:10:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", + "typeString": "type(library SafeInt256)" + } + }, + "id": 4584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "toInt", + "nodeType": "MemberAccess", + "referencedDeclaration": 45127, + "src": "19687:16:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", + "typeString": "function (uint256) pure returns (int256)" + } + }, + "id": 4586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19687:49:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "19663:73:29" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4589, + "name": "withdrawAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4582, + "src": "19754:14:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19772:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "19754:19:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4588, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "19746:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19746:28:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4593, + "nodeType": "ExpressionStatement", + "src": "19746:28:29" + }, + { + "condition": { + "id": 4594, + "name": "withdrawEntireCashBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4576, + "src": "19934:25:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4617, + "nodeType": "IfStatement", + "src": "19930:543:29", + "trueBody": { + "id": 4616, + "nodeType": "Block", + "src": "19961:512:29", + "statements": [ + { + "expression": { + "id": 4606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4595, + "name": "withdrawAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4582, + "src": "20161:14:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "expression": { + "id": 4603, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4572, + "src": "20279:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4604, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netAssetTransferInternalPrecision", + "nodeType": "MemberAccess", + "referencedDeclaration": 57623, + "src": "20279:46:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "arguments": [ + { + "expression": { + "id": 4599, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4572, + "src": "20230:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4600, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "20230:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4596, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4572, + "src": "20178:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4597, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "storedCashBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57617, + "src": "20178:30:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "20178:51:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20178:79:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "20178:100:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20178:148:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "20161:165:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4607, + "nodeType": "ExpressionStatement", + "src": "20161:165:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4608, + "name": "withdrawAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4582, + "src": "20424:14:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20441:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20424:18:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4615, + "nodeType": "IfStatement", + "src": "20420:42:29", + "trueBody": { + "expression": { + "id": 4613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4611, + "name": "withdrawAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4582, + "src": "20444:14:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 4612, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20461:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "20444:18:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4614, + "nodeType": "ExpressionStatement", + "src": "20444:18:29" + } + } + ] + } + }, + { + "expression": { + "id": 4626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4618, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4572, + "src": "20510:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4620, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "netAssetTransferInternalPrecision", + "nodeType": "MemberAccess", + "referencedDeclaration": 57623, + "src": "20510:46:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4624, + "name": "withdrawAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4582, + "src": "20636:14:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4621, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4572, + "src": "20559:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4622, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netAssetTransferInternalPrecision", + "nodeType": "MemberAccess", + "referencedDeclaration": 57623, + "src": "20559:59:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 44959, + "src": "20559:76:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20559:92:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "20510:141:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4627, + "nodeType": "ExpressionStatement", + "src": "20510:141:29" + }, + { + "expression": { + "arguments": [ + { + "id": 4631, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4568, + "src": "20684:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4632, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4570, + "src": "20693:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 4633, + "name": "redeemToUnderlying", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4578, + "src": "20709:18:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 4628, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4572, + "src": "20662:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4630, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finalize", + "nodeType": "MemberAccess", + "referencedDeclaration": 24546, + "src": "20662:21:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", + "typeString": "function (struct BalanceState memory,address,struct AccountContext memory,bool) returns (int256)" + } + }, + "id": 4634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20662:66:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4635, + "nodeType": "ExpressionStatement", + "src": "20662:66:29" + } + ] + }, + "documentation": { + "id": 4566, + "nodeType": "StructuredDocumentation", + "src": "19296:58:29", + "text": "@dev Calculations any withdraws and finalizes balances" + }, + "id": 4637, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_calculateWithdrawActionAndFinalize", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4579, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4568, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4637, + "src": "19413:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4567, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19413:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4570, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4637, + "src": "19438:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4569, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "19438:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4572, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 4637, + "src": "19484:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 4571, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "19484:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4574, + "mutability": "mutable", + "name": "withdrawAmountInternalPrecision", + "nodeType": "VariableDeclaration", + "scope": 4637, + "src": "19526:39:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4573, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19526:7:29", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4576, + "mutability": "mutable", + "name": "withdrawEntireCashBalance", + "nodeType": "VariableDeclaration", + "scope": 4637, + "src": "19575:30:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4575, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19575:4:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4578, + "mutability": "mutable", + "name": "redeemToUnderlying", + "nodeType": "VariableDeclaration", + "scope": 4637, + "src": "19615:23:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4577, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19615:4:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19403:241:29" + }, + "returnParameters": { + "id": 4580, + "nodeType": "ParameterList", + "parameters": [], + "src": "19653:0:29" + }, + "scope": 4840, + "src": "19359:1376:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4662, + "nodeType": "Block", + "src": "20849:342:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4647, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4639, + "src": "21046:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4644, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4641, + "src": "21013:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4646, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "setAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23372, + "src": "21013:32:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory,address)" + } + }, + "id": 4648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21013:41:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4649, + "nodeType": "ExpressionStatement", + "src": "21013:41:29" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4650, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4641, + "src": "21068:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4651, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "hasDebt", + "nodeType": "MemberAccess", + "referencedDeclaration": 57736, + "src": "21068:22:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30783030", + "id": 4652, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21094:4:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "src": "21068:30:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4661, + "nodeType": "IfStatement", + "src": "21064:121:29", + "trueBody": { + "id": 4660, + "nodeType": "Block", + "src": "21100:85:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4657, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4639, + "src": "21166:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4654, + "name": "FreeCollateralExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 618, + "src": "21114:22:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + }, + "id": 4656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "checkFreeCollateralAndRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 553, + "src": "21114:51:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 4658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21114:60:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4659, + "nodeType": "ExpressionStatement", + "src": "21114:60:29" + } + ] + } + } + ] + }, + "id": 4663, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_finalizeAccountContext", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4642, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4639, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4663, + "src": "20774:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4638, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20774:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4641, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4663, + "src": "20791:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4640, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "20791:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "src": "20773:55:29" + }, + "returnParameters": { + "id": 4643, + "nodeType": "ParameterList", + "parameters": [], + "src": "20849:0:29" + }, + "scope": 4840, + "src": "20741:450:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4737, + "nodeType": "Block", + "src": "21477:1031:29", + "statements": [ + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4681, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "21491:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4682, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "isBitmapEnabled", + "nodeType": "MemberAccess", + "referencedDeclaration": 23385, + "src": "21491:30:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) pure returns (bool)" + } + }, + "id": 4683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21491:32:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 4735, + "nodeType": "Block", + "src": "22092:410:29", + "statements": [ + { + "expression": { + "id": 4733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 4723, + "name": "postTradeState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4679, + "src": "22304:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + }, + { + "id": 4724, + "name": "netCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4677, + "src": "22320:7:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "id": 4725, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "22303:25:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", + "typeString": "tuple(struct PortfolioState memory,int256)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4728, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4665, + "src": "22386:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4729, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4667, + "src": "22411:10:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 4730, + "name": "portfolioState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4674, + "src": "22439:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + } + }, + { + "id": 4731, + "name": "trades", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4670, + "src": "22471:6:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState memory" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + ], + "expression": { + "id": 4726, + "name": "TradingAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11085, + "src": "22331:13:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", + "typeString": "type(library TradingAction)" + } + }, + "id": 4727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "executeTradesArrayBatch", + "nodeType": "MemberAccess", + "referencedDeclaration": 10018, + "src": "22331:37:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_uint16_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", + "typeString": "function (address,uint16,struct PortfolioState memory,bytes32[] memory) returns (struct PortfolioState memory,int256)" + } + }, + "id": 4732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22331:160:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", + "typeString": "tuple(struct PortfolioState memory,int256)" + } + }, + "src": "22303:188:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4734, + "nodeType": "ExpressionStatement", + "src": "22303:188:29" + } + ] + }, + "id": 4736, + "nodeType": "IfStatement", + "src": "21487:1015:29", + "trueBody": { + "id": 4722, + "nodeType": "Block", + "src": "21525:561:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "id": 4688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4685, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "21564:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4686, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "bitmapCurrencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57740, + "src": "21564:31:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4687, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4667, + "src": "21599:10:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "src": "21564:45:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "496e76616c69642074726164657320666f72206163636f756e74", + "id": 4689, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21627:28:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3935fddfd35e5ed413bf683e8d0d0c7f8f93a5fcd3635d6f34d5796738ae68f", + "typeString": "literal_string \"Invalid trades for account\"" + }, + "value": "Invalid trades for account" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_c3935fddfd35e5ed413bf683e8d0d0c7f8f93a5fcd3635d6f34d5796738ae68f", + "typeString": "literal_string \"Invalid trades for account\"" + } + ], + "id": 4684, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "21539:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21539:130:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4691, + "nodeType": "ExpressionStatement", + "src": "21539:130:29" + }, + { + "assignments": [ + 4693 + ], + "declarations": [ + { + "constant": false, + "id": 4693, + "mutability": "mutable", + "name": "didIncurDebt", + "nodeType": "VariableDeclaration", + "scope": 4722, + "src": "21683:17:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4692, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21683:4:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 4694, + "nodeType": "VariableDeclarationStatement", + "src": "21683:17:29" + }, + { + "expression": { + "id": 4707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 4695, + "name": "netCash", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4677, + "src": "21715:7:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4696, + "name": "didIncurDebt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4693, + "src": "21724:12:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 4697, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "21714:23:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_int256_$_t_bool_$", + "typeString": "tuple(int256,bool)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4700, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4665, + "src": "21796:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4701, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "21821:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4702, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "bitmapCurrencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57740, + "src": "21821:31:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "expression": { + "id": 4703, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "21870:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4704, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "nextSettleTime", + "nodeType": "MemberAccess", + "referencedDeclaration": 57734, + "src": "21870:29:29", + "typeDescriptions": { + "typeIdentifier": "t_uint40", + "typeString": "uint40" + } + }, + { + "id": 4705, + "name": "trades", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4670, + "src": "21917:6:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_uint40", + "typeString": "uint40" + }, + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[] calldata" + } + ], + "expression": { + "id": 4698, + "name": "TradingAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11085, + "src": "21740:13:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", + "typeString": "type(library TradingAction)" + } + }, + "id": 4699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "executeTradesBitmapBatch", + "nodeType": "MemberAccess", + "referencedDeclaration": 9886, + "src": "21740:38:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_uint16_$_t_uint40_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$_t_bool_$", + "typeString": "function (address,uint16,uint40,bytes32[] memory) returns (int256,bool)" + } + }, + "id": 4706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21740:197:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_int256_$_t_bool_$", + "typeString": "tuple(int256,bool)" + } + }, + "src": "21714:223:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4708, + "nodeType": "ExpressionStatement", + "src": "21714:223:29" + }, + { + "condition": { + "id": 4709, + "name": "didIncurDebt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4693, + "src": "21955:12:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4721, + "nodeType": "IfStatement", + "src": "21951:125:29", + "trueBody": { + "id": 4720, + "nodeType": "Block", + "src": "21969:107:29", + "statements": [ + { + "expression": { + "id": 4718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 4710, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "21987:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4712, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "hasDebt", + "nodeType": "MemberAccess", + "referencedDeclaration": 57736, + "src": "21987:22:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4713, + "name": "Constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22832, + "src": "22012:9:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", + "typeString": "type(library Constants)" + } + }, + "id": 4714, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "HAS_ASSET_DEBT", + "nodeType": "MemberAccess", + "referencedDeclaration": 22777, + "src": "22012:24:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "|", + "rightExpression": { + "expression": { + "id": 4715, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4672, + "src": "22039:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4716, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "hasDebt", + "nodeType": "MemberAccess", + "referencedDeclaration": 57736, + "src": "22039:22:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "22012:49:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "21987:74:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "id": 4719, + "nodeType": "ExpressionStatement", + "src": "21987:74:29" + } + ] + } + } + ] + } + } + ] + }, + "id": 4738, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_executeTrades", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4675, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4665, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21230:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4664, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21230:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4667, + "mutability": "mutable", + "name": "currencyId", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21255:17:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 4666, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "21255:6:29", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4670, + "mutability": "mutable", + "name": "trades", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21282:25:29", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4668, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21282:7:29", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4669, + "nodeType": "ArrayTypeName", + "src": "21282:9:29", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4672, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21317:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4671, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "21317:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4674, + "mutability": "mutable", + "name": "portfolioState", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21363:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState" + }, + "typeName": { + "id": 4673, + "name": "PortfolioState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57602, + "src": "21363:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", + "typeString": "struct PortfolioState" + } + }, + "visibility": "internal" + } + ], + "src": "21220:185:29" + }, + "returnParameters": { + "id": 4680, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4677, + "mutability": "mutable", + "name": "netCash", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21423:14:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4676, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "21423:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4679, + "mutability": "mutable", + "name": "postTradeState", + "nodeType": "VariableDeclaration", + "scope": 4738, + "src": "21439:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", + "typeString": "struct PortfolioState" + }, + "typeName": { + "id": 4678, + "name": "PortfolioState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57602, + "src": "21439:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", + "typeString": "struct PortfolioState" + } + }, + "visibility": "internal" + } + ], + "src": "21422:54:29" + }, + "scope": 4840, + "src": "21197:1311:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4766, + "nodeType": "Block", + "src": "22775:427:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4762, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4747, + "name": "amountInternalPrecision", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4743, + "src": "22929:23:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22956:1:29", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22929:28:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4761, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "expression": { + "id": 4757, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4741, + "src": "23078:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4758, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netAssetTransferInternalPrecision", + "nodeType": "MemberAccess", + "referencedDeclaration": 57623, + "src": "23078:46:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "arguments": [ + { + "expression": { + "id": 4753, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4741, + "src": "23029:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4754, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "netCashChange", + "nodeType": "MemberAccess", + "referencedDeclaration": 57621, + "src": "23029:26:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "expression": { + "id": 4750, + "name": "balanceState", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4741, + "src": "22977:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState memory" + } + }, + "id": 4751, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "storedCashBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57617, + "src": "22977:30:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "22977:51:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22977:79:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4756, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 44985, + "src": "22977:100:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", + "typeString": "function (int256,int256) pure returns (int256)" + } + }, + "id": 4759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22977:148:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 4760, + "name": "amountInternalPrecision", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4743, + "src": "23129:23:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "22977:175:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "22929:223:29", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "496e73756666696369656e742063617368", + "id": 4763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23166:19:29", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc004f7ed1a482e42015716a7d78c2cffca4ace23a8603c3b541c93e3ee37d90", + "typeString": "literal_string \"Insufficient cash\"" + }, + "value": "Insufficient cash" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_dc004f7ed1a482e42015716a7d78c2cffca4ace23a8603c3b541c93e3ee37d90", + "typeString": "literal_string \"Insufficient cash\"" + } + ], + "id": 4746, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "22908:7:29", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22908:287:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4765, + "nodeType": "ExpressionStatement", + "src": "22908:287:29" + } + ] + }, + "documentation": { + "id": 4739, + "nodeType": "StructuredDocumentation", + "src": "22514:127:29", + "text": "@notice When lending, adding liquidity or minting nTokens the account must have a sufficient cash balance\n to do so." + }, + "id": 4767, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkSufficientCash", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4744, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4741, + "mutability": "mutable", + "name": "balanceState", + "nodeType": "VariableDeclaration", + "scope": 4767, + "src": "22676:32:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", + "typeString": "struct BalanceState" + }, + "typeName": { + "id": 4740, + "name": "BalanceState", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57632, + "src": "22676:12:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", + "typeString": "struct BalanceState" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4743, + "mutability": "mutable", + "name": "amountInternalPrecision", + "nodeType": "VariableDeclaration", + "scope": 4767, + "src": "22710:30:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4742, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "22710:6:29", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "22675:66:29" + }, + "returnParameters": { + "id": 4745, + "nodeType": "ParameterList", + "parameters": [], + "src": "22775:0:29" + }, + "scope": 4840, + "src": "22646:556:29", + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4795, + "nodeType": "Block", + "src": "23319:360:29", + "statements": [ + { + "assignments": [ + 4775 + ], + "declarations": [ + { + "constant": false, + "id": 4775, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4795, + "src": "23329:36:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4774, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "23329:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 4780, + "initialValue": { + "arguments": [ + { + "id": 4778, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4769, + "src": "23408:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4776, + "name": "AccountContextHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24055, + "src": "23368:21:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", + "typeString": "type(library AccountContextHandler)" + } + }, + "id": 4777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23345, + "src": "23368:39:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) view returns (struct AccountContext memory)" + } + }, + "id": 4779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23368:48:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23329:87:29" + }, + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4781, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4775, + "src": "23430:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4782, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "mustSettleAssets", + "nodeType": "MemberAccess", + "referencedDeclaration": 23510, + "src": "23430:31:29", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) view returns (bool)" + } + }, + "id": 4783, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23430:33:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 4793, + "nodeType": "Block", + "src": "23627:46:29", + "statements": [ + { + "expression": { + "id": 4791, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4775, + "src": "23648:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "functionReturnParameters": 4773, + "id": 4792, + "nodeType": "Return", + "src": "23641:21:29" + } + ] + }, + "id": 4794, + "nodeType": "IfStatement", + "src": "23426:247:29", + "trueBody": { + "id": 4790, + "nodeType": "Block", + "src": "23465:156:29", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4786, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4769, + "src": "23586:7:29", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4787, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4775, + "src": "23595:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "expression": { + "id": 4784, + "name": "SettleAssetsExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1878, + "src": "23551:20:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + }, + "id": 4785, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "settleAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 1877, + "src": "23551:34:29", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" + } + }, + "id": 4788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23551:59:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "functionReturnParameters": 4773, + "id": 4789, + "nodeType": "Return", + "src": "23544:66:29" + } + ] + } + } + ] + }, + "id": 4796, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_settleAccountIfRequired", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4769, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4796, + "src": "23242:15:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4768, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23242:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "23241:17:29" + }, + "returnParameters": { + "id": 4773, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4772, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4796, + "src": "23292:21:29", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4771, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "23292:14:29", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "src": "23291:23:29" + }, + "scope": 4840, + "src": "23208:471:29", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 4838, + "nodeType": "Block", + "src": "23866:282:29", + "statements": [ + { + "expression": { + "components": [ + { + "arguments": [ + { + "id": 4814, + "name": "FreeCollateralExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 618, + "src": "23905:22:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + ], + "id": 4813, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23897:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4812, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23897:7:29", + "typeDescriptions": {} + } + }, + "id": 4815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23897:31:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4818, + "name": "MigrateIncentives", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 775, + "src": "23951:17:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_MigrateIncentives_$775_$", + "typeString": "type(library MigrateIncentives)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_MigrateIncentives_$775_$", + "typeString": "type(library MigrateIncentives)" + } + ], + "id": 4817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23943:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23943:7:29", + "typeDescriptions": {} + } + }, + "id": 4819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23943:26:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4822, + "name": "SettleAssetsExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1878, + "src": "23992:20:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + ], + "id": 4821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23984:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4820, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23984:7:29", + "typeDescriptions": {} + } + }, + "id": 4823, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23984:29:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4826, + "name": "TradingAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11085, + "src": "24036:13:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", + "typeString": "type(library TradingAction)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", + "typeString": "type(library TradingAction)" + } + ], + "id": 4825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24028:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4824, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24028:7:29", + "typeDescriptions": {} + } + }, + "id": 4827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24028:22:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4830, + "name": "nTokenMintAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12854, + "src": "24072:16:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", + "typeString": "type(library nTokenMintAction)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", + "typeString": "type(library nTokenMintAction)" + } + ], + "id": 4829, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24064:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4828, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24064:7:29", + "typeDescriptions": {} + } + }, + "id": 4831, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24064:25:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4834, + "name": "nTokenRedeemAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13836, + "src": "24112:18:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", + "typeString": "type(library nTokenRedeemAction)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", + "typeString": "type(library nTokenRedeemAction)" + } + ], + "id": 4833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24104:7:29", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4832, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24104:7:29", + "typeDescriptions": {} + } + }, + "id": 4835, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24104:27:29", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 4836, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23883:258:29", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_address_$_t_address_$_t_address_$_t_address_$", + "typeString": "tuple(address,address,address,address,address,address)" + } + }, + "functionReturnParameters": 4811, + "id": 4837, + "nodeType": "Return", + "src": "23876:265:29" + } + ] + }, + "documentation": { + "id": 4797, + "nodeType": "StructuredDocumentation", + "src": "23685:77:29", + "text": "@notice Get a list of deployed library addresses (sorted by library name)" + }, + "functionSelector": "c4c96dae", + "id": 4839, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getLibInfo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 4798, + "nodeType": "ParameterList", + "parameters": [], + "src": "23786:2:29" + }, + "returnParameters": { + "id": 4811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4800, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4839, + "src": "23812:7:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4799, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23812:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4802, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4839, + "src": "23821:7:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4801, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23821:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4804, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4839, + "src": "23830:7:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4803, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23830:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4806, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4839, + "src": "23839:7:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4805, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23839:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4808, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4839, + "src": "23848:7:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4807, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23848:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4810, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4839, + "src": "23857:7:29", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4809, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23857:7:29", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "23811:54:29" + }, + "scope": 4840, + "src": "23767:381:29", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 4841, + "src": "591:23559:29" + } + ], + "src": "41:24110:29" + }, + "bytecode": "608060405234801561001057600080fd5b50614c12806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e36600461420f565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b7919061465e565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614383565b6101f6565b6100936100ee36600461425f565b61053e565b610093610101366004614303565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b7969594939291906146bb565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149eb565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148da565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148da565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f2f565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b62565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b62565b6102e3906020810190614596565b61ffff166102f46020830183614596565b61ffff16116103155760405162461bcd60e51b815260040161017a9061498a565b60006103246040830183614afd565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614afd565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614596565b86919089610c79565b6103b4896103a06020850185614596565b6103ad6040860186614afd565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a60408401602085016143ba565b156104b757600061042a6104216020860186614596565b61ffff16610eef565b9050600061044761043e6020870187614596565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614abb565b505050506104ef565b60006104d26104c96020860186614596565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148da565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614672565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061063590899060040161465e565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148da565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f2f565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614596565b61ffff1661074a6040830160208401614596565b61ffff161161076b5760405162461bcd60e51b815260040161017a9061498a565b6107888761077f6040840160208501614596565b85919087610c79565b6107a4878461079a60208501856143d6565b8460400135611605565b6107d487858560608501356107bf60a08701608088016143ba565b6107cf60c0880160a089016143ba565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b730x4763672dEa3bF087929d5537B6BAfeB8e6938F46730x244321a0C5eE55DF1F4D31c71570Cbe0236c1864730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA730x4b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16730x5d0Df02534ab3c805c59f9cC98E282DC929821e1730xEaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f7f565b600061090285610b2b565b905061090c613f2f565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b43565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b43565b610984906040810190602001614596565b61ffff166109986040830160208401614596565b61ffff16116109b95760405162461bcd60e51b815260040161017a9061498a565b6109d6896109cd6040840160208501614596565b86919088610c79565b6109e8898561079a60208501856143d6565b60006109f760c0830183614afd565b90501115610a5e576000610a298a610a156040850160208601614596565b610a2260c0860186614afd565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a08701608088016143ba565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610aff90859060040161465e565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f7f565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b8152730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610b8790869085906004016146f5565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061443c565b915050610be2565b90505b919050565b610bef613fad565b610bf7613fad565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fd5565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613fad565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a35565b60608401518451604051633643f39b60e01b8152600092730x4b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610da9928e9290918d908d9060040161481f565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df8919061440d565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b8152730x4b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e61908b908b9088908c908c90600401614761565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144db565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7614015565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f4361403f565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a9061491e565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac61403f565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a6c565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a90614a13565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148d1565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148d1565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c6101000151612054565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b6121a4565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e86886123a3565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125e2565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b6121a4565b60109490941b9390506114c5565b505050505050505050565b600061150b61265d565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261266a565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612680565b50505050565b60006116e38461266a565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261289b565b608086015261174b85888885611191565b5050505050505050565b6000806000806000806117666128b1565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a90565b611815613f7f565b600061181f61265d565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128be565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128dc565b9050600181511161191f579050610edb565b610aa3816129fd565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612bb5565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612bc2565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bd0565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143f5565b905060008113611b6457600080fd5b969195509350915050565b611b7761403f565b6000611b81612c07565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612c14565b9250505b6000821315611cb2576000611c9c868685612ca6565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d99565b610f7f565b8451610f7f9085611cf185610ee1565b612dd4565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e4b565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f5d565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fc8565b600286606001516005811115611dbb57fe5b141561007b57611dca86613074565b6000611ddb87600001513085612e4b565b9050611def611dea82846130b3565b61266a565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e628260000151613110565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061319b565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613231565b90506000611f90828860c0015185613257565b9050611f9e8783838861333a565b93506000611fab83613467565b90506001600160a01b0381161561203957806001600160a01b0316631d684dd2888a60000151611fde8c60400151611cf6565b8a8d60c001518b6040518763ffffffff1660e01b8152600401612006969594939291906147e8565b600060405180830381600087803b15801561202057600080fd5b505af1158015612034573d6000803e3d6000fd5b505050505b84156120495761204987866134d9565b505050509392505050565b600061205e612bb5565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a957506a7fffffffffffffffffffff8613155b6120b257600080fd5b600085121580156120cd575069ffffffffffffffffffff8513155b6120d657600080fd5b836121165766ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612130565b8054600160501b900463ffffffff16841461213057600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121b65750613fff8311155b6121bf57600080fd5b8180156121d3575082846060015161ffff16145b156121dd576116d2565b6080840151600090815b6001600160701b03198216156123585760f082901c613fff16868114801561220c5750855b1561224457506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612251575085155b156122a6576001600160f01b03198516199290921691600360fe1b8316612284576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122b25750855b1561230c576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122e657600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b8681118015612319575085155b1561232757505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121e7565b84612365575050506116d2565b6009811061237257600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124345760008a6000015182815181106123c957fe5b602002602001015190506003808111156123df57fe5b8160a0015160038111156123ef57fe5b14156123fa57600080fd5b60028160a00151600381111561240c57fe5b1415801561241c57506060810151155b1561242b5761242b8b836134f8565b506001016123ad565b5060005b8951518110156124d75760008a60000151828151811061245457fe5b602002602001015190506002600381111561246b57fe5b8160a00151600381111561247b57fe5b141561248f576080810151600090556124ce565b60018160a0015160038111156124a157fe5b14156124ba576080810151806124b78382613647565b50505b6124c681868686613778565b919650945092505b50600101612438565b50606089015160006124e76137db565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125b15760008d60200151828151811061252257fe5b6020026020010151905080606001516000141561253f57506125a9565b60028160a00151600381111561255157fe5b1415801561256f575060038160a00151600381111561256c57fe5b14155b61257857600080fd5b61258481898989613778565b919950975095506125a18184876010811061259b57fe5b01613647565b600185019450505b600101612503565b50601083111580156125c8575064ffffffffff8411155b6125d157600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561265457600160fe1b828116141561263e576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061260a565b50909392505050565b600080610edb60016137e4565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561268e57fe5b14806126a5575060048360068111156126a357fe5b145b806126bb575060068360068111156126b957fe5b145b15612787576126ca84826117be565b60608401516126d9908261289b565b60608501528351604051632128561360e11b8152600091730x5d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161271a918690600401614ae9565b60206040518083038186803b15801561273257600080fd5b505af4158015612746573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061276a91906143f5565b60c086015190915061277c9082610ec5565b60c0860152506116d2565b600583600681111561279557fe5b14156116d257816127bf8560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127dd5760405162461bcd60e51b815260040161017a906149b4565b60c08401516127ec908361289b565b60c085015283516040516352e73f7760e01b8152600091730xEaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f779161282d918790600401614ae9565b60206040518083038186803b15801561284557600080fd5b505af4158015612859573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061287d91906143f5565b606086015190915061288f9082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137e4565b6000620151808210156128d057600080fd5b50620151808106900390565b606060108260ff1611156128ef57600080fd5b60006128f96137db565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561292d57600080fd5b5060405190808252806020026020018201604052801561296757816020015b612954613fd5565b81526020019060019003908161294c5790505b50905060005b8560ff168110156129f357600083826010811061298657fe5b019050600083838151811061299757fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b6060820152608001919091525060010161296d565b5095945050505050565b80516000816001600160401b0381118015612a1757600080fd5b50604051908082528060200260200182016040528015612a41578160200160208202803683370190505b50905060005b82811015612a9e576000848281518110612a5d57fe5b60200260200101519050612a7e8160000151826020015183604001516137fd565b838381518110612a8a57fe5b602090810291909101015250600101612a47565b5060015b828110156116d257805b600081118015612ae45750828181518110612ac357fe5b6020026020010151836001830381518110612ada57fe5b6020026020010151115b15612bac57828181518110612af557fe5b6020026020010151836001830381518110612b0c57fe5b6020026020010151846001840381518110612b2357fe5b60200260200101858481518110612b3657fe5b6020026020010182815250828152505050848181518110612b5357fe5b6020026020010151856001830381518110612b6a57fe5b6020026020010151866001840381518110612b8157fe5b60200260200101878481518110612b9457fe5b60209081029190910101919091525260001901612aac565b50600101612aa2565b600080610edb60066137e4565b600881901c60ff9091161b90565b6000806000612bdd613858565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137e4565b600081612c2357506000610edb565b6000612c2e84613110565b90506000612c3b84613865565b9050816b019d971e4fe8401e74000001600160ff1b0381612c5857fe5b05811315612c6557600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c9a57612c9581610ee1565b612c9c565b805b9695505050505050565b6000808080600587606001516005811115612cbd57fe5b14612ccf576370a0823160e01b612cd8565b630ed1279f60e11b5b9050866020015115612cf4578651612cf1903083612e4b565b92505b8651612d01908787613886565b866020015180612d15575060008760800151115b15612d2a578651612d27903083612e4b565b91505b608087015115612d65576000612d4888612d438561266a565b611dfa565b9050612d57886080015161266a565b811315612d6357600080fd5b505b866020015115612d8657612d7c611dea83856130b3565b9350505050610aa3565b612d7c8561266a565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612dcf573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e2b57600080fd5b505af1158015612e3f573d6000803e3d6000fd5b50505050612dcf6138de565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612ec85780518252601f199092019160209182019101612ea9565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f28576040519150601f19603f3d011682016040523d82523d6000602084013e612f2d565b606091505b509150915081612f3c57600080fd5b808060200190516020811015612f5157600080fd5b50519695505050505050565b612f6561394b565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f9a918590309060009060040161487e565b600060405180830381600087803b158015612fb457600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612ffb91906148d1565b602060405180830381600087803b15801561301557600080fd5b505af1158015613029573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061304d91906143f5565b9050801561306d5760405162461bcd60e51b815260040161017a90614900565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fb457600080fd5b60008282111561310a576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61311d61394b565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061314b90869060040161465e565b60206040518083038186803b15801561316357600080fd5b505afa158015613177573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143f5565b6000806002866060015160058111156131b057fe5b14156131c8576131c1868585613958565b9050613225565b60006131d386610f3b565b90506005876060015160058111156131e757fe5b14156131ff576131f8818686613a15565b9150613223565b60018760600151600581111561321157fe5b141561007b576131f887828787613acb565b505b612c9c6103ea8261266a565b60008061323c613bc9565b6000938452602052505060409020546001600160a01b031690565b60008060006132668685613bd6565b50915091506000613275613c6c565b6001600160a01b038816600090815260208290526040812091925061329a8589610ec5565b9050806000131580156132b357506001600160601b0381105b6132bc57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061331157600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133fb57730x244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a728561336f8860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161339994939291906148ab565b60206040518083038186803b1580156133b157600080fd5b505af41580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e991906143f5565b600060e0870181905261010087015290505b61343d613436866101000151613430670de0b6b3a764000061342a886134248c60400151611cf6565b90613c79565b90613cd2565b906130b3565b8290613d39565b9050613455670de0b6b3a764000061342a8486613c79565b85610100018181525050949350505050565b6000806134726128b1565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134ce576134a7613d93565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612dd4565b815151811061350657600080fd5b600082606001511161351757600080fd5b60008260000151828151811061352957fe5b602002602001015190506002600381111561354057fe5b8160a00151600381111561355057fe5b1415801561356e575060038160a00151600381111561356b57fe5b14155b61357757600080fd5b606083018051600019019052600080805b8551518110156135ea576000866000015182815181106135a457fe5b602002602001015190508281608001511180156135d1575060028160a0015160038111156135ce57fe5b14155b156135e157806080015192508193505b50600101613588565b5081841415613603575050600260a091909101526108eb565b60008560000151838151811061361557fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061365a57508151613fff10155b61366357600080fd5b816020015160001080156136805750602082015164ffffffffff10155b61368957600080fd5b816040015160001080156136a257506040820151600810155b6136ab57600080fd5b60608201516a7fffffffffffffffffffff19138015906136da575060608201516a7fffffffffffffffffffff12155b6136e357600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061378788613da0565b905084158061379557508085115b1561379e578094505b86806137ae575060008860600151125b965061ffff8616156137bf57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137f657fe5b0192915050565b6000613fff84111561380e57600080fd5b64ffffffffff83111561382057600080fd5b600882111561382e57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137e4565b60008082121561387f5761387882610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e2b57600080fd5b60006138e861406e565b3d80156138fc576020811461390557600080fd5b60019250613910565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137e4565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061398c9087906004016148d1565b602060405180830381600087803b1580156139a657600080fd5b505af11580156139ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139de91906143f5565b905080156139fe5760405162461bcd60e51b815260040161017a90614943565b47613a0981846130b3565b9350612d8f8685612d99565b6000613a35613a308560000151613a2b8561266a565b612c14565b611cf6565b9050613a3f61394b565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a71918590889060040161485b565b602060405180830381600087803b158015613a8b57600080fd5b505af1158015613a9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ac391906143f5565b509392505050565b82516000908190613ae490306370a0823160e01b612e4b565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b1891906148d1565b602060405180830381600087803b158015613b3257600080fd5b505af1158015613b46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b6a91906143f5565b90508015613b8a5760405162461bcd60e51b815260040161017a90614943565b8551600090613ba190306370a0823160e01b612e4b565b9050613bad81846130b3565b9350613bbe87600001518786612dd4565b505050949350505050565b600080610edb60036137e4565b6000806000613be485613e0d565b919450925090508084118015613bfa5750600081115b8015613c065750600083115b15613c65576000613c1686611755565b5050509150506000613c41613c386305f5e10084613c7990919063ffffffff16565b84880387613e69565b9050613c4d8482613d39565b93506001600160801b038410613c6257600080fd5b50505b9250925092565b600080610edb60116137e4565b600082613c8857506000610edb565b82820282848281613c9557fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614bbc6021913960400191505060405180910390fd5b6000808211613d28576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d3157fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137e4565b6000808260400151118015613dba57506040820151600810155b613dc357600080fd5b6040820151600210613dda57506020810151610be2565b6000613dec6001846040015103613e8b565b6020840151909150610aa3906276a70090613e0790846130b3565b90613d39565b600080600080613e1b613c6c565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261342a6301da9c00818861342489670de0b6b3a7640000613c79565b60008160011415613ea057506276a700610be2565b8160021415613eb3575062ed4e00610be2565b8160031415613ec757506301da9c00610be2565b8160041415613edb57506303b53800610be2565b8160051415613eef57506309450c00610be2565b8160061415613f03575063128a1800610be2565b8160071415613f1757506325143000610be2565b60405162461bcd60e51b815260040161017a90614963565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561401057fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f8401126140b4578081fd5b5081356001600160401b038111156140ca578182fd5b60208301915083602080830285010111156140e457600080fd5b9250929050565b600082601f8301126140fb578081fd5b815160206001600160401b038083111561411157fe5b61411e8283850201614b77565b8381528281019086840160c0808702890186018a101561413c578788fd5b875b878110156141bd5781838c031215614154578889fd5b60408051838101818110898211171561416957fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141a48286016141e4565b918101919091528552938601939181019160010161413e565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614bab565b805160ff81168114610be257600080fd5b600080600060408486031215614223578283fd5b61422c8461408c565b925060208401356001600160401b03811115614246578283fd5b614252868287016140a3565b9497909650939450505050565b600080600080600060608688031215614276578081fd5b61427f8661408c565b945060208601356001600160401b038082111561429a578283fd5b6142a689838a016140a3565b909650945060408801359150808211156142be578283fd5b818801915088601f8301126142d1578283fd5b8135818111156142df578384fd5b8960208285010111156142f0578384fd5b9699959850939650602001949392505050565b600080600060408486031215614317578283fd5b6143208461408c565b925060208401356001600160401b038082111561433b578384fd5b818601915086601f83011261434e578384fd5b81358181111561435c578485fd5b87602060c083028501011115614370578485fd5b6020830194508093505050509250925092565b600080600060408486031215614397578081fd5b6143a08461408c565b925060208401356001600160401b03811115614246578182fd5b6000602082840312156143cb578081fd5b8135610aa381614b9a565b6000602082840312156143e7578081fd5b813560078110610aa3578182fd5b600060208284031215614406578081fd5b5051919050565b6000806040838503121561441f578182fd5b82519150602083015161443181614b9a565b809150509250929050565b600060a0828403121561444d578081fd5b60405160a081018181106001600160401b038211171561446957fe5b604052825164ffffffffff81168114614480578283fd5b815260208301516001600160f81b03198116811461449c578283fd5b60208201526144ad604084016141fe565b60408201526144be606084016141f3565b60608201526144cf608084016141cc565b60808201529392505050565b600080604083850312156144ed578182fd5b82516001600160401b0380821115614503578384fd5b9084019060808287031215614516578384fd5b60405160808101818110838211171561452b57fe5b60405282518281111561453c578586fd5b614548888286016140eb565b82525060208301518281111561455c578586fd5b614568888286016140eb565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145a7578081fd5b8135610aa381614bab565b81835260006001600160fb1b038311156145ca578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561465357815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061463e57fe5b88015260c090960195908201906001016145f9565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147956101008401826145e6565b90506020860151607f198483030160a08501526147b282826145e6565b915050604086015160c0840152606086015160e084015282810360608401526147dc8185876145b2565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def90830184866145b2565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b13578283fd5b8301803591506001600160401b03821115614b2c578283fd5b60209081019250810236038213156140e457600080fd5b6000823560de19833603018112614b58578182fd5b9190910192915050565b60008235605e19833603018112614b58578182fd5b6040518181016001600160401b0381118282101715614b9257fe5b604052919050565b8015158114614ba857600080fd5b50565b61ffff81168114614ba857600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f884fe8220b7f46cc58f6be0c7ed42e9dc17ee783d51559bea0e93dbfe1fcabc64736f6c63430007060033", + "bytecodeSha1": "d5eb9853740b24e7c8aa2301d5ef74e768ee2bb1", + "compiler": { + "evm_version": "istanbul", + "optimizer": { + "enabled": true, + "runs": 200 + }, + "version": "0.7.6+commit.7338295f" + }, + "contractName": "BatchAction", + "coverageMap": { + "branches": { + "141": {}, + "147": {}, + "151": {}, + "152": {}, + "153": {}, + "155": {}, + "157": {}, + "159": {}, + "21": {}, + "22": {}, + "25": {}, + "28": { + "ActionGuards.requireValidAccount": { + "439": [ + 1374, + 1402, + true + ], + "440": [ + 1454, + 1478, + true + ], + "441": [ + 1741, + 1754, + true + ] + }, + "BatchAction.batchBalanceAction": { + "438": [ + 838, + 866, + true + ] + } + }, + "29": { + "BatchAction._batchBalanceAndTradeAction": { + "379": [ + 13548, + 13553, + false + ], + "380": [ + 13581, + 13626, + true + ], + "381": [ + 14093, + 14117, + false + ], + "382": [ + 14512, + 14523, + false + ], + "383": [ + 15165, + 15197, + false + ] + }, + "BatchAction._calculateWithdrawActionAndFinalize": { + "395": [ + 19754, + 19773, + true + ], + "396": [ + 19934, + 19959, + false + ], + "397": [ + 20424, + 20442, + false + ] + }, + "BatchAction._checkSufficientCash": { + "398": [ + 22929, + 22957, + false + ], + "399": [ + 22977, + 23152, + true + ] + }, + "BatchAction._executeDepositAction": { + "388": [ + 15870, + 15894, + true + ], + "389": [ + 15910, + 15947, + false + ], + "390": [ + 16003, + 16048, + true + ], + "391": [ + 16064, + 16122, + false + ], + "392": [ + 16539, + 16589, + true + ], + "393": [ + 16605, + 16668, + false + ], + "394": [ + 16880, + 16932, + false + ] + }, + "BatchAction._executeNTokenAction": { + "400": [ + 17586, + 17644, + true + ], + "401": [ + 17660, + 17723, + true + ], + "402": [ + 17739, + 17791, + false + ], + "403": [ + 18464, + 18509, + false + ], + "404": [ + 18585, + 18822, + true + ] + }, + "BatchAction._executeTrades": { + "386": [ + 21491, + 21523, + false + ], + "387": [ + 21564, + 21609, + true + ] + }, + "BatchAction._finalizeAccountContext": { + "384": [ + 21068, + 21098, + false + ] + }, + "BatchAction._settleAccountIfRequired": { + "385": [ + 23430, + 23463, + false + ] + }, + "BatchAction.batchBalanceAction": { + "375": [ + 1396, + 1417, + true + ], + "376": [ + 1421, + 1448, + true + ], + "377": [ + 1953, + 1958, + false + ], + "378": [ + 1986, + 2031, + true + ] + }, + "BatchAction.batchBalanceAndTradeAction": { + "359": [ + 3408, + 3429, + true + ], + "360": [ + 3433, + 3460, + true + ] + }, + "BatchAction.batchBalanceAndTradeActionWithCallback": { + "373": [ + 11437, + 11475, + true + ], + "374": [ + 12050, + 12080, + false + ] + }, + "BatchAction.batchLend": { + "361": [ + 4613, + 4634, + true + ], + "362": [ + 4638, + 4665, + true + ], + "363": [ + 5509, + 5514, + false + ], + "364": [ + 5542, + 5587, + true + ], + "365": [ + 5795, + 5808, + true + ], + "366": [ + 5908, + 5970, + true + ], + "367": [ + 6494, + 6525, + true + ], + "368": [ + 7086, + 7102, + false + ], + "369": [ + 7126, + 7150, + false + ], + "370": [ + 7663, + 7724, + false + ], + "371": [ + 8516, + 8551, + true + ], + "372": [ + 9549, + 9581, + false + ] + } + }, + "35": {}, + "38": {}, + "39": {}, + "6": { + "SafeMath.add": { + "541": [ + 2794, + 2800, + true + ] + }, + "SafeMath.div": { + "540": [ + 4294, + 4299, + true + ] + }, + "SafeMath.mul": { + "538": [ + 3611, + 3617, + false + ], + "539": [ + 3672, + 3682, + true + ] + }, + "SafeMath.sub": { + "537": [ + 3213, + 3219, + true + ] + } + }, + "60": {}, + "61": {}, + "62": {}, + "63": {}, + "65": {}, + "66": { + "AccountContextHandler._clearPortfolioActiveFlags": { + "437": [ + 9343, + 9420, + false + ] + }, + "AccountContextHandler.isActiveInBalances": { + "417": [ + 4157, + 4172, + false + ], + "418": [ + 4176, + 4214, + true + ], + "419": [ + 4320, + 4365, + false + ], + "420": [ + 4513, + 4530, + false + ] + }, + "AccountContextHandler.mustSettleAssets": { + "416": [ + 3173, + 3204, + false + ] + }, + "AccountContextHandler.setActiveCurrency": { + "421": [ + 5431, + 5445, + false + ], + "422": [ + 5449, + 5487, + true + ], + "423": [ + 5707, + 5715, + false + ], + "424": [ + 5719, + 5764, + false + ], + "425": [ + 6877, + 6894, + false + ], + "426": [ + 6898, + 6906, + false + ], + "427": [ + 7232, + 7249, + false + ], + "428": [ + 7254, + 7262, + false + ], + "429": [ + 7405, + 7455, + false + ], + "430": [ + 7689, + 7705, + false + ], + "431": [ + 7709, + 7717, + false + ], + "432": [ + 8010, + 8058, + true + ], + "433": [ + 8358, + 8374, + false + ], + "434": [ + 8379, + 8387, + false + ], + "435": [ + 8616, + 8624, + false + ], + "436": [ + 8724, + 8734, + true + ] + }, + "AccountContextHandler.storeAssetsAndUpdateContext": { + "411": [ + 10453, + 10494, + true + ], + "412": [ + 10772, + 10785, + false + ], + "413": [ + 10809, + 10869, + true + ], + "414": [ + 11059, + 11066, + false + ], + "415": [ + 11955, + 11981, + false + ] + } + }, + "67": { + "BalanceHandler._finalizeTransfers": { + "469": [ + 10925, + 10957, + false + ], + "470": [ + 11007, + 11025, + false + ], + "471": [ + 11029, + 11060, + false + ] + }, + "BalanceHandler._setBalanceStorage": { + "472": [ + 19647, + 19677, + false + ], + "473": [ + 19681, + 19711, + true + ], + "474": [ + 19851, + 19869, + false + ], + "475": [ + 19873, + 19906, + true + ], + "476": [ + 20044, + 20062, + true + ], + "477": [ + 20278, + 20318, + true + ] + }, + "BalanceHandler.depositAssetToken": { + "453": [ + 2084, + 2108, + false + ], + "454": [ + 2136, + 2159, + true + ], + "455": [ + 2300, + 2335, + false + ], + "456": [ + 2683, + 2703, + true + ], + "457": [ + 2707, + 2720, + false + ] + }, + "BalanceHandler.depositUnderlyingToken": { + "449": [ + 4733, + 4762, + false + ], + "450": [ + 4790, + 4818, + true + ], + "451": [ + 5069, + 5113, + false + ], + "452": [ + 5176, + 5222, + true + ] + }, + "BalanceHandler.finalize": { + "458": [ + 6768, + 6802, + false + ], + "459": [ + 6843, + 6998, + true + ], + "460": [ + 7067, + 7117, + false + ], + "461": [ + 7158, + 7319, + true + ], + "462": [ + 7935, + 7955, + false + ], + "463": [ + 8269, + 8304, + true + ], + "464": [ + 8308, + 8347, + false + ], + "465": [ + 8890, + 8929, + false + ], + "466": [ + 9199, + 9209, + false + ], + "467": [ + 9836, + 9870, + false + ] + }, + "BalanceHandler.getBalanceStorage": { + "468": [ + 21302, + 21319, + false + ] + }, + "BalanceHandler.loadBalanceState": { + "446": [ + 22128, + 22142, + false + ], + "447": [ + 22146, + 22184, + true + ], + "448": [ + 22274, + 22319, + false + ] + } + }, + "68": { + "Incentives.calculateIncentivesToClaim": { + "493": [ + 958, + 988, + false + ] + }, + "Incentives.claimIncentives": { + "491": [ + 5317, + 5348, + false + ], + "492": [ + 6082, + 6103, + false + ] + } + }, + "69": { + "TokenHandler._deposit": { + "552": [ + 11386, + 11421, + true + ], + "553": [ + 11538, + 11558, + false + ], + "554": [ + 11782, + 11802, + true + ], + "555": [ + 11806, + 11836, + false + ], + "556": [ + 12292, + 12322, + false + ], + "557": [ + 12522, + 12594, + true + ], + "558": [ + 12740, + 12760, + false + ] + }, + "TokenHandler.convertToExternal": { + "542": [ + 13827, + 13879, + false + ] + }, + "TokenHandler.convertToInternal": { + "551": [ + 13557, + 13609, + false + ] + }, + "TokenHandler.mint": { + "547": [ + 6249, + 6289, + true + ], + "548": [ + 6546, + 6586, + false + ], + "549": [ + 6757, + 6797, + false + ], + "550": [ + 6892, + 6930, + false + ] + }, + "TokenHandler.redeem": { + "559": [ + 8140, + 8178, + false + ], + "560": [ + 8389, + 8429, + false + ], + "561": [ + 8556, + 8596, + false + ] + }, + "TokenHandler.transfer": { + "543": [ + 9558, + 9593, + false + ], + "544": [ + 10052, + 10075, + false + ], + "545": [ + 10386, + 10406, + false + ], + "546": [ + 10464, + 10498, + false + ] + } + }, + "70": { + "AaveHandler.convertFromScaledBalanceExternal": { + "408": [ + 5163, + 5192, + false + ], + "409": [ + 5803, + 5846, + true + ], + "410": [ + 5923, + 5951, + true + ] + }, + "AaveHandler.convertToScaledBalanceExternal": { + "405": [ + 3386, + 3410, + false + ], + "406": [ + 3438, + 3461, + true + ], + "407": [ + 3892, + 3951, + true + ] + } + }, + "71": { + "CompoundHandler.mint": { + "478": [ + 877, + 917, + true + ] + }, + "CompoundHandler.redeem": { + "480": [ + 2685, + 2725, + true + ] + }, + "CompoundHandler.redeemCETH": { + "479": [ + 1572, + 1612, + true + ] + } + }, + "72": { + "GenericToken.checkBalanceViaSelector": { + "489": [ + 748, + 755, + true + ] + }, + "GenericToken.checkReturnCode": { + "490": [ + 2337, + 2344, + true + ] + } + }, + "76": { + "AssetRate._getAssetRateStateful": { + "444": [ + 4732, + 4765, + false + ], + "445": [ + 5116, + 5124, + true + ] + } + }, + "77": {}, + "78": { + "DateTime.getTimeUTC0": { + "481": [ + 668, + 689, + true + ] + }, + "DateTime.getTradedMarket": { + "482": [ + 1014, + 1024, + false + ], + "483": [ + 1064, + 1074, + false + ], + "484": [ + 1118, + 1128, + false + ], + "485": [ + 1165, + 1175, + false + ], + "486": [ + 1216, + 1226, + false + ], + "487": [ + 1267, + 1277, + false + ], + "488": [ + 1319, + 1329, + false + ] + } + }, + "79": {}, + "80": {}, + "81": { + "nTokenHandler.getSecondaryRewarder": { + "565": [ + 5399, + 5427, + false + ] + } + }, + "82": { + "nTokenSupply.changeNTokenSupply": { + "566": [ + 5620, + 5639, + false + ], + "567": [ + 5643, + 5685, + true + ], + "568": [ + 6052, + 6080, + true + ] + }, + "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken": { + "569": [ + 2155, + 2186, + false + ], + "570": [ + 2190, + 2213, + false + ], + "571": [ + 2217, + 2232, + false + ], + "572": [ + 3087, + 3131, + true + ] + } + }, + "83": {}, + "84": { + "PortfolioHandler._loadAssetArray": { + "506": [ + 16955, + 16985, + true + ] + }, + "PortfolioHandler._storeAsset": { + "514": [ + 11735, + 11755, + false + ], + "515": [ + 11759, + 11803, + true + ], + "516": [ + 11864, + 11882, + false + ], + "517": [ + 11886, + 11920, + true + ], + "518": [ + 11978, + 11997, + false + ], + "519": [ + 12001, + 12055, + true + ], + "520": [ + 12108, + 12141, + false + ], + "521": [ + 12145, + 12178, + true + ] + }, + "PortfolioHandler._updatePortfolioContext": { + "522": [ + 11089, + 11108, + true + ], + "523": [ + 11112, + 11143, + false + ], + "524": [ + 11268, + 11315, + true + ] + }, + "PortfolioHandler.buildPortfolioState": { + "494": [ + 15658, + 15679, + false + ] + }, + "PortfolioHandler.deleteAsset": { + "507": [ + 12795, + 12837, + true + ], + "508": [ + 12885, + 12921, + true + ], + "509": [ + 13072, + 13126, + false + ], + "510": [ + 13142, + 13204, + true + ], + "511": [ + 13680, + 13709, + false + ], + "512": [ + 13713, + 13755, + false + ], + "513": [ + 13883, + 13910, + false + ] + }, + "PortfolioHandler.getSortedPortfolio": { + "495": [ + 15082, + 15100, + false + ] + }, + "PortfolioHandler.storeAssets": { + "496": [ + 7495, + 7549, + true + ], + "497": [ + 7625, + 7671, + false + ], + "498": [ + 7675, + 7694, + false + ], + "499": [ + 8021, + 8067, + false + ], + "500": [ + 8305, + 8351, + false + ], + "501": [ + 9569, + 9588, + false + ], + "502": [ + 9637, + 9683, + false + ], + "503": [ + 9703, + 9757, + true + ], + "504": [ + 10311, + 10335, + false + ], + "505": [ + 10339, + 10373, + true + ] + } + }, + "85": { + "TransferAssets.encodeAssetId": { + "562": [ + 1043, + 1081, + true + ], + "563": [ + 1100, + 1128, + true + ], + "564": [ + 1147, + 1195, + true + ] + } + }, + "86": {}, + "87": {}, + "88": { + "AssetHandler.getSettlementDate": { + "442": [ + 1112, + 1131, + false + ], + "443": [ + 1135, + 1189, + true + ] + } + }, + "89": {}, + "90": {}, + "91": {}, + "92": {}, + "93": {}, + "94": { + "SafeInt256.abs": { + "536": [ + 1717, + 1722, + false + ] + }, + "SafeInt256.add": { + "525": [ + 1511, + 1539, + true + ] + }, + "SafeInt256.div": { + "531": [ + 1108, + 1115, + false + ], + "532": [ + 1119, + 1135, + true + ] + }, + "SafeInt256.mul": { + "526": [ + 497, + 504, + false + ], + "527": [ + 515, + 521, + true + ], + "528": [ + 525, + 535, + true + ], + "529": [ + 560, + 566, + true + ], + "530": [ + 570, + 580, + true + ] + }, + "SafeInt256.sub": { + "535": [ + 1385, + 1413, + true + ] + }, + "SafeInt256.toInt": { + "534": [ + 2596, + 2626, + true + ] + }, + "SafeInt256.toUint": { + "533": [ + 2473, + 2479, + true + ] + } + } + }, + "statements": { + "141": {}, + "147": {}, + "151": {}, + "152": {}, + "153": {}, + "155": {}, + "157": {}, + "159": {}, + "21": {}, + "22": {}, + "25": {}, + "28": { + "ActionGuards.requireValidAccount": { + "33": [ + 1366, + 1403 + ], + "34": [ + 1446, + 1479 + ], + "35": [ + 1733, + 1755 + ] + } + }, + "29": { + "BatchAction._batchBalanceAndTradeAction": { + "36": [ + 13573, + 13647 + ], + "37": [ + 13730, + 13803 + ], + "38": [ + 13905, + 14074 + ], + "39": [ + 14169, + 14404 + ], + "40": [ + 14525, + 14574 + ], + "41": [ + 14592, + 14660 + ], + "42": [ + 14689, + 14974 + ], + "43": [ + 13264, + 13267 + ], + "44": [ + 15296, + 15370 + ], + "45": [ + 15485, + 15506 + ] + }, + "BatchAction._calculateWithdrawActionAndFinalize": { + "122": [ + 19746, + 19774 + ], + "123": [ + 20161, + 20326 + ], + "124": [ + 20444, + 20462 + ], + "125": [ + 20510, + 20651 + ], + "126": [ + 20662, + 20728 + ] + }, + "BatchAction._checkSufficientCash": { + "132": [ + 22908, + 23195 + ] + }, + "BatchAction._executeDepositAction": { + "116": [ + 15862, + 15895 + ], + "117": [ + 15963, + 15970 + ], + "118": [ + 16333, + 16505 + ], + "119": [ + 16772, + 16859 + ], + "120": [ + 17030, + 17071 + ], + "121": [ + 17092, + 17239 + ] + }, + "BatchAction._executeNTokenAction": { + "229": [ + 17908, + 17963 + ], + "230": [ + 17977, + 18057 + ], + "231": [ + 18324, + 18443 + ], + "232": [ + 18525, + 18882 + ], + "233": [ + 18897, + 19023 + ], + "234": [ + 19203, + 19273 + ] + }, + "BatchAction._executeTrades": { + "65": [ + 21539, + 21669 + ], + "66": [ + 21714, + 21937 + ], + "67": [ + 21987, + 22061 + ], + "68": [ + 22303, + 22491 + ] + }, + "BatchAction._finalizeAccountContext": { + "46": [ + 21013, + 21054 + ], + "47": [ + 21114, + 21174 + ] + }, + "BatchAction._settleAccountIfRequired": { + "48": [ + 23544, + 23610 + ], + "49": [ + 23641, + 23662 + ] + }, + "BatchAction.batchBalanceAction": { + "24": [ + 1388, + 1465 + ], + "25": [ + 1475, + 1503 + ], + "26": [ + 1978, + 2052 + ], + "27": [ + 2135, + 2208 + ], + "28": [ + 2223, + 2392 + ], + "29": [ + 2407, + 2692 + ], + "30": [ + 1679, + 1682 + ], + "31": [ + 2713, + 2761 + ] + }, + "BatchAction.batchBalanceAndTradeAction": { + "0": [ + 3400, + 3477 + ], + "1": [ + 3487, + 3515 + ], + "2": [ + 3619, + 3667 + ] + }, + "BatchAction.batchBalanceAndTradeActionWithCallback": { + "19": [ + 11429, + 11492 + ], + "20": [ + 11502, + 11530 + ], + "21": [ + 11635, + 11676 + ], + "22": [ + 11955, + 12035 + ], + "23": [ + 12502, + 12562 + ] + }, + "BatchAction.batchLend": { + "3": [ + 4605, + 4682 + ], + "4": [ + 4692, + 4720 + ], + "5": [ + 5534, + 5608 + ], + "6": [ + 5787, + 5809 + ], + "7": [ + 5900, + 5971 + ], + "8": [ + 5877, + 5880 + ], + "9": [ + 6080, + 6153 + ], + "10": [ + 6167, + 6397 + ], + "11": [ + 6486, + 6526 + ], + "12": [ + 8114, + 8172 + ], + "13": [ + 8508, + 8576 + ], + "14": [ + 8903, + 9158 + ], + "15": [ + 9305, + 9358 + ], + "16": [ + 5239, + 5242 + ], + "17": [ + 9680, + 9754 + ], + "18": [ + 9847, + 9895 + ] + }, + "BatchAction.getLibInfo": { + "32": [ + 23876, + 24141 + ] + } + }, + "35": {}, + "38": {}, + "39": {}, + "6": { + "SafeMath.add": { + "343": [ + 2786, + 2832 + ] + }, + "SafeMath.div": { + "341": [ + 4286, + 4330 + ], + "342": [ + 4340, + 4352 + ] + }, + "SafeMath.mul": { + "339": [ + 3619, + 3627 + ], + "340": [ + 3664, + 3720 + ] + }, + "SafeMath.sub": { + "272": [ + 3205, + 3254 + ], + "273": [ + 3264, + 3276 + ] + } + }, + "60": {}, + "61": {}, + "62": { + "LibStorage._getStorageSlot": { + "319": [ + 8727, + 8772 + ] + } + }, + "63": {}, + "65": {}, + "66": { + "AccountContextHandler._clearPortfolioActiveFlags": { + "224": [ + 9497, + 9550 + ], + "225": [ + 9568, + 9580 + ], + "226": [ + 9608, + 9629 + ], + "227": [ + 9650, + 9663 + ] + }, + "AccountContextHandler.getAccountContext": { + "133": [ + 743, + 764 + ] + }, + "AccountContextHandler.isActiveInBalances": { + "138": [ + 4149, + 4215 + ], + "139": [ + 4367, + 4378 + ], + "140": [ + 4627, + 4715 + ], + "141": [ + 4744, + 4773 + ], + "142": [ + 4794, + 4806 + ] + }, + "AccountContextHandler.isBitmapEnabled": { + "103": [ + 1219, + 1262 + ] + }, + "AccountContextHandler.mustSettleAssets": { + "134": [ + 3350, + 3420 + ], + "135": [ + 3649, + 3735 + ] + }, + "AccountContextHandler.setAccountContext": { + "114": [ + 1029, + 1060 + ], + "115": [ + 1070, + 1104 + ] + }, + "AccountContextHandler.setActiveCurrency": { + "191": [ + 5423, + 5488 + ], + "192": [ + 5766, + 5773 + ], + "193": [ + 6965, + 7106 + ], + "194": [ + 7124, + 7131 + ], + "195": [ + 7350, + 7383 + ], + "196": [ + 7457, + 7478 + ], + "197": [ + 7496, + 7564 + ], + "198": [ + 7582, + 7589 + ], + "199": [ + 8002, + 8059 + ], + "200": [ + 7737, + 7817 + ], + "201": [ + 8147, + 8221 + ], + "202": [ + 8239, + 8246 + ], + "203": [ + 8389, + 8396 + ], + "204": [ + 8410, + 8470 + ], + "205": [ + 8484, + 8505 + ], + "206": [ + 8519, + 8530 + ], + "207": [ + 8626, + 8633 + ], + "208": [ + 8716, + 8735 + ], + "209": [ + 8777, + 8906 + ] + }, + "AccountContextHandler.storeAssetsAndUpdateContext": { + "104": [ + 10389, + 10435 + ], + "105": [ + 10445, + 10495 + ], + "106": [ + 10541, + 10591 + ], + "107": [ + 10801, + 10870 + ], + "108": [ + 11082, + 11156 + ], + "109": [ + 11232, + 11307 + ], + "110": [ + 11426, + 11519 + ], + "111": [ + 12001, + 12083 + ], + "112": [ + 12151, + 12198 + ], + "113": [ + 12111, + 12136 + ] + } + }, + "67": { + "BalanceHandler._finalizeTransfers": { + "175": [ + 10973, + 10986 + ], + "176": [ + 11628, + 11862 + ], + "177": [ + 12038, + 12125 + ], + "178": [ + 12352, + 12465 + ], + "179": [ + 12532, + 12620 + ] + }, + "BalanceHandler._setBalanceStorage": { + "183": [ + 19639, + 19712 + ], + "184": [ + 19843, + 19907 + ], + "185": [ + 20036, + 20063 + ], + "186": [ + 20270, + 20319 + ], + "187": [ + 20374, + 20426 + ], + "188": [ + 20555, + 20621 + ], + "189": [ + 20436, + 20488 + ], + "190": [ + 20498, + 20545 + ] + }, + "BalanceHandler.depositAssetToken": { + "82": [ + 2110, + 2118 + ], + "83": [ + 2128, + 2160 + ], + "84": [ + 2418, + 2574 + ], + "85": [ + 3339, + 3419 + ], + "86": [ + 3473, + 3553 + ], + "87": [ + 3568, + 3594 + ], + "88": [ + 3625, + 3691 + ], + "89": [ + 4016, + 4170 + ] + }, + "BalanceHandler.depositUnderlyingToken": { + "75": [ + 4764, + 4772 + ], + "76": [ + 4782, + 4819 + ], + "77": [ + 5168, + 5238 + ], + "78": [ + 5269, + 5380 + ], + "79": [ + 6101, + 6189 + ], + "80": [ + 6200, + 6234 + ] + }, + "BalanceHandler.finalize": { + "90": [ + 6818, + 7042 + ], + "91": [ + 7133, + 7361 + ], + "92": [ + 7584, + 7754 + ], + "93": [ + 7971, + 8055 + ], + "94": [ + 8101, + 8244 + ], + "95": [ + 8069, + 8086 + ], + "96": [ + 8725, + 8803 + ], + "97": [ + 8818, + 8871 + ], + "98": [ + 8949, + 9128 + ], + "99": [ + 9157, + 9174 + ], + "100": [ + 9225, + 9516 + ], + "101": [ + 9537, + 9821 + ], + "102": [ + 10025, + 10098 + ] + }, + "BalanceHandler.getBalanceStorage": { + "143": [ + 21190, + 21234 + ], + "144": [ + 21244, + 21288 + ], + "145": [ + 21494, + 21586 + ], + "146": [ + 21617, + 21675 + ], + "147": [ + 21695, + 21735 + ] + }, + "BalanceHandler.loadBalanceState": { + "54": [ + 22120, + 22185 + ], + "55": [ + 22223, + 22259 + ], + "56": [ + 22335, + 22583 + ], + "57": [ + 22614, + 22648 + ], + "58": [ + 22662, + 22698 + ], + "59": [ + 22712, + 22742 + ], + "60": [ + 22756, + 22793 + ], + "61": [ + 22814, + 22844 + ], + "62": [ + 22854, + 22904 + ], + "63": [ + 22914, + 22948 + ], + "64": [ + 22958, + 22996 + ] + } + }, + "68": { + "Incentives.calculateIncentivesToClaim": { + "286": [ + 1219, + 1631 + ], + "287": [ + 1737, + 1767 + ], + "288": [ + 1927, + 1964 + ], + "289": [ + 2927, + 3201 + ], + "290": [ + 3997, + 4155 + ] + }, + "Incentives.claimIncentives": { + "180": [ + 4979, + 5157 + ], + "181": [ + 5364, + 6057 + ], + "182": [ + 6105, + 6163 + ] + } + }, + "69": { + "TokenHandler._deposit": { + "258": [ + 11574, + 11682 + ], + "259": [ + 11703, + 11767 + ], + "260": [ + 12161, + 12267 + ], + "261": [ + 12514, + 12595 + ], + "262": [ + 12776, + 12835 + ], + "263": [ + 12866, + 12897 + ] + }, + "TokenHandler._getToken": { + "155": [ + 1720, + 2122 + ] + }, + "TokenHandler.convertToExternal": { + "73": [ + 13881, + 13894 + ], + "74": [ + 14429, + 14502 + ] + }, + "TokenHandler.convertToInternal": { + "169": [ + 13611, + 13624 + ], + "170": [ + 13634, + 13707 + ] + }, + "TokenHandler.getAssetToken": { + "81": [ + 1085, + 1120 + ] + }, + "TokenHandler.getUnderlyingToken": { + "72": [ + 1228, + 1262 + ] + }, + "TokenHandler.mint": { + "165": [ + 6677, + 6736 + ], + "166": [ + 6813, + 6871 + ], + "167": [ + 6946, + 6982 + ], + "168": [ + 7271, + 7330 + ] + }, + "TokenHandler.redeem": { + "275": [ + 8194, + 8279 + ], + "276": [ + 8449, + 8531 + ], + "277": [ + 8616, + 8714 + ], + "278": [ + 8918, + 8963 + ] + }, + "TokenHandler.transfer": { + "158": [ + 9499, + 9543 + ], + "159": [ + 9864, + 10027 + ], + "160": [ + 10408, + 10443 + ], + "161": [ + 10592, + 10672 + ], + "162": [ + 10703, + 10922 + ] + }, + "TokenHandler.transferIncentive": { + "293": [ + 14604, + 14691 + ] + } + }, + "70": { + "AaveHandler._getReserveNormalizedIncome": { + "274": [ + 6266, + 6416 + ] + }, + "AaveHandler.convertFromScaledBalanceExternal": { + "255": [ + 5194, + 5202 + ], + "256": [ + 5795, + 5847 + ], + "257": [ + 5916, + 5981 + ] + }, + "AaveHandler.convertToScaledBalanceExternal": { + "171": [ + 3412, + 3420 + ], + "172": [ + 3430, + 3462 + ], + "173": [ + 3884, + 3952 + ], + "174": [ + 4013, + 4067 + ] + }, + "AaveHandler.mint": { + "269": [ + 1271, + 1450 + ] + }, + "AaveHandler.redeem": { + "331": [ + 1953, + 2124 + ], + "332": [ + 2134, + 2293 + ] + } + }, + "71": { + "CompoundHandler.mint": { + "270": [ + 869, + 926 + ] + }, + "CompoundHandler.mintCETH": { + "271": [ + 598, + 658 + ] + }, + "CompoundHandler.redeem": { + "333": [ + 2677, + 2736 + ], + "334": [ + 2902, + 2963 + ], + "335": [ + 3048, + 3141 + ] + }, + "CompoundHandler.redeemCETH": { + "328": [ + 1564, + 1623 + ], + "329": [ + 1690, + 1751 + ], + "330": [ + 1836, + 1906 + ] + } + }, + "72": { + "GenericToken.checkBalanceViaSelector": { + "267": [ + 740, + 756 + ], + "268": [ + 766, + 811 + ] + }, + "GenericToken.checkReturnCode": { + "327": [ + 2329, + 2354 + ] + }, + "GenericToken.safeTransferIn": { + "326": [ + 1506, + 1575 + ] + }, + "GenericToken.safeTransferOut": { + "265": [ + 1295, + 1345 + ], + "266": [ + 1355, + 1372 + ] + }, + "GenericToken.transferNativeTokenOut": { + "264": [ + 1127, + 1160 + ] + } + }, + "76": { + "AssetRate._getAssetRateStateful": { + "151": [ + 4993, + 5020 + ], + "152": [ + 5051, + 5094 + ], + "153": [ + 5108, + 5125 + ], + "154": [ + 5176, + 5226 + ] + }, + "AssetRate._getAssetRateStorage": { + "253": [ + 3154, + 3198 + ], + "254": [ + 3208, + 3260 + ] + }, + "AssetRate.buildAssetRateStateful": { + "71": [ + 6164, + 6413 + ] + } + }, + "77": {}, + "78": { + "DateTime.getTimeUTC0": { + "236": [ + 660, + 690 + ], + "237": [ + 700, + 736 + ] + }, + "DateTime.getTradedMarket": { + "351": [ + 1026, + 1050 + ], + "352": [ + 1076, + 1104 + ], + "353": [ + 1130, + 1151 + ], + "354": [ + 1177, + 1202 + ], + "355": [ + 1228, + 1253 + ], + "356": [ + 1279, + 1305 + ], + "357": [ + 1331, + 1357 + ], + "358": [ + 1368, + 1391 + ] + } + }, + "79": {}, + "80": {}, + "81": { + "nTokenHandler.getNTokenContext": { + "127": [ + 1193, + 1224 + ], + "128": [ + 1234, + 1299 + ], + "129": [ + 1309, + 1358 + ], + "130": [ + 1368, + 1411 + ], + "131": [ + 1421, + 1458 + ] + }, + "nTokenHandler.getSecondaryRewarder": { + "291": [ + 5443, + 5506 + ], + "292": [ + 5537, + 5565 + ] + }, + "nTokenHandler.nTokenAddress": { + "279": [ + 1729, + 1753 + ] + } + }, + "82": { + "nTokenSupply._calculateAdditionalNOTE": { + "350": [ + 4128, + 4388 + ] + }, + "nTokenSupply.changeNTokenSupply": { + "280": [ + 5612, + 5686 + ], + "281": [ + 5728, + 5778 + ], + "282": [ + 5959, + 6033 + ], + "283": [ + 6044, + 6081 + ], + "284": [ + 6119, + 6172 + ], + "285": [ + 6183, + 6214 + ] + }, + "nTokenSupply.getStoredNTokenSupplyFactors": { + "347": [ + 966, + 1005 + ], + "348": [ + 1218, + 1283 + ], + "349": [ + 1293, + 1348 + ] + }, + "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken": { + "336": [ + 1720, + 1871 + ], + "337": [ + 2974, + 3065 + ], + "338": [ + 3079, + 3132 + ] + } + }, + "83": {}, + "84": { + "PortfolioHandler._loadAssetArray": { + "238": [ + 16947, + 16986 + ], + "239": [ + 17584, + 17626 + ], + "240": [ + 17640, + 17678 + ], + "241": [ + 17692, + 17732 + ], + "242": [ + 17746, + 17784 + ], + "243": [ + 17798, + 17822 + ], + "244": [ + 17332, + 17335 + ], + "245": [ + 17843, + 17856 + ] + }, + "PortfolioHandler._sortInPlace": { + "246": [ + 16250, + 16338 + ], + "247": [ + 16120, + 16123 + ], + "248": [ + 16565, + 16608 + ], + "249": [ + 16626, + 16681 + ], + "250": [ + 16699, + 16702 + ], + "251": [ + 16730, + 16733 + ] + }, + "PortfolioHandler._storeAsset": { + "306": [ + 11727, + 11804 + ], + "307": [ + 11856, + 11921 + ], + "308": [ + 11970, + 12056 + ], + "309": [ + 12100, + 12179 + ], + "310": [ + 12229, + 12279 + ], + "311": [ + 12289, + 12335 + ], + "312": [ + 12345, + 12392 + ], + "313": [ + 12402, + 12447 + ] + }, + "PortfolioHandler._updatePortfolioContext": { + "314": [ + 11159, + 11190 + ], + "315": [ + 11210, + 11249 + ], + "316": [ + 11260, + 11316 + ], + "317": [ + 11371, + 11469 + ], + "318": [ + 11480, + 11539 + ] + }, + "PortfolioHandler.buildPortfolioState": { + "50": [ + 15681, + 15693 + ], + "51": [ + 15704, + 15770 + ], + "52": [ + 15780, + 15822 + ], + "53": [ + 15832, + 15885 + ] + }, + "PortfolioHandler.deleteAsset": { + "294": [ + 12787, + 12838 + ], + "295": [ + 12877, + 12922 + ], + "296": [ + 13051, + 13214 + ], + "297": [ + 13253, + 13290 + ], + "298": [ + 13775, + 13804 + ], + "299": [ + 13822, + 13844 + ], + "300": [ + 13587, + 13590 + ], + "301": [ + 14031, + 14084 + ], + "302": [ + 14098, + 14105 + ], + "303": [ + 14421, + 14596 + ], + "304": [ + 14606, + 14657 + ], + "305": [ + 14667, + 14720 + ] + }, + "PortfolioHandler.getSortedPortfolio": { + "136": [ + 15102, + 15115 + ], + "137": [ + 15126, + 15146 + ] + }, + "PortfolioHandler.storeAssets": { + "210": [ + 7487, + 7550 + ], + "211": [ + 7714, + 7744 + ], + "212": [ + 7255, + 7258 + ], + "213": [ + 8611, + 8643 + ], + "214": [ + 8820, + 9055 + ], + "215": [ + 7923, + 7926 + ], + "216": [ + 9590, + 9598 + ], + "217": [ + 9612, + 9771 + ], + "218": [ + 9823, + 10038 + ], + "219": [ + 10053, + 10105 + ], + "220": [ + 10119, + 10142 + ], + "221": [ + 9475, + 9478 + ], + "222": [ + 10303, + 10374 + ], + "223": [ + 10424, + 10576 + ] + } + }, + "85": { + "TransferAssets.encodeAssetId": { + "320": [ + 1035, + 1082 + ], + "321": [ + 1092, + 1129 + ], + "322": [ + 1139, + 1196 + ], + "323": [ + 1207, + 1430 + ] + } + }, + "86": {}, + "87": {}, + "88": { + "AssetHandler.getSettlementDate": { + "344": [ + 1104, + 1190 + ], + "345": [ + 1365, + 1386 + ], + "346": [ + 1689, + 1751 + ] + } + }, + "89": {}, + "90": {}, + "91": {}, + "92": {}, + "93": { + "FloatingPoint56.unpackFrom56Bits": { + "252": [ + 1385, + 1418 + ] + } + }, + "94": { + "SafeInt256.abs": { + "324": [ + 1724, + 1737 + ], + "325": [ + 1752, + 1760 + ] + }, + "SafeInt256.add": { + "69": [ + 1503, + 1540 + ] + }, + "SafeInt256.div": { + "156": [ + 1098, + 1137 + ], + "157": [ + 1245, + 1254 + ] + }, + "SafeInt256.mul": { + "148": [ + 474, + 483 + ], + "149": [ + 506, + 536 + ], + "150": [ + 551, + 581 + ] + }, + "SafeInt256.neg": { + "70": [ + 1619, + 1636 + ] + }, + "SafeInt256.sub": { + "235": [ + 1377, + 1414 + ] + }, + "SafeInt256.toInt": { + "228": [ + 2587, + 2627 + ] + }, + "SafeInt256.toUint": { + "163": [ + 2465, + 2480 + ], + "164": [ + 2490, + 2507 + ] + } + } + } + }, + "dependencies": [ + "ABDKMath64x64", + "AaveHandler", + "AccountContextHandler", + "ActionGuards", + "AssetHandler", + "AssetRate", + "AssetRateAdapter", + "BalanceHandler", + "Bitmap", + "BitmapAssetsHandler", + "CErc20Interface", + "CEtherInterface", + "CTokenInterface", + "CashGroup", + "CompoundHandler", + "Constants", + "DateTime", + "Deployments", + "ExchangeRate", + "FloatingPoint56", + "FreeCollateral", + "FreeCollateralExternal", + "GenericToken", + "IEIP20NonStandard", + "IRewarder", + "Incentives", + "LibStorage", + "Market", + "MigrateIncentives", + "NotionalCallback", + "PortfolioHandler", + "SafeInt256", + "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/SafeMath", + "SettleAssetsExternal", + "SettleBitmapAssets", + "SettlePortfolioAssets", + "StorageLayoutV1", + "TokenHandler", + "TradingAction", + "TransferAssets", + "nTokenCalculations", + "nTokenHandler", + "nTokenMintAction", + "nTokenRedeemAction", + "nTokenSupply" + ], + "deployedBytecode": "60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e3660046141f2565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b79190614641565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614366565b6101f6565b6100936100ee366004614242565b61053e565b6100936101013660046142e6565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b79695949392919061469e565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149c5565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148b4565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149c5565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148b4565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f12565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b3c565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b3c565b6102e3906020810190614579565b61ffff166102f46020830183614579565b61ffff16116103155760405162461bcd60e51b815260040161017a90614964565b60006103246040830183614ad7565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614ad7565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614579565b86919089610c79565b6103b4896103a06020850185614579565b6103ad6040860186614ad7565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a604084016020850161439d565b156104b757600061042a6104216020860186614579565b61ffff16610eef565b9050600061044761043e6020870187614579565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614a95565b505050506104ef565b60006104d26104c96020860186614579565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148b4565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614655565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90610635908990600401614641565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149c5565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148b4565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f12565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614579565b61ffff1661074a6040830160208401614579565b61ffff161161076b5760405162461bcd60e51b815260040161017a90614964565b6107888761077f6040840160208501614579565b85919087610c79565b6107a4878461079a60208501856143b9565b8460400135611605565b6107d487858560608501356107bf60a087016080880161439d565b6107cf60c0880160a0890161439d565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b73__$841fddfe32830bb6dbc3a02d7f16c53722$__73__$b21a4dc043b77aa57922ad9143a3cb040e$__73__$f6541b0d362a0c7d99a2a29cd3d373d61b$__73__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__73__$892f367d396be2b92d3b049e6e62920984$__73__$43fd92ea4ea9b72ca0014644dbfd757564$__909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f62565b600061090285610b2b565b905061090c613f12565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b1d565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b1d565b610984906040810190602001614579565b61ffff166109986040830160208401614579565b61ffff16116109b95760405162461bcd60e51b815260040161017a90614964565b6109d6896109cd6040840160208501614579565b86919088610c79565b6109e8898561079a60208501856143b9565b60006109f760c0830183614ad7565b90501115610a5e576000610a298a610a156040850160208601614579565b610a2260c0860186614ad7565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a087016080880161439d565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90610aff908590600401614641565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f62565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610b8790869085906004016146d8565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061441f565b915050610be2565b90505b919050565b610bef613f90565b610bf7613f90565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fb8565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613f90565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a0f565b60608401518451604051633643f39b60e01b815260009273__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__92633643f39b92610da9928e9290918d908d906004016147cb565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df891906143f0565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b815273__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__9063b58f83ed90610e61908b908b9088908c908c90600401614744565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144be565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7613ff8565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f43614022565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a906148f8565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac614022565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a46565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a906149ed565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148ab565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148ab565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c610100015161204e565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b612187565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e8688612386565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125c5565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b612187565b60109490941b9390506114c5565b505050505050505050565b600061150b612640565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261264d565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612663565b50505050565b60006116e38461264d565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261287e565b608086015261174b85888885611191565b5050505050505050565b600080600080600080611766612894565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a6a565b611815613f62565b600061181f612640565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128a1565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128bf565b9050600181511161191f579050610edb565b610aa3816129e0565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612b98565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612ba5565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bb3565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143d8565b905060008113611b6457600080fd5b969195509350915050565b611b77614022565b6000611b81612bea565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612bf7565b9250505b6000821315611cb2576000611c9c868685612c89565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d7c565b610f7f565b8451610f7f9085611cf185610ee1565b612db7565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e2e565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f40565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fab565b600286606001516005811115611dbb57fe5b141561007b57611dca86613057565b6000611ddb87600001513085612e2e565b9050611def611dea8284613096565b61264d565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e6282600001516130f3565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061317e565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613214565b90506000611f90828860c001518561323a565b9050611f9e8783838861331d565b93506000611fab8361344a565b90506001600160a01b0381161561203357806001600160a01b0316639fc27b9288611fd98b60400151611cf6565b898c60c001518a6040518663ffffffff1660e01b8152600401612000959493929190614857565b600060405180830381600087803b15801561201a57600080fd5b505af115801561202e573d6000803e3d6000fd5b505050505b84156120435761204387866134bc565b505050509392505050565b6000612058612b98565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a357506a7fffffffffffffffffffff8613155b6120ac57600080fd5b600085121580156120c7575069ffffffffffffffffffff8513155b6120d057600080fd5b83156120db57600080fd5b66ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff909316600160701b0266ffffffffffffff60701b19600a9790970b6affffffffffffffffffffff16600160a81b026001600160a81b0363ffffffff909616600160501b0263ffffffff60501b1969ffffffffffffffffffff90981669ffffffffffffffffffff1990961695909517969096169390931793909316939093179390931692909217909155505050565b8260001080156121995750613fff8311155b6121a257600080fd5b8180156121b6575082846060015161ffff16145b156121c0576116d2565b6080840151600090815b6001600160701b031982161561233b5760f082901c613fff1686811480156121ef5750855b1561222757506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612234575085155b15612289576001600160f01b03198516199290921691600360fe1b8316612267576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122955750855b156122ef576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122c957600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b86811180156122fc575085155b1561230a57505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121ca565b84612348575050506116d2565b6009811061235557600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124175760008a6000015182815181106123ac57fe5b602002602001015190506003808111156123c257fe5b8160a0015160038111156123d257fe5b14156123dd57600080fd5b60028160a0015160038111156123ef57fe5b141580156123ff57506060810151155b1561240e5761240e8b836134db565b50600101612390565b5060005b8951518110156124ba5760008a60000151828151811061243757fe5b602002602001015190506002600381111561244e57fe5b8160a00151600381111561245e57fe5b1415612472576080810151600090556124b1565b60018160a00151600381111561248457fe5b141561249d5760808101518061249a838261362a565b50505b6124a98186868661375b565b919650945092505b5060010161241b565b50606089015160006124ca6137be565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125945760008d60200151828151811061250557fe5b60200260200101519050806060015160001415612522575061258c565b60028160a00151600381111561253457fe5b14158015612552575060038160a00151600381111561254f57fe5b14155b61255b57600080fd5b6125678189898961375b565b919950975095506125848184876010811061257e57fe5b0161362a565b600185019450505b6001016124e6565b50601083111580156125ab575064ffffffffff8411155b6125b457600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561263757600160fe1b8281161415612621576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506125ed565b50909392505050565b600080610edb60016137c7565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561267157fe5b14806126885750600483600681111561268657fe5b145b8061269e5750600683600681111561269c57fe5b145b1561276a576126ad84826117be565b60608401516126bc908261287e565b60608501528351604051632128561360e11b815260009173__$892f367d396be2b92d3b049e6e62920984$__91634250ac26916126fd918690600401614ac3565b60206040518083038186803b15801561271557600080fd5b505af4158015612729573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274d91906143d8565b60c086015190915061275f9082610ec5565b60c0860152506116d2565b600583600681111561277857fe5b14156116d257816127a28560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127c05760405162461bcd60e51b815260040161017a9061498e565b60c08401516127cf908361287e565b60c085015283516040516352e73f7760e01b815260009173__$43fd92ea4ea9b72ca0014644dbfd757564$__916352e73f7791612810918790600401614ac3565b60206040518083038186803b15801561282857600080fd5b505af415801561283c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061286091906143d8565b60608601519091506128729082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137c7565b6000620151808210156128b357600080fd5b50620151808106900390565b606060108260ff1611156128d257600080fd5b60006128dc6137be565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561291057600080fd5b5060405190808252806020026020018201604052801561294a57816020015b612937613fb8565b81526020019060019003908161292f5790505b50905060005b8560ff168110156129d657600083826010811061296957fe5b019050600083838151811061297a57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b60608201526080019190915250600101612950565b5095945050505050565b80516000816001600160401b03811180156129fa57600080fd5b50604051908082528060200260200182016040528015612a24578160200160208202803683370190505b50905060005b82811015612a81576000848281518110612a4057fe5b60200260200101519050612a618160000151826020015183604001516137e0565b838381518110612a6d57fe5b602090810291909101015250600101612a2a565b5060015b828110156116d257805b600081118015612ac75750828181518110612aa657fe5b6020026020010151836001830381518110612abd57fe5b6020026020010151115b15612b8f57828181518110612ad857fe5b6020026020010151836001830381518110612aef57fe5b6020026020010151846001840381518110612b0657fe5b60200260200101858481518110612b1957fe5b6020026020010182815250828152505050848181518110612b3657fe5b6020026020010151856001830381518110612b4d57fe5b6020026020010151866001840381518110612b6457fe5b60200260200101878481518110612b7757fe5b60209081029190910101919091525260001901612a8f565b50600101612a85565b600080610edb60066137c7565b600881901c60ff9091161b90565b6000806000612bc061383b565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137c7565b600081612c0657506000610edb565b6000612c11846130f3565b90506000612c1e84613848565b9050816b019d971e4fe8401e74000001600160ff1b0381612c3b57fe5b05811315612c4857600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c7d57612c7881610ee1565b612c7f565b805b9695505050505050565b6000808080600587606001516005811115612ca057fe5b14612cb2576370a0823160e01b612cbb565b630ed1279f60e11b5b9050866020015115612cd7578651612cd4903083612e2e565b92505b8651612ce4908787613869565b866020015180612cf8575060008760800151115b15612d0d578651612d0a903083612e2e565b91505b608087015115612d48576000612d2b88612d268561264d565b611dfa565b9050612d3a886080015161264d565b811315612d4657600080fd5b505b866020015115612d6957612d5f611dea8385613096565b9350505050610aa3565b612d5f8561264d565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612db2573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e0e57600080fd5b505af1158015612e22573d6000803e3d6000fd5b50505050612db26138c1565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612eab5780518252601f199092019160209182019101612e8c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f0b576040519150601f19603f3d011682016040523d82523d6000602084013e612f10565b606091505b509150915081612f1f57600080fd5b808060200190516020811015612f3457600080fd5b50519695505050505050565b612f4861392e565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f7d918590309060009060040161482a565b600060405180830381600087803b158015612f9757600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612fde91906148ab565b602060405180830381600087803b158015612ff857600080fd5b505af115801561300c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061303091906143d8565b905080156130505760405162461bcd60e51b815260040161017a906148da565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612f9757600080fd5b6000828211156130ed576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61310061392e565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061312e908690600401614641565b60206040518083038186803b15801561314657600080fd5b505afa15801561315a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143d8565b60008060028660600151600581111561319357fe5b14156131ab576131a486858561393b565b9050613208565b60006131b686610f3b565b90506005876060015160058111156131ca57fe5b14156131e2576131db8186866139f8565b9150613206565b6001876060015160058111156131f457fe5b141561007b576131db87828787613aae565b505b612c7f6103ea8261264d565b60008061321f613bac565b6000938452602052505060409020546001600160a01b031690565b60008060006132498685613bb9565b50915091506000613258613c4f565b6001600160a01b038816600090815260208290526040812091925061327d8589610ec5565b90508060001315801561329657506001600160601b0381105b61329f57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff87106132f457600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133de5773__$b21a4dc043b77aa57922ad9143a3cb040e$__63e0c01a72856133528860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161337c9493929190614885565b60206040518083038186803b15801561339457600080fd5b505af41580156133a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133cc91906143d8565b600060e0870181905261010087015290505b613420613419866101000151613413670de0b6b3a764000061340d886134078c60400151611cf6565b90613c5c565b90613cb5565b90613096565b8290613d1c565b9050613438670de0b6b3a764000061340d8486613c5c565b85610100018181525050949350505050565b600080613455612894565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134b15761348a613d76565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612db7565b81515181106134e957600080fd5b60008260600151116134fa57600080fd5b60008260000151828151811061350c57fe5b602002602001015190506002600381111561352357fe5b8160a00151600381111561353357fe5b14158015613551575060038160a00151600381111561354e57fe5b14155b61355a57600080fd5b606083018051600019019052600080805b8551518110156135cd5760008660000151828151811061358757fe5b602002602001015190508281608001511180156135b4575060028160a0015160038111156135b157fe5b14155b156135c457806080015192508193505b5060010161356b565b50818414156135e6575050600260a091909101526108eb565b6000856000015183815181106135f857fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061363d57508151613fff10155b61364657600080fd5b816020015160001080156136635750602082015164ffffffffff10155b61366c57600080fd5b8160400151600010801561368557506040820151600810155b61368e57600080fd5b60608201516a7fffffffffffffffffffff19138015906136bd575060608201516a7fffffffffffffffffffff12155b6136c657600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061376a88613d83565b905084158061377857508085115b15613781578094505b8680613791575060008860600151125b965061ffff8616156137a257600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137d957fe5b0192915050565b6000613fff8411156137f157600080fd5b64ffffffffff83111561380357600080fd5b600882111561381157600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137c7565b6000808212156138625761385b82610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e0e57600080fd5b60006138cb614051565b3d80156138df57602081146138e857600080fd5b600192506138f3565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137c7565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061396f9087906004016148ab565b602060405180830381600087803b15801561398957600080fd5b505af115801561399d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139c191906143d8565b905080156139e15760405162461bcd60e51b815260040161017a9061491d565b476139ec8184613096565b9350612d728685612d7c565b6000613a18613a138560000151613a0e8561264d565b612bf7565b611cf6565b9050613a2261392e565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a549185908890600401614807565b602060405180830381600087803b158015613a6e57600080fd5b505af1158015613a82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aa691906143d8565b509392505050565b82516000908190613ac790306370a0823160e01b612e2e565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613afb91906148ab565b602060405180830381600087803b158015613b1557600080fd5b505af1158015613b29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b4d91906143d8565b90508015613b6d5760405162461bcd60e51b815260040161017a9061491d565b8551600090613b8490306370a0823160e01b612e2e565b9050613b908184613096565b9350613ba187600001518786612db7565b505050949350505050565b600080610edb60036137c7565b6000806000613bc785613df0565b919450925090508084118015613bdd5750600081115b8015613be95750600083115b15613c48576000613bf986611755565b5050509150506000613c24613c1b6305f5e10084613c5c90919063ffffffff16565b84880387613e4c565b9050613c308482613d1c565b93506001600160801b038410613c4557600080fd5b50505b9250925092565b600080610edb60116137c7565b600082613c6b57506000610edb565b82820282848281613c7857fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614b966021913960400191505060405180910390fd5b6000808211613d0b576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d1457fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137c7565b6000808260400151118015613d9d57506040820151600810155b613da657600080fd5b6040820151600210613dbd57506020810151610be2565b6000613dcf6001846040015103613e6e565b6020840151909150610aa3906276a70090613dea9084613096565b90613d1c565b600080600080613dfe613c4f565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261340d6301da9c00818861340789670de0b6b3a7640000613c5c565b60008160011415613e8357506276a700610be2565b8160021415613e96575062ed4e00610be2565b8160031415613eaa57506301da9c00610be2565b8160041415613ebe57506303b53800610be2565b8160051415613ed257506309450c00610be2565b8160061415613ee6575063128a1800610be2565b8160071415613efa57506325143000610be2565b60405162461bcd60e51b815260040161017a9061493d565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115613ff357fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f840112614097578081fd5b5081356001600160401b038111156140ad578182fd5b60208301915083602080830285010111156140c757600080fd5b9250929050565b600082601f8301126140de578081fd5b815160206001600160401b03808311156140f457fe5b6141018283850201614b51565b8381528281019086840160c0808702890186018a101561411f578788fd5b875b878110156141a05781838c031215614137578889fd5b60408051838101818110898211171561414c57fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141878286016141c7565b9181019190915285529386019391810191600101614121565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614b85565b805160ff81168114610be257600080fd5b600080600060408486031215614206578283fd5b61420f8461406f565b925060208401356001600160401b03811115614229578283fd5b61423586828701614086565b9497909650939450505050565b600080600080600060608688031215614259578081fd5b6142628661406f565b945060208601356001600160401b038082111561427d578283fd5b61428989838a01614086565b909650945060408801359150808211156142a1578283fd5b818801915088601f8301126142b4578283fd5b8135818111156142c2578384fd5b8960208285010111156142d3578384fd5b9699959850939650602001949392505050565b6000806000604084860312156142fa578283fd5b6143038461406f565b925060208401356001600160401b038082111561431e578384fd5b818601915086601f830112614331578384fd5b81358181111561433f578485fd5b87602060c083028501011115614353578485fd5b6020830194508093505050509250925092565b60008060006040848603121561437a578081fd5b6143838461406f565b925060208401356001600160401b03811115614229578182fd5b6000602082840312156143ae578081fd5b8135610aa381614b74565b6000602082840312156143ca578081fd5b813560078110610aa3578182fd5b6000602082840312156143e9578081fd5b5051919050565b60008060408385031215614402578182fd5b82519150602083015161441481614b74565b809150509250929050565b600060a08284031215614430578081fd5b60405160a081018181106001600160401b038211171561444c57fe5b604052825164ffffffffff81168114614463578283fd5b815260208301516001600160f81b03198116811461447f578283fd5b6020820152614490604084016141e1565b60408201526144a1606084016141d6565b60608201526144b2608084016141af565b60808201529392505050565b600080604083850312156144d0578182fd5b82516001600160401b03808211156144e6578384fd5b90840190608082870312156144f9578384fd5b60405160808101818110838211171561450e57fe5b60405282518281111561451f578586fd5b61452b888286016140ce565b82525060208301518281111561453f578586fd5b61454b888286016140ce565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b60006020828403121561458a578081fd5b8135610aa381614b85565b81835260006001600160fb1b038311156145ad578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561463657815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061462157fe5b88015260c090960195908201906001016145dc565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147786101008401826145c9565b90506020860151607f198483030160a085015261479582826145c9565b915050604086015160c0840152606086015160e084015282810360608401526147bf818587614595565b98975050505050505050565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def9083018486614595565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614aed578283fd5b8301803591506001600160401b03821115614b06578283fd5b60209081019250810236038213156140c757600080fd5b6000823560de19833603018112614b32578182fd5b9190910192915050565b60008235605e19833603018112614b32578182fd5b6040518181016001600160401b0381118282101715614b6c57fe5b604052919050565b8015158114614b8257600080fd5b50565b61ffff81168114614b8257600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122032811f7f2dfaed6ae73f5ee82dde37e34e8a29d87704373d06746e0114bf0ee664736f6c63430007060033", + "deployedSourceMap": "591:23559:29:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3235:439;;;;;;:::i;:::-;;:::i;:::-;;1035:28:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4487:5415:29;;;;;;;;;;-1:-1:-1;4487:5415:29;;;;;:::i;:::-;;:::i;11159:1420::-;;;;;;:::i;:::-;;:::i;1241:1527::-;;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;23767:381:29:-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;3235:439::-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;;;;;;;;;319:1;960:16;:27;-1:-1:-1;;;;;3408:21:29;::::1;3419:10;3408:21;::::0;:52:::1;;-1:-1:-1::0;3433:10:29::1;3455:4;3433:27;3408:52;3400:77;;;;-1:-1:-1::0;;;3400:77:29::1;;;;;;;:::i;:::-;3487:28;3507:7;3487:19;:28::i;:::-;3525:36;3564:45;3592:7;3601;;3564:27;:45::i;:::-;3525:84;;3619:48;3643:7;3652:14;3619:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;3235:439:29:o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;4487:5415:29:-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;319:1;960:16;:27;-1:-1:-1;;;;;4613:21:29;::::1;4624:10;4613:21;::::0;:52:::1;;-1:-1:-1::0;4638:10:29::1;4660:4;4638:27;4613:52;4605:77;;;;-1:-1:-1::0;;;4605:77:29::1;;;;;;;:::i;:::-;4692:28;4712:7;4692:19;:28::i;:::-;4731:36;4770:33;4795:7;4770:24;:33::i;:::-;4731:72;;4980:36;5019:127;5069:7;5090:14;:31;;;5135:1;5019:36;:127::i;:::-;4980:166;;5156:32;;:::i;:::-;5204:9;5199:4170;5219:18:::0;;::::1;5199:4170;;;5258:25;5286:7;;5294:1;5286:10;;;;;;;;;;;;;;;;;;:::i;:::-;5258:38:::0;-1:-1:-1;5509:5:29;;5505:118:::1;;5562:7;;5574:1;5570;:5;5562:14;;;;;;;;;;;;;;;;;;:::i;:::-;:25;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;5542:45;;:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;:45;;;5534:74;;;;-1:-1:-1::0;;;5534:74:29::1;;;;;;;:::i;:::-;5733:17;5753:13;;::::0;::::1;:6:::0;:13:::1;:::i;:::-;:20:::0;-1:-1:-1;;5795:13:29;5787:22:::1;;;::::0;::::1;;5847:9;5842:169;5866:9;5862:1;:13;5842:169;;;5949:20;5921:13;;::::0;::::1;::::0;::::1;:::i;:::-;5935:1;5921:16;;;;;;;;;;;;;5908:31;;:62;;;5900:71;;;::::0;::::1;;5877:3;;5842:169;;;-1:-1:-1::0;6080:73:29::1;6110:7:::0;6119:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;6080:12:::0;;:73;6138:14;6080:29:::1;:73::i;:::-;6214:183;6246:7:::0;6271:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;6306:13;;::::0;::::1;:6:::0;:13:::1;:::i;:::-;6337:14;6369;6214;:183::i;:::-;6168:26;::::0;::::1;6167:230:::0;;;;-1:-1:-1;6524:1:29::1;-1:-1:-1::0;6494:31:29::1;6486:40;;;::::0;::::1;;6978:19;7000:68;:62;7035:12;:26;;;7000:12;:30;;;:34;;:62;;;;:::i;:::-;:66;:68::i;:::-;6978:90;;7101:1;7086:12;:16;7082:2109;;;7126:24;::::0;;;::::1;::::0;::::1;;:::i;:::-;7122:2055;;;7323:29;7355:51;7388:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;7355:51;;:32;:51::i;:::-;7323:83:::0;-1:-1:-1;7428:28:29::1;7459:50;7491:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;7459:50;;:31;:50::i;:::-;7428:81:::0;-1:-1:-1;7531:31:29::1;7565:71;7599:36;:2:::0;7622:12;7599:22:::1;:36::i;:::-;7565:15:::0;;:33:::1;:71::i;:::-;7531:105;;429:3:60;7663:15:29;:24;;;:61;7659:536;;;8141:31;:24:::0;8170:1:::1;8141:28;:31::i;:::-;8114:58;;7659:536;8387:26;8416:70;:12:::0;8452:7;8461:24;8416:35:::1;:70::i;:::-;8387:99;;8539:12;8516:19;:35;;8508:68;;;;-1:-1:-1::0;;;8508:68:29::1;;;;;;;:::i;:::-;7122:2055;;;;;;;8810:23;8836:45;8863:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;8836:45;;:26;:45::i;:::-;8810:71:::0;-1:-1:-1;8903:255:29::1;8959:7:::0;8992:42:::1;8810:71:::0;9021:12;8992:28:::1;:42::i;:::-;8903:12:::0;;:255;9060:5:::1;8903:30;:255::i;:::-;;7122:2055;;9305:53;:12:::0;9327:7;9336:14;9352:5:::1;9305:21;:53::i;:::-;-1:-1:-1::0;;5239:3:29::1;::::0;;::::1;::::0;-1:-1:-1;5199:4170:29::1;::::0;-1:-1:-1;5199:4170:29::1;;;9549:32;:14;:30;:32::i;:::-;9544:221;;9680:74;:14:::0;9723:7;9732:14;9748:5:::1;9680:42;:74::i;:::-;9847:48;9871:7;9880:14;9847:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;;;4487:5415:29:o;11159:1420::-;11464:10;11437:38;;;;:26;:38;;;;;;;;11429:63;;;;-1:-1:-1;;;11429:63:29;;;;;;;:::i;:::-;11502:28;11522:7;11502:19;:28::i;:::-;11541:36;11580:45;11608:7;11617;;11580:27;:45::i;:::-;11541:84;-1:-1:-1;11635:41:29;11541:84;11668:7;11635:32;:41::i;:::-;11955:80;;-1:-1:-1;;;11955:80:29;;11972:10;;11955:45;;:80;;11972:10;;12013:7;;12022:12;;;;11955:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;12050:22:29;;;;-1:-1:-1;;;;;;12050:30:29;;12046:527;;12502:60;;-1:-1:-1;;;12502:60:29;;:22;;:51;;:60;;12554:7;;12502:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12046:527;11159:1420;;;;;;:::o;1241:1527::-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;319:1;960:16;:27;-1:-1:-1;;;;;1396:21:29;::::1;1407:10;1396:21;::::0;:52:::1;;-1:-1:-1::0;1421:10:29::1;1443:4;1421:27;1396:52;1388:77;;;;-1:-1:-1::0;;;1388:77:29::1;;;;;;;:::i;:::-;1475:28;1495:7;1475:19;:28::i;:::-;1514:36;1553:33;1578:7;1553:24;:33::i;:::-;1514:72;;1596:32;;:::i;:::-;1644:9;1639:1064;1659:18:::0;;::::1;1639:1064;;;1698:29;1730:7;;1738:1;1730:10;;;;;;;;;;;;1698:42;;1957:1;1953;:5;1949:118;;;2006:7;;2018:1;2014;:5;2006:14;;;;;;;;;;;;:25;;;;;;;;;;:::i;:::-;1986:45;;:17;::::0;;;::::1;::::0;::::1;;:::i;:::-;:45;;;1978:74;;;;-1:-1:-1::0;;;1978:74:29::1;;;;;;;:::i;:::-;2135:73;2165:7:::0;2174:17:::1;::::0;;;::::1;::::0;::::1;;:::i;:::-;2135:12:::0;;:73;2193:14;2135:29:::1;:73::i;:::-;2223:169;2262:7:::0;2287:12;2317:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;2352:6;:26;;;2223:21;:169::i;:::-;2407:285;2460:7:::0;2485:14;2517:12;2547:38:::1;::::0;::::1;;2603:32;::::0;;;::::1;::::0;::::1;;:::i;:::-;2653:25;::::0;;;::::1;::::0;::::1;;:::i;:::-;2407:35;:285::i;:::-;-1:-1:-1::0;1679:3:29::1;;1639:1064;;;;2713:48;2737:7;2746:14;2713:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;;1241:1527:29:o;920:26:63:-;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;23767:381:29:-;23897:31;23943:26;23984:29;24028:22;24064:25;24104:27;23767:381;;;;;;:::o;1296:466:28:-;-1:-1:-1;;;;;1374:28:28;;1366:37;;;;;;-1:-1:-1;;;;;1454:24:28;;1473:4;1454:24;;1446:33;;;;;;1503:16;1684:39;1715:7;1684:30;:39::i;:::-;1489:234;;;;;;;;1741:8;1753:1;1741:13;1733:22;;;;;;1296:466;;:::o;12585:2928:29:-;12723:21;;:::i;:::-;12756:36;12795:33;12820:7;12795:24;:33::i;:::-;12756:72;;12838:32;;:::i;:::-;13047:36;13086:127;13136:7;13157:14;:31;;;13202:1;13086:36;:127::i;:::-;13047:166;;13229:9;13224:1761;13244:18;;;13224:1761;;;13283:39;13325:7;;13333:1;13325:10;;;;;;;;;;;;;;;;;;:::i;:::-;13283:52;-1:-1:-1;13548:5:29;;13544:118;;13601:7;;13613:1;13609;:5;13601:14;;;;;;;;;;;;;;;;;;:::i;:::-;:25;;;;;;;;;:::i;:::-;13581:45;;:17;;;;;;;;:::i;:::-;:45;;;13573:74;;;;-1:-1:-1;;;13573:74:29;;;;;;;:::i;:::-;13730:73;13760:7;13769:17;;;;;;;;:::i;:::-;13730:12;;:73;13788:14;13730:29;:73::i;:::-;13905:169;13944:7;13969:12;13999:17;;;;:6;:17;:::i;13905:169::-;14116:1;14093:13;;;;:6;:13;:::i;:::-;:20;;:24;14089:586;;;14137:14;14197:207;14233:7;14262:17;;;;;;;;:::i;:::-;14301:13;;;;:6;:13;:::i;:::-;14336:14;14372;14197;:207::i;:::-;14169:235;-1:-1:-1;14169:235:29;-1:-1:-1;14522:1:29;14512:11;;14508:66;;;14525:49;14546:12;14560:13;:7;:11;:13::i;:::-;14525:20;:49::i;:::-;14621:26;;;;:39;;14652:7;14621:30;:39::i;:::-;14592:26;;;:68;-1:-1:-1;14089:586:29;14689:285;14742:7;14767:14;14799:12;14829:38;;;;14885:32;;;;;;;;:::i;14689:285::-;-1:-1:-1;13264:3:29;;13224:1761;;;;15165:32;:14;:30;:32::i;:::-;15160:221;;15296:74;:14;15339:7;15348:14;15364:5;15296:42;:74::i;:::-;-1:-1:-1;15492:14:29;;-1:-1:-1;;12585:2928:29;;;;;;:::o;20741:450::-;21013:41;:14;21046:7;21013:32;:41::i;:::-;21068:22;;;;-1:-1:-1;;;;;;21068:30:29;;21064:121;;21114:60;;-1:-1:-1;;;21114:60:29;;:22;;:51;;:60;;21166:7;;21114:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23208:471;23292:21;;:::i;:::-;23329:36;23368:48;23408:7;23368:39;:48::i;:::-;23329:87;;23430:33;:14;:31;:33::i;:::-;23426:247;;;23551:59;;-1:-1:-1;;;23551:59:29;;:20;;:34;;:59;;23586:7;;23595:14;;23551:59;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23544:66;;;;;23426:247;23648:14;-1:-1:-1;23208:471:29;;;;:::o;15438:477:84:-;15584:21;;:::i;:::-;15617:27;;:::i;:::-;15658:21;;;15654:39;;15688:5;-1:-1:-1;15681:12:84;;15654:39;15725:45;15744:7;15753:16;15725:18;:45::i;:::-;15704:66;;15780:42;;;:23;;;:42;15871:13;-1:-1:-1;;;;;15850:35:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;15832:15:84;;;:53;:15;15438:477;-1:-1:-1;;;;15438:477:84:o;21924:1079:67:-;22132:10;22128:14;;:1;:14;:56;;;;-1:-1:-1;5408:6:60;22146:38:67;;;;;22128:56;22120:65;;;;;;22223:36;;;;;;22274:45;;:14;;:33;:45::i;:::-;22270:534;;;22545:38;22563:7;22572:10;22545:38;;:17;:38::i;:::-;22495:33;;;22335:248;22451:26;;;22335:248;22401:32;;;22335:248;22353:30;;;22335:248;22270:534;;;22647:1;22614:30;;;:34;;;22662:32;;;:36;;;22712:26;;;:30;;;22756:33;;;:37;22270:534;-1:-1:-1;;22843:1:67;22814:26;;;:30;;;22854:46;;;:50;;;22914:30;;;:34;;;22958;;;;:38;;;;-1:-1:-1;21924:1079:67:o;21197:1311:29:-;21423:14;21439:36;;:::i;:::-;21491:32;:14;:30;:32::i;:::-;21487:1015;;;21599:10;21564:45;;:14;:31;;;:45;;;21539:130;;;;-1:-1:-1;;;21539:130:29;;;;;;;:::i;:::-;21821:31;;;;21870:29;;21740:197;;-1:-1:-1;;;21740:197:29;;21683:17;;21740:13;;:38;;:197;;21796:7;;21821:31;;21917:6;;;;21740:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21714:223;;-1:-1:-1;21714:223:29;-1:-1:-1;21951:125:29;;;;22039:22;;;;;-1:-1:-1;;;22012:49:29;-1:-1:-1;;;;;;21987:74:29;;;21951:125;21487:1015;;;;22331:160;;-1:-1:-1;;;22331:160:29;;:13;;:37;;:160;;22386:7;;22411:10;;22439:14;;22471:6;;;;22331:160;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22331:160:29;;;;;;;;;;;;:::i;:::-;22303:188;-1:-1:-1;22303:188:29;-1:-1:-1;21487:1015:29;21197:1311;;;;;;;;;:::o;1427:120:94:-;1516:5;;;1511:16;;;;1483:8;1532:6;;;1511:28;1503:37;;;;;;1427:120;;;;:::o;1553:90::-;1599:8;1626:10;-1:-1:-1;;1634:1:94;1626:3;:10::i;5904:516:76:-;5990:26;;:::i;:::-;6033:11;6046:27;6075:29;6120:33;6142:10;6120:21;:33::i;:::-;6183:230;;;;;;;;-1:-1:-1;;;;;6183:230:76;;;;;;;;;;;;6370:27;;:2;:27;6183:230;;;;;;;;-1:-1:-1;;;;5904:516:76;;;:::o;1133:136:69:-;1204:12;;:::i;:::-;1235:27;1245:10;1257:4;1235:9;:27::i;882:468:76:-;1010:6;1155:24;1182:126;1286:2;:21;;;1182:86;658:4;1182:38;1207:12;1182:2;:7;;;:24;;:38;;;;:::i;:::-;:55;;:86::i;:126::-;1155:153;882:468;-1:-1:-1;;;;882:468:76:o;13720:789:69:-;13805:6;429:3:60;13827:5:69;:14;;;:52;13823:71;;;-1:-1:-1;13888:6:69;13881:13;;13823:71;14436:66;429:3:60;14436:26:69;14447:5;:14;;;14436:6;:10;;:26;;;;:::i;4547:1694:67:-;4711:6;4733:29;4729:43;;-1:-1:-1;4771:1:67;4764:8;;4729:43;4817:1;4790:24;:28;4782:37;;;;;;4872:28;4903:56;4935:12;:23;;;4903:56;;:31;:56::i;:::-;4872:87;-1:-1:-1;5098:15:67;5069;:25;;;:44;;;;;;;;;5065:326;;;5213:9;5184:24;5176:46;5168:70;;;;-1:-1:-1;;;5168:70:67;;;;;;;:::i;:::-;5065:326;;;5330:23;;5296:84;;:15;;5321:7;;5296:84;;5355:24;5296;:84::i;:::-;5269:111;;5065:326;5401:23;5427:51;5454:12;:23;;;5427:51;;:26;:51::i;:::-;5401:77;;5488:43;5546:85;5562:12;:23;;;5587:43;5605:24;5587:17;:43::i;:::-;5546:10;;:85;:15;:85::i;:::-;5488:143;-1:-1:-1;5932:34:67;5981:66;:10;5488:143;5981:28;:66::i;:::-;6130:26;;;;5932:115;;-1:-1:-1;6130:59:67;;5932:115;6130:30;:59::i;:::-;6101:26;;;:88;6207:27;-1:-1:-1;;;;4547:1694:67;;;;;:::o;995:132:69:-;1061:12;;:::i;:::-;1092:28;1102:10;1114:5;1092:9;:28::i;1860:2448:67:-;2042:26;2084:24;2080:38;;-1:-1:-1;2117:1:67;2110:8;;2080:38;2158:1;2136:19;:23;2128:32;;;;;;2214:18;2235:51;2262:12;:23;;;2235:51;;:26;:51::i;:::-;2214:72;-1:-1:-1;2319:16:67;2300:5;:15;;;:35;;;;;;;;;2296:289;;;2500:23;;2440:134;;;;2541:19;2440:42;:134::i;:::-;2418:156;;2296:289;2683:5;:20;;;:37;;;;2707:13;2683:37;2679:1623;;;3080:23;;3013:40;;3056:69;;:5;;3071:7;;3056:69;;3105:19;3056:14;:69::i;:::-;3013:112;-1:-1:-1;3361:58:67;:5;3013:112;3361:23;:58::i;:::-;3502:26;;;;3339:80;;-1:-1:-1;3502:51:67;;3339:80;3502:30;:51::i;:::-;3473:26;;;:80;-1:-1:-1;3568:26:67;;-1:-1:-1;3568:26:67;2679:1623;3647:44;:5;3671:19;3647:23;:44::i;:::-;4065:63;;;;3625:66;;-1:-1:-1;4065:105:67;;3625:66;4065:84;:105::i;:::-;4016:46;;;:154;-1:-1:-1;1860:2448:67;;;;;;:::o;6510:3605::-;6698:29;6739:15;6801:1;6768:12;:30;;;:34;6764:289;;;6997:1;6843:150;6962:12;:30;;;6843:93;6901:12;:34;;;6843:12;:32;;;:57;;:93;;;;:::i;:::-;:118;;:150::i;:::-;:155;;6818:224;;;;-1:-1:-1;;;6818:224:67;;;;;;;:::i;:::-;7116:1;7067:12;:46;;;:50;7063:309;;;7318:1;7158:156;7267:12;:46;;;7158:83;7214:12;:26;;;7158:12;:30;;;:55;;:83;;;;:::i;:156::-;:161;;7133:228;;;;-1:-1:-1;;;7133:228:67;;;;;;;:::i;:::-;7693:61;7712:12;7726:7;7735:18;7693;:61::i;:::-;7634:46;;;7584:170;;;7842:26;;;;7584:170;;-1:-1:-1;7817:22:67;;7842:78;;:30;:78::i;:::-;7817:103;-1:-1:-1;7935:20:67;;7931:324;;8004:30;;;;:51;;8039:15;8004:34;:51::i;:::-;7971:30;;;:84;8173:23;;8106:138;;8082:4;;-1:-1:-1;8106:138:67;;;;;-1:-1:-1;;;;;8106:138:67;;;;;;;8215:15;;8106:138;:::i;:::-;;;;;;;;7931:324;8269:30;;;;:35;;;:78;;-1:-1:-1;8308:34:67;;;;:39;;8269:78;8265:920;;;8447:25;8475:142;8582:12;:34;;;8475:85;8529:12;:30;;;8475:12;:32;;;:53;;:85;;;;:::i;:142::-;8447:170;;8725:78;8752:12;8766:7;8775:27;:18;:25;:27::i;:::-;8725:26;:78::i;:::-;-1:-1:-1;8818:32:67;;;:53;;;8890:34;;;;:39;8886:257;;9030:12;:23;;;8954:174;;8994:7;-1:-1:-1;;;;;8954:174:67;;9076:12;:34;;;8954:174;;;;;;:::i;:::-;;;;;;;;8886:257;9170:4;9157:17;;8265:920;;9199:10;9195:332;;;9225:291;9261:7;9286:12;:23;;;9225:291;;9327:12;:30;;;9375:12;:32;;;9425:12;:26;;;9469:12;:33;;;9225:18;:291::i;:::-;9583:23;;9693:30;;;;9537:284;;;;;9693:35;;;:76;;-1:-1:-1;9732:32:67;;;;:37;;9693:76;9537:14;;:284;-1:-1:-1;;;9537:32:67;:284::i;:::-;9869:1;9836:12;:30;;;:34;9832:277;;;10050:22;;;;;-1:-1:-1;;;10050:48:67;-1:-1:-1;;;;;;10025:73:67;;;9832:277;6510:3605;;;;;;;;:::o;1117:152:66:-;1226:31;;;:36;;;;;1117:152::o;9863:2352::-;10240:12;;;;10344:35;:14;10371:7;10344:26;:35::i;:::-;10389:46;;;;;10239:140;;-1:-1:-1;10239:140:66;;-1:-1:-1;10239:140:66;-1:-1:-1;10239:140:66;-1:-1:-1;10453:32:66;10389:14;10453:16;:32::i;:::-;:41;10445:50;;;;;;10541;;;:31;;;:50;10772:13;10767:141;;2023:1:60;10809:60:66;;;;;10801:69;;;;;;11059:7;11055:263;;;11107:22;;;;;-1:-1:-1;;;11107:49:66;-1:-1:-1;;;;;;11082:74:66;;;11055:263;;;11257:22;;;;;-1:-1:-1;;;11232:75:66;;;11055:263;11460:59;11487:14;:31;;;11460:26;:59::i;:::-;-1:-1:-1;;;;;;11426:93:66;:31;;;:93;11530:20;11560:649;11567:24;;11560:649;;11902:35;;;;11955:26;;;11951:147;;12001:82;12019:14;12035:10;12047:4;-1:-1:-1;;;12001:17:66;:82::i;:::-;12196:2;12173:25;;;;;12126:10;-1:-1:-1;11560:649:66;;;9863:2352;;;;;;;;;:::o;837:274::-;938:48;989:30;:28;:30::i;:::-;-1:-1:-1;;;;;1029:14:66;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;;;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;1029:31:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:29;938:81;;-1:-1:-1;1029:14:66;;1075:29;;1029:14;1075:29;837:274;;;:::o;15550:1696:29:-;15749:26;15778:38;15795:20;15778:16;:38::i;:::-;15749:67;;15826:26;15893:1;15870:19;:24;;15862:33;;;;;;15925:22;15910:11;:37;;;;;;;;;15906:1176;;;15963:7;;;;15906:1176;16018:30;16003:11;:45;;;;;;;;;:119;;;-1:-1:-1;16079:43:29;16064:11;:58;;;;;;;;;16003:119;15986:1096;;;16355:150;:12;16403:7;16428:19;16465:5;16355:30;:150::i;:::-;16333:172;;15986:1096;;;16554:35;16539:11;:50;;;;;;;;;:129;;;-1:-1:-1;16620:48:29;16605:11;:63;;;;;;;;;16539:129;16522:560;;;16794:65;:12;16830:7;16839:19;16794:35;:65::i;16522:560::-;16895:37;16880:11;:52;;;;;;;;;16876:206;;;-1:-1:-1;17052:19:29;16876:206;17092:147;17126:12;17152:11;17177:19;17210;17092:20;:147::i;15550:1696::-;;;;;:::o;19359:1376::-;19663:21;19687:49;19704:31;19687:16;:49::i;:::-;19663:73;;19772:1;19754:14;:19;;19746:28;;;;;;19934:25;19930:543;;;20178:148;20279:12;:46;;;20178:79;20230:12;:26;;;20178:12;:30;;;:51;;:79;;;;:::i;:148::-;20161:165;;20441:1;20424:14;:18;20420:42;;;-1:-1:-1;20461:1:29;20420:42;20559:59;;;;:92;;20636:14;20559:76;:92::i;:::-;20510:46;;;:141;20662:66;20510:12;20684:7;20693:14;20709:18;20662:21;:66::i;:::-;;19359:1376;;;;;;;:::o;728:737:81:-;836:17;867:35;916:27;957:22;993:17;1035:47;1085:36;:34;:36::i;:::-;-1:-1:-1;;;;;1163:19:81;;;1131:29;1163:19;;;;;;;;-1:-1:-1;;1163:19:81;;;;1206:18;;;;;1264:35;;;;;;;-1:-1:-1;;;;1331:27:81;;;;-1:-1:-1;1387:24:81;-1:-1:-1;;;1387:24:81;;;;-1:-1:-1;;;;1434:24:81;;;;;;-1:-1:-1;728:737:81:o;22646:556:29:-;22956:1;22929:23;:28;;:223;;;;;23129:23;22977:148;23078:12;:46;;;22977:79;23029:12;:26;;;22977:12;:30;;;:51;;:79;;;;:::i;:148::-;:175;;22929:223;22908:287;;;;-1:-1:-1;;;22908:287:29;;;;;;;:::i;552:219:66:-;619:21;;:::i;:::-;652:48;703:30;:28;:30::i;:::-;-1:-1:-1;;;;;750:14:66;;;;;;;;;;;;;;;;;743:21;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;-1:-1:-1;;;;;;743:21:66;;;;;-1:-1:-1;743:21:66;;552:219;-1:-1:-1;552:219:66:o;3020:732::-;3107:4;3143:15;3173:31;3189:14;3173:15;:31::i;:::-;3169:577;;;3389:31;3410:9;3389:20;:31::i;:::-;3357:29;;:63;;;;-1:-1:-1;3350:70:66;;-1:-1:-1;3350:70:66;3169:577;3660:29;;3656:33;;;;;;:79;;-1:-1:-1;3693:29:66;;:42;;-1:-1:-1;3693:42:66;;-1:-1:-1;3649:86:66;;14791:385:84;14907:23;14946:30;14979:42;14995:7;15004:16;14979:15;:42::i;:::-;14946:75;;15099:1;15082:6;:13;:18;15078:37;;15109:6;-1:-1:-1;15102:13:84;;15078:37;15126:20;15139:6;15126:12;:20::i;3996:817:66:-;4129:4;4157:15;;;;;:57;;-1:-1:-1;5408:6:60;4176:38:66;;;4157:57;4149:66;;;;;;4274:31;;;;4320;;;;:45;;;;4316:62;;;4374:4;4367:11;;;;;4316:62;-1:-1:-1;;;;;;4396:18:66;;;4389:395;;4472:22;4444:51;;;5408:6:60;4444:51:66;4513:17;;;4509:221;;;-1:-1:-1;;;;4634:49:66;;;:81;;-1:-1:-1;4627:88:66;;4509:221;-1:-1:-1;4771:2:66;4757:16;-1:-1:-1;;;;;;4757:16:66;4389:395;;;-1:-1:-1;4801:5:66;;3996:817;-1:-1:-1;;;3996:817:66:o;20724:1018:67:-;20848:18;20880:20;20914:21;20949:28;21002:68;21073:30;:28;:30::i;:::-;-1:-1:-1;;;;;21153:14:67;;21113:37;21153:14;;;;;;;;;;;:26;;;;;;;;21206:28;;;;;;-1:-1:-1;;;;21260:28:67;;;;;-1:-1:-1;21153:14:67;;-1:-1:-1;21302:17:67;;21298:388;;21550:35;;21517:69;;-1:-1:-1;;;21550:35:67;;;;21517:32;:69::i;:::-;21494:92;;21298:388;;;21640:35;;-1:-1:-1;;;21640:35:67;;;;;-1:-1:-1;21298:388:67;21709:26;-1:-1:-1;;;21709:26:67;;;;;;21695:40;;;20724:1018;;-1:-1:-1;20724:1018:67;;-1:-1:-1;20724:1018:67;-1:-1:-1;;20724:1018:67:o;398:190:94:-;478:5;;;-1:-1:-1;;497:7:94;;493:88;;;515:6;;;:20;;;534:1;529;525;:5;;;;;;:10;515:20;506:30;;;;;;493:88;;;560:6;;;:20;;;579:1;574;570;:5;;;;;;:10;560:20;551:30;;;;;4424:809:76;4521:6;4541:16;4571:5;4602:27;4631:29;4664:32;4685:10;4664:20;:32::i;:::-;4601:95;;-1:-1:-1;4601:95:76;-1:-1:-1;4707:11:76;-1:-1:-1;;;;;4732:33:76;;4728:438;;-1:-1:-1;5019:1:76;;-1:-1:-1;658:4:76;4728:438;;;5058:10;-1:-1:-1;;;;;5058:34:76;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5051:43;;5123:1;5116:4;:8;5108:17;;;;;;5184:4;5190:10;;-1:-1:-1;5190:10:76;-1:-1:-1;4424:809:76;-1:-1:-1;;4424:809:76:o;1438:691:69:-;1516:12;;:::i;:::-;1540:63;1606:28;:26;:28::i;:::-;1644:33;1680:17;;;;;;;;;;;:29;;;;;;;;;;;1739:383;;;;;;;1777:25;;-1:-1:-1;;;;;1777:25:69;;1739:383;;1836:27;-1:-1:-1;;;1836:27:69;;;;1739:383;;;;;;;;;-1:-1:-1;;;1956:26:69;;;;1952:2;:30;1739:383;;;;;;;1540:94;;-1:-1:-1;1680:29:69;1739:383;;;;;-1:-1:-1;;;2012:22:69;;;;1739:383;;;;;;;;;;2074:33;;-1:-1:-1;;;2074:33:69;;;;1739:383;;;;;;;;;1438:691;-1:-1:-1;;;;1438:691:69:o;1022:239:94:-;1078:8;1108:1;-1:-1:-1;;1108:7:94;:27;;;;;-1:-1:-1;;;1119:1:94;:16;1108:27;1106:30;1098:39;;;;;;1253:1;1249;:5;;;;;;;1022:239;-1:-1:-1;;;1022:239:94:o;9098:1841:69:-;9524:19;9577:16;9558:5;:15;;;:35;;;;;;;;;9554:484;;;9609:28;9640:30;9659:10;9640:18;:30::i;:::-;9609:61;;9886:141;9948:15;:28;;;9994:19;9886:44;:141::i;:::-;9864:163;;9554:484;;10074:1;10052:19;:23;10048:885;;;10147:17;10167:54;10176:5;10183:7;10200:19;10167:8;:54::i;:::-;10147:74;;10386:5;:20;;;10382:61;;;10433:10;10408:35;;10382:61;10048:885;;;;10483:15;10464:5;:15;;;:34;;;;;;;;;10460:473;;;10592:80;10628:7;10645:25;:19;:23;:25::i;:::-;10592:35;:80::i;:::-;10460:473;;;10749:18;;10703:219;;10785:7;10882:25;:19;:23;:25::i;:::-;10703:28;:219::i;2397:117:94:-;2446:7;2478:1;2473;:6;;2465:15;;;;;;-1:-1:-1;2505:1:94;2397:117::o;5788:1549:69:-;5898:6;;6273:16;6249:10;:20;;;:40;;;;;;;;;:142;;-1:-1:-1;;;6249:142:69;;;-1:-1:-1;;;6249:142:69;6222:169;;6410:23;6436:95;6473:10;:23;;;6506:4;6513:17;6436:36;:95::i;:::-;6410:121;-1:-1:-1;6570:16:69;6546:10;:20;;;:40;;;;;;;;;6542:517;;;6602:28;6633:30;6652:10;6633:30;;:18;:30::i;:::-;6602:61;;6677:59;6694:15;6711:24;6677:16;:59::i;:::-;6542:517;;;;6781:16;6757:10;:20;;;:40;;;;;;;;;6753:306;;;6813:58;6834:10;6846:24;6813:20;:58::i;6753:306::-;6916:14;6892:10;:20;;;:38;;;;;;;;;6888:171;;;6946:36;6971:10;6946:24;:36::i;:::-;7069:21;7093:95;7130:10;:23;;;7163:4;7170:17;7093:36;:95::i;:::-;7069:119;-1:-1:-1;7278:52:69;7295:34;7069:119;7313:15;7295:17;:34::i;:::-;7278:16;:52::i;:::-;7271:59;5788:1549;-1:-1:-1;;;;;;;5788:1549:69:o;12920:794::-;13005:6;429:3:60;13557:5:69;:14;;;:52;13553:71;;;-1:-1:-1;13618:6:69;13611:13;;13553:71;13692:14;;;;13641:66;;:46;:6;429:3:60;13641:10:69;:46::i;3253:821:70:-;3364:6;3386:24;3382:38;;-1:-1:-1;3419:1:70;3412:8;;3382:38;3460:1;3438:19;:23;3430:32;;;;;;3473:28;3504:43;3536:10;3504:31;:43::i;:::-;3473:74;;3609:12;3624:57;3652:15;:28;;;3624:27;:57::i;:::-;3609:72;-1:-1:-1;3800:1:70;3792:9;;457:4;-1:-1:-1;;;;;3916:28:70;;;3915:36;3892:19;:59;;3884:68;;;;;;4062:5;4049:9;457:4;4021:19;:25;:37;4020:47;;;;;;;3253:821;-1:-1:-1;;;;;;3253:821:70:o;10254:2383:67:-;10405:35;10442:34;10488:23;10514:51;10541:12;:23;;;10514:51;;:26;:51::i;:::-;10488:77;;10785:34;10834:76;10863:12;:46;;;10834:10;:28;;:76;;;;:::i;:::-;10785:125;-1:-1:-1;10925:32:67;10921:1710;;10981:1;10984;10973:13;;;;;;;;10921:1710;11007:18;:53;;;;;11059:1;11029:27;:31;11007:53;11003:1628;;;11694:23;;11659:203;;;;11735:7;11814:33;:27;:31;:33::i;:::-;11659:10;;:203;;:17;:203::i;:::-;11628:234;-1:-1:-1;12068:57:67;:10;12097:27;12068:28;:57::i;:::-;12038:87;;11003:1628;;;12412:23;;12383:82;;:10;;12403:7;;12383:82;;12437:27;12383:19;:82::i;:::-;12352:113;-1:-1:-1;12562:58:67;:10;12352:113;12562:28;:58::i;:::-;12532:88;;11003:1628;10254:2383;;;;;;;;;:::o;4318:1852:68:-;4603:23;;4470:25;;4527:15;;4470:25;;4575:52;;;;:27;:52::i;:::-;4552:75;;4795:32;4830:138;4875:12;4901;:34;;;4949:9;4830:31;:138::i;:::-;4795:173;;4999:158;5039:12;5065;5091:24;5129:18;4999:26;:158::i;:::-;4979:178;;5234:18;5255:48;5290:12;5255:34;:48::i;:::-;5234:69;-1:-1:-1;;;;;;5317:31:68;;;5313:755;;5364:8;-1:-1:-1;;;;;5364:21:68;;5403:7;5621:41;:12;:32;;;:39;:41::i;:::-;5680:18;5974:12;:34;;;6026:17;5364:693;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5313:755;6082:21;;6078:85;;6105:58;6136:7;6145:17;6105:30;:58::i;:::-;4318:1852;;;;;;;;;:::o;19219:1409:67:-;19451:68;19522:30;:28;:30::i;:::-;-1:-1:-1;;;;;19602:14:67;;19562:37;19602:14;;;;;;;;;;;:26;;;;;;;;19451:101;;-1:-1:-1;;;19647:30:67;;;;;:64;;-1:-1:-1;19696:15:67;19681:30;;;19647:64;19639:73;;;;;;19868:1;19851:13;:18;;:55;;;;-1:-1:-1;19890:16:67;19873:33;;;19851:55;19843:64;;;;;;20044:18;;20036:27;;;;;;20302:16;20278:40;;;20270:49;;;;;;20374:52;;20555:66;;;;-1:-1:-1;;;20555:66:67;-1:-1:-1;;;;20436:28:67;20498:47;;;;;;-1:-1:-1;;;20498:47:67;-1:-1:-1;;;;;20436:52:67;;;;-1:-1:-1;;;20436:52:67;-1:-1:-1;;;;20374:52:67;;;;-1:-1:-1;;20374:52:67;;;;;;;20436;;;;;;;;20498:47;;;;;;;;20555:66;;;;;;;;;;;-1:-1:-1;;;19219:1409:67:o;5247:3666:66:-;5435:10;5431:1;:14;:56;;;;-1:-1:-1;5408:6:60;5449:38:66;;;5431:56;5423:65;;;;;;5707:8;:57;;;;;5754:10;5719:14;:31;;;:45;;;5707:57;5703:70;;;5766:7;;5703:70;5824:31;;;;5783:14;;;6684:1857;-1:-1:-1;;;;;;6691:14:66;;;6684:1857;;6767:22;6743:47;;;5408:6:60;6743:47:66;6877:17;;;:29;;;;;6898:8;6877:29;6873:272;;;-1:-1:-1;7019:31:66;;;;;-1:-1:-1;;;;;;7074:14:66;;7102:2;7093:11;;;7074:31;;;;7019:87;;;;-1:-1:-1;;;;;;6965:141:66;;;-1:-1:-1;7124:7:66;;-1:-1:-1;7124:7:66;6873:272;7239:10;7232:3;:17;:30;;;;;7254:8;7253:9;7232:30;7228:375;;;-1:-1:-1;;;;;;7369:14:66;;7368:15;7359:24;;;;;-1:-1:-1;;;7405:50:66;;7401:77;;7476:2;7466:6;-1:-1:-1;;;;;7466:12:66;;;;7457:21;;7401:77;-1:-1:-1;;;;;;;7540:23:66;;;7560:2;7551:11;;;7540:23;7530:34;;;;7496:68;:31;;;:68;7582:7;;7228:375;7695:10;7689:3;:16;:28;;;;;7709:8;7689:28;7685:575;;;8046:3;8011:31;;;;-1:-1:-1;;;;;;7764:26:66;;;;:34;;7756:43;;7813:2;7804:11;;7756:60;7746:71;;;;;8011:38;;;8010:48;8002:57;;;;;;-1:-1:-1;;;;;;;8191:29:66;;;8212:1;8203:10;;;;8217:2;8202:17;8191:29;8181:40;;;;8147:74;:31;;;:74;8239:7;;7685:575;8364:10;8358:3;:16;:29;;;;;8379:8;8378:9;8358:29;8354:42;;;8389:7;;;;;;8354:42;-1:-1:-1;;;;;;;8429:23:66;;8466:2;8457:11;;;8429:40;;;;8419:51;;;;;8493:12;;;;-1:-1:-1;;;;;;8493:12:66;;8529:1;8519:11;6684:1857;;;8616:8;8611:22;;8626:7;;;;;8611:22;8733:1;8724:6;:10;8716:19;;;;;;-1:-1:-1;;;;;;8853:26:66;;;;:34;;8845:43;8902:2;8893:11;;;8845:60;8823:83;;;;-1:-1:-1;;;;;;8777:129:66;:31;;;:129;-1:-1:-1;5247:3666:66;;;;:::o;6460:4123:84:-;6583:4;;;;;;;;7195:574;7219:27;;:34;7215:38;;7195:574;;;7274:27;7304:14;:27;;;7332:1;7304:30;;;;;;;;;;;;;;7274:60;;7517:32;7495:54;;;;;;;;:5;:18;;;:54;;;;;;;;;;7487:63;;;;;;7647:24;7625:5;:18;;;:46;;;;;;;;;;:69;;;;-1:-1:-1;7675:14:84;;;;:19;7625:69;7621:138;;;7714:30;7726:14;7742:1;7714:11;:30::i;:::-;-1:-1:-1;7255:3:84;;7195:574;;;;7868:9;7863:1217;7887:27;;:34;7883:38;;7863:1217;;;7942:27;7972:14;:27;;;8000:1;7972:30;;;;;;;;;;;;;;7942:60;;8043:24;8021:46;;;;;;;;:5;:18;;;:46;;;;;;;;;8017:1053;;;8154:17;;;;8132:19;8220:25;;8198:65;;;8327:24;8305:5;:18;;;:46;;;;;;;;;8301:361;;;8461:17;;;;;8611:32;8461:5;:17;8611:11;:32::i;:::-;8301:361;;;8875:180;8920:5;8947:7;8976:25;9023:14;8875:23;:180::i;:::-;8820:235;;-1:-1:-1;8820:235:84;-1:-1:-1;8820:235:84;-1:-1:-1;8017:1053:84;-1:-1:-1;7923:3:84;;7863:1217;;;-1:-1:-1;9145:32:84;;;;9116:26;9280:37;:35;:37::i;:::-;-1:-1:-1;;;;;9394:14:84;;9327:64;9394:14;;;;;;;;;;9187:130;;-1:-1:-1;9418:735:84;9442:14;:24;;;:31;9438:1;:35;9418:735;;;9494:27;9524:14;:24;;;9549:1;9524:27;;;;;;;;;;;;;;9494:57;;9569:5;:14;;;9587:1;9569:19;9565:33;;;9590:8;;;9565:33;9659:24;9637:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;9725:32:84;9703:5;:18;;;:54;;;;;;;;;;9637:120;9612:159;;;;;;9878:160;9919:5;9942:7;9967:25;10010:14;9878:23;:160::i;:::-;9823:215;;-1:-1:-1;9823:215:84;-1:-1:-1;9823:215:84;-1:-1:-1;10053:52:84;10065:5;10072:12;10085:18;10072:32;;;;;;;;10053:11;:52::i;:::-;10141:1;10119:23;;;;9418:735;;9475:3;;9418:735;;;;10333:2;10311:18;:24;;:62;;;;-1:-1:-1;10357:16:84;10339:34;;;10311:62;10303:71;;;;;;-1:-1:-1;10445:7:84;;10466:25;;-1:-1:-1;10466:25:84;-1:-1:-1;10511:18:84;-1:-1:-1;6460:4123:84;-1:-1:-1;;;;6460:4123:84:o;8919:751:66:-;9004:7;;9150:24;9131:43;;9004:7;9302:338;-1:-1:-1;;;;;;9309:14:66;;;9302:338;;-1:-1:-1;;;9343:45:66;;;:77;9339:256;;;-1:-1:-1;;;;;;9516:23:66;;:33;;9506:44;;;;;9578:2;9568:12;9339:256;9627:2;9617:6;-1:-1:-1;;;;;9617:12:66;;;;9608:21;;9302:338;;;-1:-1:-1;9657:6:66;;8919:751;-1:-1:-1;;;8919:751:66:o;1879:229:62:-;1940:48;2005:12;2020:41;2036:24;2020:15;:41::i;2520:163:94:-;2569:6;-1:-1:-1;;;;;2596:1:94;:30;;2587:40;;;;;17289:2001:29;17601:43;17586:11;:58;;;;;;;;;:137;;;-1:-1:-1;17675:48:29;17660:11;:63;;;;;;;;;17586:137;:205;;;-1:-1:-1;17754:37:29;17739:11;:52;;;;;;;;;17586:205;17569:1715;;;17908:55;17929:12;17943:19;17908:20;:55::i;:::-;18006:26;;;;:51;;18037:19;18006:30;:51::i;:::-;17977:26;;;:80;18235:23;;18190:119;;-1:-1:-1;;;18190:119:29;;18168:19;;18190:16;;:27;;:119;;18276:19;;18190:119;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18361:34;;;;18168:141;;-1:-1:-1;18361:82:29;;18168:141;18361:38;:82::i;:::-;18324:34;;;:119;-1:-1:-1;17569:1715:29;;;18479:30;18464:11;:45;;;;;;;;;18460:824;;;18803:19;18585:214;18764:12;:34;;;18585:110;18664:12;:30;;;18585:12;:53;;;:78;;:110;;;;:::i;:214::-;:237;;18525:357;;;;-1:-1:-1;;;18525:357:29;;;;;;;:::i;:::-;18934:34;;;;:89;;18990:19;18934:38;:89::i;:::-;18897:34;;;:126;19114:23;;19057:131;;-1:-1:-1;;;19057:131:29;;19038:16;;19057:18;;:39;;:131;;19155:19;;19057:131;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19232:26;;;;19038:150;;-1:-1:-1;19232:41:29;;19038:150;19232:30;:41::i;:::-;19203:26;;;:70;-1:-1:-1;17289:2001:29;;;;:::o;1267:154:94:-;1390:5;;;1385:16;;;;1323:8;1406:6;;;1385:28;1377:37;;;;;2175:232:62;2241:47;2305:12;2320:40;2336:23;2320:15;:40::i;583:160:78:-;641:7;2399:5:60;668:4:78;:21;;660:30;;;;;;-1:-1:-1;2399:5:60;715:20:78;;707:29;;;583:160::o;16756:1107:84:-;16858:23;588:2;16955:6;:30;;;;16947:39;;;;;;16997:90;17090:37;:35;:37::i;:::-;-1:-1:-1;;;;;17204:14:84;;17137:64;17204:14;;;;;;;;;;16997:130;;-1:-1:-1;17261:28:84;;;-1:-1:-1;;;;;17261:28:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;17228:61;;17305:9;17300:533;17324:6;17320:10;;:1;:10;17300:533;;;17351:42;17396:12;17409:1;17396:15;;;;;;;;17351:60;;17425:27;17455:6;17462:1;17455:9;;;;;;;;;;;;;;;;;;;17603:23;;;;;17584:42;;17657:21;;;;;17640:14;;;:38;;;;17710:22;-1:-1:-1;;;17710:22:84;;;17692:15;;;:40;-1:-1:-1;;;17763:21:84;;;;;;;17746:38;;:14;;;:38;17798:17;;:24;;;;-1:-1:-1;17603:23:84;17332:3;17300:533;;;-1:-1:-1;17850:6:84;16756:1107;-1:-1:-1;;;;;16756:1107:84:o;15921:829::-;16015:13;;15998:14;16015:13;-1:-1:-1;;;;;16061:21:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16061:21:84;;16038:44;;16097:9;16092:257;16112:6;16108:1;:10;16092:257;;;16139:27;16169:6;16176:1;16169:9;;;;;;;;;;;;;;16139:39;;16259:79;16288:5;:16;;;16306:5;:14;;;16322:5;:15;;;16259:28;:79::i;:::-;16250:3;16254:1;16250:6;;;;;;;;;;;;;;;;;:88;-1:-1:-1;16120:3:84;;16092:257;;;-1:-1:-1;16403:1:84;16414:330;16425:6;16421:1;:10;16414:330;;;16459:1;16474:243;16485:1;16481;:5;:28;;;;;16503:3;16507:1;16503:6;;;;;;;;;;;;;;16490:3;16498:1;16494;:5;16490:10;;;;;;;;;;;;;;:19;16481:28;16474:243;;;16589:3;16593:1;16589:6;;;;;;;;;;;;;;16597:3;16605:1;16601;:5;16597:10;;;;;;;;;;;;;;16566:3;16574:1;16570;:5;16566:10;;;;;;;;;;;;;16578:3;16582:1;16578:6;;;;;;;;;;;;;16565:43;;;;;;;;;;16656:6;16663:1;16656:9;;;;;;;;;;;;;;16667:6;16678:1;16674;:5;16667:13;;;;;;;;;;;;;;16627:6;16638:1;16634;:5;16627:13;;;;;;;;;;;;;16642:6;16649:1;16642:9;;;;;;;;;;;;;;;;;16626:55;;;;;-1:-1:-1;;16699:3:84;16474:243;;;-1:-1:-1;16730:3:84;;16414:330;;3638:240:62;3698:68;3782:12;3797:34;3813:17;3797:15;:34::i;1180:245:93:-;1403:1;1394:10;;;1354:21;;;;1393:24;;1180:245::o;2832:435:76:-;2928:27;2957:29;3002:50;3055:32;:30;:32::i;:::-;3097:27;3127:17;;;;;-1:-1:-1;;3127:17:76;;;;3184:13;-1:-1:-1;;;;;3184:13:76;;;-1:-1:-1;;;3234:26:76;;;;;;-1:-1:-1;2832:435:76:o;3993:231:62:-;4051:63;4130:12;4145:32;4161:15;4145;:32::i;4999:989:70:-;5122:25;5163:29;5159:43;;-1:-1:-1;5201:1:70;5194:8;;5159:43;5265:12;5280:44;5308:15;5280:27;:44::i;:::-;5265:59;;5443:10;5456:30;:24;:28;:30::i;:::-;5443:43;-1:-1:-1;5841:5:70;-1:-1:-1;;;;;5841:5:70;5810:36;;;;;5803:3;:43;;5795:52;;;;;;457:4;502:7;5877:11;;;:21;5876:29;5857:16;5923:28;;:58;;5966:15;:9;:13;:15::i;:::-;5923:58;;;5954:9;5923:58;5916:65;4999:989;-1:-1:-1;;;;;;4999:989:70:o;11159:1755:69:-;11277:6;;;;11405:16;11386:5;:15;;;:35;;;;;;;;;:137;;-1:-1:-1;;;11386:137:69;;;-1:-1:-1;;;11386:137:69;11359:164;;11538:5;:20;;;11534:159;;;11629:18;;11592:90;;11657:4;11664:17;11592:36;:90::i;:::-;11574:108;;11534:159;11731:18;;11703:64;;11751:7;11760:6;11703:27;:64::i;:::-;11782:5;:20;;;:54;;;;11835:1;11806:5;:26;;;:30;11782:54;11778:500;;;12214:18;;12177:90;;12242:4;12249:17;12177:36;:90::i;:::-;12161:106;;11778:500;12292:26;;;;:30;12288:354;;12338:31;12372:57;12390:5;12397:31;12414:13;12397:16;:31::i;:::-;12372:17;:57::i;:::-;12338:91;;12550:44;12567:5;:26;;;12550:16;:44::i;:::-;12522:24;:72;;12514:81;;;;;;12288:354;;12740:5;:20;;;12736:172;;;12783:52;12800:34;:13;12818:15;12800:17;:34::i;12783:52::-;12776:59;;;;;;;12736:172;12873:24;12890:6;12873:16;:24::i;12736:172::-;11159:1755;;;;;;;;:::o;824:343:72:-;1127:33;;-1:-1:-1;;;;;1127:25:72;;;:33;;;;;1153:6;;1127:33;;;;1153:6;1127:25;:33;;;;;;;;;;;;;;;;;;;;;824:343;;:::o;1173:206::-;1313:5;-1:-1:-1;;;;;1295:33:72;;1329:7;1338:6;1295:50;;;;;;;;;;;;;-1:-1:-1;;;;;1295:50:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1355:17;:15;:17::i;454:364::-;679:50;;;-1:-1:-1;;;;;679:50:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;679:50:72;-1:-1:-1;;;;;;679:50:72;;;;;662:68;;;;593:15;;;;;;662:16;;;679:50;;662:68;;;;;;679:50;662:68;;;;;;;;;;-1:-1:-1;;662:68:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;620:110;;;;748:7;740:16;;;;;;789:10;778:33;;;;;;;;;;;;;;;-1:-1:-1;778:33:72;;454:364;-1:-1:-1;;;;;;454:364:72:o;873:584:70:-;1271:27;:25;:27::i;:::-;:39;1332:28;;1271:179;;-1:-1:-1;;;1271:179:70;;-1:-1:-1;;;;;1271:39:70;;;;:47;;:179;;1374:24;;1420:4;;1271:39;;:179;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;671:262:71;757:6;775:15;809:5;:18;;;-1:-1:-1;;;;;793:40:71;;834:24;793:66;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;775:84;-1:-1:-1;877:40:71;;869:57;;;;-1:-1:-1;;;869:57:71;;;;;;;:::i;:::-;671:262;;;;;:::o;513:152::-;614:5;:18;;;-1:-1:-1;;;;;598:40:71;;646:9;598:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3128:155:6;3186:7;3218:1;3213;:6;;3205:49;;;;;-1:-1:-1;;;3205:49:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3271:5:6;;;3128:155::o;6164:259:70:-;6248:6;6285:131;6319:27;:25;:27::i;:::-;:39;:83;;-1:-1:-1;;;6319:83:70;;-1:-1:-1;;;;;6319:39:70;;;;:66;;:83;;6386:15;;6319:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7923:1047:69:-;8086:6;;8164:14;8140:10;:20;;;:38;;;;;;;;;8136:679;;;8211:68;8238:10;8250:7;8259:19;8211:26;:68::i;:::-;8194:85;;8136:679;;;8310:28;8341:30;8360:10;8341:18;:30::i;:::-;8310:61;-1:-1:-1;8413:16:69;8389:10;:20;;;:40;;;;;;;;;8385:420;;;8466:65;8485:15;8502:7;8511:19;8466:18;:65::i;:::-;8449:82;;8385:420;;;8580:16;8556:10;:20;;;:40;;;;;;;;;8552:253;;;8633:81;8656:10;8668:15;8685:7;8694:19;8633:22;:81::i;8552:253::-;8136:679;;8925:38;:32;8942:14;8925:16;:32::i;1541:219:81:-;1607:20;1639:41;1683:36;:34;:36::i;:::-;1736:17;;;;;;-1:-1:-1;;1736:17:81;;;;-1:-1:-1;;;;;1736:17:81;;1541:219::o;4730:1491:82:-;4865:7;4898:19;4931:32;5023:59;5058:12;5072:9;5023:34;:59::i;:::-;4884:198;;;;;5129:58;5190:40;:38;:40::i;:::-;-1:-1:-1;;;;;5289:19:82;;5240:46;5289:19;;;;;;;;;;5129:101;;-1:-1:-1;5343:34:82;5350:11;5367:9;5343:23;:34::i;:::-;5319:58;;5625:14;5620:1;:19;;:65;;;;-1:-1:-1;;;;;;5643:42:82;;5620:65;5612:74;;;;;;5728:50;;-1:-1:-1;;5728:50:82;-1:-1:-1;;;;;5728:50:82;;;-1:-1:-1;;;;5959:74:82;-1:-1:-1;;;;;;;;5959:74:82;;;;;;6064:16;6052:28;;6044:37;;;;;;-1:-1:-1;6119:53:82;;;;;-1:-1:-1;;;6119:53:82;-1:-1:-1;;;;;6119:53:82;;;;;;-1:-1:-1;6190:24:82;-1:-1:-1;;4730:1491:82;;;;;:::o;702:3460:68:-;958:26;;;;917:25;;958:30;954:1021;;1239:17;:55;1312:12;1342:41;:12;:32;;;:39;:41::i;:::-;1401:12;:26;;;1584:12;:33;;;1239:392;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1766:1;1737:26;;;:30;;;1927:33;;;:37;1219:412;-1:-1:-1;954:1021:68;2947:254;2982:209;3157:12;:33;;;2982:153;499:4:60;2982:88:68;3045:24;2982:41;:12;:32;;;:39;:41::i;:::-;:62;;:88::i;:::-;:109;;:153::i;:::-;:174;;:209::i;:::-;2947:17;;:21;:254::i;:::-;2927:274;-1:-1:-1;4033:122:68;499:4:60;4033:61:68;:18;4069:24;4033:35;:61::i;:122::-;3997:12;:33;;:158;;;;;702:3460;;;;;;:::o;5133:449:81:-;5208:9;5229:47;5279:36;:34;:36::i;:::-;-1:-1:-1;;;;;5357:19:81;;5325:29;5357:19;;;;;;;;;;5399:28;;5357:19;;-1:-1:-1;5357:19:81;-1:-1:-1;;;5399:28:81;;;;5395:181;;;5450:42;:40;:42::i;:::-;-1:-1:-1;;;;;5450:56:81;;;;;;;;;;;;;;;;;;;-1:-1:-1;5443:63:81;;-1:-1:-1;;5443:63:81;5395:181;5562:1;5537:28;;;;;;14515:183:69;14604:87;336:42:61;14665:7:69;14674:16;14604:28;:87::i;12689:2038:84:-;12803:27;;:34;12795:42;;12787:51;;;;;;12920:1;12885:14;:32;;;:36;12877:45;;;;;;12969:35;13007:14;:27;;;13035:5;13007:34;;;;;;;;;;;;;;12969:72;;13102:24;13072:54;;;;;;;;:13;:26;;;:54;;;;;;;;;;:132;;;;-1:-1:-1;13172:32:84;13142:13;:26;;;:62;;;;;;;;;;13072:132;13051:163;;;;;;13253:32;;;:37;;-1:-1:-1;;13253:37:84;;;-1:-1:-1;;;13531:338:84;13551:27;;:34;13547:38;;13531:338;;;13606:23;13632:14;:27;;;13660:1;13632:30;;;;;;;;;;;;;;13606:56;;13696:13;13680:1;:13;;;:29;:75;;;;-1:-1:-1;13731:24:84;13713:1;:14;;;:42;;;;;;;;;;13680:75;13676:183;;;13791:1;:13;;;13775:29;;13843:1;13822:22;;13676:183;-1:-1:-1;13587:3:84;;13531:338;;;;13892:18;13883:5;:27;13879:236;;;-1:-1:-1;;14060:24:84;14031:26;;;;;:53;14098:7;;13879:236;14328:33;14364:14;:27;;;14392:18;14364:47;;;;;;;;;;;;;;;;;;14524:25;;;;;;14563:23;;;;;14421:175;;;;14633:24;14606;;;;:51;14696:24;14667:26;;:53;;;;-1:-1:-1;;;;;12689:2038:84:o;11592:862::-;11739:16;;11735:20;;;;:68;;-1:-1:-1;11759:16:84;;5408:6:60;-1:-1:-1;11759:44:84;11735:68;11727:77;;;;;;11868:5;:14;;;11864:1;:18;:56;;;;-1:-1:-1;11886:14:84;;;;11904:16;-1:-1:-1;11886:34:84;11864:56;11856:65;;;;;;11982:5;:15;;;11978:1;:19;:77;;;;-1:-1:-1;12001:15:84;;;;4906:1:60;-1:-1:-1;12001:54:84;11978:77;11970:86;;;;;;12127:14;;;;-1:-1:-1;;12108:33:84;;;;:70;;-1:-1:-1;12145:14:84;;;;12163:15;-1:-1:-1;12145:33:84;12108:70;12100:79;;;;;;12262:16;;12229:50;;12320:14;;;;12376:15;;;;12432:14;;;;;12402:45;;;;-1:-1:-1;;;12402:45:84;-1:-1:-1;;12345:47:84;;;;-1:-1:-1;;;12345:47:84;-1:-1:-1;;12289:46:84;;;;;;-1:-1:-1;;12229:50:84;;;;-1:-1:-1;;12229:50:84;;;;;;;12289:46;;;;;;;;12345:47;;;;;12402:45;;;;;;;;;;11592:862::o;10664:882::-;10896:4;10914:7;10935;10967:22;10992:25;:5;:23;:25::i;:::-;10967:50;-1:-1:-1;11089:19:84;;;:54;;;11129:14;11112;:31;11089:54;11085:116;;;11176:14;11159:31;;11085:116;11220:7;:29;;;;11248:1;11231:5;:14;;;:18;11220:29;11210:39;-1:-1:-1;11268:47:84;;;;11260:56;;;;;;-1:-1:-1;;11444:16:84;;11488:7;;11429:2;11400:31;;;;11465:3;11436:32;;;;11399:70;;;;;-1:-1:-1;11524:14:84;-1:-1:-1;10664:882:84:o;6020:263:62:-;6087:77;6180:12;6195:41;6211:24;8450:329;8542:12;494:7;8742:9;8734:18;;;;;;;;:38;;8450:329;-1:-1:-1;;8450:329:62:o;883:554:85:-;1016:7;5408:6:60;1043:38:85;;;1035:47;;;;;;1112:16;1100:28;;;1092:37;;;;;;4906:1:60;1147:48:85;;;1139:57;;;;;;-1:-1:-1;1252:42:85;1292:2;1252:42;;;;1319:39;1357:1;1319:39;;;;1251:108;1390:25;;;1251:165;883:554;;;;;:::o;7074:226:62:-;7136:50;7202:12;7217:36;7233:19;7217:15;:36::i;1649:118:94:-;1695:6;1721:1;1717;:5;1713:47;;;1731:6;1735:1;1731:3;:6::i;:::-;1724:13;;;;1713:47;-1:-1:-1;1759:1:94;1752:8;;1385:224:72;1506:69;;;-1:-1:-1;;;1506:69:72;;-1:-1:-1;;;;;1506:69:72;;;;;;;1561:4;1506:69;;;;;;;;;;;;:37;;;;;;:69;;;;;-1:-1:-1;;1506:69:72;;;;;;;;-1:-1:-1;1506:37:72;:69;;;;;;;;;;1615:746;1666:12;1688:24;;:::i;:::-;1752:16;1785:135;;;;1942:2;1937:219;;;;2289:1;2286;2279:12;1785:135;1878:1;1867:12;;1785:135;;1937:219;2043:2;2040:1;2032:6;2017:29;2084:6;2078:13;2067:24;;1745:564;;2337:7;2329:25;;;;;-1:-1:-1;;;2329:25:72;;;;;;;;;;;;-1:-1:-1;;;2329:25:72;;;;;;;;;;;;;;8109:193:62;8158:32;8202:12;8217:38;8233:21;8217:15;:38::i;939:974:71:-;1502:23;;1486:68;;-1:-1:-1;;;1486:68:71;;1078:32;;1436:21;;1078:32;;-1:-1:-1;;;;;1486:47:71;;;;:68;;1534:19;;1486:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1468:86;-1:-1:-1;1572:40:71;;1564:59;;;;-1:-1:-1;;;1564:59:71;;;;;;;:::i;:::-;1658:21;1717:34;1658:21;1735:15;1717:17;:34::i;:::-;1690:61;;1836:70;1872:7;1881:24;1836:35;:70::i;1769:531:70:-;1909:32;1980:144;:135;2026:15;:28;;;2068:37;2085:19;2068:16;:37::i;:::-;1980:32;:135::i;:::-;:142;:144::i;:::-;1953:171;;2134:27;:25;:27::i;:::-;:39;2196:28;;2134:159;;-1:-1:-1;;;2134:159:70;;-1:-1:-1;;;;;2134:39:70;;;;:48;;:159;;2238:24;;2276:7;;2134:159;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1769:531;;;;;:::o;1919:1229:71:-;2487:28;;2092:32;;;;2450:120;;2525:4;-1:-1:-1;;;2450:36:71;:120::i;:::-;2424:146;;2581:15;2615:10;:23;;;-1:-1:-1;;;;;2599:47:71;;2647:19;2599:68;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2581:86;-1:-1:-1;2685:40:71;;2677:59;;;;-1:-1:-1;;;2677:59:71;;;;;;;:::i;:::-;2808:28;;2747:21;;2771:120;;2846:4;-1:-1:-1;;;2771:36:71;:120::i;:::-;2747:144;-1:-1:-1;2929:34:71;2747:144;2947:15;2929:17;:34::i;:::-;2902:61;;3048:93;3077:15;:28;;;3107:7;3116:24;3048:28;:93::i;:::-;1919:1229;;;;;;;;;:::o;2468:225:62:-;2534:41;2591:12;2606:40;2622:23;2606:15;:40::i;1452:1731:82:-;1589:19;1622:32;1668:27;1829:42;1858:12;1829:28;:42::i;:::-;1720:151;;-1:-1:-1;1720:151:82;-1:-1:-1;1720:151:82;-1:-1:-1;2155:31:82;;;:58;;;;;2212:1;2190:19;:23;2155:58;:77;;;;;2231:1;2217:11;:15;2155:77;2151:1026;;;2331:27;2488:44;2519:12;2488:30;:44::i;:::-;2279:253;;;;;;2547:42;2592:367;2726:68;429:3:60;2726:19:82;:23;;:68;;;;:::i;:::-;2897:19;2885:9;:31;2934:11;2592:24;:367::i;:::-;2547:412;-1:-1:-1;3001:64:82;:24;2547:412;3001:28;:64::i;:::-;2974:91;-1:-1:-1;;;;;;3087:44:82;;3079:53;;;;;;2151:1026;;;1452:1731;;;;;:::o;6645:250:62:-;6715:58;6789:12;6804:44;6820:27;6804:15;:44::i;3530:215:6:-;3588:7;3611:6;3607:20;;-1:-1:-1;3626:1:6;3619:8;;3607:20;3649:5;;;3653:1;3649;:5;:1;3672:5;;;;;:10;3664:56;;;;-1:-1:-1;;;3664:56:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4209:150;4267:7;4298:1;4294;:5;4286:44;;;;;-1:-1:-1;;;4286:44:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;4351:1;4347;:5;;;;;;;4209:150;-1:-1:-1;;;4209:150:6:o;2682:175::-;2740:7;2771:5;;;2794:6;;;;2786:46;;;;;-1:-1:-1;;;2786:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;7804:246:62;7876:43;7935:12;7950:53;7966:36;7950:15;:53::i;1006:752:88:-;1085:7;1130:1;1112:5;:15;;;:19;:77;;;;-1:-1:-1;1135:15:88;;;;4906:1:60;-1:-1:-1;1135:54:88;1112:77;1104:86;;;;;;1309:15;;;;4847:1:60;-1:-1:-1;1305:81:88;;-1:-1:-1;1372:14:88;;;;1365:21;;1305:81;1397:20;1420:45;1463:1;1445:5;:15;;;:19;1420:24;:45::i;:::-;1696:14;;;;1397:68;;-1:-1:-1;1696:55:88;;2617:9:60;;1696:32:88;;1397:68;1696:18;:32::i;:::-;:36;;:55::i;526:829:82:-;646:19;679:32;725:27;777:58;838:40;:38;:40::i;:::-;-1:-1:-1;;;;;937:19:82;;;;888:46;937:19;;;;;;;;-1:-1:-1;;937:19:82;;;;980:25;-1:-1:-1;;;;;980:25:82;;;-1:-1:-1;;;1245:38:82;;-1:-1:-1;;;;;1245:38:82;;-1:-1:-1;;;;1315:33:82;;;;;;-1:-1:-1;526:829:82:o;3288:1107::-;3483:7;4135:253;4376:11;4135:157;2665:11:60;4135:157:82;4239:19;4135:86;:25;499:4:60;4135:42:82;:86::i;928:470:78:-;991:7;1014:5;1023:1;1014:10;1010:40;;;-1:-1:-1;2617:9:60;1026:24:78;;1010:40;1064:5;1073:1;1064:10;1060:44;;;-1:-1:-1;1083:21:78;1076:28;;1060:44;1118:5;1127:1;1118:10;1114:37;;;-1:-1:-1;2665:11:60;1130:21:78;;1114:37;1165:5;1174:1;1165:10;1161:41;;;-1:-1:-1;1184:18:78;1177:25;;1161:41;1216:5;1225:1;1216:10;1212:41;;;-1:-1:-1;1235:18:78;1228:25;;1212:41;1267:5;1276:1;1267:10;1263:42;;;-1:-1:-1;1286:19:78;1279:26;;1263:42;1319:5;1328:1;1319:10;1315:42;;;-1:-1:-1;1338:19:78;1331:26;;1315:42;1368:23;;-1:-1:-1;;;1368:23:78;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:175:168:-;84:20;;-1:-1:-1;;;;;133:31:168;;123:42;;113:2;;179:1;176;169:12;194:433;;;360:3;353:4;345:6;341:17;337:27;327:2;;383:6;375;368:22;327:2;-1:-1:-1;411:20:168;;-1:-1:-1;;;;;443:30:168;;440:2;;;493:8;483;476:26;440:2;537:4;529:6;525:17;513:29;;600:3;593:4;585;577:6;573:17;565:6;561:30;557:41;554:50;551:2;;;617:1;614;607:12;551:2;317:310;;;;;:::o;632:1504::-;;771:3;764:4;756:6;752:17;748:27;738:2;;793:5;786;779:20;738:2;826:6;820:13;852:4;-1:-1:-1;;;;;912:2:168;908;905:10;902:2;;;918:9;902:2;949:36;981:2;976;972;968:11;964:20;949:36;:::i;:::-;1019:15;;;1050:12;;;;1082:15;;;1116:4;1151:11;;;1139:24;;1135:33;;1132:42;-1:-1:-1;1129:2:168;;;1191:5;1184;1177:20;1129:2;1217:5;1231:876;1245:2;1242:1;1239:9;1231:876;;;1312:2;1306:3;1301;1297:13;1293:22;1290:2;;;1332:5;1325;1318:20;1290:2;1363;1398;1392:9;1444:2;1436:6;1432:15;1501:6;1489:10;1486:22;1481:2;1469:10;1466:18;1463:46;1460:2;;;1512:9;1460:2;1536:22;;1586:10;;1571:26;;1640:12;;;1634:19;1617:15;;;1610:44;1697:12;;;1691:19;1674:15;;;1667:44;;;;1734:2;1779:12;;;1773:19;1756:15;;;1749:44;1816:3;1862:12;;;1856:19;1839:15;;;1832:44;1899:3;;1939:61;1987:12;;;1939:61;:::i;:::-;1922:15;;;1915:86;;;;2014:19;;2053:12;;;;2085;;;;1263:1;1256:9;1231:876;;;-1:-1:-1;2125:5:168;;728:1408;-1:-1:-1;;;;;;;;;728:1408:168:o;2141:195::-;2222:13;;-1:-1:-1;;;;;;2264:47:168;;2254:58;;2244:2;;2326:1;2323;2316:12;2341:165;2438:13;;2480:1;2470:12;;2460:2;;2496:1;2493;2486:12;2511:140;2591:13;;2613:32;2591:13;2613:32;:::i;2656:162::-;2735:13;;2788:4;2777:16;;2767:27;;2757:2;;2808:1;2805;2798:12;2823:616;;;;3031:2;3019:9;3010:7;3006:23;3002:32;2999:2;;;3052:6;3044;3037:22;2999:2;3080:31;3101:9;3080:31;:::i;:::-;3070:41;;3162:2;3151:9;3147:18;3134:32;-1:-1:-1;;;;;3181:6:168;3178:30;3175:2;;;3226:6;3218;3211:22;3175:2;3270:109;3371:7;3362:6;3351:9;3347:22;3270:109;:::i;:::-;2989:450;;3398:8;;-1:-1:-1;3244:135:168;;-1:-1:-1;;;;2989:450:168:o;3444:1125::-;;;;;;3688:2;3676:9;3667:7;3663:23;3659:32;3656:2;;;3709:6;3701;3694:22;3656:2;3737:31;3758:9;3737:31;:::i;:::-;3727:41;;3819:2;3808:9;3804:18;3791:32;-1:-1:-1;;;;;3883:2:168;3875:6;3872:14;3869:2;;;3904:6;3896;3889:22;3869:2;3948:109;4049:7;4040:6;4029:9;4025:22;3948:109;:::i;:::-;4076:8;;-1:-1:-1;3922:135:168;-1:-1:-1;4164:2:168;4149:18;;4136:32;;-1:-1:-1;4180:16:168;;;4177:2;;;4214:6;4206;4199:22;4177:2;4257:8;4246:9;4242:24;4232:34;;4304:7;4297:4;4293:2;4289:13;4285:27;4275:2;;4331:6;4323;4316:22;4275:2;4376;4363:16;4402:2;4394:6;4391:14;4388:2;;;4423:6;4415;4408:22;4388:2;4473:7;4468:2;4459:6;4455:2;4451:15;4447:24;4444:37;4441:2;;;4499:6;4491;4484:22;4441:2;3646:923;;;;-1:-1:-1;3646:923:168;;-1:-1:-1;4535:2:168;4527:11;;4557:6;3646:923;-1:-1:-1;;;3646:923:168:o;4574:778::-;;;;4772:2;4760:9;4751:7;4747:23;4743:32;4740:2;;;4793:6;4785;4778:22;4740:2;4821:31;4842:9;4821:31;:::i;:::-;4811:41;;4903:2;4892:9;4888:18;4875:32;-1:-1:-1;;;;;4967:2:168;4959:6;4956:14;4953:2;;;4988:6;4980;4973:22;4953:2;5031:6;5020:9;5016:22;5006:32;;5076:7;5069:4;5065:2;5061:13;5057:27;5047:2;;5103:6;5095;5088:22;5047:2;5148;5135:16;5174:2;5166:6;5163:14;5160:2;;;5195:6;5187;5180:22;5160:2;5256:7;5251:2;5243:4;5235:6;5231:17;5227:2;5223:26;5219:35;5216:48;5213:2;;;5282:6;5274;5267:22;5213:2;5318;5314;5310:11;5300:21;;5340:6;5330:16;;;;;4730:622;;;;;:::o;5357:602::-;;;;5551:2;5539:9;5530:7;5526:23;5522:32;5519:2;;;5572:6;5564;5557:22;5519:2;5600:31;5621:9;5600:31;:::i;:::-;5590:41;;5682:2;5671:9;5667:18;5654:32;-1:-1:-1;;;;;5701:6:168;5698:30;5695:2;;;5746:6;5738;5731:22;5964:253;;6073:2;6061:9;6052:7;6048:23;6044:32;6041:2;;;6094:6;6086;6079:22;6041:2;6138:9;6125:23;6157:30;6181:5;6157:30;:::i;6222:299::-;;6357:2;6345:9;6336:7;6332:23;6328:32;6325:2;;;6378:6;6370;6363:22;6325:2;6422:9;6409:23;6461:1;6454:5;6451:12;6441:2;;6482:6;6474;6467:22;6526:193;;6648:2;6636:9;6627:7;6623:23;6619:32;6616:2;;;6669:6;6661;6654:22;6616:2;-1:-1:-1;6697:16:168;;6606:113;-1:-1:-1;6606:113:168:o;6724:317::-;;;6860:2;6848:9;6839:7;6835:23;6831:32;6828:2;;;6881:6;6873;6866:22;6828:2;6915:9;6909:16;6899:26;;6968:2;6957:9;6953:18;6947:25;6981:30;7005:5;6981:30;:::i;:::-;7030:5;7020:15;;;6818:223;;;;;:::o;7046:993::-;;7202:3;7190:9;7181:7;7177:23;7173:33;7170:2;;;7224:6;7216;7209:22;7170:2;7262;7256:9;7304:3;7296:6;7292:16;7374:6;7362:10;7359:22;-1:-1:-1;;;;;7326:10:168;7323:34;7320:62;7317:2;;;7385:9;7317:2;7412;7405:22;7449:16;;7505:12;7494:24;;7484:35;;7474:2;;7538:6;7530;7523:22;7474:2;7556:21;;7622:2;7607:18;;7601:25;-1:-1:-1;;;;;;7657:27:168;;7645:40;;7635:2;;7704:6;7696;7689:22;7635:2;7741;7729:15;;7722:32;7787:49;7832:2;7817:18;;7787:49;:::i;:::-;7782:2;7774:6;7770:15;7763:74;7870:50;7916:2;7905:9;7901:18;7870:50;:::i;:::-;7865:2;7857:6;7853:15;7846:75;7955:52;8002:3;7991:9;7987:19;7955:52;:::i;:::-;7949:3;7937:16;;7930:78;7941:6;7160:879;-1:-1:-1;;;7160:879:168:o;8044:1218::-;;;8216:2;8204:9;8195:7;8191:23;8187:32;8184:2;;;8237:6;8229;8222:22;8184:2;8275:9;8269:16;-1:-1:-1;;;;;8345:2:168;8337:6;8334:14;8331:2;;;8366:6;8358;8351:22;8331:2;8394:22;;;;8450:4;8432:16;;;8428:27;8425:2;;;8473:6;8465;8458:22;8425:2;8511;8505:9;8553:4;8545:6;8541:17;8608:6;8596:10;8593:22;8588:2;8576:10;8573:18;8570:46;8567:2;;;8619:9;8567:2;8646;8639:22;8686:9;;8707:16;;;8704:2;;;8741:6;8733;8726:22;8704:2;8774:88;8854:7;8843:8;8839:2;8835:17;8774:88;:::i;:::-;8766:6;8759:104;;8902:2;8898;8894:11;8888:18;8931:2;8921:8;8918:16;8915:2;;;8952:6;8944;8937:22;8915:2;8994:88;9074:7;9063:8;9059:2;9055:17;8994:88;:::i;:::-;8989:2;8981:6;8977:15;8970:113;;9130:2;9126;9122:11;9116:18;9111:2;9103:6;9099:15;9092:43;9182:2;9178;9174:11;9168:18;9163:2;9155:6;9151:15;9144:43;9206:6;9196:16;;;;;9252:2;9241:9;9237:18;9231:25;9221:35;;8174:1088;;;;;:::o;9267:257::-;;9378:2;9366:9;9357:7;9353:23;9349:32;9346:2;;;9399:6;9391;9384:22;9346:2;9443:9;9430:23;9462:32;9488:5;9462:32;:::i;9728:369::-;9822:19;;;9728:369;-1:-1:-1;;;;;9853:31:168;;9850:2;;;9899:3;9894;9887:16;9850:2;9942:4;9934:6;9930:17;9992:8;9985:5;9978:4;9973:3;9969:14;9956:45;10024:18;;;;10044:4;10020:29;10058:15;;;-1:-1:-1;10020:29:168;;9812:285;-1:-1:-1;9812:285:168:o;10102:967::-;;10214:5;10208:12;10241:6;10236:3;10229:19;10267:4;10296:2;10291:3;10287:12;10280:19;;10333:2;10326:5;10322:14;10354:3;10366:678;10380:6;10377:1;10374:13;10366:678;;;10439:13;;10477:9;;10465:22;;10527:11;;;10521:18;10507:12;;;10500:40;10563:4;10607:11;;;10601:18;10587:12;;;10580:40;10643:4;10687:11;;;10681:18;10667:12;;;10660:40;10723:4;10767:11;;;10761:18;10747:12;;;10740:40;10803:4;10846:11;;;10840:18;;10898:1;10881:19;;10871:2;;10904:9;10871:2;10935:12;;10928:34;10991:4;10982:14;;;;11019:15;;;;10402:1;10395:9;10366:678;;;-1:-1:-1;11060:3:168;;10184:885;-1:-1:-1;;;;;10184:885:168:o;11074:211::-;-1:-1:-1;;;;;11246:32:168;;;;11228:51;;11216:2;11201:18;;11183:102::o;11498:600::-;-1:-1:-1;;;;;11757:15:168;;;11739:34;;11809:15;;11804:2;11789:18;;11782:43;11861:2;11856;11841:18;;11834:30;;;11880:18;;11873:34;;;11498:600;11900:6;11950;11944:3;11929:19;;11916:49;11985:22;;;12009:3;11981:32;;;11974:46;;;;12081:2;12060:15;;;-1:-1:-1;;12056:29:168;12041:45;12037:55;;11691:407;-1:-1:-1;;;11691:407:168:o;12103:627::-;-1:-1:-1;;;;;12446:15:168;;;12428:34;;12498:15;;;12493:2;12478:18;;12471:43;12550:15;;;12545:2;12530:18;;12523:43;12602:15;;;12597:2;12582:18;;12575:43;12655:15;;12649:3;12634:19;;12627:44;12708:15;;;12408:3;12687:19;;12680:44;12377:3;12362:19;;12344:386::o;12735:700::-;-1:-1:-1;;;;;13002:32:168;;;;12984:51;;13075:13;;13090:12;13071:32;13066:2;13051:18;;;13044:60;;;;13150:15;;13144:22;-1:-1:-1;;;;;;13140:42:168;13135:2;13120:18;;;13113:70;;;;13229:15;;13223:22;13177:3;13219:33;13214:2;13199:18;;;13192:61;;;;13300:15;;13294:22;13318:6;13290:35;13284:3;13269:19;;;13262:64;;;;13373:16;13367:23;-1:-1:-1;;;;;;13363:65:168;13022:3;13342:19;;13335:94;12971:3;12956:19;;12938:497::o;13440:1161::-;;13814:1;13810;13805:3;13801:11;13797:19;13789:6;13785:32;13774:9;13767:51;13866:6;13858;13854:19;13849:2;13838:9;13834:18;13827:47;13910:3;13905:2;13894:9;13890:18;13883:31;13949:6;13943:13;13993:3;13987;13976:9;13972:19;13965:32;14020:84;14099:3;14088:9;14084:19;14070:12;14020:84;:::i;:::-;14006:98;;14153:2;14145:6;14141:15;14135:22;14226:3;14222:8;14210:9;14202:6;14198:22;14194:37;14188:3;14177:9;14173:19;14166:66;14255:73;14321:6;14305:14;14255:73;:::i;:::-;14241:87;;;14383:2;14375:6;14371:15;14365:22;14359:3;14348:9;14344:19;14337:51;14443:4;14435:6;14431:17;14425:24;14419:3;14408:9;14404:19;14397:53;14500:9;14492:6;14488:22;14481:4;14470:9;14466:20;14459:52;14528:67;14588:6;14580;14572;14528:67;:::i;:::-;14520:75;13757:844;-1:-1:-1;;;;;;;;13757:844:168:o;14606:571::-;-1:-1:-1;;;;;14883:32:168;;14865:51;;14964:6;14952:19;;14947:2;14932:18;;14925:47;15020:12;15008:25;;15003:2;14988:18;;14981:53;15070:3;15065:2;15050:18;;15043:31;;;14606:571;;15091:80;;15151:19;;15143:6;15135;15091:80;:::i;15182:375::-;-1:-1:-1;;;;;15440:15:168;;;15422:34;;15487:2;15472:18;;15465:34;;;;15535:15;;;15530:2;15515:18;;15508:43;15372:2;15357:18;;15339:218::o;15562:467::-;-1:-1:-1;;;;;15856:15:168;;;15838:34;;15903:2;15888:18;;15881:34;;;;15951:15;;15946:2;15931:18;;15924:43;16015:6;16003:19;;;15998:2;15983:18;;15976:47;15787:3;15772:19;;15754:275::o;16034:487::-;-1:-1:-1;;;;;16309:32:168;;;;16291:51;;16373:2;16358:18;;16351:34;;;;16416:2;16401:18;;16394:34;;;;16459:2;16444:18;;16437:34;16502:3;16487:19;;16480:35;16278:3;16263:19;;16245:276::o;16526:425::-;-1:-1:-1;;;;;16783:32:168;;;;16765:51;;16847:2;16832:18;;16825:34;;;;16890:2;16875:18;;16868:34;16933:2;16918:18;;16911:34;16752:3;16737:19;;16719:232::o;16956:175::-;17100:25;;;17088:2;17073:18;;17055:76::o;17136:336::-;17338:2;17320:21;;;17377:2;17357:18;;;17350:30;-1:-1:-1;;;17411:2:168;17396:18;;17389:42;17463:2;17448:18;;17310:162::o;17477:327::-;17679:2;17661:21;;;17718:1;17698:18;;;17691:29;-1:-1:-1;;;17751:2:168;17736:18;;17729:34;17795:2;17780:18;;17651:153::o;17809:335::-;18011:2;17993:21;;;18050:2;18030:18;;;18023:30;-1:-1:-1;;;18084:2:168;18069:18;;18062:41;18135:2;18120:18;;17983:161::o;18149:329::-;18351:2;18333:21;;;18390:1;18370:18;;;18363:29;-1:-1:-1;;;18423:2:168;18408:18;;18401:36;18469:2;18454:18;;18323:155::o;18483:337::-;18685:2;18667:21;;;18724:2;18704:18;;;18697:30;-1:-1:-1;;;18758:2:168;18743:18;;18736:43;18811:2;18796:18;;18657:163::o;18825:340::-;19027:2;19009:21;;;19066:2;19046:18;;;19039:30;-1:-1:-1;;;19100:2:168;19085:18;;19078:46;19156:2;19141:18;;18999:166::o;19170:350::-;19372:2;19354:21;;;19411:2;19391:18;;;19384:30;19450:28;19445:2;19430:18;;19423:56;19511:2;19496:18;;19344:176::o;19525:338::-;19727:2;19709:21;;;19766:2;19746:18;;;19739:30;-1:-1:-1;;;19800:2:168;19785:18;;19778:44;19854:2;19839:18;;19699:164::o;19868:331::-;20070:2;20052:21;;;20109:1;20089:18;;;20082:29;-1:-1:-1;;;20142:2:168;20127:18;;20120:38;20190:2;20175:18;;20042:157::o;20204:350::-;20406:2;20388:21;;;20445:2;20425:18;;;20418:30;20484:28;20479:2;20464:18;;20457:56;20545:2;20530:18;;20378:176::o;20559:334::-;20761:2;20743:21;;;20800:2;20780:18;;;20773:30;-1:-1:-1;;;20834:2:168;20819:18;;20812:40;20884:2;20869:18;;20733:160::o;20898:341::-;21100:2;21082:21;;;21139:2;21119:18;;;21112:30;-1:-1:-1;;;21173:2:168;21158:18;;21151:47;21230:2;21215:18;;21072:167::o;21244:344::-;21446:2;21428:21;;;21485:2;21465:18;;;21458:30;-1:-1:-1;;;21519:2:168;21504:18;;21497:50;21579:2;21564:18;;21418:170::o;21593:265::-;21801:6;21789:19;;;;21771:38;;21840:2;21825:18;;21818:34;21759:2;21744:18;;21726:132::o;22045:560::-;;;22204:11;22191:25;22298:2;22294:7;22283:8;22267:14;22263:29;22259:43;22239:18;22235:68;22225:2;;22320:4;22314;22307:18;22225:2;22350:33;;22402:20;;;-1:-1:-1;;;;;;22434:30:168;;22431:2;;;22480:4;22474;22467:18;22431:2;22516:4;22504:17;;;;-1:-1:-1;22563:17:168;;22547:14;22543:38;22533:49;;22530:2;;;22595:1;22592;22585:12;22610:348;;22778:11;22765:25;22872:3;22868:8;22857;22841:14;22837:29;22833:44;22813:18;22809:69;22799:2;;22895:4;22889;22882:18;22799:2;22919:33;;;;;22729:229;-1:-1:-1;;22729:229:168:o;22963:333::-;;23117:11;23104:25;23211:2;23207:7;23196:8;23180:14;23176:29;23172:43;23152:18;23148:68;23138:2;;23233:4;23227;23220:18;23301:242;23371:2;23365:9;23401:17;;;-1:-1:-1;;;;;23433:34:168;;23469:22;;;23430:62;23427:2;;;23495:9;23427:2;23522;23515:22;23345:198;;-1:-1:-1;23345:198:168:o;23548:120::-;23636:5;23629:13;23622:21;23615:5;23612:32;23602:2;;23658:1;23655;23648:12;23602:2;23592:76;:::o;23673:119::-;23760:6;23753:5;23749:18;23742:5;23739:29;23729:2;;23782:1;23779;23772:12", + "language": "Solidity", + "natspec": { + "kind": "dev", + "methods": { + "batchBalanceAction(address,(uint8,uint16,uint256,uint256,bool,bool)[])": { + "details": "emit:CashBalanceChange, emit:nTokenSupplyChangeauth:msg.sender auth:ERC1155", + "notice": "Executes a batch of balance transfers including minting and redeeming nTokens.", + "params": { + "account": "the account for the action", + "actions": "array of balance actions to take, must be sorted by currency id" + } + }, + "batchBalanceAndTradeAction(address,(uint8,uint16,uint256,uint256,bool,bool,bytes32[])[])": { + "details": "emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccruedauth:msg.sender auth:ERC1155", + "notice": "Executes a batch of balance transfers and trading actions", + "params": { + "account": "the account for the action", + "actions": "array of balance actions with trades to take, must be sorted by currency id" + } + }, + "batchBalanceAndTradeActionWithCallback(address,(uint8,uint16,uint256,uint256,bool,bool,bytes32[])[],bytes)": { + "details": "emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccruedauth:authorizedCallbackContract", + "notice": "Executes a batch of balance transfers and trading actions via an authorized callback contract. This can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform other actions on behalf of the user. Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting and will mainly be used for contracts that make migrating assets a better user experience.", + "params": { + "account": "the account that will take all the actions", + "actions": "array of balance actions with trades to take, must be sorted by currency id", + "callbackData": "arbitrary bytes to be passed backed to the caller in the callback" + } + }, + "batchLend(address,(uint16,bool,bytes32[])[])": { + "details": "Note that this method does not work with native ETH because it requires the ability to pull payment from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebtauth:msg.sender auth:ERC1155", + "notice": "Executes a batch of lending actions. This is different from batchBalanceAndTrade because it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces the gas costs for lending because there is no second token transfer where residual balances are sent back to the account.", + "params": { + "account": "the account for the action", + "actions": "array of batch lending actions" + } + }, + "getLibInfo()": { + "notice": "Get a list of deployed library addresses (sorted by library name)" + } + }, + "version": 1 + }, + "offset": [ + 591, + 24150 + ], + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x7B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6E6A32A6 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x6E6A32A6 EQ PUSH2 0xF3 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x106 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0xC4C96DAE EQ PUSH2 0x130 JUMPI PUSH2 0x7B JUMP JUMPDEST DUP1 PUSH4 0x276B64B EQ PUSH2 0x80 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x95 JUMPI DUP1 PUSH4 0x541F5270 EQ PUSH2 0xC0 JUMPI DUP1 PUSH4 0x5950D8E9 EQ PUSH2 0xE0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x93 PUSH2 0x8E CALLDATASIZE PUSH1 0x4 PUSH2 0x41F2 JUMP JUMPDEST PUSH2 0x157 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x1E7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x93 PUSH2 0xDB CALLDATASIZE PUSH1 0x4 PUSH2 0x4366 JUMP JUMPDEST PUSH2 0x1F6 JUMP JUMPDEST PUSH2 0x93 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0x4242 JUMP JUMPDEST PUSH2 0x53E JUMP JUMPDEST PUSH2 0x93 PUSH2 0x101 CALLDATASIZE PUSH1 0x4 PUSH2 0x42E6 JUMP JUMPDEST PUSH2 0x66E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x112 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x7F4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x127 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x803 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x13C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x145 PUSH2 0x81A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB7 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x469E JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x183 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x19E JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x1BA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x1C3 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D0 DUP5 DUP5 DUP5 PUSH2 0x8EF JUMP JUMPDEST SWAP1 POP PUSH2 0x1DC DUP5 DUP3 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x219 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x234 JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x250 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x259 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x264 DUP5 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x278 DUP6 DUP4 PUSH1 0x40 ADD MLOAD PUSH1 0x0 PUSH2 0xBE7 JUMP JUMPDEST SWAP1 POP PUSH2 0x282 PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP5 DUP2 LT ISZERO PUSH2 0x50C JUMPI CALLDATASIZE DUP7 DUP7 DUP4 DUP2 DUP2 LT PUSH2 0x29A JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2AC SWAP2 SWAP1 PUSH2 0x4B3C JUMP JUMPDEST SWAP1 POP DUP2 ISZERO PUSH2 0x315 JUMPI DUP7 DUP7 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x2C3 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2D5 SWAP2 SWAP1 PUSH2 0x4B3C JUMP JUMPDEST PUSH2 0x2E3 SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x2F4 PUSH1 0x20 DUP4 ADD DUP4 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x315 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324 PUSH1 0x40 DUP4 ADD DUP4 PUSH2 0x4AD7 JUMP JUMPDEST SWAP2 POP POP DUP1 PUSH2 0x331 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x0 PUSH2 0x34B PUSH1 0x40 DUP6 ADD DUP6 PUSH2 0x4AD7 JUMP JUMPDEST DUP4 DUP2 DUP2 LT PUSH2 0x355 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH1 0xF8 SHR PUSH1 0xFF AND EQ PUSH2 0x36C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 ADD PUSH2 0x334 JUMP JUMPDEST POP PUSH2 0x38F DUP10 PUSH2 0x386 PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x4579 JUMP JUMPDEST DUP7 SWAP2 SWAP1 DUP10 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x3B4 DUP10 PUSH2 0x3A0 PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0x3AD PUSH1 0x40 DUP7 ADD DUP7 PUSH2 0x4AD7 JUMP JUMPDEST DUP11 DUP11 PUSH2 0xD1F JUMP JUMPDEST PUSH1 0x60 DUP7 ADD DUP3 SWAP1 MSTORE SWAP6 POP PUSH1 0x0 SLT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x3EF PUSH2 0x3EA DUP7 PUSH1 0x60 ADD MLOAD DUP8 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0xEE1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SGT ISZERO PUSH2 0x4EF JUMPI PUSH2 0x40A PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x439D JUMP JUMPDEST ISZERO PUSH2 0x4B7 JUMPI PUSH1 0x0 PUSH2 0x42A PUSH2 0x421 PUSH1 0x20 DUP7 ADD DUP7 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0xEEF JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x447 PUSH2 0x43E PUSH1 0x20 DUP8 ADD DUP8 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x45F PUSH2 0x458 DUP5 DUP7 PUSH2 0xF4E JUMP JUMPDEST DUP4 SWAP1 PUSH2 0xF87 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP3 PUSH1 0x40 ADD MLOAD SLT ISZERO PUSH2 0x47F JUMPI PUSH2 0x47C DUP2 PUSH1 0x1 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 PUSH2 0x48C DUP10 DUP16 DUP5 PUSH2 0xFBF JUMP JUMPDEST SWAP1 POP DUP5 DUP2 SLT ISZERO PUSH2 0x4AE JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A95 JUMP JUMPDEST POP POP POP POP PUSH2 0x4EF JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D2 PUSH2 0x4C9 PUSH1 0x20 DUP7 ADD DUP7 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH2 0x4EC DUP12 PUSH2 0x4E2 DUP4 DUP6 PUSH2 0xF87 JUMP JUMPDEST DUP9 SWAP2 SWAP1 PUSH1 0x0 PUSH2 0x10B7 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x4FC DUP6 DUP12 DUP10 PUSH1 0x0 PUSH2 0x1191 JUMP JUMPDEST POP POP PUSH1 0x1 SWAP1 SWAP3 ADD SWAP2 POP PUSH2 0x285 SWAP1 POP JUMP JUMPDEST POP PUSH2 0x516 DUP4 PUSH2 0x1412 JUMP JUMPDEST PUSH2 0x527 JUMPI PUSH2 0x527 DUP4 DUP8 DUP5 PUSH1 0x0 PUSH2 0x141F JUMP JUMPDEST PUSH2 0x531 DUP7 DUP5 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP POP POP JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x8 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH2 0x56D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x576 DUP6 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x583 DUP7 DUP7 DUP7 PUSH2 0x8EF JUMP JUMPDEST SWAP1 POP PUSH2 0x58F DUP2 DUP8 PUSH2 0x1501 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x550D0657 PUSH1 0xE1 SHL DUP2 MSTORE CALLER SWAP1 PUSH4 0xAA1A0CAE SWAP1 PUSH2 0x5B8 SWAP1 DUP4 SWAP1 DUP11 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x4655 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x20 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO PUSH2 0x666 JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x635 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x64D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x661 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x691 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x6AC JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x6C8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x6D1 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6DC DUP5 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH2 0x6E6 PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7DD JUMPI CALLDATASIZE DUP6 DUP6 DUP4 DUP2 DUP2 LT PUSH2 0x6FE JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0xC0 MUL ADD SWAP1 POP PUSH1 0x0 DUP3 GT ISZERO PUSH2 0x76B JUMPI DUP6 DUP6 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x71E JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0xC0 MUL ADD PUSH1 0x20 ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x736 SWAP2 SWAP1 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x74A PUSH1 0x40 DUP4 ADD PUSH1 0x20 DUP5 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x76B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH2 0x788 DUP8 PUSH2 0x77F PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x4579 JUMP JUMPDEST DUP6 SWAP2 SWAP1 DUP8 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x7A4 DUP8 DUP5 PUSH2 0x79A PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x43B9 JUMP JUMPDEST DUP5 PUSH1 0x40 ADD CALLDATALOAD PUSH2 0x1605 JUMP JUMPDEST PUSH2 0x7D4 DUP8 DUP6 DUP6 PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH2 0x7BF PUSH1 0xA0 DUP8 ADD PUSH1 0x80 DUP9 ADD PUSH2 0x439D JUMP JUMPDEST PUSH2 0x7CF PUSH1 0xC0 DUP9 ADD PUSH1 0xA0 DUP10 ADD PUSH2 0x439D JUMP JUMPDEST PUSH2 0x16D8 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x6E9 JUMP JUMPDEST POP PUSH2 0x7E8 DUP6 DUP4 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 SWAP1 SWAP2 SWAP3 SWAP4 SWAP5 SWAP6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x8B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO PUSH2 0x8C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8D4 DUP3 PUSH2 0x1755 JUMP JUMPDEST POP POP POP POP PUSH2 0xFFFF AND SWAP1 POP DUP1 PUSH1 0x0 EQ PUSH2 0x8EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x8F7 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x902 DUP6 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH2 0x90C PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x91E DUP8 DUP5 PUSH1 0x40 ADD MLOAD PUSH1 0x0 PUSH2 0xBE7 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xA82 JUMPI CALLDATASIZE DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x938 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x94A SWAP2 SWAP1 PUSH2 0x4B1D JUMP JUMPDEST SWAP1 POP DUP2 ISZERO PUSH2 0x9B9 JUMPI DUP8 DUP8 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x961 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x973 SWAP2 SWAP1 PUSH2 0x4B1D JUMP JUMPDEST PUSH2 0x984 SWAP1 PUSH1 0x40 DUP2 ADD SWAP1 PUSH1 0x20 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x998 PUSH1 0x40 DUP4 ADD PUSH1 0x20 DUP5 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x9B9 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH2 0x9D6 DUP10 PUSH2 0x9CD PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x4579 JUMP JUMPDEST DUP7 SWAP2 SWAP1 DUP9 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x9E8 DUP10 DUP6 PUSH2 0x79A PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x43B9 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9F7 PUSH1 0xC0 DUP4 ADD DUP4 PUSH2 0x4AD7 JUMP JUMPDEST SWAP1 POP GT ISZERO PUSH2 0xA5E JUMPI PUSH1 0x0 PUSH2 0xA29 DUP11 PUSH2 0xA15 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP7 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xA22 PUSH1 0xC0 DUP7 ADD DUP7 PUSH2 0x4AD7 JUMP JUMPDEST DUP11 DUP10 PUSH2 0xD1F JUMP JUMPDEST SWAP5 POP SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0xA48 JUMPI PUSH2 0xA48 DUP6 PUSH2 0xA43 DUP4 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x17BE JUMP JUMPDEST PUSH1 0x60 DUP6 ADD MLOAD PUSH2 0xA57 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MSTORE POP JUMPDEST PUSH2 0xA79 DUP10 DUP7 DUP7 PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH2 0x7BF PUSH1 0xA0 DUP8 ADD PUSH1 0x80 DUP9 ADD PUSH2 0x439D JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x923 JUMP JUMPDEST POP PUSH2 0xA8C DUP4 PUSH2 0x1412 JUMP JUMPDEST PUSH2 0xA9D JUMPI PUSH2 0xA9D DUP4 DUP9 DUP4 PUSH1 0x0 PUSH2 0x141F JUMP JUMPDEST POP SWAP1 SWAP2 POP POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xAB4 DUP2 DUP4 PUSH2 0x1501 JUMP JUMPDEST PUSH1 0x20 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO PUSH2 0x8EB JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0xAFF SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB17 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x666 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH2 0xB33 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP4 PUSH2 0x180D JUMP JUMPDEST SWAP1 POP PUSH2 0xB49 DUP2 PUSH2 0x18AE JUMP JUMPDEST ISZERO PUSH2 0xBDF JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xB87 SWAP1 DUP7 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x46D8 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB9F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xBB3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBD7 SWAP2 SWAP1 PUSH2 0x441F JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE2 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xBEF PUSH2 0x3F90 JUMP JUMPDEST PUSH2 0xBF7 PUSH2 0x3F90 JUMP JUMPDEST PUSH1 0xFF DUP5 AND PUSH2 0xC06 JUMPI SWAP1 POP PUSH2 0xAA3 JUMP JUMPDEST PUSH2 0xC10 DUP6 DUP6 PUSH2 0x18FF JUMP JUMPDEST DUP2 MSTORE PUSH1 0xFF DUP5 AND PUSH1 0x60 DUP3 ADD MSTORE DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0xC31 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xC6B JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xC58 PUSH2 0x3FB8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xC50 JUMPI SWAP1 POP JUMPDEST POP PUSH1 0x20 DUP3 ADD MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST DUP2 PUSH2 0xFFFF AND PUSH1 0x0 LT DUP1 ISZERO PUSH2 0xC93 JUMPI POP PUSH2 0x3FFF PUSH2 0xFFFF DUP4 AND GT ISZERO JUMPDEST PUSH2 0xC9C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP3 AND DUP1 DUP6 MSTORE PUSH2 0xCAF SWAP1 DUP3 SWAP1 PUSH2 0x1928 JUMP JUMPDEST ISZERO PUSH2 0xCDC JUMPI PUSH2 0xCC2 DUP4 DUP4 PUSH2 0xFFFF AND PUSH2 0x19B2 JUMP JUMPDEST PUSH2 0x100 DUP9 ADD MSTORE PUSH1 0xE0 DUP8 ADD MSTORE PUSH1 0x40 DUP7 ADD MSTORE PUSH1 0x20 DUP6 ADD MSTORE PUSH2 0xCFA JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP6 ADD DUP2 SWAP1 MSTORE PUSH1 0x40 DUP6 ADD DUP2 SWAP1 MSTORE PUSH1 0xE0 DUP6 ADD DUP2 SWAP1 MSTORE PUSH2 0x100 DUP6 ADD MSTORE JUMPDEST POP POP PUSH1 0x0 PUSH1 0x60 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0x80 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0xA0 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0xC0 SWAP1 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xD29 PUSH2 0x3F90 JUMP JUMPDEST PUSH2 0xD32 DUP5 PUSH2 0x1412 JUMP JUMPDEST ISZERO PUSH2 0xE22 JUMPI DUP7 PUSH2 0xFFFF AND DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ PUSH2 0xD62 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A0F JUMP JUMPDEST PUSH1 0x60 DUP5 ADD MLOAD DUP5 MLOAD PUSH1 0x40 MLOAD PUSH4 0x3643F39B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP3 PUSH20 0x0 SWAP3 PUSH4 0x3643F39B SWAP3 PUSH2 0xDA9 SWAP3 DUP15 SWAP3 SWAP1 SWAP2 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x47CB JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDC0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xDD4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xDF8 SWAP2 SWAP1 PUSH2 0x43F0 JUMP JUMPDEST SWAP1 SWAP4 POP SWAP1 POP DUP1 ISZERO PUSH2 0xE1C JUMPI PUSH1 0x20 DUP6 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xB58F83ED PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0xB58F83ED SWAP1 PUSH2 0xE61 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 DUP13 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x4744 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE8D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0xEB5 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x44BE JUMP JUMPDEST SWAP3 POP SWAP1 POP JUMPDEST SWAP7 POP SWAP7 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 ADD DUP3 DUP2 SLT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH1 0x0 NOT DUP4 PUSH2 0x1A5E JUMP JUMPDEST PUSH2 0xEF7 PUSH2 0x3FF8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xF05 DUP6 PUSH2 0x1AAC JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x60 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP4 AND DUP4 MSTORE PUSH1 0x20 DUP4 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0xFF AND PUSH1 0xA EXP SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF43 PUSH2 0x4022 JUMP JUMPDEST PUSH2 0xBDF DUP3 PUSH1 0x1 PUSH2 0x1B6F JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xF7F DUP5 PUSH1 0x40 ADD MLOAD PUSH2 0xF79 PUSH5 0x2540BE400 PUSH2 0xF79 DUP8 DUP10 PUSH1 0x20 ADD MLOAD PUSH2 0x1A5E SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 PUSH2 0x1C1D JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0x5F5E100 DUP4 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0xFA0 JUMPI POP DUP1 PUSH2 0xEDB JUMP JUMPDEST PUSH2 0xAA3 PUSH4 0x5F5E100 PUSH2 0xF79 DUP6 PUSH1 0x40 ADD MLOAD DUP6 PUSH2 0x1A5E SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0xFCE JUMPI POP PUSH1 0x0 PUSH2 0xAA3 JUMP JUMPDEST PUSH1 0x0 DUP3 SGT PUSH2 0xFDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xFEE DUP6 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x3 DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1002 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x102C JUMPI CALLVALUE DUP4 EQ PUSH2 0x1027 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48F8 JUMP JUMPDEST PUSH2 0x1043 JUMP JUMPDEST DUP5 MLOAD PUSH2 0x1040 SWAP1 DUP3 SWAP1 DUP7 SWAP1 PUSH2 0xFFFF AND DUP7 PUSH2 0x1C4E JUMP JUMPDEST SWAP3 POP JUMPDEST PUSH1 0x0 PUSH2 0x1056 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1073 DUP8 PUSH1 0x0 ADD MLOAD PUSH2 0x106B DUP8 PUSH2 0x1CF6 JUMP JUMPDEST DUP5 SWAP2 SWAP1 PUSH2 0x1D09 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1081 DUP4 DUP4 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x60 DUP10 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x1093 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP10 ADD MSTORE SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x10AC PUSH2 0x4022 JUMP JUMPDEST PUSH2 0xBDF DUP3 PUSH1 0x0 PUSH2 0x1B6F JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x10C6 JUMPI POP PUSH1 0x0 PUSH2 0xF7F JUMP JUMPDEST PUSH1 0x0 DUP4 SGT PUSH2 0x10D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10E6 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x10FA JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1113 JUMPI DUP6 MLOAD PUSH2 0x1110 SWAP1 PUSH2 0xFFFF AND DUP6 PUSH2 0x1E2A JUMP JUMPDEST SWAP4 POP JUMPDEST DUP1 PUSH1 0x20 ADD MLOAD DUP1 PUSH2 0x1120 JUMPI POP DUP3 JUMPDEST ISZERO PUSH2 0x1167 JUMPI DUP6 MLOAD PUSH1 0x0 SWAP1 PUSH2 0x113C SWAP1 DUP4 SWAP1 DUP9 SWAP1 PUSH2 0xFFFF AND DUP9 PUSH2 0x1C4E JUMP JUMPDEST SWAP1 POP PUSH2 0x1148 DUP3 DUP3 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x60 DUP9 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x115A SWAP1 DUP5 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP9 ADD MSTORE POP PUSH2 0xF7F SWAP1 POP JUMP JUMPDEST PUSH2 0x1171 DUP2 DUP6 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x80 DUP8 ADD MLOAD SWAP1 SWAP3 POP PUSH2 0x1183 SWAP1 DUP4 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x80 DUP8 ADD MSTORE POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH1 0xA0 ADD MLOAD SLT ISZERO PUSH2 0x11EA JUMPI PUSH1 0x0 PUSH2 0x11CC DUP8 PUSH1 0xA0 ADD MLOAD PUSH2 0x11C6 DUP10 PUSH1 0xC0 ADD MLOAD DUP11 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 PUSH2 0xEC5 JUMP JUMPDEST SLT ISZERO PUSH2 0x11EA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A46 JUMP JUMPDEST PUSH1 0x0 DUP7 PUSH1 0x80 ADD MLOAD SLT ISZERO PUSH2 0x123A JUMPI PUSH1 0x0 PUSH2 0x121C DUP8 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP10 PUSH1 0x60 ADD MLOAD DUP11 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO PUSH2 0x123A JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49ED JUMP JUMPDEST PUSH2 0x1245 DUP7 DUP7 DUP6 PUSH2 0x1EB1 JUMP JUMPDEST PUSH1 0x80 DUP9 ADD DUP2 SWAP1 MSTORE PUSH1 0x60 DUP9 ADD MLOAD SWAP2 SWAP4 POP PUSH1 0x0 SWAP2 PUSH2 0x1260 SWAP2 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x12CD JUMPI PUSH1 0x20 DUP8 ADD MLOAD PUSH2 0x1277 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x20 DUP9 ADD MSTORE DUP7 MLOAD PUSH1 0x40 MLOAD PUSH1 0x1 SWAP4 POP PUSH2 0xFFFF SWAP1 SWAP2 AND SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP1 PUSH32 0x5441E4A5FAC93A951D782E6F1CDB82E95C8FC58561A013953D17E395C5E69B4B SWAP1 PUSH2 0x12C4 SWAP1 DUP6 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST PUSH1 0xA0 DUP8 ADD MLOAD ISZERO ISZERO DUP1 PUSH2 0x12E2 JUMPI POP PUSH1 0xC0 DUP8 ADD MLOAD ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1388 JUMPI PUSH1 0x0 PUSH2 0x130C DUP9 PUSH1 0xC0 ADD MLOAD PUSH2 0x11C6 DUP11 PUSH1 0xA0 ADD MLOAD DUP12 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0x1321 DUP9 DUP9 PUSH2 0x131C DUP5 PUSH2 0x1CF6 JUMP JUMPDEST PUSH2 0x1F67 JUMP JUMPDEST POP PUSH1 0x40 DUP9 ADD DUP2 SWAP1 MSTORE PUSH1 0xC0 DUP9 ADD MLOAD ISZERO PUSH2 0x1382 JUMPI DUP8 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0x412BC13D202A2EA5119E55FEC9C5E420DDDB18FAF186373AD9795AD4F4545AA9 DUP11 PUSH1 0xC0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x1379 SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST PUSH1 0x1 SWAP3 POP POP JUMPDEST DUP2 ISZERO PUSH2 0x13B5 JUMPI PUSH2 0x13B5 DUP7 DUP9 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND DUP10 PUSH1 0x20 ADD MLOAD DUP11 PUSH1 0x40 ADD MLOAD DUP12 PUSH1 0xE0 ADD MLOAD DUP13 PUSH2 0x100 ADD MLOAD PUSH2 0x204E JUMP JUMPDEST DUP7 MLOAD PUSH1 0x20 DUP9 ADD MLOAD PUSH2 0x13E2 SWAP2 PUSH2 0xFFFF AND SWAP1 ISZERO ISZERO DUP1 PUSH2 0x13D5 JUMPI POP PUSH1 0x40 DUP10 ADD MLOAD ISZERO ISZERO JUMPDEST DUP8 SWAP2 SWAP1 PUSH1 0x1 PUSH1 0xFE SHL PUSH2 0x2187 JUMP JUMPDEST PUSH1 0x0 DUP8 PUSH1 0x20 ADD MLOAD SLT ISZERO PUSH2 0x1408 JUMPI PUSH1 0x20 DUP6 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF9 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH2 0x142E DUP7 DUP9 PUSH2 0x2386 JUMP JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP13 MSTORE SWAP3 SWAP7 POP SWAP1 SWAP5 POP SWAP3 POP SWAP1 POP PUSH2 0x144B DUP9 PUSH2 0x18AE JUMP JUMPDEST ISZERO PUSH2 0x1455 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP3 AND PUSH1 0x40 DUP10 ADD MSTORE DUP5 PUSH2 0x1474 JUMPI PUSH1 0x7 PUSH1 0xFF DUP4 AND GT ISZERO PUSH2 0x1474 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x1497 JUMPI PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE PUSH2 0x14A6 JUMP JUMPDEST PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x7F PUSH1 0xF9 SHL AND SWAP1 MSTORE JUMPDEST PUSH2 0x14B3 DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x25C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP10 ADD MSTORE PUSH1 0x0 JUMPDEST DUP4 ISZERO PUSH2 0x14F6 JUMPI PUSH1 0xF0 DUP5 SWAP1 SHR DUP2 DUP2 EQ PUSH2 0x14E8 JUMPI PUSH2 0x14E8 DUP11 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL PUSH2 0x2187 JUMP JUMPDEST PUSH1 0x10 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 POP PUSH2 0x14C5 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150B PUSH2 0x2640 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP4 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP9 MLOAD DUP2 SLOAD SWAP4 DUP11 ADD MLOAD DUP4 DUP12 ADD MLOAD PUSH1 0x60 DUP13 ADD MLOAD PUSH1 0x80 DUP14 ADD MLOAD PUSH1 0x70 SHR PUSH1 0x1 PUSH1 0x48 SHL MUL PUSH27 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000 NOT PUSH2 0xFFFF SWAP1 SWAP3 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH9 0xFFFF00000000000000 NOT PUSH1 0xFF SWAP5 SWAP1 SWAP5 AND PUSH1 0x1 PUSH1 0x30 SHL MUL PUSH7 0xFF000000000000 NOT PUSH1 0xF8 SWAP7 SWAP1 SWAP7 SHR PUSH6 0x10000000000 MUL PUSH6 0xFF0000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP9 AND PUSH5 0xFFFFFFFFFF NOT SWAP1 SWAP12 AND SWAP11 SWAP1 SWAP11 OR SWAP7 SWAP1 SWAP7 AND SWAP9 SWAP1 SWAP9 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR AND SWAP5 SWAP1 SWAP5 OR AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE MLOAD SWAP3 SWAP4 POP SWAP1 SWAP2 PUSH32 0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E SWAP2 SWAP1 LOG2 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1610 DUP3 PUSH2 0x264D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x1621 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x162F JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x163C JUMPI POP POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x1 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x164A JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x1661 JUMPI POP PUSH1 0x3 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x165F JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x167A JUMPI PUSH2 0x1673 DUP6 DUP8 DUP5 PUSH1 0x0 PUSH2 0x10B7 JUMP JUMPDEST SWAP1 POP PUSH2 0x16C6 JUMP JUMPDEST PUSH1 0x2 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x1688 JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x169F JUMPI POP PUSH1 0x4 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x169D JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x16AF JUMPI PUSH2 0x1673 DUP6 DUP8 DUP5 PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x6 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x16BD JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x16C6 JUMPI POP DUP1 JUMPDEST PUSH2 0x666 DUP6 DUP6 DUP5 DUP5 PUSH2 0x2663 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16E3 DUP5 PUSH2 0x264D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x16F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 ISZERO PUSH2 0x172B JUMPI PUSH2 0x171C DUP6 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP8 PUSH1 0x60 ADD MLOAD DUP9 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x172B JUMPI POP PUSH1 0x0 JUMPDEST PUSH1 0x80 DUP6 ADD MLOAD PUSH2 0x173A SWAP1 DUP3 PUSH2 0x287E JUMP JUMPDEST PUSH1 0x80 DUP7 ADD MSTORE PUSH2 0x174B DUP6 DUP9 DUP9 DUP6 PUSH2 0x1191 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x1766 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP8 SWAP1 SWAP8 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP5 KECCAK256 SLOAD PUSH2 0xFFFF DUP2 AND SWAP6 PUSH4 0xFFFFFFFF PUSH3 0x10000 DUP4 DIV DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x30 SHL DUP4 DIV AND SWAP5 POP PUSH1 0xFF PUSH1 0x1 PUSH1 0x50 SHL DUP4 DIV AND SWAP4 POP PUSH1 0x1 PUSH1 0x58 SHL SWAP1 SWAP2 DIV PUSH1 0xD8 SHL SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLT ISZERO DUP1 ISZERO PUSH2 0x17F1 JUMPI POP DUP1 PUSH2 0x17EE DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP6 PUSH1 0x60 ADD MLOAD DUP7 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO JUMPDEST PUSH2 0x8EB JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A6A JUMP JUMPDEST PUSH2 0x1815 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x181F PUSH2 0x2640 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP4 DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP2 MLOAD PUSH1 0xA0 DUP2 ADD DUP4 MSTORE SWAP1 SLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP3 MSTORE PUSH6 0x10000000000 DUP2 DIV PUSH1 0xF8 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP6 DUP3 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x1 PUSH1 0x30 SHL DUP6 DIV PUSH1 0xFF AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1 PUSH1 0x38 SHL DUP5 DIV PUSH2 0xFFFF AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x48 SHL SWAP1 SWAP4 DIV PUSH1 0x70 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH2 0x18BA DUP4 PUSH2 0x1412 JUMP JUMPDEST ISZERO PUSH2 0x18DB JUMPI PUSH2 0x18C8 DUP2 PUSH2 0x28A1 JUMP JUMPDEST DUP4 MLOAD PUSH5 0xFFFFFFFFFF AND LT SWAP2 POP PUSH2 0xBE2 SWAP1 POP JUMP JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND ISZERO DUP1 ISZERO SWAP1 PUSH2 0xBD7 JUMPI POP DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND GT ISZERO SWAP1 POP PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x190D DUP5 DUP5 PUSH2 0x28BF JUMP JUMPDEST SWAP1 POP PUSH1 0x1 DUP2 MLOAD GT PUSH2 0x191F JUMPI SWAP1 POP PUSH2 0xEDB JUMP JUMPDEST PUSH2 0xAA3 DUP2 PUSH2 0x29E0 JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO DUP1 ISZERO SWAP1 PUSH2 0x193B JUMPI POP PUSH2 0x3FFF DUP3 GT ISZERO JUMPDEST PUSH2 0x1944 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x80 DUP4 ADD MLOAD PUSH1 0x60 DUP5 ADD MLOAD PUSH2 0xFFFF AND DUP4 EQ ISZERO PUSH2 0x1963 JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND ISZERO PUSH2 0x19A8 JUMPI PUSH1 0xF0 DUP2 SWAP1 SHR PUSH2 0x3FFF AND DUP4 DUP2 EQ ISZERO PUSH2 0x1995 JUMPI POP PUSH1 0x1 PUSH1 0xFE SHL SWAP1 DUP2 AND EQ SWAP1 POP PUSH2 0xEDB JUMP JUMPDEST POP PUSH1 0x10 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH2 0x1963 JUMP JUMPDEST POP PUSH1 0x0 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x19C2 PUSH2 0x2B98 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x50 SHL SWAP1 DIV PUSH4 0xFFFFFFFF AND SWAP5 POP SWAP1 SWAP2 POP DUP4 ISZERO PUSH2 0x1A2E JUMPI DUP1 SLOAD PUSH2 0x1A27 SWAP1 PUSH1 0x1 PUSH1 0x70 SHL SWAP1 DIV PUSH7 0xFFFFFFFFFFFFFF AND PUSH2 0x2BA5 JUMP JUMPDEST SWAP3 POP PUSH2 0x1A43 JUMP JUMPDEST DUP1 SLOAD PUSH1 0x1 PUSH1 0x70 SHL SWAP1 DIV PUSH7 0xFFFFFFFFFFFFFF AND SWAP3 POP JUMPDEST SLOAD PUSH1 0x1 PUSH1 0xA8 SHL SWAP1 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND SWAP8 SWAP4 SWAP7 POP SWAP2 SWAP5 POP SWAP3 POP POP JUMP JUMPDEST DUP2 DUP2 MUL PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x1A8E JUMPI DUP2 ISZERO DUP1 PUSH2 0x1A80 JUMPI POP DUP3 DUP3 DUP3 DUP2 PUSH2 0x1A7D JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x1A89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xEDB JUMP JUMPDEST DUP3 ISZERO DUP1 PUSH2 0x1AA3 JUMPI POP DUP2 DUP4 DUP3 DUP2 PUSH2 0x1AA0 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1ABD DUP7 PUSH2 0x2BB3 JUMP JUMPDEST SWAP1 SWAP3 POP SWAP1 POP PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x1AE2 JUMPI POP PUSH1 0x0 SWAP1 POP PUSH5 0x2540BE400 PUSH2 0x1B64 JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1EE10833 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1B1D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1B31 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1B55 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SGT PUSH2 0x1B64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP7 SWAP2 SWAP6 POP SWAP4 POP SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1B77 PUSH2 0x4022 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B81 PUSH2 0x2BEA JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP8 ISZERO ISZERO DUP5 MSTORE DUP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP3 MLOAD PUSH1 0xA0 DUP2 ADD DUP5 MSTORE DUP2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0xA0 SHL DUP3 DIV DUP2 AND ISZERO ISZERO SWAP5 DUP4 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH1 0x1 PUSH1 0xB0 SHL DUP2 DIV DUP5 AND PUSH1 0xA EXP SWAP5 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE SWAP4 SWAP5 POP SWAP3 SWAP2 PUSH1 0x60 DUP4 ADD SWAP2 PUSH1 0x1 PUSH1 0xA8 SHL SWAP1 SWAP2 DIV AND PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1BF6 JUMPI INVALID JUMPDEST DUP2 MSTORE SWAP2 SLOAD PUSH1 0x1 PUSH1 0xB8 SHL SWAP1 DIV PUSH9 0xFFFFFFFFFFFFFFFFFF AND PUSH1 0x20 SWAP1 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 NOT EQ DUP1 ISZERO PUSH2 0x1C33 JUMPI POP PUSH1 0x1 PUSH1 0xFF SHL DUP4 EQ JUMPDEST ISZERO PUSH2 0x1C3D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x1C46 JUMPI INVALID JUMPDEST SDIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x5 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1C61 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1C86 JUMPI PUSH1 0x0 PUSH2 0x1C72 DUP5 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH2 0x1C82 DUP2 PUSH1 0x0 ADD MLOAD DUP5 PUSH2 0x2BF7 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH1 0x0 DUP3 SGT ISZERO PUSH2 0x1CB2 JUMPI PUSH1 0x0 PUSH2 0x1C9C DUP7 DUP7 DUP6 PUSH2 0x2C89 JUMP JUMPDEST SWAP1 POP DUP6 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x1CAC JUMPI DUP1 SWAP2 POP JUMPDEST POP PUSH2 0xF7F JUMP JUMPDEST PUSH1 0x3 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1CC4 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1CE1 JUMPI PUSH2 0x1CDC DUP5 PUSH2 0x1CD7 DUP5 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2D7C JUMP JUMPDEST PUSH2 0xF7F JUMP JUMPDEST DUP5 MLOAD PUSH2 0xF7F SWAP1 DUP6 PUSH2 0x1CF1 DUP6 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2DB7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x1D05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x5 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D1E JUMPI INVALID JUMPDEST EQ PUSH2 0x1D30 JUMPI PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x1D39 JUMP JUMPDEST PUSH4 0xED1279F PUSH1 0xE1 SHL JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1D4C DUP7 PUSH1 0x0 ADD MLOAD ADDRESS DUP5 PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D60 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1D87 JUMPI PUSH1 0x0 PUSH2 0x1D75 DUP7 PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH2 0x1D81 DUP2 DUP7 PUSH2 0x2F40 JUMP JUMPDEST POP PUSH2 0x1DCA JUMP JUMPDEST PUSH1 0x1 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D99 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1DA9 JUMPI PUSH2 0x1D81 DUP7 DUP6 PUSH2 0x2FAB JUMP JUMPDEST PUSH1 0x2 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1DBB JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x7B JUMPI PUSH2 0x1DCA DUP7 PUSH2 0x3057 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DDB DUP8 PUSH1 0x0 ADD MLOAD ADDRESS DUP6 PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH2 0x1DEF PUSH2 0x1DEA DUP3 DUP5 PUSH2 0x3096 JUMP JUMPDEST PUSH2 0x264D JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0x5F5E100 DUP4 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x1E13 JUMPI POP DUP1 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0xAA3 SWAP1 PUSH2 0xF79 DUP5 PUSH4 0x5F5E100 PUSH2 0x1A5E JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x1E39 JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x0 DUP3 SGT PUSH2 0x1E46 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1E51 DUP5 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E62 DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x30F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x2 DUP2 SDIV PUSH12 0x33B2E3C9FD0803CE8000000 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 SWAP1 SUB SDIV DUP6 SGT ISZERO PUSH2 0x1E8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP2 PUSH12 0x33B2E3C9FD0803CE8000000 DUP8 MUL ADD DUP2 PUSH2 0x1EA6 JUMPI INVALID JUMPDEST SDIV SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1EC7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1EE2 DUP8 PUSH1 0x80 ADD MLOAD DUP4 PUSH2 0xF87 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP1 PUSH2 0x1EF7 JUMPI PUSH1 0x0 DUP1 SWAP4 POP SWAP4 POP POP POP PUSH2 0x1F5F JUMP JUMPDEST DUP5 DUP1 ISZERO PUSH2 0x1F04 JUMPI POP PUSH1 0x0 DUP2 SLT JUMPDEST ISZERO PUSH2 0x1F39 JUMPI DUP7 MLOAD PUSH2 0x1F26 SWAP1 PUSH2 0xFFFF AND DUP8 PUSH2 0x1F1D DUP5 PUSH2 0xEE1 JUMP JUMPDEST DUP6 SWAP3 SWAP2 SWAP1 PUSH2 0x317E JUMP JUMPDEST SWAP4 POP PUSH2 0x1F32 DUP3 DUP3 PUSH2 0x1DFA JUMP JUMPDEST SWAP3 POP PUSH2 0x1F5C JUMP JUMPDEST DUP7 MLOAD PUSH2 0x1F4D SWAP1 DUP4 SWAP1 DUP9 SWAP1 PUSH2 0xFFFF AND DUP5 PUSH2 0x1C4E JUMP JUMPDEST SWAP4 POP PUSH2 0x1F59 DUP3 DUP6 PUSH2 0x1DFA JUMP JUMPDEST SWAP3 POP JUMPDEST POP POP JUMPDEST SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST DUP3 MLOAD PUSH1 0x0 SWAP1 TIMESTAMP SWAP1 DUP3 SWAP1 PUSH2 0x1F7D SWAP1 PUSH2 0xFFFF AND PUSH2 0x3214 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F90 DUP3 DUP9 PUSH1 0xC0 ADD MLOAD DUP6 PUSH2 0x323A JUMP JUMPDEST SWAP1 POP PUSH2 0x1F9E DUP8 DUP4 DUP4 DUP9 PUSH2 0x331D JUMP JUMPDEST SWAP4 POP PUSH1 0x0 PUSH2 0x1FAB DUP4 PUSH2 0x344A JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ISZERO PUSH2 0x2033 JUMPI DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x9FC27B92 DUP9 PUSH2 0x1FD9 DUP12 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST DUP10 DUP13 PUSH1 0xC0 ADD MLOAD DUP11 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2000 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4857 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x201A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x202E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP5 ISZERO PUSH2 0x2043 JUMPI PUSH2 0x2043 DUP8 DUP7 PUSH2 0x34BC JUMP JUMPDEST POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2058 PUSH2 0x2B98 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SWAP1 SWAP2 POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP7 SLT DUP1 ISZERO SWAP1 PUSH2 0x20A3 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP7 SGT ISZERO JUMPDEST PUSH2 0x20AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP6 SLT ISZERO DUP1 ISZERO PUSH2 0x20C7 JUMPI POP PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP6 SGT ISZERO JUMPDEST PUSH2 0x20D0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x20DB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH7 0xFFFFFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x20EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 SLOAD PUSH7 0xFFFFFFFFFFFFFF SWAP1 SWAP4 AND PUSH1 0x1 PUSH1 0x70 SHL MUL PUSH7 0xFFFFFFFFFFFFFF PUSH1 0x70 SHL NOT PUSH1 0xA SWAP8 SWAP1 SWAP8 SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0xA8 SHL MUL PUSH1 0x1 PUSH1 0x1 PUSH1 0xA8 SHL SUB PUSH4 0xFFFFFFFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x50 SHL MUL PUSH4 0xFFFFFFFF PUSH1 0x50 SHL NOT PUSH10 0xFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP9 AND PUSH10 0xFFFFFFFFFFFFFFFFFFFF NOT SWAP1 SWAP7 AND SWAP6 SWAP1 SWAP6 OR SWAP7 SWAP1 SWAP7 AND SWAP4 SWAP1 SWAP4 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR SWAP4 SWAP1 SWAP4 AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2199 JUMPI POP PUSH2 0x3FFF DUP4 GT ISZERO JUMPDEST PUSH2 0x21A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP1 ISZERO PUSH2 0x21B6 JUMPI POP DUP3 DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ JUMPDEST ISZERO PUSH2 0x21C0 JUMPI PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x80 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x233B JUMPI PUSH1 0xF0 DUP3 SWAP1 SHR PUSH2 0x3FFF AND DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x21EF JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x2227 JUMPI POP PUSH1 0x80 DUP8 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP7 AND PUSH1 0x10 SWAP1 SWAP4 MUL SWAP3 SWAP1 SWAP3 SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 MSTORE POP PUSH2 0x16D2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x2234 JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x2289 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP6 AND NOT SWAP3 SWAP1 SWAP3 AND SWAP2 PUSH1 0x3 PUSH1 0xFE SHL DUP4 AND PUSH2 0x2267 JUMPI PUSH1 0x10 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP3 POP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x16D2 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x2295 JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x22EF JUMPI PUSH1 0x80 DUP9 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP11 SWAP1 SHL DUP9 OR DUP2 AND PUSH1 0x10 DUP7 MUL SHR SWAP7 SWAP1 SWAP7 OR SWAP6 SWAP2 SHL AND ISZERO PUSH2 0x22C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x1 SWAP2 SWAP1 SWAP2 ADD PUSH1 0x10 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x16D2 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x22FC JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x230A JUMPI POP POP POP POP PUSH2 0x16D2 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND PUSH1 0x10 DUP3 DUP2 MUL SWAP2 SWAP1 SWAP2 SHR SWAP4 SWAP1 SWAP4 OR SWAP3 SWAP2 SWAP1 SWAP2 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND SWAP1 PUSH1 0x1 ADD PUSH2 0x21CA JUMP JUMPDEST DUP5 PUSH2 0x2348 JUMPI POP POP POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x9 DUP2 LT PUSH2 0x2355 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP8 SWAP1 SHL DUP6 OR AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2417 JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x23AC JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x23C2 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23D2 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x23DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23EF JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x23FF JUMPI POP PUSH1 0x60 DUP2 ADD MLOAD ISZERO JUMPDEST ISZERO PUSH2 0x240E JUMPI PUSH2 0x240E DUP12 DUP4 PUSH2 0x34DB JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2390 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x24BA JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2437 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x244E JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x245E JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x2472 JUMPI PUSH1 0x80 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 SSTORE PUSH2 0x24B1 JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2484 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x249D JUMPI PUSH1 0x80 DUP2 ADD MLOAD DUP1 PUSH2 0x249A DUP4 DUP3 PUSH2 0x362A JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x24A9 DUP2 DUP7 DUP7 DUP7 PUSH2 0x375B JUMP JUMPDEST SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x241B JUMP JUMPDEST POP PUSH1 0x60 DUP10 ADD MLOAD PUSH1 0x0 PUSH2 0x24CA PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP12 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP JUMPDEST DUP13 PUSH1 0x20 ADD MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2594 JUMPI PUSH1 0x0 DUP14 PUSH1 0x20 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2505 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x2522 JUMPI POP PUSH2 0x258C JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2534 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2552 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x254F JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x255B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2567 DUP2 DUP10 DUP10 DUP10 PUSH2 0x375B JUMP JUMPDEST SWAP2 SWAP10 POP SWAP8 POP SWAP6 POP PUSH2 0x2584 DUP2 DUP5 DUP8 PUSH1 0x10 DUP2 LT PUSH2 0x257E JUMPI INVALID JUMPDEST ADD PUSH2 0x362A JUMP JUMPDEST PUSH1 0x1 DUP6 ADD SWAP5 POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x24E6 JUMP JUMPDEST POP PUSH1 0x10 DUP4 GT ISZERO DUP1 ISZERO PUSH2 0x25AB JUMPI POP PUSH5 0xFFFFFFFFFF DUP5 GT ISZERO JUMPDEST PUSH2 0x25B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP4 SWAP11 SWAP3 SWAP10 POP SWAP8 POP SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000 DUP4 AND DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x2637 JUMPI PUSH1 0x1 PUSH1 0xFE SHL DUP3 DUP2 AND EQ ISZERO PUSH2 0x2621 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND DUP2 SHR SWAP3 SWAP1 SWAP3 OR SWAP2 PUSH1 0x10 ADD JUMPDEST PUSH1 0x10 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP2 POP PUSH2 0x25ED JUMP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x1 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 GT ISZERO PUSH2 0x1D05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2671 JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x2688 JUMPI POP PUSH1 0x4 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2686 JUMPI INVALID JUMPDEST EQ JUMPDEST DUP1 PUSH2 0x269E JUMPI POP PUSH1 0x6 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x269C JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x276A JUMPI PUSH2 0x26AD DUP5 DUP3 PUSH2 0x17BE JUMP JUMPDEST PUSH1 0x60 DUP5 ADD MLOAD PUSH2 0x26BC SWAP1 DUP3 PUSH2 0x287E JUMP JUMPDEST PUSH1 0x60 DUP6 ADD MSTORE DUP4 MLOAD PUSH1 0x40 MLOAD PUSH4 0x21285613 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 PUSH20 0x0 SWAP2 PUSH4 0x4250AC26 SWAP2 PUSH2 0x26FD SWAP2 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x4AC3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2715 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2729 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x274D SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0xC0 DUP7 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x275F SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0xC0 DUP7 ADD MSTORE POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x5 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2778 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x16D2 JUMPI DUP2 PUSH2 0x27A2 DUP6 PUSH1 0xC0 ADD MLOAD PUSH2 0x11C6 DUP8 PUSH1 0xA0 ADD MLOAD DUP9 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO PUSH2 0x27C0 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x498E JUMP JUMPDEST PUSH1 0xC0 DUP5 ADD MLOAD PUSH2 0x27CF SWAP1 DUP4 PUSH2 0x287E JUMP JUMPDEST PUSH1 0xC0 DUP6 ADD MSTORE DUP4 MLOAD PUSH1 0x40 MLOAD PUSH4 0x52E73F77 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 PUSH20 0x0 SWAP2 PUSH4 0x52E73F77 SWAP2 PUSH2 0x2810 SWAP2 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x4AC3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2828 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x283C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2860 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x2872 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST DUP1 DUP3 SUB DUP3 DUP2 SGT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x2 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x15180 DUP3 LT ISZERO PUSH2 0x28B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x15180 DUP2 MOD SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x10 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x28D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x28DC PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH1 0xFF DUP6 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x2910 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x294A JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x2937 PUSH2 0x3FB8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x292F JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x29D6 JUMPI PUSH1 0x0 DUP4 DUP3 PUSH1 0x10 DUP2 LT PUSH2 0x2969 JUMPI INVALID JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x297A JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD DUP4 SLOAD PUSH2 0xFFFF DUP2 AND DUP3 MSTORE PUSH5 0xFFFFFFFFFF PUSH3 0x10000 DUP3 DIV AND SWAP3 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0x38 SHL DUP4 DIV AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x40 SHL SWAP1 SWAP2 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH1 0x1 ADD PUSH2 0x2950 JUMP JUMPDEST POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x29FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2A24 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x2A81 JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2A40 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x2A61 DUP2 PUSH1 0x0 ADD MLOAD DUP3 PUSH1 0x20 ADD MLOAD DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0x37E0 JUMP JUMPDEST DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2A6D JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE POP PUSH1 0x1 ADD PUSH2 0x2A2A JUMP JUMPDEST POP PUSH1 0x1 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x16D2 JUMPI DUP1 JUMPDEST PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x2AC7 JUMPI POP DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2AA6 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2ABD JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2B8F JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2AD8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2AEF JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B06 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2B19 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP3 DUP2 MSTORE POP DUP3 DUP2 MSTORE POP POP POP DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2B36 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B4D JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP7 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B64 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP8 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2B77 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD SWAP2 SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x0 NOT ADD PUSH2 0x2A8F JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2A85 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x6 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x8 DUP2 SWAP1 SHR PUSH1 0xFF SWAP1 SWAP2 AND SHL SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x2BC0 PUSH2 0x383B JUMP JUMPDEST PUSH1 0x0 SWAP5 DUP6 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP2 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND SWAP3 PUSH1 0x1 PUSH1 0xA0 SHL SWAP1 SWAP2 DIV PUSH1 0xFF AND SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x7 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x2C06 JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C11 DUP5 PUSH2 0x30F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2C1E DUP5 PUSH2 0x3848 JUMP JUMPDEST SWAP1 POP DUP2 PUSH12 0x19D971E4FE8401E74000001 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP2 PUSH2 0x2C3B JUMPI INVALID JUMPDEST SDIV DUP2 SGT ISZERO PUSH2 0x2C48 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH12 0x33B2E3C9FD0803CE8000000 PUSH12 0x19D971E4FE8401E74000000 DUP4 DUP4 MUL ADD SDIV PUSH1 0x0 DUP6 SGT PUSH2 0x2C7D JUMPI PUSH2 0x2C78 DUP2 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2C7F JUMP JUMPDEST DUP1 JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH1 0x5 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x2CA0 JUMPI INVALID JUMPDEST EQ PUSH2 0x2CB2 JUMPI PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2CBB JUMP JUMPDEST PUSH4 0xED1279F PUSH1 0xE1 SHL JUMPDEST SWAP1 POP DUP7 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x2CD7 JUMPI DUP7 MLOAD PUSH2 0x2CD4 SWAP1 ADDRESS DUP4 PUSH2 0x2E2E JUMP JUMPDEST SWAP3 POP JUMPDEST DUP7 MLOAD PUSH2 0x2CE4 SWAP1 DUP8 DUP8 PUSH2 0x3869 JUMP JUMPDEST DUP7 PUSH1 0x20 ADD MLOAD DUP1 PUSH2 0x2CF8 JUMPI POP PUSH1 0x0 DUP8 PUSH1 0x80 ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2D0D JUMPI DUP7 MLOAD PUSH2 0x2D0A SWAP1 ADDRESS DUP4 PUSH2 0x2E2E JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x80 DUP8 ADD MLOAD ISZERO PUSH2 0x2D48 JUMPI PUSH1 0x0 PUSH2 0x2D2B DUP9 PUSH2 0x2D26 DUP6 PUSH2 0x264D JUMP JUMPDEST PUSH2 0x1DFA JUMP JUMPDEST SWAP1 POP PUSH2 0x2D3A DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x264D JUMP JUMPDEST DUP2 SGT ISZERO PUSH2 0x2D46 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMPDEST DUP7 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x2D69 JUMPI PUSH2 0x2D5F PUSH2 0x1DEA DUP4 DUP6 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP POP POP POP PUSH2 0xAA3 JUMP JUMPDEST PUSH2 0x2D5F DUP6 PUSH2 0x264D JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND SWAP1 DUP3 ISZERO PUSH2 0x8FC MUL SWAP1 DUP4 SWAP1 PUSH1 0x0 DUP2 DUP2 DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x2DB2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2E22 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x2DB2 PUSH2 0x38C1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 DUP2 AND PUSH1 0x24 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP4 MLOAD DUP1 DUP5 SUB SWAP1 SWAP2 ADD DUP2 MSTORE PUSH1 0x44 SWAP1 SWAP3 ADD DUP4 MSTORE PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP7 AND OR DUP2 MSTORE SWAP3 MLOAD DUP3 MLOAD PUSH1 0x0 SWAP5 DUP6 SWAP5 DUP6 SWAP5 DUP11 AND SWAP4 SWAP1 SWAP3 SWAP1 SWAP2 DUP3 SWAP2 DUP1 DUP4 DUP4 JUMPDEST PUSH1 0x20 DUP4 LT PUSH2 0x2EAB JUMPI DUP1 MLOAD DUP3 MSTORE PUSH1 0x1F NOT SWAP1 SWAP3 ADD SWAP2 PUSH1 0x20 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x2E8C JUMP JUMPDEST PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB DUP1 NOT DUP3 MLOAD AND DUP2 DUP5 MLOAD AND DUP1 DUP3 OR DUP6 MSTORE POP POP POP POP POP POP SWAP1 POP ADD SWAP2 POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2F0B JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2F10 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x2F1F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x2F34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x2F48 PUSH2 0x392E JUMP JUMPDEST SLOAD DUP3 MLOAD PUSH1 0x40 MLOAD PUSH4 0xE8EDA9DF PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 PUSH4 0xE8EDA9DF SWAP2 PUSH2 0x2F7D SWAP2 DUP6 SWAP1 ADDRESS SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x4 ADD PUSH2 0x482A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2F97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x666 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA0712D68 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2FDE SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2FF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x300C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3030 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x3050 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48DA JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1249C58B CALLVALUE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2F97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x30ED JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH2 0x3100 PUSH2 0x392E JUMP JUMPDEST SLOAD PUSH1 0x40 MLOAD PUSH4 0xD15E0053 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND SWAP1 PUSH4 0xD15E0053 SWAP1 PUSH2 0x312E SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3146 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x315A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1DEA SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x3193 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x31AB JUMPI PUSH2 0x31A4 DUP7 DUP6 DUP6 PUSH2 0x393B JUMP JUMPDEST SWAP1 POP PUSH2 0x3208 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31B6 DUP7 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x31CA JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x31E2 JUMPI PUSH2 0x31DB DUP2 DUP7 DUP7 PUSH2 0x39F8 JUMP JUMPDEST SWAP2 POP PUSH2 0x3206 JUMP JUMPDEST PUSH1 0x1 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x31F4 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x7B JUMPI PUSH2 0x31DB DUP8 DUP3 DUP8 DUP8 PUSH2 0x3AAE JUMP JUMPDEST POP JUMPDEST PUSH2 0x2C7F PUSH2 0x3EA DUP3 PUSH2 0x264D JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x321F PUSH2 0x3BAC JUMP JUMPDEST PUSH1 0x0 SWAP4 DUP5 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3249 DUP7 DUP6 PUSH2 0x3BB9 JUMP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x3258 PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH2 0x327D DUP6 DUP10 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x0 SGT ISZERO DUP1 ISZERO PUSH2 0x3296 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP2 LT JUMPDEST PUSH2 0x329F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 SLOAD PUSH12 0xFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP3 AND OR PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x60 SHL NOT AND PUSH1 0x1 PUSH1 0x60 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP7 AND MUL OR DUP3 SSTORE PUSH4 0xFFFFFFFF DUP8 LT PUSH2 0x32F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 SLOAD PUSH4 0xFFFFFFFF DUP8 AND PUSH1 0x1 PUSH1 0xE0 SHL MUL PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB SWAP1 SWAP2 AND OR SWAP1 SSTORE POP SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0xE0 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 ISZERO PUSH2 0x33DE JUMPI PUSH20 0x0 PUSH4 0xE0C01A72 DUP6 PUSH2 0x3352 DUP9 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST DUP9 PUSH1 0xE0 ADD MLOAD DUP10 PUSH2 0x100 ADD MLOAD PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x337C SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4885 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3394 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x33A8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x33CC SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP8 ADD DUP2 SWAP1 MSTORE PUSH2 0x100 DUP8 ADD MSTORE SWAP1 POP JUMPDEST PUSH2 0x3420 PUSH2 0x3419 DUP7 PUSH2 0x100 ADD MLOAD PUSH2 0x3413 PUSH8 0xDE0B6B3A7640000 PUSH2 0x340D DUP9 PUSH2 0x3407 DUP13 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST SWAP1 PUSH2 0x3C5C JUMP JUMPDEST SWAP1 PUSH2 0x3CB5 JUMP JUMPDEST SWAP1 PUSH2 0x3096 JUMP JUMPDEST DUP3 SWAP1 PUSH2 0x3D1C JUMP JUMPDEST SWAP1 POP PUSH2 0x3438 PUSH8 0xDE0B6B3A7640000 PUSH2 0x340D DUP5 DUP7 PUSH2 0x3C5C JUMP JUMPDEST DUP6 PUSH2 0x100 ADD DUP2 DUP2 MSTORE POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3455 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD SWAP2 SWAP3 POP SWAP1 PUSH1 0x1 PUSH1 0xF8 SHL SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x34B1 JUMPI PUSH2 0x348A PUSH2 0x3D76 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 SLOAD AND SWAP3 POP PUSH2 0xBE2 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 SWAP3 POP POP POP PUSH2 0xBE2 JUMP JUMPDEST PUSH2 0x8EB PUSH20 0xCFEAEAD4947F0705A14EC42AC3D44129E1EF3ED5 DUP4 DUP4 PUSH2 0x2DB7 JUMP JUMPDEST DUP2 MLOAD MLOAD DUP2 LT PUSH2 0x34E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x60 ADD MLOAD GT PUSH2 0x34FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x350C JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3523 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3533 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x3551 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x354E JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x355A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ADD DUP1 MLOAD PUSH1 0x0 NOT ADD SWAP1 MSTORE PUSH1 0x0 DUP1 DUP1 JUMPDEST DUP6 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x35CD JUMPI PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3587 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP3 DUP2 PUSH1 0x80 ADD MLOAD GT DUP1 ISZERO PUSH2 0x35B4 JUMPI POP PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x35B1 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST ISZERO PUSH2 0x35C4 JUMPI DUP1 PUSH1 0x80 ADD MLOAD SWAP3 POP DUP2 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x356B JUMP JUMPDEST POP DUP2 DUP5 EQ ISZERO PUSH2 0x35E6 JUMPI POP POP PUSH1 0x2 PUSH1 0xA0 SWAP2 SWAP1 SWAP2 ADD MSTORE PUSH2 0x8EB JUMP JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x0 ADD MLOAD DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x35F8 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x80 DUP6 DUP2 ADD DUP1 MLOAD SWAP2 DUP4 ADD DUP1 MLOAD SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP2 DUP3 ADD MSTORE PUSH1 0x2 SWAP5 ADD SWAP4 SWAP1 SWAP4 MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x363D JUMPI POP DUP2 MLOAD PUSH2 0x3FFF LT ISZERO JUMPDEST PUSH2 0x3646 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x3663 JUMPI POP PUSH1 0x20 DUP3 ADD MLOAD PUSH5 0xFFFFFFFFFF LT ISZERO JUMPDEST PUSH2 0x366C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x3685 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x368E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT SGT DUP1 ISZERO SWAP1 PUSH2 0x36BD JUMPI POP PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF SLT ISZERO JUMPDEST PUSH2 0x36C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 DUP5 ADD MLOAD PUSH1 0x40 DUP6 ADD MLOAD PUSH1 0x60 SWAP1 SWAP6 ADD MLOAD PUSH1 0xA SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 SHL MUL PUSH19 0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000 NOT PUSH1 0xFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH8 0xFF00000000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP4 AND PUSH3 0x10000 MUL PUSH7 0xFFFFFFFFFF0000 NOT PUSH2 0xFFFF SWAP1 SWAP7 AND PUSH2 0xFFFF NOT SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 OR SWAP5 SWAP1 SWAP5 AND SWAP3 SWAP1 SWAP3 OR AND SWAP2 SWAP1 SWAP2 OR SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x376A DUP9 PUSH2 0x3D83 JUMP JUMPDEST SWAP1 POP DUP5 ISZERO DUP1 PUSH2 0x3778 JUMPI POP DUP1 DUP6 GT JUMPDEST ISZERO PUSH2 0x3781 JUMPI DUP1 SWAP5 POP JUMPDEST DUP7 DUP1 PUSH2 0x3791 JUMPI POP PUSH1 0x0 DUP9 PUSH1 0x60 ADD MLOAD SLT JUMPDEST SWAP7 POP PUSH2 0xFFFF DUP7 AND ISZERO PUSH2 0x37A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP SWAP5 MLOAD SWAP4 SWAP6 PUSH1 0x10 SWAP4 SWAP1 SWAP4 SHR PUSH1 0xF0 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 SWAP4 OR SWAP4 POP SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0xD JUMPDEST PUSH1 0x0 PUSH3 0xF4240 DUP3 PUSH1 0x13 DUP2 GT ISZERO PUSH2 0x37D9 JUMPI INVALID JUMPDEST ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFF DUP5 GT ISZERO PUSH2 0x37F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x3803 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 DUP3 GT ISZERO PUSH2 0x3811 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH8 0xFFFF000000000000 PUSH1 0x30 DUP5 SWAP1 SHL AND PUSH6 0xFFFFFFFFFF00 PUSH1 0x8 DUP5 SWAP1 SHL AND OR PUSH1 0xFF DUP3 AND OR SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0xF PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x3862 JUMPI PUSH2 0x385B DUP3 PUSH2 0xEE1 JUMP JUMPDEST SWAP1 POP PUSH2 0xBE2 JUMP JUMPDEST POP DUP1 PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH4 0x23B872DD PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE ADDRESS PUSH1 0x24 DUP4 ADD MSTORE PUSH1 0x44 DUP3 ADD DUP5 SWAP1 MSTORE SWAP2 MLOAD SWAP2 DUP6 AND SWAP2 PUSH4 0x23B872DD SWAP2 PUSH1 0x64 DUP1 DUP3 ADD SWAP3 PUSH1 0x0 SWAP3 SWAP1 SWAP2 SWAP1 DUP3 SWAP1 SUB ADD DUP2 DUP4 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x38CB PUSH2 0x4051 JUMP JUMPDEST RETURNDATASIZE DUP1 ISZERO PUSH2 0x38DF JUMPI PUSH1 0x20 DUP2 EQ PUSH2 0x38E8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SWAP3 POP PUSH2 0x38F3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x0 DUP4 RETURNDATACOPY DUP2 MLOAD SWAP3 POP JUMPDEST POP DUP2 PUSH2 0x8EB JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x5 PUSH1 0x24 DUP3 ADD MSTORE PUSH5 0x455243323 PUSH1 0xDC SHL PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x13 PUSH2 0x37C7 JUMP JUMPDEST DUP3 MLOAD PUSH1 0x40 MLOAD PUSH4 0xDB006A75 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 SELFBALANCE SWAP2 DUP4 SWAP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 PUSH4 0xDB006A75 SWAP1 PUSH2 0x396F SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3989 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x399D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x39C1 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x39E1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x491D JUMP JUMPDEST SELFBALANCE PUSH2 0x39EC DUP2 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP PUSH2 0x2D72 DUP7 DUP6 PUSH2 0x2D7C JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A18 PUSH2 0x3A13 DUP6 PUSH1 0x0 ADD MLOAD PUSH2 0x3A0E DUP6 PUSH2 0x264D JUMP JUMPDEST PUSH2 0x2BF7 JUMP JUMPDEST PUSH2 0x1CF6 JUMP JUMPDEST SWAP1 POP PUSH2 0x3A22 PUSH2 0x392E JUMP JUMPDEST SLOAD DUP5 MLOAD PUSH1 0x40 MLOAD PUSH4 0x1A4CA37B PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 PUSH4 0x69328DEC SWAP2 PUSH2 0x3A54 SWAP2 DUP6 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x4807 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A6E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3A82 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3AA6 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 MLOAD PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0x3AC7 SWAP1 ADDRESS PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xDB006A75 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3AFB SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3B15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3B29 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3B4D SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x3B6D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x491D JUMP JUMPDEST DUP6 MLOAD PUSH1 0x0 SWAP1 PUSH2 0x3B84 SWAP1 ADDRESS PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH2 0x3B90 DUP2 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP PUSH2 0x3BA1 DUP8 PUSH1 0x0 ADD MLOAD DUP8 DUP7 PUSH2 0x2DB7 JUMP JUMPDEST POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x3 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3BC7 DUP6 PUSH2 0x3DF0 JUMP JUMPDEST SWAP2 SWAP5 POP SWAP3 POP SWAP1 POP DUP1 DUP5 GT DUP1 ISZERO PUSH2 0x3BDD JUMPI POP PUSH1 0x0 DUP2 GT JUMPDEST DUP1 ISZERO PUSH2 0x3BE9 JUMPI POP PUSH1 0x0 DUP4 GT JUMPDEST ISZERO PUSH2 0x3C48 JUMPI PUSH1 0x0 PUSH2 0x3BF9 DUP7 PUSH2 0x1755 JUMP JUMPDEST POP POP POP SWAP2 POP POP PUSH1 0x0 PUSH2 0x3C24 PUSH2 0x3C1B PUSH4 0x5F5E100 DUP5 PUSH2 0x3C5C SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP5 DUP9 SUB DUP8 PUSH2 0x3E4C JUMP JUMPDEST SWAP1 POP PUSH2 0x3C30 DUP5 DUP3 PUSH2 0x3D1C JUMP JUMPDEST SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP5 LT PUSH2 0x3C45 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x11 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x3C6B JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST DUP3 DUP3 MUL DUP3 DUP5 DUP3 DUP2 PUSH2 0x3C78 JUMPI INVALID JUMPDEST DIV EQ PUSH2 0xAA3 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE PUSH1 0x21 DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH2 0x4B96 PUSH1 0x21 SWAP2 CODECOPY PUSH1 0x40 ADD SWAP2 POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x3D0B JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1A PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206469766973696F6E206279207A65726F000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x3D14 JUMPI INVALID JUMPDEST DIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0xAA3 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x12 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD GT DUP1 ISZERO PUSH2 0x3D9D JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x3DA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x2 LT PUSH2 0x3DBD JUMPI POP PUSH1 0x20 DUP2 ADD MLOAD PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DCF PUSH1 0x1 DUP5 PUSH1 0x40 ADD MLOAD SUB PUSH2 0x3E6E JUMP JUMPDEST PUSH1 0x20 DUP5 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0xAA3 SWAP1 PUSH3 0x76A700 SWAP1 PUSH2 0x3DEA SWAP1 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP1 PUSH2 0x3D1C JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x3DFE PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP6 SWAP1 SWAP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP6 SWAP1 SWAP6 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP3 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP2 AND SWAP4 PUSH1 0x1 PUSH1 0x60 SHL DUP3 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP4 POP PUSH1 0x1 PUSH1 0xE0 SHL SWAP1 SWAP2 DIV PUSH4 0xFFFFFFFF AND SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF7F DUP3 PUSH2 0x340D PUSH4 0x1DA9C00 DUP2 DUP9 PUSH2 0x3407 DUP10 PUSH8 0xDE0B6B3A7640000 PUSH2 0x3C5C JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 EQ ISZERO PUSH2 0x3E83 JUMPI POP PUSH3 0x76A700 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x2 EQ ISZERO PUSH2 0x3E96 JUMPI POP PUSH3 0xED4E00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x3 EQ ISZERO PUSH2 0x3EAA JUMPI POP PUSH4 0x1DA9C00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x4 EQ ISZERO PUSH2 0x3EBE JUMPI POP PUSH4 0x3B53800 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x5 EQ ISZERO PUSH2 0x3ED2 JUMPI POP PUSH4 0x9450C00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x6 EQ ISZERO PUSH2 0x3EE6 JUMPI POP PUSH4 0x128A1800 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x7 EQ ISZERO PUSH2 0x3EFA JUMPI POP PUSH4 0x25143000 PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x493D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3FF3 JUMPI INVALID JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE SWAP1 PUSH1 0x60 DUP3 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1 SWAP1 PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY POP SWAP2 SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x4097 JUMPI DUP1 DUP2 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x40AD JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x40C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x40DE JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x20 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP4 GT ISZERO PUSH2 0x40F4 JUMPI INVALID JUMPDEST PUSH2 0x4101 DUP3 DUP4 DUP6 MUL ADD PUSH2 0x4B51 JUMP JUMPDEST DUP4 DUP2 MSTORE DUP3 DUP2 ADD SWAP1 DUP7 DUP5 ADD PUSH1 0xC0 DUP1 DUP8 MUL DUP10 ADD DUP7 ADD DUP11 LT ISZERO PUSH2 0x411F JUMPI DUP8 DUP9 REVERT JUMPDEST DUP8 JUMPDEST DUP8 DUP2 LT ISZERO PUSH2 0x41A0 JUMPI DUP2 DUP4 DUP13 SUB SLT ISZERO PUSH2 0x4137 JUMPI DUP9 DUP10 REVERT JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP4 DUP2 ADD DUP2 DUP2 LT DUP10 DUP3 GT OR ISZERO PUSH2 0x414C JUMPI INVALID JUMPDEST DUP3 MSTORE DUP5 MLOAD DUP2 MSTORE DUP9 DUP6 ADD MLOAD DUP10 DUP3 ADD MSTORE DUP5 DUP3 ADD MLOAD SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP1 DUP6 ADD MLOAD SWAP1 DUP3 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP3 ADD MSTORE PUSH1 0xA0 SWAP1 PUSH2 0x4187 DUP3 DUP7 ADD PUSH2 0x41C7 JUMP JUMPDEST SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MSTORE SWAP4 DUP7 ADD SWAP4 SWAP2 DUP2 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x4121 JUMP JUMPDEST POP SWAP2 SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0x4 DUP2 LT PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH2 0xBE2 DUP2 PUSH2 0x4B85 JUMP JUMPDEST DUP1 MLOAD PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4206 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x420F DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x4229 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4235 DUP7 DUP3 DUP8 ADD PUSH2 0x4086 JUMP JUMPDEST SWAP5 SWAP8 SWAP1 SWAP7 POP SWAP4 SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4259 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x4262 DUP7 PUSH2 0x406F JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x427D JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4289 DUP10 DUP4 DUP11 ADD PUSH2 0x4086 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x42A1 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP9 ADD SWAP2 POP DUP9 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x42B4 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x42C2 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP10 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x42D3 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP7 SWAP10 SWAP6 SWAP9 POP SWAP4 SWAP7 POP PUSH1 0x20 ADD SWAP5 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x42FA JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4303 DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x431E JUMPI DUP4 DUP5 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4331 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x433F JUMPI DUP5 DUP6 REVERT JUMPDEST DUP8 PUSH1 0x20 PUSH1 0xC0 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x4353 JUMPI DUP5 DUP6 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP5 POP DUP1 SWAP4 POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x437A JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x4383 DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x4229 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43AE JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0xAA3 DUP2 PUSH2 0x4B74 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43CA JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x7 DUP2 LT PUSH2 0xAA3 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43E9 JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4402 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD SWAP2 POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x4414 DUP2 PUSH2 0x4B74 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4430 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xA0 DUP2 ADD DUP2 DUP2 LT PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT OR ISZERO PUSH2 0x444C JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x4463 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x447F JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x4490 PUSH1 0x40 DUP5 ADD PUSH2 0x41E1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x44A1 PUSH1 0x60 DUP5 ADD PUSH2 0x41D6 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x44B2 PUSH1 0x80 DUP5 ADD PUSH2 0x41AF JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x44D0 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x44E6 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP1 DUP5 ADD SWAP1 PUSH1 0x80 DUP3 DUP8 SUB SLT ISZERO PUSH2 0x44F9 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x80 DUP2 ADD DUP2 DUP2 LT DUP4 DUP3 GT OR ISZERO PUSH2 0x450E JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD DUP3 DUP2 GT ISZERO PUSH2 0x451F JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x452B DUP9 DUP3 DUP7 ADD PUSH2 0x40CE JUMP JUMPDEST DUP3 MSTORE POP PUSH1 0x20 DUP4 ADD MLOAD DUP3 DUP2 GT ISZERO PUSH2 0x453F JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x454B DUP9 DUP3 DUP7 ADD PUSH2 0x40CE JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP4 ADD MLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 DUP4 ADD MLOAD PUSH1 0x60 DUP3 ADD MSTORE DUP1 SWAP5 POP POP POP POP PUSH1 0x20 DUP4 ADD MLOAD SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x458A JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0xAA3 DUP2 PUSH2 0x4B85 JUMP JUMPDEST DUP2 DUP4 MSTORE PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFB SHL SUB DUP4 GT ISZERO PUSH2 0x45AD JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x20 DUP4 MUL DUP1 DUP4 PUSH1 0x20 DUP8 ADD CALLDATACOPY SWAP4 SWAP1 SWAP4 ADD PUSH1 0x20 ADD SWAP3 DUP4 MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD SWAP5 POP DUP1 DUP5 ADD DUP4 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4636 JUMPI DUP2 MLOAD DUP1 MLOAD DUP9 MSTORE DUP4 DUP2 ADD MLOAD DUP5 DUP10 ADD MSTORE PUSH1 0x40 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0x60 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0x80 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0xA0 SWAP1 DUP2 ADD MLOAD SWAP1 PUSH1 0x4 DUP3 LT PUSH2 0x4621 JUMPI INVALID JUMPDEST DUP9 ADD MSTORE PUSH1 0xC0 SWAP1 SWAP7 ADD SWAP6 SWAP1 DUP3 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x45DC JUMP JUMPDEST POP SWAP5 SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 DUP2 AND DUP3 MSTORE DUP5 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x60 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x0 DUP3 DUP5 PUSH1 0x80 DUP5 ADD CALLDATACOPY DUP2 DUP4 ADD PUSH1 0x80 SWAP1 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1F SWAP1 SWAP3 ADD PUSH1 0x1F NOT AND ADD ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP7 DUP8 AND DUP2 MSTORE SWAP5 DUP7 AND PUSH1 0x20 DUP7 ADD MSTORE SWAP3 DUP6 AND PUSH1 0x40 DUP6 ADD MSTORE SWAP1 DUP5 AND PUSH1 0x60 DUP5 ADD MSTORE DUP4 AND PUSH1 0x80 DUP4 ADD MSTORE SWAP1 SWAP2 AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND PUSH1 0x20 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND PUSH1 0x40 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0xFF AND PUSH1 0x60 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP1 PUSH1 0xA0 SHL SUB DUP8 AND DUP3 MSTORE PUSH2 0xFFFF DUP7 AND PUSH1 0x20 DUP4 ADD MSTORE PUSH1 0x80 PUSH1 0x40 DUP4 ADD MSTORE DUP5 MLOAD PUSH1 0x80 DUP1 DUP5 ADD MSTORE PUSH2 0x4778 PUSH2 0x100 DUP5 ADD DUP3 PUSH2 0x45C9 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP7 ADD MLOAD PUSH1 0x7F NOT DUP5 DUP4 SUB ADD PUSH1 0xA0 DUP6 ADD MSTORE PUSH2 0x4795 DUP3 DUP3 PUSH2 0x45C9 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP7 ADD MLOAD PUSH1 0xC0 DUP5 ADD MSTORE PUSH1 0x60 DUP7 ADD MLOAD PUSH1 0xE0 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x47BF DUP2 DUP6 DUP8 PUSH2 0x4595 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND DUP2 MSTORE PUSH2 0xFFFF DUP6 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH5 0xFFFFFFFFFF DUP5 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x80 PUSH1 0x60 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x1DEF SWAP1 DUP4 ADD DUP5 DUP7 PUSH2 0x4595 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 DUP5 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP3 SWAP1 SWAP3 MSTORE SWAP1 SWAP2 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP4 SWAP1 SWAP4 MSTORE SWAP3 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0xFFFF SWAP1 SWAP2 AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP6 SWAP1 SWAP6 AND DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x40 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP4 ADD MSTORE PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xA0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 SWAP1 SWAP5 AND DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x155B985D5D1A1BDC9A5E9959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x4 SWAP1 DUP3 ADD MSTORE PUSH4 0x135A5B9D PUSH1 0xE2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xB SWAP1 DUP3 ADD MSTORE PUSH11 0x4554482042616C616E6365 PUSH1 0xA8 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x6 SWAP1 DUP3 ADD MSTORE PUSH6 0x52656465656D PUSH1 0xD0 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xD SWAP1 DUP3 ADD MSTORE PUSH13 0x92DCECC2D8D2C840D2DCC8CAF PUSH1 0x9B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x556E736F7274656420616374696F6E73 PUSH1 0x80 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x496E73756666696369656E7420746F6B656E2062616C616E6365000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xE SWAP1 DUP3 ADD MSTORE PUSH14 0x1499595B9D1C985B9D0818D85B1B PUSH1 0x92 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x8 SWAP1 DUP3 ADD MSTORE PUSH8 0x9CCACE4086C2E6D PUSH1 0xC3 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x496E76616C69642074726164657320666F72206163636F756E74000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xA SWAP1 DUP3 ADD MSTORE PUSH10 0x2732B390372A37B5B2B7 PUSH1 0xB1 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x92DCE6EACCCCD2C6D2CADCE840C6C2E6D PUSH1 0x7B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x14 SWAP1 DUP3 ADD MSTORE PUSH20 0x125B9CDD59999A58DA595B9D0819195C1BDCDA5D PUSH1 0x62 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH2 0xFFFF SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4AED JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 ADD DUP1 CALLDATALOAD SWAP2 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT ISZERO PUSH2 0x4B06 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 SWAP1 DUP2 ADD SWAP3 POP DUP2 MUL CALLDATASIZE SUB DUP3 SGT ISZERO PUSH2 0x40C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0xDE NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4B32 JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0x5E NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4B32 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP2 DUP2 ADD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x4B6C JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x4B82 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xFFFF DUP2 AND DUP2 EQ PUSH2 0x4B82 JUMPI PUSH1 0x0 DUP1 REVERT INVALID MSTORE8 PUSH2 0x6665 0x4D PUSH2 0x7468 GASPRICE KECCAK256 PUSH14 0x756C7469706C69636174696F6E20 PUSH16 0x766572666C6F77A26469706673582212 KECCAK256 ORIGIN DUP2 0x1F PUSH32 0x2DFAED6AE73F5EE82DDE37E34E8A29D87704373D06746E0114BF0EE664736F6C PUSH4 0x43000706 STOP CALLER ", + "pcMap": { + "0": { + "offset": [ + 591, + 24150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x80" + }, + "2": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "4": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "MSTORE", + "path": "29" + }, + "5": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "7": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "8": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "LT", + "path": "29" + }, + "9": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x7B" + }, + "12": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "13": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "15": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "CALLDATALOAD", + "path": "29" + }, + "16": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH1", + "path": "29", + "value": "0xE0" + }, + "18": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "SHR", + "path": "29" + }, + "19": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "20": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x6E6A32A6" + }, + "25": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "GT", + "path": "29" + }, + "26": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4E" + }, + "29": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "30": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "31": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x6E6A32A6" + }, + "36": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "37": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0xF3" + }, + "40": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "41": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "42": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x82463367" + }, + "47": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "48": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x106" + }, + "51": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "52": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "53": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x8DA5CB5B" + }, + "58": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "59": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x11B" + }, + "62": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "63": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "64": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0xC4C96DAE" + }, + "69": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "70": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x130" + }, + "73": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "74": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x7B" + }, + "77": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMP", + "path": "29" + }, + "78": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPDEST", + "path": "29" + }, + "79": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "80": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x276B64B" + }, + "85": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "86": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x80" + }, + "89": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "90": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "91": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x24A3D622" + }, + "96": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "97": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x95" + }, + "100": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "101": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "102": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x541F5270" + }, + "107": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "108": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0xC0" + }, + "111": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "112": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "113": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH4", + "path": "29", + "value": "0x5950D8E9" + }, + "118": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "EQ", + "path": "29" + }, + "119": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH2", + "path": "29", + "value": "0xE0" + }, + "122": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPI", + "path": "29" + }, + "123": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "JUMPDEST", + "path": "29" + }, + "124": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "126": { + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "DUP1", + "path": "29" + }, + "127": { + "first_revert": true, + "fn": null, + "offset": [ + 591, + 24150 + ], + "op": "REVERT", + "path": "29" + }, + "128": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "JUMPDEST", + "path": "29" + }, + "129": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "PUSH2", + "path": "29", + "value": "0x93" + }, + "132": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8E" + }, + "135": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "136": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "138": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "PUSH2", + "path": "29", + "value": "0x41F2" + }, + "141": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 3235, + 3674 + ], + "op": "JUMP", + "path": "29" + }, + "142": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "JUMPDEST", + "path": "29" + }, + "143": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "PUSH2", + "path": "29", + "value": "0x157" + }, + "146": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 3235, + 3674 + ], + "op": "JUMP", + "path": "29" + }, + "147": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "JUMPDEST", + "path": "29" + }, + "148": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "STOP", + "path": "29" + }, + "149": { + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "150": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "CALLVALUE", + "path": "63" + }, + "151": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "152": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "ISZERO", + "path": "63" + }, + "153": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0xA1" + }, + "156": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPI", + "path": "63" + }, + "157": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "159": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "160": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "REVERT", + "path": "63" + }, + "161": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "162": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "POP", + "path": "63" + }, + "163": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0xAA" + }, + "166": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x1E7" + }, + "169": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "170": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "171": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x40" + }, + "173": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "MLOAD", + "path": "63" + }, + "174": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0xB7" + }, + "177": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "SWAP2", + "path": "63" + }, + "178": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "SWAP1", + "path": "63" + }, + "179": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x4641" + }, + "182": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "183": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "184": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x40" + }, + "186": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "MLOAD", + "path": "63" + }, + "187": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "188": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "SWAP2", + "path": "63" + }, + "189": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "SUB", + "path": "63" + }, + "190": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "SWAP1", + "path": "63" + }, + "191": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "RETURN", + "path": "63" + }, + "192": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "JUMPDEST", + "path": "29" + }, + "193": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "CALLVALUE", + "path": "29" + }, + "194": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "DUP1", + "path": "29" + }, + "195": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "ISZERO", + "path": "29" + }, + "196": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH2", + "path": "29", + "value": "0xCC" + }, + "199": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "JUMPI", + "path": "29" + }, + "200": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "202": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "DUP1", + "path": "29" + }, + "203": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "REVERT", + "path": "29" + }, + "204": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "JUMPDEST", + "path": "29" + }, + "205": { + "op": "POP" + }, + "206": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH2", + "path": "29", + "value": "0x93" + }, + "209": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH2", + "path": "29", + "value": "0xDB" + }, + "212": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "213": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "215": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4366" + }, + "218": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 4487, + 9902 + ], + "op": "JUMP", + "path": "29" + }, + "219": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "JUMPDEST", + "path": "29" + }, + "220": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1F6" + }, + "223": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 4487, + 9902 + ], + "op": "JUMP", + "path": "29" + }, + "224": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "JUMPDEST", + "path": "29" + }, + "225": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "PUSH2", + "path": "29", + "value": "0x93" + }, + "228": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEE" + }, + "231": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "232": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "234": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4242" + }, + "237": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11159, + 12579 + ], + "op": "JUMP", + "path": "29" + }, + "238": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "JUMPDEST", + "path": "29" + }, + "239": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "PUSH2", + "path": "29", + "value": "0x53E" + }, + "242": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11159, + 12579 + ], + "op": "JUMP", + "path": "29" + }, + "243": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "JUMPDEST", + "path": "29" + }, + "244": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "PUSH2", + "path": "29", + "value": "0x93" + }, + "247": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "PUSH2", + "path": "29", + "value": "0x101" + }, + "250": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "251": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "253": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "PUSH2", + "path": "29", + "value": "0x42E6" + }, + "256": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1241, + 2768 + ], + "op": "JUMP", + "path": "29" + }, + "257": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "JUMPDEST", + "path": "29" + }, + "258": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "PUSH2", + "path": "29", + "value": "0x66E" + }, + "261": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1241, + 2768 + ], + "op": "JUMP", + "path": "29" + }, + "262": { + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "263": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "CALLVALUE", + "path": "63" + }, + "264": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "DUP1", + "path": "63" + }, + "265": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "ISZERO", + "path": "63" + }, + "266": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x112" + }, + "269": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "JUMPI", + "path": "63" + }, + "270": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "272": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "DUP1", + "path": "63" + }, + "273": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "REVERT", + "path": "63" + }, + "274": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "275": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "POP", + "path": "63" + }, + "276": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0xAA" + }, + "279": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x7F4" + }, + "282": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 920, + 946 + ], + "op": "JUMP", + "path": "63" + }, + "283": { + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "284": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "CALLVALUE", + "path": "63" + }, + "285": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "DUP1", + "path": "63" + }, + "286": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "ISZERO", + "path": "63" + }, + "287": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x127" + }, + "290": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "JUMPI", + "path": "63" + }, + "291": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "293": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "DUP1", + "path": "63" + }, + "294": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "REVERT", + "path": "63" + }, + "295": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "296": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "POP", + "path": "63" + }, + "297": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0xAA" + }, + "300": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x803" + }, + "303": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 811, + 831 + ], + "op": "JUMP", + "path": "63" + }, + "304": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "JUMPDEST", + "path": "29" + }, + "305": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "CALLVALUE", + "path": "29" + }, + "306": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "DUP1", + "path": "29" + }, + "307": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "ISZERO", + "path": "29" + }, + "308": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH2", + "path": "29", + "value": "0x13C" + }, + "311": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "JUMPI", + "path": "29" + }, + "312": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "314": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "DUP1", + "path": "29" + }, + "315": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "REVERT", + "path": "29" + }, + "316": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "JUMPDEST", + "path": "29" + }, + "317": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "POP", + "path": "29" + }, + "318": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH2", + "path": "29", + "value": "0x145" + }, + "321": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH2", + "path": "29", + "value": "0x81A" + }, + "324": { + "fn": "BatchAction.getLibInfo", + "jump": "i", + "offset": [ + 23767, + 24148 + ], + "op": "JUMP", + "path": "29" + }, + "325": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "JUMPDEST", + "path": "29" + }, + "326": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "328": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "MLOAD", + "path": "29" + }, + "329": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB7" + }, + "332": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP7", + "path": "29" + }, + "333": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP6", + "path": "29" + }, + "334": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP5", + "path": "29" + }, + "335": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP4", + "path": "29" + }, + "336": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP3", + "path": "29" + }, + "337": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP2", + "path": "29" + }, + "338": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP1", + "path": "29" + }, + "339": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "PUSH2", + "path": "29", + "value": "0x469E" + }, + "342": { + "fn": "BatchAction.getLibInfo", + "jump": "i", + "offset": [ + 23767, + 24148 + ], + "op": "JUMP", + "path": "29" + }, + "343": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3235, + 3674 + ], + "op": "JUMPDEST", + "path": "29" + }, + "344": { + "offset": [ + 319, + 320 + ], + "op": "PUSH1", + "path": "28", + "value": "0x2" + }, + "346": { + "offset": [ + 838, + 854 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "348": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 838, + 854 + ], + "op": "SLOAD", + "path": "28" + }, + "349": { + "offset": [ + 838, + 866 + ], + "op": "EQ", + "path": "28" + }, + "350": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 838, + 866 + ], + "op": "ISZERO", + "path": "28" + }, + "351": { + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x183" + }, + "354": { + "offset": [ + 830, + 885 + ], + "op": "JUMPI", + "path": "28" + }, + "355": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x40" + }, + "357": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "MLOAD", + "path": "28" + }, + "358": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "362": { + "op": "PUSH1", + "value": "0xE5" + }, + "364": { + "op": "SHL" + }, + "365": { + "offset": [ + 830, + 885 + ], + "op": "DUP2", + "path": "28" + }, + "366": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "MSTORE", + "path": "28" + }, + "367": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x4" + }, + "369": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "ADD", + "path": "28" + }, + "370": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x17A" + }, + "373": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "SWAP1", + "path": "28" + }, + "374": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x49C5" + }, + "377": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 830, + 885 + ], + "op": "JUMP", + "path": "28" + }, + "378": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "JUMPDEST", + "path": "28" + }, + "379": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x40" + }, + "381": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "MLOAD", + "path": "28" + }, + "382": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "DUP1", + "path": "28" + }, + "383": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "SWAP2", + "path": "28" + }, + "384": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "SUB", + "path": "28" + }, + "385": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "SWAP1", + "path": "28" + }, + "386": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "REVERT", + "path": "28" + }, + "387": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 830, + 885 + ], + "op": "JUMPDEST", + "path": "28" + }, + "388": { + "offset": [ + 319, + 320 + ], + "op": "PUSH1", + "path": "28", + "value": "0x2" + }, + "390": { + "offset": [ + 960, + 976 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "392": { + "offset": [ + 960, + 987 + ], + "op": "SSTORE", + "path": "28" + }, + "393": { + "op": "PUSH1", + "value": "0x1" + }, + "395": { + "op": "PUSH1", + "value": "0x1" + }, + "397": { + "op": "PUSH1", + "value": "0xA0" + }, + "399": { + "op": "SHL" + }, + "400": { + "op": "SUB" + }, + "401": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3429 + ], + "op": "DUP4", + "path": "29", + "statement": 0 + }, + "402": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3429 + ], + "op": "AND", + "path": "29" + }, + "403": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3419, + 3429 + ], + "op": "CALLER", + "path": "29" + }, + "404": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3429 + ], + "op": "EQ", + "path": "29" + }, + "405": { + "branch": 359, + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3429 + ], + "op": "DUP1", + "path": "29" + }, + "406": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3460 + ], + "op": "PUSH2", + "path": "29", + "value": "0x19E" + }, + "409": { + "branch": 359, + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3460 + ], + "op": "JUMPI", + "path": "29" + }, + "410": { + "op": "POP" + }, + "411": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3433, + 3443 + ], + "op": "CALLER", + "path": "29" + }, + "412": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3455, + 3459 + ], + "op": "ADDRESS", + "path": "29" + }, + "413": { + "branch": 360, + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3433, + 3460 + ], + "op": "EQ", + "path": "29" + }, + "414": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3408, + 3460 + ], + "op": "JUMPDEST", + "path": "29" + }, + "415": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1BA" + }, + "418": { + "branch": 360, + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "JUMPI", + "path": "29" + }, + "419": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "421": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "MLOAD", + "path": "29" + }, + "422": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "426": { + "op": "PUSH1", + "value": "0xE5" + }, + "428": { + "op": "SHL" + }, + "429": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "DUP2", + "path": "29" + }, + "430": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "MSTORE", + "path": "29" + }, + "431": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "433": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "ADD", + "path": "29" + }, + "434": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "437": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "SWAP1", + "path": "29" + }, + "438": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "PUSH2", + "path": "29", + "value": "0x48B4" + }, + "441": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 3400, + 3477 + ], + "op": "JUMP", + "path": "29" + }, + "442": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3400, + 3477 + ], + "op": "JUMPDEST", + "path": "29" + }, + "443": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3487, + 3515 + ], + "op": "PUSH2", + "path": "29", + "statement": 1, + "value": "0x1C3" + }, + "446": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3507, + 3514 + ], + "op": "DUP4", + "path": "29" + }, + "447": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3487, + 3506 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8A0" + }, + "450": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 3487, + 3515 + ], + "op": "JUMP", + "path": "29" + }, + "451": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3487, + 3515 + ], + "op": "JUMPDEST", + "path": "29" + }, + "452": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3525, + 3561 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "454": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3564, + 3609 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1D0" + }, + "457": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3592, + 3599 + ], + "op": "DUP5", + "path": "29" + }, + "458": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3601, + 3608 + ], + "op": "DUP5", + "path": "29" + }, + "459": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3601, + 3608 + ], + "op": "DUP5", + "path": "29" + }, + "460": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3564, + 3591 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8EF" + }, + "463": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 3564, + 3609 + ], + "op": "JUMP", + "path": "29" + }, + "464": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3564, + 3609 + ], + "op": "JUMPDEST", + "path": "29" + }, + "465": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3525, + 3609 + ], + "op": "SWAP1", + "path": "29" + }, + "466": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3525, + 3609 + ], + "op": "POP", + "path": "29" + }, + "467": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3619, + 3667 + ], + "op": "PUSH2", + "path": "29", + "statement": 2, + "value": "0x1DC" + }, + "470": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3643, + 3650 + ], + "op": "DUP5", + "path": "29" + }, + "471": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3652, + 3666 + ], + "op": "DUP3", + "path": "29" + }, + "472": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3619, + 3642 + ], + "op": "PUSH2", + "path": "29", + "value": "0xAAA" + }, + "475": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 3619, + 3667 + ], + "op": "JUMP", + "path": "29" + }, + "476": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 3619, + 3667 + ], + "op": "JUMPDEST", + "path": "29" + }, + "477": { + "op": "POP" + }, + "478": { + "op": "POP" + }, + "479": { + "offset": [ + 276, + 277 + ], + "op": "PUSH1", + "path": "28", + "value": "0x1" + }, + "481": { + "offset": [ + 1142, + 1158 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "483": { + "offset": [ + 1142, + 1173 + ], + "op": "SSTORE", + "path": "28" + }, + "484": { + "op": "POP" + }, + "485": { + "op": "POP" + }, + "486": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "o", + "offset": [ + 3235, + 3674 + ], + "op": "JUMP", + "path": "29" + }, + "487": { + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "488": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x2" + }, + "490": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "SLOAD", + "path": "63" + }, + "491": { + "op": "PUSH1", + "value": "0x1" + }, + "493": { + "op": "PUSH1", + "value": "0x1" + }, + "495": { + "op": "PUSH1", + "value": "0xA0" + }, + "497": { + "op": "SHL" + }, + "498": { + "op": "SUB" + }, + "499": { + "offset": [ + 1035, + 1063 + ], + "op": "AND", + "path": "63" + }, + "500": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "offset": [ + 1035, + 1063 + ], + "op": "DUP2", + "path": "63" + }, + "501": { + "fn": "BatchAction.batchBalanceAndTradeAction", + "jump": "o", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "502": { + "fn": "BatchAction.batchLend", + "offset": [ + 4487, + 9902 + ], + "op": "JUMPDEST", + "path": "29" + }, + "503": { + "offset": [ + 319, + 320 + ], + "op": "PUSH1", + "path": "28", + "value": "0x2" + }, + "505": { + "offset": [ + 838, + 854 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "507": { + "fn": "BatchAction.batchLend", + "offset": [ + 838, + 854 + ], + "op": "SLOAD", + "path": "28" + }, + "508": { + "offset": [ + 838, + 866 + ], + "op": "EQ", + "path": "28" + }, + "509": { + "fn": "BatchAction.batchLend", + "offset": [ + 838, + 866 + ], + "op": "ISZERO", + "path": "28" + }, + "510": { + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x219" + }, + "513": { + "offset": [ + 830, + 885 + ], + "op": "JUMPI", + "path": "28" + }, + "514": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x40" + }, + "516": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "MLOAD", + "path": "28" + }, + "517": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "521": { + "op": "PUSH1", + "value": "0xE5" + }, + "523": { + "op": "SHL" + }, + "524": { + "offset": [ + 830, + 885 + ], + "op": "DUP2", + "path": "28" + }, + "525": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "MSTORE", + "path": "28" + }, + "526": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x4" + }, + "528": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "ADD", + "path": "28" + }, + "529": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x17A" + }, + "532": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "SWAP1", + "path": "28" + }, + "533": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x49C5" + }, + "536": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 830, + 885 + ], + "op": "JUMP", + "path": "28" + }, + "537": { + "fn": "BatchAction.batchLend", + "offset": [ + 830, + 885 + ], + "op": "JUMPDEST", + "path": "28" + }, + "538": { + "offset": [ + 319, + 320 + ], + "op": "PUSH1", + "path": "28", + "value": "0x2" + }, + "540": { + "offset": [ + 960, + 976 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "542": { + "offset": [ + 960, + 987 + ], + "op": "SSTORE", + "path": "28" + }, + "543": { + "op": "PUSH1", + "value": "0x1" + }, + "545": { + "op": "PUSH1", + "value": "0x1" + }, + "547": { + "op": "PUSH1", + "value": "0xA0" + }, + "549": { + "op": "SHL" + }, + "550": { + "op": "SUB" + }, + "551": { + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4634 + ], + "op": "DUP4", + "path": "29", + "statement": 3 + }, + "552": { + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4634 + ], + "op": "AND", + "path": "29" + }, + "553": { + "fn": "BatchAction.batchLend", + "offset": [ + 4624, + 4634 + ], + "op": "CALLER", + "path": "29" + }, + "554": { + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4634 + ], + "op": "EQ", + "path": "29" + }, + "555": { + "branch": 361, + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4634 + ], + "op": "DUP1", + "path": "29" + }, + "556": { + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4665 + ], + "op": "PUSH2", + "path": "29", + "value": "0x234" + }, + "559": { + "branch": 361, + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4665 + ], + "op": "JUMPI", + "path": "29" + }, + "560": { + "op": "POP" + }, + "561": { + "fn": "BatchAction.batchLend", + "offset": [ + 4638, + 4648 + ], + "op": "CALLER", + "path": "29" + }, + "562": { + "fn": "BatchAction.batchLend", + "offset": [ + 4660, + 4664 + ], + "op": "ADDRESS", + "path": "29" + }, + "563": { + "branch": 362, + "fn": "BatchAction.batchLend", + "offset": [ + 4638, + 4665 + ], + "op": "EQ", + "path": "29" + }, + "564": { + "fn": "BatchAction.batchLend", + "offset": [ + 4613, + 4665 + ], + "op": "JUMPDEST", + "path": "29" + }, + "565": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "PUSH2", + "path": "29", + "value": "0x250" + }, + "568": { + "branch": 362, + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "JUMPI", + "path": "29" + }, + "569": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "571": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "MLOAD", + "path": "29" + }, + "572": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "576": { + "op": "PUSH1", + "value": "0xE5" + }, + "578": { + "op": "SHL" + }, + "579": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "DUP2", + "path": "29" + }, + "580": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "MSTORE", + "path": "29" + }, + "581": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "583": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "ADD", + "path": "29" + }, + "584": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "587": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "SWAP1", + "path": "29" + }, + "588": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "PUSH2", + "path": "29", + "value": "0x48B4" + }, + "591": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 4605, + 4682 + ], + "op": "JUMP", + "path": "29" + }, + "592": { + "fn": "BatchAction.batchLend", + "offset": [ + 4605, + 4682 + ], + "op": "JUMPDEST", + "path": "29" + }, + "593": { + "fn": "BatchAction.batchLend", + "offset": [ + 4692, + 4720 + ], + "op": "PUSH2", + "path": "29", + "statement": 4, + "value": "0x259" + }, + "596": { + "fn": "BatchAction.batchLend", + "offset": [ + 4712, + 4719 + ], + "op": "DUP4", + "path": "29" + }, + "597": { + "fn": "BatchAction.batchLend", + "offset": [ + 4692, + 4711 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8A0" + }, + "600": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 4692, + 4720 + ], + "op": "JUMP", + "path": "29" + }, + "601": { + "fn": "BatchAction.batchLend", + "offset": [ + 4692, + 4720 + ], + "op": "JUMPDEST", + "path": "29" + }, + "602": { + "fn": "BatchAction.batchLend", + "offset": [ + 4731, + 4767 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "604": { + "fn": "BatchAction.batchLend", + "offset": [ + 4770, + 4803 + ], + "op": "PUSH2", + "path": "29", + "value": "0x264" + }, + "607": { + "fn": "BatchAction.batchLend", + "offset": [ + 4795, + 4802 + ], + "op": "DUP5", + "path": "29" + }, + "608": { + "fn": "BatchAction.batchLend", + "offset": [ + 4770, + 4794 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB2B" + }, + "611": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 4770, + 4803 + ], + "op": "JUMP", + "path": "29" + }, + "612": { + "fn": "BatchAction.batchLend", + "offset": [ + 4770, + 4803 + ], + "op": "JUMPDEST", + "path": "29" + }, + "613": { + "fn": "BatchAction.batchLend", + "offset": [ + 4731, + 4803 + ], + "op": "SWAP1", + "path": "29" + }, + "614": { + "fn": "BatchAction.batchLend", + "offset": [ + 4731, + 4803 + ], + "op": "POP", + "path": "29" + }, + "615": { + "fn": "BatchAction.batchLend", + "offset": [ + 4980, + 5016 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "617": { + "fn": "BatchAction.batchLend", + "offset": [ + 5019, + 5146 + ], + "op": "PUSH2", + "path": "29", + "value": "0x278" + }, + "620": { + "fn": "BatchAction.batchLend", + "offset": [ + 5069, + 5076 + ], + "op": "DUP6", + "path": "29" + }, + "621": { + "fn": "BatchAction.batchLend", + "offset": [ + 5090, + 5104 + ], + "op": "DUP4", + "path": "29" + }, + "622": { + "fn": "BatchAction.batchLend", + "offset": [ + 5090, + 5121 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "624": { + "fn": "BatchAction.batchLend", + "offset": [ + 5090, + 5121 + ], + "op": "ADD", + "path": "29" + }, + "625": { + "fn": "BatchAction.batchLend", + "offset": [ + 5090, + 5121 + ], + "op": "MLOAD", + "path": "29" + }, + "626": { + "fn": "BatchAction.batchLend", + "offset": [ + 5135, + 5136 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "628": { + "fn": "BatchAction.batchLend", + "offset": [ + 5019, + 5055 + ], + "op": "PUSH2", + "path": "29", + "value": "0xBE7" + }, + "631": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5019, + 5146 + ], + "op": "JUMP", + "path": "29" + }, + "632": { + "fn": "BatchAction.batchLend", + "offset": [ + 5019, + 5146 + ], + "op": "JUMPDEST", + "path": "29" + }, + "633": { + "fn": "BatchAction.batchLend", + "offset": [ + 4980, + 5146 + ], + "op": "SWAP1", + "path": "29" + }, + "634": { + "fn": "BatchAction.batchLend", + "offset": [ + 4980, + 5146 + ], + "op": "POP", + "path": "29" + }, + "635": { + "fn": "BatchAction.batchLend", + "offset": [ + 5156, + 5188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x282" + }, + "638": { + "fn": "BatchAction.batchLend", + "offset": [ + 5156, + 5188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3F12" + }, + "641": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5156, + 5188 + ], + "op": "JUMP", + "path": "29" + }, + "642": { + "fn": "BatchAction.batchLend", + "offset": [ + 5156, + 5188 + ], + "op": "JUMPDEST", + "path": "29" + }, + "643": { + "fn": "BatchAction.batchLend", + "offset": [ + 5204, + 5213 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "645": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "JUMPDEST", + "path": "29" + }, + "646": { + "fn": "BatchAction.batchLend", + "offset": [ + 5219, + 5237 + ], + "op": "DUP5", + "path": "29" + }, + "647": { + "fn": "BatchAction.batchLend", + "offset": [ + 5219, + 5237 + ], + "op": "DUP2", + "path": "29" + }, + "648": { + "fn": "BatchAction.batchLend", + "offset": [ + 5219, + 5237 + ], + "op": "LT", + "path": "29" + }, + "649": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "ISZERO", + "path": "29" + }, + "650": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "PUSH2", + "path": "29", + "value": "0x50C" + }, + "653": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "JUMPI", + "path": "29" + }, + "654": { + "fn": "BatchAction.batchLend", + "offset": [ + 5258, + 5283 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "655": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5293 + ], + "op": "DUP7", + "path": "29" + }, + "656": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5293 + ], + "op": "DUP7", + "path": "29" + }, + "657": { + "fn": "BatchAction.batchLend", + "offset": [ + 5294, + 5295 + ], + "op": "DUP4", + "path": "29" + }, + "658": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "DUP2", + "path": "29" + }, + "659": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "DUP2", + "path": "29" + }, + "660": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "LT", + "path": "29" + }, + "661": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "PUSH2", + "path": "29", + "value": "0x29A" + }, + "664": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "JUMPI", + "path": "29" + }, + "665": { + "dev": "Index out of range", + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "INVALID", + "path": "29" + }, + "666": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "JUMPDEST", + "path": "29" + }, + "667": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "SWAP1", + "path": "29" + }, + "668": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "POP", + "path": "29" + }, + "669": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "671": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "MUL", + "path": "29" + }, + "672": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "DUP2", + "path": "29" + }, + "673": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "ADD", + "path": "29" + }, + "674": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "SWAP1", + "path": "29" + }, + "675": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2AC" + }, + "678": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "SWAP2", + "path": "29" + }, + "679": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "SWAP1", + "path": "29" + }, + "680": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4B3C" + }, + "683": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5286, + 5296 + ], + "op": "JUMP", + "path": "29" + }, + "684": { + "fn": "BatchAction.batchLend", + "offset": [ + 5286, + 5296 + ], + "op": "JUMPDEST", + "path": "29" + }, + "685": { + "fn": "BatchAction.batchLend", + "offset": [ + 5258, + 5296 + ], + "op": "SWAP1", + "path": "29" + }, + "686": { + "op": "POP" + }, + "687": { + "fn": "BatchAction.batchLend", + "offset": [ + 5509, + 5514 + ], + "op": "DUP2", + "path": "29" + }, + "688": { + "branch": 363, + "fn": "BatchAction.batchLend", + "offset": [ + 5509, + 5514 + ], + "op": "ISZERO", + "path": "29" + }, + "689": { + "fn": "BatchAction.batchLend", + "offset": [ + 5505, + 5623 + ], + "op": "PUSH2", + "path": "29", + "value": "0x315" + }, + "692": { + "branch": 363, + "fn": "BatchAction.batchLend", + "offset": [ + 5505, + 5623 + ], + "op": "JUMPI", + "path": "29" + }, + "693": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5569 + ], + "op": "DUP7", + "path": "29", + "statement": 5 + }, + "694": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5569 + ], + "op": "DUP7", + "path": "29" + }, + "695": { + "fn": "BatchAction.batchLend", + "offset": [ + 5574, + 5575 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1" + }, + "697": { + "fn": "BatchAction.batchLend", + "offset": [ + 5570, + 5571 + ], + "op": "DUP5", + "path": "29" + }, + "698": { + "fn": "BatchAction.batchLend", + "offset": [ + 5570, + 5575 + ], + "op": "SUB", + "path": "29" + }, + "699": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "DUP2", + "path": "29" + }, + "700": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "DUP2", + "path": "29" + }, + "701": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "LT", + "path": "29" + }, + "702": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2C3" + }, + "705": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "JUMPI", + "path": "29" + }, + "706": { + "dev": "Index out of range", + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "INVALID", + "path": "29" + }, + "707": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "JUMPDEST", + "path": "29" + }, + "708": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "SWAP1", + "path": "29" + }, + "709": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "POP", + "path": "29" + }, + "710": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "712": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "MUL", + "path": "29" + }, + "713": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "DUP2", + "path": "29" + }, + "714": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "ADD", + "path": "29" + }, + "715": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "SWAP1", + "path": "29" + }, + "716": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2D5" + }, + "719": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "SWAP2", + "path": "29" + }, + "720": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "SWAP1", + "path": "29" + }, + "721": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4B3C" + }, + "724": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5562, + 5576 + ], + "op": "JUMP", + "path": "29" + }, + "725": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5576 + ], + "op": "JUMPDEST", + "path": "29" + }, + "726": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2E3" + }, + "729": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "SWAP1", + "path": "29" + }, + "730": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "732": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "DUP2", + "path": "29" + }, + "733": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "ADD", + "path": "29" + }, + "734": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "SWAP1", + "path": "29" + }, + "735": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "738": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5562, + 5587 + ], + "op": "JUMP", + "path": "29" + }, + "739": { + "fn": "BatchAction.batchLend", + "offset": [ + 5562, + 5587 + ], + "op": "JUMPDEST", + "path": "29" + }, + "740": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5587 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "743": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5587 + ], + "op": "AND", + "path": "29" + }, + "744": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5559 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2F4" + }, + "747": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5559 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "749": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5559 + ], + "op": "DUP4", + "path": "29" + }, + "750": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5559 + ], + "op": "ADD", + "path": "29" + }, + "751": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5548 + ], + "op": "DUP4", + "path": "29" + }, + "752": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5559 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "755": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5542, + 5559 + ], + "op": "JUMP", + "path": "29" + }, + "756": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5559 + ], + "op": "JUMPDEST", + "path": "29" + }, + "757": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5587 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "760": { + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5587 + ], + "op": "AND", + "path": "29" + }, + "761": { + "branch": 364, + "fn": "BatchAction.batchLend", + "offset": [ + 5542, + 5587 + ], + "op": "GT", + "path": "29" + }, + "762": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "PUSH2", + "path": "29", + "value": "0x315" + }, + "765": { + "branch": 364, + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "JUMPI", + "path": "29" + }, + "766": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "768": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "MLOAD", + "path": "29" + }, + "769": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "773": { + "op": "PUSH1", + "value": "0xE5" + }, + "775": { + "op": "SHL" + }, + "776": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "DUP2", + "path": "29" + }, + "777": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "MSTORE", + "path": "29" + }, + "778": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "780": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "ADD", + "path": "29" + }, + "781": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "784": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "SWAP1", + "path": "29" + }, + "785": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4964" + }, + "788": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5534, + 5608 + ], + "op": "JUMP", + "path": "29" + }, + "789": { + "fn": "BatchAction.batchLend", + "offset": [ + 5534, + 5608 + ], + "op": "JUMPDEST", + "path": "29" + }, + "790": { + "fn": "BatchAction.batchLend", + "offset": [ + 5733, + 5750 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "792": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5766 + ], + "op": "PUSH2", + "path": "29", + "value": "0x324" + }, + "795": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5766 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "797": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5766 + ], + "op": "DUP4", + "path": "29" + }, + "798": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5766 + ], + "op": "ADD", + "path": "29" + }, + "799": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5759 + ], + "op": "DUP4", + "path": "29" + }, + "800": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5766 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AD7" + }, + "803": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5753, + 5766 + ], + "op": "JUMP", + "path": "29" + }, + "804": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5766 + ], + "op": "JUMPDEST", + "path": "29" + }, + "805": { + "fn": "BatchAction.batchLend", + "offset": [ + 5753, + 5773 + ], + "op": "SWAP2", + "path": "29" + }, + "806": { + "op": "POP" + }, + "807": { + "op": "POP" + }, + "808": { + "branch": 365, + "fn": "BatchAction.batchLend", + "offset": [ + 5795, + 5808 + ], + "op": "DUP1", + "path": "29", + "statement": 6 + }, + "809": { + "fn": "BatchAction.batchLend", + "offset": [ + 5787, + 5809 + ], + "op": "PUSH2", + "path": "29", + "value": "0x331" + }, + "812": { + "branch": 365, + "fn": "BatchAction.batchLend", + "offset": [ + 5787, + 5809 + ], + "op": "JUMPI", + "path": "29" + }, + "813": { + "fn": "BatchAction.batchLend", + "offset": [ + 5787, + 5809 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "815": { + "fn": "BatchAction.batchLend", + "offset": [ + 5787, + 5809 + ], + "op": "DUP1", + "path": "29" + }, + "816": { + "fn": "BatchAction.batchLend", + "offset": [ + 5787, + 5809 + ], + "op": "REVERT", + "path": "29" + }, + "817": { + "fn": "BatchAction.batchLend", + "offset": [ + 5787, + 5809 + ], + "op": "JUMPDEST", + "path": "29" + }, + "818": { + "fn": "BatchAction.batchLend", + "offset": [ + 5847, + 5856 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "820": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "JUMPDEST", + "path": "29" + }, + "821": { + "fn": "BatchAction.batchLend", + "offset": [ + 5866, + 5875 + ], + "op": "DUP2", + "path": "29" + }, + "822": { + "fn": "BatchAction.batchLend", + "offset": [ + 5862, + 5863 + ], + "op": "DUP2", + "path": "29" + }, + "823": { + "fn": "BatchAction.batchLend", + "offset": [ + 5862, + 5875 + ], + "op": "LT", + "path": "29" + }, + "824": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "ISZERO", + "path": "29" + }, + "825": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "PUSH2", + "path": "29", + "value": "0x374" + }, + "828": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "JUMPI", + "path": "29" + }, + "829": { + "fn": "BatchAction.batchLend", + "offset": [ + 5949, + 5969 + ], + "op": "PUSH1", + "path": "29", + "statement": 7, + "value": "0x0" + }, + "831": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "PUSH2", + "path": "29", + "value": "0x34B" + }, + "834": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "836": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "DUP6", + "path": "29" + }, + "837": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "ADD", + "path": "29" + }, + "838": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "DUP6", + "path": "29" + }, + "839": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AD7" + }, + "842": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 5921, + 5934 + ], + "op": "JUMP", + "path": "29" + }, + "843": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5934 + ], + "op": "JUMPDEST", + "path": "29" + }, + "844": { + "fn": "BatchAction.batchLend", + "offset": [ + 5935, + 5936 + ], + "op": "DUP4", + "path": "29" + }, + "845": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "DUP2", + "path": "29" + }, + "846": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "DUP2", + "path": "29" + }, + "847": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "LT", + "path": "29" + }, + "848": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "PUSH2", + "path": "29", + "value": "0x355" + }, + "851": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "JUMPI", + "path": "29" + }, + "852": { + "dev": "Index out of range", + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "INVALID", + "path": "29" + }, + "853": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "JUMPDEST", + "path": "29" + }, + "854": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "SWAP1", + "path": "29" + }, + "855": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "POP", + "path": "29" + }, + "856": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "858": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "MUL", + "path": "29" + }, + "859": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "ADD", + "path": "29" + }, + "860": { + "fn": "BatchAction.batchLend", + "offset": [ + 5921, + 5937 + ], + "op": "CALLDATALOAD", + "path": "29" + }, + "861": { + "fn": "BatchAction.batchLend", + "offset": [ + 5908, + 5939 + ], + "op": "PUSH1", + "path": "29", + "value": "0xF8" + }, + "863": { + "fn": "BatchAction.batchLend", + "offset": [ + 5908, + 5939 + ], + "op": "SHR", + "path": "29" + }, + "864": { + "fn": "BatchAction.batchLend", + "offset": [ + 5908, + 5970 + ], + "op": "PUSH1", + "path": "29", + "value": "0xFF" + }, + "866": { + "fn": "BatchAction.batchLend", + "offset": [ + 5908, + 5970 + ], + "op": "AND", + "path": "29" + }, + "867": { + "branch": 366, + "fn": "BatchAction.batchLend", + "offset": [ + 5908, + 5970 + ], + "op": "EQ", + "path": "29" + }, + "868": { + "fn": "BatchAction.batchLend", + "offset": [ + 5900, + 5971 + ], + "op": "PUSH2", + "path": "29", + "value": "0x36C" + }, + "871": { + "branch": 366, + "fn": "BatchAction.batchLend", + "offset": [ + 5900, + 5971 + ], + "op": "JUMPI", + "path": "29" + }, + "872": { + "fn": "BatchAction.batchLend", + "offset": [ + 5900, + 5971 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "874": { + "fn": "BatchAction.batchLend", + "offset": [ + 5900, + 5971 + ], + "op": "DUP1", + "path": "29" + }, + "875": { + "fn": "BatchAction.batchLend", + "offset": [ + 5900, + 5971 + ], + "op": "REVERT", + "path": "29" + }, + "876": { + "fn": "BatchAction.batchLend", + "offset": [ + 5900, + 5971 + ], + "op": "JUMPDEST", + "path": "29" + }, + "877": { + "fn": "BatchAction.batchLend", + "offset": [ + 5877, + 5880 + ], + "op": "PUSH1", + "path": "29", + "statement": 8, + "value": "0x1" + }, + "879": { + "fn": "BatchAction.batchLend", + "offset": [ + 5877, + 5880 + ], + "op": "ADD", + "path": "29" + }, + "880": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "PUSH2", + "path": "29", + "value": "0x334" + }, + "883": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "JUMP", + "path": "29" + }, + "884": { + "fn": "BatchAction.batchLend", + "offset": [ + 5842, + 6011 + ], + "op": "JUMPDEST", + "path": "29" + }, + "885": { + "op": "POP" + }, + "886": { + "fn": "BatchAction.batchLend", + "offset": [ + 6080, + 6153 + ], + "op": "PUSH2", + "path": "29", + "statement": 9, + "value": "0x38F" + }, + "889": { + "fn": "BatchAction.batchLend", + "offset": [ + 6110, + 6117 + ], + "op": "DUP10", + "path": "29" + }, + "890": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6136 + ], + "op": "PUSH2", + "path": "29", + "value": "0x386" + }, + "893": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6136 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "895": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6136 + ], + "op": "DUP6", + "path": "29" + }, + "896": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6136 + ], + "op": "ADD", + "path": "29" + }, + "897": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6125 + ], + "op": "DUP6", + "path": "29" + }, + "898": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6136 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "901": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 6119, + 6136 + ], + "op": "JUMP", + "path": "29" + }, + "902": { + "fn": "BatchAction.batchLend", + "offset": [ + 6119, + 6136 + ], + "op": "JUMPDEST", + "path": "29" + }, + "903": { + "fn": "BatchAction.batchLend", + "offset": [ + 6080, + 6092 + ], + "op": "DUP7", + "path": "29" + }, + "904": { + "fn": "BatchAction.batchLend", + "offset": [ + 6080, + 6092 + ], + "op": "SWAP2", + "path": "29" + }, + "905": { + "fn": "BatchAction.batchLend", + "offset": [ + 6080, + 6153 + ], + "op": "SWAP1", + "path": "29" + }, + "906": { + "fn": "BatchAction.batchLend", + "offset": [ + 6138, + 6152 + ], + "op": "DUP10", + "path": "29" + }, + "907": { + "fn": "BatchAction.batchLend", + "offset": [ + 6080, + 6109 + ], + "op": "PUSH2", + "path": "29", + "value": "0xC79" + }, + "910": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 6080, + 6153 + ], + "op": "JUMP", + "path": "29" + }, + "911": { + "fn": "BatchAction.batchLend", + "offset": [ + 6080, + 6153 + ], + "op": "JUMPDEST", + "path": "29" + }, + "912": { + "fn": "BatchAction.batchLend", + "offset": [ + 6214, + 6397 + ], + "op": "PUSH2", + "path": "29", + "statement": 10, + "value": "0x3B4" + }, + "915": { + "fn": "BatchAction.batchLend", + "offset": [ + 6246, + 6253 + ], + "op": "DUP10", + "path": "29" + }, + "916": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6288 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3A0" + }, + "919": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6288 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "921": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6288 + ], + "op": "DUP6", + "path": "29" + }, + "922": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6288 + ], + "op": "ADD", + "path": "29" + }, + "923": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6277 + ], + "op": "DUP6", + "path": "29" + }, + "924": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6288 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "927": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 6271, + 6288 + ], + "op": "JUMP", + "path": "29" + }, + "928": { + "fn": "BatchAction.batchLend", + "offset": [ + 6271, + 6288 + ], + "op": "JUMPDEST", + "path": "29" + }, + "929": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6319 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3AD" + }, + "932": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6319 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "934": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6319 + ], + "op": "DUP7", + "path": "29" + }, + "935": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6319 + ], + "op": "ADD", + "path": "29" + }, + "936": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6312 + ], + "op": "DUP7", + "path": "29" + }, + "937": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6319 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AD7" + }, + "940": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 6306, + 6319 + ], + "op": "JUMP", + "path": "29" + }, + "941": { + "fn": "BatchAction.batchLend", + "offset": [ + 6306, + 6319 + ], + "op": "JUMPDEST", + "path": "29" + }, + "942": { + "fn": "BatchAction.batchLend", + "offset": [ + 6337, + 6351 + ], + "op": "DUP11", + "path": "29" + }, + "943": { + "fn": "BatchAction.batchLend", + "offset": [ + 6369, + 6383 + ], + "op": "DUP11", + "path": "29" + }, + "944": { + "fn": "BatchAction.batchLend", + "offset": [ + 6214, + 6228 + ], + "op": "PUSH2", + "path": "29", + "value": "0xD1F" + }, + "947": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 6214, + 6397 + ], + "op": "JUMP", + "path": "29" + }, + "948": { + "fn": "BatchAction.batchLend", + "offset": [ + 6214, + 6397 + ], + "op": "JUMPDEST", + "path": "29" + }, + "949": { + "fn": "BatchAction.batchLend", + "offset": [ + 6168, + 6194 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "951": { + "fn": "BatchAction.batchLend", + "offset": [ + 6168, + 6194 + ], + "op": "DUP7", + "path": "29" + }, + "952": { + "fn": "BatchAction.batchLend", + "offset": [ + 6168, + 6194 + ], + "op": "ADD", + "path": "29" + }, + "953": { + "fn": "BatchAction.batchLend", + "offset": [ + 6167, + 6397 + ], + "op": "DUP3", + "path": "29" + }, + "954": { + "fn": "BatchAction.batchLend", + "offset": [ + 6167, + 6397 + ], + "op": "SWAP1", + "path": "29" + }, + "955": { + "fn": "BatchAction.batchLend", + "offset": [ + 6167, + 6397 + ], + "op": "MSTORE", + "path": "29" + }, + "956": { + "fn": "BatchAction.batchLend", + "offset": [ + 6167, + 6397 + ], + "op": "SWAP6", + "path": "29" + }, + "957": { + "op": "POP" + }, + "958": { + "fn": "BatchAction.batchLend", + "offset": [ + 6524, + 6525 + ], + "op": "PUSH1", + "path": "29", + "statement": 11, + "value": "0x0" + }, + "960": { + "op": "SLT" + }, + "961": { + "branch": 367, + "fn": "BatchAction.batchLend", + "offset": [ + 6494, + 6525 + ], + "op": "ISZERO", + "path": "29" + }, + "962": { + "fn": "BatchAction.batchLend", + "offset": [ + 6486, + 6526 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3CA" + }, + "965": { + "branch": 367, + "fn": "BatchAction.batchLend", + "offset": [ + 6486, + 6526 + ], + "op": "JUMPI", + "path": "29" + }, + "966": { + "fn": "BatchAction.batchLend", + "offset": [ + 6486, + 6526 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "968": { + "fn": "BatchAction.batchLend", + "offset": [ + 6486, + 6526 + ], + "op": "DUP1", + "path": "29" + }, + "969": { + "fn": "BatchAction.batchLend", + "offset": [ + 6486, + 6526 + ], + "op": "REVERT", + "path": "29" + }, + "970": { + "fn": "BatchAction.batchLend", + "offset": [ + 6486, + 6526 + ], + "op": "JUMPDEST", + "path": "29" + }, + "971": { + "fn": "BatchAction.batchLend", + "offset": [ + 6978, + 6997 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "973": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7068 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3EF" + }, + "976": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7062 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3EA" + }, + "979": { + "fn": "BatchAction.batchLend", + "offset": [ + 7035, + 7047 + ], + "op": "DUP7", + "path": "29" + }, + "980": { + "fn": "BatchAction.batchLend", + "offset": [ + 7035, + 7061 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "982": { + "fn": "BatchAction.batchLend", + "offset": [ + 7035, + 7061 + ], + "op": "ADD", + "path": "29" + }, + "983": { + "fn": "BatchAction.batchLend", + "offset": [ + 7035, + 7061 + ], + "op": "MLOAD", + "path": "29" + }, + "984": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7012 + ], + "op": "DUP8", + "path": "29" + }, + "985": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7030 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "987": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7030 + ], + "op": "ADD", + "path": "29" + }, + "988": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7030 + ], + "op": "MLOAD", + "path": "29" + }, + "989": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7034 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "992": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7034 + ], + "op": "SWAP1", + "path": "29" + }, + "993": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7062 + ], + "op": "SWAP2", + "path": "29" + }, + "994": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7062 + ], + "op": "SWAP1", + "path": "29" + }, + "995": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7062 + ], + "op": "PUSH4", + "path": "29", + "value": "0xFFFFFFFF" + }, + "1000": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7062 + ], + "op": "AND", + "path": "29" + }, + "1001": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7000, + 7062 + ], + "op": "JUMP", + "path": "29" + }, + "1002": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7062 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1003": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7066 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEE1" + }, + "1006": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7000, + 7068 + ], + "op": "JUMP", + "path": "29" + }, + "1007": { + "fn": "BatchAction.batchLend", + "offset": [ + 7000, + 7068 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1008": { + "fn": "BatchAction.batchLend", + "offset": [ + 6978, + 7068 + ], + "op": "SWAP1", + "path": "29" + }, + "1009": { + "fn": "BatchAction.batchLend", + "offset": [ + 6978, + 7068 + ], + "op": "POP", + "path": "29" + }, + "1010": { + "fn": "BatchAction.batchLend", + "offset": [ + 7101, + 7102 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1012": { + "fn": "BatchAction.batchLend", + "offset": [ + 7086, + 7098 + ], + "op": "DUP2", + "path": "29" + }, + "1013": { + "branch": 368, + "fn": "BatchAction.batchLend", + "offset": [ + 7086, + 7102 + ], + "op": "SGT", + "path": "29" + }, + "1014": { + "fn": "BatchAction.batchLend", + "offset": [ + 7082, + 9191 + ], + "op": "ISZERO", + "path": "29" + }, + "1015": { + "fn": "BatchAction.batchLend", + "offset": [ + 7082, + 9191 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4EF" + }, + "1018": { + "branch": 368, + "fn": "BatchAction.batchLend", + "offset": [ + 7082, + 9191 + ], + "op": "JUMPI", + "path": "29" + }, + "1019": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x40A" + }, + "1022": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1024": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "DUP5", + "path": "29" + }, + "1025": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "ADD", + "path": "29" + }, + "1026": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1028": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "DUP6", + "path": "29" + }, + "1029": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "ADD", + "path": "29" + }, + "1030": { + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "PUSH2", + "path": "29", + "value": "0x439D" + }, + "1033": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7126, + 7150 + ], + "op": "JUMP", + "path": "29" + }, + "1034": { + "branch": 369, + "fn": "BatchAction.batchLend", + "offset": [ + 7126, + 7150 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1035": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "ISZERO", + "path": "29" + }, + "1036": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4B7" + }, + "1039": { + "branch": 369, + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "JUMPI", + "path": "29" + }, + "1040": { + "fn": "BatchAction.batchLend", + "offset": [ + 7323, + 7352 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1042": { + "fn": "BatchAction.batchLend", + "offset": [ + 7355, + 7406 + ], + "op": "PUSH2", + "path": "29", + "value": "0x42A" + }, + "1045": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7405 + ], + "op": "PUSH2", + "path": "29", + "value": "0x421" + }, + "1048": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7405 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1050": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7405 + ], + "op": "DUP7", + "path": "29" + }, + "1051": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7405 + ], + "op": "ADD", + "path": "29" + }, + "1052": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7394 + ], + "op": "DUP7", + "path": "29" + }, + "1053": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7405 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "1056": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7388, + 7405 + ], + "op": "JUMP", + "path": "29" + }, + "1057": { + "fn": "BatchAction.batchLend", + "offset": [ + 7388, + 7405 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1058": { + "fn": "BatchAction.batchLend", + "offset": [ + 7355, + 7406 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "1061": { + "fn": "BatchAction.batchLend", + "offset": [ + 7355, + 7406 + ], + "op": "AND", + "path": "29" + }, + "1062": { + "fn": "BatchAction.batchLend", + "offset": [ + 7355, + 7387 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEEF" + }, + "1065": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7355, + 7406 + ], + "op": "JUMP", + "path": "29" + }, + "1066": { + "fn": "BatchAction.batchLend", + "offset": [ + 7355, + 7406 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1067": { + "fn": "BatchAction.batchLend", + "offset": [ + 7323, + 7406 + ], + "op": "SWAP1", + "path": "29" + }, + "1068": { + "op": "POP" + }, + "1069": { + "fn": "BatchAction.batchLend", + "offset": [ + 7428, + 7456 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1071": { + "fn": "BatchAction.batchLend", + "offset": [ + 7459, + 7509 + ], + "op": "PUSH2", + "path": "29", + "value": "0x447" + }, + "1074": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7508 + ], + "op": "PUSH2", + "path": "29", + "value": "0x43E" + }, + "1077": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7508 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1079": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7508 + ], + "op": "DUP8", + "path": "29" + }, + "1080": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7508 + ], + "op": "ADD", + "path": "29" + }, + "1081": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7497 + ], + "op": "DUP8", + "path": "29" + }, + "1082": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7508 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "1085": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7491, + 7508 + ], + "op": "JUMP", + "path": "29" + }, + "1086": { + "fn": "BatchAction.batchLend", + "offset": [ + 7491, + 7508 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1087": { + "fn": "BatchAction.batchLend", + "offset": [ + 7459, + 7509 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "1090": { + "fn": "BatchAction.batchLend", + "offset": [ + 7459, + 7509 + ], + "op": "AND", + "path": "29" + }, + "1091": { + "fn": "BatchAction.batchLend", + "offset": [ + 7459, + 7490 + ], + "op": "PUSH2", + "path": "29", + "value": "0xF3B" + }, + "1094": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7459, + 7509 + ], + "op": "JUMP", + "path": "29" + }, + "1095": { + "fn": "BatchAction.batchLend", + "offset": [ + 7459, + 7509 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1096": { + "fn": "BatchAction.batchLend", + "offset": [ + 7428, + 7509 + ], + "op": "SWAP1", + "path": "29" + }, + "1097": { + "op": "POP" + }, + "1098": { + "fn": "BatchAction.batchLend", + "offset": [ + 7531, + 7562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1100": { + "fn": "BatchAction.batchLend", + "offset": [ + 7565, + 7636 + ], + "op": "PUSH2", + "path": "29", + "value": "0x45F" + }, + "1103": { + "fn": "BatchAction.batchLend", + "offset": [ + 7599, + 7635 + ], + "op": "PUSH2", + "path": "29", + "value": "0x458" + }, + "1106": { + "fn": "BatchAction.batchLend", + "offset": [ + 7599, + 7601 + ], + "op": "DUP5", + "path": "29" + }, + "1107": { + "fn": "BatchAction.batchLend", + "offset": [ + 7622, + 7634 + ], + "op": "DUP7", + "path": "29" + }, + "1108": { + "fn": "BatchAction.batchLend", + "offset": [ + 7599, + 7621 + ], + "op": "PUSH2", + "path": "29", + "value": "0xF4E" + }, + "1111": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7599, + 7635 + ], + "op": "JUMP", + "path": "29" + }, + "1112": { + "fn": "BatchAction.batchLend", + "offset": [ + 7599, + 7635 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1113": { + "fn": "BatchAction.batchLend", + "offset": [ + 7565, + 7580 + ], + "op": "DUP4", + "path": "29" + }, + "1114": { + "fn": "BatchAction.batchLend", + "offset": [ + 7565, + 7580 + ], + "op": "SWAP1", + "path": "29" + }, + "1115": { + "fn": "BatchAction.batchLend", + "offset": [ + 7565, + 7598 + ], + "op": "PUSH2", + "path": "29", + "value": "0xF87" + }, + "1118": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 7565, + 7636 + ], + "op": "JUMP", + "path": "29" + }, + "1119": { + "fn": "BatchAction.batchLend", + "offset": [ + 7565, + 7636 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1120": { + "fn": "BatchAction.batchLend", + "offset": [ + 7531, + 7636 + ], + "op": "SWAP1", + "path": "29" + }, + "1121": { + "fn": "BatchAction.batchLend", + "offset": [ + 7531, + 7636 + ], + "op": "POP", + "path": "29" + }, + "1122": { + "offset": [ + 429, + 432 + ], + "op": "PUSH4", + "path": "60", + "value": "0x5F5E100" + }, + "1127": { + "fn": "BatchAction.batchLend", + "offset": [ + 7663, + 7678 + ], + "op": "DUP3", + "path": "29" + }, + "1128": { + "fn": "BatchAction.batchLend", + "offset": [ + 7663, + 7687 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1130": { + "fn": "BatchAction.batchLend", + "offset": [ + 7663, + 7687 + ], + "op": "ADD", + "path": "29" + }, + "1131": { + "fn": "BatchAction.batchLend", + "offset": [ + 7663, + 7687 + ], + "op": "MLOAD", + "path": "29" + }, + "1132": { + "branch": 370, + "fn": "BatchAction.batchLend", + "offset": [ + 7663, + 7724 + ], + "op": "SLT", + "path": "29" + }, + "1133": { + "fn": "BatchAction.batchLend", + "offset": [ + 7659, + 8195 + ], + "op": "ISZERO", + "path": "29" + }, + "1134": { + "fn": "BatchAction.batchLend", + "offset": [ + 7659, + 8195 + ], + "op": "PUSH2", + "path": "29", + "value": "0x47F" + }, + "1137": { + "branch": 370, + "fn": "BatchAction.batchLend", + "offset": [ + 7659, + 8195 + ], + "op": "JUMPI", + "path": "29" + }, + "1138": { + "fn": "BatchAction.batchLend", + "offset": [ + 8141, + 8172 + ], + "op": "PUSH2", + "path": "29", + "statement": 12, + "value": "0x47C" + }, + "1141": { + "fn": "BatchAction.batchLend", + "offset": [ + 8141, + 8165 + ], + "op": "DUP2", + "path": "29" + }, + "1142": { + "fn": "BatchAction.batchLend", + "offset": [ + 8170, + 8171 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1" + }, + "1144": { + "fn": "BatchAction.batchLend", + "offset": [ + 8141, + 8169 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "1147": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8141, + 8172 + ], + "op": "JUMP", + "path": "29" + }, + "1148": { + "fn": "BatchAction.batchLend", + "offset": [ + 8141, + 8172 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1149": { + "fn": "BatchAction.batchLend", + "offset": [ + 8114, + 8172 + ], + "op": "SWAP1", + "path": "29" + }, + "1150": { + "fn": "BatchAction.batchLend", + "offset": [ + 8114, + 8172 + ], + "op": "POP", + "path": "29" + }, + "1151": { + "fn": "BatchAction.batchLend", + "offset": [ + 7659, + 8195 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1152": { + "fn": "BatchAction.batchLend", + "offset": [ + 8387, + 8413 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1154": { + "fn": "BatchAction.batchLend", + "offset": [ + 8416, + 8486 + ], + "op": "PUSH2", + "path": "29", + "value": "0x48C" + }, + "1157": { + "fn": "BatchAction.batchLend", + "offset": [ + 8416, + 8428 + ], + "op": "DUP10", + "path": "29" + }, + "1158": { + "fn": "BatchAction.batchLend", + "offset": [ + 8452, + 8459 + ], + "op": "DUP16", + "path": "29" + }, + "1159": { + "fn": "BatchAction.batchLend", + "offset": [ + 8461, + 8485 + ], + "op": "DUP5", + "path": "29" + }, + "1160": { + "fn": "BatchAction.batchLend", + "offset": [ + 8416, + 8451 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFBF" + }, + "1163": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8416, + 8486 + ], + "op": "JUMP", + "path": "29" + }, + "1164": { + "fn": "BatchAction.batchLend", + "offset": [ + 8416, + 8486 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1165": { + "fn": "BatchAction.batchLend", + "offset": [ + 8387, + 8486 + ], + "op": "SWAP1", + "path": "29" + }, + "1166": { + "fn": "BatchAction.batchLend", + "offset": [ + 8387, + 8486 + ], + "op": "POP", + "path": "29" + }, + "1167": { + "fn": "BatchAction.batchLend", + "offset": [ + 8539, + 8551 + ], + "op": "DUP5", + "path": "29", + "statement": 13 + }, + "1168": { + "fn": "BatchAction.batchLend", + "offset": [ + 8516, + 8535 + ], + "op": "DUP2", + "path": "29" + }, + "1169": { + "fn": "BatchAction.batchLend", + "offset": [ + 8516, + 8551 + ], + "op": "SLT", + "path": "29" + }, + "1170": { + "branch": 371, + "fn": "BatchAction.batchLend", + "offset": [ + 8516, + 8551 + ], + "op": "ISZERO", + "path": "29" + }, + "1171": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AE" + }, + "1174": { + "branch": 371, + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "JUMPI", + "path": "29" + }, + "1175": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1177": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "MLOAD", + "path": "29" + }, + "1178": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "1182": { + "op": "PUSH1", + "value": "0xE5" + }, + "1184": { + "op": "SHL" + }, + "1185": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "DUP2", + "path": "29" + }, + "1186": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "MSTORE", + "path": "29" + }, + "1187": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "1189": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "ADD", + "path": "29" + }, + "1190": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "1193": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "SWAP1", + "path": "29" + }, + "1194": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4A95" + }, + "1197": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8508, + 8576 + ], + "op": "JUMP", + "path": "29" + }, + "1198": { + "fn": "BatchAction.batchLend", + "offset": [ + 8508, + 8576 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1199": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "POP", + "path": "29" + }, + "1200": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "POP", + "path": "29" + }, + "1201": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "POP", + "path": "29" + }, + "1202": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "POP", + "path": "29" + }, + "1203": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4EF" + }, + "1206": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "JUMP", + "path": "29" + }, + "1207": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1208": { + "fn": "BatchAction.batchLend", + "offset": [ + 8810, + 8833 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1210": { + "fn": "BatchAction.batchLend", + "offset": [ + 8836, + 8881 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4D2" + }, + "1213": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8880 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4C9" + }, + "1216": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8880 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1218": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8880 + ], + "op": "DUP7", + "path": "29" + }, + "1219": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8880 + ], + "op": "ADD", + "path": "29" + }, + "1220": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8869 + ], + "op": "DUP7", + "path": "29" + }, + "1221": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8880 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "1224": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8863, + 8880 + ], + "op": "JUMP", + "path": "29" + }, + "1225": { + "fn": "BatchAction.batchLend", + "offset": [ + 8863, + 8880 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1226": { + "fn": "BatchAction.batchLend", + "offset": [ + 8836, + 8881 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "1229": { + "fn": "BatchAction.batchLend", + "offset": [ + 8836, + 8881 + ], + "op": "AND", + "path": "29" + }, + "1230": { + "fn": "BatchAction.batchLend", + "offset": [ + 8836, + 8862 + ], + "op": "PUSH2", + "path": "29", + "value": "0x10A4" + }, + "1233": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8836, + 8881 + ], + "op": "JUMP", + "path": "29" + }, + "1234": { + "fn": "BatchAction.batchLend", + "offset": [ + 8836, + 8881 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1235": { + "fn": "BatchAction.batchLend", + "offset": [ + 8810, + 8881 + ], + "op": "SWAP1", + "path": "29" + }, + "1236": { + "op": "POP" + }, + "1237": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 9158 + ], + "op": "PUSH2", + "path": "29", + "statement": 14, + "value": "0x4EC" + }, + "1240": { + "fn": "BatchAction.batchLend", + "offset": [ + 8959, + 8966 + ], + "op": "DUP12", + "path": "29" + }, + "1241": { + "fn": "BatchAction.batchLend", + "offset": [ + 8992, + 9034 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4E2" + }, + "1244": { + "fn": "BatchAction.batchLend", + "offset": [ + 8810, + 8881 + ], + "op": "DUP4", + "path": "29" + }, + "1245": { + "fn": "BatchAction.batchLend", + "offset": [ + 9021, + 9033 + ], + "op": "DUP6", + "path": "29" + }, + "1246": { + "fn": "BatchAction.batchLend", + "offset": [ + 8992, + 9020 + ], + "op": "PUSH2", + "path": "29", + "value": "0xF87" + }, + "1249": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8992, + 9034 + ], + "op": "JUMP", + "path": "29" + }, + "1250": { + "fn": "BatchAction.batchLend", + "offset": [ + 8992, + 9034 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1251": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 8915 + ], + "op": "DUP9", + "path": "29" + }, + "1252": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 8915 + ], + "op": "SWAP2", + "path": "29" + }, + "1253": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 9158 + ], + "op": "SWAP1", + "path": "29" + }, + "1254": { + "fn": "BatchAction.batchLend", + "offset": [ + 9060, + 9065 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1256": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 8933 + ], + "op": "PUSH2", + "path": "29", + "value": "0x10B7" + }, + "1259": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 8903, + 9158 + ], + "op": "JUMP", + "path": "29" + }, + "1260": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 9158 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1261": { + "fn": "BatchAction.batchLend", + "offset": [ + 8903, + 9158 + ], + "op": "POP", + "path": "29" + }, + "1262": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "POP", + "path": "29" + }, + "1263": { + "fn": "BatchAction.batchLend", + "offset": [ + 7122, + 9177 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1264": { + "fn": "BatchAction.batchLend", + "offset": [ + 9305, + 9358 + ], + "op": "PUSH2", + "path": "29", + "statement": 15, + "value": "0x4FC" + }, + "1267": { + "fn": "BatchAction.batchLend", + "offset": [ + 9305, + 9317 + ], + "op": "DUP6", + "path": "29" + }, + "1268": { + "fn": "BatchAction.batchLend", + "offset": [ + 9327, + 9334 + ], + "op": "DUP12", + "path": "29" + }, + "1269": { + "fn": "BatchAction.batchLend", + "offset": [ + 9336, + 9350 + ], + "op": "DUP10", + "path": "29" + }, + "1270": { + "fn": "BatchAction.batchLend", + "offset": [ + 9352, + 9357 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1272": { + "fn": "BatchAction.batchLend", + "offset": [ + 9305, + 9326 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1191" + }, + "1275": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 9305, + 9358 + ], + "op": "JUMP", + "path": "29" + }, + "1276": { + "fn": "BatchAction.batchLend", + "offset": [ + 9305, + 9358 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1277": { + "op": "POP" + }, + "1278": { + "op": "POP" + }, + "1279": { + "fn": "BatchAction.batchLend", + "offset": [ + 5239, + 5242 + ], + "op": "PUSH1", + "path": "29", + "statement": 16, + "value": "0x1" + }, + "1281": { + "fn": "BatchAction.batchLend", + "offset": [ + 5239, + 5242 + ], + "op": "SWAP1", + "path": "29" + }, + "1282": { + "fn": "BatchAction.batchLend", + "offset": [ + 5239, + 5242 + ], + "op": "SWAP3", + "path": "29" + }, + "1283": { + "fn": "BatchAction.batchLend", + "offset": [ + 5239, + 5242 + ], + "op": "ADD", + "path": "29" + }, + "1284": { + "fn": "BatchAction.batchLend", + "offset": [ + 5239, + 5242 + ], + "op": "SWAP2", + "path": "29" + }, + "1285": { + "op": "POP" + }, + "1286": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "PUSH2", + "path": "29", + "value": "0x285" + }, + "1289": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "SWAP1", + "path": "29" + }, + "1290": { + "op": "POP" + }, + "1291": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "JUMP", + "path": "29" + }, + "1292": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1293": { + "fn": "BatchAction.batchLend", + "offset": [ + 5199, + 9369 + ], + "op": "POP", + "path": "29" + }, + "1294": { + "fn": "BatchAction.batchLend", + "offset": [ + 9549, + 9581 + ], + "op": "PUSH2", + "path": "29", + "value": "0x516" + }, + "1297": { + "fn": "BatchAction.batchLend", + "offset": [ + 9549, + 9563 + ], + "op": "DUP4", + "path": "29" + }, + "1298": { + "fn": "BatchAction.batchLend", + "offset": [ + 9549, + 9579 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1412" + }, + "1301": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 9549, + 9581 + ], + "op": "JUMP", + "path": "29" + }, + "1302": { + "branch": 372, + "fn": "BatchAction.batchLend", + "offset": [ + 9549, + 9581 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1303": { + "fn": "BatchAction.batchLend", + "offset": [ + 9544, + 9765 + ], + "op": "PUSH2", + "path": "29", + "value": "0x527" + }, + "1306": { + "branch": 372, + "fn": "BatchAction.batchLend", + "offset": [ + 9544, + 9765 + ], + "op": "JUMPI", + "path": "29" + }, + "1307": { + "fn": "BatchAction.batchLend", + "offset": [ + 9680, + 9754 + ], + "op": "PUSH2", + "path": "29", + "statement": 17, + "value": "0x527" + }, + "1310": { + "fn": "BatchAction.batchLend", + "offset": [ + 9680, + 9694 + ], + "op": "DUP4", + "path": "29" + }, + "1311": { + "fn": "BatchAction.batchLend", + "offset": [ + 9723, + 9730 + ], + "op": "DUP8", + "path": "29" + }, + "1312": { + "fn": "BatchAction.batchLend", + "offset": [ + 9732, + 9746 + ], + "op": "DUP5", + "path": "29" + }, + "1313": { + "fn": "BatchAction.batchLend", + "offset": [ + 9748, + 9753 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1315": { + "fn": "BatchAction.batchLend", + "offset": [ + 9680, + 9722 + ], + "op": "PUSH2", + "path": "29", + "value": "0x141F" + }, + "1318": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 9680, + 9754 + ], + "op": "JUMP", + "path": "29" + }, + "1319": { + "fn": "BatchAction.batchLend", + "offset": [ + 9680, + 9754 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1320": { + "fn": "BatchAction.batchLend", + "offset": [ + 9847, + 9895 + ], + "op": "PUSH2", + "path": "29", + "statement": 18, + "value": "0x531" + }, + "1323": { + "fn": "BatchAction.batchLend", + "offset": [ + 9871, + 9878 + ], + "op": "DUP7", + "path": "29" + }, + "1324": { + "fn": "BatchAction.batchLend", + "offset": [ + 9880, + 9894 + ], + "op": "DUP5", + "path": "29" + }, + "1325": { + "fn": "BatchAction.batchLend", + "offset": [ + 9847, + 9870 + ], + "op": "PUSH2", + "path": "29", + "value": "0xAAA" + }, + "1328": { + "fn": "BatchAction.batchLend", + "jump": "i", + "offset": [ + 9847, + 9895 + ], + "op": "JUMP", + "path": "29" + }, + "1329": { + "fn": "BatchAction.batchLend", + "offset": [ + 9847, + 9895 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1330": { + "op": "POP" + }, + "1331": { + "op": "POP" + }, + "1332": { + "offset": [ + 276, + 277 + ], + "op": "PUSH1", + "path": "28", + "value": "0x1" + }, + "1334": { + "offset": [ + 1142, + 1158 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "1336": { + "offset": [ + 1142, + 1173 + ], + "op": "SSTORE", + "path": "28" + }, + "1337": { + "op": "POP" + }, + "1338": { + "op": "POP" + }, + "1339": { + "op": "POP" + }, + "1340": { + "op": "POP" + }, + "1341": { + "fn": "BatchAction.batchLend", + "jump": "o", + "offset": [ + 4487, + 9902 + ], + "op": "JUMP", + "path": "29" + }, + "1342": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1343": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11464, + 11474 + ], + "op": "CALLER", + "path": "29", + "statement": 19 + }, + "1344": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1346": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "SWAP1", + "path": "29" + }, + "1347": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "DUP2", + "path": "29" + }, + "1348": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "MSTORE", + "path": "29" + }, + "1349": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11463 + ], + "op": "PUSH1", + "path": "29", + "value": "0x8" + }, + "1351": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1353": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "MSTORE", + "path": "29" + }, + "1354": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1356": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "SWAP1", + "path": "29" + }, + "1357": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "KECCAK256", + "path": "29" + }, + "1358": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "SLOAD", + "path": "29" + }, + "1359": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "PUSH1", + "path": "29", + "value": "0xFF" + }, + "1361": { + "branch": 373, + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11437, + 11475 + ], + "op": "AND", + "path": "29" + }, + "1362": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "PUSH2", + "path": "29", + "value": "0x56D" + }, + "1365": { + "branch": 373, + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "JUMPI", + "path": "29" + }, + "1366": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1368": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "MLOAD", + "path": "29" + }, + "1369": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "1373": { + "op": "PUSH1", + "value": "0xE5" + }, + "1375": { + "op": "SHL" + }, + "1376": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "DUP2", + "path": "29" + }, + "1377": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "MSTORE", + "path": "29" + }, + "1378": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "1380": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "ADD", + "path": "29" + }, + "1381": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "1384": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "SWAP1", + "path": "29" + }, + "1385": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "PUSH2", + "path": "29", + "value": "0x48B4" + }, + "1388": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11429, + 11492 + ], + "op": "JUMP", + "path": "29" + }, + "1389": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11429, + 11492 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1390": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11502, + 11530 + ], + "op": "PUSH2", + "path": "29", + "statement": 20, + "value": "0x576" + }, + "1393": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11522, + 11529 + ], + "op": "DUP6", + "path": "29" + }, + "1394": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11502, + 11521 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8A0" + }, + "1397": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11502, + 11530 + ], + "op": "JUMP", + "path": "29" + }, + "1398": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11502, + 11530 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1399": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11541, + 11577 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1401": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11580, + 11625 + ], + "op": "PUSH2", + "path": "29", + "value": "0x583" + }, + "1404": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11608, + 11615 + ], + "op": "DUP7", + "path": "29" + }, + "1405": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11617, + 11624 + ], + "op": "DUP7", + "path": "29" + }, + "1406": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11617, + 11624 + ], + "op": "DUP7", + "path": "29" + }, + "1407": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11580, + 11607 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8EF" + }, + "1410": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11580, + 11625 + ], + "op": "JUMP", + "path": "29" + }, + "1411": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11580, + 11625 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1412": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11541, + 11625 + ], + "op": "SWAP1", + "path": "29" + }, + "1413": { + "op": "POP" + }, + "1414": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11635, + 11676 + ], + "op": "PUSH2", + "path": "29", + "statement": 21, + "value": "0x58F" + }, + "1417": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11541, + 11625 + ], + "op": "DUP2", + "path": "29" + }, + "1418": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11668, + 11675 + ], + "op": "DUP8", + "path": "29" + }, + "1419": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11635, + 11667 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1501" + }, + "1422": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11635, + 11676 + ], + "op": "JUMP", + "path": "29" + }, + "1423": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11635, + 11676 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1424": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "statement": 22, + "value": "0x40" + }, + "1426": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "MLOAD", + "path": "29" + }, + "1427": { + "op": "PUSH4", + "value": "0x550D0657" + }, + "1432": { + "op": "PUSH1", + "value": "0xE1" + }, + "1434": { + "op": "SHL" + }, + "1435": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP2", + "path": "29" + }, + "1436": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "MSTORE", + "path": "29" + }, + "1437": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11972, + 11982 + ], + "op": "CALLER", + "path": "29" + }, + "1438": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11972, + 11982 + ], + "op": "SWAP1", + "path": "29" + }, + "1439": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12000 + ], + "op": "PUSH4", + "path": "29", + "value": "0xAA1A0CAE" + }, + "1444": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12000 + ], + "op": "SWAP1", + "path": "29" + }, + "1445": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH2", + "path": "29", + "value": "0x5B8" + }, + "1448": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "SWAP1", + "path": "29" + }, + "1449": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11972, + 11982 + ], + "op": "DUP4", + "path": "29" + }, + "1450": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11972, + 11982 + ], + "op": "SWAP1", + "path": "29" + }, + "1451": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12013, + 12020 + ], + "op": "DUP11", + "path": "29" + }, + "1452": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12013, + 12020 + ], + "op": "SWAP1", + "path": "29" + }, + "1453": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12022, + 12034 + ], + "op": "DUP9", + "path": "29" + }, + "1454": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12022, + 12034 + ], + "op": "SWAP1", + "path": "29" + }, + "1455": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12022, + 12034 + ], + "op": "DUP9", + "path": "29" + }, + "1456": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12022, + 12034 + ], + "op": "SWAP1", + "path": "29" + }, + "1457": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "1459": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "ADD", + "path": "29" + }, + "1460": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4655" + }, + "1463": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 11955, + 12035 + ], + "op": "JUMP", + "path": "29" + }, + "1464": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1465": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1467": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1469": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "MLOAD", + "path": "29" + }, + "1470": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP1", + "path": "29" + }, + "1471": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP4", + "path": "29" + }, + "1472": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "SUB", + "path": "29" + }, + "1473": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP2", + "path": "29" + }, + "1474": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1476": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP8", + "path": "29" + }, + "1477": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP1", + "path": "29" + }, + "1478": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "1479": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "ISZERO", + "path": "29" + }, + "1480": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP1", + "path": "29" + }, + "1481": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "ISZERO", + "path": "29" + }, + "1482": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH2", + "path": "29", + "value": "0x5D2" + }, + "1485": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "JUMPI", + "path": "29" + }, + "1486": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1488": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP1", + "path": "29" + }, + "1489": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "REVERT", + "path": "29" + }, + "1490": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1491": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "POP", + "path": "29" + }, + "1492": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "GAS", + "path": "29" + }, + "1493": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "CALL", + "path": "29" + }, + "1494": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "ISZERO", + "path": "29" + }, + "1495": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP1", + "path": "29" + }, + "1496": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "ISZERO", + "path": "29" + }, + "1497": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH2", + "path": "29", + "value": "0x5E6" + }, + "1500": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "JUMPI", + "path": "29" + }, + "1501": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "1502": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1504": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "DUP1", + "path": "29" + }, + "1505": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "1506": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "1507": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1509": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "REVERT", + "path": "29" + }, + "1510": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11955, + 12035 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1511": { + "op": "POP" + }, + "1512": { + "op": "POP" + }, + "1513": { + "op": "POP" + }, + "1514": { + "op": "POP" + }, + "1515": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12050, + 12072 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1517": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12050, + 12072 + ], + "op": "DUP2", + "path": "29" + }, + "1518": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12050, + 12072 + ], + "op": "ADD", + "path": "29" + }, + "1519": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12050, + 12072 + ], + "op": "MLOAD", + "path": "29" + }, + "1520": { + "op": "PUSH1", + "value": "0x1" + }, + "1522": { + "op": "PUSH1", + "value": "0x1" + }, + "1524": { + "op": "PUSH1", + "value": "0xF8" + }, + "1526": { + "op": "SHL" + }, + "1527": { + "op": "SUB" + }, + "1528": { + "op": "NOT" + }, + "1529": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12050, + 12080 + ], + "op": "AND", + "path": "29" + }, + "1530": { + "branch": 374, + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12050, + 12080 + ], + "op": "ISZERO", + "path": "29" + }, + "1531": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12046, + 12573 + ], + "op": "PUSH2", + "path": "29", + "value": "0x666" + }, + "1534": { + "branch": 374, + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12046, + 12573 + ], + "op": "JUMPI", + "path": "29" + }, + "1535": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "statement": 23, + "value": "0x40" + }, + "1537": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "MLOAD", + "path": "29" + }, + "1538": { + "op": "PUSH4", + "value": "0x6CCC642F" + }, + "1543": { + "op": "PUSH1", + "value": "0xE0" + }, + "1545": { + "op": "SHL" + }, + "1546": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP2", + "path": "29" + }, + "1547": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "MSTORE", + "path": "29" + }, + "1548": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12524 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "1569": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12524 + ], + "op": "SWAP1", + "path": "29" + }, + "1570": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12553 + ], + "op": "PUSH4", + "path": "29", + "value": "0x6CCC642F" + }, + "1575": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12553 + ], + "op": "SWAP1", + "path": "29" + }, + "1576": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH2", + "path": "29", + "value": "0x635" + }, + "1579": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "SWAP1", + "path": "29" + }, + "1580": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12554, + 12561 + ], + "op": "DUP10", + "path": "29" + }, + "1581": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12554, + 12561 + ], + "op": "SWAP1", + "path": "29" + }, + "1582": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "1584": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "ADD", + "path": "29" + }, + "1585": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4641" + }, + "1588": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "i", + "offset": [ + 12502, + 12562 + ], + "op": "JUMP", + "path": "29" + }, + "1589": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1590": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1592": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1594": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "MLOAD", + "path": "29" + }, + "1595": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP1", + "path": "29" + }, + "1596": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP4", + "path": "29" + }, + "1597": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "SUB", + "path": "29" + }, + "1598": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP2", + "path": "29" + }, + "1599": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP7", + "path": "29" + }, + "1600": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP1", + "path": "29" + }, + "1601": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "1602": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "ISZERO", + "path": "29" + }, + "1603": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP1", + "path": "29" + }, + "1604": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "ISZERO", + "path": "29" + }, + "1605": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH2", + "path": "29", + "value": "0x64D" + }, + "1608": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "JUMPI", + "path": "29" + }, + "1609": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1611": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP1", + "path": "29" + }, + "1612": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "REVERT", + "path": "29" + }, + "1613": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1614": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "POP", + "path": "29" + }, + "1615": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "GAS", + "path": "29" + }, + "1616": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "1617": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "ISZERO", + "path": "29" + }, + "1618": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP1", + "path": "29" + }, + "1619": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "ISZERO", + "path": "29" + }, + "1620": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH2", + "path": "29", + "value": "0x661" + }, + "1623": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "JUMPI", + "path": "29" + }, + "1624": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "1625": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1627": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "DUP1", + "path": "29" + }, + "1628": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "1629": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "1630": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1632": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "REVERT", + "path": "29" + }, + "1633": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1634": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "POP", + "path": "29" + }, + "1635": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "POP", + "path": "29" + }, + "1636": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "POP", + "path": "29" + }, + "1637": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12502, + 12562 + ], + "op": "POP", + "path": "29" + }, + "1638": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 12046, + 12573 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1639": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "POP", + "path": "29" + }, + "1640": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "POP", + "path": "29" + }, + "1641": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "POP", + "path": "29" + }, + "1642": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "POP", + "path": "29" + }, + "1643": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "POP", + "path": "29" + }, + "1644": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "offset": [ + 11159, + 12579 + ], + "op": "POP", + "path": "29" + }, + "1645": { + "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", + "jump": "o", + "offset": [ + 11159, + 12579 + ], + "op": "JUMP", + "path": "29" + }, + "1646": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1241, + 2768 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1647": { + "offset": [ + 319, + 320 + ], + "op": "PUSH1", + "path": "28", + "value": "0x2" + }, + "1649": { + "offset": [ + 838, + 854 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "1651": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 838, + 854 + ], + "op": "SLOAD", + "path": "28" + }, + "1652": { + "offset": [ + 838, + 866 + ], + "op": "EQ", + "path": "28" + }, + "1653": { + "branch": 438, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 838, + 866 + ], + "op": "ISZERO", + "path": "28" + }, + "1654": { + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x691" + }, + "1657": { + "branch": 438, + "offset": [ + 830, + 885 + ], + "op": "JUMPI", + "path": "28" + }, + "1658": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x40" + }, + "1660": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "MLOAD", + "path": "28" + }, + "1661": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "1665": { + "op": "PUSH1", + "value": "0xE5" + }, + "1667": { + "op": "SHL" + }, + "1668": { + "offset": [ + 830, + 885 + ], + "op": "DUP2", + "path": "28" + }, + "1669": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "MSTORE", + "path": "28" + }, + "1670": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH1", + "path": "28", + "value": "0x4" + }, + "1672": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "ADD", + "path": "28" + }, + "1673": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x17A" + }, + "1676": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "SWAP1", + "path": "28" + }, + "1677": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "PUSH2", + "path": "28", + "value": "0x49C5" + }, + "1680": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 830, + 885 + ], + "op": "JUMP", + "path": "28" + }, + "1681": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 830, + 885 + ], + "op": "JUMPDEST", + "path": "28" + }, + "1682": { + "offset": [ + 319, + 320 + ], + "op": "PUSH1", + "path": "28", + "value": "0x2" + }, + "1684": { + "offset": [ + 960, + 976 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "1686": { + "offset": [ + 960, + 987 + ], + "op": "SSTORE", + "path": "28" + }, + "1687": { + "op": "PUSH1", + "value": "0x1" + }, + "1689": { + "op": "PUSH1", + "value": "0x1" + }, + "1691": { + "op": "PUSH1", + "value": "0xA0" + }, + "1693": { + "op": "SHL" + }, + "1694": { + "op": "SUB" + }, + "1695": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1417 + ], + "op": "DUP4", + "path": "29", + "statement": 24 + }, + "1696": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1417 + ], + "op": "AND", + "path": "29" + }, + "1697": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1407, + 1417 + ], + "op": "CALLER", + "path": "29" + }, + "1698": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1417 + ], + "op": "EQ", + "path": "29" + }, + "1699": { + "branch": 375, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1417 + ], + "op": "DUP1", + "path": "29" + }, + "1700": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1448 + ], + "op": "PUSH2", + "path": "29", + "value": "0x6AC" + }, + "1703": { + "branch": 375, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1448 + ], + "op": "JUMPI", + "path": "29" + }, + "1704": { + "op": "POP" + }, + "1705": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1421, + 1431 + ], + "op": "CALLER", + "path": "29" + }, + "1706": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1443, + 1447 + ], + "op": "ADDRESS", + "path": "29" + }, + "1707": { + "branch": 376, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1421, + 1448 + ], + "op": "EQ", + "path": "29" + }, + "1708": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1396, + 1448 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1709": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "PUSH2", + "path": "29", + "value": "0x6C8" + }, + "1712": { + "branch": 376, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "JUMPI", + "path": "29" + }, + "1713": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1715": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "MLOAD", + "path": "29" + }, + "1716": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "1720": { + "op": "PUSH1", + "value": "0xE5" + }, + "1722": { + "op": "SHL" + }, + "1723": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "DUP2", + "path": "29" + }, + "1724": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "MSTORE", + "path": "29" + }, + "1725": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "1727": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "ADD", + "path": "29" + }, + "1728": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "1731": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "SWAP1", + "path": "29" + }, + "1732": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "PUSH2", + "path": "29", + "value": "0x48B4" + }, + "1735": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1388, + 1465 + ], + "op": "JUMP", + "path": "29" + }, + "1736": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1388, + 1465 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1737": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1475, + 1503 + ], + "op": "PUSH2", + "path": "29", + "statement": 25, + "value": "0x6D1" + }, + "1740": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1495, + 1502 + ], + "op": "DUP4", + "path": "29" + }, + "1741": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1475, + 1494 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8A0" + }, + "1744": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1475, + 1503 + ], + "op": "JUMP", + "path": "29" + }, + "1745": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1475, + 1503 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1746": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1514, + 1550 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1748": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1553, + 1586 + ], + "op": "PUSH2", + "path": "29", + "value": "0x6DC" + }, + "1751": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1578, + 1585 + ], + "op": "DUP5", + "path": "29" + }, + "1752": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1553, + 1577 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB2B" + }, + "1755": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1553, + 1586 + ], + "op": "JUMP", + "path": "29" + }, + "1756": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1553, + 1586 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1757": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1514, + 1586 + ], + "op": "SWAP1", + "path": "29" + }, + "1758": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1514, + 1586 + ], + "op": "POP", + "path": "29" + }, + "1759": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1596, + 1628 + ], + "op": "PUSH2", + "path": "29", + "value": "0x6E6" + }, + "1762": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1596, + 1628 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3F12" + }, + "1765": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1596, + 1628 + ], + "op": "JUMP", + "path": "29" + }, + "1766": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1596, + 1628 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1767": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1644, + 1653 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1769": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1770": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1659, + 1677 + ], + "op": "DUP4", + "path": "29" + }, + "1771": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1659, + 1677 + ], + "op": "DUP2", + "path": "29" + }, + "1772": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1659, + 1677 + ], + "op": "LT", + "path": "29" + }, + "1773": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "ISZERO", + "path": "29" + }, + "1774": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "PUSH2", + "path": "29", + "value": "0x7DD" + }, + "1777": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "JUMPI", + "path": "29" + }, + "1778": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1698, + 1727 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "1779": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1737 + ], + "op": "DUP6", + "path": "29" + }, + "1780": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1737 + ], + "op": "DUP6", + "path": "29" + }, + "1781": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1738, + 1739 + ], + "op": "DUP4", + "path": "29" + }, + "1782": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "DUP2", + "path": "29" + }, + "1783": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "DUP2", + "path": "29" + }, + "1784": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "LT", + "path": "29" + }, + "1785": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "PUSH2", + "path": "29", + "value": "0x6FE" + }, + "1788": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "JUMPI", + "path": "29" + }, + "1789": { + "dev": "Index out of range", + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "INVALID", + "path": "29" + }, + "1790": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1791": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "SWAP1", + "path": "29" + }, + "1792": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "POP", + "path": "29" + }, + "1793": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "1795": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "MUL", + "path": "29" + }, + "1796": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1730, + 1740 + ], + "op": "ADD", + "path": "29" + }, + "1797": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1698, + 1740 + ], + "op": "SWAP1", + "path": "29" + }, + "1798": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1698, + 1740 + ], + "op": "POP", + "path": "29" + }, + "1799": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1957, + 1958 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "1801": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1953, + 1954 + ], + "op": "DUP3", + "path": "29" + }, + "1802": { + "branch": 377, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1953, + 1958 + ], + "op": "GT", + "path": "29" + }, + "1803": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1949, + 2067 + ], + "op": "ISZERO", + "path": "29" + }, + "1804": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1949, + 2067 + ], + "op": "PUSH2", + "path": "29", + "value": "0x76B" + }, + "1807": { + "branch": 377, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1949, + 2067 + ], + "op": "JUMPI", + "path": "29" + }, + "1808": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2013 + ], + "op": "DUP6", + "path": "29", + "statement": 26 + }, + "1809": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2013 + ], + "op": "DUP6", + "path": "29" + }, + "1810": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2018, + 2019 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1" + }, + "1812": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2014, + 2015 + ], + "op": "DUP5", + "path": "29" + }, + "1813": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2014, + 2019 + ], + "op": "SUB", + "path": "29" + }, + "1814": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "DUP2", + "path": "29" + }, + "1815": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "DUP2", + "path": "29" + }, + "1816": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "LT", + "path": "29" + }, + "1817": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "PUSH2", + "path": "29", + "value": "0x71E" + }, + "1820": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "JUMPI", + "path": "29" + }, + "1821": { + "dev": "Index out of range", + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "INVALID", + "path": "29" + }, + "1822": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1823": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "SWAP1", + "path": "29" + }, + "1824": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "POP", + "path": "29" + }, + "1825": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "1827": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "MUL", + "path": "29" + }, + "1828": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2020 + ], + "op": "ADD", + "path": "29" + }, + "1829": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1831": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "ADD", + "path": "29" + }, + "1832": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1834": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "DUP2", + "path": "29" + }, + "1835": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "ADD", + "path": "29" + }, + "1836": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "SWAP1", + "path": "29" + }, + "1837": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "PUSH2", + "path": "29", + "value": "0x736" + }, + "1840": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "SWAP2", + "path": "29" + }, + "1841": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "SWAP1", + "path": "29" + }, + "1842": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "1845": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2006, + 2031 + ], + "op": "JUMP", + "path": "29" + }, + "1846": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2006, + 2031 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1847": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2031 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "1850": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2031 + ], + "op": "AND", + "path": "29" + }, + "1851": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "PUSH2", + "path": "29", + "value": "0x74A" + }, + "1854": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1856": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "DUP4", + "path": "29" + }, + "1857": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "ADD", + "path": "29" + }, + "1858": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1860": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "DUP5", + "path": "29" + }, + "1861": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "ADD", + "path": "29" + }, + "1862": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "1865": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1986, + 2003 + ], + "op": "JUMP", + "path": "29" + }, + "1866": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2003 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1867": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2031 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "1870": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2031 + ], + "op": "AND", + "path": "29" + }, + "1871": { + "branch": 378, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1986, + 2031 + ], + "op": "GT", + "path": "29" + }, + "1872": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "PUSH2", + "path": "29", + "value": "0x76B" + }, + "1875": { + "branch": 378, + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "JUMPI", + "path": "29" + }, + "1876": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1878": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "MLOAD", + "path": "29" + }, + "1879": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "1883": { + "op": "PUSH1", + "value": "0xE5" + }, + "1885": { + "op": "SHL" + }, + "1886": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "DUP2", + "path": "29" + }, + "1887": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "MSTORE", + "path": "29" + }, + "1888": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "1890": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "ADD", + "path": "29" + }, + "1891": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "1894": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "SWAP1", + "path": "29" + }, + "1895": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4964" + }, + "1898": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 1978, + 2052 + ], + "op": "JUMP", + "path": "29" + }, + "1899": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1978, + 2052 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1900": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2135, + 2208 + ], + "op": "PUSH2", + "path": "29", + "statement": 27, + "value": "0x788" + }, + "1903": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2165, + 2172 + ], + "op": "DUP8", + "path": "29" + }, + "1904": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "PUSH2", + "path": "29", + "value": "0x77F" + }, + "1907": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1909": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "DUP5", + "path": "29" + }, + "1910": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "ADD", + "path": "29" + }, + "1911": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1913": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "DUP6", + "path": "29" + }, + "1914": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "ADD", + "path": "29" + }, + "1915": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "1918": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2174, + 2191 + ], + "op": "JUMP", + "path": "29" + }, + "1919": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2174, + 2191 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1920": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2135, + 2147 + ], + "op": "DUP6", + "path": "29" + }, + "1921": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2135, + 2147 + ], + "op": "SWAP2", + "path": "29" + }, + "1922": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2135, + 2208 + ], + "op": "SWAP1", + "path": "29" + }, + "1923": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2193, + 2207 + ], + "op": "DUP8", + "path": "29" + }, + "1924": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2135, + 2164 + ], + "op": "PUSH2", + "path": "29", + "value": "0xC79" + }, + "1927": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2135, + 2208 + ], + "op": "JUMP", + "path": "29" + }, + "1928": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2135, + 2208 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1929": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2223, + 2392 + ], + "op": "PUSH2", + "path": "29", + "statement": 28, + "value": "0x7A4" + }, + "1932": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2262, + 2269 + ], + "op": "DUP8", + "path": "29" + }, + "1933": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2287, + 2299 + ], + "op": "DUP5", + "path": "29" + }, + "1934": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2334 + ], + "op": "PUSH2", + "path": "29", + "value": "0x79A" + }, + "1937": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2334 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "1939": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2334 + ], + "op": "DUP6", + "path": "29" + }, + "1940": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2334 + ], + "op": "ADD", + "path": "29" + }, + "1941": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2323 + ], + "op": "DUP6", + "path": "29" + }, + "1942": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2334 + ], + "op": "PUSH2", + "path": "29", + "value": "0x43B9" + }, + "1945": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2317, + 2334 + ], + "op": "JUMP", + "path": "29" + }, + "1946": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2317, + 2334 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1947": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2352, + 2358 + ], + "op": "DUP5", + "path": "29" + }, + "1948": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2352, + 2378 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "1950": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2352, + 2378 + ], + "op": "ADD", + "path": "29" + }, + "1951": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2352, + 2378 + ], + "op": "CALLDATALOAD", + "path": "29" + }, + "1952": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2223, + 2244 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1605" + }, + "1955": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2223, + 2392 + ], + "op": "JUMP", + "path": "29" + }, + "1956": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2223, + 2392 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1957": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2407, + 2692 + ], + "op": "PUSH2", + "path": "29", + "statement": 29, + "value": "0x7D4" + }, + "1960": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2460, + 2467 + ], + "op": "DUP8", + "path": "29" + }, + "1961": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2485, + 2499 + ], + "op": "DUP6", + "path": "29" + }, + "1962": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2517, + 2529 + ], + "op": "DUP6", + "path": "29" + }, + "1963": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2547, + 2585 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "1965": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2547, + 2585 + ], + "op": "DUP6", + "path": "29" + }, + "1966": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2547, + 2585 + ], + "op": "ADD", + "path": "29" + }, + "1967": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2547, + 2585 + ], + "op": "CALLDATALOAD", + "path": "29" + }, + "1968": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "PUSH2", + "path": "29", + "value": "0x7BF" + }, + "1971": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "PUSH1", + "path": "29", + "value": "0xA0" + }, + "1973": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "DUP8", + "path": "29" + }, + "1974": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "ADD", + "path": "29" + }, + "1975": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "PUSH1", + "path": "29", + "value": "0x80" + }, + "1977": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "DUP9", + "path": "29" + }, + "1978": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "ADD", + "path": "29" + }, + "1979": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "PUSH2", + "path": "29", + "value": "0x439D" + }, + "1982": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2603, + 2635 + ], + "op": "JUMP", + "path": "29" + }, + "1983": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2603, + 2635 + ], + "op": "JUMPDEST", + "path": "29" + }, + "1984": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "PUSH2", + "path": "29", + "value": "0x7CF" + }, + "1987": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "1989": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "DUP9", + "path": "29" + }, + "1990": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "ADD", + "path": "29" + }, + "1991": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "PUSH1", + "path": "29", + "value": "0xA0" + }, + "1993": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "DUP10", + "path": "29" + }, + "1994": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "ADD", + "path": "29" + }, + "1995": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "PUSH2", + "path": "29", + "value": "0x439D" + }, + "1998": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2653, + 2678 + ], + "op": "JUMP", + "path": "29" + }, + "1999": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2653, + 2678 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2000": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2407, + 2442 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16D8" + }, + "2003": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2407, + 2692 + ], + "op": "JUMP", + "path": "29" + }, + "2004": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2407, + 2692 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2005": { + "op": "POP" + }, + "2006": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1679, + 1682 + ], + "op": "PUSH1", + "path": "29", + "statement": 30, + "value": "0x1" + }, + "2008": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1679, + 1682 + ], + "op": "ADD", + "path": "29" + }, + "2009": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "PUSH2", + "path": "29", + "value": "0x6E9" + }, + "2012": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "JUMP", + "path": "29" + }, + "2013": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2014": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 1639, + 2703 + ], + "op": "POP", + "path": "29" + }, + "2015": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2713, + 2761 + ], + "op": "PUSH2", + "path": "29", + "statement": 31, + "value": "0x7E8" + }, + "2018": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2737, + 2744 + ], + "op": "DUP6", + "path": "29" + }, + "2019": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2746, + 2760 + ], + "op": "DUP4", + "path": "29" + }, + "2020": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2713, + 2736 + ], + "op": "PUSH2", + "path": "29", + "value": "0xAAA" + }, + "2023": { + "fn": "BatchAction.batchBalanceAction", + "jump": "i", + "offset": [ + 2713, + 2761 + ], + "op": "JUMP", + "path": "29" + }, + "2024": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 2713, + 2761 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2025": { + "op": "POP" + }, + "2026": { + "op": "POP" + }, + "2027": { + "offset": [ + 276, + 277 + ], + "op": "PUSH1", + "path": "28", + "value": "0x1" + }, + "2029": { + "offset": [ + 1142, + 1158 + ], + "op": "PUSH1", + "path": "28", + "value": "0xA" + }, + "2031": { + "offset": [ + 1142, + 1173 + ], + "op": "SSTORE", + "path": "28" + }, + "2032": { + "op": "POP" + }, + "2033": { + "op": "POP" + }, + "2034": { + "op": "POP" + }, + "2035": { + "fn": "BatchAction.batchBalanceAction", + "jump": "o", + "offset": [ + 1241, + 2768 + ], + "op": "JUMP", + "path": "29" + }, + "2036": { + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "2037": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "PUSH1", + "path": "63", + "value": "0x1" + }, + "2039": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "SLOAD", + "path": "63" + }, + "2040": { + "op": "PUSH1", + "value": "0x1" + }, + "2042": { + "op": "PUSH1", + "value": "0x1" + }, + "2044": { + "op": "PUSH1", + "value": "0xA0" + }, + "2046": { + "op": "SHL" + }, + "2047": { + "op": "SUB" + }, + "2048": { + "offset": [ + 920, + 946 + ], + "op": "AND", + "path": "63" + }, + "2049": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 920, + 946 + ], + "op": "DUP2", + "path": "63" + }, + "2050": { + "fn": "BatchAction.batchBalanceAction", + "jump": "o", + "offset": [ + 920, + 946 + ], + "op": "JUMP", + "path": "63" + }, + "2051": { + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "2052": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "2054": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "SLOAD", + "path": "63" + }, + "2055": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "PUSH5", + "path": "63", + "value": "0x100000000" + }, + "2061": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "SWAP1", + "path": "63" + }, + "2062": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "DIV", + "path": "63" + }, + "2063": { + "op": "PUSH1", + "value": "0x1" + }, + "2065": { + "op": "PUSH1", + "value": "0x1" + }, + "2067": { + "op": "PUSH1", + "value": "0xA0" + }, + "2069": { + "op": "SHL" + }, + "2070": { + "op": "SUB" + }, + "2071": { + "offset": [ + 811, + 831 + ], + "op": "AND", + "path": "63" + }, + "2072": { + "fn": "BatchAction.batchBalanceAction", + "offset": [ + 811, + 831 + ], + "op": "DUP2", + "path": "63" + }, + "2073": { + "fn": "BatchAction.batchBalanceAction", + "jump": "o", + "offset": [ + 811, + 831 + ], + "op": "JUMP", + "path": "63" + }, + "2074": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2075": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23897, + 23928 + ], + "op": "PUSH20", + "path": "29", + "statement": 32, + "value": "0x0" + }, + "2096": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23943, + 23969 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2117": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23984, + 24013 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2138": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 24028, + 24050 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2159": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 24064, + 24089 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2180": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 24104, + 24131 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2201": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP1", + "path": "29" + }, + "2202": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP2", + "path": "29" + }, + "2203": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP3", + "path": "29" + }, + "2204": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP4", + "path": "29" + }, + "2205": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP5", + "path": "29" + }, + "2206": { + "fn": "BatchAction.getLibInfo", + "offset": [ + 23767, + 24148 + ], + "op": "SWAP6", + "path": "29" + }, + "2207": { + "fn": "BatchAction.getLibInfo", + "jump": "o", + "offset": [ + 23767, + 24148 + ], + "op": "JUMP", + "path": "29" + }, + "2208": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1296, + 1762 + ], + "op": "JUMPDEST", + "path": "28" + }, + "2209": { + "op": "PUSH1", + "value": "0x1" + }, + "2211": { + "op": "PUSH1", + "value": "0x1" + }, + "2213": { + "op": "PUSH1", + "value": "0xA0" + }, + "2215": { + "op": "SHL" + }, + "2216": { + "op": "SUB" + }, + "2217": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1374, + 1402 + ], + "op": "DUP2", + "path": "28", + "statement": 33 + }, + "2218": { + "branch": 439, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1374, + 1402 + ], + "op": "AND", + "path": "28" + }, + "2219": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "PUSH2", + "path": "28", + "value": "0x8B3" + }, + "2222": { + "branch": 439, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "JUMPI", + "path": "28" + }, + "2223": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "2225": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "DUP1", + "path": "28" + }, + "2226": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "REVERT", + "path": "28" + }, + "2227": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "JUMPDEST", + "path": "28" + }, + "2228": { + "op": "PUSH1", + "value": "0x1" + }, + "2230": { + "op": "PUSH1", + "value": "0x1" + }, + "2232": { + "op": "PUSH1", + "value": "0xA0" + }, + "2234": { + "op": "SHL" + }, + "2235": { + "op": "SUB" + }, + "2236": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "DUP2", + "path": "28", + "statement": 34 + }, + "2237": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "AND", + "path": "28" + }, + "2238": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1473, + 1477 + ], + "op": "ADDRESS", + "path": "28" + }, + "2239": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "EQ", + "path": "28" + }, + "2240": { + "branch": 440, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "ISZERO", + "path": "28" + }, + "2241": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "PUSH2", + "path": "28", + "value": "0x8C9" + }, + "2244": { + "branch": 440, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "JUMPI", + "path": "28" + }, + "2245": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "2247": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "DUP1", + "path": "28" + }, + "2248": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "REVERT", + "path": "28" + }, + "2249": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "JUMPDEST", + "path": "28" + }, + "2250": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1503, + 1519 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "2252": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1684, + 1723 + ], + "op": "PUSH2", + "path": "28", + "value": "0x8D4" + }, + "2255": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1715, + 1722 + ], + "op": "DUP3", + "path": "28" + }, + "2256": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1684, + 1714 + ], + "op": "PUSH2", + "path": "28", + "value": "0x1755" + }, + "2259": { + "fn": "ActionGuards.requireValidAccount", + "jump": "i", + "offset": [ + 1684, + 1723 + ], + "op": "JUMP", + "path": "28" + }, + "2260": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1684, + 1723 + ], + "op": "JUMPDEST", + "path": "28" + }, + "2261": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "2262": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "2263": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "2264": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "2265": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "PUSH2", + "path": "28", + "value": "0xFFFF" + }, + "2268": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "AND", + "path": "28" + }, + "2269": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "SWAP1", + "path": "28" + }, + "2270": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "2271": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1741, + 1749 + ], + "op": "DUP1", + "path": "28", + "statement": 35 + }, + "2272": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1753, + 1754 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "2274": { + "branch": 441, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1741, + 1754 + ], + "op": "EQ", + "path": "28" + }, + "2275": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "PUSH2", + "path": "28", + "value": "0x8EB" + }, + "2278": { + "branch": 441, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "JUMPI", + "path": "28" + }, + "2279": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "2281": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "DUP1", + "path": "28" + }, + "2282": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "REVERT", + "path": "28" + }, + "2283": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "JUMPDEST", + "path": "28" + }, + "2284": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1296, + 1762 + ], + "op": "POP", + "path": "28" + }, + "2285": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1296, + 1762 + ], + "op": "POP", + "path": "28" + }, + "2286": { + "fn": "ActionGuards.requireValidAccount", + "jump": "o", + "offset": [ + 1296, + 1762 + ], + "op": "JUMP", + "path": "28" + }, + "2287": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2288": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12723, + 12744 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8F7" + }, + "2291": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12723, + 12744 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3F62" + }, + "2294": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 12723, + 12744 + ], + "op": "JUMP", + "path": "29" + }, + "2295": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12723, + 12744 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2296": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12756, + 12792 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2298": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12795, + 12828 + ], + "op": "PUSH2", + "path": "29", + "value": "0x902" + }, + "2301": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12820, + 12827 + ], + "op": "DUP6", + "path": "29" + }, + "2302": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12795, + 12819 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB2B" + }, + "2305": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 12795, + 12828 + ], + "op": "JUMP", + "path": "29" + }, + "2306": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12795, + 12828 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2307": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12756, + 12828 + ], + "op": "SWAP1", + "path": "29" + }, + "2308": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12756, + 12828 + ], + "op": "POP", + "path": "29" + }, + "2309": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12838, + 12870 + ], + "op": "PUSH2", + "path": "29", + "value": "0x90C" + }, + "2312": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12838, + 12870 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3F12" + }, + "2315": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 12838, + 12870 + ], + "op": "JUMP", + "path": "29" + }, + "2316": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12838, + 12870 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2317": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13047, + 13083 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2319": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13086, + 13213 + ], + "op": "PUSH2", + "path": "29", + "value": "0x91E" + }, + "2322": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13136, + 13143 + ], + "op": "DUP8", + "path": "29" + }, + "2323": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13157, + 13171 + ], + "op": "DUP5", + "path": "29" + }, + "2324": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13157, + 13188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2326": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13157, + 13188 + ], + "op": "ADD", + "path": "29" + }, + "2327": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13157, + 13188 + ], + "op": "MLOAD", + "path": "29" + }, + "2328": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13202, + 13203 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2330": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13086, + 13122 + ], + "op": "PUSH2", + "path": "29", + "value": "0xBE7" + }, + "2333": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13086, + 13213 + ], + "op": "JUMP", + "path": "29" + }, + "2334": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13086, + 13213 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2335": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13047, + 13213 + ], + "op": "SWAP1", + "path": "29" + }, + "2336": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13047, + 13213 + ], + "op": "POP", + "path": "29" + }, + "2337": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13229, + 13238 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2339": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2340": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13244, + 13262 + ], + "op": "DUP6", + "path": "29" + }, + "2341": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13244, + 13262 + ], + "op": "DUP2", + "path": "29" + }, + "2342": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13244, + 13262 + ], + "op": "LT", + "path": "29" + }, + "2343": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "ISZERO", + "path": "29" + }, + "2344": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA82" + }, + "2347": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "JUMPI", + "path": "29" + }, + "2348": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13283, + 13322 + ], + "op": "CALLDATASIZE", + "path": "29" + }, + "2349": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13332 + ], + "op": "DUP8", + "path": "29" + }, + "2350": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13332 + ], + "op": "DUP8", + "path": "29" + }, + "2351": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13333, + 13334 + ], + "op": "DUP4", + "path": "29" + }, + "2352": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "DUP2", + "path": "29" + }, + "2353": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "DUP2", + "path": "29" + }, + "2354": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "LT", + "path": "29" + }, + "2355": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "PUSH2", + "path": "29", + "value": "0x938" + }, + "2358": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "JUMPI", + "path": "29" + }, + "2359": { + "dev": "Index out of range", + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "INVALID", + "path": "29" + }, + "2360": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2361": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "SWAP1", + "path": "29" + }, + "2362": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "POP", + "path": "29" + }, + "2363": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2365": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "MUL", + "path": "29" + }, + "2366": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "DUP2", + "path": "29" + }, + "2367": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "ADD", + "path": "29" + }, + "2368": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "SWAP1", + "path": "29" + }, + "2369": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "PUSH2", + "path": "29", + "value": "0x94A" + }, + "2372": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "SWAP2", + "path": "29" + }, + "2373": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "SWAP1", + "path": "29" + }, + "2374": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4B1D" + }, + "2377": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13325, + 13335 + ], + "op": "JUMP", + "path": "29" + }, + "2378": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13325, + 13335 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2379": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13283, + 13335 + ], + "op": "SWAP1", + "path": "29" + }, + "2380": { + "op": "POP" + }, + "2381": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13548, + 13553 + ], + "op": "DUP2", + "path": "29" + }, + "2382": { + "branch": 379, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13548, + 13553 + ], + "op": "ISZERO", + "path": "29" + }, + "2383": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13544, + 13662 + ], + "op": "PUSH2", + "path": "29", + "value": "0x9B9" + }, + "2386": { + "branch": 379, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13544, + 13662 + ], + "op": "JUMPI", + "path": "29" + }, + "2387": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13608 + ], + "op": "DUP8", + "path": "29", + "statement": 36 + }, + "2388": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13608 + ], + "op": "DUP8", + "path": "29" + }, + "2389": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13613, + 13614 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1" + }, + "2391": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13609, + 13610 + ], + "op": "DUP5", + "path": "29" + }, + "2392": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13609, + 13614 + ], + "op": "SUB", + "path": "29" + }, + "2393": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "DUP2", + "path": "29" + }, + "2394": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "DUP2", + "path": "29" + }, + "2395": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "LT", + "path": "29" + }, + "2396": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "PUSH2", + "path": "29", + "value": "0x961" + }, + "2399": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "JUMPI", + "path": "29" + }, + "2400": { + "dev": "Index out of range", + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "INVALID", + "path": "29" + }, + "2401": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2402": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "SWAP1", + "path": "29" + }, + "2403": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "POP", + "path": "29" + }, + "2404": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2406": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "MUL", + "path": "29" + }, + "2407": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "DUP2", + "path": "29" + }, + "2408": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "ADD", + "path": "29" + }, + "2409": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "SWAP1", + "path": "29" + }, + "2410": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "PUSH2", + "path": "29", + "value": "0x973" + }, + "2413": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "SWAP2", + "path": "29" + }, + "2414": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "SWAP1", + "path": "29" + }, + "2415": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4B1D" + }, + "2418": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13601, + 13615 + ], + "op": "JUMP", + "path": "29" + }, + "2419": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13615 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2420": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "PUSH2", + "path": "29", + "value": "0x984" + }, + "2423": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "SWAP1", + "path": "29" + }, + "2424": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2426": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "DUP2", + "path": "29" + }, + "2427": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "ADD", + "path": "29" + }, + "2428": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "SWAP1", + "path": "29" + }, + "2429": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2431": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "ADD", + "path": "29" + }, + "2432": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "2435": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13601, + 13626 + ], + "op": "JUMP", + "path": "29" + }, + "2436": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13601, + 13626 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2437": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13626 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "2440": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13626 + ], + "op": "AND", + "path": "29" + }, + "2441": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "PUSH2", + "path": "29", + "value": "0x998" + }, + "2444": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2446": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "DUP4", + "path": "29" + }, + "2447": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "ADD", + "path": "29" + }, + "2448": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2450": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "DUP5", + "path": "29" + }, + "2451": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "ADD", + "path": "29" + }, + "2452": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "2455": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13581, + 13598 + ], + "op": "JUMP", + "path": "29" + }, + "2456": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13598 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2457": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13626 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "2460": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13626 + ], + "op": "AND", + "path": "29" + }, + "2461": { + "branch": 380, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13581, + 13626 + ], + "op": "GT", + "path": "29" + }, + "2462": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "PUSH2", + "path": "29", + "value": "0x9B9" + }, + "2465": { + "branch": 380, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "JUMPI", + "path": "29" + }, + "2466": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2468": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "MLOAD", + "path": "29" + }, + "2469": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "2473": { + "op": "PUSH1", + "value": "0xE5" + }, + "2475": { + "op": "SHL" + }, + "2476": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "DUP2", + "path": "29" + }, + "2477": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "MSTORE", + "path": "29" + }, + "2478": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "2480": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "ADD", + "path": "29" + }, + "2481": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "2484": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "SWAP1", + "path": "29" + }, + "2485": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4964" + }, + "2488": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13573, + 13647 + ], + "op": "JUMP", + "path": "29" + }, + "2489": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13573, + 13647 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2490": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13730, + 13803 + ], + "op": "PUSH2", + "path": "29", + "statement": 37, + "value": "0x9D6" + }, + "2493": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13760, + 13767 + ], + "op": "DUP10", + "path": "29" + }, + "2494": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "PUSH2", + "path": "29", + "value": "0x9CD" + }, + "2497": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2499": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "DUP5", + "path": "29" + }, + "2500": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "ADD", + "path": "29" + }, + "2501": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2503": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "DUP6", + "path": "29" + }, + "2504": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "ADD", + "path": "29" + }, + "2505": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "2508": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13769, + 13786 + ], + "op": "JUMP", + "path": "29" + }, + "2509": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13769, + 13786 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2510": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13730, + 13742 + ], + "op": "DUP7", + "path": "29" + }, + "2511": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13730, + 13742 + ], + "op": "SWAP2", + "path": "29" + }, + "2512": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13730, + 13803 + ], + "op": "SWAP1", + "path": "29" + }, + "2513": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13788, + 13802 + ], + "op": "DUP9", + "path": "29" + }, + "2514": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13730, + 13759 + ], + "op": "PUSH2", + "path": "29", + "value": "0xC79" + }, + "2517": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13730, + 13803 + ], + "op": "JUMP", + "path": "29" + }, + "2518": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13730, + 13803 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2519": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13905, + 14074 + ], + "op": "PUSH2", + "path": "29", + "statement": 38, + "value": "0x9E8" + }, + "2522": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13944, + 13951 + ], + "op": "DUP10", + "path": "29" + }, + "2523": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13969, + 13981 + ], + "op": "DUP6", + "path": "29" + }, + "2524": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13999, + 14016 + ], + "op": "PUSH2", + "path": "29", + "value": "0x79A" + }, + "2527": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13999, + 14016 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2529": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13999, + 14016 + ], + "op": "DUP6", + "path": "29" + }, + "2530": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13999, + 14016 + ], + "op": "ADD", + "path": "29" + }, + "2531": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13999, + 14005 + ], + "op": "DUP6", + "path": "29" + }, + "2532": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13999, + 14016 + ], + "op": "PUSH2", + "path": "29", + "value": "0x43B9" + }, + "2535": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 13999, + 14016 + ], + "op": "JUMP", + "path": "29" + }, + "2536": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13905, + 14074 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2537": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14116, + 14117 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2539": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14106 + ], + "op": "PUSH2", + "path": "29", + "value": "0x9F7" + }, + "2542": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14106 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "2544": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14106 + ], + "op": "DUP4", + "path": "29" + }, + "2545": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14106 + ], + "op": "ADD", + "path": "29" + }, + "2546": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14099 + ], + "op": "DUP4", + "path": "29" + }, + "2547": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14106 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AD7" + }, + "2550": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14093, + 14106 + ], + "op": "JUMP", + "path": "29" + }, + "2551": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14106 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2552": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14113 + ], + "op": "SWAP1", + "path": "29" + }, + "2553": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14113 + ], + "op": "POP", + "path": "29" + }, + "2554": { + "branch": 381, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14093, + 14117 + ], + "op": "GT", + "path": "29" + }, + "2555": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14089, + 14675 + ], + "op": "ISZERO", + "path": "29" + }, + "2556": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14089, + 14675 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA5E" + }, + "2559": { + "branch": 381, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14089, + 14675 + ], + "op": "JUMPI", + "path": "29" + }, + "2560": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14137, + 14151 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2562": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14197, + 14404 + ], + "op": "PUSH2", + "path": "29", + "statement": 39, + "value": "0xA29" + }, + "2565": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14233, + 14240 + ], + "op": "DUP11", + "path": "29" + }, + "2566": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA15" + }, + "2569": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2571": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "DUP6", + "path": "29" + }, + "2572": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "ADD", + "path": "29" + }, + "2573": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2575": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "DUP7", + "path": "29" + }, + "2576": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "ADD", + "path": "29" + }, + "2577": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4579" + }, + "2580": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14262, + 14279 + ], + "op": "JUMP", + "path": "29" + }, + "2581": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14262, + 14279 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2582": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14314 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA22" + }, + "2585": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14314 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "2587": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14314 + ], + "op": "DUP7", + "path": "29" + }, + "2588": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14314 + ], + "op": "ADD", + "path": "29" + }, + "2589": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14307 + ], + "op": "DUP7", + "path": "29" + }, + "2590": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14314 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AD7" + }, + "2593": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14301, + 14314 + ], + "op": "JUMP", + "path": "29" + }, + "2594": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14301, + 14314 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2595": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14336, + 14350 + ], + "op": "DUP11", + "path": "29" + }, + "2596": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14372, + 14386 + ], + "op": "DUP10", + "path": "29" + }, + "2597": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14197, + 14211 + ], + "op": "PUSH2", + "path": "29", + "value": "0xD1F" + }, + "2600": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14197, + 14404 + ], + "op": "JUMP", + "path": "29" + }, + "2601": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14197, + 14404 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2602": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14169, + 14404 + ], + "op": "SWAP5", + "path": "29" + }, + "2603": { + "op": "POP" + }, + "2604": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14169, + 14404 + ], + "op": "SWAP1", + "path": "29" + }, + "2605": { + "op": "POP" + }, + "2606": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14522, + 14523 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2608": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14512, + 14523 + ], + "op": "DUP2", + "path": "29" + }, + "2609": { + "branch": 382, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14512, + 14523 + ], + "op": "SLT", + "path": "29" + }, + "2610": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14508, + 14574 + ], + "op": "ISZERO", + "path": "29" + }, + "2611": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14508, + 14574 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA48" + }, + "2614": { + "branch": 382, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14508, + 14574 + ], + "op": "JUMPI", + "path": "29" + }, + "2615": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14525, + 14574 + ], + "op": "PUSH2", + "path": "29", + "statement": 40, + "value": "0xA48" + }, + "2618": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14546, + 14558 + ], + "op": "DUP6", + "path": "29" + }, + "2619": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14560, + 14573 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA43" + }, + "2622": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14560, + 14567 + ], + "op": "DUP4", + "path": "29" + }, + "2623": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14560, + 14571 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEE1" + }, + "2626": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14560, + 14573 + ], + "op": "JUMP", + "path": "29" + }, + "2627": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14560, + 14573 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2628": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14525, + 14545 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17BE" + }, + "2631": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14525, + 14574 + ], + "op": "JUMP", + "path": "29" + }, + "2632": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14525, + 14574 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2633": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14647 + ], + "op": "PUSH1", + "path": "29", + "statement": 41, + "value": "0x60" + }, + "2635": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14647 + ], + "op": "DUP6", + "path": "29" + }, + "2636": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14647 + ], + "op": "ADD", + "path": "29" + }, + "2637": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14647 + ], + "op": "MLOAD", + "path": "29" + }, + "2638": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14660 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA57" + }, + "2641": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14660 + ], + "op": "SWAP1", + "path": "29" + }, + "2642": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14652, + 14659 + ], + "op": "DUP3", + "path": "29" + }, + "2643": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14651 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "2646": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14621, + 14660 + ], + "op": "JUMP", + "path": "29" + }, + "2647": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14621, + 14660 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2648": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14592, + 14618 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "2650": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14592, + 14618 + ], + "op": "DUP7", + "path": "29" + }, + "2651": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14592, + 14618 + ], + "op": "ADD", + "path": "29" + }, + "2652": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14592, + 14660 + ], + "op": "MSTORE", + "path": "29" + }, + "2653": { + "op": "POP" + }, + "2654": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14089, + 14675 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2655": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14689, + 14974 + ], + "op": "PUSH2", + "path": "29", + "statement": 42, + "value": "0xA79" + }, + "2658": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14742, + 14749 + ], + "op": "DUP10", + "path": "29" + }, + "2659": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14767, + 14781 + ], + "op": "DUP7", + "path": "29" + }, + "2660": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14799, + 14811 + ], + "op": "DUP7", + "path": "29" + }, + "2661": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14829, + 14867 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "2663": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14829, + 14867 + ], + "op": "DUP6", + "path": "29" + }, + "2664": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14829, + 14867 + ], + "op": "ADD", + "path": "29" + }, + "2665": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14829, + 14867 + ], + "op": "CALLDATALOAD", + "path": "29" + }, + "2666": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "PUSH2", + "path": "29", + "value": "0x7BF" + }, + "2669": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "PUSH1", + "path": "29", + "value": "0xA0" + }, + "2671": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "DUP8", + "path": "29" + }, + "2672": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "ADD", + "path": "29" + }, + "2673": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "PUSH1", + "path": "29", + "value": "0x80" + }, + "2675": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "DUP9", + "path": "29" + }, + "2676": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "ADD", + "path": "29" + }, + "2677": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14885, + 14917 + ], + "op": "PUSH2", + "path": "29", + "value": "0x439D" + }, + "2680": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 14885, + 14917 + ], + "op": "JUMP", + "path": "29" + }, + "2681": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 14689, + 14974 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2682": { + "op": "POP" + }, + "2683": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13264, + 13267 + ], + "op": "PUSH1", + "path": "29", + "statement": 43, + "value": "0x1" + }, + "2685": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13264, + 13267 + ], + "op": "ADD", + "path": "29" + }, + "2686": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "PUSH2", + "path": "29", + "value": "0x923" + }, + "2689": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "JUMP", + "path": "29" + }, + "2690": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2691": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 13224, + 14985 + ], + "op": "POP", + "path": "29" + }, + "2692": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15165, + 15197 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA8C" + }, + "2695": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15165, + 15179 + ], + "op": "DUP4", + "path": "29" + }, + "2696": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15165, + 15195 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1412" + }, + "2699": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 15165, + 15197 + ], + "op": "JUMP", + "path": "29" + }, + "2700": { + "branch": 383, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15165, + 15197 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2701": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15160, + 15381 + ], + "op": "PUSH2", + "path": "29", + "value": "0xA9D" + }, + "2704": { + "branch": 383, + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15160, + 15381 + ], + "op": "JUMPI", + "path": "29" + }, + "2705": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15296, + 15370 + ], + "op": "PUSH2", + "path": "29", + "statement": 44, + "value": "0xA9D" + }, + "2708": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15296, + 15310 + ], + "op": "DUP4", + "path": "29" + }, + "2709": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15339, + 15346 + ], + "op": "DUP9", + "path": "29" + }, + "2710": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15348, + 15362 + ], + "op": "DUP4", + "path": "29" + }, + "2711": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15364, + 15369 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2713": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15296, + 15338 + ], + "op": "PUSH2", + "path": "29", + "value": "0x141F" + }, + "2716": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "i", + "offset": [ + 15296, + 15370 + ], + "op": "JUMP", + "path": "29" + }, + "2717": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15296, + 15370 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2718": { + "op": "POP" + }, + "2719": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15492, + 15506 + ], + "op": "SWAP1", + "path": "29", + "statement": 45 + }, + "2720": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 15492, + 15506 + ], + "op": "SWAP2", + "path": "29" + }, + "2721": { + "op": "POP" + }, + "2722": { + "op": "POP" + }, + "2723": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2724": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "SWAP4", + "path": "29" + }, + "2725": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "SWAP3", + "path": "29" + }, + "2726": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "POP", + "path": "29" + }, + "2727": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "POP", + "path": "29" + }, + "2728": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "offset": [ + 12585, + 15513 + ], + "op": "POP", + "path": "29" + }, + "2729": { + "fn": "BatchAction._batchBalanceAndTradeAction", + "jump": "o", + "offset": [ + 12585, + 15513 + ], + "op": "JUMP", + "path": "29" + }, + "2730": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 20741, + 21191 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2731": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21013, + 21054 + ], + "op": "PUSH2", + "path": "29", + "statement": 46, + "value": "0xAB4" + }, + "2734": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21013, + 21027 + ], + "op": "DUP2", + "path": "29" + }, + "2735": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21046, + 21053 + ], + "op": "DUP4", + "path": "29" + }, + "2736": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21013, + 21045 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1501" + }, + "2739": { + "fn": "BatchAction._finalizeAccountContext", + "jump": "i", + "offset": [ + 21013, + 21054 + ], + "op": "JUMP", + "path": "29" + }, + "2740": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21013, + 21054 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2741": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21068, + 21090 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "2743": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21068, + 21090 + ], + "op": "DUP2", + "path": "29" + }, + "2744": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21068, + 21090 + ], + "op": "ADD", + "path": "29" + }, + "2745": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21068, + 21090 + ], + "op": "MLOAD", + "path": "29" + }, + "2746": { + "op": "PUSH1", + "value": "0x1" + }, + "2748": { + "op": "PUSH1", + "value": "0x1" + }, + "2750": { + "op": "PUSH1", + "value": "0xF8" + }, + "2752": { + "op": "SHL" + }, + "2753": { + "op": "SUB" + }, + "2754": { + "op": "NOT" + }, + "2755": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21068, + 21098 + ], + "op": "AND", + "path": "29" + }, + "2756": { + "branch": 384, + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21068, + 21098 + ], + "op": "ISZERO", + "path": "29" + }, + "2757": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21064, + 21185 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8EB" + }, + "2760": { + "branch": 384, + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21064, + 21185 + ], + "op": "JUMPI", + "path": "29" + }, + "2761": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "statement": 47, + "value": "0x40" + }, + "2763": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "MLOAD", + "path": "29" + }, + "2764": { + "op": "PUSH4", + "value": "0x6CCC642F" + }, + "2769": { + "op": "PUSH1", + "value": "0xE0" + }, + "2771": { + "op": "SHL" + }, + "2772": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP2", + "path": "29" + }, + "2773": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "MSTORE", + "path": "29" + }, + "2774": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21136 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2795": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21136 + ], + "op": "SWAP1", + "path": "29" + }, + "2796": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21165 + ], + "op": "PUSH4", + "path": "29", + "value": "0x6CCC642F" + }, + "2801": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21165 + ], + "op": "SWAP1", + "path": "29" + }, + "2802": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH2", + "path": "29", + "value": "0xAFF" + }, + "2805": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "SWAP1", + "path": "29" + }, + "2806": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21166, + 21173 + ], + "op": "DUP6", + "path": "29" + }, + "2807": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21166, + 21173 + ], + "op": "SWAP1", + "path": "29" + }, + "2808": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "2810": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "ADD", + "path": "29" + }, + "2811": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4641" + }, + "2814": { + "fn": "BatchAction._finalizeAccountContext", + "jump": "i", + "offset": [ + 21114, + 21174 + ], + "op": "JUMP", + "path": "29" + }, + "2815": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2816": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2818": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2820": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "MLOAD", + "path": "29" + }, + "2821": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP1", + "path": "29" + }, + "2822": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP4", + "path": "29" + }, + "2823": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "SUB", + "path": "29" + }, + "2824": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP2", + "path": "29" + }, + "2825": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP7", + "path": "29" + }, + "2826": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP1", + "path": "29" + }, + "2827": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "2828": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "ISZERO", + "path": "29" + }, + "2829": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP1", + "path": "29" + }, + "2830": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "ISZERO", + "path": "29" + }, + "2831": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB17" + }, + "2834": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "JUMPI", + "path": "29" + }, + "2835": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2837": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP1", + "path": "29" + }, + "2838": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "REVERT", + "path": "29" + }, + "2839": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2840": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "POP", + "path": "29" + }, + "2841": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "GAS", + "path": "29" + }, + "2842": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "2843": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "ISZERO", + "path": "29" + }, + "2844": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP1", + "path": "29" + }, + "2845": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "ISZERO", + "path": "29" + }, + "2846": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH2", + "path": "29", + "value": "0x666" + }, + "2849": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "JUMPI", + "path": "29" + }, + "2850": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "2851": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2853": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "DUP1", + "path": "29" + }, + "2854": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "2855": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "2856": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2858": { + "fn": "BatchAction._finalizeAccountContext", + "offset": [ + 21114, + 21174 + ], + "op": "REVERT", + "path": "29" + }, + "2859": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23208, + 23679 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2860": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23292, + 23313 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB33" + }, + "2863": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23292, + 23313 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3F62" + }, + "2866": { + "fn": "BatchAction._settleAccountIfRequired", + "jump": "i", + "offset": [ + 23292, + 23313 + ], + "op": "JUMP", + "path": "29" + }, + "2867": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23292, + 23313 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2868": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23329, + 23365 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2870": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23368, + 23416 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB3E" + }, + "2873": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23408, + 23415 + ], + "op": "DUP4", + "path": "29" + }, + "2874": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23368, + 23407 + ], + "op": "PUSH2", + "path": "29", + "value": "0x180D" + }, + "2877": { + "fn": "BatchAction._settleAccountIfRequired", + "jump": "i", + "offset": [ + 23368, + 23416 + ], + "op": "JUMP", + "path": "29" + }, + "2878": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23368, + 23416 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2879": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23329, + 23416 + ], + "op": "SWAP1", + "path": "29" + }, + "2880": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23329, + 23416 + ], + "op": "POP", + "path": "29" + }, + "2881": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23430, + 23463 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB49" + }, + "2884": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23430, + 23444 + ], + "op": "DUP2", + "path": "29" + }, + "2885": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23430, + 23461 + ], + "op": "PUSH2", + "path": "29", + "value": "0x18AE" + }, + "2888": { + "fn": "BatchAction._settleAccountIfRequired", + "jump": "i", + "offset": [ + 23430, + 23463 + ], + "op": "JUMP", + "path": "29" + }, + "2889": { + "branch": 385, + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23430, + 23463 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2890": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23426, + 23673 + ], + "op": "ISZERO", + "path": "29" + }, + "2891": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23426, + 23673 + ], + "op": "PUSH2", + "path": "29", + "value": "0xBDF" + }, + "2894": { + "branch": 385, + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23426, + 23673 + ], + "op": "JUMPI", + "path": "29" + }, + "2895": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "statement": 48, + "value": "0x40" + }, + "2897": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "MLOAD", + "path": "29" + }, + "2898": { + "op": "PUSH4", + "value": "0x37B5FC21" + }, + "2903": { + "op": "PUSH1", + "value": "0xE1" + }, + "2905": { + "op": "SHL" + }, + "2906": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP2", + "path": "29" + }, + "2907": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "MSTORE", + "path": "29" + }, + "2908": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23571 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "2929": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23571 + ], + "op": "SWAP1", + "path": "29" + }, + "2930": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23585 + ], + "op": "PUSH4", + "path": "29", + "value": "0x6F6BF842" + }, + "2935": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23585 + ], + "op": "SWAP1", + "path": "29" + }, + "2936": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB87" + }, + "2939": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "SWAP1", + "path": "29" + }, + "2940": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23586, + 23593 + ], + "op": "DUP7", + "path": "29" + }, + "2941": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23586, + 23593 + ], + "op": "SWAP1", + "path": "29" + }, + "2942": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23595, + 23609 + ], + "op": "DUP6", + "path": "29" + }, + "2943": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23595, + 23609 + ], + "op": "SWAP1", + "path": "29" + }, + "2944": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "2946": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ADD", + "path": "29" + }, + "2947": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0x46D8" + }, + "2950": { + "fn": "BatchAction._settleAccountIfRequired", + "jump": "i", + "offset": [ + 23551, + 23610 + ], + "op": "JUMP", + "path": "29" + }, + "2951": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2952": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0xA0" + }, + "2954": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "2956": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "MLOAD", + "path": "29" + }, + "2957": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "2958": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP4", + "path": "29" + }, + "2959": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "SUB", + "path": "29" + }, + "2960": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP2", + "path": "29" + }, + "2961": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP7", + "path": "29" + }, + "2962": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "2963": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "2964": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ISZERO", + "path": "29" + }, + "2965": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "2966": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ISZERO", + "path": "29" + }, + "2967": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0xB9F" + }, + "2970": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "JUMPI", + "path": "29" + }, + "2971": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2973": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "2974": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "REVERT", + "path": "29" + }, + "2975": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2976": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "POP", + "path": "29" + }, + "2977": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "GAS", + "path": "29" + }, + "2978": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "2979": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ISZERO", + "path": "29" + }, + "2980": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "2981": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ISZERO", + "path": "29" + }, + "2982": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0xBB3" + }, + "2985": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "JUMPI", + "path": "29" + }, + "2986": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "2987": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2989": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "2990": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "2991": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "2992": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "2994": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "REVERT", + "path": "29" + }, + "2995": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "JUMPDEST", + "path": "29" + }, + "2996": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "POP", + "path": "29" + }, + "2997": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "POP", + "path": "29" + }, + "2998": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "POP", + "path": "29" + }, + "2999": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "POP", + "path": "29" + }, + "3000": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3002": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "MLOAD", + "path": "29" + }, + "3003": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3004": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "3006": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "NOT", + "path": "29" + }, + "3007": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "3009": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP3", + "path": "29" + }, + "3010": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ADD", + "path": "29" + }, + "3011": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "AND", + "path": "29" + }, + "3012": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP3", + "path": "29" + }, + "3013": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ADD", + "path": "29" + }, + "3014": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP1", + "path": "29" + }, + "3015": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3017": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "MSTORE", + "path": "29" + }, + "3018": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "POP", + "path": "29" + }, + "3019": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "DUP2", + "path": "29" + }, + "3020": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "ADD", + "path": "29" + }, + "3021": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "SWAP1", + "path": "29" + }, + "3022": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0xBD7" + }, + "3025": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "SWAP2", + "path": "29" + }, + "3026": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "SWAP1", + "path": "29" + }, + "3027": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0x441F" + }, + "3030": { + "fn": "BatchAction._settleAccountIfRequired", + "jump": "i", + "offset": [ + 23551, + 23610 + ], + "op": "JUMP", + "path": "29" + }, + "3031": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23551, + 23610 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3032": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23544, + 23610 + ], + "op": "SWAP2", + "path": "29" + }, + "3033": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23544, + 23610 + ], + "op": "POP", + "path": "29" + }, + "3034": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23544, + 23610 + ], + "op": "POP", + "path": "29" + }, + "3035": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23544, + 23610 + ], + "op": "PUSH2", + "path": "29", + "value": "0xBE2" + }, + "3038": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23544, + 23610 + ], + "op": "JUMP", + "path": "29" + }, + "3039": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23426, + 23673 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3040": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23648, + 23662 + ], + "op": "SWAP1", + "path": "29", + "statement": 49 + }, + "3041": { + "op": "POP" + }, + "3042": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23208, + 23679 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3043": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23208, + 23679 + ], + "op": "SWAP2", + "path": "29" + }, + "3044": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23208, + 23679 + ], + "op": "SWAP1", + "path": "29" + }, + "3045": { + "fn": "BatchAction._settleAccountIfRequired", + "offset": [ + 23208, + 23679 + ], + "op": "POP", + "path": "29" + }, + "3046": { + "fn": "BatchAction._settleAccountIfRequired", + "jump": "o", + "offset": [ + 23208, + 23679 + ], + "op": "JUMP", + "path": "29" + }, + "3047": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15438, + 15915 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3048": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15584, + 15605 + ], + "op": "PUSH2", + "path": "84", + "value": "0xBEF" + }, + "3051": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15584, + 15605 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3F90" + }, + "3054": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15584, + 15605 + ], + "op": "JUMP", + "path": "84" + }, + "3055": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15584, + 15605 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3056": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15617, + 15644 + ], + "op": "PUSH2", + "path": "84", + "value": "0xBF7" + }, + "3059": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15617, + 15644 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3F90" + }, + "3062": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15617, + 15644 + ], + "op": "JUMP", + "path": "84" + }, + "3063": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15617, + 15644 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3064": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15658, + 15679 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "3066": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15658, + 15679 + ], + "op": "DUP5", + "path": "84" + }, + "3067": { + "branch": 494, + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15658, + 15679 + ], + "op": "AND", + "path": "84" + }, + "3068": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15654, + 15693 + ], + "op": "PUSH2", + "path": "84", + "value": "0xC06" + }, + "3071": { + "branch": 494, + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15654, + 15693 + ], + "op": "JUMPI", + "path": "84" + }, + "3072": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15688, + 15693 + ], + "op": "SWAP1", + "path": "84", + "statement": 50 + }, + "3073": { + "op": "POP" + }, + "3074": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15681, + 15693 + ], + "op": "PUSH2", + "path": "84", + "value": "0xAA3" + }, + "3077": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15681, + 15693 + ], + "op": "JUMP", + "path": "84" + }, + "3078": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15654, + 15693 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3079": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15725, + 15770 + ], + "op": "PUSH2", + "path": "84", + "statement": 51, + "value": "0xC10" + }, + "3082": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15744, + 15751 + ], + "op": "DUP6", + "path": "84" + }, + "3083": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15753, + 15769 + ], + "op": "DUP6", + "path": "84" + }, + "3084": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15725, + 15743 + ], + "op": "PUSH2", + "path": "84", + "value": "0x18FF" + }, + "3087": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15725, + 15770 + ], + "op": "JUMP", + "path": "84" + }, + "3088": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15725, + 15770 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3089": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15704, + 15770 + ], + "op": "DUP2", + "path": "84" + }, + "3090": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15704, + 15770 + ], + "op": "MSTORE", + "path": "84" + }, + "3091": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "PUSH1", + "path": "84", + "statement": 52, + "value": "0xFF" + }, + "3093": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "DUP5", + "path": "84" + }, + "3094": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "AND", + "path": "84" + }, + "3095": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15803 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "3097": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15803 + ], + "op": "DUP3", + "path": "84" + }, + "3098": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15803 + ], + "op": "ADD", + "path": "84" + }, + "3099": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "MSTORE", + "path": "84" + }, + "3100": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15871, + 15884 + ], + "op": "DUP3", + "path": "84", + "statement": 53 + }, + "3101": { + "op": "PUSH1", + "value": "0x1" + }, + "3103": { + "op": "PUSH1", + "value": "0x1" + }, + "3105": { + "op": "PUSH1", + "value": "0x40" + }, + "3107": { + "op": "SHL" + }, + "3108": { + "op": "SUB" + }, + "3109": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "3110": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "GT", + "path": "84" + }, + "3111": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "3112": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ISZERO", + "path": "84" + }, + "3113": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0xC31" + }, + "3116": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPI", + "path": "84" + }, + "3117": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "3119": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "3120": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "REVERT", + "path": "84" + }, + "3121": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3122": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "POP", + "path": "84" + }, + "3123": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "3125": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MLOAD", + "path": "84" + }, + "3126": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "3127": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "3128": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP3", + "path": "84" + }, + "3129": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "3130": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "3131": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "3133": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MUL", + "path": "84" + }, + "3134": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "3136": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "3137": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP3", + "path": "84" + }, + "3138": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "3139": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "3141": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "3142": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "3143": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ISZERO", + "path": "84" + }, + "3144": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0xC6B" + }, + "3147": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPI", + "path": "84" + }, + "3148": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "3149": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "3151": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "3152": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3153": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0xC58" + }, + "3156": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3FB8" + }, + "3159": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15850, + 15885 + ], + "op": "JUMP", + "path": "84" + }, + "3160": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3161": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "3162": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "3163": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "3165": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "3166": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "3167": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "3169": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "3170": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SUB", + "path": "84" + }, + "3171": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "3172": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "3173": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0xC50" + }, + "3176": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPI", + "path": "84" + }, + "3177": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "3178": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "POP", + "path": "84" + }, + "3179": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "3180": { + "op": "POP" + }, + "3181": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "3183": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "DUP3", + "path": "84" + }, + "3184": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "ADD", + "path": "84" + }, + "3185": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "3186": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "SWAP5", + "path": "84" + }, + "3187": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15438, + 15915 + ], + "op": "SWAP4", + "path": "84" + }, + "3188": { + "op": "POP" + }, + "3189": { + "op": "POP" + }, + "3190": { + "op": "POP" + }, + "3191": { + "op": "POP" + }, + "3192": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "o", + "offset": [ + 15438, + 15915 + ], + "op": "JUMP", + "path": "84" + }, + "3193": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 21924, + 23003 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3194": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22132, + 22142 + ], + "op": "DUP2", + "path": "67", + "statement": 54 + }, + "3195": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22142 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "3198": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22142 + ], + "op": "AND", + "path": "67" + }, + "3199": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22129 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "3201": { + "branch": 446, + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22142 + ], + "op": "LT", + "path": "67" + }, + "3202": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22184 + ], + "op": "DUP1", + "path": "67" + }, + "3203": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22184 + ], + "op": "ISZERO", + "path": "67" + }, + "3204": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22184 + ], + "op": "PUSH2", + "path": "67", + "value": "0xC93" + }, + "3207": { + "branch": 446, + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22184 + ], + "op": "JUMPI", + "path": "67" + }, + "3208": { + "op": "POP" + }, + "3209": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "3212": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22146, + 22184 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "3215": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22146, + 22184 + ], + "op": "DUP4", + "path": "67" + }, + "3216": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22146, + 22184 + ], + "op": "AND", + "path": "67" + }, + "3217": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22146, + 22184 + ], + "op": "GT", + "path": "67" + }, + "3218": { + "branch": 447, + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22146, + 22184 + ], + "op": "ISZERO", + "path": "67" + }, + "3219": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22128, + 22184 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3220": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22120, + 22185 + ], + "op": "PUSH2", + "path": "67", + "value": "0xC9C" + }, + "3223": { + "branch": 447, + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22120, + 22185 + ], + "op": "JUMPI", + "path": "67" + }, + "3224": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22120, + 22185 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "3226": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22120, + 22185 + ], + "op": "DUP1", + "path": "67" + }, + "3227": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22120, + 22185 + ], + "op": "REVERT", + "path": "67" + }, + "3228": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22120, + 22185 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3229": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22223, + 22259 + ], + "op": "PUSH2", + "path": "67", + "statement": 55, + "value": "0xFFFF" + }, + "3232": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22223, + 22259 + ], + "op": "DUP3", + "path": "67" + }, + "3233": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22223, + 22259 + ], + "op": "AND", + "path": "67" + }, + "3234": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22223, + 22259 + ], + "op": "DUP1", + "path": "67" + }, + "3235": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22223, + 22259 + ], + "op": "DUP6", + "path": "67" + }, + "3236": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22223, + 22259 + ], + "op": "MSTORE", + "path": "67" + }, + "3237": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22274, + 22319 + ], + "op": "PUSH2", + "path": "67", + "value": "0xCAF" + }, + "3240": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22274, + 22319 + ], + "op": "SWAP1", + "path": "67" + }, + "3241": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22274, + 22288 + ], + "op": "DUP3", + "path": "67" + }, + "3242": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22274, + 22288 + ], + "op": "SWAP1", + "path": "67" + }, + "3243": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22274, + 22307 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1928" + }, + "3246": { + "fn": "BalanceHandler.loadBalanceState", + "jump": "i", + "offset": [ + 22274, + 22319 + ], + "op": "JUMP", + "path": "67" + }, + "3247": { + "branch": 448, + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22274, + 22319 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3248": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "ISZERO", + "path": "67" + }, + "3249": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "PUSH2", + "path": "67", + "value": "0xCDC" + }, + "3252": { + "branch": 448, + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "JUMPI", + "path": "67" + }, + "3253": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22545, + 22583 + ], + "op": "PUSH2", + "path": "67", + "statement": 56, + "value": "0xCC2" + }, + "3256": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22563, + 22570 + ], + "op": "DUP4", + "path": "67" + }, + "3257": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22572, + 22582 + ], + "op": "DUP4", + "path": "67" + }, + "3258": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22545, + 22583 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "3261": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22545, + 22583 + ], + "op": "AND", + "path": "67" + }, + "3262": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22545, + 22562 + ], + "op": "PUSH2", + "path": "67", + "value": "0x19B2" + }, + "3265": { + "fn": "BalanceHandler.loadBalanceState", + "jump": "i", + "offset": [ + 22545, + 22583 + ], + "op": "JUMP", + "path": "67" + }, + "3266": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22545, + 22583 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3267": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22495, + 22528 + ], + "op": "PUSH2", + "path": "67", + "value": "0x100" + }, + "3270": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22495, + 22528 + ], + "op": "DUP9", + "path": "67" + }, + "3271": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22495, + 22528 + ], + "op": "ADD", + "path": "67" + }, + "3272": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22335, + 22583 + ], + "op": "MSTORE", + "path": "67" + }, + "3273": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22451, + 22477 + ], + "op": "PUSH1", + "path": "67", + "value": "0xE0" + }, + "3275": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22451, + 22477 + ], + "op": "DUP8", + "path": "67" + }, + "3276": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22451, + 22477 + ], + "op": "ADD", + "path": "67" + }, + "3277": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22335, + 22583 + ], + "op": "MSTORE", + "path": "67" + }, + "3278": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22401, + 22433 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "3280": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22401, + 22433 + ], + "op": "DUP7", + "path": "67" + }, + "3281": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22401, + 22433 + ], + "op": "ADD", + "path": "67" + }, + "3282": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22335, + 22583 + ], + "op": "MSTORE", + "path": "67" + }, + "3283": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22353, + 22383 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "3285": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22353, + 22383 + ], + "op": "DUP6", + "path": "67" + }, + "3286": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22353, + 22383 + ], + "op": "ADD", + "path": "67" + }, + "3287": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22335, + 22583 + ], + "op": "MSTORE", + "path": "67" + }, + "3288": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "PUSH2", + "path": "67", + "value": "0xCFA" + }, + "3291": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "JUMP", + "path": "67" + }, + "3292": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3293": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22647, + 22648 + ], + "op": "PUSH1", + "path": "67", + "statement": 57, + "value": "0x0" + }, + "3295": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22614, + 22644 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "3297": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22614, + 22644 + ], + "op": "DUP6", + "path": "67" + }, + "3298": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22614, + 22644 + ], + "op": "ADD", + "path": "67" + }, + "3299": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22614, + 22648 + ], + "op": "DUP2", + "path": "67" + }, + "3300": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22614, + 22648 + ], + "op": "SWAP1", + "path": "67" + }, + "3301": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22614, + 22648 + ], + "op": "MSTORE", + "path": "67" + }, + "3302": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22662, + 22694 + ], + "op": "PUSH1", + "path": "67", + "statement": 58, + "value": "0x40" + }, + "3304": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22662, + 22694 + ], + "op": "DUP6", + "path": "67" + }, + "3305": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22662, + 22694 + ], + "op": "ADD", + "path": "67" + }, + "3306": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22662, + 22698 + ], + "op": "DUP2", + "path": "67" + }, + "3307": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22662, + 22698 + ], + "op": "SWAP1", + "path": "67" + }, + "3308": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22662, + 22698 + ], + "op": "MSTORE", + "path": "67" + }, + "3309": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22712, + 22738 + ], + "op": "PUSH1", + "path": "67", + "statement": 59, + "value": "0xE0" + }, + "3311": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22712, + 22738 + ], + "op": "DUP6", + "path": "67" + }, + "3312": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22712, + 22738 + ], + "op": "ADD", + "path": "67" + }, + "3313": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22712, + 22742 + ], + "op": "DUP2", + "path": "67" + }, + "3314": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22712, + 22742 + ], + "op": "SWAP1", + "path": "67" + }, + "3315": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22712, + 22742 + ], + "op": "MSTORE", + "path": "67" + }, + "3316": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22756, + 22789 + ], + "op": "PUSH2", + "path": "67", + "statement": 60, + "value": "0x100" + }, + "3319": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22756, + 22789 + ], + "op": "DUP6", + "path": "67" + }, + "3320": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22756, + 22789 + ], + "op": "ADD", + "path": "67" + }, + "3321": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22756, + 22793 + ], + "op": "MSTORE", + "path": "67" + }, + "3322": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22270, + 22804 + ], + "op": "JUMPDEST", + "path": "67" + }, + "3323": { + "op": "POP" + }, + "3324": { + "op": "POP" + }, + "3325": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22843, + 22844 + ], + "op": "PUSH1", + "path": "67", + "statement": 61, + "value": "0x0" + }, + "3327": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22814, + 22840 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "3329": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22814, + 22840 + ], + "op": "DUP4", + "path": "67" + }, + "3330": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22814, + 22840 + ], + "op": "ADD", + "path": "67" + }, + "3331": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22814, + 22844 + ], + "op": "DUP2", + "path": "67" + }, + "3332": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22814, + 22844 + ], + "op": "SWAP1", + "path": "67" + }, + "3333": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22814, + 22844 + ], + "op": "MSTORE", + "path": "67" + }, + "3334": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22854, + 22900 + ], + "op": "PUSH1", + "path": "67", + "statement": 62, + "value": "0x80" + }, + "3336": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22854, + 22900 + ], + "op": "DUP4", + "path": "67" + }, + "3337": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22854, + 22900 + ], + "op": "ADD", + "path": "67" + }, + "3338": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22854, + 22904 + ], + "op": "DUP2", + "path": "67" + }, + "3339": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22854, + 22904 + ], + "op": "SWAP1", + "path": "67" + }, + "3340": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22854, + 22904 + ], + "op": "MSTORE", + "path": "67" + }, + "3341": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22914, + 22944 + ], + "op": "PUSH1", + "path": "67", + "statement": 63, + "value": "0xA0" + }, + "3343": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22914, + 22944 + ], + "op": "DUP4", + "path": "67" + }, + "3344": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22914, + 22944 + ], + "op": "ADD", + "path": "67" + }, + "3345": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22914, + 22948 + ], + "op": "DUP2", + "path": "67" + }, + "3346": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22914, + 22948 + ], + "op": "SWAP1", + "path": "67" + }, + "3347": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22914, + 22948 + ], + "op": "MSTORE", + "path": "67" + }, + "3348": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22992 + ], + "op": "PUSH1", + "path": "67", + "statement": 64, + "value": "0xC0" + }, + "3350": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22992 + ], + "op": "SWAP1", + "path": "67" + }, + "3351": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22992 + ], + "op": "SWAP3", + "path": "67" + }, + "3352": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22992 + ], + "op": "ADD", + "path": "67" + }, + "3353": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22996 + ], + "op": "SWAP2", + "path": "67" + }, + "3354": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22996 + ], + "op": "SWAP1", + "path": "67" + }, + "3355": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22996 + ], + "op": "SWAP2", + "path": "67" + }, + "3356": { + "fn": "BalanceHandler.loadBalanceState", + "offset": [ + 22958, + 22996 + ], + "op": "MSTORE", + "path": "67" + }, + "3357": { + "op": "POP" + }, + "3358": { + "fn": "BalanceHandler.loadBalanceState", + "jump": "o", + "offset": [ + 21924, + 23003 + ], + "op": "JUMP", + "path": "67" + }, + "3359": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3360": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21423, + 21437 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3362": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21439, + 21475 + ], + "op": "PUSH2", + "path": "29", + "value": "0xD29" + }, + "3365": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21439, + 21475 + ], + "op": "PUSH2", + "path": "29", + "value": "0x3F90" + }, + "3368": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 21439, + 21475 + ], + "op": "JUMP", + "path": "29" + }, + "3369": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21439, + 21475 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3370": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21491, + 21523 + ], + "op": "PUSH2", + "path": "29", + "value": "0xD32" + }, + "3373": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21491, + 21505 + ], + "op": "DUP5", + "path": "29" + }, + "3374": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21491, + 21521 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1412" + }, + "3377": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 21491, + 21523 + ], + "op": "JUMP", + "path": "29" + }, + "3378": { + "branch": 386, + "fn": "BatchAction._executeTrades", + "offset": [ + 21491, + 21523 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3379": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "ISZERO", + "path": "29" + }, + "3380": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "PUSH2", + "path": "29", + "value": "0xE22" + }, + "3383": { + "branch": 386, + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "JUMPI", + "path": "29" + }, + "3384": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21599, + 21609 + ], + "op": "DUP7", + "path": "29", + "statement": 65 + }, + "3385": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21609 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "3388": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21609 + ], + "op": "AND", + "path": "29" + }, + "3389": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21578 + ], + "op": "DUP5", + "path": "29" + }, + "3390": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21595 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "3392": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21595 + ], + "op": "ADD", + "path": "29" + }, + "3393": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21595 + ], + "op": "MLOAD", + "path": "29" + }, + "3394": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21609 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFFFF" + }, + "3397": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21609 + ], + "op": "AND", + "path": "29" + }, + "3398": { + "branch": 387, + "fn": "BatchAction._executeTrades", + "offset": [ + 21564, + 21609 + ], + "op": "EQ", + "path": "29" + }, + "3399": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "PUSH2", + "path": "29", + "value": "0xD62" + }, + "3402": { + "branch": 387, + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "JUMPI", + "path": "29" + }, + "3403": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3405": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "MLOAD", + "path": "29" + }, + "3406": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "3410": { + "op": "PUSH1", + "value": "0xE5" + }, + "3412": { + "op": "SHL" + }, + "3413": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "DUP2", + "path": "29" + }, + "3414": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "MSTORE", + "path": "29" + }, + "3415": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "3417": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "ADD", + "path": "29" + }, + "3418": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "3421": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "SWAP1", + "path": "29" + }, + "3422": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4A0F" + }, + "3425": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 21539, + 21669 + ], + "op": "JUMP", + "path": "29" + }, + "3426": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21539, + 21669 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3427": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21821, + 21852 + ], + "op": "PUSH1", + "path": "29", + "statement": 66, + "value": "0x60" + }, + "3429": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21821, + 21852 + ], + "op": "DUP5", + "path": "29" + }, + "3430": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21821, + 21852 + ], + "op": "ADD", + "path": "29" + }, + "3431": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21821, + 21852 + ], + "op": "MLOAD", + "path": "29" + }, + "3432": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21870, + 21899 + ], + "op": "DUP5", + "path": "29" + }, + "3433": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21870, + 21899 + ], + "op": "MLOAD", + "path": "29" + }, + "3434": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3436": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "MLOAD", + "path": "29" + }, + "3437": { + "op": "PUSH4", + "value": "0x3643F39B" + }, + "3442": { + "op": "PUSH1", + "value": "0xE0" + }, + "3444": { + "op": "SHL" + }, + "3445": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP2", + "path": "29" + }, + "3446": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "MSTORE", + "path": "29" + }, + "3447": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21683, + 21700 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3449": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21683, + 21700 + ], + "op": "SWAP3", + "path": "29" + }, + "3450": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21753 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "3471": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21753 + ], + "op": "SWAP3", + "path": "29" + }, + "3472": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21778 + ], + "op": "PUSH4", + "path": "29", + "value": "0x3643F39B" + }, + "3477": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21778 + ], + "op": "SWAP3", + "path": "29" + }, + "3478": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH2", + "path": "29", + "value": "0xDA9" + }, + "3481": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "SWAP3", + "path": "29" + }, + "3482": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21796, + 21803 + ], + "op": "DUP15", + "path": "29" + }, + "3483": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21796, + 21803 + ], + "op": "SWAP3", + "path": "29" + }, + "3484": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21821, + 21852 + ], + "op": "SWAP1", + "path": "29" + }, + "3485": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21821, + 21852 + ], + "op": "SWAP2", + "path": "29" + }, + "3486": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21917, + 21923 + ], + "op": "DUP14", + "path": "29" + }, + "3487": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21917, + 21923 + ], + "op": "SWAP1", + "path": "29" + }, + "3488": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21917, + 21923 + ], + "op": "DUP14", + "path": "29" + }, + "3489": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21917, + 21923 + ], + "op": "SWAP1", + "path": "29" + }, + "3490": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "3492": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ADD", + "path": "29" + }, + "3493": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH2", + "path": "29", + "value": "0x47CB" + }, + "3496": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 21740, + 21937 + ], + "op": "JUMP", + "path": "29" + }, + "3497": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3498": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3500": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3501": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "MLOAD", + "path": "29" + }, + "3502": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3503": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP4", + "path": "29" + }, + "3504": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "SUB", + "path": "29" + }, + "3505": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP2", + "path": "29" + }, + "3506": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP7", + "path": "29" + }, + "3507": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3508": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "3509": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ISZERO", + "path": "29" + }, + "3510": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3511": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ISZERO", + "path": "29" + }, + "3512": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH2", + "path": "29", + "value": "0xDC0" + }, + "3515": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "JUMPI", + "path": "29" + }, + "3516": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3518": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3519": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "REVERT", + "path": "29" + }, + "3520": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3521": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "POP", + "path": "29" + }, + "3522": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "GAS", + "path": "29" + }, + "3523": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "3524": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ISZERO", + "path": "29" + }, + "3525": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3526": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ISZERO", + "path": "29" + }, + "3527": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH2", + "path": "29", + "value": "0xDD4" + }, + "3530": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "JUMPI", + "path": "29" + }, + "3531": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3532": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3534": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3535": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "3536": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3537": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3539": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "REVERT", + "path": "29" + }, + "3540": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3541": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "POP", + "path": "29" + }, + "3542": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "POP", + "path": "29" + }, + "3543": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "POP", + "path": "29" + }, + "3544": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "POP", + "path": "29" + }, + "3545": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3547": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "MLOAD", + "path": "29" + }, + "3548": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3549": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "3551": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "NOT", + "path": "29" + }, + "3552": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "3554": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP3", + "path": "29" + }, + "3555": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ADD", + "path": "29" + }, + "3556": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "AND", + "path": "29" + }, + "3557": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP3", + "path": "29" + }, + "3558": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ADD", + "path": "29" + }, + "3559": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP1", + "path": "29" + }, + "3560": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3562": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "MSTORE", + "path": "29" + }, + "3563": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "POP", + "path": "29" + }, + "3564": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "DUP2", + "path": "29" + }, + "3565": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "ADD", + "path": "29" + }, + "3566": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "SWAP1", + "path": "29" + }, + "3567": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH2", + "path": "29", + "value": "0xDF8" + }, + "3570": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "SWAP2", + "path": "29" + }, + "3571": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "SWAP1", + "path": "29" + }, + "3572": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "PUSH2", + "path": "29", + "value": "0x43F0" + }, + "3575": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 21740, + 21937 + ], + "op": "JUMP", + "path": "29" + }, + "3576": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21740, + 21937 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3577": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21714, + 21937 + ], + "op": "SWAP1", + "path": "29" + }, + "3578": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21714, + 21937 + ], + "op": "SWAP4", + "path": "29" + }, + "3579": { + "op": "POP" + }, + "3580": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21714, + 21937 + ], + "op": "SWAP1", + "path": "29" + }, + "3581": { + "op": "POP" + }, + "3582": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21951, + 22076 + ], + "op": "DUP1", + "path": "29" + }, + "3583": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21951, + 22076 + ], + "op": "ISZERO", + "path": "29" + }, + "3584": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21951, + 22076 + ], + "op": "PUSH2", + "path": "29", + "value": "0xE1C" + }, + "3587": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21951, + 22076 + ], + "op": "JUMPI", + "path": "29" + }, + "3588": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22039, + 22061 + ], + "op": "PUSH1", + "path": "29", + "statement": 67, + "value": "0x20" + }, + "3590": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22039, + 22061 + ], + "op": "DUP6", + "path": "29" + }, + "3591": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22039, + 22061 + ], + "op": "ADD", + "path": "29" + }, + "3592": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22039, + 22061 + ], + "op": "DUP1", + "path": "29" + }, + "3593": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22039, + 22061 + ], + "op": "MLOAD", + "path": "29" + }, + "3594": { + "op": "PUSH1", + "value": "0x1" + }, + "3596": { + "op": "PUSH1", + "value": "0xF8" + }, + "3598": { + "op": "SHL" + }, + "3599": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22012, + 22061 + ], + "op": "OR", + "path": "29" + }, + "3600": { + "op": "PUSH1", + "value": "0x1" + }, + "3602": { + "op": "PUSH1", + "value": "0x1" + }, + "3604": { + "op": "PUSH1", + "value": "0xF8" + }, + "3606": { + "op": "SHL" + }, + "3607": { + "op": "SUB" + }, + "3608": { + "op": "NOT" + }, + "3609": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21987, + 22061 + ], + "op": "AND", + "path": "29" + }, + "3610": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21987, + 22061 + ], + "op": "SWAP1", + "path": "29" + }, + "3611": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21987, + 22061 + ], + "op": "MSTORE", + "path": "29" + }, + "3612": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21951, + 22076 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3613": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "POP", + "path": "29" + }, + "3614": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEBA" + }, + "3617": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "JUMP", + "path": "29" + }, + "3618": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3619": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "statement": 68, + "value": "0x40" + }, + "3621": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "MLOAD", + "path": "29" + }, + "3622": { + "op": "PUSH4", + "value": "0xB58F83ED" + }, + "3627": { + "op": "PUSH1", + "value": "0xE0" + }, + "3629": { + "op": "SHL" + }, + "3630": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP2", + "path": "29" + }, + "3631": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "MSTORE", + "path": "29" + }, + "3632": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22344 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "3653": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22344 + ], + "op": "SWAP1", + "path": "29" + }, + "3654": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22368 + ], + "op": "PUSH4", + "path": "29", + "value": "0xB58F83ED" + }, + "3659": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22368 + ], + "op": "SWAP1", + "path": "29" + }, + "3660": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH2", + "path": "29", + "value": "0xE61" + }, + "3663": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "SWAP1", + "path": "29" + }, + "3664": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22386, + 22393 + ], + "op": "DUP12", + "path": "29" + }, + "3665": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22386, + 22393 + ], + "op": "SWAP1", + "path": "29" + }, + "3666": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22411, + 22421 + ], + "op": "DUP12", + "path": "29" + }, + "3667": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22411, + 22421 + ], + "op": "SWAP1", + "path": "29" + }, + "3668": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22439, + 22453 + ], + "op": "DUP9", + "path": "29" + }, + "3669": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22439, + 22453 + ], + "op": "SWAP1", + "path": "29" + }, + "3670": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22471, + 22477 + ], + "op": "DUP13", + "path": "29" + }, + "3671": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22471, + 22477 + ], + "op": "SWAP1", + "path": "29" + }, + "3672": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22471, + 22477 + ], + "op": "DUP13", + "path": "29" + }, + "3673": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22471, + 22477 + ], + "op": "SWAP1", + "path": "29" + }, + "3674": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "3676": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ADD", + "path": "29" + }, + "3677": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4744" + }, + "3680": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 22331, + 22491 + ], + "op": "JUMP", + "path": "29" + }, + "3681": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3682": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3684": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3686": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "MLOAD", + "path": "29" + }, + "3687": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP1", + "path": "29" + }, + "3688": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP4", + "path": "29" + }, + "3689": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "SUB", + "path": "29" + }, + "3690": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP2", + "path": "29" + }, + "3691": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP7", + "path": "29" + }, + "3692": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP1", + "path": "29" + }, + "3693": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "3694": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ISZERO", + "path": "29" + }, + "3695": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP1", + "path": "29" + }, + "3696": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ISZERO", + "path": "29" + }, + "3697": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH2", + "path": "29", + "value": "0xE79" + }, + "3700": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "JUMPI", + "path": "29" + }, + "3701": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3703": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP1", + "path": "29" + }, + "3704": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "REVERT", + "path": "29" + }, + "3705": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3706": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "POP", + "path": "29" + }, + "3707": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "GAS", + "path": "29" + }, + "3708": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "3709": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ISZERO", + "path": "29" + }, + "3710": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP1", + "path": "29" + }, + "3711": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ISZERO", + "path": "29" + }, + "3712": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH2", + "path": "29", + "value": "0xE8D" + }, + "3715": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "JUMPI", + "path": "29" + }, + "3716": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3717": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3719": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP1", + "path": "29" + }, + "3720": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "3721": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3722": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3724": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "REVERT", + "path": "29" + }, + "3725": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3726": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "POP", + "path": "29" + }, + "3727": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "POP", + "path": "29" + }, + "3728": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "POP", + "path": "29" + }, + "3729": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "POP", + "path": "29" + }, + "3730": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3732": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "MLOAD", + "path": "29" + }, + "3733": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3734": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "3736": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP3", + "path": "29" + }, + "3737": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "3738": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "3740": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "3741": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "SWAP1", + "path": "29" + }, + "3742": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP2", + "path": "29" + }, + "3743": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ADD", + "path": "29" + }, + "3744": { + "op": "PUSH1", + "value": "0x1F" + }, + "3746": { + "op": "NOT" + }, + "3747": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "AND", + "path": "29" + }, + "3748": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP3", + "path": "29" + }, + "3749": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ADD", + "path": "29" + }, + "3750": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "3752": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "MSTORE", + "path": "29" + }, + "3753": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEB5" + }, + "3756": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "SWAP2", + "path": "29" + }, + "3757": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "SWAP1", + "path": "29" + }, + "3758": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "DUP2", + "path": "29" + }, + "3759": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "ADD", + "path": "29" + }, + "3760": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "SWAP1", + "path": "29" + }, + "3761": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "PUSH2", + "path": "29", + "value": "0x44BE" + }, + "3764": { + "fn": "BatchAction._executeTrades", + "jump": "i", + "offset": [ + 22331, + 22491 + ], + "op": "JUMP", + "path": "29" + }, + "3765": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22331, + 22491 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3766": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22303, + 22491 + ], + "op": "SWAP3", + "path": "29" + }, + "3767": { + "op": "POP" + }, + "3768": { + "fn": "BatchAction._executeTrades", + "offset": [ + 22303, + 22491 + ], + "op": "SWAP1", + "path": "29" + }, + "3769": { + "op": "POP" + }, + "3770": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21487, + 22502 + ], + "op": "JUMPDEST", + "path": "29" + }, + "3771": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "SWAP7", + "path": "29" + }, + "3772": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "POP", + "path": "29" + }, + "3773": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "SWAP7", + "path": "29" + }, + "3774": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "SWAP5", + "path": "29" + }, + "3775": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "POP", + "path": "29" + }, + "3776": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "POP", + "path": "29" + }, + "3777": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "POP", + "path": "29" + }, + "3778": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "POP", + "path": "29" + }, + "3779": { + "fn": "BatchAction._executeTrades", + "offset": [ + 21197, + 22508 + ], + "op": "POP", + "path": "29" + }, + "3780": { + "fn": "BatchAction._executeTrades", + "jump": "o", + "offset": [ + 21197, + 22508 + ], + "op": "JUMP", + "path": "29" + }, + "3781": { + "fn": "SafeInt256.add", + "offset": [ + 1427, + 1547 + ], + "op": "JUMPDEST", + "path": "94" + }, + "3782": { + "fn": "SafeInt256.add", + "offset": [ + 1516, + 1521 + ], + "op": "DUP2", + "path": "94", + "statement": 69 + }, + "3783": { + "fn": "SafeInt256.add", + "offset": [ + 1516, + 1521 + ], + "op": "DUP2", + "path": "94" + }, + "3784": { + "fn": "SafeInt256.add", + "offset": [ + 1516, + 1521 + ], + "op": "ADD", + "path": "94" + }, + "3785": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "DUP3", + "path": "94" + }, + "3786": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "DUP2", + "path": "94" + }, + "3787": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "SLT", + "path": "94" + }, + "3788": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "ISZERO", + "path": "94" + }, + "3789": { + "fn": "SafeInt256.add", + "offset": [ + 1483, + 1491 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "3791": { + "fn": "SafeInt256.add", + "offset": [ + 1532, + 1538 + ], + "op": "DUP4", + "path": "94" + }, + "3792": { + "fn": "SafeInt256.add", + "offset": [ + 1532, + 1538 + ], + "op": "SLT", + "path": "94" + }, + "3793": { + "fn": "SafeInt256.add", + "offset": [ + 1532, + 1538 + ], + "op": "ISZERO", + "path": "94" + }, + "3794": { + "branch": 525, + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1539 + ], + "op": "EQ", + "path": "94" + }, + "3795": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "PUSH2", + "path": "94", + "value": "0xEDB" + }, + "3798": { + "branch": 525, + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "JUMPI", + "path": "94" + }, + "3799": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "3801": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "DUP1", + "path": "94" + }, + "3802": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "REVERT", + "path": "94" + }, + "3803": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "JUMPDEST", + "path": "94" + }, + "3804": { + "fn": "SafeInt256.add", + "offset": [ + 1427, + 1547 + ], + "op": "SWAP3", + "path": "94" + }, + "3805": { + "fn": "SafeInt256.add", + "offset": [ + 1427, + 1547 + ], + "op": "SWAP2", + "path": "94" + }, + "3806": { + "fn": "SafeInt256.add", + "offset": [ + 1427, + 1547 + ], + "op": "POP", + "path": "94" + }, + "3807": { + "fn": "SafeInt256.add", + "offset": [ + 1427, + 1547 + ], + "op": "POP", + "path": "94" + }, + "3808": { + "fn": "SafeInt256.add", + "jump": "o", + "offset": [ + 1427, + 1547 + ], + "op": "JUMP", + "path": "94" + }, + "3809": { + "fn": "SafeInt256.neg", + "offset": [ + 1553, + 1643 + ], + "op": "JUMPDEST", + "path": "94" + }, + "3810": { + "fn": "SafeInt256.neg", + "offset": [ + 1599, + 1607 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "3812": { + "fn": "SafeInt256.neg", + "offset": [ + 1626, + 1636 + ], + "op": "PUSH2", + "path": "94", + "statement": 70, + "value": "0xBDF" + }, + "3815": { + "op": "PUSH1", + "value": "0x0" + }, + "3817": { + "op": "NOT" + }, + "3818": { + "fn": "SafeInt256.neg", + "offset": [ + 1634, + 1635 + ], + "op": "DUP4", + "path": "94" + }, + "3819": { + "fn": "SafeInt256.neg", + "offset": [ + 1626, + 1629 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1A5E" + }, + "3822": { + "fn": "SafeInt256.neg", + "jump": "i", + "offset": [ + 1626, + 1636 + ], + "op": "JUMP", + "path": "94" + }, + "3823": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5904, + 6420 + ], + "op": "JUMPDEST", + "path": "76" + }, + "3824": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5990, + 6016 + ], + "op": "PUSH2", + "path": "76", + "value": "0xEF7" + }, + "3827": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5990, + 6016 + ], + "op": "PUSH2", + "path": "76", + "value": "0x3FF8" + }, + "3830": { + "fn": "AssetRate.buildAssetRateStateful", + "jump": "i", + "offset": [ + 5990, + 6016 + ], + "op": "JUMP", + "path": "76" + }, + "3831": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5990, + 6016 + ], + "op": "JUMPDEST", + "path": "76" + }, + "3832": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6033, + 6044 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "3834": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6046, + 6073 + ], + "op": "DUP1", + "path": "76" + }, + "3835": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6075, + 6104 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "3837": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6120, + 6153 + ], + "op": "PUSH2", + "path": "76", + "value": "0xF05" + }, + "3840": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6142, + 6152 + ], + "op": "DUP6", + "path": "76" + }, + "3841": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6120, + 6141 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1AAC" + }, + "3844": { + "fn": "AssetRate.buildAssetRateStateful", + "jump": "i", + "offset": [ + 6120, + 6153 + ], + "op": "JUMP", + "path": "76" + }, + "3845": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6120, + 6153 + ], + "op": "JUMPDEST", + "path": "76" + }, + "3846": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "PUSH1", + "path": "76", + "statement": 71, + "value": "0x40" + }, + "3848": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "DUP1", + "path": "76" + }, + "3849": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "MLOAD", + "path": "76" + }, + "3850": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "PUSH1", + "path": "76", + "value": "0x60" + }, + "3852": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "DUP2", + "path": "76" + }, + "3853": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "ADD", + "path": "76" + }, + "3854": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "DUP3", + "path": "76" + }, + "3855": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "MSTORE", + "path": "76" + }, + "3856": { + "op": "PUSH1", + "value": "0x1" + }, + "3858": { + "op": "PUSH1", + "value": "0x1" + }, + "3860": { + "op": "PUSH1", + "value": "0xA0" + }, + "3862": { + "op": "SHL" + }, + "3863": { + "op": "SUB" + }, + "3864": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP1", + "path": "76" + }, + "3865": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP4", + "path": "76" + }, + "3866": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "AND", + "path": "76" + }, + "3867": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "DUP4", + "path": "76" + }, + "3868": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "MSTORE", + "path": "76" + }, + "3869": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "PUSH1", + "path": "76", + "value": "0x20" + }, + "3871": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "DUP4", + "path": "76" + }, + "3872": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "ADD", + "path": "76" + }, + "3873": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP4", + "path": "76" + }, + "3874": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP1", + "path": "76" + }, + "3875": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP4", + "path": "76" + }, + "3876": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "MSTORE", + "path": "76" + }, + "3877": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6370, + 6397 + ], + "op": "PUSH1", + "path": "76", + "value": "0xFF" + }, + "3879": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6370, + 6397 + ], + "op": "AND", + "path": "76" + }, + "3880": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6370, + 6372 + ], + "op": "PUSH1", + "path": "76", + "value": "0xA" + }, + "3882": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6370, + 6397 + ], + "op": "EXP", + "path": "76" + }, + "3883": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP2", + "path": "76" + }, + "3884": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "DUP2", + "path": "76" + }, + "3885": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "ADD", + "path": "76" + }, + "3886": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP2", + "path": "76" + }, + "3887": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP1", + "path": "76" + }, + "3888": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP2", + "path": "76" + }, + "3889": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "MSTORE", + "path": "76" + }, + "3890": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 6183, + 6413 + ], + "op": "SWAP4", + "path": "76" + }, + "3891": { + "op": "POP" + }, + "3892": { + "op": "POP" + }, + "3893": { + "op": "POP" + }, + "3894": { + "op": "POP" + }, + "3895": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5904, + 6420 + ], + "op": "SWAP2", + "path": "76" + }, + "3896": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5904, + 6420 + ], + "op": "SWAP1", + "path": "76" + }, + "3897": { + "fn": "AssetRate.buildAssetRateStateful", + "offset": [ + 5904, + 6420 + ], + "op": "POP", + "path": "76" + }, + "3898": { + "fn": "AssetRate.buildAssetRateStateful", + "jump": "o", + "offset": [ + 5904, + 6420 + ], + "op": "JUMP", + "path": "76" + }, + "3899": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1133, + 1269 + ], + "op": "JUMPDEST", + "path": "69" + }, + "3900": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1204, + 1216 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF43" + }, + "3903": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1204, + 1216 + ], + "op": "PUSH2", + "path": "69", + "value": "0x4022" + }, + "3906": { + "fn": "TokenHandler.getUnderlyingToken", + "jump": "i", + "offset": [ + 1204, + 1216 + ], + "op": "JUMP", + "path": "69" + }, + "3907": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1204, + 1216 + ], + "op": "JUMPDEST", + "path": "69" + }, + "3908": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1235, + 1262 + ], + "op": "PUSH2", + "path": "69", + "statement": 72, + "value": "0xBDF" + }, + "3911": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1245, + 1255 + ], + "op": "DUP3", + "path": "69" + }, + "3912": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1257, + 1261 + ], + "op": "PUSH1", + "path": "69", + "value": "0x1" + }, + "3914": { + "fn": "TokenHandler.getUnderlyingToken", + "offset": [ + 1235, + 1244 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1B6F" + }, + "3917": { + "fn": "TokenHandler.getUnderlyingToken", + "jump": "i", + "offset": [ + 1235, + 1262 + ], + "op": "JUMP", + "path": "69" + }, + "3918": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 882, + 1350 + ], + "op": "JUMPDEST", + "path": "76" + }, + "3919": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1010, + 1016 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "3921": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1155, + 1179 + ], + "op": "DUP1", + "path": "76" + }, + "3922": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1308 + ], + "op": "PUSH2", + "path": "76", + "value": "0xF7F" + }, + "3925": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1286, + 1288 + ], + "op": "DUP5", + "path": "76" + }, + "3926": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1286, + 1307 + ], + "op": "PUSH1", + "path": "76", + "value": "0x40" + }, + "3928": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1286, + 1307 + ], + "op": "ADD", + "path": "76" + }, + "3929": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1286, + 1307 + ], + "op": "MLOAD", + "path": "76" + }, + "3930": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1268 + ], + "op": "PUSH2", + "path": "76", + "value": "0xF79" + }, + "3933": { + "offset": [ + 658, + 662 + ], + "op": "PUSH5", + "path": "76", + "value": "0x2540BE400" + }, + "3939": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1220 + ], + "op": "PUSH2", + "path": "76", + "value": "0xF79" + }, + "3942": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1207, + 1219 + ], + "op": "DUP8", + "path": "76" + }, + "3943": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1184 + ], + "op": "DUP10", + "path": "76" + }, + "3944": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1189 + ], + "op": "PUSH1", + "path": "76", + "value": "0x20" + }, + "3946": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1189 + ], + "op": "ADD", + "path": "76" + }, + "3947": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1189 + ], + "op": "MLOAD", + "path": "76" + }, + "3948": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1206 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1A5E" + }, + "3951": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1206 + ], + "op": "SWAP1", + "path": "76" + }, + "3952": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1220 + ], + "op": "SWAP2", + "path": "76" + }, + "3953": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1220 + ], + "op": "SWAP1", + "path": "76" + }, + "3954": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1220 + ], + "op": "PUSH4", + "path": "76", + "value": "0xFFFFFFFF" + }, + "3959": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1220 + ], + "op": "AND", + "path": "76" + }, + "3960": { + "fn": "AssetRate.convertToUnderlying", + "jump": "i", + "offset": [ + 1182, + 1220 + ], + "op": "JUMP", + "path": "76" + }, + "3961": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1220 + ], + "op": "JUMPDEST", + "path": "76" + }, + "3962": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1237 + ], + "op": "SWAP1", + "path": "76" + }, + "3963": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1237 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1C1D" + }, + "3966": { + "fn": "AssetRate.convertToUnderlying", + "jump": "i", + "offset": [ + 1182, + 1268 + ], + "op": "JUMP", + "path": "76" + }, + "3967": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1182, + 1308 + ], + "op": "JUMPDEST", + "path": "76" + }, + "3968": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 1155, + 1308 + ], + "op": "SWAP5", + "path": "76" + }, + "3969": { + "fn": "AssetRate.convertToUnderlying", + "offset": [ + 882, + 1350 + ], + "op": "SWAP4", + "path": "76" + }, + "3970": { + "op": "POP" + }, + "3971": { + "op": "POP" + }, + "3972": { + "op": "POP" + }, + "3973": { + "op": "POP" + }, + "3974": { + "fn": "AssetRate.convertToUnderlying", + "jump": "o", + "offset": [ + 882, + 1350 + ], + "op": "JUMP", + "path": "76" + }, + "3975": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13720, + 14509 + ], + "op": "JUMPDEST", + "path": "69" + }, + "3976": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13805, + 13811 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "3978": { + "offset": [ + 429, + 432 + ], + "op": "PUSH4", + "path": "60", + "value": "0x5F5E100" + }, + "3983": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13827, + 13832 + ], + "op": "DUP4", + "path": "69" + }, + "3984": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13827, + 13841 + ], + "op": "PUSH1", + "path": "69", + "value": "0x40" + }, + "3986": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13827, + 13841 + ], + "op": "ADD", + "path": "69" + }, + "3987": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13827, + 13841 + ], + "op": "MLOAD", + "path": "69" + }, + "3988": { + "branch": 542, + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13827, + 13879 + ], + "op": "EQ", + "path": "69" + }, + "3989": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13823, + 13894 + ], + "op": "ISZERO", + "path": "69" + }, + "3990": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13823, + 13894 + ], + "op": "PUSH2", + "path": "69", + "value": "0xFA0" + }, + "3993": { + "branch": 542, + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13823, + 13894 + ], + "op": "JUMPI", + "path": "69" + }, + "3994": { + "op": "POP" + }, + "3995": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13888, + 13894 + ], + "op": "DUP1", + "path": "69", + "statement": 73 + }, + "3996": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13881, + 13894 + ], + "op": "PUSH2", + "path": "69", + "value": "0xEDB" + }, + "3999": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13881, + 13894 + ], + "op": "JUMP", + "path": "69" + }, + "4000": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 13823, + 13894 + ], + "op": "JUMPDEST", + "path": "69" + }, + "4001": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14502 + ], + "op": "PUSH2", + "path": "69", + "statement": 74, + "value": "0xAA3" + }, + "4004": { + "offset": [ + 429, + 432 + ], + "op": "PUSH4", + "path": "60", + "value": "0x5F5E100" + }, + "4009": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14462 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF79" + }, + "4012": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14447, + 14452 + ], + "op": "DUP6", + "path": "69" + }, + "4013": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14447, + 14461 + ], + "op": "PUSH1", + "path": "69", + "value": "0x40" + }, + "4015": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14447, + 14461 + ], + "op": "ADD", + "path": "69" + }, + "4016": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14447, + 14461 + ], + "op": "MLOAD", + "path": "69" + }, + "4017": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14442 + ], + "op": "DUP6", + "path": "69" + }, + "4018": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14446 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1A5E" + }, + "4021": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14446 + ], + "op": "SWAP1", + "path": "69" + }, + "4022": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14462 + ], + "op": "SWAP2", + "path": "69" + }, + "4023": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14462 + ], + "op": "SWAP1", + "path": "69" + }, + "4024": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14462 + ], + "op": "PUSH4", + "path": "69", + "value": "0xFFFFFFFF" + }, + "4029": { + "fn": "TokenHandler.convertToExternal", + "offset": [ + 14436, + 14462 + ], + "op": "AND", + "path": "69" + }, + "4030": { + "fn": "TokenHandler.convertToExternal", + "jump": "i", + "offset": [ + 14436, + 14462 + ], + "op": "JUMP", + "path": "69" + }, + "4031": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4547, + 6241 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4032": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4711, + 4717 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4034": { + "branch": 449, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4733, + 4762 + ], + "op": "DUP2", + "path": "67" + }, + "4035": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4729, + 4772 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFCE" + }, + "4038": { + "branch": 449, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4729, + 4772 + ], + "op": "JUMPI", + "path": "67" + }, + "4039": { + "op": "POP" + }, + "4040": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4771, + 4772 + ], + "op": "PUSH1", + "path": "67", + "statement": 75, + "value": "0x0" + }, + "4042": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4764, + 4772 + ], + "op": "PUSH2", + "path": "67", + "value": "0xAA3" + }, + "4045": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4764, + 4772 + ], + "op": "JUMP", + "path": "67" + }, + "4046": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4729, + 4772 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4047": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4817, + 4818 + ], + "op": "PUSH1", + "path": "67", + "statement": 76, + "value": "0x0" + }, + "4049": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4790, + 4814 + ], + "op": "DUP3", + "path": "67" + }, + "4050": { + "branch": 450, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4790, + 4818 + ], + "op": "SGT", + "path": "67" + }, + "4051": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4782, + 4819 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFDB" + }, + "4054": { + "branch": 450, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4782, + 4819 + ], + "op": "JUMPI", + "path": "67" + }, + "4055": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4782, + 4819 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4057": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4782, + 4819 + ], + "op": "DUP1", + "path": "67" + }, + "4058": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4782, + 4819 + ], + "op": "REVERT", + "path": "67" + }, + "4059": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4782, + 4819 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4060": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4872, + 4900 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4062": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4903, + 4959 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFEE" + }, + "4065": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4935, + 4947 + ], + "op": "DUP6", + "path": "67" + }, + "4066": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4935, + 4958 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4068": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4935, + 4958 + ], + "op": "ADD", + "path": "67" + }, + "4069": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4935, + 4958 + ], + "op": "MLOAD", + "path": "67" + }, + "4070": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4903, + 4959 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4073": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4903, + 4959 + ], + "op": "AND", + "path": "67" + }, + "4074": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4903, + 4934 + ], + "op": "PUSH2", + "path": "67", + "value": "0xF3B" + }, + "4077": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 4903, + 4959 + ], + "op": "JUMP", + "path": "67" + }, + "4078": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4903, + 4959 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4079": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4872, + 4959 + ], + "op": "SWAP1", + "path": "67" + }, + "4080": { + "op": "POP" + }, + "4081": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5098, + 5113 + ], + "op": "PUSH1", + "path": "67", + "value": "0x3" + }, + "4083": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5084 + ], + "op": "DUP2", + "path": "67" + }, + "4084": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5094 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "4086": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5094 + ], + "op": "ADD", + "path": "67" + }, + "4087": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5094 + ], + "op": "MLOAD", + "path": "67" + }, + "4088": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "PUSH1", + "path": "67", + "value": "0x5" + }, + "4090": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "DUP2", + "path": "67" + }, + "4091": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "GT", + "path": "67" + }, + "4092": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "ISZERO", + "path": "67" + }, + "4093": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1002" + }, + "4096": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "JUMPI", + "path": "67" + }, + "4097": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "INVALID", + "path": "67" + }, + "4098": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4099": { + "branch": 451, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5069, + 5113 + ], + "op": "EQ", + "path": "67" + }, + "4100": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "ISZERO", + "path": "67" + }, + "4101": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "PUSH2", + "path": "67", + "value": "0x102C" + }, + "4104": { + "branch": 451, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "JUMPI", + "path": "67" + }, + "4105": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5213, + 5222 + ], + "op": "CALLVALUE", + "path": "67", + "statement": 77 + }, + "4106": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5184, + 5208 + ], + "op": "DUP4", + "path": "67" + }, + "4107": { + "branch": 452, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5176, + 5222 + ], + "op": "EQ", + "path": "67" + }, + "4108": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1027" + }, + "4111": { + "branch": 452, + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "JUMPI", + "path": "67" + }, + "4112": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4114": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "MLOAD", + "path": "67" + }, + "4115": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "4119": { + "op": "PUSH1", + "value": "0xE5" + }, + "4121": { + "op": "SHL" + }, + "4122": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "DUP2", + "path": "67" + }, + "4123": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "MSTORE", + "path": "67" + }, + "4124": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "PUSH1", + "path": "67", + "value": "0x4" + }, + "4126": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "ADD", + "path": "67" + }, + "4127": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "PUSH2", + "path": "67", + "value": "0x17A" + }, + "4130": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "SWAP1", + "path": "67" + }, + "4131": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "PUSH2", + "path": "67", + "value": "0x48F8" + }, + "4134": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 5168, + 5238 + ], + "op": "JUMP", + "path": "67" + }, + "4135": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5168, + 5238 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4136": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1043" + }, + "4139": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "JUMP", + "path": "67" + }, + "4140": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4141": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5330, + 5353 + ], + "op": "DUP5", + "path": "67", + "statement": 78 + }, + "4142": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5330, + 5353 + ], + "op": "MLOAD", + "path": "67" + }, + "4143": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5380 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1040" + }, + "4146": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5380 + ], + "op": "SWAP1", + "path": "67" + }, + "4147": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5311 + ], + "op": "DUP3", + "path": "67" + }, + "4148": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5311 + ], + "op": "SWAP1", + "path": "67" + }, + "4149": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5321, + 5328 + ], + "op": "DUP7", + "path": "67" + }, + "4150": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5321, + 5328 + ], + "op": "SWAP1", + "path": "67" + }, + "4151": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5380 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4154": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5380 + ], + "op": "AND", + "path": "67" + }, + "4155": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5355, + 5379 + ], + "op": "DUP7", + "path": "67" + }, + "4156": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5320 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1C4E" + }, + "4159": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 5296, + 5380 + ], + "op": "JUMP", + "path": "67" + }, + "4160": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5296, + 5380 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4161": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5269, + 5380 + ], + "op": "SWAP3", + "path": "67" + }, + "4162": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5269, + 5380 + ], + "op": "POP", + "path": "67" + }, + "4163": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5065, + 5391 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4164": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5401, + 5424 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4166": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5427, + 5478 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1056" + }, + "4169": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5454, + 5466 + ], + "op": "DUP7", + "path": "67" + }, + "4170": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5454, + 5477 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4172": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5454, + 5477 + ], + "op": "ADD", + "path": "67" + }, + "4173": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5454, + 5477 + ], + "op": "MLOAD", + "path": "67" + }, + "4174": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5427, + 5478 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4177": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5427, + 5478 + ], + "op": "AND", + "path": "67" + }, + "4178": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5427, + 5453 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10A4" + }, + "4181": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 5427, + 5478 + ], + "op": "JUMP", + "path": "67" + }, + "4182": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5427, + 5478 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4183": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5401, + 5478 + ], + "op": "SWAP1", + "path": "67" + }, + "4184": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5401, + 5478 + ], + "op": "POP", + "path": "67" + }, + "4185": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5488, + 5531 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4187": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5546, + 5631 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1073" + }, + "4190": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5562, + 5574 + ], + "op": "DUP8", + "path": "67" + }, + "4191": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5562, + 5585 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4193": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5562, + 5585 + ], + "op": "ADD", + "path": "67" + }, + "4194": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5562, + 5585 + ], + "op": "MLOAD", + "path": "67" + }, + "4195": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5587, + 5630 + ], + "op": "PUSH2", + "path": "67", + "value": "0x106B" + }, + "4198": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5605, + 5629 + ], + "op": "DUP8", + "path": "67" + }, + "4199": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5587, + 5604 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1CF6" + }, + "4202": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 5587, + 5630 + ], + "op": "JUMP", + "path": "67" + }, + "4203": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5587, + 5630 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4204": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5546, + 5556 + ], + "op": "DUP5", + "path": "67" + }, + "4205": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5546, + 5556 + ], + "op": "SWAP2", + "path": "67" + }, + "4206": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5546, + 5631 + ], + "op": "SWAP1", + "path": "67" + }, + "4207": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5546, + 5561 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1D09" + }, + "4210": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 5546, + 5631 + ], + "op": "JUMP", + "path": "67" + }, + "4211": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5546, + 5631 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4212": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5488, + 5631 + ], + "op": "SWAP1", + "path": "67" + }, + "4213": { + "op": "POP" + }, + "4214": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5932, + 5966 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4216": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5981, + 6047 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1081" + }, + "4219": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5981, + 5991 + ], + "op": "DUP4", + "path": "67" + }, + "4220": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5488, + 5631 + ], + "op": "DUP4", + "path": "67" + }, + "4221": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5981, + 6009 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1DFA" + }, + "4224": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 5981, + 6047 + ], + "op": "JUMP", + "path": "67" + }, + "4225": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5981, + 6047 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4226": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6156 + ], + "op": "PUSH1", + "path": "67", + "statement": 79, + "value": "0x60" + }, + "4228": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6156 + ], + "op": "DUP10", + "path": "67" + }, + "4229": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6156 + ], + "op": "ADD", + "path": "67" + }, + "4230": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6156 + ], + "op": "MLOAD", + "path": "67" + }, + "4231": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5932, + 6047 + ], + "op": "SWAP1", + "path": "67" + }, + "4232": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5932, + 6047 + ], + "op": "SWAP2", + "path": "67" + }, + "4233": { + "op": "POP" + }, + "4234": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6189 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1093" + }, + "4237": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6189 + ], + "op": "SWAP1", + "path": "67" + }, + "4238": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 5932, + 6047 + ], + "op": "DUP3", + "path": "67" + }, + "4239": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6160 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4242": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "i", + "offset": [ + 6130, + 6189 + ], + "op": "JUMP", + "path": "67" + }, + "4243": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6130, + 6189 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4244": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6101, + 6127 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "4246": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6101, + 6127 + ], + "op": "DUP10", + "path": "67" + }, + "4247": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6101, + 6127 + ], + "op": "ADD", + "path": "67" + }, + "4248": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6101, + 6189 + ], + "op": "MSTORE", + "path": "67" + }, + "4249": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 6207, + 6234 + ], + "op": "SWAP4", + "path": "67", + "statement": 80 + }, + "4250": { + "op": "POP" + }, + "4251": { + "op": "POP" + }, + "4252": { + "op": "POP" + }, + "4253": { + "op": "POP" + }, + "4254": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4547, + 6241 + ], + "op": "SWAP4", + "path": "67" + }, + "4255": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4547, + 6241 + ], + "op": "SWAP3", + "path": "67" + }, + "4256": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4547, + 6241 + ], + "op": "POP", + "path": "67" + }, + "4257": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4547, + 6241 + ], + "op": "POP", + "path": "67" + }, + "4258": { + "fn": "BalanceHandler.depositUnderlyingToken", + "offset": [ + 4547, + 6241 + ], + "op": "POP", + "path": "67" + }, + "4259": { + "fn": "BalanceHandler.depositUnderlyingToken", + "jump": "o", + "offset": [ + 4547, + 6241 + ], + "op": "JUMP", + "path": "67" + }, + "4260": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 995, + 1127 + ], + "op": "JUMPDEST", + "path": "69" + }, + "4261": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1061, + 1073 + ], + "op": "PUSH2", + "path": "69", + "value": "0x10AC" + }, + "4264": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1061, + 1073 + ], + "op": "PUSH2", + "path": "69", + "value": "0x4022" + }, + "4267": { + "fn": "TokenHandler.getAssetToken", + "jump": "i", + "offset": [ + 1061, + 1073 + ], + "op": "JUMP", + "path": "69" + }, + "4268": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1061, + 1073 + ], + "op": "JUMPDEST", + "path": "69" + }, + "4269": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1092, + 1120 + ], + "op": "PUSH2", + "path": "69", + "statement": 81, + "value": "0xBDF" + }, + "4272": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1102, + 1112 + ], + "op": "DUP3", + "path": "69" + }, + "4273": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1114, + 1119 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "4275": { + "fn": "TokenHandler.getAssetToken", + "offset": [ + 1092, + 1101 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1B6F" + }, + "4278": { + "fn": "TokenHandler.getAssetToken", + "jump": "i", + "offset": [ + 1092, + 1120 + ], + "op": "JUMP", + "path": "69" + }, + "4279": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4280": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2042, + 2068 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4282": { + "branch": 453, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2084, + 2108 + ], + "op": "DUP3", + "path": "67" + }, + "4283": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2080, + 2118 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10C6" + }, + "4286": { + "branch": 453, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2080, + 2118 + ], + "op": "JUMPI", + "path": "67" + }, + "4287": { + "op": "POP" + }, + "4288": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2117, + 2118 + ], + "op": "PUSH1", + "path": "67", + "statement": 82, + "value": "0x0" + }, + "4290": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2110, + 2118 + ], + "op": "PUSH2", + "path": "67", + "value": "0xF7F" + }, + "4293": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2110, + 2118 + ], + "op": "JUMP", + "path": "67" + }, + "4294": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2080, + 2118 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4295": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2158, + 2159 + ], + "op": "PUSH1", + "path": "67", + "statement": 83, + "value": "0x0" + }, + "4297": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2136, + 2155 + ], + "op": "DUP4", + "path": "67" + }, + "4298": { + "branch": 454, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2136, + 2159 + ], + "op": "SGT", + "path": "67" + }, + "4299": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2128, + 2160 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10D3" + }, + "4302": { + "branch": 454, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2128, + 2160 + ], + "op": "JUMPI", + "path": "67" + }, + "4303": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2128, + 2160 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4305": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2128, + 2160 + ], + "op": "DUP1", + "path": "67" + }, + "4306": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2128, + 2160 + ], + "op": "REVERT", + "path": "67" + }, + "4307": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2128, + 2160 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4308": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2214, + 2232 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4310": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2235, + 2286 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10E6" + }, + "4313": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2262, + 2274 + ], + "op": "DUP7", + "path": "67" + }, + "4314": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2262, + 2285 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4316": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2262, + 2285 + ], + "op": "ADD", + "path": "67" + }, + "4317": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2262, + 2285 + ], + "op": "MLOAD", + "path": "67" + }, + "4318": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2235, + 2286 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4321": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2235, + 2286 + ], + "op": "AND", + "path": "67" + }, + "4322": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2235, + 2261 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10A4" + }, + "4325": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 2235, + 2286 + ], + "op": "JUMP", + "path": "67" + }, + "4326": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2235, + 2286 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4327": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2214, + 2286 + ], + "op": "SWAP1", + "path": "67" + }, + "4328": { + "op": "POP" + }, + "4329": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2319, + 2335 + ], + "op": "PUSH1", + "path": "67", + "value": "0x5" + }, + "4331": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2305 + ], + "op": "DUP2", + "path": "67" + }, + "4332": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2315 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "4334": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2315 + ], + "op": "ADD", + "path": "67" + }, + "4335": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2315 + ], + "op": "MLOAD", + "path": "67" + }, + "4336": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "PUSH1", + "path": "67", + "value": "0x5" + }, + "4338": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "DUP2", + "path": "67" + }, + "4339": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "GT", + "path": "67" + }, + "4340": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "ISZERO", + "path": "67" + }, + "4341": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10FA" + }, + "4344": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "JUMPI", + "path": "67" + }, + "4345": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "INVALID", + "path": "67" + }, + "4346": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4347": { + "branch": 455, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2300, + 2335 + ], + "op": "EQ", + "path": "67" + }, + "4348": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2296, + 2585 + ], + "op": "ISZERO", + "path": "67" + }, + "4349": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2296, + 2585 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1113" + }, + "4352": { + "branch": 455, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2296, + 2585 + ], + "op": "JUMPI", + "path": "67" + }, + "4353": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2500, + 2523 + ], + "op": "DUP6", + "path": "67", + "statement": 84 + }, + "4354": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2500, + 2523 + ], + "op": "MLOAD", + "path": "67" + }, + "4355": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2440, + 2574 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1110" + }, + "4358": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2440, + 2574 + ], + "op": "SWAP1", + "path": "67" + }, + "4359": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2440, + 2574 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4362": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2440, + 2574 + ], + "op": "AND", + "path": "67" + }, + "4363": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2541, + 2560 + ], + "op": "DUP6", + "path": "67" + }, + "4364": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2440, + 2482 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1E2A" + }, + "4367": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 2440, + 2574 + ], + "op": "JUMP", + "path": "67" + }, + "4368": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2440, + 2574 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4369": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2418, + 2574 + ], + "op": "SWAP4", + "path": "67" + }, + "4370": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2418, + 2574 + ], + "op": "POP", + "path": "67" + }, + "4371": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2296, + 2585 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4372": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2688 + ], + "op": "DUP1", + "path": "67" + }, + "4373": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2703 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "4375": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2703 + ], + "op": "ADD", + "path": "67" + }, + "4376": { + "branch": 456, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2703 + ], + "op": "MLOAD", + "path": "67" + }, + "4377": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2720 + ], + "op": "DUP1", + "path": "67" + }, + "4378": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2720 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1120" + }, + "4381": { + "branch": 456, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2720 + ], + "op": "JUMPI", + "path": "67" + }, + "4382": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2720 + ], + "op": "POP", + "path": "67" + }, + "4383": { + "branch": 457, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2707, + 2720 + ], + "op": "DUP3", + "path": "67" + }, + "4384": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2683, + 2720 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4385": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2679, + 4302 + ], + "op": "ISZERO", + "path": "67" + }, + "4386": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2679, + 4302 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1167" + }, + "4389": { + "branch": 457, + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2679, + 4302 + ], + "op": "JUMPI", + "path": "67" + }, + "4390": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3080, + 3103 + ], + "op": "DUP6", + "path": "67" + }, + "4391": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3080, + 3103 + ], + "op": "MLOAD", + "path": "67" + }, + "4392": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3013, + 3053 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4394": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3013, + 3053 + ], + "op": "SWAP1", + "path": "67" + }, + "4395": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3125 + ], + "op": "PUSH2", + "path": "67", + "value": "0x113C" + }, + "4398": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3125 + ], + "op": "SWAP1", + "path": "67" + }, + "4399": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3061 + ], + "op": "DUP4", + "path": "67" + }, + "4400": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3061 + ], + "op": "SWAP1", + "path": "67" + }, + "4401": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3071, + 3078 + ], + "op": "DUP9", + "path": "67" + }, + "4402": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3071, + 3078 + ], + "op": "SWAP1", + "path": "67" + }, + "4403": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3125 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4406": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3125 + ], + "op": "AND", + "path": "67" + }, + "4407": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3105, + 3124 + ], + "op": "DUP9", + "path": "67" + }, + "4408": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3070 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1C4E" + }, + "4411": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 3056, + 3125 + ], + "op": "JUMP", + "path": "67" + }, + "4412": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3056, + 3125 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4413": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3013, + 3125 + ], + "op": "SWAP1", + "path": "67" + }, + "4414": { + "op": "POP" + }, + "4415": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3361, + 3419 + ], + "op": "PUSH2", + "path": "67", + "statement": 85, + "value": "0x1148" + }, + "4418": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3361, + 3366 + ], + "op": "DUP3", + "path": "67" + }, + "4419": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3013, + 3125 + ], + "op": "DUP3", + "path": "67" + }, + "4420": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3361, + 3384 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1DFA" + }, + "4423": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 3361, + 3419 + ], + "op": "JUMP", + "path": "67" + }, + "4424": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3361, + 3419 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4425": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3528 + ], + "op": "PUSH1", + "path": "67", + "statement": 86, + "value": "0x60" + }, + "4427": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3528 + ], + "op": "DUP9", + "path": "67" + }, + "4428": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3528 + ], + "op": "ADD", + "path": "67" + }, + "4429": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3528 + ], + "op": "MLOAD", + "path": "67" + }, + "4430": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3339, + 3419 + ], + "op": "SWAP1", + "path": "67" + }, + "4431": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3339, + 3419 + ], + "op": "SWAP4", + "path": "67" + }, + "4432": { + "op": "POP" + }, + "4433": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3553 + ], + "op": "PUSH2", + "path": "67", + "value": "0x115A" + }, + "4436": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3553 + ], + "op": "SWAP1", + "path": "67" + }, + "4437": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3339, + 3419 + ], + "op": "DUP5", + "path": "67" + }, + "4438": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3532 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4441": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 3502, + 3553 + ], + "op": "JUMP", + "path": "67" + }, + "4442": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3502, + 3553 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4443": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3473, + 3499 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "4445": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3473, + 3499 + ], + "op": "DUP9", + "path": "67" + }, + "4446": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3473, + 3499 + ], + "op": "ADD", + "path": "67" + }, + "4447": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3473, + 3553 + ], + "op": "MSTORE", + "path": "67" + }, + "4448": { + "op": "POP" + }, + "4449": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3568, + 3594 + ], + "op": "PUSH2", + "path": "67", + "statement": 87, + "value": "0xF7F" + }, + "4452": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3568, + 3594 + ], + "op": "SWAP1", + "path": "67" + }, + "4453": { + "op": "POP" + }, + "4454": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3568, + 3594 + ], + "op": "JUMP", + "path": "67" + }, + "4455": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 2679, + 4302 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4456": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3647, + 3691 + ], + "op": "PUSH2", + "path": "67", + "statement": 88, + "value": "0x1171" + }, + "4459": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3647, + 3652 + ], + "op": "DUP2", + "path": "67" + }, + "4460": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3671, + 3690 + ], + "op": "DUP6", + "path": "67" + }, + "4461": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3647, + 3670 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1DFA" + }, + "4464": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 3647, + 3691 + ], + "op": "JUMP", + "path": "67" + }, + "4465": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3647, + 3691 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4466": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4128 + ], + "op": "PUSH1", + "path": "67", + "statement": 89, + "value": "0x80" + }, + "4468": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4128 + ], + "op": "DUP8", + "path": "67" + }, + "4469": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4128 + ], + "op": "ADD", + "path": "67" + }, + "4470": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4128 + ], + "op": "MLOAD", + "path": "67" + }, + "4471": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3625, + 3691 + ], + "op": "SWAP1", + "path": "67" + }, + "4472": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3625, + 3691 + ], + "op": "SWAP3", + "path": "67" + }, + "4473": { + "op": "POP" + }, + "4474": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4170 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1183" + }, + "4477": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4170 + ], + "op": "SWAP1", + "path": "67" + }, + "4478": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 3625, + 3691 + ], + "op": "DUP4", + "path": "67" + }, + "4479": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4149 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4482": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "i", + "offset": [ + 4065, + 4170 + ], + "op": "JUMP", + "path": "67" + }, + "4483": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4065, + 4170 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4484": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4016, + 4062 + ], + "op": "PUSH1", + "path": "67", + "value": "0x80" + }, + "4486": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4016, + 4062 + ], + "op": "DUP8", + "path": "67" + }, + "4487": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4016, + 4062 + ], + "op": "ADD", + "path": "67" + }, + "4488": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 4016, + 4170 + ], + "op": "MSTORE", + "path": "67" + }, + "4489": { + "op": "POP" + }, + "4490": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "SWAP5", + "path": "67" + }, + "4491": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "SWAP4", + "path": "67" + }, + "4492": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "POP", + "path": "67" + }, + "4493": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "POP", + "path": "67" + }, + "4494": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "POP", + "path": "67" + }, + "4495": { + "fn": "BalanceHandler.depositAssetToken", + "offset": [ + 1860, + 4308 + ], + "op": "POP", + "path": "67" + }, + "4496": { + "fn": "BalanceHandler.depositAssetToken", + "jump": "o", + "offset": [ + 1860, + 4308 + ], + "op": "JUMP", + "path": "67" + }, + "4497": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4498": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6698, + 6727 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4500": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6739, + 6754 + ], + "op": "DUP1", + "path": "67" + }, + "4501": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6801, + 6802 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4503": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6768, + 6780 + ], + "op": "DUP7", + "path": "67" + }, + "4504": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6768, + 6798 + ], + "op": "PUSH1", + "path": "67", + "value": "0xA0" + }, + "4506": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6768, + 6798 + ], + "op": "ADD", + "path": "67" + }, + "4507": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6768, + 6798 + ], + "op": "MLOAD", + "path": "67" + }, + "4508": { + "branch": 458, + "fn": "BalanceHandler.finalize", + "offset": [ + 6768, + 6802 + ], + "op": "SLT", + "path": "67" + }, + "4509": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6764, + 7053 + ], + "op": "ISZERO", + "path": "67" + }, + "4510": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6764, + 7053 + ], + "op": "PUSH2", + "path": "67", + "value": "0x11EA" + }, + "4513": { + "branch": 458, + "fn": "BalanceHandler.finalize", + "offset": [ + 6764, + 7053 + ], + "op": "JUMPI", + "path": "67" + }, + "4514": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6997, + 6998 + ], + "op": "PUSH1", + "path": "67", + "statement": 90, + "value": "0x0" + }, + "4516": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6993 + ], + "op": "PUSH2", + "path": "67", + "value": "0x11CC" + }, + "4519": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6962, + 6974 + ], + "op": "DUP8", + "path": "67" + }, + "4520": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6962, + 6992 + ], + "op": "PUSH1", + "path": "67", + "value": "0xA0" + }, + "4522": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6962, + 6992 + ], + "op": "ADD", + "path": "67" + }, + "4523": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6962, + 6992 + ], + "op": "MLOAD", + "path": "67" + }, + "4524": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6936 + ], + "op": "PUSH2", + "path": "67", + "value": "0x11C6" + }, + "4527": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6901, + 6913 + ], + "op": "DUP10", + "path": "67" + }, + "4528": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6901, + 6935 + ], + "op": "PUSH1", + "path": "67", + "value": "0xC0" + }, + "4530": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6901, + 6935 + ], + "op": "ADD", + "path": "67" + }, + "4531": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6901, + 6935 + ], + "op": "MLOAD", + "path": "67" + }, + "4532": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6855 + ], + "op": "DUP11", + "path": "67" + }, + "4533": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6875 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4535": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6875 + ], + "op": "ADD", + "path": "67" + }, + "4536": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6875 + ], + "op": "MLOAD", + "path": "67" + }, + "4537": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6900 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4540": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6900 + ], + "op": "SWAP1", + "path": "67" + }, + "4541": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6936 + ], + "op": "SWAP2", + "path": "67" + }, + "4542": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6936 + ], + "op": "SWAP1", + "path": "67" + }, + "4543": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6936 + ], + "op": "PUSH4", + "path": "67", + "value": "0xFFFFFFFF" + }, + "4548": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6936 + ], + "op": "AND", + "path": "67" + }, + "4549": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 6843, + 6936 + ], + "op": "JUMP", + "path": "67" + }, + "4550": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6936 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4551": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6961 + ], + "op": "SWAP1", + "path": "67" + }, + "4552": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6961 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4555": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 6843, + 6993 + ], + "op": "JUMP", + "path": "67" + }, + "4556": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6993 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4557": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6998 + ], + "op": "SLT", + "path": "67" + }, + "4558": { + "branch": 459, + "fn": "BalanceHandler.finalize", + "offset": [ + 6843, + 6998 + ], + "op": "ISZERO", + "path": "67" + }, + "4559": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "PUSH2", + "path": "67", + "value": "0x11EA" + }, + "4562": { + "branch": 459, + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "JUMPI", + "path": "67" + }, + "4563": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4565": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "MLOAD", + "path": "67" + }, + "4566": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "4570": { + "op": "PUSH1", + "value": "0xE5" + }, + "4572": { + "op": "SHL" + }, + "4573": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "DUP2", + "path": "67" + }, + "4574": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "MSTORE", + "path": "67" + }, + "4575": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "PUSH1", + "path": "67", + "value": "0x4" + }, + "4577": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "ADD", + "path": "67" + }, + "4578": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "PUSH2", + "path": "67", + "value": "0x17A" + }, + "4581": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "SWAP1", + "path": "67" + }, + "4582": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "PUSH2", + "path": "67", + "value": "0x4A46" + }, + "4585": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 6818, + 7042 + ], + "op": "JUMP", + "path": "67" + }, + "4586": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6818, + 7042 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4587": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7116, + 7117 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4589": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7067, + 7079 + ], + "op": "DUP7", + "path": "67" + }, + "4590": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7067, + 7113 + ], + "op": "PUSH1", + "path": "67", + "value": "0x80" + }, + "4592": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7067, + 7113 + ], + "op": "ADD", + "path": "67" + }, + "4593": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7067, + 7113 + ], + "op": "MLOAD", + "path": "67" + }, + "4594": { + "branch": 460, + "fn": "BalanceHandler.finalize", + "offset": [ + 7067, + 7117 + ], + "op": "SLT", + "path": "67" + }, + "4595": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7063, + 7372 + ], + "op": "ISZERO", + "path": "67" + }, + "4596": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7063, + 7372 + ], + "op": "PUSH2", + "path": "67", + "value": "0x123A" + }, + "4599": { + "branch": 460, + "fn": "BalanceHandler.finalize", + "offset": [ + 7063, + 7372 + ], + "op": "JUMPI", + "path": "67" + }, + "4600": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7318, + 7319 + ], + "op": "PUSH1", + "path": "67", + "statement": 91, + "value": "0x0" + }, + "4602": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7314 + ], + "op": "PUSH2", + "path": "67", + "value": "0x121C" + }, + "4605": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7267, + 7279 + ], + "op": "DUP8", + "path": "67" + }, + "4606": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7267, + 7313 + ], + "op": "PUSH1", + "path": "67", + "value": "0x80" + }, + "4608": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7267, + 7313 + ], + "op": "ADD", + "path": "67" + }, + "4609": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7267, + 7313 + ], + "op": "MLOAD", + "path": "67" + }, + "4610": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7241 + ], + "op": "PUSH2", + "path": "67", + "value": "0x11C6" + }, + "4613": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7214, + 7226 + ], + "op": "DUP10", + "path": "67" + }, + "4614": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7214, + 7240 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "4616": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7214, + 7240 + ], + "op": "ADD", + "path": "67" + }, + "4617": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7214, + 7240 + ], + "op": "MLOAD", + "path": "67" + }, + "4618": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7170 + ], + "op": "DUP11", + "path": "67" + }, + "4619": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7188 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "4621": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7188 + ], + "op": "ADD", + "path": "67" + }, + "4622": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7188 + ], + "op": "MLOAD", + "path": "67" + }, + "4623": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7213 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4626": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7213 + ], + "op": "SWAP1", + "path": "67" + }, + "4627": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7241 + ], + "op": "SWAP2", + "path": "67" + }, + "4628": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7241 + ], + "op": "SWAP1", + "path": "67" + }, + "4629": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7241 + ], + "op": "PUSH4", + "path": "67", + "value": "0xFFFFFFFF" + }, + "4634": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7241 + ], + "op": "AND", + "path": "67" + }, + "4635": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 7158, + 7241 + ], + "op": "JUMP", + "path": "67" + }, + "4636": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7314 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4637": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7319 + ], + "op": "SLT", + "path": "67" + }, + "4638": { + "branch": 461, + "fn": "BalanceHandler.finalize", + "offset": [ + 7158, + 7319 + ], + "op": "ISZERO", + "path": "67" + }, + "4639": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "PUSH2", + "path": "67", + "value": "0x123A" + }, + "4642": { + "branch": 461, + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "JUMPI", + "path": "67" + }, + "4643": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4645": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "MLOAD", + "path": "67" + }, + "4646": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "4650": { + "op": "PUSH1", + "value": "0xE5" + }, + "4652": { + "op": "SHL" + }, + "4653": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "DUP2", + "path": "67" + }, + "4654": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "MSTORE", + "path": "67" + }, + "4655": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "PUSH1", + "path": "67", + "value": "0x4" + }, + "4657": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "ADD", + "path": "67" + }, + "4658": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "PUSH2", + "path": "67", + "value": "0x17A" + }, + "4661": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "SWAP1", + "path": "67" + }, + "4662": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "PUSH2", + "path": "67", + "value": "0x49ED" + }, + "4665": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 7133, + 7361 + ], + "op": "JUMP", + "path": "67" + }, + "4666": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7133, + 7361 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4667": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7693, + 7754 + ], + "op": "PUSH2", + "path": "67", + "statement": 92, + "value": "0x1245" + }, + "4670": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7712, + 7724 + ], + "op": "DUP7", + "path": "67" + }, + "4671": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7726, + 7733 + ], + "op": "DUP7", + "path": "67" + }, + "4672": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7735, + 7753 + ], + "op": "DUP6", + "path": "67" + }, + "4673": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7693, + 7711 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1EB1" + }, + "4676": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 7693, + 7754 + ], + "op": "JUMP", + "path": "67" + }, + "4677": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7693, + 7754 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4678": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7634, + 7680 + ], + "op": "PUSH1", + "path": "67", + "value": "0x80" + }, + "4680": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7634, + 7680 + ], + "op": "DUP9", + "path": "67" + }, + "4681": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7634, + 7680 + ], + "op": "ADD", + "path": "67" + }, + "4682": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7584, + 7754 + ], + "op": "DUP2", + "path": "67" + }, + "4683": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7584, + 7754 + ], + "op": "SWAP1", + "path": "67" + }, + "4684": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7584, + 7754 + ], + "op": "MSTORE", + "path": "67" + }, + "4685": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7868 + ], + "op": "PUSH1", + "path": "67", + "value": "0x60" + }, + "4687": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7868 + ], + "op": "DUP9", + "path": "67" + }, + "4688": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7868 + ], + "op": "ADD", + "path": "67" + }, + "4689": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7868 + ], + "op": "MLOAD", + "path": "67" + }, + "4690": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7584, + 7754 + ], + "op": "SWAP2", + "path": "67" + }, + "4691": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7584, + 7754 + ], + "op": "SWAP4", + "path": "67" + }, + "4692": { + "op": "POP" + }, + "4693": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7817, + 7839 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4695": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7817, + 7839 + ], + "op": "SWAP2", + "path": "67" + }, + "4696": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7920 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1260" + }, + "4699": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7920 + ], + "op": "SWAP2", + "path": "67" + }, + "4700": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7872 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4703": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 7842, + 7920 + ], + "op": "JUMP", + "path": "67" + }, + "4704": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7842, + 7920 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4705": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7817, + 7920 + ], + "op": "SWAP1", + "path": "67" + }, + "4706": { + "op": "POP" + }, + "4707": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7935, + 7955 + ], + "op": "DUP1", + "path": "67" + }, + "4708": { + "branch": 462, + "fn": "BalanceHandler.finalize", + "offset": [ + 7935, + 7955 + ], + "op": "ISZERO", + "path": "67" + }, + "4709": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7931, + 8255 + ], + "op": "PUSH2", + "path": "67", + "value": "0x12CD" + }, + "4712": { + "branch": 462, + "fn": "BalanceHandler.finalize", + "offset": [ + 7931, + 8255 + ], + "op": "JUMPI", + "path": "67" + }, + "4713": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8034 + ], + "op": "PUSH1", + "path": "67", + "statement": 93, + "value": "0x20" + }, + "4715": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8034 + ], + "op": "DUP8", + "path": "67" + }, + "4716": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8034 + ], + "op": "ADD", + "path": "67" + }, + "4717": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8034 + ], + "op": "MLOAD", + "path": "67" + }, + "4718": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8055 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1277" + }, + "4721": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8055 + ], + "op": "SWAP1", + "path": "67" + }, + "4722": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8039, + 8054 + ], + "op": "DUP3", + "path": "67" + }, + "4723": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8038 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4726": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 8004, + 8055 + ], + "op": "JUMP", + "path": "67" + }, + "4727": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8004, + 8055 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4728": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7971, + 8001 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "4730": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7971, + 8001 + ], + "op": "DUP9", + "path": "67" + }, + "4731": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7971, + 8001 + ], + "op": "ADD", + "path": "67" + }, + "4732": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7971, + 8055 + ], + "op": "MSTORE", + "path": "67" + }, + "4733": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8173, + 8196 + ], + "op": "DUP7", + "path": "67", + "statement": 94 + }, + "4734": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8173, + 8196 + ], + "op": "MLOAD", + "path": "67" + }, + "4735": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4737": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "MLOAD", + "path": "67" + }, + "4738": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8082, + 8086 + ], + "op": "PUSH1", + "path": "67", + "statement": 95, + "value": "0x1" + }, + "4740": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8082, + 8086 + ], + "op": "SWAP4", + "path": "67" + }, + "4741": { + "op": "POP" + }, + "4742": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4745": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP1", + "path": "67" + }, + "4746": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP2", + "path": "67" + }, + "4747": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "AND", + "path": "67" + }, + "4748": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP1", + "path": "67" + }, + "4749": { + "op": "PUSH1", + "value": "0x1" + }, + "4751": { + "op": "PUSH1", + "value": "0x1" + }, + "4753": { + "op": "PUSH1", + "value": "0xA0" + }, + "4755": { + "op": "SHL" + }, + "4756": { + "op": "SUB" + }, + "4757": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "DUP9", + "path": "67" + }, + "4758": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "AND", + "path": "67" + }, + "4759": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP1", + "path": "67" + }, + "4760": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "PUSH32", + "path": "67", + "value": "0x5441E4A5FAC93A951D782E6F1CDB82E95C8FC58561A013953D17E395C5E69B4B" + }, + "4793": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP1", + "path": "67" + }, + "4794": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "PUSH2", + "path": "67", + "value": "0x12C4" + }, + "4797": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP1", + "path": "67" + }, + "4798": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8215, + 8230 + ], + "op": "DUP6", + "path": "67" + }, + "4799": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8215, + 8230 + ], + "op": "SWAP1", + "path": "67" + }, + "4800": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "PUSH2", + "path": "67", + "value": "0x48AB" + }, + "4803": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 8106, + 8244 + ], + "op": "JUMP", + "path": "67" + }, + "4804": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4805": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4807": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "MLOAD", + "path": "67" + }, + "4808": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "DUP1", + "path": "67" + }, + "4809": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP2", + "path": "67" + }, + "4810": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SUB", + "path": "67" + }, + "4811": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "SWAP1", + "path": "67" + }, + "4812": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8106, + 8244 + ], + "op": "LOG3", + "path": "67" + }, + "4813": { + "fn": "BalanceHandler.finalize", + "offset": [ + 7931, + 8255 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4814": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8299 + ], + "op": "PUSH1", + "path": "67", + "value": "0xA0" + }, + "4816": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8299 + ], + "op": "DUP8", + "path": "67" + }, + "4817": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8299 + ], + "op": "ADD", + "path": "67" + }, + "4818": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8299 + ], + "op": "MLOAD", + "path": "67" + }, + "4819": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8304 + ], + "op": "ISZERO", + "path": "67" + }, + "4820": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8304 + ], + "op": "ISZERO", + "path": "67" + }, + "4821": { + "branch": 463, + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8304 + ], + "op": "DUP1", + "path": "67" + }, + "4822": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8347 + ], + "op": "PUSH2", + "path": "67", + "value": "0x12E2" + }, + "4825": { + "branch": 463, + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8347 + ], + "op": "JUMPI", + "path": "67" + }, + "4826": { + "op": "POP" + }, + "4827": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8308, + 8342 + ], + "op": "PUSH1", + "path": "67", + "value": "0xC0" + }, + "4829": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8308, + 8342 + ], + "op": "DUP8", + "path": "67" + }, + "4830": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8308, + 8342 + ], + "op": "ADD", + "path": "67" + }, + "4831": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8308, + 8342 + ], + "op": "MLOAD", + "path": "67" + }, + "4832": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8308, + 8347 + ], + "op": "ISZERO", + "path": "67" + }, + "4833": { + "branch": 464, + "fn": "BalanceHandler.finalize", + "offset": [ + 8308, + 8347 + ], + "op": "ISZERO", + "path": "67" + }, + "4834": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8269, + 8347 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4835": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8265, + 9185 + ], + "op": "ISZERO", + "path": "67" + }, + "4836": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8265, + 9185 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1388" + }, + "4839": { + "branch": 464, + "fn": "BalanceHandler.finalize", + "offset": [ + 8265, + 9185 + ], + "op": "JUMPI", + "path": "67" + }, + "4840": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8447, + 8472 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4842": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8617 + ], + "op": "PUSH2", + "path": "67", + "value": "0x130C" + }, + "4845": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8582, + 8594 + ], + "op": "DUP9", + "path": "67" + }, + "4846": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8582, + 8616 + ], + "op": "PUSH1", + "path": "67", + "value": "0xC0" + }, + "4848": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8582, + 8616 + ], + "op": "ADD", + "path": "67" + }, + "4849": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8582, + 8616 + ], + "op": "MLOAD", + "path": "67" + }, + "4850": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8560 + ], + "op": "PUSH2", + "path": "67", + "value": "0x11C6" + }, + "4853": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8529, + 8541 + ], + "op": "DUP11", + "path": "67" + }, + "4854": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8529, + 8559 + ], + "op": "PUSH1", + "path": "67", + "value": "0xA0" + }, + "4856": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8529, + 8559 + ], + "op": "ADD", + "path": "67" + }, + "4857": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8529, + 8559 + ], + "op": "MLOAD", + "path": "67" + }, + "4858": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8487 + ], + "op": "DUP12", + "path": "67" + }, + "4859": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8507 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4861": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8507 + ], + "op": "ADD", + "path": "67" + }, + "4862": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8507 + ], + "op": "MLOAD", + "path": "67" + }, + "4863": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8528 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEC5" + }, + "4866": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8528 + ], + "op": "SWAP1", + "path": "67" + }, + "4867": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8560 + ], + "op": "SWAP2", + "path": "67" + }, + "4868": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8560 + ], + "op": "SWAP1", + "path": "67" + }, + "4869": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8560 + ], + "op": "PUSH4", + "path": "67", + "value": "0xFFFFFFFF" + }, + "4874": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8560 + ], + "op": "AND", + "path": "67" + }, + "4875": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 8475, + 8560 + ], + "op": "JUMP", + "path": "67" + }, + "4876": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8475, + 8617 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4877": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8447, + 8617 + ], + "op": "SWAP1", + "path": "67" + }, + "4878": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8447, + 8617 + ], + "op": "POP", + "path": "67" + }, + "4879": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8725, + 8803 + ], + "op": "PUSH2", + "path": "67", + "statement": 96, + "value": "0x1321" + }, + "4882": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8752, + 8764 + ], + "op": "DUP9", + "path": "67" + }, + "4883": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8766, + 8773 + ], + "op": "DUP9", + "path": "67" + }, + "4884": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8775, + 8802 + ], + "op": "PUSH2", + "path": "67", + "value": "0x131C" + }, + "4887": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8775, + 8793 + ], + "op": "DUP5", + "path": "67" + }, + "4888": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8775, + 8800 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1CF6" + }, + "4891": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 8775, + 8802 + ], + "op": "JUMP", + "path": "67" + }, + "4892": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8775, + 8802 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4893": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8725, + 8751 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F67" + }, + "4896": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 8725, + 8803 + ], + "op": "JUMP", + "path": "67" + }, + "4897": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8725, + 8803 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4898": { + "op": "POP" + }, + "4899": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8818, + 8850 + ], + "op": "PUSH1", + "path": "67", + "statement": 97, + "value": "0x40" + }, + "4901": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8818, + 8850 + ], + "op": "DUP9", + "path": "67" + }, + "4902": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8818, + 8850 + ], + "op": "ADD", + "path": "67" + }, + "4903": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8818, + 8871 + ], + "op": "DUP2", + "path": "67" + }, + "4904": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8818, + 8871 + ], + "op": "SWAP1", + "path": "67" + }, + "4905": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8818, + 8871 + ], + "op": "MSTORE", + "path": "67" + }, + "4906": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8890, + 8924 + ], + "op": "PUSH1", + "path": "67", + "value": "0xC0" + }, + "4908": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8890, + 8924 + ], + "op": "DUP9", + "path": "67" + }, + "4909": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8890, + 8924 + ], + "op": "ADD", + "path": "67" + }, + "4910": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8890, + 8924 + ], + "op": "MLOAD", + "path": "67" + }, + "4911": { + "branch": 465, + "fn": "BalanceHandler.finalize", + "offset": [ + 8890, + 8929 + ], + "op": "ISZERO", + "path": "67" + }, + "4912": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8886, + 9143 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1382" + }, + "4915": { + "branch": 465, + "fn": "BalanceHandler.finalize", + "offset": [ + 8886, + 9143 + ], + "op": "JUMPI", + "path": "67" + }, + "4916": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9030, + 9042 + ], + "op": "DUP8", + "path": "67", + "statement": 98 + }, + "4917": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9030, + 9053 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "4919": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9030, + 9053 + ], + "op": "ADD", + "path": "67" + }, + "4920": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9030, + 9053 + ], + "op": "MLOAD", + "path": "67" + }, + "4921": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "4924": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "AND", + "path": "67" + }, + "4925": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8994, + 9001 + ], + "op": "DUP8", + "path": "67" + }, + "4926": { + "op": "PUSH1", + "value": "0x1" + }, + "4928": { + "op": "PUSH1", + "value": "0x1" + }, + "4930": { + "op": "PUSH1", + "value": "0xA0" + }, + "4932": { + "op": "SHL" + }, + "4933": { + "op": "SUB" + }, + "4934": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "AND", + "path": "67" + }, + "4935": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "PUSH32", + "path": "67", + "value": "0x412BC13D202A2EA5119E55FEC9C5E420DDDB18FAF186373AD9795AD4F4545AA9" + }, + "4968": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9076, + 9088 + ], + "op": "DUP11", + "path": "67" + }, + "4969": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9076, + 9110 + ], + "op": "PUSH1", + "path": "67", + "value": "0xC0" + }, + "4971": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9076, + 9110 + ], + "op": "ADD", + "path": "67" + }, + "4972": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9076, + 9110 + ], + "op": "MLOAD", + "path": "67" + }, + "4973": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4975": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "MLOAD", + "path": "67" + }, + "4976": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1379" + }, + "4979": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "SWAP2", + "path": "67" + }, + "4980": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "SWAP1", + "path": "67" + }, + "4981": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "PUSH2", + "path": "67", + "value": "0x48AB" + }, + "4984": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 8954, + 9128 + ], + "op": "JUMP", + "path": "67" + }, + "4985": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4986": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "4988": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "MLOAD", + "path": "67" + }, + "4989": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "DUP1", + "path": "67" + }, + "4990": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "SWAP2", + "path": "67" + }, + "4991": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "SUB", + "path": "67" + }, + "4992": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "SWAP1", + "path": "67" + }, + "4993": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8954, + 9128 + ], + "op": "LOG3", + "path": "67" + }, + "4994": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8886, + 9143 + ], + "op": "JUMPDEST", + "path": "67" + }, + "4995": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9170, + 9174 + ], + "op": "PUSH1", + "path": "67", + "statement": 99, + "value": "0x1" + }, + "4997": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9157, + 9174 + ], + "op": "SWAP3", + "path": "67" + }, + "4998": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9157, + 9174 + ], + "op": "POP", + "path": "67" + }, + "4999": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8265, + 9185 + ], + "op": "POP", + "path": "67" + }, + "5000": { + "fn": "BalanceHandler.finalize", + "offset": [ + 8265, + 9185 + ], + "op": "JUMPDEST", + "path": "67" + }, + "5001": { + "branch": 466, + "fn": "BalanceHandler.finalize", + "offset": [ + 9199, + 9209 + ], + "op": "DUP2", + "path": "67" + }, + "5002": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9195, + 9527 + ], + "op": "ISZERO", + "path": "67" + }, + "5003": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9195, + 9527 + ], + "op": "PUSH2", + "path": "67", + "value": "0x13B5" + }, + "5006": { + "branch": 466, + "fn": "BalanceHandler.finalize", + "offset": [ + 9195, + 9527 + ], + "op": "JUMPI", + "path": "67" + }, + "5007": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9225, + 9516 + ], + "op": "PUSH2", + "path": "67", + "statement": 100, + "value": "0x13B5" + }, + "5010": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9261, + 9268 + ], + "op": "DUP7", + "path": "67" + }, + "5011": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9286, + 9298 + ], + "op": "DUP9", + "path": "67" + }, + "5012": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9286, + 9309 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "5014": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9286, + 9309 + ], + "op": "ADD", + "path": "67" + }, + "5015": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9286, + 9309 + ], + "op": "MLOAD", + "path": "67" + }, + "5016": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9225, + 9516 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "5019": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9225, + 9516 + ], + "op": "AND", + "path": "67" + }, + "5020": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9327, + 9339 + ], + "op": "DUP10", + "path": "67" + }, + "5021": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9327, + 9357 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "5023": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9327, + 9357 + ], + "op": "ADD", + "path": "67" + }, + "5024": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9327, + 9357 + ], + "op": "MLOAD", + "path": "67" + }, + "5025": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9375, + 9387 + ], + "op": "DUP11", + "path": "67" + }, + "5026": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9375, + 9407 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "5028": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9375, + 9407 + ], + "op": "ADD", + "path": "67" + }, + "5029": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9375, + 9407 + ], + "op": "MLOAD", + "path": "67" + }, + "5030": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9425, + 9437 + ], + "op": "DUP12", + "path": "67" + }, + "5031": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9425, + 9451 + ], + "op": "PUSH1", + "path": "67", + "value": "0xE0" + }, + "5033": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9425, + 9451 + ], + "op": "ADD", + "path": "67" + }, + "5034": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9425, + 9451 + ], + "op": "MLOAD", + "path": "67" + }, + "5035": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9469, + 9481 + ], + "op": "DUP13", + "path": "67" + }, + "5036": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9469, + 9502 + ], + "op": "PUSH2", + "path": "67", + "value": "0x100" + }, + "5039": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9469, + 9502 + ], + "op": "ADD", + "path": "67" + }, + "5040": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9469, + 9502 + ], + "op": "MLOAD", + "path": "67" + }, + "5041": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9225, + 9243 + ], + "op": "PUSH2", + "path": "67", + "value": "0x204E" + }, + "5044": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 9225, + 9516 + ], + "op": "JUMP", + "path": "67" + }, + "5045": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9225, + 9516 + ], + "op": "JUMPDEST", + "path": "67" + }, + "5046": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9583, + 9606 + ], + "op": "DUP7", + "path": "67", + "statement": 101 + }, + "5047": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9583, + 9606 + ], + "op": "MLOAD", + "path": "67" + }, + "5048": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9723 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "5050": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9723 + ], + "op": "DUP9", + "path": "67" + }, + "5051": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9723 + ], + "op": "ADD", + "path": "67" + }, + "5052": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9723 + ], + "op": "MLOAD", + "path": "67" + }, + "5053": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "PUSH2", + "path": "67", + "value": "0x13E2" + }, + "5056": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "SWAP2", + "path": "67" + }, + "5057": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "5060": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "AND", + "path": "67" + }, + "5061": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "SWAP1", + "path": "67" + }, + "5062": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9728 + ], + "op": "ISZERO", + "path": "67" + }, + "5063": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9728 + ], + "op": "ISZERO", + "path": "67" + }, + "5064": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9728 + ], + "op": "DUP1", + "path": "67" + }, + "5065": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9769 + ], + "op": "PUSH2", + "path": "67", + "value": "0x13D5" + }, + "5068": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9769 + ], + "op": "JUMPI", + "path": "67" + }, + "5069": { + "op": "POP" + }, + "5070": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9732, + 9764 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "5072": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9732, + 9764 + ], + "op": "DUP10", + "path": "67" + }, + "5073": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9732, + 9764 + ], + "op": "ADD", + "path": "67" + }, + "5074": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9732, + 9764 + ], + "op": "MLOAD", + "path": "67" + }, + "5075": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9732, + 9769 + ], + "op": "ISZERO", + "path": "67" + }, + "5076": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9732, + 9769 + ], + "op": "ISZERO", + "path": "67" + }, + "5077": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9693, + 9769 + ], + "op": "JUMPDEST", + "path": "67" + }, + "5078": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9551 + ], + "op": "DUP8", + "path": "67" + }, + "5079": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9551 + ], + "op": "SWAP2", + "path": "67" + }, + "5080": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "SWAP1", + "path": "67" + }, + "5081": { + "op": "PUSH1", + "value": "0x1" + }, + "5083": { + "op": "PUSH1", + "value": "0xFE" + }, + "5085": { + "op": "SHL" + }, + "5086": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9569 + ], + "op": "PUSH2", + "path": "67", + "value": "0x2187" + }, + "5089": { + "fn": "BalanceHandler.finalize", + "jump": "i", + "offset": [ + 9537, + 9821 + ], + "op": "JUMP", + "path": "67" + }, + "5090": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9537, + 9821 + ], + "op": "JUMPDEST", + "path": "67" + }, + "5091": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9869, + 9870 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "5093": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9836, + 9848 + ], + "op": "DUP8", + "path": "67" + }, + "5094": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9836, + 9866 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "5096": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9836, + 9866 + ], + "op": "ADD", + "path": "67" + }, + "5097": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9836, + 9866 + ], + "op": "MLOAD", + "path": "67" + }, + "5098": { + "branch": 467, + "fn": "BalanceHandler.finalize", + "offset": [ + 9836, + 9870 + ], + "op": "SLT", + "path": "67" + }, + "5099": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9832, + 10109 + ], + "op": "ISZERO", + "path": "67" + }, + "5100": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9832, + 10109 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1408" + }, + "5103": { + "branch": 467, + "fn": "BalanceHandler.finalize", + "offset": [ + 9832, + 10109 + ], + "op": "JUMPI", + "path": "67" + }, + "5104": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10050, + 10072 + ], + "op": "PUSH1", + "path": "67", + "statement": 102, + "value": "0x20" + }, + "5106": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10050, + 10072 + ], + "op": "DUP6", + "path": "67" + }, + "5107": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10050, + 10072 + ], + "op": "ADD", + "path": "67" + }, + "5108": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10050, + 10072 + ], + "op": "DUP1", + "path": "67" + }, + "5109": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10050, + 10072 + ], + "op": "MLOAD", + "path": "67" + }, + "5110": { + "op": "PUSH1", + "value": "0x1" + }, + "5112": { + "op": "PUSH1", + "value": "0xF9" + }, + "5114": { + "op": "SHL" + }, + "5115": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10050, + 10098 + ], + "op": "OR", + "path": "67" + }, + "5116": { + "op": "PUSH1", + "value": "0x1" + }, + "5118": { + "op": "PUSH1", + "value": "0x1" + }, + "5120": { + "op": "PUSH1", + "value": "0xF8" + }, + "5122": { + "op": "SHL" + }, + "5123": { + "op": "SUB" + }, + "5124": { + "op": "NOT" + }, + "5125": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10025, + 10098 + ], + "op": "AND", + "path": "67" + }, + "5126": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10025, + 10098 + ], + "op": "SWAP1", + "path": "67" + }, + "5127": { + "fn": "BalanceHandler.finalize", + "offset": [ + 10025, + 10098 + ], + "op": "MSTORE", + "path": "67" + }, + "5128": { + "fn": "BalanceHandler.finalize", + "offset": [ + 9832, + 10109 + ], + "op": "JUMPDEST", + "path": "67" + }, + "5129": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "POP", + "path": "67" + }, + "5130": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "POP", + "path": "67" + }, + "5131": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "SWAP5", + "path": "67" + }, + "5132": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "SWAP4", + "path": "67" + }, + "5133": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "POP", + "path": "67" + }, + "5134": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "POP", + "path": "67" + }, + "5135": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "POP", + "path": "67" + }, + "5136": { + "fn": "BalanceHandler.finalize", + "offset": [ + 6510, + 10115 + ], + "op": "POP", + "path": "67" + }, + "5137": { + "fn": "BalanceHandler.finalize", + "jump": "o", + "offset": [ + 6510, + 10115 + ], + "op": "JUMP", + "path": "67" + }, + "5138": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1117, + 1269 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5139": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1257 + ], + "op": "PUSH1", + "path": "66", + "statement": 103, + "value": "0x60" + }, + "5141": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1257 + ], + "op": "ADD", + "path": "66" + }, + "5142": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1257 + ], + "op": "MLOAD", + "path": "66" + }, + "5143": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "5146": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "AND", + "path": "66" + }, + "5147": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "ISZERO", + "path": "66" + }, + "5148": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "ISZERO", + "path": "66" + }, + "5149": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "SWAP1", + "path": "66" + }, + "5150": { + "fn": "AccountContextHandler.isBitmapEnabled", + "jump": "o", + "offset": [ + 1117, + 1269 + ], + "op": "JUMP", + "path": "66" + }, + "5151": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5152": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5154": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "DUP1", + "path": "66" + }, + "5155": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "DUP1", + "path": "66" + }, + "5156": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "DUP1", + "path": "66" + }, + "5157": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10379 + ], + "op": "PUSH2", + "path": "66", + "value": "0x142E" + }, + "5160": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10358 + ], + "op": "DUP7", + "path": "66" + }, + "5161": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10371, + 10378 + ], + "op": "DUP9", + "path": "66" + }, + "5162": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10370 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2386" + }, + "5165": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 10344, + 10379 + ], + "op": "JUMP", + "path": "66" + }, + "5166": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10379 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5167": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "PUSH5", + "path": "66", + "statement": 104, + "value": "0xFFFFFFFFFF" + }, + "5173": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "DUP2", + "path": "66" + }, + "5174": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "AND", + "path": "66" + }, + "5175": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "DUP13", + "path": "66" + }, + "5176": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "MSTORE", + "path": "66" + }, + "5177": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP3", + "path": "66" + }, + "5178": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP7", + "path": "66" + }, + "5179": { + "op": "POP" + }, + "5180": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP1", + "path": "66" + }, + "5181": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP5", + "path": "66" + }, + "5182": { + "op": "POP" + }, + "5183": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP3", + "path": "66" + }, + "5184": { + "op": "POP" + }, + "5185": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP1", + "path": "66" + }, + "5186": { + "op": "POP" + }, + "5187": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10485 + ], + "op": "PUSH2", + "path": "66", + "statement": 105, + "value": "0x144B" + }, + "5190": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10403 + ], + "op": "DUP9", + "path": "66" + }, + "5191": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10469 + ], + "op": "PUSH2", + "path": "66", + "value": "0x18AE" + }, + "5194": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 10453, + 10485 + ], + "op": "JUMP", + "path": "66" + }, + "5195": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10485 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5196": { + "branch": 411, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10494 + ], + "op": "ISZERO", + "path": "66" + }, + "5197": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1455" + }, + "5200": { + "branch": 411, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "JUMPI", + "path": "66" + }, + "5201": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5203": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "DUP1", + "path": "66" + }, + "5204": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "REVERT", + "path": "66" + }, + "5205": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5206": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "PUSH1", + "path": "66", + "statement": 106, + "value": "0xFF" + }, + "5208": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "DUP3", + "path": "66" + }, + "5209": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "AND", + "path": "66" + }, + "5210": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10572 + ], + "op": "PUSH1", + "path": "66", + "value": "0x40" + }, + "5212": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10572 + ], + "op": "DUP10", + "path": "66" + }, + "5213": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10572 + ], + "op": "ADD", + "path": "66" + }, + "5214": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "MSTORE", + "path": "66" + }, + "5215": { + "branch": 412, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10772, + 10785 + ], + "op": "DUP5", + "path": "66" + }, + "5216": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10767, + 10908 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1474" + }, + "5219": { + "branch": 412, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10767, + 10908 + ], + "op": "JUMPI", + "path": "66" + }, + "5220": { + "offset": [ + 2023, + 2024 + ], + "op": "PUSH1", + "path": "60", + "value": "0x7" + }, + "5222": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "PUSH1", + "path": "66", + "statement": 107, + "value": "0xFF" + }, + "5224": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "DUP4", + "path": "66" + }, + "5225": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "AND", + "path": "66" + }, + "5226": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "GT", + "path": "66" + }, + "5227": { + "branch": 413, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "ISZERO", + "path": "66" + }, + "5228": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1474" + }, + "5231": { + "branch": 413, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "JUMPI", + "path": "66" + }, + "5232": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5234": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "DUP1", + "path": "66" + }, + "5235": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "REVERT", + "path": "66" + }, + "5236": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5237": { + "branch": 414, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11059, + 11066 + ], + "op": "DUP4", + "path": "66" + }, + "5238": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "ISZERO", + "path": "66" + }, + "5239": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1497" + }, + "5242": { + "branch": 414, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMPI", + "path": "66" + }, + "5243": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "PUSH1", + "path": "66", + "statement": 108, + "value": "0x20" + }, + "5245": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "DUP9", + "path": "66" + }, + "5246": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "ADD", + "path": "66" + }, + "5247": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "DUP1", + "path": "66" + }, + "5248": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "MLOAD", + "path": "66" + }, + "5249": { + "op": "PUSH1", + "value": "0x1" + }, + "5251": { + "op": "PUSH1", + "value": "0xF8" + }, + "5253": { + "op": "SHL" + }, + "5254": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11156 + ], + "op": "OR", + "path": "66" + }, + "5255": { + "op": "PUSH1", + "value": "0x1" + }, + "5257": { + "op": "PUSH1", + "value": "0x1" + }, + "5259": { + "op": "PUSH1", + "value": "0xF8" + }, + "5261": { + "op": "SHL" + }, + "5262": { + "op": "SUB" + }, + "5263": { + "op": "NOT" + }, + "5264": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11082, + 11156 + ], + "op": "AND", + "path": "66" + }, + "5265": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11082, + 11156 + ], + "op": "SWAP1", + "path": "66" + }, + "5266": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11082, + 11156 + ], + "op": "MSTORE", + "path": "66" + }, + "5267": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "PUSH2", + "path": "66", + "value": "0x14A6" + }, + "5270": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMP", + "path": "66" + }, + "5271": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5272": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "PUSH1", + "path": "66", + "statement": 109, + "value": "0x20" + }, + "5274": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "DUP9", + "path": "66" + }, + "5275": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "ADD", + "path": "66" + }, + "5276": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "DUP1", + "path": "66" + }, + "5277": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "MLOAD", + "path": "66" + }, + "5278": { + "op": "PUSH1", + "value": "0x7F" + }, + "5280": { + "op": "PUSH1", + "value": "0xF9" + }, + "5282": { + "op": "SHL" + }, + "5283": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11232, + 11307 + ], + "op": "AND", + "path": "66" + }, + "5284": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11232, + 11307 + ], + "op": "SWAP1", + "path": "66" + }, + "5285": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11232, + 11307 + ], + "op": "MSTORE", + "path": "66" + }, + "5286": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5287": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11460, + 11519 + ], + "op": "PUSH2", + "path": "66", + "statement": 110, + "value": "0x14B3" + }, + "5290": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11501 + ], + "op": "DUP9", + "path": "66" + }, + "5291": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11518 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "5293": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11518 + ], + "op": "ADD", + "path": "66" + }, + "5294": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11518 + ], + "op": "MLOAD", + "path": "66" + }, + "5295": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11460, + 11486 + ], + "op": "PUSH2", + "path": "66", + "value": "0x25C5" + }, + "5298": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 11460, + 11519 + ], + "op": "JUMP", + "path": "66" + }, + "5299": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11460, + 11519 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5300": { + "op": "PUSH1", + "value": "0x1" + }, + "5302": { + "op": "PUSH1", + "value": "0x1" + }, + "5304": { + "op": "PUSH1", + "value": "0x70" + }, + "5306": { + "op": "SHL" + }, + "5307": { + "op": "SUB" + }, + "5308": { + "op": "NOT" + }, + "5309": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11519 + ], + "op": "AND", + "path": "66" + }, + "5310": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11457 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "5312": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11457 + ], + "op": "DUP10", + "path": "66" + }, + "5313": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11457 + ], + "op": "ADD", + "path": "66" + }, + "5314": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11519 + ], + "op": "MSTORE", + "path": "66" + }, + "5315": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11530, + 11550 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5317": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5318": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11567, + 11591 + ], + "op": "DUP4", + "path": "66" + }, + "5319": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11567, + 11591 + ], + "op": "ISZERO", + "path": "66" + }, + "5320": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "PUSH2", + "path": "66", + "value": "0x14F6" + }, + "5323": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMPI", + "path": "66" + }, + "5324": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF0" + }, + "5326": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "DUP5", + "path": "66" + }, + "5327": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "SWAP1", + "path": "66" + }, + "5328": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "SHR", + "path": "66" + }, + "5329": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11955, + 11981 + ], + "op": "DUP2", + "path": "66" + }, + "5330": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11955, + 11981 + ], + "op": "DUP2", + "path": "66" + }, + "5331": { + "branch": 415, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11955, + 11981 + ], + "op": "EQ", + "path": "66" + }, + "5332": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11951, + 12098 + ], + "op": "PUSH2", + "path": "66", + "value": "0x14E8" + }, + "5335": { + "branch": 415, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11951, + 12098 + ], + "op": "JUMPI", + "path": "66" + }, + "5336": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12001, + 12083 + ], + "op": "PUSH2", + "path": "66", + "statement": 111, + "value": "0x14E8" + }, + "5339": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12019, + 12033 + ], + "op": "DUP11", + "path": "66" + }, + "5340": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12035, + 12045 + ], + "op": "DUP3", + "path": "66" + }, + "5341": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12047, + 12051 + ], + "op": "PUSH1", + "path": "66", + "value": "0x1" + }, + "5343": { + "op": "PUSH1", + "value": "0x1" + }, + "5345": { + "op": "PUSH1", + "value": "0xFF" + }, + "5347": { + "op": "SHL" + }, + "5348": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12001, + 12018 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2187" + }, + "5351": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 12001, + 12083 + ], + "op": "JUMP", + "path": "66" + }, + "5352": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12001, + 12083 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5353": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12196, + 12198 + ], + "op": "PUSH1", + "path": "66", + "statement": 112, + "value": "0x10" + }, + "5355": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP5", + "path": "66" + }, + "5356": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP1", + "path": "66" + }, + "5357": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP5", + "path": "66" + }, + "5358": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SHL", + "path": "66" + }, + "5359": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP4", + "path": "66" + }, + "5360": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12126, + 12136 + ], + "op": "SWAP1", + "path": "66", + "statement": 113 + }, + "5361": { + "op": "POP" + }, + "5362": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "PUSH2", + "path": "66", + "value": "0x14C5" + }, + "5365": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMP", + "path": "66" + }, + "5366": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5367": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5368": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5369": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5370": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5371": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5372": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5373": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5374": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5375": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "POP", + "path": "66" + }, + "5376": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "o", + "offset": [ + 9863, + 12215 + ], + "op": "JUMP", + "path": "66" + }, + "5377": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5378": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 938, + 986 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5380": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 989, + 1019 + ], + "op": "PUSH2", + "path": "66", + "value": "0x150B" + }, + "5383": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 989, + 1017 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2640" + }, + "5386": { + "fn": "AccountContextHandler.setAccountContext", + "jump": "i", + "offset": [ + 989, + 1019 + ], + "op": "JUMP", + "path": "66" + }, + "5387": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 989, + 1019 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5388": { + "op": "PUSH1", + "value": "0x1" + }, + "5390": { + "op": "PUSH1", + "value": "0x1" + }, + "5392": { + "op": "PUSH1", + "value": "0xA0" + }, + "5394": { + "op": "SHL" + }, + "5395": { + "op": "SUB" + }, + "5396": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP4", + "path": "66", + "statement": 114 + }, + "5397": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "AND", + "path": "66" + }, + "5398": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5400": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP2", + "path": "66" + }, + "5401": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP2", + "path": "66" + }, + "5402": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "MSTORE", + "path": "66" + }, + "5403": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "PUSH1", + "path": "66", + "value": "0x20" + }, + "5405": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP4", + "path": "66" + }, + "5406": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP2", + "path": "66" + }, + "5407": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "MSTORE", + "path": "66" + }, + "5408": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "PUSH1", + "path": "66", + "value": "0x40" + }, + "5410": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP1", + "path": "66" + }, + "5411": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP4", + "path": "66" + }, + "5412": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "KECCAK256", + "path": "66" + }, + "5413": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP9", + "path": "66" + }, + "5414": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "5415": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP2", + "path": "66" + }, + "5416": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SLOAD", + "path": "66" + }, + "5417": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "5418": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP11", + "path": "66" + }, + "5419": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "5420": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "5421": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP4", + "path": "66" + }, + "5422": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP12", + "path": "66" + }, + "5423": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "5424": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "5425": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "5427": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP13", + "path": "66" + }, + "5428": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "5429": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "5430": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "5432": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP14", + "path": "66" + }, + "5433": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "5434": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "5435": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0x70" + }, + "5437": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SHR", + "path": "66" + }, + "5438": { + "op": "PUSH1", + "value": "0x1" + }, + "5440": { + "op": "PUSH1", + "value": "0x48" + }, + "5442": { + "op": "SHL" + }, + "5443": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "5444": { + "op": "PUSH27", + "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000" + }, + "5472": { + "op": "NOT" + }, + "5473": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "5476": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5477": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP3", + "path": "66" + }, + "5478": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5479": { + "op": "PUSH1", + "value": "0x1" + }, + "5481": { + "op": "PUSH1", + "value": "0x38" + }, + "5483": { + "op": "SHL" + }, + "5484": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "5485": { + "op": "PUSH9", + "value": "0xFFFF00000000000000" + }, + "5495": { + "op": "NOT" + }, + "5496": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0xFF" + }, + "5498": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "5499": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5500": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "5501": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5502": { + "op": "PUSH1", + "value": "0x1" + }, + "5504": { + "op": "PUSH1", + "value": "0x30" + }, + "5506": { + "op": "SHL" + }, + "5507": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "5508": { + "op": "PUSH7", + "value": "0xFF000000000000" + }, + "5516": { + "op": "NOT" + }, + "5517": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF8" + }, + "5519": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "5520": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5521": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "5522": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SHR", + "path": "66" + }, + "5523": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH6", + "path": "66", + "value": "0x10000000000" + }, + "5530": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "5531": { + "op": "PUSH6", + "value": "0xFF0000000000" + }, + "5538": { + "op": "NOT" + }, + "5539": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "5545": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5546": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP9", + "path": "66" + }, + "5547": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5548": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "5554": { + "op": "NOT" + }, + "5555": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5556": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP12", + "path": "66" + }, + "5557": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5558": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP11", + "path": "66" + }, + "5559": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5560": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP11", + "path": "66" + }, + "5561": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "5562": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "5563": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5564": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "5565": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5566": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP9", + "path": "66" + }, + "5567": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5568": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP9", + "path": "66" + }, + "5569": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "5570": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "5571": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5572": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "5573": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5574": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "5575": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5576": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "5577": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "5578": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5579": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "5580": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5581": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "5582": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "5583": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "5584": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP3", + "path": "66" + }, + "5585": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5586": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP3", + "path": "66" + }, + "5587": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "5588": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "5589": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP2", + "path": "66" + }, + "5590": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SSTORE", + "path": "66" + }, + "5591": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "MLOAD", + "path": "66", + "statement": 115 + }, + "5592": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 938, + 1019 + ], + "op": "SWAP3", + "path": "66" + }, + "5593": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 938, + 1019 + ], + "op": "SWAP4", + "path": "66" + }, + "5594": { + "op": "POP" + }, + "5595": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "SWAP1", + "path": "66" + }, + "5596": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "SWAP2", + "path": "66" + }, + "5597": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "PUSH32", + "path": "66", + "value": "0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E" + }, + "5630": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "SWAP2", + "path": "66" + }, + "5631": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "SWAP1", + "path": "66" + }, + "5632": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "LOG2", + "path": "66" + }, + "5633": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "POP", + "path": "66" + }, + "5634": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "POP", + "path": "66" + }, + "5635": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "POP", + "path": "66" + }, + "5636": { + "fn": "AccountContextHandler.setAccountContext", + "jump": "o", + "offset": [ + 837, + 1111 + ], + "op": "JUMP", + "path": "66" + }, + "5637": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15550, + 17246 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5638": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15749, + 15775 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5640": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15778, + 15816 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1610" + }, + "5643": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15795, + 15815 + ], + "op": "DUP3", + "path": "29" + }, + "5644": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15778, + 15794 + ], + "op": "PUSH2", + "path": "29", + "value": "0x264D" + }, + "5647": { + "fn": "BatchAction._executeDepositAction", + "jump": "i", + "offset": [ + 15778, + 15816 + ], + "op": "JUMP", + "path": "29" + }, + "5648": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15778, + 15816 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5649": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15749, + 15816 + ], + "op": "SWAP1", + "path": "29" + }, + "5650": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15749, + 15816 + ], + "op": "POP", + "path": "29" + }, + "5651": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15826, + 15852 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5653": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15893, + 15894 + ], + "op": "DUP1", + "path": "29", + "statement": 116 + }, + "5654": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15870, + 15889 + ], + "op": "DUP3", + "path": "29" + }, + "5655": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15870, + 15894 + ], + "op": "SLT", + "path": "29" + }, + "5656": { + "branch": 388, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15870, + 15894 + ], + "op": "ISZERO", + "path": "29" + }, + "5657": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15862, + 15895 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1621" + }, + "5660": { + "branch": 388, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15862, + 15895 + ], + "op": "JUMPI", + "path": "29" + }, + "5661": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15862, + 15895 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5663": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15862, + 15895 + ], + "op": "DUP1", + "path": "29" + }, + "5664": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15862, + 15895 + ], + "op": "REVERT", + "path": "29" + }, + "5665": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15862, + 15895 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5666": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15925, + 15947 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5668": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15921 + ], + "op": "DUP5", + "path": "29" + }, + "5669": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5671": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "DUP2", + "path": "29" + }, + "5672": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "GT", + "path": "29" + }, + "5673": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "ISZERO", + "path": "29" + }, + "5674": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "PUSH2", + "path": "29", + "value": "0x162F" + }, + "5677": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "JUMPI", + "path": "29" + }, + "5678": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "INVALID", + "path": "29" + }, + "5679": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5680": { + "branch": 389, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15910, + 15947 + ], + "op": "EQ", + "path": "29" + }, + "5681": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15906, + 17082 + ], + "op": "ISZERO", + "path": "29" + }, + "5682": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15906, + 17082 + ], + "op": "PUSH2", + "path": "29", + "value": "0x163C" + }, + "5685": { + "branch": 389, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15906, + 17082 + ], + "op": "JUMPI", + "path": "29" + }, + "5686": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15963, + 15970 + ], + "op": "POP", + "path": "29", + "statement": 117 + }, + "5687": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15963, + 15970 + ], + "op": "POP", + "path": "29" + }, + "5688": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15963, + 15970 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16D2" + }, + "5691": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15963, + 15970 + ], + "op": "JUMP", + "path": "29" + }, + "5692": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15906, + 17082 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5693": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16018, + 16048 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1" + }, + "5695": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16014 + ], + "op": "DUP5", + "path": "29" + }, + "5696": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5698": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "DUP2", + "path": "29" + }, + "5699": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "GT", + "path": "29" + }, + "5700": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "ISZERO", + "path": "29" + }, + "5701": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "PUSH2", + "path": "29", + "value": "0x164A" + }, + "5704": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "JUMPI", + "path": "29" + }, + "5705": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "INVALID", + "path": "29" + }, + "5706": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5707": { + "branch": 390, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16048 + ], + "op": "EQ", + "path": "29" + }, + "5708": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16122 + ], + "op": "DUP1", + "path": "29" + }, + "5709": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16122 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1661" + }, + "5712": { + "branch": 390, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16122 + ], + "op": "JUMPI", + "path": "29" + }, + "5713": { + "op": "POP" + }, + "5714": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16079, + 16122 + ], + "op": "PUSH1", + "path": "29", + "value": "0x3" + }, + "5716": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16075 + ], + "op": "DUP5", + "path": "29" + }, + "5717": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5719": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "DUP2", + "path": "29" + }, + "5720": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "GT", + "path": "29" + }, + "5721": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "ISZERO", + "path": "29" + }, + "5722": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "PUSH2", + "path": "29", + "value": "0x165F" + }, + "5725": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "JUMPI", + "path": "29" + }, + "5726": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "INVALID", + "path": "29" + }, + "5727": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5728": { + "branch": 391, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16064, + 16122 + ], + "op": "EQ", + "path": "29" + }, + "5729": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16003, + 16122 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5730": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15986, + 17082 + ], + "op": "ISZERO", + "path": "29" + }, + "5731": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15986, + 17082 + ], + "op": "PUSH2", + "path": "29", + "value": "0x167A" + }, + "5734": { + "branch": 391, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15986, + 17082 + ], + "op": "JUMPI", + "path": "29" + }, + "5735": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16355, + 16505 + ], + "op": "PUSH2", + "path": "29", + "statement": 118, + "value": "0x1673" + }, + "5738": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16355, + 16367 + ], + "op": "DUP6", + "path": "29" + }, + "5739": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16403, + 16410 + ], + "op": "DUP8", + "path": "29" + }, + "5740": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16428, + 16447 + ], + "op": "DUP5", + "path": "29" + }, + "5741": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16465, + 16470 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5743": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16355, + 16385 + ], + "op": "PUSH2", + "path": "29", + "value": "0x10B7" + }, + "5746": { + "fn": "BatchAction._executeDepositAction", + "jump": "i", + "offset": [ + 16355, + 16505 + ], + "op": "JUMP", + "path": "29" + }, + "5747": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16355, + 16505 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5748": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16333, + 16505 + ], + "op": "SWAP1", + "path": "29" + }, + "5749": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16333, + 16505 + ], + "op": "POP", + "path": "29" + }, + "5750": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15986, + 17082 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16C6" + }, + "5753": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15986, + 17082 + ], + "op": "JUMP", + "path": "29" + }, + "5754": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15986, + 17082 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5755": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16554, + 16589 + ], + "op": "PUSH1", + "path": "29", + "value": "0x2" + }, + "5757": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16550 + ], + "op": "DUP5", + "path": "29" + }, + "5758": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5760": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "DUP2", + "path": "29" + }, + "5761": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "GT", + "path": "29" + }, + "5762": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "ISZERO", + "path": "29" + }, + "5763": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1688" + }, + "5766": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "JUMPI", + "path": "29" + }, + "5767": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "INVALID", + "path": "29" + }, + "5768": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5769": { + "branch": 392, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16589 + ], + "op": "EQ", + "path": "29" + }, + "5770": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16668 + ], + "op": "DUP1", + "path": "29" + }, + "5771": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16668 + ], + "op": "PUSH2", + "path": "29", + "value": "0x169F" + }, + "5774": { + "branch": 392, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16668 + ], + "op": "JUMPI", + "path": "29" + }, + "5775": { + "op": "POP" + }, + "5776": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16620, + 16668 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "5778": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16616 + ], + "op": "DUP5", + "path": "29" + }, + "5779": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5781": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "DUP2", + "path": "29" + }, + "5782": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "GT", + "path": "29" + }, + "5783": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "ISZERO", + "path": "29" + }, + "5784": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "PUSH2", + "path": "29", + "value": "0x169D" + }, + "5787": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "JUMPI", + "path": "29" + }, + "5788": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "INVALID", + "path": "29" + }, + "5789": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5790": { + "branch": 393, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16605, + 16668 + ], + "op": "EQ", + "path": "29" + }, + "5791": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16539, + 16668 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5792": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16522, + 17082 + ], + "op": "ISZERO", + "path": "29" + }, + "5793": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16522, + 17082 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16AF" + }, + "5796": { + "branch": 393, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16522, + 17082 + ], + "op": "JUMPI", + "path": "29" + }, + "5797": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16794, + 16859 + ], + "op": "PUSH2", + "path": "29", + "statement": 119, + "value": "0x1673" + }, + "5800": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16794, + 16806 + ], + "op": "DUP6", + "path": "29" + }, + "5801": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16830, + 16837 + ], + "op": "DUP8", + "path": "29" + }, + "5802": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16839, + 16858 + ], + "op": "DUP5", + "path": "29" + }, + "5803": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16794, + 16829 + ], + "op": "PUSH2", + "path": "29", + "value": "0xFBF" + }, + "5806": { + "fn": "BatchAction._executeDepositAction", + "jump": "i", + "offset": [ + 16794, + 16859 + ], + "op": "JUMP", + "path": "29" + }, + "5807": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16522, + 17082 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5808": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16895, + 16932 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5810": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16891 + ], + "op": "DUP5", + "path": "29" + }, + "5811": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "5813": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "DUP2", + "path": "29" + }, + "5814": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "GT", + "path": "29" + }, + "5815": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "ISZERO", + "path": "29" + }, + "5816": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16BD" + }, + "5819": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "JUMPI", + "path": "29" + }, + "5820": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "INVALID", + "path": "29" + }, + "5821": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5822": { + "branch": 394, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16880, + 16932 + ], + "op": "EQ", + "path": "29" + }, + "5823": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16876, + 17082 + ], + "op": "ISZERO", + "path": "29" + }, + "5824": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16876, + 17082 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16C6" + }, + "5827": { + "branch": 394, + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16876, + 17082 + ], + "op": "JUMPI", + "path": "29" + }, + "5828": { + "op": "POP" + }, + "5829": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17052, + 17071 + ], + "op": "DUP1", + "path": "29", + "statement": 120 + }, + "5830": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 16876, + 17082 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5831": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17092, + 17239 + ], + "op": "PUSH2", + "path": "29", + "statement": 121, + "value": "0x666" + }, + "5834": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17126, + 17138 + ], + "op": "DUP6", + "path": "29" + }, + "5835": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17152, + 17163 + ], + "op": "DUP6", + "path": "29" + }, + "5836": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17177, + 17196 + ], + "op": "DUP5", + "path": "29" + }, + "5837": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17210, + 17229 + ], + "op": "DUP5", + "path": "29" + }, + "5838": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 17092, + 17112 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2663" + }, + "5841": { + "fn": "BatchAction._executeDepositAction", + "jump": "i", + "offset": [ + 17092, + 17239 + ], + "op": "JUMP", + "path": "29" + }, + "5842": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15550, + 17246 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5843": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15550, + 17246 + ], + "op": "POP", + "path": "29" + }, + "5844": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15550, + 17246 + ], + "op": "POP", + "path": "29" + }, + "5845": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15550, + 17246 + ], + "op": "POP", + "path": "29" + }, + "5846": { + "fn": "BatchAction._executeDepositAction", + "offset": [ + 15550, + 17246 + ], + "op": "POP", + "path": "29" + }, + "5847": { + "fn": "BatchAction._executeDepositAction", + "jump": "o", + "offset": [ + 15550, + 17246 + ], + "op": "JUMP", + "path": "29" + }, + "5848": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5849": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19663, + 19684 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5851": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19687, + 19736 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16E3" + }, + "5854": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19704, + 19735 + ], + "op": "DUP5", + "path": "29" + }, + "5855": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19687, + 19703 + ], + "op": "PUSH2", + "path": "29", + "value": "0x264D" + }, + "5858": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "jump": "i", + "offset": [ + 19687, + 19736 + ], + "op": "JUMP", + "path": "29" + }, + "5859": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19687, + 19736 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5860": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19663, + 19736 + ], + "op": "SWAP1", + "path": "29" + }, + "5861": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19663, + 19736 + ], + "op": "POP", + "path": "29" + }, + "5862": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19772, + 19773 + ], + "op": "PUSH1", + "path": "29", + "statement": 122, + "value": "0x0" + }, + "5864": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19754, + 19768 + ], + "op": "DUP2", + "path": "29" + }, + "5865": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19754, + 19773 + ], + "op": "SLT", + "path": "29" + }, + "5866": { + "branch": 395, + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19754, + 19773 + ], + "op": "ISZERO", + "path": "29" + }, + "5867": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19746, + 19774 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16F3" + }, + "5870": { + "branch": 395, + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19746, + 19774 + ], + "op": "JUMPI", + "path": "29" + }, + "5871": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19746, + 19774 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5873": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19746, + 19774 + ], + "op": "DUP1", + "path": "29" + }, + "5874": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19746, + 19774 + ], + "op": "REVERT", + "path": "29" + }, + "5875": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19746, + 19774 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5876": { + "branch": 396, + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19934, + 19959 + ], + "op": "DUP3", + "path": "29" + }, + "5877": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19930, + 20473 + ], + "op": "ISZERO", + "path": "29" + }, + "5878": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19930, + 20473 + ], + "op": "PUSH2", + "path": "29", + "value": "0x172B" + }, + "5881": { + "branch": 396, + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19930, + 20473 + ], + "op": "JUMPI", + "path": "29" + }, + "5882": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20326 + ], + "op": "PUSH2", + "path": "29", + "statement": 123, + "value": "0x171C" + }, + "5885": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20279, + 20291 + ], + "op": "DUP6", + "path": "29" + }, + "5886": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20279, + 20325 + ], + "op": "PUSH1", + "path": "29", + "value": "0x80" + }, + "5888": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20279, + 20325 + ], + "op": "ADD", + "path": "29" + }, + "5889": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20279, + 20325 + ], + "op": "MLOAD", + "path": "29" + }, + "5890": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20257 + ], + "op": "PUSH2", + "path": "29", + "value": "0x11C6" + }, + "5893": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20230, + 20242 + ], + "op": "DUP8", + "path": "29" + }, + "5894": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20230, + 20256 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "5896": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20230, + 20256 + ], + "op": "ADD", + "path": "29" + }, + "5897": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20230, + 20256 + ], + "op": "MLOAD", + "path": "29" + }, + "5898": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20190 + ], + "op": "DUP9", + "path": "29" + }, + "5899": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20208 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "5901": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20208 + ], + "op": "ADD", + "path": "29" + }, + "5902": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20208 + ], + "op": "MLOAD", + "path": "29" + }, + "5903": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20229 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "5906": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20229 + ], + "op": "SWAP1", + "path": "29" + }, + "5907": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20257 + ], + "op": "SWAP2", + "path": "29" + }, + "5908": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20257 + ], + "op": "SWAP1", + "path": "29" + }, + "5909": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20257 + ], + "op": "PUSH4", + "path": "29", + "value": "0xFFFFFFFF" + }, + "5914": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20257 + ], + "op": "AND", + "path": "29" + }, + "5915": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "jump": "i", + "offset": [ + 20178, + 20257 + ], + "op": "JUMP", + "path": "29" + }, + "5916": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20178, + 20326 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5917": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20161, + 20326 + ], + "op": "SWAP1", + "path": "29" + }, + "5918": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20161, + 20326 + ], + "op": "POP", + "path": "29" + }, + "5919": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20441, + 20442 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "5921": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20424, + 20438 + ], + "op": "DUP2", + "path": "29" + }, + "5922": { + "branch": 397, + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20424, + 20442 + ], + "op": "SLT", + "path": "29" + }, + "5923": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20420, + 20462 + ], + "op": "ISZERO", + "path": "29" + }, + "5924": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20420, + 20462 + ], + "op": "PUSH2", + "path": "29", + "value": "0x172B" + }, + "5927": { + "branch": 397, + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20420, + 20462 + ], + "op": "JUMPI", + "path": "29" + }, + "5928": { + "op": "POP" + }, + "5929": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20461, + 20462 + ], + "op": "PUSH1", + "path": "29", + "statement": 124, + "value": "0x0" + }, + "5931": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20420, + 20462 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5932": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20618 + ], + "op": "PUSH1", + "path": "29", + "statement": 125, + "value": "0x80" + }, + "5934": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20618 + ], + "op": "DUP6", + "path": "29" + }, + "5935": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20618 + ], + "op": "ADD", + "path": "29" + }, + "5936": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20618 + ], + "op": "MLOAD", + "path": "29" + }, + "5937": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20651 + ], + "op": "PUSH2", + "path": "29", + "value": "0x173A" + }, + "5940": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20651 + ], + "op": "SWAP1", + "path": "29" + }, + "5941": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20636, + 20650 + ], + "op": "DUP3", + "path": "29" + }, + "5942": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20635 + ], + "op": "PUSH2", + "path": "29", + "value": "0x287E" + }, + "5945": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "jump": "i", + "offset": [ + 20559, + 20651 + ], + "op": "JUMP", + "path": "29" + }, + "5946": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20559, + 20651 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5947": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20510, + 20556 + ], + "op": "PUSH1", + "path": "29", + "value": "0x80" + }, + "5949": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20510, + 20556 + ], + "op": "DUP7", + "path": "29" + }, + "5950": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20510, + 20556 + ], + "op": "ADD", + "path": "29" + }, + "5951": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20510, + 20651 + ], + "op": "MSTORE", + "path": "29" + }, + "5952": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20662, + 20728 + ], + "op": "PUSH2", + "path": "29", + "statement": 126, + "value": "0x174B" + }, + "5955": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20510, + 20522 + ], + "op": "DUP6", + "path": "29" + }, + "5956": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20684, + 20691 + ], + "op": "DUP9", + "path": "29" + }, + "5957": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20693, + 20707 + ], + "op": "DUP9", + "path": "29" + }, + "5958": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20709, + 20727 + ], + "op": "DUP6", + "path": "29" + }, + "5959": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20662, + 20683 + ], + "op": "PUSH2", + "path": "29", + "value": "0x1191" + }, + "5962": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "jump": "i", + "offset": [ + 20662, + 20728 + ], + "op": "JUMP", + "path": "29" + }, + "5963": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20662, + 20728 + ], + "op": "JUMPDEST", + "path": "29" + }, + "5964": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 20662, + 20728 + ], + "op": "POP", + "path": "29" + }, + "5965": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5966": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5967": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5968": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5969": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5970": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5971": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "offset": [ + 19359, + 20735 + ], + "op": "POP", + "path": "29" + }, + "5972": { + "fn": "BatchAction._calculateWithdrawActionAndFinalize", + "jump": "o", + "offset": [ + 19359, + 20735 + ], + "op": "JUMP", + "path": "29" + }, + "5973": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 728, + 1465 + ], + "op": "JUMPDEST", + "path": "81" + }, + "5974": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 836, + 853 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "5976": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 867, + 902 + ], + "op": "DUP1", + "path": "81" + }, + "5977": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 916, + 943 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "5979": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 957, + 979 + ], + "op": "DUP1", + "path": "81" + }, + "5980": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 993, + 1010 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "5982": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1035, + 1082 + ], + "op": "DUP1", + "path": "81" + }, + "5983": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1085, + 1121 + ], + "op": "PUSH2", + "path": "81", + "value": "0x1766" + }, + "5986": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1085, + 1119 + ], + "op": "PUSH2", + "path": "81", + "value": "0x2894" + }, + "5989": { + "fn": "nTokenHandler.getNTokenContext", + "jump": "i", + "offset": [ + 1085, + 1121 + ], + "op": "JUMP", + "path": "81" + }, + "5990": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1085, + 1121 + ], + "op": "JUMPDEST", + "path": "81" + }, + "5991": { + "op": "PUSH1", + "value": "0x1" + }, + "5993": { + "op": "PUSH1", + "value": "0x1" + }, + "5995": { + "op": "PUSH1", + "value": "0xA0" + }, + "5997": { + "op": "SHL" + }, + "5998": { + "op": "SUB" + }, + "5999": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6000": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP8", + "path": "81" + }, + "6001": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "AND", + "path": "81" + }, + "6002": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1131, + 1160 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "6004": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6005": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "DUP2", + "path": "81" + }, + "6006": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "MSTORE", + "path": "81" + }, + "6007": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "PUSH1", + "path": "81", + "value": "0x20" + }, + "6009": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP8", + "path": "81" + }, + "6010": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6011": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP8", + "path": "81" + }, + "6012": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "MSTORE", + "path": "81" + }, + "6013": { + "op": "POP" + }, + "6014": { + "op": "POP" + }, + "6015": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "PUSH1", + "path": "81", + "value": "0x40" + }, + "6017": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6018": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP5", + "path": "81" + }, + "6019": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "KECCAK256", + "path": "81" + }, + "6020": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "SLOAD", + "path": "81", + "statement": 127 + }, + "6021": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "PUSH2", + "path": "81", + "value": "0xFFFF" + }, + "6024": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "DUP2", + "path": "81" + }, + "6025": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "AND", + "path": "81" + }, + "6026": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "SWAP6", + "path": "81" + }, + "6027": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "PUSH4", + "path": "81", + "statement": 128, + "value": "0xFFFFFFFF" + }, + "6032": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "PUSH3", + "path": "81", + "value": "0x10000" + }, + "6036": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "DUP4", + "path": "81" + }, + "6037": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "DIV", + "path": "81" + }, + "6038": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "DUP2", + "path": "81" + }, + "6039": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "AND", + "path": "81" + }, + "6040": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "SWAP7", + "path": "81" + }, + "6041": { + "op": "POP" + }, + "6042": { + "op": "PUSH1", + "value": "0x1" + }, + "6044": { + "op": "PUSH1", + "value": "0x30" + }, + "6046": { + "op": "SHL" + }, + "6047": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "DUP4", + "path": "81", + "statement": 129 + }, + "6048": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "DIV", + "path": "81" + }, + "6049": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "AND", + "path": "81" + }, + "6050": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "SWAP5", + "path": "81" + }, + "6051": { + "op": "POP" + }, + "6052": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "PUSH1", + "path": "81", + "statement": 130, + "value": "0xFF" + }, + "6054": { + "op": "PUSH1", + "value": "0x1" + }, + "6056": { + "op": "PUSH1", + "value": "0x50" + }, + "6058": { + "op": "SHL" + }, + "6059": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "DUP4", + "path": "81" + }, + "6060": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "DIV", + "path": "81" + }, + "6061": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "AND", + "path": "81" + }, + "6062": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "SWAP4", + "path": "81" + }, + "6063": { + "op": "POP" + }, + "6064": { + "op": "PUSH1", + "value": "0x1" + }, + "6066": { + "op": "PUSH1", + "value": "0x58" + }, + "6068": { + "op": "SHL" + }, + "6069": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SWAP1", + "path": "81", + "statement": 131 + }, + "6070": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SWAP2", + "path": "81" + }, + "6071": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "DIV", + "path": "81" + }, + "6072": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "PUSH1", + "path": "81", + "value": "0xD8" + }, + "6074": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SHL", + "path": "81" + }, + "6075": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SWAP2", + "path": "81" + }, + "6076": { + "op": "POP" + }, + "6077": { + "fn": "nTokenHandler.getNTokenContext", + "jump": "o", + "offset": [ + 728, + 1465 + ], + "op": "JUMP", + "path": "81" + }, + "6078": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22646, + 23202 + ], + "op": "JUMPDEST", + "path": "29" + }, + "6079": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22956, + 22957 + ], + "op": "PUSH1", + "path": "29", + "statement": 132, + "value": "0x0" + }, + "6081": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 22952 + ], + "op": "DUP2", + "path": "29" + }, + "6082": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 22957 + ], + "op": "SLT", + "path": "29" + }, + "6083": { + "branch": 398, + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 22957 + ], + "op": "ISZERO", + "path": "29" + }, + "6084": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 23152 + ], + "op": "DUP1", + "path": "29" + }, + "6085": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 23152 + ], + "op": "ISZERO", + "path": "29" + }, + "6086": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 23152 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17F1" + }, + "6089": { + "branch": 398, + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 23152 + ], + "op": "JUMPI", + "path": "29" + }, + "6090": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 23152 + ], + "op": "POP", + "path": "29" + }, + "6091": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23129, + 23152 + ], + "op": "DUP1", + "path": "29" + }, + "6092": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23125 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17EE" + }, + "6095": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23078, + 23090 + ], + "op": "DUP4", + "path": "29" + }, + "6096": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23078, + 23124 + ], + "op": "PUSH1", + "path": "29", + "value": "0x80" + }, + "6098": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23078, + 23124 + ], + "op": "ADD", + "path": "29" + }, + "6099": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23078, + 23124 + ], + "op": "MLOAD", + "path": "29" + }, + "6100": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23056 + ], + "op": "PUSH2", + "path": "29", + "value": "0x11C6" + }, + "6103": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23029, + 23041 + ], + "op": "DUP6", + "path": "29" + }, + "6104": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23029, + 23055 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "6106": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23029, + 23055 + ], + "op": "ADD", + "path": "29" + }, + "6107": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 23029, + 23055 + ], + "op": "MLOAD", + "path": "29" + }, + "6108": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 22989 + ], + "op": "DUP7", + "path": "29" + }, + "6109": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23007 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "6111": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23007 + ], + "op": "ADD", + "path": "29" + }, + "6112": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23007 + ], + "op": "MLOAD", + "path": "29" + }, + "6113": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23028 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "6116": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23028 + ], + "op": "SWAP1", + "path": "29" + }, + "6117": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23056 + ], + "op": "SWAP2", + "path": "29" + }, + "6118": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23056 + ], + "op": "SWAP1", + "path": "29" + }, + "6119": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23056 + ], + "op": "PUSH4", + "path": "29", + "value": "0xFFFFFFFF" + }, + "6124": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23056 + ], + "op": "AND", + "path": "29" + }, + "6125": { + "fn": "BatchAction._checkSufficientCash", + "jump": "i", + "offset": [ + 22977, + 23056 + ], + "op": "JUMP", + "path": "29" + }, + "6126": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23125 + ], + "op": "JUMPDEST", + "path": "29" + }, + "6127": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23152 + ], + "op": "SLT", + "path": "29" + }, + "6128": { + "branch": 399, + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22977, + 23152 + ], + "op": "ISZERO", + "path": "29" + }, + "6129": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22929, + 23152 + ], + "op": "JUMPDEST", + "path": "29" + }, + "6130": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "PUSH2", + "path": "29", + "value": "0x8EB" + }, + "6133": { + "branch": 399, + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "JUMPI", + "path": "29" + }, + "6134": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "6136": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "MLOAD", + "path": "29" + }, + "6137": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "6141": { + "op": "PUSH1", + "value": "0xE5" + }, + "6143": { + "op": "SHL" + }, + "6144": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "DUP2", + "path": "29" + }, + "6145": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "MSTORE", + "path": "29" + }, + "6146": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "6148": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "ADD", + "path": "29" + }, + "6149": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "6152": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "SWAP1", + "path": "29" + }, + "6153": { + "fn": "BatchAction._checkSufficientCash", + "offset": [ + 22908, + 23195 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4A6A" + }, + "6156": { + "fn": "BatchAction._checkSufficientCash", + "jump": "i", + "offset": [ + 22908, + 23195 + ], + "op": "JUMP", + "path": "29" + }, + "6157": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 552, + 771 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6158": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 619, + 640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1815" + }, + "6161": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 619, + 640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x3F62" + }, + "6164": { + "fn": "AccountContextHandler.getAccountContext", + "jump": "i", + "offset": [ + 619, + 640 + ], + "op": "JUMP", + "path": "66" + }, + "6165": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 619, + 640 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6166": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 652, + 700 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "6168": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 703, + 733 + ], + "op": "PUSH2", + "path": "66", + "value": "0x181F" + }, + "6171": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 703, + 731 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2640" + }, + "6174": { + "fn": "AccountContextHandler.getAccountContext", + "jump": "i", + "offset": [ + 703, + 733 + ], + "op": "JUMP", + "path": "66" + }, + "6175": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 703, + 733 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6176": { + "op": "PUSH1", + "value": "0x1" + }, + "6178": { + "op": "PUSH1", + "value": "0x1" + }, + "6180": { + "op": "PUSH1", + "value": "0xA0" + }, + "6182": { + "op": "SHL" + }, + "6183": { + "op": "SUB" + }, + "6184": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP4", + "path": "66", + "statement": 133 + }, + "6185": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6186": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP4", + "path": "66" + }, + "6187": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "AND", + "path": "66" + }, + "6188": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "6190": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6191": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6192": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6193": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x20" + }, + "6195": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP4", + "path": "66" + }, + "6196": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "DUP5", + "path": "66" + }, + "6197": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6198": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x40" + }, + "6200": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6201": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6202": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6203": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "KECCAK256", + "path": "66" + }, + "6204": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6205": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MLOAD", + "path": "66" + }, + "6206": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0xA0" + }, + "6208": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6209": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "6210": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP4", + "path": "66" + }, + "6211": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6212": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6213": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SLOAD", + "path": "66" + }, + "6214": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "6220": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6221": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "6222": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP3", + "path": "66" + }, + "6223": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6224": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH6", + "path": "66", + "value": "0x10000000000" + }, + "6231": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6232": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "6233": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF8" + }, + "6235": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SHL", + "path": "66" + }, + "6236": { + "op": "PUSH1", + "value": "0x1" + }, + "6238": { + "op": "PUSH1", + "value": "0x1" + }, + "6240": { + "op": "PUSH1", + "value": "0xF8" + }, + "6242": { + "op": "SHL" + }, + "6243": { + "op": "SUB" + }, + "6244": { + "op": "NOT" + }, + "6245": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "6246": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP6", + "path": "66" + }, + "6247": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP3", + "path": "66" + }, + "6248": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "6249": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP6", + "path": "66" + }, + "6250": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6251": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP6", + "path": "66" + }, + "6252": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6253": { + "op": "PUSH1", + "value": "0x1" + }, + "6255": { + "op": "PUSH1", + "value": "0x30" + }, + "6257": { + "op": "SHL" + }, + "6258": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP6", + "path": "66" + }, + "6259": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "6260": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0xFF" + }, + "6262": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "6263": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "6264": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "6265": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "6266": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "6267": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6268": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "6269": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6270": { + "op": "PUSH1", + "value": "0x1" + }, + "6272": { + "op": "PUSH1", + "value": "0x38" + }, + "6274": { + "op": "SHL" + }, + "6275": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP5", + "path": "66" + }, + "6276": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "6277": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "6280": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "6281": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "6283": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP3", + "path": "66" + }, + "6284": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "6285": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6286": { + "op": "PUSH1", + "value": "0x1" + }, + "6288": { + "op": "PUSH1", + "value": "0x48" + }, + "6290": { + "op": "SHL" + }, + "6291": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6292": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP4", + "path": "66" + }, + "6293": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "6294": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x70" + }, + "6296": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SHL", + "path": "66" + }, + "6297": { + "op": "PUSH1", + "value": "0x1" + }, + "6299": { + "op": "PUSH1", + "value": "0x1" + }, + "6301": { + "op": "PUSH1", + "value": "0x70" + }, + "6303": { + "op": "SHL" + }, + "6304": { + "op": "SUB" + }, + "6305": { + "op": "NOT" + }, + "6306": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "6307": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "6309": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP5", + "path": "66" + }, + "6310": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "6311": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "6312": { + "op": "POP" + }, + "6313": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "6314": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "6315": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 552, + 771 + ], + "op": "SWAP1", + "path": "66" + }, + "6316": { + "op": "POP" + }, + "6317": { + "fn": "AccountContextHandler.getAccountContext", + "jump": "o", + "offset": [ + 552, + 771 + ], + "op": "JUMP", + "path": "66" + }, + "6318": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3020, + 3752 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6319": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3107, + 3111 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "6321": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3143, + 3158 + ], + "op": "TIMESTAMP", + "path": "66" + }, + "6322": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3173, + 3204 + ], + "op": "PUSH2", + "path": "66", + "value": "0x18BA" + }, + "6325": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3189, + 3203 + ], + "op": "DUP4", + "path": "66" + }, + "6326": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3173, + 3188 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1412" + }, + "6329": { + "fn": "AccountContextHandler.mustSettleAssets", + "jump": "i", + "offset": [ + 3173, + 3204 + ], + "op": "JUMP", + "path": "66" + }, + "6330": { + "branch": 416, + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3173, + 3204 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6331": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "ISZERO", + "path": "66" + }, + "6332": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "PUSH2", + "path": "66", + "value": "0x18DB" + }, + "6335": { + "branch": 416, + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "JUMPI", + "path": "66" + }, + "6336": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3389, + 3420 + ], + "op": "PUSH2", + "path": "66", + "statement": 134, + "value": "0x18C8" + }, + "6339": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3410, + 3419 + ], + "op": "DUP2", + "path": "66" + }, + "6340": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3389, + 3409 + ], + "op": "PUSH2", + "path": "66", + "value": "0x28A1" + }, + "6343": { + "fn": "AccountContextHandler.mustSettleAssets", + "jump": "i", + "offset": [ + 3389, + 3420 + ], + "op": "JUMP", + "path": "66" + }, + "6344": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3389, + 3420 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6345": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3386 + ], + "op": "DUP4", + "path": "66" + }, + "6346": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3386 + ], + "op": "MLOAD", + "path": "66" + }, + "6347": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "6353": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "AND", + "path": "66" + }, + "6354": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "LT", + "path": "66" + }, + "6355": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "SWAP2", + "path": "66" + }, + "6356": { + "op": "POP" + }, + "6357": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3350, + 3420 + ], + "op": "PUSH2", + "path": "66", + "value": "0xBE2" + }, + "6360": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3350, + 3420 + ], + "op": "SWAP1", + "path": "66" + }, + "6361": { + "op": "POP" + }, + "6362": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3350, + 3420 + ], + "op": "JUMP", + "path": "66" + }, + "6363": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6364": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3660, + 3689 + ], + "op": "DUP3", + "path": "66", + "statement": 135 + }, + "6365": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3660, + 3689 + ], + "op": "MLOAD", + "path": "66" + }, + "6366": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "6372": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "AND", + "path": "66" + }, + "6373": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "ISZERO", + "path": "66" + }, + "6374": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "DUP1", + "path": "66" + }, + "6375": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "ISZERO", + "path": "66" + }, + "6376": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "SWAP1", + "path": "66" + }, + "6377": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3735 + ], + "op": "PUSH2", + "path": "66", + "value": "0xBD7" + }, + "6380": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3735 + ], + "op": "JUMPI", + "path": "66" + }, + "6381": { + "op": "POP" + }, + "6382": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3722 + ], + "op": "DUP3", + "path": "66" + }, + "6383": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3722 + ], + "op": "MLOAD", + "path": "66" + }, + "6384": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "6390": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "AND", + "path": "66" + }, + "6391": { + "op": "GT" + }, + "6392": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "ISZERO", + "path": "66" + }, + "6393": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "SWAP1", + "path": "66" + }, + "6394": { + "op": "POP" + }, + "6395": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "PUSH2", + "path": "66", + "value": "0xBE2" + }, + "6398": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "JUMP", + "path": "66" + }, + "6399": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14791, + 15176 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6400": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14907, + 14930 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "6402": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14946, + 14976 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "6404": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14979, + 15021 + ], + "op": "PUSH2", + "path": "84", + "value": "0x190D" + }, + "6407": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14995, + 15002 + ], + "op": "DUP5", + "path": "84" + }, + "6408": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15004, + 15020 + ], + "op": "DUP5", + "path": "84" + }, + "6409": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14979, + 14994 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28BF" + }, + "6412": { + "fn": "PortfolioHandler.getSortedPortfolio", + "jump": "i", + "offset": [ + 14979, + 15021 + ], + "op": "JUMP", + "path": "84" + }, + "6413": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14979, + 15021 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6414": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14946, + 15021 + ], + "op": "SWAP1", + "path": "84" + }, + "6415": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14946, + 15021 + ], + "op": "POP", + "path": "84" + }, + "6416": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15099, + 15100 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "6418": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15082, + 15088 + ], + "op": "DUP2", + "path": "84" + }, + "6419": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15082, + 15095 + ], + "op": "MLOAD", + "path": "84" + }, + "6420": { + "branch": 495, + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15082, + 15100 + ], + "op": "GT", + "path": "84" + }, + "6421": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15078, + 15115 + ], + "op": "PUSH2", + "path": "84", + "value": "0x191F" + }, + "6424": { + "branch": 495, + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15078, + 15115 + ], + "op": "JUMPI", + "path": "84" + }, + "6425": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15109, + 15115 + ], + "op": "SWAP1", + "path": "84", + "statement": 136 + }, + "6426": { + "op": "POP" + }, + "6427": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15102, + 15115 + ], + "op": "PUSH2", + "path": "84", + "value": "0xEDB" + }, + "6430": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15102, + 15115 + ], + "op": "JUMP", + "path": "84" + }, + "6431": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15078, + 15115 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6432": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15126, + 15146 + ], + "op": "PUSH2", + "path": "84", + "statement": 137, + "value": "0xAA3" + }, + "6435": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15139, + 15145 + ], + "op": "DUP2", + "path": "84" + }, + "6436": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15126, + 15138 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29E0" + }, + "6439": { + "fn": "PortfolioHandler.getSortedPortfolio", + "jump": "i", + "offset": [ + 15126, + 15146 + ], + "op": "JUMP", + "path": "84" + }, + "6440": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 3996, + 4813 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6441": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4129, + 4133 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "6443": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4172 + ], + "op": "DUP2", + "path": "66", + "statement": 138 + }, + "6444": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4172 + ], + "op": "ISZERO", + "path": "66" + }, + "6445": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4172 + ], + "op": "DUP1", + "path": "66" + }, + "6446": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4172 + ], + "op": "ISZERO", + "path": "66" + }, + "6447": { + "branch": 417, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4172 + ], + "op": "SWAP1", + "path": "66" + }, + "6448": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4214 + ], + "op": "PUSH2", + "path": "66", + "value": "0x193B" + }, + "6451": { + "branch": 417, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4214 + ], + "op": "JUMPI", + "path": "66" + }, + "6452": { + "op": "POP" + }, + "6453": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "6456": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4176, + 4214 + ], + "op": "DUP3", + "path": "66" + }, + "6457": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4176, + 4214 + ], + "op": "GT", + "path": "66" + }, + "6458": { + "branch": 418, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4176, + 4214 + ], + "op": "ISZERO", + "path": "66" + }, + "6459": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4157, + 4214 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6460": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4149, + 4215 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1944" + }, + "6463": { + "branch": 418, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4149, + 4215 + ], + "op": "JUMPI", + "path": "66" + }, + "6464": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4149, + 4215 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "6466": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4149, + 4215 + ], + "op": "DUP1", + "path": "66" + }, + "6467": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4149, + 4215 + ], + "op": "REVERT", + "path": "66" + }, + "6468": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4149, + 4215 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6469": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4274, + 4305 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "6471": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4274, + 4305 + ], + "op": "DUP4", + "path": "66" + }, + "6472": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4274, + 4305 + ], + "op": "ADD", + "path": "66" + }, + "6473": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4274, + 4305 + ], + "op": "MLOAD", + "path": "66" + }, + "6474": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4351 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "6476": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4351 + ], + "op": "DUP5", + "path": "66" + }, + "6477": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4351 + ], + "op": "ADD", + "path": "66" + }, + "6478": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4351 + ], + "op": "MLOAD", + "path": "66" + }, + "6479": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4365 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "6482": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4365 + ], + "op": "AND", + "path": "66" + }, + "6483": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4365 + ], + "op": "DUP4", + "path": "66" + }, + "6484": { + "branch": 419, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4320, + 4365 + ], + "op": "EQ", + "path": "66" + }, + "6485": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4316, + 4378 + ], + "op": "ISZERO", + "path": "66" + }, + "6486": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4316, + 4378 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1963" + }, + "6489": { + "branch": 419, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4316, + 4378 + ], + "op": "JUMPI", + "path": "66" + }, + "6490": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4374, + 4378 + ], + "op": "PUSH1", + "path": "66", + "statement": 139, + "value": "0x1" + }, + "6492": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4367, + 4378 + ], + "op": "SWAP2", + "path": "66" + }, + "6493": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4367, + 4378 + ], + "op": "POP", + "path": "66" + }, + "6494": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4367, + 4378 + ], + "op": "POP", + "path": "66" + }, + "6495": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4367, + 4378 + ], + "op": "PUSH2", + "path": "66", + "value": "0xEDB" + }, + "6498": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4367, + 4378 + ], + "op": "JUMP", + "path": "66" + }, + "6499": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4316, + 4378 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6500": { + "op": "PUSH1", + "value": "0x1" + }, + "6502": { + "op": "PUSH1", + "value": "0x1" + }, + "6504": { + "op": "PUSH1", + "value": "0x70" + }, + "6506": { + "op": "SHL" + }, + "6507": { + "op": "SUB" + }, + "6508": { + "op": "NOT" + }, + "6509": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4396, + 4414 + ], + "op": "DUP2", + "path": "66" + }, + "6510": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4396, + 4414 + ], + "op": "AND", + "path": "66" + }, + "6511": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4396, + 4414 + ], + "op": "ISZERO", + "path": "66" + }, + "6512": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4389, + 4784 + ], + "op": "PUSH2", + "path": "66", + "value": "0x19A8" + }, + "6515": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4389, + 4784 + ], + "op": "JUMPI", + "path": "66" + }, + "6516": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4472, + 4494 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF0" + }, + "6518": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4444, + 4495 + ], + "op": "DUP2", + "path": "66" + }, + "6519": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4444, + 4495 + ], + "op": "SWAP1", + "path": "66" + }, + "6520": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4444, + 4495 + ], + "op": "SHR", + "path": "66" + }, + "6521": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "6524": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4444, + 4495 + ], + "op": "AND", + "path": "66" + }, + "6525": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4513, + 4530 + ], + "op": "DUP4", + "path": "66" + }, + "6526": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4513, + 4530 + ], + "op": "DUP2", + "path": "66" + }, + "6527": { + "branch": 420, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4513, + 4530 + ], + "op": "EQ", + "path": "66" + }, + "6528": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4509, + 4730 + ], + "op": "ISZERO", + "path": "66" + }, + "6529": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4509, + 4730 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1995" + }, + "6532": { + "branch": 420, + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4509, + 4730 + ], + "op": "JUMPI", + "path": "66" + }, + "6533": { + "op": "POP" + }, + "6534": { + "op": "PUSH1", + "value": "0x1" + }, + "6536": { + "op": "PUSH1", + "value": "0xFE" + }, + "6538": { + "op": "SHL" + }, + "6539": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4634, + 4683 + ], + "op": "SWAP1", + "path": "66", + "statement": 140 + }, + "6540": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4634, + 4683 + ], + "op": "DUP2", + "path": "66" + }, + "6541": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4634, + 4683 + ], + "op": "AND", + "path": "66" + }, + "6542": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4634, + 4715 + ], + "op": "EQ", + "path": "66" + }, + "6543": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4634, + 4715 + ], + "op": "SWAP1", + "path": "66" + }, + "6544": { + "op": "POP" + }, + "6545": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4627, + 4715 + ], + "op": "PUSH2", + "path": "66", + "value": "0xEDB" + }, + "6548": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4627, + 4715 + ], + "op": "JUMP", + "path": "66" + }, + "6549": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4509, + 4730 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6550": { + "op": "POP" + }, + "6551": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4771, + 4773 + ], + "op": "PUSH1", + "path": "66", + "statement": 141, + "value": "0x10" + }, + "6553": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4757, + 4773 + ], + "op": "SHL", + "path": "66" + }, + "6554": { + "op": "PUSH1", + "value": "0x1" + }, + "6556": { + "op": "PUSH1", + "value": "0x1" + }, + "6558": { + "op": "PUSH1", + "value": "0x80" + }, + "6560": { + "op": "SHL" + }, + "6561": { + "op": "SUB" + }, + "6562": { + "op": "NOT" + }, + "6563": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4757, + 4773 + ], + "op": "AND", + "path": "66" + }, + "6564": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4389, + 4784 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1963" + }, + "6567": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4389, + 4784 + ], + "op": "JUMP", + "path": "66" + }, + "6568": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4389, + 4784 + ], + "op": "JUMPDEST", + "path": "66" + }, + "6569": { + "op": "POP" + }, + "6570": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4801, + 4806 + ], + "op": "PUSH1", + "path": "66", + "statement": 142, + "value": "0x0" + }, + "6572": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 4801, + 4806 + ], + "op": "SWAP4", + "path": "66" + }, + "6573": { + "fn": "AccountContextHandler.isActiveInBalances", + "offset": [ + 3996, + 4813 + ], + "op": "SWAP3", + "path": "66" + }, + "6574": { + "op": "POP" + }, + "6575": { + "op": "POP" + }, + "6576": { + "op": "POP" + }, + "6577": { + "fn": "AccountContextHandler.isActiveInBalances", + "jump": "o", + "offset": [ + 3996, + 4813 + ], + "op": "JUMP", + "path": "66" + }, + "6578": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20724, + 21742 + ], + "op": "JUMPDEST", + "path": "67" + }, + "6579": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20848, + 20866 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "6581": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20880, + 20900 + ], + "op": "DUP1", + "path": "67" + }, + "6582": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20914, + 20935 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "6584": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20949, + 20977 + ], + "op": "DUP1", + "path": "67" + }, + "6585": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21002, + 21070 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "6587": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21073, + 21103 + ], + "op": "PUSH2", + "path": "67", + "value": "0x19C2" + }, + "6590": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21073, + 21101 + ], + "op": "PUSH2", + "path": "67", + "value": "0x2B98" + }, + "6593": { + "fn": "BalanceHandler.getBalanceStorage", + "jump": "i", + "offset": [ + 21073, + 21103 + ], + "op": "JUMP", + "path": "67" + }, + "6594": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21073, + 21103 + ], + "op": "JUMPDEST", + "path": "67" + }, + "6595": { + "op": "PUSH1", + "value": "0x1" + }, + "6597": { + "op": "PUSH1", + "value": "0x1" + }, + "6599": { + "op": "PUSH1", + "value": "0xA0" + }, + "6601": { + "op": "SHL" + }, + "6602": { + "op": "SUB" + }, + "6603": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "DUP9", + "path": "67" + }, + "6604": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "AND", + "path": "67" + }, + "6605": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21113, + 21150 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "6607": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "SWAP1", + "path": "67" + }, + "6608": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "DUP2", + "path": "67" + }, + "6609": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "MSTORE", + "path": "67" + }, + "6610": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "6612": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "DUP3", + "path": "67" + }, + "6613": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "DUP2", + "path": "67" + }, + "6614": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "MSTORE", + "path": "67" + }, + "6615": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "6617": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "DUP1", + "path": "67" + }, + "6618": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "DUP4", + "path": "67" + }, + "6619": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "KECCAK256", + "path": "67" + }, + "6620": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "DUP11", + "path": "67" + }, + "6621": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "DUP5", + "path": "67" + }, + "6622": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "MSTORE", + "path": "67" + }, + "6623": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "SWAP1", + "path": "67" + }, + "6624": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "SWAP2", + "path": "67" + }, + "6625": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "MSTORE", + "path": "67" + }, + "6626": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "SWAP1", + "path": "67" + }, + "6627": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21179 + ], + "op": "KECCAK256", + "path": "67" + }, + "6628": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21206, + 21234 + ], + "op": "DUP1", + "path": "67", + "statement": 143 + }, + "6629": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21206, + 21234 + ], + "op": "SLOAD", + "path": "67" + }, + "6630": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21206, + 21234 + ], + "op": "PUSH10", + "path": "67", + "value": "0xFFFFFFFFFFFFFFFFFFFF" + }, + "6641": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21206, + 21234 + ], + "op": "DUP2", + "path": "67" + }, + "6642": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21206, + 21234 + ], + "op": "AND", + "path": "67" + }, + "6643": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21206, + 21234 + ], + "op": "SWAP7", + "path": "67" + }, + "6644": { + "op": "POP" + }, + "6645": { + "op": "PUSH1", + "value": "0x1" + }, + "6647": { + "op": "PUSH1", + "value": "0x50" + }, + "6649": { + "op": "SHL" + }, + "6650": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21260, + 21288 + ], + "op": "SWAP1", + "path": "67", + "statement": 144 + }, + "6651": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21260, + 21288 + ], + "op": "DIV", + "path": "67" + }, + "6652": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21260, + 21288 + ], + "op": "PUSH4", + "path": "67", + "value": "0xFFFFFFFF" + }, + "6657": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21260, + 21288 + ], + "op": "AND", + "path": "67" + }, + "6658": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21260, + 21288 + ], + "op": "SWAP5", + "path": "67" + }, + "6659": { + "op": "POP" + }, + "6660": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "SWAP1", + "path": "67" + }, + "6661": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21153, + 21167 + ], + "op": "SWAP2", + "path": "67" + }, + "6662": { + "op": "POP" + }, + "6663": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21302, + 21319 + ], + "op": "DUP4", + "path": "67" + }, + "6664": { + "branch": 468, + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21302, + 21319 + ], + "op": "ISZERO", + "path": "67" + }, + "6665": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21298, + 21686 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1A2E" + }, + "6668": { + "branch": 468, + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21298, + 21686 + ], + "op": "JUMPI", + "path": "67" + }, + "6669": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21550, + 21585 + ], + "op": "DUP1", + "path": "67", + "statement": 145 + }, + "6670": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21550, + 21585 + ], + "op": "SLOAD", + "path": "67" + }, + "6671": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21517, + 21586 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1A27" + }, + "6674": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21517, + 21586 + ], + "op": "SWAP1", + "path": "67" + }, + "6675": { + "op": "PUSH1", + "value": "0x1" + }, + "6677": { + "op": "PUSH1", + "value": "0x70" + }, + "6679": { + "op": "SHL" + }, + "6680": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21550, + 21585 + ], + "op": "SWAP1", + "path": "67" + }, + "6681": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21550, + 21585 + ], + "op": "DIV", + "path": "67" + }, + "6682": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21550, + 21585 + ], + "op": "PUSH7", + "path": "67", + "value": "0xFFFFFFFFFFFFFF" + }, + "6690": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21550, + 21585 + ], + "op": "AND", + "path": "67" + }, + "6691": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21517, + 21549 + ], + "op": "PUSH2", + "path": "67", + "value": "0x2BA5" + }, + "6694": { + "fn": "BalanceHandler.getBalanceStorage", + "jump": "i", + "offset": [ + 21517, + 21586 + ], + "op": "JUMP", + "path": "67" + }, + "6695": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21517, + 21586 + ], + "op": "JUMPDEST", + "path": "67" + }, + "6696": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21494, + 21586 + ], + "op": "SWAP3", + "path": "67" + }, + "6697": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21494, + 21586 + ], + "op": "POP", + "path": "67" + }, + "6698": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21298, + 21686 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1A43" + }, + "6701": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21298, + 21686 + ], + "op": "JUMP", + "path": "67" + }, + "6702": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21298, + 21686 + ], + "op": "JUMPDEST", + "path": "67" + }, + "6703": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "DUP1", + "path": "67", + "statement": 146 + }, + "6704": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "SLOAD", + "path": "67" + }, + "6705": { + "op": "PUSH1", + "value": "0x1" + }, + "6707": { + "op": "PUSH1", + "value": "0x70" + }, + "6709": { + "op": "SHL" + }, + "6710": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "SWAP1", + "path": "67" + }, + "6711": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "DIV", + "path": "67" + }, + "6712": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "PUSH7", + "path": "67", + "value": "0xFFFFFFFFFFFFFF" + }, + "6720": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "AND", + "path": "67" + }, + "6721": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21640, + 21675 + ], + "op": "SWAP3", + "path": "67" + }, + "6722": { + "op": "POP" + }, + "6723": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21298, + 21686 + ], + "op": "JUMPDEST", + "path": "67" + }, + "6724": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "SLOAD", + "path": "67", + "statement": 147 + }, + "6725": { + "op": "PUSH1", + "value": "0x1" + }, + "6727": { + "op": "PUSH1", + "value": "0xA8" + }, + "6729": { + "op": "SHL" + }, + "6730": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "SWAP1", + "path": "67" + }, + "6731": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "DIV", + "path": "67" + }, + "6732": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "PUSH1", + "path": "67", + "value": "0xA" + }, + "6734": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "SWAP1", + "path": "67" + }, + "6735": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "DUP2", + "path": "67" + }, + "6736": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21709, + 21735 + ], + "op": "SIGNEXTEND", + "path": "67" + }, + "6737": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21695, + 21735 + ], + "op": "SWAP1", + "path": "67" + }, + "6738": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21695, + 21735 + ], + "op": "SIGNEXTEND", + "path": "67" + }, + "6739": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 21695, + 21735 + ], + "op": "SWAP8", + "path": "67" + }, + "6740": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20724, + 21742 + ], + "op": "SWAP4", + "path": "67" + }, + "6741": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20724, + 21742 + ], + "op": "SWAP7", + "path": "67" + }, + "6742": { + "op": "POP" + }, + "6743": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20724, + 21742 + ], + "op": "SWAP2", + "path": "67" + }, + "6744": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20724, + 21742 + ], + "op": "SWAP5", + "path": "67" + }, + "6745": { + "op": "POP" + }, + "6746": { + "fn": "BalanceHandler.getBalanceStorage", + "offset": [ + 20724, + 21742 + ], + "op": "SWAP3", + "path": "67" + }, + "6747": { + "op": "POP" + }, + "6748": { + "op": "POP" + }, + "6749": { + "fn": "BalanceHandler.getBalanceStorage", + "jump": "o", + "offset": [ + 20724, + 21742 + ], + "op": "JUMP", + "path": "67" + }, + "6750": { + "fn": "SafeInt256.mul", + "offset": [ + 398, + 588 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6751": { + "fn": "SafeInt256.mul", + "offset": [ + 478, + 483 + ], + "op": "DUP2", + "path": "94", + "statement": 148 + }, + "6752": { + "fn": "SafeInt256.mul", + "offset": [ + 478, + 483 + ], + "op": "DUP2", + "path": "94" + }, + "6753": { + "fn": "SafeInt256.mul", + "offset": [ + 478, + 483 + ], + "op": "MUL", + "path": "94" + }, + "6754": { + "op": "PUSH1", + "value": "0x0" + }, + "6756": { + "op": "NOT" + }, + "6757": { + "fn": "SafeInt256.mul", + "offset": [ + 497, + 504 + ], + "op": "DUP4", + "path": "94" + }, + "6758": { + "branch": 526, + "fn": "SafeInt256.mul", + "offset": [ + 497, + 504 + ], + "op": "EQ", + "path": "94" + }, + "6759": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "ISZERO", + "path": "94" + }, + "6760": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1A8E" + }, + "6763": { + "branch": 526, + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "JUMPI", + "path": "94" + }, + "6764": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 521 + ], + "op": "DUP2", + "path": "94", + "statement": 149 + }, + "6765": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 521 + ], + "op": "ISZERO", + "path": "94" + }, + "6766": { + "branch": 527, + "fn": "SafeInt256.mul", + "offset": [ + 515, + 521 + ], + "op": "DUP1", + "path": "94" + }, + "6767": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1A80" + }, + "6770": { + "branch": 527, + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "JUMPI", + "path": "94" + }, + "6771": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "POP", + "path": "94" + }, + "6772": { + "fn": "SafeInt256.mul", + "offset": [ + 534, + 535 + ], + "op": "DUP3", + "path": "94" + }, + "6773": { + "fn": "SafeInt256.mul", + "offset": [ + 529, + 530 + ], + "op": "DUP3", + "path": "94" + }, + "6774": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 526 + ], + "op": "DUP3", + "path": "94" + }, + "6775": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "DUP2", + "path": "94" + }, + "6776": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1A7D" + }, + "6779": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "JUMPI", + "path": "94" + }, + "6780": { + "dev": "Division by zero", + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "INVALID", + "path": "94" + }, + "6781": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6782": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "SDIV", + "path": "94" + }, + "6783": { + "branch": 528, + "fn": "SafeInt256.mul", + "offset": [ + 525, + 535 + ], + "op": "EQ", + "path": "94" + }, + "6784": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6785": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1A89" + }, + "6788": { + "branch": 528, + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "JUMPI", + "path": "94" + }, + "6789": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "6791": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "DUP1", + "path": "94" + }, + "6792": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "REVERT", + "path": "94" + }, + "6793": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6794": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "PUSH2", + "path": "94", + "value": "0xEDB" + }, + "6797": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "JUMP", + "path": "94" + }, + "6798": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6799": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 566 + ], + "op": "DUP3", + "path": "94", + "statement": 150 + }, + "6800": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 566 + ], + "op": "ISZERO", + "path": "94" + }, + "6801": { + "branch": 529, + "fn": "SafeInt256.mul", + "offset": [ + 560, + 566 + ], + "op": "DUP1", + "path": "94" + }, + "6802": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1AA3" + }, + "6805": { + "branch": 529, + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "JUMPI", + "path": "94" + }, + "6806": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "POP", + "path": "94" + }, + "6807": { + "fn": "SafeInt256.mul", + "offset": [ + 579, + 580 + ], + "op": "DUP2", + "path": "94" + }, + "6808": { + "fn": "SafeInt256.mul", + "offset": [ + 574, + 575 + ], + "op": "DUP4", + "path": "94" + }, + "6809": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 571 + ], + "op": "DUP3", + "path": "94" + }, + "6810": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "DUP2", + "path": "94" + }, + "6811": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1AA0" + }, + "6814": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "JUMPI", + "path": "94" + }, + "6815": { + "dev": "Division by zero", + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "INVALID", + "path": "94" + }, + "6816": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6817": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "SDIV", + "path": "94" + }, + "6818": { + "branch": 530, + "fn": "SafeInt256.mul", + "offset": [ + 570, + 580 + ], + "op": "EQ", + "path": "94" + }, + "6819": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "JUMPDEST", + "path": "94" + }, + "6820": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "PUSH2", + "path": "94", + "value": "0xEDB" + }, + "6823": { + "branch": 530, + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "JUMPI", + "path": "94" + }, + "6824": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "6826": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "DUP1", + "path": "94" + }, + "6827": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "REVERT", + "path": "94" + }, + "6828": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4424, + 5233 + ], + "op": "JUMPDEST", + "path": "76" + }, + "6829": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4521, + 4527 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6831": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4541, + 4557 + ], + "op": "DUP1", + "path": "76" + }, + "6832": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4571, + 4576 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6834": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4602, + 4629 + ], + "op": "DUP1", + "path": "76" + }, + "6835": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4631, + 4660 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6837": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4664, + 4696 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1ABD" + }, + "6840": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4685, + 4695 + ], + "op": "DUP7", + "path": "76" + }, + "6841": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4664, + 4684 + ], + "op": "PUSH2", + "path": "76", + "value": "0x2BB3" + }, + "6844": { + "fn": "AssetRate._getAssetRateStateful", + "jump": "i", + "offset": [ + 4664, + 4696 + ], + "op": "JUMP", + "path": "76" + }, + "6845": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4664, + 4696 + ], + "op": "JUMPDEST", + "path": "76" + }, + "6846": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4601, + 4696 + ], + "op": "SWAP1", + "path": "76" + }, + "6847": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4601, + 4696 + ], + "op": "SWAP3", + "path": "76" + }, + "6848": { + "op": "POP" + }, + "6849": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4601, + 4696 + ], + "op": "SWAP1", + "path": "76" + }, + "6850": { + "op": "POP" + }, + "6851": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4707, + 4718 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6853": { + "op": "PUSH1", + "value": "0x1" + }, + "6855": { + "op": "PUSH1", + "value": "0x1" + }, + "6857": { + "op": "PUSH1", + "value": "0xA0" + }, + "6859": { + "op": "SHL" + }, + "6860": { + "op": "SUB" + }, + "6861": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4732, + 4765 + ], + "op": "DUP4", + "path": "76" + }, + "6862": { + "branch": 444, + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4732, + 4765 + ], + "op": "AND", + "path": "76" + }, + "6863": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4728, + 5166 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1AE2" + }, + "6866": { + "branch": 444, + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4728, + 5166 + ], + "op": "JUMPI", + "path": "76" + }, + "6867": { + "op": "POP" + }, + "6868": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5019, + 5020 + ], + "op": "PUSH1", + "path": "76", + "statement": 151, + "value": "0x0" + }, + "6870": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5019, + 5020 + ], + "op": "SWAP1", + "path": "76" + }, + "6871": { + "op": "POP" + }, + "6872": { + "offset": [ + 658, + 662 + ], + "op": "PUSH5", + "path": "76", + "value": "0x2540BE400" + }, + "6878": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4728, + 5166 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1B64" + }, + "6881": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4728, + 5166 + ], + "op": "JUMP", + "path": "76" + }, + "6882": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4728, + 5166 + ], + "op": "JUMPDEST", + "path": "76" + }, + "6883": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5068 + ], + "op": "DUP3", + "path": "76", + "statement": 152 + }, + "6884": { + "op": "PUSH1", + "value": "0x1" + }, + "6886": { + "op": "PUSH1", + "value": "0x1" + }, + "6888": { + "op": "PUSH1", + "value": "0xA0" + }, + "6890": { + "op": "SHL" + }, + "6891": { + "op": "SUB" + }, + "6892": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5092 + ], + "op": "AND", + "path": "76" + }, + "6893": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5092 + ], + "op": "PUSH4", + "path": "76", + "value": "0x1EE10833" + }, + "6898": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x40" + }, + "6900": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "MLOAD", + "path": "76" + }, + "6901": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP2", + "path": "76" + }, + "6902": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH4", + "path": "76", + "value": "0xFFFFFFFF" + }, + "6907": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "AND", + "path": "76" + }, + "6908": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0xE0" + }, + "6910": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "SHL", + "path": "76" + }, + "6911": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP2", + "path": "76" + }, + "6912": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "MSTORE", + "path": "76" + }, + "6913": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x4" + }, + "6915": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ADD", + "path": "76" + }, + "6916": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x20" + }, + "6918": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x40" + }, + "6920": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "MLOAD", + "path": "76" + }, + "6921": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6922": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP4", + "path": "76" + }, + "6923": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "SUB", + "path": "76" + }, + "6924": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP2", + "path": "76" + }, + "6925": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6927": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP8", + "path": "76" + }, + "6928": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6929": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "EXTCODESIZE", + "path": "76" + }, + "6930": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ISZERO", + "path": "76" + }, + "6931": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6932": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ISZERO", + "path": "76" + }, + "6933": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1B1D" + }, + "6936": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "JUMPI", + "path": "76" + }, + "6937": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6939": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6940": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "REVERT", + "path": "76" + }, + "6941": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "JUMPDEST", + "path": "76" + }, + "6942": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "POP", + "path": "76" + }, + "6943": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "GAS", + "path": "76" + }, + "6944": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "CALL", + "path": "76" + }, + "6945": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ISZERO", + "path": "76" + }, + "6946": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6947": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ISZERO", + "path": "76" + }, + "6948": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1B31" + }, + "6951": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "JUMPI", + "path": "76" + }, + "6952": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "RETURNDATASIZE", + "path": "76" + }, + "6953": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6955": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6956": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "RETURNDATACOPY", + "path": "76" + }, + "6957": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "RETURNDATASIZE", + "path": "76" + }, + "6958": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "6960": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "REVERT", + "path": "76" + }, + "6961": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "JUMPDEST", + "path": "76" + }, + "6962": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "POP", + "path": "76" + }, + "6963": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "POP", + "path": "76" + }, + "6964": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "POP", + "path": "76" + }, + "6965": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "POP", + "path": "76" + }, + "6966": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x40" + }, + "6968": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "MLOAD", + "path": "76" + }, + "6969": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "RETURNDATASIZE", + "path": "76" + }, + "6970": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x1F" + }, + "6972": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "NOT", + "path": "76" + }, + "6973": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x1F" + }, + "6975": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP3", + "path": "76" + }, + "6976": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ADD", + "path": "76" + }, + "6977": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "AND", + "path": "76" + }, + "6978": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP3", + "path": "76" + }, + "6979": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ADD", + "path": "76" + }, + "6980": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP1", + "path": "76" + }, + "6981": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH1", + "path": "76", + "value": "0x40" + }, + "6983": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "MSTORE", + "path": "76" + }, + "6984": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "POP", + "path": "76" + }, + "6985": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "DUP2", + "path": "76" + }, + "6986": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "ADD", + "path": "76" + }, + "6987": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "SWAP1", + "path": "76" + }, + "6988": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1B55" + }, + "6991": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "SWAP2", + "path": "76" + }, + "6992": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "SWAP1", + "path": "76" + }, + "6993": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "PUSH2", + "path": "76", + "value": "0x43D8" + }, + "6996": { + "fn": "AssetRate._getAssetRateStateful", + "jump": "i", + "offset": [ + 5058, + 5094 + ], + "op": "JUMP", + "path": "76" + }, + "6997": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5058, + 5094 + ], + "op": "JUMPDEST", + "path": "76" + }, + "6998": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5051, + 5094 + ], + "op": "SWAP1", + "path": "76" + }, + "6999": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5051, + 5094 + ], + "op": "POP", + "path": "76" + }, + "7000": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5123, + 5124 + ], + "op": "PUSH1", + "path": "76", + "statement": 153, + "value": "0x0" + }, + "7002": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5116, + 5120 + ], + "op": "DUP2", + "path": "76" + }, + "7003": { + "branch": 445, + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5116, + 5124 + ], + "op": "SGT", + "path": "76" + }, + "7004": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5108, + 5125 + ], + "op": "PUSH2", + "path": "76", + "value": "0x1B64" + }, + "7007": { + "branch": 445, + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5108, + 5125 + ], + "op": "JUMPI", + "path": "76" + }, + "7008": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5108, + 5125 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "7010": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5108, + 5125 + ], + "op": "DUP1", + "path": "76" + }, + "7011": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5108, + 5125 + ], + "op": "REVERT", + "path": "76" + }, + "7012": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5108, + 5125 + ], + "op": "JUMPDEST", + "path": "76" + }, + "7013": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5184, + 5188 + ], + "op": "SWAP7", + "path": "76", + "statement": 154 + }, + "7014": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5190, + 5200 + ], + "op": "SWAP2", + "path": "76" + }, + "7015": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5190, + 5200 + ], + "op": "SWAP6", + "path": "76" + }, + "7016": { + "op": "POP" + }, + "7017": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 5190, + 5200 + ], + "op": "SWAP4", + "path": "76" + }, + "7018": { + "op": "POP" + }, + "7019": { + "fn": "AssetRate._getAssetRateStateful", + "offset": [ + 4424, + 5233 + ], + "op": "SWAP2", + "path": "76" + }, + "7020": { + "op": "POP" + }, + "7021": { + "op": "POP" + }, + "7022": { + "fn": "AssetRate._getAssetRateStateful", + "jump": "o", + "offset": [ + 4424, + 5233 + ], + "op": "JUMP", + "path": "76" + }, + "7023": { + "fn": "TokenHandler._getToken", + "offset": [ + 1438, + 2129 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7024": { + "fn": "TokenHandler._getToken", + "offset": [ + 1516, + 1528 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1B77" + }, + "7027": { + "fn": "TokenHandler._getToken", + "offset": [ + 1516, + 1528 + ], + "op": "PUSH2", + "path": "69", + "value": "0x4022" + }, + "7030": { + "fn": "TokenHandler._getToken", + "jump": "i", + "offset": [ + 1516, + 1528 + ], + "op": "JUMP", + "path": "69" + }, + "7031": { + "fn": "TokenHandler._getToken", + "offset": [ + 1516, + 1528 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7032": { + "fn": "TokenHandler._getToken", + "offset": [ + 1540, + 1603 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7034": { + "fn": "TokenHandler._getToken", + "offset": [ + 1606, + 1634 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1B81" + }, + "7037": { + "fn": "TokenHandler._getToken", + "offset": [ + 1606, + 1632 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2BEA" + }, + "7040": { + "fn": "TokenHandler._getToken", + "jump": "i", + "offset": [ + 1606, + 1634 + ], + "op": "JUMP", + "path": "69" + }, + "7041": { + "fn": "TokenHandler._getToken", + "offset": [ + 1606, + 1634 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7042": { + "fn": "TokenHandler._getToken", + "offset": [ + 1644, + 1677 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7044": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "DUP6", + "path": "69" + }, + "7045": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "DUP2", + "path": "69" + }, + "7046": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "MSTORE", + "path": "69" + }, + "7047": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "PUSH1", + "path": "69", + "value": "0x20" + }, + "7049": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "DUP3", + "path": "69" + }, + "7050": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "DUP2", + "path": "69" + }, + "7051": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "MSTORE", + "path": "69" + }, + "7052": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "PUSH1", + "path": "69", + "value": "0x40" + }, + "7054": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "DUP1", + "path": "69" + }, + "7055": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "DUP4", + "path": "69" + }, + "7056": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1697 + ], + "op": "KECCAK256", + "path": "69" + }, + "7057": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "DUP8", + "path": "69" + }, + "7058": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "ISZERO", + "path": "69" + }, + "7059": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "ISZERO", + "path": "69" + }, + "7060": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "DUP5", + "path": "69" + }, + "7061": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "MSTORE", + "path": "69" + }, + "7062": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "DUP3", + "path": "69" + }, + "7063": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "MSTORE", + "path": "69" + }, + "7064": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "SWAP2", + "path": "69" + }, + "7065": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "DUP3", + "path": "69" + }, + "7066": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "SWAP1", + "path": "69" + }, + "7067": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "KECCAK256", + "path": "69" + }, + "7068": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP3", + "path": "69", + "statement": 155 + }, + "7069": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MLOAD", + "path": "69" + }, + "7070": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "PUSH1", + "path": "69", + "value": "0xA0" + }, + "7072": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP2", + "path": "69" + }, + "7073": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ADD", + "path": "69" + }, + "7074": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP5", + "path": "69" + }, + "7075": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MSTORE", + "path": "69" + }, + "7076": { + "fn": "TokenHandler._getToken", + "offset": [ + 1777, + 1802 + ], + "op": "DUP2", + "path": "69" + }, + "7077": { + "fn": "TokenHandler._getToken", + "offset": [ + 1777, + 1802 + ], + "op": "SLOAD", + "path": "69" + }, + "7078": { + "op": "PUSH1", + "value": "0x1" + }, + "7080": { + "op": "PUSH1", + "value": "0x1" + }, + "7082": { + "op": "PUSH1", + "value": "0xA0" + }, + "7084": { + "op": "SHL" + }, + "7085": { + "op": "SUB" + }, + "7086": { + "fn": "TokenHandler._getToken", + "offset": [ + 1777, + 1802 + ], + "op": "DUP2", + "path": "69" + }, + "7087": { + "fn": "TokenHandler._getToken", + "offset": [ + 1777, + 1802 + ], + "op": "AND", + "path": "69" + }, + "7088": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP3", + "path": "69" + }, + "7089": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MSTORE", + "path": "69" + }, + "7090": { + "fn": "TokenHandler._getToken", + "offset": [ + 1836, + 1863 + ], + "op": "PUSH1", + "path": "69", + "value": "0xFF" + }, + "7092": { + "op": "PUSH1", + "value": "0x1" + }, + "7094": { + "op": "PUSH1", + "value": "0xA0" + }, + "7096": { + "op": "SHL" + }, + "7097": { + "fn": "TokenHandler._getToken", + "offset": [ + 1836, + 1863 + ], + "op": "DUP3", + "path": "69" + }, + "7098": { + "fn": "TokenHandler._getToken", + "offset": [ + 1836, + 1863 + ], + "op": "DIV", + "path": "69" + }, + "7099": { + "fn": "TokenHandler._getToken", + "offset": [ + 1836, + 1863 + ], + "op": "DUP2", + "path": "69" + }, + "7100": { + "fn": "TokenHandler._getToken", + "offset": [ + 1836, + 1863 + ], + "op": "AND", + "path": "69" + }, + "7101": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ISZERO", + "path": "69" + }, + "7102": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ISZERO", + "path": "69" + }, + "7103": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7104": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP4", + "path": "69" + }, + "7105": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ADD", + "path": "69" + }, + "7106": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7107": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP1", + "path": "69" + }, + "7108": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7109": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MSTORE", + "path": "69" + }, + "7110": { + "op": "PUSH1", + "value": "0x1" + }, + "7112": { + "op": "PUSH1", + "value": "0xB0" + }, + "7114": { + "op": "SHL" + }, + "7115": { + "fn": "TokenHandler._getToken", + "offset": [ + 1956, + 1982 + ], + "op": "DUP2", + "path": "69" + }, + "7116": { + "fn": "TokenHandler._getToken", + "offset": [ + 1956, + 1982 + ], + "op": "DIV", + "path": "69" + }, + "7117": { + "fn": "TokenHandler._getToken", + "offset": [ + 1956, + 1982 + ], + "op": "DUP5", + "path": "69" + }, + "7118": { + "fn": "TokenHandler._getToken", + "offset": [ + 1956, + 1982 + ], + "op": "AND", + "path": "69" + }, + "7119": { + "fn": "TokenHandler._getToken", + "offset": [ + 1952, + 1954 + ], + "op": "PUSH1", + "path": "69", + "value": "0xA" + }, + "7121": { + "fn": "TokenHandler._getToken", + "offset": [ + 1952, + 1982 + ], + "op": "EXP", + "path": "69" + }, + "7122": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7123": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP3", + "path": "69" + }, + "7124": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ADD", + "path": "69" + }, + "7125": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7126": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP1", + "path": "69" + }, + "7127": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7128": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MSTORE", + "path": "69" + }, + "7129": { + "fn": "TokenHandler._getToken", + "offset": [ + 1540, + 1634 + ], + "op": "SWAP4", + "path": "69" + }, + "7130": { + "fn": "TokenHandler._getToken", + "offset": [ + 1540, + 1634 + ], + "op": "SWAP5", + "path": "69" + }, + "7131": { + "op": "POP" + }, + "7132": { + "fn": "TokenHandler._getToken", + "offset": [ + 1680, + 1709 + ], + "op": "SWAP3", + "path": "69" + }, + "7133": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP2", + "path": "69" + }, + "7134": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7136": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP4", + "path": "69" + }, + "7137": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ADD", + "path": "69" + }, + "7138": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP2", + "path": "69" + }, + "7139": { + "op": "PUSH1", + "value": "0x1" + }, + "7141": { + "op": "PUSH1", + "value": "0xA8" + }, + "7143": { + "op": "SHL" + }, + "7144": { + "fn": "TokenHandler._getToken", + "offset": [ + 2012, + 2034 + ], + "op": "SWAP1", + "path": "69" + }, + "7145": { + "fn": "TokenHandler._getToken", + "offset": [ + 2012, + 2034 + ], + "op": "SWAP2", + "path": "69" + }, + "7146": { + "fn": "TokenHandler._getToken", + "offset": [ + 2012, + 2034 + ], + "op": "DIV", + "path": "69" + }, + "7147": { + "fn": "TokenHandler._getToken", + "offset": [ + 2012, + 2034 + ], + "op": "AND", + "path": "69" + }, + "7148": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7150": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP2", + "path": "69" + }, + "7151": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "GT", + "path": "69" + }, + "7152": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ISZERO", + "path": "69" + }, + "7153": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1BF6" + }, + "7156": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "JUMPI", + "path": "69" + }, + "7157": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "INVALID", + "path": "69" + }, + "7158": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7159": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "DUP2", + "path": "69" + }, + "7160": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MSTORE", + "path": "69" + }, + "7161": { + "fn": "TokenHandler._getToken", + "offset": [ + 2074, + 2107 + ], + "op": "SWAP2", + "path": "69" + }, + "7162": { + "fn": "TokenHandler._getToken", + "offset": [ + 2074, + 2107 + ], + "op": "SLOAD", + "path": "69" + }, + "7163": { + "op": "PUSH1", + "value": "0x1" + }, + "7165": { + "op": "PUSH1", + "value": "0xB8" + }, + "7167": { + "op": "SHL" + }, + "7168": { + "fn": "TokenHandler._getToken", + "offset": [ + 2074, + 2107 + ], + "op": "SWAP1", + "path": "69" + }, + "7169": { + "fn": "TokenHandler._getToken", + "offset": [ + 2074, + 2107 + ], + "op": "DIV", + "path": "69" + }, + "7170": { + "fn": "TokenHandler._getToken", + "offset": [ + 2074, + 2107 + ], + "op": "PUSH9", + "path": "69", + "value": "0xFFFFFFFFFFFFFFFFFF" + }, + "7180": { + "fn": "TokenHandler._getToken", + "offset": [ + 2074, + 2107 + ], + "op": "AND", + "path": "69" + }, + "7181": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "PUSH1", + "path": "69", + "value": "0x20" + }, + "7183": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP1", + "path": "69" + }, + "7184": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP3", + "path": "69" + }, + "7185": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "ADD", + "path": "69" + }, + "7186": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP2", + "path": "69" + }, + "7187": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP1", + "path": "69" + }, + "7188": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP2", + "path": "69" + }, + "7189": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "MSTORE", + "path": "69" + }, + "7190": { + "fn": "TokenHandler._getToken", + "offset": [ + 1739, + 2122 + ], + "op": "SWAP5", + "path": "69" + }, + "7191": { + "fn": "TokenHandler._getToken", + "offset": [ + 1438, + 2129 + ], + "op": "SWAP4", + "path": "69" + }, + "7192": { + "op": "POP" + }, + "7193": { + "op": "POP" + }, + "7194": { + "op": "POP" + }, + "7195": { + "op": "POP" + }, + "7196": { + "fn": "TokenHandler._getToken", + "jump": "o", + "offset": [ + 1438, + 2129 + ], + "op": "JUMP", + "path": "69" + }, + "7197": { + "fn": "SafeInt256.div", + "offset": [ + 1022, + 1261 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7198": { + "fn": "SafeInt256.div", + "offset": [ + 1078, + 1086 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "7200": { + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1109 + ], + "op": "DUP2", + "path": "94", + "statement": 156 + }, + "7201": { + "op": "PUSH1", + "value": "0x0" + }, + "7203": { + "op": "NOT" + }, + "7204": { + "branch": 531, + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1115 + ], + "op": "EQ", + "path": "94" + }, + "7205": { + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1135 + ], + "op": "DUP1", + "path": "94" + }, + "7206": { + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1135 + ], + "op": "ISZERO", + "path": "94" + }, + "7207": { + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1135 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1C33" + }, + "7210": { + "branch": 531, + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1135 + ], + "op": "JUMPI", + "path": "94" + }, + "7211": { + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1135 + ], + "op": "POP", + "path": "94" + }, + "7212": { + "op": "PUSH1", + "value": "0x1" + }, + "7214": { + "op": "PUSH1", + "value": "0xFF" + }, + "7216": { + "op": "SHL" + }, + "7217": { + "fn": "SafeInt256.div", + "offset": [ + 1119, + 1120 + ], + "op": "DUP4", + "path": "94" + }, + "7218": { + "branch": 532, + "fn": "SafeInt256.div", + "offset": [ + 1119, + 1135 + ], + "op": "EQ", + "path": "94" + }, + "7219": { + "fn": "SafeInt256.div", + "offset": [ + 1108, + 1135 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7220": { + "fn": "SafeInt256.div", + "offset": [ + 1106, + 1136 + ], + "op": "ISZERO", + "path": "94" + }, + "7221": { + "fn": "SafeInt256.div", + "offset": [ + 1098, + 1137 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1C3D" + }, + "7224": { + "branch": 532, + "fn": "SafeInt256.div", + "offset": [ + 1098, + 1137 + ], + "op": "JUMPI", + "path": "94" + }, + "7225": { + "fn": "SafeInt256.div", + "offset": [ + 1098, + 1137 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "7227": { + "fn": "SafeInt256.div", + "offset": [ + 1098, + 1137 + ], + "op": "DUP1", + "path": "94" + }, + "7228": { + "fn": "SafeInt256.div", + "offset": [ + 1098, + 1137 + ], + "op": "REVERT", + "path": "94" + }, + "7229": { + "fn": "SafeInt256.div", + "offset": [ + 1098, + 1137 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7230": { + "fn": "SafeInt256.div", + "offset": [ + 1253, + 1254 + ], + "op": "DUP2", + "path": "94", + "statement": 157 + }, + "7231": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1250 + ], + "op": "DUP4", + "path": "94" + }, + "7232": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "DUP2", + "path": "94" + }, + "7233": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1C46" + }, + "7236": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "JUMPI", + "path": "94" + }, + "7237": { + "dev": "Division by zero", + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "INVALID", + "path": "94" + }, + "7238": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7239": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "SDIV", + "path": "94" + }, + "7240": { + "fn": "SafeInt256.div", + "offset": [ + 1249, + 1254 + ], + "op": "SWAP4", + "path": "94" + }, + "7241": { + "fn": "SafeInt256.div", + "offset": [ + 1022, + 1261 + ], + "op": "SWAP3", + "path": "94" + }, + "7242": { + "op": "POP" + }, + "7243": { + "op": "POP" + }, + "7244": { + "op": "POP" + }, + "7245": { + "fn": "SafeInt256.div", + "jump": "o", + "offset": [ + 1022, + 1261 + ], + "op": "JUMP", + "path": "94" + }, + "7246": { + "fn": "TokenHandler.transfer", + "offset": [ + 9098, + 10939 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7247": { + "fn": "TokenHandler.transfer", + "offset": [ + 9524, + 9543 + ], + "op": "DUP1", + "path": "69", + "statement": 158 + }, + "7248": { + "fn": "TokenHandler.transfer", + "offset": [ + 9577, + 9593 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7250": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9563 + ], + "op": "DUP6", + "path": "69" + }, + "7251": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9573 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7253": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9573 + ], + "op": "ADD", + "path": "69" + }, + "7254": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9573 + ], + "op": "MLOAD", + "path": "69" + }, + "7255": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7257": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "DUP2", + "path": "69" + }, + "7258": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "GT", + "path": "69" + }, + "7259": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "ISZERO", + "path": "69" + }, + "7260": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1C61" + }, + "7263": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "JUMPI", + "path": "69" + }, + "7264": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "INVALID", + "path": "69" + }, + "7265": { + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7266": { + "branch": 543, + "fn": "TokenHandler.transfer", + "offset": [ + 9558, + 9593 + ], + "op": "EQ", + "path": "69" + }, + "7267": { + "fn": "TokenHandler.transfer", + "offset": [ + 9554, + 10038 + ], + "op": "ISZERO", + "path": "69" + }, + "7268": { + "fn": "TokenHandler.transfer", + "offset": [ + 9554, + 10038 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1C86" + }, + "7271": { + "branch": 543, + "fn": "TokenHandler.transfer", + "offset": [ + 9554, + 10038 + ], + "op": "JUMPI", + "path": "69" + }, + "7272": { + "fn": "TokenHandler.transfer", + "offset": [ + 9609, + 9637 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7274": { + "fn": "TokenHandler.transfer", + "offset": [ + 9640, + 9670 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1C72" + }, + "7277": { + "fn": "TokenHandler.transfer", + "offset": [ + 9659, + 9669 + ], + "op": "DUP5", + "path": "69" + }, + "7278": { + "fn": "TokenHandler.transfer", + "offset": [ + 9640, + 9658 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF3B" + }, + "7281": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 9640, + 9670 + ], + "op": "JUMP", + "path": "69" + }, + "7282": { + "fn": "TokenHandler.transfer", + "offset": [ + 9640, + 9670 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7283": { + "fn": "TokenHandler.transfer", + "offset": [ + 9609, + 9670 + ], + "op": "SWAP1", + "path": "69" + }, + "7284": { + "fn": "TokenHandler.transfer", + "offset": [ + 9609, + 9670 + ], + "op": "POP", + "path": "69" + }, + "7285": { + "fn": "TokenHandler.transfer", + "offset": [ + 9886, + 10027 + ], + "op": "PUSH2", + "path": "69", + "statement": 159, + "value": "0x1C82" + }, + "7288": { + "fn": "TokenHandler.transfer", + "offset": [ + 9948, + 9963 + ], + "op": "DUP2", + "path": "69" + }, + "7289": { + "fn": "TokenHandler.transfer", + "offset": [ + 9948, + 9976 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7291": { + "fn": "TokenHandler.transfer", + "offset": [ + 9948, + 9976 + ], + "op": "ADD", + "path": "69" + }, + "7292": { + "fn": "TokenHandler.transfer", + "offset": [ + 9948, + 9976 + ], + "op": "MLOAD", + "path": "69" + }, + "7293": { + "fn": "TokenHandler.transfer", + "offset": [ + 9994, + 10013 + ], + "op": "DUP5", + "path": "69" + }, + "7294": { + "fn": "TokenHandler.transfer", + "offset": [ + 9886, + 9930 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2BF7" + }, + "7297": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 9886, + 10027 + ], + "op": "JUMP", + "path": "69" + }, + "7298": { + "fn": "TokenHandler.transfer", + "offset": [ + 9886, + 10027 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7299": { + "fn": "TokenHandler.transfer", + "offset": [ + 9864, + 10027 + ], + "op": "SWAP3", + "path": "69" + }, + "7300": { + "fn": "TokenHandler.transfer", + "offset": [ + 9864, + 10027 + ], + "op": "POP", + "path": "69" + }, + "7301": { + "fn": "TokenHandler.transfer", + "offset": [ + 9554, + 10038 + ], + "op": "POP", + "path": "69" + }, + "7302": { + "fn": "TokenHandler.transfer", + "offset": [ + 9554, + 10038 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7303": { + "fn": "TokenHandler.transfer", + "offset": [ + 10074, + 10075 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7305": { + "fn": "TokenHandler.transfer", + "offset": [ + 10052, + 10071 + ], + "op": "DUP3", + "path": "69" + }, + "7306": { + "branch": 544, + "fn": "TokenHandler.transfer", + "offset": [ + 10052, + 10075 + ], + "op": "SGT", + "path": "69" + }, + "7307": { + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "ISZERO", + "path": "69" + }, + "7308": { + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1CB2" + }, + "7311": { + "branch": 544, + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "JUMPI", + "path": "69" + }, + "7312": { + "fn": "TokenHandler.transfer", + "offset": [ + 10147, + 10164 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7314": { + "fn": "TokenHandler.transfer", + "offset": [ + 10167, + 10221 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1C9C" + }, + "7317": { + "fn": "TokenHandler.transfer", + "offset": [ + 10176, + 10181 + ], + "op": "DUP7", + "path": "69" + }, + "7318": { + "fn": "TokenHandler.transfer", + "offset": [ + 10183, + 10190 + ], + "op": "DUP7", + "path": "69" + }, + "7319": { + "fn": "TokenHandler.transfer", + "offset": [ + 10200, + 10219 + ], + "op": "DUP6", + "path": "69" + }, + "7320": { + "fn": "TokenHandler.transfer", + "offset": [ + 10167, + 10175 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2C89" + }, + "7323": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 10167, + 10221 + ], + "op": "JUMP", + "path": "69" + }, + "7324": { + "fn": "TokenHandler.transfer", + "offset": [ + 10167, + 10221 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7325": { + "fn": "TokenHandler.transfer", + "offset": [ + 10147, + 10221 + ], + "op": "SWAP1", + "path": "69" + }, + "7326": { + "fn": "TokenHandler.transfer", + "offset": [ + 10147, + 10221 + ], + "op": "POP", + "path": "69" + }, + "7327": { + "fn": "TokenHandler.transfer", + "offset": [ + 10386, + 10391 + ], + "op": "DUP6", + "path": "69" + }, + "7328": { + "fn": "TokenHandler.transfer", + "offset": [ + 10386, + 10406 + ], + "op": "PUSH1", + "path": "69", + "value": "0x20" + }, + "7330": { + "fn": "TokenHandler.transfer", + "offset": [ + 10386, + 10406 + ], + "op": "ADD", + "path": "69" + }, + "7331": { + "branch": 545, + "fn": "TokenHandler.transfer", + "offset": [ + 10386, + 10406 + ], + "op": "MLOAD", + "path": "69" + }, + "7332": { + "fn": "TokenHandler.transfer", + "offset": [ + 10382, + 10443 + ], + "op": "ISZERO", + "path": "69" + }, + "7333": { + "fn": "TokenHandler.transfer", + "offset": [ + 10382, + 10443 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1CAC" + }, + "7336": { + "branch": 545, + "fn": "TokenHandler.transfer", + "offset": [ + 10382, + 10443 + ], + "op": "JUMPI", + "path": "69" + }, + "7337": { + "fn": "TokenHandler.transfer", + "offset": [ + 10433, + 10443 + ], + "op": "DUP1", + "path": "69", + "statement": 160 + }, + "7338": { + "fn": "TokenHandler.transfer", + "offset": [ + 10408, + 10443 + ], + "op": "SWAP2", + "path": "69" + }, + "7339": { + "fn": "TokenHandler.transfer", + "offset": [ + 10408, + 10443 + ], + "op": "POP", + "path": "69" + }, + "7340": { + "fn": "TokenHandler.transfer", + "offset": [ + 10382, + 10443 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7341": { + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "POP", + "path": "69" + }, + "7342": { + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF7F" + }, + "7345": { + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "JUMP", + "path": "69" + }, + "7346": { + "fn": "TokenHandler.transfer", + "offset": [ + 10048, + 10933 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7347": { + "fn": "TokenHandler.transfer", + "offset": [ + 10483, + 10498 + ], + "op": "PUSH1", + "path": "69", + "value": "0x3" + }, + "7349": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10469 + ], + "op": "DUP6", + "path": "69" + }, + "7350": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10479 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7352": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10479 + ], + "op": "ADD", + "path": "69" + }, + "7353": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10479 + ], + "op": "MLOAD", + "path": "69" + }, + "7354": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7356": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "DUP2", + "path": "69" + }, + "7357": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "GT", + "path": "69" + }, + "7358": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "ISZERO", + "path": "69" + }, + "7359": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1CC4" + }, + "7362": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "JUMPI", + "path": "69" + }, + "7363": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "INVALID", + "path": "69" + }, + "7364": { + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7365": { + "branch": 546, + "fn": "TokenHandler.transfer", + "offset": [ + 10464, + 10498 + ], + "op": "EQ", + "path": "69" + }, + "7366": { + "fn": "TokenHandler.transfer", + "offset": [ + 10460, + 10933 + ], + "op": "ISZERO", + "path": "69" + }, + "7367": { + "fn": "TokenHandler.transfer", + "offset": [ + 10460, + 10933 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1CE1" + }, + "7370": { + "branch": 546, + "fn": "TokenHandler.transfer", + "offset": [ + 10460, + 10933 + ], + "op": "JUMPI", + "path": "69" + }, + "7371": { + "fn": "TokenHandler.transfer", + "offset": [ + 10592, + 10672 + ], + "op": "PUSH2", + "path": "69", + "statement": 161, + "value": "0x1CDC" + }, + "7374": { + "fn": "TokenHandler.transfer", + "offset": [ + 10628, + 10635 + ], + "op": "DUP5", + "path": "69" + }, + "7375": { + "fn": "TokenHandler.transfer", + "offset": [ + 10645, + 10670 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1CD7" + }, + "7378": { + "fn": "TokenHandler.transfer", + "offset": [ + 10645, + 10664 + ], + "op": "DUP5", + "path": "69" + }, + "7379": { + "fn": "TokenHandler.transfer", + "offset": [ + 10645, + 10668 + ], + "op": "PUSH2", + "path": "69", + "value": "0xEE1" + }, + "7382": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 10645, + 10670 + ], + "op": "JUMP", + "path": "69" + }, + "7383": { + "fn": "TokenHandler.transfer", + "offset": [ + 10645, + 10670 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7384": { + "fn": "TokenHandler.transfer", + "offset": [ + 10592, + 10627 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D7C" + }, + "7387": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 10592, + 10672 + ], + "op": "JUMP", + "path": "69" + }, + "7388": { + "fn": "TokenHandler.transfer", + "offset": [ + 10592, + 10672 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7389": { + "fn": "TokenHandler.transfer", + "offset": [ + 10460, + 10933 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF7F" + }, + "7392": { + "fn": "TokenHandler.transfer", + "offset": [ + 10460, + 10933 + ], + "op": "JUMP", + "path": "69" + }, + "7393": { + "fn": "TokenHandler.transfer", + "offset": [ + 10460, + 10933 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7394": { + "fn": "TokenHandler.transfer", + "offset": [ + 10749, + 10767 + ], + "op": "DUP5", + "path": "69", + "statement": 162 + }, + "7395": { + "fn": "TokenHandler.transfer", + "offset": [ + 10749, + 10767 + ], + "op": "MLOAD", + "path": "69" + }, + "7396": { + "fn": "TokenHandler.transfer", + "offset": [ + 10703, + 10922 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF7F" + }, + "7399": { + "fn": "TokenHandler.transfer", + "offset": [ + 10703, + 10922 + ], + "op": "SWAP1", + "path": "69" + }, + "7400": { + "fn": "TokenHandler.transfer", + "offset": [ + 10785, + 10792 + ], + "op": "DUP6", + "path": "69" + }, + "7401": { + "fn": "TokenHandler.transfer", + "offset": [ + 10882, + 10907 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1CF1" + }, + "7404": { + "fn": "TokenHandler.transfer", + "offset": [ + 10882, + 10901 + ], + "op": "DUP6", + "path": "69" + }, + "7405": { + "fn": "TokenHandler.transfer", + "offset": [ + 10882, + 10905 + ], + "op": "PUSH2", + "path": "69", + "value": "0xEE1" + }, + "7408": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 10882, + 10907 + ], + "op": "JUMP", + "path": "69" + }, + "7409": { + "fn": "TokenHandler.transfer", + "offset": [ + 10882, + 10907 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7410": { + "fn": "TokenHandler.transfer", + "offset": [ + 10703, + 10731 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2DB7" + }, + "7413": { + "fn": "TokenHandler.transfer", + "jump": "i", + "offset": [ + 10703, + 10922 + ], + "op": "JUMP", + "path": "69" + }, + "7414": { + "fn": "SafeInt256.toUint", + "offset": [ + 2397, + 2514 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7415": { + "fn": "SafeInt256.toUint", + "offset": [ + 2446, + 2453 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "7417": { + "fn": "SafeInt256.toUint", + "offset": [ + 2478, + 2479 + ], + "op": "DUP1", + "path": "94", + "statement": 163 + }, + "7418": { + "fn": "SafeInt256.toUint", + "offset": [ + 2473, + 2474 + ], + "op": "DUP3", + "path": "94" + }, + "7419": { + "fn": "SafeInt256.toUint", + "offset": [ + 2473, + 2479 + ], + "op": "SLT", + "path": "94" + }, + "7420": { + "branch": 533, + "fn": "SafeInt256.toUint", + "offset": [ + 2473, + 2479 + ], + "op": "ISZERO", + "path": "94" + }, + "7421": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1D05" + }, + "7424": { + "branch": 533, + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "JUMPI", + "path": "94" + }, + "7425": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "7427": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "DUP1", + "path": "94" + }, + "7428": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "REVERT", + "path": "94" + }, + "7429": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7430": { + "op": "POP" + }, + "7431": { + "fn": "SafeInt256.toUint", + "offset": [ + 2505, + 2506 + ], + "op": "SWAP1", + "path": "94", + "statement": 164 + }, + "7432": { + "fn": "SafeInt256.toUint", + "jump": "o", + "offset": [ + 2397, + 2514 + ], + "op": "JUMP", + "path": "94" + }, + "7433": { + "fn": "TokenHandler.mint", + "offset": [ + 5788, + 7337 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7434": { + "fn": "TokenHandler.mint", + "offset": [ + 5898, + 5904 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7436": { + "fn": "TokenHandler.mint", + "offset": [ + 5898, + 5904 + ], + "op": "DUP1", + "path": "69" + }, + "7437": { + "fn": "TokenHandler.mint", + "offset": [ + 6273, + 6289 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7439": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6259 + ], + "op": "DUP6", + "path": "69" + }, + "7440": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6269 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7442": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6269 + ], + "op": "ADD", + "path": "69" + }, + "7443": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6269 + ], + "op": "MLOAD", + "path": "69" + }, + "7444": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7446": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "DUP2", + "path": "69" + }, + "7447": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "GT", + "path": "69" + }, + "7448": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "ISZERO", + "path": "69" + }, + "7449": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D1E" + }, + "7452": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "JUMPI", + "path": "69" + }, + "7453": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "INVALID", + "path": "69" + }, + "7454": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7455": { + "branch": 547, + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6289 + ], + "op": "EQ", + "path": "69" + }, + "7456": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6391 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D30" + }, + "7459": { + "branch": 547, + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6391 + ], + "op": "JUMPI", + "path": "69" + }, + "7460": { + "op": "PUSH4", + "value": "0x70A08231" + }, + "7465": { + "op": "PUSH1", + "value": "0xE0" + }, + "7467": { + "op": "SHL" + }, + "7468": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6391 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D39" + }, + "7471": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6391 + ], + "op": "JUMP", + "path": "69" + }, + "7472": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6391 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7473": { + "op": "PUSH4", + "value": "0xED1279F" + }, + "7478": { + "op": "PUSH1", + "value": "0xE1" + }, + "7480": { + "op": "SHL" + }, + "7481": { + "fn": "TokenHandler.mint", + "offset": [ + 6249, + 6391 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7482": { + "fn": "TokenHandler.mint", + "offset": [ + 6222, + 6391 + ], + "op": "SWAP1", + "path": "69" + }, + "7483": { + "fn": "TokenHandler.mint", + "offset": [ + 6222, + 6391 + ], + "op": "POP", + "path": "69" + }, + "7484": { + "fn": "TokenHandler.mint", + "offset": [ + 6410, + 6433 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7486": { + "fn": "TokenHandler.mint", + "offset": [ + 6436, + 6531 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D4C" + }, + "7489": { + "fn": "TokenHandler.mint", + "offset": [ + 6473, + 6483 + ], + "op": "DUP7", + "path": "69" + }, + "7490": { + "fn": "TokenHandler.mint", + "offset": [ + 6473, + 6496 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7492": { + "fn": "TokenHandler.mint", + "offset": [ + 6473, + 6496 + ], + "op": "ADD", + "path": "69" + }, + "7493": { + "fn": "TokenHandler.mint", + "offset": [ + 6473, + 6496 + ], + "op": "MLOAD", + "path": "69" + }, + "7494": { + "fn": "TokenHandler.mint", + "offset": [ + 6506, + 6510 + ], + "op": "ADDRESS", + "path": "69" + }, + "7495": { + "fn": "TokenHandler.mint", + "offset": [ + 6513, + 6530 + ], + "op": "DUP5", + "path": "69" + }, + "7496": { + "fn": "TokenHandler.mint", + "offset": [ + 6436, + 6472 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2E2E" + }, + "7499": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 6436, + 6531 + ], + "op": "JUMP", + "path": "69" + }, + "7500": { + "fn": "TokenHandler.mint", + "offset": [ + 6436, + 6531 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7501": { + "fn": "TokenHandler.mint", + "offset": [ + 6410, + 6531 + ], + "op": "SWAP1", + "path": "69" + }, + "7502": { + "op": "POP" + }, + "7503": { + "fn": "TokenHandler.mint", + "offset": [ + 6570, + 6586 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7505": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6556 + ], + "op": "DUP7", + "path": "69" + }, + "7506": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6566 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7508": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6566 + ], + "op": "ADD", + "path": "69" + }, + "7509": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6566 + ], + "op": "MLOAD", + "path": "69" + }, + "7510": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7512": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "DUP2", + "path": "69" + }, + "7513": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "GT", + "path": "69" + }, + "7514": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "ISZERO", + "path": "69" + }, + "7515": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D60" + }, + "7518": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "JUMPI", + "path": "69" + }, + "7519": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "INVALID", + "path": "69" + }, + "7520": { + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7521": { + "branch": 548, + "fn": "TokenHandler.mint", + "offset": [ + 6546, + 6586 + ], + "op": "EQ", + "path": "69" + }, + "7522": { + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "ISZERO", + "path": "69" + }, + "7523": { + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D87" + }, + "7526": { + "branch": 548, + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "JUMPI", + "path": "69" + }, + "7527": { + "fn": "TokenHandler.mint", + "offset": [ + 6602, + 6630 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7529": { + "fn": "TokenHandler.mint", + "offset": [ + 6633, + 6663 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D75" + }, + "7532": { + "fn": "TokenHandler.mint", + "offset": [ + 6652, + 6662 + ], + "op": "DUP7", + "path": "69" + }, + "7533": { + "fn": "TokenHandler.mint", + "offset": [ + 6633, + 6663 + ], + "op": "PUSH2", + "path": "69", + "value": "0xFFFF" + }, + "7536": { + "fn": "TokenHandler.mint", + "offset": [ + 6633, + 6663 + ], + "op": "AND", + "path": "69" + }, + "7537": { + "fn": "TokenHandler.mint", + "offset": [ + 6633, + 6651 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF3B" + }, + "7540": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 6633, + 6663 + ], + "op": "JUMP", + "path": "69" + }, + "7541": { + "fn": "TokenHandler.mint", + "offset": [ + 6633, + 6663 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7542": { + "fn": "TokenHandler.mint", + "offset": [ + 6602, + 6663 + ], + "op": "SWAP1", + "path": "69" + }, + "7543": { + "fn": "TokenHandler.mint", + "offset": [ + 6602, + 6663 + ], + "op": "POP", + "path": "69" + }, + "7544": { + "fn": "TokenHandler.mint", + "offset": [ + 6677, + 6736 + ], + "op": "PUSH2", + "path": "69", + "statement": 165, + "value": "0x1D81" + }, + "7547": { + "fn": "TokenHandler.mint", + "offset": [ + 6694, + 6709 + ], + "op": "DUP2", + "path": "69" + }, + "7548": { + "fn": "TokenHandler.mint", + "offset": [ + 6711, + 6735 + ], + "op": "DUP7", + "path": "69" + }, + "7549": { + "fn": "TokenHandler.mint", + "offset": [ + 6677, + 6693 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2F40" + }, + "7552": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 6677, + 6736 + ], + "op": "JUMP", + "path": "69" + }, + "7553": { + "fn": "TokenHandler.mint", + "offset": [ + 6677, + 6736 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7554": { + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "POP", + "path": "69" + }, + "7555": { + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DCA" + }, + "7558": { + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "JUMP", + "path": "69" + }, + "7559": { + "fn": "TokenHandler.mint", + "offset": [ + 6542, + 7059 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7560": { + "fn": "TokenHandler.mint", + "offset": [ + 6781, + 6797 + ], + "op": "PUSH1", + "path": "69", + "value": "0x1" + }, + "7562": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6767 + ], + "op": "DUP7", + "path": "69" + }, + "7563": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6777 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7565": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6777 + ], + "op": "ADD", + "path": "69" + }, + "7566": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6777 + ], + "op": "MLOAD", + "path": "69" + }, + "7567": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7569": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "DUP2", + "path": "69" + }, + "7570": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "GT", + "path": "69" + }, + "7571": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "ISZERO", + "path": "69" + }, + "7572": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1D99" + }, + "7575": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "JUMPI", + "path": "69" + }, + "7576": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "INVALID", + "path": "69" + }, + "7577": { + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7578": { + "branch": 549, + "fn": "TokenHandler.mint", + "offset": [ + 6757, + 6797 + ], + "op": "EQ", + "path": "69" + }, + "7579": { + "fn": "TokenHandler.mint", + "offset": [ + 6753, + 7059 + ], + "op": "ISZERO", + "path": "69" + }, + "7580": { + "fn": "TokenHandler.mint", + "offset": [ + 6753, + 7059 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DA9" + }, + "7583": { + "branch": 549, + "fn": "TokenHandler.mint", + "offset": [ + 6753, + 7059 + ], + "op": "JUMPI", + "path": "69" + }, + "7584": { + "fn": "TokenHandler.mint", + "offset": [ + 6813, + 6871 + ], + "op": "PUSH2", + "path": "69", + "statement": 166, + "value": "0x1D81" + }, + "7587": { + "fn": "TokenHandler.mint", + "offset": [ + 6834, + 6844 + ], + "op": "DUP7", + "path": "69" + }, + "7588": { + "fn": "TokenHandler.mint", + "offset": [ + 6846, + 6870 + ], + "op": "DUP6", + "path": "69" + }, + "7589": { + "fn": "TokenHandler.mint", + "offset": [ + 6813, + 6833 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2FAB" + }, + "7592": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 6813, + 6871 + ], + "op": "JUMP", + "path": "69" + }, + "7593": { + "fn": "TokenHandler.mint", + "offset": [ + 6753, + 7059 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7594": { + "fn": "TokenHandler.mint", + "offset": [ + 6916, + 6930 + ], + "op": "PUSH1", + "path": "69", + "value": "0x2" + }, + "7596": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6902 + ], + "op": "DUP7", + "path": "69" + }, + "7597": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6912 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "7599": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6912 + ], + "op": "ADD", + "path": "69" + }, + "7600": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6912 + ], + "op": "MLOAD", + "path": "69" + }, + "7601": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "7603": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "DUP2", + "path": "69" + }, + "7604": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "GT", + "path": "69" + }, + "7605": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "ISZERO", + "path": "69" + }, + "7606": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DBB" + }, + "7609": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "JUMPI", + "path": "69" + }, + "7610": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "INVALID", + "path": "69" + }, + "7611": { + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7612": { + "branch": 550, + "fn": "TokenHandler.mint", + "offset": [ + 6892, + 6930 + ], + "op": "EQ", + "path": "69" + }, + "7613": { + "fn": "TokenHandler.mint", + "offset": [ + 6888, + 7059 + ], + "op": "ISZERO", + "path": "69" + }, + "7614": { + "fn": "TokenHandler.mint", + "offset": [ + 6888, + 7059 + ], + "op": "PUSH2", + "path": "69", + "value": "0x7B" + }, + "7617": { + "branch": 550, + "fn": "TokenHandler.mint", + "jump_revert": true, + "offset": [ + 7013, + 7021 + ], + "op": "JUMPI", + "path": "69" + }, + "7618": { + "fn": "TokenHandler.mint", + "offset": [ + 6946, + 6982 + ], + "op": "PUSH2", + "path": "69", + "statement": 167, + "value": "0x1DCA" + }, + "7621": { + "fn": "TokenHandler.mint", + "offset": [ + 6971, + 6981 + ], + "op": "DUP7", + "path": "69" + }, + "7622": { + "fn": "TokenHandler.mint", + "offset": [ + 6946, + 6970 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3057" + }, + "7625": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 6946, + 6982 + ], + "op": "JUMP", + "path": "69" + }, + "7626": { + "fn": "TokenHandler.mint", + "offset": [ + 6946, + 6982 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7627": { + "fn": "TokenHandler.mint", + "offset": [ + 7069, + 7090 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7629": { + "fn": "TokenHandler.mint", + "offset": [ + 7093, + 7188 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DDB" + }, + "7632": { + "fn": "TokenHandler.mint", + "offset": [ + 7130, + 7140 + ], + "op": "DUP8", + "path": "69" + }, + "7633": { + "fn": "TokenHandler.mint", + "offset": [ + 7130, + 7153 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7635": { + "fn": "TokenHandler.mint", + "offset": [ + 7130, + 7153 + ], + "op": "ADD", + "path": "69" + }, + "7636": { + "fn": "TokenHandler.mint", + "offset": [ + 7130, + 7153 + ], + "op": "MLOAD", + "path": "69" + }, + "7637": { + "fn": "TokenHandler.mint", + "offset": [ + 7163, + 7167 + ], + "op": "ADDRESS", + "path": "69" + }, + "7638": { + "fn": "TokenHandler.mint", + "offset": [ + 7170, + 7187 + ], + "op": "DUP6", + "path": "69" + }, + "7639": { + "fn": "TokenHandler.mint", + "offset": [ + 7093, + 7129 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2E2E" + }, + "7642": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 7093, + 7188 + ], + "op": "JUMP", + "path": "69" + }, + "7643": { + "fn": "TokenHandler.mint", + "offset": [ + 7093, + 7188 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7644": { + "fn": "TokenHandler.mint", + "offset": [ + 7069, + 7188 + ], + "op": "SWAP1", + "path": "69" + }, + "7645": { + "op": "POP" + }, + "7646": { + "fn": "TokenHandler.mint", + "offset": [ + 7278, + 7330 + ], + "op": "PUSH2", + "path": "69", + "statement": 168, + "value": "0x1DEF" + }, + "7649": { + "fn": "TokenHandler.mint", + "offset": [ + 7295, + 7329 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DEA" + }, + "7652": { + "fn": "TokenHandler.mint", + "offset": [ + 7069, + 7188 + ], + "op": "DUP3", + "path": "69" + }, + "7653": { + "fn": "TokenHandler.mint", + "offset": [ + 7313, + 7328 + ], + "op": "DUP5", + "path": "69" + }, + "7654": { + "fn": "TokenHandler.mint", + "offset": [ + 7295, + 7312 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3096" + }, + "7657": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 7295, + 7329 + ], + "op": "JUMP", + "path": "69" + }, + "7658": { + "fn": "TokenHandler.mint", + "offset": [ + 7295, + 7329 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7659": { + "fn": "TokenHandler.mint", + "offset": [ + 7278, + 7294 + ], + "op": "PUSH2", + "path": "69", + "value": "0x264D" + }, + "7662": { + "fn": "TokenHandler.mint", + "jump": "i", + "offset": [ + 7278, + 7330 + ], + "op": "JUMP", + "path": "69" + }, + "7663": { + "fn": "TokenHandler.mint", + "offset": [ + 7278, + 7330 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7664": { + "fn": "TokenHandler.mint", + "offset": [ + 7271, + 7330 + ], + "op": "SWAP8", + "path": "69" + }, + "7665": { + "fn": "TokenHandler.mint", + "offset": [ + 5788, + 7337 + ], + "op": "SWAP7", + "path": "69" + }, + "7666": { + "op": "POP" + }, + "7667": { + "op": "POP" + }, + "7668": { + "op": "POP" + }, + "7669": { + "op": "POP" + }, + "7670": { + "op": "POP" + }, + "7671": { + "op": "POP" + }, + "7672": { + "op": "POP" + }, + "7673": { + "fn": "TokenHandler.mint", + "jump": "o", + "offset": [ + 5788, + 7337 + ], + "op": "JUMP", + "path": "69" + }, + "7674": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 12920, + 13714 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7675": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13005, + 13011 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "7677": { + "offset": [ + 429, + 432 + ], + "op": "PUSH4", + "path": "60", + "value": "0x5F5E100" + }, + "7682": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13557, + 13562 + ], + "op": "DUP4", + "path": "69" + }, + "7683": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13557, + 13571 + ], + "op": "PUSH1", + "path": "69", + "value": "0x40" + }, + "7685": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13557, + 13571 + ], + "op": "ADD", + "path": "69" + }, + "7686": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13557, + 13571 + ], + "op": "MLOAD", + "path": "69" + }, + "7687": { + "branch": 551, + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13557, + 13609 + ], + "op": "EQ", + "path": "69" + }, + "7688": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13553, + 13624 + ], + "op": "ISZERO", + "path": "69" + }, + "7689": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13553, + 13624 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1E13" + }, + "7692": { + "branch": 551, + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13553, + 13624 + ], + "op": "JUMPI", + "path": "69" + }, + "7693": { + "op": "POP" + }, + "7694": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13618, + 13624 + ], + "op": "DUP1", + "path": "69", + "statement": 169 + }, + "7695": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13611, + 13624 + ], + "op": "PUSH2", + "path": "69", + "value": "0xEDB" + }, + "7698": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13611, + 13624 + ], + "op": "JUMP", + "path": "69" + }, + "7699": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13553, + 13624 + ], + "op": "JUMPDEST", + "path": "69" + }, + "7700": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13692, + 13706 + ], + "op": "PUSH1", + "path": "69", + "statement": 170, + "value": "0x40" + }, + "7702": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13692, + 13706 + ], + "op": "DUP4", + "path": "69" + }, + "7703": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13692, + 13706 + ], + "op": "ADD", + "path": "69" + }, + "7704": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13692, + 13706 + ], + "op": "MLOAD", + "path": "69" + }, + "7705": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13641, + 13707 + ], + "op": "PUSH2", + "path": "69", + "value": "0xAA3" + }, + "7708": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13641, + 13707 + ], + "op": "SWAP1", + "path": "69" + }, + "7709": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13641, + 13687 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF79" + }, + "7712": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13641, + 13647 + ], + "op": "DUP5", + "path": "69" + }, + "7713": { + "offset": [ + 429, + 432 + ], + "op": "PUSH4", + "path": "60", + "value": "0x5F5E100" + }, + "7718": { + "fn": "TokenHandler.convertToInternal", + "offset": [ + 13641, + 13651 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1A5E" + }, + "7721": { + "fn": "TokenHandler.convertToInternal", + "jump": "i", + "offset": [ + 13641, + 13687 + ], + "op": "JUMP", + "path": "69" + }, + "7722": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3253, + 4074 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7723": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3364, + 3370 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "7725": { + "branch": 405, + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3386, + 3410 + ], + "op": "DUP2", + "path": "70" + }, + "7726": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3382, + 3420 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1E39" + }, + "7729": { + "branch": 405, + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3382, + 3420 + ], + "op": "JUMPI", + "path": "70" + }, + "7730": { + "op": "POP" + }, + "7731": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3419, + 3420 + ], + "op": "PUSH1", + "path": "70", + "statement": 171, + "value": "0x0" + }, + "7733": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3412, + 3420 + ], + "op": "PUSH2", + "path": "70", + "value": "0xEDB" + }, + "7736": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3412, + 3420 + ], + "op": "JUMP", + "path": "70" + }, + "7737": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3382, + 3420 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7738": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3460, + 3461 + ], + "op": "PUSH1", + "path": "70", + "statement": 172, + "value": "0x0" + }, + "7740": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3438, + 3457 + ], + "op": "DUP3", + "path": "70" + }, + "7741": { + "branch": 406, + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3438, + 3461 + ], + "op": "SGT", + "path": "70" + }, + "7742": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3430, + 3462 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1E46" + }, + "7745": { + "branch": 406, + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3430, + 3462 + ], + "op": "JUMPI", + "path": "70" + }, + "7746": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3430, + 3462 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "7748": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3430, + 3462 + ], + "op": "DUP1", + "path": "70" + }, + "7749": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3430, + 3462 + ], + "op": "REVERT", + "path": "70" + }, + "7750": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3430, + 3462 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7751": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3473, + 3501 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "7753": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3504, + 3547 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1E51" + }, + "7756": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3536, + 3546 + ], + "op": "DUP5", + "path": "70" + }, + "7757": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3504, + 3535 + ], + "op": "PUSH2", + "path": "70", + "value": "0xF3B" + }, + "7760": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "jump": "i", + "offset": [ + 3504, + 3547 + ], + "op": "JUMP", + "path": "70" + }, + "7761": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3504, + 3547 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7762": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3473, + 3547 + ], + "op": "SWAP1", + "path": "70" + }, + "7763": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3473, + 3547 + ], + "op": "POP", + "path": "70" + }, + "7764": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3609, + 3621 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "7766": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3624, + 3681 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1E62" + }, + "7769": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3652, + 3667 + ], + "op": "DUP3", + "path": "70" + }, + "7770": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3652, + 3680 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "7772": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3652, + 3680 + ], + "op": "ADD", + "path": "70" + }, + "7773": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3652, + 3680 + ], + "op": "MLOAD", + "path": "70" + }, + "7774": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3624, + 3651 + ], + "op": "PUSH2", + "path": "70", + "value": "0x30F3" + }, + "7777": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "jump": "i", + "offset": [ + 3624, + 3681 + ], + "op": "JUMP", + "path": "70" + }, + "7778": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3624, + 3681 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7779": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3609, + 3681 + ], + "op": "SWAP1", + "path": "70" + }, + "7780": { + "op": "POP" + }, + "7781": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3800, + 3801 + ], + "op": "PUSH1", + "path": "70", + "value": "0x2" + }, + "7783": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3792, + 3801 + ], + "op": "DUP2", + "path": "70" + }, + "7784": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3792, + 3801 + ], + "op": "SDIV", + "path": "70" + }, + "7785": { + "offset": [ + 457, + 461 + ], + "op": "PUSH12", + "path": "70", + "value": "0x33B2E3C9FD0803CE8000000" + }, + "7798": { + "op": "PUSH1", + "value": "0x1" + }, + "7800": { + "op": "PUSH1", + "value": "0x1" + }, + "7802": { + "op": "PUSH1", + "value": "0xFF" + }, + "7804": { + "op": "SHL" + }, + "7805": { + "op": "SUB" + }, + "7806": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3916, + 3944 + ], + "op": "DUP3", + "path": "70", + "statement": 173 + }, + "7807": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3916, + 3944 + ], + "op": "SWAP1", + "path": "70" + }, + "7808": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3916, + 3944 + ], + "op": "SUB", + "path": "70" + }, + "7809": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3915, + 3951 + ], + "op": "SDIV", + "path": "70" + }, + "7810": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3892, + 3911 + ], + "op": "DUP6", + "path": "70" + }, + "7811": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3892, + 3951 + ], + "op": "SGT", + "path": "70" + }, + "7812": { + "branch": 407, + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3892, + 3951 + ], + "op": "ISZERO", + "path": "70" + }, + "7813": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3884, + 3952 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1E8D" + }, + "7816": { + "branch": 407, + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3884, + 3952 + ], + "op": "JUMPI", + "path": "70" + }, + "7817": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3884, + 3952 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "7819": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3884, + 3952 + ], + "op": "DUP1", + "path": "70" + }, + "7820": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3884, + 3952 + ], + "op": "REVERT", + "path": "70" + }, + "7821": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3884, + 3952 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7822": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4062, + 4067 + ], + "op": "DUP2", + "path": "70", + "statement": 174 + }, + "7823": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4049, + 4058 + ], + "op": "DUP2", + "path": "70" + }, + "7824": { + "offset": [ + 457, + 461 + ], + "op": "PUSH12", + "path": "70", + "value": "0x33B2E3C9FD0803CE8000000" + }, + "7837": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4021, + 4040 + ], + "op": "DUP8", + "path": "70" + }, + "7838": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4021, + 4046 + ], + "op": "MUL", + "path": "70" + }, + "7839": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4021, + 4058 + ], + "op": "ADD", + "path": "70" + }, + "7840": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "DUP2", + "path": "70" + }, + "7841": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1EA6" + }, + "7844": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "JUMPI", + "path": "70" + }, + "7845": { + "dev": "Division by zero", + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "INVALID", + "path": "70" + }, + "7846": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "JUMPDEST", + "path": "70" + }, + "7847": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "SDIV", + "path": "70" + }, + "7848": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 4020, + 4067 + ], + "op": "SWAP7", + "path": "70" + }, + "7849": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "offset": [ + 3253, + 4074 + ], + "op": "SWAP6", + "path": "70" + }, + "7850": { + "op": "POP" + }, + "7851": { + "op": "POP" + }, + "7852": { + "op": "POP" + }, + "7853": { + "op": "POP" + }, + "7854": { + "op": "POP" + }, + "7855": { + "op": "POP" + }, + "7856": { + "fn": "AaveHandler.convertToScaledBalanceExternal", + "jump": "o", + "offset": [ + 3253, + 4074 + ], + "op": "JUMP", + "path": "70" + }, + "7857": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7858": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10405, + 10440 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "7860": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10442, + 10476 + ], + "op": "DUP1", + "path": "67" + }, + "7861": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10488, + 10511 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "7863": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10514, + 10565 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1EC7" + }, + "7866": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10541, + 10553 + ], + "op": "DUP7", + "path": "67" + }, + "7867": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10541, + 10564 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "7869": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10541, + 10564 + ], + "op": "ADD", + "path": "67" + }, + "7870": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10541, + 10564 + ], + "op": "MLOAD", + "path": "67" + }, + "7871": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10514, + 10565 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "7874": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10514, + 10565 + ], + "op": "AND", + "path": "67" + }, + "7875": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10514, + 10540 + ], + "op": "PUSH2", + "path": "67", + "value": "0x10A4" + }, + "7878": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 10514, + 10565 + ], + "op": "JUMP", + "path": "67" + }, + "7879": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10514, + 10565 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7880": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10488, + 10565 + ], + "op": "SWAP1", + "path": "67" + }, + "7881": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10488, + 10565 + ], + "op": "POP", + "path": "67" + }, + "7882": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10785, + 10819 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "7884": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10910 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1EE2" + }, + "7887": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10863, + 10875 + ], + "op": "DUP8", + "path": "67" + }, + "7888": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10863, + 10909 + ], + "op": "PUSH1", + "path": "67", + "value": "0x80" + }, + "7890": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10863, + 10909 + ], + "op": "ADD", + "path": "67" + }, + "7891": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10863, + 10909 + ], + "op": "MLOAD", + "path": "67" + }, + "7892": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10844 + ], + "op": "DUP4", + "path": "67" + }, + "7893": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10862 + ], + "op": "PUSH2", + "path": "67", + "value": "0xF87" + }, + "7896": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10862 + ], + "op": "SWAP1", + "path": "67" + }, + "7897": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10910 + ], + "op": "SWAP2", + "path": "67" + }, + "7898": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10910 + ], + "op": "SWAP1", + "path": "67" + }, + "7899": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10910 + ], + "op": "PUSH4", + "path": "67", + "value": "0xFFFFFFFF" + }, + "7904": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10910 + ], + "op": "AND", + "path": "67" + }, + "7905": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 10834, + 10910 + ], + "op": "JUMP", + "path": "67" + }, + "7906": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10834, + 10910 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7907": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10785, + 10910 + ], + "op": "SWAP1", + "path": "67" + }, + "7908": { + "op": "POP" + }, + "7909": { + "branch": 469, + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10925, + 10957 + ], + "op": "DUP1", + "path": "67" + }, + "7910": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10921, + 12631 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1EF7" + }, + "7913": { + "branch": 469, + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10921, + 12631 + ], + "op": "JUMPI", + "path": "67" + }, + "7914": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10981, + 10982 + ], + "op": "PUSH1", + "path": "67", + "statement": 175, + "value": "0x0" + }, + "7916": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10984, + 10985 + ], + "op": "DUP1", + "path": "67" + }, + "7917": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "SWAP4", + "path": "67" + }, + "7918": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "POP", + "path": "67" + }, + "7919": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "SWAP4", + "path": "67" + }, + "7920": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "POP", + "path": "67" + }, + "7921": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "POP", + "path": "67" + }, + "7922": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "POP", + "path": "67" + }, + "7923": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F5F" + }, + "7926": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10973, + 10986 + ], + "op": "JUMP", + "path": "67" + }, + "7927": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10921, + 12631 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7928": { + "branch": 470, + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11025 + ], + "op": "DUP5", + "path": "67" + }, + "7929": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11060 + ], + "op": "DUP1", + "path": "67" + }, + "7930": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11060 + ], + "op": "ISZERO", + "path": "67" + }, + "7931": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11060 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F04" + }, + "7934": { + "branch": 470, + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11060 + ], + "op": "JUMPI", + "path": "67" + }, + "7935": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11060 + ], + "op": "POP", + "path": "67" + }, + "7936": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11059, + 11060 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "7938": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11029, + 11056 + ], + "op": "DUP2", + "path": "67" + }, + "7939": { + "branch": 471, + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11029, + 11060 + ], + "op": "SLT", + "path": "67" + }, + "7940": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11007, + 11060 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7941": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "ISZERO", + "path": "67" + }, + "7942": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F39" + }, + "7945": { + "branch": 471, + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "JUMPI", + "path": "67" + }, + "7946": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11694, + 11717 + ], + "op": "DUP7", + "path": "67", + "statement": 176 + }, + "7947": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11694, + 11717 + ], + "op": "MLOAD", + "path": "67" + }, + "7948": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F26" + }, + "7951": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "SWAP1", + "path": "67" + }, + "7952": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "7955": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "AND", + "path": "67" + }, + "7956": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11735, + 11742 + ], + "op": "DUP8", + "path": "67" + }, + "7957": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11814, + 11847 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F1D" + }, + "7960": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11814, + 11841 + ], + "op": "DUP5", + "path": "67" + }, + "7961": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11814, + 11845 + ], + "op": "PUSH2", + "path": "67", + "value": "0xEE1" + }, + "7964": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 11814, + 11847 + ], + "op": "JUMP", + "path": "67" + }, + "7965": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11814, + 11847 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7966": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11669 + ], + "op": "DUP6", + "path": "67" + }, + "7967": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11669 + ], + "op": "SWAP3", + "path": "67" + }, + "7968": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "SWAP2", + "path": "67" + }, + "7969": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "SWAP1", + "path": "67" + }, + "7970": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11676 + ], + "op": "PUSH2", + "path": "67", + "value": "0x317E" + }, + "7973": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 11659, + 11862 + ], + "op": "JUMP", + "path": "67" + }, + "7974": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11659, + 11862 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7975": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11628, + 11862 + ], + "op": "SWAP4", + "path": "67" + }, + "7976": { + "op": "POP" + }, + "7977": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12068, + 12125 + ], + "op": "PUSH2", + "path": "67", + "statement": 177, + "value": "0x1F32" + }, + "7980": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12068, + 12078 + ], + "op": "DUP3", + "path": "67" + }, + "7981": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12097, + 12124 + ], + "op": "DUP3", + "path": "67" + }, + "7982": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12068, + 12096 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1DFA" + }, + "7985": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 12068, + 12125 + ], + "op": "JUMP", + "path": "67" + }, + "7986": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12068, + 12125 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7987": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12038, + 12125 + ], + "op": "SWAP3", + "path": "67" + }, + "7988": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12038, + 12125 + ], + "op": "POP", + "path": "67" + }, + "7989": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F5C" + }, + "7992": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "JUMP", + "path": "67" + }, + "7993": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "JUMPDEST", + "path": "67" + }, + "7994": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12412, + 12435 + ], + "op": "DUP7", + "path": "67", + "statement": 178 + }, + "7995": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12412, + 12435 + ], + "op": "MLOAD", + "path": "67" + }, + "7996": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12465 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1F4D" + }, + "7999": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12465 + ], + "op": "SWAP1", + "path": "67" + }, + "8000": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12393 + ], + "op": "DUP4", + "path": "67" + }, + "8001": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12393 + ], + "op": "SWAP1", + "path": "67" + }, + "8002": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12403, + 12410 + ], + "op": "DUP9", + "path": "67" + }, + "8003": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12403, + 12410 + ], + "op": "SWAP1", + "path": "67" + }, + "8004": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12465 + ], + "op": "PUSH2", + "path": "67", + "value": "0xFFFF" + }, + "8007": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12465 + ], + "op": "AND", + "path": "67" + }, + "8008": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12437, + 12464 + ], + "op": "DUP5", + "path": "67" + }, + "8009": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12402 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1C4E" + }, + "8012": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 12383, + 12465 + ], + "op": "JUMP", + "path": "67" + }, + "8013": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12383, + 12465 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8014": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12352, + 12465 + ], + "op": "SWAP4", + "path": "67" + }, + "8015": { + "op": "POP" + }, + "8016": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12562, + 12620 + ], + "op": "PUSH2", + "path": "67", + "statement": 179, + "value": "0x1F59" + }, + "8019": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12562, + 12572 + ], + "op": "DUP3", + "path": "67" + }, + "8020": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12352, + 12465 + ], + "op": "DUP6", + "path": "67" + }, + "8021": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12562, + 12590 + ], + "op": "PUSH2", + "path": "67", + "value": "0x1DFA" + }, + "8024": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "i", + "offset": [ + 12562, + 12620 + ], + "op": "JUMP", + "path": "67" + }, + "8025": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12562, + 12620 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8026": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12532, + 12620 + ], + "op": "SWAP3", + "path": "67" + }, + "8027": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 12532, + 12620 + ], + "op": "POP", + "path": "67" + }, + "8028": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 11003, + 12631 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8029": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "POP", + "path": "67" + }, + "8030": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "POP", + "path": "67" + }, + "8031": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8032": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "SWAP4", + "path": "67" + }, + "8033": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "POP", + "path": "67" + }, + "8034": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "SWAP4", + "path": "67" + }, + "8035": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "SWAP2", + "path": "67" + }, + "8036": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "POP", + "path": "67" + }, + "8037": { + "fn": "BalanceHandler._finalizeTransfers", + "offset": [ + 10254, + 12637 + ], + "op": "POP", + "path": "67" + }, + "8038": { + "fn": "BalanceHandler._finalizeTransfers", + "jump": "o", + "offset": [ + 10254, + 12637 + ], + "op": "JUMP", + "path": "67" + }, + "8039": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8040": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4603, + 4626 + ], + "op": "DUP3", + "path": "68" + }, + "8041": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4603, + 4626 + ], + "op": "MLOAD", + "path": "68" + }, + "8042": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4470, + 4495 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8044": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4470, + 4495 + ], + "op": "SWAP1", + "path": "68" + }, + "8045": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4527, + 4542 + ], + "op": "TIMESTAMP", + "path": "68" + }, + "8046": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4527, + 4542 + ], + "op": "SWAP1", + "path": "68" + }, + "8047": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4470, + 4495 + ], + "op": "DUP3", + "path": "68" + }, + "8048": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4470, + 4495 + ], + "op": "SWAP1", + "path": "68" + }, + "8049": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4575, + 4627 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1F7D" + }, + "8052": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4575, + 4627 + ], + "op": "SWAP1", + "path": "68" + }, + "8053": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4575, + 4627 + ], + "op": "PUSH2", + "path": "68", + "value": "0xFFFF" + }, + "8056": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4575, + 4627 + ], + "op": "AND", + "path": "68" + }, + "8057": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4575, + 4602 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3214" + }, + "8060": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 4575, + 4627 + ], + "op": "JUMP", + "path": "68" + }, + "8061": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4575, + 4627 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8062": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4552, + 4627 + ], + "op": "SWAP1", + "path": "68" + }, + "8063": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4552, + 4627 + ], + "op": "POP", + "path": "68" + }, + "8064": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4795, + 4827 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8066": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4830, + 4968 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1F90" + }, + "8069": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4875, + 4887 + ], + "op": "DUP3", + "path": "68" + }, + "8070": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4901, + 4913 + ], + "op": "DUP9", + "path": "68" + }, + "8071": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4901, + 4935 + ], + "op": "PUSH1", + "path": "68", + "value": "0xC0" + }, + "8073": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4901, + 4935 + ], + "op": "ADD", + "path": "68" + }, + "8074": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4901, + 4935 + ], + "op": "MLOAD", + "path": "68" + }, + "8075": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4949, + 4958 + ], + "op": "DUP6", + "path": "68" + }, + "8076": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4830, + 4861 + ], + "op": "PUSH2", + "path": "68", + "value": "0x323A" + }, + "8079": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 4830, + 4968 + ], + "op": "JUMP", + "path": "68" + }, + "8080": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4830, + 4968 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8081": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4795, + 4968 + ], + "op": "SWAP1", + "path": "68" + }, + "8082": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4795, + 4968 + ], + "op": "POP", + "path": "68" + }, + "8083": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4999, + 5157 + ], + "op": "PUSH2", + "path": "68", + "statement": 180, + "value": "0x1F9E" + }, + "8086": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5039, + 5051 + ], + "op": "DUP8", + "path": "68" + }, + "8087": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5065, + 5077 + ], + "op": "DUP4", + "path": "68" + }, + "8088": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5091, + 5115 + ], + "op": "DUP4", + "path": "68" + }, + "8089": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5129, + 5147 + ], + "op": "DUP9", + "path": "68" + }, + "8090": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4999, + 5025 + ], + "op": "PUSH2", + "path": "68", + "value": "0x331D" + }, + "8093": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 4999, + 5157 + ], + "op": "JUMP", + "path": "68" + }, + "8094": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4999, + 5157 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8095": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4979, + 5157 + ], + "op": "SWAP4", + "path": "68" + }, + "8096": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4979, + 5157 + ], + "op": "POP", + "path": "68" + }, + "8097": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5234, + 5252 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8099": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5255, + 5303 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1FAB" + }, + "8102": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5290, + 5302 + ], + "op": "DUP4", + "path": "68" + }, + "8103": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5255, + 5289 + ], + "op": "PUSH2", + "path": "68", + "value": "0x344A" + }, + "8106": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 5255, + 5303 + ], + "op": "JUMP", + "path": "68" + }, + "8107": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5255, + 5303 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8108": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5234, + 5303 + ], + "op": "SWAP1", + "path": "68" + }, + "8109": { + "op": "POP" + }, + "8110": { + "op": "PUSH1", + "value": "0x1" + }, + "8112": { + "op": "PUSH1", + "value": "0x1" + }, + "8114": { + "op": "PUSH1", + "value": "0xA0" + }, + "8116": { + "op": "SHL" + }, + "8117": { + "op": "SUB" + }, + "8118": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5317, + 5348 + ], + "op": "DUP2", + "path": "68" + }, + "8119": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5317, + 5348 + ], + "op": "AND", + "path": "68" + }, + "8120": { + "branch": 491, + "fn": "Incentives.claimIncentives", + "offset": [ + 5317, + 5348 + ], + "op": "ISZERO", + "path": "68" + }, + "8121": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5313, + 6068 + ], + "op": "PUSH2", + "path": "68", + "value": "0x2033" + }, + "8124": { + "branch": 491, + "fn": "Incentives.claimIncentives", + "offset": [ + 5313, + 6068 + ], + "op": "JUMPI", + "path": "68" + }, + "8125": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 5372 + ], + "op": "DUP1", + "path": "68", + "statement": 181 + }, + "8126": { + "op": "PUSH1", + "value": "0x1" + }, + "8128": { + "op": "PUSH1", + "value": "0x1" + }, + "8130": { + "op": "PUSH1", + "value": "0xA0" + }, + "8132": { + "op": "SHL" + }, + "8133": { + "op": "SUB" + }, + "8134": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 5385 + ], + "op": "AND", + "path": "68" + }, + "8135": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 5385 + ], + "op": "PUSH4", + "path": "68", + "value": "0x9FC27B92" + }, + "8140": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5403, + 5410 + ], + "op": "DUP9", + "path": "68" + }, + "8141": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5662 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1FD9" + }, + "8144": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5633 + ], + "op": "DUP12", + "path": "68" + }, + "8145": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5653 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "8147": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5653 + ], + "op": "ADD", + "path": "68" + }, + "8148": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5653 + ], + "op": "MLOAD", + "path": "68" + }, + "8149": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5660 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1CF6" + }, + "8152": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 5621, + 5662 + ], + "op": "JUMP", + "path": "68" + }, + "8153": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5621, + 5662 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8154": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5680, + 5698 + ], + "op": "DUP10", + "path": "68" + }, + "8155": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5974, + 5986 + ], + "op": "DUP13", + "path": "68" + }, + "8156": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5974, + 6008 + ], + "op": "PUSH1", + "path": "68", + "value": "0xC0" + }, + "8158": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5974, + 6008 + ], + "op": "ADD", + "path": "68" + }, + "8159": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5974, + 6008 + ], + "op": "MLOAD", + "path": "68" + }, + "8160": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6026, + 6043 + ], + "op": "DUP11", + "path": "68" + }, + "8161": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "8163": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "MLOAD", + "path": "68" + }, + "8164": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP7", + "path": "68" + }, + "8165": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH4", + "path": "68", + "value": "0xFFFFFFFF" + }, + "8170": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "AND", + "path": "68" + }, + "8171": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0xE0" + }, + "8173": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SHL", + "path": "68" + }, + "8174": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP2", + "path": "68" + }, + "8175": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "MSTORE", + "path": "68" + }, + "8176": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x4" + }, + "8178": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "ADD", + "path": "68" + }, + "8179": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH2", + "path": "68", + "value": "0x2000" + }, + "8182": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SWAP6", + "path": "68" + }, + "8183": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SWAP5", + "path": "68" + }, + "8184": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SWAP4", + "path": "68" + }, + "8185": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SWAP3", + "path": "68" + }, + "8186": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SWAP2", + "path": "68" + }, + "8187": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SWAP1", + "path": "68" + }, + "8188": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH2", + "path": "68", + "value": "0x4857" + }, + "8191": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 5364, + 6057 + ], + "op": "JUMP", + "path": "68" + }, + "8192": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8193": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8195": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "8197": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "MLOAD", + "path": "68" + }, + "8198": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP1", + "path": "68" + }, + "8199": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP4", + "path": "68" + }, + "8200": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "SUB", + "path": "68" + }, + "8201": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP2", + "path": "68" + }, + "8202": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8204": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP8", + "path": "68" + }, + "8205": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP1", + "path": "68" + }, + "8206": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "EXTCODESIZE", + "path": "68" + }, + "8207": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "ISZERO", + "path": "68" + }, + "8208": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP1", + "path": "68" + }, + "8209": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "ISZERO", + "path": "68" + }, + "8210": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH2", + "path": "68", + "value": "0x201A" + }, + "8213": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "JUMPI", + "path": "68" + }, + "8214": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8216": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP1", + "path": "68" + }, + "8217": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "REVERT", + "path": "68" + }, + "8218": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8219": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "POP", + "path": "68" + }, + "8220": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "GAS", + "path": "68" + }, + "8221": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "CALL", + "path": "68" + }, + "8222": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "ISZERO", + "path": "68" + }, + "8223": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP1", + "path": "68" + }, + "8224": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "ISZERO", + "path": "68" + }, + "8225": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH2", + "path": "68", + "value": "0x202E" + }, + "8228": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "JUMPI", + "path": "68" + }, + "8229": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "RETURNDATASIZE", + "path": "68" + }, + "8230": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8232": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "DUP1", + "path": "68" + }, + "8233": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "RETURNDATACOPY", + "path": "68" + }, + "8234": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "RETURNDATASIZE", + "path": "68" + }, + "8235": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "8237": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "REVERT", + "path": "68" + }, + "8238": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8239": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "POP", + "path": "68" + }, + "8240": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "POP", + "path": "68" + }, + "8241": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "POP", + "path": "68" + }, + "8242": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5364, + 6057 + ], + "op": "POP", + "path": "68" + }, + "8243": { + "fn": "Incentives.claimIncentives", + "offset": [ + 5313, + 6068 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8244": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6082, + 6103 + ], + "op": "DUP5", + "path": "68" + }, + "8245": { + "branch": 492, + "fn": "Incentives.claimIncentives", + "offset": [ + 6082, + 6103 + ], + "op": "ISZERO", + "path": "68" + }, + "8246": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6078, + 6163 + ], + "op": "PUSH2", + "path": "68", + "value": "0x2043" + }, + "8249": { + "branch": 492, + "fn": "Incentives.claimIncentives", + "offset": [ + 6078, + 6163 + ], + "op": "JUMPI", + "path": "68" + }, + "8250": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6105, + 6163 + ], + "op": "PUSH2", + "path": "68", + "statement": 182, + "value": "0x2043" + }, + "8253": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6136, + 6143 + ], + "op": "DUP8", + "path": "68" + }, + "8254": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6145, + 6162 + ], + "op": "DUP7", + "path": "68" + }, + "8255": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6105, + 6135 + ], + "op": "PUSH2", + "path": "68", + "value": "0x34BC" + }, + "8258": { + "fn": "Incentives.claimIncentives", + "jump": "i", + "offset": [ + 6105, + 6163 + ], + "op": "JUMP", + "path": "68" + }, + "8259": { + "fn": "Incentives.claimIncentives", + "offset": [ + 6105, + 6163 + ], + "op": "JUMPDEST", + "path": "68" + }, + "8260": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8261": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8262": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8263": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8264": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "SWAP4", + "path": "68" + }, + "8265": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "SWAP3", + "path": "68" + }, + "8266": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8267": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8268": { + "fn": "Incentives.claimIncentives", + "offset": [ + 4318, + 6170 + ], + "op": "POP", + "path": "68" + }, + "8269": { + "fn": "Incentives.claimIncentives", + "jump": "o", + "offset": [ + 4318, + 6170 + ], + "op": "JUMP", + "path": "68" + }, + "8270": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19219, + 20628 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8271": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19451, + 19519 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "8273": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19522, + 19552 + ], + "op": "PUSH2", + "path": "67", + "value": "0x2058" + }, + "8276": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19522, + 19550 + ], + "op": "PUSH2", + "path": "67", + "value": "0x2B98" + }, + "8279": { + "fn": "BalanceHandler._setBalanceStorage", + "jump": "i", + "offset": [ + 19522, + 19552 + ], + "op": "JUMP", + "path": "67" + }, + "8280": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19522, + 19552 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8281": { + "op": "PUSH1", + "value": "0x1" + }, + "8283": { + "op": "PUSH1", + "value": "0x1" + }, + "8285": { + "op": "PUSH1", + "value": "0xA0" + }, + "8287": { + "op": "SHL" + }, + "8288": { + "op": "SUB" + }, + "8289": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "DUP9", + "path": "67" + }, + "8290": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "AND", + "path": "67" + }, + "8291": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19562, + 19599 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "8293": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "SWAP1", + "path": "67" + }, + "8294": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "DUP2", + "path": "67" + }, + "8295": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "MSTORE", + "path": "67" + }, + "8296": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "PUSH1", + "path": "67", + "value": "0x20" + }, + "8298": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "DUP3", + "path": "67" + }, + "8299": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "DUP2", + "path": "67" + }, + "8300": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "MSTORE", + "path": "67" + }, + "8301": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "PUSH1", + "path": "67", + "value": "0x40" + }, + "8303": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "DUP1", + "path": "67" + }, + "8304": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "DUP4", + "path": "67" + }, + "8305": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19616 + ], + "op": "KECCAK256", + "path": "67" + }, + "8306": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "DUP11", + "path": "67" + }, + "8307": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "DUP5", + "path": "67" + }, + "8308": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "MSTORE", + "path": "67" + }, + "8309": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "SWAP1", + "path": "67" + }, + "8310": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "SWAP2", + "path": "67" + }, + "8311": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "MSTORE", + "path": "67" + }, + "8312": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "SWAP1", + "path": "67" + }, + "8313": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19602, + 19628 + ], + "op": "KECCAK256", + "path": "67" + }, + "8314": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19451, + 19552 + ], + "op": "SWAP1", + "path": "67" + }, + "8315": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19451, + 19552 + ], + "op": "SWAP2", + "path": "67" + }, + "8316": { + "op": "POP" + }, + "8317": { + "op": "PUSH11", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "8329": { + "op": "NOT" + }, + "8330": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19677 + ], + "op": "DUP7", + "path": "67", + "statement": 183 + }, + "8331": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19677 + ], + "op": "SLT", + "path": "67" + }, + "8332": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19677 + ], + "op": "DUP1", + "path": "67" + }, + "8333": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19677 + ], + "op": "ISZERO", + "path": "67" + }, + "8334": { + "branch": 472, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19677 + ], + "op": "SWAP1", + "path": "67" + }, + "8335": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19711 + ], + "op": "PUSH2", + "path": "67", + "value": "0x20A3" + }, + "8338": { + "branch": 472, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19711 + ], + "op": "JUMPI", + "path": "67" + }, + "8339": { + "op": "POP" + }, + "8340": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19696, + 19711 + ], + "op": "PUSH11", + "path": "67", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "8352": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19681, + 19711 + ], + "op": "DUP7", + "path": "67" + }, + "8353": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19681, + 19711 + ], + "op": "SGT", + "path": "67" + }, + "8354": { + "branch": 473, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19681, + 19711 + ], + "op": "ISZERO", + "path": "67" + }, + "8355": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19647, + 19711 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8356": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19639, + 19712 + ], + "op": "PUSH2", + "path": "67", + "value": "0x20AC" + }, + "8359": { + "branch": 473, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19639, + 19712 + ], + "op": "JUMPI", + "path": "67" + }, + "8360": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19639, + 19712 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "8362": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19639, + 19712 + ], + "op": "DUP1", + "path": "67" + }, + "8363": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19639, + 19712 + ], + "op": "REVERT", + "path": "67" + }, + "8364": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19639, + 19712 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8365": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19868, + 19869 + ], + "op": "PUSH1", + "path": "67", + "statement": 184, + "value": "0x0" + }, + "8367": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19864 + ], + "op": "DUP6", + "path": "67" + }, + "8368": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19869 + ], + "op": "SLT", + "path": "67" + }, + "8369": { + "branch": 474, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19869 + ], + "op": "ISZERO", + "path": "67" + }, + "8370": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19906 + ], + "op": "DUP1", + "path": "67" + }, + "8371": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19906 + ], + "op": "ISZERO", + "path": "67" + }, + "8372": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19906 + ], + "op": "PUSH2", + "path": "67", + "value": "0x20C7" + }, + "8375": { + "branch": 474, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19906 + ], + "op": "JUMPI", + "path": "67" + }, + "8376": { + "op": "POP" + }, + "8377": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19890, + 19906 + ], + "op": "PUSH10", + "path": "67", + "value": "0xFFFFFFFFFFFFFFFFFFFF" + }, + "8388": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19873, + 19906 + ], + "op": "DUP6", + "path": "67" + }, + "8389": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19873, + 19906 + ], + "op": "SGT", + "path": "67" + }, + "8390": { + "branch": 475, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19873, + 19906 + ], + "op": "ISZERO", + "path": "67" + }, + "8391": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19851, + 19906 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8392": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19843, + 19907 + ], + "op": "PUSH2", + "path": "67", + "value": "0x20D0" + }, + "8395": { + "branch": 475, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19843, + 19907 + ], + "op": "JUMPI", + "path": "67" + }, + "8396": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19843, + 19907 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "8398": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19843, + 19907 + ], + "op": "DUP1", + "path": "67" + }, + "8399": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19843, + 19907 + ], + "op": "REVERT", + "path": "67" + }, + "8400": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 19843, + 19907 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8401": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20044, + 20062 + ], + "op": "DUP4", + "path": "67", + "statement": 185 + }, + "8402": { + "branch": 476, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20044, + 20062 + ], + "op": "ISZERO", + "path": "67" + }, + "8403": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20036, + 20063 + ], + "op": "PUSH2", + "path": "67", + "value": "0x20DB" + }, + "8406": { + "branch": 476, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20036, + 20063 + ], + "op": "JUMPI", + "path": "67" + }, + "8407": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20036, + 20063 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "8409": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20036, + 20063 + ], + "op": "DUP1", + "path": "67" + }, + "8410": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20036, + 20063 + ], + "op": "REVERT", + "path": "67" + }, + "8411": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20036, + 20063 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8412": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20302, + 20318 + ], + "op": "PUSH7", + "path": "67", + "statement": 186, + "value": "0xFFFFFFFFFFFFFF" + }, + "8420": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20278, + 20318 + ], + "op": "DUP4", + "path": "67" + }, + "8421": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20278, + 20318 + ], + "op": "GT", + "path": "67" + }, + "8422": { + "branch": 477, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20278, + 20318 + ], + "op": "ISZERO", + "path": "67" + }, + "8423": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20270, + 20319 + ], + "op": "PUSH2", + "path": "67", + "value": "0x20EF" + }, + "8426": { + "branch": 477, + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20270, + 20319 + ], + "op": "JUMPI", + "path": "67" + }, + "8427": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20270, + 20319 + ], + "op": "PUSH1", + "path": "67", + "value": "0x0" + }, + "8429": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20270, + 20319 + ], + "op": "DUP1", + "path": "67" + }, + "8430": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20270, + 20319 + ], + "op": "REVERT", + "path": "67" + }, + "8431": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20270, + 20319 + ], + "op": "JUMPDEST", + "path": "67" + }, + "8432": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "DUP1", + "path": "67", + "statement": 187 + }, + "8433": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SLOAD", + "path": "67" + }, + "8434": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "PUSH7", + "path": "67", + "statement": 188, + "value": "0xFFFFFFFFFFFFFF" + }, + "8442": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP1", + "path": "67" + }, + "8443": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP4", + "path": "67" + }, + "8444": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "AND", + "path": "67" + }, + "8445": { + "op": "PUSH1", + "value": "0x1" + }, + "8447": { + "op": "PUSH1", + "value": "0x70" + }, + "8449": { + "op": "SHL" + }, + "8450": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "MUL", + "path": "67" + }, + "8451": { + "op": "PUSH7", + "value": "0xFFFFFFFFFFFFFF" + }, + "8459": { + "op": "PUSH1", + "value": "0x70" + }, + "8461": { + "op": "SHL" + }, + "8462": { + "op": "NOT" + }, + "8463": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20464 + ], + "op": "PUSH1", + "path": "67", + "statement": 189, + "value": "0xA" + }, + "8465": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP8", + "path": "67", + "statement": 190 + }, + "8466": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP1", + "path": "67" + }, + "8467": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP8", + "path": "67" + }, + "8468": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SIGNEXTEND", + "path": "67" + }, + "8469": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "PUSH11", + "path": "67", + "value": "0xFFFFFFFFFFFFFFFFFFFFFF" + }, + "8481": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "AND", + "path": "67" + }, + "8482": { + "op": "PUSH1", + "value": "0x1" + }, + "8484": { + "op": "PUSH1", + "value": "0xA8" + }, + "8486": { + "op": "SHL" + }, + "8487": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "MUL", + "path": "67" + }, + "8488": { + "op": "PUSH1", + "value": "0x1" + }, + "8490": { + "op": "PUSH1", + "value": "0x1" + }, + "8492": { + "op": "PUSH1", + "value": "0xA8" + }, + "8494": { + "op": "SHL" + }, + "8495": { + "op": "SUB" + }, + "8496": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "PUSH4", + "path": "67", + "value": "0xFFFFFFFF" + }, + "8501": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP1", + "path": "67" + }, + "8502": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP7", + "path": "67" + }, + "8503": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "AND", + "path": "67" + }, + "8504": { + "op": "PUSH1", + "value": "0x1" + }, + "8506": { + "op": "PUSH1", + "value": "0x50" + }, + "8508": { + "op": "SHL" + }, + "8509": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "MUL", + "path": "67" + }, + "8510": { + "op": "PUSH4", + "value": "0xFFFFFFFF" + }, + "8515": { + "op": "PUSH1", + "value": "0x50" + }, + "8517": { + "op": "SHL" + }, + "8518": { + "op": "NOT" + }, + "8519": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "PUSH10", + "path": "67", + "value": "0xFFFFFFFFFFFFFFFFFFFF" + }, + "8530": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP1", + "path": "67" + }, + "8531": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP9", + "path": "67" + }, + "8532": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "AND", + "path": "67" + }, + "8533": { + "op": "PUSH10", + "value": "0xFFFFFFFFFFFFFFFFFFFF" + }, + "8544": { + "op": "NOT" + }, + "8545": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP1", + "path": "67" + }, + "8546": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP7", + "path": "67" + }, + "8547": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "AND", + "path": "67" + }, + "8548": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP6", + "path": "67" + }, + "8549": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP1", + "path": "67" + }, + "8550": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "SWAP6", + "path": "67" + }, + "8551": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20374, + 20426 + ], + "op": "OR", + "path": "67" + }, + "8552": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP7", + "path": "67" + }, + "8553": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP1", + "path": "67" + }, + "8554": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP7", + "path": "67" + }, + "8555": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "AND", + "path": "67" + }, + "8556": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP4", + "path": "67" + }, + "8557": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP1", + "path": "67" + }, + "8558": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "SWAP4", + "path": "67" + }, + "8559": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20436, + 20488 + ], + "op": "OR", + "path": "67" + }, + "8560": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP4", + "path": "67" + }, + "8561": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP1", + "path": "67" + }, + "8562": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP4", + "path": "67" + }, + "8563": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "AND", + "path": "67" + }, + "8564": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP4", + "path": "67" + }, + "8565": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP1", + "path": "67" + }, + "8566": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "SWAP4", + "path": "67" + }, + "8567": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20498, + 20545 + ], + "op": "OR", + "path": "67" + }, + "8568": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP4", + "path": "67" + }, + "8569": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP1", + "path": "67" + }, + "8570": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP4", + "path": "67" + }, + "8571": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "AND", + "path": "67" + }, + "8572": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP3", + "path": "67" + }, + "8573": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP1", + "path": "67" + }, + "8574": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP3", + "path": "67" + }, + "8575": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "OR", + "path": "67" + }, + "8576": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP1", + "path": "67" + }, + "8577": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SWAP2", + "path": "67" + }, + "8578": { + "fn": "BalanceHandler._setBalanceStorage", + "offset": [ + 20555, + 20621 + ], + "op": "SSTORE", + "path": "67" + }, + "8579": { + "op": "POP" + }, + "8580": { + "op": "POP" + }, + "8581": { + "op": "POP" + }, + "8582": { + "fn": "BalanceHandler._setBalanceStorage", + "jump": "o", + "offset": [ + 19219, + 20628 + ], + "op": "JUMP", + "path": "67" + }, + "8583": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8584": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5435, + 5445 + ], + "op": "DUP3", + "path": "66", + "statement": 191 + }, + "8585": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5432 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "8587": { + "branch": 421, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5445 + ], + "op": "LT", + "path": "66" + }, + "8588": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "DUP1", + "path": "66" + }, + "8589": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "ISZERO", + "path": "66" + }, + "8590": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2199" + }, + "8593": { + "branch": 421, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "JUMPI", + "path": "66" + }, + "8594": { + "op": "POP" + }, + "8595": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "8598": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5449, + 5487 + ], + "op": "DUP4", + "path": "66" + }, + "8599": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5449, + 5487 + ], + "op": "GT", + "path": "66" + }, + "8600": { + "branch": 422, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5449, + 5487 + ], + "op": "ISZERO", + "path": "66" + }, + "8601": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8602": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "PUSH2", + "path": "66", + "value": "0x21A2" + }, + "8605": { + "branch": 422, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "JUMPI", + "path": "66" + }, + "8606": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "8608": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "DUP1", + "path": "66" + }, + "8609": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "REVERT", + "path": "66" + }, + "8610": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8611": { + "branch": 423, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5715 + ], + "op": "DUP2", + "path": "66" + }, + "8612": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "DUP1", + "path": "66" + }, + "8613": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "ISZERO", + "path": "66" + }, + "8614": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "PUSH2", + "path": "66", + "value": "0x21B6" + }, + "8617": { + "branch": 423, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "JUMPI", + "path": "66" + }, + "8618": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "POP", + "path": "66" + }, + "8619": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5754, + 5764 + ], + "op": "DUP3", + "path": "66" + }, + "8620": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5733 + ], + "op": "DUP5", + "path": "66" + }, + "8621": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5750 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "8623": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5750 + ], + "op": "ADD", + "path": "66" + }, + "8624": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5750 + ], + "op": "MLOAD", + "path": "66" + }, + "8625": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5764 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "8628": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5764 + ], + "op": "AND", + "path": "66" + }, + "8629": { + "branch": 424, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5764 + ], + "op": "EQ", + "path": "66" + }, + "8630": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8631": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "ISZERO", + "path": "66" + }, + "8632": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "PUSH2", + "path": "66", + "value": "0x21C0" + }, + "8635": { + "branch": 424, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "JUMPI", + "path": "66" + }, + "8636": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5766, + 5773 + ], + "op": "PUSH2", + "path": "66", + "statement": 192, + "value": "0x16D2" + }, + "8639": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5766, + 5773 + ], + "op": "JUMP", + "path": "66" + }, + "8640": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8641": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "8643": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "DUP5", + "path": "66" + }, + "8644": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "ADD", + "path": "66" + }, + "8645": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "MLOAD", + "path": "66" + }, + "8646": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5783, + 5797 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "8648": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5783, + 5797 + ], + "op": "SWAP1", + "path": "66" + }, + "8649": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5783, + 5797 + ], + "op": "DUP2", + "path": "66" + }, + "8650": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8651": { + "op": "PUSH1", + "value": "0x1" + }, + "8653": { + "op": "PUSH1", + "value": "0x1" + }, + "8655": { + "op": "PUSH1", + "value": "0x70" + }, + "8657": { + "op": "SHL" + }, + "8658": { + "op": "SUB" + }, + "8659": { + "op": "NOT" + }, + "8660": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6691, + 6705 + ], + "op": "DUP3", + "path": "66" + }, + "8661": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6691, + 6705 + ], + "op": "AND", + "path": "66" + }, + "8662": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6691, + 6705 + ], + "op": "ISZERO", + "path": "66" + }, + "8663": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "PUSH2", + "path": "66", + "value": "0x233B" + }, + "8666": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMPI", + "path": "66" + }, + "8667": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6767, + 6789 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF0" + }, + "8669": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "DUP3", + "path": "66" + }, + "8670": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "SWAP1", + "path": "66" + }, + "8671": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "SHR", + "path": "66" + }, + "8672": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "8675": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "AND", + "path": "66" + }, + "8676": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6894 + ], + "op": "DUP7", + "path": "66" + }, + "8677": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6894 + ], + "op": "DUP2", + "path": "66" + }, + "8678": { + "branch": 425, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6894 + ], + "op": "EQ", + "path": "66" + }, + "8679": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "DUP1", + "path": "66" + }, + "8680": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "ISZERO", + "path": "66" + }, + "8681": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "PUSH2", + "path": "66", + "value": "0x21EF" + }, + "8684": { + "branch": 425, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "JUMPI", + "path": "66" + }, + "8685": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "POP", + "path": "66" + }, + "8686": { + "branch": 426, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6898, + 6906 + ], + "op": "DUP6", + "path": "66" + }, + "8687": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8688": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "ISZERO", + "path": "66" + }, + "8689": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2227" + }, + "8692": { + "branch": 426, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "JUMPI", + "path": "66" + }, + "8693": { + "op": "POP" + }, + "8694": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "PUSH1", + "path": "66", + "statement": 193, + "value": "0x80" + }, + "8696": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "DUP8", + "path": "66" + }, + "8697": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "ADD", + "path": "66" + }, + "8698": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "DUP1", + "path": "66" + }, + "8699": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "MLOAD", + "path": "66" + }, + "8700": { + "op": "PUSH1", + "value": "0x1" + }, + "8702": { + "op": "PUSH1", + "value": "0x1" + }, + "8704": { + "op": "PUSH1", + "value": "0xF0" + }, + "8706": { + "op": "SHL" + }, + "8707": { + "op": "SUB" + }, + "8708": { + "op": "NOT" + }, + "8709": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7088 + ], + "op": "DUP7", + "path": "66" + }, + "8710": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7088 + ], + "op": "AND", + "path": "66" + }, + "8711": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7102, + 7104 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "8713": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7093, + 7104 + ], + "op": "SWAP1", + "path": "66" + }, + "8714": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7093, + 7104 + ], + "op": "SWAP4", + "path": "66" + }, + "8715": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7093, + 7104 + ], + "op": "MUL", + "path": "66" + }, + "8716": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SWAP3", + "path": "66" + }, + "8717": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SWAP1", + "path": "66" + }, + "8718": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SWAP3", + "path": "66" + }, + "8719": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SHR", + "path": "66" + }, + "8720": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "SWAP2", + "path": "66" + }, + "8721": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "SWAP1", + "path": "66" + }, + "8722": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "SWAP2", + "path": "66" + }, + "8723": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "OR", + "path": "66" + }, + "8724": { + "op": "PUSH1", + "value": "0x1" + }, + "8726": { + "op": "PUSH1", + "value": "0x1" + }, + "8728": { + "op": "PUSH1", + "value": "0x70" + }, + "8730": { + "op": "SHL" + }, + "8731": { + "op": "SUB" + }, + "8732": { + "op": "NOT" + }, + "8733": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6965, + 7106 + ], + "op": "AND", + "path": "66" + }, + "8734": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6965, + 7106 + ], + "op": "SWAP1", + "path": "66" + }, + "8735": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6965, + 7106 + ], + "op": "MSTORE", + "path": "66" + }, + "8736": { + "op": "POP" + }, + "8737": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7124, + 7131 + ], + "op": "PUSH2", + "path": "66", + "statement": 194, + "value": "0x16D2" + }, + "8740": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7124, + 7131 + ], + "op": "SWAP1", + "path": "66" + }, + "8741": { + "op": "POP" + }, + "8742": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7124, + 7131 + ], + "op": "JUMP", + "path": "66" + }, + "8743": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8744": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7239, + 7249 + ], + "op": "DUP7", + "path": "66" + }, + "8745": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7235 + ], + "op": "DUP2", + "path": "66" + }, + "8746": { + "branch": 427, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7249 + ], + "op": "EQ", + "path": "66" + }, + "8747": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "DUP1", + "path": "66" + }, + "8748": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "ISZERO", + "path": "66" + }, + "8749": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2234" + }, + "8752": { + "branch": 427, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "JUMPI", + "path": "66" + }, + "8753": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "POP", + "path": "66" + }, + "8754": { + "branch": 428, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7254, + 7262 + ], + "op": "DUP6", + "path": "66" + }, + "8755": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7253, + 7262 + ], + "op": "ISZERO", + "path": "66" + }, + "8756": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8757": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "ISZERO", + "path": "66" + }, + "8758": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2289" + }, + "8761": { + "branch": 428, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "JUMPI", + "path": "66" + }, + "8762": { + "op": "PUSH1", + "value": "0x1" + }, + "8764": { + "op": "PUSH1", + "value": "0x1" + }, + "8766": { + "op": "PUSH1", + "value": "0xF0" + }, + "8768": { + "op": "SHL" + }, + "8769": { + "op": "SUB" + }, + "8770": { + "op": "NOT" + }, + "8771": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7369, + 7383 + ], + "op": "DUP6", + "path": "66", + "statement": 195 + }, + "8772": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7369, + 7383 + ], + "op": "AND", + "path": "66" + }, + "8773": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7368, + 7383 + ], + "op": "NOT", + "path": "66" + }, + "8774": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP3", + "path": "66" + }, + "8775": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP1", + "path": "66" + }, + "8776": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP3", + "path": "66" + }, + "8777": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "AND", + "path": "66" + }, + "8778": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP2", + "path": "66" + }, + "8779": { + "op": "PUSH1", + "value": "0x3" + }, + "8781": { + "op": "PUSH1", + "value": "0xFE" + }, + "8783": { + "op": "SHL" + }, + "8784": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7405, + 7455 + ], + "op": "DUP4", + "path": "66" + }, + "8785": { + "branch": 429, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7405, + 7455 + ], + "op": "AND", + "path": "66" + }, + "8786": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7401, + 7478 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2267" + }, + "8789": { + "branch": 429, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7401, + 7478 + ], + "op": "JUMPI", + "path": "66" + }, + "8790": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7476, + 7478 + ], + "op": "PUSH1", + "path": "66", + "statement": 196, + "value": "0x10" + }, + "8792": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7472 + ], + "op": "DUP4", + "path": "66" + }, + "8793": { + "op": "PUSH1", + "value": "0x1" + }, + "8795": { + "op": "PUSH1", + "value": "0x1" + }, + "8797": { + "op": "PUSH1", + "value": "0x70" + }, + "8799": { + "op": "SHL" + }, + "8800": { + "op": "SUB" + }, + "8801": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "NOT", + "path": "66" + }, + "8802": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "AND", + "path": "66" + }, + "8803": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "SWAP1", + "path": "66" + }, + "8804": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "SHL", + "path": "66" + }, + "8805": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7457, + 7478 + ], + "op": "SWAP3", + "path": "66" + }, + "8806": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7457, + 7478 + ], + "op": "POP", + "path": "66" + }, + "8807": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7401, + 7478 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8808": { + "op": "POP" + }, + "8809": { + "op": "PUSH1", + "value": "0x1" + }, + "8811": { + "op": "PUSH1", + "value": "0x1" + }, + "8813": { + "op": "PUSH1", + "value": "0x70" + }, + "8815": { + "op": "SHL" + }, + "8816": { + "op": "SUB" + }, + "8817": { + "op": "NOT" + }, + "8818": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "SWAP2", + "path": "66", + "statement": 197 + }, + "8819": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "DUP3", + "path": "66" + }, + "8820": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "AND", + "path": "66" + }, + "8821": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7560, + 7562 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "8823": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7551, + 7562 + ], + "op": "SWAP1", + "path": "66" + }, + "8824": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7551, + 7562 + ], + "op": "SWAP2", + "path": "66" + }, + "8825": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7551, + 7562 + ], + "op": "MUL", + "path": "66" + }, + "8826": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "SHR", + "path": "66" + }, + "8827": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "SWAP2", + "path": "66" + }, + "8828": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "SWAP1", + "path": "66" + }, + "8829": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "SWAP2", + "path": "66" + }, + "8830": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "OR", + "path": "66" + }, + "8831": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7564 + ], + "op": "AND", + "path": "66" + }, + "8832": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7527 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "8834": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7527 + ], + "op": "DUP6", + "path": "66" + }, + "8835": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7527 + ], + "op": "ADD", + "path": "66" + }, + "8836": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7564 + ], + "op": "MSTORE", + "path": "66" + }, + "8837": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7582, + 7589 + ], + "op": "PUSH2", + "path": "66", + "statement": 198, + "value": "0x16D2" + }, + "8840": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7582, + 7589 + ], + "op": "JUMP", + "path": "66" + }, + "8841": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8842": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7695, + 7705 + ], + "op": "DUP7", + "path": "66" + }, + "8843": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7692 + ], + "op": "DUP2", + "path": "66" + }, + "8844": { + "branch": 430, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7705 + ], + "op": "GT", + "path": "66" + }, + "8845": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "DUP1", + "path": "66" + }, + "8846": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "ISZERO", + "path": "66" + }, + "8847": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2295" + }, + "8850": { + "branch": 430, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "JUMPI", + "path": "66" + }, + "8851": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "POP", + "path": "66" + }, + "8852": { + "branch": 431, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7709, + 7717 + ], + "op": "DUP6", + "path": "66" + }, + "8853": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8854": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "ISZERO", + "path": "66" + }, + "8855": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "PUSH2", + "path": "66", + "value": "0x22EF" + }, + "8858": { + "branch": 431, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "JUMPI", + "path": "66" + }, + "8859": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8046, + 8049 + ], + "op": "PUSH1", + "path": "66", + "statement": 199, + "value": "0x80" + }, + "8861": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "DUP9", + "path": "66" + }, + "8862": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "DUP2", + "path": "66" + }, + "8863": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "ADD", + "path": "66" + }, + "8864": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "MLOAD", + "path": "66" + }, + "8865": { + "op": "PUSH1", + "value": "0x1" + }, + "8867": { + "op": "PUSH1", + "value": "0x1" + }, + "8869": { + "op": "PUSH1", + "value": "0xF0" + }, + "8871": { + "op": "SHL" + }, + "8872": { + "op": "SUB" + }, + "8873": { + "op": "NOT" + }, + "8874": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "PUSH1", + "path": "66", + "statement": 200, + "value": "0xF0" + }, + "8876": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "DUP11", + "path": "66" + }, + "8877": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "SWAP1", + "path": "66" + }, + "8878": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "SHL", + "path": "66" + }, + "8879": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7798 + ], + "op": "DUP9", + "path": "66" + }, + "8880": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7798 + ], + "op": "OR", + "path": "66" + }, + "8881": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7756, + 7799 + ], + "op": "DUP2", + "path": "66" + }, + "8882": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7756, + 7799 + ], + "op": "AND", + "path": "66" + }, + "8883": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7813, + 7815 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "8885": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7804, + 7815 + ], + "op": "DUP7", + "path": "66" + }, + "8886": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7804, + 7815 + ], + "op": "MUL", + "path": "66" + }, + "8887": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7756, + 7816 + ], + "op": "SHR", + "path": "66" + }, + "8888": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP7", + "path": "66" + }, + "8889": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP1", + "path": "66" + }, + "8890": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP7", + "path": "66" + }, + "8891": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "OR", + "path": "66" + }, + "8892": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP6", + "path": "66" + }, + "8893": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8049 + ], + "op": "SWAP2", + "path": "66" + }, + "8894": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8049 + ], + "op": "SHL", + "path": "66" + }, + "8895": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8049 + ], + "op": "AND", + "path": "66" + }, + "8896": { + "branch": 432, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8010, + 8058 + ], + "op": "ISZERO", + "path": "66" + }, + "8897": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "PUSH2", + "path": "66", + "value": "0x22C9" + }, + "8900": { + "branch": 432, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "JUMPI", + "path": "66" + }, + "8901": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "8903": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "DUP1", + "path": "66" + }, + "8904": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "REVERT", + "path": "66" + }, + "8905": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8906": { + "op": "POP" + }, + "8907": { + "op": "PUSH1", + "value": "0x1" + }, + "8909": { + "op": "PUSH1", + "value": "0x1" + }, + "8911": { + "op": "PUSH1", + "value": "0x70" + }, + "8913": { + "op": "SHL" + }, + "8914": { + "op": "SUB" + }, + "8915": { + "op": "NOT" + }, + "8916": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "SWAP2", + "path": "66", + "statement": 201 + }, + "8917": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "DUP3", + "path": "66" + }, + "8918": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "AND", + "path": "66" + }, + "8919": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8212, + 8213 + ], + "op": "PUSH1", + "path": "66", + "value": "0x1" + }, + "8921": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "SWAP2", + "path": "66" + }, + "8922": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "SWAP1", + "path": "66" + }, + "8923": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "SWAP2", + "path": "66" + }, + "8924": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "ADD", + "path": "66" + }, + "8925": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8217, + 8219 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "8927": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8202, + 8219 + ], + "op": "MUL", + "path": "66" + }, + "8928": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "SHR", + "path": "66" + }, + "8929": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "SWAP2", + "path": "66" + }, + "8930": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "SWAP1", + "path": "66" + }, + "8931": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "SWAP2", + "path": "66" + }, + "8932": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "OR", + "path": "66" + }, + "8933": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8221 + ], + "op": "AND", + "path": "66" + }, + "8934": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8178 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "8936": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8178 + ], + "op": "DUP6", + "path": "66" + }, + "8937": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8178 + ], + "op": "ADD", + "path": "66" + }, + "8938": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8221 + ], + "op": "MSTORE", + "path": "66" + }, + "8939": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8239, + 8246 + ], + "op": "PUSH2", + "path": "66", + "statement": 202, + "value": "0x16D2" + }, + "8942": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8239, + 8246 + ], + "op": "JUMP", + "path": "66" + }, + "8943": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8944": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8364, + 8374 + ], + "op": "DUP7", + "path": "66" + }, + "8945": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8361 + ], + "op": "DUP2", + "path": "66" + }, + "8946": { + "branch": 433, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8374 + ], + "op": "GT", + "path": "66" + }, + "8947": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "DUP1", + "path": "66" + }, + "8948": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "ISZERO", + "path": "66" + }, + "8949": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "PUSH2", + "path": "66", + "value": "0x22FC" + }, + "8952": { + "branch": 433, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "JUMPI", + "path": "66" + }, + "8953": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "POP", + "path": "66" + }, + "8954": { + "branch": 434, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8379, + 8387 + ], + "op": "DUP6", + "path": "66" + }, + "8955": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8378, + 8387 + ], + "op": "ISZERO", + "path": "66" + }, + "8956": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8957": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "ISZERO", + "path": "66" + }, + "8958": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "PUSH2", + "path": "66", + "value": "0x230A" + }, + "8961": { + "branch": 434, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "JUMPI", + "path": "66" + }, + "8962": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66", + "statement": 203 + }, + "8963": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66" + }, + "8964": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66" + }, + "8965": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66" + }, + "8966": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "PUSH2", + "path": "66", + "value": "0x16D2" + }, + "8969": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "JUMP", + "path": "66" + }, + "8970": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "JUMPDEST", + "path": "66" + }, + "8971": { + "op": "POP" + }, + "8972": { + "op": "PUSH1", + "value": "0x1" + }, + "8974": { + "op": "PUSH1", + "value": "0x1" + }, + "8976": { + "op": "PUSH1", + "value": "0xF0" + }, + "8978": { + "op": "SHL" + }, + "8979": { + "op": "SUB" + }, + "8980": { + "op": "NOT" + }, + "8981": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8452 + ], + "op": "DUP3", + "path": "66", + "statement": 204 + }, + "8982": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8452 + ], + "op": "AND", + "path": "66" + }, + "8983": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8466, + 8468 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "8985": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8457, + 8468 + ], + "op": "DUP3", + "path": "66" + }, + "8986": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8457, + 8468 + ], + "op": "DUP2", + "path": "66" + }, + "8987": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8457, + 8468 + ], + "op": "MUL", + "path": "66" + }, + "8988": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SWAP2", + "path": "66" + }, + "8989": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SWAP1", + "path": "66" + }, + "8990": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SWAP2", + "path": "66" + }, + "8991": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SHR", + "path": "66" + }, + "8992": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP4", + "path": "66" + }, + "8993": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP1", + "path": "66" + }, + "8994": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP4", + "path": "66" + }, + "8995": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "OR", + "path": "66" + }, + "8996": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP3", + "path": "66" + }, + "8997": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP2", + "path": "66", + "statement": 205 + }, + "8998": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP1", + "path": "66" + }, + "8999": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP2", + "path": "66" + }, + "9000": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SHL", + "path": "66" + }, + "9001": { + "op": "PUSH1", + "value": "0x1" + }, + "9003": { + "op": "PUSH1", + "value": "0x1" + }, + "9005": { + "op": "PUSH1", + "value": "0x80" + }, + "9007": { + "op": "SHL" + }, + "9008": { + "op": "SUB" + }, + "9009": { + "op": "NOT" + }, + "9010": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "AND", + "path": "66" + }, + "9011": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP1", + "path": "66" + }, + "9012": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8529, + 8530 + ], + "op": "PUSH1", + "path": "66", + "statement": 206, + "value": "0x1" + }, + "9014": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8519, + 8530 + ], + "op": "ADD", + "path": "66" + }, + "9015": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "PUSH2", + "path": "66", + "value": "0x21CA" + }, + "9018": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMP", + "path": "66" + }, + "9019": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9020": { + "branch": 435, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8616, + 8624 + ], + "op": "DUP5", + "path": "66" + }, + "9021": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8611, + 8633 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2348" + }, + "9024": { + "branch": 435, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8611, + 8633 + ], + "op": "JUMPI", + "path": "66" + }, + "9025": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "POP", + "path": "66", + "statement": 207 + }, + "9026": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "POP", + "path": "66" + }, + "9027": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "POP", + "path": "66" + }, + "9028": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "PUSH2", + "path": "66", + "value": "0x16D2" + }, + "9031": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "JUMP", + "path": "66" + }, + "9032": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8611, + 8633 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9033": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8733, + 8734 + ], + "op": "PUSH1", + "path": "66", + "statement": 208, + "value": "0x9" + }, + "9035": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8724, + 8730 + ], + "op": "DUP2", + "path": "66" + }, + "9036": { + "branch": 436, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8724, + 8734 + ], + "op": "LT", + "path": "66" + }, + "9037": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2355" + }, + "9040": { + "branch": 436, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "JUMPI", + "path": "66" + }, + "9041": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9043": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "DUP1", + "path": "66" + }, + "9044": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "REVERT", + "path": "66" + }, + "9045": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9046": { + "op": "PUSH1", + "value": "0x1" + }, + "9048": { + "op": "PUSH1", + "value": "0x1" + }, + "9050": { + "op": "PUSH1", + "value": "0xF0" + }, + "9052": { + "op": "SHL" + }, + "9053": { + "op": "SUB" + }, + "9054": { + "op": "NOT" + }, + "9055": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "PUSH1", + "path": "66", + "statement": 209, + "value": "0xF0" + }, + "9057": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "DUP8", + "path": "66" + }, + "9058": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "SWAP1", + "path": "66" + }, + "9059": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "SHL", + "path": "66" + }, + "9060": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8887 + ], + "op": "DUP6", + "path": "66" + }, + "9061": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8887 + ], + "op": "OR", + "path": "66" + }, + "9062": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8845, + 8888 + ], + "op": "AND", + "path": "66" + }, + "9063": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8902, + 8904 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9065": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8893, + 8904 + ], + "op": "SWAP1", + "path": "66" + }, + "9066": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8893, + 8904 + ], + "op": "SWAP2", + "path": "66" + }, + "9067": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8893, + 8904 + ], + "op": "MUL", + "path": "66" + }, + "9068": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8845, + 8905 + ], + "op": "SHR", + "path": "66" + }, + "9069": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "SWAP2", + "path": "66" + }, + "9070": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "SWAP1", + "path": "66" + }, + "9071": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "SWAP2", + "path": "66" + }, + "9072": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "OR", + "path": "66" + }, + "9073": { + "op": "PUSH1", + "value": "0x1" + }, + "9075": { + "op": "PUSH1", + "value": "0x1" + }, + "9077": { + "op": "PUSH1", + "value": "0x70" + }, + "9079": { + "op": "SHL" + }, + "9080": { + "op": "SUB" + }, + "9081": { + "op": "NOT" + }, + "9082": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8906 + ], + "op": "AND", + "path": "66" + }, + "9083": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8808 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "9085": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8808 + ], + "op": "DUP7", + "path": "66" + }, + "9086": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8808 + ], + "op": "ADD", + "path": "66" + }, + "9087": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8906 + ], + "op": "MSTORE", + "path": "66" + }, + "9088": { + "op": "POP" + }, + "9089": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9090": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9091": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9092": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9093": { + "fn": "AccountContextHandler.setActiveCurrency", + "jump": "o", + "offset": [ + 5247, + 8913 + ], + "op": "JUMP", + "path": "66" + }, + "9094": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6460, + 10583 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9095": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9097": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9098": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9099": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9100": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9101": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9102": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9103": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "9104": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9105": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7219, + 7246 + ], + "op": "DUP10", + "path": "84" + }, + "9106": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7219, + 7246 + ], + "op": "MLOAD", + "path": "84" + }, + "9107": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7219, + 7253 + ], + "op": "MLOAD", + "path": "84" + }, + "9108": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7215, + 7253 + ], + "op": "DUP2", + "path": "84" + }, + "9109": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7215, + 7253 + ], + "op": "LT", + "path": "84" + }, + "9110": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "ISZERO", + "path": "84" + }, + "9111": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2417" + }, + "9114": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMPI", + "path": "84" + }, + "9115": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7274, + 7301 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9117": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7318 + ], + "op": "DUP11", + "path": "84" + }, + "9118": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7331 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9120": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7331 + ], + "op": "ADD", + "path": "84" + }, + "9121": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7331 + ], + "op": "MLOAD", + "path": "84" + }, + "9122": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7332, + 7333 + ], + "op": "DUP3", + "path": "84" + }, + "9123": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "DUP2", + "path": "84" + }, + "9124": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "MLOAD", + "path": "84" + }, + "9125": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "DUP2", + "path": "84" + }, + "9126": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "LT", + "path": "84" + }, + "9127": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23AC" + }, + "9130": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "JUMPI", + "path": "84" + }, + "9131": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "INVALID", + "path": "84" + }, + "9132": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9133": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9135": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "MUL", + "path": "84" + }, + "9136": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9138": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "ADD", + "path": "84" + }, + "9139": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "ADD", + "path": "84" + }, + "9140": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "MLOAD", + "path": "84" + }, + "9141": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7274, + 7334 + ], + "op": "SWAP1", + "path": "84" + }, + "9142": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7274, + 7334 + ], + "op": "POP", + "path": "84" + }, + "9143": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7517, + 7549 + ], + "op": "PUSH1", + "path": "84", + "statement": 210, + "value": "0x3" + }, + "9145": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "DUP1", + "path": "84" + }, + "9146": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "DUP2", + "path": "84" + }, + "9147": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "GT", + "path": "84" + }, + "9148": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "ISZERO", + "path": "84" + }, + "9149": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23C2" + }, + "9152": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPI", + "path": "84" + }, + "9153": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "INVALID", + "path": "84" + }, + "9154": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9155": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7500 + ], + "op": "DUP2", + "path": "84" + }, + "9156": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7513 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9158": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7513 + ], + "op": "ADD", + "path": "84" + }, + "9159": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7513 + ], + "op": "MLOAD", + "path": "84" + }, + "9160": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9162": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "DUP2", + "path": "84" + }, + "9163": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "GT", + "path": "84" + }, + "9164": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "ISZERO", + "path": "84" + }, + "9165": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23D2" + }, + "9168": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPI", + "path": "84" + }, + "9169": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "INVALID", + "path": "84" + }, + "9170": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9171": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "EQ", + "path": "84" + }, + "9172": { + "branch": 496, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "ISZERO", + "path": "84" + }, + "9173": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23DD" + }, + "9176": { + "branch": 496, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "JUMPI", + "path": "84" + }, + "9177": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9179": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "DUP1", + "path": "84" + }, + "9180": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "REVERT", + "path": "84" + }, + "9181": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9182": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7647, + 7671 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "9184": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7630 + ], + "op": "DUP2", + "path": "84" + }, + "9185": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7643 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9187": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7643 + ], + "op": "ADD", + "path": "84" + }, + "9188": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7643 + ], + "op": "MLOAD", + "path": "84" + }, + "9189": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9191": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "DUP2", + "path": "84" + }, + "9192": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "GT", + "path": "84" + }, + "9193": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "ISZERO", + "path": "84" + }, + "9194": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23EF" + }, + "9197": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "JUMPI", + "path": "84" + }, + "9198": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "INVALID", + "path": "84" + }, + "9199": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9200": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "EQ", + "path": "84" + }, + "9201": { + "branch": 497, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "ISZERO", + "path": "84" + }, + "9202": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "DUP1", + "path": "84" + }, + "9203": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "ISZERO", + "path": "84" + }, + "9204": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23FF" + }, + "9207": { + "branch": 497, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "JUMPI", + "path": "84" + }, + "9208": { + "op": "POP" + }, + "9209": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "9211": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "DUP2", + "path": "84" + }, + "9212": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "ADD", + "path": "84" + }, + "9213": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "MLOAD", + "path": "84" + }, + "9214": { + "branch": 498, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7694 + ], + "op": "ISZERO", + "path": "84" + }, + "9215": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9216": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7621, + 7759 + ], + "op": "ISZERO", + "path": "84" + }, + "9217": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7621, + 7759 + ], + "op": "PUSH2", + "path": "84", + "value": "0x240E" + }, + "9220": { + "branch": 498, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7621, + 7759 + ], + "op": "JUMPI", + "path": "84" + }, + "9221": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7714, + 7744 + ], + "op": "PUSH2", + "path": "84", + "statement": 211, + "value": "0x240E" + }, + "9224": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7726, + 7740 + ], + "op": "DUP12", + "path": "84" + }, + "9225": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7742, + 7743 + ], + "op": "DUP4", + "path": "84" + }, + "9226": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7714, + 7725 + ], + "op": "PUSH2", + "path": "84", + "value": "0x34DB" + }, + "9229": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 7714, + 7744 + ], + "op": "JUMP", + "path": "84" + }, + "9230": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7714, + 7744 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9231": { + "op": "POP" + }, + "9232": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7255, + 7258 + ], + "op": "PUSH1", + "path": "84", + "statement": 212, + "value": "0x1" + }, + "9234": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7255, + 7258 + ], + "op": "ADD", + "path": "84" + }, + "9235": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2390" + }, + "9238": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMP", + "path": "84" + }, + "9239": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9240": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "POP", + "path": "84" + }, + "9241": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7868, + 7877 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9243": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9244": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7887, + 7914 + ], + "op": "DUP10", + "path": "84" + }, + "9245": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7887, + 7914 + ], + "op": "MLOAD", + "path": "84" + }, + "9246": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7887, + 7921 + ], + "op": "MLOAD", + "path": "84" + }, + "9247": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7883, + 7921 + ], + "op": "DUP2", + "path": "84" + }, + "9248": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7883, + 7921 + ], + "op": "LT", + "path": "84" + }, + "9249": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "ISZERO", + "path": "84" + }, + "9250": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "PUSH2", + "path": "84", + "value": "0x24BA" + }, + "9253": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMPI", + "path": "84" + }, + "9254": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7942, + 7969 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9256": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7986 + ], + "op": "DUP11", + "path": "84" + }, + "9257": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7999 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9259": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7999 + ], + "op": "ADD", + "path": "84" + }, + "9260": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7999 + ], + "op": "MLOAD", + "path": "84" + }, + "9261": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8000, + 8001 + ], + "op": "DUP3", + "path": "84" + }, + "9262": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "DUP2", + "path": "84" + }, + "9263": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "MLOAD", + "path": "84" + }, + "9264": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "DUP2", + "path": "84" + }, + "9265": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "LT", + "path": "84" + }, + "9266": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2437" + }, + "9269": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "JUMPI", + "path": "84" + }, + "9270": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "INVALID", + "path": "84" + }, + "9271": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9272": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9274": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "MUL", + "path": "84" + }, + "9275": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9277": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "ADD", + "path": "84" + }, + "9278": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "ADD", + "path": "84" + }, + "9279": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "MLOAD", + "path": "84" + }, + "9280": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7942, + 8002 + ], + "op": "SWAP1", + "path": "84" + }, + "9281": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7942, + 8002 + ], + "op": "POP", + "path": "84" + }, + "9282": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8043, + 8067 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "9284": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9286": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "DUP2", + "path": "84" + }, + "9287": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "GT", + "path": "84" + }, + "9288": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "ISZERO", + "path": "84" + }, + "9289": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH2", + "path": "84", + "value": "0x244E" + }, + "9292": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPI", + "path": "84" + }, + "9293": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "INVALID", + "path": "84" + }, + "9294": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9295": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8026 + ], + "op": "DUP2", + "path": "84" + }, + "9296": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8039 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9298": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8039 + ], + "op": "ADD", + "path": "84" + }, + "9299": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8039 + ], + "op": "MLOAD", + "path": "84" + }, + "9300": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9302": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "DUP2", + "path": "84" + }, + "9303": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "GT", + "path": "84" + }, + "9304": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "ISZERO", + "path": "84" + }, + "9305": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH2", + "path": "84", + "value": "0x245E" + }, + "9308": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPI", + "path": "84" + }, + "9309": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "INVALID", + "path": "84" + }, + "9310": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9311": { + "branch": 499, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "EQ", + "path": "84" + }, + "9312": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "ISZERO", + "path": "84" + }, + "9313": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2472" + }, + "9316": { + "branch": 499, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "JUMPI", + "path": "84" + }, + "9317": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "9319": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "DUP2", + "path": "84" + }, + "9320": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "ADD", + "path": "84" + }, + "9321": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "MLOAD", + "path": "84" + }, + "9322": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8132, + 8151 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9324": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8220, + 8245 + ], + "op": "SWAP1", + "path": "84" + }, + "9325": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8220, + 8245 + ], + "op": "SSTORE", + "path": "84" + }, + "9326": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8198, + 8263 + ], + "op": "PUSH2", + "path": "84", + "value": "0x24B1" + }, + "9329": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8198, + 8263 + ], + "op": "JUMP", + "path": "84" + }, + "9330": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8198, + 8263 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9331": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8327, + 8351 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "9333": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8310 + ], + "op": "DUP2", + "path": "84" + }, + "9334": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8323 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9336": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8323 + ], + "op": "ADD", + "path": "84" + }, + "9337": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8323 + ], + "op": "MLOAD", + "path": "84" + }, + "9338": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9340": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "DUP2", + "path": "84" + }, + "9341": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "GT", + "path": "84" + }, + "9342": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "ISZERO", + "path": "84" + }, + "9343": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2484" + }, + "9346": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "JUMPI", + "path": "84" + }, + "9347": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "INVALID", + "path": "84" + }, + "9348": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9349": { + "branch": 500, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "EQ", + "path": "84" + }, + "9350": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "ISZERO", + "path": "84" + }, + "9351": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "PUSH2", + "path": "84", + "value": "0x249D" + }, + "9354": { + "branch": 500, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "JUMPI", + "path": "84" + }, + "9355": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "9357": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "DUP2", + "path": "84" + }, + "9358": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "ADD", + "path": "84" + }, + "9359": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "MLOAD", + "path": "84" + }, + "9360": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "DUP1", + "path": "84" + }, + "9361": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8611, + 8643 + ], + "op": "PUSH2", + "path": "84", + "statement": 213, + "value": "0x249A" + }, + "9364": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8466 + ], + "op": "DUP4", + "path": "84" + }, + "9365": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "DUP3", + "path": "84" + }, + "9366": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8611, + 8622 + ], + "op": "PUSH2", + "path": "84", + "value": "0x362A" + }, + "9369": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 8611, + 8643 + ], + "op": "JUMP", + "path": "84" + }, + "9370": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8611, + 8643 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9371": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "POP", + "path": "84" + }, + "9372": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "POP", + "path": "84" + }, + "9373": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9374": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8875, + 9055 + ], + "op": "PUSH2", + "path": "84", + "statement": 214, + "value": "0x24A9" + }, + "9377": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8920, + 8925 + ], + "op": "DUP2", + "path": "84" + }, + "9378": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8947, + 8954 + ], + "op": "DUP7", + "path": "84" + }, + "9379": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8976, + 9001 + ], + "op": "DUP7", + "path": "84" + }, + "9380": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9023, + 9037 + ], + "op": "DUP7", + "path": "84" + }, + "9381": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8875, + 8898 + ], + "op": "PUSH2", + "path": "84", + "value": "0x375B" + }, + "9384": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 8875, + 9055 + ], + "op": "JUMP", + "path": "84" + }, + "9385": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8875, + 9055 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9386": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP2", + "path": "84" + }, + "9387": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP7", + "path": "84" + }, + "9388": { + "op": "POP" + }, + "9389": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP5", + "path": "84" + }, + "9390": { + "op": "POP" + }, + "9391": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP3", + "path": "84" + }, + "9392": { + "op": "POP" + }, + "9393": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9394": { + "op": "POP" + }, + "9395": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7923, + 7926 + ], + "op": "PUSH1", + "path": "84", + "statement": 215, + "value": "0x1" + }, + "9397": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7923, + 7926 + ], + "op": "ADD", + "path": "84" + }, + "9398": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "PUSH2", + "path": "84", + "value": "0x241B" + }, + "9401": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMP", + "path": "84" + }, + "9402": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9403": { + "op": "POP" + }, + "9404": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "9406": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "DUP10", + "path": "84" + }, + "9407": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "ADD", + "path": "84" + }, + "9408": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "MLOAD", + "path": "84" + }, + "9409": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9116, + 9142 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9411": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9280, + 9317 + ], + "op": "PUSH2", + "path": "84", + "value": "0x24CA" + }, + "9414": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9280, + 9315 + ], + "op": "PUSH2", + "path": "84", + "value": "0x37BE" + }, + "9417": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 9280, + 9317 + ], + "op": "JUMP", + "path": "84" + }, + "9418": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9280, + 9317 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9419": { + "op": "PUSH1", + "value": "0x1" + }, + "9421": { + "op": "PUSH1", + "value": "0x1" + }, + "9423": { + "op": "PUSH1", + "value": "0xA0" + }, + "9425": { + "op": "SHL" + }, + "9426": { + "op": "SUB" + }, + "9427": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP12", + "path": "84" + }, + "9428": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "AND", + "path": "84" + }, + "9429": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9327, + 9391 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9431": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "SWAP1", + "path": "84" + }, + "9432": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP2", + "path": "84" + }, + "9433": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "MSTORE", + "path": "84" + }, + "9434": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9436": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP3", + "path": "84" + }, + "9437": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "SWAP1", + "path": "84" + }, + "9438": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "MSTORE", + "path": "84" + }, + "9439": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "9441": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP2", + "path": "84" + }, + "9442": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "KECCAK256", + "path": "84" + }, + "9443": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9187, + 9317 + ], + "op": "SWAP2", + "path": "84" + }, + "9444": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9187, + 9317 + ], + "op": "SWAP3", + "path": "84" + }, + "9445": { + "op": "POP" + }, + "9446": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9447": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9456 + ], + "op": "DUP13", + "path": "84" + }, + "9448": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9466 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9450": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9466 + ], + "op": "ADD", + "path": "84" + }, + "9451": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9466 + ], + "op": "MLOAD", + "path": "84" + }, + "9452": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9473 + ], + "op": "MLOAD", + "path": "84" + }, + "9453": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9438, + 9439 + ], + "op": "DUP2", + "path": "84" + }, + "9454": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9438, + 9473 + ], + "op": "LT", + "path": "84" + }, + "9455": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "ISZERO", + "path": "84" + }, + "9456": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2594" + }, + "9459": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPI", + "path": "84" + }, + "9460": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9494, + 9521 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9462": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9538 + ], + "op": "DUP14", + "path": "84" + }, + "9463": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9548 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9465": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9548 + ], + "op": "ADD", + "path": "84" + }, + "9466": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9548 + ], + "op": "MLOAD", + "path": "84" + }, + "9467": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9549, + 9550 + ], + "op": "DUP3", + "path": "84" + }, + "9468": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "DUP2", + "path": "84" + }, + "9469": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "MLOAD", + "path": "84" + }, + "9470": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "DUP2", + "path": "84" + }, + "9471": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "LT", + "path": "84" + }, + "9472": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2505" + }, + "9475": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "JUMPI", + "path": "84" + }, + "9476": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "INVALID", + "path": "84" + }, + "9477": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9478": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9480": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "MUL", + "path": "84" + }, + "9481": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "9483": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "ADD", + "path": "84" + }, + "9484": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "ADD", + "path": "84" + }, + "9485": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "MLOAD", + "path": "84" + }, + "9486": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9494, + 9551 + ], + "op": "SWAP1", + "path": "84" + }, + "9487": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9494, + 9551 + ], + "op": "POP", + "path": "84" + }, + "9488": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9574 + ], + "op": "DUP1", + "path": "84" + }, + "9489": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9583 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "9491": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9583 + ], + "op": "ADD", + "path": "84" + }, + "9492": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9583 + ], + "op": "MLOAD", + "path": "84" + }, + "9493": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9587, + 9588 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9495": { + "branch": 501, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9588 + ], + "op": "EQ", + "path": "84" + }, + "9496": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "ISZERO", + "path": "84" + }, + "9497": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2522" + }, + "9500": { + "branch": 501, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "JUMPI", + "path": "84" + }, + "9501": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9590, + 9598 + ], + "op": "POP", + "path": "84", + "statement": 216 + }, + "9502": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9590, + 9598 + ], + "op": "PUSH2", + "path": "84", + "value": "0x258C" + }, + "9505": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9590, + 9598 + ], + "op": "JUMP", + "path": "84" + }, + "9506": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9507": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9659, + 9683 + ], + "op": "PUSH1", + "path": "84", + "statement": 217, + "value": "0x2" + }, + "9509": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9642 + ], + "op": "DUP2", + "path": "84" + }, + "9510": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9655 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9512": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9655 + ], + "op": "ADD", + "path": "84" + }, + "9513": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9655 + ], + "op": "MLOAD", + "path": "84" + }, + "9514": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9516": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "DUP2", + "path": "84" + }, + "9517": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "GT", + "path": "84" + }, + "9518": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "ISZERO", + "path": "84" + }, + "9519": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2534" + }, + "9522": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "JUMPI", + "path": "84" + }, + "9523": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "INVALID", + "path": "84" + }, + "9524": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9525": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "EQ", + "path": "84" + }, + "9526": { + "branch": 502, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "ISZERO", + "path": "84" + }, + "9527": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "DUP1", + "path": "84" + }, + "9528": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "ISZERO", + "path": "84" + }, + "9529": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2552" + }, + "9532": { + "branch": 502, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "JUMPI", + "path": "84" + }, + "9533": { + "op": "POP" + }, + "9534": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9725, + 9757 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9536": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9708 + ], + "op": "DUP2", + "path": "84" + }, + "9537": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9721 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9539": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9721 + ], + "op": "ADD", + "path": "84" + }, + "9540": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9721 + ], + "op": "MLOAD", + "path": "84" + }, + "9541": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9543": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "DUP2", + "path": "84" + }, + "9544": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "GT", + "path": "84" + }, + "9545": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "ISZERO", + "path": "84" + }, + "9546": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "PUSH2", + "path": "84", + "value": "0x254F" + }, + "9549": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "JUMPI", + "path": "84" + }, + "9550": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "INVALID", + "path": "84" + }, + "9551": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9552": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "EQ", + "path": "84" + }, + "9553": { + "branch": 503, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "ISZERO", + "path": "84" + }, + "9554": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9555": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "PUSH2", + "path": "84", + "value": "0x255B" + }, + "9558": { + "branch": 503, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "JUMPI", + "path": "84" + }, + "9559": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9561": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "DUP1", + "path": "84" + }, + "9562": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "REVERT", + "path": "84" + }, + "9563": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9564": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9878, + 10038 + ], + "op": "PUSH2", + "path": "84", + "statement": 218, + "value": "0x2567" + }, + "9567": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9919, + 9924 + ], + "op": "DUP2", + "path": "84" + }, + "9568": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9942, + 9949 + ], + "op": "DUP10", + "path": "84" + }, + "9569": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9967, + 9992 + ], + "op": "DUP10", + "path": "84" + }, + "9570": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10010, + 10024 + ], + "op": "DUP10", + "path": "84" + }, + "9571": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9878, + 9901 + ], + "op": "PUSH2", + "path": "84", + "value": "0x375B" + }, + "9574": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 9878, + 10038 + ], + "op": "JUMP", + "path": "84" + }, + "9575": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9878, + 10038 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9576": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP2", + "path": "84" + }, + "9577": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP10", + "path": "84" + }, + "9578": { + "op": "POP" + }, + "9579": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP8", + "path": "84" + }, + "9580": { + "op": "POP" + }, + "9581": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP6", + "path": "84" + }, + "9582": { + "op": "POP" + }, + "9583": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10053, + 10105 + ], + "op": "PUSH2", + "path": "84", + "statement": 219, + "value": "0x2584" + }, + "9586": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10065, + 10070 + ], + "op": "DUP2", + "path": "84" + }, + "9587": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10084 + ], + "op": "DUP5", + "path": "84" + }, + "9588": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10085, + 10103 + ], + "op": "DUP8", + "path": "84" + }, + "9589": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "9591": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "DUP2", + "path": "84" + }, + "9592": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "LT", + "path": "84" + }, + "9593": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "PUSH2", + "path": "84", + "value": "0x257E" + }, + "9596": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "JUMPI", + "path": "84" + }, + "9597": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "INVALID", + "path": "84" + }, + "9598": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9599": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "ADD", + "path": "84" + }, + "9600": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10053, + 10064 + ], + "op": "PUSH2", + "path": "84", + "value": "0x362A" + }, + "9603": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 10053, + 10105 + ], + "op": "JUMP", + "path": "84" + }, + "9604": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10053, + 10105 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9605": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10141, + 10142 + ], + "op": "PUSH1", + "path": "84", + "statement": 220, + "value": "0x1" + }, + "9607": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "DUP6", + "path": "84" + }, + "9608": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "ADD", + "path": "84" + }, + "9609": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "SWAP5", + "path": "84" + }, + "9610": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "POP", + "path": "84" + }, + "9611": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "POP", + "path": "84" + }, + "9612": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9613": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9475, + 9478 + ], + "op": "PUSH1", + "path": "84", + "statement": 221, + "value": "0x1" + }, + "9615": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9475, + 9478 + ], + "op": "ADD", + "path": "84" + }, + "9616": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "PUSH2", + "path": "84", + "value": "0x24E6" + }, + "9619": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMP", + "path": "84" + }, + "9620": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9621": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "POP", + "path": "84" + }, + "9622": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10333, + 10335 + ], + "op": "PUSH1", + "path": "84", + "statement": 222, + "value": "0x10" + }, + "9624": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10329 + ], + "op": "DUP4", + "path": "84" + }, + "9625": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10335 + ], + "op": "GT", + "path": "84" + }, + "9626": { + "branch": 504, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10335 + ], + "op": "ISZERO", + "path": "84" + }, + "9627": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "DUP1", + "path": "84" + }, + "9628": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "ISZERO", + "path": "84" + }, + "9629": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "PUSH2", + "path": "84", + "value": "0x25AB" + }, + "9632": { + "branch": 504, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "JUMPI", + "path": "84" + }, + "9633": { + "op": "POP" + }, + "9634": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10357, + 10373 + ], + "op": "PUSH5", + "path": "84", + "value": "0xFFFFFFFFFF" + }, + "9640": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10339, + 10373 + ], + "op": "DUP5", + "path": "84" + }, + "9641": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10339, + 10373 + ], + "op": "GT", + "path": "84" + }, + "9642": { + "branch": 505, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10339, + 10373 + ], + "op": "ISZERO", + "path": "84" + }, + "9643": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9644": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "PUSH2", + "path": "84", + "value": "0x25B4" + }, + "9647": { + "branch": 505, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "JUMPI", + "path": "84" + }, + "9648": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9650": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "DUP1", + "path": "84" + }, + "9651": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "REVERT", + "path": "84" + }, + "9652": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9653": { + "op": "POP" + }, + "9654": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10445, + 10452 + ], + "op": "SWAP4", + "path": "84", + "statement": 223 + }, + "9655": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10445, + 10452 + ], + "op": "SWAP11", + "path": "84" + }, + "9656": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10466, + 10491 + ], + "op": "SWAP3", + "path": "84" + }, + "9657": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10466, + 10491 + ], + "op": "SWAP10", + "path": "84" + }, + "9658": { + "op": "POP" + }, + "9659": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10466, + 10491 + ], + "op": "SWAP8", + "path": "84" + }, + "9660": { + "op": "POP" + }, + "9661": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10511, + 10529 + ], + "op": "SWAP6", + "path": "84" + }, + "9662": { + "op": "POP" + }, + "9663": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6460, + 10583 + ], + "op": "SWAP4", + "path": "84" + }, + "9664": { + "op": "POP" + }, + "9665": { + "op": "POP" + }, + "9666": { + "op": "POP" + }, + "9667": { + "op": "POP" + }, + "9668": { + "fn": "PortfolioHandler.storeAssets", + "jump": "o", + "offset": [ + 6460, + 10583 + ], + "op": "JUMP", + "path": "84" + }, + "9669": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 8919, + 9670 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9670": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9004, + 9011 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9672": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9004, + 9011 + ], + "op": "DUP1", + "path": "66" + }, + "9673": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9150, + 9174 + ], + "op": "PUSH32", + "path": "66", + "value": "0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000" + }, + "9706": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9131, + 9174 + ], + "op": "DUP4", + "path": "66" + }, + "9707": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9131, + 9174 + ], + "op": "AND", + "path": "66" + }, + "9708": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9004, + 9011 + ], + "op": "DUP2", + "path": "66" + }, + "9709": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9710": { + "op": "PUSH1", + "value": "0x1" + }, + "9712": { + "op": "PUSH1", + "value": "0x1" + }, + "9714": { + "op": "PUSH1", + "value": "0x70" + }, + "9716": { + "op": "SHL" + }, + "9717": { + "op": "SUB" + }, + "9718": { + "op": "NOT" + }, + "9719": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9309, + 9323 + ], + "op": "DUP3", + "path": "66" + }, + "9720": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9309, + 9323 + ], + "op": "AND", + "path": "66" + }, + "9721": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9309, + 9323 + ], + "op": "ISZERO", + "path": "66" + }, + "9722": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2637" + }, + "9725": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMPI", + "path": "66" + }, + "9726": { + "op": "PUSH1", + "value": "0x1" + }, + "9728": { + "op": "PUSH1", + "value": "0xFE" + }, + "9730": { + "op": "SHL" + }, + "9731": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9388 + ], + "op": "DUP3", + "path": "66" + }, + "9732": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9388 + ], + "op": "DUP2", + "path": "66" + }, + "9733": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9388 + ], + "op": "AND", + "path": "66" + }, + "9734": { + "branch": 437, + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9420 + ], + "op": "EQ", + "path": "66" + }, + "9735": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "ISZERO", + "path": "66" + }, + "9736": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2621" + }, + "9739": { + "branch": 437, + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "JUMPI", + "path": "66" + }, + "9740": { + "op": "PUSH1", + "value": "0x1" + }, + "9742": { + "op": "PUSH1", + "value": "0x1" + }, + "9744": { + "op": "PUSH1", + "value": "0xF0" + }, + "9746": { + "op": "SHL" + }, + "9747": { + "op": "SUB" + }, + "9748": { + "op": "NOT" + }, + "9749": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9539 + ], + "op": "DUP3", + "path": "66", + "statement": 224 + }, + "9750": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9539 + ], + "op": "AND", + "path": "66" + }, + "9751": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9549 + ], + "op": "DUP2", + "path": "66" + }, + "9752": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9549 + ], + "op": "SHR", + "path": "66" + }, + "9753": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP3", + "path": "66" + }, + "9754": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP1", + "path": "66" + }, + "9755": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP3", + "path": "66" + }, + "9756": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "OR", + "path": "66" + }, + "9757": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP2", + "path": "66" + }, + "9758": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9578, + 9580 + ], + "op": "PUSH1", + "path": "66", + "statement": 225, + "value": "0x10" + }, + "9760": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9568, + 9580 + ], + "op": "ADD", + "path": "66" + }, + "9761": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9762": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9627, + 9629 + ], + "op": "PUSH1", + "path": "66", + "statement": 226, + "value": "0x10" + }, + "9764": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9623 + ], + "op": "DUP3", + "path": "66" + }, + "9765": { + "op": "PUSH1", + "value": "0x1" + }, + "9767": { + "op": "PUSH1", + "value": "0x1" + }, + "9769": { + "op": "PUSH1", + "value": "0x70" + }, + "9771": { + "op": "SHL" + }, + "9772": { + "op": "SUB" + }, + "9773": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "NOT", + "path": "66" + }, + "9774": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "AND", + "path": "66" + }, + "9775": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "SWAP1", + "path": "66" + }, + "9776": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "SHL", + "path": "66" + }, + "9777": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9608, + 9629 + ], + "op": "SWAP2", + "path": "66" + }, + "9778": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9608, + 9629 + ], + "op": "POP", + "path": "66" + }, + "9779": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x25ED" + }, + "9782": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMP", + "path": "66" + }, + "9783": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9784": { + "op": "POP" + }, + "9785": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9657, + 9663 + ], + "op": "SWAP1", + "path": "66", + "statement": 227 + }, + "9786": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9657, + 9663 + ], + "op": "SWAP4", + "path": "66" + }, + "9787": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 8919, + 9670 + ], + "op": "SWAP3", + "path": "66" + }, + "9788": { + "op": "POP" + }, + "9789": { + "op": "POP" + }, + "9790": { + "op": "POP" + }, + "9791": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "jump": "o", + "offset": [ + 8919, + 9670 + ], + "op": "JUMP", + "path": "66" + }, + "9792": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 1879, + 2108 + ], + "op": "JUMPDEST", + "path": "62" + }, + "9793": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 1940, + 1988 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "9795": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2005, + 2017 + ], + "op": "DUP1", + "path": "62" + }, + "9796": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2020, + 2061 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "9799": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2036, + 2060 + ], + "op": "PUSH1", + "path": "62", + "value": "0x1" + }, + "9801": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2020, + 2035 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "9804": { + "fn": "LibStorage.getAccountStorage", + "jump": "i", + "offset": [ + 2020, + 2061 + ], + "op": "JUMP", + "path": "62" + }, + "9805": { + "fn": "SafeInt256.toInt", + "offset": [ + 2520, + 2683 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9806": { + "fn": "SafeInt256.toInt", + "offset": [ + 2569, + 2575 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "9808": { + "op": "PUSH1", + "value": "0x1" + }, + "9810": { + "op": "PUSH1", + "value": "0x1" + }, + "9812": { + "op": "PUSH1", + "value": "0xFF" + }, + "9814": { + "op": "SHL" + }, + "9815": { + "op": "SUB" + }, + "9816": { + "fn": "SafeInt256.toInt", + "offset": [ + 2596, + 2597 + ], + "op": "DUP3", + "path": "94", + "statement": 228 + }, + "9817": { + "fn": "SafeInt256.toInt", + "offset": [ + 2596, + 2626 + ], + "op": "GT", + "path": "94" + }, + "9818": { + "branch": 534, + "fn": "SafeInt256.toInt", + "offset": [ + 2596, + 2626 + ], + "op": "ISZERO", + "path": "94" + }, + "9819": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "PUSH2", + "path": "94", + "value": "0x1D05" + }, + "9822": { + "branch": 534, + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "JUMPI", + "path": "94" + }, + "9823": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "9825": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "DUP1", + "path": "94" + }, + "9826": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "REVERT", + "path": "94" + }, + "9827": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17289, + 19290 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9828": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17601, + 17644 + ], + "op": "PUSH1", + "path": "29", + "value": "0x3" + }, + "9830": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17597 + ], + "op": "DUP4", + "path": "29" + }, + "9831": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "9833": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "DUP2", + "path": "29" + }, + "9834": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "GT", + "path": "29" + }, + "9835": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "ISZERO", + "path": "29" + }, + "9836": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2671" + }, + "9839": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "JUMPI", + "path": "29" + }, + "9840": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "INVALID", + "path": "29" + }, + "9841": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9842": { + "branch": 400, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17644 + ], + "op": "EQ", + "path": "29" + }, + "9843": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17723 + ], + "op": "DUP1", + "path": "29" + }, + "9844": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17723 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2688" + }, + "9847": { + "branch": 400, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17723 + ], + "op": "JUMPI", + "path": "29" + }, + "9848": { + "op": "POP" + }, + "9849": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17675, + 17723 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "9851": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17671 + ], + "op": "DUP4", + "path": "29" + }, + "9852": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "9854": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "DUP2", + "path": "29" + }, + "9855": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "GT", + "path": "29" + }, + "9856": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "ISZERO", + "path": "29" + }, + "9857": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2686" + }, + "9860": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "JUMPI", + "path": "29" + }, + "9861": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "INVALID", + "path": "29" + }, + "9862": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9863": { + "branch": 401, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17660, + 17723 + ], + "op": "EQ", + "path": "29" + }, + "9864": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17723 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9865": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17791 + ], + "op": "DUP1", + "path": "29" + }, + "9866": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17791 + ], + "op": "PUSH2", + "path": "29", + "value": "0x269E" + }, + "9869": { + "branch": 401, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17791 + ], + "op": "JUMPI", + "path": "29" + }, + "9870": { + "op": "POP" + }, + "9871": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17754, + 17791 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "9873": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17750 + ], + "op": "DUP4", + "path": "29" + }, + "9874": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "9876": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "DUP2", + "path": "29" + }, + "9877": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "GT", + "path": "29" + }, + "9878": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "ISZERO", + "path": "29" + }, + "9879": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "PUSH2", + "path": "29", + "value": "0x269C" + }, + "9882": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "JUMPI", + "path": "29" + }, + "9883": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "INVALID", + "path": "29" + }, + "9884": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9885": { + "branch": 402, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17739, + 17791 + ], + "op": "EQ", + "path": "29" + }, + "9886": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17586, + 17791 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9887": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17569, + 19284 + ], + "op": "ISZERO", + "path": "29" + }, + "9888": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17569, + 19284 + ], + "op": "PUSH2", + "path": "29", + "value": "0x276A" + }, + "9891": { + "branch": 402, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17569, + 19284 + ], + "op": "JUMPI", + "path": "29" + }, + "9892": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17908, + 17963 + ], + "op": "PUSH2", + "path": "29", + "statement": 229, + "value": "0x26AD" + }, + "9895": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17929, + 17941 + ], + "op": "DUP5", + "path": "29" + }, + "9896": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17943, + 17962 + ], + "op": "DUP3", + "path": "29" + }, + "9897": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17908, + 17928 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17BE" + }, + "9900": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 17908, + 17963 + ], + "op": "JUMP", + "path": "29" + }, + "9901": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17908, + 17963 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9902": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18032 + ], + "op": "PUSH1", + "path": "29", + "statement": 230, + "value": "0x60" + }, + "9904": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18032 + ], + "op": "DUP5", + "path": "29" + }, + "9905": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18032 + ], + "op": "ADD", + "path": "29" + }, + "9906": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18032 + ], + "op": "MLOAD", + "path": "29" + }, + "9907": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18057 + ], + "op": "PUSH2", + "path": "29", + "value": "0x26BC" + }, + "9910": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18057 + ], + "op": "SWAP1", + "path": "29" + }, + "9911": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18037, + 18056 + ], + "op": "DUP3", + "path": "29" + }, + "9912": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18036 + ], + "op": "PUSH2", + "path": "29", + "value": "0x287E" + }, + "9915": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18006, + 18057 + ], + "op": "JUMP", + "path": "29" + }, + "9916": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18006, + 18057 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9917": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17977, + 18003 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "9919": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17977, + 18003 + ], + "op": "DUP6", + "path": "29" + }, + "9920": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17977, + 18003 + ], + "op": "ADD", + "path": "29" + }, + "9921": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17977, + 18057 + ], + "op": "MSTORE", + "path": "29" + }, + "9922": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18235, + 18258 + ], + "op": "DUP4", + "path": "29" + }, + "9923": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18235, + 18258 + ], + "op": "MLOAD", + "path": "29" + }, + "9924": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "9926": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "MLOAD", + "path": "29" + }, + "9927": { + "op": "PUSH4", + "value": "0x21285613" + }, + "9932": { + "op": "PUSH1", + "value": "0xE1" + }, + "9934": { + "op": "SHL" + }, + "9935": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP2", + "path": "29" + }, + "9936": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "MSTORE", + "path": "29" + }, + "9937": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18168, + 18187 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "9939": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18168, + 18187 + ], + "op": "SWAP2", + "path": "29" + }, + "9940": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18206 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "9961": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18206 + ], + "op": "SWAP2", + "path": "29" + }, + "9962": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18217 + ], + "op": "PUSH4", + "path": "29", + "value": "0x4250AC26" + }, + "9967": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18217 + ], + "op": "SWAP2", + "path": "29" + }, + "9968": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH2", + "path": "29", + "value": "0x26FD" + }, + "9971": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "SWAP2", + "path": "29" + }, + "9972": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18276, + 18295 + ], + "op": "DUP7", + "path": "29" + }, + "9973": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18276, + 18295 + ], + "op": "SWAP1", + "path": "29" + }, + "9974": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "9976": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ADD", + "path": "29" + }, + "9977": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AC3" + }, + "9980": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18190, + 18309 + ], + "op": "JUMP", + "path": "29" + }, + "9981": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "JUMPDEST", + "path": "29" + }, + "9982": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "9984": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "9986": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "MLOAD", + "path": "29" + }, + "9987": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "9988": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP4", + "path": "29" + }, + "9989": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "SUB", + "path": "29" + }, + "9990": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP2", + "path": "29" + }, + "9991": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP7", + "path": "29" + }, + "9992": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "9993": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "9994": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ISZERO", + "path": "29" + }, + "9995": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "9996": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ISZERO", + "path": "29" + }, + "9997": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2715" + }, + "10000": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "JUMPI", + "path": "29" + }, + "10001": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10003": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "10004": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "REVERT", + "path": "29" + }, + "10005": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10006": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "POP", + "path": "29" + }, + "10007": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "GAS", + "path": "29" + }, + "10008": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "10009": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ISZERO", + "path": "29" + }, + "10010": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "10011": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ISZERO", + "path": "29" + }, + "10012": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2729" + }, + "10015": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "JUMPI", + "path": "29" + }, + "10016": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "10017": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10019": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "10020": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "10021": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "10022": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10024": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "REVERT", + "path": "29" + }, + "10025": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10026": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "POP", + "path": "29" + }, + "10027": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "POP", + "path": "29" + }, + "10028": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "POP", + "path": "29" + }, + "10029": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "POP", + "path": "29" + }, + "10030": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10032": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "MLOAD", + "path": "29" + }, + "10033": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "10034": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "10036": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "NOT", + "path": "29" + }, + "10037": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "10039": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP3", + "path": "29" + }, + "10040": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ADD", + "path": "29" + }, + "10041": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "AND", + "path": "29" + }, + "10042": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP3", + "path": "29" + }, + "10043": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ADD", + "path": "29" + }, + "10044": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP1", + "path": "29" + }, + "10045": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10047": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "MSTORE", + "path": "29" + }, + "10048": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "POP", + "path": "29" + }, + "10049": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "DUP2", + "path": "29" + }, + "10050": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "ADD", + "path": "29" + }, + "10051": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "SWAP1", + "path": "29" + }, + "10052": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH2", + "path": "29", + "value": "0x274D" + }, + "10055": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "SWAP2", + "path": "29" + }, + "10056": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "SWAP1", + "path": "29" + }, + "10057": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "PUSH2", + "path": "29", + "value": "0x43D8" + }, + "10060": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18190, + 18309 + ], + "op": "JUMP", + "path": "29" + }, + "10061": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18190, + 18309 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10062": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18395 + ], + "op": "PUSH1", + "path": "29", + "statement": 231, + "value": "0xC0" + }, + "10064": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18395 + ], + "op": "DUP7", + "path": "29" + }, + "10065": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18395 + ], + "op": "ADD", + "path": "29" + }, + "10066": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18395 + ], + "op": "MLOAD", + "path": "29" + }, + "10067": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18168, + 18309 + ], + "op": "SWAP1", + "path": "29" + }, + "10068": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18168, + 18309 + ], + "op": "SWAP2", + "path": "29" + }, + "10069": { + "op": "POP" + }, + "10070": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18443 + ], + "op": "PUSH2", + "path": "29", + "value": "0x275F" + }, + "10073": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18443 + ], + "op": "SWAP1", + "path": "29" + }, + "10074": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18168, + 18309 + ], + "op": "DUP3", + "path": "29" + }, + "10075": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18399 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "10078": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18361, + 18443 + ], + "op": "JUMP", + "path": "29" + }, + "10079": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18361, + 18443 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10080": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18324, + 18358 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "10082": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18324, + 18358 + ], + "op": "DUP7", + "path": "29" + }, + "10083": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18324, + 18358 + ], + "op": "ADD", + "path": "29" + }, + "10084": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18324, + 18443 + ], + "op": "MSTORE", + "path": "29" + }, + "10085": { + "op": "POP" + }, + "10086": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17569, + 19284 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16D2" + }, + "10089": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17569, + 19284 + ], + "op": "JUMP", + "path": "29" + }, + "10090": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17569, + 19284 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10091": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18479, + 18509 + ], + "op": "PUSH1", + "path": "29", + "value": "0x5" + }, + "10093": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18475 + ], + "op": "DUP4", + "path": "29" + }, + "10094": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "PUSH1", + "path": "29", + "value": "0x6" + }, + "10096": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "DUP2", + "path": "29" + }, + "10097": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "GT", + "path": "29" + }, + "10098": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "ISZERO", + "path": "29" + }, + "10099": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2778" + }, + "10102": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "JUMPI", + "path": "29" + }, + "10103": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "INVALID", + "path": "29" + }, + "10104": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10105": { + "branch": 403, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18464, + 18509 + ], + "op": "EQ", + "path": "29" + }, + "10106": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18460, + 19284 + ], + "op": "ISZERO", + "path": "29" + }, + "10107": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18460, + 19284 + ], + "op": "PUSH2", + "path": "29", + "value": "0x16D2" + }, + "10110": { + "branch": 403, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18460, + 19284 + ], + "op": "JUMPI", + "path": "29" + }, + "10111": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18803, + 18822 + ], + "op": "DUP2", + "path": "29", + "statement": 232 + }, + "10112": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18799 + ], + "op": "PUSH2", + "path": "29", + "value": "0x27A2" + }, + "10115": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18764, + 18776 + ], + "op": "DUP6", + "path": "29" + }, + "10116": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18764, + 18798 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "10118": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18764, + 18798 + ], + "op": "ADD", + "path": "29" + }, + "10119": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18764, + 18798 + ], + "op": "MLOAD", + "path": "29" + }, + "10120": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18695 + ], + "op": "PUSH2", + "path": "29", + "value": "0x11C6" + }, + "10123": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18664, + 18676 + ], + "op": "DUP8", + "path": "29" + }, + "10124": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18664, + 18694 + ], + "op": "PUSH1", + "path": "29", + "value": "0xA0" + }, + "10126": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18664, + 18694 + ], + "op": "ADD", + "path": "29" + }, + "10127": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18664, + 18694 + ], + "op": "MLOAD", + "path": "29" + }, + "10128": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18597 + ], + "op": "DUP9", + "path": "29" + }, + "10129": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18638 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10131": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18638 + ], + "op": "ADD", + "path": "29" + }, + "10132": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18638 + ], + "op": "MLOAD", + "path": "29" + }, + "10133": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18663 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "10136": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18663 + ], + "op": "SWAP1", + "path": "29" + }, + "10137": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18695 + ], + "op": "SWAP2", + "path": "29" + }, + "10138": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18695 + ], + "op": "SWAP1", + "path": "29" + }, + "10139": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18695 + ], + "op": "PUSH4", + "path": "29", + "value": "0xFFFFFFFF" + }, + "10144": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18695 + ], + "op": "AND", + "path": "29" + }, + "10145": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18585, + 18695 + ], + "op": "JUMP", + "path": "29" + }, + "10146": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18799 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10147": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18822 + ], + "op": "SLT", + "path": "29" + }, + "10148": { + "branch": 404, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18585, + 18822 + ], + "op": "ISZERO", + "path": "29" + }, + "10149": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "PUSH2", + "path": "29", + "value": "0x27C0" + }, + "10152": { + "branch": 404, + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "JUMPI", + "path": "29" + }, + "10153": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10155": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "MLOAD", + "path": "29" + }, + "10156": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "10160": { + "op": "PUSH1", + "value": "0xE5" + }, + "10162": { + "op": "SHL" + }, + "10163": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "DUP2", + "path": "29" + }, + "10164": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "MSTORE", + "path": "29" + }, + "10165": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "10167": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "ADD", + "path": "29" + }, + "10168": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "PUSH2", + "path": "29", + "value": "0x17A" + }, + "10171": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "SWAP1", + "path": "29" + }, + "10172": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "PUSH2", + "path": "29", + "value": "0x498E" + }, + "10175": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18525, + 18882 + ], + "op": "JUMP", + "path": "29" + }, + "10176": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18525, + 18882 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10177": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 18968 + ], + "op": "PUSH1", + "path": "29", + "statement": 233, + "value": "0xC0" + }, + "10179": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 18968 + ], + "op": "DUP5", + "path": "29" + }, + "10180": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 18968 + ], + "op": "ADD", + "path": "29" + }, + "10181": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 18968 + ], + "op": "MLOAD", + "path": "29" + }, + "10182": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 19023 + ], + "op": "PUSH2", + "path": "29", + "value": "0x27CF" + }, + "10185": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 19023 + ], + "op": "SWAP1", + "path": "29" + }, + "10186": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18990, + 19009 + ], + "op": "DUP4", + "path": "29" + }, + "10187": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 18972 + ], + "op": "PUSH2", + "path": "29", + "value": "0x287E" + }, + "10190": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 18934, + 19023 + ], + "op": "JUMP", + "path": "29" + }, + "10191": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18934, + 19023 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10192": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18897, + 18931 + ], + "op": "PUSH1", + "path": "29", + "value": "0xC0" + }, + "10194": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18897, + 18931 + ], + "op": "DUP6", + "path": "29" + }, + "10195": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18897, + 18931 + ], + "op": "ADD", + "path": "29" + }, + "10196": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 18897, + 19023 + ], + "op": "MSTORE", + "path": "29" + }, + "10197": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19114, + 19137 + ], + "op": "DUP4", + "path": "29" + }, + "10198": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19114, + 19137 + ], + "op": "MLOAD", + "path": "29" + }, + "10199": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10201": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "MLOAD", + "path": "29" + }, + "10202": { + "op": "PUSH4", + "value": "0x52E73F77" + }, + "10207": { + "op": "PUSH1", + "value": "0xE0" + }, + "10209": { + "op": "SHL" + }, + "10210": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP2", + "path": "29" + }, + "10211": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "MSTORE", + "path": "29" + }, + "10212": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19038, + 19054 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10214": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19038, + 19054 + ], + "op": "SWAP2", + "path": "29" + }, + "10215": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19075 + ], + "op": "PUSH20", + "path": "29", + "value": "0x0" + }, + "10236": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19075 + ], + "op": "SWAP2", + "path": "29" + }, + "10237": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19096 + ], + "op": "PUSH4", + "path": "29", + "value": "0x52E73F77" + }, + "10242": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19096 + ], + "op": "SWAP2", + "path": "29" + }, + "10243": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2810" + }, + "10246": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "SWAP2", + "path": "29" + }, + "10247": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19155, + 19174 + ], + "op": "DUP8", + "path": "29" + }, + "10248": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19155, + 19174 + ], + "op": "SWAP1", + "path": "29" + }, + "10249": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x4" + }, + "10251": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ADD", + "path": "29" + }, + "10252": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x4AC3" + }, + "10255": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 19057, + 19188 + ], + "op": "JUMP", + "path": "29" + }, + "10256": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10257": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x20" + }, + "10259": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10261": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "MLOAD", + "path": "29" + }, + "10262": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10263": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP4", + "path": "29" + }, + "10264": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "SUB", + "path": "29" + }, + "10265": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP2", + "path": "29" + }, + "10266": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP7", + "path": "29" + }, + "10267": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10268": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "EXTCODESIZE", + "path": "29" + }, + "10269": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ISZERO", + "path": "29" + }, + "10270": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10271": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ISZERO", + "path": "29" + }, + "10272": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2828" + }, + "10275": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "JUMPI", + "path": "29" + }, + "10276": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10278": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10279": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "REVERT", + "path": "29" + }, + "10280": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10281": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "POP", + "path": "29" + }, + "10282": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "GAS", + "path": "29" + }, + "10283": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DELEGATECALL", + "path": "29" + }, + "10284": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ISZERO", + "path": "29" + }, + "10285": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10286": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ISZERO", + "path": "29" + }, + "10287": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x283C" + }, + "10290": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "JUMPI", + "path": "29" + }, + "10291": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "10292": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10294": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10295": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "RETURNDATACOPY", + "path": "29" + }, + "10296": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "10297": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x0" + }, + "10299": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "REVERT", + "path": "29" + }, + "10300": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10301": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "POP", + "path": "29" + }, + "10302": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "POP", + "path": "29" + }, + "10303": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "POP", + "path": "29" + }, + "10304": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "POP", + "path": "29" + }, + "10305": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10307": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "MLOAD", + "path": "29" + }, + "10308": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "RETURNDATASIZE", + "path": "29" + }, + "10309": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "10311": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "NOT", + "path": "29" + }, + "10312": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x1F" + }, + "10314": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP3", + "path": "29" + }, + "10315": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ADD", + "path": "29" + }, + "10316": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "AND", + "path": "29" + }, + "10317": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP3", + "path": "29" + }, + "10318": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ADD", + "path": "29" + }, + "10319": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP1", + "path": "29" + }, + "10320": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH1", + "path": "29", + "value": "0x40" + }, + "10322": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "MSTORE", + "path": "29" + }, + "10323": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "POP", + "path": "29" + }, + "10324": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "DUP2", + "path": "29" + }, + "10325": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "ADD", + "path": "29" + }, + "10326": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "SWAP1", + "path": "29" + }, + "10327": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2860" + }, + "10330": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "SWAP2", + "path": "29" + }, + "10331": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "SWAP1", + "path": "29" + }, + "10332": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "PUSH2", + "path": "29", + "value": "0x43D8" + }, + "10335": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 19057, + 19188 + ], + "op": "JUMP", + "path": "29" + }, + "10336": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19057, + 19188 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10337": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19258 + ], + "op": "PUSH1", + "path": "29", + "statement": 234, + "value": "0x60" + }, + "10339": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19258 + ], + "op": "DUP7", + "path": "29" + }, + "10340": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19258 + ], + "op": "ADD", + "path": "29" + }, + "10341": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19258 + ], + "op": "MLOAD", + "path": "29" + }, + "10342": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19038, + 19188 + ], + "op": "SWAP1", + "path": "29" + }, + "10343": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19038, + 19188 + ], + "op": "SWAP2", + "path": "29" + }, + "10344": { + "op": "POP" + }, + "10345": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19273 + ], + "op": "PUSH2", + "path": "29", + "value": "0x2872" + }, + "10348": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19273 + ], + "op": "SWAP1", + "path": "29" + }, + "10349": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19038, + 19188 + ], + "op": "DUP3", + "path": "29" + }, + "10350": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19262 + ], + "op": "PUSH2", + "path": "29", + "value": "0xEC5" + }, + "10353": { + "fn": "BatchAction._executeNTokenAction", + "jump": "i", + "offset": [ + 19232, + 19273 + ], + "op": "JUMP", + "path": "29" + }, + "10354": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19232, + 19273 + ], + "op": "JUMPDEST", + "path": "29" + }, + "10355": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19203, + 19229 + ], + "op": "PUSH1", + "path": "29", + "value": "0x60" + }, + "10357": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19203, + 19229 + ], + "op": "DUP7", + "path": "29" + }, + "10358": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19203, + 19229 + ], + "op": "ADD", + "path": "29" + }, + "10359": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 19203, + 19273 + ], + "op": "MSTORE", + "path": "29" + }, + "10360": { + "op": "POP" + }, + "10361": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17289, + 19290 + ], + "op": "POP", + "path": "29" + }, + "10362": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17289, + 19290 + ], + "op": "POP", + "path": "29" + }, + "10363": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17289, + 19290 + ], + "op": "POP", + "path": "29" + }, + "10364": { + "fn": "BatchAction._executeNTokenAction", + "offset": [ + 17289, + 19290 + ], + "op": "POP", + "path": "29" + }, + "10365": { + "fn": "BatchAction._executeNTokenAction", + "jump": "o", + "offset": [ + 17289, + 19290 + ], + "op": "JUMP", + "path": "29" + }, + "10366": { + "fn": "SafeInt256.sub", + "offset": [ + 1267, + 1421 + ], + "op": "JUMPDEST", + "path": "94" + }, + "10367": { + "fn": "SafeInt256.sub", + "offset": [ + 1390, + 1395 + ], + "op": "DUP1", + "path": "94", + "statement": 235 + }, + "10368": { + "fn": "SafeInt256.sub", + "offset": [ + 1390, + 1395 + ], + "op": "DUP3", + "path": "94" + }, + "10369": { + "fn": "SafeInt256.sub", + "offset": [ + 1390, + 1395 + ], + "op": "SUB", + "path": "94" + }, + "10370": { + "fn": "SafeInt256.sub", + "offset": [ + 1385, + 1401 + ], + "op": "DUP3", + "path": "94" + }, + "10371": { + "fn": "SafeInt256.sub", + "offset": [ + 1385, + 1401 + ], + "op": "DUP2", + "path": "94" + }, + "10372": { + "fn": "SafeInt256.sub", + "offset": [ + 1385, + 1401 + ], + "op": "SGT", + "path": "94" + }, + "10373": { + "fn": "SafeInt256.sub", + "offset": [ + 1385, + 1401 + ], + "op": "ISZERO", + "path": "94" + }, + "10374": { + "fn": "SafeInt256.sub", + "offset": [ + 1323, + 1331 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "10376": { + "fn": "SafeInt256.sub", + "offset": [ + 1406, + 1412 + ], + "op": "DUP4", + "path": "94" + }, + "10377": { + "fn": "SafeInt256.sub", + "offset": [ + 1406, + 1412 + ], + "op": "SLT", + "path": "94" + }, + "10378": { + "fn": "SafeInt256.sub", + "offset": [ + 1406, + 1412 + ], + "op": "ISZERO", + "path": "94" + }, + "10379": { + "branch": 535, + "fn": "SafeInt256.sub", + "offset": [ + 1385, + 1413 + ], + "op": "EQ", + "path": "94" + }, + "10380": { + "fn": "SafeInt256.sub", + "offset": [ + 1377, + 1414 + ], + "op": "PUSH2", + "path": "94", + "value": "0xEDB" + }, + "10383": { + "branch": 535, + "fn": "SafeInt256.sub", + "offset": [ + 1377, + 1414 + ], + "op": "JUMPI", + "path": "94" + }, + "10384": { + "fn": "SafeInt256.sub", + "offset": [ + 1377, + 1414 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "10386": { + "fn": "SafeInt256.sub", + "offset": [ + 1377, + 1414 + ], + "op": "DUP1", + "path": "94" + }, + "10387": { + "fn": "SafeInt256.sub", + "offset": [ + 1377, + 1414 + ], + "op": "REVERT", + "path": "94" + }, + "10388": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2175, + 2407 + ], + "op": "JUMPDEST", + "path": "62" + }, + "10389": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2241, + 2288 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "10391": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2305, + 2317 + ], + "op": "DUP1", + "path": "62" + }, + "10392": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2320, + 2360 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "10395": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2336, + 2359 + ], + "op": "PUSH1", + "path": "62", + "value": "0x2" + }, + "10397": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2320, + 2335 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "10400": { + "fn": "LibStorage.getNTokenContextStorage", + "jump": "i", + "offset": [ + 2320, + 2360 + ], + "op": "JUMP", + "path": "62" + }, + "10401": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 583, + 743 + ], + "op": "JUMPDEST", + "path": "78" + }, + "10402": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 641, + 648 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "10404": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "10408": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 668, + 672 + ], + "op": "DUP3", + "path": "78", + "statement": 236 + }, + "10409": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 668, + 689 + ], + "op": "LT", + "path": "78" + }, + "10410": { + "branch": 481, + "fn": "DateTime.getTimeUTC0", + "offset": [ + 668, + 689 + ], + "op": "ISZERO", + "path": "78" + }, + "10411": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "PUSH2", + "path": "78", + "value": "0x28B3" + }, + "10414": { + "branch": 481, + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "JUMPI", + "path": "78" + }, + "10415": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "10417": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "DUP1", + "path": "78" + }, + "10418": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "REVERT", + "path": "78" + }, + "10419": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "JUMPDEST", + "path": "78" + }, + "10420": { + "op": "POP" + }, + "10421": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "10425": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 715, + 735 + ], + "op": "DUP2", + "path": "78", + "statement": 237 + }, + "10426": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 715, + 735 + ], + "op": "MOD", + "path": "78" + }, + "10427": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SWAP1", + "path": "78" + }, + "10428": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SUB", + "path": "78" + }, + "10429": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SWAP1", + "path": "78" + }, + "10430": { + "fn": "DateTime.getTimeUTC0", + "jump": "o", + "offset": [ + 583, + 743 + ], + "op": "JUMP", + "path": "78" + }, + "10431": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16756, + 17863 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10432": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16858, + 16881 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "10434": { + "offset": [ + 588, + 590 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "10436": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16961 + ], + "op": "DUP3", + "path": "84", + "statement": 238 + }, + "10437": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "10439": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "AND", + "path": "84" + }, + "10440": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "GT", + "path": "84" + }, + "10441": { + "branch": 506, + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "ISZERO", + "path": "84" + }, + "10442": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28D2" + }, + "10445": { + "branch": 506, + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "JUMPI", + "path": "84" + }, + "10446": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10448": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "DUP1", + "path": "84" + }, + "10449": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "REVERT", + "path": "84" + }, + "10450": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10451": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16997, + 17087 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10453": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17090, + 17127 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28DC" + }, + "10456": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17090, + 17125 + ], + "op": "PUSH2", + "path": "84", + "value": "0x37BE" + }, + "10459": { + "fn": "PortfolioHandler._loadAssetArray", + "jump": "i", + "offset": [ + 17090, + 17127 + ], + "op": "JUMP", + "path": "84" + }, + "10460": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17090, + 17127 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10461": { + "op": "PUSH1", + "value": "0x1" + }, + "10463": { + "op": "PUSH1", + "value": "0x1" + }, + "10465": { + "op": "PUSH1", + "value": "0xA0" + }, + "10467": { + "op": "SHL" + }, + "10468": { + "op": "SUB" + }, + "10469": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP6", + "path": "84" + }, + "10470": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "AND", + "path": "84" + }, + "10471": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17137, + 17201 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10473": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "SWAP1", + "path": "84" + }, + "10474": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP2", + "path": "84" + }, + "10475": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "MSTORE", + "path": "84" + }, + "10476": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10478": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP3", + "path": "84" + }, + "10479": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "SWAP1", + "path": "84" + }, + "10480": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "MSTORE", + "path": "84" + }, + "10481": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10483": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP2", + "path": "84" + }, + "10484": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "KECCAK256", + "path": "84" + }, + "10485": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16997, + 17127 + ], + "op": "SWAP2", + "path": "84" + }, + "10486": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16997, + 17127 + ], + "op": "SWAP3", + "path": "84" + }, + "10487": { + "op": "POP" + }, + "10488": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "10490": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP6", + "path": "84" + }, + "10491": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "AND", + "path": "84" + }, + "10492": { + "op": "PUSH1", + "value": "0x1" + }, + "10494": { + "op": "PUSH1", + "value": "0x1" + }, + "10496": { + "op": "PUSH1", + "value": "0x40" + }, + "10498": { + "op": "SHL" + }, + "10499": { + "op": "SUB" + }, + "10500": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "10501": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "GT", + "path": "84" + }, + "10502": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "10503": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ISZERO", + "path": "84" + }, + "10504": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2910" + }, + "10507": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPI", + "path": "84" + }, + "10508": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10510": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "10511": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "REVERT", + "path": "84" + }, + "10512": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10513": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "POP", + "path": "84" + }, + "10514": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10516": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MLOAD", + "path": "84" + }, + "10517": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "10518": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "10519": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP3", + "path": "84" + }, + "10520": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MSTORE", + "path": "84" + }, + "10521": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "10522": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10524": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MUL", + "path": "84" + }, + "10525": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10527": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "10528": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP3", + "path": "84" + }, + "10529": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "10530": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10532": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MSTORE", + "path": "84" + }, + "10533": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "10534": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ISZERO", + "path": "84" + }, + "10535": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x294A" + }, + "10538": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPI", + "path": "84" + }, + "10539": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "10540": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10542": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "10543": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10544": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2937" + }, + "10547": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3FB8" + }, + "10550": { + "fn": "PortfolioHandler._loadAssetArray", + "jump": "i", + "offset": [ + 17261, + 17289 + ], + "op": "JUMP", + "path": "84" + }, + "10551": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10552": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "10553": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MSTORE", + "path": "84" + }, + "10554": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10556": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "10557": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "10558": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10560": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "10561": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SUB", + "path": "84" + }, + "10562": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "10563": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "10564": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x292F" + }, + "10567": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPI", + "path": "84" + }, + "10568": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "10569": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "POP", + "path": "84" + }, + "10570": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10571": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "POP", + "path": "84" + }, + "10572": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17228, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "10573": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17228, + 17289 + ], + "op": "POP", + "path": "84" + }, + "10574": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17305, + 17314 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10576": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10577": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17324, + 17330 + ], + "op": "DUP6", + "path": "84" + }, + "10578": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17330 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "10580": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17330 + ], + "op": "AND", + "path": "84" + }, + "10581": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17321 + ], + "op": "DUP2", + "path": "84" + }, + "10582": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17330 + ], + "op": "LT", + "path": "84" + }, + "10583": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "ISZERO", + "path": "84" + }, + "10584": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29D6" + }, + "10587": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMPI", + "path": "84" + }, + "10588": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17351, + 17393 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10590": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17408 + ], + "op": "DUP4", + "path": "84" + }, + "10591": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17409, + 17410 + ], + "op": "DUP3", + "path": "84" + }, + "10592": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "10594": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "DUP2", + "path": "84" + }, + "10595": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "LT", + "path": "84" + }, + "10596": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2969" + }, + "10599": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "JUMPI", + "path": "84" + }, + "10600": { + "dev": "Index out of range", + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "INVALID", + "path": "84" + }, + "10601": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10602": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "ADD", + "path": "84" + }, + "10603": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17351, + 17411 + ], + "op": "SWAP1", + "path": "84" + }, + "10604": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17351, + 17411 + ], + "op": "POP", + "path": "84" + }, + "10605": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17425, + 17452 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10607": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17461 + ], + "op": "DUP4", + "path": "84" + }, + "10608": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17462, + 17463 + ], + "op": "DUP4", + "path": "84" + }, + "10609": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "10610": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "MLOAD", + "path": "84" + }, + "10611": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "10612": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "LT", + "path": "84" + }, + "10613": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "PUSH2", + "path": "84", + "value": "0x297A" + }, + "10616": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "JUMPI", + "path": "84" + }, + "10617": { + "dev": "Index out of range", + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "INVALID", + "path": "84" + }, + "10618": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10619": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10621": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP1", + "path": "84" + }, + "10622": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "10623": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "MUL", + "path": "84" + }, + "10624": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP2", + "path": "84" + }, + "10625": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP1", + "path": "84" + }, + "10626": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP2", + "path": "84" + }, + "10627": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "ADD", + "path": "84" + }, + "10628": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "10629": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "ADD", + "path": "84" + }, + "10630": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "MLOAD", + "path": "84" + }, + "10631": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "DUP4", + "path": "84", + "statement": 239 + }, + "10632": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "SLOAD", + "path": "84" + }, + "10633": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "PUSH2", + "path": "84", + "value": "0xFFFF" + }, + "10636": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "DUP2", + "path": "84" + }, + "10637": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "AND", + "path": "84" + }, + "10638": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17584, + 17626 + ], + "op": "DUP3", + "path": "84" + }, + "10639": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17584, + 17626 + ], + "op": "MSTORE", + "path": "84" + }, + "10640": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "PUSH5", + "path": "84", + "statement": 240, + "value": "0xFFFFFFFFFF" + }, + "10646": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "PUSH3", + "path": "84", + "value": "0x10000" + }, + "10650": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "DUP3", + "path": "84" + }, + "10651": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "DIV", + "path": "84" + }, + "10652": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "AND", + "path": "84" + }, + "10653": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17654 + ], + "op": "SWAP3", + "path": "84" + }, + "10654": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17654 + ], + "op": "DUP3", + "path": "84" + }, + "10655": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17654 + ], + "op": "ADD", + "path": "84" + }, + "10656": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "SWAP3", + "path": "84" + }, + "10657": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "SWAP1", + "path": "84" + }, + "10658": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "SWAP3", + "path": "84" + }, + "10659": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "MSTORE", + "path": "84" + }, + "10660": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "PUSH1", + "path": "84", + "statement": 241, + "value": "0xFF" + }, + "10662": { + "op": "PUSH1", + "value": "0x1" + }, + "10664": { + "op": "PUSH1", + "value": "0x38" + }, + "10666": { + "op": "SHL" + }, + "10667": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "DUP4", + "path": "84" + }, + "10668": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "DIV", + "path": "84" + }, + "10669": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "AND", + "path": "84" + }, + "10670": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17707 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10672": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17707 + ], + "op": "DUP3", + "path": "84" + }, + "10673": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17707 + ], + "op": "ADD", + "path": "84" + }, + "10674": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17732 + ], + "op": "MSTORE", + "path": "84" + }, + "10675": { + "op": "PUSH1", + "value": "0x1" + }, + "10677": { + "op": "PUSH1", + "value": "0x40" + }, + "10679": { + "op": "SHL" + }, + "10680": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SWAP1", + "path": "84", + "statement": 242 + }, + "10681": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SWAP2", + "path": "84" + }, + "10682": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "DIV", + "path": "84" + }, + "10683": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA" + }, + "10685": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SWAP1", + "path": "84" + }, + "10686": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "DUP2", + "path": "84" + }, + "10687": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SIGNEXTEND", + "path": "84" + }, + "10688": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17784 + ], + "op": "SWAP1", + "path": "84" + }, + "10689": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17784 + ], + "op": "SIGNEXTEND", + "path": "84" + }, + "10690": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17760 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "10692": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17760 + ], + "op": "DUP3", + "path": "84" + }, + "10693": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17760 + ], + "op": "ADD", + "path": "84" + }, + "10694": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17784 + ], + "op": "MSTORE", + "path": "84" + }, + "10695": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17815 + ], + "op": "PUSH1", + "path": "84", + "statement": 243, + "value": "0x80" + }, + "10697": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17815 + ], + "op": "ADD", + "path": "84" + }, + "10698": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "SWAP2", + "path": "84" + }, + "10699": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "SWAP1", + "path": "84" + }, + "10700": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "SWAP2", + "path": "84" + }, + "10701": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "MSTORE", + "path": "84" + }, + "10702": { + "op": "POP" + }, + "10703": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10705": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17332, + 17335 + ], + "op": "ADD", + "path": "84", + "statement": 244 + }, + "10706": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2950" + }, + "10709": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMP", + "path": "84" + }, + "10710": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10711": { + "op": "POP" + }, + "10712": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17850, + 17856 + ], + "op": "SWAP6", + "path": "84", + "statement": 245 + }, + "10713": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16756, + 17863 + ], + "op": "SWAP5", + "path": "84" + }, + "10714": { + "op": "POP" + }, + "10715": { + "op": "POP" + }, + "10716": { + "op": "POP" + }, + "10717": { + "op": "POP" + }, + "10718": { + "op": "POP" + }, + "10719": { + "fn": "PortfolioHandler._loadAssetArray", + "jump": "o", + "offset": [ + 16756, + 17863 + ], + "op": "JUMP", + "path": "84" + }, + "10720": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15921, + 16750 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10721": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16015, + 16028 + ], + "op": "DUP1", + "path": "84" + }, + "10722": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16015, + 16028 + ], + "op": "MLOAD", + "path": "84" + }, + "10723": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15998, + 16012 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10725": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16015, + 16028 + ], + "op": "DUP2", + "path": "84" + }, + "10726": { + "op": "PUSH1", + "value": "0x1" + }, + "10728": { + "op": "PUSH1", + "value": "0x1" + }, + "10730": { + "op": "PUSH1", + "value": "0x40" + }, + "10732": { + "op": "SHL" + }, + "10733": { + "op": "SUB" + }, + "10734": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP2", + "path": "84" + }, + "10735": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "GT", + "path": "84" + }, + "10736": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "10737": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ISZERO", + "path": "84" + }, + "10738": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29FA" + }, + "10741": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPI", + "path": "84" + }, + "10742": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10744": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "10745": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "REVERT", + "path": "84" + }, + "10746": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10747": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "POP", + "path": "84" + }, + "10748": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10750": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MLOAD", + "path": "84" + }, + "10751": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "SWAP1", + "path": "84" + }, + "10752": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "10753": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP3", + "path": "84" + }, + "10754": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MSTORE", + "path": "84" + }, + "10755": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "10756": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10758": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MUL", + "path": "84" + }, + "10759": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10761": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "10762": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP3", + "path": "84" + }, + "10763": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "10764": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10766": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MSTORE", + "path": "84" + }, + "10767": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "10768": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ISZERO", + "path": "84" + }, + "10769": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A24" + }, + "10772": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPI", + "path": "84" + }, + "10773": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP2", + "path": "84" + }, + "10774": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10776": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "10777": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10779": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP3", + "path": "84" + }, + "10780": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MUL", + "path": "84" + }, + "10781": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "10782": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "CALLDATASIZE", + "path": "84" + }, + "10783": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP4", + "path": "84" + }, + "10784": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "CALLDATACOPY", + "path": "84" + }, + "10785": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "10786": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "SWAP1", + "path": "84" + }, + "10787": { + "op": "POP" + }, + "10788": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10789": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "POP", + "path": "84" + }, + "10790": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16038, + 16082 + ], + "op": "SWAP1", + "path": "84" + }, + "10791": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16038, + 16082 + ], + "op": "POP", + "path": "84" + }, + "10792": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16097, + 16106 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10794": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10795": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16112, + 16118 + ], + "op": "DUP3", + "path": "84" + }, + "10796": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16108, + 16109 + ], + "op": "DUP2", + "path": "84" + }, + "10797": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16108, + 16118 + ], + "op": "LT", + "path": "84" + }, + "10798": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "ISZERO", + "path": "84" + }, + "10799": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A81" + }, + "10802": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMPI", + "path": "84" + }, + "10803": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16139, + 16166 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10805": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16175 + ], + "op": "DUP5", + "path": "84" + }, + "10806": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16176, + 16177 + ], + "op": "DUP3", + "path": "84" + }, + "10807": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "DUP2", + "path": "84" + }, + "10808": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "MLOAD", + "path": "84" + }, + "10809": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "DUP2", + "path": "84" + }, + "10810": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "LT", + "path": "84" + }, + "10811": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A40" + }, + "10814": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "JUMPI", + "path": "84" + }, + "10815": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "INVALID", + "path": "84" + }, + "10816": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10817": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10819": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "MUL", + "path": "84" + }, + "10820": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10822": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "ADD", + "path": "84" + }, + "10823": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "ADD", + "path": "84" + }, + "10824": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "MLOAD", + "path": "84" + }, + "10825": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16139, + 16178 + ], + "op": "SWAP1", + "path": "84" + }, + "10826": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16139, + 16178 + ], + "op": "POP", + "path": "84" + }, + "10827": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16259, + 16338 + ], + "op": "PUSH2", + "path": "84", + "statement": 246, + "value": "0x2A61" + }, + "10830": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16293 + ], + "op": "DUP2", + "path": "84" + }, + "10831": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16304 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10833": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16304 + ], + "op": "ADD", + "path": "84" + }, + "10834": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16304 + ], + "op": "MLOAD", + "path": "84" + }, + "10835": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16311 + ], + "op": "DUP3", + "path": "84" + }, + "10836": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16320 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10838": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16320 + ], + "op": "ADD", + "path": "84" + }, + "10839": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16320 + ], + "op": "MLOAD", + "path": "84" + }, + "10840": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16327 + ], + "op": "DUP4", + "path": "84" + }, + "10841": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16337 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10843": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16337 + ], + "op": "ADD", + "path": "84" + }, + "10844": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16337 + ], + "op": "MLOAD", + "path": "84" + }, + "10845": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16259, + 16287 + ], + "op": "PUSH2", + "path": "84", + "value": "0x37E0" + }, + "10848": { + "fn": "PortfolioHandler._sortInPlace", + "jump": "i", + "offset": [ + 16259, + 16338 + ], + "op": "JUMP", + "path": "84" + }, + "10849": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16259, + 16338 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10850": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16253 + ], + "op": "DUP4", + "path": "84" + }, + "10851": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16254, + 16255 + ], + "op": "DUP4", + "path": "84" + }, + "10852": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "DUP2", + "path": "84" + }, + "10853": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "MLOAD", + "path": "84" + }, + "10854": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "DUP2", + "path": "84" + }, + "10855": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "LT", + "path": "84" + }, + "10856": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A6D" + }, + "10859": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "JUMPI", + "path": "84" + }, + "10860": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "INVALID", + "path": "84" + }, + "10861": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10862": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10864": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP1", + "path": "84" + }, + "10865": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "DUP2", + "path": "84" + }, + "10866": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "MUL", + "path": "84" + }, + "10867": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP2", + "path": "84" + }, + "10868": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP1", + "path": "84" + }, + "10869": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP2", + "path": "84" + }, + "10870": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "ADD", + "path": "84" + }, + "10871": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "ADD", + "path": "84" + }, + "10872": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16338 + ], + "op": "MSTORE", + "path": "84" + }, + "10873": { + "op": "POP" + }, + "10874": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16120, + 16123 + ], + "op": "PUSH1", + "path": "84", + "statement": 247, + "value": "0x1" + }, + "10876": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16120, + 16123 + ], + "op": "ADD", + "path": "84" + }, + "10877": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A2A" + }, + "10880": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMP", + "path": "84" + }, + "10881": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10882": { + "op": "POP" + }, + "10883": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16403, + 16404 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10885": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10886": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16425, + 16431 + ], + "op": "DUP3", + "path": "84" + }, + "10887": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16421, + 16422 + ], + "op": "DUP2", + "path": "84" + }, + "10888": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16421, + 16431 + ], + "op": "LT", + "path": "84" + }, + "10889": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "ISZERO", + "path": "84" + }, + "10890": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "PUSH2", + "path": "84", + "value": "0x16D2" + }, + "10893": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMPI", + "path": "84" + }, + "10894": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16459, + 16460 + ], + "op": "DUP1", + "path": "84" + }, + "10895": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10896": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16485, + 16486 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10898": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16482 + ], + "op": "DUP2", + "path": "84" + }, + "10899": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16486 + ], + "op": "GT", + "path": "84" + }, + "10900": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "DUP1", + "path": "84" + }, + "10901": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "ISZERO", + "path": "84" + }, + "10902": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AC7" + }, + "10905": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "JUMPI", + "path": "84" + }, + "10906": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "POP", + "path": "84" + }, + "10907": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16506 + ], + "op": "DUP3", + "path": "84" + }, + "10908": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16507, + 16508 + ], + "op": "DUP2", + "path": "84" + }, + "10909": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "DUP2", + "path": "84" + }, + "10910": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "MLOAD", + "path": "84" + }, + "10911": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "DUP2", + "path": "84" + }, + "10912": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "LT", + "path": "84" + }, + "10913": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AA6" + }, + "10916": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "JUMPI", + "path": "84" + }, + "10917": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "INVALID", + "path": "84" + }, + "10918": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10919": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10921": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "MUL", + "path": "84" + }, + "10922": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10924": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "ADD", + "path": "84" + }, + "10925": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "ADD", + "path": "84" + }, + "10926": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "MLOAD", + "path": "84" + }, + "10927": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16493 + ], + "op": "DUP4", + "path": "84" + }, + "10928": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16498, + 16499 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10930": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16494, + 16495 + ], + "op": "DUP4", + "path": "84" + }, + "10931": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16494, + 16499 + ], + "op": "SUB", + "path": "84" + }, + "10932": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "DUP2", + "path": "84" + }, + "10933": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "MLOAD", + "path": "84" + }, + "10934": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "DUP2", + "path": "84" + }, + "10935": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "LT", + "path": "84" + }, + "10936": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2ABD" + }, + "10939": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "JUMPI", + "path": "84" + }, + "10940": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "INVALID", + "path": "84" + }, + "10941": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10942": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10944": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "MUL", + "path": "84" + }, + "10945": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10947": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "ADD", + "path": "84" + }, + "10948": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "ADD", + "path": "84" + }, + "10949": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "MLOAD", + "path": "84" + }, + "10950": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16509 + ], + "op": "GT", + "path": "84" + }, + "10951": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10952": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "ISZERO", + "path": "84" + }, + "10953": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B8F" + }, + "10956": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMPI", + "path": "84" + }, + "10957": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16592 + ], + "op": "DUP3", + "path": "84", + "statement": 248 + }, + "10958": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16593, + 16594 + ], + "op": "DUP2", + "path": "84" + }, + "10959": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "DUP2", + "path": "84" + }, + "10960": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "MLOAD", + "path": "84" + }, + "10961": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "DUP2", + "path": "84" + }, + "10962": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "LT", + "path": "84" + }, + "10963": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AD8" + }, + "10966": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "JUMPI", + "path": "84" + }, + "10967": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "INVALID", + "path": "84" + }, + "10968": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10969": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10971": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "MUL", + "path": "84" + }, + "10972": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10974": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "ADD", + "path": "84" + }, + "10975": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "ADD", + "path": "84" + }, + "10976": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "MLOAD", + "path": "84" + }, + "10977": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16600 + ], + "op": "DUP4", + "path": "84" + }, + "10978": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16605, + 16606 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10980": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16601, + 16602 + ], + "op": "DUP4", + "path": "84" + }, + "10981": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16601, + 16606 + ], + "op": "SUB", + "path": "84" + }, + "10982": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "DUP2", + "path": "84" + }, + "10983": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "MLOAD", + "path": "84" + }, + "10984": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "DUP2", + "path": "84" + }, + "10985": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "LT", + "path": "84" + }, + "10986": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AEF" + }, + "10989": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "JUMPI", + "path": "84" + }, + "10990": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "INVALID", + "path": "84" + }, + "10991": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10992": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10994": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "MUL", + "path": "84" + }, + "10995": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10997": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "ADD", + "path": "84" + }, + "10998": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "ADD", + "path": "84" + }, + "10999": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "MLOAD", + "path": "84" + }, + "11000": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16569 + ], + "op": "DUP5", + "path": "84" + }, + "11001": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16574, + 16575 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "11003": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16570, + 16571 + ], + "op": "DUP5", + "path": "84" + }, + "11004": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16570, + 16575 + ], + "op": "SUB", + "path": "84" + }, + "11005": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "DUP2", + "path": "84" + }, + "11006": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "MLOAD", + "path": "84" + }, + "11007": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "DUP2", + "path": "84" + }, + "11008": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "LT", + "path": "84" + }, + "11009": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B06" + }, + "11012": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "JUMPI", + "path": "84" + }, + "11013": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "INVALID", + "path": "84" + }, + "11014": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11015": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11017": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "MUL", + "path": "84" + }, + "11018": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11020": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "ADD", + "path": "84" + }, + "11021": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "ADD", + "path": "84" + }, + "11022": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16581 + ], + "op": "DUP6", + "path": "84" + }, + "11023": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16582, + 16583 + ], + "op": "DUP5", + "path": "84" + }, + "11024": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "DUP2", + "path": "84" + }, + "11025": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "MLOAD", + "path": "84" + }, + "11026": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "DUP2", + "path": "84" + }, + "11027": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "LT", + "path": "84" + }, + "11028": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B19" + }, + "11031": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "JUMPI", + "path": "84" + }, + "11032": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "INVALID", + "path": "84" + }, + "11033": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11034": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11036": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "MUL", + "path": "84" + }, + "11037": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11039": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "ADD", + "path": "84" + }, + "11040": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "ADD", + "path": "84" + }, + "11041": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP3", + "path": "84" + }, + "11042": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP2", + "path": "84" + }, + "11043": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "MSTORE", + "path": "84" + }, + "11044": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "11045": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP3", + "path": "84" + }, + "11046": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP2", + "path": "84" + }, + "11047": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "MSTORE", + "path": "84" + }, + "11048": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "11049": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "11050": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "11051": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16662 + ], + "op": "DUP5", + "path": "84", + "statement": 249 + }, + "11052": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16663, + 16664 + ], + "op": "DUP2", + "path": "84" + }, + "11053": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "DUP2", + "path": "84" + }, + "11054": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "MLOAD", + "path": "84" + }, + "11055": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "DUP2", + "path": "84" + }, + "11056": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "LT", + "path": "84" + }, + "11057": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B36" + }, + "11060": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "JUMPI", + "path": "84" + }, + "11061": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "INVALID", + "path": "84" + }, + "11062": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11063": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11065": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "MUL", + "path": "84" + }, + "11066": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11068": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "ADD", + "path": "84" + }, + "11069": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "ADD", + "path": "84" + }, + "11070": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "MLOAD", + "path": "84" + }, + "11071": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16673 + ], + "op": "DUP6", + "path": "84" + }, + "11072": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16678, + 16679 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "11074": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16674, + 16675 + ], + "op": "DUP4", + "path": "84" + }, + "11075": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16674, + 16679 + ], + "op": "SUB", + "path": "84" + }, + "11076": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "DUP2", + "path": "84" + }, + "11077": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "MLOAD", + "path": "84" + }, + "11078": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "DUP2", + "path": "84" + }, + "11079": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "LT", + "path": "84" + }, + "11080": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B4D" + }, + "11083": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "JUMPI", + "path": "84" + }, + "11084": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "INVALID", + "path": "84" + }, + "11085": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11086": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11088": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "MUL", + "path": "84" + }, + "11089": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11091": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "ADD", + "path": "84" + }, + "11092": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "ADD", + "path": "84" + }, + "11093": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "MLOAD", + "path": "84" + }, + "11094": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16633 + ], + "op": "DUP7", + "path": "84" + }, + "11095": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16638, + 16639 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "11097": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16634, + 16635 + ], + "op": "DUP5", + "path": "84" + }, + "11098": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16634, + 16639 + ], + "op": "SUB", + "path": "84" + }, + "11099": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "DUP2", + "path": "84" + }, + "11100": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "MLOAD", + "path": "84" + }, + "11101": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "DUP2", + "path": "84" + }, + "11102": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "LT", + "path": "84" + }, + "11103": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B64" + }, + "11106": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "JUMPI", + "path": "84" + }, + "11107": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "INVALID", + "path": "84" + }, + "11108": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11109": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11111": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "MUL", + "path": "84" + }, + "11112": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11114": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "ADD", + "path": "84" + }, + "11115": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "ADD", + "path": "84" + }, + "11116": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16648 + ], + "op": "DUP8", + "path": "84" + }, + "11117": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16649, + 16650 + ], + "op": "DUP5", + "path": "84" + }, + "11118": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "DUP2", + "path": "84" + }, + "11119": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "MLOAD", + "path": "84" + }, + "11120": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "DUP2", + "path": "84" + }, + "11121": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "LT", + "path": "84" + }, + "11122": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B77" + }, + "11125": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "JUMPI", + "path": "84" + }, + "11126": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "INVALID", + "path": "84" + }, + "11127": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11128": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11130": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP1", + "path": "84" + }, + "11131": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "DUP2", + "path": "84" + }, + "11132": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "MUL", + "path": "84" + }, + "11133": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP2", + "path": "84" + }, + "11134": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP1", + "path": "84" + }, + "11135": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP2", + "path": "84" + }, + "11136": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "ADD", + "path": "84" + }, + "11137": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "ADD", + "path": "84" + }, + "11138": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "SWAP2", + "path": "84" + }, + "11139": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "SWAP1", + "path": "84" + }, + "11140": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "SWAP2", + "path": "84" + }, + "11141": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "MSTORE", + "path": "84" + }, + "11142": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "MSTORE", + "path": "84" + }, + "11143": { + "op": "PUSH1", + "value": "0x0" + }, + "11145": { + "op": "NOT" + }, + "11146": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16699, + 16702 + ], + "op": "ADD", + "path": "84", + "statement": 250 + }, + "11147": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A8F" + }, + "11150": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMP", + "path": "84" + }, + "11151": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11152": { + "op": "POP" + }, + "11153": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16730, + 16733 + ], + "op": "PUSH1", + "path": "84", + "statement": 251, + "value": "0x1" + }, + "11155": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16730, + 16733 + ], + "op": "ADD", + "path": "84" + }, + "11156": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A85" + }, + "11159": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMP", + "path": "84" + }, + "11160": { + "fn": "LibStorage.getBalanceStorage", + "offset": [ + 3638, + 3878 + ], + "op": "JUMPDEST", + "path": "62" + }, + "11161": { + "fn": "LibStorage.getBalanceStorage", + "offset": [ + 3698, + 3766 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "11163": { + "fn": "LibStorage.getBalanceStorage", + "offset": [ + 3782, + 3794 + ], + "op": "DUP1", + "path": "62" + }, + "11164": { + "fn": "LibStorage.getBalanceStorage", + "offset": [ + 3797, + 3831 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "11167": { + "fn": "LibStorage.getBalanceStorage", + "offset": [ + 3813, + 3830 + ], + "op": "PUSH1", + "path": "62", + "value": "0x6" + }, + "11169": { + "fn": "LibStorage.getBalanceStorage", + "offset": [ + 3797, + 3812 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "11172": { + "fn": "LibStorage.getBalanceStorage", + "jump": "i", + "offset": [ + 3797, + 3831 + ], + "op": "JUMP", + "path": "62" + }, + "11173": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1180, + 1425 + ], + "op": "JUMPDEST", + "path": "93" + }, + "11174": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1403, + 1404 + ], + "op": "PUSH1", + "path": "93", + "statement": 252, + "value": "0x8" + }, + "11176": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1394, + 1404 + ], + "op": "DUP2", + "path": "93" + }, + "11177": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1394, + 1404 + ], + "op": "SWAP1", + "path": "93" + }, + "11178": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1394, + 1404 + ], + "op": "SHR", + "path": "93" + }, + "11179": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1354, + 1375 + ], + "op": "PUSH1", + "path": "93", + "value": "0xFF" + }, + "11181": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1354, + 1375 + ], + "op": "SWAP1", + "path": "93" + }, + "11182": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1354, + 1375 + ], + "op": "SWAP2", + "path": "93" + }, + "11183": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1354, + 1375 + ], + "op": "AND", + "path": "93" + }, + "11184": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1393, + 1417 + ], + "op": "SHL", + "path": "93" + }, + "11185": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "offset": [ + 1393, + 1417 + ], + "op": "SWAP1", + "path": "93" + }, + "11186": { + "fn": "FloatingPoint56.unpackFrom56Bits", + "jump": "o", + "offset": [ + 1180, + 1425 + ], + "op": "JUMP", + "path": "93" + }, + "11187": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 2832, + 3267 + ], + "op": "JUMPDEST", + "path": "76" + }, + "11188": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 2928, + 2955 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "11190": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 2957, + 2986 + ], + "op": "DUP1", + "path": "76" + }, + "11191": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3002, + 3052 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "11193": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3055, + 3087 + ], + "op": "PUSH2", + "path": "76", + "value": "0x2BC0" + }, + "11196": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3055, + 3085 + ], + "op": "PUSH2", + "path": "76", + "value": "0x383B" + }, + "11199": { + "fn": "AssetRate._getAssetRateStorage", + "jump": "i", + "offset": [ + 3055, + 3087 + ], + "op": "JUMP", + "path": "76" + }, + "11200": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3055, + 3087 + ], + "op": "JUMPDEST", + "path": "76" + }, + "11201": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3097, + 3124 + ], + "op": "PUSH1", + "path": "76", + "value": "0x0" + }, + "11203": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "SWAP5", + "path": "76" + }, + "11204": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "DUP6", + "path": "76" + }, + "11205": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "MSTORE", + "path": "76" + }, + "11206": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "PUSH1", + "path": "76", + "value": "0x20" + }, + "11208": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "MSTORE", + "path": "76" + }, + "11209": { + "op": "POP" + }, + "11210": { + "op": "POP" + }, + "11211": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "PUSH1", + "path": "76", + "value": "0x40" + }, + "11213": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "SWAP1", + "path": "76" + }, + "11214": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "SWAP2", + "path": "76" + }, + "11215": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3127, + 3144 + ], + "op": "KECCAK256", + "path": "76" + }, + "11216": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3184, + 3197 + ], + "op": "SLOAD", + "path": "76", + "statement": 253 + }, + "11217": { + "op": "PUSH1", + "value": "0x1" + }, + "11219": { + "op": "PUSH1", + "value": "0x1" + }, + "11221": { + "op": "PUSH1", + "value": "0xA0" + }, + "11223": { + "op": "SHL" + }, + "11224": { + "op": "SUB" + }, + "11225": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3184, + 3197 + ], + "op": "DUP2", + "path": "76" + }, + "11226": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3184, + 3197 + ], + "op": "AND", + "path": "76" + }, + "11227": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3184, + 3197 + ], + "op": "SWAP3", + "path": "76" + }, + "11228": { + "op": "PUSH1", + "value": "0x1" + }, + "11230": { + "op": "PUSH1", + "value": "0xA0" + }, + "11232": { + "op": "SHL" + }, + "11233": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3234, + 3260 + ], + "op": "SWAP1", + "path": "76", + "statement": 254 + }, + "11234": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3234, + 3260 + ], + "op": "SWAP2", + "path": "76" + }, + "11235": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3234, + 3260 + ], + "op": "DIV", + "path": "76" + }, + "11236": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3234, + 3260 + ], + "op": "PUSH1", + "path": "76", + "value": "0xFF" + }, + "11238": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3234, + 3260 + ], + "op": "AND", + "path": "76" + }, + "11239": { + "fn": "AssetRate._getAssetRateStorage", + "offset": [ + 3234, + 3260 + ], + "op": "SWAP2", + "path": "76" + }, + "11240": { + "op": "POP" + }, + "11241": { + "fn": "AssetRate._getAssetRateStorage", + "jump": "o", + "offset": [ + 2832, + 3267 + ], + "op": "JUMP", + "path": "76" + }, + "11242": { + "fn": "LibStorage.getTokenStorage", + "offset": [ + 3993, + 4224 + ], + "op": "JUMPDEST", + "path": "62" + }, + "11243": { + "fn": "LibStorage.getTokenStorage", + "offset": [ + 4051, + 4114 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "11245": { + "fn": "LibStorage.getTokenStorage", + "offset": [ + 4130, + 4142 + ], + "op": "DUP1", + "path": "62" + }, + "11246": { + "fn": "LibStorage.getTokenStorage", + "offset": [ + 4145, + 4177 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "11249": { + "fn": "LibStorage.getTokenStorage", + "offset": [ + 4161, + 4176 + ], + "op": "PUSH1", + "path": "62", + "value": "0x7" + }, + "11251": { + "fn": "LibStorage.getTokenStorage", + "offset": [ + 4145, + 4160 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "11254": { + "fn": "LibStorage.getTokenStorage", + "jump": "i", + "offset": [ + 4145, + 4177 + ], + "op": "JUMP", + "path": "62" + }, + "11255": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 4999, + 5988 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11256": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5122, + 5147 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "11258": { + "branch": 408, + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5163, + 5192 + ], + "op": "DUP2", + "path": "70" + }, + "11259": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5159, + 5202 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C06" + }, + "11262": { + "branch": 408, + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5159, + 5202 + ], + "op": "JUMPI", + "path": "70" + }, + "11263": { + "op": "POP" + }, + "11264": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5201, + 5202 + ], + "op": "PUSH1", + "path": "70", + "statement": 255, + "value": "0x0" + }, + "11266": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5194, + 5202 + ], + "op": "PUSH2", + "path": "70", + "value": "0xEDB" + }, + "11269": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5194, + 5202 + ], + "op": "JUMP", + "path": "70" + }, + "11270": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5159, + 5202 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11271": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5265, + 5277 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "11273": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5280, + 5324 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C11" + }, + "11276": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5308, + 5323 + ], + "op": "DUP5", + "path": "70" + }, + "11277": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5280, + 5307 + ], + "op": "PUSH2", + "path": "70", + "value": "0x30F3" + }, + "11280": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "jump": "i", + "offset": [ + 5280, + 5324 + ], + "op": "JUMP", + "path": "70" + }, + "11281": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5280, + 5324 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11282": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5265, + 5324 + ], + "op": "SWAP1", + "path": "70" + }, + "11283": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5265, + 5324 + ], + "op": "POP", + "path": "70" + }, + "11284": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5443, + 5453 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "11286": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5456, + 5486 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C1E" + }, + "11289": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5456, + 5480 + ], + "op": "DUP5", + "path": "70" + }, + "11290": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5456, + 5484 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3848" + }, + "11293": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "jump": "i", + "offset": [ + 5456, + 5486 + ], + "op": "JUMP", + "path": "70" + }, + "11294": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5456, + 5486 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11295": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5443, + 5486 + ], + "op": "SWAP1", + "path": "70" + }, + "11296": { + "op": "POP" + }, + "11297": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5841, + 5846 + ], + "op": "DUP2", + "path": "70", + "statement": 256 + }, + "11298": { + "op": "PUSH12", + "value": "0x19D971E4FE8401E74000001" + }, + "11311": { + "op": "PUSH1", + "value": "0x1" + }, + "11313": { + "op": "PUSH1", + "value": "0xFF" + }, + "11315": { + "op": "SHL" + }, + "11316": { + "op": "SUB" + }, + "11317": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5841, + 5846 + ], + "op": "DUP2", + "path": "70" + }, + "11318": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5810, + 5846 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C3B" + }, + "11321": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5810, + 5846 + ], + "op": "JUMPI", + "path": "70" + }, + "11322": { + "dev": "Division by zero", + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5810, + 5846 + ], + "op": "INVALID", + "path": "70" + }, + "11323": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5810, + 5846 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11324": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5810, + 5846 + ], + "op": "SDIV", + "path": "70" + }, + "11325": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5803, + 5806 + ], + "op": "DUP2", + "path": "70" + }, + "11326": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5803, + 5846 + ], + "op": "SGT", + "path": "70" + }, + "11327": { + "branch": 409, + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5803, + 5846 + ], + "op": "ISZERO", + "path": "70" + }, + "11328": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5795, + 5847 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C48" + }, + "11331": { + "branch": 409, + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5795, + 5847 + ], + "op": "JUMPI", + "path": "70" + }, + "11332": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5795, + 5847 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "11334": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5795, + 5847 + ], + "op": "DUP1", + "path": "70" + }, + "11335": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5795, + 5847 + ], + "op": "REVERT", + "path": "70" + }, + "11336": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5795, + 5847 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11337": { + "offset": [ + 457, + 461 + ], + "op": "PUSH12", + "path": "70", + "value": "0x33B2E3C9FD0803CE8000000" + }, + "11350": { + "offset": [ + 502, + 509 + ], + "op": "PUSH12", + "path": "70", + "value": "0x19D971E4FE8401E74000000" + }, + "11363": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5877, + 5888 + ], + "op": "DUP4", + "path": "70" + }, + "11364": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5877, + 5888 + ], + "op": "DUP4", + "path": "70" + }, + "11365": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5877, + 5888 + ], + "op": "MUL", + "path": "70" + }, + "11366": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5877, + 5898 + ], + "op": "ADD", + "path": "70" + }, + "11367": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5876, + 5905 + ], + "op": "SDIV", + "path": "70" + }, + "11368": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5857, + 5873 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "11370": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5951 + ], + "op": "DUP6", + "path": "70", + "statement": 257 + }, + "11371": { + "branch": 410, + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5951 + ], + "op": "SGT", + "path": "70" + }, + "11372": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5981 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C7D" + }, + "11375": { + "branch": 410, + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5981 + ], + "op": "JUMPI", + "path": "70" + }, + "11376": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5966, + 5981 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C78" + }, + "11379": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5966, + 5975 + ], + "op": "DUP2", + "path": "70" + }, + "11380": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5966, + 5979 + ], + "op": "PUSH2", + "path": "70", + "value": "0xEE1" + }, + "11383": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "jump": "i", + "offset": [ + 5966, + 5981 + ], + "op": "JUMP", + "path": "70" + }, + "11384": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5966, + 5981 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11385": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5981 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2C7F" + }, + "11388": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5981 + ], + "op": "JUMP", + "path": "70" + }, + "11389": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5981 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11390": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5954, + 5963 + ], + "op": "DUP1", + "path": "70" + }, + "11391": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5923, + 5981 + ], + "op": "JUMPDEST", + "path": "70" + }, + "11392": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 5916, + 5981 + ], + "op": "SWAP7", + "path": "70" + }, + "11393": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "offset": [ + 4999, + 5988 + ], + "op": "SWAP6", + "path": "70" + }, + "11394": { + "op": "POP" + }, + "11395": { + "op": "POP" + }, + "11396": { + "op": "POP" + }, + "11397": { + "op": "POP" + }, + "11398": { + "op": "POP" + }, + "11399": { + "op": "POP" + }, + "11400": { + "fn": "AaveHandler.convertFromScaledBalanceExternal", + "jump": "o", + "offset": [ + 4999, + 5988 + ], + "op": "JUMP", + "path": "70" + }, + "11401": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11402": { + "fn": "TokenHandler._deposit", + "offset": [ + 11277, + 11283 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "11404": { + "fn": "TokenHandler._deposit", + "offset": [ + 11277, + 11283 + ], + "op": "DUP1", + "path": "69" + }, + "11405": { + "fn": "TokenHandler._deposit", + "offset": [ + 11277, + 11283 + ], + "op": "DUP1", + "path": "69" + }, + "11406": { + "fn": "TokenHandler._deposit", + "offset": [ + 11277, + 11283 + ], + "op": "DUP1", + "path": "69" + }, + "11407": { + "fn": "TokenHandler._deposit", + "offset": [ + 11405, + 11421 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "11409": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11391 + ], + "op": "DUP8", + "path": "69" + }, + "11410": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11401 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "11412": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11401 + ], + "op": "ADD", + "path": "69" + }, + "11413": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11401 + ], + "op": "MLOAD", + "path": "69" + }, + "11414": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "11416": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "DUP2", + "path": "69" + }, + "11417": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "GT", + "path": "69" + }, + "11418": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "ISZERO", + "path": "69" + }, + "11419": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CA0" + }, + "11422": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "JUMPI", + "path": "69" + }, + "11423": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "INVALID", + "path": "69" + }, + "11424": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11425": { + "branch": 552, + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11421 + ], + "op": "EQ", + "path": "69" + }, + "11426": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11523 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CB2" + }, + "11429": { + "branch": 552, + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11523 + ], + "op": "JUMPI", + "path": "69" + }, + "11430": { + "op": "PUSH4", + "value": "0x70A08231" + }, + "11435": { + "op": "PUSH1", + "value": "0xE0" + }, + "11437": { + "op": "SHL" + }, + "11438": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11523 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CBB" + }, + "11441": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11523 + ], + "op": "JUMP", + "path": "69" + }, + "11442": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11523 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11443": { + "op": "PUSH4", + "value": "0xED1279F" + }, + "11448": { + "op": "PUSH1", + "value": "0xE1" + }, + "11450": { + "op": "SHL" + }, + "11451": { + "fn": "TokenHandler._deposit", + "offset": [ + 11386, + 11523 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11452": { + "fn": "TokenHandler._deposit", + "offset": [ + 11359, + 11523 + ], + "op": "SWAP1", + "path": "69" + }, + "11453": { + "fn": "TokenHandler._deposit", + "offset": [ + 11359, + 11523 + ], + "op": "POP", + "path": "69" + }, + "11454": { + "fn": "TokenHandler._deposit", + "offset": [ + 11538, + 11543 + ], + "op": "DUP7", + "path": "69" + }, + "11455": { + "fn": "TokenHandler._deposit", + "offset": [ + 11538, + 11558 + ], + "op": "PUSH1", + "path": "69", + "value": "0x20" + }, + "11457": { + "fn": "TokenHandler._deposit", + "offset": [ + 11538, + 11558 + ], + "op": "ADD", + "path": "69" + }, + "11458": { + "branch": 553, + "fn": "TokenHandler._deposit", + "offset": [ + 11538, + 11558 + ], + "op": "MLOAD", + "path": "69" + }, + "11459": { + "fn": "TokenHandler._deposit", + "offset": [ + 11534, + 11693 + ], + "op": "ISZERO", + "path": "69" + }, + "11460": { + "fn": "TokenHandler._deposit", + "offset": [ + 11534, + 11693 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CD7" + }, + "11463": { + "branch": 553, + "fn": "TokenHandler._deposit", + "offset": [ + 11534, + 11693 + ], + "op": "JUMPI", + "path": "69" + }, + "11464": { + "fn": "TokenHandler._deposit", + "offset": [ + 11629, + 11647 + ], + "op": "DUP7", + "path": "69", + "statement": 258 + }, + "11465": { + "fn": "TokenHandler._deposit", + "offset": [ + 11629, + 11647 + ], + "op": "MLOAD", + "path": "69" + }, + "11466": { + "fn": "TokenHandler._deposit", + "offset": [ + 11592, + 11682 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CD4" + }, + "11469": { + "fn": "TokenHandler._deposit", + "offset": [ + 11592, + 11682 + ], + "op": "SWAP1", + "path": "69" + }, + "11470": { + "fn": "TokenHandler._deposit", + "offset": [ + 11657, + 11661 + ], + "op": "ADDRESS", + "path": "69" + }, + "11471": { + "fn": "TokenHandler._deposit", + "offset": [ + 11664, + 11681 + ], + "op": "DUP4", + "path": "69" + }, + "11472": { + "fn": "TokenHandler._deposit", + "offset": [ + 11592, + 11628 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2E2E" + }, + "11475": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 11592, + 11682 + ], + "op": "JUMP", + "path": "69" + }, + "11476": { + "fn": "TokenHandler._deposit", + "offset": [ + 11592, + 11682 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11477": { + "fn": "TokenHandler._deposit", + "offset": [ + 11574, + 11682 + ], + "op": "SWAP3", + "path": "69" + }, + "11478": { + "fn": "TokenHandler._deposit", + "offset": [ + 11574, + 11682 + ], + "op": "POP", + "path": "69" + }, + "11479": { + "fn": "TokenHandler._deposit", + "offset": [ + 11534, + 11693 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11480": { + "fn": "TokenHandler._deposit", + "offset": [ + 11731, + 11749 + ], + "op": "DUP7", + "path": "69", + "statement": 259 + }, + "11481": { + "fn": "TokenHandler._deposit", + "offset": [ + 11731, + 11749 + ], + "op": "MLOAD", + "path": "69" + }, + "11482": { + "fn": "TokenHandler._deposit", + "offset": [ + 11703, + 11767 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CE4" + }, + "11485": { + "fn": "TokenHandler._deposit", + "offset": [ + 11703, + 11767 + ], + "op": "SWAP1", + "path": "69" + }, + "11486": { + "fn": "TokenHandler._deposit", + "offset": [ + 11751, + 11758 + ], + "op": "DUP8", + "path": "69" + }, + "11487": { + "fn": "TokenHandler._deposit", + "offset": [ + 11760, + 11766 + ], + "op": "DUP8", + "path": "69" + }, + "11488": { + "fn": "TokenHandler._deposit", + "offset": [ + 11703, + 11730 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3869" + }, + "11491": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 11703, + 11767 + ], + "op": "JUMP", + "path": "69" + }, + "11492": { + "fn": "TokenHandler._deposit", + "offset": [ + 11703, + 11767 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11493": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11787 + ], + "op": "DUP7", + "path": "69" + }, + "11494": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11802 + ], + "op": "PUSH1", + "path": "69", + "value": "0x20" + }, + "11496": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11802 + ], + "op": "ADD", + "path": "69" + }, + "11497": { + "branch": 554, + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11802 + ], + "op": "MLOAD", + "path": "69" + }, + "11498": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11836 + ], + "op": "DUP1", + "path": "69" + }, + "11499": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11836 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2CF8" + }, + "11502": { + "branch": 554, + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11836 + ], + "op": "JUMPI", + "path": "69" + }, + "11503": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11836 + ], + "op": "POP", + "path": "69" + }, + "11504": { + "fn": "TokenHandler._deposit", + "offset": [ + 11835, + 11836 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "11506": { + "fn": "TokenHandler._deposit", + "offset": [ + 11806, + 11811 + ], + "op": "DUP8", + "path": "69" + }, + "11507": { + "fn": "TokenHandler._deposit", + "offset": [ + 11806, + 11832 + ], + "op": "PUSH1", + "path": "69", + "value": "0x80" + }, + "11509": { + "fn": "TokenHandler._deposit", + "offset": [ + 11806, + 11832 + ], + "op": "ADD", + "path": "69" + }, + "11510": { + "fn": "TokenHandler._deposit", + "offset": [ + 11806, + 11832 + ], + "op": "MLOAD", + "path": "69" + }, + "11511": { + "branch": 555, + "fn": "TokenHandler._deposit", + "offset": [ + 11806, + 11836 + ], + "op": "GT", + "path": "69" + }, + "11512": { + "fn": "TokenHandler._deposit", + "offset": [ + 11782, + 11836 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11513": { + "fn": "TokenHandler._deposit", + "offset": [ + 11778, + 12278 + ], + "op": "ISZERO", + "path": "69" + }, + "11514": { + "fn": "TokenHandler._deposit", + "offset": [ + 11778, + 12278 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D0D" + }, + "11517": { + "branch": 555, + "fn": "TokenHandler._deposit", + "offset": [ + 11778, + 12278 + ], + "op": "JUMPI", + "path": "69" + }, + "11518": { + "fn": "TokenHandler._deposit", + "offset": [ + 12214, + 12232 + ], + "op": "DUP7", + "path": "69", + "statement": 260 + }, + "11519": { + "fn": "TokenHandler._deposit", + "offset": [ + 12214, + 12232 + ], + "op": "MLOAD", + "path": "69" + }, + "11520": { + "fn": "TokenHandler._deposit", + "offset": [ + 12177, + 12267 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D0A" + }, + "11523": { + "fn": "TokenHandler._deposit", + "offset": [ + 12177, + 12267 + ], + "op": "SWAP1", + "path": "69" + }, + "11524": { + "fn": "TokenHandler._deposit", + "offset": [ + 12242, + 12246 + ], + "op": "ADDRESS", + "path": "69" + }, + "11525": { + "fn": "TokenHandler._deposit", + "offset": [ + 12249, + 12266 + ], + "op": "DUP4", + "path": "69" + }, + "11526": { + "fn": "TokenHandler._deposit", + "offset": [ + 12177, + 12213 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2E2E" + }, + "11529": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 12177, + 12267 + ], + "op": "JUMP", + "path": "69" + }, + "11530": { + "fn": "TokenHandler._deposit", + "offset": [ + 12177, + 12267 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11531": { + "fn": "TokenHandler._deposit", + "offset": [ + 12161, + 12267 + ], + "op": "SWAP2", + "path": "69" + }, + "11532": { + "fn": "TokenHandler._deposit", + "offset": [ + 12161, + 12267 + ], + "op": "POP", + "path": "69" + }, + "11533": { + "fn": "TokenHandler._deposit", + "offset": [ + 11778, + 12278 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11534": { + "fn": "TokenHandler._deposit", + "offset": [ + 12292, + 12318 + ], + "op": "PUSH1", + "path": "69", + "value": "0x80" + }, + "11536": { + "fn": "TokenHandler._deposit", + "offset": [ + 12292, + 12318 + ], + "op": "DUP8", + "path": "69" + }, + "11537": { + "fn": "TokenHandler._deposit", + "offset": [ + 12292, + 12318 + ], + "op": "ADD", + "path": "69" + }, + "11538": { + "fn": "TokenHandler._deposit", + "offset": [ + 12292, + 12318 + ], + "op": "MLOAD", + "path": "69" + }, + "11539": { + "branch": 556, + "fn": "TokenHandler._deposit", + "offset": [ + 12292, + 12322 + ], + "op": "ISZERO", + "path": "69" + }, + "11540": { + "fn": "TokenHandler._deposit", + "offset": [ + 12288, + 12642 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D48" + }, + "11543": { + "branch": 556, + "fn": "TokenHandler._deposit", + "offset": [ + 12288, + 12642 + ], + "op": "JUMPI", + "path": "69" + }, + "11544": { + "fn": "TokenHandler._deposit", + "offset": [ + 12338, + 12369 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "11546": { + "fn": "TokenHandler._deposit", + "offset": [ + 12372, + 12429 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D2B" + }, + "11549": { + "fn": "TokenHandler._deposit", + "offset": [ + 12390, + 12395 + ], + "op": "DUP9", + "path": "69" + }, + "11550": { + "fn": "TokenHandler._deposit", + "offset": [ + 12397, + 12428 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D26" + }, + "11553": { + "fn": "TokenHandler._deposit", + "offset": [ + 12414, + 12427 + ], + "op": "DUP6", + "path": "69" + }, + "11554": { + "fn": "TokenHandler._deposit", + "offset": [ + 12397, + 12413 + ], + "op": "PUSH2", + "path": "69", + "value": "0x264D" + }, + "11557": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 12397, + 12428 + ], + "op": "JUMP", + "path": "69" + }, + "11558": { + "fn": "TokenHandler._deposit", + "offset": [ + 12397, + 12428 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11559": { + "fn": "TokenHandler._deposit", + "offset": [ + 12372, + 12389 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DFA" + }, + "11562": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 12372, + 12429 + ], + "op": "JUMP", + "path": "69" + }, + "11563": { + "fn": "TokenHandler._deposit", + "offset": [ + 12372, + 12429 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11564": { + "fn": "TokenHandler._deposit", + "offset": [ + 12338, + 12429 + ], + "op": "SWAP1", + "path": "69" + }, + "11565": { + "fn": "TokenHandler._deposit", + "offset": [ + 12338, + 12429 + ], + "op": "POP", + "path": "69" + }, + "11566": { + "fn": "TokenHandler._deposit", + "offset": [ + 12550, + 12594 + ], + "op": "PUSH2", + "path": "69", + "statement": 261, + "value": "0x2D3A" + }, + "11569": { + "fn": "TokenHandler._deposit", + "offset": [ + 12567, + 12572 + ], + "op": "DUP9", + "path": "69" + }, + "11570": { + "fn": "TokenHandler._deposit", + "offset": [ + 12567, + 12593 + ], + "op": "PUSH1", + "path": "69", + "value": "0x80" + }, + "11572": { + "fn": "TokenHandler._deposit", + "offset": [ + 12567, + 12593 + ], + "op": "ADD", + "path": "69" + }, + "11573": { + "fn": "TokenHandler._deposit", + "offset": [ + 12567, + 12593 + ], + "op": "MLOAD", + "path": "69" + }, + "11574": { + "fn": "TokenHandler._deposit", + "offset": [ + 12550, + 12566 + ], + "op": "PUSH2", + "path": "69", + "value": "0x264D" + }, + "11577": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 12550, + 12594 + ], + "op": "JUMP", + "path": "69" + }, + "11578": { + "fn": "TokenHandler._deposit", + "offset": [ + 12550, + 12594 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11579": { + "fn": "TokenHandler._deposit", + "offset": [ + 12522, + 12546 + ], + "op": "DUP2", + "path": "69" + }, + "11580": { + "fn": "TokenHandler._deposit", + "offset": [ + 12522, + 12594 + ], + "op": "SGT", + "path": "69" + }, + "11581": { + "branch": 557, + "fn": "TokenHandler._deposit", + "offset": [ + 12522, + 12594 + ], + "op": "ISZERO", + "path": "69" + }, + "11582": { + "fn": "TokenHandler._deposit", + "offset": [ + 12514, + 12595 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D46" + }, + "11585": { + "branch": 557, + "fn": "TokenHandler._deposit", + "offset": [ + 12514, + 12595 + ], + "op": "JUMPI", + "path": "69" + }, + "11586": { + "fn": "TokenHandler._deposit", + "offset": [ + 12514, + 12595 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "11588": { + "fn": "TokenHandler._deposit", + "offset": [ + 12514, + 12595 + ], + "op": "DUP1", + "path": "69" + }, + "11589": { + "fn": "TokenHandler._deposit", + "offset": [ + 12514, + 12595 + ], + "op": "REVERT", + "path": "69" + }, + "11590": { + "fn": "TokenHandler._deposit", + "offset": [ + 12514, + 12595 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11591": { + "fn": "TokenHandler._deposit", + "offset": [ + 12288, + 12642 + ], + "op": "POP", + "path": "69" + }, + "11592": { + "fn": "TokenHandler._deposit", + "offset": [ + 12288, + 12642 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11593": { + "fn": "TokenHandler._deposit", + "offset": [ + 12740, + 12745 + ], + "op": "DUP7", + "path": "69" + }, + "11594": { + "fn": "TokenHandler._deposit", + "offset": [ + 12740, + 12760 + ], + "op": "PUSH1", + "path": "69", + "value": "0x20" + }, + "11596": { + "fn": "TokenHandler._deposit", + "offset": [ + 12740, + 12760 + ], + "op": "ADD", + "path": "69" + }, + "11597": { + "branch": 558, + "fn": "TokenHandler._deposit", + "offset": [ + 12740, + 12760 + ], + "op": "MLOAD", + "path": "69" + }, + "11598": { + "fn": "TokenHandler._deposit", + "offset": [ + 12736, + 12908 + ], + "op": "ISZERO", + "path": "69" + }, + "11599": { + "fn": "TokenHandler._deposit", + "offset": [ + 12736, + 12908 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2D69" + }, + "11602": { + "branch": 558, + "fn": "TokenHandler._deposit", + "offset": [ + 12736, + 12908 + ], + "op": "JUMPI", + "path": "69" + }, + "11603": { + "fn": "TokenHandler._deposit", + "offset": [ + 12783, + 12835 + ], + "op": "PUSH2", + "path": "69", + "statement": 262, + "value": "0x2D5F" + }, + "11606": { + "fn": "TokenHandler._deposit", + "offset": [ + 12800, + 12834 + ], + "op": "PUSH2", + "path": "69", + "value": "0x1DEA" + }, + "11609": { + "fn": "TokenHandler._deposit", + "offset": [ + 12800, + 12813 + ], + "op": "DUP4", + "path": "69" + }, + "11610": { + "fn": "TokenHandler._deposit", + "offset": [ + 12818, + 12833 + ], + "op": "DUP6", + "path": "69" + }, + "11611": { + "fn": "TokenHandler._deposit", + "offset": [ + 12800, + 12817 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3096" + }, + "11614": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 12800, + 12834 + ], + "op": "JUMP", + "path": "69" + }, + "11615": { + "fn": "TokenHandler._deposit", + "offset": [ + 12783, + 12835 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11616": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "SWAP4", + "path": "69" + }, + "11617": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "POP", + "path": "69" + }, + "11618": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "POP", + "path": "69" + }, + "11619": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "POP", + "path": "69" + }, + "11620": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "POP", + "path": "69" + }, + "11621": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "PUSH2", + "path": "69", + "value": "0xAA3" + }, + "11624": { + "fn": "TokenHandler._deposit", + "offset": [ + 12776, + 12835 + ], + "op": "JUMP", + "path": "69" + }, + "11625": { + "fn": "TokenHandler._deposit", + "offset": [ + 12736, + 12908 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11626": { + "fn": "TokenHandler._deposit", + "offset": [ + 12873, + 12897 + ], + "op": "PUSH2", + "path": "69", + "statement": 263, + "value": "0x2D5F" + }, + "11629": { + "fn": "TokenHandler._deposit", + "offset": [ + 12890, + 12896 + ], + "op": "DUP6", + "path": "69" + }, + "11630": { + "fn": "TokenHandler._deposit", + "offset": [ + 12873, + 12889 + ], + "op": "PUSH2", + "path": "69", + "value": "0x264D" + }, + "11633": { + "fn": "TokenHandler._deposit", + "jump": "i", + "offset": [ + 12873, + 12897 + ], + "op": "JUMP", + "path": "69" + }, + "11634": { + "fn": "TokenHandler._deposit", + "offset": [ + 12736, + 12908 + ], + "op": "JUMPDEST", + "path": "69" + }, + "11635": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "POP", + "path": "69" + }, + "11636": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "POP", + "path": "69" + }, + "11637": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "POP", + "path": "69" + }, + "11638": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "SWAP4", + "path": "69" + }, + "11639": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "SWAP3", + "path": "69" + }, + "11640": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "POP", + "path": "69" + }, + "11641": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "POP", + "path": "69" + }, + "11642": { + "fn": "TokenHandler._deposit", + "offset": [ + 11159, + 12914 + ], + "op": "POP", + "path": "69" + }, + "11643": { + "fn": "TokenHandler._deposit", + "jump": "o", + "offset": [ + 11159, + 12914 + ], + "op": "JUMP", + "path": "69" + }, + "11644": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 824, + 1167 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11645": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "PUSH1", + "path": "72", + "statement": 264, + "value": "0x40" + }, + "11647": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "MLOAD", + "path": "72" + }, + "11648": { + "op": "PUSH1", + "value": "0x1" + }, + "11650": { + "op": "PUSH1", + "value": "0x1" + }, + "11652": { + "op": "PUSH1", + "value": "0xA0" + }, + "11654": { + "op": "SHL" + }, + "11655": { + "op": "SUB" + }, + "11656": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1152 + ], + "op": "DUP4", + "path": "72" + }, + "11657": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1152 + ], + "op": "AND", + "path": "72" + }, + "11658": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1152 + ], + "op": "SWAP1", + "path": "72" + }, + "11659": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP3", + "path": "72" + }, + "11660": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "ISZERO", + "path": "72" + }, + "11661": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "PUSH2", + "path": "72", + "value": "0x8FC" + }, + "11664": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "MUL", + "path": "72" + }, + "11665": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "SWAP1", + "path": "72" + }, + "11666": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1153, + 1159 + ], + "op": "DUP4", + "path": "72" + }, + "11667": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1153, + 1159 + ], + "op": "SWAP1", + "path": "72" + }, + "11668": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11670": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP2", + "path": "72" + }, + "11671": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP2", + "path": "72" + }, + "11672": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP2", + "path": "72" + }, + "11673": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1153, + 1159 + ], + "op": "DUP6", + "path": "72" + }, + "11674": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1152 + ], + "op": "DUP9", + "path": "72" + }, + "11675": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP9", + "path": "72" + }, + "11676": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "CALL", + "path": "72" + }, + "11677": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "SWAP4", + "path": "72" + }, + "11678": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "POP", + "path": "72" + }, + "11679": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "POP", + "path": "72" + }, + "11680": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "POP", + "path": "72" + }, + "11681": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "POP", + "path": "72" + }, + "11682": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "ISZERO", + "path": "72" + }, + "11683": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP1", + "path": "72" + }, + "11684": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "ISZERO", + "path": "72" + }, + "11685": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2DB2" + }, + "11688": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "JUMPI", + "path": "72" + }, + "11689": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "11690": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11692": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "DUP1", + "path": "72" + }, + "11693": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "RETURNDATACOPY", + "path": "72" + }, + "11694": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "11695": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11697": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "REVERT", + "path": "72" + }, + "11698": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11699": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 1127, + 1160 + ], + "op": "POP", + "path": "72" + }, + "11700": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 824, + 1167 + ], + "op": "POP", + "path": "72" + }, + "11701": { + "fn": "GenericToken.transferNativeTokenOut", + "offset": [ + 824, + 1167 + ], + "op": "POP", + "path": "72" + }, + "11702": { + "fn": "GenericToken.transferNativeTokenOut", + "jump": "o", + "offset": [ + 824, + 1167 + ], + "op": "JUMP", + "path": "72" + }, + "11703": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1173, + 1379 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11704": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1313, + 1318 + ], + "op": "DUP3", + "path": "72", + "statement": 265 + }, + "11705": { + "op": "PUSH1", + "value": "0x1" + }, + "11707": { + "op": "PUSH1", + "value": "0x1" + }, + "11709": { + "op": "PUSH1", + "value": "0xA0" + }, + "11711": { + "op": "SHL" + }, + "11712": { + "op": "SUB" + }, + "11713": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1328 + ], + "op": "AND", + "path": "72" + }, + "11714": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1328 + ], + "op": "PUSH4", + "path": "72", + "value": "0xA9059CBB" + }, + "11719": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1329, + 1336 + ], + "op": "DUP4", + "path": "72" + }, + "11720": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1338, + 1344 + ], + "op": "DUP4", + "path": "72" + }, + "11721": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "11723": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "MLOAD", + "path": "72" + }, + "11724": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP4", + "path": "72" + }, + "11725": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH4", + "path": "72", + "value": "0xFFFFFFFF" + }, + "11730": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "AND", + "path": "72" + }, + "11731": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0xE0" + }, + "11733": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "SHL", + "path": "72" + }, + "11734": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP2", + "path": "72" + }, + "11735": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "MSTORE", + "path": "72" + }, + "11736": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x4" + }, + "11738": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ADD", + "path": "72" + }, + "11739": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11740": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP4", + "path": "72" + }, + "11741": { + "op": "PUSH1", + "value": "0x1" + }, + "11743": { + "op": "PUSH1", + "value": "0x1" + }, + "11745": { + "op": "PUSH1", + "value": "0xA0" + }, + "11747": { + "op": "SHL" + }, + "11748": { + "op": "SUB" + }, + "11749": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "AND", + "path": "72" + }, + "11750": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP2", + "path": "72" + }, + "11751": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "MSTORE", + "path": "72" + }, + "11752": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "11754": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ADD", + "path": "72" + }, + "11755": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP3", + "path": "72" + }, + "11756": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP2", + "path": "72" + }, + "11757": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "MSTORE", + "path": "72" + }, + "11758": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "11760": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ADD", + "path": "72" + }, + "11761": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "SWAP3", + "path": "72" + }, + "11762": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11763": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11764": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11765": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11767": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "11769": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "MLOAD", + "path": "72" + }, + "11770": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11771": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP4", + "path": "72" + }, + "11772": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "SUB", + "path": "72" + }, + "11773": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP2", + "path": "72" + }, + "11774": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11776": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP8", + "path": "72" + }, + "11777": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11778": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "EXTCODESIZE", + "path": "72" + }, + "11779": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ISZERO", + "path": "72" + }, + "11780": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11781": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ISZERO", + "path": "72" + }, + "11782": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2E0E" + }, + "11785": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "JUMPI", + "path": "72" + }, + "11786": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11788": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11789": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "REVERT", + "path": "72" + }, + "11790": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11791": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11792": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "GAS", + "path": "72" + }, + "11793": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "CALL", + "path": "72" + }, + "11794": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ISZERO", + "path": "72" + }, + "11795": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11796": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "ISZERO", + "path": "72" + }, + "11797": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2E22" + }, + "11800": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "JUMPI", + "path": "72" + }, + "11801": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "11802": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11804": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "DUP1", + "path": "72" + }, + "11805": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "RETURNDATACOPY", + "path": "72" + }, + "11806": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "11807": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11809": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "REVERT", + "path": "72" + }, + "11810": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11811": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11812": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11813": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11814": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1295, + 1345 + ], + "op": "POP", + "path": "72" + }, + "11815": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1355, + 1372 + ], + "op": "PUSH2", + "path": "72", + "statement": 266, + "value": "0x2DB2" + }, + "11818": { + "fn": "GenericToken.safeTransferOut", + "offset": [ + 1355, + 1370 + ], + "op": "PUSH2", + "path": "72", + "value": "0x38C1" + }, + "11821": { + "fn": "GenericToken.safeTransferOut", + "jump": "i", + "offset": [ + 1355, + 1372 + ], + "op": "JUMP", + "path": "72" + }, + "11822": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 454, + 818 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11823": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "11825": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP1", + "path": "72" + }, + "11826": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MLOAD", + "path": "72" + }, + "11827": { + "op": "PUSH1", + "value": "0x1" + }, + "11829": { + "op": "PUSH1", + "value": "0x1" + }, + "11831": { + "op": "PUSH1", + "value": "0xA0" + }, + "11833": { + "op": "SHL" + }, + "11834": { + "op": "SUB" + }, + "11835": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP5", + "path": "72" + }, + "11836": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP2", + "path": "72" + }, + "11837": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "AND", + "path": "72" + }, + "11838": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "PUSH1", + "path": "72", + "value": "0x24" + }, + "11840": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP1", + "path": "72" + }, + "11841": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP5", + "path": "72" + }, + "11842": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "ADD", + "path": "72" + }, + "11843": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP2", + "path": "72" + }, + "11844": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP1", + "path": "72" + }, + "11845": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP2", + "path": "72" + }, + "11846": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MSTORE", + "path": "72" + }, + "11847": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP4", + "path": "72" + }, + "11848": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MLOAD", + "path": "72" + }, + "11849": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP1", + "path": "72" + }, + "11850": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP5", + "path": "72" + }, + "11851": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SUB", + "path": "72" + }, + "11852": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP1", + "path": "72" + }, + "11853": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP2", + "path": "72" + }, + "11854": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "ADD", + "path": "72" + }, + "11855": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP2", + "path": "72" + }, + "11856": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MSTORE", + "path": "72" + }, + "11857": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "PUSH1", + "path": "72", + "value": "0x44" + }, + "11859": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP1", + "path": "72" + }, + "11860": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP3", + "path": "72" + }, + "11861": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "ADD", + "path": "72" + }, + "11862": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP4", + "path": "72" + }, + "11863": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MSTORE", + "path": "72" + }, + "11864": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "11866": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP3", + "path": "72" + }, + "11867": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "ADD", + "path": "72" + }, + "11868": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP1", + "path": "72" + }, + "11869": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MLOAD", + "path": "72" + }, + "11870": { + "op": "PUSH1", + "value": "0x1" + }, + "11872": { + "op": "PUSH1", + "value": "0x1" + }, + "11874": { + "op": "PUSH1", + "value": "0xE0" + }, + "11876": { + "op": "SHL" + }, + "11877": { + "op": "SUB" + }, + "11878": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "AND", + "path": "72" + }, + "11879": { + "op": "PUSH1", + "value": "0x1" + }, + "11881": { + "op": "PUSH1", + "value": "0x1" + }, + "11883": { + "op": "PUSH1", + "value": "0xE0" + }, + "11885": { + "op": "SHL" + }, + "11886": { + "op": "SUB" + }, + "11887": { + "op": "NOT" + }, + "11888": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP7", + "path": "72" + }, + "11889": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "AND", + "path": "72" + }, + "11890": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "OR", + "path": "72" + }, + "11891": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP2", + "path": "72" + }, + "11892": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "MSTORE", + "path": "72" + }, + "11893": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP3", + "path": "72" + }, + "11894": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "11895": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "11896": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "11897": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 593, + 608 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11899": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 593, + 608 + ], + "op": "SWAP5", + "path": "72" + }, + "11900": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 593, + 608 + ], + "op": "DUP6", + "path": "72" + }, + "11901": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 593, + 608 + ], + "op": "SWAP5", + "path": "72" + }, + "11902": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 593, + 608 + ], + "op": "DUP6", + "path": "72" + }, + "11903": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 593, + 608 + ], + "op": "SWAP5", + "path": "72" + }, + "11904": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 678 + ], + "op": "DUP11", + "path": "72" + }, + "11905": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 678 + ], + "op": "AND", + "path": "72" + }, + "11906": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 678 + ], + "op": "SWAP4", + "path": "72" + }, + "11907": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP1", + "path": "72" + }, + "11908": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "SWAP3", + "path": "72" + }, + "11909": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP1", + "path": "72" + }, + "11910": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11911": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "11912": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11913": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP1", + "path": "72" + }, + "11914": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP4", + "path": "72" + }, + "11915": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 679, + 729 + ], + "op": "DUP4", + "path": "72" + }, + "11916": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11917": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "11919": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP4", + "path": "72" + }, + "11920": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "LT", + "path": "72" + }, + "11921": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2EAB" + }, + "11924": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMPI", + "path": "72" + }, + "11925": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP1", + "path": "72" + }, + "11926": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "11927": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "11928": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MSTORE", + "path": "72" + }, + "11929": { + "op": "PUSH1", + "value": "0x1F" + }, + "11931": { + "op": "NOT" + }, + "11932": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP1", + "path": "72" + }, + "11933": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP3", + "path": "72" + }, + "11934": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "11935": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11936": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "11938": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11939": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "11940": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "11941": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11942": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "11943": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2E8C" + }, + "11946": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMP", + "path": "72" + }, + "11947": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMPDEST", + "path": "72" + }, + "11948": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x1" + }, + "11950": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP4", + "path": "72" + }, + "11951": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "11953": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SUB", + "path": "72" + }, + "11954": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH2", + "path": "72", + "value": "0x100" + }, + "11957": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "EXP", + "path": "72" + }, + "11958": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SUB", + "path": "72" + }, + "11959": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP1", + "path": "72" + }, + "11960": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "NOT", + "path": "72" + }, + "11961": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "11962": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "11963": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "AND", + "path": "72" + }, + "11964": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP2", + "path": "72" + }, + "11965": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP5", + "path": "72" + }, + "11966": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "11967": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "AND", + "path": "72" + }, + "11968": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP1", + "path": "72" + }, + "11969": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "11970": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "OR", + "path": "72" + }, + "11971": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP6", + "path": "72" + }, + "11972": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MSTORE", + "path": "72" + }, + "11973": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11974": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11975": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11976": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11977": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11978": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11979": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP1", + "path": "72" + }, + "11980": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11981": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "11982": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11983": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11984": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11985": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "11987": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "11989": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "11990": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP1", + "path": "72" + }, + "11991": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP4", + "path": "72" + }, + "11992": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SUB", + "path": "72" + }, + "11993": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP2", + "path": "72" + }, + "11994": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP6", + "path": "72" + }, + "11995": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "GAS", + "path": "72" + }, + "11996": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "STATICCALL", + "path": "72" + }, + "11997": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "11998": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "11999": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "12000": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "12001": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP1", + "path": "72" + }, + "12002": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "12004": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP2", + "path": "72" + }, + "12005": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "EQ", + "path": "72" + }, + "12006": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2F0B" + }, + "12009": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMPI", + "path": "72" + }, + "12010": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "12012": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MLOAD", + "path": "72" + }, + "12013": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "12014": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "12015": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x1F" + }, + "12017": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "NOT", + "path": "72" + }, + "12018": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x3F" + }, + "12020": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "12021": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "12022": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "AND", + "path": "72" + }, + "12023": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "12024": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "12025": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "12027": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MSTORE", + "path": "72" + }, + "12028": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "12029": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP3", + "path": "72" + }, + "12030": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "MSTORE", + "path": "72" + }, + "12031": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "12032": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "12034": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "12036": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "DUP5", + "path": "72" + }, + "12037": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "ADD", + "path": "72" + }, + "12038": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "RETURNDATACOPY", + "path": "72" + }, + "12039": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2F10" + }, + "12042": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMP", + "path": "72" + }, + "12043": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMPDEST", + "path": "72" + }, + "12044": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "PUSH1", + "path": "72", + "value": "0x60" + }, + "12046": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "12047": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "12048": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "JUMPDEST", + "path": "72" + }, + "12049": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 662, + 730 + ], + "op": "POP", + "path": "72" + }, + "12050": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 620, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "12051": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 620, + 730 + ], + "op": "POP", + "path": "72" + }, + "12052": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 620, + 730 + ], + "op": "SWAP2", + "path": "72" + }, + "12053": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 620, + 730 + ], + "op": "POP", + "path": "72" + }, + "12054": { + "branch": 489, + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 748, + 755 + ], + "op": "DUP2", + "path": "72", + "statement": 267 + }, + "12055": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 740, + 756 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2F1F" + }, + "12058": { + "branch": 489, + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 740, + 756 + ], + "op": "JUMPI", + "path": "72" + }, + "12059": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 740, + 756 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "12061": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 740, + 756 + ], + "op": "DUP1", + "path": "72" + }, + "12062": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 740, + 756 + ], + "op": "REVERT", + "path": "72" + }, + "12063": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 740, + 756 + ], + "op": "JUMPDEST", + "path": "72" + }, + "12064": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 789, + 799 + ], + "op": "DUP1", + "path": "72", + "statement": 268 + }, + "12065": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "DUP1", + "path": "72" + }, + "12066": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "12068": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "ADD", + "path": "72" + }, + "12069": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "SWAP1", + "path": "72" + }, + "12070": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "MLOAD", + "path": "72" + }, + "12071": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "12073": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "DUP2", + "path": "72" + }, + "12074": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "LT", + "path": "72" + }, + "12075": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "ISZERO", + "path": "72" + }, + "12076": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2F34" + }, + "12079": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "JUMPI", + "path": "72" + }, + "12080": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "12082": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "DUP1", + "path": "72" + }, + "12083": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "REVERT", + "path": "72" + }, + "12084": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "JUMPDEST", + "path": "72" + }, + "12085": { + "op": "POP" + }, + "12086": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "MLOAD", + "path": "72" + }, + "12087": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 778, + 811 + ], + "op": "SWAP7", + "path": "72" + }, + "12088": { + "fn": "GenericToken.checkBalanceViaSelector", + "offset": [ + 454, + 818 + ], + "op": "SWAP6", + "path": "72" + }, + "12089": { + "op": "POP" + }, + "12090": { + "op": "POP" + }, + "12091": { + "op": "POP" + }, + "12092": { + "op": "POP" + }, + "12093": { + "op": "POP" + }, + "12094": { + "op": "POP" + }, + "12095": { + "fn": "GenericToken.checkBalanceViaSelector", + "jump": "o", + "offset": [ + 454, + 818 + ], + "op": "JUMP", + "path": "72" + }, + "12096": { + "fn": "AaveHandler.mint", + "offset": [ + 873, + 1457 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12097": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1298 + ], + "op": "PUSH2", + "path": "70", + "statement": 269, + "value": "0x2F48" + }, + "12100": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1296 + ], + "op": "PUSH2", + "path": "70", + "value": "0x392E" + }, + "12103": { + "fn": "AaveHandler.mint", + "jump": "i", + "offset": [ + 1271, + 1298 + ], + "op": "JUMP", + "path": "70" + }, + "12104": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1298 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12105": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "SLOAD", + "path": "70" + }, + "12106": { + "fn": "AaveHandler.mint", + "offset": [ + 1332, + 1360 + ], + "op": "DUP3", + "path": "70" + }, + "12107": { + "fn": "AaveHandler.mint", + "offset": [ + 1332, + 1360 + ], + "op": "MLOAD", + "path": "70" + }, + "12108": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "12110": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "MLOAD", + "path": "70" + }, + "12111": { + "op": "PUSH4", + "value": "0xE8EDA9DF" + }, + "12116": { + "op": "PUSH1", + "value": "0xE0" + }, + "12118": { + "op": "SHL" + }, + "12119": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP2", + "path": "70" + }, + "12120": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "MSTORE", + "path": "70" + }, + "12121": { + "op": "PUSH1", + "value": "0x1" + }, + "12123": { + "op": "PUSH1", + "value": "0x1" + }, + "12125": { + "op": "PUSH1", + "value": "0xA0" + }, + "12127": { + "op": "SHL" + }, + "12128": { + "op": "SUB" + }, + "12129": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "SWAP1", + "path": "70" + }, + "12130": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "SWAP3", + "path": "70" + }, + "12131": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "AND", + "path": "70" + }, + "12132": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "SWAP2", + "path": "70" + }, + "12133": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1318 + ], + "op": "PUSH4", + "path": "70", + "value": "0xE8EDA9DF" + }, + "12138": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1318 + ], + "op": "SWAP2", + "path": "70" + }, + "12139": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2F7D" + }, + "12142": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "SWAP2", + "path": "70" + }, + "12143": { + "fn": "AaveHandler.mint", + "offset": [ + 1374, + 1398 + ], + "op": "DUP6", + "path": "70" + }, + "12144": { + "fn": "AaveHandler.mint", + "offset": [ + 1374, + 1398 + ], + "op": "SWAP1", + "path": "70" + }, + "12145": { + "fn": "AaveHandler.mint", + "offset": [ + 1420, + 1424 + ], + "op": "ADDRESS", + "path": "70" + }, + "12146": { + "fn": "AaveHandler.mint", + "offset": [ + 1420, + 1424 + ], + "op": "SWAP1", + "path": "70" + }, + "12147": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12149": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1310 + ], + "op": "SWAP1", + "path": "70" + }, + "12150": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x4" + }, + "12152": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "ADD", + "path": "70" + }, + "12153": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH2", + "path": "70", + "value": "0x482A" + }, + "12156": { + "fn": "AaveHandler.mint", + "jump": "i", + "offset": [ + 1271, + 1450 + ], + "op": "JUMP", + "path": "70" + }, + "12157": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12158": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12160": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "12162": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "MLOAD", + "path": "70" + }, + "12163": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP1", + "path": "70" + }, + "12164": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP4", + "path": "70" + }, + "12165": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "SUB", + "path": "70" + }, + "12166": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP2", + "path": "70" + }, + "12167": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12169": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP8", + "path": "70" + }, + "12170": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP1", + "path": "70" + }, + "12171": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "EXTCODESIZE", + "path": "70" + }, + "12172": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "ISZERO", + "path": "70" + }, + "12173": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP1", + "path": "70" + }, + "12174": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "ISZERO", + "path": "70" + }, + "12175": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2F97" + }, + "12178": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "JUMPI", + "path": "70" + }, + "12179": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12181": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP1", + "path": "70" + }, + "12182": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "REVERT", + "path": "70" + }, + "12183": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12184": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "POP", + "path": "70" + }, + "12185": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "GAS", + "path": "70" + }, + "12186": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "CALL", + "path": "70" + }, + "12187": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "ISZERO", + "path": "70" + }, + "12188": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP1", + "path": "70" + }, + "12189": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "ISZERO", + "path": "70" + }, + "12190": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH2", + "path": "70", + "value": "0x666" + }, + "12193": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "JUMPI", + "path": "70" + }, + "12194": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "12195": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12197": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "DUP1", + "path": "70" + }, + "12198": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "RETURNDATACOPY", + "path": "70" + }, + "12199": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "12200": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12202": { + "fn": "AaveHandler.mint", + "offset": [ + 1271, + 1450 + ], + "op": "REVERT", + "path": "70" + }, + "12203": { + "fn": "CompoundHandler.mint", + "offset": [ + 671, + 933 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12204": { + "fn": "CompoundHandler.mint", + "offset": [ + 757, + 763 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12206": { + "fn": "CompoundHandler.mint", + "offset": [ + 775, + 790 + ], + "op": "DUP1", + "path": "71" + }, + "12207": { + "fn": "CompoundHandler.mint", + "offset": [ + 809, + 814 + ], + "op": "DUP4", + "path": "71" + }, + "12208": { + "fn": "CompoundHandler.mint", + "offset": [ + 809, + 827 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12210": { + "fn": "CompoundHandler.mint", + "offset": [ + 809, + 827 + ], + "op": "ADD", + "path": "71" + }, + "12211": { + "fn": "CompoundHandler.mint", + "offset": [ + 809, + 827 + ], + "op": "MLOAD", + "path": "71" + }, + "12212": { + "op": "PUSH1", + "value": "0x1" + }, + "12214": { + "op": "PUSH1", + "value": "0x1" + }, + "12216": { + "op": "PUSH1", + "value": "0xA0" + }, + "12218": { + "op": "SHL" + }, + "12219": { + "op": "SUB" + }, + "12220": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 833 + ], + "op": "AND", + "path": "71" + }, + "12221": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 833 + ], + "op": "PUSH4", + "path": "71", + "value": "0xA0712D68" + }, + "12226": { + "fn": "CompoundHandler.mint", + "offset": [ + 834, + 858 + ], + "op": "DUP5", + "path": "71" + }, + "12227": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12229": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "MLOAD", + "path": "71" + }, + "12230": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP3", + "path": "71" + }, + "12231": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH4", + "path": "71", + "value": "0xFFFFFFFF" + }, + "12236": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "AND", + "path": "71" + }, + "12237": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0xE0" + }, + "12239": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SHL", + "path": "71" + }, + "12240": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP2", + "path": "71" + }, + "12241": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "MSTORE", + "path": "71" + }, + "12242": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "12244": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ADD", + "path": "71" + }, + "12245": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2FDE" + }, + "12248": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SWAP2", + "path": "71" + }, + "12249": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SWAP1", + "path": "71" + }, + "12250": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH2", + "path": "71", + "value": "0x48AB" + }, + "12253": { + "fn": "CompoundHandler.mint", + "jump": "i", + "offset": [ + 793, + 859 + ], + "op": "JUMP", + "path": "71" + }, + "12254": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12255": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x20" + }, + "12257": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12259": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "MLOAD", + "path": "71" + }, + "12260": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12261": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP4", + "path": "71" + }, + "12262": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SUB", + "path": "71" + }, + "12263": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP2", + "path": "71" + }, + "12264": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12266": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP8", + "path": "71" + }, + "12267": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12268": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "EXTCODESIZE", + "path": "71" + }, + "12269": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ISZERO", + "path": "71" + }, + "12270": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12271": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ISZERO", + "path": "71" + }, + "12272": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2FF8" + }, + "12275": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "JUMPI", + "path": "71" + }, + "12276": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12278": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12279": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "REVERT", + "path": "71" + }, + "12280": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12281": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "POP", + "path": "71" + }, + "12282": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "GAS", + "path": "71" + }, + "12283": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "CALL", + "path": "71" + }, + "12284": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ISZERO", + "path": "71" + }, + "12285": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12286": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ISZERO", + "path": "71" + }, + "12287": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH2", + "path": "71", + "value": "0x300C" + }, + "12290": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "JUMPI", + "path": "71" + }, + "12291": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "12292": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12294": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12295": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "RETURNDATACOPY", + "path": "71" + }, + "12296": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "12297": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12299": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "REVERT", + "path": "71" + }, + "12300": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12301": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "POP", + "path": "71" + }, + "12302": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "POP", + "path": "71" + }, + "12303": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "POP", + "path": "71" + }, + "12304": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "POP", + "path": "71" + }, + "12305": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12307": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "MLOAD", + "path": "71" + }, + "12308": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "12309": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x1F" + }, + "12311": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "NOT", + "path": "71" + }, + "12312": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x1F" + }, + "12314": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP3", + "path": "71" + }, + "12315": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ADD", + "path": "71" + }, + "12316": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "AND", + "path": "71" + }, + "12317": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP3", + "path": "71" + }, + "12318": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ADD", + "path": "71" + }, + "12319": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP1", + "path": "71" + }, + "12320": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12322": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "MSTORE", + "path": "71" + }, + "12323": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "POP", + "path": "71" + }, + "12324": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "DUP2", + "path": "71" + }, + "12325": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "ADD", + "path": "71" + }, + "12326": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SWAP1", + "path": "71" + }, + "12327": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3030" + }, + "12330": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SWAP2", + "path": "71" + }, + "12331": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "SWAP1", + "path": "71" + }, + "12332": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "PUSH2", + "path": "71", + "value": "0x43D8" + }, + "12335": { + "fn": "CompoundHandler.mint", + "jump": "i", + "offset": [ + 793, + 859 + ], + "op": "JUMP", + "path": "71" + }, + "12336": { + "fn": "CompoundHandler.mint", + "offset": [ + 793, + 859 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12337": { + "fn": "CompoundHandler.mint", + "offset": [ + 775, + 859 + ], + "op": "SWAP1", + "path": "71" + }, + "12338": { + "op": "POP" + }, + "12339": { + "fn": "CompoundHandler.mint", + "offset": [ + 877, + 917 + ], + "op": "DUP1", + "path": "71", + "statement": 270 + }, + "12340": { + "branch": 478, + "fn": "CompoundHandler.mint", + "offset": [ + 877, + 917 + ], + "op": "ISZERO", + "path": "71" + }, + "12341": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3050" + }, + "12344": { + "branch": 478, + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "JUMPI", + "path": "71" + }, + "12345": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12347": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "MLOAD", + "path": "71" + }, + "12348": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "12352": { + "op": "PUSH1", + "value": "0xE5" + }, + "12354": { + "op": "SHL" + }, + "12355": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "DUP2", + "path": "71" + }, + "12356": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "MSTORE", + "path": "71" + }, + "12357": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "12359": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "ADD", + "path": "71" + }, + "12360": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "PUSH2", + "path": "71", + "value": "0x17A" + }, + "12363": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "SWAP1", + "path": "71" + }, + "12364": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "PUSH2", + "path": "71", + "value": "0x48DA" + }, + "12367": { + "fn": "CompoundHandler.mint", + "jump": "i", + "offset": [ + 869, + 926 + ], + "op": "JUMP", + "path": "71" + }, + "12368": { + "fn": "CompoundHandler.mint", + "offset": [ + 869, + 926 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12369": { + "fn": "CompoundHandler.mint", + "offset": [ + 671, + 933 + ], + "op": "POP", + "path": "71" + }, + "12370": { + "fn": "CompoundHandler.mint", + "offset": [ + 671, + 933 + ], + "op": "SWAP3", + "path": "71" + }, + "12371": { + "fn": "CompoundHandler.mint", + "offset": [ + 671, + 933 + ], + "op": "SWAP2", + "path": "71" + }, + "12372": { + "fn": "CompoundHandler.mint", + "offset": [ + 671, + 933 + ], + "op": "POP", + "path": "71" + }, + "12373": { + "fn": "CompoundHandler.mint", + "offset": [ + 671, + 933 + ], + "op": "POP", + "path": "71" + }, + "12374": { + "fn": "CompoundHandler.mint", + "jump": "o", + "offset": [ + 671, + 933 + ], + "op": "JUMP", + "path": "71" + }, + "12375": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 513, + 665 + ], + "op": "JUMPDEST", + "path": "71" + }, + "12376": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 614, + 619 + ], + "op": "DUP1", + "path": "71", + "statement": 271 + }, + "12377": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 614, + 632 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12379": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 614, + 632 + ], + "op": "ADD", + "path": "71" + }, + "12380": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 614, + 632 + ], + "op": "MLOAD", + "path": "71" + }, + "12381": { + "op": "PUSH1", + "value": "0x1" + }, + "12383": { + "op": "PUSH1", + "value": "0x1" + }, + "12385": { + "op": "PUSH1", + "value": "0xA0" + }, + "12387": { + "op": "SHL" + }, + "12388": { + "op": "SUB" + }, + "12389": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 638 + ], + "op": "AND", + "path": "71" + }, + "12390": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 638 + ], + "op": "PUSH4", + "path": "71", + "value": "0x1249C58B" + }, + "12395": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 646, + 655 + ], + "op": "CALLVALUE", + "path": "71" + }, + "12396": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12398": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "MLOAD", + "path": "71" + }, + "12399": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP3", + "path": "71" + }, + "12400": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH4", + "path": "71", + "value": "0xFFFFFFFF" + }, + "12405": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "AND", + "path": "71" + }, + "12406": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH1", + "path": "71", + "value": "0xE0" + }, + "12408": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "SHL", + "path": "71" + }, + "12409": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP2", + "path": "71" + }, + "12410": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "MSTORE", + "path": "71" + }, + "12411": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "12413": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "ADD", + "path": "71" + }, + "12414": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12416": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "12418": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "MLOAD", + "path": "71" + }, + "12419": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP1", + "path": "71" + }, + "12420": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP4", + "path": "71" + }, + "12421": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "SUB", + "path": "71" + }, + "12422": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP2", + "path": "71" + }, + "12423": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP6", + "path": "71" + }, + "12424": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP9", + "path": "71" + }, + "12425": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP1", + "path": "71" + }, + "12426": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "EXTCODESIZE", + "path": "71" + }, + "12427": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "ISZERO", + "path": "71" + }, + "12428": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP1", + "path": "71" + }, + "12429": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "ISZERO", + "path": "71" + }, + "12430": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2F97" + }, + "12433": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "JUMPI", + "path": "71" + }, + "12434": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "12436": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "DUP1", + "path": "71" + }, + "12437": { + "fn": "CompoundHandler.mintCETH", + "offset": [ + 598, + 658 + ], + "op": "REVERT", + "path": "71" + }, + "12438": { + "fn": "SafeMath.sub", + "offset": [ + 3128, + 3283 + ], + "op": "JUMPDEST", + "path": "6" + }, + "12439": { + "fn": "SafeMath.sub", + "offset": [ + 3186, + 3193 + ], + "op": "PUSH1", + "path": "6", + "value": "0x0" + }, + "12441": { + "fn": "SafeMath.sub", + "offset": [ + 3218, + 3219 + ], + "op": "DUP3", + "path": "6", + "statement": 272 + }, + "12442": { + "fn": "SafeMath.sub", + "offset": [ + 3213, + 3214 + ], + "op": "DUP3", + "path": "6" + }, + "12443": { + "fn": "SafeMath.sub", + "offset": [ + 3213, + 3219 + ], + "op": "GT", + "path": "6" + }, + "12444": { + "branch": 537, + "fn": "SafeMath.sub", + "offset": [ + 3213, + 3219 + ], + "op": "ISZERO", + "path": "6" + }, + "12445": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH2", + "path": "6", + "value": "0x30ED" + }, + "12448": { + "branch": 537, + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "JUMPI", + "path": "6" + }, + "12449": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "12451": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP1", + "path": "6" + }, + "12452": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MLOAD", + "path": "6" + }, + "12453": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "12457": { + "op": "PUSH1", + "value": "0xE5" + }, + "12459": { + "op": "SHL" + }, + "12460": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP2", + "path": "6" + }, + "12461": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "12462": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "12464": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x4" + }, + "12466": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP3", + "path": "6" + }, + "12467": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "12468": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "12469": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x1E" + }, + "12471": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x24" + }, + "12473": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP3", + "path": "6" + }, + "12474": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "12475": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "12476": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH32", + "path": "6", + "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000" + }, + "12509": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x44" + }, + "12511": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP3", + "path": "6" + }, + "12512": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "12513": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "12514": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "12515": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MLOAD", + "path": "6" + }, + "12516": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "12517": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP2", + "path": "6" + }, + "12518": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "12519": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SUB", + "path": "6" + }, + "12520": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x64" + }, + "12522": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "12523": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "12524": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "REVERT", + "path": "6" + }, + "12525": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "JUMPDEST", + "path": "6" + }, + "12526": { + "op": "POP" + }, + "12527": { + "fn": "SafeMath.sub", + "offset": [ + 3271, + 3276 + ], + "op": "SWAP1", + "path": "6", + "statement": 273 + }, + "12528": { + "fn": "SafeMath.sub", + "offset": [ + 3271, + 3276 + ], + "op": "SUB", + "path": "6" + }, + "12529": { + "fn": "SafeMath.sub", + "offset": [ + 3271, + 3276 + ], + "op": "SWAP1", + "path": "6" + }, + "12530": { + "fn": "SafeMath.sub", + "jump": "o", + "offset": [ + 3128, + 3283 + ], + "op": "JUMP", + "path": "6" + }, + "12531": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6164, + 6423 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12532": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6248, + 6254 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12534": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6285, + 6416 + ], + "op": "PUSH2", + "path": "70", + "statement": 274, + "value": "0xBDF" + }, + "12537": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6346 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3100" + }, + "12540": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6344 + ], + "op": "PUSH2", + "path": "70", + "value": "0x392E" + }, + "12543": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "jump": "i", + "offset": [ + 6319, + 6346 + ], + "op": "JUMP", + "path": "70" + }, + "12544": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6346 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12545": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6358 + ], + "op": "SLOAD", + "path": "70" + }, + "12546": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "12548": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "MLOAD", + "path": "70" + }, + "12549": { + "op": "PUSH4", + "value": "0xD15E0053" + }, + "12554": { + "op": "PUSH1", + "value": "0xE0" + }, + "12556": { + "op": "SHL" + }, + "12557": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP2", + "path": "70" + }, + "12558": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "MSTORE", + "path": "70" + }, + "12559": { + "op": "PUSH1", + "value": "0x1" + }, + "12561": { + "op": "PUSH1", + "value": "0x1" + }, + "12563": { + "op": "PUSH1", + "value": "0xA0" + }, + "12565": { + "op": "SHL" + }, + "12566": { + "op": "SUB" + }, + "12567": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6358 + ], + "op": "SWAP1", + "path": "70" + }, + "12568": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6358 + ], + "op": "SWAP2", + "path": "70" + }, + "12569": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6358 + ], + "op": "AND", + "path": "70" + }, + "12570": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6358 + ], + "op": "SWAP1", + "path": "70" + }, + "12571": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6385 + ], + "op": "PUSH4", + "path": "70", + "value": "0xD15E0053" + }, + "12576": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6385 + ], + "op": "SWAP1", + "path": "70" + }, + "12577": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH2", + "path": "70", + "value": "0x312E" + }, + "12580": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "SWAP1", + "path": "70" + }, + "12581": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6386, + 6401 + ], + "op": "DUP7", + "path": "70" + }, + "12582": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6386, + 6401 + ], + "op": "SWAP1", + "path": "70" + }, + "12583": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x4" + }, + "12585": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ADD", + "path": "70" + }, + "12586": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH2", + "path": "70", + "value": "0x4641" + }, + "12589": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "jump": "i", + "offset": [ + 6319, + 6402 + ], + "op": "JUMP", + "path": "70" + }, + "12590": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12591": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x20" + }, + "12593": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "12595": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "MLOAD", + "path": "70" + }, + "12596": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12597": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP4", + "path": "70" + }, + "12598": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "SUB", + "path": "70" + }, + "12599": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP2", + "path": "70" + }, + "12600": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP7", + "path": "70" + }, + "12601": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12602": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "EXTCODESIZE", + "path": "70" + }, + "12603": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ISZERO", + "path": "70" + }, + "12604": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12605": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ISZERO", + "path": "70" + }, + "12606": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3146" + }, + "12609": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "JUMPI", + "path": "70" + }, + "12610": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12612": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12613": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "REVERT", + "path": "70" + }, + "12614": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12615": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "POP", + "path": "70" + }, + "12616": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "GAS", + "path": "70" + }, + "12617": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "STATICCALL", + "path": "70" + }, + "12618": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ISZERO", + "path": "70" + }, + "12619": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12620": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ISZERO", + "path": "70" + }, + "12621": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH2", + "path": "70", + "value": "0x315A" + }, + "12624": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "JUMPI", + "path": "70" + }, + "12625": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "12626": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12628": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12629": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "RETURNDATACOPY", + "path": "70" + }, + "12630": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "12631": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "12633": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "REVERT", + "path": "70" + }, + "12634": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "JUMPDEST", + "path": "70" + }, + "12635": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "POP", + "path": "70" + }, + "12636": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "POP", + "path": "70" + }, + "12637": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "POP", + "path": "70" + }, + "12638": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "POP", + "path": "70" + }, + "12639": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "12641": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "MLOAD", + "path": "70" + }, + "12642": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "12643": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x1F" + }, + "12645": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "NOT", + "path": "70" + }, + "12646": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x1F" + }, + "12648": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP3", + "path": "70" + }, + "12649": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ADD", + "path": "70" + }, + "12650": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "AND", + "path": "70" + }, + "12651": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP3", + "path": "70" + }, + "12652": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ADD", + "path": "70" + }, + "12653": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP1", + "path": "70" + }, + "12654": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "12656": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "MSTORE", + "path": "70" + }, + "12657": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "POP", + "path": "70" + }, + "12658": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "DUP2", + "path": "70" + }, + "12659": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "ADD", + "path": "70" + }, + "12660": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "SWAP1", + "path": "70" + }, + "12661": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1DEA" + }, + "12664": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "SWAP2", + "path": "70" + }, + "12665": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "SWAP1", + "path": "70" + }, + "12666": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "offset": [ + 6319, + 6402 + ], + "op": "PUSH2", + "path": "70", + "value": "0x43D8" + }, + "12669": { + "fn": "AaveHandler._getReserveNormalizedIncome", + "jump": "i", + "offset": [ + 6319, + 6402 + ], + "op": "JUMP", + "path": "70" + }, + "12670": { + "fn": "TokenHandler.redeem", + "offset": [ + 7923, + 8970 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12671": { + "fn": "TokenHandler.redeem", + "offset": [ + 8086, + 8092 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "12673": { + "fn": "TokenHandler.redeem", + "offset": [ + 8086, + 8092 + ], + "op": "DUP1", + "path": "69" + }, + "12674": { + "fn": "TokenHandler.redeem", + "offset": [ + 8164, + 8178 + ], + "op": "PUSH1", + "path": "69", + "value": "0x2" + }, + "12676": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8150 + ], + "op": "DUP7", + "path": "69" + }, + "12677": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8160 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "12679": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8160 + ], + "op": "ADD", + "path": "69" + }, + "12680": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8160 + ], + "op": "MLOAD", + "path": "69" + }, + "12681": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "12683": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "DUP2", + "path": "69" + }, + "12684": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "GT", + "path": "69" + }, + "12685": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "ISZERO", + "path": "69" + }, + "12686": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3193" + }, + "12689": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "JUMPI", + "path": "69" + }, + "12690": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "INVALID", + "path": "69" + }, + "12691": { + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12692": { + "branch": 559, + "fn": "TokenHandler.redeem", + "offset": [ + 8140, + 8178 + ], + "op": "EQ", + "path": "69" + }, + "12693": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "ISZERO", + "path": "69" + }, + "12694": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "PUSH2", + "path": "69", + "value": "0x31AB" + }, + "12697": { + "branch": 559, + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "JUMPI", + "path": "69" + }, + "12698": { + "fn": "TokenHandler.redeem", + "offset": [ + 8211, + 8279 + ], + "op": "PUSH2", + "path": "69", + "statement": 275, + "value": "0x31A4" + }, + "12701": { + "fn": "TokenHandler.redeem", + "offset": [ + 8238, + 8248 + ], + "op": "DUP7", + "path": "69" + }, + "12702": { + "fn": "TokenHandler.redeem", + "offset": [ + 8250, + 8257 + ], + "op": "DUP6", + "path": "69" + }, + "12703": { + "fn": "TokenHandler.redeem", + "offset": [ + 8259, + 8278 + ], + "op": "DUP6", + "path": "69" + }, + "12704": { + "fn": "TokenHandler.redeem", + "offset": [ + 8211, + 8237 + ], + "op": "PUSH2", + "path": "69", + "value": "0x393B" + }, + "12707": { + "fn": "TokenHandler.redeem", + "jump": "i", + "offset": [ + 8211, + 8279 + ], + "op": "JUMP", + "path": "69" + }, + "12708": { + "fn": "TokenHandler.redeem", + "offset": [ + 8211, + 8279 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12709": { + "fn": "TokenHandler.redeem", + "offset": [ + 8194, + 8279 + ], + "op": "SWAP1", + "path": "69" + }, + "12710": { + "fn": "TokenHandler.redeem", + "offset": [ + 8194, + 8279 + ], + "op": "POP", + "path": "69" + }, + "12711": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3208" + }, + "12714": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "JUMP", + "path": "69" + }, + "12715": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12716": { + "fn": "TokenHandler.redeem", + "offset": [ + 8310, + 8338 + ], + "op": "PUSH1", + "path": "69", + "value": "0x0" + }, + "12718": { + "fn": "TokenHandler.redeem", + "offset": [ + 8341, + 8371 + ], + "op": "PUSH2", + "path": "69", + "value": "0x31B6" + }, + "12721": { + "fn": "TokenHandler.redeem", + "offset": [ + 8360, + 8370 + ], + "op": "DUP7", + "path": "69" + }, + "12722": { + "fn": "TokenHandler.redeem", + "offset": [ + 8341, + 8359 + ], + "op": "PUSH2", + "path": "69", + "value": "0xF3B" + }, + "12725": { + "fn": "TokenHandler.redeem", + "jump": "i", + "offset": [ + 8341, + 8371 + ], + "op": "JUMP", + "path": "69" + }, + "12726": { + "fn": "TokenHandler.redeem", + "offset": [ + 8341, + 8371 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12727": { + "fn": "TokenHandler.redeem", + "offset": [ + 8310, + 8371 + ], + "op": "SWAP1", + "path": "69" + }, + "12728": { + "op": "POP" + }, + "12729": { + "fn": "TokenHandler.redeem", + "offset": [ + 8413, + 8429 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "12731": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8399 + ], + "op": "DUP8", + "path": "69" + }, + "12732": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8409 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "12734": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8409 + ], + "op": "ADD", + "path": "69" + }, + "12735": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8409 + ], + "op": "MLOAD", + "path": "69" + }, + "12736": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "12738": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "DUP2", + "path": "69" + }, + "12739": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "GT", + "path": "69" + }, + "12740": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "ISZERO", + "path": "69" + }, + "12741": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "PUSH2", + "path": "69", + "value": "0x31CA" + }, + "12744": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "JUMPI", + "path": "69" + }, + "12745": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "INVALID", + "path": "69" + }, + "12746": { + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12747": { + "branch": 560, + "fn": "TokenHandler.redeem", + "offset": [ + 8389, + 8429 + ], + "op": "EQ", + "path": "69" + }, + "12748": { + "fn": "TokenHandler.redeem", + "offset": [ + 8385, + 8805 + ], + "op": "ISZERO", + "path": "69" + }, + "12749": { + "fn": "TokenHandler.redeem", + "offset": [ + 8385, + 8805 + ], + "op": "PUSH2", + "path": "69", + "value": "0x31E2" + }, + "12752": { + "branch": 560, + "fn": "TokenHandler.redeem", + "offset": [ + 8385, + 8805 + ], + "op": "JUMPI", + "path": "69" + }, + "12753": { + "fn": "TokenHandler.redeem", + "offset": [ + 8466, + 8531 + ], + "op": "PUSH2", + "path": "69", + "statement": 276, + "value": "0x31DB" + }, + "12756": { + "fn": "TokenHandler.redeem", + "offset": [ + 8485, + 8500 + ], + "op": "DUP2", + "path": "69" + }, + "12757": { + "fn": "TokenHandler.redeem", + "offset": [ + 8502, + 8509 + ], + "op": "DUP7", + "path": "69" + }, + "12758": { + "fn": "TokenHandler.redeem", + "offset": [ + 8511, + 8530 + ], + "op": "DUP7", + "path": "69" + }, + "12759": { + "fn": "TokenHandler.redeem", + "offset": [ + 8466, + 8484 + ], + "op": "PUSH2", + "path": "69", + "value": "0x39F8" + }, + "12762": { + "fn": "TokenHandler.redeem", + "jump": "i", + "offset": [ + 8466, + 8531 + ], + "op": "JUMP", + "path": "69" + }, + "12763": { + "fn": "TokenHandler.redeem", + "offset": [ + 8466, + 8531 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12764": { + "fn": "TokenHandler.redeem", + "offset": [ + 8449, + 8531 + ], + "op": "SWAP2", + "path": "69" + }, + "12765": { + "fn": "TokenHandler.redeem", + "offset": [ + 8449, + 8531 + ], + "op": "POP", + "path": "69" + }, + "12766": { + "fn": "TokenHandler.redeem", + "offset": [ + 8385, + 8805 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3206" + }, + "12769": { + "fn": "TokenHandler.redeem", + "offset": [ + 8385, + 8805 + ], + "op": "JUMP", + "path": "69" + }, + "12770": { + "fn": "TokenHandler.redeem", + "offset": [ + 8385, + 8805 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12771": { + "fn": "TokenHandler.redeem", + "offset": [ + 8580, + 8596 + ], + "op": "PUSH1", + "path": "69", + "value": "0x1" + }, + "12773": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8566 + ], + "op": "DUP8", + "path": "69" + }, + "12774": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8576 + ], + "op": "PUSH1", + "path": "69", + "value": "0x60" + }, + "12776": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8576 + ], + "op": "ADD", + "path": "69" + }, + "12777": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8576 + ], + "op": "MLOAD", + "path": "69" + }, + "12778": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "PUSH1", + "path": "69", + "value": "0x5" + }, + "12780": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "DUP2", + "path": "69" + }, + "12781": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "GT", + "path": "69" + }, + "12782": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "ISZERO", + "path": "69" + }, + "12783": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "PUSH2", + "path": "69", + "value": "0x31F4" + }, + "12786": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "JUMPI", + "path": "69" + }, + "12787": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "INVALID", + "path": "69" + }, + "12788": { + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12789": { + "branch": 561, + "fn": "TokenHandler.redeem", + "offset": [ + 8556, + 8596 + ], + "op": "EQ", + "path": "69" + }, + "12790": { + "fn": "TokenHandler.redeem", + "offset": [ + 8552, + 8805 + ], + "op": "ISZERO", + "path": "69" + }, + "12791": { + "fn": "TokenHandler.redeem", + "offset": [ + 8552, + 8805 + ], + "op": "PUSH2", + "path": "69", + "value": "0x7B" + }, + "12794": { + "branch": 561, + "fn": "TokenHandler.redeem", + "jump_revert": true, + "offset": [ + 8753, + 8761 + ], + "op": "JUMPI", + "path": "69" + }, + "12795": { + "fn": "TokenHandler.redeem", + "offset": [ + 8633, + 8714 + ], + "op": "PUSH2", + "path": "69", + "statement": 277, + "value": "0x31DB" + }, + "12798": { + "fn": "TokenHandler.redeem", + "offset": [ + 8656, + 8666 + ], + "op": "DUP8", + "path": "69" + }, + "12799": { + "fn": "TokenHandler.redeem", + "offset": [ + 8668, + 8683 + ], + "op": "DUP3", + "path": "69" + }, + "12800": { + "fn": "TokenHandler.redeem", + "offset": [ + 8685, + 8692 + ], + "op": "DUP8", + "path": "69" + }, + "12801": { + "fn": "TokenHandler.redeem", + "offset": [ + 8694, + 8713 + ], + "op": "DUP8", + "path": "69" + }, + "12802": { + "fn": "TokenHandler.redeem", + "offset": [ + 8633, + 8655 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3AAE" + }, + "12805": { + "fn": "TokenHandler.redeem", + "jump": "i", + "offset": [ + 8633, + 8714 + ], + "op": "JUMP", + "path": "69" + }, + "12806": { + "fn": "TokenHandler.redeem", + "offset": [ + 8552, + 8805 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12807": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "POP", + "path": "69" + }, + "12808": { + "fn": "TokenHandler.redeem", + "offset": [ + 8136, + 8815 + ], + "op": "JUMPDEST", + "path": "69" + }, + "12809": { + "fn": "TokenHandler.redeem", + "offset": [ + 8925, + 8963 + ], + "op": "PUSH2", + "path": "69", + "statement": 278, + "value": "0x2C7F" + }, + "12812": { + "fn": "TokenHandler.redeem", + "offset": [ + 8925, + 8957 + ], + "op": "PUSH2", + "path": "69", + "value": "0x3EA" + }, + "12815": { + "fn": "TokenHandler.redeem", + "offset": [ + 8942, + 8956 + ], + "op": "DUP3", + "path": "69" + }, + "12816": { + "fn": "TokenHandler.redeem", + "offset": [ + 8925, + 8941 + ], + "op": "PUSH2", + "path": "69", + "value": "0x264D" + }, + "12819": { + "fn": "TokenHandler.redeem", + "jump": "i", + "offset": [ + 8925, + 8957 + ], + "op": "JUMP", + "path": "69" + }, + "12820": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1541, + 1760 + ], + "op": "JUMPDEST", + "path": "81" + }, + "12821": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1607, + 1627 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "12823": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1639, + 1680 + ], + "op": "DUP1", + "path": "81" + }, + "12824": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1683, + 1719 + ], + "op": "PUSH2", + "path": "81", + "value": "0x321F" + }, + "12827": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1683, + 1717 + ], + "op": "PUSH2", + "path": "81", + "value": "0x3BAC" + }, + "12830": { + "fn": "nTokenHandler.nTokenAddress", + "jump": "i", + "offset": [ + 1683, + 1719 + ], + "op": "JUMP", + "path": "81" + }, + "12831": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1683, + 1719 + ], + "op": "JUMPDEST", + "path": "81" + }, + "12832": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "PUSH1", + "path": "81", + "statement": 279, + "value": "0x0" + }, + "12834": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "SWAP4", + "path": "81" + }, + "12835": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "DUP5", + "path": "81" + }, + "12836": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "MSTORE", + "path": "81" + }, + "12837": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "PUSH1", + "path": "81", + "value": "0x20" + }, + "12839": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "MSTORE", + "path": "81" + }, + "12840": { + "op": "POP" + }, + "12841": { + "op": "POP" + }, + "12842": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "PUSH1", + "path": "81", + "value": "0x40" + }, + "12844": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "SWAP1", + "path": "81" + }, + "12845": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "KECCAK256", + "path": "81" + }, + "12846": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "SLOAD", + "path": "81" + }, + "12847": { + "op": "PUSH1", + "value": "0x1" + }, + "12849": { + "op": "PUSH1", + "value": "0x1" + }, + "12851": { + "op": "PUSH1", + "value": "0xA0" + }, + "12853": { + "op": "SHL" + }, + "12854": { + "op": "SUB" + }, + "12855": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "AND", + "path": "81" + }, + "12856": { + "fn": "nTokenHandler.nTokenAddress", + "offset": [ + 1736, + 1753 + ], + "op": "SWAP1", + "path": "81" + }, + "12857": { + "fn": "nTokenHandler.nTokenAddress", + "jump": "o", + "offset": [ + 1541, + 1760 + ], + "op": "JUMP", + "path": "81" + }, + "12858": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4730, + 6221 + ], + "op": "JUMPDEST", + "path": "82" + }, + "12859": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4865, + 4872 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "12861": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4898, + 4917 + ], + "op": "DUP1", + "path": "82" + }, + "12862": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4931, + 4963 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "12864": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5023, + 5082 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3249" + }, + "12867": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5058, + 5070 + ], + "op": "DUP7", + "path": "82" + }, + "12868": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5072, + 5081 + ], + "op": "DUP6", + "path": "82" + }, + "12869": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5023, + 5057 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3BB9" + }, + "12872": { + "fn": "nTokenSupply.changeNTokenSupply", + "jump": "i", + "offset": [ + 5023, + 5082 + ], + "op": "JUMP", + "path": "82" + }, + "12873": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5023, + 5082 + ], + "op": "JUMPDEST", + "path": "82" + }, + "12874": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4884, + 5082 + ], + "op": "POP", + "path": "82" + }, + "12875": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4884, + 5082 + ], + "op": "SWAP2", + "path": "82" + }, + "12876": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4884, + 5082 + ], + "op": "POP", + "path": "82" + }, + "12877": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4884, + 5082 + ], + "op": "SWAP2", + "path": "82" + }, + "12878": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4884, + 5082 + ], + "op": "POP", + "path": "82" + }, + "12879": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5129, + 5187 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "12881": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5190, + 5230 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3258" + }, + "12884": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5190, + 5228 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C4F" + }, + "12887": { + "fn": "nTokenSupply.changeNTokenSupply", + "jump": "i", + "offset": [ + 5190, + 5230 + ], + "op": "JUMP", + "path": "82" + }, + "12888": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5190, + 5230 + ], + "op": "JUMPDEST", + "path": "82" + }, + "12889": { + "op": "PUSH1", + "value": "0x1" + }, + "12891": { + "op": "PUSH1", + "value": "0x1" + }, + "12893": { + "op": "PUSH1", + "value": "0xA0" + }, + "12895": { + "op": "SHL" + }, + "12896": { + "op": "SUB" + }, + "12897": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "DUP9", + "path": "82" + }, + "12898": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "AND", + "path": "82" + }, + "12899": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5240, + 5286 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "12901": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "SWAP1", + "path": "82" + }, + "12902": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "DUP2", + "path": "82" + }, + "12903": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "MSTORE", + "path": "82" + }, + "12904": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "PUSH1", + "path": "82", + "value": "0x20" + }, + "12906": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "DUP3", + "path": "82" + }, + "12907": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "SWAP1", + "path": "82" + }, + "12908": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "MSTORE", + "path": "82" + }, + "12909": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "PUSH1", + "path": "82", + "value": "0x40" + }, + "12911": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "DUP2", + "path": "82" + }, + "12912": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5289, + 5308 + ], + "op": "KECCAK256", + "path": "82" + }, + "12913": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5129, + 5230 + ], + "op": "SWAP2", + "path": "82" + }, + "12914": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5129, + 5230 + ], + "op": "SWAP3", + "path": "82" + }, + "12915": { + "op": "POP" + }, + "12916": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5343, + 5377 + ], + "op": "PUSH2", + "path": "82", + "value": "0x327D" + }, + "12919": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5350, + 5361 + ], + "op": "DUP6", + "path": "82" + }, + "12920": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5367, + 5376 + ], + "op": "DUP10", + "path": "82" + }, + "12921": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5343, + 5366 + ], + "op": "PUSH2", + "path": "82", + "value": "0xEC5" + }, + "12924": { + "fn": "nTokenSupply.changeNTokenSupply", + "jump": "i", + "offset": [ + 5343, + 5377 + ], + "op": "JUMP", + "path": "82" + }, + "12925": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5343, + 5377 + ], + "op": "JUMPDEST", + "path": "82" + }, + "12926": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5319, + 5377 + ], + "op": "SWAP1", + "path": "82" + }, + "12927": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5319, + 5377 + ], + "op": "POP", + "path": "82" + }, + "12928": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5625, + 5639 + ], + "op": "DUP1", + "path": "82", + "statement": 280 + }, + "12929": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5621 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "12931": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5639 + ], + "op": "SGT", + "path": "82" + }, + "12932": { + "branch": 566, + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5639 + ], + "op": "ISZERO", + "path": "82" + }, + "12933": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5685 + ], + "op": "DUP1", + "path": "82" + }, + "12934": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5685 + ], + "op": "ISZERO", + "path": "82" + }, + "12935": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5685 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3296" + }, + "12938": { + "branch": 566, + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5685 + ], + "op": "JUMPI", + "path": "82" + }, + "12939": { + "op": "POP" + }, + "12940": { + "op": "PUSH1", + "value": "0x1" + }, + "12942": { + "op": "PUSH1", + "value": "0x1" + }, + "12944": { + "op": "PUSH1", + "value": "0x60" + }, + "12946": { + "op": "SHL" + }, + "12947": { + "op": "SUB" + }, + "12948": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5643, + 5685 + ], + "op": "DUP2", + "path": "82" + }, + "12949": { + "branch": 567, + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5643, + 5685 + ], + "op": "LT", + "path": "82" + }, + "12950": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5620, + 5685 + ], + "op": "JUMPDEST", + "path": "82" + }, + "12951": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5612, + 5686 + ], + "op": "PUSH2", + "path": "82", + "value": "0x329F" + }, + "12954": { + "branch": 567, + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5612, + 5686 + ], + "op": "JUMPI", + "path": "82" + }, + "12955": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5612, + 5686 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "12957": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5612, + 5686 + ], + "op": "DUP1", + "path": "82" + }, + "12958": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5612, + 5686 + ], + "op": "REVERT", + "path": "82" + }, + "12959": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5612, + 5686 + ], + "op": "JUMPDEST", + "path": "82" + }, + "12960": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5728, + 5778 + ], + "op": "DUP2", + "path": "82", + "statement": 281 + }, + "12961": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5728, + 5778 + ], + "op": "SLOAD", + "path": "82" + }, + "12962": { + "op": "PUSH12", + "value": "0xFFFFFFFFFFFFFFFFFFFFFFFF" + }, + "12975": { + "op": "NOT" + }, + "12976": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5728, + 5778 + ], + "op": "AND", + "path": "82" + }, + "12977": { + "op": "PUSH1", + "value": "0x1" + }, + "12979": { + "op": "PUSH1", + "value": "0x1" + }, + "12981": { + "op": "PUSH1", + "value": "0x60" + }, + "12983": { + "op": "SHL" + }, + "12984": { + "op": "SUB" + }, + "12985": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5728, + 5778 + ], + "op": "DUP3", + "path": "82" + }, + "12986": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5728, + 5778 + ], + "op": "AND", + "path": "82" + }, + "12987": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5728, + 5778 + ], + "op": "OR", + "path": "82" + }, + "12988": { + "op": "PUSH16", + "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" + }, + "13005": { + "op": "PUSH1", + "value": "0x60" + }, + "13007": { + "op": "SHL" + }, + "13008": { + "op": "NOT" + }, + "13009": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "AND", + "path": "82", + "statement": 282 + }, + "13010": { + "op": "PUSH1", + "value": "0x1" + }, + "13012": { + "op": "PUSH1", + "value": "0x60" + }, + "13014": { + "op": "SHL" + }, + "13015": { + "op": "PUSH1", + "value": "0x1" + }, + "13017": { + "op": "PUSH1", + "value": "0x1" + }, + "13019": { + "op": "PUSH1", + "value": "0x80" + }, + "13021": { + "op": "SHL" + }, + "13022": { + "op": "SUB" + }, + "13023": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "DUP7", + "path": "82" + }, + "13024": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "AND", + "path": "82" + }, + "13025": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "MUL", + "path": "82" + }, + "13026": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "OR", + "path": "82" + }, + "13027": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "DUP3", + "path": "82" + }, + "13028": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 5959, + 6033 + ], + "op": "SSTORE", + "path": "82" + }, + "13029": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6064, + 6080 + ], + "op": "PUSH4", + "path": "82", + "statement": 283, + "value": "0xFFFFFFFF" + }, + "13034": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6052, + 6080 + ], + "op": "DUP8", + "path": "82" + }, + "13035": { + "branch": 568, + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6052, + 6080 + ], + "op": "LT", + "path": "82" + }, + "13036": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6044, + 6081 + ], + "op": "PUSH2", + "path": "82", + "value": "0x32F4" + }, + "13039": { + "branch": 568, + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6044, + 6081 + ], + "op": "JUMPI", + "path": "82" + }, + "13040": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6044, + 6081 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "13042": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6044, + 6081 + ], + "op": "DUP1", + "path": "82" + }, + "13043": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6044, + 6081 + ], + "op": "REVERT", + "path": "82" + }, + "13044": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6044, + 6081 + ], + "op": "JUMPDEST", + "path": "82" + }, + "13045": { + "op": "POP" + }, + "13046": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "DUP1", + "path": "82", + "statement": 284 + }, + "13047": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "SLOAD", + "path": "82" + }, + "13048": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "PUSH4", + "path": "82", + "value": "0xFFFFFFFF" + }, + "13053": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "DUP8", + "path": "82" + }, + "13054": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "AND", + "path": "82" + }, + "13055": { + "op": "PUSH1", + "value": "0x1" + }, + "13057": { + "op": "PUSH1", + "value": "0xE0" + }, + "13059": { + "op": "SHL" + }, + "13060": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "MUL", + "path": "82" + }, + "13061": { + "op": "PUSH1", + "value": "0x1" + }, + "13063": { + "op": "PUSH1", + "value": "0x1" + }, + "13065": { + "op": "PUSH1", + "value": "0xE0" + }, + "13067": { + "op": "SHL" + }, + "13068": { + "op": "SUB" + }, + "13069": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "SWAP1", + "path": "82" + }, + "13070": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "SWAP2", + "path": "82" + }, + "13071": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "AND", + "path": "82" + }, + "13072": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "OR", + "path": "82" + }, + "13073": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "SWAP1", + "path": "82" + }, + "13074": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6119, + 6172 + ], + "op": "SSTORE", + "path": "82" + }, + "13075": { + "op": "POP" + }, + "13076": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 6190, + 6214 + ], + "op": "SWAP2", + "path": "82", + "statement": 285 + }, + "13077": { + "op": "POP" + }, + "13078": { + "op": "POP" + }, + "13079": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4730, + 6221 + ], + "op": "SWAP4", + "path": "82" + }, + "13080": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4730, + 6221 + ], + "op": "SWAP3", + "path": "82" + }, + "13081": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4730, + 6221 + ], + "op": "POP", + "path": "82" + }, + "13082": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4730, + 6221 + ], + "op": "POP", + "path": "82" + }, + "13083": { + "fn": "nTokenSupply.changeNTokenSupply", + "offset": [ + 4730, + 6221 + ], + "op": "POP", + "path": "82" + }, + "13084": { + "fn": "nTokenSupply.changeNTokenSupply", + "jump": "o", + "offset": [ + 4730, + 6221 + ], + "op": "JUMP", + "path": "82" + }, + "13085": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13086": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 958, + 984 + ], + "op": "PUSH1", + "path": "68", + "value": "0xE0" + }, + "13088": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 958, + 984 + ], + "op": "DUP5", + "path": "68" + }, + "13089": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 958, + 984 + ], + "op": "ADD", + "path": "68" + }, + "13090": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 958, + 984 + ], + "op": "MLOAD", + "path": "68" + }, + "13091": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 917, + 942 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "13093": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 917, + 942 + ], + "op": "SWAP1", + "path": "68" + }, + "13094": { + "branch": 493, + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 958, + 988 + ], + "op": "ISZERO", + "path": "68" + }, + "13095": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 954, + 1975 + ], + "op": "PUSH2", + "path": "68", + "value": "0x33DE" + }, + "13098": { + "branch": 493, + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 954, + 1975 + ], + "op": "JUMPI", + "path": "68" + }, + "13099": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1256 + ], + "op": "PUSH20", + "path": "68", + "statement": 286, + "value": "0x0" + }, + "13120": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1294 + ], + "op": "PUSH4", + "path": "68", + "value": "0xE0C01A72" + }, + "13125": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1312, + 1324 + ], + "op": "DUP6", + "path": "68" + }, + "13126": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1383 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3352" + }, + "13129": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1354 + ], + "op": "DUP9", + "path": "68" + }, + "13130": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1374 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "13132": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1374 + ], + "op": "ADD", + "path": "68" + }, + "13133": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1374 + ], + "op": "MLOAD", + "path": "68" + }, + "13134": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1381 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1CF6" + }, + "13137": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 1342, + 1383 + ], + "op": "JUMP", + "path": "68" + }, + "13138": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1342, + 1383 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13139": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1401, + 1413 + ], + "op": "DUP9", + "path": "68" + }, + "13140": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1401, + 1427 + ], + "op": "PUSH1", + "path": "68", + "value": "0xE0" + }, + "13142": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1401, + 1427 + ], + "op": "ADD", + "path": "68" + }, + "13143": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1401, + 1427 + ], + "op": "MLOAD", + "path": "68" + }, + "13144": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1584, + 1596 + ], + "op": "DUP10", + "path": "68" + }, + "13145": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1584, + 1617 + ], + "op": "PUSH2", + "path": "68", + "value": "0x100" + }, + "13148": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1584, + 1617 + ], + "op": "ADD", + "path": "68" + }, + "13149": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1584, + 1617 + ], + "op": "MLOAD", + "path": "68" + }, + "13150": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "13152": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "MLOAD", + "path": "68" + }, + "13153": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP6", + "path": "68" + }, + "13154": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH4", + "path": "68", + "value": "0xFFFFFFFF" + }, + "13159": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "AND", + "path": "68" + }, + "13160": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0xE0" + }, + "13162": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SHL", + "path": "68" + }, + "13163": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP2", + "path": "68" + }, + "13164": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "MSTORE", + "path": "68" + }, + "13165": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x4" + }, + "13167": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ADD", + "path": "68" + }, + "13168": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH2", + "path": "68", + "value": "0x337C" + }, + "13171": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP5", + "path": "68" + }, + "13172": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP4", + "path": "68" + }, + "13173": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP3", + "path": "68" + }, + "13174": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP2", + "path": "68" + }, + "13175": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP1", + "path": "68" + }, + "13176": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH2", + "path": "68", + "value": "0x4885" + }, + "13179": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 1239, + 1631 + ], + "op": "JUMP", + "path": "68" + }, + "13180": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13181": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x20" + }, + "13183": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "13185": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "MLOAD", + "path": "68" + }, + "13186": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13187": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP4", + "path": "68" + }, + "13188": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SUB", + "path": "68" + }, + "13189": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP2", + "path": "68" + }, + "13190": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP7", + "path": "68" + }, + "13191": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13192": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "EXTCODESIZE", + "path": "68" + }, + "13193": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ISZERO", + "path": "68" + }, + "13194": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13195": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ISZERO", + "path": "68" + }, + "13196": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3394" + }, + "13199": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "JUMPI", + "path": "68" + }, + "13200": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "13202": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13203": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "REVERT", + "path": "68" + }, + "13204": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13205": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "POP", + "path": "68" + }, + "13206": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "GAS", + "path": "68" + }, + "13207": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DELEGATECALL", + "path": "68" + }, + "13208": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ISZERO", + "path": "68" + }, + "13209": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13210": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ISZERO", + "path": "68" + }, + "13211": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH2", + "path": "68", + "value": "0x33A8" + }, + "13214": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "JUMPI", + "path": "68" + }, + "13215": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "RETURNDATASIZE", + "path": "68" + }, + "13216": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "13218": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13219": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "RETURNDATACOPY", + "path": "68" + }, + "13220": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "RETURNDATASIZE", + "path": "68" + }, + "13221": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x0" + }, + "13223": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "REVERT", + "path": "68" + }, + "13224": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13225": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "POP", + "path": "68" + }, + "13226": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "POP", + "path": "68" + }, + "13227": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "POP", + "path": "68" + }, + "13228": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "POP", + "path": "68" + }, + "13229": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "13231": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "MLOAD", + "path": "68" + }, + "13232": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "RETURNDATASIZE", + "path": "68" + }, + "13233": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x1F" + }, + "13235": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "NOT", + "path": "68" + }, + "13236": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x1F" + }, + "13238": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP3", + "path": "68" + }, + "13239": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ADD", + "path": "68" + }, + "13240": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "AND", + "path": "68" + }, + "13241": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP3", + "path": "68" + }, + "13242": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ADD", + "path": "68" + }, + "13243": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP1", + "path": "68" + }, + "13244": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "13246": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "MSTORE", + "path": "68" + }, + "13247": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "POP", + "path": "68" + }, + "13248": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "DUP2", + "path": "68" + }, + "13249": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "ADD", + "path": "68" + }, + "13250": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP1", + "path": "68" + }, + "13251": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH2", + "path": "68", + "value": "0x33CC" + }, + "13254": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP2", + "path": "68" + }, + "13255": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "SWAP1", + "path": "68" + }, + "13256": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "PUSH2", + "path": "68", + "value": "0x43D8" + }, + "13259": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 1239, + 1631 + ], + "op": "JUMP", + "path": "68" + }, + "13260": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1239, + 1631 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13261": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1766, + 1767 + ], + "op": "PUSH1", + "path": "68", + "statement": 287, + "value": "0x0" + }, + "13263": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1737, + 1763 + ], + "op": "PUSH1", + "path": "68", + "value": "0xE0" + }, + "13265": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1737, + 1763 + ], + "op": "DUP8", + "path": "68" + }, + "13266": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1737, + 1763 + ], + "op": "ADD", + "path": "68" + }, + "13267": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1737, + 1767 + ], + "op": "DUP2", + "path": "68" + }, + "13268": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1737, + 1767 + ], + "op": "SWAP1", + "path": "68" + }, + "13269": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1737, + 1767 + ], + "op": "MSTORE", + "path": "68" + }, + "13270": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1927, + 1960 + ], + "op": "PUSH2", + "path": "68", + "statement": 288, + "value": "0x100" + }, + "13273": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1927, + 1960 + ], + "op": "DUP8", + "path": "68" + }, + "13274": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1927, + 1960 + ], + "op": "ADD", + "path": "68" + }, + "13275": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1927, + 1964 + ], + "op": "MSTORE", + "path": "68" + }, + "13276": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 1219, + 1631 + ], + "op": "SWAP1", + "path": "68" + }, + "13277": { + "op": "POP" + }, + "13278": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 954, + 1975 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13279": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2947, + 3201 + ], + "op": "PUSH2", + "path": "68", + "statement": 289, + "value": "0x3420" + }, + "13282": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3191 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3419" + }, + "13285": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3157, + 3169 + ], + "op": "DUP7", + "path": "68" + }, + "13286": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3157, + 3190 + ], + "op": "PUSH2", + "path": "68", + "value": "0x100" + }, + "13289": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3157, + 3190 + ], + "op": "ADD", + "path": "68" + }, + "13290": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3157, + 3190 + ], + "op": "MLOAD", + "path": "68" + }, + "13291": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3135 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3413" + }, + "13294": { + "offset": [ + 499, + 503 + ], + "op": "PUSH8", + "path": "60", + "value": "0xDE0B6B3A7640000" + }, + "13303": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3070 + ], + "op": "PUSH2", + "path": "68", + "value": "0x340D" + }, + "13306": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3045, + 3069 + ], + "op": "DUP9", + "path": "68" + }, + "13307": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3023 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3407" + }, + "13310": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 2994 + ], + "op": "DUP13", + "path": "68" + }, + "13311": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3014 + ], + "op": "PUSH1", + "path": "68", + "value": "0x40" + }, + "13313": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3014 + ], + "op": "ADD", + "path": "68" + }, + "13314": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3014 + ], + "op": "MLOAD", + "path": "68" + }, + "13315": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3021 + ], + "op": "PUSH2", + "path": "68", + "value": "0x1CF6" + }, + "13318": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 2982, + 3023 + ], + "op": "JUMP", + "path": "68" + }, + "13319": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3023 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13320": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3044 + ], + "op": "SWAP1", + "path": "68" + }, + "13321": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3044 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3C5C" + }, + "13324": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 2982, + 3070 + ], + "op": "JUMP", + "path": "68" + }, + "13325": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3070 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13326": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3091 + ], + "op": "SWAP1", + "path": "68" + }, + "13327": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3091 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3CB5" + }, + "13330": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 2982, + 3135 + ], + "op": "JUMP", + "path": "68" + }, + "13331": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3135 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13332": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3156 + ], + "op": "SWAP1", + "path": "68" + }, + "13333": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3156 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3096" + }, + "13336": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 2982, + 3191 + ], + "op": "JUMP", + "path": "68" + }, + "13337": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2982, + 3191 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13338": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2947, + 2964 + ], + "op": "DUP3", + "path": "68" + }, + "13339": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2947, + 2964 + ], + "op": "SWAP1", + "path": "68" + }, + "13340": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2947, + 2968 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3D1C" + }, + "13343": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 2947, + 3201 + ], + "op": "JUMP", + "path": "68" + }, + "13344": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2947, + 3201 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13345": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 2927, + 3201 + ], + "op": "SWAP1", + "path": "68" + }, + "13346": { + "op": "POP" + }, + "13347": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 4033, + 4155 + ], + "op": "PUSH2", + "path": "68", + "statement": 290, + "value": "0x3438" + }, + "13350": { + "offset": [ + 499, + 503 + ], + "op": "PUSH8", + "path": "60", + "value": "0xDE0B6B3A7640000" + }, + "13359": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 4033, + 4094 + ], + "op": "PUSH2", + "path": "68", + "value": "0x340D" + }, + "13362": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 4033, + 4051 + ], + "op": "DUP5", + "path": "68" + }, + "13363": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 4069, + 4093 + ], + "op": "DUP7", + "path": "68" + }, + "13364": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 4033, + 4068 + ], + "op": "PUSH2", + "path": "68", + "value": "0x3C5C" + }, + "13367": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "i", + "offset": [ + 4033, + 4094 + ], + "op": "JUMP", + "path": "68" + }, + "13368": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 4033, + 4155 + ], + "op": "JUMPDEST", + "path": "68" + }, + "13369": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4009 + ], + "op": "DUP6", + "path": "68" + }, + "13370": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4030 + ], + "op": "PUSH2", + "path": "68", + "value": "0x100" + }, + "13373": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4030 + ], + "op": "ADD", + "path": "68" + }, + "13374": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4155 + ], + "op": "DUP2", + "path": "68" + }, + "13375": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4155 + ], + "op": "DUP2", + "path": "68" + }, + "13376": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4155 + ], + "op": "MSTORE", + "path": "68" + }, + "13377": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4155 + ], + "op": "POP", + "path": "68" + }, + "13378": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 3997, + 4155 + ], + "op": "POP", + "path": "68" + }, + "13379": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "SWAP5", + "path": "68" + }, + "13380": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "SWAP4", + "path": "68" + }, + "13381": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "POP", + "path": "68" + }, + "13382": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "POP", + "path": "68" + }, + "13383": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "POP", + "path": "68" + }, + "13384": { + "fn": "Incentives.calculateIncentivesToClaim", + "offset": [ + 702, + 4162 + ], + "op": "POP", + "path": "68" + }, + "13385": { + "fn": "Incentives.calculateIncentivesToClaim", + "jump": "o", + "offset": [ + 702, + 4162 + ], + "op": "JUMP", + "path": "68" + }, + "13386": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5133, + 5582 + ], + "op": "JUMPDEST", + "path": "81" + }, + "13387": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5208, + 5217 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "13389": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5229, + 5276 + ], + "op": "DUP1", + "path": "81" + }, + "13390": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5279, + 5315 + ], + "op": "PUSH2", + "path": "81", + "value": "0x3455" + }, + "13393": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5279, + 5313 + ], + "op": "PUSH2", + "path": "81", + "value": "0x2894" + }, + "13396": { + "fn": "nTokenHandler.getSecondaryRewarder", + "jump": "i", + "offset": [ + 5279, + 5315 + ], + "op": "JUMP", + "path": "81" + }, + "13397": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5279, + 5315 + ], + "op": "JUMPDEST", + "path": "81" + }, + "13398": { + "op": "PUSH1", + "value": "0x1" + }, + "13400": { + "op": "PUSH1", + "value": "0x1" + }, + "13402": { + "op": "PUSH1", + "value": "0xA0" + }, + "13404": { + "op": "SHL" + }, + "13405": { + "op": "SUB" + }, + "13406": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "DUP5", + "path": "81" + }, + "13407": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "AND", + "path": "81" + }, + "13408": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5325, + 5354 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "13410": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "SWAP1", + "path": "81" + }, + "13411": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "DUP2", + "path": "81" + }, + "13412": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "MSTORE", + "path": "81" + }, + "13413": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "PUSH1", + "path": "81", + "value": "0x20" + }, + "13415": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "DUP3", + "path": "81" + }, + "13416": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "SWAP1", + "path": "81" + }, + "13417": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "MSTORE", + "path": "81" + }, + "13418": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "PUSH1", + "path": "81", + "value": "0x40" + }, + "13420": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "SWAP1", + "path": "81" + }, + "13421": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "KECCAK256", + "path": "81" + }, + "13422": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5399, + 5427 + ], + "op": "DUP1", + "path": "81" + }, + "13423": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5399, + 5427 + ], + "op": "SLOAD", + "path": "81" + }, + "13424": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "SWAP2", + "path": "81" + }, + "13425": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "SWAP3", + "path": "81" + }, + "13426": { + "op": "POP" + }, + "13427": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5357, + 5376 + ], + "op": "SWAP1", + "path": "81" + }, + "13428": { + "op": "PUSH1", + "value": "0x1" + }, + "13430": { + "op": "PUSH1", + "value": "0xF8" + }, + "13432": { + "op": "SHL" + }, + "13433": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5399, + 5427 + ], + "op": "SWAP1", + "path": "81" + }, + "13434": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5399, + 5427 + ], + "op": "DIV", + "path": "81" + }, + "13435": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5399, + 5427 + ], + "op": "PUSH1", + "path": "81", + "value": "0xFF" + }, + "13437": { + "branch": 565, + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5399, + 5427 + ], + "op": "AND", + "path": "81" + }, + "13438": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5395, + 5576 + ], + "op": "ISZERO", + "path": "81" + }, + "13439": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5395, + 5576 + ], + "op": "PUSH2", + "path": "81", + "value": "0x34B1" + }, + "13442": { + "branch": 565, + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5395, + 5576 + ], + "op": "JUMPI", + "path": "81" + }, + "13443": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5492 + ], + "op": "PUSH2", + "path": "81", + "statement": 291, + "value": "0x348A" + }, + "13446": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5490 + ], + "op": "PUSH2", + "path": "81", + "value": "0x3D76" + }, + "13449": { + "fn": "nTokenHandler.getSecondaryRewarder", + "jump": "i", + "offset": [ + 5450, + 5492 + ], + "op": "JUMP", + "path": "81" + }, + "13450": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5492 + ], + "op": "JUMPDEST", + "path": "81" + }, + "13451": { + "op": "PUSH1", + "value": "0x1" + }, + "13453": { + "op": "PUSH1", + "value": "0x1" + }, + "13455": { + "op": "PUSH1", + "value": "0xA0" + }, + "13457": { + "op": "SHL" + }, + "13458": { + "op": "SUB" + }, + "13459": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "DUP1", + "path": "81" + }, + "13460": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "DUP7", + "path": "81" + }, + "13461": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "AND", + "path": "81" + }, + "13462": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "13464": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP1", + "path": "81" + }, + "13465": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "DUP2", + "path": "81" + }, + "13466": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "MSTORE", + "path": "81" + }, + "13467": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "PUSH1", + "path": "81", + "value": "0x20" + }, + "13469": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP3", + "path": "81" + }, + "13470": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP1", + "path": "81" + }, + "13471": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP3", + "path": "81" + }, + "13472": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "MSTORE", + "path": "81" + }, + "13473": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "PUSH1", + "path": "81", + "value": "0x40" + }, + "13475": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP1", + "path": "81" + }, + "13476": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP2", + "path": "81" + }, + "13477": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "KECCAK256", + "path": "81" + }, + "13478": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SLOAD", + "path": "81" + }, + "13479": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "AND", + "path": "81" + }, + "13480": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5450, + 5506 + ], + "op": "SWAP3", + "path": "81" + }, + "13481": { + "op": "POP" + }, + "13482": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5443, + 5506 + ], + "op": "PUSH2", + "path": "81", + "value": "0xBE2" + }, + "13485": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5443, + 5506 + ], + "op": "SWAP2", + "path": "81" + }, + "13486": { + "op": "POP" + }, + "13487": { + "op": "POP" + }, + "13488": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5443, + 5506 + ], + "op": "JUMP", + "path": "81" + }, + "13489": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5395, + 5576 + ], + "op": "JUMPDEST", + "path": "81" + }, + "13490": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5562, + 5563 + ], + "op": "PUSH1", + "path": "81", + "statement": 292, + "value": "0x0" + }, + "13492": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5537, + 5565 + ], + "op": "SWAP3", + "path": "81" + }, + "13493": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5537, + 5565 + ], + "op": "POP", + "path": "81" + }, + "13494": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5537, + 5565 + ], + "op": "POP", + "path": "81" + }, + "13495": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5537, + 5565 + ], + "op": "POP", + "path": "81" + }, + "13496": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5537, + 5565 + ], + "op": "PUSH2", + "path": "81", + "value": "0xBE2" + }, + "13499": { + "fn": "nTokenHandler.getSecondaryRewarder", + "offset": [ + 5537, + 5565 + ], + "op": "JUMP", + "path": "81" + }, + "13500": { + "fn": "TokenHandler.transferIncentive", + "offset": [ + 14515, + 14698 + ], + "op": "JUMPDEST", + "path": "69" + }, + "13501": { + "fn": "TokenHandler.transferIncentive", + "offset": [ + 14604, + 14691 + ], + "op": "PUSH2", + "path": "69", + "statement": 293, + "value": "0x8EB" + }, + "13504": { + "offset": [ + 336, + 378 + ], + "op": "PUSH20", + "path": "61", + "value": "0xCFEAEAD4947F0705A14EC42AC3D44129E1EF3ED5" + }, + "13525": { + "fn": "TokenHandler.transferIncentive", + "offset": [ + 14665, + 14672 + ], + "op": "DUP4", + "path": "69" + }, + "13526": { + "fn": "TokenHandler.transferIncentive", + "offset": [ + 14674, + 14690 + ], + "op": "DUP4", + "path": "69" + }, + "13527": { + "fn": "TokenHandler.transferIncentive", + "offset": [ + 14604, + 14632 + ], + "op": "PUSH2", + "path": "69", + "value": "0x2DB7" + }, + "13530": { + "fn": "TokenHandler.transferIncentive", + "jump": "i", + "offset": [ + 14604, + 14691 + ], + "op": "JUMP", + "path": "69" + }, + "13531": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12689, + 14727 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13532": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12803, + 12830 + ], + "op": "DUP2", + "path": "84", + "statement": 294 + }, + "13533": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12803, + 12830 + ], + "op": "MLOAD", + "path": "84" + }, + "13534": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12803, + 12837 + ], + "op": "MLOAD", + "path": "84" + }, + "13535": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12795, + 12837 + ], + "op": "DUP2", + "path": "84" + }, + "13536": { + "branch": 507, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12795, + 12837 + ], + "op": "LT", + "path": "84" + }, + "13537": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "PUSH2", + "path": "84", + "value": "0x34E9" + }, + "13540": { + "branch": 507, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "JUMPI", + "path": "84" + }, + "13541": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13543": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "DUP1", + "path": "84" + }, + "13544": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "REVERT", + "path": "84" + }, + "13545": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13546": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12920, + 12921 + ], + "op": "PUSH1", + "path": "84", + "statement": 295, + "value": "0x0" + }, + "13548": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12899 + ], + "op": "DUP3", + "path": "84" + }, + "13549": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12917 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "13551": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12917 + ], + "op": "ADD", + "path": "84" + }, + "13552": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12917 + ], + "op": "MLOAD", + "path": "84" + }, + "13553": { + "branch": 508, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12921 + ], + "op": "GT", + "path": "84" + }, + "13554": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "PUSH2", + "path": "84", + "value": "0x34FA" + }, + "13557": { + "branch": 508, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "JUMPI", + "path": "84" + }, + "13558": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13560": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "DUP1", + "path": "84" + }, + "13561": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "REVERT", + "path": "84" + }, + "13562": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13563": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12969, + 13004 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13565": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13021 + ], + "op": "DUP3", + "path": "84" + }, + "13566": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13034 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13568": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13034 + ], + "op": "ADD", + "path": "84" + }, + "13569": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13034 + ], + "op": "MLOAD", + "path": "84" + }, + "13570": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13035, + 13040 + ], + "op": "DUP3", + "path": "84" + }, + "13571": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "DUP2", + "path": "84" + }, + "13572": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "MLOAD", + "path": "84" + }, + "13573": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "DUP2", + "path": "84" + }, + "13574": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "LT", + "path": "84" + }, + "13575": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "PUSH2", + "path": "84", + "value": "0x350C" + }, + "13578": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "JUMPI", + "path": "84" + }, + "13579": { + "dev": "Index out of range", + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "INVALID", + "path": "84" + }, + "13580": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13581": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13583": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "MUL", + "path": "84" + }, + "13584": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13586": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "ADD", + "path": "84" + }, + "13587": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "ADD", + "path": "84" + }, + "13588": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "MLOAD", + "path": "84" + }, + "13589": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12969, + 13041 + ], + "op": "SWAP1", + "path": "84" + }, + "13590": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12969, + 13041 + ], + "op": "POP", + "path": "84" + }, + "13591": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13102, + 13126 + ], + "op": "PUSH1", + "path": "84", + "statement": 296, + "value": "0x2" + }, + "13593": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "13595": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "DUP2", + "path": "84" + }, + "13596": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "GT", + "path": "84" + }, + "13597": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "ISZERO", + "path": "84" + }, + "13598": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3523" + }, + "13601": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPI", + "path": "84" + }, + "13602": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "INVALID", + "path": "84" + }, + "13603": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13604": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13085 + ], + "op": "DUP2", + "path": "84" + }, + "13605": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13098 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "13607": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13098 + ], + "op": "ADD", + "path": "84" + }, + "13608": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13098 + ], + "op": "MLOAD", + "path": "84" + }, + "13609": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "13611": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "DUP2", + "path": "84" + }, + "13612": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "GT", + "path": "84" + }, + "13613": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "ISZERO", + "path": "84" + }, + "13614": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3533" + }, + "13617": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPI", + "path": "84" + }, + "13618": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "INVALID", + "path": "84" + }, + "13619": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13620": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "EQ", + "path": "84" + }, + "13621": { + "branch": 509, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "ISZERO", + "path": "84" + }, + "13622": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "DUP1", + "path": "84" + }, + "13623": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "ISZERO", + "path": "84" + }, + "13624": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3551" + }, + "13627": { + "branch": 509, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "JUMPI", + "path": "84" + }, + "13628": { + "op": "POP" + }, + "13629": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13172, + 13204 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "13631": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13155 + ], + "op": "DUP2", + "path": "84" + }, + "13632": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13168 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "13634": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13168 + ], + "op": "ADD", + "path": "84" + }, + "13635": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13168 + ], + "op": "MLOAD", + "path": "84" + }, + "13636": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "13638": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "DUP2", + "path": "84" + }, + "13639": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "GT", + "path": "84" + }, + "13640": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "ISZERO", + "path": "84" + }, + "13641": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "PUSH2", + "path": "84", + "value": "0x354E" + }, + "13644": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "JUMPI", + "path": "84" + }, + "13645": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "INVALID", + "path": "84" + }, + "13646": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13647": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "EQ", + "path": "84" + }, + "13648": { + "branch": 510, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "ISZERO", + "path": "84" + }, + "13649": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13650": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "PUSH2", + "path": "84", + "value": "0x355A" + }, + "13653": { + "branch": 510, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "JUMPI", + "path": "84" + }, + "13654": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13656": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "DUP1", + "path": "84" + }, + "13657": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "REVERT", + "path": "84" + }, + "13658": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13659": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13285 + ], + "op": "PUSH1", + "path": "84", + "statement": 297, + "value": "0x60" + }, + "13661": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13285 + ], + "op": "DUP4", + "path": "84" + }, + "13662": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13285 + ], + "op": "ADD", + "path": "84" + }, + "13663": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "DUP1", + "path": "84" + }, + "13664": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "MLOAD", + "path": "84" + }, + "13665": { + "op": "PUSH1", + "value": "0x0" + }, + "13667": { + "op": "NOT" + }, + "13668": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "ADD", + "path": "84" + }, + "13669": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "SWAP1", + "path": "84" + }, + "13670": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "MSTORE", + "path": "84" + }, + "13671": { + "op": "PUSH1", + "value": "0x0" + }, + "13673": { + "op": "DUP1" + }, + "13674": { + "op": "DUP1" + }, + "13675": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13676": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13551, + 13578 + ], + "op": "DUP6", + "path": "84" + }, + "13677": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13551, + 13578 + ], + "op": "MLOAD", + "path": "84" + }, + "13678": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13551, + 13585 + ], + "op": "MLOAD", + "path": "84" + }, + "13679": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13547, + 13585 + ], + "op": "DUP2", + "path": "84" + }, + "13680": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13547, + 13585 + ], + "op": "LT", + "path": "84" + }, + "13681": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "ISZERO", + "path": "84" + }, + "13682": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "PUSH2", + "path": "84", + "value": "0x35CD" + }, + "13685": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMPI", + "path": "84" + }, + "13686": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13606, + 13629 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13688": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13646 + ], + "op": "DUP7", + "path": "84" + }, + "13689": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13659 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13691": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13659 + ], + "op": "ADD", + "path": "84" + }, + "13692": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13659 + ], + "op": "MLOAD", + "path": "84" + }, + "13693": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13660, + 13661 + ], + "op": "DUP3", + "path": "84" + }, + "13694": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "DUP2", + "path": "84" + }, + "13695": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "MLOAD", + "path": "84" + }, + "13696": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "DUP2", + "path": "84" + }, + "13697": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "LT", + "path": "84" + }, + "13698": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3587" + }, + "13701": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "JUMPI", + "path": "84" + }, + "13702": { + "dev": "Index out of range", + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "INVALID", + "path": "84" + }, + "13703": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13704": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13706": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "MUL", + "path": "84" + }, + "13707": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13709": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "ADD", + "path": "84" + }, + "13710": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "ADD", + "path": "84" + }, + "13711": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "MLOAD", + "path": "84" + }, + "13712": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13606, + 13662 + ], + "op": "SWAP1", + "path": "84" + }, + "13713": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13606, + 13662 + ], + "op": "POP", + "path": "84" + }, + "13714": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13696, + 13709 + ], + "op": "DUP3", + "path": "84" + }, + "13715": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13681 + ], + "op": "DUP2", + "path": "84" + }, + "13716": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13693 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "13718": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13693 + ], + "op": "ADD", + "path": "84" + }, + "13719": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13693 + ], + "op": "MLOAD", + "path": "84" + }, + "13720": { + "branch": 511, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13709 + ], + "op": "GT", + "path": "84" + }, + "13721": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "DUP1", + "path": "84" + }, + "13722": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "ISZERO", + "path": "84" + }, + "13723": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "PUSH2", + "path": "84", + "value": "0x35B4" + }, + "13726": { + "branch": 511, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "JUMPI", + "path": "84" + }, + "13727": { + "op": "POP" + }, + "13728": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13731, + 13755 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "13730": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13714 + ], + "op": "DUP2", + "path": "84" + }, + "13731": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13727 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "13733": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13727 + ], + "op": "ADD", + "path": "84" + }, + "13734": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13727 + ], + "op": "MLOAD", + "path": "84" + }, + "13735": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "13737": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "DUP2", + "path": "84" + }, + "13738": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "GT", + "path": "84" + }, + "13739": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "ISZERO", + "path": "84" + }, + "13740": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "PUSH2", + "path": "84", + "value": "0x35B1" + }, + "13743": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "JUMPI", + "path": "84" + }, + "13744": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "INVALID", + "path": "84" + }, + "13745": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13746": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "EQ", + "path": "84" + }, + "13747": { + "branch": 512, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "ISZERO", + "path": "84" + }, + "13748": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13749": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "ISZERO", + "path": "84" + }, + "13750": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "PUSH2", + "path": "84", + "value": "0x35C4" + }, + "13753": { + "branch": 512, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "JUMPI", + "path": "84" + }, + "13754": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13792 + ], + "op": "DUP1", + "path": "84", + "statement": 298 + }, + "13755": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13804 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "13757": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13804 + ], + "op": "ADD", + "path": "84" + }, + "13758": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13804 + ], + "op": "MLOAD", + "path": "84" + }, + "13759": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13775, + 13804 + ], + "op": "SWAP3", + "path": "84" + }, + "13760": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13775, + 13804 + ], + "op": "POP", + "path": "84" + }, + "13761": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13843, + 13844 + ], + "op": "DUP2", + "path": "84", + "statement": 299 + }, + "13762": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13822, + 13844 + ], + "op": "SWAP4", + "path": "84" + }, + "13763": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13822, + 13844 + ], + "op": "POP", + "path": "84" + }, + "13764": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13765": { + "op": "POP" + }, + "13766": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13587, + 13590 + ], + "op": "PUSH1", + "path": "84", + "statement": 300, + "value": "0x1" + }, + "13768": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13587, + 13590 + ], + "op": "ADD", + "path": "84" + }, + "13769": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "PUSH2", + "path": "84", + "value": "0x356B" + }, + "13772": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMP", + "path": "84" + }, + "13773": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13774": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "POP", + "path": "84" + }, + "13775": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13892, + 13910 + ], + "op": "DUP2", + "path": "84" + }, + "13776": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13883, + 13888 + ], + "op": "DUP5", + "path": "84" + }, + "13777": { + "branch": 513, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13883, + 13910 + ], + "op": "EQ", + "path": "84" + }, + "13778": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "ISZERO", + "path": "84" + }, + "13779": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "PUSH2", + "path": "84", + "value": "0x35E6" + }, + "13782": { + "branch": 513, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "JUMPI", + "path": "84" + }, + "13783": { + "op": "POP" + }, + "13784": { + "op": "POP" + }, + "13785": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14060, + 14084 + ], + "op": "PUSH1", + "path": "84", + "statement": 301, + "value": "0x2" + }, + "13787": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "13789": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "SWAP2", + "path": "84" + }, + "13790": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "SWAP1", + "path": "84" + }, + "13791": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "SWAP2", + "path": "84" + }, + "13792": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "ADD", + "path": "84" + }, + "13793": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14084 + ], + "op": "MSTORE", + "path": "84" + }, + "13794": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14098, + 14105 + ], + "op": "PUSH2", + "path": "84", + "statement": 302, + "value": "0x8EB" + }, + "13797": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14098, + 14105 + ], + "op": "JUMP", + "path": "84" + }, + "13798": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13799": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14328, + 14361 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13801": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14378 + ], + "op": "DUP6", + "path": "84" + }, + "13802": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14391 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13804": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14391 + ], + "op": "ADD", + "path": "84" + }, + "13805": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14391 + ], + "op": "MLOAD", + "path": "84" + }, + "13806": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14392, + 14410 + ], + "op": "DUP4", + "path": "84" + }, + "13807": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "DUP2", + "path": "84" + }, + "13808": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "MLOAD", + "path": "84" + }, + "13809": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "DUP2", + "path": "84" + }, + "13810": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "LT", + "path": "84" + }, + "13811": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "PUSH2", + "path": "84", + "value": "0x35F8" + }, + "13814": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "JUMPI", + "path": "84" + }, + "13815": { + "dev": "Index out of range", + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "INVALID", + "path": "84" + }, + "13816": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13817": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13819": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP1", + "path": "84" + }, + "13820": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "DUP2", + "path": "84" + }, + "13821": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "MUL", + "path": "84" + }, + "13822": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP2", + "path": "84" + }, + "13823": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP1", + "path": "84" + }, + "13824": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP2", + "path": "84" + }, + "13825": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "ADD", + "path": "84" + }, + "13826": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "ADD", + "path": "84" + }, + "13827": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "MLOAD", + "path": "84" + }, + "13828": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "PUSH1", + "path": "84", + "statement": 303, + "value": "0x80" + }, + "13830": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "DUP6", + "path": "84" + }, + "13831": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "DUP2", + "path": "84" + }, + "13832": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "ADD", + "path": "84" + }, + "13833": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "DUP1", + "path": "84" + }, + "13834": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "MLOAD", + "path": "84" + }, + "13835": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "SWAP2", + "path": "84" + }, + "13836": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "DUP4", + "path": "84" + }, + "13837": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "ADD", + "path": "84" + }, + "13838": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "DUP1", + "path": "84" + }, + "13839": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "MLOAD", + "path": "84" + }, + "13840": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "SWAP1", + "path": "84" + }, + "13841": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "SWAP2", + "path": "84" + }, + "13842": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "MSTORE", + "path": "84" + }, + "13843": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "MSTORE", + "path": "84" + }, + "13844": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14633, + 14657 + ], + "op": "PUSH1", + "path": "84", + "statement": 304, + "value": "0x1" + }, + "13846": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "13848": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "SWAP2", + "path": "84" + }, + "13849": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "DUP3", + "path": "84" + }, + "13850": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "ADD", + "path": "84" + }, + "13851": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14657 + ], + "op": "MSTORE", + "path": "84" + }, + "13852": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14696, + 14720 + ], + "op": "PUSH1", + "path": "84", + "statement": 305, + "value": "0x2" + }, + "13854": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14693 + ], + "op": "SWAP5", + "path": "84" + }, + "13855": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14693 + ], + "op": "ADD", + "path": "84" + }, + "13856": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "SWAP4", + "path": "84" + }, + "13857": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "SWAP1", + "path": "84" + }, + "13858": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "SWAP4", + "path": "84" + }, + "13859": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "MSTORE", + "path": "84" + }, + "13860": { + "op": "POP" + }, + "13861": { + "op": "POP" + }, + "13862": { + "op": "POP" + }, + "13863": { + "op": "POP" + }, + "13864": { + "op": "POP" + }, + "13865": { + "fn": "PortfolioHandler.deleteAsset", + "jump": "o", + "offset": [ + 12689, + 14727 + ], + "op": "JUMP", + "path": "84" + }, + "13866": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11592, + 12454 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13867": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11739, + 11755 + ], + "op": "DUP2", + "path": "84", + "statement": 306 + }, + "13868": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11739, + 11755 + ], + "op": "MLOAD", + "path": "84" + }, + "13869": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "ISZERO", + "path": "84" + }, + "13870": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "DUP1", + "path": "84" + }, + "13871": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "ISZERO", + "path": "84" + }, + "13872": { + "branch": 514, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "SWAP1", + "path": "84" + }, + "13873": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11803 + ], + "op": "PUSH2", + "path": "84", + "value": "0x363D" + }, + "13876": { + "branch": 514, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11803 + ], + "op": "JUMPI", + "path": "84" + }, + "13877": { + "op": "POP" + }, + "13878": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11759, + 11775 + ], + "op": "DUP2", + "path": "84" + }, + "13879": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11759, + 11775 + ], + "op": "MLOAD", + "path": "84" + }, + "13880": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "13883": { + "op": "LT" + }, + "13884": { + "branch": 515, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11759, + 11803 + ], + "op": "ISZERO", + "path": "84" + }, + "13885": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11803 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13886": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3646" + }, + "13889": { + "branch": 515, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "JUMPI", + "path": "84" + }, + "13890": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13892": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "DUP1", + "path": "84" + }, + "13893": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "REVERT", + "path": "84" + }, + "13894": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13895": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11873 + ], + "op": "DUP2", + "path": "84", + "statement": 307 + }, + "13896": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11882 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13898": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11882 + ], + "op": "ADD", + "path": "84" + }, + "13899": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11882 + ], + "op": "MLOAD", + "path": "84" + }, + "13900": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11865 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13902": { + "branch": 516, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11882 + ], + "op": "LT", + "path": "84" + }, + "13903": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "DUP1", + "path": "84" + }, + "13904": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "ISZERO", + "path": "84" + }, + "13905": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3663" + }, + "13908": { + "branch": 516, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "JUMPI", + "path": "84" + }, + "13909": { + "op": "POP" + }, + "13910": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "13912": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "DUP3", + "path": "84" + }, + "13913": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "ADD", + "path": "84" + }, + "13914": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "MLOAD", + "path": "84" + }, + "13915": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11904, + 11920 + ], + "op": "PUSH5", + "path": "84", + "value": "0xFFFFFFFFFF" + }, + "13921": { + "op": "LT" + }, + "13922": { + "branch": 517, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11920 + ], + "op": "ISZERO", + "path": "84" + }, + "13923": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13924": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "PUSH2", + "path": "84", + "value": "0x366C" + }, + "13927": { + "branch": 517, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "JUMPI", + "path": "84" + }, + "13928": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13930": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "DUP1", + "path": "84" + }, + "13931": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "REVERT", + "path": "84" + }, + "13932": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13933": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11987 + ], + "op": "DUP2", + "path": "84", + "statement": 308 + }, + "13934": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11997 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "13936": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11997 + ], + "op": "ADD", + "path": "84" + }, + "13937": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11997 + ], + "op": "MLOAD", + "path": "84" + }, + "13938": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 11979 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13940": { + "branch": 518, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 11997 + ], + "op": "LT", + "path": "84" + }, + "13941": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "DUP1", + "path": "84" + }, + "13942": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "ISZERO", + "path": "84" + }, + "13943": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3685" + }, + "13946": { + "branch": 518, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "JUMPI", + "path": "84" + }, + "13947": { + "op": "POP" + }, + "13948": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "13950": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "DUP3", + "path": "84" + }, + "13951": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "ADD", + "path": "84" + }, + "13952": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "MLOAD", + "path": "84" + }, + "13953": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "13955": { + "op": "LT" + }, + "13956": { + "branch": 519, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12055 + ], + "op": "ISZERO", + "path": "84" + }, + "13957": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13958": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "PUSH2", + "path": "84", + "value": "0x368E" + }, + "13961": { + "branch": 519, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "JUMPI", + "path": "84" + }, + "13962": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "13964": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "DUP1", + "path": "84" + }, + "13965": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "REVERT", + "path": "84" + }, + "13966": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "JUMPDEST", + "path": "84" + }, + "13967": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "PUSH1", + "path": "84", + "statement": 309, + "value": "0x60" + }, + "13969": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "DUP3", + "path": "84" + }, + "13970": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "ADD", + "path": "84" + }, + "13971": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "MLOAD", + "path": "84" + }, + "13972": { + "op": "PUSH11", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "13984": { + "op": "NOT" + }, + "13985": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "SGT", + "path": "84" + }, + "13986": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "DUP1", + "path": "84" + }, + "13987": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "ISZERO", + "path": "84" + }, + "13988": { + "branch": 520, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "SWAP1", + "path": "84" + }, + "13989": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12178 + ], + "op": "PUSH2", + "path": "84", + "value": "0x36BD" + }, + "13992": { + "branch": 520, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12178 + ], + "op": "JUMPI", + "path": "84" + }, + "13993": { + "op": "POP" + }, + "13994": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "13996": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "DUP3", + "path": "84" + }, + "13997": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "ADD", + "path": "84" + }, + "13998": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "MLOAD", + "path": "84" + }, + "13999": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12163, + 12178 + ], + "op": "PUSH11", + "path": "84", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "14011": { + "op": "SLT" + }, + "14012": { + "branch": 521, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12178 + ], + "op": "ISZERO", + "path": "84" + }, + "14013": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12178 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14014": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "PUSH2", + "path": "84", + "value": "0x36C6" + }, + "14017": { + "branch": 521, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "JUMPI", + "path": "84" + }, + "14018": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "14020": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "DUP1", + "path": "84" + }, + "14021": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "REVERT", + "path": "84" + }, + "14022": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14023": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12262, + 12278 + ], + "op": "DUP2", + "path": "84", + "statement": 310 + }, + "14024": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12262, + 12278 + ], + "op": "MLOAD", + "path": "84" + }, + "14025": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "DUP2", + "path": "84" + }, + "14026": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SLOAD", + "path": "84" + }, + "14027": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "PUSH1", + "path": "84", + "statement": 311, + "value": "0x20" + }, + "14029": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "DUP5", + "path": "84" + }, + "14030": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "ADD", + "path": "84" + }, + "14031": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "MLOAD", + "path": "84" + }, + "14032": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "PUSH1", + "path": "84", + "statement": 312, + "value": "0x40" + }, + "14034": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "DUP6", + "path": "84" + }, + "14035": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "ADD", + "path": "84" + }, + "14036": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "MLOAD", + "path": "84" + }, + "14037": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "PUSH1", + "path": "84", + "statement": 313, + "value": "0x60" + }, + "14039": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "SWAP1", + "path": "84" + }, + "14040": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "SWAP6", + "path": "84" + }, + "14041": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "ADD", + "path": "84" + }, + "14042": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "MLOAD", + "path": "84" + }, + "14043": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA" + }, + "14045": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SIGNEXTEND", + "path": "84" + }, + "14046": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "PUSH11", + "path": "84", + "value": "0xFFFFFFFFFFFFFFFFFFFFFF" + }, + "14058": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "AND", + "path": "84" + }, + "14059": { + "op": "PUSH1", + "value": "0x1" + }, + "14061": { + "op": "PUSH1", + "value": "0x40" + }, + "14063": { + "op": "SHL" + }, + "14064": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "MUL", + "path": "84" + }, + "14065": { + "op": "PUSH19", + "value": "0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000" + }, + "14085": { + "op": "NOT" + }, + "14086": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "14088": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP1", + "path": "84" + }, + "14089": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP7", + "path": "84" + }, + "14090": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "AND", + "path": "84" + }, + "14091": { + "op": "PUSH1", + "value": "0x1" + }, + "14093": { + "op": "PUSH1", + "value": "0x38" + }, + "14095": { + "op": "SHL" + }, + "14096": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "MUL", + "path": "84" + }, + "14097": { + "op": "PUSH8", + "value": "0xFF00000000000000" + }, + "14106": { + "op": "NOT" + }, + "14107": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "PUSH5", + "path": "84", + "value": "0xFFFFFFFFFF" + }, + "14113": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP1", + "path": "84" + }, + "14114": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP4", + "path": "84" + }, + "14115": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "AND", + "path": "84" + }, + "14116": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "PUSH3", + "path": "84", + "value": "0x10000" + }, + "14120": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "MUL", + "path": "84" + }, + "14121": { + "op": "PUSH7", + "value": "0xFFFFFFFFFF0000" + }, + "14129": { + "op": "NOT" + }, + "14130": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "PUSH2", + "path": "84", + "value": "0xFFFF" + }, + "14133": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP1", + "path": "84" + }, + "14134": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP7", + "path": "84" + }, + "14135": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "AND", + "path": "84" + }, + "14136": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "14139": { + "op": "NOT" + }, + "14140": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP1", + "path": "84" + }, + "14141": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP6", + "path": "84" + }, + "14142": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "AND", + "path": "84" + }, + "14143": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP5", + "path": "84" + }, + "14144": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP1", + "path": "84" + }, + "14145": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP5", + "path": "84" + }, + "14146": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "OR", + "path": "84" + }, + "14147": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP5", + "path": "84" + }, + "14148": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP1", + "path": "84" + }, + "14149": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP5", + "path": "84" + }, + "14150": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "AND", + "path": "84" + }, + "14151": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP3", + "path": "84" + }, + "14152": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP1", + "path": "84" + }, + "14153": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP3", + "path": "84" + }, + "14154": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "OR", + "path": "84" + }, + "14155": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "AND", + "path": "84" + }, + "14156": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP2", + "path": "84" + }, + "14157": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP1", + "path": "84" + }, + "14158": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP2", + "path": "84" + }, + "14159": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "OR", + "path": "84" + }, + "14160": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP3", + "path": "84" + }, + "14161": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP1", + "path": "84" + }, + "14162": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP3", + "path": "84" + }, + "14163": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "AND", + "path": "84" + }, + "14164": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP2", + "path": "84" + }, + "14165": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP1", + "path": "84" + }, + "14166": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP2", + "path": "84" + }, + "14167": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "OR", + "path": "84" + }, + "14168": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP1", + "path": "84" + }, + "14169": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SSTORE", + "path": "84" + }, + "14170": { + "fn": "PortfolioHandler._storeAsset", + "jump": "o", + "offset": [ + 11592, + 12454 + ], + "op": "JUMP", + "path": "84" + }, + "14171": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10664, + 11546 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14172": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10896, + 10900 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "14174": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10914, + 10921 + ], + "op": "DUP1", + "path": "84" + }, + "14175": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10935, + 10942 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "14177": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10967, + 10989 + ], + "op": "DUP1", + "path": "84" + }, + "14178": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 11017 + ], + "op": "PUSH2", + "path": "84", + "value": "0x376A" + }, + "14181": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 10997 + ], + "op": "DUP9", + "path": "84" + }, + "14182": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 11015 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3D83" + }, + "14185": { + "fn": "PortfolioHandler._updatePortfolioContext", + "jump": "i", + "offset": [ + 10992, + 11017 + ], + "op": "JUMP", + "path": "84" + }, + "14186": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 11017 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14187": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10967, + 11017 + ], + "op": "SWAP1", + "path": "84" + }, + "14188": { + "op": "POP" + }, + "14189": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11108 + ], + "op": "DUP5", + "path": "84" + }, + "14190": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11108 + ], + "op": "ISZERO", + "path": "84" + }, + "14191": { + "branch": 522, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11108 + ], + "op": "DUP1", + "path": "84" + }, + "14192": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3778" + }, + "14195": { + "branch": 522, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "JUMPI", + "path": "84" + }, + "14196": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "POP", + "path": "84" + }, + "14197": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11129, + 11143 + ], + "op": "DUP1", + "path": "84" + }, + "14198": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11112, + 11126 + ], + "op": "DUP6", + "path": "84" + }, + "14199": { + "branch": 523, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11112, + 11143 + ], + "op": "GT", + "path": "84" + }, + "14200": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14201": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "ISZERO", + "path": "84" + }, + "14202": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3781" + }, + "14205": { + "branch": 523, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "JUMPI", + "path": "84" + }, + "14206": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11176, + 11190 + ], + "op": "DUP1", + "path": "84", + "statement": 314 + }, + "14207": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11159, + 11190 + ], + "op": "SWAP5", + "path": "84" + }, + "14208": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11159, + 11190 + ], + "op": "POP", + "path": "84" + }, + "14209": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14210": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11227 + ], + "op": "DUP7", + "path": "84", + "statement": 315 + }, + "14211": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "DUP1", + "path": "84" + }, + "14212": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "PUSH2", + "path": "84", + "value": "0x3791" + }, + "14215": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "JUMPI", + "path": "84" + }, + "14216": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "POP", + "path": "84" + }, + "14217": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11248, + 11249 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "14219": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11236 + ], + "op": "DUP9", + "path": "84" + }, + "14220": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11245 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "14222": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11245 + ], + "op": "ADD", + "path": "84" + }, + "14223": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11245 + ], + "op": "MLOAD", + "path": "84" + }, + "14224": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11249 + ], + "op": "SLT", + "path": "84" + }, + "14225": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14226": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11210, + 11249 + ], + "op": "SWAP7", + "path": "84" + }, + "14227": { + "op": "POP" + }, + "14228": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "PUSH2", + "path": "84", + "statement": 316, + "value": "0xFFFF" + }, + "14231": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "DUP7", + "path": "84" + }, + "14232": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "AND", + "path": "84" + }, + "14233": { + "branch": 524, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "ISZERO", + "path": "84" + }, + "14234": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "PUSH2", + "path": "84", + "value": "0x37A2" + }, + "14237": { + "branch": 524, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "JUMPI", + "path": "84" + }, + "14238": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "14240": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "DUP1", + "path": "84" + }, + "14241": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "REVERT", + "path": "84" + }, + "14242": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "JUMPDEST", + "path": "84" + }, + "14243": { + "op": "POP" + }, + "14244": { + "op": "POP" + }, + "14245": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11444, + 11460 + ], + "op": "SWAP5", + "path": "84", + "statement": 317 + }, + "14246": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11444, + 11460 + ], + "op": "MLOAD", + "path": "84" + }, + "14247": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11488, + 11495 + ], + "op": "SWAP4", + "path": "84", + "statement": 318 + }, + "14248": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11488, + 11495 + ], + "op": "SWAP6", + "path": "84" + }, + "14249": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11429, + 11431 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "14251": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SWAP4", + "path": "84" + }, + "14252": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SWAP1", + "path": "84" + }, + "14253": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SWAP4", + "path": "84" + }, + "14254": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SHR", + "path": "84" + }, + "14255": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11465, + 11468 + ], + "op": "PUSH1", + "path": "84", + "value": "0xF0" + }, + "14257": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SWAP5", + "path": "84" + }, + "14258": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SWAP1", + "path": "84" + }, + "14259": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SWAP5", + "path": "84" + }, + "14260": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SHL", + "path": "84" + }, + "14261": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP4", + "path": "84" + }, + "14262": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP1", + "path": "84" + }, + "14263": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP4", + "path": "84" + }, + "14264": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "OR", + "path": "84" + }, + "14265": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP4", + "path": "84" + }, + "14266": { + "op": "POP" + }, + "14267": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11524, + 11538 + ], + "op": "SWAP2", + "path": "84" + }, + "14268": { + "op": "POP" + }, + "14269": { + "fn": "PortfolioHandler._updatePortfolioContext", + "jump": "o", + "offset": [ + 10664, + 11546 + ], + "op": "JUMP", + "path": "84" + }, + "14270": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6020, + 6283 + ], + "op": "JUMPDEST", + "path": "62" + }, + "14271": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6087, + 6164 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "14273": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6180, + 6192 + ], + "op": "DUP1", + "path": "62" + }, + "14274": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6195, + 6236 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "14277": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6211, + 6235 + ], + "op": "PUSH1", + "path": "62", + "value": "0xD" + }, + "14279": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8450, + 8779 + ], + "op": "JUMPDEST", + "path": "62" + }, + "14280": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8542, + 8554 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "14282": { + "offset": [ + 494, + 501 + ], + "op": "PUSH3", + "path": "62", + "value": "0xF4240" + }, + "14286": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8742, + 8751 + ], + "op": "DUP3", + "path": "62", + "statement": 319 + }, + "14287": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "PUSH1", + "path": "62", + "value": "0x13" + }, + "14289": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "DUP2", + "path": "62" + }, + "14290": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "GT", + "path": "62" + }, + "14291": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "ISZERO", + "path": "62" + }, + "14292": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37D9" + }, + "14295": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "JUMPI", + "path": "62" + }, + "14296": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "INVALID", + "path": "62" + }, + "14297": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "JUMPDEST", + "path": "62" + }, + "14298": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8772 + ], + "op": "ADD", + "path": "62" + }, + "14299": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8772 + ], + "op": "SWAP3", + "path": "62" + }, + "14300": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8450, + 8779 + ], + "op": "SWAP2", + "path": "62" + }, + "14301": { + "op": "POP" + }, + "14302": { + "op": "POP" + }, + "14303": { + "fn": "LibStorage._getStorageSlot", + "jump": "o", + "offset": [ + 8450, + 8779 + ], + "op": "JUMP", + "path": "62" + }, + "14304": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "JUMPDEST", + "path": "85" + }, + "14305": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1016, + 1023 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "14307": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "14310": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1043, + 1081 + ], + "op": "DUP5", + "path": "85", + "statement": 320 + }, + "14311": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1043, + 1081 + ], + "op": "GT", + "path": "85" + }, + "14312": { + "branch": 562, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1043, + 1081 + ], + "op": "ISZERO", + "path": "85" + }, + "14313": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "PUSH2", + "path": "85", + "value": "0x37F1" + }, + "14316": { + "branch": 562, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "JUMPI", + "path": "85" + }, + "14317": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "14319": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "DUP1", + "path": "85" + }, + "14320": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "REVERT", + "path": "85" + }, + "14321": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "JUMPDEST", + "path": "85" + }, + "14322": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1112, + 1128 + ], + "op": "PUSH5", + "path": "85", + "statement": 321, + "value": "0xFFFFFFFFFF" + }, + "14328": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1100, + 1128 + ], + "op": "DUP4", + "path": "85" + }, + "14329": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1100, + 1128 + ], + "op": "GT", + "path": "85" + }, + "14330": { + "branch": 563, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1100, + 1128 + ], + "op": "ISZERO", + "path": "85" + }, + "14331": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "PUSH2", + "path": "85", + "value": "0x3803" + }, + "14334": { + "branch": 563, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "JUMPI", + "path": "85" + }, + "14335": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "14337": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "DUP1", + "path": "85" + }, + "14338": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "REVERT", + "path": "85" + }, + "14339": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "JUMPDEST", + "path": "85" + }, + "14340": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "14342": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1147, + 1195 + ], + "op": "DUP3", + "path": "85", + "statement": 322 + }, + "14343": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1147, + 1195 + ], + "op": "GT", + "path": "85" + }, + "14344": { + "branch": 564, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1147, + 1195 + ], + "op": "ISZERO", + "path": "85" + }, + "14345": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "PUSH2", + "path": "85", + "value": "0x3811" + }, + "14348": { + "branch": 564, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "JUMPI", + "path": "85" + }, + "14349": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "14351": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "DUP1", + "path": "85" + }, + "14352": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "REVERT", + "path": "85" + }, + "14353": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "JUMPDEST", + "path": "85" + }, + "14354": { + "op": "POP" + }, + "14355": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH8", + "path": "85", + "statement": 323, + "value": "0xFFFF000000000000" + }, + "14364": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1292, + 1294 + ], + "op": "PUSH1", + "path": "85", + "value": "0x30" + }, + "14366": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "DUP5", + "path": "85" + }, + "14367": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "SWAP1", + "path": "85" + }, + "14368": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "SHL", + "path": "85" + }, + "14369": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "AND", + "path": "85" + }, + "14370": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "PUSH6", + "path": "85", + "value": "0xFFFFFFFFFF00" + }, + "14377": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1357, + 1358 + ], + "op": "PUSH1", + "path": "85", + "value": "0x8" + }, + "14379": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "DUP5", + "path": "85" + }, + "14380": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "SWAP1", + "path": "85" + }, + "14381": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "SHL", + "path": "85" + }, + "14382": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "AND", + "path": "85" + }, + "14383": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1251, + 1359 + ], + "op": "OR", + "path": "85" + }, + "14384": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1390, + 1415 + ], + "op": "PUSH1", + "path": "85", + "value": "0xFF" + }, + "14386": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1390, + 1415 + ], + "op": "DUP3", + "path": "85" + }, + "14387": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1390, + 1415 + ], + "op": "AND", + "path": "85" + }, + "14388": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1251, + 1416 + ], + "op": "OR", + "path": "85" + }, + "14389": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "SWAP4", + "path": "85" + }, + "14390": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "SWAP3", + "path": "85" + }, + "14391": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "POP", + "path": "85" + }, + "14392": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "POP", + "path": "85" + }, + "14393": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "POP", + "path": "85" + }, + "14394": { + "fn": "TransferAssets.encodeAssetId", + "jump": "o", + "offset": [ + 883, + 1437 + ], + "op": "JUMP", + "path": "85" + }, + "14395": { + "fn": "LibStorage.getAssetRateStorage", + "offset": [ + 7074, + 7300 + ], + "op": "JUMPDEST", + "path": "62" + }, + "14396": { + "fn": "LibStorage.getAssetRateStorage", + "offset": [ + 7136, + 7186 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "14398": { + "fn": "LibStorage.getAssetRateStorage", + "offset": [ + 7202, + 7214 + ], + "op": "DUP1", + "path": "62" + }, + "14399": { + "fn": "LibStorage.getAssetRateStorage", + "offset": [ + 7217, + 7253 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "14402": { + "fn": "LibStorage.getAssetRateStorage", + "offset": [ + 7233, + 7252 + ], + "op": "PUSH1", + "path": "62", + "value": "0xF" + }, + "14404": { + "fn": "LibStorage.getAssetRateStorage", + "offset": [ + 7217, + 7232 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "14407": { + "fn": "LibStorage.getAssetRateStorage", + "jump": "i", + "offset": [ + 7217, + 7253 + ], + "op": "JUMP", + "path": "62" + }, + "14408": { + "fn": "SafeInt256.abs", + "offset": [ + 1649, + 1767 + ], + "op": "JUMPDEST", + "path": "94" + }, + "14409": { + "fn": "SafeInt256.abs", + "offset": [ + 1695, + 1701 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "14411": { + "fn": "SafeInt256.abs", + "offset": [ + 1721, + 1722 + ], + "op": "DUP1", + "path": "94" + }, + "14412": { + "fn": "SafeInt256.abs", + "offset": [ + 1717, + 1718 + ], + "op": "DUP3", + "path": "94" + }, + "14413": { + "branch": 536, + "fn": "SafeInt256.abs", + "offset": [ + 1717, + 1722 + ], + "op": "SLT", + "path": "94" + }, + "14414": { + "fn": "SafeInt256.abs", + "offset": [ + 1713, + 1760 + ], + "op": "ISZERO", + "path": "94" + }, + "14415": { + "fn": "SafeInt256.abs", + "offset": [ + 1713, + 1760 + ], + "op": "PUSH2", + "path": "94", + "value": "0x3862" + }, + "14418": { + "branch": 536, + "fn": "SafeInt256.abs", + "offset": [ + 1713, + 1760 + ], + "op": "JUMPI", + "path": "94" + }, + "14419": { + "fn": "SafeInt256.abs", + "offset": [ + 1731, + 1737 + ], + "op": "PUSH2", + "path": "94", + "statement": 324, + "value": "0x385B" + }, + "14422": { + "fn": "SafeInt256.abs", + "offset": [ + 1735, + 1736 + ], + "op": "DUP3", + "path": "94" + }, + "14423": { + "fn": "SafeInt256.abs", + "offset": [ + 1731, + 1734 + ], + "op": "PUSH2", + "path": "94", + "value": "0xEE1" + }, + "14426": { + "fn": "SafeInt256.abs", + "jump": "i", + "offset": [ + 1731, + 1737 + ], + "op": "JUMP", + "path": "94" + }, + "14427": { + "fn": "SafeInt256.abs", + "offset": [ + 1731, + 1737 + ], + "op": "JUMPDEST", + "path": "94" + }, + "14428": { + "fn": "SafeInt256.abs", + "offset": [ + 1724, + 1737 + ], + "op": "SWAP1", + "path": "94" + }, + "14429": { + "fn": "SafeInt256.abs", + "offset": [ + 1724, + 1737 + ], + "op": "POP", + "path": "94" + }, + "14430": { + "fn": "SafeInt256.abs", + "offset": [ + 1724, + 1737 + ], + "op": "PUSH2", + "path": "94", + "value": "0xBE2" + }, + "14433": { + "fn": "SafeInt256.abs", + "offset": [ + 1724, + 1737 + ], + "op": "JUMP", + "path": "94" + }, + "14434": { + "fn": "SafeInt256.abs", + "offset": [ + 1713, + 1760 + ], + "op": "JUMPDEST", + "path": "94" + }, + "14435": { + "op": "POP" + }, + "14436": { + "fn": "SafeInt256.abs", + "offset": [ + 1759, + 1760 + ], + "op": "DUP1", + "path": "94", + "statement": 325 + }, + "14437": { + "fn": "SafeInt256.abs", + "offset": [ + 1752, + 1760 + ], + "op": "PUSH2", + "path": "94", + "value": "0xBE2" + }, + "14440": { + "fn": "SafeInt256.abs", + "offset": [ + 1752, + 1760 + ], + "op": "JUMP", + "path": "94" + }, + "14441": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1385, + 1609 + ], + "op": "JUMPDEST", + "path": "72" + }, + "14442": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH1", + "path": "72", + "statement": 326, + "value": "0x40" + }, + "14444": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP1", + "path": "72" + }, + "14445": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "MLOAD", + "path": "72" + }, + "14446": { + "op": "PUSH4", + "value": "0x23B872DD" + }, + "14451": { + "op": "PUSH1", + "value": "0xE0" + }, + "14453": { + "op": "SHL" + }, + "14454": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP2", + "path": "72" + }, + "14455": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "MSTORE", + "path": "72" + }, + "14456": { + "op": "PUSH1", + "value": "0x1" + }, + "14458": { + "op": "PUSH1", + "value": "0x1" + }, + "14460": { + "op": "PUSH1", + "value": "0xA0" + }, + "14462": { + "op": "SHL" + }, + "14463": { + "op": "SUB" + }, + "14464": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP5", + "path": "72" + }, + "14465": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP2", + "path": "72" + }, + "14466": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "AND", + "path": "72" + }, + "14467": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH1", + "path": "72", + "value": "0x4" + }, + "14469": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP4", + "path": "72" + }, + "14470": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ADD", + "path": "72" + }, + "14471": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "MSTORE", + "path": "72" + }, + "14472": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1561, + 1565 + ], + "op": "ADDRESS", + "path": "72" + }, + "14473": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH1", + "path": "72", + "value": "0x24" + }, + "14475": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP4", + "path": "72" + }, + "14476": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ADD", + "path": "72" + }, + "14477": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "MSTORE", + "path": "72" + }, + "14478": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH1", + "path": "72", + "value": "0x44" + }, + "14480": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP3", + "path": "72" + }, + "14481": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ADD", + "path": "72" + }, + "14482": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP5", + "path": "72" + }, + "14483": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP1", + "path": "72" + }, + "14484": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "MSTORE", + "path": "72" + }, + "14485": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP2", + "path": "72" + }, + "14486": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "MLOAD", + "path": "72" + }, + "14487": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "SWAP2", + "path": "72" + }, + "14488": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "DUP6", + "path": "72" + }, + "14489": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "AND", + "path": "72" + }, + "14490": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "SWAP2", + "path": "72" + }, + "14491": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "PUSH4", + "path": "72", + "value": "0x23B872DD" + }, + "14496": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "SWAP2", + "path": "72" + }, + "14497": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH1", + "path": "72", + "value": "0x64" + }, + "14499": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP1", + "path": "72" + }, + "14500": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP3", + "path": "72" + }, + "14501": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ADD", + "path": "72" + }, + "14502": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP3", + "path": "72" + }, + "14503": { + "op": "PUSH1", + "value": "0x0" + }, + "14505": { + "op": "SWAP3" + }, + "14506": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP1", + "path": "72" + }, + "14507": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP2", + "path": "72" + }, + "14508": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP1", + "path": "72" + }, + "14509": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP3", + "path": "72" + }, + "14510": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SWAP1", + "path": "72" + }, + "14511": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "SUB", + "path": "72" + }, + "14512": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ADD", + "path": "72" + }, + "14513": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP2", + "path": "72" + }, + "14514": { + "op": "DUP4" + }, + "14515": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1543 + ], + "op": "DUP8", + "path": "72" + }, + "14516": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP1", + "path": "72" + }, + "14517": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "EXTCODESIZE", + "path": "72" + }, + "14518": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ISZERO", + "path": "72" + }, + "14519": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP1", + "path": "72" + }, + "14520": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "ISZERO", + "path": "72" + }, + "14521": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH2", + "path": "72", + "value": "0x2E0E" + }, + "14524": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "JUMPI", + "path": "72" + }, + "14525": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "14527": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "DUP1", + "path": "72" + }, + "14528": { + "fn": "GenericToken.safeTransferIn", + "offset": [ + 1506, + 1575 + ], + "op": "REVERT", + "path": "72" + }, + "14529": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1615, + 2361 + ], + "op": "JUMPDEST", + "path": "72" + }, + "14530": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1666, + 1678 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "14532": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1688, + 1712 + ], + "op": "PUSH2", + "path": "72", + "value": "0x38CB" + }, + "14535": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1688, + 1712 + ], + "op": "PUSH2", + "path": "72", + "value": "0x4051" + }, + "14538": { + "fn": "GenericToken.checkReturnCode", + "jump": "i", + "offset": [ + 1688, + 1712 + ], + "op": "JUMP", + "path": "72" + }, + "14539": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1688, + 1712 + ], + "op": "JUMPDEST", + "path": "72" + }, + "14540": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1752, + 1768 + ], + "op": "RETURNDATASIZE", + "path": "72" + }, + "14541": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "DUP1", + "path": "72" + }, + "14542": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "ISZERO", + "path": "72" + }, + "14543": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "PUSH2", + "path": "72", + "value": "0x38DF" + }, + "14546": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "JUMPI", + "path": "72" + }, + "14547": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1942, + 1944 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "14549": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1937, + 2156 + ], + "op": "DUP2", + "path": "72" + }, + "14550": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1937, + 2156 + ], + "op": "EQ", + "path": "72" + }, + "14551": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1937, + 2156 + ], + "op": "PUSH2", + "path": "72", + "value": "0x38E8" + }, + "14554": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1937, + 2156 + ], + "op": "JUMPI", + "path": "72" + }, + "14555": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2289, + 2290 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "14557": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2286, + 2287 + ], + "op": "DUP1", + "path": "72" + }, + "14558": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2279, + 2291 + ], + "op": "REVERT", + "path": "72" + }, + "14559": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "JUMPDEST", + "path": "72" + }, + "14560": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1878, + 1879 + ], + "op": "PUSH1", + "path": "72", + "value": "0x1" + }, + "14562": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1867, + 1879 + ], + "op": "SWAP3", + "path": "72" + }, + "14563": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1867, + 1879 + ], + "op": "POP", + "path": "72" + }, + "14564": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "PUSH2", + "path": "72", + "value": "0x38F3" + }, + "14567": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1785, + 1920 + ], + "op": "JUMP", + "path": "72" + }, + "14568": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1937, + 2156 + ], + "op": "JUMPDEST", + "path": "72" + }, + "14569": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2043, + 2045 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "14571": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2040, + 2041 + ], + "op": "PUSH1", + "path": "72", + "value": "0x0" + }, + "14573": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2032, + 2038 + ], + "op": "DUP4", + "path": "72" + }, + "14574": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2017, + 2046 + ], + "op": "RETURNDATACOPY", + "path": "72" + }, + "14575": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2084, + 2090 + ], + "op": "DUP2", + "path": "72" + }, + "14576": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2078, + 2091 + ], + "op": "MLOAD", + "path": "72" + }, + "14577": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2067, + 2091 + ], + "op": "SWAP3", + "path": "72" + }, + "14578": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2067, + 2091 + ], + "op": "POP", + "path": "72" + }, + "14579": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1745, + 2309 + ], + "op": "JUMPDEST", + "path": "72" + }, + "14580": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 1745, + 2309 + ], + "op": "POP", + "path": "72" + }, + "14581": { + "branch": 490, + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2337, + 2344 + ], + "op": "DUP2", + "path": "72", + "statement": 327 + }, + "14582": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH2", + "path": "72", + "value": "0x8EB" + }, + "14585": { + "branch": 490, + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "JUMPI", + "path": "72" + }, + "14586": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x40" + }, + "14588": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "DUP1", + "path": "72" + }, + "14589": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "MLOAD", + "path": "72" + }, + "14590": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "14594": { + "op": "PUSH1", + "value": "0xE5" + }, + "14596": { + "op": "SHL" + }, + "14597": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "DUP2", + "path": "72" + }, + "14598": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "MSTORE", + "path": "72" + }, + "14599": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x20" + }, + "14601": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x4" + }, + "14603": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "DUP3", + "path": "72" + }, + "14604": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "ADD", + "path": "72" + }, + "14605": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "MSTORE", + "path": "72" + }, + "14606": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x5" + }, + "14608": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x24" + }, + "14610": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "DUP3", + "path": "72" + }, + "14611": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "ADD", + "path": "72" + }, + "14612": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "MSTORE", + "path": "72" + }, + "14613": { + "op": "PUSH5", + "value": "0x455243323" + }, + "14619": { + "op": "PUSH1", + "value": "0xDC" + }, + "14621": { + "op": "SHL" + }, + "14622": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x44" + }, + "14624": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "DUP3", + "path": "72" + }, + "14625": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "ADD", + "path": "72" + }, + "14626": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "MSTORE", + "path": "72" + }, + "14627": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "SWAP1", + "path": "72" + }, + "14628": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "MLOAD", + "path": "72" + }, + "14629": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "SWAP1", + "path": "72" + }, + "14630": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "DUP2", + "path": "72" + }, + "14631": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "SWAP1", + "path": "72" + }, + "14632": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "SUB", + "path": "72" + }, + "14633": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "PUSH1", + "path": "72", + "value": "0x64" + }, + "14635": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "ADD", + "path": "72" + }, + "14636": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "SWAP1", + "path": "72" + }, + "14637": { + "fn": "GenericToken.checkReturnCode", + "offset": [ + 2329, + 2354 + ], + "op": "REVERT", + "path": "72" + }, + "14638": { + "fn": "LibStorage.getLendingPool", + "offset": [ + 8109, + 8302 + ], + "op": "JUMPDEST", + "path": "62" + }, + "14639": { + "fn": "LibStorage.getLendingPool", + "offset": [ + 8158, + 8190 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "14641": { + "fn": "LibStorage.getLendingPool", + "offset": [ + 8202, + 8214 + ], + "op": "DUP1", + "path": "62" + }, + "14642": { + "fn": "LibStorage.getLendingPool", + "offset": [ + 8217, + 8255 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "14645": { + "fn": "LibStorage.getLendingPool", + "offset": [ + 8233, + 8254 + ], + "op": "PUSH1", + "path": "62", + "value": "0x13" + }, + "14647": { + "fn": "LibStorage.getLendingPool", + "offset": [ + 8217, + 8232 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "14650": { + "fn": "LibStorage.getLendingPool", + "jump": "i", + "offset": [ + 8217, + 8255 + ], + "op": "JUMP", + "path": "62" + }, + "14651": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 939, + 1913 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14652": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1502, + 1525 + ], + "op": "DUP3", + "path": "71" + }, + "14653": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1502, + 1525 + ], + "op": "MLOAD", + "path": "71" + }, + "14654": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "14656": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "MLOAD", + "path": "71" + }, + "14657": { + "op": "PUSH4", + "value": "0xDB006A75" + }, + "14662": { + "op": "PUSH1", + "value": "0xE0" + }, + "14664": { + "op": "SHL" + }, + "14665": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP2", + "path": "71" + }, + "14666": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "MSTORE", + "path": "71" + }, + "14667": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1078, + 1110 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "14669": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1078, + 1110 + ], + "op": "SWAP2", + "path": "71" + }, + "14670": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1436, + 1457 + ], + "op": "SELFBALANCE", + "path": "71" + }, + "14671": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1436, + 1457 + ], + "op": "SWAP2", + "path": "71" + }, + "14672": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1078, + 1110 + ], + "op": "DUP4", + "path": "71" + }, + "14673": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1078, + 1110 + ], + "op": "SWAP2", + "path": "71" + }, + "14674": { + "op": "PUSH1", + "value": "0x1" + }, + "14676": { + "op": "PUSH1", + "value": "0x1" + }, + "14678": { + "op": "PUSH1", + "value": "0xA0" + }, + "14680": { + "op": "SHL" + }, + "14681": { + "op": "SUB" + }, + "14682": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1533 + ], + "op": "AND", + "path": "71" + }, + "14683": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1533 + ], + "op": "SWAP1", + "path": "71" + }, + "14684": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1533 + ], + "op": "PUSH4", + "path": "71", + "value": "0xDB006A75" + }, + "14689": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1533 + ], + "op": "SWAP1", + "path": "71" + }, + "14690": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH2", + "path": "71", + "value": "0x396F" + }, + "14693": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "SWAP1", + "path": "71" + }, + "14694": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1534, + 1553 + ], + "op": "DUP8", + "path": "71" + }, + "14695": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1534, + 1553 + ], + "op": "SWAP1", + "path": "71" + }, + "14696": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "14698": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ADD", + "path": "71" + }, + "14699": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH2", + "path": "71", + "value": "0x48AB" + }, + "14702": { + "fn": "CompoundHandler.redeemCETH", + "jump": "i", + "offset": [ + 1486, + 1554 + ], + "op": "JUMP", + "path": "71" + }, + "14703": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14704": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x20" + }, + "14706": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "14708": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "MLOAD", + "path": "71" + }, + "14709": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14710": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP4", + "path": "71" + }, + "14711": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "SUB", + "path": "71" + }, + "14712": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP2", + "path": "71" + }, + "14713": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "14715": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP8", + "path": "71" + }, + "14716": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14717": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "EXTCODESIZE", + "path": "71" + }, + "14718": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ISZERO", + "path": "71" + }, + "14719": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14720": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ISZERO", + "path": "71" + }, + "14721": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3989" + }, + "14724": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "JUMPI", + "path": "71" + }, + "14725": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "14727": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14728": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "REVERT", + "path": "71" + }, + "14729": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14730": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "POP", + "path": "71" + }, + "14731": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "GAS", + "path": "71" + }, + "14732": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "CALL", + "path": "71" + }, + "14733": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ISZERO", + "path": "71" + }, + "14734": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14735": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ISZERO", + "path": "71" + }, + "14736": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH2", + "path": "71", + "value": "0x399D" + }, + "14739": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "JUMPI", + "path": "71" + }, + "14740": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "14741": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "14743": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14744": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "RETURNDATACOPY", + "path": "71" + }, + "14745": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "14746": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "14748": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "REVERT", + "path": "71" + }, + "14749": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14750": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "POP", + "path": "71" + }, + "14751": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "POP", + "path": "71" + }, + "14752": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "POP", + "path": "71" + }, + "14753": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "POP", + "path": "71" + }, + "14754": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "14756": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "MLOAD", + "path": "71" + }, + "14757": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "14758": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x1F" + }, + "14760": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "NOT", + "path": "71" + }, + "14761": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x1F" + }, + "14763": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP3", + "path": "71" + }, + "14764": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ADD", + "path": "71" + }, + "14765": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "AND", + "path": "71" + }, + "14766": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP3", + "path": "71" + }, + "14767": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ADD", + "path": "71" + }, + "14768": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP1", + "path": "71" + }, + "14769": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "14771": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "MSTORE", + "path": "71" + }, + "14772": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "POP", + "path": "71" + }, + "14773": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "DUP2", + "path": "71" + }, + "14774": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "ADD", + "path": "71" + }, + "14775": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "SWAP1", + "path": "71" + }, + "14776": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH2", + "path": "71", + "value": "0x39C1" + }, + "14779": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "SWAP2", + "path": "71" + }, + "14780": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "SWAP1", + "path": "71" + }, + "14781": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "PUSH2", + "path": "71", + "value": "0x43D8" + }, + "14784": { + "fn": "CompoundHandler.redeemCETH", + "jump": "i", + "offset": [ + 1486, + 1554 + ], + "op": "JUMP", + "path": "71" + }, + "14785": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1486, + 1554 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14786": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1468, + 1554 + ], + "op": "SWAP1", + "path": "71" + }, + "14787": { + "op": "POP" + }, + "14788": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1572, + 1612 + ], + "op": "DUP1", + "path": "71", + "statement": 328 + }, + "14789": { + "branch": 479, + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1572, + 1612 + ], + "op": "ISZERO", + "path": "71" + }, + "14790": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "PUSH2", + "path": "71", + "value": "0x39E1" + }, + "14793": { + "branch": 479, + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "JUMPI", + "path": "71" + }, + "14794": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "14796": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "MLOAD", + "path": "71" + }, + "14797": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "14801": { + "op": "PUSH1", + "value": "0xE5" + }, + "14803": { + "op": "SHL" + }, + "14804": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "DUP2", + "path": "71" + }, + "14805": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "MSTORE", + "path": "71" + }, + "14806": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "14808": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "ADD", + "path": "71" + }, + "14809": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "PUSH2", + "path": "71", + "value": "0x17A" + }, + "14812": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "SWAP1", + "path": "71" + }, + "14813": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "PUSH2", + "path": "71", + "value": "0x491D" + }, + "14816": { + "fn": "CompoundHandler.redeemCETH", + "jump": "i", + "offset": [ + 1564, + 1623 + ], + "op": "JUMP", + "path": "71" + }, + "14817": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1564, + 1623 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14818": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1658, + 1679 + ], + "op": "SELFBALANCE", + "path": "71" + }, + "14819": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1717, + 1751 + ], + "op": "PUSH2", + "path": "71", + "statement": 329, + "value": "0x39EC" + }, + "14822": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1658, + 1679 + ], + "op": "DUP2", + "path": "71" + }, + "14823": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1735, + 1750 + ], + "op": "DUP5", + "path": "71" + }, + "14824": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1717, + 1734 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3096" + }, + "14827": { + "fn": "CompoundHandler.redeemCETH", + "jump": "i", + "offset": [ + 1717, + 1751 + ], + "op": "JUMP", + "path": "71" + }, + "14828": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1717, + 1751 + ], + "op": "JUMPDEST", + "path": "71" + }, + "14829": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1690, + 1751 + ], + "op": "SWAP4", + "path": "71" + }, + "14830": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1690, + 1751 + ], + "op": "POP", + "path": "71" + }, + "14831": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1836, + 1906 + ], + "op": "PUSH2", + "path": "71", + "statement": 330, + "value": "0x2D72" + }, + "14834": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1872, + 1879 + ], + "op": "DUP7", + "path": "71" + }, + "14835": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1881, + 1905 + ], + "op": "DUP6", + "path": "71" + }, + "14836": { + "fn": "CompoundHandler.redeemCETH", + "offset": [ + 1836, + 1871 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2D7C" + }, + "14839": { + "fn": "CompoundHandler.redeemCETH", + "jump": "i", + "offset": [ + 1836, + 1906 + ], + "op": "JUMP", + "path": "71" + }, + "14840": { + "fn": "AaveHandler.redeem", + "offset": [ + 1769, + 2300 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14841": { + "fn": "AaveHandler.redeem", + "offset": [ + 1909, + 1941 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "14843": { + "fn": "AaveHandler.redeem", + "offset": [ + 1980, + 2124 + ], + "op": "PUSH2", + "path": "70", + "statement": 331, + "value": "0x3A18" + }, + "14846": { + "fn": "AaveHandler.redeem", + "offset": [ + 1980, + 2115 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3A13" + }, + "14849": { + "fn": "AaveHandler.redeem", + "offset": [ + 2026, + 2041 + ], + "op": "DUP6", + "path": "70" + }, + "14850": { + "fn": "AaveHandler.redeem", + "offset": [ + 2026, + 2054 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "14852": { + "fn": "AaveHandler.redeem", + "offset": [ + 2026, + 2054 + ], + "op": "ADD", + "path": "70" + }, + "14853": { + "fn": "AaveHandler.redeem", + "offset": [ + 2026, + 2054 + ], + "op": "MLOAD", + "path": "70" + }, + "14854": { + "fn": "AaveHandler.redeem", + "offset": [ + 2068, + 2105 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3A0E" + }, + "14857": { + "fn": "AaveHandler.redeem", + "offset": [ + 2085, + 2104 + ], + "op": "DUP6", + "path": "70" + }, + "14858": { + "fn": "AaveHandler.redeem", + "offset": [ + 2068, + 2084 + ], + "op": "PUSH2", + "path": "70", + "value": "0x264D" + }, + "14861": { + "fn": "AaveHandler.redeem", + "jump": "i", + "offset": [ + 2068, + 2105 + ], + "op": "JUMP", + "path": "70" + }, + "14862": { + "fn": "AaveHandler.redeem", + "offset": [ + 2068, + 2105 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14863": { + "fn": "AaveHandler.redeem", + "offset": [ + 1980, + 2012 + ], + "op": "PUSH2", + "path": "70", + "value": "0x2BF7" + }, + "14866": { + "fn": "AaveHandler.redeem", + "jump": "i", + "offset": [ + 1980, + 2115 + ], + "op": "JUMP", + "path": "70" + }, + "14867": { + "fn": "AaveHandler.redeem", + "offset": [ + 1980, + 2115 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14868": { + "fn": "AaveHandler.redeem", + "offset": [ + 1980, + 2122 + ], + "op": "PUSH2", + "path": "70", + "value": "0x1CF6" + }, + "14871": { + "fn": "AaveHandler.redeem", + "jump": "i", + "offset": [ + 1980, + 2124 + ], + "op": "JUMP", + "path": "70" + }, + "14872": { + "fn": "AaveHandler.redeem", + "offset": [ + 1980, + 2124 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14873": { + "fn": "AaveHandler.redeem", + "offset": [ + 1953, + 2124 + ], + "op": "SWAP1", + "path": "70" + }, + "14874": { + "fn": "AaveHandler.redeem", + "offset": [ + 1953, + 2124 + ], + "op": "POP", + "path": "70" + }, + "14875": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2161 + ], + "op": "PUSH2", + "path": "70", + "statement": 332, + "value": "0x3A22" + }, + "14878": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2159 + ], + "op": "PUSH2", + "path": "70", + "value": "0x392E" + }, + "14881": { + "fn": "AaveHandler.redeem", + "jump": "i", + "offset": [ + 2134, + 2161 + ], + "op": "JUMP", + "path": "70" + }, + "14882": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2161 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14883": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2173 + ], + "op": "SLOAD", + "path": "70" + }, + "14884": { + "fn": "AaveHandler.redeem", + "offset": [ + 2196, + 2224 + ], + "op": "DUP5", + "path": "70" + }, + "14885": { + "fn": "AaveHandler.redeem", + "offset": [ + 2196, + 2224 + ], + "op": "MLOAD", + "path": "70" + }, + "14886": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "14888": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "MLOAD", + "path": "70" + }, + "14889": { + "op": "PUSH4", + "value": "0x1A4CA37B" + }, + "14894": { + "op": "PUSH1", + "value": "0xE2" + }, + "14896": { + "op": "SHL" + }, + "14897": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP2", + "path": "70" + }, + "14898": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "MSTORE", + "path": "70" + }, + "14899": { + "op": "PUSH1", + "value": "0x1" + }, + "14901": { + "op": "PUSH1", + "value": "0x1" + }, + "14903": { + "op": "PUSH1", + "value": "0xA0" + }, + "14905": { + "op": "SHL" + }, + "14906": { + "op": "SUB" + }, + "14907": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2173 + ], + "op": "SWAP1", + "path": "70" + }, + "14908": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2173 + ], + "op": "SWAP3", + "path": "70" + }, + "14909": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2173 + ], + "op": "AND", + "path": "70" + }, + "14910": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2173 + ], + "op": "SWAP2", + "path": "70" + }, + "14911": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2182 + ], + "op": "PUSH4", + "path": "70", + "value": "0x69328DEC" + }, + "14916": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2182 + ], + "op": "SWAP2", + "path": "70" + }, + "14917": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3A54" + }, + "14920": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "SWAP2", + "path": "70" + }, + "14921": { + "fn": "AaveHandler.redeem", + "offset": [ + 2238, + 2262 + ], + "op": "DUP6", + "path": "70" + }, + "14922": { + "fn": "AaveHandler.redeem", + "offset": [ + 2238, + 2262 + ], + "op": "SWAP1", + "path": "70" + }, + "14923": { + "fn": "AaveHandler.redeem", + "offset": [ + 2276, + 2283 + ], + "op": "DUP9", + "path": "70" + }, + "14924": { + "fn": "AaveHandler.redeem", + "offset": [ + 2276, + 2283 + ], + "op": "SWAP1", + "path": "70" + }, + "14925": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x4" + }, + "14927": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ADD", + "path": "70" + }, + "14928": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH2", + "path": "70", + "value": "0x4807" + }, + "14931": { + "fn": "AaveHandler.redeem", + "jump": "i", + "offset": [ + 2134, + 2293 + ], + "op": "JUMP", + "path": "70" + }, + "14932": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14933": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x20" + }, + "14935": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "14937": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "MLOAD", + "path": "70" + }, + "14938": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14939": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP4", + "path": "70" + }, + "14940": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "SUB", + "path": "70" + }, + "14941": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP2", + "path": "70" + }, + "14942": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "14944": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP8", + "path": "70" + }, + "14945": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14946": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "EXTCODESIZE", + "path": "70" + }, + "14947": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ISZERO", + "path": "70" + }, + "14948": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14949": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ISZERO", + "path": "70" + }, + "14950": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3A6E" + }, + "14953": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "JUMPI", + "path": "70" + }, + "14954": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "14956": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14957": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "REVERT", + "path": "70" + }, + "14958": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14959": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "14960": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "GAS", + "path": "70" + }, + "14961": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "CALL", + "path": "70" + }, + "14962": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ISZERO", + "path": "70" + }, + "14963": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14964": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ISZERO", + "path": "70" + }, + "14965": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3A82" + }, + "14968": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "JUMPI", + "path": "70" + }, + "14969": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "14970": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "14972": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14973": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "RETURNDATACOPY", + "path": "70" + }, + "14974": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "14975": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x0" + }, + "14977": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "REVERT", + "path": "70" + }, + "14978": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "JUMPDEST", + "path": "70" + }, + "14979": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "14980": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "14981": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "14982": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "14983": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "14985": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "MLOAD", + "path": "70" + }, + "14986": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "RETURNDATASIZE", + "path": "70" + }, + "14987": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x1F" + }, + "14989": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "NOT", + "path": "70" + }, + "14990": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x1F" + }, + "14992": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP3", + "path": "70" + }, + "14993": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ADD", + "path": "70" + }, + "14994": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "AND", + "path": "70" + }, + "14995": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP3", + "path": "70" + }, + "14996": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ADD", + "path": "70" + }, + "14997": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP1", + "path": "70" + }, + "14998": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH1", + "path": "70", + "value": "0x40" + }, + "15000": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "MSTORE", + "path": "70" + }, + "15001": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "15002": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "DUP2", + "path": "70" + }, + "15003": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "ADD", + "path": "70" + }, + "15004": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "SWAP1", + "path": "70" + }, + "15005": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH2", + "path": "70", + "value": "0x3AA6" + }, + "15008": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "SWAP2", + "path": "70" + }, + "15009": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "SWAP1", + "path": "70" + }, + "15010": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "PUSH2", + "path": "70", + "value": "0x43D8" + }, + "15013": { + "fn": "AaveHandler.redeem", + "jump": "i", + "offset": [ + 2134, + 2293 + ], + "op": "JUMP", + "path": "70" + }, + "15014": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "JUMPDEST", + "path": "70" + }, + "15015": { + "fn": "AaveHandler.redeem", + "offset": [ + 2134, + 2293 + ], + "op": "POP", + "path": "70" + }, + "15016": { + "fn": "AaveHandler.redeem", + "offset": [ + 1769, + 2300 + ], + "op": "SWAP4", + "path": "70" + }, + "15017": { + "fn": "AaveHandler.redeem", + "offset": [ + 1769, + 2300 + ], + "op": "SWAP3", + "path": "70" + }, + "15018": { + "fn": "AaveHandler.redeem", + "offset": [ + 1769, + 2300 + ], + "op": "POP", + "path": "70" + }, + "15019": { + "fn": "AaveHandler.redeem", + "offset": [ + 1769, + 2300 + ], + "op": "POP", + "path": "70" + }, + "15020": { + "fn": "AaveHandler.redeem", + "offset": [ + 1769, + 2300 + ], + "op": "POP", + "path": "70" + }, + "15021": { + "fn": "AaveHandler.redeem", + "jump": "o", + "offset": [ + 1769, + 2300 + ], + "op": "JUMP", + "path": "70" + }, + "15022": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15023": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2487, + 2515 + ], + "op": "DUP3", + "path": "71" + }, + "15024": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2487, + 2515 + ], + "op": "MLOAD", + "path": "71" + }, + "15025": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2092, + 2124 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15027": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2092, + 2124 + ], + "op": "SWAP1", + "path": "71" + }, + "15028": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2092, + 2124 + ], + "op": "DUP2", + "path": "71" + }, + "15029": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2092, + 2124 + ], + "op": "SWAP1", + "path": "71" + }, + "15030": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2450, + 2570 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3AC7" + }, + "15033": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2450, + 2570 + ], + "op": "SWAP1", + "path": "71" + }, + "15034": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2525, + 2529 + ], + "op": "ADDRESS", + "path": "71" + }, + "15035": { + "op": "PUSH4", + "value": "0x70A08231" + }, + "15040": { + "op": "PUSH1", + "value": "0xE0" + }, + "15042": { + "op": "SHL" + }, + "15043": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2450, + 2486 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2E2E" + }, + "15046": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 2450, + 2570 + ], + "op": "JUMP", + "path": "71" + }, + "15047": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2450, + 2570 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15048": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2424, + 2570 + ], + "op": "SWAP1", + "path": "71" + }, + "15049": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2424, + 2570 + ], + "op": "POP", + "path": "71" + }, + "15050": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2581, + 2596 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15052": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2615, + 2625 + ], + "op": "DUP7", + "path": "71" + }, + "15053": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2615, + 2638 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15055": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2615, + 2638 + ], + "op": "ADD", + "path": "71" + }, + "15056": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2615, + 2638 + ], + "op": "MLOAD", + "path": "71" + }, + "15057": { + "op": "PUSH1", + "value": "0x1" + }, + "15059": { + "op": "PUSH1", + "value": "0x1" + }, + "15061": { + "op": "PUSH1", + "value": "0xA0" + }, + "15063": { + "op": "SHL" + }, + "15064": { + "op": "SUB" + }, + "15065": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2646 + ], + "op": "AND", + "path": "71" + }, + "15066": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2646 + ], + "op": "PUSH4", + "path": "71", + "value": "0xDB006A75" + }, + "15071": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2647, + 2666 + ], + "op": "DUP6", + "path": "71" + }, + "15072": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "15074": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "MLOAD", + "path": "71" + }, + "15075": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP3", + "path": "71" + }, + "15076": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH4", + "path": "71", + "value": "0xFFFFFFFF" + }, + "15081": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "AND", + "path": "71" + }, + "15082": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0xE0" + }, + "15084": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SHL", + "path": "71" + }, + "15085": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP2", + "path": "71" + }, + "15086": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "MSTORE", + "path": "71" + }, + "15087": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "15089": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ADD", + "path": "71" + }, + "15090": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3AFB" + }, + "15093": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SWAP2", + "path": "71" + }, + "15094": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SWAP1", + "path": "71" + }, + "15095": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH2", + "path": "71", + "value": "0x48AB" + }, + "15098": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 2599, + 2667 + ], + "op": "JUMP", + "path": "71" + }, + "15099": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15100": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x20" + }, + "15102": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "15104": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "MLOAD", + "path": "71" + }, + "15105": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15106": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP4", + "path": "71" + }, + "15107": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SUB", + "path": "71" + }, + "15108": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP2", + "path": "71" + }, + "15109": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15111": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP8", + "path": "71" + }, + "15112": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15113": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "EXTCODESIZE", + "path": "71" + }, + "15114": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ISZERO", + "path": "71" + }, + "15115": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15116": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ISZERO", + "path": "71" + }, + "15117": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3B15" + }, + "15120": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "JUMPI", + "path": "71" + }, + "15121": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15123": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15124": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "REVERT", + "path": "71" + }, + "15125": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15126": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "POP", + "path": "71" + }, + "15127": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "GAS", + "path": "71" + }, + "15128": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "CALL", + "path": "71" + }, + "15129": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ISZERO", + "path": "71" + }, + "15130": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15131": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ISZERO", + "path": "71" + }, + "15132": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3B29" + }, + "15135": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "JUMPI", + "path": "71" + }, + "15136": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "15137": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15139": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15140": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "RETURNDATACOPY", + "path": "71" + }, + "15141": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "15142": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15144": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "REVERT", + "path": "71" + }, + "15145": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15146": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "POP", + "path": "71" + }, + "15147": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "POP", + "path": "71" + }, + "15148": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "POP", + "path": "71" + }, + "15149": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "POP", + "path": "71" + }, + "15150": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "15152": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "MLOAD", + "path": "71" + }, + "15153": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "RETURNDATASIZE", + "path": "71" + }, + "15154": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x1F" + }, + "15156": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "NOT", + "path": "71" + }, + "15157": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x1F" + }, + "15159": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP3", + "path": "71" + }, + "15160": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ADD", + "path": "71" + }, + "15161": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "AND", + "path": "71" + }, + "15162": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP3", + "path": "71" + }, + "15163": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ADD", + "path": "71" + }, + "15164": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP1", + "path": "71" + }, + "15165": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "15167": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "MSTORE", + "path": "71" + }, + "15168": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "POP", + "path": "71" + }, + "15169": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "DUP2", + "path": "71" + }, + "15170": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "ADD", + "path": "71" + }, + "15171": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SWAP1", + "path": "71" + }, + "15172": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3B4D" + }, + "15175": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SWAP2", + "path": "71" + }, + "15176": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "SWAP1", + "path": "71" + }, + "15177": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "PUSH2", + "path": "71", + "value": "0x43D8" + }, + "15180": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 2599, + 2667 + ], + "op": "JUMP", + "path": "71" + }, + "15181": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2599, + 2667 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15182": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2581, + 2667 + ], + "op": "SWAP1", + "path": "71" + }, + "15183": { + "op": "POP" + }, + "15184": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2685, + 2725 + ], + "op": "DUP1", + "path": "71", + "statement": 333 + }, + "15185": { + "branch": 480, + "fn": "CompoundHandler.redeem", + "offset": [ + 2685, + 2725 + ], + "op": "ISZERO", + "path": "71" + }, + "15186": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3B6D" + }, + "15189": { + "branch": 480, + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "JUMPI", + "path": "71" + }, + "15190": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "PUSH1", + "path": "71", + "value": "0x40" + }, + "15192": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "MLOAD", + "path": "71" + }, + "15193": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "15197": { + "op": "PUSH1", + "value": "0xE5" + }, + "15199": { + "op": "SHL" + }, + "15200": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "DUP2", + "path": "71" + }, + "15201": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "MSTORE", + "path": "71" + }, + "15202": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "PUSH1", + "path": "71", + "value": "0x4" + }, + "15204": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "ADD", + "path": "71" + }, + "15205": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "PUSH2", + "path": "71", + "value": "0x17A" + }, + "15208": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "SWAP1", + "path": "71" + }, + "15209": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "PUSH2", + "path": "71", + "value": "0x491D" + }, + "15212": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 2677, + 2736 + ], + "op": "JUMP", + "path": "71" + }, + "15213": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2677, + 2736 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15214": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2808, + 2836 + ], + "op": "DUP6", + "path": "71" + }, + "15215": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2808, + 2836 + ], + "op": "MLOAD", + "path": "71" + }, + "15216": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2747, + 2768 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15218": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2747, + 2768 + ], + "op": "SWAP1", + "path": "71" + }, + "15219": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2771, + 2891 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3B84" + }, + "15222": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2771, + 2891 + ], + "op": "SWAP1", + "path": "71" + }, + "15223": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2846, + 2850 + ], + "op": "ADDRESS", + "path": "71" + }, + "15224": { + "op": "PUSH4", + "value": "0x70A08231" + }, + "15229": { + "op": "PUSH1", + "value": "0xE0" + }, + "15231": { + "op": "SHL" + }, + "15232": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2771, + 2807 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2E2E" + }, + "15235": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 2771, + 2891 + ], + "op": "JUMP", + "path": "71" + }, + "15236": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2771, + 2891 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15237": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2747, + 2891 + ], + "op": "SWAP1", + "path": "71" + }, + "15238": { + "op": "POP" + }, + "15239": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2929, + 2963 + ], + "op": "PUSH2", + "path": "71", + "statement": 334, + "value": "0x3B90" + }, + "15242": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2747, + 2891 + ], + "op": "DUP2", + "path": "71" + }, + "15243": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2947, + 2962 + ], + "op": "DUP5", + "path": "71" + }, + "15244": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2929, + 2946 + ], + "op": "PUSH2", + "path": "71", + "value": "0x3096" + }, + "15247": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 2929, + 2963 + ], + "op": "JUMP", + "path": "71" + }, + "15248": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2929, + 2963 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15249": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2902, + 2963 + ], + "op": "SWAP4", + "path": "71" + }, + "15250": { + "fn": "CompoundHandler.redeem", + "offset": [ + 2902, + 2963 + ], + "op": "POP", + "path": "71" + }, + "15251": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3048, + 3141 + ], + "op": "PUSH2", + "path": "71", + "statement": 335, + "value": "0x3BA1" + }, + "15254": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3077, + 3092 + ], + "op": "DUP8", + "path": "71" + }, + "15255": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3077, + 3105 + ], + "op": "PUSH1", + "path": "71", + "value": "0x0" + }, + "15257": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3077, + 3105 + ], + "op": "ADD", + "path": "71" + }, + "15258": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3077, + 3105 + ], + "op": "MLOAD", + "path": "71" + }, + "15259": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3107, + 3114 + ], + "op": "DUP8", + "path": "71" + }, + "15260": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3116, + 3140 + ], + "op": "DUP7", + "path": "71" + }, + "15261": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3048, + 3076 + ], + "op": "PUSH2", + "path": "71", + "value": "0x2DB7" + }, + "15264": { + "fn": "CompoundHandler.redeem", + "jump": "i", + "offset": [ + 3048, + 3141 + ], + "op": "JUMP", + "path": "71" + }, + "15265": { + "fn": "CompoundHandler.redeem", + "offset": [ + 3048, + 3141 + ], + "op": "JUMPDEST", + "path": "71" + }, + "15266": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15267": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15268": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15269": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "SWAP5", + "path": "71" + }, + "15270": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "SWAP4", + "path": "71" + }, + "15271": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15272": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15273": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15274": { + "fn": "CompoundHandler.redeem", + "offset": [ + 1919, + 3148 + ], + "op": "POP", + "path": "71" + }, + "15275": { + "fn": "CompoundHandler.redeem", + "jump": "o", + "offset": [ + 1919, + 3148 + ], + "op": "JUMP", + "path": "71" + }, + "15276": { + "fn": "LibStorage.getNTokenAddressStorage", + "offset": [ + 2468, + 2693 + ], + "op": "JUMPDEST", + "path": "62" + }, + "15277": { + "fn": "LibStorage.getNTokenAddressStorage", + "offset": [ + 2534, + 2575 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "15279": { + "fn": "LibStorage.getNTokenAddressStorage", + "offset": [ + 2591, + 2603 + ], + "op": "DUP1", + "path": "62" + }, + "15280": { + "fn": "LibStorage.getNTokenAddressStorage", + "offset": [ + 2606, + 2646 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "15283": { + "fn": "LibStorage.getNTokenAddressStorage", + "offset": [ + 2622, + 2645 + ], + "op": "PUSH1", + "path": "62", + "value": "0x3" + }, + "15285": { + "fn": "LibStorage.getNTokenAddressStorage", + "offset": [ + 2606, + 2621 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "15288": { + "fn": "LibStorage.getNTokenAddressStorage", + "jump": "i", + "offset": [ + 2606, + 2646 + ], + "op": "JUMP", + "path": "62" + }, + "15289": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1452, + 3183 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15290": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1589, + 1608 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15292": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1622, + 1654 + ], + "op": "DUP1", + "path": "82" + }, + "15293": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1668, + 1695 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15295": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1829, + 1871 + ], + "op": "PUSH2", + "path": "82", + "statement": 336, + "value": "0x3BC7" + }, + "15298": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1858, + 1870 + ], + "op": "DUP6", + "path": "82" + }, + "15299": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1829, + 1857 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3DF0" + }, + "15302": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "jump": "i", + "offset": [ + 1829, + 1871 + ], + "op": "JUMP", + "path": "82" + }, + "15303": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1829, + 1871 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15304": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1720, + 1871 + ], + "op": "SWAP2", + "path": "82" + }, + "15305": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1720, + 1871 + ], + "op": "SWAP5", + "path": "82" + }, + "15306": { + "op": "POP" + }, + "15307": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1720, + 1871 + ], + "op": "SWAP3", + "path": "82" + }, + "15308": { + "op": "POP" + }, + "15309": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1720, + 1871 + ], + "op": "SWAP1", + "path": "82" + }, + "15310": { + "op": "POP" + }, + "15311": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2186 + ], + "op": "DUP1", + "path": "82" + }, + "15312": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2186 + ], + "op": "DUP5", + "path": "82" + }, + "15313": { + "branch": 569, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2186 + ], + "op": "GT", + "path": "82" + }, + "15314": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2213 + ], + "op": "DUP1", + "path": "82" + }, + "15315": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2213 + ], + "op": "ISZERO", + "path": "82" + }, + "15316": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2213 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3BDD" + }, + "15319": { + "branch": 569, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2213 + ], + "op": "JUMPI", + "path": "82" + }, + "15320": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2213 + ], + "op": "POP", + "path": "82" + }, + "15321": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2212, + 2213 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15323": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2190, + 2209 + ], + "op": "DUP2", + "path": "82" + }, + "15324": { + "branch": 570, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2190, + 2213 + ], + "op": "GT", + "path": "82" + }, + "15325": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2213 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15326": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2232 + ], + "op": "DUP1", + "path": "82" + }, + "15327": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2232 + ], + "op": "ISZERO", + "path": "82" + }, + "15328": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2232 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3BE9" + }, + "15331": { + "branch": 570, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2232 + ], + "op": "JUMPI", + "path": "82" + }, + "15332": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2232 + ], + "op": "POP", + "path": "82" + }, + "15333": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2231, + 2232 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15335": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2217, + 2228 + ], + "op": "DUP4", + "path": "82" + }, + "15336": { + "branch": 571, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2217, + 2232 + ], + "op": "GT", + "path": "82" + }, + "15337": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2155, + 2232 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15338": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2151, + 3177 + ], + "op": "ISZERO", + "path": "82" + }, + "15339": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2151, + 3177 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C48" + }, + "15342": { + "branch": 571, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2151, + 3177 + ], + "op": "JUMPI", + "path": "82" + }, + "15343": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2331, + 2358 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15345": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2488, + 2532 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3BF9" + }, + "15348": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2519, + 2531 + ], + "op": "DUP7", + "path": "82" + }, + "15349": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2488, + 2518 + ], + "op": "PUSH2", + "path": "82", + "value": "0x1755" + }, + "15352": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "jump": "i", + "offset": [ + 2488, + 2532 + ], + "op": "JUMP", + "path": "82" + }, + "15353": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2488, + 2532 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15354": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2279, + 2532 + ], + "op": "POP", + "path": "82" + }, + "15355": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2279, + 2532 + ], + "op": "POP", + "path": "82" + }, + "15356": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2279, + 2532 + ], + "op": "POP", + "path": "82" + }, + "15357": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2279, + 2532 + ], + "op": "SWAP2", + "path": "82" + }, + "15358": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2279, + 2532 + ], + "op": "POP", + "path": "82" + }, + "15359": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2279, + 2532 + ], + "op": "POP", + "path": "82" + }, + "15360": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2547, + 2589 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15362": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2592, + 2959 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C24" + }, + "15365": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2794 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C1B" + }, + "15368": { + "offset": [ + 429, + 432 + ], + "op": "PUSH4", + "path": "60", + "value": "0x5F5E100" + }, + "15373": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2745 + ], + "op": "DUP5", + "path": "82" + }, + "15374": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2749 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C5C" + }, + "15377": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2749 + ], + "op": "SWAP1", + "path": "82" + }, + "15378": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2794 + ], + "op": "SWAP2", + "path": "82" + }, + "15379": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2794 + ], + "op": "SWAP1", + "path": "82" + }, + "15380": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2794 + ], + "op": "PUSH4", + "path": "82", + "value": "0xFFFFFFFF" + }, + "15385": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2794 + ], + "op": "AND", + "path": "82" + }, + "15386": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "jump": "i", + "offset": [ + 2726, + 2794 + ], + "op": "JUMP", + "path": "82" + }, + "15387": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2726, + 2794 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15388": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2897, + 2916 + ], + "op": "DUP5", + "path": "82" + }, + "15389": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2885, + 2894 + ], + "op": "DUP9", + "path": "82" + }, + "15390": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2885, + 2916 + ], + "op": "SUB", + "path": "82" + }, + "15391": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2934, + 2945 + ], + "op": "DUP8", + "path": "82" + }, + "15392": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2592, + 2616 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3E4C" + }, + "15395": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "jump": "i", + "offset": [ + 2592, + 2959 + ], + "op": "JUMP", + "path": "82" + }, + "15396": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2592, + 2959 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15397": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2547, + 2959 + ], + "op": "SWAP1", + "path": "82" + }, + "15398": { + "op": "POP" + }, + "15399": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3001, + 3065 + ], + "op": "PUSH2", + "path": "82", + "statement": 337, + "value": "0x3C30" + }, + "15402": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3001, + 3025 + ], + "op": "DUP5", + "path": "82" + }, + "15403": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2547, + 2959 + ], + "op": "DUP3", + "path": "82" + }, + "15404": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3001, + 3029 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3D1C" + }, + "15407": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "jump": "i", + "offset": [ + 3001, + 3065 + ], + "op": "JUMP", + "path": "82" + }, + "15408": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3001, + 3065 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15409": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2974, + 3065 + ], + "op": "SWAP4", + "path": "82" + }, + "15410": { + "op": "POP" + }, + "15411": { + "op": "PUSH1", + "value": "0x1" + }, + "15413": { + "op": "PUSH1", + "value": "0x1" + }, + "15415": { + "op": "PUSH1", + "value": "0x80" + }, + "15417": { + "op": "SHL" + }, + "15418": { + "op": "SUB" + }, + "15419": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3087, + 3131 + ], + "op": "DUP5", + "path": "82", + "statement": 338 + }, + "15420": { + "branch": 572, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3087, + 3131 + ], + "op": "LT", + "path": "82" + }, + "15421": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3079, + 3132 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C45" + }, + "15424": { + "branch": 572, + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3079, + 3132 + ], + "op": "JUMPI", + "path": "82" + }, + "15425": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3079, + 3132 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15427": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3079, + 3132 + ], + "op": "DUP1", + "path": "82" + }, + "15428": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3079, + 3132 + ], + "op": "REVERT", + "path": "82" + }, + "15429": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 3079, + 3132 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15430": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2151, + 3177 + ], + "op": "POP", + "path": "82" + }, + "15431": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2151, + 3177 + ], + "op": "POP", + "path": "82" + }, + "15432": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 2151, + 3177 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15433": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1452, + 3183 + ], + "op": "SWAP3", + "path": "82" + }, + "15434": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1452, + 3183 + ], + "op": "POP", + "path": "82" + }, + "15435": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1452, + 3183 + ], + "op": "SWAP3", + "path": "82" + }, + "15436": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1452, + 3183 + ], + "op": "POP", + "path": "82" + }, + "15437": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "offset": [ + 1452, + 3183 + ], + "op": "SWAP3", + "path": "82" + }, + "15438": { + "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", + "jump": "o", + "offset": [ + 1452, + 3183 + ], + "op": "JUMP", + "path": "82" + }, + "15439": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "offset": [ + 6645, + 6895 + ], + "op": "JUMPDEST", + "path": "62" + }, + "15440": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "offset": [ + 6715, + 6773 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "15442": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "offset": [ + 6789, + 6801 + ], + "op": "DUP1", + "path": "62" + }, + "15443": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "offset": [ + 6804, + 6848 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "15446": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "offset": [ + 6820, + 6847 + ], + "op": "PUSH1", + "path": "62", + "value": "0x11" + }, + "15448": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "offset": [ + 6804, + 6819 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "15451": { + "fn": "LibStorage.getNTokenTotalSupplyStorage", + "jump": "i", + "offset": [ + 6804, + 6848 + ], + "op": "JUMP", + "path": "62" + }, + "15452": { + "fn": "SafeMath.mul", + "offset": [ + 3530, + 3745 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15453": { + "fn": "SafeMath.mul", + "offset": [ + 3588, + 3595 + ], + "op": "PUSH1", + "path": "6", + "value": "0x0" + }, + "15455": { + "branch": 538, + "fn": "SafeMath.mul", + "offset": [ + 3611, + 3617 + ], + "op": "DUP3", + "path": "6" + }, + "15456": { + "fn": "SafeMath.mul", + "offset": [ + 3607, + 3627 + ], + "op": "PUSH2", + "path": "6", + "value": "0x3C6B" + }, + "15459": { + "branch": 538, + "fn": "SafeMath.mul", + "offset": [ + 3607, + 3627 + ], + "op": "JUMPI", + "path": "6" + }, + "15460": { + "op": "POP" + }, + "15461": { + "fn": "SafeMath.mul", + "offset": [ + 3626, + 3627 + ], + "op": "PUSH1", + "path": "6", + "statement": 339, + "value": "0x0" + }, + "15463": { + "fn": "SafeMath.mul", + "offset": [ + 3619, + 3627 + ], + "op": "PUSH2", + "path": "6", + "value": "0xEDB" + }, + "15466": { + "fn": "SafeMath.mul", + "offset": [ + 3619, + 3627 + ], + "op": "JUMP", + "path": "6" + }, + "15467": { + "fn": "SafeMath.mul", + "offset": [ + 3607, + 3627 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15468": { + "fn": "SafeMath.mul", + "offset": [ + 3649, + 3654 + ], + "op": "DUP3", + "path": "6" + }, + "15469": { + "fn": "SafeMath.mul", + "offset": [ + 3649, + 3654 + ], + "op": "DUP3", + "path": "6" + }, + "15470": { + "fn": "SafeMath.mul", + "offset": [ + 3649, + 3654 + ], + "op": "MUL", + "path": "6" + }, + "15471": { + "fn": "SafeMath.mul", + "offset": [ + 3653, + 3654 + ], + "op": "DUP3", + "path": "6" + }, + "15472": { + "fn": "SafeMath.mul", + "offset": [ + 3649, + 3650 + ], + "op": "DUP5", + "path": "6" + }, + "15473": { + "fn": "SafeMath.mul", + "offset": [ + 3649, + 3654 + ], + "op": "DUP3", + "path": "6" + }, + "15474": { + "fn": "SafeMath.mul", + "offset": [ + 3649, + 3650 + ], + "op": "DUP2", + "path": "6" + }, + "15475": { + "fn": "SafeMath.mul", + "offset": [ + 3672, + 3677 + ], + "op": "PUSH2", + "path": "6", + "statement": 340, + "value": "0x3C78" + }, + "15478": { + "fn": "SafeMath.mul", + "offset": [ + 3672, + 3677 + ], + "op": "JUMPI", + "path": "6" + }, + "15479": { + "dev": "Division by zero", + "fn": "SafeMath.mul", + "offset": [ + 3672, + 3677 + ], + "op": "INVALID", + "path": "6" + }, + "15480": { + "fn": "SafeMath.mul", + "offset": [ + 3672, + 3677 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15481": { + "fn": "SafeMath.mul", + "offset": [ + 3672, + 3677 + ], + "op": "DIV", + "path": "6" + }, + "15482": { + "branch": 539, + "fn": "SafeMath.mul", + "offset": [ + 3672, + 3682 + ], + "op": "EQ", + "path": "6" + }, + "15483": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH2", + "path": "6", + "value": "0xAA3" + }, + "15486": { + "branch": 539, + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "JUMPI", + "path": "6" + }, + "15487": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "15489": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "MLOAD", + "path": "6" + }, + "15490": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "15494": { + "op": "PUSH1", + "value": "0xE5" + }, + "15496": { + "op": "SHL" + }, + "15497": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP2", + "path": "6" + }, + "15498": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "MSTORE", + "path": "6" + }, + "15499": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x4" + }, + "15501": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "ADD", + "path": "6" + }, + "15502": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP1", + "path": "6" + }, + "15503": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP1", + "path": "6" + }, + "15504": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "15506": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "ADD", + "path": "6" + }, + "15507": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP3", + "path": "6" + }, + "15508": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP2", + "path": "6" + }, + "15509": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "SUB", + "path": "6" + }, + "15510": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP3", + "path": "6" + }, + "15511": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "MSTORE", + "path": "6" + }, + "15512": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x21" + }, + "15514": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP2", + "path": "6" + }, + "15515": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "MSTORE", + "path": "6" + }, + "15516": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "15518": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "ADD", + "path": "6" + }, + "15519": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP1", + "path": "6" + }, + "15520": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH2", + "path": "6", + "value": "0x4B96" + }, + "15523": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x21" + }, + "15525": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "SWAP2", + "path": "6" + }, + "15526": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "CODECOPY", + "path": "6" + }, + "15527": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "15529": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "ADD", + "path": "6" + }, + "15530": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "SWAP2", + "path": "6" + }, + "15531": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "POP", + "path": "6" + }, + "15532": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "POP", + "path": "6" + }, + "15533": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "15535": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "MLOAD", + "path": "6" + }, + "15536": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "DUP1", + "path": "6" + }, + "15537": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "SWAP2", + "path": "6" + }, + "15538": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "SUB", + "path": "6" + }, + "15539": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "SWAP1", + "path": "6" + }, + "15540": { + "fn": "SafeMath.mul", + "offset": [ + 3664, + 3720 + ], + "op": "REVERT", + "path": "6" + }, + "15541": { + "fn": "SafeMath.div", + "offset": [ + 4209, + 4359 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15542": { + "fn": "SafeMath.div", + "offset": [ + 4267, + 4274 + ], + "op": "PUSH1", + "path": "6", + "value": "0x0" + }, + "15544": { + "fn": "SafeMath.div", + "offset": [ + 4298, + 4299 + ], + "op": "DUP1", + "path": "6", + "statement": 341 + }, + "15545": { + "fn": "SafeMath.div", + "offset": [ + 4294, + 4295 + ], + "op": "DUP3", + "path": "6" + }, + "15546": { + "branch": 540, + "fn": "SafeMath.div", + "offset": [ + 4294, + 4299 + ], + "op": "GT", + "path": "6" + }, + "15547": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH2", + "path": "6", + "value": "0x3D0B" + }, + "15550": { + "branch": 540, + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "JUMPI", + "path": "6" + }, + "15551": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "15553": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "DUP1", + "path": "6" + }, + "15554": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "MLOAD", + "path": "6" + }, + "15555": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "15559": { + "op": "PUSH1", + "value": "0xE5" + }, + "15561": { + "op": "SHL" + }, + "15562": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "DUP2", + "path": "6" + }, + "15563": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "MSTORE", + "path": "6" + }, + "15564": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "15566": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x4" + }, + "15568": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "DUP3", + "path": "6" + }, + "15569": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "ADD", + "path": "6" + }, + "15570": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "MSTORE", + "path": "6" + }, + "15571": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x1A" + }, + "15573": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x24" + }, + "15575": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "DUP3", + "path": "6" + }, + "15576": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "ADD", + "path": "6" + }, + "15577": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "MSTORE", + "path": "6" + }, + "15578": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH32", + "path": "6", + "value": "0x536166654D6174683A206469766973696F6E206279207A65726F000000000000" + }, + "15611": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x44" + }, + "15613": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "DUP3", + "path": "6" + }, + "15614": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "ADD", + "path": "6" + }, + "15615": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "MSTORE", + "path": "6" + }, + "15616": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "SWAP1", + "path": "6" + }, + "15617": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "MLOAD", + "path": "6" + }, + "15618": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "SWAP1", + "path": "6" + }, + "15619": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "DUP2", + "path": "6" + }, + "15620": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "SWAP1", + "path": "6" + }, + "15621": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "SUB", + "path": "6" + }, + "15622": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "PUSH1", + "path": "6", + "value": "0x64" + }, + "15624": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "ADD", + "path": "6" + }, + "15625": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "SWAP1", + "path": "6" + }, + "15626": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "REVERT", + "path": "6" + }, + "15627": { + "fn": "SafeMath.div", + "offset": [ + 4286, + 4330 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15628": { + "fn": "SafeMath.div", + "offset": [ + 4351, + 4352 + ], + "op": "DUP2", + "path": "6", + "statement": 342 + }, + "15629": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4348 + ], + "op": "DUP4", + "path": "6" + }, + "15630": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "DUP2", + "path": "6" + }, + "15631": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "PUSH2", + "path": "6", + "value": "0x3D14" + }, + "15634": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "JUMPI", + "path": "6" + }, + "15635": { + "dev": "Division by zero", + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "INVALID", + "path": "6" + }, + "15636": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15637": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "DIV", + "path": "6" + }, + "15638": { + "fn": "SafeMath.div", + "offset": [ + 4347, + 4352 + ], + "op": "SWAP4", + "path": "6" + }, + "15639": { + "fn": "SafeMath.div", + "offset": [ + 4209, + 4359 + ], + "op": "SWAP3", + "path": "6" + }, + "15640": { + "op": "POP" + }, + "15641": { + "op": "POP" + }, + "15642": { + "op": "POP" + }, + "15643": { + "fn": "SafeMath.div", + "jump": "o", + "offset": [ + 4209, + 4359 + ], + "op": "JUMP", + "path": "6" + }, + "15644": { + "fn": "SafeMath.add", + "offset": [ + 2682, + 2857 + ], + "op": "JUMPDEST", + "path": "6" + }, + "15645": { + "fn": "SafeMath.add", + "offset": [ + 2740, + 2747 + ], + "op": "PUSH1", + "path": "6", + "value": "0x0" + }, + "15647": { + "fn": "SafeMath.add", + "offset": [ + 2771, + 2776 + ], + "op": "DUP3", + "path": "6" + }, + "15648": { + "fn": "SafeMath.add", + "offset": [ + 2771, + 2776 + ], + "op": "DUP3", + "path": "6" + }, + "15649": { + "fn": "SafeMath.add", + "offset": [ + 2771, + 2776 + ], + "op": "ADD", + "path": "6" + }, + "15650": { + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "DUP4", + "path": "6", + "statement": 343 + }, + "15651": { + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "DUP2", + "path": "6" + }, + "15652": { + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "LT", + "path": "6" + }, + "15653": { + "branch": 541, + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "ISZERO", + "path": "6" + }, + "15654": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH2", + "path": "6", + "value": "0xAA3" + }, + "15657": { + "branch": 541, + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "JUMPI", + "path": "6" + }, + "15658": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "15660": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP1", + "path": "6" + }, + "15661": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MLOAD", + "path": "6" + }, + "15662": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "15666": { + "op": "PUSH1", + "value": "0xE5" + }, + "15668": { + "op": "SHL" + }, + "15669": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP2", + "path": "6" + }, + "15670": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "15671": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "15673": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x4" + }, + "15675": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP3", + "path": "6" + }, + "15676": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "15677": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "15678": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x1B" + }, + "15680": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x24" + }, + "15682": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP3", + "path": "6" + }, + "15683": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "15684": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "15685": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH32", + "path": "6", + "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000" + }, + "15718": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x44" + }, + "15720": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP3", + "path": "6" + }, + "15721": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "15722": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "15723": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "15724": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MLOAD", + "path": "6" + }, + "15725": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "15726": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP2", + "path": "6" + }, + "15727": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "15728": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SUB", + "path": "6" + }, + "15729": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x64" + }, + "15731": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "15732": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "15733": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "REVERT", + "path": "6" + }, + "15734": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "offset": [ + 7804, + 8050 + ], + "op": "JUMPDEST", + "path": "62" + }, + "15735": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "offset": [ + 7876, + 7919 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "15737": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "offset": [ + 7935, + 7947 + ], + "op": "DUP1", + "path": "62" + }, + "15738": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "offset": [ + 7950, + 8003 + ], + "op": "PUSH2", + "path": "62", + "value": "0xEDB" + }, + "15741": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "offset": [ + 7966, + 8002 + ], + "op": "PUSH1", + "path": "62", + "value": "0x12" + }, + "15743": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "offset": [ + 7950, + 7965 + ], + "op": "PUSH2", + "path": "62", + "value": "0x37C7" + }, + "15746": { + "fn": "LibStorage.getSecondaryIncentiveRewarder", + "jump": "i", + "offset": [ + 7950, + 8003 + ], + "op": "JUMP", + "path": "62" + }, + "15747": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1006, + 1758 + ], + "op": "JUMPDEST", + "path": "88" + }, + "15748": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1085, + 1092 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "15750": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1130, + 1131 + ], + "op": "DUP1", + "path": "88", + "statement": 344 + }, + "15751": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1117 + ], + "op": "DUP3", + "path": "88" + }, + "15752": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1127 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "15754": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1127 + ], + "op": "ADD", + "path": "88" + }, + "15755": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1127 + ], + "op": "MLOAD", + "path": "88" + }, + "15756": { + "branch": 442, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1131 + ], + "op": "GT", + "path": "88" + }, + "15757": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "DUP1", + "path": "88" + }, + "15758": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "ISZERO", + "path": "88" + }, + "15759": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3D9D" + }, + "15762": { + "branch": 442, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "JUMPI", + "path": "88" + }, + "15763": { + "op": "POP" + }, + "15764": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "15766": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "DUP3", + "path": "88" + }, + "15767": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "ADD", + "path": "88" + }, + "15768": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "MLOAD", + "path": "88" + }, + "15769": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "15771": { + "op": "LT" + }, + "15772": { + "branch": 443, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1189 + ], + "op": "ISZERO", + "path": "88" + }, + "15773": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "JUMPDEST", + "path": "88" + }, + "15774": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3DA6" + }, + "15777": { + "branch": 443, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "JUMPI", + "path": "88" + }, + "15778": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "15780": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "DUP1", + "path": "88" + }, + "15781": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "REVERT", + "path": "88" + }, + "15782": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "JUMPDEST", + "path": "88" + }, + "15783": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "15785": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "DUP3", + "path": "88" + }, + "15786": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "ADD", + "path": "88" + }, + "15787": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "MLOAD", + "path": "88" + }, + "15788": { + "offset": [ + 4847, + 4848 + ], + "op": "PUSH1", + "path": "60", + "value": "0x2" + }, + "15790": { + "op": "LT" + }, + "15791": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1305, + 1386 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3DBD" + }, + "15794": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1305, + 1386 + ], + "op": "JUMPI", + "path": "88" + }, + "15795": { + "op": "POP" + }, + "15796": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "PUSH1", + "path": "88", + "statement": 345, + "value": "0x20" + }, + "15798": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "DUP2", + "path": "88" + }, + "15799": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "ADD", + "path": "88" + }, + "15800": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "MLOAD", + "path": "88" + }, + "15801": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1365, + 1386 + ], + "op": "PUSH2", + "path": "88", + "value": "0xBE2" + }, + "15804": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1365, + 1386 + ], + "op": "JUMP", + "path": "88" + }, + "15805": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1305, + 1386 + ], + "op": "JUMPDEST", + "path": "88" + }, + "15806": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1417 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "15808": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1420, + 1465 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3DCF" + }, + "15811": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1463, + 1464 + ], + "op": "PUSH1", + "path": "88", + "value": "0x1" + }, + "15813": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1450 + ], + "op": "DUP5", + "path": "88" + }, + "15814": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1460 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "15816": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1460 + ], + "op": "ADD", + "path": "88" + }, + "15817": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1460 + ], + "op": "MLOAD", + "path": "88" + }, + "15818": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1464 + ], + "op": "SUB", + "path": "88" + }, + "15819": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1420, + 1444 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3E6E" + }, + "15822": { + "fn": "AssetHandler.getSettlementDate", + "jump": "i", + "offset": [ + 1420, + 1465 + ], + "op": "JUMP", + "path": "88" + }, + "15823": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1420, + 1465 + ], + "op": "JUMPDEST", + "path": "88" + }, + "15824": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "PUSH1", + "path": "88", + "statement": 346, + "value": "0x20" + }, + "15826": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "DUP5", + "path": "88" + }, + "15827": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "ADD", + "path": "88" + }, + "15828": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "MLOAD", + "path": "88" + }, + "15829": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1465 + ], + "op": "SWAP1", + "path": "88" + }, + "15830": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1465 + ], + "op": "SWAP2", + "path": "88" + }, + "15831": { + "op": "POP" + }, + "15832": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1751 + ], + "op": "PUSH2", + "path": "88", + "value": "0xAA3" + }, + "15835": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1751 + ], + "op": "SWAP1", + "path": "88" + }, + "15836": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "15840": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 2617, + 2626 + ], + "op": "SWAP1", + "path": "60" + }, + "15841": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1728 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3DEA" + }, + "15844": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1728 + ], + "op": "SWAP1", + "path": "88" + }, + "15845": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1465 + ], + "op": "DUP5", + "path": "88" + }, + "15846": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1714 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3096" + }, + "15849": { + "fn": "AssetHandler.getSettlementDate", + "jump": "i", + "offset": [ + 1696, + 1728 + ], + "op": "JUMP", + "path": "88" + }, + "15850": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1728 + ], + "op": "JUMPDEST", + "path": "88" + }, + "15851": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1732 + ], + "op": "SWAP1", + "path": "88" + }, + "15852": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1732 + ], + "op": "PUSH2", + "path": "88", + "value": "0x3D1C" + }, + "15855": { + "fn": "AssetHandler.getSettlementDate", + "jump": "i", + "offset": [ + 1696, + 1751 + ], + "op": "JUMP", + "path": "88" + }, + "15856": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 526, + 1355 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15857": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 646, + 665 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15859": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 679, + 711 + ], + "op": "DUP1", + "path": "82" + }, + "15860": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 725, + 752 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15862": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 777, + 835 + ], + "op": "DUP1", + "path": "82" + }, + "15863": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 838, + 878 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3DFE" + }, + "15866": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 838, + 876 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C4F" + }, + "15869": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "jump": "i", + "offset": [ + 838, + 878 + ], + "op": "JUMP", + "path": "82" + }, + "15870": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 838, + 878 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15871": { + "op": "PUSH1", + "value": "0x1" + }, + "15873": { + "op": "PUSH1", + "value": "0x1" + }, + "15875": { + "op": "PUSH1", + "value": "0xA0" + }, + "15877": { + "op": "SHL" + }, + "15878": { + "op": "SUB" + }, + "15879": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP6", + "path": "82" + }, + "15880": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP1", + "path": "82" + }, + "15881": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP6", + "path": "82" + }, + "15882": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "AND", + "path": "82" + }, + "15883": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 888, + 934 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15885": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP1", + "path": "82" + }, + "15886": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "DUP2", + "path": "82" + }, + "15887": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "MSTORE", + "path": "82" + }, + "15888": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "PUSH1", + "path": "82", + "value": "0x20" + }, + "15890": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP6", + "path": "82" + }, + "15891": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP1", + "path": "82" + }, + "15892": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP6", + "path": "82" + }, + "15893": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "MSTORE", + "path": "82" + }, + "15894": { + "op": "POP" + }, + "15895": { + "op": "POP" + }, + "15896": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "PUSH1", + "path": "82", + "value": "0x40" + }, + "15898": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP1", + "path": "82" + }, + "15899": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "SWAP3", + "path": "82" + }, + "15900": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 937, + 956 + ], + "op": "KECCAK256", + "path": "82" + }, + "15901": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 980, + 1005 + ], + "op": "SLOAD", + "path": "82", + "statement": 347 + }, + "15902": { + "op": "PUSH1", + "value": "0x1" + }, + "15904": { + "op": "PUSH1", + "value": "0x1" + }, + "15906": { + "op": "PUSH1", + "value": "0x60" + }, + "15908": { + "op": "SHL" + }, + "15909": { + "op": "SUB" + }, + "15910": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 980, + 1005 + ], + "op": "DUP2", + "path": "82" + }, + "15911": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 980, + 1005 + ], + "op": "AND", + "path": "82" + }, + "15912": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 980, + 1005 + ], + "op": "SWAP4", + "path": "82" + }, + "15913": { + "op": "PUSH1", + "value": "0x1" + }, + "15915": { + "op": "PUSH1", + "value": "0x60" + }, + "15917": { + "op": "SHL" + }, + "15918": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1245, + 1283 + ], + "op": "DUP3", + "path": "82", + "statement": 348 + }, + "15919": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1245, + 1283 + ], + "op": "DIV", + "path": "82" + }, + "15920": { + "op": "PUSH1", + "value": "0x1" + }, + "15922": { + "op": "PUSH1", + "value": "0x1" + }, + "15924": { + "op": "PUSH1", + "value": "0x80" + }, + "15926": { + "op": "SHL" + }, + "15927": { + "op": "SUB" + }, + "15928": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1245, + 1283 + ], + "op": "AND", + "path": "82" + }, + "15929": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1245, + 1283 + ], + "op": "SWAP4", + "path": "82" + }, + "15930": { + "op": "POP" + }, + "15931": { + "op": "PUSH1", + "value": "0x1" + }, + "15933": { + "op": "PUSH1", + "value": "0xE0" + }, + "15935": { + "op": "SHL" + }, + "15936": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1315, + 1348 + ], + "op": "SWAP1", + "path": "82", + "statement": 349 + }, + "15937": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1315, + 1348 + ], + "op": "SWAP2", + "path": "82" + }, + "15938": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1315, + 1348 + ], + "op": "DIV", + "path": "82" + }, + "15939": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1315, + 1348 + ], + "op": "PUSH4", + "path": "82", + "value": "0xFFFFFFFF" + }, + "15944": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1315, + 1348 + ], + "op": "AND", + "path": "82" + }, + "15945": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "offset": [ + 1315, + 1348 + ], + "op": "SWAP2", + "path": "82" + }, + "15946": { + "op": "POP" + }, + "15947": { + "fn": "nTokenSupply.getStoredNTokenSupplyFactors", + "jump": "o", + "offset": [ + 526, + 1355 + ], + "op": "JUMP", + "path": "82" + }, + "15948": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 3288, + 4395 + ], + "op": "JUMPDEST", + "path": "82" + }, + "15949": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 3483, + 3490 + ], + "op": "PUSH1", + "path": "82", + "value": "0x0" + }, + "15951": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4135, + 4388 + ], + "op": "PUSH2", + "path": "82", + "statement": 350, + "value": "0xF7F" + }, + "15954": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4376, + 4387 + ], + "op": "DUP3", + "path": "82" + }, + "15955": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4135, + 4292 + ], + "op": "PUSH2", + "path": "82", + "value": "0x340D" + }, + "15958": { + "offset": [ + 2665, + 2676 + ], + "op": "PUSH4", + "path": "60", + "value": "0x1DA9C00" + }, + "15963": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4135, + 4292 + ], + "op": "DUP2", + "path": "82" + }, + "15964": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4239, + 4258 + ], + "op": "DUP9", + "path": "82" + }, + "15965": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4135, + 4221 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3407" + }, + "15968": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4135, + 4160 + ], + "op": "DUP10", + "path": "82" + }, + "15969": { + "offset": [ + 499, + 503 + ], + "op": "PUSH8", + "path": "60", + "value": "0xDE0B6B3A7640000" + }, + "15978": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "offset": [ + 4135, + 4177 + ], + "op": "PUSH2", + "path": "82", + "value": "0x3C5C" + }, + "15981": { + "fn": "nTokenSupply._calculateAdditionalNOTE", + "jump": "i", + "offset": [ + 4135, + 4221 + ], + "op": "JUMP", + "path": "82" + }, + "15982": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 928, + 1398 + ], + "op": "JUMPDEST", + "path": "78" + }, + "15983": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 991, + 998 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "15985": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1014, + 1019 + ], + "op": "DUP2", + "path": "78" + }, + "15986": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1023, + 1024 + ], + "op": "PUSH1", + "path": "78", + "value": "0x1" + }, + "15988": { + "branch": 482, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1014, + 1024 + ], + "op": "EQ", + "path": "78" + }, + "15989": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "ISZERO", + "path": "78" + }, + "15990": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3E83" + }, + "15993": { + "branch": 482, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "JUMPI", + "path": "78" + }, + "15994": { + "op": "POP" + }, + "15995": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "15999": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1026, + 1050 + ], + "op": "PUSH2", + "path": "78", + "statement": 351, + "value": "0xBE2" + }, + "16002": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1026, + 1050 + ], + "op": "JUMP", + "path": "78" + }, + "16003": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16004": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1064, + 1069 + ], + "op": "DUP2", + "path": "78" + }, + "16005": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1073, + 1074 + ], + "op": "PUSH1", + "path": "78", + "value": "0x2" + }, + "16007": { + "branch": 483, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1064, + 1074 + ], + "op": "EQ", + "path": "78" + }, + "16008": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "ISZERO", + "path": "78" + }, + "16009": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3E96" + }, + "16012": { + "branch": 483, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "JUMPI", + "path": "78" + }, + "16013": { + "op": "POP" + }, + "16014": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1083, + 1104 + ], + "op": "PUSH3", + "path": "78", + "statement": 352, + "value": "0xED4E00" + }, + "16018": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1076, + 1104 + ], + "op": "PUSH2", + "path": "78", + "value": "0xBE2" + }, + "16021": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1076, + 1104 + ], + "op": "JUMP", + "path": "78" + }, + "16022": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16023": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1118, + 1123 + ], + "op": "DUP2", + "path": "78" + }, + "16024": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1127, + 1128 + ], + "op": "PUSH1", + "path": "78", + "value": "0x3" + }, + "16026": { + "branch": 484, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1118, + 1128 + ], + "op": "EQ", + "path": "78" + }, + "16027": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "ISZERO", + "path": "78" + }, + "16028": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3EAA" + }, + "16031": { + "branch": 484, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "JUMPI", + "path": "78" + }, + "16032": { + "op": "POP" + }, + "16033": { + "offset": [ + 2665, + 2676 + ], + "op": "PUSH4", + "path": "60", + "value": "0x1DA9C00" + }, + "16038": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1130, + 1151 + ], + "op": "PUSH2", + "path": "78", + "statement": 353, + "value": "0xBE2" + }, + "16041": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1130, + 1151 + ], + "op": "JUMP", + "path": "78" + }, + "16042": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16043": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1165, + 1170 + ], + "op": "DUP2", + "path": "78" + }, + "16044": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1174, + 1175 + ], + "op": "PUSH1", + "path": "78", + "value": "0x4" + }, + "16046": { + "branch": 485, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1165, + 1175 + ], + "op": "EQ", + "path": "78" + }, + "16047": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "ISZERO", + "path": "78" + }, + "16048": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3EBE" + }, + "16051": { + "branch": 485, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "JUMPI", + "path": "78" + }, + "16052": { + "op": "POP" + }, + "16053": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1184, + 1202 + ], + "op": "PUSH4", + "path": "78", + "statement": 354, + "value": "0x3B53800" + }, + "16058": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1177, + 1202 + ], + "op": "PUSH2", + "path": "78", + "value": "0xBE2" + }, + "16061": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1177, + 1202 + ], + "op": "JUMP", + "path": "78" + }, + "16062": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16063": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1216, + 1221 + ], + "op": "DUP2", + "path": "78" + }, + "16064": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1225, + 1226 + ], + "op": "PUSH1", + "path": "78", + "value": "0x5" + }, + "16066": { + "branch": 486, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1216, + 1226 + ], + "op": "EQ", + "path": "78" + }, + "16067": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "ISZERO", + "path": "78" + }, + "16068": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3ED2" + }, + "16071": { + "branch": 486, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "JUMPI", + "path": "78" + }, + "16072": { + "op": "POP" + }, + "16073": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1235, + 1253 + ], + "op": "PUSH4", + "path": "78", + "statement": 355, + "value": "0x9450C00" + }, + "16078": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1228, + 1253 + ], + "op": "PUSH2", + "path": "78", + "value": "0xBE2" + }, + "16081": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1228, + 1253 + ], + "op": "JUMP", + "path": "78" + }, + "16082": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16083": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1267, + 1272 + ], + "op": "DUP2", + "path": "78" + }, + "16084": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1276, + 1277 + ], + "op": "PUSH1", + "path": "78", + "value": "0x6" + }, + "16086": { + "branch": 487, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1267, + 1277 + ], + "op": "EQ", + "path": "78" + }, + "16087": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "ISZERO", + "path": "78" + }, + "16088": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3EE6" + }, + "16091": { + "branch": 487, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "JUMPI", + "path": "78" + }, + "16092": { + "op": "POP" + }, + "16093": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1286, + 1305 + ], + "op": "PUSH4", + "path": "78", + "statement": 356, + "value": "0x128A1800" + }, + "16098": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1279, + 1305 + ], + "op": "PUSH2", + "path": "78", + "value": "0xBE2" + }, + "16101": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1279, + 1305 + ], + "op": "JUMP", + "path": "78" + }, + "16102": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16103": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1319, + 1324 + ], + "op": "DUP2", + "path": "78" + }, + "16104": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1328, + 1329 + ], + "op": "PUSH1", + "path": "78", + "value": "0x7" + }, + "16106": { + "branch": 488, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1319, + 1329 + ], + "op": "EQ", + "path": "78" + }, + "16107": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "ISZERO", + "path": "78" + }, + "16108": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3EFA" + }, + "16111": { + "branch": 488, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "JUMPI", + "path": "78" + }, + "16112": { + "op": "POP" + }, + "16113": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1338, + 1357 + ], + "op": "PUSH4", + "path": "78", + "statement": 357, + "value": "0x25143000" + }, + "16118": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1331, + 1357 + ], + "op": "PUSH2", + "path": "78", + "value": "0xBE2" + }, + "16121": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1331, + 1357 + ], + "op": "JUMP", + "path": "78" + }, + "16122": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "JUMPDEST", + "path": "78" + }, + "16123": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH1", + "path": "78", + "statement": 358, + "value": "0x40" + }, + "16125": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "MLOAD", + "path": "78" + }, + "16126": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "16130": { + "op": "PUSH1", + "value": "0xE5" + }, + "16132": { + "op": "SHL" + }, + "16133": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "DUP2", + "path": "78" + }, + "16134": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "MSTORE", + "path": "78" + }, + "16135": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH1", + "path": "78", + "value": "0x4" + }, + "16137": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "ADD", + "path": "78" + }, + "16138": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH2", + "path": "78", + "value": "0x17A" + }, + "16141": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "SWAP1", + "path": "78" + }, + "16142": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH2", + "path": "78", + "value": "0x493D" + }, + "16145": { + "fn": "DateTime.getTradedMarket", + "jump": "i", + "offset": [ + 1368, + 1391 + ], + "op": "JUMP", + "path": "78" + }, + "16146": { + "op": "JUMPDEST" + }, + "16147": { + "op": "PUSH1", + "value": "0x40" + }, + "16149": { + "op": "MLOAD" + }, + "16150": { + "op": "DUP1" + }, + "16151": { + "op": "PUSH2", + "value": "0x120" + }, + "16154": { + "op": "ADD" + }, + "16155": { + "op": "PUSH1", + "value": "0x40" + }, + "16157": { + "op": "MSTORE" + }, + "16158": { + "op": "DUP1" + }, + "16159": { + "op": "PUSH1", + "value": "0x0" + }, + "16161": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "16164": { + "op": "AND" + }, + "16165": { + "op": "DUP2" + }, + "16166": { + "op": "MSTORE" + }, + "16167": { + "op": "PUSH1", + "value": "0x20" + }, + "16169": { + "op": "ADD" + }, + "16170": { + "op": "PUSH1", + "value": "0x0" + }, + "16172": { + "op": "DUP2" + }, + "16173": { + "op": "MSTORE" + }, + "16174": { + "op": "PUSH1", + "value": "0x20" + }, + "16176": { + "op": "ADD" + }, + "16177": { + "op": "PUSH1", + "value": "0x0" + }, + "16179": { + "op": "DUP2" + }, + "16180": { + "op": "MSTORE" + }, + "16181": { + "op": "PUSH1", + "value": "0x20" + }, + "16183": { + "op": "ADD" + }, + "16184": { + "op": "PUSH1", + "value": "0x0" + }, + "16186": { + "op": "DUP2" + }, + "16187": { + "op": "MSTORE" + }, + "16188": { + "op": "PUSH1", + "value": "0x20" + }, + "16190": { + "op": "ADD" + }, + "16191": { + "op": "PUSH1", + "value": "0x0" + }, + "16193": { + "op": "DUP2" + }, + "16194": { + "op": "MSTORE" + }, + "16195": { + "op": "PUSH1", + "value": "0x20" + }, + "16197": { + "op": "ADD" + }, + "16198": { + "op": "PUSH1", + "value": "0x0" + }, + "16200": { + "op": "DUP2" + }, + "16201": { + "op": "MSTORE" + }, + "16202": { + "op": "PUSH1", + "value": "0x20" + }, + "16204": { + "op": "ADD" + }, + "16205": { + "op": "PUSH1", + "value": "0x0" + }, + "16207": { + "op": "DUP2" + }, + "16208": { + "op": "MSTORE" + }, + "16209": { + "op": "PUSH1", + "value": "0x20" + }, + "16211": { + "op": "ADD" + }, + "16212": { + "op": "PUSH1", + "value": "0x0" + }, + "16214": { + "op": "DUP2" + }, + "16215": { + "op": "MSTORE" + }, + "16216": { + "op": "PUSH1", + "value": "0x20" + }, + "16218": { + "op": "ADD" + }, + "16219": { + "op": "PUSH1", + "value": "0x0" + }, + "16221": { + "op": "DUP2" + }, + "16222": { + "op": "MSTORE" + }, + "16223": { + "op": "POP" + }, + "16224": { + "op": "SWAP1" + }, + "16225": { + "jump": "o", + "op": "JUMP" + }, + "16226": { + "op": "JUMPDEST" + }, + "16227": { + "op": "PUSH1", + "value": "0x40" + }, + "16229": { + "op": "DUP1" + }, + "16230": { + "op": "MLOAD" + }, + "16231": { + "op": "PUSH1", + "value": "0xA0" + }, + "16233": { + "op": "DUP2" + }, + "16234": { + "op": "ADD" + }, + "16235": { + "op": "DUP3" + }, + "16236": { + "op": "MSTORE" + }, + "16237": { + "op": "PUSH1", + "value": "0x0" + }, + "16239": { + "op": "DUP1" + }, + "16240": { + "op": "DUP3" + }, + "16241": { + "op": "MSTORE" + }, + "16242": { + "op": "PUSH1", + "value": "0x20" + }, + "16244": { + "op": "DUP3" + }, + "16245": { + "op": "ADD" + }, + "16246": { + "op": "DUP2" + }, + "16247": { + "op": "SWAP1" + }, + "16248": { + "op": "MSTORE" + }, + "16249": { + "op": "SWAP2" + }, + "16250": { + "op": "DUP2" + }, + "16251": { + "op": "ADD" + }, + "16252": { + "op": "DUP3" + }, + "16253": { + "op": "SWAP1" + }, + "16254": { + "op": "MSTORE" + }, + "16255": { + "op": "PUSH1", + "value": "0x60" + }, + "16257": { + "op": "DUP2" + }, + "16258": { + "op": "ADD" + }, + "16259": { + "op": "DUP3" + }, + "16260": { + "op": "SWAP1" + }, + "16261": { + "op": "MSTORE" + }, + "16262": { + "op": "PUSH1", + "value": "0x80" + }, + "16264": { + "op": "DUP2" + }, + "16265": { + "op": "ADD" + }, + "16266": { + "op": "SWAP2" + }, + "16267": { + "op": "SWAP1" + }, + "16268": { + "op": "SWAP2" + }, + "16269": { + "op": "MSTORE" + }, + "16270": { + "op": "SWAP1" + }, + "16271": { + "jump": "o", + "op": "JUMP" + }, + "16272": { + "op": "JUMPDEST" + }, + "16273": { + "op": "PUSH1", + "value": "0x40" + }, + "16275": { + "op": "MLOAD" + }, + "16276": { + "op": "DUP1" + }, + "16277": { + "op": "PUSH1", + "value": "0x80" + }, + "16279": { + "op": "ADD" + }, + "16280": { + "op": "PUSH1", + "value": "0x40" + }, + "16282": { + "op": "MSTORE" + }, + "16283": { + "op": "DUP1" + }, + "16284": { + "op": "PUSH1", + "value": "0x60" + }, + "16286": { + "op": "DUP2" + }, + "16287": { + "op": "MSTORE" + }, + "16288": { + "op": "PUSH1", + "value": "0x20" + }, + "16290": { + "op": "ADD" + }, + "16291": { + "op": "PUSH1", + "value": "0x60" + }, + "16293": { + "op": "DUP2" + }, + "16294": { + "op": "MSTORE" + }, + "16295": { + "op": "PUSH1", + "value": "0x20" + }, + "16297": { + "op": "ADD" + }, + "16298": { + "op": "PUSH1", + "value": "0x0" + }, + "16300": { + "op": "DUP2" + }, + "16301": { + "op": "MSTORE" + }, + "16302": { + "op": "PUSH1", + "value": "0x20" + }, + "16304": { + "op": "ADD" + }, + "16305": { + "op": "PUSH1", + "value": "0x0" + }, + "16307": { + "op": "DUP2" + }, + "16308": { + "op": "MSTORE" + }, + "16309": { + "op": "POP" + }, + "16310": { + "op": "SWAP1" + }, + "16311": { + "jump": "o", + "op": "JUMP" + }, + "16312": { + "op": "JUMPDEST" + }, + "16313": { + "op": "PUSH1", + "value": "0x40" + }, + "16315": { + "op": "MLOAD" + }, + "16316": { + "op": "DUP1" + }, + "16317": { + "op": "PUSH1", + "value": "0xC0" + }, + "16319": { + "op": "ADD" + }, + "16320": { + "op": "PUSH1", + "value": "0x40" + }, + "16322": { + "op": "MSTORE" + }, + "16323": { + "op": "DUP1" + }, + "16324": { + "op": "PUSH1", + "value": "0x0" + }, + "16326": { + "op": "DUP2" + }, + "16327": { + "op": "MSTORE" + }, + "16328": { + "op": "PUSH1", + "value": "0x20" + }, + "16330": { + "op": "ADD" + }, + "16331": { + "op": "PUSH1", + "value": "0x0" + }, + "16333": { + "op": "DUP2" + }, + "16334": { + "op": "MSTORE" + }, + "16335": { + "op": "PUSH1", + "value": "0x20" + }, + "16337": { + "op": "ADD" + }, + "16338": { + "op": "PUSH1", + "value": "0x0" + }, + "16340": { + "op": "DUP2" + }, + "16341": { + "op": "MSTORE" + }, + "16342": { + "op": "PUSH1", + "value": "0x20" + }, + "16344": { + "op": "ADD" + }, + "16345": { + "op": "PUSH1", + "value": "0x0" + }, + "16347": { + "op": "DUP2" + }, + "16348": { + "op": "MSTORE" + }, + "16349": { + "op": "PUSH1", + "value": "0x20" + }, + "16351": { + "op": "ADD" + }, + "16352": { + "op": "PUSH1", + "value": "0x0" + }, + "16354": { + "op": "DUP2" + }, + "16355": { + "op": "MSTORE" + }, + "16356": { + "op": "PUSH1", + "value": "0x20" + }, + "16358": { + "op": "ADD" + }, + "16359": { + "op": "PUSH1", + "value": "0x0" + }, + "16361": { + "op": "PUSH1", + "value": "0x3" + }, + "16363": { + "op": "DUP2" + }, + "16364": { + "op": "GT" + }, + "16365": { + "op": "ISZERO" + }, + "16366": { + "op": "PUSH2", + "value": "0x3FF3" + }, + "16369": { + "op": "JUMPI" + }, + "16370": { + "op": "INVALID" + }, + "16371": { + "op": "JUMPDEST" + }, + "16372": { + "op": "SWAP1" + }, + "16373": { + "op": "MSTORE" + }, + "16374": { + "op": "SWAP1" + }, + "16375": { + "jump": "o", + "op": "JUMP" + }, + "16376": { + "op": "JUMPDEST" + }, + "16377": { + "op": "PUSH1", + "value": "0x40" + }, + "16379": { + "op": "MLOAD" + }, + "16380": { + "op": "DUP1" + }, + "16381": { + "op": "PUSH1", + "value": "0x60" + }, + "16383": { + "op": "ADD" + }, + "16384": { + "op": "PUSH1", + "value": "0x40" + }, + "16386": { + "op": "MSTORE" + }, + "16387": { + "op": "DUP1" + }, + "16388": { + "op": "PUSH1", + "value": "0x0" + }, + "16390": { + "op": "PUSH1", + "value": "0x1" + }, + "16392": { + "op": "PUSH1", + "value": "0x1" + }, + "16394": { + "op": "PUSH1", + "value": "0xA0" + }, + "16396": { + "op": "SHL" + }, + "16397": { + "op": "SUB" + }, + "16398": { + "op": "AND" + }, + "16399": { + "op": "DUP2" + }, + "16400": { + "op": "MSTORE" + }, + "16401": { + "op": "PUSH1", + "value": "0x20" + }, + "16403": { + "op": "ADD" + }, + "16404": { + "op": "PUSH1", + "value": "0x0" + }, + "16406": { + "op": "DUP2" + }, + "16407": { + "op": "MSTORE" + }, + "16408": { + "op": "PUSH1", + "value": "0x20" + }, + "16410": { + "op": "ADD" + }, + "16411": { + "op": "PUSH1", + "value": "0x0" + }, + "16413": { + "op": "DUP2" + }, + "16414": { + "op": "MSTORE" + }, + "16415": { + "op": "POP" + }, + "16416": { + "op": "SWAP1" + }, + "16417": { + "jump": "o", + "op": "JUMP" + }, + "16418": { + "op": "JUMPDEST" + }, + "16419": { + "op": "PUSH1", + "value": "0x40" + }, + "16421": { + "op": "DUP1" + }, + "16422": { + "op": "MLOAD" + }, + "16423": { + "op": "PUSH1", + "value": "0xA0" + }, + "16425": { + "op": "DUP2" + }, + "16426": { + "op": "ADD" + }, + "16427": { + "op": "DUP3" + }, + "16428": { + "op": "MSTORE" + }, + "16429": { + "op": "PUSH1", + "value": "0x0" + }, + "16431": { + "op": "DUP1" + }, + "16432": { + "op": "DUP3" + }, + "16433": { + "op": "MSTORE" + }, + "16434": { + "op": "PUSH1", + "value": "0x20" + }, + "16436": { + "op": "DUP3" + }, + "16437": { + "op": "ADD" + }, + "16438": { + "op": "DUP2" + }, + "16439": { + "op": "SWAP1" + }, + "16440": { + "op": "MSTORE" + }, + "16441": { + "op": "SWAP2" + }, + "16442": { + "op": "DUP2" + }, + "16443": { + "op": "ADD" + }, + "16444": { + "op": "DUP3" + }, + "16445": { + "op": "SWAP1" + }, + "16446": { + "op": "MSTORE" + }, + "16447": { + "op": "SWAP1" + }, + "16448": { + "op": "PUSH1", + "value": "0x60" + }, + "16450": { + "op": "DUP3" + }, + "16451": { + "op": "ADD" + }, + "16452": { + "op": "SWAP1" + }, + "16453": { + "op": "DUP2" + }, + "16454": { + "op": "MSTORE" + }, + "16455": { + "op": "PUSH1", + "value": "0x20" + }, + "16457": { + "op": "ADD" + }, + "16458": { + "op": "PUSH1", + "value": "0x0" + }, + "16460": { + "op": "DUP2" + }, + "16461": { + "op": "MSTORE" + }, + "16462": { + "op": "POP" + }, + "16463": { + "op": "SWAP1" + }, + "16464": { + "jump": "o", + "op": "JUMP" + }, + "16465": { + "op": "JUMPDEST" + }, + "16466": { + "op": "PUSH1", + "value": "0x40" + }, + "16468": { + "op": "MLOAD" + }, + "16469": { + "op": "DUP1" + }, + "16470": { + "op": "PUSH1", + "value": "0x20" + }, + "16472": { + "op": "ADD" + }, + "16473": { + "op": "PUSH1", + "value": "0x40" + }, + "16475": { + "op": "MSTORE" + }, + "16476": { + "op": "DUP1" + }, + "16477": { + "op": "PUSH1", + "value": "0x1" + }, + "16479": { + "op": "SWAP1" + }, + "16480": { + "op": "PUSH1", + "value": "0x20" + }, + "16482": { + "op": "DUP3" + }, + "16483": { + "op": "MUL" + }, + "16484": { + "op": "DUP1" + }, + "16485": { + "op": "CALLDATASIZE" + }, + "16486": { + "op": "DUP4" + }, + "16487": { + "op": "CALLDATACOPY" + }, + "16488": { + "op": "POP" + }, + "16489": { + "op": "SWAP2" + }, + "16490": { + "op": "SWAP3" + }, + "16491": { + "op": "SWAP2" + }, + "16492": { + "op": "POP" + }, + "16493": { + "op": "POP" + }, + "16494": { + "jump": "o", + "op": "JUMP" + }, + "16495": { + "op": "JUMPDEST" + }, + "16496": { + "op": "DUP1" + }, + "16497": { + "op": "CALLDATALOAD" + }, + "16498": { + "op": "PUSH1", + "value": "0x1" + }, + "16500": { + "op": "PUSH1", + "value": "0x1" + }, + "16502": { + "op": "PUSH1", + "value": "0xA0" + }, + "16504": { + "op": "SHL" + }, + "16505": { + "op": "SUB" + }, + "16506": { + "op": "DUP2" + }, + "16507": { + "op": "AND" + }, + "16508": { + "op": "DUP2" + }, + "16509": { + "op": "EQ" + }, + "16510": { + "op": "PUSH2", + "value": "0xBE2" + }, + "16513": { + "op": "JUMPI" + }, + "16514": { + "op": "PUSH1", + "value": "0x0" + }, + "16516": { + "op": "DUP1" + }, + "16517": { + "op": "REVERT" + }, + "16518": { + "op": "JUMPDEST" + }, + "16519": { + "op": "PUSH1", + "value": "0x0" + }, + "16521": { + "op": "DUP1" + }, + "16522": { + "op": "DUP4" + }, + "16523": { + "op": "PUSH1", + "value": "0x1F" + }, + "16525": { + "op": "DUP5" + }, + "16526": { + "op": "ADD" + }, + "16527": { + "op": "SLT" + }, + "16528": { + "op": "PUSH2", + "value": "0x4097" + }, + "16531": { + "op": "JUMPI" + }, + "16532": { + "op": "DUP1" + }, + "16533": { + "op": "DUP2" + }, + "16534": { + "op": "REVERT" + }, + "16535": { + "op": "JUMPDEST" + }, + "16536": { + "op": "POP" + }, + "16537": { + "op": "DUP2" + }, + "16538": { + "op": "CALLDATALOAD" + }, + "16539": { + "op": "PUSH1", + "value": "0x1" + }, + "16541": { + "op": "PUSH1", + "value": "0x1" + }, + "16543": { + "op": "PUSH1", + "value": "0x40" + }, + "16545": { + "op": "SHL" + }, + "16546": { + "op": "SUB" + }, + "16547": { + "op": "DUP2" + }, + "16548": { + "op": "GT" + }, + "16549": { + "op": "ISZERO" + }, + "16550": { + "op": "PUSH2", + "value": "0x40AD" + }, + "16553": { + "op": "JUMPI" + }, + "16554": { + "op": "DUP2" + }, + "16555": { + "op": "DUP3" + }, + "16556": { + "op": "REVERT" + }, + "16557": { + "op": "JUMPDEST" + }, + "16558": { + "op": "PUSH1", + "value": "0x20" + }, + "16560": { + "op": "DUP4" + }, + "16561": { + "op": "ADD" + }, + "16562": { + "op": "SWAP2" + }, + "16563": { + "op": "POP" + }, + "16564": { + "op": "DUP4" + }, + "16565": { + "op": "PUSH1", + "value": "0x20" + }, + "16567": { + "op": "DUP1" + }, + "16568": { + "op": "DUP4" + }, + "16569": { + "op": "MUL" + }, + "16570": { + "op": "DUP6" + }, + "16571": { + "op": "ADD" + }, + "16572": { + "op": "ADD" + }, + "16573": { + "op": "GT" + }, + "16574": { + "op": "ISZERO" + }, + "16575": { + "op": "PUSH2", + "value": "0x40C7" + }, + "16578": { + "op": "JUMPI" + }, + "16579": { + "op": "PUSH1", + "value": "0x0" + }, + "16581": { + "op": "DUP1" + }, + "16582": { + "op": "REVERT" + }, + "16583": { + "op": "JUMPDEST" + }, + "16584": { + "op": "SWAP3" + }, + "16585": { + "op": "POP" + }, + "16586": { + "op": "SWAP3" + }, + "16587": { + "op": "SWAP1" + }, + "16588": { + "op": "POP" + }, + "16589": { + "jump": "o", + "op": "JUMP" + }, + "16590": { + "op": "JUMPDEST" + }, + "16591": { + "op": "PUSH1", + "value": "0x0" + }, + "16593": { + "op": "DUP3" + }, + "16594": { + "op": "PUSH1", + "value": "0x1F" + }, + "16596": { + "op": "DUP4" + }, + "16597": { + "op": "ADD" + }, + "16598": { + "op": "SLT" + }, + "16599": { + "op": "PUSH2", + "value": "0x40DE" + }, + "16602": { + "op": "JUMPI" + }, + "16603": { + "op": "DUP1" + }, + "16604": { + "op": "DUP2" + }, + "16605": { + "op": "REVERT" + }, + "16606": { + "op": "JUMPDEST" + }, + "16607": { + "op": "DUP2" + }, + "16608": { + "op": "MLOAD" + }, + "16609": { + "op": "PUSH1", + "value": "0x20" + }, + "16611": { + "op": "PUSH1", + "value": "0x1" + }, + "16613": { + "op": "PUSH1", + "value": "0x1" + }, + "16615": { + "op": "PUSH1", + "value": "0x40" + }, + "16617": { + "op": "SHL" + }, + "16618": { + "op": "SUB" + }, + "16619": { + "op": "DUP1" + }, + "16620": { + "op": "DUP4" + }, + "16621": { + "op": "GT" + }, + "16622": { + "op": "ISZERO" + }, + "16623": { + "op": "PUSH2", + "value": "0x40F4" + }, + "16626": { + "op": "JUMPI" + }, + "16627": { + "op": "INVALID" + }, + "16628": { + "op": "JUMPDEST" + }, + "16629": { + "op": "PUSH2", + "value": "0x4101" + }, + "16632": { + "op": "DUP3" + }, + "16633": { + "op": "DUP4" + }, + "16634": { + "op": "DUP6" + }, + "16635": { + "op": "MUL" + }, + "16636": { + "op": "ADD" + }, + "16637": { + "op": "PUSH2", + "value": "0x4B51" + }, + "16640": { + "jump": "i", + "op": "JUMP" + }, + "16641": { + "op": "JUMPDEST" + }, + "16642": { + "op": "DUP4" + }, + "16643": { + "op": "DUP2" + }, + "16644": { + "op": "MSTORE" + }, + "16645": { + "op": "DUP3" + }, + "16646": { + "op": "DUP2" + }, + "16647": { + "op": "ADD" + }, + "16648": { + "op": "SWAP1" + }, + "16649": { + "op": "DUP7" + }, + "16650": { + "op": "DUP5" + }, + "16651": { + "op": "ADD" + }, + "16652": { + "op": "PUSH1", + "value": "0xC0" + }, + "16654": { + "op": "DUP1" + }, + "16655": { + "op": "DUP8" + }, + "16656": { + "op": "MUL" + }, + "16657": { + "op": "DUP10" + }, + "16658": { + "op": "ADD" + }, + "16659": { + "op": "DUP7" + }, + "16660": { + "op": "ADD" + }, + "16661": { + "op": "DUP11" + }, + "16662": { + "op": "LT" + }, + "16663": { + "op": "ISZERO" + }, + "16664": { + "op": "PUSH2", + "value": "0x411F" + }, + "16667": { + "op": "JUMPI" + }, + "16668": { + "op": "DUP8" + }, + "16669": { + "op": "DUP9" + }, + "16670": { + "op": "REVERT" + }, + "16671": { + "op": "JUMPDEST" + }, + "16672": { + "op": "DUP8" + }, + "16673": { + "op": "JUMPDEST" + }, + "16674": { + "op": "DUP8" + }, + "16675": { + "op": "DUP2" + }, + "16676": { + "op": "LT" + }, + "16677": { + "op": "ISZERO" + }, + "16678": { + "op": "PUSH2", + "value": "0x41A0" + }, + "16681": { + "op": "JUMPI" + }, + "16682": { + "op": "DUP2" + }, + "16683": { + "op": "DUP4" + }, + "16684": { + "op": "DUP13" + }, + "16685": { + "op": "SUB" + }, + "16686": { + "op": "SLT" + }, + "16687": { + "op": "ISZERO" + }, + "16688": { + "op": "PUSH2", + "value": "0x4137" + }, + "16691": { + "op": "JUMPI" + }, + "16692": { + "op": "DUP9" + }, + "16693": { + "op": "DUP10" + }, + "16694": { + "op": "REVERT" + }, + "16695": { + "op": "JUMPDEST" + }, + "16696": { + "op": "PUSH1", + "value": "0x40" + }, + "16698": { + "op": "DUP1" + }, + "16699": { + "op": "MLOAD" + }, + "16700": { + "op": "DUP4" + }, + "16701": { + "op": "DUP2" + }, + "16702": { + "op": "ADD" + }, + "16703": { + "op": "DUP2" + }, + "16704": { + "op": "DUP2" + }, + "16705": { + "op": "LT" + }, + "16706": { + "op": "DUP10" + }, + "16707": { + "op": "DUP3" + }, + "16708": { + "op": "GT" + }, + "16709": { + "op": "OR" + }, + "16710": { + "op": "ISZERO" + }, + "16711": { + "op": "PUSH2", + "value": "0x414C" + }, + "16714": { + "op": "JUMPI" + }, + "16715": { + "op": "INVALID" + }, + "16716": { + "op": "JUMPDEST" + }, + "16717": { + "op": "DUP3" + }, + "16718": { + "op": "MSTORE" + }, + "16719": { + "op": "DUP5" + }, + "16720": { + "op": "MLOAD" + }, + "16721": { + "op": "DUP2" + }, + "16722": { + "op": "MSTORE" + }, + "16723": { + "op": "DUP9" + }, + "16724": { + "op": "DUP6" + }, + "16725": { + "op": "ADD" + }, + "16726": { + "op": "MLOAD" + }, + "16727": { + "op": "DUP10" + }, + "16728": { + "op": "DUP3" + }, + "16729": { + "op": "ADD" + }, + "16730": { + "op": "MSTORE" + }, + "16731": { + "op": "DUP5" + }, + "16732": { + "op": "DUP3" + }, + "16733": { + "op": "ADD" + }, + "16734": { + "op": "MLOAD" + }, + "16735": { + "op": "SWAP2" + }, + "16736": { + "op": "DUP2" + }, + "16737": { + "op": "ADD" + }, + "16738": { + "op": "SWAP2" + }, + "16739": { + "op": "SWAP1" + }, + "16740": { + "op": "SWAP2" + }, + "16741": { + "op": "MSTORE" + }, + "16742": { + "op": "PUSH1", + "value": "0x60" + }, + "16744": { + "op": "DUP1" + }, + "16745": { + "op": "DUP6" + }, + "16746": { + "op": "ADD" + }, + "16747": { + "op": "MLOAD" + }, + "16748": { + "op": "SWAP1" + }, + "16749": { + "op": "DUP3" + }, + "16750": { + "op": "ADD" + }, + "16751": { + "op": "MSTORE" + }, + "16752": { + "op": "PUSH1", + "value": "0x80" + }, + "16754": { + "op": "DUP1" + }, + "16755": { + "op": "DUP6" + }, + "16756": { + "op": "ADD" + }, + "16757": { + "op": "MLOAD" + }, + "16758": { + "op": "SWAP1" + }, + "16759": { + "op": "DUP3" + }, + "16760": { + "op": "ADD" + }, + "16761": { + "op": "MSTORE" + }, + "16762": { + "op": "PUSH1", + "value": "0xA0" + }, + "16764": { + "op": "SWAP1" + }, + "16765": { + "op": "PUSH2", + "value": "0x4187" + }, + "16768": { + "op": "DUP3" + }, + "16769": { + "op": "DUP7" + }, + "16770": { + "op": "ADD" + }, + "16771": { + "op": "PUSH2", + "value": "0x41C7" + }, + "16774": { + "jump": "i", + "op": "JUMP" + }, + "16775": { + "op": "JUMPDEST" + }, + "16776": { + "op": "SWAP2" + }, + "16777": { + "op": "DUP2" + }, + "16778": { + "op": "ADD" + }, + "16779": { + "op": "SWAP2" + }, + "16780": { + "op": "SWAP1" + }, + "16781": { + "op": "SWAP2" + }, + "16782": { + "op": "MSTORE" + }, + "16783": { + "op": "DUP6" + }, + "16784": { + "op": "MSTORE" + }, + "16785": { + "op": "SWAP4" + }, + "16786": { + "op": "DUP7" + }, + "16787": { + "op": "ADD" + }, + "16788": { + "op": "SWAP4" + }, + "16789": { + "op": "SWAP2" + }, + "16790": { + "op": "DUP2" + }, + "16791": { + "op": "ADD" + }, + "16792": { + "op": "SWAP2" + }, + "16793": { + "op": "PUSH1", + "value": "0x1" + }, + "16795": { + "op": "ADD" + }, + "16796": { + "op": "PUSH2", + "value": "0x4121" + }, + "16799": { + "op": "JUMP" + }, + "16800": { + "op": "JUMPDEST" + }, + "16801": { + "op": "POP" + }, + "16802": { + "op": "SWAP2" + }, + "16803": { + "op": "SWAP10" + }, + "16804": { + "op": "SWAP9" + }, + "16805": { + "op": "POP" + }, + "16806": { + "op": "POP" + }, + "16807": { + "op": "POP" + }, + "16808": { + "op": "POP" + }, + "16809": { + "op": "POP" + }, + "16810": { + "op": "POP" + }, + "16811": { + "op": "POP" + }, + "16812": { + "op": "POP" + }, + "16813": { + "op": "POP" + }, + "16814": { + "jump": "o", + "op": "JUMP" + }, + "16815": { + "op": "JUMPDEST" + }, + "16816": { + "op": "DUP1" + }, + "16817": { + "op": "MLOAD" + }, + "16818": { + "op": "PUSH1", + "value": "0x1" + }, + "16820": { + "op": "PUSH1", + "value": "0x1" + }, + "16822": { + "op": "PUSH1", + "value": "0x70" + }, + "16824": { + "op": "SHL" + }, + "16825": { + "op": "SUB" + }, + "16826": { + "op": "NOT" + }, + "16827": { + "op": "DUP2" + }, + "16828": { + "op": "AND" + }, + "16829": { + "op": "DUP2" + }, + "16830": { + "op": "EQ" + }, + "16831": { + "op": "PUSH2", + "value": "0xBE2" + }, + "16834": { + "op": "JUMPI" + }, + "16835": { + "op": "PUSH1", + "value": "0x0" + }, + "16837": { + "op": "DUP1" + }, + "16838": { + "op": "REVERT" + }, + "16839": { + "op": "JUMPDEST" + }, + "16840": { + "op": "DUP1" + }, + "16841": { + "op": "MLOAD" + }, + "16842": { + "op": "PUSH1", + "value": "0x4" + }, + "16844": { + "op": "DUP2" + }, + "16845": { + "op": "LT" + }, + "16846": { + "op": "PUSH2", + "value": "0xBE2" + }, + "16849": { + "op": "JUMPI" + }, + "16850": { + "op": "PUSH1", + "value": "0x0" + }, + "16852": { + "op": "DUP1" + }, + "16853": { + "op": "REVERT" + }, + "16854": { + "op": "JUMPDEST" + }, + "16855": { + "op": "DUP1" + }, + "16856": { + "op": "MLOAD" + }, + "16857": { + "op": "PUSH2", + "value": "0xBE2" + }, + "16860": { + "op": "DUP2" + }, + "16861": { + "op": "PUSH2", + "value": "0x4B85" + }, + "16864": { + "jump": "i", + "op": "JUMP" + }, + "16865": { + "op": "JUMPDEST" + }, + "16866": { + "op": "DUP1" + }, + "16867": { + "op": "MLOAD" + }, + "16868": { + "op": "PUSH1", + "value": "0xFF" + }, + "16870": { + "op": "DUP2" + }, + "16871": { + "op": "AND" + }, + "16872": { + "op": "DUP2" + }, + "16873": { + "op": "EQ" + }, + "16874": { + "op": "PUSH2", + "value": "0xBE2" + }, + "16877": { + "op": "JUMPI" + }, + "16878": { + "op": "PUSH1", + "value": "0x0" + }, + "16880": { + "op": "DUP1" + }, + "16881": { + "op": "REVERT" + }, + "16882": { + "op": "JUMPDEST" + }, + "16883": { + "op": "PUSH1", + "value": "0x0" + }, + "16885": { + "op": "DUP1" + }, + "16886": { + "op": "PUSH1", + "value": "0x0" + }, + "16888": { + "op": "PUSH1", + "value": "0x40" + }, + "16890": { + "op": "DUP5" + }, + "16891": { + "op": "DUP7" + }, + "16892": { + "op": "SUB" + }, + "16893": { + "op": "SLT" + }, + "16894": { + "op": "ISZERO" + }, + "16895": { + "op": "PUSH2", + "value": "0x4206" + }, + "16898": { + "op": "JUMPI" + }, + "16899": { + "op": "DUP3" + }, + "16900": { + "op": "DUP4" + }, + "16901": { + "op": "REVERT" + }, + "16902": { + "op": "JUMPDEST" + }, + "16903": { + "op": "PUSH2", + "value": "0x420F" + }, + "16906": { + "op": "DUP5" + }, + "16907": { + "op": "PUSH2", + "value": "0x406F" + }, + "16910": { + "jump": "i", + "op": "JUMP" + }, + "16911": { + "op": "JUMPDEST" + }, + "16912": { + "op": "SWAP3" + }, + "16913": { + "op": "POP" + }, + "16914": { + "op": "PUSH1", + "value": "0x20" + }, + "16916": { + "op": "DUP5" + }, + "16917": { + "op": "ADD" + }, + "16918": { + "op": "CALLDATALOAD" + }, + "16919": { + "op": "PUSH1", + "value": "0x1" + }, + "16921": { + "op": "PUSH1", + "value": "0x1" + }, + "16923": { + "op": "PUSH1", + "value": "0x40" + }, + "16925": { + "op": "SHL" + }, + "16926": { + "op": "SUB" + }, + "16927": { + "op": "DUP2" + }, + "16928": { + "op": "GT" + }, + "16929": { + "op": "ISZERO" + }, + "16930": { + "op": "PUSH2", + "value": "0x4229" + }, + "16933": { + "op": "JUMPI" + }, + "16934": { + "op": "DUP3" + }, + "16935": { + "op": "DUP4" + }, + "16936": { + "op": "REVERT" + }, + "16937": { + "op": "JUMPDEST" + }, + "16938": { + "op": "PUSH2", + "value": "0x4235" + }, + "16941": { + "op": "DUP7" + }, + "16942": { + "op": "DUP3" + }, + "16943": { + "op": "DUP8" + }, + "16944": { + "op": "ADD" + }, + "16945": { + "op": "PUSH2", + "value": "0x4086" + }, + "16948": { + "jump": "i", + "op": "JUMP" + }, + "16949": { + "op": "JUMPDEST" + }, + "16950": { + "op": "SWAP5" + }, + "16951": { + "op": "SWAP8" + }, + "16952": { + "op": "SWAP1" + }, + "16953": { + "op": "SWAP7" + }, + "16954": { + "op": "POP" + }, + "16955": { + "op": "SWAP4" + }, + "16956": { + "op": "SWAP5" + }, + "16957": { + "op": "POP" + }, + "16958": { + "op": "POP" + }, + "16959": { + "op": "POP" + }, + "16960": { + "op": "POP" + }, + "16961": { + "jump": "o", + "op": "JUMP" + }, + "16962": { + "op": "JUMPDEST" + }, + "16963": { + "op": "PUSH1", + "value": "0x0" + }, + "16965": { + "op": "DUP1" + }, + "16966": { + "op": "PUSH1", + "value": "0x0" + }, + "16968": { + "op": "DUP1" + }, + "16969": { + "op": "PUSH1", + "value": "0x0" + }, + "16971": { + "op": "PUSH1", + "value": "0x60" + }, + "16973": { + "op": "DUP7" + }, + "16974": { + "op": "DUP9" + }, + "16975": { + "op": "SUB" + }, + "16976": { + "op": "SLT" + }, + "16977": { + "op": "ISZERO" + }, + "16978": { + "op": "PUSH2", + "value": "0x4259" + }, + "16981": { + "op": "JUMPI" + }, + "16982": { + "op": "DUP1" + }, + "16983": { + "op": "DUP2" + }, + "16984": { + "op": "REVERT" + }, + "16985": { + "op": "JUMPDEST" + }, + "16986": { + "op": "PUSH2", + "value": "0x4262" + }, + "16989": { + "op": "DUP7" + }, + "16990": { + "op": "PUSH2", + "value": "0x406F" + }, + "16993": { + "jump": "i", + "op": "JUMP" + }, + "16994": { + "op": "JUMPDEST" + }, + "16995": { + "op": "SWAP5" + }, + "16996": { + "op": "POP" + }, + "16997": { + "op": "PUSH1", + "value": "0x20" + }, + "16999": { + "op": "DUP7" + }, + "17000": { + "op": "ADD" + }, + "17001": { + "op": "CALLDATALOAD" + }, + "17002": { + "op": "PUSH1", + "value": "0x1" + }, + "17004": { + "op": "PUSH1", + "value": "0x1" + }, + "17006": { + "op": "PUSH1", + "value": "0x40" + }, + "17008": { + "op": "SHL" + }, + "17009": { + "op": "SUB" + }, + "17010": { + "op": "DUP1" + }, + "17011": { + "op": "DUP3" + }, + "17012": { + "op": "GT" + }, + "17013": { + "op": "ISZERO" + }, + "17014": { + "op": "PUSH2", + "value": "0x427D" + }, + "17017": { + "op": "JUMPI" + }, + "17018": { + "op": "DUP3" + }, + "17019": { + "op": "DUP4" + }, + "17020": { + "op": "REVERT" + }, + "17021": { + "op": "JUMPDEST" + }, + "17022": { + "op": "PUSH2", + "value": "0x4289" + }, + "17025": { + "op": "DUP10" + }, + "17026": { + "op": "DUP4" + }, + "17027": { + "op": "DUP11" + }, + "17028": { + "op": "ADD" + }, + "17029": { + "op": "PUSH2", + "value": "0x4086" + }, + "17032": { + "jump": "i", + "op": "JUMP" + }, + "17033": { + "op": "JUMPDEST" + }, + "17034": { + "op": "SWAP1" + }, + "17035": { + "op": "SWAP7" + }, + "17036": { + "op": "POP" + }, + "17037": { + "op": "SWAP5" + }, + "17038": { + "op": "POP" + }, + "17039": { + "op": "PUSH1", + "value": "0x40" + }, + "17041": { + "op": "DUP9" + }, + "17042": { + "op": "ADD" + }, + "17043": { + "op": "CALLDATALOAD" + }, + "17044": { + "op": "SWAP2" + }, + "17045": { + "op": "POP" + }, + "17046": { + "op": "DUP1" + }, + "17047": { + "op": "DUP3" + }, + "17048": { + "op": "GT" + }, + "17049": { + "op": "ISZERO" + }, + "17050": { + "op": "PUSH2", + "value": "0x42A1" + }, + "17053": { + "op": "JUMPI" + }, + "17054": { + "op": "DUP3" + }, + "17055": { + "op": "DUP4" + }, + "17056": { + "op": "REVERT" + }, + "17057": { + "op": "JUMPDEST" + }, + "17058": { + "op": "DUP2" + }, + "17059": { + "op": "DUP9" + }, + "17060": { + "op": "ADD" + }, + "17061": { + "op": "SWAP2" + }, + "17062": { + "op": "POP" + }, + "17063": { + "op": "DUP9" + }, + "17064": { + "op": "PUSH1", + "value": "0x1F" + }, + "17066": { + "op": "DUP4" + }, + "17067": { + "op": "ADD" + }, + "17068": { + "op": "SLT" + }, + "17069": { + "op": "PUSH2", + "value": "0x42B4" + }, + "17072": { + "op": "JUMPI" + }, + "17073": { + "op": "DUP3" + }, + "17074": { + "op": "DUP4" + }, + "17075": { + "op": "REVERT" + }, + "17076": { + "op": "JUMPDEST" + }, + "17077": { + "op": "DUP2" + }, + "17078": { + "op": "CALLDATALOAD" + }, + "17079": { + "op": "DUP2" + }, + "17080": { + "op": "DUP2" + }, + "17081": { + "op": "GT" + }, + "17082": { + "op": "ISZERO" + }, + "17083": { + "op": "PUSH2", + "value": "0x42C2" + }, + "17086": { + "op": "JUMPI" + }, + "17087": { + "op": "DUP4" + }, + "17088": { + "op": "DUP5" + }, + "17089": { + "op": "REVERT" + }, + "17090": { + "op": "JUMPDEST" + }, + "17091": { + "op": "DUP10" + }, + "17092": { + "op": "PUSH1", + "value": "0x20" + }, + "17094": { + "op": "DUP3" + }, + "17095": { + "op": "DUP6" + }, + "17096": { + "op": "ADD" + }, + "17097": { + "op": "ADD" + }, + "17098": { + "op": "GT" + }, + "17099": { + "op": "ISZERO" + }, + "17100": { + "op": "PUSH2", + "value": "0x42D3" + }, + "17103": { + "op": "JUMPI" + }, + "17104": { + "op": "DUP4" + }, + "17105": { + "op": "DUP5" + }, + "17106": { + "op": "REVERT" + }, + "17107": { + "op": "JUMPDEST" + }, + "17108": { + "op": "SWAP7" + }, + "17109": { + "op": "SWAP10" + }, + "17110": { + "op": "SWAP6" + }, + "17111": { + "op": "SWAP9" + }, + "17112": { + "op": "POP" + }, + "17113": { + "op": "SWAP4" + }, + "17114": { + "op": "SWAP7" + }, + "17115": { + "op": "POP" + }, + "17116": { + "op": "PUSH1", + "value": "0x20" + }, + "17118": { + "op": "ADD" + }, + "17119": { + "op": "SWAP5" + }, + "17120": { + "op": "SWAP4" + }, + "17121": { + "op": "SWAP3" + }, + "17122": { + "op": "POP" + }, + "17123": { + "op": "POP" + }, + "17124": { + "op": "POP" + }, + "17125": { + "jump": "o", + "op": "JUMP" + }, + "17126": { + "op": "JUMPDEST" + }, + "17127": { + "op": "PUSH1", + "value": "0x0" + }, + "17129": { + "op": "DUP1" + }, + "17130": { + "op": "PUSH1", + "value": "0x0" + }, + "17132": { + "op": "PUSH1", + "value": "0x40" + }, + "17134": { + "op": "DUP5" + }, + "17135": { + "op": "DUP7" + }, + "17136": { + "op": "SUB" + }, + "17137": { + "op": "SLT" + }, + "17138": { + "op": "ISZERO" + }, + "17139": { + "op": "PUSH2", + "value": "0x42FA" + }, + "17142": { + "op": "JUMPI" + }, + "17143": { + "op": "DUP3" + }, + "17144": { + "op": "DUP4" + }, + "17145": { + "op": "REVERT" + }, + "17146": { + "op": "JUMPDEST" + }, + "17147": { + "op": "PUSH2", + "value": "0x4303" + }, + "17150": { + "op": "DUP5" + }, + "17151": { + "op": "PUSH2", + "value": "0x406F" + }, + "17154": { + "jump": "i", + "op": "JUMP" + }, + "17155": { + "op": "JUMPDEST" + }, + "17156": { + "op": "SWAP3" + }, + "17157": { + "op": "POP" + }, + "17158": { + "op": "PUSH1", + "value": "0x20" + }, + "17160": { + "op": "DUP5" + }, + "17161": { + "op": "ADD" + }, + "17162": { + "op": "CALLDATALOAD" + }, + "17163": { + "op": "PUSH1", + "value": "0x1" + }, + "17165": { + "op": "PUSH1", + "value": "0x1" + }, + "17167": { + "op": "PUSH1", + "value": "0x40" + }, + "17169": { + "op": "SHL" + }, + "17170": { + "op": "SUB" + }, + "17171": { + "op": "DUP1" + }, + "17172": { + "op": "DUP3" + }, + "17173": { + "op": "GT" + }, + "17174": { + "op": "ISZERO" + }, + "17175": { + "op": "PUSH2", + "value": "0x431E" + }, + "17178": { + "op": "JUMPI" + }, + "17179": { + "op": "DUP4" + }, + "17180": { + "op": "DUP5" + }, + "17181": { + "op": "REVERT" + }, + "17182": { + "op": "JUMPDEST" + }, + "17183": { + "op": "DUP2" + }, + "17184": { + "op": "DUP7" + }, + "17185": { + "op": "ADD" + }, + "17186": { + "op": "SWAP2" + }, + "17187": { + "op": "POP" + }, + "17188": { + "op": "DUP7" + }, + "17189": { + "op": "PUSH1", + "value": "0x1F" + }, + "17191": { + "op": "DUP4" + }, + "17192": { + "op": "ADD" + }, + "17193": { + "op": "SLT" + }, + "17194": { + "op": "PUSH2", + "value": "0x4331" + }, + "17197": { + "op": "JUMPI" + }, + "17198": { + "op": "DUP4" + }, + "17199": { + "op": "DUP5" + }, + "17200": { + "op": "REVERT" + }, + "17201": { + "op": "JUMPDEST" + }, + "17202": { + "op": "DUP2" + }, + "17203": { + "op": "CALLDATALOAD" + }, + "17204": { + "op": "DUP2" + }, + "17205": { + "op": "DUP2" + }, + "17206": { + "op": "GT" + }, + "17207": { + "op": "ISZERO" + }, + "17208": { + "op": "PUSH2", + "value": "0x433F" + }, + "17211": { + "op": "JUMPI" + }, + "17212": { + "op": "DUP5" + }, + "17213": { + "op": "DUP6" + }, + "17214": { + "op": "REVERT" + }, + "17215": { + "op": "JUMPDEST" + }, + "17216": { + "op": "DUP8" + }, + "17217": { + "op": "PUSH1", + "value": "0x20" + }, + "17219": { + "op": "PUSH1", + "value": "0xC0" + }, + "17221": { + "op": "DUP4" + }, + "17222": { + "op": "MUL" + }, + "17223": { + "op": "DUP6" + }, + "17224": { + "op": "ADD" + }, + "17225": { + "op": "ADD" + }, + "17226": { + "op": "GT" + }, + "17227": { + "op": "ISZERO" + }, + "17228": { + "op": "PUSH2", + "value": "0x4353" + }, + "17231": { + "op": "JUMPI" + }, + "17232": { + "op": "DUP5" + }, + "17233": { + "op": "DUP6" + }, + "17234": { + "op": "REVERT" + }, + "17235": { + "op": "JUMPDEST" + }, + "17236": { + "op": "PUSH1", + "value": "0x20" + }, + "17238": { + "op": "DUP4" + }, + "17239": { + "op": "ADD" + }, + "17240": { + "op": "SWAP5" + }, + "17241": { + "op": "POP" + }, + "17242": { + "op": "DUP1" + }, + "17243": { + "op": "SWAP4" + }, + "17244": { + "op": "POP" + }, + "17245": { + "op": "POP" + }, + "17246": { + "op": "POP" + }, + "17247": { + "op": "POP" + }, + "17248": { + "op": "SWAP3" + }, + "17249": { + "op": "POP" + }, + "17250": { + "op": "SWAP3" + }, + "17251": { + "op": "POP" + }, + "17252": { + "op": "SWAP3" + }, + "17253": { + "jump": "o", + "op": "JUMP" + }, + "17254": { + "op": "JUMPDEST" + }, + "17255": { + "op": "PUSH1", + "value": "0x0" + }, + "17257": { + "op": "DUP1" + }, + "17258": { + "op": "PUSH1", + "value": "0x0" + }, + "17260": { + "op": "PUSH1", + "value": "0x40" + }, + "17262": { + "op": "DUP5" + }, + "17263": { + "op": "DUP7" + }, + "17264": { + "op": "SUB" + }, + "17265": { + "op": "SLT" + }, + "17266": { + "op": "ISZERO" + }, + "17267": { + "op": "PUSH2", + "value": "0x437A" + }, + "17270": { + "op": "JUMPI" + }, + "17271": { + "op": "DUP1" + }, + "17272": { + "op": "DUP2" + }, + "17273": { + "op": "REVERT" + }, + "17274": { + "op": "JUMPDEST" + }, + "17275": { + "op": "PUSH2", + "value": "0x4383" + }, + "17278": { + "op": "DUP5" + }, + "17279": { + "op": "PUSH2", + "value": "0x406F" + }, + "17282": { + "jump": "i", + "op": "JUMP" + }, + "17283": { + "op": "JUMPDEST" + }, + "17284": { + "op": "SWAP3" + }, + "17285": { + "op": "POP" + }, + "17286": { + "op": "PUSH1", + "value": "0x20" + }, + "17288": { + "op": "DUP5" + }, + "17289": { + "op": "ADD" + }, + "17290": { + "op": "CALLDATALOAD" + }, + "17291": { + "op": "PUSH1", + "value": "0x1" + }, + "17293": { + "op": "PUSH1", + "value": "0x1" + }, + "17295": { + "op": "PUSH1", + "value": "0x40" + }, + "17297": { + "op": "SHL" + }, + "17298": { + "op": "SUB" + }, + "17299": { + "op": "DUP2" + }, + "17300": { + "op": "GT" + }, + "17301": { + "op": "ISZERO" + }, + "17302": { + "op": "PUSH2", + "value": "0x4229" + }, + "17305": { + "op": "JUMPI" + }, + "17306": { + "op": "DUP2" + }, + "17307": { + "op": "DUP3" + }, + "17308": { + "op": "REVERT" + }, + "17309": { + "op": "JUMPDEST" + }, + "17310": { + "op": "PUSH1", + "value": "0x0" + }, + "17312": { + "op": "PUSH1", + "value": "0x20" + }, + "17314": { + "op": "DUP3" + }, + "17315": { + "op": "DUP5" + }, + "17316": { + "op": "SUB" + }, + "17317": { + "op": "SLT" + }, + "17318": { + "op": "ISZERO" + }, + "17319": { + "op": "PUSH2", + "value": "0x43AE" + }, + "17322": { + "op": "JUMPI" + }, + "17323": { + "op": "DUP1" + }, + "17324": { + "op": "DUP2" + }, + "17325": { + "op": "REVERT" + }, + "17326": { + "op": "JUMPDEST" + }, + "17327": { + "op": "DUP2" + }, + "17328": { + "op": "CALLDATALOAD" + }, + "17329": { + "op": "PUSH2", + "value": "0xAA3" + }, + "17332": { + "op": "DUP2" + }, + "17333": { + "op": "PUSH2", + "value": "0x4B74" + }, + "17336": { + "jump": "i", + "op": "JUMP" + }, + "17337": { + "op": "JUMPDEST" + }, + "17338": { + "op": "PUSH1", + "value": "0x0" + }, + "17340": { + "op": "PUSH1", + "value": "0x20" + }, + "17342": { + "op": "DUP3" + }, + "17343": { + "op": "DUP5" + }, + "17344": { + "op": "SUB" + }, + "17345": { + "op": "SLT" + }, + "17346": { + "op": "ISZERO" + }, + "17347": { + "op": "PUSH2", + "value": "0x43CA" + }, + "17350": { + "op": "JUMPI" + }, + "17351": { + "op": "DUP1" + }, + "17352": { + "op": "DUP2" + }, + "17353": { + "op": "REVERT" + }, + "17354": { + "op": "JUMPDEST" + }, + "17355": { + "op": "DUP2" + }, + "17356": { + "op": "CALLDATALOAD" + }, + "17357": { + "op": "PUSH1", + "value": "0x7" + }, + "17359": { + "op": "DUP2" + }, + "17360": { + "op": "LT" + }, + "17361": { + "op": "PUSH2", + "value": "0xAA3" + }, + "17364": { + "op": "JUMPI" + }, + "17365": { + "op": "DUP2" + }, + "17366": { + "op": "DUP3" + }, + "17367": { + "op": "REVERT" + }, + "17368": { + "op": "JUMPDEST" + }, + "17369": { + "op": "PUSH1", + "value": "0x0" + }, + "17371": { + "op": "PUSH1", + "value": "0x20" + }, + "17373": { + "op": "DUP3" + }, + "17374": { + "op": "DUP5" + }, + "17375": { + "op": "SUB" + }, + "17376": { + "op": "SLT" + }, + "17377": { + "op": "ISZERO" + }, + "17378": { + "op": "PUSH2", + "value": "0x43E9" + }, + "17381": { + "op": "JUMPI" + }, + "17382": { + "op": "DUP1" + }, + "17383": { + "op": "DUP2" + }, + "17384": { + "op": "REVERT" + }, + "17385": { + "op": "JUMPDEST" + }, + "17386": { + "op": "POP" + }, + "17387": { + "op": "MLOAD" + }, + "17388": { + "op": "SWAP2" + }, + "17389": { + "op": "SWAP1" + }, + "17390": { + "op": "POP" + }, + "17391": { + "jump": "o", + "op": "JUMP" + }, + "17392": { + "op": "JUMPDEST" + }, + "17393": { + "op": "PUSH1", + "value": "0x0" + }, + "17395": { + "op": "DUP1" + }, + "17396": { + "op": "PUSH1", + "value": "0x40" + }, + "17398": { + "op": "DUP4" + }, + "17399": { + "op": "DUP6" + }, + "17400": { + "op": "SUB" + }, + "17401": { + "op": "SLT" + }, + "17402": { + "op": "ISZERO" + }, + "17403": { + "op": "PUSH2", + "value": "0x4402" + }, + "17406": { + "op": "JUMPI" + }, + "17407": { + "op": "DUP2" + }, + "17408": { + "op": "DUP3" + }, + "17409": { + "op": "REVERT" + }, + "17410": { + "op": "JUMPDEST" + }, + "17411": { + "op": "DUP3" + }, + "17412": { + "op": "MLOAD" + }, + "17413": { + "op": "SWAP2" + }, + "17414": { + "op": "POP" + }, + "17415": { + "op": "PUSH1", + "value": "0x20" + }, + "17417": { + "op": "DUP4" + }, + "17418": { + "op": "ADD" + }, + "17419": { + "op": "MLOAD" + }, + "17420": { + "op": "PUSH2", + "value": "0x4414" + }, + "17423": { + "op": "DUP2" + }, + "17424": { + "op": "PUSH2", + "value": "0x4B74" + }, + "17427": { + "jump": "i", + "op": "JUMP" + }, + "17428": { + "op": "JUMPDEST" + }, + "17429": { + "op": "DUP1" + }, + "17430": { + "op": "SWAP2" + }, + "17431": { + "op": "POP" + }, + "17432": { + "op": "POP" + }, + "17433": { + "op": "SWAP3" + }, + "17434": { + "op": "POP" + }, + "17435": { + "op": "SWAP3" + }, + "17436": { + "op": "SWAP1" + }, + "17437": { + "op": "POP" + }, + "17438": { + "jump": "o", + "op": "JUMP" + }, + "17439": { + "op": "JUMPDEST" + }, + "17440": { + "op": "PUSH1", + "value": "0x0" + }, + "17442": { + "op": "PUSH1", + "value": "0xA0" + }, + "17444": { + "op": "DUP3" + }, + "17445": { + "op": "DUP5" + }, + "17446": { + "op": "SUB" + }, + "17447": { + "op": "SLT" + }, + "17448": { + "op": "ISZERO" + }, + "17449": { + "op": "PUSH2", + "value": "0x4430" + }, + "17452": { + "op": "JUMPI" + }, + "17453": { + "op": "DUP1" + }, + "17454": { + "op": "DUP2" + }, + "17455": { + "op": "REVERT" + }, + "17456": { + "op": "JUMPDEST" + }, + "17457": { + "op": "PUSH1", + "value": "0x40" + }, + "17459": { + "op": "MLOAD" + }, + "17460": { + "op": "PUSH1", + "value": "0xA0" + }, + "17462": { + "op": "DUP2" + }, + "17463": { + "op": "ADD" + }, + "17464": { + "op": "DUP2" + }, + "17465": { + "op": "DUP2" + }, + "17466": { + "op": "LT" + }, + "17467": { + "op": "PUSH1", + "value": "0x1" + }, + "17469": { + "op": "PUSH1", + "value": "0x1" + }, + "17471": { + "op": "PUSH1", + "value": "0x40" + }, + "17473": { + "op": "SHL" + }, + "17474": { + "op": "SUB" + }, + "17475": { + "op": "DUP3" + }, + "17476": { + "op": "GT" + }, + "17477": { + "op": "OR" + }, + "17478": { + "op": "ISZERO" + }, + "17479": { + "op": "PUSH2", + "value": "0x444C" + }, + "17482": { + "op": "JUMPI" + }, + "17483": { + "op": "INVALID" + }, + "17484": { + "op": "JUMPDEST" + }, + "17485": { + "op": "PUSH1", + "value": "0x40" + }, + "17487": { + "op": "MSTORE" + }, + "17488": { + "op": "DUP3" + }, + "17489": { + "op": "MLOAD" + }, + "17490": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "17496": { + "op": "DUP2" + }, + "17497": { + "op": "AND" + }, + "17498": { + "op": "DUP2" + }, + "17499": { + "op": "EQ" + }, + "17500": { + "op": "PUSH2", + "value": "0x4463" + }, + "17503": { + "op": "JUMPI" + }, + "17504": { + "op": "DUP3" + }, + "17505": { + "op": "DUP4" + }, + "17506": { + "op": "REVERT" + }, + "17507": { + "op": "JUMPDEST" + }, + "17508": { + "op": "DUP2" + }, + "17509": { + "op": "MSTORE" + }, + "17510": { + "op": "PUSH1", + "value": "0x20" + }, + "17512": { + "op": "DUP4" + }, + "17513": { + "op": "ADD" + }, + "17514": { + "op": "MLOAD" + }, + "17515": { + "op": "PUSH1", + "value": "0x1" + }, + "17517": { + "op": "PUSH1", + "value": "0x1" + }, + "17519": { + "op": "PUSH1", + "value": "0xF8" + }, + "17521": { + "op": "SHL" + }, + "17522": { + "op": "SUB" + }, + "17523": { + "op": "NOT" + }, + "17524": { + "op": "DUP2" + }, + "17525": { + "op": "AND" + }, + "17526": { + "op": "DUP2" + }, + "17527": { + "op": "EQ" + }, + "17528": { + "op": "PUSH2", + "value": "0x447F" + }, + "17531": { + "op": "JUMPI" + }, + "17532": { + "op": "DUP3" + }, + "17533": { + "op": "DUP4" + }, + "17534": { + "op": "REVERT" + }, + "17535": { + "op": "JUMPDEST" + }, + "17536": { + "op": "PUSH1", + "value": "0x20" + }, + "17538": { + "op": "DUP3" + }, + "17539": { + "op": "ADD" + }, + "17540": { + "op": "MSTORE" + }, + "17541": { + "op": "PUSH2", + "value": "0x4490" + }, + "17544": { + "op": "PUSH1", + "value": "0x40" + }, + "17546": { + "op": "DUP5" + }, + "17547": { + "op": "ADD" + }, + "17548": { + "op": "PUSH2", + "value": "0x41E1" + }, + "17551": { + "jump": "i", + "op": "JUMP" + }, + "17552": { + "op": "JUMPDEST" + }, + "17553": { + "op": "PUSH1", + "value": "0x40" + }, + "17555": { + "op": "DUP3" + }, + "17556": { + "op": "ADD" + }, + "17557": { + "op": "MSTORE" + }, + "17558": { + "op": "PUSH2", + "value": "0x44A1" + }, + "17561": { + "op": "PUSH1", + "value": "0x60" + }, + "17563": { + "op": "DUP5" + }, + "17564": { + "op": "ADD" + }, + "17565": { + "op": "PUSH2", + "value": "0x41D6" + }, + "17568": { + "jump": "i", + "op": "JUMP" + }, + "17569": { + "op": "JUMPDEST" + }, + "17570": { + "op": "PUSH1", + "value": "0x60" + }, + "17572": { + "op": "DUP3" + }, + "17573": { + "op": "ADD" + }, + "17574": { + "op": "MSTORE" + }, + "17575": { + "op": "PUSH2", + "value": "0x44B2" + }, + "17578": { + "op": "PUSH1", + "value": "0x80" + }, + "17580": { + "op": "DUP5" + }, + "17581": { + "op": "ADD" + }, + "17582": { + "op": "PUSH2", + "value": "0x41AF" + }, + "17585": { + "jump": "i", + "op": "JUMP" + }, + "17586": { + "op": "JUMPDEST" + }, + "17587": { + "op": "PUSH1", + "value": "0x80" + }, + "17589": { + "op": "DUP3" + }, + "17590": { + "op": "ADD" + }, + "17591": { + "op": "MSTORE" + }, + "17592": { + "op": "SWAP4" + }, + "17593": { + "op": "SWAP3" + }, + "17594": { + "op": "POP" + }, + "17595": { + "op": "POP" + }, + "17596": { + "op": "POP" + }, + "17597": { + "jump": "o", + "op": "JUMP" + }, + "17598": { + "op": "JUMPDEST" + }, + "17599": { + "op": "PUSH1", + "value": "0x0" + }, + "17601": { + "op": "DUP1" + }, + "17602": { + "op": "PUSH1", + "value": "0x40" + }, + "17604": { + "op": "DUP4" + }, + "17605": { + "op": "DUP6" + }, + "17606": { + "op": "SUB" + }, + "17607": { + "op": "SLT" + }, + "17608": { + "op": "ISZERO" + }, + "17609": { + "op": "PUSH2", + "value": "0x44D0" + }, + "17612": { + "op": "JUMPI" + }, + "17613": { + "op": "DUP2" + }, + "17614": { + "op": "DUP3" + }, + "17615": { + "op": "REVERT" + }, + "17616": { + "op": "JUMPDEST" + }, + "17617": { + "op": "DUP3" + }, + "17618": { + "op": "MLOAD" + }, + "17619": { + "op": "PUSH1", + "value": "0x1" + }, + "17621": { + "op": "PUSH1", + "value": "0x1" + }, + "17623": { + "op": "PUSH1", + "value": "0x40" + }, + "17625": { + "op": "SHL" + }, + "17626": { + "op": "SUB" + }, + "17627": { + "op": "DUP1" + }, + "17628": { + "op": "DUP3" + }, + "17629": { + "op": "GT" + }, + "17630": { + "op": "ISZERO" + }, + "17631": { + "op": "PUSH2", + "value": "0x44E6" + }, + "17634": { + "op": "JUMPI" + }, + "17635": { + "op": "DUP4" + }, + "17636": { + "op": "DUP5" + }, + "17637": { + "op": "REVERT" + }, + "17638": { + "op": "JUMPDEST" + }, + "17639": { + "op": "SWAP1" + }, + "17640": { + "op": "DUP5" + }, + "17641": { + "op": "ADD" + }, + "17642": { + "op": "SWAP1" + }, + "17643": { + "op": "PUSH1", + "value": "0x80" + }, + "17645": { + "op": "DUP3" + }, + "17646": { + "op": "DUP8" + }, + "17647": { + "op": "SUB" + }, + "17648": { + "op": "SLT" + }, + "17649": { + "op": "ISZERO" + }, + "17650": { + "op": "PUSH2", + "value": "0x44F9" + }, + "17653": { + "op": "JUMPI" + }, + "17654": { + "op": "DUP4" + }, + "17655": { + "op": "DUP5" + }, + "17656": { + "op": "REVERT" + }, + "17657": { + "op": "JUMPDEST" + }, + "17658": { + "op": "PUSH1", + "value": "0x40" + }, + "17660": { + "op": "MLOAD" + }, + "17661": { + "op": "PUSH1", + "value": "0x80" + }, + "17663": { + "op": "DUP2" + }, + "17664": { + "op": "ADD" + }, + "17665": { + "op": "DUP2" + }, + "17666": { + "op": "DUP2" + }, + "17667": { + "op": "LT" + }, + "17668": { + "op": "DUP4" + }, + "17669": { + "op": "DUP3" + }, + "17670": { + "op": "GT" + }, + "17671": { + "op": "OR" + }, + "17672": { + "op": "ISZERO" + }, + "17673": { + "op": "PUSH2", + "value": "0x450E" + }, + "17676": { + "op": "JUMPI" + }, + "17677": { + "op": "INVALID" + }, + "17678": { + "op": "JUMPDEST" + }, + "17679": { + "op": "PUSH1", + "value": "0x40" + }, + "17681": { + "op": "MSTORE" + }, + "17682": { + "op": "DUP3" + }, + "17683": { + "op": "MLOAD" + }, + "17684": { + "op": "DUP3" + }, + "17685": { + "op": "DUP2" + }, + "17686": { + "op": "GT" + }, + "17687": { + "op": "ISZERO" + }, + "17688": { + "op": "PUSH2", + "value": "0x451F" + }, + "17691": { + "op": "JUMPI" + }, + "17692": { + "op": "DUP6" + }, + "17693": { + "op": "DUP7" + }, + "17694": { + "op": "REVERT" + }, + "17695": { + "op": "JUMPDEST" + }, + "17696": { + "op": "PUSH2", + "value": "0x452B" + }, + "17699": { + "op": "DUP9" + }, + "17700": { + "op": "DUP3" + }, + "17701": { + "op": "DUP7" + }, + "17702": { + "op": "ADD" + }, + "17703": { + "op": "PUSH2", + "value": "0x40CE" + }, + "17706": { + "jump": "i", + "op": "JUMP" + }, + "17707": { + "op": "JUMPDEST" + }, + "17708": { + "op": "DUP3" + }, + "17709": { + "op": "MSTORE" + }, + "17710": { + "op": "POP" + }, + "17711": { + "op": "PUSH1", + "value": "0x20" + }, + "17713": { + "op": "DUP4" + }, + "17714": { + "op": "ADD" + }, + "17715": { + "op": "MLOAD" + }, + "17716": { + "op": "DUP3" + }, + "17717": { + "op": "DUP2" + }, + "17718": { + "op": "GT" + }, + "17719": { + "op": "ISZERO" + }, + "17720": { + "op": "PUSH2", + "value": "0x453F" + }, + "17723": { + "op": "JUMPI" + }, + "17724": { + "op": "DUP6" + }, + "17725": { + "op": "DUP7" + }, + "17726": { + "op": "REVERT" + }, + "17727": { + "op": "JUMPDEST" + }, + "17728": { + "op": "PUSH2", + "value": "0x454B" + }, + "17731": { + "op": "DUP9" + }, + "17732": { + "op": "DUP3" + }, + "17733": { + "op": "DUP7" + }, + "17734": { + "op": "ADD" + }, + "17735": { + "op": "PUSH2", + "value": "0x40CE" + }, + "17738": { + "jump": "i", + "op": "JUMP" + }, + "17739": { + "op": "JUMPDEST" + }, + "17740": { + "op": "PUSH1", + "value": "0x20" + }, + "17742": { + "op": "DUP4" + }, + "17743": { + "op": "ADD" + }, + "17744": { + "op": "MSTORE" + }, + "17745": { + "op": "POP" + }, + "17746": { + "op": "PUSH1", + "value": "0x40" + }, + "17748": { + "op": "DUP4" + }, + "17749": { + "op": "ADD" + }, + "17750": { + "op": "MLOAD" + }, + "17751": { + "op": "PUSH1", + "value": "0x40" + }, + "17753": { + "op": "DUP3" + }, + "17754": { + "op": "ADD" + }, + "17755": { + "op": "MSTORE" + }, + "17756": { + "op": "PUSH1", + "value": "0x60" + }, + "17758": { + "op": "DUP4" + }, + "17759": { + "op": "ADD" + }, + "17760": { + "op": "MLOAD" + }, + "17761": { + "op": "PUSH1", + "value": "0x60" + }, + "17763": { + "op": "DUP3" + }, + "17764": { + "op": "ADD" + }, + "17765": { + "op": "MSTORE" + }, + "17766": { + "op": "DUP1" + }, + "17767": { + "op": "SWAP5" + }, + "17768": { + "op": "POP" + }, + "17769": { + "op": "POP" + }, + "17770": { + "op": "POP" + }, + "17771": { + "op": "POP" + }, + "17772": { + "op": "PUSH1", + "value": "0x20" + }, + "17774": { + "op": "DUP4" + }, + "17775": { + "op": "ADD" + }, + "17776": { + "op": "MLOAD" + }, + "17777": { + "op": "SWAP1" + }, + "17778": { + "op": "POP" + }, + "17779": { + "op": "SWAP3" + }, + "17780": { + "op": "POP" + }, + "17781": { + "op": "SWAP3" + }, + "17782": { + "op": "SWAP1" + }, + "17783": { + "op": "POP" + }, + "17784": { + "jump": "o", + "op": "JUMP" + }, + "17785": { + "op": "JUMPDEST" + }, + "17786": { + "op": "PUSH1", + "value": "0x0" + }, + "17788": { + "op": "PUSH1", + "value": "0x20" + }, + "17790": { + "op": "DUP3" + }, + "17791": { + "op": "DUP5" + }, + "17792": { + "op": "SUB" + }, + "17793": { + "op": "SLT" + }, + "17794": { + "op": "ISZERO" + }, + "17795": { + "op": "PUSH2", + "value": "0x458A" + }, + "17798": { + "op": "JUMPI" + }, + "17799": { + "op": "DUP1" + }, + "17800": { + "op": "DUP2" + }, + "17801": { + "op": "REVERT" + }, + "17802": { + "op": "JUMPDEST" + }, + "17803": { + "op": "DUP2" + }, + "17804": { + "op": "CALLDATALOAD" + }, + "17805": { + "op": "PUSH2", + "value": "0xAA3" + }, + "17808": { + "op": "DUP2" + }, + "17809": { + "op": "PUSH2", + "value": "0x4B85" + }, + "17812": { + "jump": "i", + "op": "JUMP" + }, + "17813": { + "op": "JUMPDEST" + }, + "17814": { + "op": "DUP2" + }, + "17815": { + "op": "DUP4" + }, + "17816": { + "op": "MSTORE" + }, + "17817": { + "op": "PUSH1", + "value": "0x0" + }, + "17819": { + "op": "PUSH1", + "value": "0x1" + }, + "17821": { + "op": "PUSH1", + "value": "0x1" + }, + "17823": { + "op": "PUSH1", + "value": "0xFB" + }, + "17825": { + "op": "SHL" + }, + "17826": { + "op": "SUB" + }, + "17827": { + "op": "DUP4" + }, + "17828": { + "op": "GT" + }, + "17829": { + "op": "ISZERO" + }, + "17830": { + "op": "PUSH2", + "value": "0x45AD" + }, + "17833": { + "op": "JUMPI" + }, + "17834": { + "op": "DUP1" + }, + "17835": { + "op": "DUP2" + }, + "17836": { + "op": "REVERT" + }, + "17837": { + "op": "JUMPDEST" + }, + "17838": { + "op": "PUSH1", + "value": "0x20" + }, + "17840": { + "op": "DUP4" + }, + "17841": { + "op": "MUL" + }, + "17842": { + "op": "DUP1" + }, + "17843": { + "op": "DUP4" + }, + "17844": { + "op": "PUSH1", + "value": "0x20" + }, + "17846": { + "op": "DUP8" + }, + "17847": { + "op": "ADD" + }, + "17848": { + "op": "CALLDATACOPY" + }, + "17849": { + "op": "SWAP4" + }, + "17850": { + "op": "SWAP1" + }, + "17851": { + "op": "SWAP4" + }, + "17852": { + "op": "ADD" + }, + "17853": { + "op": "PUSH1", + "value": "0x20" + }, + "17855": { + "op": "ADD" + }, + "17856": { + "op": "SWAP3" + }, + "17857": { + "op": "DUP4" + }, + "17858": { + "op": "MSTORE" + }, + "17859": { + "op": "POP" + }, + "17860": { + "op": "SWAP1" + }, + "17861": { + "op": "SWAP2" + }, + "17862": { + "op": "SWAP1" + }, + "17863": { + "op": "POP" + }, + "17864": { + "jump": "o", + "op": "JUMP" + }, + "17865": { + "op": "JUMPDEST" + }, + "17866": { + "op": "PUSH1", + "value": "0x0" + }, + "17868": { + "op": "DUP2" + }, + "17869": { + "op": "MLOAD" + }, + "17870": { + "op": "DUP1" + }, + "17871": { + "op": "DUP5" + }, + "17872": { + "op": "MSTORE" + }, + "17873": { + "op": "PUSH1", + "value": "0x20" + }, + "17875": { + "op": "DUP1" + }, + "17876": { + "op": "DUP6" + }, + "17877": { + "op": "ADD" + }, + "17878": { + "op": "SWAP5" + }, + "17879": { + "op": "POP" + }, + "17880": { + "op": "DUP1" + }, + "17881": { + "op": "DUP5" + }, + "17882": { + "op": "ADD" + }, + "17883": { + "op": "DUP4" + }, + "17884": { + "op": "JUMPDEST" + }, + "17885": { + "op": "DUP4" + }, + "17886": { + "op": "DUP2" + }, + "17887": { + "op": "LT" + }, + "17888": { + "op": "ISZERO" + }, + "17889": { + "op": "PUSH2", + "value": "0x4636" + }, + "17892": { + "op": "JUMPI" + }, + "17893": { + "op": "DUP2" + }, + "17894": { + "op": "MLOAD" + }, + "17895": { + "op": "DUP1" + }, + "17896": { + "op": "MLOAD" + }, + "17897": { + "op": "DUP9" + }, + "17898": { + "op": "MSTORE" + }, + "17899": { + "op": "DUP4" + }, + "17900": { + "op": "DUP2" + }, + "17901": { + "op": "ADD" + }, + "17902": { + "op": "MLOAD" + }, + "17903": { + "op": "DUP5" + }, + "17904": { + "op": "DUP10" + }, + "17905": { + "op": "ADD" + }, + "17906": { + "op": "MSTORE" + }, + "17907": { + "op": "PUSH1", + "value": "0x40" + }, + "17909": { + "op": "DUP1" + }, + "17910": { + "op": "DUP3" + }, + "17911": { + "op": "ADD" + }, + "17912": { + "op": "MLOAD" + }, + "17913": { + "op": "SWAP1" + }, + "17914": { + "op": "DUP10" + }, + "17915": { + "op": "ADD" + }, + "17916": { + "op": "MSTORE" + }, + "17917": { + "op": "PUSH1", + "value": "0x60" + }, + "17919": { + "op": "DUP1" + }, + "17920": { + "op": "DUP3" + }, + "17921": { + "op": "ADD" + }, + "17922": { + "op": "MLOAD" + }, + "17923": { + "op": "SWAP1" + }, + "17924": { + "op": "DUP10" + }, + "17925": { + "op": "ADD" + }, + "17926": { + "op": "MSTORE" + }, + "17927": { + "op": "PUSH1", + "value": "0x80" + }, + "17929": { + "op": "DUP1" + }, + "17930": { + "op": "DUP3" + }, + "17931": { + "op": "ADD" + }, + "17932": { + "op": "MLOAD" + }, + "17933": { + "op": "SWAP1" + }, + "17934": { + "op": "DUP10" + }, + "17935": { + "op": "ADD" + }, + "17936": { + "op": "MSTORE" + }, + "17937": { + "op": "PUSH1", + "value": "0xA0" + }, + "17939": { + "op": "SWAP1" + }, + "17940": { + "op": "DUP2" + }, + "17941": { + "op": "ADD" + }, + "17942": { + "op": "MLOAD" + }, + "17943": { + "op": "SWAP1" + }, + "17944": { + "op": "PUSH1", + "value": "0x4" + }, + "17946": { + "op": "DUP3" + }, + "17947": { + "op": "LT" + }, + "17948": { + "op": "PUSH2", + "value": "0x4621" + }, + "17951": { + "op": "JUMPI" + }, + "17952": { + "op": "INVALID" + }, + "17953": { + "op": "JUMPDEST" + }, + "17954": { + "op": "DUP9" + }, + "17955": { + "op": "ADD" + }, + "17956": { + "op": "MSTORE" + }, + "17957": { + "op": "PUSH1", + "value": "0xC0" + }, + "17959": { + "op": "SWAP1" + }, + "17960": { + "op": "SWAP7" + }, + "17961": { + "op": "ADD" + }, + "17962": { + "op": "SWAP6" + }, + "17963": { + "op": "SWAP1" + }, + "17964": { + "op": "DUP3" + }, + "17965": { + "op": "ADD" + }, + "17966": { + "op": "SWAP1" + }, + "17967": { + "op": "PUSH1", + "value": "0x1" + }, + "17969": { + "op": "ADD" + }, + "17970": { + "op": "PUSH2", + "value": "0x45DC" + }, + "17973": { + "op": "JUMP" + }, + "17974": { + "op": "JUMPDEST" + }, + "17975": { + "op": "POP" + }, + "17976": { + "op": "SWAP5" + }, + "17977": { + "op": "SWAP6" + }, + "17978": { + "op": "SWAP5" + }, + "17979": { + "op": "POP" + }, + "17980": { + "op": "POP" + }, + "17981": { + "op": "POP" + }, + "17982": { + "op": "POP" + }, + "17983": { + "op": "POP" + }, + "17984": { + "jump": "o", + "op": "JUMP" + }, + "17985": { + "op": "JUMPDEST" + }, + "17986": { + "op": "PUSH1", + "value": "0x1" + }, + "17988": { + "op": "PUSH1", + "value": "0x1" + }, + "17990": { + "op": "PUSH1", + "value": "0xA0" + }, + "17992": { + "op": "SHL" + }, + "17993": { + "op": "SUB" + }, + "17994": { + "op": "SWAP2" + }, + "17995": { + "op": "SWAP1" + }, + "17996": { + "op": "SWAP2" + }, + "17997": { + "op": "AND" + }, + "17998": { + "op": "DUP2" + }, + "17999": { + "op": "MSTORE" + }, + "18000": { + "op": "PUSH1", + "value": "0x20" + }, + "18002": { + "op": "ADD" + }, + "18003": { + "op": "SWAP1" + }, + "18004": { + "jump": "o", + "op": "JUMP" + }, + "18005": { + "op": "JUMPDEST" + }, + "18006": { + "op": "PUSH1", + "value": "0x1" + }, + "18008": { + "op": "PUSH1", + "value": "0x1" + }, + "18010": { + "op": "PUSH1", + "value": "0xA0" + }, + "18012": { + "op": "SHL" + }, + "18013": { + "op": "SUB" + }, + "18014": { + "op": "DUP6" + }, + "18015": { + "op": "DUP2" + }, + "18016": { + "op": "AND" + }, + "18017": { + "op": "DUP3" + }, + "18018": { + "op": "MSTORE" + }, + "18019": { + "op": "DUP5" + }, + "18020": { + "op": "AND" + }, + "18021": { + "op": "PUSH1", + "value": "0x20" + }, + "18023": { + "op": "DUP3" + }, + "18024": { + "op": "ADD" + }, + "18025": { + "op": "MSTORE" + }, + "18026": { + "op": "PUSH1", + "value": "0x60" + }, + "18028": { + "op": "PUSH1", + "value": "0x40" + }, + "18030": { + "op": "DUP3" + }, + "18031": { + "op": "ADD" + }, + "18032": { + "op": "DUP2" + }, + "18033": { + "op": "SWAP1" + }, + "18034": { + "op": "MSTORE" + }, + "18035": { + "op": "DUP2" + }, + "18036": { + "op": "ADD" + }, + "18037": { + "op": "DUP3" + }, + "18038": { + "op": "SWAP1" + }, + "18039": { + "op": "MSTORE" + }, + "18040": { + "op": "PUSH1", + "value": "0x0" + }, + "18042": { + "op": "DUP3" + }, + "18043": { + "op": "DUP5" + }, + "18044": { + "op": "PUSH1", + "value": "0x80" + }, + "18046": { + "op": "DUP5" + }, + "18047": { + "op": "ADD" + }, + "18048": { + "op": "CALLDATACOPY" + }, + "18049": { + "op": "DUP2" + }, + "18050": { + "op": "DUP4" + }, + "18051": { + "op": "ADD" + }, + "18052": { + "op": "PUSH1", + "value": "0x80" + }, + "18054": { + "op": "SWAP1" + }, + "18055": { + "op": "DUP2" + }, + "18056": { + "op": "ADD" + }, + "18057": { + "op": "SWAP2" + }, + "18058": { + "op": "SWAP1" + }, + "18059": { + "op": "SWAP2" + }, + "18060": { + "op": "MSTORE" + }, + "18061": { + "op": "PUSH1", + "value": "0x1F" + }, + "18063": { + "op": "SWAP1" + }, + "18064": { + "op": "SWAP3" + }, + "18065": { + "op": "ADD" + }, + "18066": { + "op": "PUSH1", + "value": "0x1F" + }, + "18068": { + "op": "NOT" + }, + "18069": { + "op": "AND" + }, + "18070": { + "op": "ADD" + }, + "18071": { + "op": "ADD" + }, + "18072": { + "op": "SWAP4" + }, + "18073": { + "op": "SWAP3" + }, + "18074": { + "op": "POP" + }, + "18075": { + "op": "POP" + }, + "18076": { + "op": "POP" + }, + "18077": { + "jump": "o", + "op": "JUMP" + }, + "18078": { + "op": "JUMPDEST" + }, + "18079": { + "op": "PUSH1", + "value": "0x1" + }, + "18081": { + "op": "PUSH1", + "value": "0x1" + }, + "18083": { + "op": "PUSH1", + "value": "0xA0" + }, + "18085": { + "op": "SHL" + }, + "18086": { + "op": "SUB" + }, + "18087": { + "op": "SWAP7" + }, + "18088": { + "op": "DUP8" + }, + "18089": { + "op": "AND" + }, + "18090": { + "op": "DUP2" + }, + "18091": { + "op": "MSTORE" + }, + "18092": { + "op": "SWAP5" + }, + "18093": { + "op": "DUP7" + }, + "18094": { + "op": "AND" + }, + "18095": { + "op": "PUSH1", + "value": "0x20" + }, + "18097": { + "op": "DUP7" + }, + "18098": { + "op": "ADD" + }, + "18099": { + "op": "MSTORE" + }, + "18100": { + "op": "SWAP3" + }, + "18101": { + "op": "DUP6" + }, + "18102": { + "op": "AND" + }, + "18103": { + "op": "PUSH1", + "value": "0x40" + }, + "18105": { + "op": "DUP6" + }, + "18106": { + "op": "ADD" + }, + "18107": { + "op": "MSTORE" + }, + "18108": { + "op": "SWAP1" + }, + "18109": { + "op": "DUP5" + }, + "18110": { + "op": "AND" + }, + "18111": { + "op": "PUSH1", + "value": "0x60" + }, + "18113": { + "op": "DUP5" + }, + "18114": { + "op": "ADD" + }, + "18115": { + "op": "MSTORE" + }, + "18116": { + "op": "DUP4" + }, + "18117": { + "op": "AND" + }, + "18118": { + "op": "PUSH1", + "value": "0x80" + }, + "18120": { + "op": "DUP4" + }, + "18121": { + "op": "ADD" + }, + "18122": { + "op": "MSTORE" + }, + "18123": { + "op": "SWAP1" + }, + "18124": { + "op": "SWAP2" + }, + "18125": { + "op": "AND" + }, + "18126": { + "op": "PUSH1", + "value": "0xA0" + }, + "18128": { + "op": "DUP3" + }, + "18129": { + "op": "ADD" + }, + "18130": { + "op": "MSTORE" + }, + "18131": { + "op": "PUSH1", + "value": "0xC0" + }, + "18133": { + "op": "ADD" + }, + "18134": { + "op": "SWAP1" + }, + "18135": { + "jump": "o", + "op": "JUMP" + }, + "18136": { + "op": "JUMPDEST" + }, + "18137": { + "op": "PUSH1", + "value": "0x1" + }, + "18139": { + "op": "PUSH1", + "value": "0x1" + }, + "18141": { + "op": "PUSH1", + "value": "0xA0" + }, + "18143": { + "op": "SHL" + }, + "18144": { + "op": "SUB" + }, + "18145": { + "op": "SWAP3" + }, + "18146": { + "op": "SWAP1" + }, + "18147": { + "op": "SWAP3" + }, + "18148": { + "op": "AND" + }, + "18149": { + "op": "DUP3" + }, + "18150": { + "op": "MSTORE" + }, + "18151": { + "op": "DUP1" + }, + "18152": { + "op": "MLOAD" + }, + "18153": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "18159": { + "op": "AND" + }, + "18160": { + "op": "PUSH1", + "value": "0x20" + }, + "18162": { + "op": "DUP1" + }, + "18163": { + "op": "DUP5" + }, + "18164": { + "op": "ADD" + }, + "18165": { + "op": "SWAP2" + }, + "18166": { + "op": "SWAP1" + }, + "18167": { + "op": "SWAP2" + }, + "18168": { + "op": "MSTORE" + }, + "18169": { + "op": "DUP2" + }, + "18170": { + "op": "ADD" + }, + "18171": { + "op": "MLOAD" + }, + "18172": { + "op": "PUSH1", + "value": "0x1" + }, + "18174": { + "op": "PUSH1", + "value": "0x1" + }, + "18176": { + "op": "PUSH1", + "value": "0xF8" + }, + "18178": { + "op": "SHL" + }, + "18179": { + "op": "SUB" + }, + "18180": { + "op": "NOT" + }, + "18181": { + "op": "AND" + }, + "18182": { + "op": "PUSH1", + "value": "0x40" + }, + "18184": { + "op": "DUP1" + }, + "18185": { + "op": "DUP5" + }, + "18186": { + "op": "ADD" + }, + "18187": { + "op": "SWAP2" + }, + "18188": { + "op": "SWAP1" + }, + "18189": { + "op": "SWAP2" + }, + "18190": { + "op": "MSTORE" + }, + "18191": { + "op": "DUP2" + }, + "18192": { + "op": "ADD" + }, + "18193": { + "op": "MLOAD" + }, + "18194": { + "op": "PUSH1", + "value": "0xFF" + }, + "18196": { + "op": "AND" + }, + "18197": { + "op": "PUSH1", + "value": "0x60" + }, + "18199": { + "op": "DUP1" + }, + "18200": { + "op": "DUP5" + }, + "18201": { + "op": "ADD" + }, + "18202": { + "op": "SWAP2" + }, + "18203": { + "op": "SWAP1" + }, + "18204": { + "op": "SWAP2" + }, + "18205": { + "op": "MSTORE" + }, + "18206": { + "op": "DUP2" + }, + "18207": { + "op": "ADD" + }, + "18208": { + "op": "MLOAD" + }, + "18209": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "18212": { + "op": "AND" + }, + "18213": { + "op": "PUSH1", + "value": "0x80" + }, + "18215": { + "op": "DUP1" + }, + "18216": { + "op": "DUP5" + }, + "18217": { + "op": "ADD" + }, + "18218": { + "op": "SWAP2" + }, + "18219": { + "op": "SWAP1" + }, + "18220": { + "op": "SWAP2" + }, + "18221": { + "op": "MSTORE" + }, + "18222": { + "op": "ADD" + }, + "18223": { + "op": "MLOAD" + }, + "18224": { + "op": "PUSH1", + "value": "0x1" + }, + "18226": { + "op": "PUSH1", + "value": "0x1" + }, + "18228": { + "op": "PUSH1", + "value": "0x70" + }, + "18230": { + "op": "SHL" + }, + "18231": { + "op": "SUB" + }, + "18232": { + "op": "NOT" + }, + "18233": { + "op": "AND" + }, + "18234": { + "op": "PUSH1", + "value": "0xA0" + }, + "18236": { + "op": "DUP3" + }, + "18237": { + "op": "ADD" + }, + "18238": { + "op": "MSTORE" + }, + "18239": { + "op": "PUSH1", + "value": "0xC0" + }, + "18241": { + "op": "ADD" + }, + "18242": { + "op": "SWAP1" + }, + "18243": { + "jump": "o", + "op": "JUMP" + }, + "18244": { + "op": "JUMPDEST" + }, + "18245": { + "op": "PUSH1", + "value": "0x0" + }, + "18247": { + "op": "PUSH1", + "value": "0x1" + }, + "18249": { + "op": "DUP1" + }, + "18250": { + "op": "PUSH1", + "value": "0xA0" + }, + "18252": { + "op": "SHL" + }, + "18253": { + "op": "SUB" + }, + "18254": { + "op": "DUP8" + }, + "18255": { + "op": "AND" + }, + "18256": { + "op": "DUP3" + }, + "18257": { + "op": "MSTORE" + }, + "18258": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "18261": { + "op": "DUP7" + }, + "18262": { + "op": "AND" + }, + "18263": { + "op": "PUSH1", + "value": "0x20" + }, + "18265": { + "op": "DUP4" + }, + "18266": { + "op": "ADD" + }, + "18267": { + "op": "MSTORE" + }, + "18268": { + "op": "PUSH1", + "value": "0x80" + }, + "18270": { + "op": "PUSH1", + "value": "0x40" + }, + "18272": { + "op": "DUP4" + }, + "18273": { + "op": "ADD" + }, + "18274": { + "op": "MSTORE" + }, + "18275": { + "op": "DUP5" + }, + "18276": { + "op": "MLOAD" + }, + "18277": { + "op": "PUSH1", + "value": "0x80" + }, + "18279": { + "op": "DUP1" + }, + "18280": { + "op": "DUP5" + }, + "18281": { + "op": "ADD" + }, + "18282": { + "op": "MSTORE" + }, + "18283": { + "op": "PUSH2", + "value": "0x4778" + }, + "18286": { + "op": "PUSH2", + "value": "0x100" + }, + "18289": { + "op": "DUP5" + }, + "18290": { + "op": "ADD" + }, + "18291": { + "op": "DUP3" + }, + "18292": { + "op": "PUSH2", + "value": "0x45C9" + }, + "18295": { + "jump": "i", + "op": "JUMP" + }, + "18296": { + "op": "JUMPDEST" + }, + "18297": { + "op": "SWAP1" + }, + "18298": { + "op": "POP" + }, + "18299": { + "op": "PUSH1", + "value": "0x20" + }, + "18301": { + "op": "DUP7" + }, + "18302": { + "op": "ADD" + }, + "18303": { + "op": "MLOAD" + }, + "18304": { + "op": "PUSH1", + "value": "0x7F" + }, + "18306": { + "op": "NOT" + }, + "18307": { + "op": "DUP5" + }, + "18308": { + "op": "DUP4" + }, + "18309": { + "op": "SUB" + }, + "18310": { + "op": "ADD" + }, + "18311": { + "op": "PUSH1", + "value": "0xA0" + }, + "18313": { + "op": "DUP6" + }, + "18314": { + "op": "ADD" + }, + "18315": { + "op": "MSTORE" + }, + "18316": { + "op": "PUSH2", + "value": "0x4795" + }, + "18319": { + "op": "DUP3" + }, + "18320": { + "op": "DUP3" + }, + "18321": { + "op": "PUSH2", + "value": "0x45C9" + }, + "18324": { + "jump": "i", + "op": "JUMP" + }, + "18325": { + "op": "JUMPDEST" + }, + "18326": { + "op": "SWAP2" + }, + "18327": { + "op": "POP" + }, + "18328": { + "op": "POP" + }, + "18329": { + "op": "PUSH1", + "value": "0x40" + }, + "18331": { + "op": "DUP7" + }, + "18332": { + "op": "ADD" + }, + "18333": { + "op": "MLOAD" + }, + "18334": { + "op": "PUSH1", + "value": "0xC0" + }, + "18336": { + "op": "DUP5" + }, + "18337": { + "op": "ADD" + }, + "18338": { + "op": "MSTORE" + }, + "18339": { + "op": "PUSH1", + "value": "0x60" + }, + "18341": { + "op": "DUP7" + }, + "18342": { + "op": "ADD" + }, + "18343": { + "op": "MLOAD" + }, + "18344": { + "op": "PUSH1", + "value": "0xE0" + }, + "18346": { + "op": "DUP5" + }, + "18347": { + "op": "ADD" + }, + "18348": { + "op": "MSTORE" + }, + "18349": { + "op": "DUP3" + }, + "18350": { + "op": "DUP2" + }, + "18351": { + "op": "SUB" + }, + "18352": { + "op": "PUSH1", + "value": "0x60" + }, + "18354": { + "op": "DUP5" + }, + "18355": { + "op": "ADD" + }, + "18356": { + "op": "MSTORE" + }, + "18357": { + "op": "PUSH2", + "value": "0x47BF" + }, + "18360": { + "op": "DUP2" + }, + "18361": { + "op": "DUP6" + }, + "18362": { + "op": "DUP8" + }, + "18363": { + "op": "PUSH2", + "value": "0x4595" + }, + "18366": { + "jump": "i", + "op": "JUMP" + }, + "18367": { + "op": "JUMPDEST" + }, + "18368": { + "op": "SWAP9" + }, + "18369": { + "op": "SWAP8" + }, + "18370": { + "op": "POP" + }, + "18371": { + "op": "POP" + }, + "18372": { + "op": "POP" + }, + "18373": { + "op": "POP" + }, + "18374": { + "op": "POP" + }, + "18375": { + "op": "POP" + }, + "18376": { + "op": "POP" + }, + "18377": { + "op": "POP" + }, + "18378": { + "jump": "o", + "op": "JUMP" + }, + "18379": { + "op": "JUMPDEST" + }, + "18380": { + "op": "PUSH1", + "value": "0x1" + }, + "18382": { + "op": "PUSH1", + "value": "0x1" + }, + "18384": { + "op": "PUSH1", + "value": "0xA0" + }, + "18386": { + "op": "SHL" + }, + "18387": { + "op": "SUB" + }, + "18388": { + "op": "DUP7" + }, + "18389": { + "op": "AND" + }, + "18390": { + "op": "DUP2" + }, + "18391": { + "op": "MSTORE" + }, + "18392": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "18395": { + "op": "DUP6" + }, + "18396": { + "op": "AND" + }, + "18397": { + "op": "PUSH1", + "value": "0x20" + }, + "18399": { + "op": "DUP3" + }, + "18400": { + "op": "ADD" + }, + "18401": { + "op": "MSTORE" + }, + "18402": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "18408": { + "op": "DUP5" + }, + "18409": { + "op": "AND" + }, + "18410": { + "op": "PUSH1", + "value": "0x40" + }, + "18412": { + "op": "DUP3" + }, + "18413": { + "op": "ADD" + }, + "18414": { + "op": "MSTORE" + }, + "18415": { + "op": "PUSH1", + "value": "0x80" + }, + "18417": { + "op": "PUSH1", + "value": "0x60" + }, + "18419": { + "op": "DUP3" + }, + "18420": { + "op": "ADD" + }, + "18421": { + "op": "DUP2" + }, + "18422": { + "op": "SWAP1" + }, + "18423": { + "op": "MSTORE" + }, + "18424": { + "op": "PUSH1", + "value": "0x0" + }, + "18426": { + "op": "SWAP1" + }, + "18427": { + "op": "PUSH2", + "value": "0x1DEF" + }, + "18430": { + "op": "SWAP1" + }, + "18431": { + "op": "DUP4" + }, + "18432": { + "op": "ADD" + }, + "18433": { + "op": "DUP5" + }, + "18434": { + "op": "DUP7" + }, + "18435": { + "op": "PUSH2", + "value": "0x4595" + }, + "18438": { + "jump": "i", + "op": "JUMP" + }, + "18439": { + "op": "JUMPDEST" + }, + "18440": { + "op": "PUSH1", + "value": "0x1" + }, + "18442": { + "op": "PUSH1", + "value": "0x1" + }, + "18444": { + "op": "PUSH1", + "value": "0xA0" + }, + "18446": { + "op": "SHL" + }, + "18447": { + "op": "SUB" + }, + "18448": { + "op": "SWAP4" + }, + "18449": { + "op": "DUP5" + }, + "18450": { + "op": "AND" + }, + "18451": { + "op": "DUP2" + }, + "18452": { + "op": "MSTORE" + }, + "18453": { + "op": "PUSH1", + "value": "0x20" + }, + "18455": { + "op": "DUP2" + }, + "18456": { + "op": "ADD" + }, + "18457": { + "op": "SWAP3" + }, + "18458": { + "op": "SWAP1" + }, + "18459": { + "op": "SWAP3" + }, + "18460": { + "op": "MSTORE" + }, + "18461": { + "op": "SWAP1" + }, + "18462": { + "op": "SWAP2" + }, + "18463": { + "op": "AND" + }, + "18464": { + "op": "PUSH1", + "value": "0x40" + }, + "18466": { + "op": "DUP3" + }, + "18467": { + "op": "ADD" + }, + "18468": { + "op": "MSTORE" + }, + "18469": { + "op": "PUSH1", + "value": "0x60" + }, + "18471": { + "op": "ADD" + }, + "18472": { + "op": "SWAP1" + }, + "18473": { + "jump": "o", + "op": "JUMP" + }, + "18474": { + "op": "JUMPDEST" + }, + "18475": { + "op": "PUSH1", + "value": "0x1" + }, + "18477": { + "op": "PUSH1", + "value": "0x1" + }, + "18479": { + "op": "PUSH1", + "value": "0xA0" + }, + "18481": { + "op": "SHL" + }, + "18482": { + "op": "SUB" + }, + "18483": { + "op": "SWAP5" + }, + "18484": { + "op": "DUP6" + }, + "18485": { + "op": "AND" + }, + "18486": { + "op": "DUP2" + }, + "18487": { + "op": "MSTORE" + }, + "18488": { + "op": "PUSH1", + "value": "0x20" + }, + "18490": { + "op": "DUP2" + }, + "18491": { + "op": "ADD" + }, + "18492": { + "op": "SWAP4" + }, + "18493": { + "op": "SWAP1" + }, + "18494": { + "op": "SWAP4" + }, + "18495": { + "op": "MSTORE" + }, + "18496": { + "op": "SWAP3" + }, + "18497": { + "op": "AND" + }, + "18498": { + "op": "PUSH1", + "value": "0x40" + }, + "18500": { + "op": "DUP3" + }, + "18501": { + "op": "ADD" + }, + "18502": { + "op": "MSTORE" + }, + "18503": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "18506": { + "op": "SWAP1" + }, + "18507": { + "op": "SWAP2" + }, + "18508": { + "op": "AND" + }, + "18509": { + "op": "PUSH1", + "value": "0x60" + }, + "18511": { + "op": "DUP3" + }, + "18512": { + "op": "ADD" + }, + "18513": { + "op": "MSTORE" + }, + "18514": { + "op": "PUSH1", + "value": "0x80" + }, + "18516": { + "op": "ADD" + }, + "18517": { + "op": "SWAP1" + }, + "18518": { + "jump": "o", + "op": "JUMP" + }, + "18519": { + "op": "JUMPDEST" + }, + "18520": { + "op": "PUSH1", + "value": "0x1" + }, + "18522": { + "op": "PUSH1", + "value": "0x1" + }, + "18524": { + "op": "PUSH1", + "value": "0xA0" + }, + "18526": { + "op": "SHL" + }, + "18527": { + "op": "SUB" + }, + "18528": { + "op": "SWAP6" + }, + "18529": { + "op": "SWAP1" + }, + "18530": { + "op": "SWAP6" + }, + "18531": { + "op": "AND" + }, + "18532": { + "op": "DUP6" + }, + "18533": { + "op": "MSTORE" + }, + "18534": { + "op": "PUSH1", + "value": "0x20" + }, + "18536": { + "op": "DUP6" + }, + "18537": { + "op": "ADD" + }, + "18538": { + "op": "SWAP4" + }, + "18539": { + "op": "SWAP1" + }, + "18540": { + "op": "SWAP4" + }, + "18541": { + "op": "MSTORE" + }, + "18542": { + "op": "PUSH1", + "value": "0x40" + }, + "18544": { + "op": "DUP5" + }, + "18545": { + "op": "ADD" + }, + "18546": { + "op": "SWAP2" + }, + "18547": { + "op": "SWAP1" + }, + "18548": { + "op": "SWAP2" + }, + "18549": { + "op": "MSTORE" + }, + "18550": { + "op": "PUSH1", + "value": "0x60" + }, + "18552": { + "op": "DUP4" + }, + "18553": { + "op": "ADD" + }, + "18554": { + "op": "MSTORE" + }, + "18555": { + "op": "PUSH1", + "value": "0x80" + }, + "18557": { + "op": "DUP3" + }, + "18558": { + "op": "ADD" + }, + "18559": { + "op": "MSTORE" + }, + "18560": { + "op": "PUSH1", + "value": "0xA0" + }, + "18562": { + "op": "ADD" + }, + "18563": { + "op": "SWAP1" + }, + "18564": { + "jump": "o", + "op": "JUMP" + }, + "18565": { + "op": "JUMPDEST" + }, + "18566": { + "op": "PUSH1", + "value": "0x1" + }, + "18568": { + "op": "PUSH1", + "value": "0x1" + }, + "18570": { + "op": "PUSH1", + "value": "0xA0" + }, + "18572": { + "op": "SHL" + }, + "18573": { + "op": "SUB" + }, + "18574": { + "op": "SWAP5" + }, + "18575": { + "op": "SWAP1" + }, + "18576": { + "op": "SWAP5" + }, + "18577": { + "op": "AND" + }, + "18578": { + "op": "DUP5" + }, + "18579": { + "op": "MSTORE" + }, + "18580": { + "op": "PUSH1", + "value": "0x20" + }, + "18582": { + "op": "DUP5" + }, + "18583": { + "op": "ADD" + }, + "18584": { + "op": "SWAP3" + }, + "18585": { + "op": "SWAP1" + }, + "18586": { + "op": "SWAP3" + }, + "18587": { + "op": "MSTORE" + }, + "18588": { + "op": "PUSH1", + "value": "0x40" + }, + "18590": { + "op": "DUP4" + }, + "18591": { + "op": "ADD" + }, + "18592": { + "op": "MSTORE" + }, + "18593": { + "op": "PUSH1", + "value": "0x60" + }, + "18595": { + "op": "DUP3" + }, + "18596": { + "op": "ADD" + }, + "18597": { + "op": "MSTORE" + }, + "18598": { + "op": "PUSH1", + "value": "0x80" + }, + "18600": { + "op": "ADD" + }, + "18601": { + "op": "SWAP1" + }, + "18602": { + "jump": "o", + "op": "JUMP" + }, + "18603": { + "op": "JUMPDEST" + }, + "18604": { + "op": "SWAP1" + }, + "18605": { + "op": "DUP2" + }, + "18606": { + "op": "MSTORE" + }, + "18607": { + "op": "PUSH1", + "value": "0x20" + }, + "18609": { + "op": "ADD" + }, + "18610": { + "op": "SWAP1" + }, + "18611": { + "jump": "o", + "op": "JUMP" + }, + "18612": { + "op": "JUMPDEST" + }, + "18613": { + "op": "PUSH1", + "value": "0x20" + }, + "18615": { + "op": "DUP1" + }, + "18616": { + "op": "DUP3" + }, + "18617": { + "op": "MSTORE" + }, + "18618": { + "op": "PUSH1", + "value": "0xC" + }, + "18620": { + "op": "SWAP1" + }, + "18621": { + "op": "DUP3" + }, + "18622": { + "op": "ADD" + }, + "18623": { + "op": "MSTORE" + }, + "18624": { + "op": "PUSH12", + "value": "0x155B985D5D1A1BDC9A5E9959" + }, + "18637": { + "op": "PUSH1", + "value": "0xA2" + }, + "18639": { + "op": "SHL" + }, + "18640": { + "op": "PUSH1", + "value": "0x40" + }, + "18642": { + "op": "DUP3" + }, + "18643": { + "op": "ADD" + }, + "18644": { + "op": "MSTORE" + }, + "18645": { + "op": "PUSH1", + "value": "0x60" + }, + "18647": { + "op": "ADD" + }, + "18648": { + "op": "SWAP1" + }, + "18649": { + "jump": "o", + "op": "JUMP" + }, + "18650": { + "op": "JUMPDEST" + }, + "18651": { + "op": "PUSH1", + "value": "0x20" + }, + "18653": { + "op": "DUP1" + }, + "18654": { + "op": "DUP3" + }, + "18655": { + "op": "MSTORE" + }, + "18656": { + "op": "PUSH1", + "value": "0x4" + }, + "18658": { + "op": "SWAP1" + }, + "18659": { + "op": "DUP3" + }, + "18660": { + "op": "ADD" + }, + "18661": { + "op": "MSTORE" + }, + "18662": { + "op": "PUSH4", + "value": "0x135A5B9D" + }, + "18667": { + "op": "PUSH1", + "value": "0xE2" + }, + "18669": { + "op": "SHL" + }, + "18670": { + "op": "PUSH1", + "value": "0x40" + }, + "18672": { + "op": "DUP3" + }, + "18673": { + "op": "ADD" + }, + "18674": { + "op": "MSTORE" + }, + "18675": { + "op": "PUSH1", + "value": "0x60" + }, + "18677": { + "op": "ADD" + }, + "18678": { + "op": "SWAP1" + }, + "18679": { + "jump": "o", + "op": "JUMP" + }, + "18680": { + "op": "JUMPDEST" + }, + "18681": { + "op": "PUSH1", + "value": "0x20" + }, + "18683": { + "op": "DUP1" + }, + "18684": { + "op": "DUP3" + }, + "18685": { + "op": "MSTORE" + }, + "18686": { + "op": "PUSH1", + "value": "0xB" + }, + "18688": { + "op": "SWAP1" + }, + "18689": { + "op": "DUP3" + }, + "18690": { + "op": "ADD" + }, + "18691": { + "op": "MSTORE" + }, + "18692": { + "op": "PUSH11", + "value": "0x4554482042616C616E6365" + }, + "18704": { + "op": "PUSH1", + "value": "0xA8" + }, + "18706": { + "op": "SHL" + }, + "18707": { + "op": "PUSH1", + "value": "0x40" + }, + "18709": { + "op": "DUP3" + }, + "18710": { + "op": "ADD" + }, + "18711": { + "op": "MSTORE" + }, + "18712": { + "op": "PUSH1", + "value": "0x60" + }, + "18714": { + "op": "ADD" + }, + "18715": { + "op": "SWAP1" + }, + "18716": { + "jump": "o", + "op": "JUMP" + }, + "18717": { + "op": "JUMPDEST" + }, + "18718": { + "op": "PUSH1", + "value": "0x20" + }, + "18720": { + "op": "DUP1" + }, + "18721": { + "op": "DUP3" + }, + "18722": { + "op": "MSTORE" + }, + "18723": { + "op": "PUSH1", + "value": "0x6" + }, + "18725": { + "op": "SWAP1" + }, + "18726": { + "op": "DUP3" + }, + "18727": { + "op": "ADD" + }, + "18728": { + "op": "MSTORE" + }, + "18729": { + "op": "PUSH6", + "value": "0x52656465656D" + }, + "18736": { + "op": "PUSH1", + "value": "0xD0" + }, + "18738": { + "op": "SHL" + }, + "18739": { + "op": "PUSH1", + "value": "0x40" + }, + "18741": { + "op": "DUP3" + }, + "18742": { + "op": "ADD" + }, + "18743": { + "op": "MSTORE" + }, + "18744": { + "op": "PUSH1", + "value": "0x60" + }, + "18746": { + "op": "ADD" + }, + "18747": { + "op": "SWAP1" + }, + "18748": { + "jump": "o", + "op": "JUMP" + }, + "18749": { + "op": "JUMPDEST" + }, + "18750": { + "op": "PUSH1", + "value": "0x20" + }, + "18752": { + "op": "DUP1" + }, + "18753": { + "op": "DUP3" + }, + "18754": { + "op": "MSTORE" + }, + "18755": { + "op": "PUSH1", + "value": "0xD" + }, + "18757": { + "op": "SWAP1" + }, + "18758": { + "op": "DUP3" + }, + "18759": { + "op": "ADD" + }, + "18760": { + "op": "MSTORE" + }, + "18761": { + "op": "PUSH13", + "value": "0x92DCECC2D8D2C840D2DCC8CAF" + }, + "18775": { + "op": "PUSH1", + "value": "0x9B" + }, + "18777": { + "op": "SHL" + }, + "18778": { + "op": "PUSH1", + "value": "0x40" + }, + "18780": { + "op": "DUP3" + }, + "18781": { + "op": "ADD" + }, + "18782": { + "op": "MSTORE" + }, + "18783": { + "op": "PUSH1", + "value": "0x60" + }, + "18785": { + "op": "ADD" + }, + "18786": { + "op": "SWAP1" + }, + "18787": { + "jump": "o", + "op": "JUMP" + }, + "18788": { + "op": "JUMPDEST" + }, + "18789": { + "op": "PUSH1", + "value": "0x20" + }, + "18791": { + "op": "DUP1" + }, + "18792": { + "op": "DUP3" + }, + "18793": { + "op": "MSTORE" + }, + "18794": { + "op": "PUSH1", + "value": "0x10" + }, + "18796": { + "op": "SWAP1" + }, + "18797": { + "op": "DUP3" + }, + "18798": { + "op": "ADD" + }, + "18799": { + "op": "MSTORE" + }, + "18800": { + "op": "PUSH16", + "value": "0x556E736F7274656420616374696F6E73" + }, + "18817": { + "op": "PUSH1", + "value": "0x80" + }, + "18819": { + "op": "SHL" + }, + "18820": { + "op": "PUSH1", + "value": "0x40" + }, + "18822": { + "op": "DUP3" + }, + "18823": { + "op": "ADD" + }, + "18824": { + "op": "MSTORE" + }, + "18825": { + "op": "PUSH1", + "value": "0x60" + }, + "18827": { + "op": "ADD" + }, + "18828": { + "op": "SWAP1" + }, + "18829": { + "jump": "o", + "op": "JUMP" + }, + "18830": { + "op": "JUMPDEST" + }, + "18831": { + "op": "PUSH1", + "value": "0x20" + }, + "18833": { + "op": "DUP1" + }, + "18834": { + "op": "DUP3" + }, + "18835": { + "op": "MSTORE" + }, + "18836": { + "op": "PUSH1", + "value": "0x1A" + }, + "18838": { + "op": "SWAP1" + }, + "18839": { + "op": "DUP3" + }, + "18840": { + "op": "ADD" + }, + "18841": { + "op": "MSTORE" + }, + "18842": { + "op": "PUSH32", + "value": "0x496E73756666696369656E7420746F6B656E2062616C616E6365000000000000" + }, + "18875": { + "op": "PUSH1", + "value": "0x40" + }, + "18877": { + "op": "DUP3" + }, + "18878": { + "op": "ADD" + }, + "18879": { + "op": "MSTORE" + }, + "18880": { + "op": "PUSH1", + "value": "0x60" + }, + "18882": { + "op": "ADD" + }, + "18883": { + "op": "SWAP1" + }, + "18884": { + "jump": "o", + "op": "JUMP" + }, + "18885": { + "op": "JUMPDEST" + }, + "18886": { + "op": "PUSH1", + "value": "0x20" + }, + "18888": { + "op": "DUP1" + }, + "18889": { + "op": "DUP3" + }, + "18890": { + "op": "MSTORE" + }, + "18891": { + "op": "PUSH1", + "value": "0xE" + }, + "18893": { + "op": "SWAP1" + }, + "18894": { + "op": "DUP3" + }, + "18895": { + "op": "ADD" + }, + "18896": { + "op": "MSTORE" + }, + "18897": { + "op": "PUSH14", + "value": "0x1499595B9D1C985B9D0818D85B1B" + }, + "18912": { + "op": "PUSH1", + "value": "0x92" + }, + "18914": { + "op": "SHL" + }, + "18915": { + "op": "PUSH1", + "value": "0x40" + }, + "18917": { + "op": "DUP3" + }, + "18918": { + "op": "ADD" + }, + "18919": { + "op": "MSTORE" + }, + "18920": { + "op": "PUSH1", + "value": "0x60" + }, + "18922": { + "op": "ADD" + }, + "18923": { + "op": "SWAP1" + }, + "18924": { + "jump": "o", + "op": "JUMP" + }, + "18925": { + "op": "JUMPDEST" + }, + "18926": { + "op": "PUSH1", + "value": "0x20" + }, + "18928": { + "op": "DUP1" + }, + "18929": { + "op": "DUP3" + }, + "18930": { + "op": "MSTORE" + }, + "18931": { + "op": "PUSH1", + "value": "0x8" + }, + "18933": { + "op": "SWAP1" + }, + "18934": { + "op": "DUP3" + }, + "18935": { + "op": "ADD" + }, + "18936": { + "op": "MSTORE" + }, + "18937": { + "op": "PUSH8", + "value": "0x9CCACE4086C2E6D" + }, + "18946": { + "op": "PUSH1", + "value": "0xC3" + }, + "18948": { + "op": "SHL" + }, + "18949": { + "op": "PUSH1", + "value": "0x40" + }, + "18951": { + "op": "DUP3" + }, + "18952": { + "op": "ADD" + }, + "18953": { + "op": "MSTORE" + }, + "18954": { + "op": "PUSH1", + "value": "0x60" + }, + "18956": { + "op": "ADD" + }, + "18957": { + "op": "SWAP1" + }, + "18958": { + "jump": "o", + "op": "JUMP" + }, + "18959": { + "op": "JUMPDEST" + }, + "18960": { + "op": "PUSH1", + "value": "0x20" + }, + "18962": { + "op": "DUP1" + }, + "18963": { + "op": "DUP3" + }, + "18964": { + "op": "MSTORE" + }, + "18965": { + "op": "PUSH1", + "value": "0x1A" + }, + "18967": { + "op": "SWAP1" + }, + "18968": { + "op": "DUP3" + }, + "18969": { + "op": "ADD" + }, + "18970": { + "op": "MSTORE" + }, + "18971": { + "op": "PUSH32", + "value": "0x496E76616C69642074726164657320666F72206163636F756E74000000000000" + }, + "19004": { + "op": "PUSH1", + "value": "0x40" + }, + "19006": { + "op": "DUP3" + }, + "19007": { + "op": "ADD" + }, + "19008": { + "op": "MSTORE" + }, + "19009": { + "op": "PUSH1", + "value": "0x60" + }, + "19011": { + "op": "ADD" + }, + "19012": { + "op": "SWAP1" + }, + "19013": { + "jump": "o", + "op": "JUMP" + }, + "19014": { + "op": "JUMPDEST" + }, + "19015": { + "op": "PUSH1", + "value": "0x20" + }, + "19017": { + "op": "DUP1" + }, + "19018": { + "op": "DUP3" + }, + "19019": { + "op": "MSTORE" + }, + "19020": { + "op": "PUSH1", + "value": "0xA" + }, + "19022": { + "op": "SWAP1" + }, + "19023": { + "op": "DUP3" + }, + "19024": { + "op": "ADD" + }, + "19025": { + "op": "MSTORE" + }, + "19026": { + "op": "PUSH10", + "value": "0x2732B390372A37B5B2B7" + }, + "19037": { + "op": "PUSH1", + "value": "0xB1" + }, + "19039": { + "op": "SHL" + }, + "19040": { + "op": "PUSH1", + "value": "0x40" + }, + "19042": { + "op": "DUP3" + }, + "19043": { + "op": "ADD" + }, + "19044": { + "op": "MSTORE" + }, + "19045": { + "op": "PUSH1", + "value": "0x60" + }, + "19047": { + "op": "ADD" + }, + "19048": { + "op": "SWAP1" + }, + "19049": { + "jump": "o", + "op": "JUMP" + }, + "19050": { + "op": "JUMPDEST" + }, + "19051": { + "op": "PUSH1", + "value": "0x20" + }, + "19053": { + "op": "DUP1" + }, + "19054": { + "op": "DUP3" + }, + "19055": { + "op": "MSTORE" + }, + "19056": { + "op": "PUSH1", + "value": "0x11" + }, + "19058": { + "op": "SWAP1" + }, + "19059": { + "op": "DUP3" + }, + "19060": { + "op": "ADD" + }, + "19061": { + "op": "MSTORE" + }, + "19062": { + "op": "PUSH17", + "value": "0x92DCE6EACCCCD2C6D2CADCE840C6C2E6D" + }, + "19080": { + "op": "PUSH1", + "value": "0x7B" + }, + "19082": { + "op": "SHL" + }, + "19083": { + "op": "PUSH1", + "value": "0x40" + }, + "19085": { + "op": "DUP3" + }, + "19086": { + "op": "ADD" + }, + "19087": { + "op": "MSTORE" + }, + "19088": { + "op": "PUSH1", + "value": "0x60" + }, + "19090": { + "op": "ADD" + }, + "19091": { + "op": "SWAP1" + }, + "19092": { + "jump": "o", + "op": "JUMP" + }, + "19093": { + "op": "JUMPDEST" + }, + "19094": { + "op": "PUSH1", + "value": "0x20" + }, + "19096": { + "op": "DUP1" + }, + "19097": { + "op": "DUP3" + }, + "19098": { + "op": "MSTORE" + }, + "19099": { + "op": "PUSH1", + "value": "0x14" + }, + "19101": { + "op": "SWAP1" + }, + "19102": { + "op": "DUP3" + }, + "19103": { + "op": "ADD" + }, + "19104": { + "op": "MSTORE" + }, + "19105": { + "op": "PUSH20", + "value": "0x125B9CDD59999A58DA595B9D0819195C1BDCDA5D" + }, + "19126": { + "op": "PUSH1", + "value": "0x62" + }, + "19128": { + "op": "SHL" + }, + "19129": { + "op": "PUSH1", + "value": "0x40" + }, + "19131": { + "op": "DUP3" + }, + "19132": { + "op": "ADD" + }, + "19133": { + "op": "MSTORE" + }, + "19134": { + "op": "PUSH1", + "value": "0x60" + }, + "19136": { + "op": "ADD" + }, + "19137": { + "op": "SWAP1" + }, + "19138": { + "jump": "o", + "op": "JUMP" + }, + "19139": { + "op": "JUMPDEST" + }, + "19140": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "19143": { + "op": "SWAP3" + }, + "19144": { + "op": "SWAP1" + }, + "19145": { + "op": "SWAP3" + }, + "19146": { + "op": "AND" + }, + "19147": { + "op": "DUP3" + }, + "19148": { + "op": "MSTORE" + }, + "19149": { + "op": "PUSH1", + "value": "0x20" + }, + "19151": { + "op": "DUP3" + }, + "19152": { + "op": "ADD" + }, + "19153": { + "op": "MSTORE" + }, + "19154": { + "op": "PUSH1", + "value": "0x40" + }, + "19156": { + "op": "ADD" + }, + "19157": { + "op": "SWAP1" + }, + "19158": { + "jump": "o", + "op": "JUMP" + }, + "19159": { + "op": "JUMPDEST" + }, + "19160": { + "op": "PUSH1", + "value": "0x0" + }, + "19162": { + "op": "DUP1" + }, + "19163": { + "op": "DUP4" + }, + "19164": { + "op": "CALLDATALOAD" + }, + "19165": { + "op": "PUSH1", + "value": "0x1E" + }, + "19167": { + "op": "NOT" + }, + "19168": { + "op": "DUP5" + }, + "19169": { + "op": "CALLDATASIZE" + }, + "19170": { + "op": "SUB" + }, + "19171": { + "op": "ADD" + }, + "19172": { + "op": "DUP2" + }, + "19173": { + "op": "SLT" + }, + "19174": { + "op": "PUSH2", + "value": "0x4AED" + }, + "19177": { + "op": "JUMPI" + }, + "19178": { + "op": "DUP3" + }, + "19179": { + "op": "DUP4" + }, + "19180": { + "op": "REVERT" + }, + "19181": { + "op": "JUMPDEST" + }, + "19182": { + "op": "DUP4" + }, + "19183": { + "op": "ADD" + }, + "19184": { + "op": "DUP1" + }, + "19185": { + "op": "CALLDATALOAD" + }, + "19186": { + "op": "SWAP2" + }, + "19187": { + "op": "POP" + }, + "19188": { + "op": "PUSH1", + "value": "0x1" + }, + "19190": { + "op": "PUSH1", + "value": "0x1" + }, + "19192": { + "op": "PUSH1", + "value": "0x40" + }, + "19194": { + "op": "SHL" + }, + "19195": { + "op": "SUB" + }, + "19196": { + "op": "DUP3" + }, + "19197": { + "op": "GT" + }, + "19198": { + "op": "ISZERO" + }, + "19199": { + "op": "PUSH2", + "value": "0x4B06" + }, + "19202": { + "op": "JUMPI" + }, + "19203": { + "op": "DUP3" + }, + "19204": { + "op": "DUP4" + }, + "19205": { + "op": "REVERT" + }, + "19206": { + "op": "JUMPDEST" + }, + "19207": { + "op": "PUSH1", + "value": "0x20" + }, + "19209": { + "op": "SWAP1" + }, + "19210": { + "op": "DUP2" + }, + "19211": { + "op": "ADD" + }, + "19212": { + "op": "SWAP3" + }, + "19213": { + "op": "POP" + }, + "19214": { + "op": "DUP2" + }, + "19215": { + "op": "MUL" + }, + "19216": { + "op": "CALLDATASIZE" + }, + "19217": { + "op": "SUB" + }, + "19218": { + "op": "DUP3" + }, + "19219": { + "op": "SGT" + }, + "19220": { + "op": "ISZERO" + }, + "19221": { + "op": "PUSH2", + "value": "0x40C7" + }, + "19224": { + "op": "JUMPI" + }, + "19225": { + "op": "PUSH1", + "value": "0x0" + }, + "19227": { + "op": "DUP1" + }, + "19228": { + "op": "REVERT" + }, + "19229": { + "op": "JUMPDEST" + }, + "19230": { + "op": "PUSH1", + "value": "0x0" + }, + "19232": { + "op": "DUP3" + }, + "19233": { + "op": "CALLDATALOAD" + }, + "19234": { + "op": "PUSH1", + "value": "0xDE" + }, + "19236": { + "op": "NOT" + }, + "19237": { + "op": "DUP4" + }, + "19238": { + "op": "CALLDATASIZE" + }, + "19239": { + "op": "SUB" + }, + "19240": { + "op": "ADD" + }, + "19241": { + "op": "DUP2" + }, + "19242": { + "op": "SLT" + }, + "19243": { + "op": "PUSH2", + "value": "0x4B32" + }, + "19246": { + "op": "JUMPI" + }, + "19247": { + "op": "DUP2" + }, + "19248": { + "op": "DUP3" + }, + "19249": { + "op": "REVERT" + }, + "19250": { + "op": "JUMPDEST" + }, + "19251": { + "op": "SWAP2" + }, + "19252": { + "op": "SWAP1" + }, + "19253": { + "op": "SWAP2" + }, + "19254": { + "op": "ADD" + }, + "19255": { + "op": "SWAP3" + }, + "19256": { + "op": "SWAP2" + }, + "19257": { + "op": "POP" + }, + "19258": { + "op": "POP" + }, + "19259": { + "jump": "o", + "op": "JUMP" + }, + "19260": { + "op": "JUMPDEST" + }, + "19261": { + "op": "PUSH1", + "value": "0x0" + }, + "19263": { + "op": "DUP3" + }, + "19264": { + "op": "CALLDATALOAD" + }, + "19265": { + "op": "PUSH1", + "value": "0x5E" + }, + "19267": { + "op": "NOT" + }, + "19268": { + "op": "DUP4" + }, + "19269": { + "op": "CALLDATASIZE" + }, + "19270": { + "op": "SUB" + }, + "19271": { + "op": "ADD" + }, + "19272": { + "op": "DUP2" + }, + "19273": { + "op": "SLT" + }, + "19274": { + "op": "PUSH2", + "value": "0x4B32" + }, + "19277": { + "op": "JUMPI" + }, + "19278": { + "op": "DUP2" + }, + "19279": { + "op": "DUP3" + }, + "19280": { + "op": "REVERT" + }, + "19281": { + "op": "JUMPDEST" + }, + "19282": { + "op": "PUSH1", + "value": "0x40" + }, + "19284": { + "op": "MLOAD" + }, + "19285": { + "op": "DUP2" + }, + "19286": { + "op": "DUP2" + }, + "19287": { + "op": "ADD" + }, + "19288": { + "op": "PUSH1", + "value": "0x1" + }, + "19290": { + "op": "PUSH1", + "value": "0x1" + }, + "19292": { + "op": "PUSH1", + "value": "0x40" + }, + "19294": { + "op": "SHL" + }, + "19295": { + "op": "SUB" + }, + "19296": { + "op": "DUP2" + }, + "19297": { + "op": "GT" + }, + "19298": { + "op": "DUP3" + }, + "19299": { + "op": "DUP3" + }, + "19300": { + "op": "LT" + }, + "19301": { + "op": "OR" + }, + "19302": { + "op": "ISZERO" + }, + "19303": { + "op": "PUSH2", + "value": "0x4B6C" + }, + "19306": { + "op": "JUMPI" + }, + "19307": { + "op": "INVALID" + }, + "19308": { + "op": "JUMPDEST" + }, + "19309": { + "op": "PUSH1", + "value": "0x40" + }, + "19311": { + "op": "MSTORE" + }, + "19312": { + "op": "SWAP2" + }, + "19313": { + "op": "SWAP1" + }, + "19314": { + "op": "POP" + }, + "19315": { + "jump": "o", + "op": "JUMP" + }, + "19316": { + "op": "JUMPDEST" + }, + "19317": { + "op": "DUP1" + }, + "19318": { + "op": "ISZERO" + }, + "19319": { + "op": "ISZERO" + }, + "19320": { + "op": "DUP2" + }, + "19321": { + "op": "EQ" + }, + "19322": { + "op": "PUSH2", + "value": "0x4B82" + }, + "19325": { + "op": "JUMPI" + }, + "19326": { + "op": "PUSH1", + "value": "0x0" + }, + "19328": { + "op": "DUP1" + }, + "19329": { + "op": "REVERT" + }, + "19330": { + "op": "JUMPDEST" + }, + "19331": { + "op": "POP" + }, + "19332": { + "jump": "o", + "op": "JUMP" + }, + "19333": { + "op": "JUMPDEST" + }, + "19334": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "19337": { + "op": "DUP2" + }, + "19338": { + "op": "AND" + }, + "19339": { + "op": "DUP2" + }, + "19340": { + "op": "EQ" + }, + "19341": { + "op": "PUSH2", + "value": "0x4B82" + }, + "19344": { + "op": "JUMPI" + }, + "19345": { + "op": "PUSH1", + "value": "0x0" + }, + "19347": { + "op": "DUP1" + }, + "19348": { + "op": "REVERT" + } + }, + "sha1": "6f2bae8e08cdffbb9523a8af153338729873fb66", + "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./TradingAction.sol\";\nimport \"./ActionGuards.sol\";\nimport \"./nTokenMintAction.sol\";\nimport \"./nTokenRedeemAction.sol\";\nimport \"../SettleAssetsExternal.sol\";\nimport \"../FreeCollateralExternal.sol\";\nimport \"../../math/SafeInt256.sol\";\nimport \"../../global/StorageLayoutV1.sol\";\nimport \"../../internal/balances/BalanceHandler.sol\";\nimport \"../../internal/portfolio/PortfolioHandler.sol\";\nimport \"../../internal/AccountContextHandler.sol\";\nimport \"../../../interfaces/notional/NotionalCallback.sol\";\n\ncontract BatchAction is StorageLayoutV1, ActionGuards {\n using BalanceHandler for BalanceState;\n using PortfolioHandler for PortfolioState;\n using AccountContextHandler for AccountContext;\n using AssetRate for AssetRateParameters;\n using TokenHandler for Token;\n using SafeInt256 for int256;\n\n /// @notice Executes a batch of balance transfers including minting and redeeming nTokens.\n /// @param account the account for the action\n /// @param actions array of balance actions to take, must be sorted by currency id\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange\n /// @dev auth:msg.sender auth:ERC1155\n function batchBalanceAction(address account, BalanceAction[] calldata actions)\n external\n payable\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n BalanceState memory balanceState;\n\n for (uint256 i = 0; i < actions.length; i++) {\n BalanceAction calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n\n _executeDepositAction(\n account,\n balanceState,\n action.actionType,\n action.depositActionAmount\n );\n\n _calculateWithdrawActionAndFinalize(\n account,\n accountContext,\n balanceState,\n action.withdrawAmountInternalPrecision,\n action.withdrawEntireCashBalance,\n action.redeemToUnderlying\n );\n }\n\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of balance transfers and trading actions\n /// @param account the account for the action\n /// @param actions array of balance actions with trades to take, must be sorted by currency id\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n /// @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n /// @dev auth:msg.sender auth:ERC1155\n function batchBalanceAndTradeAction(address account, BalanceActionWithTrades[] calldata actions)\n external\n payable\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n AccountContext memory accountContext = _batchBalanceAndTradeAction(account, actions);\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of lending actions. This is different from batchBalanceAndTrade because\n /// it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces\n /// the gas costs for lending because there is no second token transfer where residual balances are sent\n /// back to the account.\n /// @dev Note that this method does not work with native ETH because it requires the ability to pull payment\n /// from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.\n /// @param account the account for the action\n /// @param actions array of batch lending actions\n /// @dev emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebt\n /// @dev auth:msg.sender auth:ERC1155\n function batchLend(address account, BatchLend[] calldata actions)\n external\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n // NOTE: loading the portfolio state must happen after settle account to get the\n // correct portfolio, it will have changed if the account is settled.\n PortfolioState memory portfolioState = PortfolioHandler.buildPortfolioState(\n account,\n accountContext.assetArrayLength,\n 0\n );\n BalanceState memory balanceState;\n\n for (uint256 i = 0; i < actions.length; i++) {\n BatchLend calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n\n // Require that each action have at least 1 trade and all trades are lending trades\n uint256 numTrades = action.trades.length;\n require(numTrades > 0); // dev: no actions\n for (uint256 j = 0; j < numTrades; j++) {\n require(uint8(bytes1(action.trades[j])) == uint8(TradeActionType.Lend)); // dev: only lend trades\n }\n\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n (balanceState.netCashChange, portfolioState) = _executeTrades(\n account,\n action.currencyId,\n action.trades,\n accountContext,\n portfolioState\n );\n // This must be negative as a result of requiring only lending\n require(balanceState.netCashChange <= 0);\n\n // Deposit sufficient cash to get the balance up to zero. If required cash is negative (i.e. there\n // is sufficient cash) then we don't need to do anything. The account's cash balance will be net off\n // and there will be no token transfer.\n // NOTE: it is possible that free collateral decreases as a result of lending a cash balance, will\n // check FC at the end of the method.\n int256 requiredCash = balanceState.storedCashBalance.add(balanceState.netCashChange).neg();\n if (requiredCash > 0) {\n if (action.depositUnderlying) {\n // If depositing underlying, get the current asset rate and convert the required cash\n // back to underlying.\n AssetRateParameters memory ar = AssetRate.buildAssetRateStateful(action.currencyId);\n Token memory underlyingToken = TokenHandler.getUnderlyingToken(action.currencyId);\n int256 underlyingExternalAmount = underlyingToken.convertToExternal(ar.convertToUnderlying(requiredCash));\n\n if (underlyingToken.decimals < Constants.INTERNAL_TOKEN_PRECISION) {\n // If external < 8, we could truncate down and cause an off by one error, for example we need\n // 1.00000011 cash and we deposit only 1.000000, missing 11 units. Therefore, we add a unit here\n // to account for potential rounding issues when tokens are less than 8 decimals (primarily USDC).\n underlyingExternalAmount = underlyingExternalAmount.add(1);\n }\n\n // This returns the cToken / aToken amount as a result of transfer and mint. It must be sufficient to\n // cover the required cash.\n int256 assetAmountInternal = balanceState.depositUnderlyingToken(account, underlyingExternalAmount);\n require(assetAmountInternal >= requiredCash, \"Insufficient deposit\");\n } else {\n // If depositing asset tokens, then we just convert to the external precision. Need to\n // use the depositAssetToken here to handle aToken balances\n Token memory assetToken = TokenHandler.getAssetToken(action.currencyId);\n balanceState.depositAssetToken(\n account,\n assetToken.convertToExternal(requiredCash),\n false // Do not force a transfer here, will be done in finalize if required.\n );\n }\n }\n\n // Will write all the balance changes to storage and transfer asset tokens if required.\n balanceState.finalize(account, accountContext, false);\n }\n\n // Update the portfolio state if bitmap is not enabled. If bitmap is already enabled\n // then all the assets have already been updated in in storage.\n if (!accountContext.isBitmapEnabled()) {\n // NOTE: account context is updated in memory inside this method call.\n accountContext.storeAssetsAndUpdateContext(account, portfolioState, false);\n }\n\n // This will save the account context and check free collateral\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of balance transfers and trading actions via an authorized callback contract. This\n /// can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform\n /// other actions on behalf of the user.\n /// Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract\n /// needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM\n /// will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting\n /// and will mainly be used for contracts that make migrating assets a better user experience.\n /// @param account the account that will take all the actions\n /// @param actions array of balance actions with trades to take, must be sorted by currency id\n /// @param callbackData arbitrary bytes to be passed backed to the caller in the callback\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n /// @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n /// @dev auth:authorizedCallbackContract\n function batchBalanceAndTradeActionWithCallback(\n address account,\n BalanceActionWithTrades[] calldata actions,\n bytes calldata callbackData\n ) external payable {\n // NOTE: Re-entrancy is allowed for authorized callback functions.\n require(authorizedCallbackContract[msg.sender], \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _batchBalanceAndTradeAction(account, actions);\n accountContext.setAccountContext(account);\n\n // Be sure to set the account context before initiating the callback, all stateful updates\n // have been finalized at this point so we are safe to issue a callback. This callback may\n // re-enter Notional safely to deposit or take other actions.\n NotionalCallback(msg.sender).notionalCallback(msg.sender, account, callbackData);\n\n if (accountContext.hasDebt != 0x00) {\n // NOTE: this method may update the account context to turn off the hasDebt flag, this\n // is ok because the worst case would be causing an extra free collateral check when it\n // is not required. This check will be entered if the account hasDebt prior to the callback\n // being triggered above, so it will happen regardless of what the callback function does.\n FreeCollateralExternal.checkFreeCollateralAndRevert(account);\n }\n }\n\n function _batchBalanceAndTradeAction(\n address account,\n BalanceActionWithTrades[] calldata actions\n ) internal returns (AccountContext memory) {\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n BalanceState memory balanceState;\n // NOTE: loading the portfolio state must happen after settle account to get the\n // correct portfolio, it will have changed if the account is settled.\n PortfolioState memory portfolioState = PortfolioHandler.buildPortfolioState(\n account,\n accountContext.assetArrayLength,\n 0\n );\n\n for (uint256 i = 0; i < actions.length; i++) {\n BalanceActionWithTrades calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n\n // Does not revert on invalid action types here, they also have no effect.\n _executeDepositAction(\n account,\n balanceState,\n action.actionType,\n action.depositActionAmount\n );\n\n if (action.trades.length > 0) {\n int256 netCash;\n (netCash, portfolioState) = _executeTrades(\n account,\n action.currencyId,\n action.trades,\n accountContext,\n portfolioState\n );\n\n // If the account owes cash after trading, ensure that it has enough\n if (netCash < 0) _checkSufficientCash(balanceState, netCash.neg());\n balanceState.netCashChange = balanceState.netCashChange.add(netCash);\n }\n\n _calculateWithdrawActionAndFinalize(\n account,\n accountContext,\n balanceState,\n action.withdrawAmountInternalPrecision,\n action.withdrawEntireCashBalance,\n action.redeemToUnderlying\n );\n }\n\n // Update the portfolio state if bitmap is not enabled. If bitmap is already enabled\n // then all the assets have already been updated in in storage.\n if (!accountContext.isBitmapEnabled()) {\n // NOTE: account context is updated in memory inside this method call.\n accountContext.storeAssetsAndUpdateContext(account, portfolioState, false);\n }\n\n // NOTE: free collateral and account context will be set outside of this method call.\n return accountContext;\n }\n\n /// @dev Executes deposits\n function _executeDepositAction(\n address account,\n BalanceState memory balanceState,\n DepositActionType depositType,\n uint256 depositActionAmount_\n ) private {\n int256 depositActionAmount = SafeInt256.toInt(depositActionAmount_);\n int256 assetInternalAmount;\n require(depositActionAmount >= 0);\n\n if (depositType == DepositActionType.None) {\n return;\n } else if (\n depositType == DepositActionType.DepositAsset ||\n depositType == DepositActionType.DepositAssetAndMintNToken\n ) {\n // NOTE: this deposit will NOT revert on a failed transfer unless there is a\n // transfer fee. The actual transfer will take effect later in balanceState.finalize\n assetInternalAmount = balanceState.depositAssetToken(\n account,\n depositActionAmount,\n false // no force transfer\n );\n } else if (\n depositType == DepositActionType.DepositUnderlying ||\n depositType == DepositActionType.DepositUnderlyingAndMintNToken\n ) {\n // NOTE: this deposit will revert on a failed transfer immediately\n assetInternalAmount = balanceState.depositUnderlyingToken(account, depositActionAmount);\n } else if (depositType == DepositActionType.ConvertCashToNToken) {\n // _executeNTokenAction will check if the account has sufficient cash\n assetInternalAmount = depositActionAmount;\n }\n\n _executeNTokenAction(\n balanceState,\n depositType,\n depositActionAmount,\n assetInternalAmount\n );\n }\n\n /// @dev Executes nToken actions\n function _executeNTokenAction(\n BalanceState memory balanceState,\n DepositActionType depositType,\n int256 depositActionAmount,\n int256 assetInternalAmount\n ) private {\n // After deposits have occurred, check if we are minting nTokens\n if (\n depositType == DepositActionType.DepositAssetAndMintNToken ||\n depositType == DepositActionType.DepositUnderlyingAndMintNToken ||\n depositType == DepositActionType.ConvertCashToNToken\n ) {\n // Will revert if trying to mint ntokens and results in a negative cash balance\n _checkSufficientCash(balanceState, assetInternalAmount);\n balanceState.netCashChange = balanceState.netCashChange.sub(assetInternalAmount);\n\n // Converts a given amount of cash (denominated in internal precision) into nTokens\n int256 tokensMinted = nTokenMintAction.nTokenMint(\n balanceState.currencyId,\n assetInternalAmount\n );\n\n balanceState.netNTokenSupplyChange = balanceState.netNTokenSupplyChange.add(\n tokensMinted\n );\n } else if (depositType == DepositActionType.RedeemNToken) {\n require(\n // prettier-ignore\n balanceState\n .storedNTokenBalance\n .add(balanceState.netNTokenTransfer) // transfers would not occur at this point\n .add(balanceState.netNTokenSupplyChange) >= depositActionAmount,\n \"Insufficient token balance\"\n );\n\n balanceState.netNTokenSupplyChange = balanceState.netNTokenSupplyChange.sub(\n depositActionAmount\n );\n\n int256 assetCash = nTokenRedeemAction.nTokenRedeemViaBatch(\n balanceState.currencyId,\n depositActionAmount\n );\n\n balanceState.netCashChange = balanceState.netCashChange.add(assetCash);\n }\n }\n\n /// @dev Calculations any withdraws and finalizes balances\n function _calculateWithdrawActionAndFinalize(\n address account,\n AccountContext memory accountContext,\n BalanceState memory balanceState,\n uint256 withdrawAmountInternalPrecision,\n bool withdrawEntireCashBalance,\n bool redeemToUnderlying\n ) private {\n int256 withdrawAmount = SafeInt256.toInt(withdrawAmountInternalPrecision);\n require(withdrawAmount >= 0); // dev: withdraw action overflow\n\n // NOTE: if withdrawEntireCashBalance is set it will override the withdrawAmountInternalPrecision input\n if (withdrawEntireCashBalance) {\n // This option is here so that accounts do not end up with dust after lending since we generally\n // cannot calculate exact cash amounts from the liquidity curve.\n withdrawAmount = balanceState.storedCashBalance\n .add(balanceState.netCashChange)\n .add(balanceState.netAssetTransferInternalPrecision);\n\n // If the account has a negative cash balance then cannot withdraw\n if (withdrawAmount < 0) withdrawAmount = 0;\n }\n\n // prettier-ignore\n balanceState.netAssetTransferInternalPrecision = balanceState\n .netAssetTransferInternalPrecision\n .sub(withdrawAmount);\n\n balanceState.finalize(account, accountContext, redeemToUnderlying);\n }\n\n function _finalizeAccountContext(address account, AccountContext memory accountContext)\n private\n {\n // At this point all balances, market states and portfolio states should be finalized. Just need to check free\n // collateral if required.\n accountContext.setAccountContext(account);\n if (accountContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(account);\n }\n }\n\n function _executeTrades(\n address account,\n uint16 currencyId,\n bytes32[] calldata trades,\n AccountContext memory accountContext,\n PortfolioState memory portfolioState\n ) private returns (int256 netCash, PortfolioState memory postTradeState) {\n if (accountContext.isBitmapEnabled()) {\n require(\n accountContext.bitmapCurrencyId == currencyId,\n \"Invalid trades for account\"\n );\n bool didIncurDebt;\n (netCash, didIncurDebt) = TradingAction.executeTradesBitmapBatch(\n account,\n accountContext.bitmapCurrencyId,\n accountContext.nextSettleTime,\n trades\n );\n if (didIncurDebt) {\n accountContext.hasDebt = Constants.HAS_ASSET_DEBT | accountContext.hasDebt;\n }\n } else {\n // NOTE: we return portfolio state here instead of setting it inside executeTradesArrayBatch\n // because we want to only write to storage once after all trades are completed\n (postTradeState, netCash) = TradingAction.executeTradesArrayBatch(\n account,\n currencyId,\n portfolioState,\n trades\n );\n }\n }\n\n /// @notice When lending, adding liquidity or minting nTokens the account must have a sufficient cash balance\n /// to do so.\n function _checkSufficientCash(BalanceState memory balanceState, int256 amountInternalPrecision)\n private\n pure\n {\n // The total cash position at this point is: storedCashBalance + netCashChange + netAssetTransferInternalPrecision\n require(\n amountInternalPrecision >= 0 &&\n balanceState.storedCashBalance\n .add(balanceState.netCashChange)\n .add(balanceState.netAssetTransferInternalPrecision) >= amountInternalPrecision,\n \"Insufficient cash\"\n );\n }\n\n function _settleAccountIfRequired(address account)\n private\n returns (AccountContext memory)\n {\n AccountContext memory accountContext = AccountContextHandler.getAccountContext(account);\n if (accountContext.mustSettleAssets()) {\n // Returns a new memory reference to account context\n return SettleAssetsExternal.settleAccount(account, accountContext);\n } else {\n return accountContext;\n }\n }\n\n /// @notice Get a list of deployed library addresses (sorted by library name)\n function getLibInfo() external view returns (address, address, address, address, address, address) {\n return (\n address(FreeCollateralExternal), \n address(MigrateIncentives), \n address(SettleAssetsExternal), \n address(TradingAction),\n address(nTokenMintAction), \n address(nTokenRedeemAction)\n );\n }\n}\n", + "sourceMap": "591:23559:29:-:0;;;;;;;;;;;;;;;;;;;", + "sourcePath": "contracts/external/actions/BatchAction.sol", + "type": "contract" +} diff --git a/external/abi/notional/ERC1155Action.json b/external/abi/notional/ERC1155Action.json new file mode 100644 index 000000000..6eeff0404 --- /dev/null +++ b/external/abi/notional/ERC1155Action.json @@ -0,0 +1,94889 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "values", + "type": "uint256[]" + } + ], + "name": "TransferBatch", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "TransferSingle", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "value", + "type": "string" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "URI", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "balanceOfBatch", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "decodeToAssets", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "currencyId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maturity", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "assetType", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "notional", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "storageSlot", + "type": "uint256" + }, + { + "internalType": "enum AssetStorageState", + "name": "storageState", + "type": "uint8" + } + ], + "internalType": "struct PortfolioAsset[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint16", + "name": "currencyId", + "type": "uint16" + }, + { + "internalType": "uint40", + "name": "maturity", + "type": "uint40" + }, + { + "internalType": "uint8", + "name": "assetType", + "type": "uint8" + } + ], + "name": "encodeToId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "getLibInfo", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseRouter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeBatchTransferFrom", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "signedBalanceOf", + "outputs": [ + { + "internalType": "int256", + "name": "notional", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + } + ], + "name": "signedBalanceOfBatch", + "outputs": [ + { + "internalType": "int256[]", + "name": "", + "type": "int256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "allSourcePaths": { + "141": "interfaces/IEIP20NonStandard.sol", + "142": "interfaces/IERC1155TokenReceiver.sol", + "147": "interfaces/aave/ILendingPool.sol", + "151": "interfaces/compound/CErc20Interface.sol", + "152": "interfaces/compound/CEtherInterface.sol", + "153": "interfaces/compound/CTokenInterface.sol", + "155": "interfaces/notional/AssetRateAdapter.sol", + "157": "interfaces/notional/IRewarder.sol", + "16": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/utils/Address.sol", + "164": "interfaces/notional/nERC1155Interface.sol", + "21": "contracts/external/FreeCollateralExternal.sol", + "22": "contracts/external/MigrateIncentives.sol", + "25": "contracts/external/SettleAssetsExternal.sol", + "28": "contracts/external/actions/ActionGuards.sol", + "30": "contracts/external/actions/ERC1155Action.sol", + "6": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/math/SafeMath.sol", + "60": "contracts/global/Constants.sol", + "61": "contracts/global/Deployments.sol", + "62": "contracts/global/LibStorage.sol", + "63": "contracts/global/StorageLayoutV1.sol", + "65": "contracts/global/Types.sol", + "66": "contracts/internal/AccountContextHandler.sol", + "67": "contracts/internal/balances/BalanceHandler.sol", + "68": "contracts/internal/balances/Incentives.sol", + "69": "contracts/internal/balances/TokenHandler.sol", + "70": "contracts/internal/balances/protocols/AaveHandler.sol", + "71": "contracts/internal/balances/protocols/CompoundHandler.sol", + "72": "contracts/internal/balances/protocols/GenericToken.sol", + "76": "contracts/internal/markets/AssetRate.sol", + "77": "contracts/internal/markets/CashGroup.sol", + "78": "contracts/internal/markets/DateTime.sol", + "79": "contracts/internal/markets/Market.sol", + "80": "contracts/internal/nToken/nTokenCalculations.sol", + "81": "contracts/internal/nToken/nTokenHandler.sol", + "82": "contracts/internal/nToken/nTokenSupply.sol", + "83": "contracts/internal/portfolio/BitmapAssetsHandler.sol", + "84": "contracts/internal/portfolio/PortfolioHandler.sol", + "85": "contracts/internal/portfolio/TransferAssets.sol", + "86": "contracts/internal/settlement/SettleBitmapAssets.sol", + "87": "contracts/internal/settlement/SettlePortfolioAssets.sol", + "88": "contracts/internal/valuation/AssetHandler.sol", + "89": "contracts/internal/valuation/ExchangeRate.sol", + "90": "contracts/internal/valuation/FreeCollateral.sol", + "91": "contracts/math/ABDKMath64x64.sol", + "92": "contracts/math/Bitmap.sol", + "93": "contracts/math/FloatingPoint56.sol", + "94": "contracts/math/SafeInt256.sol" + }, + "ast": { + "absolutePath": "contracts/external/actions/ERC1155Action.sol", + "exportedSymbols": { + "ABDKMath64x64": [ + 44430 + ], + "AaveHandler": [ + 26669 + ], + "AccountBalance": [ + 57824 + ], + "AccountContext": [ + 57743 + ], + "AccountContextHandler": [ + 24055 + ], + "ActionGuards": [ + 3662 + ], + "Address": [ + 58950 + ], + "AggregatorInterface": [ + 62384 + ], + "AggregatorV2V3Interface": [ + 58997 + ], + "AggregatorV3Interface": [ + 62430 + ], + "AssetHandler": [ + 40067 + ], + "AssetRate": [ + 30677 + ], + "AssetRateAdapter": [ + 59041 + ], + "AssetRateParameters": [ + 57639 + ], + "AssetRateStorage": [ + 57707 + ], + "AssetStorageState": [ + 57500 + ], + "BalanceAction": [ + 57521 + ], + "BalanceActionWithTrades": [ + 57537 + ], + "BalanceHandler": [ + 25398 + ], + "BalanceState": [ + 57632 + ], + "BalanceStorage": [ + 57767 + ], + "BatchLend": [ + 57508 + ], + "Bitmap": [ + 44771 + ], + "BitmapAssetsHandler": [ + 37096 + ], + "CErc20Interface": [ + 59445 + ], + "CEtherInterface": [ + 59757 + ], + "CTokenInterface": [ + 59740 + ], + "CashGroup": [ + 31956 + ], + "CashGroupParameters": [ + 57648 + ], + "CashGroupSettings": [ + 57732 + ], + "CompoundHandler": [ + 26861 + ], + "Constants": [ + 22832 + ], + "Context": [ + 62453 + ], + "DateTime": [ + 32595 + ], + "Deployments": [ + 22839 + ], + "DepositActionType": [ + 57495 + ], + "ERC1155Action": [ + 6026 + ], + "ERC20": [ + 60749 + ], + "ETHRate": [ + 57613 + ], + "ETHRateStorage": [ + 57702 + ], + "ExchangeRate": [ + 40263 + ], + "FloatingPoint56": [ + 44847 + ], + "FreeCollateral": [ + 41676 + ], + "FreeCollateralExternal": [ + 618 + ], + "GenericToken": [ + 26993 + ], + "IAToken": [ + 60771 + ], + "IATokenFull": [ + 60806 + ], + "IEIP20NonStandard": [ + 61875 + ], + "IERC1155": [ + 58654 + ], + "IERC1155TokenReceiver": [ + 58988 + ], + "IERC165": [ + 62336 + ], + "IERC20": [ + 59607 + ], + "ILendingPool": [ + 60888 + ], + "IRewarder": [ + 59057 + ], + "IScaledBalanceToken": [ + 60796 + ], + "Incentives": [ + 25585 + ], + "LendingPoolStorage": [ + 60812 + ], + "LibStorage": [ + 23238 + ], + "LiquidationFactors": [ + 57591 + ], + "Market": [ + 34509 + ], + "MarketParameters": [ + 57678 + ], + "MarketStorage": [ + 57787 + ], + "MigrateIncentives": [ + 775 + ], + "NotionalCalculations": [ + 57001 + ], + "NotionalGovernance": [ + 58068 + ], + "NotionalProxy": [ + 57468 + ], + "NotionalTreasury": [ + 59529 + ], + "NotionalViews": [ + 58520 + ], + "PortfolioAsset": [ + 57661 + ], + "PortfolioAssetStorage": [ + 57799 + ], + "PortfolioHandler": [ + 38387 + ], + "PortfolioState": [ + 57602 + ], + "SafeInt256": [ + 45162 + ], + "SafeMath": [ + 56637 + ], + "SettleAmount": [ + 57542 + ], + "SettleAssetsExternal": [ + 1878 + ], + "SettleBitmapAssets": [ + 38867 + ], + "SettlePortfolioAssets": [ + 39292 + ], + "SettlementRateStorage": [ + 57774 + ], + "StorageLayoutV1": [ + 23292 + ], + "Token": [ + 57553 + ], + "TokenHandler": [ + 26426 + ], + "TokenStorage": [ + 57689 + ], + "TokenType": [ + 57480 + ], + "TradeActionType": [ + 57487 + ], + "TransferAssets": [ + 38618 + ], + "ifCashStorage": [ + 57790 + ], + "nERC1155Interface": [ + 58229 + ], + "nTokenCalculations": [ + 35079 + ], + "nTokenContext": [ + 57758 + ], + "nTokenERC20": [ + 59173 + ], + "nTokenHandler": [ + 36105 + ], + "nTokenPortfolio": [ + 57568 + ], + "nTokenSupply": [ + 36407 + ], + "nTokenTotalSupplyStorage": [ + 57813 + ], + "nTokenTotalSupplyStorage_deprecated": [ + 57806 + ] + }, + "id": 6027, + "license": "GPL-3.0-only", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 4842, + "literals": [ + "solidity", + "^", + "0.7", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "41:23:30" + }, + { + "id": 4843, + "literals": [ + "abicoder", + "v2" + ], + "nodeType": "PragmaDirective", + "src": "65:19:30" + }, + { + "absolutePath": "contracts/external/actions/ActionGuards.sol", + "file": "./ActionGuards.sol", + "id": 4844, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 3663, + "src": "86:28:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/FreeCollateralExternal.sol", + "file": "../FreeCollateralExternal.sol", + "id": 4845, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 619, + "src": "115:39:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/global/StorageLayoutV1.sol", + "file": "../../global/StorageLayoutV1.sol", + "id": 4846, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 23293, + "src": "155:42:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/math/SafeInt256.sol", + "file": "../../math/SafeInt256.sol", + "id": 4847, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 45163, + "src": "198:35:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/internal/AccountContextHandler.sol", + "file": "../../internal/AccountContextHandler.sol", + "id": 4848, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 24056, + "src": "234:50:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/internal/portfolio/TransferAssets.sol", + "file": "../../internal/portfolio/TransferAssets.sol", + "id": 4849, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 38619, + "src": "285:53:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/internal/portfolio/PortfolioHandler.sol", + "file": "../../internal/portfolio/PortfolioHandler.sol", + "id": 4850, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 38388, + "src": "339:55:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/NotionalProxy.sol", + "file": "../../../interfaces/notional/NotionalProxy.sol", + "id": 4851, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 57469, + "src": "395:56:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/IERC1155TokenReceiver.sol", + "file": "../../../interfaces/IERC1155TokenReceiver.sol", + "id": 4852, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 58989, + "src": "452:55:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/nERC1155Interface.sol", + "file": "../../../interfaces/notional/nERC1155Interface.sol", + "id": 4853, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 58230, + "src": "508:60:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/token/ERC1155/IERC1155.sol", + "file": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", + "id": 4854, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 58655, + "src": "569:60:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/utils/Address.sol", + "file": "@openzeppelin/contracts/utils/Address.sol", + "id": 4855, + "nodeType": "ImportDirective", + "scope": 6027, + "sourceUnit": 58951, + "src": "630:51:30", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 4856, + "name": "nERC1155Interface", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 58229, + "src": "709:17:30", + "typeDescriptions": { + "typeIdentifier": "t_contract$_nERC1155Interface_$58229", + "typeString": "contract nERC1155Interface" + } + }, + "id": 4857, + "nodeType": "InheritanceSpecifier", + "src": "709:17:30" + }, + { + "baseName": { + "id": 4858, + "name": "ActionGuards", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3662, + "src": "728:12:30", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ActionGuards_$3662", + "typeString": "contract ActionGuards" + } + }, + "id": 4859, + "nodeType": "InheritanceSpecifier", + "src": "728:12:30" + } + ], + "contractDependencies": [ + 3662, + 23292, + 58229 + ], + "contractKind": "contract", + "fullyImplemented": true, + "id": 6026, + "linearizedBaseContracts": [ + 6026, + 3662, + 23292, + 58229 + ], + "name": "ERC1155Action", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 4862, + "libraryName": { + "id": 4860, + "name": "SafeInt256", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 45162, + "src": "753:10:30", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeInt256_$45162", + "typeString": "library SafeInt256" + } + }, + "nodeType": "UsingForDirective", + "src": "747:28:30", + "typeName": { + "id": 4861, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "768:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + }, + { + "id": 4865, + "libraryName": { + "id": 4863, + "name": "AccountContextHandler", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 24055, + "src": "786:21:30", + "typeDescriptions": { + "typeIdentifier": "t_contract$_AccountContextHandler_$24055", + "typeString": "library AccountContextHandler" + } + }, + "nodeType": "UsingForDirective", + "src": "780:47:30", + "typeName": { + "id": 4864, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "812:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + } + }, + { + "constant": true, + "id": 4873, + "mutability": "constant", + "name": "ERC1155_ACCEPTED", + "nodeType": "VariableDeclaration", + "scope": 6026, + "src": "833:121:30", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 4866, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "833:6:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6f6e45524331313535526563656976656428616464726573732c616464726573732c75696e743235362c75696e743235362c627974657329", + "id": 4870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "894:58:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97", + "typeString": "literal_string \"onERC1155Received(address,address,uint256,uint256,bytes)\"" + }, + "value": "onERC1155Received(address,address,uint256,uint256,bytes)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97", + "typeString": "literal_string \"onERC1155Received(address,address,uint256,uint256,bytes)\"" + } + ], + "id": 4869, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "884:9:30", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4871, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "884:69:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 4868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "877:6:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 4867, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "877:6:30", + "typeDescriptions": {} + } + }, + "id": 4872, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "877:77:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": true, + "id": 4881, + "mutability": "constant", + "name": "ERC1155_BATCH_ACCEPTED", + "nodeType": "VariableDeclaration", + "scope": 6026, + "src": "960:136:30", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 4874, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "960:6:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6f6e455243313135354261746368526563656976656428616464726573732c616464726573732c75696e743235365b5d2c75696e743235365b5d2c627974657329", + "id": 4878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1027:67:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621", + "typeString": "literal_string \"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"" + }, + "value": "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621", + "typeString": "literal_string \"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"" + } + ], + "id": 4877, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1017:9:30", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4879, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1017:78:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 4876, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1010:6:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 4875, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1010:6:30", + "typeDescriptions": {} + } + }, + "id": 4880, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1010:86:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "baseFunctions": [ + 58119 + ], + "body": { + "id": 4896, + "nodeType": "Block", + "src": "1188:65:30", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 4894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4889, + "name": "interfaceId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4883, + "src": "1205:11:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "arguments": [ + { + "id": 4891, + "name": "IERC1155", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58654, + "src": "1225:8:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155_$58654_$", + "typeString": "type(contract IERC1155)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_IERC1155_$58654_$", + "typeString": "type(contract IERC1155)" + } + ], + "id": 4890, + "name": "type", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -27, + "src": "1220:4:30", + "typeDescriptions": { + "typeIdentifier": "t_function_metatype_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4892, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1220:14:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_magic_meta_type_t_contract$_IERC1155_$58654", + "typeString": "type(contract IERC1155)" + } + }, + "id": 4893, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "interfaceId", + "nodeType": "MemberAccess", + "src": "1220:26:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "1205:41:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 4888, + "id": 4895, + "nodeType": "Return", + "src": "1198:48:30" + } + ] + }, + "functionSelector": "01ffc9a7", + "id": 4897, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "supportsInterface", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4885, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1164:8:30" + }, + "parameters": { + "id": 4884, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4883, + "mutability": "mutable", + "name": "interfaceId", + "nodeType": "VariableDeclaration", + "scope": 4897, + "src": "1130:18:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 4882, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1130:6:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1129:20:30" + }, + "returnParameters": { + "id": 4888, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4887, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4897, + "src": "1182:4:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4886, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1182:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1181:6:30" + }, + "scope": 6026, + "src": "1103:150:30", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 58128 + ], + "body": { + "id": 4924, + "nodeType": "Block", + "src": "1829:116:30", + "statements": [ + { + "assignments": [ + 4909 + ], + "declarations": [ + { + "constant": false, + "id": 4909, + "mutability": "mutable", + "name": "notional", + "nodeType": "VariableDeclaration", + "scope": 4924, + "src": "1839:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4908, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1839:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4914, + "initialValue": { + "arguments": [ + { + "id": 4911, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4900, + "src": "1873:7:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4912, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4902, + "src": "1882:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4910, + "name": "signedBalanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4971, + "src": "1857:15:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_int256_$", + "typeString": "function (address,uint256) view returns (int256)" + } + }, + "id": 4913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1857:28:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "1839:46:30" + }, + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4915, + "name": "notional", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4909, + "src": "1902:8:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4916, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1913:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1902:12:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4919, + "name": "notional", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4909, + "src": "1921:8:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "toUint", + "nodeType": "MemberAccess", + "referencedDeclaration": 45101, + "src": "1921:15:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$bound_to$_t_int256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1921:17:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4922, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "1902:36:30", + "trueExpression": { + "hexValue": "30", + "id": 4918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1917:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4907, + "id": 4923, + "nodeType": "Return", + "src": "1895:43:30" + } + ] + }, + "documentation": { + "id": 4898, + "nodeType": "StructuredDocumentation", + "src": "1259:478:30", + "text": "@notice Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by\n this method do not show negative fCash balances because only unsigned integers are returned. They\n are represented by zero here. Use `signedBalanceOf` to get a signed return value.\n @param account account to get the id for\n @param id the ERC1155 id\n @return Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)" + }, + "functionSelector": "00fdd58e", + "id": 4925, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4904, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "1802:8:30" + }, + "parameters": { + "id": 4903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4900, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "1761:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4899, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1761:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4902, + "mutability": "mutable", + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "1778:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4901, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1778:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1760:29:30" + }, + "returnParameters": { + "id": 4907, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4906, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "1820:7:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4905, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1820:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1819:9:30" + }, + "scope": 6026, + "src": "1742:203:30", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 58149 + ], + "body": { + "id": 4970, + "nodeType": "Block", + "src": "2273:436:30", + "statements": [ + { + "assignments": [ + 4937 + ], + "declarations": [ + { + "constant": false, + "id": 4937, + "mutability": "mutable", + "name": "accountContext", + "nodeType": "VariableDeclaration", + "scope": 4970, + "src": "2283:36:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 4936, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "2283:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 4942, + "initialValue": { + "arguments": [ + { + "id": 4940, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4928, + "src": "2362:7:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 4938, + "name": "AccountContextHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24055, + "src": "2322:21:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", + "typeString": "type(library AccountContextHandler)" + } + }, + "id": 4939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23345, + "src": "2322:39:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) view returns (struct AccountContext memory)" + } + }, + "id": 4941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2322:48:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2283:87:30" + }, + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 4943, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4937, + "src": "2385:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4944, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "isBitmapEnabled", + "nodeType": "MemberAccess", + "referencedDeclaration": 23385, + "src": "2385:30:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) pure returns (bool)" + } + }, + "id": 4945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2385:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 4968, + "nodeType": "Block", + "src": "2523:180:30", + "statements": [ + { + "expression": { + "id": 4966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4956, + "name": "notional", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4934, + "src": "2537:8:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "arguments": [ + { + "id": 4960, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4928, + "src": "2617:7:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4961, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4937, + "src": "2626:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4962, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "assetArrayLength", + "nodeType": "MemberAccess", + "referencedDeclaration": 57738, + "src": "2626:31:30", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "expression": { + "id": 4958, + "name": "PortfolioHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38387, + "src": "2581:16:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", + "typeString": "type(library PortfolioHandler)" + } + }, + "id": 4959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getSortedPortfolio", + "nodeType": "MemberAccess", + "referencedDeclaration": 38099, + "src": "2581:35:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (address,uint8) view returns (struct PortfolioAsset memory[] memory)" + } + }, + "id": 4963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2581:77:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + { + "id": 4964, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4930, + "src": "2676:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4957, + "name": "_balanceInArray", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5198, + "src": "2548:15:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_uint256_$returns$_t_int256_$", + "typeString": "function (struct PortfolioAsset memory[] memory,uint256) pure returns (int256)" + } + }, + "id": 4965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2548:144:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "2537:155:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4967, + "nodeType": "ExpressionStatement", + "src": "2537:155:30" + } + ] + }, + "id": 4969, + "nodeType": "IfStatement", + "src": "2381:322:30", + "trueBody": { + "id": 4955, + "nodeType": "Block", + "src": "2419:98:30", + "statements": [ + { + "expression": { + "id": 4953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4946, + "name": "notional", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4934, + "src": "2433:8:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4948, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4928, + "src": "2461:7:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 4949, + "name": "accountContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4937, + "src": "2470:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 4950, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "bitmapCurrencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57740, + "src": "2470:31:30", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 4951, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4930, + "src": "2503:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4947, + "name": "_balanceInBitmap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5139, + "src": "2444:16:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_int256_$", + "typeString": "function (address,uint256,uint256) view returns (int256)" + } + }, + "id": 4952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2444:62:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "2433:73:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4954, + "nodeType": "ExpressionStatement", + "src": "2433:73:30" + } + ] + } + } + ] + }, + "documentation": { + "id": 4926, + "nodeType": "StructuredDocumentation", + "src": "1951:216:30", + "text": "@notice Returns the balance of an ERC1155 id on an account.\n @param account account to get the id for\n @param id the ERC1155 id\n @return notional balance of the ERC1155 id as a signed integer" + }, + "functionSelector": "0fac8f09", + "id": 4971, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "signedBalanceOf", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4932, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "2238:8:30" + }, + "parameters": { + "id": 4931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4928, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 4971, + "src": "2197:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4927, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2197:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4930, + "mutability": "mutable", + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 4971, + "src": "2214:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4929, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2214:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2196:29:30" + }, + "returnParameters": { + "id": 4935, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4934, + "mutability": "mutable", + "name": "notional", + "nodeType": "VariableDeclaration", + "scope": 4971, + "src": "2256:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4933, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "2256:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "2255:17:30" + }, + "scope": 6026, + "src": "2172:537:30", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "baseFunctions": [ + 58161 + ], + "body": { + "id": 5032, + "nodeType": "Block", + "src": "3117:335:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4986, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4975, + "src": "3135:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 4987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3135:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 4988, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4978, + "src": "3154:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 4989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3154:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3135:29:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 4985, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3127:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 4991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3127:38:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4992, + "nodeType": "ExpressionStatement", + "src": "3127:38:30" + }, + { + "assignments": [ + 4997 + ], + "declarations": [ + { + "constant": false, + "id": 4997, + "mutability": "mutable", + "name": "amounts", + "nodeType": "VariableDeclaration", + "scope": 5032, + "src": "3175:23:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 4995, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "3175:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4996, + "nodeType": "ArrayTypeName", + "src": "3175:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "id": 5004, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 5001, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4975, + "src": "3214:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3214:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "3201:12:30", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_int256_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (int256[] memory)" + }, + "typeName": { + "baseType": { + "id": 4998, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "3205:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4999, + "nodeType": "ArrayTypeName", + "src": "3205:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + } + }, + "id": 5003, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3201:29:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3175:55:30" + }, + { + "body": { + "id": 5028, + "nodeType": "Block", + "src": "3283:138:30", + "statements": [ + { + "expression": { + "id": 5026, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 5015, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4997, + "src": "3361:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + "id": 5017, + "indexExpression": { + "id": 5016, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5006, + "src": "3369:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3361:10:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 5019, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4975, + "src": "3390:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5021, + "indexExpression": { + "id": 5020, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5006, + "src": "3399:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3390:11:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 5022, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4978, + "src": "3403:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5024, + "indexExpression": { + "id": 5023, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5006, + "src": "3407:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3403:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5018, + "name": "signedBalanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4971, + "src": "3374:15:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_int256_$", + "typeString": "function (address,uint256) view returns (int256)" + } + }, + "id": 5025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3374:36:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "3361:49:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 5027, + "nodeType": "ExpressionStatement", + "src": "3361:49:30" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5008, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5006, + "src": "3257:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 5009, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4975, + "src": "3261:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3261:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3257:19:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5029, + "initializationExpression": { + "assignments": [ + 5006 + ], + "declarations": [ + { + "constant": false, + "id": 5006, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 5029, + "src": "3246:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5005, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3246:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5007, + "nodeType": "VariableDeclarationStatement", + "src": "3246:9:30" + }, + "loopExpression": { + "expression": { + "id": 5013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3278:3:30", + "subExpression": { + "id": 5012, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5006, + "src": "3278:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5014, + "nodeType": "ExpressionStatement", + "src": "3278:3:30" + }, + "nodeType": "ForStatement", + "src": "3241:180:30" + }, + { + "expression": { + "id": 5030, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4997, + "src": "3438:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + "functionReturnParameters": 4984, + "id": 5031, + "nodeType": "Return", + "src": "3431:14:30" + } + ] + }, + "documentation": { + "id": 4972, + "nodeType": "StructuredDocumentation", + "src": "2715:229:30", + "text": "@notice Returns the balance of a batch of accounts and ids.\n @param accounts array of accounts to get balances for\n @param ids array of ids to get balances for\n @return Returns an array of signed balances" + }, + "functionSelector": "81a86855", + "id": 5033, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "signedBalanceOfBatch", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 4980, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3070:8:30" + }, + "parameters": { + "id": 4979, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4975, + "mutability": "mutable", + "name": "accounts", + "nodeType": "VariableDeclaration", + "scope": 5033, + "src": "2979:27:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 4973, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2979:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4974, + "nodeType": "ArrayTypeName", + "src": "2979:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4978, + "mutability": "mutable", + "name": "ids", + "nodeType": "VariableDeclaration", + "scope": 5033, + "src": "3008:22:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 4976, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3008:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4977, + "nodeType": "ArrayTypeName", + "src": "3008:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2978:53:30" + }, + "returnParameters": { + "id": 4984, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4983, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5033, + "src": "3096:15:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 4981, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "3096:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4982, + "nodeType": "ArrayTypeName", + "src": "3096:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3095:17:30" + }, + "scope": 6026, + "src": "2949:503:30", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 58140 + ], + "body": { + "id": 5094, + "nodeType": "Block", + "src": "3946:331:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5048, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5037, + "src": "3964:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5049, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3964:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 5050, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5040, + "src": "3983:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3983:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3964:29:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5047, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3956:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 5053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3956:38:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5054, + "nodeType": "ExpressionStatement", + "src": "3956:38:30" + }, + { + "assignments": [ + 5059 + ], + "declarations": [ + { + "constant": false, + "id": 5059, + "mutability": "mutable", + "name": "amounts", + "nodeType": "VariableDeclaration", + "scope": 5094, + "src": "4004:24:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5057, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4004:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5058, + "nodeType": "ArrayTypeName", + "src": "4004:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "id": 5066, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 5063, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5037, + "src": "4045:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4045:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "4031:13:30", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (uint256[] memory)" + }, + "typeName": { + "baseType": { + "id": 5060, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4035:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5061, + "nodeType": "ArrayTypeName", + "src": "4035:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + } + }, + "id": 5065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4031:30:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4004:57:30" + }, + { + "body": { + "id": 5090, + "nodeType": "Block", + "src": "4114:132:30", + "statements": [ + { + "expression": { + "id": 5088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 5077, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5059, + "src": "4192:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 5079, + "indexExpression": { + "id": 5078, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5068, + "src": "4200:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4192:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 5081, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5037, + "src": "4215:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5083, + "indexExpression": { + "id": 5082, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5068, + "src": "4224:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4215:11:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 5084, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5040, + "src": "4228:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5086, + "indexExpression": { + "id": 5085, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5068, + "src": "4232:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4228:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5080, + "name": "balanceOf", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4925, + "src": "4205:9:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (address,uint256) view returns (uint256)" + } + }, + "id": 5087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4205:30:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4192:43:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5089, + "nodeType": "ExpressionStatement", + "src": "4192:43:30" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5073, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5070, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5068, + "src": "4088:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 5071, + "name": "accounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5037, + "src": "4092:8:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[] calldata" + } + }, + "id": 5072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4092:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4088:19:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5091, + "initializationExpression": { + "assignments": [ + 5068 + ], + "declarations": [ + { + "constant": false, + "id": 5068, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 5091, + "src": "4077:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5067, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4077:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5069, + "nodeType": "VariableDeclarationStatement", + "src": "4077:9:30" + }, + "loopExpression": { + "expression": { + "id": 5075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4109:3:30", + "subExpression": { + "id": 5074, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5068, + "src": "4109:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5076, + "nodeType": "ExpressionStatement", + "src": "4109:3:30" + }, + "nodeType": "ForStatement", + "src": "4072:174:30" + }, + { + "expression": { + "id": 5092, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5059, + "src": "4263:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "functionReturnParameters": 5046, + "id": 5093, + "nodeType": "Return", + "src": "4256:14:30" + } + ] + }, + "documentation": { + "id": 5034, + "nodeType": "StructuredDocumentation", + "src": "3458:320:30", + "text": "@notice Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented\n as zero balances in the array. \n @param accounts array of accounts to get balances for\n @param ids array of ids to get balances for\n @return Returns an array of unsigned balances" + }, + "functionSelector": "4e1273f4", + "id": 5095, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "balanceOfBatch", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5042, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "3898:8:30" + }, + "parameters": { + "id": 5041, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5037, + "mutability": "mutable", + "name": "accounts", + "nodeType": "VariableDeclaration", + "scope": 5095, + "src": "3807:27:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 5035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3807:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5036, + "nodeType": "ArrayTypeName", + "src": "3807:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5040, + "mutability": "mutable", + "name": "ids", + "nodeType": "VariableDeclaration", + "scope": 5095, + "src": "3836:22:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5038, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3836:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5039, + "nodeType": "ArrayTypeName", + "src": "3836:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3806:53:30" + }, + "returnParameters": { + "id": 5046, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5045, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5095, + "src": "3924:16:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5043, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3924:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5044, + "nodeType": "ArrayTypeName", + "src": "3924:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "3923:18:30" + }, + "scope": 6026, + "src": "3783:494:30", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 5138, + "nodeType": "Block", + "src": "4485:435:30", + "statements": [ + { + "assignments": [ + 5108, + 5110, + 5112 + ], + "declarations": [ + { + "constant": false, + "id": 5108, + "mutability": "mutable", + "name": "currencyId", + "nodeType": "VariableDeclaration", + "scope": 5138, + "src": "4496:18:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5107, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4496:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5110, + "mutability": "mutable", + "name": "maturity", + "nodeType": "VariableDeclaration", + "scope": 5138, + "src": "4516:16:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5109, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4516:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5112, + "mutability": "mutable", + "name": "assetType", + "nodeType": "VariableDeclaration", + "scope": 5138, + "src": "4534:17:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4534:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5117, + "initialValue": { + "arguments": [ + { + "id": 5115, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5102, + "src": "4584:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5113, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "4555:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "decodeAssetId", + "nodeType": "MemberAccess", + "referencedDeclaration": 38443, + "src": "4555:28:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" + } + }, + "id": 5116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4555:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4495:92:30" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5118, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5108, + "src": "4615:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 5119, + "name": "bitmapCurrencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5100, + "src": "4629:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4615:30:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5121, + "name": "assetType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5112, + "src": "4661:9:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "expression": { + "id": 5122, + "name": "Constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22832, + "src": "4674:9:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", + "typeString": "type(library Constants)" + } + }, + "id": 5123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "FCASH_ASSET_TYPE", + "nodeType": "MemberAccess", + "referencedDeclaration": 22762, + "src": "4674:26:30", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "src": "4661:39:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4615:85:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 5136, + "nodeType": "Block", + "src": "4814:100:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5131, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5098, + "src": "4873:7:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5132, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5108, + "src": "4882:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5133, + "name": "maturity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5110, + "src": "4894:8:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5129, + "name": "BitmapAssetsHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37096, + "src": "4835:19:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_BitmapAssetsHandler_$37096_$", + "typeString": "type(library BitmapAssetsHandler)" + } + }, + "id": 5130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getifCashNotional", + "nodeType": "MemberAccess", + "referencedDeclaration": 36531, + "src": "4835:37:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_int256_$", + "typeString": "function (address,uint256,uint256) view returns (int256)" + } + }, + "id": 5134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4835:68:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 5106, + "id": 5135, + "nodeType": "Return", + "src": "4828:75:30" + } + ] + }, + "id": 5137, + "nodeType": "IfStatement", + "src": "4598:316:30", + "trueBody": { + "id": 5128, + "nodeType": "Block", + "src": "4711:97:30", + "statements": [ + { + "expression": { + "hexValue": "30", + "id": 5126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4796:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 5106, + "id": 5127, + "nodeType": "Return", + "src": "4789:8:30" + } + ] + } + } + ] + }, + "documentation": { + "id": 5096, + "nodeType": "StructuredDocumentation", + "src": "4283:55:30", + "text": "@dev Returns the balance from a bitmap given the id" + }, + "id": 5139, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_balanceInBitmap", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5103, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5098, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 5139, + "src": "4378:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5097, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4378:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5100, + "mutability": "mutable", + "name": "bitmapCurrencyId", + "nodeType": "VariableDeclaration", + "scope": 5139, + "src": "4403:24:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5099, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4403:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5102, + "mutability": "mutable", + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 5139, + "src": "4437:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5101, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4437:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4368:85:30" + }, + "returnParameters": { + "id": 5106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5105, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5139, + "src": "4477:6:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 5104, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "4477:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "4476:8:30" + }, + "scope": 6026, + "src": "4343:577:30", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 5197, + "nodeType": "Block", + "src": "5111:424:30", + "statements": [ + { + "assignments": [ + 5151, + 5153, + 5155 + ], + "declarations": [ + { + "constant": false, + "id": 5151, + "mutability": "mutable", + "name": "currencyId", + "nodeType": "VariableDeclaration", + "scope": 5197, + "src": "5122:18:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5150, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5122:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5153, + "mutability": "mutable", + "name": "maturity", + "nodeType": "VariableDeclaration", + "scope": 5197, + "src": "5142:16:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5152, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5142:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5155, + "mutability": "mutable", + "name": "assetType", + "nodeType": "VariableDeclaration", + "scope": 5197, + "src": "5160:17:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5154, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5160:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5160, + "initialValue": { + "arguments": [ + { + "id": 5158, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5145, + "src": "5210:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5156, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "5181:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "decodeAssetId", + "nodeType": "MemberAccess", + "referencedDeclaration": 38443, + "src": "5181:28:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" + } + }, + "id": 5159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5181:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5121:92:30" + }, + { + "body": { + "id": 5195, + "nodeType": "Block", + "src": "5267:262:30", + "statements": [ + { + "assignments": [ + 5172 + ], + "declarations": [ + { + "constant": false, + "id": 5172, + "mutability": "mutable", + "name": "asset", + "nodeType": "VariableDeclaration", + "scope": 5195, + "src": "5281:27:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset" + }, + "typeName": { + "id": 5171, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "5281:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "visibility": "internal" + } + ], + "id": 5176, + "initialValue": { + "baseExpression": { + "id": 5173, + "name": "portfolio", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5143, + "src": "5311:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "id": 5175, + "indexExpression": { + "id": 5174, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5162, + "src": "5321:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5311:12:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5281:42:30" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5185, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5177, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5172, + "src": "5358:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5178, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57650, + "src": "5358:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5179, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5151, + "src": "5378:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5358:30:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5184, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5181, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5172, + "src": "5408:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5182, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "maturity", + "nodeType": "MemberAccess", + "referencedDeclaration": 57652, + "src": "5408:14:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5183, + "name": "maturity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5153, + "src": "5426:8:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5408:26:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5358:76:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5186, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5172, + "src": "5454:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5187, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "assetType", + "nodeType": "MemberAccess", + "referencedDeclaration": 57654, + "src": "5454:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5188, + "name": "assetType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5155, + "src": "5473:9:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5454:28:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5358:124:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5194, + "nodeType": "IfStatement", + "src": "5337:181:30", + "trueBody": { + "expression": { + "expression": { + "id": 5191, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5172, + "src": "5504:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5192, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "notional", + "nodeType": "MemberAccess", + "referencedDeclaration": 57656, + "src": "5504:14:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 5149, + "id": 5193, + "nodeType": "Return", + "src": "5497:21:30" + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5164, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5162, + "src": "5240:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 5165, + "name": "portfolio", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5143, + "src": "5244:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "id": 5166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5244:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5240:20:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5196, + "initializationExpression": { + "assignments": [ + 5162 + ], + "declarations": [ + { + "constant": false, + "id": 5162, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 5196, + "src": "5229:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5161, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5229:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5163, + "nodeType": "VariableDeclarationStatement", + "src": "5229:9:30" + }, + "loopExpression": { + "expression": { + "id": 5169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5262:3:30", + "subExpression": { + "id": 5168, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5162, + "src": "5262:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5170, + "nodeType": "ExpressionStatement", + "src": "5262:3:30" + }, + "nodeType": "ForStatement", + "src": "5224:305:30" + } + ] + }, + "documentation": { + "id": 5140, + "nodeType": "StructuredDocumentation", + "src": "4926:49:30", + "text": "@dev Searches an array for the matching asset" + }, + "id": 5198, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_balanceInArray", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5146, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5143, + "mutability": "mutable", + "name": "portfolio", + "nodeType": "VariableDeclaration", + "scope": 5198, + "src": "5005:33:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5141, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "5005:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5142, + "nodeType": "ArrayTypeName", + "src": "5005:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5145, + "mutability": "mutable", + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 5198, + "src": "5040:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5144, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5040:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5004:47:30" + }, + "returnParameters": { + "id": 5149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5148, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5198, + "src": "5099:6:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 5147, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "5099:6:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "5098:8:30" + }, + "scope": 6026, + "src": "4980:555:30", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 58190 + ], + "body": { + "id": 5335, + "nodeType": "Block", + "src": "6402:1746:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5214, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5201, + "src": "6681:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5215, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5203, + "src": "6687:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5213, + "name": "_validateAccounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5480, + "src": "6663:17:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) view" + } + }, + "id": 5216, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6663:27:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5217, + "nodeType": "ExpressionStatement", + "src": "6663:27:30" + }, + { + "assignments": [ + 5219 + ], + "declarations": [ + { + "constant": false, + "id": 5219, + "mutability": "mutable", + "name": "fromContext", + "nodeType": "VariableDeclaration", + "scope": 5335, + "src": "6814:33:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5218, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "6814:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 5220, + "nodeType": "VariableDeclarationStatement", + "src": "6814:33:30" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5221, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5207, + "src": "6861:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 5222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6870:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6861:10:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 5298, + "nodeType": "Block", + "src": "7505:84:30", + "statements": [ + { + "expression": { + "id": 5296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5291, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5219, + "src": "7519:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5294, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5201, + "src": "7573:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5292, + "name": "AccountContextHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24055, + "src": "7533:21:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", + "typeString": "type(library AccountContextHandler)" + } + }, + "id": 5293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23345, + "src": "7533:39:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) view returns (struct AccountContext memory)" + } + }, + "id": 5295, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7533:45:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "src": "7519:59:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5297, + "nodeType": "ExpressionStatement", + "src": "7519:59:30" + } + ] + }, + "id": 5299, + "nodeType": "IfStatement", + "src": "6857:732:30", + "trueBody": { + "id": 5290, + "nodeType": "Block", + "src": "6873:626:30", + "statements": [ + { + "assignments": [ + 5227 + ], + "declarations": [ + { + "constant": false, + "id": 5227, + "mutability": "mutable", + "name": "assets", + "nodeType": "VariableDeclaration", + "scope": 5290, + "src": "6887:30:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5225, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "6887:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5226, + "nodeType": "ArrayTypeName", + "src": "6887:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + } + ], + "id": 5233, + "initialValue": { + "arguments": [ + { + "hexValue": "31", + "id": 5231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6941:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 5230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "6920:20:30", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct PortfolioAsset memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 5228, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "6924:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5229, + "nodeType": "ArrayTypeName", + "src": "6924:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + } + }, + "id": 5232, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6920:23:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6887:56:30" + }, + { + "assignments": [ + 5235 + ], + "declarations": [ + { + "constant": false, + "id": 5235, + "mutability": "mutable", + "name": "asset", + "nodeType": "VariableDeclaration", + "scope": 5290, + "src": "6957:27:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset" + }, + "typeName": { + "id": 5234, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "6957:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "visibility": "internal" + } + ], + "id": 5239, + "initialValue": { + "baseExpression": { + "id": 5236, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5227, + "src": "6987:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "id": 5238, + "indexExpression": { + "hexValue": "30", + "id": 5237, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6994:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6987:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6957:39:30" + }, + { + "expression": { + "id": 5252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "expression": { + "id": 5240, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5235, + "src": "7012:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5242, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57650, + "src": "7012:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5243, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5235, + "src": "7030:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5244, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "maturity", + "nodeType": "MemberAccess", + "referencedDeclaration": 57652, + "src": "7030:14:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5245, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5235, + "src": "7046:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5246, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "assetType", + "nodeType": "MemberAccess", + "referencedDeclaration": 57654, + "src": "7046:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 5247, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "7011:51:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5250, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5205, + "src": "7094:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5248, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "7065:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "decodeAssetId", + "nodeType": "MemberAccess", + "referencedDeclaration": 38443, + "src": "7065:28:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" + } + }, + "id": 5251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7065:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256)" + } + }, + "src": "7011:86:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5253, + "nodeType": "ExpressionStatement", + "src": "7011:86:30" + }, + { + "expression": { + "id": 5261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 5254, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5235, + "src": "7187:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5256, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "notional", + "nodeType": "MemberAccess", + "referencedDeclaration": 57656, + "src": "7187:14:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5259, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5207, + "src": "7221:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5257, + "name": "SafeInt256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 45162, + "src": "7204:10:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", + "typeString": "type(library SafeInt256)" + } + }, + "id": 5258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "toInt", + "nodeType": "MemberAccess", + "referencedDeclaration": 45127, + "src": "7204:16:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", + "typeString": "function (uint256) pure returns (int256)" + } + }, + "id": 5260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7204:24:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "7187:41:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 5262, + "nodeType": "ExpressionStatement", + "src": "7187:41:30" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 5264, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5235, + "src": "7264:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5265, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57650, + "src": "7264:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5266, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5235, + "src": "7282:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5267, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "maturity", + "nodeType": "MemberAccess", + "referencedDeclaration": 57652, + "src": "7282:14:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5268, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "7298:5:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 5269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "7298:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5263, + "name": "_requireValidMaturity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5673, + "src": "7242:21:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256) view" + } + }, + "id": 5270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7242:72:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5271, + "nodeType": "ExpressionStatement", + "src": "7242:72:30" + }, + { + "expression": { + "id": 5279, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 5272, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5219, + "src": "7361:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + null + ], + "id": 5273, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "7360:30:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$__$", + "typeString": "tuple(struct AccountContext memory,)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5275, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5201, + "src": "7403:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5276, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5203, + "src": "7409:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5277, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5227, + "src": "7413:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + ], + "id": 5274, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5769, + "src": "7393:9:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,address,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory,struct AccountContext memory)" + } + }, + "id": 5278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7393:27:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" + } + }, + "src": "7360:60:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5280, + "nodeType": "ExpressionStatement", + "src": "7360:60:30" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 5282, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "7455:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7455:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 5284, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5201, + "src": "7467:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5285, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5203, + "src": "7473:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5286, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5205, + "src": "7477:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5287, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5207, + "src": "7481:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5281, + "name": "TransferSingle", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58084, + "src": "7440:14:30", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (address,address,address,uint256,uint256)" + } + }, + "id": 5288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7440:48:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5289, + "nodeType": "EmitStatement", + "src": "7435:53:30" + } + ] + } + }, + { + "assignments": [ + 5301 + ], + "declarations": [ + { + "constant": false, + "id": 5301, + "mutability": "mutable", + "name": "toContext", + "nodeType": "VariableDeclaration", + "scope": 5335, + "src": "7710:31:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5300, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "7710:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 5302, + "nodeType": "VariableDeclarationStatement", + "src": "7710:31:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5304, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5201, + "src": "7775:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5305, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5203, + "src": "7781:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5306, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5219, + "src": "7785:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5307, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5301, + "src": "7798:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5308, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5209, + "src": "7809:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "hexValue": "66616c7365", + "id": 5309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7815:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5303, + "name": "_checkPostTransferEvent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5932, + "src": "7751:23:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bytes_calldata_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,address,struct AccountContext memory,struct AccountContext memory,bytes calldata,bool)" + } + }, + "id": 5310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7751:70:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5311, + "nodeType": "ExpressionStatement", + "src": "7751:70:30" + }, + { + "condition": { + "arguments": [ + { + "id": 5314, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5203, + "src": "7922:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5312, + "name": "Address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58950, + "src": "7903:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Address_$58950_$", + "typeString": "type(library Address)" + } + }, + "id": 5313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "isContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 58674, + "src": "7903:18:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 5315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7903:22:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5334, + "nodeType": "IfStatement", + "src": "7899:243:30", + "trueBody": { + "id": 5333, + "nodeType": "Block", + "src": "7927:215:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "expression": { + "id": 5321, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "8010:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8010:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 5323, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5201, + "src": "8022:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5324, + "name": "id", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5205, + "src": "8028:2:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5325, + "name": "amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5207, + "src": "8032:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5326, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5209, + "src": "8040:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "arguments": [ + { + "id": 5318, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5203, + "src": "7988:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5317, + "name": "IERC1155TokenReceiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58988, + "src": "7966:21:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155TokenReceiver_$58988_$", + "typeString": "type(contract IERC1155TokenReceiver)" + } + }, + "id": 5319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7966:25:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC1155TokenReceiver_$58988", + "typeString": "contract IERC1155TokenReceiver" + } + }, + "id": 5320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "onERC1155Received", + "nodeType": "MemberAccess", + "referencedDeclaration": 58969, + "src": "7966:43:30", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" + } + }, + "id": 5327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7966:79:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5328, + "name": "ERC1155_ACCEPTED", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4873, + "src": "8069:16:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7966:119:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4e6f74206163636570746564", + "id": 5330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8103:14:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", + "typeString": "literal_string \"Not accepted\"" + }, + "value": "Not accepted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", + "typeString": "literal_string \"Not accepted\"" + } + ], + "id": 5316, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "7941:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7941:190:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5332, + "nodeType": "ExpressionStatement", + "src": "7941:190:30" + } + ] + } + } + ] + }, + "documentation": { + "id": 5199, + "nodeType": "StructuredDocumentation", + "src": "5541:683:30", + "text": "@notice Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash\n than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n @param from account to transfer from\n @param to account to transfer to\n @param id ERC1155 id of the asset\n @param amount amount to transfer\n @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n a trading action on Notional for the `from` address\n @dev emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled" + }, + "functionSelector": "f242432a", + "id": 5336, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "safeTransferFrom", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5211, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "6393:8:30" + }, + "parameters": { + "id": 5210, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5201, + "mutability": "mutable", + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 5336, + "src": "6264:12:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5200, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6264:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5203, + "mutability": "mutable", + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 5336, + "src": "6286:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5202, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6286:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5205, + "mutability": "mutable", + "name": "id", + "nodeType": "VariableDeclaration", + "scope": 5336, + "src": "6306:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5204, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6306:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5207, + "mutability": "mutable", + "name": "amount", + "nodeType": "VariableDeclaration", + "scope": 5336, + "src": "6326:14:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6326:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5209, + "mutability": "mutable", + "name": "data", + "nodeType": "VariableDeclaration", + "scope": 5336, + "src": "6350:19:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5208, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "6350:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "6254:121:30" + }, + "returnParameters": { + "id": 5212, + "nodeType": "ParameterList", + "parameters": [], + "src": "6402:0:30" + }, + "scope": 6026, + "src": "6229:1919:30", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 58205 + ], + "body": { + "id": 5431, + "nodeType": "Block", + "src": "9051:1298:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5354, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5339, + "src": "9278:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5355, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "9284:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5353, + "name": "_validateAccounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5480, + "src": "9260:17:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) view" + } + }, + "id": 5356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9260:27:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5357, + "nodeType": "ExpressionStatement", + "src": "9260:27:30" + }, + { + "assignments": [ + 5361, + 5363 + ], + "declarations": [ + { + "constant": false, + "id": 5361, + "mutability": "mutable", + "name": "assets", + "nodeType": "VariableDeclaration", + "scope": 5431, + "src": "9299:30:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5359, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "9299:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5360, + "nodeType": "ArrayTypeName", + "src": "9299:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5363, + "mutability": "mutable", + "name": "toTransferNegative", + "nodeType": "VariableDeclaration", + "scope": 5431, + "src": "9331:23:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5362, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9331:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 5368, + "initialValue": { + "arguments": [ + { + "id": 5365, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5344, + "src": "9374:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + { + "id": 5366, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5347, + "src": "9379:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + ], + "id": 5364, + "name": "_decodeToAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5628, + "src": "9358:15:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", + "typeString": "function (uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory,bool)" + } + }, + "id": 5367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9358:29:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", + "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9298:89:30" + }, + { + "condition": { + "id": 5369, + "name": "toTransferNegative", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5363, + "src": "9535:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5379, + "nodeType": "IfStatement", + "src": "9531:81:30", + "trueBody": { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 5372, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "9580:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 5373, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9584:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9584:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 5371, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6006, + "src": "9563:16:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 5375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9563:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a6564", + "id": 5376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9597:14:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + }, + "value": "Unauthorized" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + } + ], + "id": 5370, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "9555:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9555:57:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5378, + "nodeType": "ExpressionStatement", + "src": "9555:57:30" + } + }, + { + "assignments": [ + 5381, + 5383 + ], + "declarations": [ + { + "constant": false, + "id": 5381, + "mutability": "mutable", + "name": "fromContext", + "nodeType": "VariableDeclaration", + "scope": 5431, + "src": "9624:33:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5380, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "9624:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5383, + "mutability": "mutable", + "name": "toContext", + "nodeType": "VariableDeclaration", + "scope": 5431, + "src": "9659:31:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5382, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "9659:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 5389, + "initialValue": { + "arguments": [ + { + "id": 5385, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5339, + "src": "9717:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5386, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "9735:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5387, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5361, + "src": "9751:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + ], + "id": 5384, + "name": "_transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5769, + "src": "9694:9:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,address,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory,struct AccountContext memory)" + } + }, + "id": 5388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9694:73:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9623:144:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5391, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5339, + "src": "9802:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5392, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "9808:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5393, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5381, + "src": "9812:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5394, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5383, + "src": "9825:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5395, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5349, + "src": "9836:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "id": 5396, + "name": "toTransferNegative", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5363, + "src": "9842:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5390, + "name": "_checkPostTransferEvent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5932, + "src": "9778:23:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bytes_calldata_ptr_$_t_bool_$returns$__$", + "typeString": "function (address,address,struct AccountContext memory,struct AccountContext memory,bytes calldata,bool)" + } + }, + "id": 5397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9778:83:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5398, + "nodeType": "ExpressionStatement", + "src": "9778:83:30" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 5400, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "9890:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9890:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 5402, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5339, + "src": "9902:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5403, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "9908:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5404, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5344, + "src": "9912:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + { + "id": 5405, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5347, + "src": "9917:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + ], + "id": 5399, + "name": "TransferBatch", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58098, + "src": "9876:13:30", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address,address,address,uint256[] memory,uint256[] memory)" + } + }, + "id": 5406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9876:49:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5407, + "nodeType": "EmitStatement", + "src": "9871:54:30" + }, + { + "condition": { + "arguments": [ + { + "id": 5410, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "10012:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5408, + "name": "Address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58950, + "src": "9993:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Address_$58950_$", + "typeString": "type(library Address)" + } + }, + "id": 5409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "isContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 58674, + "src": "9993:18:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 5411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9993:22:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5430, + "nodeType": "IfStatement", + "src": "9989:354:30", + "trueBody": { + "id": 5429, + "nodeType": "Block", + "src": "10017:326:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "expression": { + "id": 5417, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "10126:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "10126:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 5419, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5339, + "src": "10158:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5420, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5344, + "src": "10184:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + { + "id": 5421, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5347, + "src": "10209:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + { + "id": 5422, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5349, + "src": "10238:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + }, + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "arguments": [ + { + "id": 5414, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5341, + "src": "10078:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5413, + "name": "IERC1155TokenReceiver", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58988, + "src": "10056:21:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IERC1155TokenReceiver_$58988_$", + "typeString": "type(contract IERC1155TokenReceiver)" + } + }, + "id": 5415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10056:25:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_IERC1155TokenReceiver_$58988", + "typeString": "contract IERC1155TokenReceiver" + } + }, + "id": 5416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "onERC1155BatchReceived", + "nodeType": "MemberAccess", + "referencedDeclaration": 58987, + "src": "10056:48:30", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (address,address,uint256[] memory,uint256[] memory,bytes memory) external returns (bytes4)" + } + }, + "id": 5423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10056:204:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5424, + "name": "ERC1155_BATCH_ACCEPTED", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4881, + "src": "10264:22:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "10056:230:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4e6f74206163636570746564", + "id": 5426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10304:14:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", + "typeString": "literal_string \"Not accepted\"" + }, + "value": "Not accepted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", + "typeString": "literal_string \"Not accepted\"" + } + ], + "id": 5412, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "10031:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10031:301:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5428, + "nodeType": "ExpressionStatement", + "src": "10031:301:30" + } + ] + } + } + ] + }, + "documentation": { + "id": 5337, + "nodeType": "StructuredDocumentation", + "src": "8154:690:30", + "text": "@notice Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash\n than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n @param from account to transfer from\n @param to account to transfer to\n @param ids ERC1155 ids of the assets\n @param amounts amounts to transfer\n @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n a trading action on Notional for the `from` address\n @dev emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled" + }, + "functionSelector": "2eb2c2d6", + "id": 5432, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "safeBatchTransferFrom", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5351, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "9042:8:30" + }, + "parameters": { + "id": 5350, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5339, + "mutability": "mutable", + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 5432, + "src": "8889:12:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5338, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8889:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5341, + "mutability": "mutable", + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 5432, + "src": "8911:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5340, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8911:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5344, + "mutability": "mutable", + "name": "ids", + "nodeType": "VariableDeclaration", + "scope": 5432, + "src": "8931:22:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5342, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8931:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5343, + "nodeType": "ArrayTypeName", + "src": "8931:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5347, + "mutability": "mutable", + "name": "amounts", + "nodeType": "VariableDeclaration", + "scope": 5432, + "src": "8963:26:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8963:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5346, + "nodeType": "ArrayTypeName", + "src": "8963:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5349, + "mutability": "mutable", + "name": "data", + "nodeType": "VariableDeclaration", + "scope": 5432, + "src": "8999:19:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5348, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8999:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8879:145:30" + }, + "returnParameters": { + "id": 5352, + "nodeType": "ParameterList", + "parameters": [], + "src": "9051:0:30" + }, + "scope": 6026, + "src": "8849:1500:30", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 5479, + "nodeType": "Block", + "src": "10465:576:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5441, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5435, + "src": "10551:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 5442, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5437, + "src": "10559:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10551:10:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5444, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5437, + "src": "10565:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 5447, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10579:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 5446, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10571:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5445, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10571:7:30", + "typeDescriptions": {} + } + }, + "id": 5448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10571:10:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "10565:16:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "10551:30:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5451, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5437, + "src": "10585:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "id": 5454, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "10599:4:30", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC1155Action_$6026", + "typeString": "contract ERC1155Action" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_ERC1155Action_$6026", + "typeString": "contract ERC1155Action" + } + ], + "id": 5453, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "10591:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5452, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10591:7:30", + "typeDescriptions": {} + } + }, + "id": 5455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10591:13:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10585:19:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "10551:53:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "496e76616c69642061646472657373", + "id": 5458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10606:17:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1462473b7a4b33d32b109b815fd2324d00c9e5839b707ecf16d0ab5744f99226", + "typeString": "literal_string \"Invalid address\"" + }, + "value": "Invalid address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1462473b7a4b33d32b109b815fd2324d00c9e5839b707ecf16d0ab5744f99226", + "typeString": "literal_string \"Invalid address\"" + } + ], + "id": 5440, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "10543:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10543:81:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5460, + "nodeType": "ExpressionStatement", + "src": "10543:81:30" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5462, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "10677:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5463, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "10677:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5464, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5435, + "src": "10691:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10677:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "arguments": [ + { + "id": 5467, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5435, + "src": "10716:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 5468, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "10722:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "10722:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 5466, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6006, + "src": "10699:16:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 5470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10699:34:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "10677:56:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a6564", + "id": 5472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10735:14:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + }, + "value": "Unauthorized" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", + "typeString": "literal_string \"Unauthorized\"" + } + ], + "id": 5461, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "10669:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10669:81:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5474, + "nodeType": "ExpressionStatement", + "src": "10669:81:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5476, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5435, + "src": "11029:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 5475, + "name": "requireValidAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3661, + "src": "11009:19:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", + "typeString": "function (address) view" + } + }, + "id": 5477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11009:25:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5478, + "nodeType": "ExpressionStatement", + "src": "11009:25:30" + } + ] + }, + "documentation": { + "id": 5433, + "nodeType": "StructuredDocumentation", + "src": "10355:39:30", + "text": "@dev Validates accounts on transfer" + }, + "id": 5480, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_validateAccounts", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5435, + "mutability": "mutable", + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 5480, + "src": "10426:12:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5434, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10426:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5437, + "mutability": "mutable", + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 5480, + "src": "10440:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5436, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10440:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10425:26:30" + }, + "returnParameters": { + "id": 5439, + "nodeType": "ParameterList", + "parameters": [], + "src": "10465:0:30" + }, + "scope": 6026, + "src": "10399:642:30", + "stateMutability": "view", + "virtual": false, + "visibility": "private" + }, + { + "baseFunctions": [ + 58217 + ], + "body": { + "id": 5505, + "nodeType": "Block", + "src": "11414:138:30", + "statements": [ + { + "assignments": [ + 5497, + null + ], + "declarations": [ + { + "constant": false, + "id": 5497, + "mutability": "mutable", + "name": "assets", + "nodeType": "VariableDeclaration", + "scope": 5505, + "src": "11452:30:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5495, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "11452:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5496, + "nodeType": "ArrayTypeName", + "src": "11452:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + }, + null + ], + "id": 5502, + "initialValue": { + "arguments": [ + { + "id": 5499, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5484, + "src": "11509:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + { + "id": 5500, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5487, + "src": "11514:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + ], + "id": 5498, + "name": "_decodeToAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5628, + "src": "11493:15:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", + "typeString": "function (uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory,bool)" + } + }, + "id": 5501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11493:29:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", + "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11451:71:30" + }, + { + "expression": { + "id": 5503, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5497, + "src": "11539:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "functionReturnParameters": 5493, + "id": 5504, + "nodeType": "Return", + "src": "11532:13:30" + } + ] + }, + "documentation": { + "id": 5481, + "nodeType": "StructuredDocumentation", + "src": "11047:193:30", + "text": "@notice Decodes ids and amounts to PortfolioAsset objects\n @param ids array of ERC1155 ids\n @param amounts amounts to transfer\n @return array of portfolio asset objects" + }, + "functionSelector": "3fa6b808", + "id": 5506, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "decodeToAssets", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5489, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "11359:8:30" + }, + "parameters": { + "id": 5488, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5484, + "mutability": "mutable", + "name": "ids", + "nodeType": "VariableDeclaration", + "scope": 5506, + "src": "11269:22:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5482, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11269:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5483, + "nodeType": "ArrayTypeName", + "src": "11269:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5487, + "mutability": "mutable", + "name": "amounts", + "nodeType": "VariableDeclaration", + "scope": 5506, + "src": "11293:26:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5485, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11293:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5486, + "nodeType": "ArrayTypeName", + "src": "11293:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "11268:52:30" + }, + "returnParameters": { + "id": 5493, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5492, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5506, + "src": "11385:23:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5490, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "11385:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5491, + "nodeType": "ArrayTypeName", + "src": "11385:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + } + ], + "src": "11384:25:30" + }, + "scope": 6026, + "src": "11245:307:30", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 5627, + "nodeType": "Block", + "src": "11717:1363:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5521, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5509, + "src": "11735:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11735:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 5523, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5512, + "src": "11749:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11749:14:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11735:28:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5520, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "11727:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 5526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11727:37:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5527, + "nodeType": "ExpressionStatement", + "src": "11727:37:30" + }, + { + "assignments": [ + 5529 + ], + "declarations": [ + { + "constant": false, + "id": 5529, + "mutability": "mutable", + "name": "toTransferNegative", + "nodeType": "VariableDeclaration", + "scope": 5627, + "src": "11774:23:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5528, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11774:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 5531, + "initialValue": { + "hexValue": "66616c7365", + "id": 5530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11800:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "nodeType": "VariableDeclarationStatement", + "src": "11774:31:30" + }, + { + "assignments": [ + 5535 + ], + "declarations": [ + { + "constant": false, + "id": 5535, + "mutability": "mutable", + "name": "assets", + "nodeType": "VariableDeclaration", + "scope": 5627, + "src": "11815:30:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5533, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "11815:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5534, + "nodeType": "ArrayTypeName", + "src": "11815:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + } + ], + "id": 5542, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 5539, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5509, + "src": "11869:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11869:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "11848:20:30", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct PortfolioAsset memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 5536, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "11852:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5537, + "nodeType": "ArrayTypeName", + "src": "11852:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + } + }, + "id": 5541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11848:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11815:65:30" + }, + { + "body": { + "id": 5621, + "nodeType": "Block", + "src": "11928:1100:30", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5553, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "12045:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 5554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12049:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12045:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5569, + "nodeType": "IfStatement", + "src": "12041:61:30", + "trueBody": { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5565, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 5557, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5509, + "src": "12060:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5559, + "indexExpression": { + "id": 5558, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "12064:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12060:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "baseExpression": { + "id": 5560, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5509, + "src": "12069:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5564, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5561, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "12073:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 5562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12077:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "12073:5:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12069:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12060:19:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "494473206d75737420626520736f72746564", + "id": 5566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12081:20:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a257b34c4dd73c1cfb471605b5c9265382a49f713f27dffe4296072792908496", + "typeString": "literal_string \"IDs must be sorted\"" + }, + "value": "IDs must be sorted" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a257b34c4dd73c1cfb471605b5c9265382a49f713f27dffe4296072792908496", + "typeString": "literal_string \"IDs must be sorted\"" + } + ], + "id": 5556, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "12052:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5567, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12052:50:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5568, + "nodeType": "ExpressionStatement", + "src": "12052:50:30" + } + }, + { + "assignments": [ + 5571 + ], + "declarations": [ + { + "constant": false, + "id": 5571, + "mutability": "mutable", + "name": "asset", + "nodeType": "VariableDeclaration", + "scope": 5621, + "src": "12117:27:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset" + }, + "typeName": { + "id": 5570, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "12117:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "visibility": "internal" + } + ], + "id": 5575, + "initialValue": { + "baseExpression": { + "id": 5572, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5535, + "src": "12147:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + "id": 5574, + "indexExpression": { + "id": 5573, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "12154:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12147:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12117:39:30" + }, + { + "expression": { + "id": 5590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "expression": { + "id": 5576, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12171:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5578, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57650, + "src": "12171:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5579, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12189:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5580, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "maturity", + "nodeType": "MemberAccess", + "referencedDeclaration": 57652, + "src": "12189:14:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5581, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12205:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5582, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "assetType", + "nodeType": "MemberAccess", + "referencedDeclaration": 57654, + "src": "12205:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 5583, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "12170:51:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 5586, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5509, + "src": "12253:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5588, + "indexExpression": { + "id": 5587, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "12257:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12253:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5584, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "12224:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "decodeAssetId", + "nodeType": "MemberAccess", + "referencedDeclaration": 38443, + "src": "12224:28:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" + } + }, + "id": 5589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12224:36:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", + "typeString": "tuple(uint256,uint256,uint256)" + } + }, + "src": "12170:90:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5591, + "nodeType": "ExpressionStatement", + "src": "12170:90:30" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 5593, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12297:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5594, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "currencyId", + "nodeType": "MemberAccess", + "referencedDeclaration": 57650, + "src": "12297:16:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5595, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12315:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5596, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "maturity", + "nodeType": "MemberAccess", + "referencedDeclaration": 57652, + "src": "12315:14:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 5597, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "12331:5:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 5598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "12331:15:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5592, + "name": "_requireValidMaturity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5673, + "src": "12275:21:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256) view" + } + }, + "id": 5599, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12275:72:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5600, + "nodeType": "ExpressionStatement", + "src": "12275:72:30" + }, + { + "expression": { + "id": 5610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 5601, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12759:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5603, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "notional", + "nodeType": "MemberAccess", + "referencedDeclaration": 57656, + "src": "12759:14:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 5606, + "name": "amounts", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5512, + "src": "12783:7:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5608, + "indexExpression": { + "id": 5607, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "12791:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12783:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 5605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "12776:6:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 5604, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12776:6:30", + "typeDescriptions": {} + } + }, + "id": 5609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12776:18:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "12759:35:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 5611, + "nodeType": "ExpressionStatement", + "src": "12759:35:30" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 5615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5612, + "name": "asset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5571, + "src": "12972:5:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", + "typeString": "struct PortfolioAsset memory" + } + }, + "id": 5613, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "notional", + "nodeType": "MemberAccess", + "referencedDeclaration": 57656, + "src": "12972:14:30", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 5614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12989:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12972:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5620, + "nodeType": "IfStatement", + "src": "12968:49:30", + "trueBody": { + "expression": { + "id": 5618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5616, + "name": "toTransferNegative", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5529, + "src": "12992:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 5617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13013:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "12992:25:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5619, + "nodeType": "ExpressionStatement", + "src": "12992:25:30" + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5546, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "11907:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 5547, + "name": "ids", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5509, + "src": "11911:3:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[] calldata" + } + }, + "id": 5548, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "11911:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11907:14:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5622, + "initializationExpression": { + "assignments": [ + 5544 + ], + "declarations": [ + { + "constant": false, + "id": 5544, + "mutability": "mutable", + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 5622, + "src": "11896:9:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5543, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11896:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 5545, + "nodeType": "VariableDeclarationStatement", + "src": "11896:9:30" + }, + "loopExpression": { + "expression": { + "id": 5551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "11923:3:30", + "subExpression": { + "id": 5550, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5544, + "src": "11923:1:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5552, + "nodeType": "ExpressionStatement", + "src": "11923:3:30" + }, + "nodeType": "ForStatement", + "src": "11891:1137:30" + }, + { + "expression": { + "components": [ + { + "id": 5623, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5535, + "src": "13046:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + }, + { + "id": 5624, + "name": "toTransferNegative", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5529, + "src": "13054:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 5625, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "13045:28:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", + "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" + } + }, + "functionReturnParameters": 5519, + "id": 5626, + "nodeType": "Return", + "src": "13038:35:30" + } + ] + }, + "id": 5628, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_decodeToAssets", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5509, + "mutability": "mutable", + "name": "ids", + "nodeType": "VariableDeclaration", + "scope": 5628, + "src": "11583:22:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5507, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11583:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5508, + "nodeType": "ArrayTypeName", + "src": "11583:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5512, + "mutability": "mutable", + "name": "amounts", + "nodeType": "VariableDeclaration", + "scope": 5628, + "src": "11607:26:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 5510, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11607:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 5511, + "nodeType": "ArrayTypeName", + "src": "11607:9:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "11582:52:30" + }, + "returnParameters": { + "id": 5519, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5516, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5628, + "src": "11682:23:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5514, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "11682:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5515, + "nodeType": "ArrayTypeName", + "src": "11682:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5518, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5628, + "src": "11707:4:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5517, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11707:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11681:31:30" + }, + "scope": 6026, + "src": "11558:1522:30", + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 58228 + ], + "body": { + "id": 5648, + "nodeType": "Block", + "src": "13458:85:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5643, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5631, + "src": "13504:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + { + "id": 5644, + "name": "maturity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5633, + "src": "13516:8:30", + "typeDescriptions": { + "typeIdentifier": "t_uint40", + "typeString": "uint40" + } + }, + { + "id": 5645, + "name": "assetType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5635, + "src": "13526:9:30", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + { + "typeIdentifier": "t_uint40", + "typeString": "uint40" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + ], + "expression": { + "id": 5641, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "13475:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "encodeAssetId", + "nodeType": "MemberAccess", + "referencedDeclaration": 38522, + "src": "13475:28:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256,uint256) pure returns (uint256)" + } + }, + "id": 5646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13475:61:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 5640, + "id": 5647, + "nodeType": "Return", + "src": "13468:68:30" + } + ] + }, + "documentation": { + "id": 5629, + "nodeType": "StructuredDocumentation", + "src": "13086:223:30", + "text": "@notice Encodes parameters into an ERC1155 id\n @param currencyId currency id of the asset\n @param maturity timestamp of the maturity\n @param assetType id of the asset type\n @return ERC1155 id" + }, + "functionSelector": "735a1dc8", + "id": 5649, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "encodeToId", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5637, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "13431:8:30" + }, + "parameters": { + "id": 5636, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5631, + "mutability": "mutable", + "name": "currencyId", + "nodeType": "VariableDeclaration", + "scope": 5649, + "src": "13343:17:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + }, + "typeName": { + "id": 5630, + "name": "uint16", + "nodeType": "ElementaryTypeName", + "src": "13343:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint16", + "typeString": "uint16" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5633, + "mutability": "mutable", + "name": "maturity", + "nodeType": "VariableDeclaration", + "scope": 5649, + "src": "13370:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint40", + "typeString": "uint40" + }, + "typeName": { + "id": 5632, + "name": "uint40", + "nodeType": "ElementaryTypeName", + "src": "13370:6:30", + "typeDescriptions": { + "typeIdentifier": "t_uint40", + "typeString": "uint40" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5635, + "mutability": "mutable", + "name": "assetType", + "nodeType": "VariableDeclaration", + "scope": 5649, + "src": "13395:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 5634, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "13395:5:30", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + } + ], + "src": "13333:83:30" + }, + "returnParameters": { + "id": 5640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5639, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5649, + "src": "13449:7:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5638, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13449:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13448:9:30" + }, + "scope": 6026, + "src": "13314:229:30", + "stateMutability": "pure", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 5672, + "nodeType": "Block", + "src": "13818:166:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 5664, + "name": "currencyId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5652, + "src": "13902:10:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5662, + "name": "CashGroup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 31956, + "src": "13874:9:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_CashGroup_$31956_$", + "typeString": "type(library CashGroup)" + } + }, + "id": 5663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getMaxMarketIndex", + "nodeType": "MemberAccess", + "referencedDeclaration": 31440, + "src": "13874:27:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint8_$", + "typeString": "function (uint256) view returns (uint8)" + } + }, + "id": 5665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13874:39:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "id": 5666, + "name": "maturity", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5654, + "src": "13915:8:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5667, + "name": "blockTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5656, + "src": "13925:9:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5660, + "name": "DateTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 32595, + "src": "13849:8:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_DateTime_$32595_$", + "typeString": "type(library DateTime)" + } + }, + "id": 5661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "isValidMaturity", + "nodeType": "MemberAccess", + "referencedDeclaration": 32200, + "src": "13849:24:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (uint256,uint256,uint256) pure returns (bool)" + } + }, + "id": 5668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13849:86:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "496e76616c6964206d61747572697479", + "id": 5669, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13949:18:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6ac8fa1ec1f45f2a4a2017eedf59db09ad3fe10b2748a8ca73a4b71f86bef54e", + "typeString": "literal_string \"Invalid maturity\"" + }, + "value": "Invalid maturity" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_6ac8fa1ec1f45f2a4a2017eedf59db09ad3fe10b2748a8ca73a4b71f86bef54e", + "typeString": "literal_string \"Invalid maturity\"" + } + ], + "id": 5659, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "13828:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5670, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13828:149:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5671, + "nodeType": "ExpressionStatement", + "src": "13828:149:30" + } + ] + }, + "documentation": { + "id": 5650, + "nodeType": "StructuredDocumentation", + "src": "13549:133:30", + "text": "@dev Ensures that all maturities specified are valid for the currency id (i.e. they do not\n go past the max maturity date)" + }, + "id": 5673, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_requireValidMaturity", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5657, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5652, + "mutability": "mutable", + "name": "currencyId", + "nodeType": "VariableDeclaration", + "scope": 5673, + "src": "13727:18:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5651, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13727:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5654, + "mutability": "mutable", + "name": "maturity", + "nodeType": "VariableDeclaration", + "scope": 5673, + "src": "13755:16:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5653, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13755:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5656, + "mutability": "mutable", + "name": "blockTime", + "nodeType": "VariableDeclaration", + "scope": 5673, + "src": "13781:17:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5655, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13781:7:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13717:87:30" + }, + "returnParameters": { + "id": 5658, + "nodeType": "ParameterList", + "parameters": [], + "src": "13818:0:30" + }, + "scope": 6026, + "src": "13687:297:30", + "stateMutability": "view", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 5768, + "nodeType": "Block", + "src": "14221:1112:30", + "statements": [ + { + "assignments": [ + 5689 + ], + "declarations": [ + { + "constant": false, + "id": 5689, + "mutability": "mutable", + "name": "toContext", + "nodeType": "VariableDeclaration", + "scope": 5768, + "src": "14422:31:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5688, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "14422:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 5694, + "initialValue": { + "arguments": [ + { + "id": 5692, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5678, + "src": "14496:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5690, + "name": "AccountContextHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24055, + "src": "14456:21:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", + "typeString": "type(library AccountContextHandler)" + } + }, + "id": 5691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23345, + "src": "14456:39:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) view returns (struct AccountContext memory)" + } + }, + "id": 5693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14456:43:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "14422:77:30" + }, + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 5695, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "14513:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5696, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "mustSettleAssets", + "nodeType": "MemberAccess", + "referencedDeclaration": 23510, + "src": "14513:26:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) view returns (bool)" + } + }, + "id": 5697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14513:28:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5707, + "nodeType": "IfStatement", + "src": "14509:120:30", + "trueBody": { + "id": 5706, + "nodeType": "Block", + "src": "14543:86:30", + "statements": [ + { + "expression": { + "id": 5704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5698, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "14557:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5701, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5678, + "src": "14604:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5702, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "14608:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "expression": { + "id": 5699, + "name": "SettleAssetsExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1878, + "src": "14569:20:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + }, + "id": 5700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "settleAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 1877, + "src": "14569:34:30", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" + } + }, + "id": 5703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14569:49:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "src": "14557:61:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5705, + "nodeType": "ExpressionStatement", + "src": "14557:61:30" + } + ] + } + }, + { + "expression": { + "id": 5715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5708, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "14638:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5711, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5678, + "src": "14686:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5712, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "14690:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5713, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5681, + "src": "14701:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + ], + "expression": { + "id": 5709, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "14650:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "placeAssetsInAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 38617, + "src": "14650:35:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct AccountContext memory,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory)" + } + }, + "id": 5714, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14650:58:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "src": "14638:70:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5716, + "nodeType": "ExpressionStatement", + "src": "14638:70:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5720, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5678, + "src": "14746:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5717, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "14718:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5719, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "setAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23372, + "src": "14718:27:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory,address)" + } + }, + "id": 5721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14718:31:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5722, + "nodeType": "ExpressionStatement", + "src": "14718:31:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5726, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5681, + "src": "14876:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + ], + "expression": { + "id": 5723, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "14832:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5725, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "invertNotionalAmountsInPlace", + "nodeType": "MemberAccess", + "referencedDeclaration": 38554, + "src": "14832:43:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$__$", + "typeString": "function (struct PortfolioAsset memory[] memory) pure" + } + }, + "id": 5727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14832:51:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5728, + "nodeType": "ExpressionStatement", + "src": "14832:51:30" + }, + { + "assignments": [ + 5730 + ], + "declarations": [ + { + "constant": false, + "id": 5730, + "mutability": "mutable", + "name": "fromContext", + "nodeType": "VariableDeclaration", + "scope": 5768, + "src": "14935:33:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5729, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "14935:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "id": 5735, + "initialValue": { + "arguments": [ + { + "id": 5733, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5676, + "src": "15011:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5731, + "name": "AccountContextHandler", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24055, + "src": "14971:21:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", + "typeString": "type(library AccountContextHandler)" + } + }, + "id": 5732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23345, + "src": "14971:39:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address) view returns (struct AccountContext memory)" + } + }, + "id": 5734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14971:45:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "14935:81:30" + }, + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 5736, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15030:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5737, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "mustSettleAssets", + "nodeType": "MemberAccess", + "referencedDeclaration": 23510, + "src": "15030:28:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory) view returns (bool)" + } + }, + "id": 5738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15030:30:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5748, + "nodeType": "IfStatement", + "src": "15026:128:30", + "trueBody": { + "id": 5747, + "nodeType": "Block", + "src": "15062:92:30", + "statements": [ + { + "expression": { + "id": 5745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5739, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15076:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5742, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5676, + "src": "15125:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5743, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15131:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + ], + "expression": { + "id": 5740, + "name": "SettleAssetsExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1878, + "src": "15090:20:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + }, + "id": 5741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "settleAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 1877, + "src": "15090:34:30", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" + } + }, + "id": 5744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15090:53:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "src": "15076:67:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5746, + "nodeType": "ExpressionStatement", + "src": "15076:67:30" + } + ] + } + }, + { + "expression": { + "id": 5756, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5749, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15163:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5752, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5676, + "src": "15213:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5753, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15219:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5754, + "name": "assets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5681, + "src": "15232:6:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + }, + { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset memory[] memory" + } + ], + "expression": { + "id": 5750, + "name": "TransferAssets", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 38618, + "src": "15177:14:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", + "typeString": "type(library TransferAssets)" + } + }, + "id": 5751, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "placeAssetsInAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 38617, + "src": "15177:35:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (address,struct AccountContext memory,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory)" + } + }, + "id": 5755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15177:62:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "src": "15163:76:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5757, + "nodeType": "ExpressionStatement", + "src": "15163:76:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5761, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5676, + "src": "15279:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5758, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15249:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5760, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "setAccountContext", + "nodeType": "MemberAccess", + "referencedDeclaration": 23372, + "src": "15249:29:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "function (struct AccountContext memory,address)" + } + }, + "id": 5762, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15249:35:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5763, + "nodeType": "ExpressionStatement", + "src": "15249:35:30" + }, + { + "expression": { + "components": [ + { + "id": 5764, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5730, + "src": "15303:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + { + "id": 5765, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5689, + "src": "15316:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + } + ], + "id": 5766, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "15302:24:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", + "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" + } + }, + "functionReturnParameters": 5687, + "id": 5767, + "nodeType": "Return", + "src": "15295:31:30" + } + ] + }, + "documentation": { + "id": 5674, + "nodeType": "StructuredDocumentation", + "src": "13990:55:30", + "text": "@dev Internal asset transfer event between accounts" + }, + "id": 5769, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5682, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5676, + "mutability": "mutable", + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 5769, + "src": "14078:12:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5675, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14078:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5678, + "mutability": "mutable", + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 5769, + "src": "14100:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5677, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14100:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5681, + "mutability": "mutable", + "name": "assets", + "nodeType": "VariableDeclaration", + "scope": 5769, + "src": "14120:30:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", + "typeString": "struct PortfolioAsset[]" + }, + "typeName": { + "baseType": { + "id": 5679, + "name": "PortfolioAsset", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57661, + "src": "14120:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", + "typeString": "struct PortfolioAsset" + } + }, + "id": 5680, + "nodeType": "ArrayTypeName", + "src": "14120:16:30", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", + "typeString": "struct PortfolioAsset[]" + } + }, + "visibility": "internal" + } + ], + "src": "14068:88:30" + }, + "returnParameters": { + "id": 5687, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5684, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5769, + "src": "14175:21:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5683, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "14175:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5686, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5769, + "src": "14198:21:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5685, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "14198:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + } + ], + "src": "14174:46:30" + }, + "scope": 6026, + "src": "14050:1283:30", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 5931, + "nodeType": "Block", + "src": "15728:2847:30", + "statements": [ + { + "assignments": [ + 5786 + ], + "declarations": [ + { + "constant": false, + "id": 5786, + "mutability": "mutable", + "name": "sig", + "nodeType": "VariableDeclaration", + "scope": 5931, + "src": "15738:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5785, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15738:6:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 5788, + "initialValue": { + "hexValue": "30", + "id": 5787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15751:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "15738:14:30" + }, + { + "assignments": [ + 5790 + ], + "declarations": [ + { + "constant": false, + "id": 5790, + "mutability": "mutable", + "name": "transactedAccount", + "nodeType": "VariableDeclaration", + "scope": 5931, + "src": "15762:25:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5789, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15762:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 5795, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 5793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15798:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 5792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15790:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5791, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15790:7:30", + "typeDescriptions": {} + } + }, + "id": 5794, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15790:10:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "15762:38:30" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5796, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "15814:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "id": 5797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "15814:11:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "3332", + "id": 5798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15829:2:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "15814:17:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5818, + "nodeType": "IfStatement", + "src": "15810:341:30", + "trueBody": { + "id": 5817, + "nodeType": "Block", + "src": "15833:318:30", + "statements": [ + { + "assignments": [ + 5801 + ], + "declarations": [ + { + "constant": false, + "id": 5801, + "mutability": "mutable", + "name": "tmp", + "nodeType": "VariableDeclaration", + "scope": 5817, + "src": "16068:11:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5800, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16068:7:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 5809, + "initialValue": { + "arguments": [ + { + "id": 5804, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "16093:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + { + "components": [ + { + "id": 5806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16100:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 5805, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16100:7:30", + "typeDescriptions": {} + } + } + ], + "id": 5807, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "16099:9:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + }, + { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + } + ], + "expression": { + "id": 5802, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16082:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5803, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "16082:10:30", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5808, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16082:27:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16068:41:30" + }, + { + "expression": { + "id": 5815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5810, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5786, + "src": "16123:3:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 5813, + "name": "tmp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5801, + "src": "16136:3:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 5812, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16129:6:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 5811, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16129:6:30", + "typeDescriptions": {} + } + }, + "id": 5814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16129:11:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "16123:17:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 5816, + "nodeType": "ExpressionStatement", + "src": "16123:17:30" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5841, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5819, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5786, + "src": "16488:3:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 5820, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "16495:13:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 5821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenRedeem", + "nodeType": "MemberAccess", + "referencedDeclaration": 57243, + "src": "16495:26:30", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$", + "typeString": "function NotionalProxy.nTokenRedeem(address,uint16,uint96,bool,bool) returns (int256)" + } + }, + "id": 5822, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "16495:35:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "16488:42:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5828, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5824, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5786, + "src": "16546:3:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 5825, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "16553:13:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 5826, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchLend", + "nodeType": "MemberAccess", + "referencedDeclaration": 57322, + "src": "16553:23:30", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchLend(address,struct BatchLend calldata[] calldata)" + } + }, + "id": 5827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "16553:32:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "16546:39:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16488:97:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5830, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5786, + "src": "16601:3:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 5831, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "16608:13:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 5832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchBalanceAction", + "nodeType": "MemberAccess", + "referencedDeclaration": 57296, + "src": "16608:32:30", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchBalanceAction(address,struct BalanceAction calldata[] calldata) payable" + } + }, + "id": 5833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "16608:41:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "16601:48:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16488:161:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 5840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5836, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5786, + "src": "16665:3:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 5837, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "16672:13:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 5838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchBalanceAndTradeAction", + "nodeType": "MemberAccess", + "referencedDeclaration": 57304, + "src": "16672:40:30", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchBalanceAndTradeAction(address,struct BalanceActionWithTrades calldata[] calldata) payable" + } + }, + "id": 5839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "16672:49:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "16665:56:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "16488:233:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5896, + "nodeType": "IfStatement", + "src": "16471:1122:30", + "trueBody": { + "id": 5895, + "nodeType": "Block", + "src": "16732:861:30", + "statements": [ + { + "expression": { + "id": 5853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 5842, + "name": "transactedAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5790, + "src": "16746:17:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 5845, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "16777:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "endExpression": { + "hexValue": "3336", + "id": 5847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16784:2:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_36_by_1", + "typeString": "int_const 36" + }, + "value": "36" + }, + "id": 5848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexRangeAccess", + "src": "16777:10:30", + "startExpression": { + "hexValue": "34", + "id": 5846, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16782:1:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_4_by_1", + "typeString": "int_const 4" + }, + "value": "4" + }, + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + } + }, + { + "components": [ + { + "id": 5850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16790:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5849, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16790:7:30", + "typeDescriptions": {} + } + } + ], + "id": 5851, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "16789:9:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr_slice", + "typeString": "bytes calldata slice" + }, + { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + } + ], + "expression": { + "id": 5843, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16766:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5844, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "16766:10:30", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5852, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16766:33:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "16746:53:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5854, + "nodeType": "ExpressionStatement", + "src": "16746:53:30" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5856, + "name": "transactedAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5790, + "src": "17080:17:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5857, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5772, + "src": "17101:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "17080:25:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5859, + "name": "transactedAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5790, + "src": "17130:17:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 5860, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5774, + "src": "17151:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "17130:23:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "arguments": [ + { + "id": 5863, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5774, + "src": "17174:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 5864, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "17178:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "17178:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 5862, + "name": "isApprovedForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6006, + "src": "17157:16:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function (address,address) view returns (bool)" + } + }, + "id": 5866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17157:32:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17130:59:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "id": 5868, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "17129:61:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17080:110:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "556e617574686f72697a65642063616c6c", + "id": 5870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17208:19:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1a5436ba012075fff97e2b17048f8d423c8fe77be340e9ac8781d174af9d057a", + "typeString": "literal_string \"Unauthorized call\"" + }, + "value": "Unauthorized call" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_1a5436ba012075fff97e2b17048f8d423c8fe77be340e9ac8781d174af9d057a", + "typeString": "literal_string \"Unauthorized call\"" + } + ], + "id": 5855, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17055:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17055:186:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5872, + "nodeType": "ExpressionStatement", + "src": "17055:186:30" + }, + { + "assignments": [ + 5874, + 5876 + ], + "declarations": [ + { + "constant": false, + "id": 5874, + "mutability": "mutable", + "name": "status", + "nodeType": "VariableDeclaration", + "scope": 5895, + "src": "17452:11:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5873, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17452:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5876, + "mutability": "mutable", + "name": "result", + "nodeType": "VariableDeclaration", + "scope": 5895, + "src": "17465:19:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5875, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "17465:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 5887, + "initialValue": { + "arguments": [ + { + "id": 5885, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5780, + "src": "17525:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + ], + "expression": { + "arguments": [ + { + "id": 5879, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -28, + "src": "17496:4:30", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC1155Action_$6026", + "typeString": "contract ERC1155Action" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_ERC1155Action_$6026", + "typeString": "contract ERC1155Action" + } + ], + "id": 5878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17488:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 5877, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17488:7:30", + "typeDescriptions": {} + } + }, + "id": 5880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17488:13:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 5881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "17488:18:30", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 5884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "names": [ + "value" + ], + "nodeType": "FunctionCallOptions", + "options": [ + { + "expression": { + "id": 5882, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "17514:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "value", + "nodeType": "MemberAccess", + "src": "17514:9:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "src": "17488:36:30", + "typeDescriptions": { + "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", + "typeString": "function (bytes memory) payable returns (bool,bytes memory)" + } + }, + "id": 5886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17488:42:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17451:79:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5889, + "name": "status", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5874, + "src": "17552:6:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "arguments": [ + { + "id": 5891, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5876, + "src": "17574:6:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5890, + "name": "_getRevertMsg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5956, + "src": "17560:13:30", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$", + "typeString": "function (bytes memory) pure returns (string memory)" + } + }, + "id": 5892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17560:21:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 5888, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17544:7:30", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 5893, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17544:38:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5894, + "nodeType": "ExpressionStatement", + "src": "17544:38:30" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5897, + "name": "transactedAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5790, + "src": "17920:17:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 5898, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5772, + "src": "17941:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "17920:25:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 5903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5900, + "name": "fromContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5776, + "src": "17949:11:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5901, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "hasDebt", + "nodeType": "MemberAccess", + "referencedDeclaration": 57736, + "src": "17949:19:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30783030", + "id": 5902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17972:4:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "src": "17949:27:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "17920:56:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5912, + "nodeType": "IfStatement", + "src": "17916:144:30", + "trueBody": { + "id": 5911, + "nodeType": "Block", + "src": "17978:82:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5908, + "name": "from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5772, + "src": "18044:4:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5905, + "name": "FreeCollateralExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 618, + "src": "17992:22:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + }, + "id": 5907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "checkFreeCollateralAndRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 553, + "src": "17992:51:30", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 5909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17992:57:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5910, + "nodeType": "ExpressionStatement", + "src": "17992:57:30" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5922, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 5917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5913, + "name": "toTransferNegative", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5782, + "src": "18413:18:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 5916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 5914, + "name": "transactedAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5790, + "src": "18435:17:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 5915, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5774, + "src": "18456:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "18435:23:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18413:45:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 5921, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5918, + "name": "toContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5778, + "src": "18462:9:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext memory" + } + }, + "id": 5919, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "hasDebt", + "nodeType": "MemberAccess", + "referencedDeclaration": 57736, + "src": "18462:17:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30783030", + "id": 5920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18483:4:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0x00" + }, + "src": "18462:25:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18413:74:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5930, + "nodeType": "IfStatement", + "src": "18409:160:30", + "trueBody": { + "id": 5929, + "nodeType": "Block", + "src": "18489:80:30", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 5926, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5774, + "src": "18555:2:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5923, + "name": "FreeCollateralExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 618, + "src": "18503:22:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + }, + "id": 5925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "checkFreeCollateralAndRevert", + "nodeType": "MemberAccess", + "referencedDeclaration": 553, + "src": "18503:51:30", + "typeDescriptions": { + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 5927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18503:55:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5928, + "nodeType": "ExpressionStatement", + "src": "18503:55:30" + } + ] + } + } + ] + }, + "documentation": { + "id": 5770, + "nodeType": "StructuredDocumentation", + "src": "15339:148:30", + "text": "@dev Checks post transfer events which will either be initiating one of the batch trading events or a free collateral\n check if required." + }, + "id": 5932, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_checkPostTransferEvent", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5772, + "mutability": "mutable", + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 5932, + "src": "15534:12:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5771, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15534:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5774, + "mutability": "mutable", + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 5932, + "src": "15556:10:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5773, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15556:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5776, + "mutability": "mutable", + "name": "fromContext", + "nodeType": "VariableDeclaration", + "scope": 5932, + "src": "15576:33:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5775, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "15576:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5778, + "mutability": "mutable", + "name": "toContext", + "nodeType": "VariableDeclaration", + "scope": 5932, + "src": "15619:31:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", + "typeString": "struct AccountContext" + }, + "typeName": { + "id": 5777, + "name": "AccountContext", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 57743, + "src": "15619:14:30", + "typeDescriptions": { + "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", + "typeString": "struct AccountContext" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5780, + "mutability": "mutable", + "name": "data", + "nodeType": "VariableDeclaration", + "scope": 5932, + "src": "15660:19:30", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5779, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15660:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5782, + "mutability": "mutable", + "name": "toTransferNegative", + "nodeType": "VariableDeclaration", + "scope": 5932, + "src": "15689:23:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5781, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15689:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15524:194:30" + }, + "returnParameters": { + "id": 5784, + "nodeType": "ParameterList", + "parameters": [], + "src": "15728:0:30" + }, + "scope": 6026, + "src": "15492:3083:30", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 5955, + "nodeType": "Block", + "src": "18668:400:30", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 5942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 5939, + "name": "_returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5934, + "src": "18793:11:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 5940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "18793:18:30", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "3638", + "id": 5941, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18814:2:30", + "typeDescriptions": { + "typeIdentifier": "t_rational_68_by_1", + "typeString": "int_const 68" + }, + "value": "68" + }, + "src": "18793:23:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5945, + "nodeType": "IfStatement", + "src": "18789:67:30", + "trueBody": { + "expression": { + "hexValue": "5472616e73616374696f6e2072657665727465642073696c656e746c79", + "id": 5943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18825:31:30", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d0b1e7612ebe87924453e5d4581b9067879655587bae8a2dfee438433699b890", + "typeString": "literal_string \"Transaction reverted silently\"" + }, + "value": "Transaction reverted silently" + }, + "functionReturnParameters": 5938, + "id": 5944, + "nodeType": "Return", + "src": "18818:38:30" + } + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "18876:95:30", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "18924:37:30", + "value": { + "arguments": [ + { + "name": "_returnData", + "nodeType": "YulIdentifier", + "src": "18943:11:30" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18956:4:30", + "type": "", + "value": "0x04" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18939:3:30" + }, + "nodeType": "YulFunctionCall", + "src": "18939:22:30" + }, + "variableNames": [ + { + "name": "_returnData", + "nodeType": "YulIdentifier", + "src": "18924:11:30" + } + ] + } + ] + }, + "evmVersion": "istanbul", + "externalReferences": [ + { + "declaration": 5934, + "isOffset": false, + "isSlot": false, + "src": "18924:11:30", + "valueSize": 1 + }, + { + "declaration": 5934, + "isOffset": false, + "isSlot": false, + "src": "18943:11:30", + "valueSize": 1 + } + ], + "id": 5946, + "nodeType": "InlineAssembly", + "src": "18867:104:30" + }, + { + "expression": { + "arguments": [ + { + "id": 5949, + "name": "_returnData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5934, + "src": "18998:11:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 5951, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19012:6:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + }, + "typeName": { + "id": 5950, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19012:6:30", + "typeDescriptions": {} + } + } + ], + "id": 5952, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "19011:8:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_string_storage_ptr_$", + "typeString": "type(string storage pointer)" + } + ], + "expression": { + "id": 5947, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18987:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5948, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "18987:10:30", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 5953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18987:33:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "functionReturnParameters": 5938, + "id": 5954, + "nodeType": "Return", + "src": "18980:40:30" + } + ] + }, + "id": 5956, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_getRevertMsg", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 5935, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5934, + "mutability": "mutable", + "name": "_returnData", + "nodeType": "VariableDeclaration", + "scope": 5956, + "src": "18604:24:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5933, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18604:5:30", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "18603:26:30" + }, + "returnParameters": { + "id": 5938, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5937, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 5956, + "src": "18653:13:30", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5936, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "18653:6:30", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "18652:15:30" + }, + "scope": 6026, + "src": "18581:487:30", + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "baseFunctions": [ + 58168 + ], + "body": { + "id": 5981, + "nodeType": "Block", + "src": "19345:144:30", + "statements": [ + { + "expression": { + "id": 5972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "id": 5965, + "name": "accountAuthorizedTransferOperator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23281, + "src": "19355:33:30", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 5969, + "indexExpression": { + "expression": { + "id": 5966, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "19389:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5967, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19389:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19355:45:30", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 5970, + "indexExpression": { + "id": 5968, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5959, + "src": "19401:8:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "19355:55:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 5971, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5961, + "src": "19413:8:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "19355:66:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5973, + "nodeType": "ExpressionStatement", + "src": "19355:66:30" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 5975, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "19451:3:30", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 5976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "19451:10:30", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "id": 5977, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5959, + "src": "19463:8:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5978, + "name": "approved", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5961, + "src": "19473:8:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 5974, + "name": "ApprovalForAll", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58106, + "src": "19436:14:30", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", + "typeString": "function (address,address,bool)" + } + }, + "id": 5979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19436:46:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5980, + "nodeType": "EmitStatement", + "src": "19431:51:30" + } + ] + }, + "documentation": { + "id": 5957, + "nodeType": "StructuredDocumentation", + "src": "19074:188:30", + "text": "@notice Allows an account to set approval for an operator\n @param operator address of the operator\n @param approved state of the approval\n @dev emit:ApprovalForAll" + }, + "functionSelector": "a22cb465", + "id": 5982, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setApprovalForAll", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5963, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "19336:8:30" + }, + "parameters": { + "id": 5962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5959, + "mutability": "mutable", + "name": "operator", + "nodeType": "VariableDeclaration", + "scope": 5982, + "src": "19294:16:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5958, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19294:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5961, + "mutability": "mutable", + "name": "approved", + "nodeType": "VariableDeclaration", + "scope": 5982, + "src": "19312:13:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5960, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19312:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19293:33:30" + }, + "returnParameters": { + "id": 5964, + "nodeType": "ParameterList", + "parameters": [], + "src": "19345:0:30" + }, + "scope": 6026, + "src": "19267:222:30", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "baseFunctions": [ + 58177 + ], + "body": { + "id": 6005, + "nodeType": "Block", + "src": "19939:136:30", + "statements": [ + { + "condition": { + "baseExpression": { + "id": 5993, + "name": "globalTransferOperator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23275, + "src": "19953:22:30", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 5995, + "indexExpression": { + "id": 5994, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5987, + "src": "19976:8:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19953:32:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 5998, + "nodeType": "IfStatement", + "src": "19949:49:30", + "trueBody": { + "expression": { + "hexValue": "74727565", + "id": 5996, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19994:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 5992, + "id": 5997, + "nodeType": "Return", + "src": "19987:11:30" + } + }, + { + "expression": { + "baseExpression": { + "baseExpression": { + "id": 5999, + "name": "accountAuthorizedTransferOperator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23281, + "src": "20016:33:30", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", + "typeString": "mapping(address => mapping(address => bool))" + } + }, + "id": 6001, + "indexExpression": { + "id": 6000, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5985, + "src": "20050:7:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20016:42:30", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 6003, + "indexExpression": { + "id": 6002, + "name": "operator", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5987, + "src": "20059:8:30", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "20016:52:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 5992, + "id": 6004, + "nodeType": "Return", + "src": "20009:59:30" + } + ] + }, + "documentation": { + "id": 5983, + "nodeType": "StructuredDocumentation", + "src": "19495:306:30", + "text": "@notice Checks approval state for an account, will first check if global transfer operator is enabled\n before falling through to an account specific transfer operator.\n @param account address of the account\n @param operator address of the operator\n @return true for approved" + }, + "functionSelector": "e985e9c5", + "id": 6006, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isApprovedForAll", + "nodeType": "FunctionDefinition", + "overrides": { + "id": 5989, + "nodeType": "OverrideSpecifier", + "overrides": [], + "src": "19903:8:30" + }, + "parameters": { + "id": 5988, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5985, + "mutability": "mutable", + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 6006, + "src": "19832:15:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5984, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19832:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5987, + "mutability": "mutable", + "name": "operator", + "nodeType": "VariableDeclaration", + "scope": 6006, + "src": "19849:16:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5986, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19849:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19831:35:30" + }, + "returnParameters": { + "id": 5992, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5991, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 6006, + "src": "19929:4:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5990, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19929:4:30", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19928:6:30" + }, + "scope": 6026, + "src": "19806:269:30", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 6024, + "nodeType": "Block", + "src": "20226:88:30", + "statements": [ + { + "expression": { + "components": [ + { + "arguments": [ + { + "id": 6016, + "name": "FreeCollateralExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 618, + "src": "20252:22:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", + "typeString": "type(library FreeCollateralExternal)" + } + ], + "id": 6015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20244:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20244:7:30", + "typeDescriptions": {} + } + }, + "id": 6017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20244:31:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 6020, + "name": "SettleAssetsExternal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1878, + "src": "20285:20:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", + "typeString": "type(library SettleAssetsExternal)" + } + ], + "id": 6019, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20277:7:30", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 6018, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20277:7:30", + "typeDescriptions": {} + } + }, + "id": 6021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20277:29:30", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 6022, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "20243:64:30", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_address_$_t_address_$", + "typeString": "tuple(address,address)" + } + }, + "functionReturnParameters": 6013, + "id": 6023, + "nodeType": "Return", + "src": "20236:71:30" + } + ] + }, + "documentation": { + "id": 6007, + "nodeType": "StructuredDocumentation", + "src": "20081:77:30", + "text": "@notice Get a list of deployed library addresses (sorted by library name)" + }, + "functionSelector": "c4c96dae", + "id": 6025, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getLibInfo", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 6008, + "nodeType": "ParameterList", + "parameters": [], + "src": "20182:2:30" + }, + "returnParameters": { + "id": 6013, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6010, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 6025, + "src": "20208:7:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6009, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20208:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6012, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 6025, + "src": "20217:7:30", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6011, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20217:7:30", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20207:18:30" + }, + "scope": 6026, + "src": "20163:151:30", + "stateMutability": "view", + "virtual": false, + "visibility": "external" + } + ], + "scope": 6027, + "src": "683:19633:30" + } + ], + "src": "41:20276:30" + }, + "bytecode": "608060405234801561001057600080fd5b506138d7806100206000396000f3fe6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b730x4763672dEa3bF087929d5537B6BAfeB8e6938F46730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b8152730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b8152730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea264697066735822122004fb3323a9552ead7044be41b2d326c7c87d5f575bc1c147a7aba924aad314b464736f6c63430007060033", + "bytecodeSha1": "ad542a50fd9521f9faf16216c20b79ea94d56047", + "compiler": { + "evm_version": "istanbul", + "optimizer": { + "enabled": true, + "runs": 200 + }, + "version": "0.7.6+commit.7338295f" + }, + "contractName": "ERC1155Action", + "coverageMap": { + "branches": { + "141": {}, + "142": {}, + "147": {}, + "151": {}, + "152": {}, + "153": {}, + "155": {}, + "157": {}, + "16": {}, + "164": {}, + "21": {}, + "22": {}, + "25": {}, + "28": { + "ActionGuards.requireValidAccount": { + "347": [ + 1374, + 1402, + true + ], + "348": [ + 1454, + 1478, + true + ], + "349": [ + 1741, + 1754, + true + ] + } + }, + "30": { + "ERC1155Action._balanceInArray": { + "295": [ + 5358, + 5388, + false + ], + "296": [ + 5408, + 5434, + false + ], + "297": [ + 5454, + 5482, + false + ] + }, + "ERC1155Action._balanceInBitmap": { + "293": [ + 4615, + 4645, + true + ], + "294": [ + 4661, + 4700, + false + ] + }, + "ERC1155Action._checkPostTransferEvent": { + "308": [ + 15814, + 15831, + false + ], + "309": [ + 16488, + 16530, + true + ], + "310": [ + 16546, + 16585, + true + ], + "311": [ + 16601, + 16649, + true + ], + "312": [ + 16665, + 16721, + false + ], + "313": [ + 17080, + 17105, + true + ], + "314": [ + 17130, + 17153, + false + ], + "315": [ + 17157, + 17189, + true + ], + "316": [ + 17552, + 17558, + true + ], + "317": [ + 17920, + 17945, + false + ], + "318": [ + 17949, + 17976, + false + ], + "319": [ + 18413, + 18431, + false + ], + "320": [ + 18435, + 18458, + false + ], + "321": [ + 18462, + 18487, + false + ] + }, + "ERC1155Action._decodeToAssets": { + "303": [ + 11735, + 11763, + true + ], + "304": [ + 12045, + 12050, + false + ], + "305": [ + 12060, + 12079, + true + ] + }, + "ERC1155Action._getRevertMsg": { + "323": [ + 18793, + 18816, + false + ] + }, + "ERC1155Action._requireValidMaturity": { + "322": [ + 13849, + 13935, + true + ] + }, + "ERC1155Action._transfer": { + "306": [ + 14513, + 14541, + false + ], + "307": [ + 15030, + 15060, + false + ] + }, + "ERC1155Action._validateAccounts": { + "298": [ + 10551, + 10561, + false + ], + "299": [ + 10565, + 10581, + false + ], + "300": [ + 10585, + 10604, + true + ], + "301": [ + 10677, + 10695, + true + ], + "302": [ + 10699, + 10733, + true + ] + }, + "ERC1155Action.balanceOf": { + "281": [ + 1902, + 1914, + true + ] + }, + "ERC1155Action.balanceOfBatch": { + "287": [ + 3964, + 3993, + true + ] + }, + "ERC1155Action.isApprovedForAll": { + "289": [ + 19953, + 19985, + false + ] + }, + "ERC1155Action.safeBatchTransferFrom": { + "283": [ + 9535, + 9553, + false + ], + "284": [ + 9563, + 9595, + true + ], + "285": [ + 9993, + 10015, + false + ], + "286": [ + 10056, + 10286, + true + ] + }, + "ERC1155Action.safeTransferFrom": { + "290": [ + 6861, + 6871, + false + ], + "291": [ + 7903, + 7925, + false + ], + "292": [ + 7966, + 8085, + true + ] + }, + "ERC1155Action.signedBalanceOf": { + "282": [ + 2385, + 2417, + false + ] + }, + "ERC1155Action.signedBalanceOfBatch": { + "288": [ + 3135, + 3164, + true + ] + } + }, + "6": { + "SafeMath.add": { + "444": [ + 2794, + 2800, + true + ] + }, + "SafeMath.sub": { + "445": [ + 3213, + 3219, + true + ] + } + }, + "60": {}, + "61": {}, + "62": {}, + "63": {}, + "65": {}, + "66": { + "AccountContextHandler._clearPortfolioActiveFlags": { + "330": [ + 9343, + 9420, + false + ] + }, + "AccountContextHandler.mustSettleAssets": { + "324": [ + 3173, + 3204, + false + ] + }, + "AccountContextHandler.setActiveCurrency": { + "331": [ + 5431, + 5445, + false + ], + "332": [ + 5449, + 5487, + true + ], + "333": [ + 5707, + 5715, + false + ], + "334": [ + 5719, + 5764, + false + ], + "335": [ + 6877, + 6894, + false + ], + "336": [ + 6898, + 6906, + false + ], + "337": [ + 7232, + 7249, + false + ], + "338": [ + 7254, + 7262, + false + ], + "339": [ + 7405, + 7455, + false + ], + "340": [ + 7689, + 7705, + false + ], + "341": [ + 7709, + 7717, + false + ], + "342": [ + 8010, + 8058, + true + ], + "343": [ + 8358, + 8374, + false + ], + "344": [ + 8379, + 8387, + false + ], + "345": [ + 8616, + 8624, + false + ], + "346": [ + 8724, + 8734, + true + ] + }, + "AccountContextHandler.storeAssetsAndUpdateContext": { + "325": [ + 10453, + 10494, + true + ], + "326": [ + 10772, + 10785, + false + ], + "327": [ + 10809, + 10869, + true + ], + "328": [ + 11059, + 11066, + false + ], + "329": [ + 11955, + 11981, + false + ] + } + }, + "67": {}, + "68": {}, + "69": {}, + "70": {}, + "71": {}, + "72": {}, + "76": {}, + "77": {}, + "78": { + "DateTime.getBitNumFromMaturity": { + "380": [ + 4283, + 4312, + false + ], + "381": [ + 4387, + 4412, + false + ], + "382": [ + 4680, + 4718, + false + ], + "383": [ + 4780, + 4819, + false + ], + "384": [ + 5662, + 5702, + false + ], + "385": [ + 6112, + 6154, + false + ] + }, + "DateTime.getReferenceTime": { + "372": [ + 425, + 455, + true + ] + }, + "DateTime.getTimeUTC0": { + "371": [ + 668, + 689, + true + ] + }, + "DateTime.getTradedMarket": { + "373": [ + 1014, + 1024, + false + ], + "374": [ + 1064, + 1074, + false + ], + "375": [ + 1118, + 1128, + false + ], + "376": [ + 1165, + 1175, + false + ], + "377": [ + 1216, + 1226, + false + ], + "378": [ + 1267, + 1277, + false + ], + "379": [ + 1319, + 1329, + false + ] + }, + "DateTime.isValidMaturity": { + "370": [ + 2568, + 2590, + false + ] + } + }, + "79": {}, + "80": {}, + "81": {}, + "82": {}, + "83": { + "BitmapAssetsHandler.addMultipleifCashAssets": { + "357": [ + 1930, + 1962, + true + ], + "358": [ + 2179, + 2198, + false + ], + "359": [ + 2231, + 2261, + true + ], + "360": [ + 2327, + 2372, + true + ], + "361": [ + 2692, + 2709, + false + ] + }, + "BitmapAssetsHandler.addifCashAsset": { + "362": [ + 3621, + 3628, + true + ], + "363": [ + 3689, + 3718, + false + ], + "364": [ + 3879, + 3912, + false + ], + "365": [ + 3916, + 3949, + true + ], + "366": [ + 4348, + 4361, + false + ], + "367": [ + 4483, + 4511, + false + ], + "368": [ + 4515, + 4543, + true + ] + }, + "BitmapAssetsHandler.setAssetsBitmap": { + "369": [ + 1069, + 1127, + true + ] + } + }, + "84": { + "PortfolioHandler._extendNewAssetArray": { + "417": [ + 5552, + 5573, + true + ] + }, + "PortfolioHandler._loadAssetArray": { + "387": [ + 16955, + 16985, + true + ] + }, + "PortfolioHandler._mergeAssetIntoArray": { + "408": [ + 1530, + 1558, + true + ], + "409": [ + 1578, + 1608, + true + ], + "410": [ + 1628, + 1654, + false + ], + "411": [ + 1853, + 1899, + false + ], + "412": [ + 1919, + 1973, + true + ], + "413": [ + 2173, + 2213, + false + ], + "414": [ + 2241, + 2257, + true + ], + "415": [ + 2354, + 2384, + false + ], + "416": [ + 2388, + 2418, + true + ] + }, + "PortfolioHandler._storeAsset": { + "425": [ + 11735, + 11755, + false + ], + "426": [ + 11759, + 11803, + true + ], + "427": [ + 11864, + 11882, + false + ], + "428": [ + 11886, + 11920, + true + ], + "429": [ + 11978, + 11997, + false + ], + "430": [ + 12001, + 12055, + true + ], + "431": [ + 12108, + 12141, + false + ], + "432": [ + 12145, + 12178, + true + ] + }, + "PortfolioHandler._updatePortfolioContext": { + "433": [ + 11089, + 11108, + true + ], + "434": [ + 11112, + 11143, + false + ], + "435": [ + 11268, + 11315, + true + ] + }, + "PortfolioHandler.addAsset": { + "390": [ + 3230, + 3416, + false + ], + "391": [ + 3448, + 3484, + false + ], + "392": [ + 3715, + 3721, + false + ], + "393": [ + 3904, + 3944, + false + ], + "394": [ + 3968, + 3981, + true + ], + "395": [ + 4069, + 4096, + false + ], + "396": [ + 4100, + 4127, + true + ], + "397": [ + 4242, + 4309, + false + ] + }, + "PortfolioHandler.addMultipleAssets": { + "389": [ + 914, + 933, + false + ] + }, + "PortfolioHandler.buildPortfolioState": { + "388": [ + 15658, + 15679, + false + ] + }, + "PortfolioHandler.deleteAsset": { + "418": [ + 12795, + 12837, + true + ], + "419": [ + 12885, + 12921, + true + ], + "420": [ + 13072, + 13126, + false + ], + "421": [ + 13142, + 13204, + true + ], + "422": [ + 13680, + 13709, + false + ], + "423": [ + 13713, + 13755, + false + ], + "424": [ + 13883, + 13910, + false + ] + }, + "PortfolioHandler.getSortedPortfolio": { + "386": [ + 15082, + 15100, + false + ] + }, + "PortfolioHandler.storeAssets": { + "398": [ + 7495, + 7549, + true + ], + "399": [ + 7625, + 7671, + false + ], + "400": [ + 7675, + 7694, + false + ], + "401": [ + 8021, + 8067, + false + ], + "402": [ + 8305, + 8351, + false + ], + "403": [ + 9569, + 9588, + false + ], + "404": [ + 9637, + 9683, + false + ], + "405": [ + 9703, + 9757, + true + ], + "406": [ + 10311, + 10335, + false + ], + "407": [ + 10339, + 10373, + true + ] + } + }, + "85": { + "TransferAssets.encodeAssetId": { + "446": [ + 1043, + 1081, + true + ], + "447": [ + 1100, + 1128, + true + ], + "448": [ + 1147, + 1195, + true + ] + }, + "TransferAssets.placeAssetsInAccount": { + "449": [ + 2322, + 2356, + true + ], + "450": [ + 2395, + 2427, + false + ] + } + }, + "86": {}, + "87": {}, + "88": { + "AssetHandler.getSettlementDate": { + "350": [ + 1112, + 1131, + false + ], + "351": [ + 1135, + 1189, + true + ] + } + }, + "89": {}, + "90": {}, + "91": {}, + "92": { + "Bitmap.isBitSet": { + "352": [ + 828, + 838, + false + ], + "353": [ + 842, + 854, + true + ] + }, + "Bitmap.setBit": { + "354": [ + 455, + 465, + false + ], + "355": [ + 469, + 481, + true + ], + "356": [ + 526, + 531, + false + ] + } + }, + "93": {}, + "94": { + "SafeInt256.add": { + "443": [ + 1511, + 1539, + true + ] + }, + "SafeInt256.mul": { + "438": [ + 497, + 504, + false + ], + "439": [ + 515, + 521, + true + ], + "440": [ + 525, + 535, + true + ], + "441": [ + 560, + 566, + true + ], + "442": [ + 570, + 580, + true + ] + }, + "SafeInt256.toInt": { + "437": [ + 2596, + 2626, + true + ] + }, + "SafeInt256.toUint": { + "436": [ + 2473, + 2479, + true + ] + } + } + }, + "statements": { + "141": {}, + "142": {}, + "147": {}, + "151": {}, + "152": {}, + "153": {}, + "155": {}, + "157": {}, + "16": { + "Address.isContract": { + "65": [ + 1109, + 1124 + ] + } + }, + "164": {}, + "21": {}, + "22": {}, + "25": {}, + "28": { + "ActionGuards.requireValidAccount": { + "89": [ + 1366, + 1403 + ], + "90": [ + 1446, + 1479 + ], + "91": [ + 1733, + 1755 + ] + } + }, + "30": { + "ERC1155Action._balanceInArray": { + "39": [ + 5497, + 5518 + ], + "40": [ + 5262, + 5265 + ] + }, + "ERC1155Action._balanceInBitmap": { + "35": [ + 4789, + 4797 + ], + "36": [ + 4828, + 4903 + ] + }, + "ERC1155Action._checkPostTransferEvent": { + "60": [ + 16746, + 16799 + ], + "61": [ + 17055, + 17241 + ], + "62": [ + 17544, + 17582 + ], + "63": [ + 17992, + 18049 + ], + "64": [ + 18503, + 18558 + ] + }, + "ERC1155Action._decodeToAssets": { + "44": [ + 11727, + 11764 + ], + "45": [ + 12052, + 12102 + ], + "46": [ + 12170, + 12260 + ], + "47": [ + 12275, + 12347 + ], + "48": [ + 12759, + 12794 + ], + "49": [ + 12992, + 13017 + ], + "50": [ + 11923, + 11926 + ], + "51": [ + 13038, + 13073 + ] + }, + "ERC1155Action._getRevertMsg": { + "103": [ + 18818, + 18856 + ], + "104": [ + 18980, + 19020 + ] + }, + "ERC1155Action._requireValidMaturity": { + "74": [ + 13828, + 13977 + ] + }, + "ERC1155Action._transfer": { + "52": [ + 14557, + 14618 + ], + "53": [ + 14638, + 14708 + ], + "54": [ + 14718, + 14749 + ], + "55": [ + 14832, + 14883 + ], + "56": [ + 15076, + 15143 + ], + "57": [ + 15163, + 15239 + ], + "58": [ + 15249, + 15284 + ], + "59": [ + 15295, + 15326 + ] + }, + "ERC1155Action._validateAccounts": { + "41": [ + 10543, + 10624 + ], + "42": [ + 10669, + 10750 + ], + "43": [ + 11009, + 11034 + ] + }, + "ERC1155Action.balanceOf": { + "0": [ + 1895, + 1938 + ] + }, + "ERC1155Action.balanceOfBatch": { + "9": [ + 3956, + 3994 + ], + "10": [ + 4192, + 4235 + ], + "11": [ + 4109, + 4112 + ], + "12": [ + 4256, + 4270 + ] + }, + "ERC1155Action.encodeToId": { + "13": [ + 13468, + 13536 + ] + }, + "ERC1155Action.getLibInfo": { + "19": [ + 20236, + 20307 + ] + }, + "ERC1155Action.isApprovedForAll": { + "20": [ + 19987, + 19998 + ], + "21": [ + 20009, + 20068 + ] + }, + "ERC1155Action.safeBatchTransferFrom": { + "4": [ + 9260, + 9287 + ], + "5": [ + 9555, + 9612 + ], + "6": [ + 9778, + 9861 + ], + "7": [ + 9871, + 9925 + ], + "8": [ + 10031, + 10332 + ] + }, + "ERC1155Action.safeTransferFrom": { + "22": [ + 6663, + 6690 + ], + "23": [ + 7011, + 7097 + ], + "24": [ + 7187, + 7228 + ], + "25": [ + 7242, + 7314 + ], + "26": [ + 7360, + 7420 + ], + "27": [ + 7435, + 7488 + ], + "28": [ + 7519, + 7578 + ], + "29": [ + 7751, + 7821 + ], + "30": [ + 7941, + 8131 + ] + }, + "ERC1155Action.setApprovalForAll": { + "17": [ + 19355, + 19421 + ], + "18": [ + 19431, + 19482 + ] + }, + "ERC1155Action.signedBalanceOf": { + "2": [ + 2433, + 2506 + ], + "3": [ + 2537, + 2692 + ] + }, + "ERC1155Action.signedBalanceOfBatch": { + "14": [ + 3127, + 3165 + ], + "15": [ + 3361, + 3410 + ], + "16": [ + 3278, + 3281 + ] + }, + "ERC1155Action.supportsInterface": { + "1": [ + 1198, + 1246 + ] + } + }, + "6": { + "SafeMath.add": { + "151": [ + 2786, + 2832 + ] + }, + "SafeMath.sub": { + "279": [ + 3205, + 3254 + ], + "280": [ + 3264, + 3276 + ] + } + }, + "60": {}, + "61": {}, + "62": { + "LibStorage._getStorageSlot": { + "107": [ + 8727, + 8772 + ] + } + }, + "63": {}, + "65": {}, + "66": { + "AccountContextHandler._clearPortfolioActiveFlags": { + "195": [ + 9497, + 9550 + ], + "196": [ + 9568, + 9580 + ], + "197": [ + 9608, + 9629 + ], + "198": [ + 9650, + 9663 + ] + }, + "AccountContextHandler.getAccountContext": { + "33": [ + 743, + 764 + ] + }, + "AccountContextHandler.isBitmapEnabled": { + "34": [ + 1219, + 1262 + ] + }, + "AccountContextHandler.mustSettleAssets": { + "92": [ + 3350, + 3420 + ], + "93": [ + 3649, + 3735 + ] + }, + "AccountContextHandler.setAccountContext": { + "99": [ + 1029, + 1060 + ], + "100": [ + 1070, + 1104 + ] + }, + "AccountContextHandler.setActiveCurrency": { + "199": [ + 5423, + 5488 + ], + "200": [ + 5766, + 5773 + ], + "201": [ + 6965, + 7106 + ], + "202": [ + 7124, + 7131 + ], + "203": [ + 7350, + 7383 + ], + "204": [ + 7457, + 7478 + ], + "205": [ + 7496, + 7564 + ], + "206": [ + 7582, + 7589 + ], + "207": [ + 8002, + 8059 + ], + "208": [ + 7737, + 7817 + ], + "209": [ + 8147, + 8221 + ], + "210": [ + 8239, + 8246 + ], + "211": [ + 8389, + 8396 + ], + "212": [ + 8410, + 8470 + ], + "213": [ + 8484, + 8505 + ], + "214": [ + 8519, + 8530 + ], + "215": [ + 8626, + 8633 + ], + "216": [ + 8716, + 8735 + ], + "217": [ + 8777, + 8906 + ] + }, + "AccountContextHandler.storeAssetsAndUpdateContext": { + "129": [ + 10389, + 10435 + ], + "130": [ + 10445, + 10495 + ], + "131": [ + 10541, + 10591 + ], + "132": [ + 10801, + 10870 + ], + "133": [ + 11082, + 11156 + ], + "134": [ + 11232, + 11307 + ], + "135": [ + 11426, + 11519 + ], + "136": [ + 12001, + 12083 + ], + "137": [ + 12151, + 12198 + ], + "138": [ + 12111, + 12136 + ] + } + }, + "67": {}, + "68": {}, + "69": {}, + "70": {}, + "71": {}, + "72": {}, + "76": {}, + "77": { + "CashGroup._getCashGroupStorageBytes": { + "140": [ + 11458, + 11482 + ] + }, + "CashGroup.getMaxMarketIndex": { + "105": [ + 11714, + 11750 + ] + } + }, + "78": { + "DateTime.getBitNumFromMaturity": { + "152": [ + 4314, + 4331 + ], + "153": [ + 4414, + 4431 + ], + "154": [ + 4734, + 4759 + ], + "155": [ + 5306, + 5641 + ], + "156": [ + 5922, + 6091 + ], + "157": [ + 6377, + 6552 + ], + "158": [ + 6698, + 6717 + ] + }, + "DateTime.getReferenceTime": { + "141": [ + 417, + 456 + ], + "142": [ + 466, + 516 + ] + }, + "DateTime.getTimeUTC0": { + "113": [ + 660, + 690 + ], + "114": [ + 700, + 736 + ] + }, + "DateTime.getTradedMarket": { + "143": [ + 1026, + 1050 + ], + "144": [ + 1076, + 1104 + ], + "145": [ + 1130, + 1151 + ], + "146": [ + 1177, + 1202 + ], + "147": [ + 1228, + 1253 + ], + "148": [ + 1279, + 1305 + ], + "149": [ + 1331, + 1357 + ], + "150": [ + 1368, + 1391 + ] + }, + "DateTime.isValidMaturity": { + "106": [ + 2592, + 2604 + ] + } + }, + "79": {}, + "80": {}, + "81": { + "nTokenHandler.getNTokenContext": { + "108": [ + 1193, + 1224 + ], + "109": [ + 1234, + 1299 + ], + "110": [ + 1309, + 1358 + ], + "111": [ + 1368, + 1411 + ], + "112": [ + 1421, + 1458 + ] + } + }, + "82": {}, + "83": { + "BitmapAssetsHandler.addMultipleifCashAssets": { + "115": [ + 1922, + 1963 + ], + "116": [ + 2200, + 2208 + ], + "117": [ + 2223, + 2262 + ], + "118": [ + 2319, + 2373 + ], + "119": [ + 2465, + 2673 + ], + "120": [ + 2727, + 2801 + ], + "121": [ + 2103, + 2106 + ] + }, + "BitmapAssetsHandler.addifCashAsset": { + "159": [ + 3613, + 3629 + ], + "160": [ + 3871, + 3950 + ], + "161": [ + 3997, + 4039 + ], + "162": [ + 4161, + 4210 + ], + "163": [ + 4239, + 4289 + ], + "164": [ + 4303, + 4323 + ], + "165": [ + 4475, + 4544 + ], + "166": [ + 4591, + 4628 + ], + "167": [ + 4643, + 4691 + ], + "168": [ + 4705, + 4755 + ], + "169": [ + 4776, + 4791 + ] + }, + "BitmapAssetsHandler.getAssetsBitmap": { + "221": [ + 882, + 915 + ] + }, + "BitmapAssetsHandler.getifCashNotional": { + "75": [ + 1629, + 1681 + ] + }, + "BitmapAssetsHandler.setAssetsBitmap": { + "228": [ + 1061, + 1147 + ], + "229": [ + 1266, + 1307 + ] + } + }, + "84": { + "PortfolioHandler._extendNewAssetArray": { + "240": [ + 5752, + 5783 + ], + "241": [ + 5733, + 5736 + ], + "242": [ + 5804, + 5824 + ] + }, + "PortfolioHandler._loadAssetArray": { + "76": [ + 16947, + 16986 + ], + "77": [ + 17584, + 17626 + ], + "78": [ + 17640, + 17678 + ], + "79": [ + 17692, + 17732 + ], + "80": [ + 17746, + 17784 + ], + "81": [ + 17798, + 17822 + ], + "82": [ + 17332, + 17335 + ] + }, + "PortfolioHandler._mergeAssetIntoArray": { + "230": [ + 1669, + 1677 + ], + "231": [ + 1828, + 1987 + ], + "232": [ + 2233, + 2258 + ], + "233": [ + 2346, + 2419 + ], + "234": [ + 2478, + 2506 + ], + "235": [ + 2520, + 2565 + ], + "236": [ + 2580, + 2591 + ], + "237": [ + 1433, + 1436 + ], + "238": [ + 2612, + 2624 + ] + }, + "PortfolioHandler._sortInPlace": { + "83": [ + 16250, + 16338 + ], + "84": [ + 16120, + 16123 + ], + "85": [ + 16565, + 16608 + ], + "86": [ + 16626, + 16681 + ], + "87": [ + 16699, + 16702 + ], + "88": [ + 16730, + 16733 + ] + }, + "PortfolioHandler._storeAsset": { + "255": [ + 11727, + 11804 + ], + "256": [ + 11856, + 11921 + ], + "257": [ + 11970, + 12056 + ], + "258": [ + 12100, + 12179 + ], + "259": [ + 12229, + 12279 + ], + "260": [ + 12289, + 12335 + ], + "261": [ + 12345, + 12392 + ], + "262": [ + 12402, + 12447 + ] + }, + "PortfolioHandler._updatePortfolioContext": { + "263": [ + 11159, + 11190 + ], + "264": [ + 11210, + 11249 + ], + "265": [ + 11260, + 11316 + ], + "266": [ + 11371, + 11469 + ], + "267": [ + 11480, + 11539 + ] + }, + "PortfolioHandler.addAsset": { + "170": [ + 3427, + 3434 + ], + "171": [ + 3723, + 3730 + ], + "172": [ + 3960, + 3982 + ], + "173": [ + 4061, + 4128 + ], + "174": [ + 4325, + 4398 + ], + "175": [ + 4780, + 4812 + ], + "176": [ + 4822, + 4850 + ], + "177": [ + 4860, + 4890 + ], + "178": [ + 4900, + 4928 + ], + "179": [ + 4938, + 4988 + ], + "180": [ + 4998, + 5035 + ] + }, + "PortfolioHandler.addMultipleAssets": { + "126": [ + 935, + 943 + ], + "127": [ + 958, + 1143 + ], + "128": [ + 838, + 841 + ] + }, + "PortfolioHandler.buildPortfolioState": { + "122": [ + 15681, + 15693 + ], + "123": [ + 15704, + 15770 + ], + "124": [ + 15780, + 15822 + ], + "125": [ + 15832, + 15885 + ] + }, + "PortfolioHandler.deleteAsset": { + "243": [ + 12787, + 12838 + ], + "244": [ + 12877, + 12922 + ], + "245": [ + 13051, + 13214 + ], + "246": [ + 13253, + 13290 + ], + "247": [ + 13775, + 13804 + ], + "248": [ + 13822, + 13844 + ], + "249": [ + 13587, + 13590 + ], + "250": [ + 14031, + 14084 + ], + "251": [ + 14098, + 14105 + ], + "252": [ + 14421, + 14596 + ], + "253": [ + 14606, + 14657 + ], + "254": [ + 14667, + 14720 + ] + }, + "PortfolioHandler.getSortedPortfolio": { + "37": [ + 15102, + 15115 + ], + "38": [ + 15126, + 15146 + ] + }, + "PortfolioHandler.storeAssets": { + "181": [ + 7487, + 7550 + ], + "182": [ + 7714, + 7744 + ], + "183": [ + 7255, + 7258 + ], + "184": [ + 8611, + 8643 + ], + "185": [ + 8820, + 9055 + ], + "186": [ + 7923, + 7926 + ], + "187": [ + 9590, + 9598 + ], + "188": [ + 9612, + 9771 + ], + "189": [ + 9823, + 10038 + ], + "190": [ + 10053, + 10105 + ], + "191": [ + 10119, + 10142 + ], + "192": [ + 9475, + 9478 + ], + "193": [ + 10303, + 10374 + ], + "194": [ + 10424, + 10576 + ] + } + }, + "85": { + "TransferAssets.decodeAssetId": { + "70": [ + 807, + 836 + ], + "71": [ + 771, + 797 + ], + "72": [ + 740, + 761 + ] + }, + "TransferAssets.encodeAssetId": { + "66": [ + 1035, + 1082 + ], + "67": [ + 1092, + 1129 + ], + "68": [ + 1139, + 1196 + ], + "69": [ + 1207, + 1430 + ] + }, + "TransferAssets.invertNotionalAmountsInPlace": { + "101": [ + 1691, + 1736 + ], + "102": [ + 1672, + 1675 + ] + }, + "TransferAssets.placeAssetsInAccount": { + "94": [ + 2314, + 2380 + ], + "95": [ + 2515, + 2591 + ], + "96": [ + 2876, + 2916 + ], + "97": [ + 3009, + 3083 + ], + "98": [ + 3104, + 3125 + ] + } + }, + "86": {}, + "87": {}, + "88": { + "AssetHandler.getSettlementDate": { + "276": [ + 1104, + 1190 + ], + "277": [ + 1365, + 1386 + ], + "278": [ + 1689, + 1751 + ] + }, + "AssetHandler.isLiquidityToken": { + "239": [ + 699, + 830 + ] + } + }, + "89": {}, + "90": {}, + "91": {}, + "92": { + "Bitmap.isBitSet": { + "222": [ + 820, + 855 + ], + "223": [ + 894, + 959 + ] + }, + "Bitmap.setBit": { + "225": [ + 447, + 482 + ], + "226": [ + 547, + 593 + ], + "227": [ + 624, + 671 + ] + }, + "Bitmap.totalBitsSet": { + "268": [ + 1130, + 1286 + ], + "269": [ + 1296, + 1452 + ], + "270": [ + 1462, + 1549 + ], + "271": [ + 1559, + 1715 + ], + "272": [ + 1725, + 1742 + ], + "273": [ + 1752, + 1769 + ], + "274": [ + 1779, + 1797 + ], + "275": [ + 1807, + 1844 + ] + } + }, + "93": {}, + "94": { + "SafeInt256.add": { + "224": [ + 1503, + 1540 + ] + }, + "SafeInt256.mul": { + "218": [ + 474, + 483 + ], + "219": [ + 506, + 536 + ], + "220": [ + 551, + 581 + ] + }, + "SafeInt256.neg": { + "139": [ + 1619, + 1636 + ] + }, + "SafeInt256.toInt": { + "73": [ + 2587, + 2627 + ] + }, + "SafeInt256.toUint": { + "31": [ + 2465, + 2480 + ], + "32": [ + 2490, + 2507 + ] + } + } + } + }, + "dependencies": [ + "ABDKMath64x64", + "AaveHandler", + "AccountContextHandler", + "ActionGuards", + "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/Address", + "AssetHandler", + "AssetRate", + "AssetRateAdapter", + "BalanceHandler", + "Bitmap", + "BitmapAssetsHandler", + "CErc20Interface", + "CEtherInterface", + "CTokenInterface", + "CashGroup", + "CompoundHandler", + "Constants", + "DateTime", + "Deployments", + "ExchangeRate", + "FloatingPoint56", + "FreeCollateral", + "FreeCollateralExternal", + "GenericToken", + "IEIP20NonStandard", + "IERC1155TokenReceiver", + "IRewarder", + "Incentives", + "LibStorage", + "Market", + "MigrateIncentives", + "PortfolioHandler", + "SafeInt256", + "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/SafeMath", + "SettleAssetsExternal", + "SettleBitmapAssets", + "SettlePortfolioAssets", + "StorageLayoutV1", + "TokenHandler", + "TransferAssets", + "nERC1155Interface", + "nTokenCalculations", + "nTokenHandler", + "nTokenSupply" + ], + "deployedBytecode": "6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b73__$841fddfe32830bb6dbc3a02d7f16c53722$__73__$f6541b0d362a0c7d99a2a29cd3d373d61b$__9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea26469706673582212201311160102a416b51764ab1c80f32cd638f4dde8c31d4ed5c592629d5fb648eb64736f6c63430007060033", + "deployedSourceMap": "683:19633:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1742:203;;;;;;;;;;-1:-1:-1;1742:203:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1103:150;;;;;;;;;;-1:-1:-1;1103:150:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;2172:537::-;;;;;;;;;;-1:-1:-1;2172:537:30;;;;;:::i;:::-;;:::i;1035:28:63:-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;8849:1500:30:-;;;;;;:::i;:::-;;:::i;:::-;;11245:307;;;;;;;;;;-1:-1:-1;11245:307:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;3783:494::-;;;;;;;;;;-1:-1:-1;3783:494:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;13314:229::-;;;;;;;;;;-1:-1:-1;13314:229:30;;;;;:::i;:::-;;:::i;2949:503::-;;;;;;;;;;-1:-1:-1;2949:503:30;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;19267:222:30:-;;;;;;;;;;-1:-1:-1;19267:222:30;;;;;:::i;:::-;;:::i;20163:151::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;19806:269::-;;;;;;;;;;-1:-1:-1;19806:269:30;;;;;:::i;:::-;;:::i;6229:1919::-;;;;;;:::i;:::-;;:::i;1742:203::-;1820:7;1839:15;1857:28;1873:7;1882:2;1857:15;:28::i;:::-;1839:46;;1913:1;1902:8;:12;:36;;1921:17;:8;:15;:17::i;:::-;1902:36;;;1917:1;1902:36;1895:43;;;1742:203;;;;;:::o;1103:150::-;-1:-1:-1;;;;;;1205:41:30;;-1:-1:-1;;;1205:41:30;1103:150;;;;:::o;2172:537::-;2256:15;2283:36;2322:48;2362:7;2322:39;:48::i;:::-;2283:87;;2385:32;:14;:30;:32::i;:::-;2381:322;;;2444:62;2461:7;2470:14;:31;;;2444:62;;2503:2;2444:16;:62::i;:::-;2433:73;;2381:322;;;2548:144;2581:77;2617:7;2626:14;:31;;;2581:35;:77::i;:::-;2676:2;2548:15;:144::i;2381:322::-;2172:537;;;;;:::o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;8849:1500:30:-;9260:27;9278:4;9284:2;9260:17;:27::i;:::-;9299:30;9331:23;9358:29;9374:3;;9379:7;;9358:15;:29::i;:::-;9298:89;;;;9535:18;9531:81;;;9563:32;9580:2;9584:10;9563:16;:32::i;:::-;9555:57;;;;-1:-1:-1;;;9555:57:30;;;;;;;:::i;:::-;;;;;;;;;9624:33;9659:31;9694:73;9717:4;9735:2;9751:6;9694:9;:73::i;:::-;9623:144;;;;9778:83;9802:4;9808:2;9812:11;9825:9;9836:4;;9842:18;9778:23;:83::i;:::-;9908:2;-1:-1:-1;;;;;9876:49:30;9902:4;-1:-1:-1;;;;;9876:49:30;9890:10;-1:-1:-1;;;;;9876:49:30;;9912:3;;9917:7;;9876:49;;;;;;;;;:::i;:::-;;;;;;;;9993:22;10012:2;9993:18;:22::i;:::-;9989:354;;;1017:78;-1:-1:-1;;;;;10056:230:30;;10078:2;-1:-1:-1;;;;;10056:48:30;;10126:10;10158:4;10184:3;;10209:7;;10238:4;;10056:204;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;10056:230:30;;10031:301;;;;-1:-1:-1;;;10031:301:30;;;;;;;:::i;:::-;8849:1500;;;;;;;;;;;;:::o;11245:307::-;11385:23;11452:30;11493:29;11509:3;;11514:7;;11493:15;:29::i;:::-;-1:-1:-1;11451:71:30;11245:307;-1:-1:-1;;;;;;11245:307:30:o;3783:494::-;3924:16;3964:29;;;3956:38;;;;;;4004:24;4045:8;-1:-1:-1;;;;;4031:30:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4031:30:30;;4004:57;;4077:9;4072:174;4088:19;;;4072:174;;;4205:30;4215:8;;4224:1;4215:11;;;;;;;;;;;;;;;;;;;;:::i;:::-;4228:3;;4232:1;4228:6;;;;;;;;;;;;;4205:9;:30::i;:::-;4192:7;4200:1;4192:10;;;;;;;;;;;;;;;;;:43;4109:3;;4072:174;;;-1:-1:-1;4263:7:30;3783:494;-1:-1:-1;;;;;3783:494:30:o;13314:229::-;13449:7;13475:61;13504:10;13475:61;;13516:8;13475:61;;13526:9;13475:61;;:28;:61::i;:::-;13468:68;;13314:229;;;;;;:::o;2949:503::-;3096:15;3135:29;;;3127:38;;;;;;3175:23;3214:8;-1:-1:-1;;;;;3201:29:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3201:29:30;;3175:55;;3246:9;3241:180;3257:19;;;3241:180;;;3374:36;3390:8;;3399:1;3390:11;;;;;;;;;;;;;;;;;;;;:::i;:::-;3403:3;;3407:1;3403:6;;;;;;;;;;;;;3374:15;:36::i;:::-;3361:7;3369:1;3361:10;;;;;;;;;;;;;;;;;:49;3278:3;;3241:180;;920:26:63;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;19267:222:30:-;19389:10;19355:45;;;;:33;:45;;;;;;;;-1:-1:-1;;;;;19355:55:30;;;;;;;;;;;:66;;-1:-1:-1;;19355:66:30;;;;;;;19436:46;;19355:55;;19389:10;19436:46;;;;19355:66;;19436:46;:::i;:::-;;;;;;;;19267:222;;:::o;20163:151::-;20244:31;20277:29;20163:151;;:::o;19806:269::-;-1:-1:-1;;;;;19953:32:30;;19929:4;19953:32;;;:22;:32;;;;;;;;19949:49;;;-1:-1:-1;19994:4:30;19987:11;;19949:49;-1:-1:-1;;;;;;20016:42:30;;;;;;;:33;:42;;;;;;;;:52;;;;;;;;;;;;;;;19806:269::o;6229:1919::-;6663:27;6681:4;6687:2;6663:17;:27::i;:::-;6814:33;;:::i;:::-;6861:10;;6857:732;;6920:23;;;6941:1;6920:23;;;;;;;;;6887:30;;6920:23;;;;;;:::i;:::-;;;;;;;;;;;;;;;;6887:56;;6957:27;6987:6;6994:1;6987:9;;;;;;;;;;;;;;6957:39;;7065:32;7094:2;7065:28;:32::i;:::-;7046:15;;;7011:86;7030:14;;;7011:86;;;7204:24;7221:6;7204:16;:24::i;:::-;7187:14;;;:41;7264:16;;7282:14;;;;7242:72;;7264:16;7298:15;7242:21;:72::i;:::-;7393:27;7403:4;7409:2;7413:6;7393:9;:27::i;:::-;7360:60;;;;;7473:2;-1:-1:-1;;;;;7440:48:30;7467:4;-1:-1:-1;;;;;7440:48:30;7455:10;-1:-1:-1;;;;;7440:48:30;;7477:2;7481:6;7440:48;;;;;;;:::i;:::-;;;;;;;;6857:732;;;;;7533:45;7573:4;7533:39;:45::i;:::-;7519:59;;6857:732;7710:31;;:::i;:::-;7751:70;7775:4;7781:2;7785:11;7798:9;7809:4;;7815:5;7751:23;:70::i;:::-;7903:22;7922:2;7903:18;:22::i;:::-;7899:243;;;7966:79;;-1:-1:-1;;;7966:79:30;;;:119;-1:-1:-1;;;;;7966:43:30;;;;;:79;;8010:10;;8022:4;;8028:2;;8032:6;;8040:4;;;;7966:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;7966:119:30;;7941:190;;;;-1:-1:-1;;;7941:190:30;;;;;;;:::i;:::-;6229:1919;;;;;;;;:::o;2397:117:94:-;2446:7;2478:1;2473;:6;;2465:15;;;;;;-1:-1:-1;2505:1:94;2397:117::o;552:219:66:-;619:21;;:::i;:::-;652:48;703:30;:28;:30::i;:::-;-1:-1:-1;;;;;750:14:66;;;;;;;;;;;;;;;;;743:21;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;-1:-1:-1;;;;;;743:21:66;;;;;-1:-1:-1;743:21:66;;552:219;-1:-1:-1;552:219:66:o;1117:152::-;1226:31;;;:36;;;;;1117:152::o;4343:577:30:-;4477:6;4496:18;4516:16;4534:17;4555:32;4584:2;4555:28;:32::i;:::-;4495:92;;;;;;4629:16;4615:10;:30;;:85;;;-1:-1:-1;4700:1:60;4661:39:30;;;4615:85;4598:316;;;4796:1;4789:8;;;;;;;4598:316;4835:68;4873:7;4882:10;4894:8;4835:37;:68::i;:::-;4828:75;;;;;;;14791:385:84;14907:23;14946:30;14979:42;14995:7;15004:16;14979:15;:42::i;:::-;14946:75;;15099:1;15082:6;:13;:18;15078:37;;15109:6;-1:-1:-1;15102:13:84;;15078:37;15126:20;15139:6;15126:12;:20::i;4980:555:30:-;5099:6;5122:18;5142:16;5160:17;5181:32;5210:2;5181:28;:32::i;:::-;5121:92;;;;;;5229:9;5224:305;5244:9;:16;5240:1;:20;5224:305;;;5281:27;5311:9;5321:1;5311:12;;;;;;;;;;;;;;5281:42;;5378:10;5358:5;:16;;;:30;:76;;;;;5426:8;5408:5;:14;;;:26;5358:76;:124;;;;;5473:9;5454:5;:15;;;:28;5358:124;5337:181;;;5504:14;;;;-1:-1:-1;5497:21:30;;-1:-1:-1;;;;5497:21:30;5337:181;-1:-1:-1;5262:3:30;;5224:305;;;;4980:555;;;;;;;:::o;10399:642::-;10559:2;-1:-1:-1;;;;;10551:10:30;:4;-1:-1:-1;;;;;10551:10:30;;;:30;;;;-1:-1:-1;;;;;;10565:16:30;;;;10551:30;:53;;;;-1:-1:-1;;;;;;10585:19:30;;10599:4;10585:19;;10551:53;10543:81;;;;-1:-1:-1;;;10543:81:30;;;;;;;:::i;:::-;10677:10;-1:-1:-1;;;;;10677:18:30;;;;:56;;;10699:34;10716:4;10722:10;10699:16;:34::i;:::-;10669:81;;;;-1:-1:-1;;;10669:81:30;;;;;;;:::i;:::-;11009:25;11029:4;11009:19;:25::i;:::-;10399:642;;:::o;11558:1522::-;11682:23;11707:4;11735:28;;;11727:37;;;;;;11774:23;;11869:3;-1:-1:-1;;;;;11848:32:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;11815:65;;11896:9;11891:1137;11907:14;;;11891:1137;;;12045:5;;12041:61;;12069:3;;12077:1;12073;:5;12069:10;;;;;;;;;;;;;12060:3;;12064:1;12060:6;;;;;;;;;;;;;:19;12052:50;;;;-1:-1:-1;;;12052:50:30;;;;;;;:::i;:::-;12117:27;12147:6;12154:1;12147:9;;;;;;;;;;;;;;12117:39;;12224:36;12253:3;;12257:1;12253:6;;;;;;;;;;;;;12224:28;:36::i;:::-;12205:15;;;12170:90;12189:14;;;12170:90;;;;;;12275:72;;12170:90;12331:15;12275:21;:72::i;:::-;12783:7;;12791:1;12783:10;;;;;;;;;;;;;;12759:14;;;:35;;;12989:1;-1:-1:-1;12968:49:30;;-1:-1:-1;12968:49:30;;13013:4;12992:25;;12968:49;-1:-1:-1;11923:3:30;;11891:1137;;;-1:-1:-1;13046:6:30;13054:18;;-1:-1:-1;11558:1522:30;-1:-1:-1;;;;;11558:1522:30:o;14050:1283::-;14175:21;;:::i;:::-;14198;;:::i;:::-;14422:31;14456:43;14496:2;14456:39;:43::i;:::-;14422:77;;14513:28;:9;:26;:28::i;:::-;14509:120;;;14569:49;;-1:-1:-1;;;14569:49:30;;:20;;:34;;:49;;14604:2;;14608:9;;14569:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14557:61;;14509:120;14650:58;14686:2;14690:9;14701:6;14650:35;:58::i;:::-;14638:70;-1:-1:-1;14718:31:30;14638:70;14746:2;14718:27;:31::i;:::-;14832:51;14876:6;14832:43;:51::i;:::-;14935:33;14971:45;15011:4;14971:39;:45::i;:::-;14935:81;;15030:30;:11;:28;:30::i;:::-;15026:128;;;15090:53;;-1:-1:-1;;;15090:53:30;;:20;;:34;;:53;;15125:4;;15131:11;;15090:53;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15076:67;;15026:128;15177:62;15213:4;15219:11;15232:6;15177:35;:62::i;:::-;15163:76;-1:-1:-1;15249:35:30;15163:76;15279:4;15249:29;:35::i;:::-;15303:11;15316:9;;-1:-1:-1;14050:1283:30;-1:-1:-1;;;;14050:1283:30:o;15492:3083::-;15738:10;;15829:2;15814:17;;15810:341;;16068:11;16082:27;;;;16093:4;16082:27;:::i;:::-;16068:41;-1:-1:-1;;15810:341:30;-1:-1:-1;;;;;;16488:42:30;;-1:-1:-1;;;16488:42:30;;:97;;-1:-1:-1;;;;;;;16546:39:30;;-1:-1:-1;;;16546:39:30;16488:97;:161;;;-1:-1:-1;;;;;;;16601:48:30;;-1:-1:-1;;;16601:48:30;16488:161;:233;;;-1:-1:-1;;;;;;;16665:56:30;;-1:-1:-1;;;16665:56:30;16488:233;16471:1122;;;16777:10;16784:2;16782:1;16777:4;;:10;:::i;:::-;16766:33;;;;;;;:::i;:::-;16746:53;;17101:4;-1:-1:-1;;;;;17080:25:30;:17;-1:-1:-1;;;;;17080:25:30;;:110;;;;17151:2;-1:-1:-1;;;;;17130:23:30;:17;-1:-1:-1;;;;;17130:23:30;;:59;;;;;17157:32;17174:2;17178:10;17157:16;:32::i;:::-;17055:186;;;;-1:-1:-1;;;17055:186:30;;;;;;;:::i;:::-;17452:11;17465:19;17496:4;-1:-1:-1;;;;;17488:18:30;17514:9;17525:4;;17488:42;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17451:79;;;;17552:6;17560:21;17574:6;17560:13;:21::i;:::-;17544:38;;;;;-1:-1:-1;;;17544:38:30;;;;;;;;:::i;:::-;;16471:1122;;;17941:4;-1:-1:-1;;;;;17920:25:30;:17;-1:-1:-1;;;;;17920:25:30;;;:56;;;;-1:-1:-1;17949:19:30;;;;-1:-1:-1;;;;;;17949:27:30;;;17920:56;17916:144;;;17992:57;;-1:-1:-1;;;17992:57:30;;:22;;:51;;:57;;18044:4;;17992:57;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17916:144;18413:18;:45;;;;;18456:2;-1:-1:-1;;;;;18435:23:30;:17;-1:-1:-1;;;;;18435:23:30;;;18413:45;:74;;;;-1:-1:-1;18462:17:30;;;;-1:-1:-1;;;;;;18462:25:30;;;18413:74;18409:160;;;18503:55;;-1:-1:-1;;;18503:55:30;;:22;;:51;;:55;;18555:2;;18503:55;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18409:160;15492:3083;;;;;;;;;:::o;718:413:16:-;1078:20;1116:8;;;718:413::o;883:554:85:-;1016:7;5408:6:60;1043:38:85;;;1035:47;;;;;;1112:16;1100:28;;;1092:37;;;;;;4906:1:60;1147:48:85;;;1139:57;;;;;;-1:-1:-1;1252:42:85;1292:2;1252:42;;;;1319:39;1357:1;1319:39;;;;1251:108;1390:25;;;1251:165;883:554;;;;;:::o;541:302::-;807:29;833:2;827:8;;;807:29;;771:26;795:1;789:7;;;771:26;;740:21;;;541:302::o;2520:163:94:-;2569:6;-1:-1:-1;;;;;2596:1:94;:30;;2587:40;;;;;13687:297:30;13849:86;13874:39;13902:10;13874:27;:39::i;:::-;13849:86;;13915:8;13925:9;13849:24;:86::i;:::-;13828:149;;;;-1:-1:-1;;;13828:149:30;;;;;;;:::i;:::-;13687:297;;;:::o;1879:229:62:-;1940:48;2005:12;2020:41;2036:24;2020:15;:41::i;1320:368:83:-;1455:15;1482:99;1584:35;:33;:35::i;:::-;-1:-1:-1;;;;;1636:14:83;;;;;;;;;;;;;;:26;;;;;;;;:36;;;;;;;:45;;;;;1629:52;;;-1:-1:-1;;1320:368:83;;;;;:::o;16756:1107:84:-;16858:23;588:2;16955:6;:30;;;;16947:39;;;;;;16997:90;17090:37;:35;:37::i;:::-;-1:-1:-1;;;;;17204:14:84;;17137:64;17204:14;;;;;;;;;;16997:130;;-1:-1:-1;17261:28:84;;;-1:-1:-1;;;;;17261:28:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;17228:61;;17305:9;17300:533;17324:6;17320:10;;:1;:10;17300:533;;;17351:42;17396:12;17409:1;17396:15;;;;;;;;17351:60;;17425:27;17455:6;17462:1;17455:9;;;;;;;;;;;;;;;;;;;17603:23;;;;;17584:42;;17657:21;;;;;17640:14;;;:38;;;;17710:22;-1:-1:-1;;;17710:22:84;;;17692:15;;;:40;-1:-1:-1;;;17763:21:84;;;;;;;17746:38;;:14;;;:38;17798:17;;:24;;;;-1:-1:-1;17603:23:84;17332:3;17300:533;;15921:829;16015:13;;15998:14;16015:13;-1:-1:-1;;;;;16061:21:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16061:21:84;;16038:44;;16097:9;16092:257;16112:6;16108:1;:10;16092:257;;;16139:27;16169:6;16176:1;16169:9;;;;;;;;;;;;;;16139:39;;16259:79;16288:5;:16;;;16306:5;:14;;;16322:5;:15;;;16259:28;:79::i;:::-;16250:3;16254:1;16250:6;;;;;;;;;;;;;;;;;:88;-1:-1:-1;16120:3:84;;16092:257;;;-1:-1:-1;16403:1:84;16414:330;16425:6;16421:1;:10;16414:330;;;16459:1;16474:243;16485:1;16481;:5;:28;;;;;16503:3;16507:1;16503:6;;;;;;;;;;;;;;16490:3;16498:1;16494;:5;16490:10;;;;;;;;;;;;;;:19;16481:28;16474:243;;;16589:3;16593:1;16589:6;;;;;;;;;;;;;;16597:3;16605:1;16601;:5;16597:10;;;;;;;;;;;;;;16566:3;16574:1;16570;:5;16566:10;;;;;;;;;;;;;16578:3;16582:1;16578:6;;;;;;;;;;;;;16565:43;;;;;;;;;;16656:6;16663:1;16656:9;;;;;;;;;;;;;;16667:6;16678:1;16674;:5;16667:13;;;;;;;;;;;;;;16627:6;16638:1;16634;:5;16627:13;;;;;;;;;;;;;16642:6;16649:1;16642:9;;;;;;;;;;;;;;;;;16626:55;;;;;-1:-1:-1;;16699:3:84;16474:243;;;-1:-1:-1;16730:3:84;;16414:330;;;15921:829;;;;:::o;1296:466:28:-;-1:-1:-1;;;;;1374:28:28;;1366:37;;;;;;-1:-1:-1;;;;;1454:24:28;;1473:4;1454:24;;1446:33;;;;;;1503:16;1684:39;1715:7;1684:30;:39::i;:::-;1489:234;;;;;;;;1741:8;1753:1;1741:13;1733:22;;;;;3020:732:66;3107:4;3143:15;3173:31;3189:14;3173:15;:31::i;:::-;3169:577;;;3389:31;3410:9;3389:20;:31::i;:::-;3357:29;;:63;;;;-1:-1:-1;3350:70:66;;-1:-1:-1;3350:70:66;3169:577;3660:29;;3656:33;;;;;;:79;;-1:-1:-1;3693:29:66;;:42;;;-1:-1:-1;3693:42:66;3656:79;3649:86;;;;;1997:1135:85;2162:21;;:::i;:::-;2323:33;:14;:31;:33::i;:::-;2322:34;2314:66;;;;-1:-1:-1;;;2314:66:85;;;;;;;:::i;:::-;2395:32;:14;:30;:32::i;:::-;2391:703;;;2515:76;2559:7;2568:14;2584:6;2515:43;:76::i;:::-;2391:703;;;2622:36;2661:155;2715:7;2740:14;:31;;;2789:6;:13;2661:36;:155::i;:::-;2622:194;-1:-1:-1;2876:40:85;2622:194;2909:6;2876:32;:40::i;:::-;3009:74;:14;3052:7;3061:14;3077:5;3009:42;:74::i;:::-;2391:703;;-1:-1:-1;3111:14:85;;1997:1135;-1:-1:-1;;1997:1135:85:o;837:274:66:-;938:48;989:30;:28;:30::i;:::-;-1:-1:-1;;;;;1029:14:66;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;;;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;1029:31:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:29;938:81;;-1:-1:-1;1029:14:66;;1075:29;;1029:14;1075:29;837:274;;;:::o;1543:210:85:-;1642:9;1637:110;1657:6;:13;1653:1;:17;1637:110;;;1712:24;:6;1719:1;1712:9;;;;;;;;;;;;;;:18;;;:22;:24::i;:::-;1691:6;1698:1;1691:9;;;;;;;;;;;;;;;;;;:18;;:45;1672:3;;1637:110;;18581:487:30;18653:13;18814:2;18793:11;:18;:23;18789:67;;;-1:-1:-1;18818:38:30;;;;;;;;;;;;;;;;;;;18789:67;18956:4;18943:11;18939:22;18924:37;;18998:11;18987:33;;;;;;;;;;;;:::i;11565:192:77:-;11635:5;11652:12;11667:37;11693:10;11667:25;:37::i;:::-;11727:22;;;;-1:-1:-1;;;11565:192:77:o;2224:524:78:-;2363:4;2379:12;2394:36;2420:9;2394:25;:36::i;:::-;2379:51;;2440:19;2462:50;2471:40;2496:14;2471:24;:40::i;:::-;2462:4;;:8;:50::i;:::-;2440:72;;2579:11;2568:8;:22;2564:40;;;2599:5;2592:12;;;;;;2564:40;2650:12;2666:51;2697:9;2708:8;2666:30;:51::i;:::-;2642:75;2224:524;-1:-1:-1;;;;;;;;2224:524:78:o;8450:329:62:-;8542:12;494:7;8742:9;8734:18;;;;;;;;:38;;8450:329;-1:-1:-1;;8450:329:62:o;5665:269::-;5730:87;5833:12;5848:39;5864:22;5848:15;:39::i;6020:263::-;6087:77;6180:12;6195:41;6211:24;6195:15;:41::i;728:737:81:-;836:17;867:35;916:27;957:22;993:17;1035:47;1085:36;:34;:36::i;:::-;-1:-1:-1;;;;;1163:19:81;;;1131:29;1163:19;;;;;;;;-1:-1:-1;;1163:19:81;;;;1206:18;;;;;1264:35;;;;;;;-1:-1:-1;;;;1331:27:81;;;;-1:-1:-1;1387:24:81;-1:-1:-1;;;1387:24:81;;;;-1:-1:-1;;;;1434:24:81;;;;;;-1:-1:-1;728:737:81:o;583:160:78:-;641:7;2399:5:60;668:4:78;:21;;660:30;;;;;;2399:5:60;715:4:78;:20;;707:29;;;;583:160;-1:-1:-1;583:160:78:o;1753:1065:83:-;1930:32;:14;:30;:32::i;:::-;1922:41;;;;;;2026:31;;;;2005:52;;:18;2068:744;2088:6;:13;2084:1;:17;2068:744;;;2122:27;2152:6;2159:1;2152:9;;;;;;;;;;;;;;2122:39;;2179:5;:14;;;2197:1;2179:19;2175:33;;;2200:8;;;2175:33;2231:16;;:30;;2223:39;;;;;;2327:15;;;;4700:1:60;2327:45:83;2319:54;;;;;;2430:20;2481:192;2513:7;2538:10;2566:5;:14;;;2598;:29;;;2481:192;;2645:5;:14;;;2481;:192::i;:::-;2465:208;;2708:1;2692:13;:17;2688:113;;;2752:22;;;;;-1:-1:-1;;;2752:49:83;-1:-1:-1;;;;;;2727:74:83;;;2688:113;2068:744;;;2103:3;;2068:744;;;;1753:1065;;;;:::o;15438:477:84:-;15584:21;;:::i;:::-;15617:27;;:::i;:::-;15658:21;;;15654:39;;15688:5;-1:-1:-1;15681:12:84;;15654:39;15725:45;15744:7;15753:16;15725:18;:45::i;:::-;15704:66;;15780:42;;;:23;;;:42;15871:13;-1:-1:-1;;;;;15850:35:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;15832:15:84;;;:53;:15;15438:477;-1:-1:-1;;;;15438:477:84:o;658:502::-;804:9;799:355;823:6;:13;819:1;:17;799:355;;;857:27;887:6;894:1;887:9;;;;;;;;;;;;;;857:39;;914:5;:14;;;932:1;914:19;910:33;;;935:8;;;910:33;958:185;984:14;1016:5;:16;;;1050:5;:14;;;1082:5;:15;;;1115:5;:14;;;958:8;:185::i;:::-;799:355;;838:3;;799:355;;9863:2352:66;10240:12;;;;10344:35;:14;10371:7;10344:26;:35::i;:::-;10389:46;;;;;10239:140;;-1:-1:-1;10239:140:66;;-1:-1:-1;10239:140:66;-1:-1:-1;10239:140:66;-1:-1:-1;10453:32:66;10389:14;10453:16;:32::i;:::-;:41;10445:50;;;;;;10541;;;:31;;;:50;10772:13;10767:141;;2023:1:60;10809:60:66;;;;;10801:69;;;;;;11059:7;11055:263;;;11107:22;;;;;-1:-1:-1;;;11107:49:66;-1:-1:-1;;;;;;11082:74:66;;;11055:263;;;11257:22;;;;;-1:-1:-1;;;11232:75:66;;;11055:263;11460:59;11487:14;:31;;;11460:26;:59::i;:::-;-1:-1:-1;;;;;;11426:93:66;:31;;;:93;11530:20;11560:649;11567:24;;11560:649;;11902:35;;;;11955:26;;;11951:147;;12001:82;12019:14;12035:10;12047:4;-1:-1:-1;;;12001:17:66;:82::i;:::-;12196:2;12173:25;;;;;12126:10;-1:-1:-1;11560:649:66;;1553:90:94;1599:8;1626:10;-1:-1:-1;;1634:1:94;1626:3;:10::i;11271:218:77:-;11348:12;11372:41;11416:32;:30;:32::i;:::-;11465:17;;;;;;-1:-1:-1;;11465:17:77;;;;;11271:218::o;330:193:78:-;398:7;2617:9:60;425:30:78;;;417:39;;;;;;2617:9:60;486::78;:29;;928:470;991:7;1014:5;1023:1;1014:10;1010:40;;;-1:-1:-1;2617:9:60;1026:24:78;;1010:40;1064:5;1073:1;1064:10;1060:44;;;-1:-1:-1;1083:21:78;1076:28;;1060:44;1118:5;1127:1;1118:10;1114:37;;;-1:-1:-1;2665:11:60;1130:21:78;;1114:37;1165:5;1174:1;1165:10;1161:41;;;-1:-1:-1;1184:18:78;1177:25;;1161:41;1216:5;1225:1;1216:10;1212:41;;;-1:-1:-1;1235:18:78;1228:25;;1212:41;1267:5;1276:1;1267:10;1263:42;;;-1:-1:-1;1286:19:78;1279:26;;1263:42;1319:5;1328:1;1319:10;1315:42;;;-1:-1:-1;1338:19:78;1331:26;;1315:42;1368:23;;-1:-1:-1;;;1368:23:78;;;;;;;:::i;2682:175:6:-;2740:7;2771:5;;;2794:6;;;;2786:46;;;;;-1:-1:-1;;;2786:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;4025:2699:78;4140:7;4149:4;4169:21;4193:22;4205:9;4193:11;:22::i;:::-;4169:46;-1:-1:-1;2399:5:60;4283:8:78;:24;:29;4279:52;;4322:1;4325:5;4314:17;;;;;;;4279:52;4404:8;4387:13;:25;4383:48;;4422:1;4425:5;4414:17;;;;;;;4383:48;2399:5:60;4556:24:78;;;4555:42;2984:2:60;4680:38:78;;4676:1887;;4742:10;-1:-1:-1;4754:4:78;;-1:-1:-1;4734:25:78;;-1:-1:-1;4734:25:78;4676:1887;3036:3:60;4780:10:78;:39;4776:1787;;5092:20;2399:5:60;2520:7;5212:30:78;;5211:68;5131:148;;-1:-1:-1;;5131:148:78;;-1:-1:-1;2776:1:60;5131:148:78;5528:37;3257:2:60;5500:65:78;2776:1:60;5584:12:78;:37;;;;;;5626:1;5583:44;5306:335;;;;;;;;;4776:1787;3090:4:60;5662:10:78;:40;5658:905;;5718:20;2399:5:60;2567:8;5839:31:78;;5838:69;5757:150;;-1:-1:-1;;5757:150:78;;-1:-1:-1;2825:2:60;5757:150:78;5976:38;3310:3:60;5947:67:78;2825:2:60;6033:12:78;:38;;;;5658:905;3147:4:60;6112:10:78;:42;6108:455;;6170:20;2399:5:60;2617:9;6292:33:78;;6291:71;6209:153;;-1:-1:-1;;6209:153:78;;-1:-1:-1;2877:2:60;6209:153:78;6433:40;3366:3:60;6402:71:78;2877:2:60;6492:12:78;:40;;;;6108:455;6706:3;6711:5;6698:19;;;;;;4025:2699;;;;;;:::o;2175:232:62:-;2241:47;2305:12;2320:40;2336:23;2320:15;:40::i;3016:1782:83:-;3200:6;3218:20;3241:36;3257:7;3266:10;3241:15;:36::i;:::-;3218:59;;3287:99;3389:35;:33;:35::i;:::-;-1:-1:-1;;;;;3468:14:83;;3434:31;3468:14;;;;;;;;;;;:26;;;;;;;;:36;;;;;;;;3287:137;;-1:-1:-1;3434:31:83;3547:56;3578:14;3495:8;3547:30;:56::i;:::-;3514:89;;;;3621:7;3613:16;;;;;;3689:29;:12;3711:6;3689:21;:29::i;:::-;3685:649;;;3838:18;;3802:20;;3825:32;;:8;;3838:18;;;;3825:32;;:12;:32::i;:::-;3802:55;-1:-1:-1;;;;;;;3879:33:83;-1:-1:-1;3879:33:83;;;:70;;-1:-1:-1;;;;;;3916:33:83;;;3879:70;3871:79;;;;;;3997:42;;-1:-1:-1;;;;;;3997:42:83;-1:-1:-1;;;;;3997:42:83;;;;;;;;;4119:106;;4176:34;:12;4196:6;4204:5;4176:19;:34::i;:::-;4161:49;;4119:106;4239:50;4255:7;4264:10;4276:12;4239:15;:50::i;:::-;4310:13;-1:-1:-1;4303:20:83;;-1:-1:-1;;;;;4303:20:83;3685:649;4348:13;;4344:422;;-1:-1:-1;;;;;;4483:28:83;-1:-1:-1;4483:28:83;;;:60;;-1:-1:-1;;;;;;4515:28:83;;;4483:60;4475:69;;;;;;4591:37;;-1:-1:-1;;;;;;4591:37:83;-1:-1:-1;;;;;4591:37:83;;;;;;;;4658:33;:12;4678:6;-1:-1:-1;4658:19:83;:33::i;:::-;4643:48;;4705:50;4721:7;4730:10;4742:12;4705:15;:50::i;:::-;4783:8;4776:15;;;;;;;3016:1782;;;;;;;;:::o;2971:2071:84:-;3268:27;;3230:186;;3313:10;3341:8;3367:9;3394:8;3230:20;:186::i;:::-;3171:263;;;3427:7;;3171:263;3448:32;;;;:36;3444:296;;3500:11;3514:183;3552:14;:24;;;3594:10;3622:8;3648:9;3675:8;3514:20;:183::i;:::-;3500:197;;3715:6;3711:19;;;3723:7;;;3711:19;3444:296;;3904:40;3934:9;3904:29;:40::i;:::-;3900:152;;;3980:1;3968:8;:13;;3960:22;;;;;;-1:-1:-1;;4069:27:84;;;;;:58;;-1:-1:-1;4112:15:84;4100:27;;;4069:58;4061:67;;;;;;4278:14;:24;;;:31;4242:14;:32;;;:67;4238:171;;;4352:46;4373:14;:24;;;4352:20;:46::i;:::-;4325:24;;;:73;4238:171;4679:30;4712:14;:24;;;4737:14;:32;;;4712:58;;;;;;;;;;;;;;;;;;;4780:32;;;4822:17;;:28;;;;4860:18;;;;:30;;;;4900:17;;;:28;-1:-1:-1;4938:21:84;;;;:50;;;;-1:-1:-1;4998:32:84;:37;;5034:1;4998:37;;;2971:2071::o;6460:4123::-;6583:4;;;;;;;;7195:574;7219:27;;:34;7215:38;;7195:574;;;7274:27;7304:14;:27;;;7332:1;7304:30;;;;;;;;;;;;;;7274:60;;7517:32;7495:54;;;;;;;;:5;:18;;;:54;;;;;;;;;;7487:63;;;;;;7647:24;7625:5;:18;;;:46;;;;;;;;;;:69;;;;-1:-1:-1;7675:14:84;;;;:19;7625:69;7621:138;;;7714:30;7726:14;7742:1;7714:11;:30::i;:::-;-1:-1:-1;7255:3:84;;7195:574;;;;7868:9;7863:1217;7887:27;;:34;7883:38;;7863:1217;;;7942:27;7972:14;:27;;;8000:1;7972:30;;;;;;;;;;;;;;7942:60;;8043:24;8021:46;;;;;;;;:5;:18;;;:46;;;;;;;;;8017:1053;;;8154:17;;;;8132:19;8220:25;;8198:65;;;8327:24;8305:5;:18;;;:46;;;;;;;;;8301:361;;;8461:17;;;;;8611:32;8461:5;:17;8611:11;:32::i;:::-;8301:361;;;8875:180;8920:5;8947:7;8976:25;9023:14;8875:23;:180::i;:::-;8820:235;;-1:-1:-1;8820:235:84;-1:-1:-1;8820:235:84;-1:-1:-1;8017:1053:84;-1:-1:-1;7923:3:84;;7863:1217;;;-1:-1:-1;9145:32:84;;;;9116:26;9280:37;:35;:37::i;:::-;-1:-1:-1;;;;;9394:14:84;;9327:64;9394:14;;;;;;;;;;9187:130;;-1:-1:-1;9418:735:84;9442:14;:24;;;:31;9438:1;:35;9418:735;;;9494:27;9524:14;:24;;;9549:1;9524:27;;;;;;;;;;;;;;9494:57;;9569:5;:14;;;9587:1;9569:19;9565:33;;;9590:8;;;9565:33;9659:24;9637:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;9725:32:84;9703:5;:18;;;:54;;;;;;;;;;9637:120;9612:159;;;;;;9878:160;9919:5;9942:7;9967:25;10010:14;9878:23;:160::i;:::-;9823:215;;-1:-1:-1;9823:215:84;-1:-1:-1;9823:215:84;-1:-1:-1;10053:52:84;10065:5;10072:12;10085:18;10072:32;;;;;;;;10053:11;:52::i;:::-;10141:1;10119:23;;;;9418:735;;9475:3;;9418:735;;;;10333:2;10311:18;:24;;:62;;;;-1:-1:-1;10357:16:84;10339:34;;;10311:62;10303:71;;;;;;-1:-1:-1;10445:7:84;;10466:25;;-1:-1:-1;10466:25:84;-1:-1:-1;10511:18:84;-1:-1:-1;6460:4123:84;-1:-1:-1;;;;6460:4123:84:o;8919:751:66:-;9004:7;;9150:24;9131:43;;9004:7;9302:338;-1:-1:-1;;;;;;9309:14:66;;;9302:338;;-1:-1:-1;;;9343:45:66;;;:77;9339:256;;;-1:-1:-1;;;;;;9516:23:66;;:33;;9506:44;;;;;9578:2;9568:12;9339:256;9627:2;9617:6;-1:-1:-1;;;;;9617:12:66;;;;9608:21;;9302:338;;;-1:-1:-1;9657:6:66;;8919:751;-1:-1:-1;;;8919:751:66:o;5247:3666::-;5435:10;5431:1;:14;:56;;;;-1:-1:-1;5408:6:60;5449:38:66;;;5431:56;5423:65;;;;;;5707:8;:57;;;;;5754:10;5719:14;:31;;;:45;;;5707:57;5703:70;;;5766:7;;5703:70;5824:31;;;;5783:14;;;6684:1857;-1:-1:-1;;;;;;6691:14:66;;;6684:1857;;6767:22;6743:47;;;5408:6:60;6743:47:66;6877:17;;;:29;;;;;6898:8;6877:29;6873:272;;;-1:-1:-1;7019:31:66;;;;;-1:-1:-1;;;;;;7074:14:66;;7102:2;7093:11;;;7074:31;;;;7019:87;;;;-1:-1:-1;;;;;;6965:141:66;;;-1:-1:-1;7124:7:66;;-1:-1:-1;7124:7:66;6873:272;7239:10;7232:3;:17;:30;;;;;7254:8;7253:9;7232:30;7228:375;;;-1:-1:-1;;;;;;7369:14:66;;7368:15;7359:24;;;;;-1:-1:-1;;;7405:50:66;;7401:77;;7476:2;7466:6;-1:-1:-1;;;;;7466:12:66;;;;7457:21;;7401:77;-1:-1:-1;;;;;;;7540:23:66;;;7560:2;7551:11;;;7540:23;7530:34;;;;7496:68;:31;;;:68;7582:7;;7228:375;7695:10;7689:3;:16;:28;;;;;7709:8;7689:28;7685:575;;;8046:3;8011:31;;;;-1:-1:-1;;;;;;7764:26:66;;;;:34;;7756:43;;7813:2;7804:11;;7756:60;7746:71;;;;;8011:38;;;8010:48;8002:57;;;;;;-1:-1:-1;;;;;;;8191:29:66;;;8212:1;8203:10;;;;8217:2;8202:17;8191:29;8181:40;;;;8147:74;:31;;;:74;8239:7;;7685:575;8364:10;8358:3;:16;:29;;;;;8379:8;8378:9;8358:29;8354:42;;;8389:7;;;;;;8354:42;-1:-1:-1;;;;;;;8429:23:66;;8466:2;8457:11;;;8429:40;;;;8419:51;;;;;8493:12;;;;-1:-1:-1;;;;;;8493:12:66;;8529:1;8519:11;6684:1857;;;8616:8;8611:22;;8626:7;;;;;8611:22;8733:1;8724:6;:10;8716:19;;;;;;-1:-1:-1;;;;;;8853:26:66;;;;:34;;8845:43;8902:2;8893:11;;;8845:60;8823:83;;;;-1:-1:-1;;;;;;8777:129:66;:31;;;:129;-1:-1:-1;5247:3666:66;;;;:::o;398:190:94:-;478:5;;;-1:-1:-1;;497:7:94;;493:88;;;515:6;;;:20;;;534:1;529;525;:5;;;;;;:10;515:20;506:30;;;;;;493:88;;;560:6;;;:20;;;579:1;574;570;:5;;;;;;:10;560:20;551:30;;;;;4677:217:62;4739:41;4796:12;4811:36;4827:19;4811:15;:36::i;656:266:83:-;741:20;773:61;837:35;:33;:35::i;:::-;-1:-1:-1;;;;;889:14:83;;;;;;;;;;;;;;:26;;;;;;;;;-1:-1:-1;;656:266:83;;;;:::o;732:234:92:-;804:4;837:1;828:5;:10;;:26;;;;;851:3;842:5;:12;;828:26;820:35;;;;;;-1:-1:-1;;;914:9:92;903:21;-1:-1:-1;;;902:39:92;;;901:58;;732:234::o;1427:120:94:-;1516:5;;;1511:16;;;;1483:8;1532:6;;;1511:28;1503:37;;;;;316:372:92;428:7;464:1;455:5;:10;;:26;;;;;478:3;469:5;:12;;455:26;447:35;;;;;;526:5;522:160;;;-1:-1:-1;;;;;;582:9:92;;564:28;554:39;;547:46;;522:160;-1:-1:-1;;;;;;660:9:92;;642:28;640:31;631:40;;624:47;;928:386:83;2215:2:60;1069:27:83;:12;:25;:27::i;:::-;:58;;1061:86;;;;-1:-1:-1;;;1061:86:83;;;;;;;:::i;:::-;1157:61;1221:35;:33;:35::i;:::-;-1:-1:-1;;;;;1266:14:83;;;;;;;;;;;;;;;:26;;;;;;;-1:-1:-1;1266:26:83;;:41;928:386::o;1166:1465:84:-;1374:4;;1390:1212;1414:10;:17;1410:1;:21;1390:1212;;;1452:27;1482:10;1493:1;1482:13;;;;;;;;;;;;;;1452:43;;1549:9;1530:5;:15;;;:28;;:78;;;-1:-1:-1;1578:16:84;;:30;;;1530:78;:124;;;;1646:8;1628:5;:14;;;:26;;1530:124;1509:168;;;1669:8;;;1509:168;1875:24;1853:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;1941:32:84;1919:5;:18;;;:54;;;;;;;;;;1853:120;1828:159;;;;;;2065:14;;;;2044:18;;2065:28;;2084:8;2065:18;:28::i;:::-;2044:49;;2173:40;2203:9;2173:29;:40::i;:::-;2169:163;;;2256:1;2241:11;:16;;2233:25;;;;;;-1:-1:-1;;2354:30:84;;;;;:64;;-1:-1:-1;2403:15:84;2388:30;;;2354:64;2346:73;;;;;;2478:14;;;:28;2541:24;2520:18;;;;:45;;;2541:24;-1:-1:-1;2580:11:84;;-1:-1:-1;2580:11:84;1390:1212;1433:3;;1390:1212;;;-1:-1:-1;2619:5:84;;1166:1465;-1:-1:-1;;;;;;1166:1465:84:o;615:222:88:-;683:4;4847:1:60;718:48:88;;;;;:112;;-1:-1:-1;;4906:1:60;-1:-1:-1;782:48:88;;615:222::o;5183:648:84:-;5294:23;5532:17;5552:9;:16;5572:1;5552:21;:48;;5580:9;:16;5599:1;5580:20;5552:48;;;5576:1;5552:48;5532:68;;5610:37;5671:9;-1:-1:-1;;;;;5650:31:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5610:71;;5696:9;5691:103;5715:9;:16;5711:1;:20;5691:103;;;5771:9;5781:1;5771:12;;;;;;;;;;;;;;5752:13;5766:1;5752:16;;;;;;;;;;;;;;;;;:31;5733:3;;5691:103;;;-1:-1:-1;5811:13:84;5183:648;-1:-1:-1;;;5183:648:84:o;12689:2038::-;12803:27;;:34;12795:42;;12787:51;;;;;;12920:1;12885:14;:32;;;:36;12877:45;;;;;;12969:35;13007:14;:27;;;13035:5;13007:34;;;;;;;;;;;;;;12969:72;;13102:24;13072:54;;;;;;;;:13;:26;;;:54;;;;;;;;;;:132;;;;-1:-1:-1;13172:32:84;13142:13;:26;;;:62;;;;;;;;;;13072:132;13051:163;;;;;;13253:32;;;:37;;-1:-1:-1;;13253:37:84;;;-1:-1:-1;;;13531:338:84;13551:27;;:34;13547:38;;13531:338;;;13606:23;13632:14;:27;;;13660:1;13632:30;;;;;;;;;;;;;;13606:56;;13696:13;13680:1;:13;;;:29;:75;;;;-1:-1:-1;13731:24:84;13713:1;:14;;;:42;;;;;;;;;;13680:75;13676:183;;;13791:1;:13;;;13775:29;;13843:1;13822:22;;13676:183;-1:-1:-1;13587:3:84;;13531:338;;;;13892:18;13883:5;:27;13879:236;;;-1:-1:-1;;14060:24:84;14031:26;;;;;:53;14098:7;;13879:236;14328:33;14364:14;:27;;;14392:18;14364:47;;;;;;;;;;;;;;;;;;14524:25;;;;;;14563:23;;;;;14421:175;;;;14633:24;14606;;;;:51;14696:24;14667:26;;:53;;;;-1:-1:-1;;;;;12689:2038:84:o;11592:862::-;11739:16;;11735:20;;;;:68;;-1:-1:-1;11759:16:84;;5408:6:60;-1:-1:-1;11759:44:84;11735:68;11727:77;;;;;;11868:5;:14;;;11864:1;:18;:56;;;;-1:-1:-1;11886:14:84;;;;11904:16;-1:-1:-1;11886:34:84;11864:56;11856:65;;;;;;11982:5;:15;;;11978:1;:19;:77;;;;-1:-1:-1;12001:15:84;;;;4906:1:60;-1:-1:-1;12001:54:84;11978:77;11970:86;;;;;;12127:14;;;;-1:-1:-1;;12108:33:84;;;;:70;;-1:-1:-1;12145:14:84;;;;12163:15;-1:-1:-1;12145:33:84;12108:70;12100:79;;;;;;12262:16;;12229:50;;12320:14;;;;12376:15;;;;12432:14;;;;;12402:45;;;;-1:-1:-1;;;12402:45:84;-1:-1:-1;;12345:47:84;;;;-1:-1:-1;;;12345:47:84;-1:-1:-1;;12289:46:84;;;;;;-1:-1:-1;;12229:50:84;;;;-1:-1:-1;;12229:50:84;;;;;;;12289:46;;;;;;;;12345:47;;;;;12402:45;;;;;;;;;;11592:862::o;10664:882::-;10896:4;10914:7;10935;10967:22;10992:25;:5;:23;:25::i;:::-;10967:50;-1:-1:-1;11089:19:84;;;:54;;;11129:14;11112;:31;11089:54;11085:116;;;11176:14;11159:31;;11085:116;11220:7;:29;;;;11248:1;11231:5;:14;;;:18;11220:29;11210:39;-1:-1:-1;11268:47:84;;;;11260:56;;;;;;-1:-1:-1;;11444:16:84;;11488:7;;11429:2;11400:31;;;;11465:3;11436:32;;;;11399:70;;;;;-1:-1:-1;11524:14:84;-1:-1:-1;10664:882:84:o;5315:243:62:-;5380:61;5457:12;5472:39;5488:22;5472:15;:39::i;1013:838:92:-;1215:1;1210:6;;;1219:66;1210:75;;;1135:70;;1134:152;1381:1;1376:6;;;1385:66;1376:75;;;1301:70;;1300:152;1547:1;1542:6;;;1471:66;1467:70;;;;1466:83;1644:1;1639:6;;;1648:66;1639:75;;;1564:70;;1563:152;1739:2;1734:7;;;1729:13;1766:2;1761:7;;;1756:13;1794:2;1789:7;;;1783:14;1833:3;1828:8;;;1839:4;1828:15;;;1815:8;;1814:30;;1013:838::o;1006:752:88:-;1085:7;1130:1;1112:5;:15;;;:19;:77;;;;-1:-1:-1;1135:15:88;;;;4906:1:60;-1:-1:-1;1135:54:88;1112:77;1104:86;;;;;;1309:15;;;;4847:1:60;-1:-1:-1;1305:81:88;;-1:-1:-1;1372:14:88;;;;1365:21;;1305:81;1397:20;1420:45;1463:1;1445:5;:15;;;:19;1420:24;:45::i;:::-;1696:14;;;;1397:68;;-1:-1:-1;1696:55:88;;2617:9:60;;1696:32:88;;1397:68;1696:18;:32::i;:::-;:36;;:55::i;3128:155:6:-;3186:7;3218:1;3213;:6;;3205:49;;;;;-1:-1:-1;;;3205:49:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3271:5:6;;;3128:155::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:400:168:-;;;147:3;140:4;132:6;128:17;124:27;114:2;;170:6;162;155:22;114:2;-1:-1:-1;198:20:168;;-1:-1:-1;;;;;230:30:168;;227:2;;;280:8;270;263:26;227:2;324:4;316:6;312:17;300:29;;387:3;380:4;372;364:6;360:17;352:6;348:30;344:41;341:50;338:2;;;404:1;401;394:12;419:195;500:13;;-1:-1:-1;;;;;;542:47:168;;532:58;;522:2;;604:1;601;594:12;619:377;;;736:3;729:4;721:6;717:17;713:27;703:2;;761:8;751;744:26;703:2;-1:-1:-1;791:20:168;;-1:-1:-1;;;;;823:30:168;;820:2;;;873:8;863;856:26;820:2;917:4;909:6;905:17;893:29;;969:3;962:4;953:6;945;941:19;937:30;934:39;931:2;;;986:1;983;976:12;1001:140;1081:13;;1103:32;1081:13;1103:32;:::i;1146:138::-;1225:13;;1247:31;1225:13;1247:31;:::i;1289:259::-;;1401:2;1389:9;1380:7;1376:23;1372:32;1369:2;;;1422:6;1414;1407:22;1369:2;1466:9;1453:23;1485:33;1512:5;1485:33;:::i;1825:402::-;;;1954:2;1942:9;1933:7;1929:23;1925:32;1922:2;;;1975:6;1967;1960:22;1922:2;2019:9;2006:23;2038:33;2065:5;2038:33;:::i;:::-;2090:5;-1:-1:-1;2147:2:168;2132:18;;2119:32;2160:35;2119:32;2160:35;:::i;:::-;2214:7;2204:17;;;1912:315;;;;;:::o;2232:1396::-;;;;;;;;;2501:3;2489:9;2480:7;2476:23;2472:33;2469:2;;;2523:6;2515;2508:22;2469:2;2567:9;2554:23;2586:33;2613:5;2586:33;:::i;:::-;2638:5;-1:-1:-1;2695:2:168;2680:18;;2667:32;2708:35;2667:32;2708:35;:::i;:::-;2762:7;-1:-1:-1;2820:2:168;2805:18;;2792:32;-1:-1:-1;;;;;2873:14:168;;;2870:2;;;2905:6;2897;2890:22;2870:2;2949:76;3017:7;3008:6;2997:9;2993:22;2949:76;:::i;:::-;3044:8;;-1:-1:-1;2923:102:168;-1:-1:-1;3132:2:168;3117:18;;3104:32;;-1:-1:-1;3148:16:168;;;3145:2;;;3182:6;3174;3167:22;3145:2;3226:78;3296:7;3285:8;3274:9;3270:24;3226:78;:::i;:::-;3323:8;;-1:-1:-1;3200:104:168;-1:-1:-1;3411:3:168;3396:19;;3383:33;;-1:-1:-1;3428:16:168;;;3425:2;;;3462:6;3454;3447:22;3425:2;;3506:62;3560:7;3549:8;3538:9;3534:24;3506:62;:::i;:::-;2459:1169;;;;-1:-1:-1;2459:1169:168;;-1:-1:-1;2459:1169:168;;;;;;3587:8;-1:-1:-1;;;2459:1169:168:o;3633:849::-;;;;;;;3832:3;3820:9;3811:7;3807:23;3803:33;3800:2;;;3854:6;3846;3839:22;3800:2;3898:9;3885:23;3917:33;3944:5;3917:33;:::i;:::-;3969:5;-1:-1:-1;4026:2:168;4011:18;;3998:32;4039:35;3998:32;4039:35;:::i;:::-;4093:7;-1:-1:-1;4147:2:168;4132:18;;4119:32;;-1:-1:-1;4198:2:168;4183:18;;4170:32;;-1:-1:-1;4253:3:168;4238:19;;4225:33;-1:-1:-1;;;;;4270:30:168;;4267:2;;;4318:6;4310;4303:22;4267:2;4362:60;4414:7;4405:6;4394:9;4390:22;4362:60;:::i;:::-;3790:692;;;;-1:-1:-1;3790:692:168;;-1:-1:-1;3790:692:168;;4441:8;;3790:692;-1:-1:-1;;;3790:692:168:o;4487:438::-;;;4613:2;4601:9;4592:7;4588:23;4584:32;4581:2;;;4634:6;4626;4619:22;4581:2;4678:9;4665:23;4697:33;4724:5;4697:33;:::i;:::-;4749:5;-1:-1:-1;4806:2:168;4791:18;;4778:32;4848:15;;4841:23;4829:36;;4819:2;;4884:6;4876;4869:22;4930:327;;;5059:2;5047:9;5038:7;5034:23;5030:32;5027:2;;;5080:6;5072;5065:22;5027:2;5124:9;5111:23;5143:33;5170:5;5143:33;:::i;:::-;5195:5;5247:2;5232:18;;;;5219:32;;-1:-1:-1;;;5017:240:168:o;5262:815::-;;;;;5461:2;5449:9;5440:7;5436:23;5432:32;5429:2;;;5482:6;5474;5467:22;5429:2;5527:9;5514:23;-1:-1:-1;;;;;5597:2:168;5589:6;5586:14;5583:2;;;5618:6;5610;5603:22;5583:2;5662:76;5730:7;5721:6;5710:9;5706:22;5662:76;:::i;:::-;5757:8;;-1:-1:-1;5636:102:168;-1:-1:-1;5845:2:168;5830:18;;5817:32;;-1:-1:-1;5861:16:168;;;5858:2;;;5895:6;5887;5880:22;5858:2;;5939:78;6009:7;5998:8;5987:9;5983:24;5939:78;:::i;:::-;5419:658;;;;-1:-1:-1;6036:8:168;-1:-1:-1;;;;5419:658:168:o;6902:190::-;;7014:2;7002:9;6993:7;6989:23;6985:32;6982:2;;;7035:6;7027;7020:22;6982:2;-1:-1:-1;7063:23:168;;6972:120;-1:-1:-1;6972:120:168:o;7097:257::-;;7208:2;7196:9;7187:7;7183:23;7179:32;7176:2;;;7229:6;7221;7214:22;7176:2;7273:9;7260:23;7292:32;7318:5;7292:32;:::i;7359:261::-;;7481:2;7469:9;7460:7;7456:23;7452:32;7449:2;;;7502:6;7494;7487:22;7449:2;7539:9;7533:16;7558:32;7584:5;7558:32;:::i;7625:876::-;;7758:2;7746:9;7737:7;7733:23;7729:32;7726:2;;;7779:6;7771;7764:22;7726:2;7817:9;7811:16;-1:-1:-1;;;;;7887:2:168;7879:6;7876:14;7873:2;;;7908:6;7900;7893:22;7873:2;7951:6;7940:9;7936:22;7926:32;;7996:7;7989:4;7985:2;7981:13;7977:27;7967:2;;8023:6;8015;8008:22;7967:2;8057;8051:9;8079:2;8075;8072:10;8069:2;;;8085:9;8069:2;8125;8119:9;8194:2;8175:13;;-1:-1:-1;;8171:27:168;8159:40;;8201:2;8155:49;8219:18;;;8239:22;;;8216:46;8213:2;;;8265:9;8213:2;8292;8285:22;8316:18;;;8353:11;;;8366:2;8349:20;8346:33;-1:-1:-1;8343:2:168;;;8397:6;8389;8382:22;8343:2;8415:55;8467:2;8462;8454:6;8450:15;8445:2;8441;8437:11;8415:55;:::i;:::-;8489:6;7716:785;-1:-1:-1;;;;;;7716:785:168:o;8506:952::-;;8662:3;8650:9;8641:7;8637:23;8633:33;8630:2;;;8684:6;8676;8669:22;8630:2;8722;8716:9;8764:3;8756:6;8752:16;8834:6;8822:10;8819:22;-1:-1:-1;;;;;8786:10:168;8783:34;8780:62;8777:2;;;8845:9;8777:2;8872;8865:22;8909:16;;8934:32;8909:16;8934:32;:::i;:::-;8975:21;;9041:2;9026:18;;9020:25;-1:-1:-1;;;;;;9076:27:168;;9064:40;;9054:2;;9123:6;9115;9108:22;9054:2;9160;9148:15;;9141:32;9206:49;9251:2;9236:18;;9206:49;:::i;:::-;9201:2;9193:6;9189:15;9182:74;9289:50;9335:2;9324:9;9320:18;9289:50;:::i;:::-;9284:2;9276:6;9272:15;9265:75;9374:52;9421:3;9410:9;9406:19;9374:52;:::i;:::-;9368:3;9356:16;;9349:78;9360:6;8620:838;-1:-1:-1;;;8620:838:168:o;9463:537::-;;;;9605:2;9593:9;9584:7;9580:23;9576:32;9573:2;;;9626:6;9618;9611:22;9573:2;9670:9;9657:23;9689:32;9715:5;9689:32;:::i;:::-;9740:5;-1:-1:-1;9797:2:168;9782:18;;9769:32;9810:34;9769:32;9810:34;:::i;:::-;9863:7;-1:-1:-1;9922:2:168;9907:18;;9894:32;9935:33;9894:32;9935:33;:::i;:::-;9987:7;9977:17;;;9563:437;;;;;:::o;10005:369::-;10099:19;;;10005:369;-1:-1:-1;;;;;10130:31:168;;10127:2;;;10176:3;10171;10164:16;10127:2;10219:4;10211:6;10207:17;10269:8;10262:5;10255:4;10250:3;10246:14;10233:45;10301:18;;;;10321:4;10297:29;10335:15;;;-1:-1:-1;10297:29:168;;10089:285;-1:-1:-1;10089:285:168:o;10379:270::-;;10469:6;10464:3;10457:19;10521:6;10514:5;10507:4;10502:3;10498:14;10485:43;10573:3;10566:4;10557:6;10552:3;10548:16;10544:27;10537:40;10638:4;10631:2;10627:7;10622:2;10614:6;10610:15;10606:29;10601:3;10597:39;10593:50;10586:57;;10447:202;;;;;:::o;10654:273::-;;10837:6;10829;10824:3;10811:33;10863:16;;10888:15;;;10863:16;10801:126;-1:-1:-1;10801:126:168:o;10932:211::-;-1:-1:-1;;;;;11104:32:168;;;;11086:51;;11074:2;11059:18;;11041:102::o;11356:929::-;-1:-1:-1;;;;;11791:15:168;;;11773:34;;11843:15;;11838:2;11823:18;;11816:43;11753:3;11890:2;11875:18;;11868:31;;;11356:929;;11922:80;;11982:19;;11974:6;11966;11922:80;:::i;:::-;12050:9;12042:6;12038:22;12033:2;12022:9;12018:18;12011:50;12084:67;12144:6;12136;12128;12084:67;:::i;:::-;12070:81;;12200:9;12192:6;12188:22;12182:3;12171:9;12167:19;12160:51;12228;12272:6;12264;12256;12228:51;:::i;:::-;12220:59;11725:560;-1:-1:-1;;;;;;;;;;;11725:560:168:o;12290:597::-;-1:-1:-1;;;;;12605:15:168;;;12587:34;;12657:15;;12652:2;12637:18;;12630:43;12704:2;12689:18;;12682:34;;;12747:2;12732:18;;12725:34;;;12567:3;12790;12775:19;;12768:32;;;12290:597;;12817:64;;12861:19;;12853:6;12845;12817:64;:::i;12892:304::-;-1:-1:-1;;;;;13122:15:168;;;13104:34;;13174:15;;13169:2;13154:18;;13147:43;13054:2;13039:18;;13021:175::o;13201:700::-;-1:-1:-1;;;;;13468:32:168;;;;13450:51;;13541:13;;13556:12;13537:32;13532:2;13517:18;;;13510:60;;;;13616:15;;13610:22;-1:-1:-1;;;;;;13606:42:168;13601:2;13586:18;;;13579:70;;;;13695:15;;13689:22;13643:3;13685:33;13680:2;13665:18;;;13658:61;;;;13766:15;;13760:22;13784:6;13756:35;13750:3;13735:19;;;13728:64;;;;13839:16;13833:23;-1:-1:-1;;;;;;13829:65:168;13488:3;13808:19;;13801:94;13437:3;13422:19;;13404:497::o;13906:633::-;14075:2;14127:21;;;14197:13;;14100:18;;;14219:22;;;13906:633;;14075:2;14298:15;;;;14272:2;14257:18;;;13906:633;14344:169;14358:6;14355:1;14352:13;14344:169;;;14419:13;;14407:26;;14488:15;;;;14453:12;;;;14380:1;14373:9;14344:169;;;-1:-1:-1;14530:3:168;;14055:484;-1:-1:-1;;;;;;14055:484:168:o;14544:1204::-;14781:2;14833:21;;;14903:13;;14806:18;;;14925:22;;;14544:1204;;14781:2;14966;;14984:18;;;;15025:15;;;14544:1204;15071:651;15085:6;15082:1;15079:13;15071:651;;;15144:13;;15182:9;;15170:22;;15232:11;;;15226:18;15212:12;;;15205:40;15285:11;;;15279:18;15265:12;;;15258:40;15321:4;15365:11;;;15359:18;15345:12;;;15338:40;15401:4;15445:11;;;15439:18;15425:12;;;15418:40;15481:4;15524:11;;;15518:18;;15576:1;15559:19;;15549:2;;15582:9;15549:2;15613:12;;15606:34;15669:4;15660:14;;;;15697:15;;;;15107:1;15100:9;15071:651;;;-1:-1:-1;15739:3:168;;14761:987;-1:-1:-1;;;;;;;14761:987:168:o;15753:531::-;;16030:2;16019:9;16012:21;16056:79;16131:2;16120:9;16116:18;16108:6;16100;16056:79;:::i;:::-;16183:9;16175:6;16171:22;16166:2;16155:9;16151:18;16144:50;16211:67;16271:6;16263;16255;16211:67;:::i;:::-;16203:75;16002:282;-1:-1:-1;;;;;;;16002:282:168:o;16929:187::-;17094:14;;17087:22;17069:41;;17057:2;17042:18;;17024:92::o;17121:175::-;17265:25;;;17253:2;17238:18;;17220:76::o;17301:383::-;;17450:2;17439:9;17432:21;17482:6;17476:13;17525:6;17520:2;17509:9;17505:18;17498:34;17541:66;17600:6;17595:2;17584:9;17580:18;17575:2;17567:6;17563:15;17541:66;:::i;:::-;17668:2;17647:15;-1:-1:-1;;17643:29:168;17628:45;;;;17675:2;17624:54;;17422:262;-1:-1:-1;;17422:262:168:o;17689:339::-;17891:2;17873:21;;;17930:2;17910:18;;;17903:30;-1:-1:-1;;;17964:2:168;17949:18;;17942:45;18019:2;18004:18;;17863:165::o;18033:341::-;18235:2;18217:21;;;18274:2;18254:18;;;18247:30;-1:-1:-1;;;18308:2:168;18293:18;;18286:47;18365:2;18350:18;;18207:167::o;18379:336::-;18581:2;18563:21;;;18620:2;18600:18;;;18593:30;-1:-1:-1;;;18654:2:168;18639:18;;18632:42;18706:2;18691:18;;18553:162::o;18720:337::-;18922:2;18904:21;;;18961:2;18941:18;;;18934:30;-1:-1:-1;;;18995:2:168;18980:18;;18973:43;19048:2;19033:18;;18894:163::o;19062:343::-;19264:2;19246:21;;;19303:2;19283:18;;;19276:30;-1:-1:-1;;;19337:2:168;19322:18;;19315:49;19396:2;19381:18;;19236:169::o;19410:339::-;19612:2;19594:21;;;19651:2;19631:18;;;19624:30;-1:-1:-1;;;19685:2:168;19670:18;;19663:45;19740:2;19725:18;;19584:165::o;19754:340::-;19956:2;19938:21;;;19995:2;19975:18;;;19968:30;-1:-1:-1;;;20029:2:168;20014:18;;20007:46;20085:2;20070:18;;19928:166::o;20099:342::-;20301:2;20283:21;;;20340:2;20320:18;;;20313:30;-1:-1:-1;;;20374:2:168;20359:18;;20352:48;20432:2;20417:18;;20273:168::o;20446:336::-;20648:2;20630:21;;;20687:2;20667:18;;;20660:30;-1:-1:-1;;;20721:2:168;20706:18;;20699:42;20773:2;20758:18;;20620:162::o;20969:248::-;21143:25;;;21199:2;21184:18;;21177:34;21131:2;21116:18;;21098:119::o;21222:363::-;;;21380:8;21368:10;21365:24;21362:2;;;21410:9;21399;21392:28;21362:2;21447:6;21437:8;21434:20;21431:2;;;21475:9;21464;21457:28;21431:2;-1:-1:-1;;21509:23:168;;;21554:25;;;;;-1:-1:-1;21352:233:168:o;21590:258::-;21662:1;21672:113;21686:6;21683:1;21680:13;21672:113;;;21762:11;;;21756:18;21743:11;;;21736:39;21708:2;21701:10;21672:113;;;21803:6;21800:1;21797:13;21794:2;;;-1:-1:-1;;21838:1:168;21820:16;;21813:27;21643:205::o;21853:133::-;-1:-1:-1;;;;;21930:31:168;;21920:42;;21910:2;;21976:1;21973;21966:12;21910:2;21900:86;:::o;21991:133::-;-1:-1:-1;;;;;;22067:32:168;;22057:43;;22047:2;;22114:1;22111;22104:12;22129:119;22216:6;22209:5;22205:18;22198:5;22195:29;22185:2;;22238:1;22235;22228:12;22253:125;22340:12;22333:5;22329:24;22322:5;22319:35;22309:2;;22368:1;22365;22358:12;22383:116;22469:4;22462:5;22458:16;22451:5;22448:27;22438:2;;22489:1;22486;22479:12", + "language": "Solidity", + "natspec": { + "kind": "dev", + "methods": { + "balanceOf(address,uint256)": { + "notice": "Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by this method do not show negative fCash balances because only unsigned integers are returned. They are represented by zero here. Use `signedBalanceOf` to get a signed return value.", + "params": { + "account": "account to get the id for", + "id": "the ERC1155 id" + }, + "returns": { + "_0": "Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)" + } + }, + "balanceOfBatch(address[],uint256[])": { + "notice": "Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented as zero balances in the array. ", + "params": { + "accounts": "array of accounts to get balances for", + "ids": "array of ids to get balances for" + }, + "returns": { + "_0": "Returns an array of unsigned balances" + } + }, + "decodeToAssets(uint256[],uint256[])": { + "notice": "Decodes ids and amounts to PortfolioAsset objects", + "params": { + "amounts": "amounts to transfer", + "ids": "array of ERC1155 ids" + }, + "returns": { + "_0": "array of portfolio asset objects" + } + }, + "encodeToId(uint16,uint40,uint8)": { + "notice": "Encodes parameters into an ERC1155 id", + "params": { + "assetType": "id of the asset type", + "currencyId": "currency id of the asset", + "maturity": "timestamp of the maturity" + }, + "returns": { + "_0": "ERC1155 id" + } + }, + "getLibInfo()": { + "notice": "Get a list of deployed library addresses (sorted by library name)" + }, + "isApprovedForAll(address,address)": { + "notice": "Checks approval state for an account, will first check if global transfer operator is enabled before falling through to an account specific transfer operator.", + "params": { + "account": "address of the account", + "operator": "address of the operator" + }, + "returns": { + "_0": "true for approved" + } + }, + "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": { + "details": "emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled", + "notice": "Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.", + "params": { + "amounts": "amounts to transfer", + "data": "arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate a trading action on Notional for the `from` address", + "from": "account to transfer from", + "ids": "ERC1155 ids of the assets", + "to": "account to transfer to" + } + }, + "safeTransferFrom(address,address,uint256,uint256,bytes)": { + "details": "emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled", + "notice": "Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.", + "params": { + "amount": "amount to transfer", + "data": "arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate a trading action on Notional for the `from` address", + "from": "account to transfer from", + "id": "ERC1155 id of the asset", + "to": "account to transfer to" + } + }, + "setApprovalForAll(address,bool)": { + "details": "emit:ApprovalForAll", + "notice": "Allows an account to set approval for an operator", + "params": { + "approved": "state of the approval", + "operator": "address of the operator" + } + }, + "signedBalanceOf(address,uint256)": { + "notice": "Returns the balance of an ERC1155 id on an account.", + "params": { + "account": "account to get the id for", + "id": "the ERC1155 id" + }, + "returns": { + "notional": "balance of the ERC1155 id as a signed integer" + } + }, + "signedBalanceOfBatch(address[],uint256[])": { + "notice": "Returns the balance of a batch of accounts and ids.", + "params": { + "accounts": "array of accounts to get balances for", + "ids": "array of ids to get balances for" + }, + "returns": { + "_0": "Returns an array of signed balances" + } + } + }, + "version": 1 + }, + "offset": [ + 683, + 20316 + ], + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xE7 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x735A1DC8 GT PUSH2 0x8A JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x59 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x26A JUMPI DUP1 PUSH4 0xC4C96DAE EQ PUSH2 0x28A JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x2AD JUMPI DUP1 PUSH4 0xF242432A EQ PUSH2 0x2CD JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH4 0x735A1DC8 EQ PUSH2 0x200 JUMPI DUP1 PUSH4 0x81A86855 EQ PUSH2 0x220 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x240 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x255 JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH4 0x24A3D622 GT PUSH2 0xC6 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x16F JUMPI DUP1 PUSH4 0x2EB2C2D6 EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x3FA6B808 EQ PUSH2 0x1A6 JUMPI DUP1 PUSH4 0x4E1273F4 EQ PUSH2 0x1D3 JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH3 0xFDD58E EQ PUSH2 0xEC JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x122 JUMPI DUP1 PUSH4 0xFAC8F09 EQ PUSH2 0x14F JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x107 CALLDATASIZE PUSH1 0x4 PUSH2 0x312D JUMP JUMPDEST PUSH2 0x2E0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3630 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x12E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x142 PUSH2 0x13D CALLDATASIZE PUSH1 0x4 PUSH2 0x31D8 JUMP JUMPDEST PUSH2 0x312 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3625 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x15B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x16A CALLDATASIZE PUSH1 0x4 PUSH2 0x312D JUMP JUMPDEST PUSH2 0x32C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x17B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x380 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x33F4 JUMP JUMPDEST PUSH2 0x1A4 PUSH2 0x19F CALLDATASIZE PUSH1 0x4 PUSH2 0x2FC9 JUMP JUMPDEST PUSH2 0x38F JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1B2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C6 PUSH2 0x1C1 CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x557 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3571 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F3 PUSH2 0x1EE CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x572 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x352D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x20C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x21B CALLDATASIZE PUSH1 0x4 PUSH2 0x333C JUMP JUMPDEST PUSH2 0x635 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x22C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F3 PUSH2 0x23B CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x65A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x24C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x713 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x261 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x722 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x276 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1A4 PUSH2 0x285 CALLDATASIZE PUSH1 0x4 PUSH2 0x30FC JUMP JUMPDEST PUSH2 0x739 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x296 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x29F PUSH2 0x7A8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP3 SWAP2 SWAP1 PUSH2 0x34A7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x142 PUSH2 0x2C8 CALLDATASIZE PUSH1 0x4 PUSH2 0x2F91 JUMP JUMPDEST PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x1A4 PUSH2 0x2DB CALLDATASIZE PUSH1 0x4 PUSH2 0x3083 JUMP JUMPDEST PUSH2 0x82E JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2ED DUP5 DUP5 PUSH2 0x32C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT PUSH2 0x305 JUMPI PUSH2 0x300 DUP2 PUSH2 0xA23 JUMP JUMPDEST PUSH2 0x308 JUMP JUMPDEST PUSH1 0x0 JUMPDEST SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND PUSH4 0x6CDB3D13 PUSH1 0xE1 SHL EQ JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x338 DUP5 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0x343 DUP2 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x362 JUMPI PUSH2 0x35B DUP5 DUP3 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND DUP6 PUSH2 0xAE4 JUMP JUMPDEST SWAP2 POP PUSH2 0x379 JUMP JUMPDEST PUSH2 0x308 PUSH2 0x373 DUP6 DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0xB2F JUMP JUMPDEST DUP5 PUSH2 0xB58 JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH2 0x399 DUP9 DUP9 PUSH2 0xBDE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3A8 DUP9 DUP9 DUP9 DUP9 PUSH2 0xC7E JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP1 ISZERO PUSH2 0x3E1 JUMPI PUSH2 0x3BC DUP10 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x3E1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36C0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3EF DUP13 DUP13 DUP7 PUSH2 0xDC8 JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH2 0x402 DUP13 DUP13 DUP5 DUP5 DUP11 DUP11 DUP10 PUSH2 0xF68 JUMP JUMPDEST DUP11 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP13 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB DUP14 DUP14 DUP14 DUP14 PUSH1 0x40 MLOAD PUSH2 0x455 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x35F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x466 DUP12 PUSH2 0x1246 JUMP JUMPDEST ISZERO PUSH2 0x549 JUMPI PUSH32 0xBC197C819B3E337A6F9652DD10BECD7EEF83032AF3B9D958D3D42F6694146621 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND DUP12 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xBC197C81 CALLER DUP16 DUP15 DUP15 DUP15 DUP15 DUP15 DUP15 PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D0 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3408 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x522 SWAP2 SWAP1 PUSH2 0x31F4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND EQ PUSH2 0x549 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x37B9 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x567 DUP7 DUP7 DUP7 DUP7 PUSH2 0xC7E JUMP JUMPDEST POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 DUP3 EQ PUSH2 0x580 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x598 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5C2 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH2 0x60C DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x5DF JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x5F4 SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x600 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x2E0 JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x618 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x5C8 JUMP JUMPDEST POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x650 DUP5 PUSH2 0xFFFF AND DUP5 PUSH5 0xFFFFFFFFFF AND DUP5 PUSH1 0xFF AND PUSH2 0x124C JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 DUP3 EQ PUSH2 0x668 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x680 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x6AA JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH2 0x6F4 DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x6C7 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x6DC SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x6E8 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x32C JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x700 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x6B0 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x7 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 AND DUP1 DUP6 MSTORE SWAP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND DUP6 ISZERO ISZERO OR SWAP1 SSTORE SWAP1 MLOAD SWAP1 SWAP2 SWAP1 PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 SWAP1 PUSH2 0x79C SWAP1 DUP6 SWAP1 PUSH2 0x3625 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH20 0x0 PUSH20 0x0 SWAP1 SWAP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x7FF JUMPI POP PUSH1 0x1 PUSH2 0x30C JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x7 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP5 AND DUP3 MSTORE SWAP2 SWAP1 SWAP2 MSTORE KECCAK256 SLOAD PUSH1 0xFF AND SWAP1 JUMP JUMPDEST PUSH2 0x838 DUP7 DUP7 PUSH2 0xBDE JUMP JUMPDEST PUSH2 0x840 PUSH2 0x2E31 JUMP JUMPDEST DUP4 ISZERO PUSH2 0x936 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x865 PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x85D JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x889 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x89C DUP8 PUSH2 0x12A7 JUMP JUMPDEST PUSH1 0x40 DUP5 ADD MSTORE PUSH1 0x20 DUP4 ADD MSTORE DUP2 MSTORE PUSH2 0x8B1 DUP7 PUSH2 0x12C4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE DUP1 MLOAD PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x8C8 SWAP2 SWAP1 TIMESTAMP PUSH2 0x12DA JUMP JUMPDEST PUSH2 0x8D3 DUP10 DUP10 DUP5 PUSH2 0xDC8 JUMP JUMPDEST POP DUP1 SWAP4 POP POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP10 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH2 0x927 SWAP3 SWAP2 SWAP1 PUSH2 0x37DF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP PUSH2 0x942 JUMP JUMPDEST PUSH2 0x93F DUP8 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0x94A PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0x95A DUP9 DUP9 DUP5 DUP5 DUP9 DUP9 PUSH1 0x0 PUSH2 0xF68 JUMP JUMPDEST PUSH2 0x963 DUP8 PUSH2 0x1246 JUMP JUMPDEST ISZERO PUSH2 0xA19 JUMPI PUSH1 0x40 MLOAD PUSH4 0xF23A6E61 PUSH1 0xE0 SHL DUP1 DUP3 MSTORE SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND SWAP1 PUSH4 0xF23A6E61 SWAP1 PUSH2 0x9A0 SWAP1 CALLER SWAP1 DUP14 SWAP1 DUP13 SWAP1 DUP13 SWAP1 DUP13 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x346C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x9CE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x9F2 SWAP2 SWAP1 PUSH2 0x31F4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND EQ PUSH2 0xA19 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x37B9 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0xA32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH2 0xA3E PUSH2 0x2E31 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA48 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP4 DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP2 MLOAD PUSH1 0xA0 DUP2 ADD DUP4 MSTORE SWAP1 SLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP3 MSTORE PUSH6 0x10000000000 DUP2 DIV PUSH1 0xF8 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP6 DUP3 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x1 PUSH1 0x30 SHL DUP6 DIV PUSH1 0xFF AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1 PUSH1 0x38 SHL DUP5 DIV PUSH2 0xFFFF AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x48 SHL SWAP1 SWAP4 DIV PUSH1 0x70 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xAF3 DUP6 PUSH2 0x12A7 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP6 DUP4 EQ ISZERO DUP1 PUSH2 0xB09 JUMPI POP PUSH1 0x1 DUP2 EQ ISZERO JUMPDEST ISZERO PUSH2 0xB1A JUMPI PUSH1 0x0 SWAP4 POP POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH2 0xB25 DUP8 DUP5 DUP5 PUSH2 0x131E JUMP JUMPDEST SWAP4 POP POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0xB3D DUP5 DUP5 PUSH2 0x1363 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 DUP2 MLOAD GT PUSH2 0xB4F JUMPI SWAP1 POP PUSH2 0x30C JUMP JUMPDEST PUSH2 0x653 DUP2 PUSH2 0x147A JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xB67 DUP6 PUSH2 0x12A7 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP7 MLOAD DUP2 LT ISZERO PUSH2 0xBD4 JUMPI PUSH1 0x0 DUP8 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xB87 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP5 DUP2 PUSH1 0x0 ADD MLOAD EQ DUP1 ISZERO PUSH2 0xBA7 JUMPI POP DUP4 DUP2 PUSH1 0x20 ADD MLOAD EQ JUMPDEST DUP1 ISZERO PUSH2 0xBB6 JUMPI POP DUP3 DUP2 PUSH1 0x40 ADD MLOAD EQ JUMPDEST ISZERO PUSH2 0xBCB JUMPI PUSH1 0x60 ADD MLOAD SWAP5 POP PUSH2 0x30C SWAP4 POP POP POP POP JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xB70 JUMP JUMPDEST POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO DUP1 ISZERO PUSH2 0xC08 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ISZERO ISZERO JUMPDEST DUP1 ISZERO PUSH2 0xC1D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO JUMPDEST PUSH2 0xC39 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x366C JUMP JUMPDEST CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND EQ DUP1 PUSH2 0xC55 JUMPI POP PUSH2 0xC55 DUP3 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0xC71 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36C0 JUMP JUMPDEST PUSH2 0xC7A DUP3 PUSH2 0x1638 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP5 DUP4 EQ PUSH2 0xC8E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0xCA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xCE1 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xCCE PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xCC6 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP8 DUP2 LT ISZERO PUSH2 0xDBB JUMPI DUP1 ISZERO PUSH2 0xD3B JUMPI DUP9 DUP9 PUSH1 0x1 DUP4 SUB DUP2 DUP2 LT PUSH2 0xD04 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD DUP10 DUP10 DUP4 DUP2 DUP2 LT PUSH2 0xD17 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD GT PUSH2 0xD3B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x378D JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xD49 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0xD6E DUP11 DUP11 DUP5 DUP2 DUP2 LT PUSH2 0xD62 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x12A7 JUMP JUMPDEST PUSH1 0x40 DUP5 ADD MSTORE PUSH1 0x20 DUP4 ADD DUP2 SWAP1 MSTORE DUP2 DUP4 MSTORE PUSH2 0xD88 SWAP2 SWAP1 TIMESTAMP PUSH2 0x12DA JUMP JUMPDEST DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0xD94 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL SWAP2 SWAP1 SWAP2 ADD CALLDATALOAD PUSH1 0x60 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SGT ISZERO SWAP1 POP PUSH2 0xDB2 JUMPI PUSH1 0x1 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xCE7 JUMP JUMPDEST POP SWAP8 SWAP1 SWAP7 POP SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0xDD0 PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0xDD8 PUSH2 0x2E31 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDE3 DUP6 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0xDEE DUP2 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0xE7F JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xE2C SWAP1 DUP9 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x34C1 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE44 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE58 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE7C SWAP2 SWAP1 PUSH2 0x32A6 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0xE8A DUP6 DUP3 DUP7 PUSH2 0x16D7 JUMP JUMPDEST SWAP1 POP PUSH2 0xE96 DUP2 DUP7 PUSH2 0x1758 JUMP JUMPDEST PUSH2 0xE9F DUP5 PUSH2 0x185C JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEAA DUP8 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0xEB5 DUP2 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0xF46 JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xEF3 SWAP1 DUP11 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x34C1 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xF1F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xF43 SWAP2 SWAP1 PUSH2 0x32A6 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0xF51 DUP8 DUP3 DUP8 PUSH2 0x16D7 JUMP JUMPDEST SWAP1 POP PUSH2 0xF5D DUP2 DUP9 PUSH2 0x1758 JUMP JUMPDEST SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP5 LT PUSH2 0xF85 JUMPI PUSH1 0x0 PUSH2 0xF81 DUP6 DUP8 ADD DUP8 PUSH2 0x31C0 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x66890643 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0xFB4 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x541F527 PUSH1 0xE4 SHL EQ JUMPDEST DUP1 PUSH2 0xFCF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x37351953 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0xFEA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x276B64B PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x10FA JUMPI PUSH2 0xFFD PUSH1 0x24 PUSH1 0x4 DUP7 DUP9 PUSH2 0x37ED JUMP JUMPDEST DUP2 ADD SWAP1 PUSH2 0x100A SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST SWAP1 POP DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ DUP1 PUSH2 0x104D JUMPI POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ DUP1 ISZERO PUSH2 0x104D JUMPI POP PUSH2 0x104D DUP9 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x1069 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x3695 JUMP JUMPDEST PUSH1 0x0 DUP1 ADDRESS PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLVALUE DUP9 DUP9 PUSH1 0x40 MLOAD PUSH2 0x1087 SWAP3 SWAP2 SWAP1 PUSH2 0x33E4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x10C4 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x10C9 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x10D8 DUP3 PUSH2 0x18AB JUMP JUMPDEST SWAP1 PUSH2 0x10F6 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP2 SWAP1 PUSH2 0x3639 JUMP JUMPDEST POP POP POP JUMPDEST DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO DUP1 ISZERO PUSH2 0x1129 JUMPI POP PUSH1 0x20 DUP8 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1196 JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x1165 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x33F4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x117D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1191 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP3 DUP1 ISZERO PUSH2 0x11B5 JUMPI POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO JUMPDEST DUP1 ISZERO PUSH2 0x11CE JUMPI POP PUSH1 0x20 DUP7 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x123B JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x120A SWAP1 DUP12 SWAP1 PUSH1 0x4 ADD PUSH2 0x33F4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1222 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1236 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST EXTCODESIZE ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFF DUP5 GT ISZERO PUSH2 0x125D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x126F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 DUP3 GT ISZERO PUSH2 0x127D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH8 0xFFFF000000000000 PUSH1 0x30 DUP5 SWAP1 SHL AND PUSH6 0xFFFFFFFFFF00 PUSH1 0x8 DUP5 SWAP1 SHL AND OR PUSH1 0xFF DUP3 AND OR SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xFFFF PUSH1 0x30 DUP3 SWAP1 SHR AND SWAP2 PUSH5 0xFFFFFFFFFF PUSH1 0x8 DUP4 SWAP1 SHR AND SWAP2 PUSH1 0xFF AND SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 GT ISZERO PUSH2 0xA32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x12F0 PUSH2 0x12E6 DUP5 PUSH2 0x190B JUMP JUMPDEST PUSH1 0xFF AND DUP4 DUP4 PUSH2 0x1921 JUMP JUMPDEST PUSH2 0x130C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x3763 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x1 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1329 PUSH2 0x198A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP2 DUP3 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP8 DUP4 MSTORE DUP4 MSTORE DUP1 DUP3 KECCAK256 DUP7 DUP4 MSTORE SWAP1 SWAP3 MSTORE KECCAK256 SLOAD PUSH1 0xF SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x10 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x1376 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1380 PUSH2 0x1997 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH1 0xFF DUP6 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x13B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x13EE JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x13DB PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x13D3 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH1 0x0 DUP4 DUP3 PUSH1 0x10 DUP2 LT PUSH2 0x140D JUMPI INVALID JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x141E JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD DUP4 SLOAD PUSH2 0xFFFF DUP2 AND DUP3 MSTORE PUSH5 0xFFFFFFFFFF PUSH3 0x10000 DUP3 DIV AND SWAP3 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0x38 SHL DUP4 DIV AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x40 SHL SWAP1 SWAP2 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH1 0x1 ADD PUSH2 0x13F4 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x1494 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x14BE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x151B JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x14DA JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x14FB DUP2 PUSH1 0x0 ADD MLOAD DUP3 PUSH1 0x20 ADD MLOAD DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0x124C JUMP JUMPDEST DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1507 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE POP PUSH1 0x1 ADD PUSH2 0x14C4 JUMP JUMPDEST POP PUSH1 0x1 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x1632 JUMPI DUP1 JUMPDEST PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x1561 JUMPI POP DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x1540 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x1557 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x1629 JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x1572 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x1589 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15A0 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x15B3 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP3 DUP2 MSTORE POP DUP3 DUP2 MSTORE POP POP POP DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x15D0 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15E7 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP7 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15FE JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP8 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x1611 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD SWAP2 SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x0 NOT ADD PUSH2 0x1529 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x151F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x164B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO PUSH2 0x1661 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x166C DUP3 PUSH2 0x19A4 JUMP JUMPDEST POP POP POP POP PUSH2 0xFFFF AND SWAP1 POP DUP1 PUSH1 0x0 EQ PUSH2 0xC7A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 TIMESTAMP PUSH2 0x168F DUP4 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x16B0 JUMPI PUSH2 0x169D DUP2 PUSH2 0x1A0D JUMP JUMPDEST DUP4 MLOAD PUSH5 0xFFFFFFFFFF AND LT SWAP2 POP PUSH2 0x327 SWAP1 POP JUMP JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND ISZERO DUP1 ISZERO SWAP1 PUSH2 0x16CF JUMPI POP DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND DUP2 LT ISZERO JUMPDEST SWAP2 POP POP PUSH2 0x327 JUMP JUMPDEST PUSH2 0x16DF PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0x16E8 DUP4 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0x1705 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x370D JUMP JUMPDEST PUSH2 0x170E DUP4 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x1723 JUMPI PUSH2 0x171E DUP5 DUP5 DUP5 PUSH2 0x1A2E JUMP JUMPDEST PUSH2 0x1750 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1735 DUP6 DUP6 PUSH1 0x40 ADD MLOAD DUP6 MLOAD PUSH2 0x1AF6 JUMP JUMPDEST SWAP1 POP PUSH2 0x1741 DUP2 DUP5 PUSH2 0x1B88 JUMP JUMPDEST PUSH2 0x174E DUP5 DUP7 DUP4 PUSH1 0x0 PUSH2 0x1BE6 JUMP JUMPDEST POP JUMPDEST POP SWAP1 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1762 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP4 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP9 MLOAD DUP2 SLOAD SWAP4 DUP11 ADD MLOAD DUP4 DUP12 ADD MLOAD PUSH1 0x60 DUP13 ADD MLOAD PUSH1 0x80 DUP14 ADD MLOAD PUSH1 0x70 SHR PUSH1 0x1 PUSH1 0x48 SHL MUL PUSH27 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000 NOT PUSH2 0xFFFF SWAP1 SWAP3 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH9 0xFFFF00000000000000 NOT PUSH1 0xFF SWAP5 SWAP1 SWAP5 AND PUSH1 0x1 PUSH1 0x30 SHL MUL PUSH7 0xFF000000000000 NOT PUSH1 0xF8 SWAP7 SWAP1 SWAP7 SHR PUSH6 0x10000000000 MUL PUSH6 0xFF0000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP9 AND PUSH5 0xFFFFFFFFFF NOT SWAP1 SWAP12 AND SWAP11 SWAP1 SWAP11 OR SWAP7 SWAP1 SWAP7 AND SWAP9 SWAP1 SWAP9 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR AND SWAP5 SWAP1 SWAP5 OR AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE MLOAD SWAP3 SWAP4 POP SWAP1 SWAP2 PUSH32 0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E SWAP2 SWAP1 LOG2 POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0xC7A JUMPI PUSH2 0x1888 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1877 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0x1CBD JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1894 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x60 ADD MSTORE PUSH1 0x1 ADD PUSH2 0x185F JUMP JUMPDEST PUSH1 0x60 PUSH1 0x44 DUP3 MLOAD LT ISZERO PUSH2 0x18F1 JUMPI POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x1D DUP2 MSTORE PUSH32 0x5472616E73616374696F6E2072657665727465642073696C656E746C79000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x327 JUMP JUMPDEST PUSH1 0x4 DUP3 ADD SWAP2 POP DUP2 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x30C SWAP2 SWAP1 PUSH2 0x3210 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1917 DUP4 PUSH2 0x1CCB JUMP JUMPDEST PUSH1 0xFF AND SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x192D DUP4 PUSH2 0x1CE8 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1944 PUSH2 0x193D DUP8 PUSH2 0x1D04 JUMP JUMPDEST DUP4 SWAP1 PUSH2 0x1DA8 JUMP JUMPDEST SWAP1 POP DUP1 DUP6 GT ISZERO PUSH2 0x1959 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1965 DUP6 DUP8 PUSH2 0x1E02 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xF4240 DUP3 PUSH1 0x13 DUP2 GT ISZERO PUSH2 0x1983 JUMPI INVALID JUMPDEST ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xC PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xD PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x19B5 PUSH2 0x1F0D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP8 SWAP1 SWAP8 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP5 KECCAK256 SLOAD PUSH2 0xFFFF DUP2 AND SWAP6 PUSH4 0xFFFFFFFF PUSH3 0x10000 DUP4 DIV DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x30 SHL DUP4 DIV AND SWAP5 POP PUSH1 0xFF PUSH1 0x1 PUSH1 0x50 SHL DUP4 DIV AND SWAP4 POP PUSH1 0x1 PUSH1 0x58 SHL SWAP1 SWAP2 DIV PUSH1 0xD8 SHL SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x15180 DUP3 LT ISZERO PUSH2 0x1A1F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x15180 DUP3 JUMPDEST MOD SWAP1 SWAP2 SUB SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1A37 DUP3 PUSH2 0xAD7 JUMP JUMPDEST PUSH2 0x1A40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x1AEF JUMPI PUSH1 0x0 DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1A63 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x1A80 JUMPI POP PUSH2 0x1AE7 JUMP JUMPDEST DUP1 MLOAD DUP4 EQ PUSH2 0x1A8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP2 ADD MLOAD PUSH1 0x1 EQ PUSH2 0x1A9E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1AC0 DUP8 DUP6 DUP5 PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x0 ADD MLOAD PUSH5 0xFFFFFFFFFF AND DUP7 PUSH1 0x60 ADD MLOAD PUSH2 0x1F1A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x1AE4 JUMPI PUSH1 0x20 DUP7 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x1A4C JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x1AFE PUSH2 0x2E9F JUMP JUMPDEST PUSH2 0x1B06 PUSH2 0x2E9F JUMP JUMPDEST PUSH1 0xFF DUP5 AND PUSH2 0x1B15 JUMPI SWAP1 POP PUSH2 0x653 JUMP JUMPDEST PUSH2 0x1B1F DUP6 DUP6 PUSH2 0xB2F JUMP JUMPDEST DUP2 MSTORE PUSH1 0xFF DUP5 AND PUSH1 0x60 DUP3 ADD MSTORE DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x1B40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1B7A JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x1B67 PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x1B5F JUMPI SWAP1 POP JUMPDEST POP PUSH1 0x20 DUP3 ADD MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x130C JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1BA2 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x1BBF JUMPI POP PUSH2 0x1BDE JUMP JUMPDEST PUSH2 0x1BDC DUP5 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x20 ADD MLOAD DUP5 PUSH1 0x40 ADD MLOAD DUP6 PUSH1 0x60 ADD MLOAD PUSH2 0x2087 JUMP JUMPDEST POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x1B8B JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH2 0x1BF5 DUP7 DUP9 PUSH2 0x218C JUMP JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP13 MSTORE SWAP3 SWAP7 POP SWAP1 SWAP5 POP SWAP3 POP SWAP1 POP PUSH2 0x1C12 DUP9 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0x1C1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP3 AND PUSH1 0x40 DUP10 ADD MSTORE DUP5 PUSH2 0x1C3B JUMPI PUSH1 0x7 PUSH1 0xFF DUP4 AND GT ISZERO PUSH2 0x1C3B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x1C5E JUMPI PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE PUSH2 0x1C6D JUMP JUMPDEST PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x7F PUSH1 0xF9 SHL AND SWAP1 MSTORE JUMPDEST PUSH2 0x1C7A DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x23CB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP10 ADD MSTORE PUSH1 0x0 JUMPDEST DUP4 ISZERO PUSH2 0x123B JUMPI PUSH1 0xF0 DUP5 SWAP1 SHR DUP2 DUP2 EQ PUSH2 0x1CAF JUMPI PUSH2 0x1CAF DUP11 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL PUSH2 0x2446 JUMP JUMPDEST PUSH1 0x10 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 POP PUSH2 0x1C8C JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C PUSH1 0x0 NOT DUP4 PUSH2 0x2645 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1CD6 PUSH2 0x2693 JUMP JUMPDEST PUSH1 0x0 SWAP4 DUP5 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x76A700 DUP3 LT ISZERO PUSH2 0x1CFA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 DUP3 PUSH2 0x1A25 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 EQ ISZERO PUSH2 0x1D19 JUMPI POP PUSH3 0x76A700 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x2 EQ ISZERO PUSH2 0x1D2C JUMPI POP PUSH3 0xED4E00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x3 EQ ISZERO PUSH2 0x1D40 JUMPI POP PUSH4 0x1DA9C00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x4 EQ ISZERO PUSH2 0x1D54 JUMPI POP PUSH4 0x3B53800 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x5 EQ ISZERO PUSH2 0x1D68 JUMPI POP PUSH4 0x9450C00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x6 EQ ISZERO PUSH2 0x1D7C JUMPI POP PUSH4 0x128A1800 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x7 EQ ISZERO PUSH2 0x1D90 JUMPI POP PUSH4 0x25143000 PUSH2 0x327 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36E6 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x653 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1E10 DUP6 PUSH2 0x1A0D JUMP JUMPDEST SWAP1 POP PUSH3 0x15180 DUP5 MOD ISZERO PUSH2 0x1E2A JUMPI PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP PUSH2 0x1F06 JUMP JUMPDEST DUP4 DUP2 LT PUSH2 0x1E3E JUMPI PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP PUSH2 0x1F06 JUMP JUMPDEST PUSH3 0x15180 DUP2 DUP6 SUB DIV PUSH1 0x5A DUP2 GT PUSH2 0x1E5B JUMPI SWAP3 POP PUSH1 0x1 SWAP2 POP PUSH2 0x1F06 SWAP1 POP JUMP JUMPDEST PUSH2 0x168 DUP2 GT PUSH2 0x1E9A JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x7E900 DUP5 MOD DIV DUP3 ADD PUSH1 0x59 NOT ADD SWAP1 POP PUSH1 0x6 DUP2 DIV PUSH1 0x5A ADD PUSH1 0x6 DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST MOD PUSH1 0x0 EQ SWAP5 POP SWAP5 POP POP POP POP PUSH2 0x1F06 JUMP JUMPDEST PUSH2 0x870 DUP2 GT PUSH2 0x1ECA JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x278D00 DUP5 MOD DIV DUP3 ADD PUSH2 0x167 NOT ADD SWAP1 POP PUSH1 0x1E DUP2 DIV PUSH1 0x87 ADD PUSH1 0x1E DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST PUSH2 0x1DE2 DUP2 GT PUSH2 0x1EFA JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x76A700 DUP5 MOD DIV DUP3 ADD PUSH2 0x86F NOT ADD SWAP1 POP PUSH1 0x5A DUP2 DIV PUSH1 0xC3 ADD PUSH1 0x5A DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST PUSH2 0x100 PUSH1 0x0 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x2 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1F27 DUP8 DUP8 PUSH2 0x26A0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F33 PUSH2 0x198A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP12 DUP5 MSTORE DUP3 MSTORE DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE DUP2 KECCAK256 SWAP2 SWAP3 POP DUP1 PUSH2 0x1F6A DUP9 DUP11 PUSH2 0x1E02 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP1 PUSH2 0x1F78 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1F82 DUP6 DUP4 PUSH2 0x26D5 JUMP JUMPDEST ISZERO PUSH2 0x2011 JUMPI DUP3 SLOAD PUSH1 0x0 SWAP1 PUSH2 0x1F9E SWAP1 DUP10 SWAP1 PUSH1 0xF SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH2 0x2705 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x1FBF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB DUP2 SGT ISZERO JUMPDEST PUSH2 0x1FC8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB PUSH1 0xF DUP4 SWAP1 SIGNEXTEND AND OR DUP5 SSTORE DUP1 PUSH2 0x1FF9 JUMPI PUSH2 0x1FF6 DUP7 DUP5 PUSH1 0x0 PUSH2 0x271B JUMP JUMPDEST SWAP6 POP JUMPDEST PUSH2 0x2004 DUP13 DUP13 DUP9 PUSH2 0x2766 JUMP JUMPDEST SWAP6 POP PUSH2 0x207E SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP7 ISZERO PUSH2 0x2075 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB NOT DUP8 SLT DUP1 ISZERO SWAP1 PUSH2 0x2036 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB DUP8 SGT ISZERO JUMPDEST PUSH2 0x203F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB PUSH1 0xF DUP10 SWAP1 SIGNEXTEND AND OR DUP4 SSTORE PUSH2 0x2068 DUP6 DUP4 PUSH1 0x1 PUSH2 0x271B JUMP JUMPDEST SWAP5 POP PUSH2 0x2075 DUP12 DUP12 DUP8 PUSH2 0x2766 JUMP JUMPDEST DUP7 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP5 MLOAD PUSH2 0x2096 SWAP1 DUP6 DUP6 DUP6 DUP6 PUSH2 0x27C0 JUMP JUMPDEST ISZERO PUSH2 0x20A0 JUMPI PUSH2 0x1AEF JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD ISZERO PUSH2 0x20CD JUMPI PUSH1 0x0 PUSH2 0x20BD DUP7 PUSH1 0x20 ADD MLOAD DUP7 DUP7 DUP7 DUP7 PUSH2 0x27C0 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x20CB JUMPI POP PUSH2 0x1AEF JUMP JUMPDEST POP JUMPDEST PUSH2 0x20D6 DUP3 PUSH2 0x28D9 JUMP JUMPDEST ISZERO PUSH2 0x20E9 JUMPI PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x20E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x2110 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP2 SGT ISZERO JUMPDEST PUSH2 0x2119 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 PUSH1 0x20 ADD MLOAD MLOAD DUP6 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x213D JUMPI PUSH2 0x2137 DUP6 PUSH1 0x20 ADD MLOAD PUSH2 0x28EF JUMP JUMPDEST PUSH1 0x20 DUP7 ADD MSTORE JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD DUP2 MLOAD DUP2 LT PUSH2 0x2153 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD SWAP6 DUP7 MSTORE DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x40 DUP1 DUP6 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x60 DUP5 ADD MSTORE PUSH1 0x0 PUSH1 0xA0 SWAP1 SWAP4 ADD SWAP3 SWAP1 SWAP3 MSTORE POP ADD DUP1 MLOAD PUSH1 0x1 ADD SWAP1 MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x221D JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x21B2 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x21C8 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21D8 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x21E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21F5 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2205 JUMPI POP PUSH1 0x60 DUP2 ADD MLOAD ISZERO JUMPDEST ISZERO PUSH2 0x2214 JUMPI PUSH2 0x2214 DUP12 DUP4 PUSH2 0x29A7 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2196 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x22C0 JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x223D JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2254 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2264 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x2278 JUMPI PUSH1 0x80 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 SSTORE PUSH2 0x22B7 JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x228A JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x22A3 JUMPI PUSH1 0x80 DUP2 ADD MLOAD DUP1 PUSH2 0x22A0 DUP4 DUP3 PUSH2 0x2AF6 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x22AF DUP2 DUP7 DUP7 DUP7 PUSH2 0x2C27 JUMP JUMPDEST SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2221 JUMP JUMPDEST POP PUSH1 0x60 DUP10 ADD MLOAD PUSH1 0x0 PUSH2 0x22D0 PUSH2 0x1997 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP12 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP JUMPDEST DUP13 PUSH1 0x20 ADD MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x239A JUMPI PUSH1 0x0 DUP14 PUSH1 0x20 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x230B JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x2328 JUMPI POP PUSH2 0x2392 JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x233A JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2358 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2355 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x2361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x236D DUP2 DUP10 DUP10 DUP10 PUSH2 0x2C27 JUMP JUMPDEST SWAP2 SWAP10 POP SWAP8 POP SWAP6 POP PUSH2 0x238A DUP2 DUP5 DUP8 PUSH1 0x10 DUP2 LT PUSH2 0x2384 JUMPI INVALID JUMPDEST ADD PUSH2 0x2AF6 JUMP JUMPDEST PUSH1 0x1 DUP6 ADD SWAP5 POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x22EC JUMP JUMPDEST POP PUSH1 0x10 DUP4 GT ISZERO DUP1 ISZERO PUSH2 0x23B1 JUMPI POP PUSH5 0xFFFFFFFFFF DUP5 GT ISZERO JUMPDEST PUSH2 0x23BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP4 SWAP11 SWAP3 SWAP10 POP SWAP8 POP SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000 DUP4 AND DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x243D JUMPI PUSH1 0x1 PUSH1 0xFE SHL DUP3 DUP2 AND EQ ISZERO PUSH2 0x2427 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND DUP2 SHR SWAP3 SWAP1 SWAP3 OR SWAP2 PUSH1 0x10 ADD JUMPDEST PUSH1 0x10 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP2 POP PUSH2 0x23F3 JUMP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2458 JUMPI POP PUSH2 0x3FFF DUP4 GT ISZERO JUMPDEST PUSH2 0x2461 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP1 ISZERO PUSH2 0x2475 JUMPI POP DUP3 DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ JUMPDEST ISZERO PUSH2 0x247F JUMPI PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x80 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x25FA JUMPI PUSH1 0xF0 DUP3 SWAP1 SHR PUSH2 0x3FFF AND DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x24AE JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x24E6 JUMPI POP PUSH1 0x80 DUP8 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP7 AND PUSH1 0x10 SWAP1 SWAP4 MUL SWAP3 SWAP1 SWAP3 SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 MSTORE POP PUSH2 0x1632 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x24F3 JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x2548 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP6 AND NOT SWAP3 SWAP1 SWAP3 AND SWAP2 PUSH1 0x3 PUSH1 0xFE SHL DUP4 AND PUSH2 0x2526 JUMPI PUSH1 0x10 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP3 POP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x1632 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x2554 JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x25AE JUMPI PUSH1 0x80 DUP9 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP11 SWAP1 SHL DUP9 OR DUP2 AND PUSH1 0x10 DUP7 MUL SHR SWAP7 SWAP1 SWAP7 OR SWAP6 SWAP2 SHL AND ISZERO PUSH2 0x2588 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x1 SWAP2 SWAP1 SWAP2 ADD PUSH1 0x10 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x1632 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x25BB JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x25C9 JUMPI POP POP POP POP PUSH2 0x1632 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND PUSH1 0x10 DUP3 DUP2 MUL SWAP2 SWAP1 SWAP2 SHR SWAP4 SWAP1 SWAP4 OR SWAP3 SWAP2 SWAP1 SWAP2 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND SWAP1 PUSH1 0x1 ADD PUSH2 0x2489 JUMP JUMPDEST DUP5 PUSH2 0x2607 JUMPI POP POP POP PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x9 DUP2 LT PUSH2 0x2614 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP8 SWAP1 SHL DUP6 OR AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 MUL PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x2675 JUMPI DUP2 ISZERO DUP1 PUSH2 0x2667 JUMPI POP DUP3 DUP3 DUP3 DUP2 PUSH2 0x2664 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x2670 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30C JUMP JUMPDEST DUP3 ISZERO DUP1 PUSH2 0x268A JUMPI POP DUP2 DUP4 DUP3 DUP2 PUSH2 0x2687 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x30C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x9 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x26AB PUSH2 0x2C8A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP2 DUP3 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP7 DUP4 MSTORE SWAP1 SWAP3 MSTORE KECCAK256 SLOAD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 LT ISZERO DUP1 ISZERO PUSH2 0x26EA JUMPI POP PUSH2 0x100 DUP3 GT ISZERO JUMPDEST PUSH2 0x26F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x0 NOT ADD SHL PUSH1 0x1 PUSH1 0xFF SHL SWAP1 DUP2 AND EQ SWAP1 JUMP JUMPDEST DUP2 DUP2 ADD DUP3 DUP2 SLT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0x30C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP4 LT ISZERO DUP1 ISZERO PUSH2 0x2730 JUMPI POP PUSH2 0x100 DUP4 GT ISZERO JUMPDEST PUSH2 0x2739 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 ISZERO PUSH2 0x2752 JUMPI POP PUSH1 0x1 PUSH1 0xFF SHL PUSH1 0x0 NOT DUP4 ADD SHR DUP4 OR PUSH2 0x653 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0xFF SHL PUSH1 0x0 NOT DUP4 ADD SHR NOT DUP4 AND PUSH2 0x653 JUMP JUMPDEST PUSH1 0x14 PUSH2 0x2771 DUP3 PUSH2 0x2C97 JUMP JUMPDEST GT ISZERO PUSH2 0x278F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x373A JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2799 PUSH2 0x2C8A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP5 DUP6 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP5 DUP3 MSTORE SWAP4 SWAP1 SWAP5 MSTORE POP SWAP2 KECCAK256 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST DUP7 MLOAD DUP2 LT ISZERO PUSH2 0x28CC JUMPI PUSH1 0x0 DUP8 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x27DB JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP5 DUP2 PUSH1 0x40 ADD MLOAD EQ ISZERO DUP1 PUSH2 0x27F9 JUMPI POP DUP1 MLOAD DUP8 EQ ISZERO JUMPDEST DUP1 PUSH2 0x2808 JUMPI POP DUP6 DUP2 PUSH1 0x20 ADD MLOAD EQ ISZERO JUMPDEST ISZERO PUSH2 0x2813 JUMPI POP PUSH2 0x28C4 JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2825 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2843 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2840 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x284C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 PUSH2 0x285E SWAP1 DUP7 PUSH2 0x2705 JUMP JUMPDEST SWAP1 POP PUSH2 0x2869 DUP7 PUSH2 0x28D9 JUMP JUMPDEST ISZERO PUSH2 0x287C JUMPI PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x287C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x28A3 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP2 SGT ISZERO JUMPDEST PUSH2 0x28AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP1 SWAP2 ADD DUP2 SWAP1 MSTORE SWAP2 POP PUSH2 0x207E SWAP1 POP JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x27C4 JUMP JUMPDEST POP PUSH1 0x0 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 LT DUP1 ISZERO SWAP1 PUSH2 0x30C JUMPI POP POP PUSH1 0x8 LT ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 MLOAD PUSH1 0x0 EQ PUSH2 0x2906 JUMPI DUP3 MLOAD PUSH1 0x2 MUL PUSH2 0x2909 JUMP JUMPDEST PUSH1 0x1 JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x2923 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x295D JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x294A PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x2942 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x299F JUMPI DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2978 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x298C JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x2963 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 MLOAD MLOAD DUP2 LT PUSH2 0x29B5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x60 ADD MLOAD GT PUSH2 0x29C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x29D8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x29EF JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x29FF JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2A1D JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A1A JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x2A26 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ADD DUP1 MLOAD PUSH1 0x0 NOT ADD SWAP1 MSTORE PUSH1 0x0 DUP1 DUP1 JUMPDEST DUP6 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2A99 JUMPI PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2A53 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP3 DUP2 PUSH1 0x80 ADD MLOAD GT DUP1 ISZERO PUSH2 0x2A80 JUMPI POP PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A7D JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST ISZERO PUSH2 0x2A90 JUMPI DUP1 PUSH1 0x80 ADD MLOAD SWAP3 POP DUP2 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2A37 JUMP JUMPDEST POP DUP2 DUP5 EQ ISZERO PUSH2 0x2AB2 JUMPI POP POP PUSH1 0x2 PUSH1 0xA0 SWAP2 SWAP1 SWAP2 ADD MSTORE PUSH2 0xC7A JUMP JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x0 ADD MLOAD DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2AC4 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x80 DUP6 DUP2 ADD DUP1 MLOAD SWAP2 DUP4 ADD DUP1 MLOAD SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP2 DUP3 ADD MSTORE PUSH1 0x2 SWAP5 ADD SWAP4 SWAP1 SWAP4 MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x2B09 JUMPI POP DUP2 MLOAD PUSH2 0x3FFF LT ISZERO JUMPDEST PUSH2 0x2B12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2B2F JUMPI POP PUSH1 0x20 DUP3 ADD MLOAD PUSH5 0xFFFFFFFFFF LT ISZERO JUMPDEST PUSH2 0x2B38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2B51 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x2B5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT SGT DUP1 ISZERO SWAP1 PUSH2 0x2B89 JUMPI POP PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF SLT ISZERO JUMPDEST PUSH2 0x2B92 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 DUP5 ADD MLOAD PUSH1 0x40 DUP6 ADD MLOAD PUSH1 0x60 SWAP1 SWAP6 ADD MLOAD PUSH1 0xA SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 SHL MUL PUSH19 0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000 NOT PUSH1 0xFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH8 0xFF00000000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP4 AND PUSH3 0x10000 MUL PUSH7 0xFFFFFFFFFF0000 NOT PUSH2 0xFFFF SWAP1 SWAP7 AND PUSH2 0xFFFF NOT SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 OR SWAP5 SWAP1 SWAP5 AND SWAP3 SWAP1 SWAP3 OR AND SWAP2 SWAP1 SWAP2 OR SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x2C36 DUP9 PUSH2 0x2D67 JUMP JUMPDEST SWAP1 POP DUP5 ISZERO DUP1 PUSH2 0x2C44 JUMPI POP DUP1 DUP6 GT JUMPDEST ISZERO PUSH2 0x2C4D JUMPI DUP1 SWAP5 POP JUMPDEST DUP7 DUP1 PUSH2 0x2C5D JUMPI POP PUSH1 0x0 DUP9 PUSH1 0x60 ADD MLOAD SLT JUMPDEST SWAP7 POP PUSH2 0xFFFF DUP7 AND ISZERO PUSH2 0x2C6E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP SWAP5 MLOAD SWAP4 SWAP6 PUSH1 0x10 SWAP4 SWAP1 SWAP4 SHR PUSH1 0xF0 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 SWAP4 OR SWAP4 POP SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xB PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SHR PUSH32 0x5555555555555555555555555555555555555555555555555555555555555555 SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x2 DUP2 SWAP1 SHR PUSH32 0x3333333333333333333333333333333333333333333333333333333333333333 SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x4 DUP2 SWAP1 SHR PUSH32 0x707070707070707070707070707070707070707070707070707070707070707 SWAP2 SWAP1 SWAP2 AND ADD PUSH1 0x8 DUP2 SWAP1 SHR PUSH31 0xF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x10 DUP2 SWAP1 SHR ADD PUSH1 0x20 DUP2 SWAP1 SHR ADD PUSH1 0x40 DUP2 SWAP1 SHR ADD PUSH1 0x80 DUP2 SWAP1 SHR PUSH1 0xFF SWAP1 DUP2 AND SWAP2 AND ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD GT DUP1 ISZERO PUSH2 0x2D81 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x2D8A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x2 LT PUSH2 0x2DA1 JUMPI POP PUSH1 0x20 DUP2 ADD MLOAD PUSH2 0x327 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DB3 PUSH1 0x1 DUP5 PUSH1 0x40 ADD MLOAD SUB PUSH2 0x1D04 JUMP JUMPDEST PUSH1 0x20 DUP5 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x653 SWAP1 PUSH3 0x76A700 SWAP1 PUSH2 0x2DCE SWAP1 DUP5 PUSH2 0x2DD4 JUMP JUMPDEST SWAP1 PUSH2 0x1DA8 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x2E2B JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2E9A JUMPI INVALID JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2ED8 JUMPI DUP1 DUP2 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x2EEE JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x1F06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x327 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2F31 JUMPI DUP2 DUP3 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x2F47 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x1F06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH2 0x327 DUP2 PUSH2 0x386F JUMP JUMPDEST DUP1 MLOAD PUSH2 0x327 DUP2 PUSH2 0x3892 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2F86 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x653 DUP2 PUSH2 0x3841 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2FA3 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x2FAE DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH2 0x2FBE DUP2 PUSH2 0x3841 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP10 DUP12 SUB SLT ISZERO PUSH2 0x2FE4 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP9 CALLDATALOAD PUSH2 0x2FEF DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP8 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD PUSH2 0x2FFF DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP7 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x301A JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x3026 DUP13 DUP4 DUP14 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x60 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x303E JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x304A DUP13 DUP4 DUP14 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x80 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3062 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x306F DUP12 DUP3 DUP13 ADD PUSH2 0x2F20 JUMP JUMPDEST SWAP10 SWAP13 SWAP9 SWAP12 POP SWAP7 SWAP10 POP SWAP5 SWAP8 SWAP4 SWAP7 SWAP3 SWAP6 SWAP5 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x309B JUMPI DUP2 DUP3 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH2 0x30A6 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP6 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD PUSH2 0x30B6 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 DUP8 ADD CALLDATALOAD SWAP4 POP PUSH1 0x60 DUP8 ADD CALLDATALOAD SWAP3 POP PUSH1 0x80 DUP8 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x30DE JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x30EA DUP10 DUP3 DUP11 ADD PUSH2 0x2F20 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x310E JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x3119 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x2FBE JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x313F JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x314A DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x316D JUMPI DUP2 DUP3 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x3183 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH2 0x318F DUP9 DUP4 DUP10 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x31A7 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x31B4 DUP8 DUP3 DUP9 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31D1 JUMPI DUP1 DUP2 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31E9 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x653 DUP2 PUSH2 0x3859 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3205 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH2 0x653 DUP2 PUSH2 0x3859 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3221 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x3237 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x324A JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0x3256 JUMPI INVALID JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT AND DUP2 ADD PUSH1 0x20 ADD DUP4 DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x3274 JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP2 DUP2 MSTORE DUP4 DUP3 ADD PUSH1 0x20 ADD DUP8 LT ISZERO PUSH2 0x328B JUMPI DUP5 DUP6 REVERT JUMPDEST PUSH2 0x329C DUP3 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x3815 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x32B7 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xA0 DUP2 ADD DUP2 DUP2 LT PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT OR ISZERO PUSH2 0x32D3 JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD PUSH2 0x32E1 DUP2 PUSH2 0x387F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x32FD JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x330E PUSH1 0x40 DUP5 ADD PUSH2 0x2F6A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x331F PUSH1 0x60 DUP5 ADD PUSH2 0x2F5F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x3330 PUSH1 0x80 DUP5 ADD PUSH2 0x2F08 JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3350 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 CALLDATALOAD PUSH2 0x335B DUP2 PUSH2 0x386F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH2 0x336B DUP2 PUSH2 0x387F JUMP JUMPDEST SWAP2 POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH2 0x337B DUP2 PUSH2 0x3892 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST DUP2 DUP4 MSTORE PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFB SHL SUB DUP4 GT ISZERO PUSH2 0x339E JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x20 DUP4 MUL DUP1 DUP4 PUSH1 0x20 DUP8 ADD CALLDATACOPY SWAP4 SWAP1 SWAP4 ADD PUSH1 0x20 ADD SWAP3 DUP4 MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP5 MSTORE DUP3 DUP3 PUSH1 0x20 DUP7 ADD CALLDATACOPY DUP1 PUSH1 0x20 DUP5 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP6 ADD AND DUP6 ADD ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP5 DUP4 CALLDATACOPY SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 DUP2 AND DUP3 MSTORE DUP9 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0xA0 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x3435 SWAP1 DUP4 ADD DUP9 DUP11 PUSH2 0x3386 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x3448 DUP2 DUP8 DUP10 PUSH2 0x3386 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x345D DUP2 DUP6 DUP8 PUSH2 0x33BA JUMP JUMPDEST SWAP12 SWAP11 POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 DUP2 AND DUP3 MSTORE DUP7 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 DUP2 ADD DUP6 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP5 SWAP1 MSTORE PUSH1 0xA0 PUSH1 0x80 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x1965 SWAP1 DUP4 ADD DUP5 DUP7 PUSH2 0x33BA JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 DUP4 AND DUP2 MSTORE SWAP2 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND PUSH1 0x20 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND PUSH1 0x40 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0xFF AND PUSH1 0x60 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 DUP5 DUP3 ADD SWAP1 PUSH1 0x40 DUP6 ADD SWAP1 DUP5 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3565 JUMPI DUP4 MLOAD DUP4 MSTORE SWAP3 DUP5 ADD SWAP3 SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x3549 JUMP JUMPDEST POP SWAP1 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 PUSH1 0x40 SWAP1 DUP2 DUP6 ADD SWAP1 DUP7 DUP5 ADD DUP6 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x35E6 JUMPI DUP2 MLOAD DUP1 MLOAD DUP6 MSTORE DUP7 DUP2 ADD MLOAD DUP8 DUP7 ADD MSTORE DUP6 DUP2 ADD MLOAD DUP7 DUP7 ADD MSTORE PUSH1 0x60 DUP1 DUP3 ADD MLOAD SWAP1 DUP7 ADD MSTORE PUSH1 0x80 DUP1 DUP3 ADD MLOAD SWAP1 DUP7 ADD MSTORE PUSH1 0xA0 SWAP1 DUP2 ADD MLOAD SWAP1 PUSH1 0x4 DUP3 LT PUSH2 0x35D1 JUMPI INVALID JUMPDEST DUP6 ADD MSTORE PUSH1 0xC0 SWAP1 SWAP4 ADD SWAP3 SWAP1 DUP6 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x358E JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 MSTORE PUSH2 0x3607 PUSH1 0x40 DUP4 ADD DUP7 DUP9 PUSH2 0x3386 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x361A DUP2 DUP6 DUP8 PUSH2 0x3386 JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 MSTORE DUP3 MLOAD DUP1 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x3658 DUP2 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x3815 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x40 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xF SWAP1 DUP3 ADD MSTORE PUSH15 0x496E76616C69642061646472657373 PUSH1 0x88 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x155B985D5D1A1BDC9A5E99590818D85B1B PUSH1 0x7A SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x155B985D5D1A1BDC9A5E9959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xD SWAP1 DUP3 ADD MSTORE PUSH13 0x92DCECC2D8D2C840D2DCC8CAF PUSH1 0x9B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x13 SWAP1 DUP3 ADD MSTORE PUSH19 0x4163636F756E74206D75737420736574746C65 PUSH1 0x68 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xF SWAP1 DUP3 ADD MSTORE PUSH15 0x4F766572206D617820617373657473 PUSH1 0x88 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x496E76616C6964206D61747572697479 PUSH1 0x80 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x12 SWAP1 DUP3 ADD MSTORE PUSH18 0x12511CC81B5D5CDD081899481CDBDC9D1959 PUSH1 0x72 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x139BDD081858D8D95C1D1959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST SWAP2 DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x37FC JUMPI DUP2 DUP3 REVERT JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x3808 JUMPI DUP2 DUP3 REVERT JUMPDEST POP POP DUP3 ADD SWAP4 SWAP2 SWAP1 SWAP3 SUB SWAP2 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3830 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x3818 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1632 JUMPI POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SGT GT AND ADD MUL LOG4 AND 0xB5 OR PUSH5 0xAB1C80F32C 0xD6 CODESIZE DELEGATECALL 0xDD 0xE8 0xC3 SAR 0x4E 0xD5 0xC5 SWAP3 PUSH3 0x9D5FB6 0x48 0xEB PUSH5 0x736F6C6343 STOP SMOD MOD STOP CALLER ", + "pcMap": { + "0": { + "offset": [ + 683, + 20316 + ], + "op": "PUSH1", + "path": "30", + "value": "0x80" + }, + "2": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "MSTORE", + "path": "30" + }, + "5": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "7": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "8": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "LT", + "path": "30" + }, + "9": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE7" + }, + "12": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "13": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "15": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "16": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH1", + "path": "30", + "value": "0xE0" + }, + "18": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "SHR", + "path": "30" + }, + "19": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "20": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x735A1DC8" + }, + "25": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "GT", + "path": "30" + }, + "26": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x8A" + }, + "29": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "30": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "31": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0xA22CB465" + }, + "36": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "GT", + "path": "30" + }, + "37": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x59" + }, + "40": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "41": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "42": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0xA22CB465" + }, + "47": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "48": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x26A" + }, + "51": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "52": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "53": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0xC4C96DAE" + }, + "58": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "59": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x28A" + }, + "62": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "63": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "64": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0xE985E9C5" + }, + "69": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "70": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2AD" + }, + "73": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "74": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "75": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0xF242432A" + }, + "80": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "81": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2CD" + }, + "84": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "85": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE7" + }, + "88": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMP", + "path": "30" + }, + "89": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPDEST", + "path": "30" + }, + "90": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "91": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x735A1DC8" + }, + "96": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "97": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x200" + }, + "100": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "101": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "102": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x81A86855" + }, + "107": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "108": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x220" + }, + "111": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "112": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "113": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x82463367" + }, + "118": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "119": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x240" + }, + "122": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "123": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "124": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x8DA5CB5B" + }, + "129": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "130": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x255" + }, + "133": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "134": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE7" + }, + "137": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMP", + "path": "30" + }, + "138": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPDEST", + "path": "30" + }, + "139": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "140": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x24A3D622" + }, + "145": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "GT", + "path": "30" + }, + "146": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC6" + }, + "149": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "150": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "151": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x24A3D622" + }, + "156": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "157": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x16F" + }, + "160": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "161": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "162": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x2EB2C2D6" + }, + "167": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "168": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x191" + }, + "171": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "172": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "173": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x3FA6B808" + }, + "178": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "179": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1A6" + }, + "182": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "183": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "184": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x4E1273F4" + }, + "189": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "190": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1D3" + }, + "193": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "194": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE7" + }, + "197": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMP", + "path": "30" + }, + "198": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPDEST", + "path": "30" + }, + "199": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "200": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH3", + "path": "30", + "value": "0xFDD58E" + }, + "204": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "205": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0xEC" + }, + "208": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "209": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "210": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0x1FFC9A7" + }, + "215": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "216": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x122" + }, + "219": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "220": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "221": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH4", + "path": "30", + "value": "0xFAC8F09" + }, + "226": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "EQ", + "path": "30" + }, + "227": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH2", + "path": "30", + "value": "0x14F" + }, + "230": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPI", + "path": "30" + }, + "231": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "JUMPDEST", + "path": "30" + }, + "232": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "234": { + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "DUP1", + "path": "30" + }, + "235": { + "first_revert": true, + "fn": null, + "offset": [ + 683, + 20316 + ], + "op": "REVERT", + "path": "30" + }, + "236": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "237": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "CALLVALUE", + "path": "30" + }, + "238": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "DUP1", + "path": "30" + }, + "239": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "ISZERO", + "path": "30" + }, + "240": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF8" + }, + "243": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPI", + "path": "30" + }, + "244": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "246": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "DUP1", + "path": "30" + }, + "247": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "REVERT", + "path": "30" + }, + "248": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "249": { + "op": "POP" + }, + "250": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10C" + }, + "253": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0x107" + }, + "256": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "257": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "259": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0x312D" + }, + "262": { + "fn": "ERC1155Action.balanceOf", + "jump": "i", + "offset": [ + 1742, + 1945 + ], + "op": "JUMP", + "path": "30" + }, + "263": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "264": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E0" + }, + "267": { + "fn": "ERC1155Action.balanceOf", + "jump": "i", + "offset": [ + 1742, + 1945 + ], + "op": "JUMP", + "path": "30" + }, + "268": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "269": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "271": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "MLOAD", + "path": "30" + }, + "272": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0x119" + }, + "275": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SWAP2", + "path": "30" + }, + "276": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SWAP1", + "path": "30" + }, + "277": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3630" + }, + "280": { + "fn": "ERC1155Action.balanceOf", + "jump": "i", + "offset": [ + 1742, + 1945 + ], + "op": "JUMP", + "path": "30" + }, + "281": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "282": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "284": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "MLOAD", + "path": "30" + }, + "285": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "DUP1", + "path": "30" + }, + "286": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SWAP2", + "path": "30" + }, + "287": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SUB", + "path": "30" + }, + "288": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SWAP1", + "path": "30" + }, + "289": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "RETURN", + "path": "30" + }, + "290": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPDEST", + "path": "30" + }, + "291": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "CALLVALUE", + "path": "30" + }, + "292": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "DUP1", + "path": "30" + }, + "293": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "ISZERO", + "path": "30" + }, + "294": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12E" + }, + "297": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPI", + "path": "30" + }, + "298": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "300": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "DUP1", + "path": "30" + }, + "301": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "REVERT", + "path": "30" + }, + "302": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPDEST", + "path": "30" + }, + "303": { + "op": "POP" + }, + "304": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x142" + }, + "307": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x13D" + }, + "310": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "311": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "313": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x31D8" + }, + "316": { + "fn": "ERC1155Action.supportsInterface", + "jump": "i", + "offset": [ + 1103, + 1253 + ], + "op": "JUMP", + "path": "30" + }, + "317": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPDEST", + "path": "30" + }, + "318": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x312" + }, + "321": { + "fn": "ERC1155Action.supportsInterface", + "jump": "i", + "offset": [ + 1103, + 1253 + ], + "op": "JUMP", + "path": "30" + }, + "322": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPDEST", + "path": "30" + }, + "323": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "325": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "MLOAD", + "path": "30" + }, + "326": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x119" + }, + "329": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "SWAP2", + "path": "30" + }, + "330": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "SWAP1", + "path": "30" + }, + "331": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3625" + }, + "334": { + "fn": "ERC1155Action.supportsInterface", + "jump": "i", + "offset": [ + 1103, + 1253 + ], + "op": "JUMP", + "path": "30" + }, + "335": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "JUMPDEST", + "path": "30" + }, + "336": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "CALLVALUE", + "path": "30" + }, + "337": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "DUP1", + "path": "30" + }, + "338": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "ISZERO", + "path": "30" + }, + "339": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH2", + "path": "30", + "value": "0x15B" + }, + "342": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "JUMPI", + "path": "30" + }, + "343": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "345": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "DUP1", + "path": "30" + }, + "346": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "REVERT", + "path": "30" + }, + "347": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "JUMPDEST", + "path": "30" + }, + "348": { + "op": "POP" + }, + "349": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10C" + }, + "352": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH2", + "path": "30", + "value": "0x16A" + }, + "355": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "356": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "358": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH2", + "path": "30", + "value": "0x312D" + }, + "361": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2172, + 2709 + ], + "op": "JUMP", + "path": "30" + }, + "362": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "JUMPDEST", + "path": "30" + }, + "363": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "PUSH2", + "path": "30", + "value": "0x32C" + }, + "366": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2172, + 2709 + ], + "op": "JUMP", + "path": "30" + }, + "367": { + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "368": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "CALLVALUE", + "path": "63" + }, + "369": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "370": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "ISZERO", + "path": "63" + }, + "371": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x17B" + }, + "374": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPI", + "path": "63" + }, + "375": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "377": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "378": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "REVERT", + "path": "63" + }, + "379": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "380": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "POP", + "path": "63" + }, + "381": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x184" + }, + "384": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x380" + }, + "387": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "388": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "389": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x40" + }, + "391": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "MLOAD", + "path": "63" + }, + "392": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x119" + }, + "395": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "SWAP2", + "path": "63" + }, + "396": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "SWAP1", + "path": "63" + }, + "397": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x33F4" + }, + "400": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "401": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "JUMPDEST", + "path": "30" + }, + "402": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1A4" + }, + "405": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "PUSH2", + "path": "30", + "value": "0x19F" + }, + "408": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "409": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "411": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2FC9" + }, + "414": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 8849, + 10349 + ], + "op": "JUMP", + "path": "30" + }, + "415": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "JUMPDEST", + "path": "30" + }, + "416": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "PUSH2", + "path": "30", + "value": "0x38F" + }, + "419": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 8849, + 10349 + ], + "op": "JUMP", + "path": "30" + }, + "420": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "JUMPDEST", + "path": "30" + }, + "421": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "STOP", + "path": "30" + }, + "422": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "JUMPDEST", + "path": "30" + }, + "423": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "CALLVALUE", + "path": "30" + }, + "424": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "DUP1", + "path": "30" + }, + "425": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "ISZERO", + "path": "30" + }, + "426": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1B2" + }, + "429": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "JUMPI", + "path": "30" + }, + "430": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "432": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "DUP1", + "path": "30" + }, + "433": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "REVERT", + "path": "30" + }, + "434": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "JUMPDEST", + "path": "30" + }, + "435": { + "op": "POP" + }, + "436": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1C6" + }, + "439": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1C1" + }, + "442": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "443": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "445": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3158" + }, + "448": { + "fn": "ERC1155Action.decodeToAssets", + "jump": "i", + "offset": [ + 11245, + 11552 + ], + "op": "JUMP", + "path": "30" + }, + "449": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "JUMPDEST", + "path": "30" + }, + "450": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x557" + }, + "453": { + "fn": "ERC1155Action.decodeToAssets", + "jump": "i", + "offset": [ + 11245, + 11552 + ], + "op": "JUMP", + "path": "30" + }, + "454": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "JUMPDEST", + "path": "30" + }, + "455": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "457": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "MLOAD", + "path": "30" + }, + "458": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x119" + }, + "461": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "SWAP2", + "path": "30" + }, + "462": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "SWAP1", + "path": "30" + }, + "463": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3571" + }, + "466": { + "fn": "ERC1155Action.decodeToAssets", + "jump": "i", + "offset": [ + 11245, + 11552 + ], + "op": "JUMP", + "path": "30" + }, + "467": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "JUMPDEST", + "path": "30" + }, + "468": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "CALLVALUE", + "path": "30" + }, + "469": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "DUP1", + "path": "30" + }, + "470": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "ISZERO", + "path": "30" + }, + "471": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1DF" + }, + "474": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "JUMPI", + "path": "30" + }, + "475": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "477": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "DUP1", + "path": "30" + }, + "478": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "REVERT", + "path": "30" + }, + "479": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "JUMPDEST", + "path": "30" + }, + "480": { + "op": "POP" + }, + "481": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1F3" + }, + "484": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1EE" + }, + "487": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "488": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "490": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3158" + }, + "493": { + "fn": "ERC1155Action.balanceOfBatch", + "jump": "i", + "offset": [ + 3783, + 4277 + ], + "op": "JUMP", + "path": "30" + }, + "494": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "JUMPDEST", + "path": "30" + }, + "495": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x572" + }, + "498": { + "fn": "ERC1155Action.balanceOfBatch", + "jump": "i", + "offset": [ + 3783, + 4277 + ], + "op": "JUMP", + "path": "30" + }, + "499": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "JUMPDEST", + "path": "30" + }, + "500": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "502": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "MLOAD", + "path": "30" + }, + "503": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x119" + }, + "506": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "SWAP2", + "path": "30" + }, + "507": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "SWAP1", + "path": "30" + }, + "508": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "PUSH2", + "path": "30", + "value": "0x352D" + }, + "511": { + "fn": "ERC1155Action.balanceOfBatch", + "jump": "i", + "offset": [ + 3783, + 4277 + ], + "op": "JUMP", + "path": "30" + }, + "512": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "JUMPDEST", + "path": "30" + }, + "513": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "CALLVALUE", + "path": "30" + }, + "514": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "DUP1", + "path": "30" + }, + "515": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "ISZERO", + "path": "30" + }, + "516": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH2", + "path": "30", + "value": "0x20C" + }, + "519": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "JUMPI", + "path": "30" + }, + "520": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "522": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "DUP1", + "path": "30" + }, + "523": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "REVERT", + "path": "30" + }, + "524": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "JUMPDEST", + "path": "30" + }, + "525": { + "op": "POP" + }, + "526": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10C" + }, + "529": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH2", + "path": "30", + "value": "0x21B" + }, + "532": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "533": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "535": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH2", + "path": "30", + "value": "0x333C" + }, + "538": { + "fn": "ERC1155Action.encodeToId", + "jump": "i", + "offset": [ + 13314, + 13543 + ], + "op": "JUMP", + "path": "30" + }, + "539": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "JUMPDEST", + "path": "30" + }, + "540": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "PUSH2", + "path": "30", + "value": "0x635" + }, + "543": { + "fn": "ERC1155Action.encodeToId", + "jump": "i", + "offset": [ + 13314, + 13543 + ], + "op": "JUMP", + "path": "30" + }, + "544": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "JUMPDEST", + "path": "30" + }, + "545": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "CALLVALUE", + "path": "30" + }, + "546": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "DUP1", + "path": "30" + }, + "547": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "ISZERO", + "path": "30" + }, + "548": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH2", + "path": "30", + "value": "0x22C" + }, + "551": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "JUMPI", + "path": "30" + }, + "552": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "554": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "DUP1", + "path": "30" + }, + "555": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "REVERT", + "path": "30" + }, + "556": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "JUMPDEST", + "path": "30" + }, + "557": { + "op": "POP" + }, + "558": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1F3" + }, + "561": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH2", + "path": "30", + "value": "0x23B" + }, + "564": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "565": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "567": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3158" + }, + "570": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "i", + "offset": [ + 2949, + 3452 + ], + "op": "JUMP", + "path": "30" + }, + "571": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "JUMPDEST", + "path": "30" + }, + "572": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "PUSH2", + "path": "30", + "value": "0x65A" + }, + "575": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "i", + "offset": [ + 2949, + 3452 + ], + "op": "JUMP", + "path": "30" + }, + "576": { + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "577": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "CALLVALUE", + "path": "63" + }, + "578": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "DUP1", + "path": "63" + }, + "579": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "ISZERO", + "path": "63" + }, + "580": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x24C" + }, + "583": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "JUMPI", + "path": "63" + }, + "584": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "586": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "DUP1", + "path": "63" + }, + "587": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "REVERT", + "path": "63" + }, + "588": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "589": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "POP", + "path": "63" + }, + "590": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x184" + }, + "593": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x713" + }, + "596": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "i", + "offset": [ + 920, + 946 + ], + "op": "JUMP", + "path": "63" + }, + "597": { + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "598": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "CALLVALUE", + "path": "63" + }, + "599": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "DUP1", + "path": "63" + }, + "600": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "ISZERO", + "path": "63" + }, + "601": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x261" + }, + "604": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "JUMPI", + "path": "63" + }, + "605": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "607": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "DUP1", + "path": "63" + }, + "608": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "REVERT", + "path": "63" + }, + "609": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "610": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "POP", + "path": "63" + }, + "611": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x184" + }, + "614": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x722" + }, + "617": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "i", + "offset": [ + 811, + 831 + ], + "op": "JUMP", + "path": "63" + }, + "618": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "JUMPDEST", + "path": "30" + }, + "619": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "CALLVALUE", + "path": "30" + }, + "620": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "DUP1", + "path": "30" + }, + "621": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "ISZERO", + "path": "30" + }, + "622": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH2", + "path": "30", + "value": "0x276" + }, + "625": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "JUMPI", + "path": "30" + }, + "626": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "628": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "DUP1", + "path": "30" + }, + "629": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "REVERT", + "path": "30" + }, + "630": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "JUMPDEST", + "path": "30" + }, + "631": { + "op": "POP" + }, + "632": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1A4" + }, + "635": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH2", + "path": "30", + "value": "0x285" + }, + "638": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "639": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "641": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH2", + "path": "30", + "value": "0x30FC" + }, + "644": { + "fn": "ERC1155Action.setApprovalForAll", + "jump": "i", + "offset": [ + 19267, + 19489 + ], + "op": "JUMP", + "path": "30" + }, + "645": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "JUMPDEST", + "path": "30" + }, + "646": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "PUSH2", + "path": "30", + "value": "0x739" + }, + "649": { + "fn": "ERC1155Action.setApprovalForAll", + "jump": "i", + "offset": [ + 19267, + 19489 + ], + "op": "JUMP", + "path": "30" + }, + "650": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "JUMPDEST", + "path": "30" + }, + "651": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "CALLVALUE", + "path": "30" + }, + "652": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "DUP1", + "path": "30" + }, + "653": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "ISZERO", + "path": "30" + }, + "654": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH2", + "path": "30", + "value": "0x296" + }, + "657": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "JUMPI", + "path": "30" + }, + "658": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "660": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "DUP1", + "path": "30" + }, + "661": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "REVERT", + "path": "30" + }, + "662": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "JUMPDEST", + "path": "30" + }, + "663": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "POP", + "path": "30" + }, + "664": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH2", + "path": "30", + "value": "0x29F" + }, + "667": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH2", + "path": "30", + "value": "0x7A8" + }, + "670": { + "fn": "ERC1155Action.getLibInfo", + "jump": "i", + "offset": [ + 20163, + 20314 + ], + "op": "JUMP", + "path": "30" + }, + "671": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "JUMPDEST", + "path": "30" + }, + "672": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "674": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "MLOAD", + "path": "30" + }, + "675": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH2", + "path": "30", + "value": "0x119" + }, + "678": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "SWAP3", + "path": "30" + }, + "679": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "SWAP2", + "path": "30" + }, + "680": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "SWAP1", + "path": "30" + }, + "681": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "PUSH2", + "path": "30", + "value": "0x34A7" + }, + "684": { + "fn": "ERC1155Action.getLibInfo", + "jump": "i", + "offset": [ + 20163, + 20314 + ], + "op": "JUMP", + "path": "30" + }, + "685": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "JUMPDEST", + "path": "30" + }, + "686": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "CALLVALUE", + "path": "30" + }, + "687": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "DUP1", + "path": "30" + }, + "688": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "ISZERO", + "path": "30" + }, + "689": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2B9" + }, + "692": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "JUMPI", + "path": "30" + }, + "693": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "695": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "DUP1", + "path": "30" + }, + "696": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "REVERT", + "path": "30" + }, + "697": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "JUMPDEST", + "path": "30" + }, + "698": { + "op": "POP" + }, + "699": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH2", + "path": "30", + "value": "0x142" + }, + "702": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2C8" + }, + "705": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "706": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "708": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2F91" + }, + "711": { + "fn": "ERC1155Action.isApprovedForAll", + "jump": "i", + "offset": [ + 19806, + 20075 + ], + "op": "JUMP", + "path": "30" + }, + "712": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "JUMPDEST", + "path": "30" + }, + "713": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "PUSH2", + "path": "30", + "value": "0x7D6" + }, + "716": { + "fn": "ERC1155Action.isApprovedForAll", + "jump": "i", + "offset": [ + 19806, + 20075 + ], + "op": "JUMP", + "path": "30" + }, + "717": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "JUMPDEST", + "path": "30" + }, + "718": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1A4" + }, + "721": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2DB" + }, + "724": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "725": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "727": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3083" + }, + "730": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 6229, + 8148 + ], + "op": "JUMP", + "path": "30" + }, + "731": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "JUMPDEST", + "path": "30" + }, + "732": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "PUSH2", + "path": "30", + "value": "0x82E" + }, + "735": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 6229, + 8148 + ], + "op": "JUMP", + "path": "30" + }, + "736": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "737": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1820, + 1827 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "739": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1839, + 1854 + ], + "op": "DUP1", + "path": "30" + }, + "740": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1857, + 1885 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2ED" + }, + "743": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1873, + 1880 + ], + "op": "DUP5", + "path": "30" + }, + "744": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1882, + 1884 + ], + "op": "DUP5", + "path": "30" + }, + "745": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1857, + 1872 + ], + "op": "PUSH2", + "path": "30", + "value": "0x32C" + }, + "748": { + "fn": "ERC1155Action.balanceOf", + "jump": "i", + "offset": [ + 1857, + 1885 + ], + "op": "JUMP", + "path": "30" + }, + "749": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1857, + 1885 + ], + "op": "JUMPDEST", + "path": "30" + }, + "750": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1839, + 1885 + ], + "op": "SWAP1", + "path": "30" + }, + "751": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1839, + 1885 + ], + "op": "POP", + "path": "30" + }, + "752": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1913, + 1914 + ], + "op": "PUSH1", + "path": "30", + "statement": 0, + "value": "0x0" + }, + "754": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1910 + ], + "op": "DUP2", + "path": "30" + }, + "755": { + "branch": 281, + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1914 + ], + "op": "SLT", + "path": "30" + }, + "756": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1938 + ], + "op": "PUSH2", + "path": "30", + "value": "0x305" + }, + "759": { + "branch": 281, + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1938 + ], + "op": "JUMPI", + "path": "30" + }, + "760": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1921, + 1938 + ], + "op": "PUSH2", + "path": "30", + "value": "0x300" + }, + "763": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1921, + 1929 + ], + "op": "DUP2", + "path": "30" + }, + "764": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1921, + 1936 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA23" + }, + "767": { + "fn": "ERC1155Action.balanceOf", + "jump": "i", + "offset": [ + 1921, + 1938 + ], + "op": "JUMP", + "path": "30" + }, + "768": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1921, + 1938 + ], + "op": "JUMPDEST", + "path": "30" + }, + "769": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1938 + ], + "op": "PUSH2", + "path": "30", + "value": "0x308" + }, + "772": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1938 + ], + "op": "JUMP", + "path": "30" + }, + "773": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1938 + ], + "op": "JUMPDEST", + "path": "30" + }, + "774": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1917, + 1918 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "776": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1902, + 1938 + ], + "op": "JUMPDEST", + "path": "30" + }, + "777": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1895, + 1938 + ], + "op": "SWAP2", + "path": "30" + }, + "778": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1895, + 1938 + ], + "op": "POP", + "path": "30" + }, + "779": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1895, + 1938 + ], + "op": "POP", + "path": "30" + }, + "780": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "JUMPDEST", + "path": "30" + }, + "781": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SWAP3", + "path": "30" + }, + "782": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "SWAP2", + "path": "30" + }, + "783": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "POP", + "path": "30" + }, + "784": { + "fn": "ERC1155Action.balanceOf", + "offset": [ + 1742, + 1945 + ], + "op": "POP", + "path": "30" + }, + "785": { + "fn": "ERC1155Action.balanceOf", + "jump": "o", + "offset": [ + 1742, + 1945 + ], + "op": "JUMP", + "path": "30" + }, + "786": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPDEST", + "path": "30" + }, + "787": { + "op": "PUSH1", + "value": "0x1" + }, + "789": { + "op": "PUSH1", + "value": "0x1" + }, + "791": { + "op": "PUSH1", + "value": "0xE0" + }, + "793": { + "op": "SHL" + }, + "794": { + "op": "SUB" + }, + "795": { + "op": "NOT" + }, + "796": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1205, + 1246 + ], + "op": "DUP2", + "path": "30", + "statement": 1 + }, + "797": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1205, + 1246 + ], + "op": "AND", + "path": "30" + }, + "798": { + "op": "PUSH4", + "value": "0x6CDB3D13" + }, + "803": { + "op": "PUSH1", + "value": "0xE1" + }, + "805": { + "op": "SHL" + }, + "806": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1205, + 1246 + ], + "op": "EQ", + "path": "30" + }, + "807": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "JUMPDEST", + "path": "30" + }, + "808": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "SWAP2", + "path": "30" + }, + "809": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "SWAP1", + "path": "30" + }, + "810": { + "fn": "ERC1155Action.supportsInterface", + "offset": [ + 1103, + 1253 + ], + "op": "POP", + "path": "30" + }, + "811": { + "fn": "ERC1155Action.supportsInterface", + "jump": "o", + "offset": [ + 1103, + 1253 + ], + "op": "JUMP", + "path": "30" + }, + "812": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "JUMPDEST", + "path": "30" + }, + "813": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2256, + 2271 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "815": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2283, + 2319 + ], + "op": "DUP1", + "path": "30" + }, + "816": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2322, + 2370 + ], + "op": "PUSH2", + "path": "30", + "value": "0x338" + }, + "819": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2362, + 2369 + ], + "op": "DUP5", + "path": "30" + }, + "820": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2322, + 2361 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA36" + }, + "823": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2322, + 2370 + ], + "op": "JUMP", + "path": "30" + }, + "824": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2322, + 2370 + ], + "op": "JUMPDEST", + "path": "30" + }, + "825": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2283, + 2370 + ], + "op": "SWAP1", + "path": "30" + }, + "826": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2283, + 2370 + ], + "op": "POP", + "path": "30" + }, + "827": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2385, + 2417 + ], + "op": "PUSH2", + "path": "30", + "value": "0x343" + }, + "830": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2385, + 2399 + ], + "op": "DUP2", + "path": "30" + }, + "831": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2385, + 2415 + ], + "op": "PUSH2", + "path": "30", + "value": "0xAD7" + }, + "834": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2385, + 2417 + ], + "op": "JUMP", + "path": "30" + }, + "835": { + "branch": 282, + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2385, + 2417 + ], + "op": "JUMPDEST", + "path": "30" + }, + "836": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "ISZERO", + "path": "30" + }, + "837": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "PUSH2", + "path": "30", + "value": "0x362" + }, + "840": { + "branch": 282, + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "JUMPI", + "path": "30" + }, + "841": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2444, + 2506 + ], + "op": "PUSH2", + "path": "30", + "statement": 2, + "value": "0x35B" + }, + "844": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2461, + 2468 + ], + "op": "DUP5", + "path": "30" + }, + "845": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2470, + 2484 + ], + "op": "DUP3", + "path": "30" + }, + "846": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2470, + 2501 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "848": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2470, + 2501 + ], + "op": "ADD", + "path": "30" + }, + "849": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2470, + 2501 + ], + "op": "MLOAD", + "path": "30" + }, + "850": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2444, + 2506 + ], + "op": "PUSH2", + "path": "30", + "value": "0xFFFF" + }, + "853": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2444, + 2506 + ], + "op": "AND", + "path": "30" + }, + "854": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2503, + 2505 + ], + "op": "DUP6", + "path": "30" + }, + "855": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2444, + 2460 + ], + "op": "PUSH2", + "path": "30", + "value": "0xAE4" + }, + "858": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2444, + 2506 + ], + "op": "JUMP", + "path": "30" + }, + "859": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2444, + 2506 + ], + "op": "JUMPDEST", + "path": "30" + }, + "860": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2433, + 2506 + ], + "op": "SWAP2", + "path": "30" + }, + "861": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2433, + 2506 + ], + "op": "POP", + "path": "30" + }, + "862": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "PUSH2", + "path": "30", + "value": "0x379" + }, + "865": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "JUMP", + "path": "30" + }, + "866": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "JUMPDEST", + "path": "30" + }, + "867": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2548, + 2692 + ], + "op": "PUSH2", + "path": "30", + "statement": 3, + "value": "0x308" + }, + "870": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2581, + 2658 + ], + "op": "PUSH2", + "path": "30", + "value": "0x373" + }, + "873": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2617, + 2624 + ], + "op": "DUP6", + "path": "30" + }, + "874": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2626, + 2640 + ], + "op": "DUP4", + "path": "30" + }, + "875": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2626, + 2657 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "877": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2626, + 2657 + ], + "op": "ADD", + "path": "30" + }, + "878": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2626, + 2657 + ], + "op": "MLOAD", + "path": "30" + }, + "879": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2581, + 2616 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB2F" + }, + "882": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2581, + 2658 + ], + "op": "JUMP", + "path": "30" + }, + "883": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2581, + 2658 + ], + "op": "JUMPDEST", + "path": "30" + }, + "884": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2676, + 2678 + ], + "op": "DUP5", + "path": "30" + }, + "885": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2548, + 2563 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB58" + }, + "888": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "i", + "offset": [ + 2548, + 2692 + ], + "op": "JUMP", + "path": "30" + }, + "889": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2381, + 2703 + ], + "op": "JUMPDEST", + "path": "30" + }, + "890": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "POP", + "path": "30" + }, + "891": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "SWAP3", + "path": "30" + }, + "892": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "SWAP2", + "path": "30" + }, + "893": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "POP", + "path": "30" + }, + "894": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 2172, + 2709 + ], + "op": "POP", + "path": "30" + }, + "895": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "o", + "offset": [ + 2172, + 2709 + ], + "op": "JUMP", + "path": "30" + }, + "896": { + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "897": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x2" + }, + "899": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "SLOAD", + "path": "63" + }, + "900": { + "op": "PUSH1", + "value": "0x1" + }, + "902": { + "op": "PUSH1", + "value": "0x1" + }, + "904": { + "op": "PUSH1", + "value": "0xA0" + }, + "906": { + "op": "SHL" + }, + "907": { + "op": "SUB" + }, + "908": { + "offset": [ + 1035, + 1063 + ], + "op": "AND", + "path": "63" + }, + "909": { + "fn": "ERC1155Action.signedBalanceOf", + "offset": [ + 1035, + 1063 + ], + "op": "DUP2", + "path": "63" + }, + "910": { + "fn": "ERC1155Action.signedBalanceOf", + "jump": "o", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "911": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "JUMPDEST", + "path": "30" + }, + "912": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9260, + 9287 + ], + "op": "PUSH2", + "path": "30", + "statement": 4, + "value": "0x399" + }, + "915": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9278, + 9282 + ], + "op": "DUP9", + "path": "30" + }, + "916": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9284, + 9286 + ], + "op": "DUP9", + "path": "30" + }, + "917": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9260, + 9277 + ], + "op": "PUSH2", + "path": "30", + "value": "0xBDE" + }, + "920": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9260, + 9287 + ], + "op": "JUMP", + "path": "30" + }, + "921": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9260, + 9287 + ], + "op": "JUMPDEST", + "path": "30" + }, + "922": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9299, + 9329 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "924": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9331, + 9354 + ], + "op": "DUP1", + "path": "30" + }, + "925": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9358, + 9387 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3A8" + }, + "928": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9374, + 9377 + ], + "op": "DUP9", + "path": "30" + }, + "929": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9374, + 9377 + ], + "op": "DUP9", + "path": "30" + }, + "930": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9379, + 9386 + ], + "op": "DUP9", + "path": "30" + }, + "931": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9379, + 9386 + ], + "op": "DUP9", + "path": "30" + }, + "932": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9358, + 9373 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC7E" + }, + "935": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9358, + 9387 + ], + "op": "JUMP", + "path": "30" + }, + "936": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9358, + 9387 + ], + "op": "JUMPDEST", + "path": "30" + }, + "937": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9298, + 9387 + ], + "op": "SWAP2", + "path": "30" + }, + "938": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9298, + 9387 + ], + "op": "POP", + "path": "30" + }, + "939": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9298, + 9387 + ], + "op": "SWAP2", + "path": "30" + }, + "940": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9298, + 9387 + ], + "op": "POP", + "path": "30" + }, + "941": { + "branch": 283, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9535, + 9553 + ], + "op": "DUP1", + "path": "30" + }, + "942": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9531, + 9612 + ], + "op": "ISZERO", + "path": "30" + }, + "943": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9531, + 9612 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3E1" + }, + "946": { + "branch": 283, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9531, + 9612 + ], + "op": "JUMPI", + "path": "30" + }, + "947": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9563, + 9595 + ], + "op": "PUSH2", + "path": "30", + "statement": 5, + "value": "0x3BC" + }, + "950": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9580, + 9582 + ], + "op": "DUP10", + "path": "30" + }, + "951": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9584, + 9594 + ], + "op": "CALLER", + "path": "30" + }, + "952": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9563, + 9579 + ], + "op": "PUSH2", + "path": "30", + "value": "0x7D6" + }, + "955": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9563, + 9595 + ], + "op": "JUMP", + "path": "30" + }, + "956": { + "branch": 284, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9563, + 9595 + ], + "op": "JUMPDEST", + "path": "30" + }, + "957": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3E1" + }, + "960": { + "branch": 284, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "JUMPI", + "path": "30" + }, + "961": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "963": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "MLOAD", + "path": "30" + }, + "964": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "968": { + "op": "PUSH1", + "value": "0xE5" + }, + "970": { + "op": "SHL" + }, + "971": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "DUP2", + "path": "30" + }, + "972": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "MSTORE", + "path": "30" + }, + "973": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "975": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "ADD", + "path": "30" + }, + "976": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "979": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "SWAP1", + "path": "30" + }, + "980": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "PUSH2", + "path": "30", + "value": "0x36C0" + }, + "983": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9555, + 9612 + ], + "op": "JUMP", + "path": "30" + }, + "984": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "JUMPDEST", + "path": "30" + }, + "985": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "987": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "MLOAD", + "path": "30" + }, + "988": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "DUP1", + "path": "30" + }, + "989": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "SWAP2", + "path": "30" + }, + "990": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "SUB", + "path": "30" + }, + "991": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "SWAP1", + "path": "30" + }, + "992": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "REVERT", + "path": "30" + }, + "993": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9555, + 9612 + ], + "op": "JUMPDEST", + "path": "30" + }, + "994": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9624, + 9657 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "996": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9659, + 9690 + ], + "op": "DUP1", + "path": "30" + }, + "997": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9694, + 9767 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3EF" + }, + "1000": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9717, + 9721 + ], + "op": "DUP13", + "path": "30" + }, + "1001": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9735, + 9737 + ], + "op": "DUP13", + "path": "30" + }, + "1002": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9751, + 9757 + ], + "op": "DUP7", + "path": "30" + }, + "1003": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9694, + 9703 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDC8" + }, + "1006": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9694, + 9767 + ], + "op": "JUMP", + "path": "30" + }, + "1007": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9694, + 9767 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1008": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9623, + 9767 + ], + "op": "SWAP2", + "path": "30" + }, + "1009": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9623, + 9767 + ], + "op": "POP", + "path": "30" + }, + "1010": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9623, + 9767 + ], + "op": "SWAP2", + "path": "30" + }, + "1011": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9623, + 9767 + ], + "op": "POP", + "path": "30" + }, + "1012": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9778, + 9861 + ], + "op": "PUSH2", + "path": "30", + "statement": 6, + "value": "0x402" + }, + "1015": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9802, + 9806 + ], + "op": "DUP13", + "path": "30" + }, + "1016": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9808, + 9810 + ], + "op": "DUP13", + "path": "30" + }, + "1017": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9812, + 9823 + ], + "op": "DUP5", + "path": "30" + }, + "1018": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9825, + 9834 + ], + "op": "DUP5", + "path": "30" + }, + "1019": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9836, + 9840 + ], + "op": "DUP11", + "path": "30" + }, + "1020": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9836, + 9840 + ], + "op": "DUP11", + "path": "30" + }, + "1021": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9842, + 9860 + ], + "op": "DUP10", + "path": "30" + }, + "1022": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9778, + 9801 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF68" + }, + "1025": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9778, + 9861 + ], + "op": "JUMP", + "path": "30" + }, + "1026": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9778, + 9861 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1027": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9908, + 9910 + ], + "op": "DUP11", + "path": "30", + "statement": 7 + }, + "1028": { + "op": "PUSH1", + "value": "0x1" + }, + "1030": { + "op": "PUSH1", + "value": "0x1" + }, + "1032": { + "op": "PUSH1", + "value": "0xA0" + }, + "1034": { + "op": "SHL" + }, + "1035": { + "op": "SUB" + }, + "1036": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "AND", + "path": "30" + }, + "1037": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9902, + 9906 + ], + "op": "DUP13", + "path": "30" + }, + "1038": { + "op": "PUSH1", + "value": "0x1" + }, + "1040": { + "op": "PUSH1", + "value": "0x1" + }, + "1042": { + "op": "PUSH1", + "value": "0xA0" + }, + "1044": { + "op": "SHL" + }, + "1045": { + "op": "SUB" + }, + "1046": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "AND", + "path": "30" + }, + "1047": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9890, + 9900 + ], + "op": "CALLER", + "path": "30" + }, + "1048": { + "op": "PUSH1", + "value": "0x1" + }, + "1050": { + "op": "PUSH1", + "value": "0x1" + }, + "1052": { + "op": "PUSH1", + "value": "0xA0" + }, + "1054": { + "op": "SHL" + }, + "1055": { + "op": "SUB" + }, + "1056": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "AND", + "path": "30" + }, + "1057": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "PUSH32", + "path": "30", + "value": "0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB" + }, + "1090": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9912, + 9915 + ], + "op": "DUP14", + "path": "30" + }, + "1091": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9912, + 9915 + ], + "op": "DUP14", + "path": "30" + }, + "1092": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9917, + 9924 + ], + "op": "DUP14", + "path": "30" + }, + "1093": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9917, + 9924 + ], + "op": "DUP14", + "path": "30" + }, + "1094": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1096": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "MLOAD", + "path": "30" + }, + "1097": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "PUSH2", + "path": "30", + "value": "0x455" + }, + "1100": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP5", + "path": "30" + }, + "1101": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP4", + "path": "30" + }, + "1102": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP3", + "path": "30" + }, + "1103": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP2", + "path": "30" + }, + "1104": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP1", + "path": "30" + }, + "1105": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "PUSH2", + "path": "30", + "value": "0x35F3" + }, + "1108": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9876, + 9925 + ], + "op": "JUMP", + "path": "30" + }, + "1109": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1110": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1112": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "MLOAD", + "path": "30" + }, + "1113": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "DUP1", + "path": "30" + }, + "1114": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP2", + "path": "30" + }, + "1115": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SUB", + "path": "30" + }, + "1116": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "SWAP1", + "path": "30" + }, + "1117": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9876, + 9925 + ], + "op": "LOG4", + "path": "30" + }, + "1118": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9993, + 10015 + ], + "op": "PUSH2", + "path": "30", + "value": "0x466" + }, + "1121": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10012, + 10014 + ], + "op": "DUP12", + "path": "30" + }, + "1122": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9993, + 10011 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1246" + }, + "1125": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 9993, + 10015 + ], + "op": "JUMP", + "path": "30" + }, + "1126": { + "branch": 285, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9993, + 10015 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1127": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9989, + 10343 + ], + "op": "ISZERO", + "path": "30" + }, + "1128": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9989, + 10343 + ], + "op": "PUSH2", + "path": "30", + "value": "0x549" + }, + "1131": { + "branch": 285, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 9989, + 10343 + ], + "op": "JUMPI", + "path": "30" + }, + "1132": { + "offset": [ + 1017, + 1095 + ], + "op": "PUSH32", + "path": "30", + "value": "0xBC197C819B3E337A6F9652DD10BECD7EEF83032AF3B9D958D3D42F6694146621" + }, + "1165": { + "op": "PUSH1", + "value": "0x1" + }, + "1167": { + "op": "PUSH1", + "value": "0x1" + }, + "1169": { + "op": "PUSH1", + "value": "0xE0" + }, + "1171": { + "op": "SHL" + }, + "1172": { + "op": "SUB" + }, + "1173": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10286 + ], + "op": "NOT", + "path": "30", + "statement": 8 + }, + "1174": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10286 + ], + "op": "AND", + "path": "30" + }, + "1175": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10078, + 10080 + ], + "op": "DUP12", + "path": "30" + }, + "1176": { + "op": "PUSH1", + "value": "0x1" + }, + "1178": { + "op": "PUSH1", + "value": "0x1" + }, + "1180": { + "op": "PUSH1", + "value": "0xA0" + }, + "1182": { + "op": "SHL" + }, + "1183": { + "op": "SUB" + }, + "1184": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10104 + ], + "op": "AND", + "path": "30" + }, + "1185": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10104 + ], + "op": "PUSH4", + "path": "30", + "value": "0xBC197C81" + }, + "1190": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10126, + 10136 + ], + "op": "CALLER", + "path": "30" + }, + "1191": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10158, + 10162 + ], + "op": "DUP16", + "path": "30" + }, + "1192": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10184, + 10187 + ], + "op": "DUP15", + "path": "30" + }, + "1193": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10184, + 10187 + ], + "op": "DUP15", + "path": "30" + }, + "1194": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10209, + 10216 + ], + "op": "DUP15", + "path": "30" + }, + "1195": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10209, + 10216 + ], + "op": "DUP15", + "path": "30" + }, + "1196": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10238, + 10242 + ], + "op": "DUP15", + "path": "30" + }, + "1197": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10238, + 10242 + ], + "op": "DUP15", + "path": "30" + }, + "1198": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1200": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "MLOAD", + "path": "30" + }, + "1201": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP10", + "path": "30" + }, + "1202": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH4", + "path": "30", + "value": "0xFFFFFFFF" + }, + "1207": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "AND", + "path": "30" + }, + "1208": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0xE0" + }, + "1210": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SHL", + "path": "30" + }, + "1211": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP2", + "path": "30" + }, + "1212": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "MSTORE", + "path": "30" + }, + "1213": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "1215": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ADD", + "path": "30" + }, + "1216": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH2", + "path": "30", + "value": "0x4D0" + }, + "1219": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP9", + "path": "30" + }, + "1220": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP8", + "path": "30" + }, + "1221": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP7", + "path": "30" + }, + "1222": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP6", + "path": "30" + }, + "1223": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP5", + "path": "30" + }, + "1224": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP4", + "path": "30" + }, + "1225": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP3", + "path": "30" + }, + "1226": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP2", + "path": "30" + }, + "1227": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP1", + "path": "30" + }, + "1228": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3408" + }, + "1231": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 10056, + 10260 + ], + "op": "JUMP", + "path": "30" + }, + "1232": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1233": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1235": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1237": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "MLOAD", + "path": "30" + }, + "1238": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1239": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP4", + "path": "30" + }, + "1240": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SUB", + "path": "30" + }, + "1241": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP2", + "path": "30" + }, + "1242": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1244": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP8", + "path": "30" + }, + "1245": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1246": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "EXTCODESIZE", + "path": "30" + }, + "1247": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ISZERO", + "path": "30" + }, + "1248": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1249": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ISZERO", + "path": "30" + }, + "1250": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH2", + "path": "30", + "value": "0x4EA" + }, + "1253": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "JUMPI", + "path": "30" + }, + "1254": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1256": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1257": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "REVERT", + "path": "30" + }, + "1258": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1259": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "POP", + "path": "30" + }, + "1260": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "GAS", + "path": "30" + }, + "1261": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "CALL", + "path": "30" + }, + "1262": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ISZERO", + "path": "30" + }, + "1263": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1264": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ISZERO", + "path": "30" + }, + "1265": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH2", + "path": "30", + "value": "0x4FE" + }, + "1268": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "JUMPI", + "path": "30" + }, + "1269": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "1270": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1272": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1273": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "1274": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "1275": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1277": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "REVERT", + "path": "30" + }, + "1278": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1279": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "POP", + "path": "30" + }, + "1280": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "POP", + "path": "30" + }, + "1281": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "POP", + "path": "30" + }, + "1282": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "POP", + "path": "30" + }, + "1283": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1285": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "MLOAD", + "path": "30" + }, + "1286": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "1287": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "1289": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "NOT", + "path": "30" + }, + "1290": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "1292": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP3", + "path": "30" + }, + "1293": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ADD", + "path": "30" + }, + "1294": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "AND", + "path": "30" + }, + "1295": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP3", + "path": "30" + }, + "1296": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ADD", + "path": "30" + }, + "1297": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP1", + "path": "30" + }, + "1298": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1300": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "MSTORE", + "path": "30" + }, + "1301": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "POP", + "path": "30" + }, + "1302": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "DUP2", + "path": "30" + }, + "1303": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "ADD", + "path": "30" + }, + "1304": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP1", + "path": "30" + }, + "1305": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH2", + "path": "30", + "value": "0x522" + }, + "1308": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP2", + "path": "30" + }, + "1309": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "SWAP1", + "path": "30" + }, + "1310": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "PUSH2", + "path": "30", + "value": "0x31F4" + }, + "1313": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 10056, + 10260 + ], + "op": "JUMP", + "path": "30" + }, + "1314": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10260 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1315": { + "op": "PUSH1", + "value": "0x1" + }, + "1317": { + "op": "PUSH1", + "value": "0x1" + }, + "1319": { + "op": "PUSH1", + "value": "0xE0" + }, + "1321": { + "op": "SHL" + }, + "1322": { + "op": "SUB" + }, + "1323": { + "op": "NOT" + }, + "1324": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10286 + ], + "op": "AND", + "path": "30" + }, + "1325": { + "branch": 286, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10056, + 10286 + ], + "op": "EQ", + "path": "30" + }, + "1326": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "PUSH2", + "path": "30", + "value": "0x549" + }, + "1329": { + "branch": 286, + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "JUMPI", + "path": "30" + }, + "1330": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1332": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "MLOAD", + "path": "30" + }, + "1333": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "1337": { + "op": "PUSH1", + "value": "0xE5" + }, + "1339": { + "op": "SHL" + }, + "1340": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "DUP2", + "path": "30" + }, + "1341": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "MSTORE", + "path": "30" + }, + "1342": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "1344": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "ADD", + "path": "30" + }, + "1345": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "1348": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "SWAP1", + "path": "30" + }, + "1349": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "PUSH2", + "path": "30", + "value": "0x37B9" + }, + "1352": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "i", + "offset": [ + 10031, + 10332 + ], + "op": "JUMP", + "path": "30" + }, + "1353": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 10031, + 10332 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1354": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1355": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1356": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1357": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1358": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1359": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1360": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1361": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1362": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1363": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1364": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1365": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "offset": [ + 8849, + 10349 + ], + "op": "POP", + "path": "30" + }, + "1366": { + "fn": "ERC1155Action.safeBatchTransferFrom", + "jump": "o", + "offset": [ + 8849, + 10349 + ], + "op": "JUMP", + "path": "30" + }, + "1367": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1368": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11385, + 11408 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "1370": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11452, + 11482 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1372": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11493, + 11522 + ], + "op": "PUSH2", + "path": "30", + "value": "0x567" + }, + "1375": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11509, + 11512 + ], + "op": "DUP7", + "path": "30" + }, + "1376": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11509, + 11512 + ], + "op": "DUP7", + "path": "30" + }, + "1377": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11514, + 11521 + ], + "op": "DUP7", + "path": "30" + }, + "1378": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11514, + 11521 + ], + "op": "DUP7", + "path": "30" + }, + "1379": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11493, + 11508 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC7E" + }, + "1382": { + "fn": "ERC1155Action.decodeToAssets", + "jump": "i", + "offset": [ + 11493, + 11522 + ], + "op": "JUMP", + "path": "30" + }, + "1383": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11493, + 11522 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1384": { + "op": "POP" + }, + "1385": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11451, + 11522 + ], + "op": "SWAP7", + "path": "30" + }, + "1386": { + "fn": "ERC1155Action.decodeToAssets", + "offset": [ + 11245, + 11552 + ], + "op": "SWAP6", + "path": "30" + }, + "1387": { + "op": "POP" + }, + "1388": { + "op": "POP" + }, + "1389": { + "op": "POP" + }, + "1390": { + "op": "POP" + }, + "1391": { + "op": "POP" + }, + "1392": { + "op": "POP" + }, + "1393": { + "fn": "ERC1155Action.decodeToAssets", + "jump": "o", + "offset": [ + 11245, + 11552 + ], + "op": "JUMP", + "path": "30" + }, + "1394": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1395": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3924, + 3940 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "1397": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3964, + 3993 + ], + "op": "DUP4", + "path": "30", + "statement": 9 + }, + "1398": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3964, + 3993 + ], + "op": "DUP3", + "path": "30" + }, + "1399": { + "branch": 287, + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3964, + 3993 + ], + "op": "EQ", + "path": "30" + }, + "1400": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3956, + 3994 + ], + "op": "PUSH2", + "path": "30", + "value": "0x580" + }, + "1403": { + "branch": 287, + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3956, + 3994 + ], + "op": "JUMPI", + "path": "30" + }, + "1404": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3956, + 3994 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1406": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3956, + 3994 + ], + "op": "DUP1", + "path": "30" + }, + "1407": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3956, + 3994 + ], + "op": "REVERT", + "path": "30" + }, + "1408": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3956, + 3994 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1409": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4004, + 4028 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1411": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4045, + 4053 + ], + "op": "DUP5", + "path": "30" + }, + "1412": { + "op": "PUSH1", + "value": "0x1" + }, + "1414": { + "op": "PUSH1", + "value": "0x1" + }, + "1416": { + "op": "PUSH1", + "value": "0x40" + }, + "1418": { + "op": "SHL" + }, + "1419": { + "op": "SUB" + }, + "1420": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP2", + "path": "30" + }, + "1421": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "GT", + "path": "30" + }, + "1422": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP1", + "path": "30" + }, + "1423": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "ISZERO", + "path": "30" + }, + "1424": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH2", + "path": "30", + "value": "0x598" + }, + "1427": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "JUMPI", + "path": "30" + }, + "1428": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1430": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP1", + "path": "30" + }, + "1431": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "REVERT", + "path": "30" + }, + "1432": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1433": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "POP", + "path": "30" + }, + "1434": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1436": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "MLOAD", + "path": "30" + }, + "1437": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "SWAP1", + "path": "30" + }, + "1438": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP1", + "path": "30" + }, + "1439": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP3", + "path": "30" + }, + "1440": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "MSTORE", + "path": "30" + }, + "1441": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP1", + "path": "30" + }, + "1442": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1444": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "MUL", + "path": "30" + }, + "1445": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1447": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "ADD", + "path": "30" + }, + "1448": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP3", + "path": "30" + }, + "1449": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "ADD", + "path": "30" + }, + "1450": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1452": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "MSTORE", + "path": "30" + }, + "1453": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP1", + "path": "30" + }, + "1454": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "ISZERO", + "path": "30" + }, + "1455": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH2", + "path": "30", + "value": "0x5C2" + }, + "1458": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "JUMPI", + "path": "30" + }, + "1459": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP2", + "path": "30" + }, + "1460": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1462": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "ADD", + "path": "30" + }, + "1463": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1465": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP3", + "path": "30" + }, + "1466": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "MUL", + "path": "30" + }, + "1467": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP1", + "path": "30" + }, + "1468": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "1469": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "DUP4", + "path": "30" + }, + "1470": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "CALLDATACOPY", + "path": "30" + }, + "1471": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "ADD", + "path": "30" + }, + "1472": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "SWAP1", + "path": "30" + }, + "1473": { + "op": "POP" + }, + "1474": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1475": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4031, + 4061 + ], + "op": "POP", + "path": "30" + }, + "1476": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4004, + 4061 + ], + "op": "SWAP1", + "path": "30" + }, + "1477": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4004, + 4061 + ], + "op": "POP", + "path": "30" + }, + "1478": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4077, + 4086 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1480": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1481": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4088, + 4107 + ], + "op": "DUP6", + "path": "30" + }, + "1482": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4088, + 4107 + ], + "op": "DUP2", + "path": "30" + }, + "1483": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4088, + 4107 + ], + "op": "LT", + "path": "30" + }, + "1484": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "ISZERO", + "path": "30" + }, + "1485": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "PUSH2", + "path": "30", + "value": "0x62B" + }, + "1488": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "JUMPI", + "path": "30" + }, + "1489": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4205, + 4235 + ], + "op": "PUSH2", + "path": "30", + "statement": 10, + "value": "0x60C" + }, + "1492": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4223 + ], + "op": "DUP8", + "path": "30" + }, + "1493": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4223 + ], + "op": "DUP8", + "path": "30" + }, + "1494": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4224, + 4225 + ], + "op": "DUP4", + "path": "30" + }, + "1495": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "DUP2", + "path": "30" + }, + "1496": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "DUP2", + "path": "30" + }, + "1497": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "LT", + "path": "30" + }, + "1498": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "PUSH2", + "path": "30", + "value": "0x5DF" + }, + "1501": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "JUMPI", + "path": "30" + }, + "1502": { + "dev": "Index out of range", + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "INVALID", + "path": "30" + }, + "1503": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1504": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "SWAP1", + "path": "30" + }, + "1505": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "POP", + "path": "30" + }, + "1506": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1508": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "MUL", + "path": "30" + }, + "1509": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "ADD", + "path": "30" + }, + "1510": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1512": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "DUP2", + "path": "30" + }, + "1513": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "ADD", + "path": "30" + }, + "1514": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "SWAP1", + "path": "30" + }, + "1515": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "PUSH2", + "path": "30", + "value": "0x5F4" + }, + "1518": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "SWAP2", + "path": "30" + }, + "1519": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "SWAP1", + "path": "30" + }, + "1520": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2F75" + }, + "1523": { + "fn": "ERC1155Action.balanceOfBatch", + "jump": "i", + "offset": [ + 4215, + 4226 + ], + "op": "JUMP", + "path": "30" + }, + "1524": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4215, + 4226 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1525": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4231 + ], + "op": "DUP7", + "path": "30" + }, + "1526": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4231 + ], + "op": "DUP7", + "path": "30" + }, + "1527": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4232, + 4233 + ], + "op": "DUP5", + "path": "30" + }, + "1528": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "DUP2", + "path": "30" + }, + "1529": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "DUP2", + "path": "30" + }, + "1530": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "LT", + "path": "30" + }, + "1531": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "PUSH2", + "path": "30", + "value": "0x600" + }, + "1534": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "JUMPI", + "path": "30" + }, + "1535": { + "dev": "Index out of range", + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "INVALID", + "path": "30" + }, + "1536": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1537": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "SWAP1", + "path": "30" + }, + "1538": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "POP", + "path": "30" + }, + "1539": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1541": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "MUL", + "path": "30" + }, + "1542": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "ADD", + "path": "30" + }, + "1543": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4228, + 4234 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "1544": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4205, + 4214 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E0" + }, + "1547": { + "fn": "ERC1155Action.balanceOfBatch", + "jump": "i", + "offset": [ + 4205, + 4235 + ], + "op": "JUMP", + "path": "30" + }, + "1548": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4205, + 4235 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1549": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4199 + ], + "op": "DUP3", + "path": "30" + }, + "1550": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4200, + 4201 + ], + "op": "DUP3", + "path": "30" + }, + "1551": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "DUP2", + "path": "30" + }, + "1552": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "MLOAD", + "path": "30" + }, + "1553": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "DUP2", + "path": "30" + }, + "1554": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "LT", + "path": "30" + }, + "1555": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "PUSH2", + "path": "30", + "value": "0x618" + }, + "1558": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "JUMPI", + "path": "30" + }, + "1559": { + "dev": "Index out of range", + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "INVALID", + "path": "30" + }, + "1560": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1561": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1563": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "SWAP1", + "path": "30" + }, + "1564": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "DUP2", + "path": "30" + }, + "1565": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "MUL", + "path": "30" + }, + "1566": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "SWAP2", + "path": "30" + }, + "1567": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "SWAP1", + "path": "30" + }, + "1568": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "SWAP2", + "path": "30" + }, + "1569": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "ADD", + "path": "30" + }, + "1570": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4202 + ], + "op": "ADD", + "path": "30" + }, + "1571": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4192, + 4235 + ], + "op": "MSTORE", + "path": "30" + }, + "1572": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4109, + 4112 + ], + "op": "PUSH1", + "path": "30", + "statement": 11, + "value": "0x1" + }, + "1574": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4109, + 4112 + ], + "op": "ADD", + "path": "30" + }, + "1575": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "PUSH2", + "path": "30", + "value": "0x5C8" + }, + "1578": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "JUMP", + "path": "30" + }, + "1579": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4072, + 4246 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1580": { + "op": "POP" + }, + "1581": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 4263, + 4270 + ], + "op": "SWAP6", + "path": "30", + "statement": 12 + }, + "1582": { + "fn": "ERC1155Action.balanceOfBatch", + "offset": [ + 3783, + 4277 + ], + "op": "SWAP5", + "path": "30" + }, + "1583": { + "op": "POP" + }, + "1584": { + "op": "POP" + }, + "1585": { + "op": "POP" + }, + "1586": { + "op": "POP" + }, + "1587": { + "op": "POP" + }, + "1588": { + "fn": "ERC1155Action.balanceOfBatch", + "jump": "o", + "offset": [ + 3783, + 4277 + ], + "op": "JUMP", + "path": "30" + }, + "1589": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1590": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13449, + 13456 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1592": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "PUSH2", + "path": "30", + "statement": 13, + "value": "0x650" + }, + "1595": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13504, + 13514 + ], + "op": "DUP5", + "path": "30" + }, + "1596": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "PUSH2", + "path": "30", + "value": "0xFFFF" + }, + "1599": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "AND", + "path": "30" + }, + "1600": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13516, + 13524 + ], + "op": "DUP5", + "path": "30" + }, + "1601": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "PUSH5", + "path": "30", + "value": "0xFFFFFFFFFF" + }, + "1607": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "AND", + "path": "30" + }, + "1608": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13526, + 13535 + ], + "op": "DUP5", + "path": "30" + }, + "1609": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "PUSH1", + "path": "30", + "value": "0xFF" + }, + "1611": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "AND", + "path": "30" + }, + "1612": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13503 + ], + "op": "PUSH2", + "path": "30", + "value": "0x124C" + }, + "1615": { + "fn": "ERC1155Action.encodeToId", + "jump": "i", + "offset": [ + 13475, + 13536 + ], + "op": "JUMP", + "path": "30" + }, + "1616": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13475, + 13536 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1617": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13468, + 13536 + ], + "op": "SWAP1", + "path": "30" + }, + "1618": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13468, + 13536 + ], + "op": "POP", + "path": "30" + }, + "1619": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1620": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "SWAP4", + "path": "30" + }, + "1621": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "SWAP3", + "path": "30" + }, + "1622": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "POP", + "path": "30" + }, + "1623": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "POP", + "path": "30" + }, + "1624": { + "fn": "ERC1155Action.encodeToId", + "offset": [ + 13314, + 13543 + ], + "op": "POP", + "path": "30" + }, + "1625": { + "fn": "ERC1155Action.encodeToId", + "jump": "o", + "offset": [ + 13314, + 13543 + ], + "op": "JUMP", + "path": "30" + }, + "1626": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 2949, + 3452 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1627": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3096, + 3111 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "1629": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3135, + 3164 + ], + "op": "DUP4", + "path": "30", + "statement": 14 + }, + "1630": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3135, + 3164 + ], + "op": "DUP3", + "path": "30" + }, + "1631": { + "branch": 288, + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3135, + 3164 + ], + "op": "EQ", + "path": "30" + }, + "1632": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3127, + 3165 + ], + "op": "PUSH2", + "path": "30", + "value": "0x668" + }, + "1635": { + "branch": 288, + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3127, + 3165 + ], + "op": "JUMPI", + "path": "30" + }, + "1636": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3127, + 3165 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1638": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3127, + 3165 + ], + "op": "DUP1", + "path": "30" + }, + "1639": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3127, + 3165 + ], + "op": "REVERT", + "path": "30" + }, + "1640": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3127, + 3165 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1641": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3175, + 3198 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1643": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3214, + 3222 + ], + "op": "DUP5", + "path": "30" + }, + "1644": { + "op": "PUSH1", + "value": "0x1" + }, + "1646": { + "op": "PUSH1", + "value": "0x1" + }, + "1648": { + "op": "PUSH1", + "value": "0x40" + }, + "1650": { + "op": "SHL" + }, + "1651": { + "op": "SUB" + }, + "1652": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP2", + "path": "30" + }, + "1653": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "GT", + "path": "30" + }, + "1654": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP1", + "path": "30" + }, + "1655": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "ISZERO", + "path": "30" + }, + "1656": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH2", + "path": "30", + "value": "0x680" + }, + "1659": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "JUMPI", + "path": "30" + }, + "1660": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1662": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP1", + "path": "30" + }, + "1663": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "REVERT", + "path": "30" + }, + "1664": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1665": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "POP", + "path": "30" + }, + "1666": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1668": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "MLOAD", + "path": "30" + }, + "1669": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "SWAP1", + "path": "30" + }, + "1670": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP1", + "path": "30" + }, + "1671": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP3", + "path": "30" + }, + "1672": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "MSTORE", + "path": "30" + }, + "1673": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP1", + "path": "30" + }, + "1674": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1676": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "MUL", + "path": "30" + }, + "1677": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1679": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "ADD", + "path": "30" + }, + "1680": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP3", + "path": "30" + }, + "1681": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "ADD", + "path": "30" + }, + "1682": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1684": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "MSTORE", + "path": "30" + }, + "1685": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP1", + "path": "30" + }, + "1686": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "ISZERO", + "path": "30" + }, + "1687": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH2", + "path": "30", + "value": "0x6AA" + }, + "1690": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "JUMPI", + "path": "30" + }, + "1691": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP2", + "path": "30" + }, + "1692": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1694": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "ADD", + "path": "30" + }, + "1695": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1697": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP3", + "path": "30" + }, + "1698": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "MUL", + "path": "30" + }, + "1699": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP1", + "path": "30" + }, + "1700": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "CALLDATASIZE", + "path": "30" + }, + "1701": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "DUP4", + "path": "30" + }, + "1702": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "CALLDATACOPY", + "path": "30" + }, + "1703": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "ADD", + "path": "30" + }, + "1704": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "SWAP1", + "path": "30" + }, + "1705": { + "op": "POP" + }, + "1706": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1707": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3201, + 3230 + ], + "op": "POP", + "path": "30" + }, + "1708": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3175, + 3230 + ], + "op": "SWAP1", + "path": "30" + }, + "1709": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3175, + 3230 + ], + "op": "POP", + "path": "30" + }, + "1710": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3246, + 3255 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1712": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3241, + 3421 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1713": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3257, + 3276 + ], + "op": "DUP6", + "path": "30" + }, + "1714": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3257, + 3276 + ], + "op": "DUP2", + "path": "30" + }, + "1715": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3257, + 3276 + ], + "op": "LT", + "path": "30" + }, + "1716": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3241, + 3421 + ], + "op": "ISZERO", + "path": "30" + }, + "1717": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3241, + 3421 + ], + "op": "PUSH2", + "path": "30", + "value": "0x62B" + }, + "1720": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3241, + 3421 + ], + "op": "JUMPI", + "path": "30" + }, + "1721": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3374, + 3410 + ], + "op": "PUSH2", + "path": "30", + "statement": 15, + "value": "0x6F4" + }, + "1724": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3398 + ], + "op": "DUP8", + "path": "30" + }, + "1725": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3398 + ], + "op": "DUP8", + "path": "30" + }, + "1726": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3399, + 3400 + ], + "op": "DUP4", + "path": "30" + }, + "1727": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "DUP2", + "path": "30" + }, + "1728": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "DUP2", + "path": "30" + }, + "1729": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "LT", + "path": "30" + }, + "1730": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "PUSH2", + "path": "30", + "value": "0x6C7" + }, + "1733": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "JUMPI", + "path": "30" + }, + "1734": { + "dev": "Index out of range", + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "INVALID", + "path": "30" + }, + "1735": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1736": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "SWAP1", + "path": "30" + }, + "1737": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "POP", + "path": "30" + }, + "1738": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1740": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "MUL", + "path": "30" + }, + "1741": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "ADD", + "path": "30" + }, + "1742": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1744": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "DUP2", + "path": "30" + }, + "1745": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "ADD", + "path": "30" + }, + "1746": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "SWAP1", + "path": "30" + }, + "1747": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "PUSH2", + "path": "30", + "value": "0x6DC" + }, + "1750": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "SWAP2", + "path": "30" + }, + "1751": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "SWAP1", + "path": "30" + }, + "1752": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2F75" + }, + "1755": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "i", + "offset": [ + 3390, + 3401 + ], + "op": "JUMP", + "path": "30" + }, + "1756": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3390, + 3401 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1757": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3406 + ], + "op": "DUP7", + "path": "30" + }, + "1758": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3406 + ], + "op": "DUP7", + "path": "30" + }, + "1759": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3407, + 3408 + ], + "op": "DUP5", + "path": "30" + }, + "1760": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "DUP2", + "path": "30" + }, + "1761": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "DUP2", + "path": "30" + }, + "1762": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "LT", + "path": "30" + }, + "1763": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "PUSH2", + "path": "30", + "value": "0x6E8" + }, + "1766": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "JUMPI", + "path": "30" + }, + "1767": { + "dev": "Index out of range", + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "INVALID", + "path": "30" + }, + "1768": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1769": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "SWAP1", + "path": "30" + }, + "1770": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "POP", + "path": "30" + }, + "1771": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1773": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "MUL", + "path": "30" + }, + "1774": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "ADD", + "path": "30" + }, + "1775": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3403, + 3409 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "1776": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3374, + 3389 + ], + "op": "PUSH2", + "path": "30", + "value": "0x32C" + }, + "1779": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "i", + "offset": [ + 3374, + 3410 + ], + "op": "JUMP", + "path": "30" + }, + "1780": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3374, + 3410 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1781": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3368 + ], + "op": "DUP3", + "path": "30" + }, + "1782": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3369, + 3370 + ], + "op": "DUP3", + "path": "30" + }, + "1783": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "DUP2", + "path": "30" + }, + "1784": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "MLOAD", + "path": "30" + }, + "1785": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "DUP2", + "path": "30" + }, + "1786": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "LT", + "path": "30" + }, + "1787": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "PUSH2", + "path": "30", + "value": "0x700" + }, + "1790": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "JUMPI", + "path": "30" + }, + "1791": { + "dev": "Index out of range", + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "INVALID", + "path": "30" + }, + "1792": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1793": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1795": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "SWAP1", + "path": "30" + }, + "1796": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "DUP2", + "path": "30" + }, + "1797": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "MUL", + "path": "30" + }, + "1798": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "SWAP2", + "path": "30" + }, + "1799": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "SWAP1", + "path": "30" + }, + "1800": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "SWAP2", + "path": "30" + }, + "1801": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "ADD", + "path": "30" + }, + "1802": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3371 + ], + "op": "ADD", + "path": "30" + }, + "1803": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3361, + 3410 + ], + "op": "MSTORE", + "path": "30" + }, + "1804": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3278, + 3281 + ], + "op": "PUSH1", + "path": "30", + "statement": 16, + "value": "0x1" + }, + "1806": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3278, + 3281 + ], + "op": "ADD", + "path": "30" + }, + "1807": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3241, + 3421 + ], + "op": "PUSH2", + "path": "30", + "value": "0x6B0" + }, + "1810": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 3241, + 3421 + ], + "op": "JUMP", + "path": "30" + }, + "1811": { + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "1812": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "PUSH1", + "path": "63", + "value": "0x1" + }, + "1814": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "SLOAD", + "path": "63" + }, + "1815": { + "op": "PUSH1", + "value": "0x1" + }, + "1817": { + "op": "PUSH1", + "value": "0x1" + }, + "1819": { + "op": "PUSH1", + "value": "0xA0" + }, + "1821": { + "op": "SHL" + }, + "1822": { + "op": "SUB" + }, + "1823": { + "offset": [ + 920, + 946 + ], + "op": "AND", + "path": "63" + }, + "1824": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 920, + 946 + ], + "op": "DUP2", + "path": "63" + }, + "1825": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "o", + "offset": [ + 920, + 946 + ], + "op": "JUMP", + "path": "63" + }, + "1826": { + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "1827": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "1829": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "SLOAD", + "path": "63" + }, + "1830": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "PUSH5", + "path": "63", + "value": "0x100000000" + }, + "1836": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "SWAP1", + "path": "63" + }, + "1837": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "DIV", + "path": "63" + }, + "1838": { + "op": "PUSH1", + "value": "0x1" + }, + "1840": { + "op": "PUSH1", + "value": "0x1" + }, + "1842": { + "op": "PUSH1", + "value": "0xA0" + }, + "1844": { + "op": "SHL" + }, + "1845": { + "op": "SUB" + }, + "1846": { + "offset": [ + 811, + 831 + ], + "op": "AND", + "path": "63" + }, + "1847": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "offset": [ + 811, + 831 + ], + "op": "DUP2", + "path": "63" + }, + "1848": { + "fn": "ERC1155Action.signedBalanceOfBatch", + "jump": "o", + "offset": [ + 811, + 831 + ], + "op": "JUMP", + "path": "63" + }, + "1849": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1850": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19389, + 19399 + ], + "op": "CALLER", + "path": "30", + "statement": 17 + }, + "1851": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "1853": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "DUP2", + "path": "30" + }, + "1854": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "DUP2", + "path": "30" + }, + "1855": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "MSTORE", + "path": "30" + }, + "1856": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19388 + ], + "op": "PUSH1", + "path": "30", + "value": "0x7" + }, + "1858": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "1860": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "SWAP1", + "path": "30" + }, + "1861": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "DUP2", + "path": "30" + }, + "1862": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "MSTORE", + "path": "30" + }, + "1863": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1865": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "DUP1", + "path": "30" + }, + "1866": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "DUP4", + "path": "30" + }, + "1867": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19400 + ], + "op": "KECCAK256", + "path": "30" + }, + "1868": { + "op": "PUSH1", + "value": "0x1" + }, + "1870": { + "op": "PUSH1", + "value": "0x1" + }, + "1872": { + "op": "PUSH1", + "value": "0xA0" + }, + "1874": { + "op": "SHL" + }, + "1875": { + "op": "SUB" + }, + "1876": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "DUP8", + "path": "30" + }, + "1877": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "AND", + "path": "30" + }, + "1878": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "DUP1", + "path": "30" + }, + "1879": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "DUP6", + "path": "30" + }, + "1880": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "MSTORE", + "path": "30" + }, + "1881": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "SWAP3", + "path": "30" + }, + "1882": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "MSTORE", + "path": "30" + }, + "1883": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "SWAP2", + "path": "30" + }, + "1884": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "DUP3", + "path": "30" + }, + "1885": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "SWAP1", + "path": "30" + }, + "1886": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "KECCAK256", + "path": "30" + }, + "1887": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "DUP1", + "path": "30" + }, + "1888": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "SLOAD", + "path": "30" + }, + "1889": { + "op": "PUSH1", + "value": "0xFF" + }, + "1891": { + "op": "NOT" + }, + "1892": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "AND", + "path": "30" + }, + "1893": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "DUP6", + "path": "30" + }, + "1894": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "ISZERO", + "path": "30" + }, + "1895": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "ISZERO", + "path": "30" + }, + "1896": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "OR", + "path": "30" + }, + "1897": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "SWAP1", + "path": "30" + }, + "1898": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "SSTORE", + "path": "30" + }, + "1899": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "SWAP1", + "path": "30", + "statement": 18 + }, + "1900": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "MLOAD", + "path": "30" + }, + "1901": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "SWAP1", + "path": "30" + }, + "1902": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19410 + ], + "op": "SWAP2", + "path": "30" + }, + "1903": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19389, + 19399 + ], + "op": "SWAP1", + "path": "30" + }, + "1904": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "PUSH32", + "path": "30", + "value": "0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31" + }, + "1937": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "SWAP1", + "path": "30" + }, + "1938": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "PUSH2", + "path": "30", + "value": "0x79C" + }, + "1941": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "SWAP1", + "path": "30" + }, + "1942": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "DUP6", + "path": "30" + }, + "1943": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19355, + 19421 + ], + "op": "SWAP1", + "path": "30" + }, + "1944": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3625" + }, + "1947": { + "fn": "ERC1155Action.setApprovalForAll", + "jump": "i", + "offset": [ + 19436, + 19482 + ], + "op": "JUMP", + "path": "30" + }, + "1948": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1949": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "1951": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "MLOAD", + "path": "30" + }, + "1952": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "DUP1", + "path": "30" + }, + "1953": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "SWAP2", + "path": "30" + }, + "1954": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "SUB", + "path": "30" + }, + "1955": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "SWAP1", + "path": "30" + }, + "1956": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19436, + 19482 + ], + "op": "LOG3", + "path": "30" + }, + "1957": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "POP", + "path": "30" + }, + "1958": { + "fn": "ERC1155Action.setApprovalForAll", + "offset": [ + 19267, + 19489 + ], + "op": "POP", + "path": "30" + }, + "1959": { + "fn": "ERC1155Action.setApprovalForAll", + "jump": "o", + "offset": [ + 19267, + 19489 + ], + "op": "JUMP", + "path": "30" + }, + "1960": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "JUMPDEST", + "path": "30" + }, + "1961": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20244, + 20275 + ], + "op": "PUSH20", + "path": "30", + "statement": 19, + "value": "0x0" + }, + "1982": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20277, + 20306 + ], + "op": "PUSH20", + "path": "30", + "value": "0x0" + }, + "2003": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "SWAP1", + "path": "30" + }, + "2004": { + "fn": "ERC1155Action.getLibInfo", + "offset": [ + 20163, + 20314 + ], + "op": "SWAP2", + "path": "30" + }, + "2005": { + "fn": "ERC1155Action.getLibInfo", + "jump": "o", + "offset": [ + 20163, + 20314 + ], + "op": "JUMP", + "path": "30" + }, + "2006": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19806, + 20075 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2007": { + "op": "PUSH1", + "value": "0x1" + }, + "2009": { + "op": "PUSH1", + "value": "0x1" + }, + "2011": { + "op": "PUSH1", + "value": "0xA0" + }, + "2013": { + "op": "SHL" + }, + "2014": { + "op": "SUB" + }, + "2015": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "DUP2", + "path": "30" + }, + "2016": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "AND", + "path": "30" + }, + "2017": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19929, + 19933 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2019": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "SWAP1", + "path": "30" + }, + "2020": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "DUP2", + "path": "30" + }, + "2021": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "MSTORE", + "path": "30" + }, + "2022": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19975 + ], + "op": "PUSH1", + "path": "30", + "value": "0x6" + }, + "2024": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2026": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "MSTORE", + "path": "30" + }, + "2027": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2029": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "DUP2", + "path": "30" + }, + "2030": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "KECCAK256", + "path": "30" + }, + "2031": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "SLOAD", + "path": "30" + }, + "2032": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "PUSH1", + "path": "30", + "value": "0xFF" + }, + "2034": { + "branch": 289, + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19953, + 19985 + ], + "op": "AND", + "path": "30" + }, + "2035": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19949, + 19998 + ], + "op": "ISZERO", + "path": "30" + }, + "2036": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19949, + 19998 + ], + "op": "PUSH2", + "path": "30", + "value": "0x7FF" + }, + "2039": { + "branch": 289, + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19949, + 19998 + ], + "op": "JUMPI", + "path": "30" + }, + "2040": { + "op": "POP" + }, + "2041": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19994, + 19998 + ], + "op": "PUSH1", + "path": "30", + "statement": 20, + "value": "0x1" + }, + "2043": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19987, + 19998 + ], + "op": "PUSH2", + "path": "30", + "value": "0x30C" + }, + "2046": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19987, + 19998 + ], + "op": "JUMP", + "path": "30" + }, + "2047": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 19949, + 19998 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2048": { + "op": "POP" + }, + "2049": { + "op": "PUSH1", + "value": "0x1" + }, + "2051": { + "op": "PUSH1", + "value": "0x1" + }, + "2053": { + "op": "PUSH1", + "value": "0xA0" + }, + "2055": { + "op": "SHL" + }, + "2056": { + "op": "SUB" + }, + "2057": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "SWAP2", + "path": "30", + "statement": 21 + }, + "2058": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "DUP3", + "path": "30" + }, + "2059": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "AND", + "path": "30" + }, + "2060": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2062": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "SWAP1", + "path": "30" + }, + "2063": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "DUP2", + "path": "30" + }, + "2064": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "MSTORE", + "path": "30" + }, + "2065": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x7" + }, + "2067": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2069": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "SWAP1", + "path": "30" + }, + "2070": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "DUP2", + "path": "30" + }, + "2071": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "MSTORE", + "path": "30" + }, + "2072": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2074": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "DUP1", + "path": "30" + }, + "2075": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "DUP4", + "path": "30" + }, + "2076": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20058 + ], + "op": "KECCAK256", + "path": "30" + }, + "2077": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP4", + "path": "30" + }, + "2078": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP1", + "path": "30" + }, + "2079": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP5", + "path": "30" + }, + "2080": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "AND", + "path": "30" + }, + "2081": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "DUP3", + "path": "30" + }, + "2082": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "MSTORE", + "path": "30" + }, + "2083": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP2", + "path": "30" + }, + "2084": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP1", + "path": "30" + }, + "2085": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP2", + "path": "30" + }, + "2086": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "MSTORE", + "path": "30" + }, + "2087": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "KECCAK256", + "path": "30" + }, + "2088": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SLOAD", + "path": "30" + }, + "2089": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "PUSH1", + "path": "30", + "value": "0xFF" + }, + "2091": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "AND", + "path": "30" + }, + "2092": { + "fn": "ERC1155Action.isApprovedForAll", + "offset": [ + 20016, + 20068 + ], + "op": "SWAP1", + "path": "30" + }, + "2093": { + "fn": "ERC1155Action.isApprovedForAll", + "jump": "o", + "offset": [ + 19806, + 20075 + ], + "op": "JUMP", + "path": "30" + }, + "2094": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2095": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6663, + 6690 + ], + "op": "PUSH2", + "path": "30", + "statement": 22, + "value": "0x838" + }, + "2098": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6681, + 6685 + ], + "op": "DUP7", + "path": "30" + }, + "2099": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6687, + 6689 + ], + "op": "DUP7", + "path": "30" + }, + "2100": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6663, + 6680 + ], + "op": "PUSH2", + "path": "30", + "value": "0xBDE" + }, + "2103": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 6663, + 6690 + ], + "op": "JUMP", + "path": "30" + }, + "2104": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6663, + 6690 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2105": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6814, + 6847 + ], + "op": "PUSH2", + "path": "30", + "value": "0x840" + }, + "2108": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6814, + 6847 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E31" + }, + "2111": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 6814, + 6847 + ], + "op": "JUMP", + "path": "30" + }, + "2112": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6814, + 6847 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2113": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6861, + 6871 + ], + "op": "DUP4", + "path": "30" + }, + "2114": { + "branch": 290, + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6861, + 6871 + ], + "op": "ISZERO", + "path": "30" + }, + "2115": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "PUSH2", + "path": "30", + "value": "0x936" + }, + "2118": { + "branch": 290, + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "JUMPI", + "path": "30" + }, + "2119": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2121": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP1", + "path": "30" + }, + "2122": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "MLOAD", + "path": "30" + }, + "2123": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6941, + 6942 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1" + }, + "2125": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP1", + "path": "30" + }, + "2126": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP3", + "path": "30" + }, + "2127": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "MSTORE", + "path": "30" + }, + "2128": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP2", + "path": "30" + }, + "2129": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP4", + "path": "30" + }, + "2130": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "ADD", + "path": "30" + }, + "2131": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SWAP1", + "path": "30" + }, + "2132": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SWAP3", + "path": "30" + }, + "2133": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "MSTORE", + "path": "30" + }, + "2134": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6887, + 6917 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2136": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6887, + 6917 + ], + "op": "SWAP2", + "path": "30" + }, + "2137": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP2", + "path": "30" + }, + "2138": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2140": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "ADD", + "path": "30" + }, + "2141": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2142": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH2", + "path": "30", + "value": "0x865" + }, + "2145": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E5F" + }, + "2148": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 6920, + 6943 + ], + "op": "JUMP", + "path": "30" + }, + "2149": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2150": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP2", + "path": "30" + }, + "2151": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "MSTORE", + "path": "30" + }, + "2152": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2154": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "ADD", + "path": "30" + }, + "2155": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SWAP1", + "path": "30" + }, + "2156": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1" + }, + "2158": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SWAP1", + "path": "30" + }, + "2159": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SUB", + "path": "30" + }, + "2160": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SWAP1", + "path": "30" + }, + "2161": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "DUP2", + "path": "30" + }, + "2162": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "PUSH2", + "path": "30", + "value": "0x85D" + }, + "2165": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "JUMPI", + "path": "30" + }, + "2166": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "SWAP1", + "path": "30" + }, + "2167": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "POP", + "path": "30" + }, + "2168": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6920, + 6943 + ], + "op": "POP", + "path": "30" + }, + "2169": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6887, + 6943 + ], + "op": "SWAP1", + "path": "30" + }, + "2170": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6887, + 6943 + ], + "op": "POP", + "path": "30" + }, + "2171": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6957, + 6984 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2173": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6993 + ], + "op": "DUP2", + "path": "30" + }, + "2174": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6994, + 6995 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2176": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "DUP2", + "path": "30" + }, + "2177": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "MLOAD", + "path": "30" + }, + "2178": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "DUP2", + "path": "30" + }, + "2179": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "LT", + "path": "30" + }, + "2180": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "PUSH2", + "path": "30", + "value": "0x889" + }, + "2183": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "JUMPI", + "path": "30" + }, + "2184": { + "dev": "Index out of range", + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "INVALID", + "path": "30" + }, + "2185": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2186": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2188": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "MUL", + "path": "30" + }, + "2189": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2191": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "ADD", + "path": "30" + }, + "2192": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "ADD", + "path": "30" + }, + "2193": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6987, + 6996 + ], + "op": "MLOAD", + "path": "30" + }, + "2194": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6957, + 6996 + ], + "op": "SWAP1", + "path": "30" + }, + "2195": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6957, + 6996 + ], + "op": "POP", + "path": "30" + }, + "2196": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7065, + 7097 + ], + "op": "PUSH2", + "path": "30", + "statement": 23, + "value": "0x89C" + }, + "2199": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7094, + 7096 + ], + "op": "DUP8", + "path": "30" + }, + "2200": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7065, + 7093 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12A7" + }, + "2203": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7065, + 7097 + ], + "op": "JUMP", + "path": "30" + }, + "2204": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7065, + 7097 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2205": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7046, + 7061 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2207": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7046, + 7061 + ], + "op": "DUP5", + "path": "30" + }, + "2208": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7046, + 7061 + ], + "op": "ADD", + "path": "30" + }, + "2209": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7011, + 7097 + ], + "op": "MSTORE", + "path": "30" + }, + "2210": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7030, + 7044 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2212": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7030, + 7044 + ], + "op": "DUP4", + "path": "30" + }, + "2213": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7030, + 7044 + ], + "op": "ADD", + "path": "30" + }, + "2214": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7011, + 7097 + ], + "op": "MSTORE", + "path": "30" + }, + "2215": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7011, + 7097 + ], + "op": "DUP2", + "path": "30" + }, + "2216": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7011, + 7097 + ], + "op": "MSTORE", + "path": "30" + }, + "2217": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7204, + 7228 + ], + "op": "PUSH2", + "path": "30", + "statement": 24, + "value": "0x8B1" + }, + "2220": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7221, + 7227 + ], + "op": "DUP7", + "path": "30" + }, + "2221": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7204, + 7220 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12C4" + }, + "2224": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7204, + 7228 + ], + "op": "JUMP", + "path": "30" + }, + "2225": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7204, + 7228 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2226": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7187, + 7201 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "2228": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7187, + 7201 + ], + "op": "DUP3", + "path": "30" + }, + "2229": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7187, + 7201 + ], + "op": "ADD", + "path": "30" + }, + "2230": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7187, + 7228 + ], + "op": "MSTORE", + "path": "30" + }, + "2231": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7264, + 7280 + ], + "op": "DUP1", + "path": "30", + "statement": 25 + }, + "2232": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7264, + 7280 + ], + "op": "MLOAD", + "path": "30" + }, + "2233": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7282, + 7296 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2235": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7282, + 7296 + ], + "op": "DUP3", + "path": "30" + }, + "2236": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7282, + 7296 + ], + "op": "ADD", + "path": "30" + }, + "2237": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7282, + 7296 + ], + "op": "MLOAD", + "path": "30" + }, + "2238": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7242, + 7314 + ], + "op": "PUSH2", + "path": "30", + "value": "0x8C8" + }, + "2241": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7242, + 7314 + ], + "op": "SWAP2", + "path": "30" + }, + "2242": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7264, + 7280 + ], + "op": "SWAP1", + "path": "30" + }, + "2243": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7298, + 7313 + ], + "op": "TIMESTAMP", + "path": "30" + }, + "2244": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7242, + 7263 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12DA" + }, + "2247": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7242, + 7314 + ], + "op": "JUMP", + "path": "30" + }, + "2248": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7242, + 7314 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2249": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7393, + 7420 + ], + "op": "PUSH2", + "path": "30", + "statement": 26, + "value": "0x8D3" + }, + "2252": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7403, + 7407 + ], + "op": "DUP10", + "path": "30" + }, + "2253": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7409, + 7411 + ], + "op": "DUP10", + "path": "30" + }, + "2254": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7413, + 7419 + ], + "op": "DUP5", + "path": "30" + }, + "2255": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7393, + 7402 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDC8" + }, + "2258": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7393, + 7420 + ], + "op": "JUMP", + "path": "30" + }, + "2259": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7393, + 7420 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2260": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7360, + 7420 + ], + "op": "POP", + "path": "30" + }, + "2261": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7360, + 7420 + ], + "op": "DUP1", + "path": "30" + }, + "2262": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7360, + 7420 + ], + "op": "SWAP4", + "path": "30" + }, + "2263": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7360, + 7420 + ], + "op": "POP", + "path": "30" + }, + "2264": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7360, + 7420 + ], + "op": "POP", + "path": "30" + }, + "2265": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7473, + 7475 + ], + "op": "DUP8", + "path": "30", + "statement": 27 + }, + "2266": { + "op": "PUSH1", + "value": "0x1" + }, + "2268": { + "op": "PUSH1", + "value": "0x1" + }, + "2270": { + "op": "PUSH1", + "value": "0xA0" + }, + "2272": { + "op": "SHL" + }, + "2273": { + "op": "SUB" + }, + "2274": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "AND", + "path": "30" + }, + "2275": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7467, + 7471 + ], + "op": "DUP10", + "path": "30" + }, + "2276": { + "op": "PUSH1", + "value": "0x1" + }, + "2278": { + "op": "PUSH1", + "value": "0x1" + }, + "2280": { + "op": "PUSH1", + "value": "0xA0" + }, + "2282": { + "op": "SHL" + }, + "2283": { + "op": "SUB" + }, + "2284": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "AND", + "path": "30" + }, + "2285": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7455, + 7465 + ], + "op": "CALLER", + "path": "30" + }, + "2286": { + "op": "PUSH1", + "value": "0x1" + }, + "2288": { + "op": "PUSH1", + "value": "0x1" + }, + "2290": { + "op": "PUSH1", + "value": "0xA0" + }, + "2292": { + "op": "SHL" + }, + "2293": { + "op": "SUB" + }, + "2294": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "AND", + "path": "30" + }, + "2295": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "PUSH32", + "path": "30", + "value": "0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62" + }, + "2328": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7477, + 7479 + ], + "op": "DUP11", + "path": "30" + }, + "2329": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7481, + 7487 + ], + "op": "DUP11", + "path": "30" + }, + "2330": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2332": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "MLOAD", + "path": "30" + }, + "2333": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "PUSH2", + "path": "30", + "value": "0x927" + }, + "2336": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "SWAP3", + "path": "30" + }, + "2337": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "SWAP2", + "path": "30" + }, + "2338": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "SWAP1", + "path": "30" + }, + "2339": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "PUSH2", + "path": "30", + "value": "0x37DF" + }, + "2342": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7440, + 7488 + ], + "op": "JUMP", + "path": "30" + }, + "2343": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2344": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2346": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "MLOAD", + "path": "30" + }, + "2347": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "DUP1", + "path": "30" + }, + "2348": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "SWAP2", + "path": "30" + }, + "2349": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "SUB", + "path": "30" + }, + "2350": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "SWAP1", + "path": "30" + }, + "2351": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7440, + 7488 + ], + "op": "LOG4", + "path": "30" + }, + "2352": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "POP", + "path": "30" + }, + "2353": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "POP", + "path": "30" + }, + "2354": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "PUSH2", + "path": "30", + "value": "0x942" + }, + "2357": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "JUMP", + "path": "30" + }, + "2358": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2359": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7533, + 7578 + ], + "op": "PUSH2", + "path": "30", + "statement": 28, + "value": "0x93F" + }, + "2362": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7573, + 7577 + ], + "op": "DUP8", + "path": "30" + }, + "2363": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7533, + 7572 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA36" + }, + "2366": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7533, + 7578 + ], + "op": "JUMP", + "path": "30" + }, + "2367": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7533, + 7578 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2368": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7519, + 7578 + ], + "op": "SWAP1", + "path": "30" + }, + "2369": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7519, + 7578 + ], + "op": "POP", + "path": "30" + }, + "2370": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6857, + 7589 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2371": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7710, + 7741 + ], + "op": "PUSH2", + "path": "30", + "value": "0x94A" + }, + "2374": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7710, + 7741 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E31" + }, + "2377": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7710, + 7741 + ], + "op": "JUMP", + "path": "30" + }, + "2378": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7710, + 7741 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2379": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7751, + 7821 + ], + "op": "PUSH2", + "path": "30", + "statement": 29, + "value": "0x95A" + }, + "2382": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7775, + 7779 + ], + "op": "DUP9", + "path": "30" + }, + "2383": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7781, + 7783 + ], + "op": "DUP9", + "path": "30" + }, + "2384": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7785, + 7796 + ], + "op": "DUP5", + "path": "30" + }, + "2385": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7798, + 7807 + ], + "op": "DUP5", + "path": "30" + }, + "2386": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7809, + 7813 + ], + "op": "DUP9", + "path": "30" + }, + "2387": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7809, + 7813 + ], + "op": "DUP9", + "path": "30" + }, + "2388": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7815, + 7820 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2390": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7751, + 7774 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF68" + }, + "2393": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7751, + 7821 + ], + "op": "JUMP", + "path": "30" + }, + "2394": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7751, + 7821 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2395": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7903, + 7925 + ], + "op": "PUSH2", + "path": "30", + "value": "0x963" + }, + "2398": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7922, + 7924 + ], + "op": "DUP8", + "path": "30" + }, + "2399": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7903, + 7921 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1246" + }, + "2402": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7903, + 7925 + ], + "op": "JUMP", + "path": "30" + }, + "2403": { + "branch": 291, + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7903, + 7925 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2404": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7899, + 8142 + ], + "op": "ISZERO", + "path": "30" + }, + "2405": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7899, + 8142 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA19" + }, + "2408": { + "branch": 291, + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7899, + 8142 + ], + "op": "JUMPI", + "path": "30" + }, + "2409": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "statement": 30, + "value": "0x40" + }, + "2411": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "MLOAD", + "path": "30" + }, + "2412": { + "op": "PUSH4", + "value": "0xF23A6E61" + }, + "2417": { + "op": "PUSH1", + "value": "0xE0" + }, + "2419": { + "op": "SHL" + }, + "2420": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2421": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP3", + "path": "30" + }, + "2422": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "MSTORE", + "path": "30" + }, + "2423": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8085 + ], + "op": "SWAP1", + "path": "30" + }, + "2424": { + "op": "PUSH1", + "value": "0x1" + }, + "2426": { + "op": "PUSH1", + "value": "0x1" + }, + "2428": { + "op": "PUSH1", + "value": "0xA0" + }, + "2430": { + "op": "SHL" + }, + "2431": { + "op": "SUB" + }, + "2432": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8009 + ], + "op": "DUP10", + "path": "30" + }, + "2433": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8009 + ], + "op": "AND", + "path": "30" + }, + "2434": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8009 + ], + "op": "SWAP1", + "path": "30" + }, + "2435": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8009 + ], + "op": "PUSH4", + "path": "30", + "value": "0xF23A6E61" + }, + "2440": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8009 + ], + "op": "SWAP1", + "path": "30" + }, + "2441": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH2", + "path": "30", + "value": "0x9A0" + }, + "2444": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "SWAP1", + "path": "30" + }, + "2445": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8010, + 8020 + ], + "op": "CALLER", + "path": "30" + }, + "2446": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8010, + 8020 + ], + "op": "SWAP1", + "path": "30" + }, + "2447": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8022, + 8026 + ], + "op": "DUP14", + "path": "30" + }, + "2448": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8022, + 8026 + ], + "op": "SWAP1", + "path": "30" + }, + "2449": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8028, + 8030 + ], + "op": "DUP13", + "path": "30" + }, + "2450": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8028, + 8030 + ], + "op": "SWAP1", + "path": "30" + }, + "2451": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8032, + 8038 + ], + "op": "DUP13", + "path": "30" + }, + "2452": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8032, + 8038 + ], + "op": "SWAP1", + "path": "30" + }, + "2453": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8040, + 8044 + ], + "op": "DUP13", + "path": "30" + }, + "2454": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8040, + 8044 + ], + "op": "SWAP1", + "path": "30" + }, + "2455": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8040, + 8044 + ], + "op": "DUP13", + "path": "30" + }, + "2456": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 8040, + 8044 + ], + "op": "SWAP1", + "path": "30" + }, + "2457": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "2459": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ADD", + "path": "30" + }, + "2460": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH2", + "path": "30", + "value": "0x346C" + }, + "2463": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7966, + 8045 + ], + "op": "JUMP", + "path": "30" + }, + "2464": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2465": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2467": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2469": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "MLOAD", + "path": "30" + }, + "2470": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2471": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP4", + "path": "30" + }, + "2472": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "SUB", + "path": "30" + }, + "2473": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP2", + "path": "30" + }, + "2474": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2476": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP8", + "path": "30" + }, + "2477": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2478": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "EXTCODESIZE", + "path": "30" + }, + "2479": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ISZERO", + "path": "30" + }, + "2480": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2481": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ISZERO", + "path": "30" + }, + "2482": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH2", + "path": "30", + "value": "0x9BA" + }, + "2485": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "JUMPI", + "path": "30" + }, + "2486": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2488": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2489": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "REVERT", + "path": "30" + }, + "2490": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2491": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "POP", + "path": "30" + }, + "2492": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "GAS", + "path": "30" + }, + "2493": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "CALL", + "path": "30" + }, + "2494": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ISZERO", + "path": "30" + }, + "2495": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2496": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ISZERO", + "path": "30" + }, + "2497": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH2", + "path": "30", + "value": "0x9CE" + }, + "2500": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "JUMPI", + "path": "30" + }, + "2501": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "2502": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2504": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2505": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "2506": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "2507": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2509": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "REVERT", + "path": "30" + }, + "2510": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2511": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "POP", + "path": "30" + }, + "2512": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "POP", + "path": "30" + }, + "2513": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "POP", + "path": "30" + }, + "2514": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "POP", + "path": "30" + }, + "2515": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2517": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "MLOAD", + "path": "30" + }, + "2518": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "2519": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "2521": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "NOT", + "path": "30" + }, + "2522": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "2524": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP3", + "path": "30" + }, + "2525": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ADD", + "path": "30" + }, + "2526": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "AND", + "path": "30" + }, + "2527": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP3", + "path": "30" + }, + "2528": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ADD", + "path": "30" + }, + "2529": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP1", + "path": "30" + }, + "2530": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2532": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "MSTORE", + "path": "30" + }, + "2533": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "POP", + "path": "30" + }, + "2534": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "DUP2", + "path": "30" + }, + "2535": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "ADD", + "path": "30" + }, + "2536": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "SWAP1", + "path": "30" + }, + "2537": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH2", + "path": "30", + "value": "0x9F2" + }, + "2540": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "SWAP2", + "path": "30" + }, + "2541": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "SWAP1", + "path": "30" + }, + "2542": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "PUSH2", + "path": "30", + "value": "0x31F4" + }, + "2545": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7966, + 8045 + ], + "op": "JUMP", + "path": "30" + }, + "2546": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8045 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2547": { + "op": "PUSH1", + "value": "0x1" + }, + "2549": { + "op": "PUSH1", + "value": "0x1" + }, + "2551": { + "op": "PUSH1", + "value": "0xE0" + }, + "2553": { + "op": "SHL" + }, + "2554": { + "op": "SUB" + }, + "2555": { + "op": "NOT" + }, + "2556": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8085 + ], + "op": "AND", + "path": "30" + }, + "2557": { + "branch": 292, + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7966, + 8085 + ], + "op": "EQ", + "path": "30" + }, + "2558": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA19" + }, + "2561": { + "branch": 292, + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "JUMPI", + "path": "30" + }, + "2562": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2564": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "MLOAD", + "path": "30" + }, + "2565": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "2569": { + "op": "PUSH1", + "value": "0xE5" + }, + "2571": { + "op": "SHL" + }, + "2572": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "DUP2", + "path": "30" + }, + "2573": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "MSTORE", + "path": "30" + }, + "2574": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "2576": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "ADD", + "path": "30" + }, + "2577": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "2580": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "SWAP1", + "path": "30" + }, + "2581": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "PUSH2", + "path": "30", + "value": "0x37B9" + }, + "2584": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "i", + "offset": [ + 7941, + 8131 + ], + "op": "JUMP", + "path": "30" + }, + "2585": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 7941, + 8131 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2586": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2587": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2588": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2589": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2590": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2591": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2592": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2593": { + "fn": "ERC1155Action.safeTransferFrom", + "offset": [ + 6229, + 8148 + ], + "op": "POP", + "path": "30" + }, + "2594": { + "fn": "ERC1155Action.safeTransferFrom", + "jump": "o", + "offset": [ + 6229, + 8148 + ], + "op": "JUMP", + "path": "30" + }, + "2595": { + "fn": "SafeInt256.toUint", + "offset": [ + 2397, + 2514 + ], + "op": "JUMPDEST", + "path": "94" + }, + "2596": { + "fn": "SafeInt256.toUint", + "offset": [ + 2446, + 2453 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "2598": { + "fn": "SafeInt256.toUint", + "offset": [ + 2478, + 2479 + ], + "op": "DUP1", + "path": "94", + "statement": 31 + }, + "2599": { + "fn": "SafeInt256.toUint", + "offset": [ + 2473, + 2474 + ], + "op": "DUP3", + "path": "94" + }, + "2600": { + "fn": "SafeInt256.toUint", + "offset": [ + 2473, + 2479 + ], + "op": "SLT", + "path": "94" + }, + "2601": { + "branch": 436, + "fn": "SafeInt256.toUint", + "offset": [ + 2473, + 2479 + ], + "op": "ISZERO", + "path": "94" + }, + "2602": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "PUSH2", + "path": "94", + "value": "0xA32" + }, + "2605": { + "branch": 436, + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "JUMPI", + "path": "94" + }, + "2606": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "2608": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "DUP1", + "path": "94" + }, + "2609": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "REVERT", + "path": "94" + }, + "2610": { + "fn": "SafeInt256.toUint", + "offset": [ + 2465, + 2480 + ], + "op": "JUMPDEST", + "path": "94" + }, + "2611": { + "op": "POP" + }, + "2612": { + "fn": "SafeInt256.toUint", + "offset": [ + 2505, + 2506 + ], + "op": "SWAP1", + "path": "94", + "statement": 32 + }, + "2613": { + "fn": "SafeInt256.toUint", + "jump": "o", + "offset": [ + 2397, + 2514 + ], + "op": "JUMP", + "path": "94" + }, + "2614": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 552, + 771 + ], + "op": "JUMPDEST", + "path": "66" + }, + "2615": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 619, + 640 + ], + "op": "PUSH2", + "path": "66", + "value": "0xA3E" + }, + "2618": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 619, + 640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2E31" + }, + "2621": { + "fn": "AccountContextHandler.getAccountContext", + "jump": "i", + "offset": [ + 619, + 640 + ], + "op": "JUMP", + "path": "66" + }, + "2622": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 619, + 640 + ], + "op": "JUMPDEST", + "path": "66" + }, + "2623": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 652, + 700 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "2625": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 703, + 733 + ], + "op": "PUSH2", + "path": "66", + "value": "0xA48" + }, + "2628": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 703, + 731 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1311" + }, + "2631": { + "fn": "AccountContextHandler.getAccountContext", + "jump": "i", + "offset": [ + 703, + 733 + ], + "op": "JUMP", + "path": "66" + }, + "2632": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 703, + 733 + ], + "op": "JUMPDEST", + "path": "66" + }, + "2633": { + "op": "PUSH1", + "value": "0x1" + }, + "2635": { + "op": "PUSH1", + "value": "0x1" + }, + "2637": { + "op": "PUSH1", + "value": "0xA0" + }, + "2639": { + "op": "SHL" + }, + "2640": { + "op": "SUB" + }, + "2641": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP4", + "path": "66", + "statement": 33 + }, + "2642": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2643": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP4", + "path": "66" + }, + "2644": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "AND", + "path": "66" + }, + "2645": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "2647": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2648": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2649": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2650": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x20" + }, + "2652": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP4", + "path": "66" + }, + "2653": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "DUP5", + "path": "66" + }, + "2654": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2655": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x40" + }, + "2657": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2658": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2659": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2660": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 750, + 764 + ], + "op": "KECCAK256", + "path": "66" + }, + "2661": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2662": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MLOAD", + "path": "66" + }, + "2663": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0xA0" + }, + "2665": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2666": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "2667": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP4", + "path": "66" + }, + "2668": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2669": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2670": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SLOAD", + "path": "66" + }, + "2671": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "2677": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2678": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "2679": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP3", + "path": "66" + }, + "2680": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2681": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH6", + "path": "66", + "value": "0x10000000000" + }, + "2688": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2689": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "2690": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF8" + }, + "2692": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SHL", + "path": "66" + }, + "2693": { + "op": "PUSH1", + "value": "0x1" + }, + "2695": { + "op": "PUSH1", + "value": "0x1" + }, + "2697": { + "op": "PUSH1", + "value": "0xF8" + }, + "2699": { + "op": "SHL" + }, + "2700": { + "op": "SUB" + }, + "2701": { + "op": "NOT" + }, + "2702": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "2703": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP6", + "path": "66" + }, + "2704": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP3", + "path": "66" + }, + "2705": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "2706": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP6", + "path": "66" + }, + "2707": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2708": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP6", + "path": "66" + }, + "2709": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2710": { + "op": "PUSH1", + "value": "0x1" + }, + "2712": { + "op": "PUSH1", + "value": "0x30" + }, + "2714": { + "op": "SHL" + }, + "2715": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP6", + "path": "66" + }, + "2716": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "2717": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0xFF" + }, + "2719": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "2720": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "2721": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP2", + "path": "66" + }, + "2722": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "2723": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "2724": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2725": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "2726": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2727": { + "op": "PUSH1", + "value": "0x1" + }, + "2729": { + "op": "PUSH1", + "value": "0x38" + }, + "2731": { + "op": "SHL" + }, + "2732": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP5", + "path": "66" + }, + "2733": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "2734": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "2737": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "2738": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "2740": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP3", + "path": "66" + }, + "2741": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "2742": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2743": { + "op": "PUSH1", + "value": "0x1" + }, + "2745": { + "op": "PUSH1", + "value": "0x48" + }, + "2747": { + "op": "SHL" + }, + "2748": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2749": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP4", + "path": "66" + }, + "2750": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DIV", + "path": "66" + }, + "2751": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x70" + }, + "2753": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SHL", + "path": "66" + }, + "2754": { + "op": "PUSH1", + "value": "0x1" + }, + "2756": { + "op": "PUSH1", + "value": "0x1" + }, + "2758": { + "op": "PUSH1", + "value": "0x70" + }, + "2760": { + "op": "SHL" + }, + "2761": { + "op": "SUB" + }, + "2762": { + "op": "NOT" + }, + "2763": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "AND", + "path": "66" + }, + "2764": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "2766": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "DUP5", + "path": "66" + }, + "2767": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "ADD", + "path": "66" + }, + "2768": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "MSTORE", + "path": "66" + }, + "2769": { + "op": "POP" + }, + "2770": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP1", + "path": "66" + }, + "2771": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 743, + 764 + ], + "op": "SWAP2", + "path": "66" + }, + "2772": { + "fn": "AccountContextHandler.getAccountContext", + "offset": [ + 552, + 771 + ], + "op": "SWAP1", + "path": "66" + }, + "2773": { + "op": "POP" + }, + "2774": { + "fn": "AccountContextHandler.getAccountContext", + "jump": "o", + "offset": [ + 552, + 771 + ], + "op": "JUMP", + "path": "66" + }, + "2775": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1117, + 1269 + ], + "op": "JUMPDEST", + "path": "66" + }, + "2776": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1257 + ], + "op": "PUSH1", + "path": "66", + "statement": 34, + "value": "0x60" + }, + "2778": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1257 + ], + "op": "ADD", + "path": "66" + }, + "2779": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1257 + ], + "op": "MLOAD", + "path": "66" + }, + "2780": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "2783": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "AND", + "path": "66" + }, + "2784": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "ISZERO", + "path": "66" + }, + "2785": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "ISZERO", + "path": "66" + }, + "2786": { + "fn": "AccountContextHandler.isBitmapEnabled", + "offset": [ + 1226, + 1262 + ], + "op": "SWAP1", + "path": "66" + }, + "2787": { + "fn": "AccountContextHandler.isBitmapEnabled", + "jump": "o", + "offset": [ + 1117, + 1269 + ], + "op": "JUMP", + "path": "66" + }, + "2788": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4343, + 4920 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2789": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4477, + 4483 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2791": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4496, + 4514 + ], + "op": "DUP1", + "path": "30" + }, + "2792": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4516, + 4532 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2794": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4534, + 4551 + ], + "op": "DUP1", + "path": "30" + }, + "2795": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4555, + 4587 + ], + "op": "PUSH2", + "path": "30", + "value": "0xAF3" + }, + "2798": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4584, + 4586 + ], + "op": "DUP6", + "path": "30" + }, + "2799": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4555, + 4583 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12A7" + }, + "2802": { + "fn": "ERC1155Action._balanceInBitmap", + "jump": "i", + "offset": [ + 4555, + 4587 + ], + "op": "JUMP", + "path": "30" + }, + "2803": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4555, + 4587 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2804": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4495, + 4587 + ], + "op": "SWAP3", + "path": "30" + }, + "2805": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4495, + 4587 + ], + "op": "POP", + "path": "30" + }, + "2806": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4495, + 4587 + ], + "op": "SWAP3", + "path": "30" + }, + "2807": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4495, + 4587 + ], + "op": "POP", + "path": "30" + }, + "2808": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4495, + 4587 + ], + "op": "SWAP3", + "path": "30" + }, + "2809": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4495, + 4587 + ], + "op": "POP", + "path": "30" + }, + "2810": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4629, + 4645 + ], + "op": "DUP6", + "path": "30" + }, + "2811": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4625 + ], + "op": "DUP4", + "path": "30" + }, + "2812": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4645 + ], + "op": "EQ", + "path": "30" + }, + "2813": { + "branch": 293, + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4645 + ], + "op": "ISZERO", + "path": "30" + }, + "2814": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4700 + ], + "op": "DUP1", + "path": "30" + }, + "2815": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4700 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB09" + }, + "2818": { + "branch": 293, + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4700 + ], + "op": "JUMPI", + "path": "30" + }, + "2819": { + "op": "POP" + }, + "2820": { + "offset": [ + 4700, + 4701 + ], + "op": "PUSH1", + "path": "60", + "value": "0x1" + }, + "2822": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4661, + 4700 + ], + "op": "DUP2", + "path": "30" + }, + "2823": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4661, + 4700 + ], + "op": "EQ", + "path": "30" + }, + "2824": { + "branch": 294, + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4661, + 4700 + ], + "op": "ISZERO", + "path": "30" + }, + "2825": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4615, + 4700 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2826": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4598, + 4914 + ], + "op": "ISZERO", + "path": "30" + }, + "2827": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4598, + 4914 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB1A" + }, + "2830": { + "branch": 294, + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4598, + 4914 + ], + "op": "JUMPI", + "path": "30" + }, + "2831": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4796, + 4797 + ], + "op": "PUSH1", + "path": "30", + "statement": 35, + "value": "0x0" + }, + "2833": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "SWAP4", + "path": "30" + }, + "2834": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "POP", + "path": "30" + }, + "2835": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "POP", + "path": "30" + }, + "2836": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "POP", + "path": "30" + }, + "2837": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "POP", + "path": "30" + }, + "2838": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "PUSH2", + "path": "30", + "value": "0x653" + }, + "2841": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4789, + 4797 + ], + "op": "JUMP", + "path": "30" + }, + "2842": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4598, + 4914 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2843": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4835, + 4903 + ], + "op": "PUSH2", + "path": "30", + "statement": 36, + "value": "0xB25" + }, + "2846": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4873, + 4880 + ], + "op": "DUP8", + "path": "30" + }, + "2847": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4882, + 4892 + ], + "op": "DUP5", + "path": "30" + }, + "2848": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4894, + 4902 + ], + "op": "DUP5", + "path": "30" + }, + "2849": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4835, + 4872 + ], + "op": "PUSH2", + "path": "30", + "value": "0x131E" + }, + "2852": { + "fn": "ERC1155Action._balanceInBitmap", + "jump": "i", + "offset": [ + 4835, + 4903 + ], + "op": "JUMP", + "path": "30" + }, + "2853": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4835, + 4903 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2854": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "SWAP4", + "path": "30" + }, + "2855": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "POP", + "path": "30" + }, + "2856": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "POP", + "path": "30" + }, + "2857": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "POP", + "path": "30" + }, + "2858": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "POP", + "path": "30" + }, + "2859": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "PUSH2", + "path": "30", + "value": "0x653" + }, + "2862": { + "fn": "ERC1155Action._balanceInBitmap", + "offset": [ + 4828, + 4903 + ], + "op": "JUMP", + "path": "30" + }, + "2863": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14791, + 15176 + ], + "op": "JUMPDEST", + "path": "84" + }, + "2864": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14907, + 14930 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "2866": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14946, + 14976 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "2868": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14979, + 15021 + ], + "op": "PUSH2", + "path": "84", + "value": "0xB3D" + }, + "2871": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14995, + 15002 + ], + "op": "DUP5", + "path": "84" + }, + "2872": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15004, + 15020 + ], + "op": "DUP5", + "path": "84" + }, + "2873": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14979, + 14994 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1363" + }, + "2876": { + "fn": "PortfolioHandler.getSortedPortfolio", + "jump": "i", + "offset": [ + 14979, + 15021 + ], + "op": "JUMP", + "path": "84" + }, + "2877": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14979, + 15021 + ], + "op": "JUMPDEST", + "path": "84" + }, + "2878": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14946, + 15021 + ], + "op": "SWAP1", + "path": "84" + }, + "2879": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 14946, + 15021 + ], + "op": "POP", + "path": "84" + }, + "2880": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15099, + 15100 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "2882": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15082, + 15088 + ], + "op": "DUP2", + "path": "84" + }, + "2883": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15082, + 15095 + ], + "op": "MLOAD", + "path": "84" + }, + "2884": { + "branch": 386, + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15082, + 15100 + ], + "op": "GT", + "path": "84" + }, + "2885": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15078, + 15115 + ], + "op": "PUSH2", + "path": "84", + "value": "0xB4F" + }, + "2888": { + "branch": 386, + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15078, + 15115 + ], + "op": "JUMPI", + "path": "84" + }, + "2889": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15109, + 15115 + ], + "op": "SWAP1", + "path": "84", + "statement": 37 + }, + "2890": { + "op": "POP" + }, + "2891": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15102, + 15115 + ], + "op": "PUSH2", + "path": "84", + "value": "0x30C" + }, + "2894": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15102, + 15115 + ], + "op": "JUMP", + "path": "84" + }, + "2895": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15078, + 15115 + ], + "op": "JUMPDEST", + "path": "84" + }, + "2896": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15126, + 15146 + ], + "op": "PUSH2", + "path": "84", + "statement": 38, + "value": "0x653" + }, + "2899": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15139, + 15145 + ], + "op": "DUP2", + "path": "84" + }, + "2900": { + "fn": "PortfolioHandler.getSortedPortfolio", + "offset": [ + 15126, + 15138 + ], + "op": "PUSH2", + "path": "84", + "value": "0x147A" + }, + "2903": { + "fn": "PortfolioHandler.getSortedPortfolio", + "jump": "i", + "offset": [ + 15126, + 15146 + ], + "op": "JUMP", + "path": "84" + }, + "2904": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2905": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5099, + 5105 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2907": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5122, + 5140 + ], + "op": "DUP1", + "path": "30" + }, + "2908": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5142, + 5158 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2910": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5160, + 5177 + ], + "op": "DUP1", + "path": "30" + }, + "2911": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5181, + 5213 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB67" + }, + "2914": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5210, + 5212 + ], + "op": "DUP6", + "path": "30" + }, + "2915": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5181, + 5209 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12A7" + }, + "2918": { + "fn": "ERC1155Action._balanceInArray", + "jump": "i", + "offset": [ + 5181, + 5213 + ], + "op": "JUMP", + "path": "30" + }, + "2919": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5181, + 5213 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2920": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5121, + 5213 + ], + "op": "SWAP3", + "path": "30" + }, + "2921": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5121, + 5213 + ], + "op": "POP", + "path": "30" + }, + "2922": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5121, + 5213 + ], + "op": "SWAP3", + "path": "30" + }, + "2923": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5121, + 5213 + ], + "op": "POP", + "path": "30" + }, + "2924": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5121, + 5213 + ], + "op": "SWAP3", + "path": "30" + }, + "2925": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5121, + 5213 + ], + "op": "POP", + "path": "30" + }, + "2926": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5229, + 5238 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2928": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2929": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5244, + 5253 + ], + "op": "DUP7", + "path": "30" + }, + "2930": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5244, + 5260 + ], + "op": "MLOAD", + "path": "30" + }, + "2931": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5240, + 5241 + ], + "op": "DUP2", + "path": "30" + }, + "2932": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5240, + 5260 + ], + "op": "LT", + "path": "30" + }, + "2933": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "ISZERO", + "path": "30" + }, + "2934": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "PUSH2", + "path": "30", + "value": "0xBD4" + }, + "2937": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "JUMPI", + "path": "30" + }, + "2938": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5281, + 5308 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2940": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5320 + ], + "op": "DUP8", + "path": "30" + }, + "2941": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5321, + 5322 + ], + "op": "DUP3", + "path": "30" + }, + "2942": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "DUP2", + "path": "30" + }, + "2943": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "MLOAD", + "path": "30" + }, + "2944": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "DUP2", + "path": "30" + }, + "2945": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "LT", + "path": "30" + }, + "2946": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB87" + }, + "2949": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "JUMPI", + "path": "30" + }, + "2950": { + "dev": "Index out of range", + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "INVALID", + "path": "30" + }, + "2951": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2952": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2954": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "MUL", + "path": "30" + }, + "2955": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2957": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "ADD", + "path": "30" + }, + "2958": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "ADD", + "path": "30" + }, + "2959": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5311, + 5323 + ], + "op": "MLOAD", + "path": "30" + }, + "2960": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5281, + 5323 + ], + "op": "SWAP1", + "path": "30" + }, + "2961": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5281, + 5323 + ], + "op": "POP", + "path": "30" + }, + "2962": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5378, + 5388 + ], + "op": "DUP5", + "path": "30" + }, + "2963": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5363 + ], + "op": "DUP2", + "path": "30" + }, + "2964": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5374 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "2966": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5374 + ], + "op": "ADD", + "path": "30" + }, + "2967": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5374 + ], + "op": "MLOAD", + "path": "30" + }, + "2968": { + "branch": 295, + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5388 + ], + "op": "EQ", + "path": "30" + }, + "2969": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5434 + ], + "op": "DUP1", + "path": "30" + }, + "2970": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5434 + ], + "op": "ISZERO", + "path": "30" + }, + "2971": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5434 + ], + "op": "PUSH2", + "path": "30", + "value": "0xBA7" + }, + "2974": { + "branch": 295, + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5434 + ], + "op": "JUMPI", + "path": "30" + }, + "2975": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5434 + ], + "op": "POP", + "path": "30" + }, + "2976": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5426, + 5434 + ], + "op": "DUP4", + "path": "30" + }, + "2977": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5408, + 5413 + ], + "op": "DUP2", + "path": "30" + }, + "2978": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5408, + 5422 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "2980": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5408, + 5422 + ], + "op": "ADD", + "path": "30" + }, + "2981": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5408, + 5422 + ], + "op": "MLOAD", + "path": "30" + }, + "2982": { + "branch": 296, + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5408, + 5434 + ], + "op": "EQ", + "path": "30" + }, + "2983": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5434 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2984": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5482 + ], + "op": "DUP1", + "path": "30" + }, + "2985": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5482 + ], + "op": "ISZERO", + "path": "30" + }, + "2986": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5482 + ], + "op": "PUSH2", + "path": "30", + "value": "0xBB6" + }, + "2989": { + "branch": 296, + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5482 + ], + "op": "JUMPI", + "path": "30" + }, + "2990": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5482 + ], + "op": "POP", + "path": "30" + }, + "2991": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5473, + 5482 + ], + "op": "DUP3", + "path": "30" + }, + "2992": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5454, + 5459 + ], + "op": "DUP2", + "path": "30" + }, + "2993": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5454, + 5469 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "2995": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5454, + 5469 + ], + "op": "ADD", + "path": "30" + }, + "2996": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5454, + 5469 + ], + "op": "MLOAD", + "path": "30" + }, + "2997": { + "branch": 297, + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5454, + 5482 + ], + "op": "EQ", + "path": "30" + }, + "2998": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5358, + 5482 + ], + "op": "JUMPDEST", + "path": "30" + }, + "2999": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5337, + 5518 + ], + "op": "ISZERO", + "path": "30" + }, + "3000": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5337, + 5518 + ], + "op": "PUSH2", + "path": "30", + "value": "0xBCB" + }, + "3003": { + "branch": 297, + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5337, + 5518 + ], + "op": "JUMPI", + "path": "30" + }, + "3004": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5504, + 5518 + ], + "op": "PUSH1", + "path": "30", + "statement": 39, + "value": "0x60" + }, + "3006": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5504, + 5518 + ], + "op": "ADD", + "path": "30" + }, + "3007": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5504, + 5518 + ], + "op": "MLOAD", + "path": "30" + }, + "3008": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5504, + 5518 + ], + "op": "SWAP5", + "path": "30" + }, + "3009": { + "op": "POP" + }, + "3010": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5497, + 5518 + ], + "op": "PUSH2", + "path": "30", + "value": "0x30C" + }, + "3013": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5497, + 5518 + ], + "op": "SWAP4", + "path": "30" + }, + "3014": { + "op": "POP" + }, + "3015": { + "op": "POP" + }, + "3016": { + "op": "POP" + }, + "3017": { + "op": "POP" + }, + "3018": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5497, + 5518 + ], + "op": "JUMP", + "path": "30" + }, + "3019": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5337, + 5518 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3020": { + "op": "POP" + }, + "3021": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5262, + 5265 + ], + "op": "PUSH1", + "path": "30", + "statement": 40, + "value": "0x1" + }, + "3023": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5262, + 5265 + ], + "op": "ADD", + "path": "30" + }, + "3024": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "PUSH2", + "path": "30", + "value": "0xB70" + }, + "3027": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "JUMP", + "path": "30" + }, + "3028": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3029": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 5224, + 5529 + ], + "op": "POP", + "path": "30" + }, + "3030": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "POP", + "path": "30" + }, + "3031": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "POP", + "path": "30" + }, + "3032": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "POP", + "path": "30" + }, + "3033": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "SWAP3", + "path": "30" + }, + "3034": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "SWAP2", + "path": "30" + }, + "3035": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "POP", + "path": "30" + }, + "3036": { + "fn": "ERC1155Action._balanceInArray", + "offset": [ + 4980, + 5535 + ], + "op": "POP", + "path": "30" + }, + "3037": { + "fn": "ERC1155Action._balanceInArray", + "jump": "o", + "offset": [ + 4980, + 5535 + ], + "op": "JUMP", + "path": "30" + }, + "3038": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10399, + 11041 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3039": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10559, + 10561 + ], + "op": "DUP1", + "path": "30", + "statement": 41 + }, + "3040": { + "op": "PUSH1", + "value": "0x1" + }, + "3042": { + "op": "PUSH1", + "value": "0x1" + }, + "3044": { + "op": "PUSH1", + "value": "0xA0" + }, + "3046": { + "op": "SHL" + }, + "3047": { + "op": "SUB" + }, + "3048": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10561 + ], + "op": "AND", + "path": "30" + }, + "3049": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10555 + ], + "op": "DUP3", + "path": "30" + }, + "3050": { + "op": "PUSH1", + "value": "0x1" + }, + "3052": { + "op": "PUSH1", + "value": "0x1" + }, + "3054": { + "op": "PUSH1", + "value": "0xA0" + }, + "3056": { + "op": "SHL" + }, + "3057": { + "op": "SUB" + }, + "3058": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10561 + ], + "op": "AND", + "path": "30" + }, + "3059": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10561 + ], + "op": "EQ", + "path": "30" + }, + "3060": { + "branch": 298, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10561 + ], + "op": "ISZERO", + "path": "30" + }, + "3061": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10581 + ], + "op": "DUP1", + "path": "30" + }, + "3062": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10581 + ], + "op": "ISZERO", + "path": "30" + }, + "3063": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10581 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC08" + }, + "3066": { + "branch": 298, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10581 + ], + "op": "JUMPI", + "path": "30" + }, + "3067": { + "op": "POP" + }, + "3068": { + "op": "PUSH1", + "value": "0x1" + }, + "3070": { + "op": "PUSH1", + "value": "0x1" + }, + "3072": { + "op": "PUSH1", + "value": "0xA0" + }, + "3074": { + "op": "SHL" + }, + "3075": { + "op": "SUB" + }, + "3076": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10565, + 10581 + ], + "op": "DUP2", + "path": "30" + }, + "3077": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10565, + 10581 + ], + "op": "AND", + "path": "30" + }, + "3078": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10565, + 10581 + ], + "op": "ISZERO", + "path": "30" + }, + "3079": { + "branch": 299, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10565, + 10581 + ], + "op": "ISZERO", + "path": "30" + }, + "3080": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10581 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3081": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10604 + ], + "op": "DUP1", + "path": "30" + }, + "3082": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10604 + ], + "op": "ISZERO", + "path": "30" + }, + "3083": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10604 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC1D" + }, + "3086": { + "branch": 299, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10604 + ], + "op": "JUMPI", + "path": "30" + }, + "3087": { + "op": "POP" + }, + "3088": { + "op": "PUSH1", + "value": "0x1" + }, + "3090": { + "op": "PUSH1", + "value": "0x1" + }, + "3092": { + "op": "PUSH1", + "value": "0xA0" + }, + "3094": { + "op": "SHL" + }, + "3095": { + "op": "SUB" + }, + "3096": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10585, + 10604 + ], + "op": "DUP2", + "path": "30" + }, + "3097": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10585, + 10604 + ], + "op": "AND", + "path": "30" + }, + "3098": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10599, + 10603 + ], + "op": "ADDRESS", + "path": "30" + }, + "3099": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10585, + 10604 + ], + "op": "EQ", + "path": "30" + }, + "3100": { + "branch": 300, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10585, + 10604 + ], + "op": "ISZERO", + "path": "30" + }, + "3101": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10551, + 10604 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3102": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC39" + }, + "3105": { + "branch": 300, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "JUMPI", + "path": "30" + }, + "3106": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3108": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "MLOAD", + "path": "30" + }, + "3109": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "3113": { + "op": "PUSH1", + "value": "0xE5" + }, + "3115": { + "op": "SHL" + }, + "3116": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "DUP2", + "path": "30" + }, + "3117": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "MSTORE", + "path": "30" + }, + "3118": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "3120": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "ADD", + "path": "30" + }, + "3121": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "3124": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "SWAP1", + "path": "30" + }, + "3125": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "PUSH2", + "path": "30", + "value": "0x366C" + }, + "3128": { + "fn": "ERC1155Action._validateAccounts", + "jump": "i", + "offset": [ + 10543, + 10624 + ], + "op": "JUMP", + "path": "30" + }, + "3129": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10543, + 10624 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3130": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10687 + ], + "op": "CALLER", + "path": "30", + "statement": 42 + }, + "3131": { + "op": "PUSH1", + "value": "0x1" + }, + "3133": { + "op": "PUSH1", + "value": "0x1" + }, + "3135": { + "op": "PUSH1", + "value": "0xA0" + }, + "3137": { + "op": "SHL" + }, + "3138": { + "op": "SUB" + }, + "3139": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10695 + ], + "op": "DUP4", + "path": "30" + }, + "3140": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10695 + ], + "op": "AND", + "path": "30" + }, + "3141": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10695 + ], + "op": "EQ", + "path": "30" + }, + "3142": { + "branch": 301, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10695 + ], + "op": "DUP1", + "path": "30" + }, + "3143": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10733 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC55" + }, + "3146": { + "branch": 301, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10733 + ], + "op": "JUMPI", + "path": "30" + }, + "3147": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10677, + 10733 + ], + "op": "POP", + "path": "30" + }, + "3148": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10699, + 10733 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC55" + }, + "3151": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10716, + 10720 + ], + "op": "DUP3", + "path": "30" + }, + "3152": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10722, + 10732 + ], + "op": "CALLER", + "path": "30" + }, + "3153": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10699, + 10715 + ], + "op": "PUSH2", + "path": "30", + "value": "0x7D6" + }, + "3156": { + "fn": "ERC1155Action._validateAccounts", + "jump": "i", + "offset": [ + 10699, + 10733 + ], + "op": "JUMP", + "path": "30" + }, + "3157": { + "branch": 302, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10699, + 10733 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3158": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC71" + }, + "3161": { + "branch": 302, + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "JUMPI", + "path": "30" + }, + "3162": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3164": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "MLOAD", + "path": "30" + }, + "3165": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "3169": { + "op": "PUSH1", + "value": "0xE5" + }, + "3171": { + "op": "SHL" + }, + "3172": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "DUP2", + "path": "30" + }, + "3173": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "MSTORE", + "path": "30" + }, + "3174": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "3176": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "ADD", + "path": "30" + }, + "3177": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "3180": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "SWAP1", + "path": "30" + }, + "3181": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "PUSH2", + "path": "30", + "value": "0x36C0" + }, + "3184": { + "fn": "ERC1155Action._validateAccounts", + "jump": "i", + "offset": [ + 10669, + 10750 + ], + "op": "JUMP", + "path": "30" + }, + "3185": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10669, + 10750 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3186": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 11009, + 11034 + ], + "op": "PUSH2", + "path": "30", + "statement": 43, + "value": "0xC7A" + }, + "3189": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 11029, + 11033 + ], + "op": "DUP3", + "path": "30" + }, + "3190": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 11009, + 11028 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1638" + }, + "3193": { + "fn": "ERC1155Action._validateAccounts", + "jump": "i", + "offset": [ + 11009, + 11034 + ], + "op": "JUMP", + "path": "30" + }, + "3194": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 11009, + 11034 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3195": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10399, + 11041 + ], + "op": "POP", + "path": "30" + }, + "3196": { + "fn": "ERC1155Action._validateAccounts", + "offset": [ + 10399, + 11041 + ], + "op": "POP", + "path": "30" + }, + "3197": { + "fn": "ERC1155Action._validateAccounts", + "jump": "o", + "offset": [ + 10399, + 11041 + ], + "op": "JUMP", + "path": "30" + }, + "3198": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11558, + 13080 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3199": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11682, + 11705 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "3201": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11707, + 11711 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3203": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11735, + 11763 + ], + "op": "DUP5", + "path": "30", + "statement": 44 + }, + "3204": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11735, + 11763 + ], + "op": "DUP4", + "path": "30" + }, + "3205": { + "branch": 303, + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11735, + 11763 + ], + "op": "EQ", + "path": "30" + }, + "3206": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11727, + 11764 + ], + "op": "PUSH2", + "path": "30", + "value": "0xC8E" + }, + "3209": { + "branch": 303, + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11727, + 11764 + ], + "op": "JUMPI", + "path": "30" + }, + "3210": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11727, + 11764 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3212": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11727, + 11764 + ], + "op": "DUP1", + "path": "30" + }, + "3213": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11727, + 11764 + ], + "op": "REVERT", + "path": "30" + }, + "3214": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11727, + 11764 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3215": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11774, + 11797 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3217": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11774, + 11797 + ], + "op": "DUP1", + "path": "30" + }, + "3218": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11869, + 11872 + ], + "op": "DUP7", + "path": "30" + }, + "3219": { + "op": "PUSH1", + "value": "0x1" + }, + "3221": { + "op": "PUSH1", + "value": "0x1" + }, + "3223": { + "op": "PUSH1", + "value": "0x40" + }, + "3225": { + "op": "SHL" + }, + "3226": { + "op": "SUB" + }, + "3227": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP2", + "path": "30" + }, + "3228": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "GT", + "path": "30" + }, + "3229": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP1", + "path": "30" + }, + "3230": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "ISZERO", + "path": "30" + }, + "3231": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH2", + "path": "30", + "value": "0xCA7" + }, + "3234": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPI", + "path": "30" + }, + "3235": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3237": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP1", + "path": "30" + }, + "3238": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "REVERT", + "path": "30" + }, + "3239": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3240": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "POP", + "path": "30" + }, + "3241": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3243": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "MLOAD", + "path": "30" + }, + "3244": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "SWAP1", + "path": "30" + }, + "3245": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP1", + "path": "30" + }, + "3246": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP3", + "path": "30" + }, + "3247": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "MSTORE", + "path": "30" + }, + "3248": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP1", + "path": "30" + }, + "3249": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3251": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "MUL", + "path": "30" + }, + "3252": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3254": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "ADD", + "path": "30" + }, + "3255": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP3", + "path": "30" + }, + "3256": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "ADD", + "path": "30" + }, + "3257": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3259": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "MSTORE", + "path": "30" + }, + "3260": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP1", + "path": "30" + }, + "3261": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "ISZERO", + "path": "30" + }, + "3262": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH2", + "path": "30", + "value": "0xCE1" + }, + "3265": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPI", + "path": "30" + }, + "3266": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP2", + "path": "30" + }, + "3267": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3269": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "ADD", + "path": "30" + }, + "3270": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3271": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH2", + "path": "30", + "value": "0xCCE" + }, + "3274": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E5F" + }, + "3277": { + "fn": "ERC1155Action._decodeToAssets", + "jump": "i", + "offset": [ + 11848, + 11880 + ], + "op": "JUMP", + "path": "30" + }, + "3278": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3279": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP2", + "path": "30" + }, + "3280": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "MSTORE", + "path": "30" + }, + "3281": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3283": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "ADD", + "path": "30" + }, + "3284": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "SWAP1", + "path": "30" + }, + "3285": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1" + }, + "3287": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "SWAP1", + "path": "30" + }, + "3288": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "SUB", + "path": "30" + }, + "3289": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "SWAP1", + "path": "30" + }, + "3290": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "DUP2", + "path": "30" + }, + "3291": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "PUSH2", + "path": "30", + "value": "0xCC6" + }, + "3294": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPI", + "path": "30" + }, + "3295": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "SWAP1", + "path": "30" + }, + "3296": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "POP", + "path": "30" + }, + "3297": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3298": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11848, + 11880 + ], + "op": "POP", + "path": "30" + }, + "3299": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11815, + 11880 + ], + "op": "SWAP1", + "path": "30" + }, + "3300": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11815, + 11880 + ], + "op": "POP", + "path": "30" + }, + "3301": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11896, + 11905 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3303": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3304": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11907, + 11921 + ], + "op": "DUP8", + "path": "30" + }, + "3305": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11907, + 11921 + ], + "op": "DUP2", + "path": "30" + }, + "3306": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11907, + 11921 + ], + "op": "LT", + "path": "30" + }, + "3307": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "ISZERO", + "path": "30" + }, + "3308": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDBB" + }, + "3311": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "JUMPI", + "path": "30" + }, + "3312": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12045, + 12050 + ], + "op": "DUP1", + "path": "30" + }, + "3313": { + "branch": 304, + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12045, + 12050 + ], + "op": "ISZERO", + "path": "30" + }, + "3314": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12041, + 12102 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD3B" + }, + "3317": { + "branch": 304, + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12041, + 12102 + ], + "op": "JUMPI", + "path": "30" + }, + "3318": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12072 + ], + "op": "DUP9", + "path": "30", + "statement": 45 + }, + "3319": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12072 + ], + "op": "DUP9", + "path": "30" + }, + "3320": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12077, + 12078 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1" + }, + "3322": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12073, + 12074 + ], + "op": "DUP4", + "path": "30" + }, + "3323": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12073, + 12078 + ], + "op": "SUB", + "path": "30" + }, + "3324": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "DUP2", + "path": "30" + }, + "3325": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "DUP2", + "path": "30" + }, + "3326": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "LT", + "path": "30" + }, + "3327": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD04" + }, + "3330": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "JUMPI", + "path": "30" + }, + "3331": { + "dev": "Index out of range", + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "INVALID", + "path": "30" + }, + "3332": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3333": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "SWAP1", + "path": "30" + }, + "3334": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "POP", + "path": "30" + }, + "3335": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3337": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "MUL", + "path": "30" + }, + "3338": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "ADD", + "path": "30" + }, + "3339": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12069, + 12079 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "3340": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12063 + ], + "op": "DUP10", + "path": "30" + }, + "3341": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12063 + ], + "op": "DUP10", + "path": "30" + }, + "3342": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12064, + 12065 + ], + "op": "DUP4", + "path": "30" + }, + "3343": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "DUP2", + "path": "30" + }, + "3344": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "DUP2", + "path": "30" + }, + "3345": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "LT", + "path": "30" + }, + "3346": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD17" + }, + "3349": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "JUMPI", + "path": "30" + }, + "3350": { + "dev": "Index out of range", + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "INVALID", + "path": "30" + }, + "3351": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3352": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "SWAP1", + "path": "30" + }, + "3353": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "POP", + "path": "30" + }, + "3354": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3356": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "MUL", + "path": "30" + }, + "3357": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "ADD", + "path": "30" + }, + "3358": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12066 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "3359": { + "branch": 305, + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12060, + 12079 + ], + "op": "GT", + "path": "30" + }, + "3360": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD3B" + }, + "3363": { + "branch": 305, + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "JUMPI", + "path": "30" + }, + "3364": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3366": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "MLOAD", + "path": "30" + }, + "3367": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "3371": { + "op": "PUSH1", + "value": "0xE5" + }, + "3373": { + "op": "SHL" + }, + "3374": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "DUP2", + "path": "30" + }, + "3375": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "MSTORE", + "path": "30" + }, + "3376": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "3378": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "ADD", + "path": "30" + }, + "3379": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "3382": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "SWAP1", + "path": "30" + }, + "3383": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "PUSH2", + "path": "30", + "value": "0x378D" + }, + "3386": { + "fn": "ERC1155Action._decodeToAssets", + "jump": "i", + "offset": [ + 12052, + 12102 + ], + "op": "JUMP", + "path": "30" + }, + "3387": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12052, + 12102 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3388": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12117, + 12144 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3390": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12153 + ], + "op": "DUP3", + "path": "30" + }, + "3391": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12154, + 12155 + ], + "op": "DUP3", + "path": "30" + }, + "3392": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "DUP2", + "path": "30" + }, + "3393": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "MLOAD", + "path": "30" + }, + "3394": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "DUP2", + "path": "30" + }, + "3395": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "LT", + "path": "30" + }, + "3396": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD49" + }, + "3399": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "JUMPI", + "path": "30" + }, + "3400": { + "dev": "Index out of range", + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "INVALID", + "path": "30" + }, + "3401": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3402": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3404": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "MUL", + "path": "30" + }, + "3405": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3407": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "ADD", + "path": "30" + }, + "3408": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "ADD", + "path": "30" + }, + "3409": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12147, + 12156 + ], + "op": "MLOAD", + "path": "30" + }, + "3410": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12117, + 12156 + ], + "op": "SWAP1", + "path": "30" + }, + "3411": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12117, + 12156 + ], + "op": "POP", + "path": "30" + }, + "3412": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12224, + 12260 + ], + "op": "PUSH2", + "path": "30", + "statement": 46, + "value": "0xD6E" + }, + "3415": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12256 + ], + "op": "DUP11", + "path": "30" + }, + "3416": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12256 + ], + "op": "DUP11", + "path": "30" + }, + "3417": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12257, + 12258 + ], + "op": "DUP5", + "path": "30" + }, + "3418": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "DUP2", + "path": "30" + }, + "3419": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "DUP2", + "path": "30" + }, + "3420": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "LT", + "path": "30" + }, + "3421": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD62" + }, + "3424": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "JUMPI", + "path": "30" + }, + "3425": { + "dev": "Index out of range", + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "INVALID", + "path": "30" + }, + "3426": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3427": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "SWAP1", + "path": "30" + }, + "3428": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "POP", + "path": "30" + }, + "3429": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3431": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "MUL", + "path": "30" + }, + "3432": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "ADD", + "path": "30" + }, + "3433": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12253, + 12259 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "3434": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12224, + 12252 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12A7" + }, + "3437": { + "fn": "ERC1155Action._decodeToAssets", + "jump": "i", + "offset": [ + 12224, + 12260 + ], + "op": "JUMP", + "path": "30" + }, + "3438": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12224, + 12260 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3439": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12205, + 12220 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3441": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12205, + 12220 + ], + "op": "DUP5", + "path": "30" + }, + "3442": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12205, + 12220 + ], + "op": "ADD", + "path": "30" + }, + "3443": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "MSTORE", + "path": "30" + }, + "3444": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12189, + 12203 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3446": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12189, + 12203 + ], + "op": "DUP4", + "path": "30" + }, + "3447": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12189, + 12203 + ], + "op": "ADD", + "path": "30" + }, + "3448": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "DUP2", + "path": "30" + }, + "3449": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "SWAP1", + "path": "30" + }, + "3450": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "MSTORE", + "path": "30" + }, + "3451": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "DUP2", + "path": "30" + }, + "3452": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "DUP4", + "path": "30" + }, + "3453": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "MSTORE", + "path": "30" + }, + "3454": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12275, + 12347 + ], + "op": "PUSH2", + "path": "30", + "statement": 47, + "value": "0xD88" + }, + "3457": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12275, + 12347 + ], + "op": "SWAP2", + "path": "30" + }, + "3458": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12170, + 12260 + ], + "op": "SWAP1", + "path": "30" + }, + "3459": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12331, + 12346 + ], + "op": "TIMESTAMP", + "path": "30" + }, + "3460": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12275, + 12296 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12DA" + }, + "3463": { + "fn": "ERC1155Action._decodeToAssets", + "jump": "i", + "offset": [ + 12275, + 12347 + ], + "op": "JUMP", + "path": "30" + }, + "3464": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12275, + 12347 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3465": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12790 + ], + "op": "DUP8", + "path": "30", + "statement": 48 + }, + "3466": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12790 + ], + "op": "DUP8", + "path": "30" + }, + "3467": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12791, + 12792 + ], + "op": "DUP4", + "path": "30" + }, + "3468": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "DUP2", + "path": "30" + }, + "3469": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "DUP2", + "path": "30" + }, + "3470": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "LT", + "path": "30" + }, + "3471": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "PUSH2", + "path": "30", + "value": "0xD94" + }, + "3474": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "JUMPI", + "path": "30" + }, + "3475": { + "dev": "Index out of range", + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "INVALID", + "path": "30" + }, + "3476": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3477": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3479": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "MUL", + "path": "30" + }, + "3480": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "SWAP2", + "path": "30" + }, + "3481": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "SWAP1", + "path": "30" + }, + "3482": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "SWAP2", + "path": "30" + }, + "3483": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "ADD", + "path": "30" + }, + "3484": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12783, + 12793 + ], + "op": "CALLDATALOAD", + "path": "30" + }, + "3485": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12759, + 12773 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "3487": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12759, + 12773 + ], + "op": "DUP4", + "path": "30" + }, + "3488": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12759, + 12773 + ], + "op": "ADD", + "path": "30" + }, + "3489": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12759, + 12794 + ], + "op": "DUP2", + "path": "30" + }, + "3490": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12759, + 12794 + ], + "op": "SWAP1", + "path": "30" + }, + "3491": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12759, + 12794 + ], + "op": "MSTORE", + "path": "30" + }, + "3492": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12989, + 12990 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3494": { + "op": "SGT" + }, + "3495": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12968, + 13017 + ], + "op": "ISZERO", + "path": "30" + }, + "3496": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12968, + 13017 + ], + "op": "SWAP1", + "path": "30" + }, + "3497": { + "op": "POP" + }, + "3498": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12968, + 13017 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDB2" + }, + "3501": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12968, + 13017 + ], + "op": "JUMPI", + "path": "30" + }, + "3502": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 13013, + 13017 + ], + "op": "PUSH1", + "path": "30", + "statement": 49, + "value": "0x1" + }, + "3504": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12992, + 13017 + ], + "op": "SWAP4", + "path": "30" + }, + "3505": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12992, + 13017 + ], + "op": "POP", + "path": "30" + }, + "3506": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 12968, + 13017 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3507": { + "op": "POP" + }, + "3508": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11923, + 11926 + ], + "op": "PUSH1", + "path": "30", + "statement": 50, + "value": "0x1" + }, + "3510": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11923, + 11926 + ], + "op": "ADD", + "path": "30" + }, + "3511": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "PUSH2", + "path": "30", + "value": "0xCE7" + }, + "3514": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "JUMP", + "path": "30" + }, + "3515": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11891, + 13028 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3516": { + "op": "POP" + }, + "3517": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 13046, + 13052 + ], + "op": "SWAP8", + "path": "30", + "statement": 51 + }, + "3518": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 13054, + 13072 + ], + "op": "SWAP1", + "path": "30" + }, + "3519": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 13054, + 13072 + ], + "op": "SWAP7", + "path": "30" + }, + "3520": { + "op": "POP" + }, + "3521": { + "fn": "ERC1155Action._decodeToAssets", + "offset": [ + 11558, + 13080 + ], + "op": "SWAP5", + "path": "30" + }, + "3522": { + "op": "POP" + }, + "3523": { + "op": "POP" + }, + "3524": { + "op": "POP" + }, + "3525": { + "op": "POP" + }, + "3526": { + "op": "POP" + }, + "3527": { + "fn": "ERC1155Action._decodeToAssets", + "jump": "o", + "offset": [ + 11558, + 13080 + ], + "op": "JUMP", + "path": "30" + }, + "3528": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14050, + 15333 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3529": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14175, + 14196 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDD0" + }, + "3532": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14175, + 14196 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E31" + }, + "3535": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14175, + 14196 + ], + "op": "JUMP", + "path": "30" + }, + "3536": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14175, + 14196 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3537": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14198, + 14219 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDD8" + }, + "3540": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14198, + 14219 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2E31" + }, + "3543": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14198, + 14219 + ], + "op": "JUMP", + "path": "30" + }, + "3544": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14198, + 14219 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3545": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14422, + 14453 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3547": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14456, + 14499 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDE3" + }, + "3550": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14496, + 14498 + ], + "op": "DUP6", + "path": "30" + }, + "3551": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14456, + 14495 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA36" + }, + "3554": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14456, + 14499 + ], + "op": "JUMP", + "path": "30" + }, + "3555": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14456, + 14499 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3556": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14422, + 14499 + ], + "op": "SWAP1", + "path": "30" + }, + "3557": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14422, + 14499 + ], + "op": "POP", + "path": "30" + }, + "3558": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14513, + 14541 + ], + "op": "PUSH2", + "path": "30", + "value": "0xDEE" + }, + "3561": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14513, + 14522 + ], + "op": "DUP2", + "path": "30" + }, + "3562": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14513, + 14539 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1683" + }, + "3565": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14513, + 14541 + ], + "op": "JUMP", + "path": "30" + }, + "3566": { + "branch": 306, + "fn": "ERC1155Action._transfer", + "offset": [ + 14513, + 14541 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3567": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14509, + 14629 + ], + "op": "ISZERO", + "path": "30" + }, + "3568": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14509, + 14629 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE7F" + }, + "3571": { + "branch": 306, + "fn": "ERC1155Action._transfer", + "offset": [ + 14509, + 14629 + ], + "op": "JUMPI", + "path": "30" + }, + "3572": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "statement": 52, + "value": "0x40" + }, + "3574": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "MLOAD", + "path": "30" + }, + "3575": { + "op": "PUSH4", + "value": "0x37B5FC21" + }, + "3580": { + "op": "PUSH1", + "value": "0xE1" + }, + "3582": { + "op": "SHL" + }, + "3583": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP2", + "path": "30" + }, + "3584": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "MSTORE", + "path": "30" + }, + "3585": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14589 + ], + "op": "PUSH20", + "path": "30", + "value": "0x0" + }, + "3606": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14589 + ], + "op": "SWAP1", + "path": "30" + }, + "3607": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14603 + ], + "op": "PUSH4", + "path": "30", + "value": "0x6F6BF842" + }, + "3612": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14603 + ], + "op": "SWAP1", + "path": "30" + }, + "3613": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE2C" + }, + "3616": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "SWAP1", + "path": "30" + }, + "3617": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14604, + 14606 + ], + "op": "DUP9", + "path": "30" + }, + "3618": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14604, + 14606 + ], + "op": "SWAP1", + "path": "30" + }, + "3619": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14608, + 14617 + ], + "op": "DUP6", + "path": "30" + }, + "3620": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14608, + 14617 + ], + "op": "SWAP1", + "path": "30" + }, + "3621": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "3623": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ADD", + "path": "30" + }, + "3624": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH2", + "path": "30", + "value": "0x34C1" + }, + "3627": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14569, + 14618 + ], + "op": "JUMP", + "path": "30" + }, + "3628": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3629": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0xA0" + }, + "3631": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3633": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "MLOAD", + "path": "30" + }, + "3634": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3635": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP4", + "path": "30" + }, + "3636": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "SUB", + "path": "30" + }, + "3637": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP2", + "path": "30" + }, + "3638": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP7", + "path": "30" + }, + "3639": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3640": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "EXTCODESIZE", + "path": "30" + }, + "3641": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ISZERO", + "path": "30" + }, + "3642": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3643": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ISZERO", + "path": "30" + }, + "3644": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE44" + }, + "3647": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "JUMPI", + "path": "30" + }, + "3648": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3650": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3651": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "REVERT", + "path": "30" + }, + "3652": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3653": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3654": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "GAS", + "path": "30" + }, + "3655": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DELEGATECALL", + "path": "30" + }, + "3656": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ISZERO", + "path": "30" + }, + "3657": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3658": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ISZERO", + "path": "30" + }, + "3659": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE58" + }, + "3662": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "JUMPI", + "path": "30" + }, + "3663": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "3664": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3666": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3667": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "3668": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "3669": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3671": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "REVERT", + "path": "30" + }, + "3672": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3673": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3674": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3675": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3676": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3677": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3679": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "MLOAD", + "path": "30" + }, + "3680": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "3681": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "3683": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "NOT", + "path": "30" + }, + "3684": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "3686": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP3", + "path": "30" + }, + "3687": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ADD", + "path": "30" + }, + "3688": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "AND", + "path": "30" + }, + "3689": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP3", + "path": "30" + }, + "3690": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ADD", + "path": "30" + }, + "3691": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP1", + "path": "30" + }, + "3692": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3694": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "MSTORE", + "path": "30" + }, + "3695": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3696": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "DUP2", + "path": "30" + }, + "3697": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "ADD", + "path": "30" + }, + "3698": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "SWAP1", + "path": "30" + }, + "3699": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH2", + "path": "30", + "value": "0xE7C" + }, + "3702": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "SWAP2", + "path": "30" + }, + "3703": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "SWAP1", + "path": "30" + }, + "3704": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "PUSH2", + "path": "30", + "value": "0x32A6" + }, + "3707": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14569, + 14618 + ], + "op": "JUMP", + "path": "30" + }, + "3708": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14569, + 14618 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3709": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14557, + 14618 + ], + "op": "SWAP1", + "path": "30" + }, + "3710": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14557, + 14618 + ], + "op": "POP", + "path": "30" + }, + "3711": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14509, + 14629 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3712": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14650, + 14708 + ], + "op": "PUSH2", + "path": "30", + "statement": 53, + "value": "0xE8A" + }, + "3715": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14686, + 14688 + ], + "op": "DUP6", + "path": "30" + }, + "3716": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14690, + 14699 + ], + "op": "DUP3", + "path": "30" + }, + "3717": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14701, + 14707 + ], + "op": "DUP7", + "path": "30" + }, + "3718": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14650, + 14685 + ], + "op": "PUSH2", + "path": "30", + "value": "0x16D7" + }, + "3721": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14650, + 14708 + ], + "op": "JUMP", + "path": "30" + }, + "3722": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14650, + 14708 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3723": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14638, + 14708 + ], + "op": "SWAP1", + "path": "30" + }, + "3724": { + "op": "POP" + }, + "3725": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14718, + 14749 + ], + "op": "PUSH2", + "path": "30", + "statement": 54, + "value": "0xE96" + }, + "3728": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14638, + 14708 + ], + "op": "DUP2", + "path": "30" + }, + "3729": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14746, + 14748 + ], + "op": "DUP7", + "path": "30" + }, + "3730": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14718, + 14745 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1758" + }, + "3733": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14718, + 14749 + ], + "op": "JUMP", + "path": "30" + }, + "3734": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14718, + 14749 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3735": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14832, + 14883 + ], + "op": "PUSH2", + "path": "30", + "statement": 55, + "value": "0xE9F" + }, + "3738": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14876, + 14882 + ], + "op": "DUP5", + "path": "30" + }, + "3739": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14832, + 14875 + ], + "op": "PUSH2", + "path": "30", + "value": "0x185C" + }, + "3742": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14832, + 14883 + ], + "op": "JUMP", + "path": "30" + }, + "3743": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14832, + 14883 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3744": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14935, + 14968 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3746": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14971, + 15016 + ], + "op": "PUSH2", + "path": "30", + "value": "0xEAA" + }, + "3749": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15011, + 15015 + ], + "op": "DUP8", + "path": "30" + }, + "3750": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14971, + 15010 + ], + "op": "PUSH2", + "path": "30", + "value": "0xA36" + }, + "3753": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 14971, + 15016 + ], + "op": "JUMP", + "path": "30" + }, + "3754": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14971, + 15016 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3755": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14935, + 15016 + ], + "op": "SWAP1", + "path": "30" + }, + "3756": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14935, + 15016 + ], + "op": "POP", + "path": "30" + }, + "3757": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15030, + 15060 + ], + "op": "PUSH2", + "path": "30", + "value": "0xEB5" + }, + "3760": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15030, + 15041 + ], + "op": "DUP2", + "path": "30" + }, + "3761": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15030, + 15058 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1683" + }, + "3764": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 15030, + 15060 + ], + "op": "JUMP", + "path": "30" + }, + "3765": { + "branch": 307, + "fn": "ERC1155Action._transfer", + "offset": [ + 15030, + 15060 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3766": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15026, + 15154 + ], + "op": "ISZERO", + "path": "30" + }, + "3767": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15026, + 15154 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF46" + }, + "3770": { + "branch": 307, + "fn": "ERC1155Action._transfer", + "offset": [ + 15026, + 15154 + ], + "op": "JUMPI", + "path": "30" + }, + "3771": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "statement": 56, + "value": "0x40" + }, + "3773": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "MLOAD", + "path": "30" + }, + "3774": { + "op": "PUSH4", + "value": "0x37B5FC21" + }, + "3779": { + "op": "PUSH1", + "value": "0xE1" + }, + "3781": { + "op": "SHL" + }, + "3782": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP2", + "path": "30" + }, + "3783": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "MSTORE", + "path": "30" + }, + "3784": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15110 + ], + "op": "PUSH20", + "path": "30", + "value": "0x0" + }, + "3805": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15110 + ], + "op": "SWAP1", + "path": "30" + }, + "3806": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15124 + ], + "op": "PUSH4", + "path": "30", + "value": "0x6F6BF842" + }, + "3811": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15124 + ], + "op": "SWAP1", + "path": "30" + }, + "3812": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH2", + "path": "30", + "value": "0xEF3" + }, + "3815": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "SWAP1", + "path": "30" + }, + "3816": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15125, + 15129 + ], + "op": "DUP11", + "path": "30" + }, + "3817": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15125, + 15129 + ], + "op": "SWAP1", + "path": "30" + }, + "3818": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15131, + 15142 + ], + "op": "DUP6", + "path": "30" + }, + "3819": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15131, + 15142 + ], + "op": "SWAP1", + "path": "30" + }, + "3820": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "3822": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ADD", + "path": "30" + }, + "3823": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH2", + "path": "30", + "value": "0x34C1" + }, + "3826": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 15090, + 15143 + ], + "op": "JUMP", + "path": "30" + }, + "3827": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3828": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0xA0" + }, + "3830": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3832": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "MLOAD", + "path": "30" + }, + "3833": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3834": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP4", + "path": "30" + }, + "3835": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "SUB", + "path": "30" + }, + "3836": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP2", + "path": "30" + }, + "3837": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP7", + "path": "30" + }, + "3838": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3839": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "EXTCODESIZE", + "path": "30" + }, + "3840": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ISZERO", + "path": "30" + }, + "3841": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3842": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ISZERO", + "path": "30" + }, + "3843": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF0B" + }, + "3846": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "JUMPI", + "path": "30" + }, + "3847": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3849": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3850": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "REVERT", + "path": "30" + }, + "3851": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3852": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3853": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "GAS", + "path": "30" + }, + "3854": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DELEGATECALL", + "path": "30" + }, + "3855": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ISZERO", + "path": "30" + }, + "3856": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3857": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ISZERO", + "path": "30" + }, + "3858": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF1F" + }, + "3861": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "JUMPI", + "path": "30" + }, + "3862": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "3863": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3865": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3866": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "3867": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "3868": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3870": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "REVERT", + "path": "30" + }, + "3871": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3872": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3873": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3874": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3875": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3876": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3878": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "MLOAD", + "path": "30" + }, + "3879": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "3880": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "3882": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "NOT", + "path": "30" + }, + "3883": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "3885": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP3", + "path": "30" + }, + "3886": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ADD", + "path": "30" + }, + "3887": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "AND", + "path": "30" + }, + "3888": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP3", + "path": "30" + }, + "3889": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ADD", + "path": "30" + }, + "3890": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP1", + "path": "30" + }, + "3891": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "3893": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "MSTORE", + "path": "30" + }, + "3894": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3895": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "DUP2", + "path": "30" + }, + "3896": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "ADD", + "path": "30" + }, + "3897": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "SWAP1", + "path": "30" + }, + "3898": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF43" + }, + "3901": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "SWAP2", + "path": "30" + }, + "3902": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "SWAP1", + "path": "30" + }, + "3903": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "PUSH2", + "path": "30", + "value": "0x32A6" + }, + "3906": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 15090, + 15143 + ], + "op": "JUMP", + "path": "30" + }, + "3907": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15090, + 15143 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3908": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15076, + 15143 + ], + "op": "SWAP1", + "path": "30" + }, + "3909": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15076, + 15143 + ], + "op": "POP", + "path": "30" + }, + "3910": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15026, + 15154 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3911": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15177, + 15239 + ], + "op": "PUSH2", + "path": "30", + "statement": 57, + "value": "0xF51" + }, + "3914": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15213, + 15217 + ], + "op": "DUP8", + "path": "30" + }, + "3915": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15219, + 15230 + ], + "op": "DUP3", + "path": "30" + }, + "3916": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15232, + 15238 + ], + "op": "DUP8", + "path": "30" + }, + "3917": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15177, + 15212 + ], + "op": "PUSH2", + "path": "30", + "value": "0x16D7" + }, + "3920": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 15177, + 15239 + ], + "op": "JUMP", + "path": "30" + }, + "3921": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15177, + 15239 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3922": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15163, + 15239 + ], + "op": "SWAP1", + "path": "30" + }, + "3923": { + "op": "POP" + }, + "3924": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15249, + 15284 + ], + "op": "PUSH2", + "path": "30", + "statement": 58, + "value": "0xF5D" + }, + "3927": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15163, + 15239 + ], + "op": "DUP2", + "path": "30" + }, + "3928": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15279, + 15283 + ], + "op": "DUP9", + "path": "30" + }, + "3929": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15249, + 15278 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1758" + }, + "3932": { + "fn": "ERC1155Action._transfer", + "jump": "i", + "offset": [ + 15249, + 15284 + ], + "op": "JUMP", + "path": "30" + }, + "3933": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15249, + 15284 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3934": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15303, + 15314 + ], + "op": "SWAP7", + "path": "30", + "statement": 59 + }, + "3935": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15316, + 15325 + ], + "op": "SWAP1", + "path": "30" + }, + "3936": { + "fn": "ERC1155Action._transfer", + "offset": [ + 15316, + 15325 + ], + "op": "SWAP6", + "path": "30" + }, + "3937": { + "op": "POP" + }, + "3938": { + "fn": "ERC1155Action._transfer", + "offset": [ + 14050, + 15333 + ], + "op": "SWAP4", + "path": "30" + }, + "3939": { + "op": "POP" + }, + "3940": { + "op": "POP" + }, + "3941": { + "op": "POP" + }, + "3942": { + "op": "POP" + }, + "3943": { + "fn": "ERC1155Action._transfer", + "jump": "o", + "offset": [ + 14050, + 15333 + ], + "op": "JUMP", + "path": "30" + }, + "3944": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3945": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15738, + 15748 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3947": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15738, + 15748 + ], + "op": "DUP1", + "path": "30" + }, + "3948": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15829, + 15831 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "3950": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15814, + 15831 + ], + "op": "DUP5", + "path": "30" + }, + "3951": { + "branch": 308, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15814, + 15831 + ], + "op": "LT", + "path": "30" + }, + "3952": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15810, + 16151 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF85" + }, + "3955": { + "branch": 308, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15810, + 16151 + ], + "op": "JUMPI", + "path": "30" + }, + "3956": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16068, + 16079 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "3958": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16082, + 16109 + ], + "op": "PUSH2", + "path": "30", + "value": "0xF81" + }, + "3961": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16082, + 16109 + ], + "op": "DUP6", + "path": "30" + }, + "3962": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16082, + 16109 + ], + "op": "DUP8", + "path": "30" + }, + "3963": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16082, + 16109 + ], + "op": "ADD", + "path": "30" + }, + "3964": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16093, + 16097 + ], + "op": "DUP8", + "path": "30" + }, + "3965": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16082, + 16109 + ], + "op": "PUSH2", + "path": "30", + "value": "0x31C0" + }, + "3968": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 16082, + 16109 + ], + "op": "JUMP", + "path": "30" + }, + "3969": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16082, + 16109 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3970": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16068, + 16109 + ], + "op": "SWAP3", + "path": "30" + }, + "3971": { + "op": "POP" + }, + "3972": { + "op": "POP" + }, + "3973": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15810, + 16151 + ], + "op": "JUMPDEST", + "path": "30" + }, + "3974": { + "op": "PUSH1", + "value": "0x1" + }, + "3976": { + "op": "PUSH1", + "value": "0x1" + }, + "3978": { + "op": "PUSH1", + "value": "0xE0" + }, + "3980": { + "op": "SHL" + }, + "3981": { + "op": "SUB" + }, + "3982": { + "op": "NOT" + }, + "3983": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16530 + ], + "op": "DUP3", + "path": "30" + }, + "3984": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16530 + ], + "op": "AND", + "path": "30" + }, + "3985": { + "op": "PUSH4", + "value": "0x66890643" + }, + "3990": { + "op": "PUSH1", + "value": "0xE0" + }, + "3992": { + "op": "SHL" + }, + "3993": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16530 + ], + "op": "EQ", + "path": "30" + }, + "3994": { + "branch": 309, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16530 + ], + "op": "DUP1", + "path": "30" + }, + "3995": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16585 + ], + "op": "PUSH2", + "path": "30", + "value": "0xFB4" + }, + "3998": { + "branch": 309, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16585 + ], + "op": "JUMPI", + "path": "30" + }, + "3999": { + "op": "POP" + }, + "4000": { + "op": "PUSH1", + "value": "0x1" + }, + "4002": { + "op": "PUSH1", + "value": "0x1" + }, + "4004": { + "op": "PUSH1", + "value": "0xE0" + }, + "4006": { + "op": "SHL" + }, + "4007": { + "op": "SUB" + }, + "4008": { + "op": "NOT" + }, + "4009": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16546, + 16585 + ], + "op": "DUP3", + "path": "30" + }, + "4010": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16546, + 16585 + ], + "op": "AND", + "path": "30" + }, + "4011": { + "op": "PUSH4", + "value": "0x541F527" + }, + "4016": { + "op": "PUSH1", + "value": "0xE4" + }, + "4018": { + "op": "SHL" + }, + "4019": { + "branch": 310, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16546, + 16585 + ], + "op": "EQ", + "path": "30" + }, + "4020": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16585 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4021": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16649 + ], + "op": "DUP1", + "path": "30" + }, + "4022": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16649 + ], + "op": "PUSH2", + "path": "30", + "value": "0xFCF" + }, + "4025": { + "branch": 310, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16649 + ], + "op": "JUMPI", + "path": "30" + }, + "4026": { + "op": "POP" + }, + "4027": { + "op": "PUSH1", + "value": "0x1" + }, + "4029": { + "op": "PUSH1", + "value": "0x1" + }, + "4031": { + "op": "PUSH1", + "value": "0xE0" + }, + "4033": { + "op": "SHL" + }, + "4034": { + "op": "SUB" + }, + "4035": { + "op": "NOT" + }, + "4036": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16601, + 16649 + ], + "op": "DUP3", + "path": "30" + }, + "4037": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16601, + 16649 + ], + "op": "AND", + "path": "30" + }, + "4038": { + "op": "PUSH4", + "value": "0x37351953" + }, + "4043": { + "op": "PUSH1", + "value": "0xE1" + }, + "4045": { + "op": "SHL" + }, + "4046": { + "branch": 311, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16601, + 16649 + ], + "op": "EQ", + "path": "30" + }, + "4047": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16649 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4048": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16721 + ], + "op": "DUP1", + "path": "30" + }, + "4049": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16721 + ], + "op": "PUSH2", + "path": "30", + "value": "0xFEA" + }, + "4052": { + "branch": 311, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16721 + ], + "op": "JUMPI", + "path": "30" + }, + "4053": { + "op": "POP" + }, + "4054": { + "op": "PUSH1", + "value": "0x1" + }, + "4056": { + "op": "PUSH1", + "value": "0x1" + }, + "4058": { + "op": "PUSH1", + "value": "0xE0" + }, + "4060": { + "op": "SHL" + }, + "4061": { + "op": "SUB" + }, + "4062": { + "op": "NOT" + }, + "4063": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16665, + 16721 + ], + "op": "DUP3", + "path": "30" + }, + "4064": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16665, + 16721 + ], + "op": "AND", + "path": "30" + }, + "4065": { + "op": "PUSH4", + "value": "0x276B64B" + }, + "4070": { + "op": "PUSH1", + "value": "0xE0" + }, + "4072": { + "op": "SHL" + }, + "4073": { + "branch": 312, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16665, + 16721 + ], + "op": "EQ", + "path": "30" + }, + "4074": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16488, + 16721 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4075": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16471, + 17593 + ], + "op": "ISZERO", + "path": "30" + }, + "4076": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16471, + 17593 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10FA" + }, + "4079": { + "branch": 312, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16471, + 17593 + ], + "op": "JUMPI", + "path": "30" + }, + "4080": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16777, + 16787 + ], + "op": "PUSH2", + "path": "30", + "statement": 60, + "value": "0xFFD" + }, + "4083": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16784, + 16786 + ], + "op": "PUSH1", + "path": "30", + "value": "0x24" + }, + "4085": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16782, + 16783 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "4087": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16777, + 16781 + ], + "op": "DUP7", + "path": "30" + }, + "4088": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16777, + 16781 + ], + "op": "DUP9", + "path": "30" + }, + "4089": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16777, + 16787 + ], + "op": "PUSH2", + "path": "30", + "value": "0x37ED" + }, + "4092": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 16777, + 16787 + ], + "op": "JUMP", + "path": "30" + }, + "4093": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16777, + 16787 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4094": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "DUP2", + "path": "30" + }, + "4095": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "ADD", + "path": "30" + }, + "4096": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "SWAP1", + "path": "30" + }, + "4097": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "PUSH2", + "path": "30", + "value": "0x100A" + }, + "4100": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "SWAP2", + "path": "30" + }, + "4101": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "SWAP1", + "path": "30" + }, + "4102": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "PUSH2", + "path": "30", + "value": "0x2F75" + }, + "4105": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 16766, + 16799 + ], + "op": "JUMP", + "path": "30" + }, + "4106": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16766, + 16799 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4107": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16746, + 16799 + ], + "op": "SWAP1", + "path": "30" + }, + "4108": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16746, + 16799 + ], + "op": "POP", + "path": "30" + }, + "4109": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17101, + 17105 + ], + "op": "DUP9", + "path": "30", + "statement": 61 + }, + "4110": { + "op": "PUSH1", + "value": "0x1" + }, + "4112": { + "op": "PUSH1", + "value": "0x1" + }, + "4114": { + "op": "PUSH1", + "value": "0xA0" + }, + "4116": { + "op": "SHL" + }, + "4117": { + "op": "SUB" + }, + "4118": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17105 + ], + "op": "AND", + "path": "30" + }, + "4119": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17097 + ], + "op": "DUP2", + "path": "30" + }, + "4120": { + "op": "PUSH1", + "value": "0x1" + }, + "4122": { + "op": "PUSH1", + "value": "0x1" + }, + "4124": { + "op": "PUSH1", + "value": "0xA0" + }, + "4126": { + "op": "SHL" + }, + "4127": { + "op": "SUB" + }, + "4128": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17105 + ], + "op": "AND", + "path": "30" + }, + "4129": { + "branch": 313, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17105 + ], + "op": "EQ", + "path": "30" + }, + "4130": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17190 + ], + "op": "DUP1", + "path": "30" + }, + "4131": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17190 + ], + "op": "PUSH2", + "path": "30", + "value": "0x104D" + }, + "4134": { + "branch": 313, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17190 + ], + "op": "JUMPI", + "path": "30" + }, + "4135": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17080, + 17190 + ], + "op": "POP", + "path": "30" + }, + "4136": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17151, + 17153 + ], + "op": "DUP8", + "path": "30" + }, + "4137": { + "op": "PUSH1", + "value": "0x1" + }, + "4139": { + "op": "PUSH1", + "value": "0x1" + }, + "4141": { + "op": "PUSH1", + "value": "0xA0" + }, + "4143": { + "op": "SHL" + }, + "4144": { + "op": "SUB" + }, + "4145": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17153 + ], + "op": "AND", + "path": "30" + }, + "4146": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17147 + ], + "op": "DUP2", + "path": "30" + }, + "4147": { + "op": "PUSH1", + "value": "0x1" + }, + "4149": { + "op": "PUSH1", + "value": "0x1" + }, + "4151": { + "op": "PUSH1", + "value": "0xA0" + }, + "4153": { + "op": "SHL" + }, + "4154": { + "op": "SUB" + }, + "4155": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17153 + ], + "op": "AND", + "path": "30" + }, + "4156": { + "branch": 314, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17153 + ], + "op": "EQ", + "path": "30" + }, + "4157": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17189 + ], + "op": "DUP1", + "path": "30" + }, + "4158": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17189 + ], + "op": "ISZERO", + "path": "30" + }, + "4159": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17189 + ], + "op": "PUSH2", + "path": "30", + "value": "0x104D" + }, + "4162": { + "branch": 314, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17189 + ], + "op": "JUMPI", + "path": "30" + }, + "4163": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17130, + 17189 + ], + "op": "POP", + "path": "30" + }, + "4164": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17157, + 17189 + ], + "op": "PUSH2", + "path": "30", + "value": "0x104D" + }, + "4167": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17174, + 17176 + ], + "op": "DUP9", + "path": "30" + }, + "4168": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17178, + 17188 + ], + "op": "CALLER", + "path": "30" + }, + "4169": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17157, + 17173 + ], + "op": "PUSH2", + "path": "30", + "value": "0x7D6" + }, + "4172": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 17157, + 17189 + ], + "op": "JUMP", + "path": "30" + }, + "4173": { + "branch": 315, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17157, + 17189 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4174": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1069" + }, + "4177": { + "branch": 315, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "JUMPI", + "path": "30" + }, + "4178": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4180": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "MLOAD", + "path": "30" + }, + "4181": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "4185": { + "op": "PUSH1", + "value": "0xE5" + }, + "4187": { + "op": "SHL" + }, + "4188": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "DUP2", + "path": "30" + }, + "4189": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "MSTORE", + "path": "30" + }, + "4190": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "4192": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "ADD", + "path": "30" + }, + "4193": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "4196": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "SWAP1", + "path": "30" + }, + "4197": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3695" + }, + "4200": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 17055, + 17241 + ], + "op": "JUMP", + "path": "30" + }, + "4201": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17055, + 17241 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4202": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17452, + 17463 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4204": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17465, + 17484 + ], + "op": "DUP1", + "path": "30" + }, + "4205": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17496, + 17500 + ], + "op": "ADDRESS", + "path": "30" + }, + "4206": { + "op": "PUSH1", + "value": "0x1" + }, + "4208": { + "op": "PUSH1", + "value": "0x1" + }, + "4210": { + "op": "PUSH1", + "value": "0xA0" + }, + "4212": { + "op": "SHL" + }, + "4213": { + "op": "SUB" + }, + "4214": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17506 + ], + "op": "AND", + "path": "30" + }, + "4215": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17514, + 17523 + ], + "op": "CALLVALUE", + "path": "30" + }, + "4216": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17525, + 17529 + ], + "op": "DUP9", + "path": "30" + }, + "4217": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17525, + 17529 + ], + "op": "DUP9", + "path": "30" + }, + "4218": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4220": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "MLOAD", + "path": "30" + }, + "4221": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1087" + }, + "4224": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SWAP3", + "path": "30" + }, + "4225": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SWAP2", + "path": "30" + }, + "4226": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SWAP1", + "path": "30" + }, + "4227": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH2", + "path": "30", + "value": "0x33E4" + }, + "4230": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 17488, + 17530 + ], + "op": "JUMP", + "path": "30" + }, + "4231": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4232": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4234": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4236": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "MLOAD", + "path": "30" + }, + "4237": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP1", + "path": "30" + }, + "4238": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP4", + "path": "30" + }, + "4239": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SUB", + "path": "30" + }, + "4240": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP2", + "path": "30" + }, + "4241": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP6", + "path": "30" + }, + "4242": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP8", + "path": "30" + }, + "4243": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "GAS", + "path": "30" + }, + "4244": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "CALL", + "path": "30" + }, + "4245": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SWAP3", + "path": "30" + }, + "4246": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4247": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4248": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4249": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4250": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP1", + "path": "30" + }, + "4251": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4253": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP2", + "path": "30" + }, + "4254": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "EQ", + "path": "30" + }, + "4255": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10C4" + }, + "4258": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "JUMPI", + "path": "30" + }, + "4259": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4261": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "MLOAD", + "path": "30" + }, + "4262": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SWAP2", + "path": "30" + }, + "4263": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4264": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1F" + }, + "4266": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "NOT", + "path": "30" + }, + "4267": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x3F" + }, + "4269": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4270": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "ADD", + "path": "30" + }, + "4271": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "AND", + "path": "30" + }, + "4272": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP3", + "path": "30" + }, + "4273": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "ADD", + "path": "30" + }, + "4274": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4276": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "MSTORE", + "path": "30" + }, + "4277": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4278": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP3", + "path": "30" + }, + "4279": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "MSTORE", + "path": "30" + }, + "4280": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4281": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4283": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "4285": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "DUP5", + "path": "30" + }, + "4286": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "ADD", + "path": "30" + }, + "4287": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "4288": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10C9" + }, + "4291": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "JUMP", + "path": "30" + }, + "4292": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4293": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "4295": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "SWAP2", + "path": "30" + }, + "4296": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4297": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4298": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17488, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4299": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17451, + 17530 + ], + "op": "SWAP2", + "path": "30" + }, + "4300": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17451, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4301": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17451, + 17530 + ], + "op": "SWAP2", + "path": "30" + }, + "4302": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17451, + 17530 + ], + "op": "POP", + "path": "30" + }, + "4303": { + "branch": 316, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17552, + 17558 + ], + "op": "DUP2", + "path": "30", + "statement": 62 + }, + "4304": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17560, + 17581 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10D8" + }, + "4307": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17574, + 17580 + ], + "op": "DUP3", + "path": "30" + }, + "4308": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17560, + 17573 + ], + "op": "PUSH2", + "path": "30", + "value": "0x18AB" + }, + "4311": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 17560, + 17581 + ], + "op": "JUMP", + "path": "30" + }, + "4312": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17560, + 17581 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4313": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "SWAP1", + "path": "30" + }, + "4314": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "PUSH2", + "path": "30", + "value": "0x10F6" + }, + "4317": { + "branch": 316, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "JUMPI", + "path": "30" + }, + "4318": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4320": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "MLOAD", + "path": "30" + }, + "4321": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "4325": { + "op": "PUSH1", + "value": "0xE5" + }, + "4327": { + "op": "SHL" + }, + "4328": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "DUP2", + "path": "30" + }, + "4329": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "MSTORE", + "path": "30" + }, + "4330": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "4332": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "ADD", + "path": "30" + }, + "4333": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "4336": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "SWAP2", + "path": "30" + }, + "4337": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "SWAP1", + "path": "30" + }, + "4338": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3639" + }, + "4341": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 17544, + 17582 + ], + "op": "JUMP", + "path": "30" + }, + "4342": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4343": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17544, + 17582 + ], + "op": "POP", + "path": "30" + }, + "4344": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16471, + 17593 + ], + "op": "POP", + "path": "30" + }, + "4345": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16471, + 17593 + ], + "op": "POP", + "path": "30" + }, + "4346": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 16471, + 17593 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4347": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17941, + 17945 + ], + "op": "DUP9", + "path": "30" + }, + "4348": { + "op": "PUSH1", + "value": "0x1" + }, + "4350": { + "op": "PUSH1", + "value": "0x1" + }, + "4352": { + "op": "PUSH1", + "value": "0xA0" + }, + "4354": { + "op": "SHL" + }, + "4355": { + "op": "SUB" + }, + "4356": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17945 + ], + "op": "AND", + "path": "30" + }, + "4357": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17937 + ], + "op": "DUP2", + "path": "30" + }, + "4358": { + "op": "PUSH1", + "value": "0x1" + }, + "4360": { + "op": "PUSH1", + "value": "0x1" + }, + "4362": { + "op": "PUSH1", + "value": "0xA0" + }, + "4364": { + "op": "SHL" + }, + "4365": { + "op": "SUB" + }, + "4366": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17945 + ], + "op": "AND", + "path": "30" + }, + "4367": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17945 + ], + "op": "EQ", + "path": "30" + }, + "4368": { + "branch": 317, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17945 + ], + "op": "ISZERO", + "path": "30" + }, + "4369": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17976 + ], + "op": "DUP1", + "path": "30" + }, + "4370": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17976 + ], + "op": "ISZERO", + "path": "30" + }, + "4371": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17976 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1129" + }, + "4374": { + "branch": 317, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17976 + ], + "op": "JUMPI", + "path": "30" + }, + "4375": { + "op": "POP" + }, + "4376": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17968 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "4378": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17968 + ], + "op": "DUP8", + "path": "30" + }, + "4379": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17968 + ], + "op": "ADD", + "path": "30" + }, + "4380": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17968 + ], + "op": "MLOAD", + "path": "30" + }, + "4381": { + "op": "PUSH1", + "value": "0x1" + }, + "4383": { + "op": "PUSH1", + "value": "0x1" + }, + "4385": { + "op": "PUSH1", + "value": "0xF8" + }, + "4387": { + "op": "SHL" + }, + "4388": { + "op": "SUB" + }, + "4389": { + "op": "NOT" + }, + "4390": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17976 + ], + "op": "AND", + "path": "30" + }, + "4391": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17976 + ], + "op": "ISZERO", + "path": "30" + }, + "4392": { + "branch": 318, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17949, + 17976 + ], + "op": "ISZERO", + "path": "30" + }, + "4393": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17920, + 17976 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4394": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17916, + 18060 + ], + "op": "ISZERO", + "path": "30" + }, + "4395": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17916, + 18060 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1196" + }, + "4398": { + "branch": 318, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17916, + 18060 + ], + "op": "JUMPI", + "path": "30" + }, + "4399": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "statement": 63, + "value": "0x40" + }, + "4401": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "MLOAD", + "path": "30" + }, + "4402": { + "op": "PUSH4", + "value": "0x6CCC642F" + }, + "4407": { + "op": "PUSH1", + "value": "0xE0" + }, + "4409": { + "op": "SHL" + }, + "4410": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP2", + "path": "30" + }, + "4411": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "MSTORE", + "path": "30" + }, + "4412": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18014 + ], + "op": "PUSH20", + "path": "30", + "value": "0x0" + }, + "4433": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18014 + ], + "op": "SWAP1", + "path": "30" + }, + "4434": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18043 + ], + "op": "PUSH4", + "path": "30", + "value": "0x6CCC642F" + }, + "4439": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18043 + ], + "op": "SWAP1", + "path": "30" + }, + "4440": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1165" + }, + "4443": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "SWAP1", + "path": "30" + }, + "4444": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18044, + 18048 + ], + "op": "DUP13", + "path": "30" + }, + "4445": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18044, + 18048 + ], + "op": "SWAP1", + "path": "30" + }, + "4446": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "4448": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "ADD", + "path": "30" + }, + "4449": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH2", + "path": "30", + "value": "0x33F4" + }, + "4452": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 17992, + 18049 + ], + "op": "JUMP", + "path": "30" + }, + "4453": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4454": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4456": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4458": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "MLOAD", + "path": "30" + }, + "4459": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP1", + "path": "30" + }, + "4460": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP4", + "path": "30" + }, + "4461": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "SUB", + "path": "30" + }, + "4462": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP2", + "path": "30" + }, + "4463": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP7", + "path": "30" + }, + "4464": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP1", + "path": "30" + }, + "4465": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "EXTCODESIZE", + "path": "30" + }, + "4466": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "ISZERO", + "path": "30" + }, + "4467": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP1", + "path": "30" + }, + "4468": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "ISZERO", + "path": "30" + }, + "4469": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH2", + "path": "30", + "value": "0x117D" + }, + "4472": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "JUMPI", + "path": "30" + }, + "4473": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4475": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP1", + "path": "30" + }, + "4476": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "REVERT", + "path": "30" + }, + "4477": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4478": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "POP", + "path": "30" + }, + "4479": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "GAS", + "path": "30" + }, + "4480": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DELEGATECALL", + "path": "30" + }, + "4481": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "ISZERO", + "path": "30" + }, + "4482": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP1", + "path": "30" + }, + "4483": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "ISZERO", + "path": "30" + }, + "4484": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1191" + }, + "4487": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "JUMPI", + "path": "30" + }, + "4488": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4489": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4491": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "DUP1", + "path": "30" + }, + "4492": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "4493": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4494": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4496": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "REVERT", + "path": "30" + }, + "4497": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4498": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "POP", + "path": "30" + }, + "4499": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "POP", + "path": "30" + }, + "4500": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "POP", + "path": "30" + }, + "4501": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17992, + 18049 + ], + "op": "POP", + "path": "30" + }, + "4502": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 17916, + 18060 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4503": { + "branch": 319, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18431 + ], + "op": "DUP3", + "path": "30" + }, + "4504": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18458 + ], + "op": "DUP1", + "path": "30" + }, + "4505": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18458 + ], + "op": "ISZERO", + "path": "30" + }, + "4506": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18458 + ], + "op": "PUSH2", + "path": "30", + "value": "0x11B5" + }, + "4509": { + "branch": 319, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18458 + ], + "op": "JUMPI", + "path": "30" + }, + "4510": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18458 + ], + "op": "POP", + "path": "30" + }, + "4511": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18456, + 18458 + ], + "op": "DUP8", + "path": "30" + }, + "4512": { + "op": "PUSH1", + "value": "0x1" + }, + "4514": { + "op": "PUSH1", + "value": "0x1" + }, + "4516": { + "op": "PUSH1", + "value": "0xA0" + }, + "4518": { + "op": "SHL" + }, + "4519": { + "op": "SUB" + }, + "4520": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18435, + 18458 + ], + "op": "AND", + "path": "30" + }, + "4521": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18435, + 18452 + ], + "op": "DUP2", + "path": "30" + }, + "4522": { + "op": "PUSH1", + "value": "0x1" + }, + "4524": { + "op": "PUSH1", + "value": "0x1" + }, + "4526": { + "op": "PUSH1", + "value": "0xA0" + }, + "4528": { + "op": "SHL" + }, + "4529": { + "op": "SUB" + }, + "4530": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18435, + 18458 + ], + "op": "AND", + "path": "30" + }, + "4531": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18435, + 18458 + ], + "op": "EQ", + "path": "30" + }, + "4532": { + "branch": 320, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18435, + 18458 + ], + "op": "ISZERO", + "path": "30" + }, + "4533": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18458 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4534": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18487 + ], + "op": "DUP1", + "path": "30" + }, + "4535": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18487 + ], + "op": "ISZERO", + "path": "30" + }, + "4536": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18487 + ], + "op": "PUSH2", + "path": "30", + "value": "0x11CE" + }, + "4539": { + "branch": 320, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18487 + ], + "op": "JUMPI", + "path": "30" + }, + "4540": { + "op": "POP" + }, + "4541": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18479 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "4543": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18479 + ], + "op": "DUP7", + "path": "30" + }, + "4544": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18479 + ], + "op": "ADD", + "path": "30" + }, + "4545": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18479 + ], + "op": "MLOAD", + "path": "30" + }, + "4546": { + "op": "PUSH1", + "value": "0x1" + }, + "4548": { + "op": "PUSH1", + "value": "0x1" + }, + "4550": { + "op": "PUSH1", + "value": "0xF8" + }, + "4552": { + "op": "SHL" + }, + "4553": { + "op": "SUB" + }, + "4554": { + "op": "NOT" + }, + "4555": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18487 + ], + "op": "AND", + "path": "30" + }, + "4556": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18487 + ], + "op": "ISZERO", + "path": "30" + }, + "4557": { + "branch": 321, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18462, + 18487 + ], + "op": "ISZERO", + "path": "30" + }, + "4558": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18413, + 18487 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4559": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18409, + 18569 + ], + "op": "ISZERO", + "path": "30" + }, + "4560": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18409, + 18569 + ], + "op": "PUSH2", + "path": "30", + "value": "0x123B" + }, + "4563": { + "branch": 321, + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18409, + 18569 + ], + "op": "JUMPI", + "path": "30" + }, + "4564": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "statement": 64, + "value": "0x40" + }, + "4566": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "MLOAD", + "path": "30" + }, + "4567": { + "op": "PUSH4", + "value": "0x6CCC642F" + }, + "4572": { + "op": "PUSH1", + "value": "0xE0" + }, + "4574": { + "op": "SHL" + }, + "4575": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP2", + "path": "30" + }, + "4576": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "MSTORE", + "path": "30" + }, + "4577": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18525 + ], + "op": "PUSH20", + "path": "30", + "value": "0x0" + }, + "4598": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18525 + ], + "op": "SWAP1", + "path": "30" + }, + "4599": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18554 + ], + "op": "PUSH4", + "path": "30", + "value": "0x6CCC642F" + }, + "4604": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18554 + ], + "op": "SWAP1", + "path": "30" + }, + "4605": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH2", + "path": "30", + "value": "0x120A" + }, + "4608": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "SWAP1", + "path": "30" + }, + "4609": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18555, + 18557 + ], + "op": "DUP12", + "path": "30" + }, + "4610": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18555, + 18557 + ], + "op": "SWAP1", + "path": "30" + }, + "4611": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "4613": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "ADD", + "path": "30" + }, + "4614": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH2", + "path": "30", + "value": "0x33F4" + }, + "4617": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "i", + "offset": [ + 18503, + 18558 + ], + "op": "JUMP", + "path": "30" + }, + "4618": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4619": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4621": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4623": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "MLOAD", + "path": "30" + }, + "4624": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP1", + "path": "30" + }, + "4625": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP4", + "path": "30" + }, + "4626": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "SUB", + "path": "30" + }, + "4627": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP2", + "path": "30" + }, + "4628": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP7", + "path": "30" + }, + "4629": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP1", + "path": "30" + }, + "4630": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "EXTCODESIZE", + "path": "30" + }, + "4631": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "ISZERO", + "path": "30" + }, + "4632": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP1", + "path": "30" + }, + "4633": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "ISZERO", + "path": "30" + }, + "4634": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1222" + }, + "4637": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "JUMPI", + "path": "30" + }, + "4638": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4640": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP1", + "path": "30" + }, + "4641": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "REVERT", + "path": "30" + }, + "4642": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4643": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "POP", + "path": "30" + }, + "4644": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "GAS", + "path": "30" + }, + "4645": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DELEGATECALL", + "path": "30" + }, + "4646": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "ISZERO", + "path": "30" + }, + "4647": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP1", + "path": "30" + }, + "4648": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "ISZERO", + "path": "30" + }, + "4649": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1236" + }, + "4652": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "JUMPI", + "path": "30" + }, + "4653": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4654": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4656": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "DUP1", + "path": "30" + }, + "4657": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "RETURNDATACOPY", + "path": "30" + }, + "4658": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "RETURNDATASIZE", + "path": "30" + }, + "4659": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "PUSH1", + "path": "30", + "value": "0x0" + }, + "4661": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "REVERT", + "path": "30" + }, + "4662": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4663": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "POP", + "path": "30" + }, + "4664": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "POP", + "path": "30" + }, + "4665": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "POP", + "path": "30" + }, + "4666": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18503, + 18558 + ], + "op": "POP", + "path": "30" + }, + "4667": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 18409, + 18569 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4668": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4669": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4670": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4671": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4672": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4673": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4674": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4675": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4676": { + "fn": "ERC1155Action._checkPostTransferEvent", + "offset": [ + 15492, + 18575 + ], + "op": "POP", + "path": "30" + }, + "4677": { + "fn": "ERC1155Action._checkPostTransferEvent", + "jump": "o", + "offset": [ + 15492, + 18575 + ], + "op": "JUMP", + "path": "30" + }, + "4678": { + "fn": "Address.isContract", + "offset": [ + 718, + 1131 + ], + "op": "JUMPDEST", + "path": "16" + }, + "4679": { + "fn": "Address.isContract", + "offset": [ + 1078, + 1098 + ], + "op": "EXTCODESIZE", + "path": "16" + }, + "4680": { + "fn": "Address.isContract", + "offset": [ + 1116, + 1124 + ], + "op": "ISZERO", + "path": "16", + "statement": 65 + }, + "4681": { + "fn": "Address.isContract", + "offset": [ + 1116, + 1124 + ], + "op": "ISZERO", + "path": "16" + }, + "4682": { + "fn": "Address.isContract", + "offset": [ + 1116, + 1124 + ], + "op": "SWAP1", + "path": "16" + }, + "4683": { + "fn": "Address.isContract", + "jump": "o", + "offset": [ + 718, + 1131 + ], + "op": "JUMP", + "path": "16" + }, + "4684": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "JUMPDEST", + "path": "85" + }, + "4685": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1016, + 1023 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "4687": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "4690": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1043, + 1081 + ], + "op": "DUP5", + "path": "85", + "statement": 66 + }, + "4691": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1043, + 1081 + ], + "op": "GT", + "path": "85" + }, + "4692": { + "branch": 446, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1043, + 1081 + ], + "op": "ISZERO", + "path": "85" + }, + "4693": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "PUSH2", + "path": "85", + "value": "0x125D" + }, + "4696": { + "branch": 446, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "JUMPI", + "path": "85" + }, + "4697": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "4699": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "DUP1", + "path": "85" + }, + "4700": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "REVERT", + "path": "85" + }, + "4701": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1035, + 1082 + ], + "op": "JUMPDEST", + "path": "85" + }, + "4702": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1112, + 1128 + ], + "op": "PUSH5", + "path": "85", + "statement": 67, + "value": "0xFFFFFFFFFF" + }, + "4708": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1100, + 1128 + ], + "op": "DUP4", + "path": "85" + }, + "4709": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1100, + 1128 + ], + "op": "GT", + "path": "85" + }, + "4710": { + "branch": 447, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1100, + 1128 + ], + "op": "ISZERO", + "path": "85" + }, + "4711": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "PUSH2", + "path": "85", + "value": "0x126F" + }, + "4714": { + "branch": 447, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "JUMPI", + "path": "85" + }, + "4715": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "4717": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "DUP1", + "path": "85" + }, + "4718": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "REVERT", + "path": "85" + }, + "4719": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1092, + 1129 + ], + "op": "JUMPDEST", + "path": "85" + }, + "4720": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "4722": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1147, + 1195 + ], + "op": "DUP3", + "path": "85", + "statement": 68 + }, + "4723": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1147, + 1195 + ], + "op": "GT", + "path": "85" + }, + "4724": { + "branch": 448, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1147, + 1195 + ], + "op": "ISZERO", + "path": "85" + }, + "4725": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "PUSH2", + "path": "85", + "value": "0x127D" + }, + "4728": { + "branch": 448, + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "JUMPI", + "path": "85" + }, + "4729": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "4731": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "DUP1", + "path": "85" + }, + "4732": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "REVERT", + "path": "85" + }, + "4733": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1139, + 1196 + ], + "op": "JUMPDEST", + "path": "85" + }, + "4734": { + "op": "POP" + }, + "4735": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH8", + "path": "85", + "statement": 69, + "value": "0xFFFF000000000000" + }, + "4744": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1292, + 1294 + ], + "op": "PUSH1", + "path": "85", + "value": "0x30" + }, + "4746": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "DUP5", + "path": "85" + }, + "4747": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "SWAP1", + "path": "85" + }, + "4748": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "SHL", + "path": "85" + }, + "4749": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1252, + 1294 + ], + "op": "AND", + "path": "85" + }, + "4750": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "PUSH6", + "path": "85", + "value": "0xFFFFFFFFFF00" + }, + "4757": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1357, + 1358 + ], + "op": "PUSH1", + "path": "85", + "value": "0x8" + }, + "4759": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "DUP5", + "path": "85" + }, + "4760": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "SWAP1", + "path": "85" + }, + "4761": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "SHL", + "path": "85" + }, + "4762": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1319, + 1358 + ], + "op": "AND", + "path": "85" + }, + "4763": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1251, + 1359 + ], + "op": "OR", + "path": "85" + }, + "4764": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1390, + 1415 + ], + "op": "PUSH1", + "path": "85", + "value": "0xFF" + }, + "4766": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1390, + 1415 + ], + "op": "DUP3", + "path": "85" + }, + "4767": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1390, + 1415 + ], + "op": "AND", + "path": "85" + }, + "4768": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 1251, + 1416 + ], + "op": "OR", + "path": "85" + }, + "4769": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "SWAP4", + "path": "85" + }, + "4770": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "SWAP3", + "path": "85" + }, + "4771": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "POP", + "path": "85" + }, + "4772": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "POP", + "path": "85" + }, + "4773": { + "fn": "TransferAssets.encodeAssetId", + "offset": [ + 883, + 1437 + ], + "op": "POP", + "path": "85" + }, + "4774": { + "fn": "TransferAssets.encodeAssetId", + "jump": "o", + "offset": [ + 883, + 1437 + ], + "op": "JUMP", + "path": "85" + }, + "4775": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 541, + 843 + ], + "op": "JUMPDEST", + "path": "85" + }, + "4776": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 807, + 836 + ], + "op": "PUSH2", + "path": "85", + "statement": 70, + "value": "0xFFFF" + }, + "4779": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 833, + 835 + ], + "op": "PUSH1", + "path": "85", + "value": "0x30" + }, + "4781": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 827, + 835 + ], + "op": "DUP3", + "path": "85" + }, + "4782": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 827, + 835 + ], + "op": "SWAP1", + "path": "85" + }, + "4783": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 827, + 835 + ], + "op": "SHR", + "path": "85" + }, + "4784": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 807, + 836 + ], + "op": "AND", + "path": "85" + }, + "4785": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 807, + 836 + ], + "op": "SWAP2", + "path": "85" + }, + "4786": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 771, + 797 + ], + "op": "PUSH5", + "path": "85", + "statement": 71, + "value": "0xFFFFFFFFFF" + }, + "4792": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 795, + 796 + ], + "op": "PUSH1", + "path": "85", + "value": "0x8" + }, + "4794": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 789, + 796 + ], + "op": "DUP4", + "path": "85" + }, + "4795": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 789, + 796 + ], + "op": "SWAP1", + "path": "85" + }, + "4796": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 789, + 796 + ], + "op": "SHR", + "path": "85" + }, + "4797": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 771, + 797 + ], + "op": "AND", + "path": "85" + }, + "4798": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 771, + 797 + ], + "op": "SWAP2", + "path": "85" + }, + "4799": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 740, + 761 + ], + "op": "PUSH1", + "path": "85", + "statement": 72, + "value": "0xFF" + }, + "4801": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 740, + 761 + ], + "op": "AND", + "path": "85" + }, + "4802": { + "fn": "TransferAssets.decodeAssetId", + "offset": [ + 740, + 761 + ], + "op": "SWAP1", + "path": "85" + }, + "4803": { + "fn": "TransferAssets.decodeAssetId", + "jump": "o", + "offset": [ + 541, + 843 + ], + "op": "JUMP", + "path": "85" + }, + "4804": { + "fn": "SafeInt256.toInt", + "offset": [ + 2520, + 2683 + ], + "op": "JUMPDEST", + "path": "94" + }, + "4805": { + "fn": "SafeInt256.toInt", + "offset": [ + 2569, + 2575 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "4807": { + "op": "PUSH1", + "value": "0x1" + }, + "4809": { + "op": "PUSH1", + "value": "0x1" + }, + "4811": { + "op": "PUSH1", + "value": "0xFF" + }, + "4813": { + "op": "SHL" + }, + "4814": { + "op": "SUB" + }, + "4815": { + "fn": "SafeInt256.toInt", + "offset": [ + 2596, + 2597 + ], + "op": "DUP3", + "path": "94", + "statement": 73 + }, + "4816": { + "fn": "SafeInt256.toInt", + "offset": [ + 2596, + 2626 + ], + "op": "GT", + "path": "94" + }, + "4817": { + "branch": 437, + "fn": "SafeInt256.toInt", + "offset": [ + 2596, + 2626 + ], + "op": "ISZERO", + "path": "94" + }, + "4818": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "PUSH2", + "path": "94", + "value": "0xA32" + }, + "4821": { + "branch": 437, + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "JUMPI", + "path": "94" + }, + "4822": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "4824": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "DUP1", + "path": "94" + }, + "4825": { + "fn": "SafeInt256.toInt", + "offset": [ + 2587, + 2627 + ], + "op": "REVERT", + "path": "94" + }, + "4826": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13687, + 13984 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4827": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13849, + 13935 + ], + "op": "PUSH2", + "path": "30", + "statement": 74, + "value": "0x12F0" + }, + "4830": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13874, + 13913 + ], + "op": "PUSH2", + "path": "30", + "value": "0x12E6" + }, + "4833": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13902, + 13912 + ], + "op": "DUP5", + "path": "30" + }, + "4834": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13874, + 13901 + ], + "op": "PUSH2", + "path": "30", + "value": "0x190B" + }, + "4837": { + "fn": "ERC1155Action._requireValidMaturity", + "jump": "i", + "offset": [ + 13874, + 13913 + ], + "op": "JUMP", + "path": "30" + }, + "4838": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13874, + 13913 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4839": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13849, + 13935 + ], + "op": "PUSH1", + "path": "30", + "value": "0xFF" + }, + "4841": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13849, + 13935 + ], + "op": "AND", + "path": "30" + }, + "4842": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13915, + 13923 + ], + "op": "DUP4", + "path": "30" + }, + "4843": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13925, + 13934 + ], + "op": "DUP4", + "path": "30" + }, + "4844": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13849, + 13873 + ], + "op": "PUSH2", + "path": "30", + "value": "0x1921" + }, + "4847": { + "fn": "ERC1155Action._requireValidMaturity", + "jump": "i", + "offset": [ + 13849, + 13935 + ], + "op": "JUMP", + "path": "30" + }, + "4848": { + "branch": 322, + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13849, + 13935 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4849": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "PUSH2", + "path": "30", + "value": "0x130C" + }, + "4852": { + "branch": 322, + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "JUMPI", + "path": "30" + }, + "4853": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "PUSH1", + "path": "30", + "value": "0x40" + }, + "4855": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "MLOAD", + "path": "30" + }, + "4856": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "4860": { + "op": "PUSH1", + "value": "0xE5" + }, + "4862": { + "op": "SHL" + }, + "4863": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "DUP2", + "path": "30" + }, + "4864": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "MSTORE", + "path": "30" + }, + "4865": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "4867": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "ADD", + "path": "30" + }, + "4868": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3D8" + }, + "4871": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "SWAP1", + "path": "30" + }, + "4872": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3763" + }, + "4875": { + "fn": "ERC1155Action._requireValidMaturity", + "jump": "i", + "offset": [ + 13828, + 13977 + ], + "op": "JUMP", + "path": "30" + }, + "4876": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13828, + 13977 + ], + "op": "JUMPDEST", + "path": "30" + }, + "4877": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13687, + 13984 + ], + "op": "POP", + "path": "30" + }, + "4878": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13687, + 13984 + ], + "op": "POP", + "path": "30" + }, + "4879": { + "fn": "ERC1155Action._requireValidMaturity", + "offset": [ + 13687, + 13984 + ], + "op": "POP", + "path": "30" + }, + "4880": { + "fn": "ERC1155Action._requireValidMaturity", + "jump": "o", + "offset": [ + 13687, + 13984 + ], + "op": "JUMP", + "path": "30" + }, + "4881": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 1879, + 2108 + ], + "op": "JUMPDEST", + "path": "62" + }, + "4882": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 1940, + 1988 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "4884": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2005, + 2017 + ], + "op": "DUP1", + "path": "62" + }, + "4885": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2020, + 2061 + ], + "op": "PUSH2", + "path": "62", + "value": "0x30C" + }, + "4888": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2036, + 2060 + ], + "op": "PUSH1", + "path": "62", + "value": "0x1" + }, + "4890": { + "fn": "LibStorage.getAccountStorage", + "offset": [ + 2020, + 2035 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1971" + }, + "4893": { + "fn": "LibStorage.getAccountStorage", + "jump": "i", + "offset": [ + 2020, + 2061 + ], + "op": "JUMP", + "path": "62" + }, + "4894": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1320, + 1688 + ], + "op": "JUMPDEST", + "path": "83" + }, + "4895": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1455, + 1470 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "4897": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1482, + 1581 + ], + "op": "DUP1", + "path": "83" + }, + "4898": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1584, + 1619 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1329" + }, + "4901": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1584, + 1617 + ], + "op": "PUSH2", + "path": "83", + "value": "0x198A" + }, + "4904": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "jump": "i", + "offset": [ + 1584, + 1619 + ], + "op": "JUMP", + "path": "83" + }, + "4905": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1584, + 1619 + ], + "op": "JUMPDEST", + "path": "83" + }, + "4906": { + "op": "PUSH1", + "value": "0x1" + }, + "4908": { + "op": "PUSH1", + "value": "0x1" + }, + "4910": { + "op": "PUSH1", + "value": "0xA0" + }, + "4912": { + "op": "SHL" + }, + "4913": { + "op": "SUB" + }, + "4914": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "DUP7", + "path": "83", + "statement": 75 + }, + "4915": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "AND", + "path": "83" + }, + "4916": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "4918": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "SWAP1", + "path": "83" + }, + "4919": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "DUP2", + "path": "83" + }, + "4920": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "MSTORE", + "path": "83" + }, + "4921": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "4923": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "SWAP2", + "path": "83" + }, + "4924": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "DUP3", + "path": "83" + }, + "4925": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "MSTORE", + "path": "83" + }, + "4926": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "PUSH1", + "path": "83", + "value": "0x40" + }, + "4928": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "DUP1", + "path": "83" + }, + "4929": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "DUP3", + "path": "83" + }, + "4930": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1650 + ], + "op": "KECCAK256", + "path": "83" + }, + "4931": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "DUP8", + "path": "83" + }, + "4932": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "DUP4", + "path": "83" + }, + "4933": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "MSTORE", + "path": "83" + }, + "4934": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "DUP4", + "path": "83" + }, + "4935": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "MSTORE", + "path": "83" + }, + "4936": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "DUP1", + "path": "83" + }, + "4937": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "DUP3", + "path": "83" + }, + "4938": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1662 + ], + "op": "KECCAK256", + "path": "83" + }, + "4939": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "DUP7", + "path": "83" + }, + "4940": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "DUP4", + "path": "83" + }, + "4941": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "MSTORE", + "path": "83" + }, + "4942": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "SWAP1", + "path": "83" + }, + "4943": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "SWAP3", + "path": "83" + }, + "4944": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "MSTORE", + "path": "83" + }, + "4945": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1672 + ], + "op": "KECCAK256", + "path": "83" + }, + "4946": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1681 + ], + "op": "SLOAD", + "path": "83" + }, + "4947": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1681 + ], + "op": "PUSH1", + "path": "83", + "value": "0xF" + }, + "4949": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1681 + ], + "op": "SWAP1", + "path": "83" + }, + "4950": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1681 + ], + "op": "DUP2", + "path": "83" + }, + "4951": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1636, + 1681 + ], + "op": "SIGNEXTEND", + "path": "83" + }, + "4952": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1629, + 1681 + ], + "op": "SWAP1", + "path": "83" + }, + "4953": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1629, + 1681 + ], + "op": "SIGNEXTEND", + "path": "83" + }, + "4954": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1629, + 1681 + ], + "op": "SWAP2", + "path": "83" + }, + "4955": { + "op": "POP" + }, + "4956": { + "op": "POP" + }, + "4957": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1320, + 1688 + ], + "op": "SWAP4", + "path": "83" + }, + "4958": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1320, + 1688 + ], + "op": "SWAP3", + "path": "83" + }, + "4959": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1320, + 1688 + ], + "op": "POP", + "path": "83" + }, + "4960": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1320, + 1688 + ], + "op": "POP", + "path": "83" + }, + "4961": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "offset": [ + 1320, + 1688 + ], + "op": "POP", + "path": "83" + }, + "4962": { + "fn": "BitmapAssetsHandler.getifCashNotional", + "jump": "o", + "offset": [ + 1320, + 1688 + ], + "op": "JUMP", + "path": "83" + }, + "4963": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16756, + 17863 + ], + "op": "JUMPDEST", + "path": "84" + }, + "4964": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16858, + 16881 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "4966": { + "offset": [ + 588, + 590 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "4968": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16961 + ], + "op": "DUP3", + "path": "84", + "statement": 76 + }, + "4969": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "4971": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "AND", + "path": "84" + }, + "4972": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "GT", + "path": "84" + }, + "4973": { + "branch": 387, + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16955, + 16985 + ], + "op": "ISZERO", + "path": "84" + }, + "4974": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1376" + }, + "4977": { + "branch": 387, + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "JUMPI", + "path": "84" + }, + "4978": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "4980": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "DUP1", + "path": "84" + }, + "4981": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "REVERT", + "path": "84" + }, + "4982": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16947, + 16986 + ], + "op": "JUMPDEST", + "path": "84" + }, + "4983": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16997, + 17087 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "4985": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17090, + 17127 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1380" + }, + "4988": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17090, + 17125 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1997" + }, + "4991": { + "fn": "PortfolioHandler._loadAssetArray", + "jump": "i", + "offset": [ + 17090, + 17127 + ], + "op": "JUMP", + "path": "84" + }, + "4992": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17090, + 17127 + ], + "op": "JUMPDEST", + "path": "84" + }, + "4993": { + "op": "PUSH1", + "value": "0x1" + }, + "4995": { + "op": "PUSH1", + "value": "0x1" + }, + "4997": { + "op": "PUSH1", + "value": "0xA0" + }, + "4999": { + "op": "SHL" + }, + "5000": { + "op": "SUB" + }, + "5001": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP6", + "path": "84" + }, + "5002": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "AND", + "path": "84" + }, + "5003": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17137, + 17201 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5005": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "SWAP1", + "path": "84" + }, + "5006": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP2", + "path": "84" + }, + "5007": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "MSTORE", + "path": "84" + }, + "5008": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5010": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP3", + "path": "84" + }, + "5011": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "SWAP1", + "path": "84" + }, + "5012": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "MSTORE", + "path": "84" + }, + "5013": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5015": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "DUP2", + "path": "84" + }, + "5016": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17204, + 17218 + ], + "op": "KECCAK256", + "path": "84" + }, + "5017": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16997, + 17127 + ], + "op": "SWAP2", + "path": "84" + }, + "5018": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 16997, + 17127 + ], + "op": "SWAP3", + "path": "84" + }, + "5019": { + "op": "POP" + }, + "5020": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "5022": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP6", + "path": "84" + }, + "5023": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "AND", + "path": "84" + }, + "5024": { + "op": "PUSH1", + "value": "0x1" + }, + "5026": { + "op": "PUSH1", + "value": "0x1" + }, + "5028": { + "op": "PUSH1", + "value": "0x40" + }, + "5030": { + "op": "SHL" + }, + "5031": { + "op": "SUB" + }, + "5032": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "5033": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "GT", + "path": "84" + }, + "5034": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "5035": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ISZERO", + "path": "84" + }, + "5036": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x13B4" + }, + "5039": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPI", + "path": "84" + }, + "5040": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5042": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "5043": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "REVERT", + "path": "84" + }, + "5044": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5045": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "POP", + "path": "84" + }, + "5046": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5048": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MLOAD", + "path": "84" + }, + "5049": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "5050": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "5051": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP3", + "path": "84" + }, + "5052": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MSTORE", + "path": "84" + }, + "5053": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "5054": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5056": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MUL", + "path": "84" + }, + "5057": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5059": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "5060": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP3", + "path": "84" + }, + "5061": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "5062": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5064": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MSTORE", + "path": "84" + }, + "5065": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP1", + "path": "84" + }, + "5066": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ISZERO", + "path": "84" + }, + "5067": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x13EE" + }, + "5070": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPI", + "path": "84" + }, + "5071": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "5072": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5074": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "5075": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5076": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x13DB" + }, + "5079": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2E5F" + }, + "5082": { + "fn": "PortfolioHandler._loadAssetArray", + "jump": "i", + "offset": [ + 17261, + 17289 + ], + "op": "JUMP", + "path": "84" + }, + "5083": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5084": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "5085": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "MSTORE", + "path": "84" + }, + "5086": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5088": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "ADD", + "path": "84" + }, + "5089": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "5090": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5092": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "5093": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SUB", + "path": "84" + }, + "5094": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "5095": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "DUP2", + "path": "84" + }, + "5096": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "PUSH2", + "path": "84", + "value": "0x13D3" + }, + "5099": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPI", + "path": "84" + }, + "5100": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "5101": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "POP", + "path": "84" + }, + "5102": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5103": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17261, + 17289 + ], + "op": "POP", + "path": "84" + }, + "5104": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17228, + 17289 + ], + "op": "SWAP1", + "path": "84" + }, + "5105": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17228, + 17289 + ], + "op": "POP", + "path": "84" + }, + "5106": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17305, + 17314 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5108": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5109": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17324, + 17330 + ], + "op": "DUP6", + "path": "84" + }, + "5110": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17330 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "5112": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17330 + ], + "op": "AND", + "path": "84" + }, + "5113": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17321 + ], + "op": "DUP2", + "path": "84" + }, + "5114": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17320, + 17330 + ], + "op": "LT", + "path": "84" + }, + "5115": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "ISZERO", + "path": "84" + }, + "5116": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "PUSH2", + "path": "84", + "value": "0x62B" + }, + "5119": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMPI", + "path": "84" + }, + "5120": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17351, + 17393 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5122": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17408 + ], + "op": "DUP4", + "path": "84" + }, + "5123": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17409, + 17410 + ], + "op": "DUP3", + "path": "84" + }, + "5124": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "5126": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "DUP2", + "path": "84" + }, + "5127": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "LT", + "path": "84" + }, + "5128": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "PUSH2", + "path": "84", + "value": "0x140D" + }, + "5131": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "JUMPI", + "path": "84" + }, + "5132": { + "dev": "Index out of range", + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "INVALID", + "path": "84" + }, + "5133": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5134": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17396, + 17411 + ], + "op": "ADD", + "path": "84" + }, + "5135": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17351, + 17411 + ], + "op": "SWAP1", + "path": "84" + }, + "5136": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17351, + 17411 + ], + "op": "POP", + "path": "84" + }, + "5137": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17425, + 17452 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5139": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17461 + ], + "op": "DUP4", + "path": "84" + }, + "5140": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17462, + 17463 + ], + "op": "DUP4", + "path": "84" + }, + "5141": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "5142": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "MLOAD", + "path": "84" + }, + "5143": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "5144": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "LT", + "path": "84" + }, + "5145": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "PUSH2", + "path": "84", + "value": "0x141E" + }, + "5148": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "JUMPI", + "path": "84" + }, + "5149": { + "dev": "Index out of range", + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "INVALID", + "path": "84" + }, + "5150": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5151": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5153": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP1", + "path": "84" + }, + "5154": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "5155": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "MUL", + "path": "84" + }, + "5156": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP2", + "path": "84" + }, + "5157": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP1", + "path": "84" + }, + "5158": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "SWAP2", + "path": "84" + }, + "5159": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "ADD", + "path": "84" + }, + "5160": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "DUP2", + "path": "84" + }, + "5161": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "ADD", + "path": "84" + }, + "5162": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17455, + 17464 + ], + "op": "MLOAD", + "path": "84" + }, + "5163": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "DUP4", + "path": "84", + "statement": 77 + }, + "5164": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "SLOAD", + "path": "84" + }, + "5165": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "PUSH2", + "path": "84", + "value": "0xFFFF" + }, + "5168": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "DUP2", + "path": "84" + }, + "5169": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "AND", + "path": "84" + }, + "5170": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17584, + 17626 + ], + "op": "DUP3", + "path": "84" + }, + "5171": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17584, + 17626 + ], + "op": "MSTORE", + "path": "84" + }, + "5172": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "PUSH5", + "path": "84", + "statement": 78, + "value": "0xFFFFFFFFFF" + }, + "5178": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "PUSH3", + "path": "84", + "value": "0x10000" + }, + "5182": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "DUP3", + "path": "84" + }, + "5183": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "DIV", + "path": "84" + }, + "5184": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17657, + 17678 + ], + "op": "AND", + "path": "84" + }, + "5185": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17654 + ], + "op": "SWAP3", + "path": "84" + }, + "5186": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17654 + ], + "op": "DUP3", + "path": "84" + }, + "5187": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17654 + ], + "op": "ADD", + "path": "84" + }, + "5188": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "SWAP3", + "path": "84" + }, + "5189": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "SWAP1", + "path": "84" + }, + "5190": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "SWAP3", + "path": "84" + }, + "5191": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17640, + 17678 + ], + "op": "MSTORE", + "path": "84" + }, + "5192": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "PUSH1", + "path": "84", + "statement": 79, + "value": "0xFF" + }, + "5194": { + "op": "PUSH1", + "value": "0x1" + }, + "5196": { + "op": "PUSH1", + "value": "0x38" + }, + "5198": { + "op": "SHL" + }, + "5199": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "DUP4", + "path": "84" + }, + "5200": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "DIV", + "path": "84" + }, + "5201": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17710, + 17732 + ], + "op": "AND", + "path": "84" + }, + "5202": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17707 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5204": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17707 + ], + "op": "DUP3", + "path": "84" + }, + "5205": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17707 + ], + "op": "ADD", + "path": "84" + }, + "5206": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17692, + 17732 + ], + "op": "MSTORE", + "path": "84" + }, + "5207": { + "op": "PUSH1", + "value": "0x1" + }, + "5209": { + "op": "PUSH1", + "value": "0x40" + }, + "5211": { + "op": "SHL" + }, + "5212": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SWAP1", + "path": "84", + "statement": 80 + }, + "5213": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SWAP2", + "path": "84" + }, + "5214": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "DIV", + "path": "84" + }, + "5215": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA" + }, + "5217": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SWAP1", + "path": "84" + }, + "5218": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "DUP2", + "path": "84" + }, + "5219": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17763, + 17784 + ], + "op": "SIGNEXTEND", + "path": "84" + }, + "5220": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17784 + ], + "op": "SWAP1", + "path": "84" + }, + "5221": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17784 + ], + "op": "SIGNEXTEND", + "path": "84" + }, + "5222": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17760 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "5224": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17760 + ], + "op": "DUP3", + "path": "84" + }, + "5225": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17760 + ], + "op": "ADD", + "path": "84" + }, + "5226": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17746, + 17784 + ], + "op": "MSTORE", + "path": "84" + }, + "5227": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17815 + ], + "op": "PUSH1", + "path": "84", + "statement": 81, + "value": "0x80" + }, + "5229": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17815 + ], + "op": "ADD", + "path": "84" + }, + "5230": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "SWAP2", + "path": "84" + }, + "5231": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "SWAP1", + "path": "84" + }, + "5232": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "SWAP2", + "path": "84" + }, + "5233": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17798, + 17822 + ], + "op": "MSTORE", + "path": "84" + }, + "5234": { + "op": "POP" + }, + "5235": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17603, + 17626 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5237": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17332, + 17335 + ], + "op": "ADD", + "path": "84", + "statement": 82 + }, + "5238": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "PUSH2", + "path": "84", + "value": "0x13F4" + }, + "5241": { + "fn": "PortfolioHandler._loadAssetArray", + "offset": [ + 17300, + 17833 + ], + "op": "JUMP", + "path": "84" + }, + "5242": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15921, + 16750 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5243": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16015, + 16028 + ], + "op": "DUP1", + "path": "84" + }, + "5244": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16015, + 16028 + ], + "op": "MLOAD", + "path": "84" + }, + "5245": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15998, + 16012 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5247": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16015, + 16028 + ], + "op": "DUP2", + "path": "84" + }, + "5248": { + "op": "PUSH1", + "value": "0x1" + }, + "5250": { + "op": "PUSH1", + "value": "0x1" + }, + "5252": { + "op": "PUSH1", + "value": "0x40" + }, + "5254": { + "op": "SHL" + }, + "5255": { + "op": "SUB" + }, + "5256": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP2", + "path": "84" + }, + "5257": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "GT", + "path": "84" + }, + "5258": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "5259": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ISZERO", + "path": "84" + }, + "5260": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1494" + }, + "5263": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPI", + "path": "84" + }, + "5264": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5266": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "5267": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "REVERT", + "path": "84" + }, + "5268": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5269": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "POP", + "path": "84" + }, + "5270": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5272": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MLOAD", + "path": "84" + }, + "5273": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "SWAP1", + "path": "84" + }, + "5274": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "5275": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP3", + "path": "84" + }, + "5276": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MSTORE", + "path": "84" + }, + "5277": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "5278": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5280": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MUL", + "path": "84" + }, + "5281": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5283": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "5284": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP3", + "path": "84" + }, + "5285": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "5286": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5288": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MSTORE", + "path": "84" + }, + "5289": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "5290": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ISZERO", + "path": "84" + }, + "5291": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH2", + "path": "84", + "value": "0x14BE" + }, + "5294": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPI", + "path": "84" + }, + "5295": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP2", + "path": "84" + }, + "5296": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5298": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "5299": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5301": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP3", + "path": "84" + }, + "5302": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "MUL", + "path": "84" + }, + "5303": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP1", + "path": "84" + }, + "5304": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "CALLDATASIZE", + "path": "84" + }, + "5305": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "DUP4", + "path": "84" + }, + "5306": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "CALLDATACOPY", + "path": "84" + }, + "5307": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "ADD", + "path": "84" + }, + "5308": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "SWAP1", + "path": "84" + }, + "5309": { + "op": "POP" + }, + "5310": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5311": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16061, + 16082 + ], + "op": "POP", + "path": "84" + }, + "5312": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16038, + 16082 + ], + "op": "SWAP1", + "path": "84" + }, + "5313": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16038, + 16082 + ], + "op": "POP", + "path": "84" + }, + "5314": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16097, + 16106 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5316": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5317": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16112, + 16118 + ], + "op": "DUP3", + "path": "84" + }, + "5318": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16108, + 16109 + ], + "op": "DUP2", + "path": "84" + }, + "5319": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16108, + 16118 + ], + "op": "LT", + "path": "84" + }, + "5320": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "ISZERO", + "path": "84" + }, + "5321": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "PUSH2", + "path": "84", + "value": "0x151B" + }, + "5324": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMPI", + "path": "84" + }, + "5325": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16139, + 16166 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5327": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16175 + ], + "op": "DUP5", + "path": "84" + }, + "5328": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16176, + 16177 + ], + "op": "DUP3", + "path": "84" + }, + "5329": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "DUP2", + "path": "84" + }, + "5330": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "MLOAD", + "path": "84" + }, + "5331": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "DUP2", + "path": "84" + }, + "5332": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "LT", + "path": "84" + }, + "5333": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "PUSH2", + "path": "84", + "value": "0x14DA" + }, + "5336": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "JUMPI", + "path": "84" + }, + "5337": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "INVALID", + "path": "84" + }, + "5338": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5339": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5341": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "MUL", + "path": "84" + }, + "5342": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5344": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "ADD", + "path": "84" + }, + "5345": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "ADD", + "path": "84" + }, + "5346": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16169, + 16178 + ], + "op": "MLOAD", + "path": "84" + }, + "5347": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16139, + 16178 + ], + "op": "SWAP1", + "path": "84" + }, + "5348": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16139, + 16178 + ], + "op": "POP", + "path": "84" + }, + "5349": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16259, + 16338 + ], + "op": "PUSH2", + "path": "84", + "statement": 83, + "value": "0x14FB" + }, + "5352": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16293 + ], + "op": "DUP2", + "path": "84" + }, + "5353": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16304 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5355": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16304 + ], + "op": "ADD", + "path": "84" + }, + "5356": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16288, + 16304 + ], + "op": "MLOAD", + "path": "84" + }, + "5357": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16311 + ], + "op": "DUP3", + "path": "84" + }, + "5358": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16320 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5360": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16320 + ], + "op": "ADD", + "path": "84" + }, + "5361": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16306, + 16320 + ], + "op": "MLOAD", + "path": "84" + }, + "5362": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16327 + ], + "op": "DUP4", + "path": "84" + }, + "5363": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16337 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "5365": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16337 + ], + "op": "ADD", + "path": "84" + }, + "5366": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16322, + 16337 + ], + "op": "MLOAD", + "path": "84" + }, + "5367": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16259, + 16287 + ], + "op": "PUSH2", + "path": "84", + "value": "0x124C" + }, + "5370": { + "fn": "PortfolioHandler._sortInPlace", + "jump": "i", + "offset": [ + 16259, + 16338 + ], + "op": "JUMP", + "path": "84" + }, + "5371": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16259, + 16338 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5372": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16253 + ], + "op": "DUP4", + "path": "84" + }, + "5373": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16254, + 16255 + ], + "op": "DUP4", + "path": "84" + }, + "5374": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "DUP2", + "path": "84" + }, + "5375": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "MLOAD", + "path": "84" + }, + "5376": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "DUP2", + "path": "84" + }, + "5377": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "LT", + "path": "84" + }, + "5378": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1507" + }, + "5381": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "JUMPI", + "path": "84" + }, + "5382": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "INVALID", + "path": "84" + }, + "5383": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5384": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5386": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP1", + "path": "84" + }, + "5387": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "DUP2", + "path": "84" + }, + "5388": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "MUL", + "path": "84" + }, + "5389": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP2", + "path": "84" + }, + "5390": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP1", + "path": "84" + }, + "5391": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "SWAP2", + "path": "84" + }, + "5392": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "ADD", + "path": "84" + }, + "5393": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16256 + ], + "op": "ADD", + "path": "84" + }, + "5394": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16250, + 16338 + ], + "op": "MSTORE", + "path": "84" + }, + "5395": { + "op": "POP" + }, + "5396": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16120, + 16123 + ], + "op": "PUSH1", + "path": "84", + "statement": 84, + "value": "0x1" + }, + "5398": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16120, + 16123 + ], + "op": "ADD", + "path": "84" + }, + "5399": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "PUSH2", + "path": "84", + "value": "0x14C4" + }, + "5402": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMP", + "path": "84" + }, + "5403": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16092, + 16349 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5404": { + "op": "POP" + }, + "5405": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16403, + 16404 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5407": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5408": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16425, + 16431 + ], + "op": "DUP3", + "path": "84" + }, + "5409": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16421, + 16422 + ], + "op": "DUP2", + "path": "84" + }, + "5410": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16421, + 16431 + ], + "op": "LT", + "path": "84" + }, + "5411": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "ISZERO", + "path": "84" + }, + "5412": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1632" + }, + "5415": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMPI", + "path": "84" + }, + "5416": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16459, + 16460 + ], + "op": "DUP1", + "path": "84" + }, + "5417": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5418": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16485, + 16486 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "5420": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16482 + ], + "op": "DUP2", + "path": "84" + }, + "5421": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16486 + ], + "op": "GT", + "path": "84" + }, + "5422": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "DUP1", + "path": "84" + }, + "5423": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "ISZERO", + "path": "84" + }, + "5424": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1561" + }, + "5427": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "JUMPI", + "path": "84" + }, + "5428": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "POP", + "path": "84" + }, + "5429": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16506 + ], + "op": "DUP3", + "path": "84" + }, + "5430": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16507, + 16508 + ], + "op": "DUP2", + "path": "84" + }, + "5431": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "DUP2", + "path": "84" + }, + "5432": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "MLOAD", + "path": "84" + }, + "5433": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "DUP2", + "path": "84" + }, + "5434": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "LT", + "path": "84" + }, + "5435": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1540" + }, + "5438": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "JUMPI", + "path": "84" + }, + "5439": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "INVALID", + "path": "84" + }, + "5440": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5441": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5443": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "MUL", + "path": "84" + }, + "5444": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5446": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "ADD", + "path": "84" + }, + "5447": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "ADD", + "path": "84" + }, + "5448": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16503, + 16509 + ], + "op": "MLOAD", + "path": "84" + }, + "5449": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16493 + ], + "op": "DUP4", + "path": "84" + }, + "5450": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16498, + 16499 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5452": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16494, + 16495 + ], + "op": "DUP4", + "path": "84" + }, + "5453": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16494, + 16499 + ], + "op": "SUB", + "path": "84" + }, + "5454": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "DUP2", + "path": "84" + }, + "5455": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "MLOAD", + "path": "84" + }, + "5456": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "DUP2", + "path": "84" + }, + "5457": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "LT", + "path": "84" + }, + "5458": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1557" + }, + "5461": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "JUMPI", + "path": "84" + }, + "5462": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "INVALID", + "path": "84" + }, + "5463": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5464": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5466": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "MUL", + "path": "84" + }, + "5467": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5469": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "ADD", + "path": "84" + }, + "5470": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "ADD", + "path": "84" + }, + "5471": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16500 + ], + "op": "MLOAD", + "path": "84" + }, + "5472": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16490, + 16509 + ], + "op": "GT", + "path": "84" + }, + "5473": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16481, + 16509 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5474": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "ISZERO", + "path": "84" + }, + "5475": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1629" + }, + "5478": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMPI", + "path": "84" + }, + "5479": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16592 + ], + "op": "DUP3", + "path": "84", + "statement": 85 + }, + "5480": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16593, + 16594 + ], + "op": "DUP2", + "path": "84" + }, + "5481": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "DUP2", + "path": "84" + }, + "5482": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "MLOAD", + "path": "84" + }, + "5483": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "DUP2", + "path": "84" + }, + "5484": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "LT", + "path": "84" + }, + "5485": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1572" + }, + "5488": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "JUMPI", + "path": "84" + }, + "5489": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "INVALID", + "path": "84" + }, + "5490": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5491": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5493": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "MUL", + "path": "84" + }, + "5494": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5496": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "ADD", + "path": "84" + }, + "5497": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "ADD", + "path": "84" + }, + "5498": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16589, + 16595 + ], + "op": "MLOAD", + "path": "84" + }, + "5499": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16600 + ], + "op": "DUP4", + "path": "84" + }, + "5500": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16605, + 16606 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5502": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16601, + 16602 + ], + "op": "DUP4", + "path": "84" + }, + "5503": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16601, + 16606 + ], + "op": "SUB", + "path": "84" + }, + "5504": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "DUP2", + "path": "84" + }, + "5505": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "MLOAD", + "path": "84" + }, + "5506": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "DUP2", + "path": "84" + }, + "5507": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "LT", + "path": "84" + }, + "5508": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1589" + }, + "5511": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "JUMPI", + "path": "84" + }, + "5512": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "INVALID", + "path": "84" + }, + "5513": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5514": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5516": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "MUL", + "path": "84" + }, + "5517": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5519": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "ADD", + "path": "84" + }, + "5520": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "ADD", + "path": "84" + }, + "5521": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16597, + 16607 + ], + "op": "MLOAD", + "path": "84" + }, + "5522": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16569 + ], + "op": "DUP5", + "path": "84" + }, + "5523": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16574, + 16575 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5525": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16570, + 16571 + ], + "op": "DUP5", + "path": "84" + }, + "5526": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16570, + 16575 + ], + "op": "SUB", + "path": "84" + }, + "5527": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "DUP2", + "path": "84" + }, + "5528": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "MLOAD", + "path": "84" + }, + "5529": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "DUP2", + "path": "84" + }, + "5530": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "LT", + "path": "84" + }, + "5531": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "PUSH2", + "path": "84", + "value": "0x15A0" + }, + "5534": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "JUMPI", + "path": "84" + }, + "5535": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "INVALID", + "path": "84" + }, + "5536": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5537": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5539": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "MUL", + "path": "84" + }, + "5540": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5542": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "ADD", + "path": "84" + }, + "5543": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16566, + 16576 + ], + "op": "ADD", + "path": "84" + }, + "5544": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16581 + ], + "op": "DUP6", + "path": "84" + }, + "5545": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16582, + 16583 + ], + "op": "DUP5", + "path": "84" + }, + "5546": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "DUP2", + "path": "84" + }, + "5547": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "MLOAD", + "path": "84" + }, + "5548": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "DUP2", + "path": "84" + }, + "5549": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "LT", + "path": "84" + }, + "5550": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "PUSH2", + "path": "84", + "value": "0x15B3" + }, + "5553": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "JUMPI", + "path": "84" + }, + "5554": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "INVALID", + "path": "84" + }, + "5555": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5556": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5558": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "MUL", + "path": "84" + }, + "5559": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5561": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "ADD", + "path": "84" + }, + "5562": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16578, + 16584 + ], + "op": "ADD", + "path": "84" + }, + "5563": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP3", + "path": "84" + }, + "5564": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP2", + "path": "84" + }, + "5565": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "MSTORE", + "path": "84" + }, + "5566": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "5567": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP3", + "path": "84" + }, + "5568": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "DUP2", + "path": "84" + }, + "5569": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "MSTORE", + "path": "84" + }, + "5570": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "5571": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "5572": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16565, + 16608 + ], + "op": "POP", + "path": "84" + }, + "5573": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16662 + ], + "op": "DUP5", + "path": "84", + "statement": 86 + }, + "5574": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16663, + 16664 + ], + "op": "DUP2", + "path": "84" + }, + "5575": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "DUP2", + "path": "84" + }, + "5576": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "MLOAD", + "path": "84" + }, + "5577": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "DUP2", + "path": "84" + }, + "5578": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "LT", + "path": "84" + }, + "5579": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "PUSH2", + "path": "84", + "value": "0x15D0" + }, + "5582": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "JUMPI", + "path": "84" + }, + "5583": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "INVALID", + "path": "84" + }, + "5584": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5585": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5587": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "MUL", + "path": "84" + }, + "5588": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5590": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "ADD", + "path": "84" + }, + "5591": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "ADD", + "path": "84" + }, + "5592": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16656, + 16665 + ], + "op": "MLOAD", + "path": "84" + }, + "5593": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16673 + ], + "op": "DUP6", + "path": "84" + }, + "5594": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16678, + 16679 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5596": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16674, + 16675 + ], + "op": "DUP4", + "path": "84" + }, + "5597": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16674, + 16679 + ], + "op": "SUB", + "path": "84" + }, + "5598": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "DUP2", + "path": "84" + }, + "5599": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "MLOAD", + "path": "84" + }, + "5600": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "DUP2", + "path": "84" + }, + "5601": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "LT", + "path": "84" + }, + "5602": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "PUSH2", + "path": "84", + "value": "0x15E7" + }, + "5605": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "JUMPI", + "path": "84" + }, + "5606": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "INVALID", + "path": "84" + }, + "5607": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5608": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5610": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "MUL", + "path": "84" + }, + "5611": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5613": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "ADD", + "path": "84" + }, + "5614": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "ADD", + "path": "84" + }, + "5615": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16667, + 16680 + ], + "op": "MLOAD", + "path": "84" + }, + "5616": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16633 + ], + "op": "DUP7", + "path": "84" + }, + "5617": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16638, + 16639 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "5619": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16634, + 16635 + ], + "op": "DUP5", + "path": "84" + }, + "5620": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16634, + 16639 + ], + "op": "SUB", + "path": "84" + }, + "5621": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "DUP2", + "path": "84" + }, + "5622": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "MLOAD", + "path": "84" + }, + "5623": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "DUP2", + "path": "84" + }, + "5624": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "LT", + "path": "84" + }, + "5625": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "PUSH2", + "path": "84", + "value": "0x15FE" + }, + "5628": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "JUMPI", + "path": "84" + }, + "5629": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "INVALID", + "path": "84" + }, + "5630": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5631": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5633": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "MUL", + "path": "84" + }, + "5634": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5636": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "ADD", + "path": "84" + }, + "5637": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16627, + 16640 + ], + "op": "ADD", + "path": "84" + }, + "5638": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16648 + ], + "op": "DUP8", + "path": "84" + }, + "5639": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16649, + 16650 + ], + "op": "DUP5", + "path": "84" + }, + "5640": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "DUP2", + "path": "84" + }, + "5641": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "MLOAD", + "path": "84" + }, + "5642": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "DUP2", + "path": "84" + }, + "5643": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "LT", + "path": "84" + }, + "5644": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1611" + }, + "5647": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "JUMPI", + "path": "84" + }, + "5648": { + "dev": "Index out of range", + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "INVALID", + "path": "84" + }, + "5649": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5650": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "5652": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP1", + "path": "84" + }, + "5653": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "DUP2", + "path": "84" + }, + "5654": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "MUL", + "path": "84" + }, + "5655": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP2", + "path": "84" + }, + "5656": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP1", + "path": "84" + }, + "5657": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "SWAP2", + "path": "84" + }, + "5658": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "ADD", + "path": "84" + }, + "5659": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16642, + 16651 + ], + "op": "ADD", + "path": "84" + }, + "5660": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "SWAP2", + "path": "84" + }, + "5661": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "SWAP1", + "path": "84" + }, + "5662": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "SWAP2", + "path": "84" + }, + "5663": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "MSTORE", + "path": "84" + }, + "5664": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16626, + 16681 + ], + "op": "MSTORE", + "path": "84" + }, + "5665": { + "op": "PUSH1", + "value": "0x0" + }, + "5667": { + "op": "NOT" + }, + "5668": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16699, + 16702 + ], + "op": "ADD", + "path": "84", + "statement": 87 + }, + "5669": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1529" + }, + "5672": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMP", + "path": "84" + }, + "5673": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16474, + 16717 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5674": { + "op": "POP" + }, + "5675": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16730, + 16733 + ], + "op": "PUSH1", + "path": "84", + "statement": 88, + "value": "0x1" + }, + "5677": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16730, + 16733 + ], + "op": "ADD", + "path": "84" + }, + "5678": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "PUSH2", + "path": "84", + "value": "0x151F" + }, + "5681": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMP", + "path": "84" + }, + "5682": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 16414, + 16744 + ], + "op": "JUMPDEST", + "path": "84" + }, + "5683": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15921, + 16750 + ], + "op": "POP", + "path": "84" + }, + "5684": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15921, + 16750 + ], + "op": "POP", + "path": "84" + }, + "5685": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15921, + 16750 + ], + "op": "POP", + "path": "84" + }, + "5686": { + "fn": "PortfolioHandler._sortInPlace", + "offset": [ + 15921, + 16750 + ], + "op": "POP", + "path": "84" + }, + "5687": { + "fn": "PortfolioHandler._sortInPlace", + "jump": "o", + "offset": [ + 15921, + 16750 + ], + "op": "JUMP", + "path": "84" + }, + "5688": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1296, + 1762 + ], + "op": "JUMPDEST", + "path": "28" + }, + "5689": { + "op": "PUSH1", + "value": "0x1" + }, + "5691": { + "op": "PUSH1", + "value": "0x1" + }, + "5693": { + "op": "PUSH1", + "value": "0xA0" + }, + "5695": { + "op": "SHL" + }, + "5696": { + "op": "SUB" + }, + "5697": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1374, + 1402 + ], + "op": "DUP2", + "path": "28", + "statement": 89 + }, + "5698": { + "branch": 347, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1374, + 1402 + ], + "op": "AND", + "path": "28" + }, + "5699": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "PUSH2", + "path": "28", + "value": "0x164B" + }, + "5702": { + "branch": 347, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "JUMPI", + "path": "28" + }, + "5703": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "5705": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "DUP1", + "path": "28" + }, + "5706": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "REVERT", + "path": "28" + }, + "5707": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1366, + 1403 + ], + "op": "JUMPDEST", + "path": "28" + }, + "5708": { + "op": "PUSH1", + "value": "0x1" + }, + "5710": { + "op": "PUSH1", + "value": "0x1" + }, + "5712": { + "op": "PUSH1", + "value": "0xA0" + }, + "5714": { + "op": "SHL" + }, + "5715": { + "op": "SUB" + }, + "5716": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "DUP2", + "path": "28", + "statement": 90 + }, + "5717": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "AND", + "path": "28" + }, + "5718": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1473, + 1477 + ], + "op": "ADDRESS", + "path": "28" + }, + "5719": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "EQ", + "path": "28" + }, + "5720": { + "branch": 348, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1454, + 1478 + ], + "op": "ISZERO", + "path": "28" + }, + "5721": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "PUSH2", + "path": "28", + "value": "0x1661" + }, + "5724": { + "branch": 348, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "JUMPI", + "path": "28" + }, + "5725": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "5727": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "DUP1", + "path": "28" + }, + "5728": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "REVERT", + "path": "28" + }, + "5729": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1446, + 1479 + ], + "op": "JUMPDEST", + "path": "28" + }, + "5730": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1503, + 1519 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "5732": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1684, + 1723 + ], + "op": "PUSH2", + "path": "28", + "value": "0x166C" + }, + "5735": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1715, + 1722 + ], + "op": "DUP3", + "path": "28" + }, + "5736": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1684, + 1714 + ], + "op": "PUSH2", + "path": "28", + "value": "0x19A4" + }, + "5739": { + "fn": "ActionGuards.requireValidAccount", + "jump": "i", + "offset": [ + 1684, + 1723 + ], + "op": "JUMP", + "path": "28" + }, + "5740": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1684, + 1723 + ], + "op": "JUMPDEST", + "path": "28" + }, + "5741": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "5742": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "5743": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "5744": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "5745": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "PUSH2", + "path": "28", + "value": "0xFFFF" + }, + "5748": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "AND", + "path": "28" + }, + "5749": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "SWAP1", + "path": "28" + }, + "5750": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1489, + 1723 + ], + "op": "POP", + "path": "28" + }, + "5751": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1741, + 1749 + ], + "op": "DUP1", + "path": "28", + "statement": 91 + }, + "5752": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1753, + 1754 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "5754": { + "branch": 349, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1741, + 1754 + ], + "op": "EQ", + "path": "28" + }, + "5755": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "PUSH2", + "path": "28", + "value": "0xC7A" + }, + "5758": { + "branch": 349, + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "JUMPI", + "path": "28" + }, + "5759": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "PUSH1", + "path": "28", + "value": "0x0" + }, + "5761": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "DUP1", + "path": "28" + }, + "5762": { + "fn": "ActionGuards.requireValidAccount", + "offset": [ + 1733, + 1755 + ], + "op": "REVERT", + "path": "28" + }, + "5763": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3020, + 3752 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5764": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3107, + 3111 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5766": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3143, + 3158 + ], + "op": "TIMESTAMP", + "path": "66" + }, + "5767": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3173, + 3204 + ], + "op": "PUSH2", + "path": "66", + "value": "0x168F" + }, + "5770": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3189, + 3203 + ], + "op": "DUP4", + "path": "66" + }, + "5771": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3173, + 3188 + ], + "op": "PUSH2", + "path": "66", + "value": "0xAD7" + }, + "5774": { + "fn": "AccountContextHandler.mustSettleAssets", + "jump": "i", + "offset": [ + 3173, + 3204 + ], + "op": "JUMP", + "path": "66" + }, + "5775": { + "branch": 324, + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3173, + 3204 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5776": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "ISZERO", + "path": "66" + }, + "5777": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "PUSH2", + "path": "66", + "value": "0x16B0" + }, + "5780": { + "branch": 324, + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "JUMPI", + "path": "66" + }, + "5781": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3389, + 3420 + ], + "op": "PUSH2", + "path": "66", + "statement": 92, + "value": "0x169D" + }, + "5784": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3410, + 3419 + ], + "op": "DUP2", + "path": "66" + }, + "5785": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3389, + 3409 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1A0D" + }, + "5788": { + "fn": "AccountContextHandler.mustSettleAssets", + "jump": "i", + "offset": [ + 3389, + 3420 + ], + "op": "JUMP", + "path": "66" + }, + "5789": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3389, + 3420 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5790": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3386 + ], + "op": "DUP4", + "path": "66" + }, + "5791": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3386 + ], + "op": "MLOAD", + "path": "66" + }, + "5792": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "5798": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "AND", + "path": "66" + }, + "5799": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "LT", + "path": "66" + }, + "5800": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3357, + 3420 + ], + "op": "SWAP2", + "path": "66" + }, + "5801": { + "op": "POP" + }, + "5802": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3350, + 3420 + ], + "op": "PUSH2", + "path": "66", + "value": "0x327" + }, + "5805": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3350, + 3420 + ], + "op": "SWAP1", + "path": "66" + }, + "5806": { + "op": "POP" + }, + "5807": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3350, + 3420 + ], + "op": "JUMP", + "path": "66" + }, + "5808": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3169, + 3746 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5809": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3660, + 3689 + ], + "op": "DUP3", + "path": "66", + "statement": 93 + }, + "5810": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3660, + 3689 + ], + "op": "MLOAD", + "path": "66" + }, + "5811": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "5817": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "AND", + "path": "66" + }, + "5818": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "ISZERO", + "path": "66" + }, + "5819": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "DUP1", + "path": "66" + }, + "5820": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "ISZERO", + "path": "66" + }, + "5821": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3689 + ], + "op": "SWAP1", + "path": "66" + }, + "5822": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3735 + ], + "op": "PUSH2", + "path": "66", + "value": "0x16CF" + }, + "5825": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3735 + ], + "op": "JUMPI", + "path": "66" + }, + "5826": { + "op": "POP" + }, + "5827": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3722 + ], + "op": "DUP3", + "path": "66" + }, + "5828": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3722 + ], + "op": "MLOAD", + "path": "66" + }, + "5829": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "5835": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "AND", + "path": "66" + }, + "5836": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "DUP2", + "path": "66" + }, + "5837": { + "op": "LT" + }, + "5838": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3693, + 3735 + ], + "op": "ISZERO", + "path": "66" + }, + "5839": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3656, + 3735 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5840": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "SWAP2", + "path": "66" + }, + "5841": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "POP", + "path": "66" + }, + "5842": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "POP", + "path": "66" + }, + "5843": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "PUSH2", + "path": "66", + "value": "0x327" + }, + "5846": { + "fn": "AccountContextHandler.mustSettleAssets", + "offset": [ + 3649, + 3735 + ], + "op": "JUMP", + "path": "66" + }, + "5847": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 1997, + 3132 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5848": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2162, + 2183 + ], + "op": "PUSH2", + "path": "85", + "value": "0x16DF" + }, + "5851": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2162, + 2183 + ], + "op": "PUSH2", + "path": "85", + "value": "0x2E31" + }, + "5854": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2162, + 2183 + ], + "op": "JUMP", + "path": "85" + }, + "5855": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2162, + 2183 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5856": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2323, + 2356 + ], + "op": "PUSH2", + "path": "85", + "statement": 94, + "value": "0x16E8" + }, + "5859": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2323, + 2337 + ], + "op": "DUP4", + "path": "85" + }, + "5860": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2323, + 2354 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1683" + }, + "5863": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2323, + 2356 + ], + "op": "JUMP", + "path": "85" + }, + "5864": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2323, + 2356 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5865": { + "branch": 449, + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2322, + 2356 + ], + "op": "ISZERO", + "path": "85" + }, + "5866": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1705" + }, + "5869": { + "branch": 449, + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "JUMPI", + "path": "85" + }, + "5870": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "PUSH1", + "path": "85", + "value": "0x40" + }, + "5872": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "MLOAD", + "path": "85" + }, + "5873": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "5877": { + "op": "PUSH1", + "value": "0xE5" + }, + "5879": { + "op": "SHL" + }, + "5880": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "DUP2", + "path": "85" + }, + "5881": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "MSTORE", + "path": "85" + }, + "5882": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "PUSH1", + "path": "85", + "value": "0x4" + }, + "5884": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "ADD", + "path": "85" + }, + "5885": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "PUSH2", + "path": "85", + "value": "0x3D8" + }, + "5888": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "SWAP1", + "path": "85" + }, + "5889": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "PUSH2", + "path": "85", + "value": "0x370D" + }, + "5892": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2314, + 2380 + ], + "op": "JUMP", + "path": "85" + }, + "5893": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2314, + 2380 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5894": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2395, + 2427 + ], + "op": "PUSH2", + "path": "85", + "value": "0x170E" + }, + "5897": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2395, + 2409 + ], + "op": "DUP4", + "path": "85" + }, + "5898": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2395, + 2425 + ], + "op": "PUSH2", + "path": "85", + "value": "0xAD7" + }, + "5901": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2395, + 2427 + ], + "op": "JUMP", + "path": "85" + }, + "5902": { + "branch": 450, + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2395, + 2427 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5903": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "ISZERO", + "path": "85" + }, + "5904": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1723" + }, + "5907": { + "branch": 450, + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "JUMPI", + "path": "85" + }, + "5908": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2515, + 2591 + ], + "op": "PUSH2", + "path": "85", + "statement": 95, + "value": "0x171E" + }, + "5911": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2559, + 2566 + ], + "op": "DUP5", + "path": "85" + }, + "5912": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2568, + 2582 + ], + "op": "DUP5", + "path": "85" + }, + "5913": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2584, + 2590 + ], + "op": "DUP5", + "path": "85" + }, + "5914": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2515, + 2558 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1A2E" + }, + "5917": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2515, + 2591 + ], + "op": "JUMP", + "path": "85" + }, + "5918": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2515, + 2591 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5919": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1750" + }, + "5922": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "JUMP", + "path": "85" + }, + "5923": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5924": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2622, + 2658 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "5926": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2661, + 2816 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1735" + }, + "5929": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2715, + 2722 + ], + "op": "DUP6", + "path": "85" + }, + "5930": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2740, + 2754 + ], + "op": "DUP6", + "path": "85" + }, + "5931": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2740, + 2771 + ], + "op": "PUSH1", + "path": "85", + "value": "0x40" + }, + "5933": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2740, + 2771 + ], + "op": "ADD", + "path": "85" + }, + "5934": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2740, + 2771 + ], + "op": "MLOAD", + "path": "85" + }, + "5935": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2789, + 2795 + ], + "op": "DUP6", + "path": "85" + }, + "5936": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2789, + 2802 + ], + "op": "MLOAD", + "path": "85" + }, + "5937": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2661, + 2697 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1AF6" + }, + "5940": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2661, + 2816 + ], + "op": "JUMP", + "path": "85" + }, + "5941": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2661, + 2816 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5942": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2622, + 2816 + ], + "op": "SWAP1", + "path": "85" + }, + "5943": { + "op": "POP" + }, + "5944": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2876, + 2916 + ], + "op": "PUSH2", + "path": "85", + "statement": 96, + "value": "0x1741" + }, + "5947": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2622, + 2816 + ], + "op": "DUP2", + "path": "85" + }, + "5948": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2909, + 2915 + ], + "op": "DUP5", + "path": "85" + }, + "5949": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2876, + 2908 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1B88" + }, + "5952": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 2876, + 2916 + ], + "op": "JUMP", + "path": "85" + }, + "5953": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2876, + 2916 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5954": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3009, + 3083 + ], + "op": "PUSH2", + "path": "85", + "statement": 97, + "value": "0x174E" + }, + "5957": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3009, + 3023 + ], + "op": "DUP5", + "path": "85" + }, + "5958": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3052, + 3059 + ], + "op": "DUP7", + "path": "85" + }, + "5959": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3061, + 3075 + ], + "op": "DUP4", + "path": "85" + }, + "5960": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3077, + 3082 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "5962": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3009, + 3051 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1BE6" + }, + "5965": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "i", + "offset": [ + 3009, + 3083 + ], + "op": "JUMP", + "path": "85" + }, + "5966": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3009, + 3083 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5967": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "POP", + "path": "85" + }, + "5968": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 2391, + 3094 + ], + "op": "JUMPDEST", + "path": "85" + }, + "5969": { + "op": "POP" + }, + "5970": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3111, + 3125 + ], + "op": "SWAP1", + "path": "85", + "statement": 98 + }, + "5971": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 3111, + 3125 + ], + "op": "SWAP3", + "path": "85" + }, + "5972": { + "fn": "TransferAssets.placeAssetsInAccount", + "offset": [ + 1997, + 3132 + ], + "op": "SWAP2", + "path": "85" + }, + "5973": { + "op": "POP" + }, + "5974": { + "op": "POP" + }, + "5975": { + "fn": "TransferAssets.placeAssetsInAccount", + "jump": "o", + "offset": [ + 1997, + 3132 + ], + "op": "JUMP", + "path": "85" + }, + "5976": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5977": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 938, + 986 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5979": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 989, + 1019 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1762" + }, + "5982": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 989, + 1017 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1311" + }, + "5985": { + "fn": "AccountContextHandler.setAccountContext", + "jump": "i", + "offset": [ + 989, + 1019 + ], + "op": "JUMP", + "path": "66" + }, + "5986": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 989, + 1019 + ], + "op": "JUMPDEST", + "path": "66" + }, + "5987": { + "op": "PUSH1", + "value": "0x1" + }, + "5989": { + "op": "PUSH1", + "value": "0x1" + }, + "5991": { + "op": "PUSH1", + "value": "0xA0" + }, + "5993": { + "op": "SHL" + }, + "5994": { + "op": "SUB" + }, + "5995": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP4", + "path": "66", + "statement": 99 + }, + "5996": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "AND", + "path": "66" + }, + "5997": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "5999": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP2", + "path": "66" + }, + "6000": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP2", + "path": "66" + }, + "6001": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "MSTORE", + "path": "66" + }, + "6002": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "PUSH1", + "path": "66", + "value": "0x20" + }, + "6004": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP4", + "path": "66" + }, + "6005": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP2", + "path": "66" + }, + "6006": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "MSTORE", + "path": "66" + }, + "6007": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "PUSH1", + "path": "66", + "value": "0x40" + }, + "6009": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP1", + "path": "66" + }, + "6010": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "DUP4", + "path": "66" + }, + "6011": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "KECCAK256", + "path": "66" + }, + "6012": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP9", + "path": "66" + }, + "6013": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "6014": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP2", + "path": "66" + }, + "6015": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SLOAD", + "path": "66" + }, + "6016": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "6017": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP11", + "path": "66" + }, + "6018": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "6019": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "6020": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP4", + "path": "66" + }, + "6021": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP12", + "path": "66" + }, + "6022": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "6023": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "6024": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "6026": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP13", + "path": "66" + }, + "6027": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "6028": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "6029": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "6031": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "DUP14", + "path": "66" + }, + "6032": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "ADD", + "path": "66" + }, + "6033": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MLOAD", + "path": "66" + }, + "6034": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0x70" + }, + "6036": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SHR", + "path": "66" + }, + "6037": { + "op": "PUSH1", + "value": "0x1" + }, + "6039": { + "op": "PUSH1", + "value": "0x48" + }, + "6041": { + "op": "SHL" + }, + "6042": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "6043": { + "op": "PUSH27", + "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000" + }, + "6071": { + "op": "NOT" + }, + "6072": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "6075": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6076": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP3", + "path": "66" + }, + "6077": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6078": { + "op": "PUSH1", + "value": "0x1" + }, + "6080": { + "op": "PUSH1", + "value": "0x38" + }, + "6082": { + "op": "SHL" + }, + "6083": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "6084": { + "op": "PUSH9", + "value": "0xFFFF00000000000000" + }, + "6094": { + "op": "NOT" + }, + "6095": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0xFF" + }, + "6097": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "6098": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6099": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "6100": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6101": { + "op": "PUSH1", + "value": "0x1" + }, + "6103": { + "op": "PUSH1", + "value": "0x30" + }, + "6105": { + "op": "SHL" + }, + "6106": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "6107": { + "op": "PUSH7", + "value": "0xFF000000000000" + }, + "6115": { + "op": "NOT" + }, + "6116": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF8" + }, + "6118": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "6119": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6120": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "6121": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SHR", + "path": "66" + }, + "6122": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH6", + "path": "66", + "value": "0x10000000000" + }, + "6129": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "MUL", + "path": "66" + }, + "6130": { + "op": "PUSH6", + "value": "0xFF0000000000" + }, + "6137": { + "op": "NOT" + }, + "6138": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "PUSH5", + "path": "66", + "value": "0xFFFFFFFFFF" + }, + "6144": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6145": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP9", + "path": "66" + }, + "6146": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6147": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "6153": { + "op": "NOT" + }, + "6154": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6155": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP12", + "path": "66" + }, + "6156": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6157": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP11", + "path": "66" + }, + "6158": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6159": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP11", + "path": "66" + }, + "6160": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "6161": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "6162": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6163": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP7", + "path": "66" + }, + "6164": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6165": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP9", + "path": "66" + }, + "6166": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6167": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP9", + "path": "66" + }, + "6168": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "6169": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "6170": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6171": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "6172": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6173": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "6174": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6175": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP4", + "path": "66" + }, + "6176": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "6177": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6178": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "6179": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6180": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP5", + "path": "66" + }, + "6181": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "6182": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "AND", + "path": "66" + }, + "6183": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP3", + "path": "66" + }, + "6184": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6185": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP3", + "path": "66" + }, + "6186": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "OR", + "path": "66" + }, + "6187": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP1", + "path": "66" + }, + "6188": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SWAP2", + "path": "66" + }, + "6189": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1060 + ], + "op": "SSTORE", + "path": "66" + }, + "6190": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "MLOAD", + "path": "66", + "statement": 100 + }, + "6191": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 938, + 1019 + ], + "op": "SWAP3", + "path": "66" + }, + "6192": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 938, + 1019 + ], + "op": "SWAP4", + "path": "66" + }, + "6193": { + "op": "POP" + }, + "6194": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "SWAP1", + "path": "66" + }, + "6195": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "SWAP2", + "path": "66" + }, + "6196": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "PUSH32", + "path": "66", + "value": "0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E" + }, + "6229": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "SWAP2", + "path": "66" + }, + "6230": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1029, + 1043 + ], + "op": "SWAP1", + "path": "66" + }, + "6231": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 1075, + 1104 + ], + "op": "LOG2", + "path": "66" + }, + "6232": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "POP", + "path": "66" + }, + "6233": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "POP", + "path": "66" + }, + "6234": { + "fn": "AccountContextHandler.setAccountContext", + "offset": [ + 837, + 1111 + ], + "op": "POP", + "path": "66" + }, + "6235": { + "fn": "AccountContextHandler.setAccountContext", + "jump": "o", + "offset": [ + 837, + 1111 + ], + "op": "JUMP", + "path": "66" + }, + "6236": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1543, + 1753 + ], + "op": "JUMPDEST", + "path": "85" + }, + "6237": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1642, + 1651 + ], + "op": "PUSH1", + "path": "85", + "value": "0x0" + }, + "6239": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1637, + 1747 + ], + "op": "JUMPDEST", + "path": "85" + }, + "6240": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1657, + 1663 + ], + "op": "DUP2", + "path": "85" + }, + "6241": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1657, + 1670 + ], + "op": "MLOAD", + "path": "85" + }, + "6242": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1653, + 1654 + ], + "op": "DUP2", + "path": "85" + }, + "6243": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1653, + 1670 + ], + "op": "LT", + "path": "85" + }, + "6244": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1637, + 1747 + ], + "op": "ISZERO", + "path": "85" + }, + "6245": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1637, + 1747 + ], + "op": "PUSH2", + "path": "85", + "value": "0xC7A" + }, + "6248": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1637, + 1747 + ], + "op": "JUMPI", + "path": "85" + }, + "6249": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1736 + ], + "op": "PUSH2", + "path": "85", + "statement": 101, + "value": "0x1888" + }, + "6252": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1718 + ], + "op": "DUP3", + "path": "85" + }, + "6253": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1719, + 1720 + ], + "op": "DUP3", + "path": "85" + }, + "6254": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "DUP2", + "path": "85" + }, + "6255": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "MLOAD", + "path": "85" + }, + "6256": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "DUP2", + "path": "85" + }, + "6257": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "LT", + "path": "85" + }, + "6258": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1877" + }, + "6261": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "JUMPI", + "path": "85" + }, + "6262": { + "dev": "Index out of range", + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "INVALID", + "path": "85" + }, + "6263": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "JUMPDEST", + "path": "85" + }, + "6264": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "PUSH1", + "path": "85", + "value": "0x20" + }, + "6266": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "MUL", + "path": "85" + }, + "6267": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "PUSH1", + "path": "85", + "value": "0x20" + }, + "6269": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "ADD", + "path": "85" + }, + "6270": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "ADD", + "path": "85" + }, + "6271": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1721 + ], + "op": "MLOAD", + "path": "85" + }, + "6272": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1730 + ], + "op": "PUSH1", + "path": "85", + "value": "0x60" + }, + "6274": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1730 + ], + "op": "ADD", + "path": "85" + }, + "6275": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1730 + ], + "op": "MLOAD", + "path": "85" + }, + "6276": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1734 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1CBD" + }, + "6279": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "jump": "i", + "offset": [ + 1712, + 1736 + ], + "op": "JUMP", + "path": "85" + }, + "6280": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1712, + 1736 + ], + "op": "JUMPDEST", + "path": "85" + }, + "6281": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1697 + ], + "op": "DUP3", + "path": "85" + }, + "6282": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1698, + 1699 + ], + "op": "DUP3", + "path": "85" + }, + "6283": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "DUP2", + "path": "85" + }, + "6284": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "MLOAD", + "path": "85" + }, + "6285": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "DUP2", + "path": "85" + }, + "6286": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "LT", + "path": "85" + }, + "6287": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "PUSH2", + "path": "85", + "value": "0x1894" + }, + "6290": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "JUMPI", + "path": "85" + }, + "6291": { + "dev": "Index out of range", + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "INVALID", + "path": "85" + }, + "6292": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "JUMPDEST", + "path": "85" + }, + "6293": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "PUSH1", + "path": "85", + "value": "0x20" + }, + "6295": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "SWAP1", + "path": "85" + }, + "6296": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "DUP2", + "path": "85" + }, + "6297": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "MUL", + "path": "85" + }, + "6298": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "SWAP2", + "path": "85" + }, + "6299": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "SWAP1", + "path": "85" + }, + "6300": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "SWAP2", + "path": "85" + }, + "6301": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "ADD", + "path": "85" + }, + "6302": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "ADD", + "path": "85" + }, + "6303": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1700 + ], + "op": "MLOAD", + "path": "85" + }, + "6304": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1709 + ], + "op": "PUSH1", + "path": "85", + "value": "0x60" + }, + "6306": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1709 + ], + "op": "ADD", + "path": "85" + }, + "6307": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1691, + 1736 + ], + "op": "MSTORE", + "path": "85" + }, + "6308": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1672, + 1675 + ], + "op": "PUSH1", + "path": "85", + "statement": 102, + "value": "0x1" + }, + "6310": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1672, + 1675 + ], + "op": "ADD", + "path": "85" + }, + "6311": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1637, + 1747 + ], + "op": "PUSH2", + "path": "85", + "value": "0x185F" + }, + "6314": { + "fn": "TransferAssets.invertNotionalAmountsInPlace", + "offset": [ + 1637, + 1747 + ], + "op": "JUMP", + "path": "85" + }, + "6315": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18581, + 19068 + ], + "op": "JUMPDEST", + "path": "30" + }, + "6316": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18653, + 18666 + ], + "op": "PUSH1", + "path": "30", + "value": "0x60" + }, + "6318": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18814, + 18816 + ], + "op": "PUSH1", + "path": "30", + "value": "0x44" + }, + "6320": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18793, + 18804 + ], + "op": "DUP3", + "path": "30" + }, + "6321": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18793, + 18811 + ], + "op": "MLOAD", + "path": "30" + }, + "6322": { + "branch": 323, + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18793, + 18816 + ], + "op": "LT", + "path": "30" + }, + "6323": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18789, + 18856 + ], + "op": "ISZERO", + "path": "30" + }, + "6324": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18789, + 18856 + ], + "op": "PUSH2", + "path": "30", + "value": "0x18F1" + }, + "6327": { + "branch": 323, + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18789, + 18856 + ], + "op": "JUMPI", + "path": "30" + }, + "6328": { + "op": "POP" + }, + "6329": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "PUSH1", + "path": "30", + "statement": 103, + "value": "0x40" + }, + "6331": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "DUP1", + "path": "30" + }, + "6332": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "MLOAD", + "path": "30" + }, + "6333": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "DUP1", + "path": "30" + }, + "6334": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "DUP3", + "path": "30" + }, + "6335": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "ADD", + "path": "30" + }, + "6336": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "SWAP1", + "path": "30" + }, + "6337": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "SWAP2", + "path": "30" + }, + "6338": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "MSTORE", + "path": "30" + }, + "6339": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "PUSH1", + "path": "30", + "value": "0x1D" + }, + "6341": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "DUP2", + "path": "30" + }, + "6342": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "MSTORE", + "path": "30" + }, + "6343": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "PUSH32", + "path": "30", + "value": "0x5472616E73616374696F6E2072657665727465642073696C656E746C79000000" + }, + "6376": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "6378": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "DUP3", + "path": "30" + }, + "6379": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "ADD", + "path": "30" + }, + "6380": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "MSTORE", + "path": "30" + }, + "6381": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "PUSH2", + "path": "30", + "value": "0x327" + }, + "6384": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18818, + 18856 + ], + "op": "JUMP", + "path": "30" + }, + "6385": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18789, + 18856 + ], + "op": "JUMPDEST", + "path": "30" + }, + "6386": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18956, + 18960 + ], + "op": "PUSH1", + "path": "30", + "value": "0x4" + }, + "6388": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18943, + 18954 + ], + "op": "DUP3", + "path": "30" + }, + "6389": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18939, + 18961 + ], + "op": "ADD", + "path": "30" + }, + "6390": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18924, + 18961 + ], + "op": "SWAP2", + "path": "30" + }, + "6391": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18924, + 18961 + ], + "op": "POP", + "path": "30" + }, + "6392": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18998, + 19009 + ], + "op": "DUP2", + "path": "30", + "statement": 104 + }, + "6393": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "DUP1", + "path": "30" + }, + "6394": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "PUSH1", + "path": "30", + "value": "0x20" + }, + "6396": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "ADD", + "path": "30" + }, + "6397": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "SWAP1", + "path": "30" + }, + "6398": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "MLOAD", + "path": "30" + }, + "6399": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "DUP2", + "path": "30" + }, + "6400": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "ADD", + "path": "30" + }, + "6401": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "SWAP1", + "path": "30" + }, + "6402": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "PUSH2", + "path": "30", + "value": "0x30C" + }, + "6405": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "SWAP2", + "path": "30" + }, + "6406": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "SWAP1", + "path": "30" + }, + "6407": { + "fn": "ERC1155Action._getRevertMsg", + "offset": [ + 18987, + 19020 + ], + "op": "PUSH2", + "path": "30", + "value": "0x3210" + }, + "6410": { + "fn": "ERC1155Action._getRevertMsg", + "jump": "i", + "offset": [ + 18987, + 19020 + ], + "op": "JUMP", + "path": "30" + }, + "6411": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11565, + 11757 + ], + "op": "JUMPDEST", + "path": "77" + }, + "6412": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11635, + 11640 + ], + "op": "PUSH1", + "path": "77", + "value": "0x0" + }, + "6414": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11652, + 11664 + ], + "op": "DUP1", + "path": "77" + }, + "6415": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11667, + 11704 + ], + "op": "PUSH2", + "path": "77", + "value": "0x1917" + }, + "6418": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11693, + 11703 + ], + "op": "DUP4", + "path": "77" + }, + "6419": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11667, + 11692 + ], + "op": "PUSH2", + "path": "77", + "value": "0x1CCB" + }, + "6422": { + "fn": "CashGroup.getMaxMarketIndex", + "jump": "i", + "offset": [ + 11667, + 11704 + ], + "op": "JUMP", + "path": "77" + }, + "6423": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11667, + 11704 + ], + "op": "JUMPDEST", + "path": "77" + }, + "6424": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11727, + 11749 + ], + "op": "PUSH1", + "path": "77", + "statement": 105, + "value": "0xFF" + }, + "6426": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11727, + 11749 + ], + "op": "AND", + "path": "77" + }, + "6427": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11727, + 11749 + ], + "op": "SWAP4", + "path": "77" + }, + "6428": { + "fn": "CashGroup.getMaxMarketIndex", + "offset": [ + 11727, + 11749 + ], + "op": "SWAP3", + "path": "77" + }, + "6429": { + "op": "POP" + }, + "6430": { + "op": "POP" + }, + "6431": { + "op": "POP" + }, + "6432": { + "fn": "CashGroup.getMaxMarketIndex", + "jump": "o", + "offset": [ + 11565, + 11757 + ], + "op": "JUMP", + "path": "77" + }, + "6433": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2224, + 2748 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6434": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2363, + 2367 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "6436": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2379, + 2391 + ], + "op": "DUP1", + "path": "78" + }, + "6437": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2394, + 2430 + ], + "op": "PUSH2", + "path": "78", + "value": "0x192D" + }, + "6440": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2420, + 2429 + ], + "op": "DUP4", + "path": "78" + }, + "6441": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2394, + 2419 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1CE8" + }, + "6444": { + "fn": "DateTime.isValidMaturity", + "jump": "i", + "offset": [ + 2394, + 2430 + ], + "op": "JUMP", + "path": "78" + }, + "6445": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2394, + 2430 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6446": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2379, + 2430 + ], + "op": "SWAP1", + "path": "78" + }, + "6447": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2379, + 2430 + ], + "op": "POP", + "path": "78" + }, + "6448": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2440, + 2459 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "6450": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2462, + 2512 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1944" + }, + "6453": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2471, + 2511 + ], + "op": "PUSH2", + "path": "78", + "value": "0x193D" + }, + "6456": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2496, + 2510 + ], + "op": "DUP8", + "path": "78" + }, + "6457": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2471, + 2495 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D04" + }, + "6460": { + "fn": "DateTime.isValidMaturity", + "jump": "i", + "offset": [ + 2471, + 2511 + ], + "op": "JUMP", + "path": "78" + }, + "6461": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2471, + 2511 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6462": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2462, + 2466 + ], + "op": "DUP4", + "path": "78" + }, + "6463": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2462, + 2466 + ], + "op": "SWAP1", + "path": "78" + }, + "6464": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2462, + 2470 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1DA8" + }, + "6467": { + "fn": "DateTime.isValidMaturity", + "jump": "i", + "offset": [ + 2462, + 2512 + ], + "op": "JUMP", + "path": "78" + }, + "6468": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2462, + 2512 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6469": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2440, + 2512 + ], + "op": "SWAP1", + "path": "78" + }, + "6470": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2440, + 2512 + ], + "op": "POP", + "path": "78" + }, + "6471": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2579, + 2590 + ], + "op": "DUP1", + "path": "78" + }, + "6472": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2568, + 2576 + ], + "op": "DUP6", + "path": "78" + }, + "6473": { + "branch": 370, + "fn": "DateTime.isValidMaturity", + "offset": [ + 2568, + 2590 + ], + "op": "GT", + "path": "78" + }, + "6474": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2564, + 2604 + ], + "op": "ISZERO", + "path": "78" + }, + "6475": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2564, + 2604 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1959" + }, + "6478": { + "branch": 370, + "fn": "DateTime.isValidMaturity", + "offset": [ + 2564, + 2604 + ], + "op": "JUMPI", + "path": "78" + }, + "6479": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2599, + 2604 + ], + "op": "PUSH1", + "path": "78", + "statement": 106, + "value": "0x0" + }, + "6481": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2592, + 2604 + ], + "op": "SWAP3", + "path": "78" + }, + "6482": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2592, + 2604 + ], + "op": "POP", + "path": "78" + }, + "6483": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2592, + 2604 + ], + "op": "POP", + "path": "78" + }, + "6484": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2592, + 2604 + ], + "op": "POP", + "path": "78" + }, + "6485": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2592, + 2604 + ], + "op": "PUSH2", + "path": "78", + "value": "0x653" + }, + "6488": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2592, + 2604 + ], + "op": "JUMP", + "path": "78" + }, + "6489": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2564, + 2604 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6490": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2650, + 2662 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "6492": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2666, + 2717 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1965" + }, + "6495": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2697, + 2706 + ], + "op": "DUP6", + "path": "78" + }, + "6496": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2708, + 2716 + ], + "op": "DUP8", + "path": "78" + }, + "6497": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2666, + 2696 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E02" + }, + "6500": { + "fn": "DateTime.isValidMaturity", + "jump": "i", + "offset": [ + 2666, + 2717 + ], + "op": "JUMP", + "path": "78" + }, + "6501": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2666, + 2717 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6502": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2642, + 2717 + ], + "op": "SWAP9", + "path": "78" + }, + "6503": { + "fn": "DateTime.isValidMaturity", + "offset": [ + 2224, + 2748 + ], + "op": "SWAP8", + "path": "78" + }, + "6504": { + "op": "POP" + }, + "6505": { + "op": "POP" + }, + "6506": { + "op": "POP" + }, + "6507": { + "op": "POP" + }, + "6508": { + "op": "POP" + }, + "6509": { + "op": "POP" + }, + "6510": { + "op": "POP" + }, + "6511": { + "op": "POP" + }, + "6512": { + "fn": "DateTime.isValidMaturity", + "jump": "o", + "offset": [ + 2224, + 2748 + ], + "op": "JUMP", + "path": "78" + }, + "6513": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8450, + 8779 + ], + "op": "JUMPDEST", + "path": "62" + }, + "6514": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8542, + 8554 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "6516": { + "offset": [ + 494, + 501 + ], + "op": "PUSH3", + "path": "62", + "value": "0xF4240" + }, + "6520": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8742, + 8751 + ], + "op": "DUP3", + "path": "62", + "statement": 107 + }, + "6521": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "PUSH1", + "path": "62", + "value": "0x13" + }, + "6523": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "DUP2", + "path": "62" + }, + "6524": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "GT", + "path": "62" + }, + "6525": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "ISZERO", + "path": "62" + }, + "6526": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1983" + }, + "6529": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "JUMPI", + "path": "62" + }, + "6530": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "INVALID", + "path": "62" + }, + "6531": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8752 + ], + "op": "JUMPDEST", + "path": "62" + }, + "6532": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8772 + ], + "op": "ADD", + "path": "62" + }, + "6533": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8734, + 8772 + ], + "op": "SWAP3", + "path": "62" + }, + "6534": { + "fn": "LibStorage._getStorageSlot", + "offset": [ + 8450, + 8779 + ], + "op": "SWAP2", + "path": "62" + }, + "6535": { + "op": "POP" + }, + "6536": { + "op": "POP" + }, + "6537": { + "fn": "LibStorage._getStorageSlot", + "jump": "o", + "offset": [ + 8450, + 8779 + ], + "op": "JUMP", + "path": "62" + }, + "6538": { + "fn": "LibStorage.getifCashBitmapStorage", + "offset": [ + 5665, + 5934 + ], + "op": "JUMPDEST", + "path": "62" + }, + "6539": { + "fn": "LibStorage.getifCashBitmapStorage", + "offset": [ + 5730, + 5817 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "6541": { + "fn": "LibStorage.getifCashBitmapStorage", + "offset": [ + 5833, + 5845 + ], + "op": "DUP1", + "path": "62" + }, + "6542": { + "fn": "LibStorage.getifCashBitmapStorage", + "offset": [ + 5848, + 5887 + ], + "op": "PUSH2", + "path": "62", + "value": "0x30C" + }, + "6545": { + "fn": "LibStorage.getifCashBitmapStorage", + "offset": [ + 5864, + 5886 + ], + "op": "PUSH1", + "path": "62", + "value": "0xC" + }, + "6547": { + "fn": "LibStorage.getifCashBitmapStorage", + "offset": [ + 5848, + 5863 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1971" + }, + "6550": { + "fn": "LibStorage.getifCashBitmapStorage", + "jump": "i", + "offset": [ + 5848, + 5887 + ], + "op": "JUMP", + "path": "62" + }, + "6551": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6020, + 6283 + ], + "op": "JUMPDEST", + "path": "62" + }, + "6552": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6087, + 6164 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "6554": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6180, + 6192 + ], + "op": "DUP1", + "path": "62" + }, + "6555": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6195, + 6236 + ], + "op": "PUSH2", + "path": "62", + "value": "0x30C" + }, + "6558": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6211, + 6235 + ], + "op": "PUSH1", + "path": "62", + "value": "0xD" + }, + "6560": { + "fn": "LibStorage.getPortfolioArrayStorage", + "offset": [ + 6195, + 6210 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1971" + }, + "6563": { + "fn": "LibStorage.getPortfolioArrayStorage", + "jump": "i", + "offset": [ + 6195, + 6236 + ], + "op": "JUMP", + "path": "62" + }, + "6564": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 728, + 1465 + ], + "op": "JUMPDEST", + "path": "81" + }, + "6565": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 836, + 853 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "6567": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 867, + 902 + ], + "op": "DUP1", + "path": "81" + }, + "6568": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 916, + 943 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "6570": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 957, + 979 + ], + "op": "DUP1", + "path": "81" + }, + "6571": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 993, + 1010 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "6573": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1035, + 1082 + ], + "op": "DUP1", + "path": "81" + }, + "6574": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1085, + 1121 + ], + "op": "PUSH2", + "path": "81", + "value": "0x19B5" + }, + "6577": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1085, + 1119 + ], + "op": "PUSH2", + "path": "81", + "value": "0x1F0D" + }, + "6580": { + "fn": "nTokenHandler.getNTokenContext", + "jump": "i", + "offset": [ + 1085, + 1121 + ], + "op": "JUMP", + "path": "81" + }, + "6581": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1085, + 1121 + ], + "op": "JUMPDEST", + "path": "81" + }, + "6582": { + "op": "PUSH1", + "value": "0x1" + }, + "6584": { + "op": "PUSH1", + "value": "0x1" + }, + "6586": { + "op": "PUSH1", + "value": "0xA0" + }, + "6588": { + "op": "SHL" + }, + "6589": { + "op": "SUB" + }, + "6590": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6591": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP8", + "path": "81" + }, + "6592": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "AND", + "path": "81" + }, + "6593": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1131, + 1160 + ], + "op": "PUSH1", + "path": "81", + "value": "0x0" + }, + "6595": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6596": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "DUP2", + "path": "81" + }, + "6597": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "MSTORE", + "path": "81" + }, + "6598": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "PUSH1", + "path": "81", + "value": "0x20" + }, + "6600": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP8", + "path": "81" + }, + "6601": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6602": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP8", + "path": "81" + }, + "6603": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "MSTORE", + "path": "81" + }, + "6604": { + "op": "POP" + }, + "6605": { + "op": "POP" + }, + "6606": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "PUSH1", + "path": "81", + "value": "0x40" + }, + "6608": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP1", + "path": "81" + }, + "6609": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "SWAP5", + "path": "81" + }, + "6610": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1163, + 1182 + ], + "op": "KECCAK256", + "path": "81" + }, + "6611": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "SLOAD", + "path": "81", + "statement": 108 + }, + "6612": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "PUSH2", + "path": "81", + "value": "0xFFFF" + }, + "6615": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "DUP2", + "path": "81" + }, + "6616": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "AND", + "path": "81" + }, + "6617": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1206, + 1224 + ], + "op": "SWAP6", + "path": "81" + }, + "6618": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "PUSH4", + "path": "81", + "statement": 109, + "value": "0xFFFFFFFF" + }, + "6623": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "PUSH3", + "path": "81", + "value": "0x10000" + }, + "6627": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "DUP4", + "path": "81" + }, + "6628": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "DIV", + "path": "81" + }, + "6629": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "DUP2", + "path": "81" + }, + "6630": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "AND", + "path": "81" + }, + "6631": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1264, + 1299 + ], + "op": "SWAP7", + "path": "81" + }, + "6632": { + "op": "POP" + }, + "6633": { + "op": "PUSH1", + "value": "0x1" + }, + "6635": { + "op": "PUSH1", + "value": "0x30" + }, + "6637": { + "op": "SHL" + }, + "6638": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "DUP4", + "path": "81", + "statement": 110 + }, + "6639": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "DIV", + "path": "81" + }, + "6640": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "AND", + "path": "81" + }, + "6641": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1331, + 1358 + ], + "op": "SWAP5", + "path": "81" + }, + "6642": { + "op": "POP" + }, + "6643": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "PUSH1", + "path": "81", + "statement": 111, + "value": "0xFF" + }, + "6645": { + "op": "PUSH1", + "value": "0x1" + }, + "6647": { + "op": "PUSH1", + "value": "0x50" + }, + "6649": { + "op": "SHL" + }, + "6650": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "DUP4", + "path": "81" + }, + "6651": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "DIV", + "path": "81" + }, + "6652": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "AND", + "path": "81" + }, + "6653": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1387, + 1411 + ], + "op": "SWAP4", + "path": "81" + }, + "6654": { + "op": "POP" + }, + "6655": { + "op": "PUSH1", + "value": "0x1" + }, + "6657": { + "op": "PUSH1", + "value": "0x58" + }, + "6659": { + "op": "SHL" + }, + "6660": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SWAP1", + "path": "81", + "statement": 112 + }, + "6661": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SWAP2", + "path": "81" + }, + "6662": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "DIV", + "path": "81" + }, + "6663": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "PUSH1", + "path": "81", + "value": "0xD8" + }, + "6665": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SHL", + "path": "81" + }, + "6666": { + "fn": "nTokenHandler.getNTokenContext", + "offset": [ + 1434, + 1458 + ], + "op": "SWAP2", + "path": "81" + }, + "6667": { + "op": "POP" + }, + "6668": { + "fn": "nTokenHandler.getNTokenContext", + "jump": "o", + "offset": [ + 728, + 1465 + ], + "op": "JUMP", + "path": "81" + }, + "6669": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 583, + 743 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6670": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 641, + 648 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "6672": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "6676": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 668, + 672 + ], + "op": "DUP3", + "path": "78", + "statement": 113 + }, + "6677": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 668, + 689 + ], + "op": "LT", + "path": "78" + }, + "6678": { + "branch": 371, + "fn": "DateTime.getTimeUTC0", + "offset": [ + 668, + 689 + ], + "op": "ISZERO", + "path": "78" + }, + "6679": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1A1F" + }, + "6682": { + "branch": 371, + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "JUMPI", + "path": "78" + }, + "6683": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "6685": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "DUP1", + "path": "78" + }, + "6686": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "REVERT", + "path": "78" + }, + "6687": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 660, + 690 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6688": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "6692": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 715, + 719 + ], + "op": "DUP3", + "path": "78", + "statement": 114 + }, + "6693": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 715, + 735 + ], + "op": "JUMPDEST", + "path": "78" + }, + "6694": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 715, + 735 + ], + "op": "MOD", + "path": "78" + }, + "6695": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SWAP1", + "path": "78" + }, + "6696": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SWAP2", + "path": "78" + }, + "6697": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SUB", + "path": "78" + }, + "6698": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 707, + 736 + ], + "op": "SWAP2", + "path": "78" + }, + "6699": { + "fn": "DateTime.getTimeUTC0", + "offset": [ + 583, + 743 + ], + "op": "SWAP1", + "path": "78" + }, + "6700": { + "op": "POP" + }, + "6701": { + "fn": "DateTime.getTimeUTC0", + "jump": "o", + "offset": [ + 583, + 743 + ], + "op": "JUMP", + "path": "78" + }, + "6702": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1753, + 2818 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6703": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1930, + 1962 + ], + "op": "PUSH2", + "path": "83", + "statement": 115, + "value": "0x1A37" + }, + "6706": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1930, + 1944 + ], + "op": "DUP3", + "path": "83" + }, + "6707": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1930, + 1960 + ], + "op": "PUSH2", + "path": "83", + "value": "0xAD7" + }, + "6710": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "jump": "i", + "offset": [ + 1930, + 1962 + ], + "op": "JUMP", + "path": "83" + }, + "6711": { + "branch": 357, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1930, + 1962 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6712": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1922, + 1963 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1A40" + }, + "6715": { + "branch": 357, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1922, + 1963 + ], + "op": "JUMPI", + "path": "83" + }, + "6716": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1922, + 1963 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6718": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1922, + 1963 + ], + "op": "DUP1", + "path": "83" + }, + "6719": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1922, + 1963 + ], + "op": "REVERT", + "path": "83" + }, + "6720": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1922, + 1963 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6721": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2026, + 2057 + ], + "op": "PUSH1", + "path": "83", + "value": "0x60" + }, + "6723": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2026, + 2057 + ], + "op": "DUP3", + "path": "83" + }, + "6724": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2026, + 2057 + ], + "op": "ADD", + "path": "83" + }, + "6725": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2026, + 2057 + ], + "op": "MLOAD", + "path": "83" + }, + "6726": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2005, + 2057 + ], + "op": "PUSH2", + "path": "83", + "value": "0xFFFF" + }, + "6729": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2005, + 2057 + ], + "op": "AND", + "path": "83" + }, + "6730": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2005, + 2023 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6732": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6733": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2088, + 2094 + ], + "op": "DUP3", + "path": "83" + }, + "6734": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2088, + 2101 + ], + "op": "MLOAD", + "path": "83" + }, + "6735": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2084, + 2085 + ], + "op": "DUP2", + "path": "83" + }, + "6736": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2084, + 2101 + ], + "op": "LT", + "path": "83" + }, + "6737": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "ISZERO", + "path": "83" + }, + "6738": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1AEF" + }, + "6741": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "JUMPI", + "path": "83" + }, + "6742": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2122, + 2149 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6744": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2158 + ], + "op": "DUP4", + "path": "83" + }, + "6745": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2159, + 2160 + ], + "op": "DUP3", + "path": "83" + }, + "6746": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "DUP2", + "path": "83" + }, + "6747": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "MLOAD", + "path": "83" + }, + "6748": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "DUP2", + "path": "83" + }, + "6749": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "LT", + "path": "83" + }, + "6750": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1A63" + }, + "6753": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "JUMPI", + "path": "83" + }, + "6754": { + "dev": "Index out of range", + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "INVALID", + "path": "83" + }, + "6755": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6756": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "6758": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "MUL", + "path": "83" + }, + "6759": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "6761": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "ADD", + "path": "83" + }, + "6762": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "ADD", + "path": "83" + }, + "6763": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2152, + 2161 + ], + "op": "MLOAD", + "path": "83" + }, + "6764": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2122, + 2161 + ], + "op": "SWAP1", + "path": "83" + }, + "6765": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2122, + 2161 + ], + "op": "POP", + "path": "83" + }, + "6766": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2179, + 2184 + ], + "op": "DUP1", + "path": "83" + }, + "6767": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2179, + 2193 + ], + "op": "PUSH1", + "path": "83", + "value": "0x60" + }, + "6769": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2179, + 2193 + ], + "op": "ADD", + "path": "83" + }, + "6770": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2179, + 2193 + ], + "op": "MLOAD", + "path": "83" + }, + "6771": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2197, + 2198 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6773": { + "branch": 358, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2179, + 2198 + ], + "op": "EQ", + "path": "83" + }, + "6774": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2175, + 2208 + ], + "op": "ISZERO", + "path": "83" + }, + "6775": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2175, + 2208 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1A80" + }, + "6778": { + "branch": 358, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2175, + 2208 + ], + "op": "JUMPI", + "path": "83" + }, + "6779": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2200, + 2208 + ], + "op": "POP", + "path": "83", + "statement": 116 + }, + "6780": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2200, + 2208 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1AE7" + }, + "6783": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2200, + 2208 + ], + "op": "JUMP", + "path": "83" + }, + "6784": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2175, + 2208 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6785": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2231, + 2247 + ], + "op": "DUP1", + "path": "83", + "statement": 117 + }, + "6786": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2231, + 2247 + ], + "op": "MLOAD", + "path": "83" + }, + "6787": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2231, + 2261 + ], + "op": "DUP4", + "path": "83" + }, + "6788": { + "branch": 359, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2231, + 2261 + ], + "op": "EQ", + "path": "83" + }, + "6789": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2223, + 2262 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1A8D" + }, + "6792": { + "branch": 359, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2223, + 2262 + ], + "op": "JUMPI", + "path": "83" + }, + "6793": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2223, + 2262 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6795": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2223, + 2262 + ], + "op": "DUP1", + "path": "83" + }, + "6796": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2223, + 2262 + ], + "op": "REVERT", + "path": "83" + }, + "6797": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2223, + 2262 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6798": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2327, + 2342 + ], + "op": "PUSH1", + "path": "83", + "statement": 118, + "value": "0x40" + }, + "6800": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2327, + 2342 + ], + "op": "DUP2", + "path": "83" + }, + "6801": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2327, + 2342 + ], + "op": "ADD", + "path": "83" + }, + "6802": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2327, + 2342 + ], + "op": "MLOAD", + "path": "83" + }, + "6803": { + "offset": [ + 4700, + 4701 + ], + "op": "PUSH1", + "path": "60", + "value": "0x1" + }, + "6805": { + "branch": 360, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2327, + 2372 + ], + "op": "EQ", + "path": "83" + }, + "6806": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2319, + 2373 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1A9E" + }, + "6809": { + "branch": 360, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2319, + 2373 + ], + "op": "JUMPI", + "path": "83" + }, + "6810": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2319, + 2373 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6812": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2319, + 2373 + ], + "op": "DUP1", + "path": "83" + }, + "6813": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2319, + 2373 + ], + "op": "REVERT", + "path": "83" + }, + "6814": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2319, + 2373 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6815": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2430, + 2450 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6817": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2481, + 2673 + ], + "op": "PUSH2", + "path": "83", + "statement": 119, + "value": "0x1AC0" + }, + "6820": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2513, + 2520 + ], + "op": "DUP8", + "path": "83" + }, + "6821": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2538, + 2548 + ], + "op": "DUP6", + "path": "83" + }, + "6822": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2566, + 2571 + ], + "op": "DUP5", + "path": "83" + }, + "6823": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2566, + 2580 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "6825": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2566, + 2580 + ], + "op": "ADD", + "path": "83" + }, + "6826": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2566, + 2580 + ], + "op": "MLOAD", + "path": "83" + }, + "6827": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2598, + 2612 + ], + "op": "DUP10", + "path": "83" + }, + "6828": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2598, + 2627 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6830": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2598, + 2627 + ], + "op": "ADD", + "path": "83" + }, + "6831": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2598, + 2627 + ], + "op": "MLOAD", + "path": "83" + }, + "6832": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2481, + 2673 + ], + "op": "PUSH5", + "path": "83", + "value": "0xFFFFFFFFFF" + }, + "6838": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2481, + 2673 + ], + "op": "AND", + "path": "83" + }, + "6839": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2645, + 2650 + ], + "op": "DUP7", + "path": "83" + }, + "6840": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2645, + 2659 + ], + "op": "PUSH1", + "path": "83", + "value": "0x60" + }, + "6842": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2645, + 2659 + ], + "op": "ADD", + "path": "83" + }, + "6843": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2645, + 2659 + ], + "op": "MLOAD", + "path": "83" + }, + "6844": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2481, + 2495 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F1A" + }, + "6847": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "jump": "i", + "offset": [ + 2481, + 2673 + ], + "op": "JUMP", + "path": "83" + }, + "6848": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2481, + 2673 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6849": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2465, + 2673 + ], + "op": "SWAP1", + "path": "83" + }, + "6850": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2465, + 2673 + ], + "op": "POP", + "path": "83" + }, + "6851": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2708, + 2709 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "6853": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2692, + 2705 + ], + "op": "DUP2", + "path": "83" + }, + "6854": { + "branch": 361, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2692, + 2709 + ], + "op": "SLT", + "path": "83" + }, + "6855": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2688, + 2801 + ], + "op": "ISZERO", + "path": "83" + }, + "6856": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2688, + 2801 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1AE4" + }, + "6859": { + "branch": 361, + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2688, + 2801 + ], + "op": "JUMPI", + "path": "83" + }, + "6860": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2752, + 2774 + ], + "op": "PUSH1", + "path": "83", + "statement": 120, + "value": "0x20" + }, + "6862": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2752, + 2774 + ], + "op": "DUP7", + "path": "83" + }, + "6863": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2752, + 2774 + ], + "op": "ADD", + "path": "83" + }, + "6864": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2752, + 2774 + ], + "op": "DUP1", + "path": "83" + }, + "6865": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2752, + 2774 + ], + "op": "MLOAD", + "path": "83" + }, + "6866": { + "op": "PUSH1", + "value": "0x1" + }, + "6868": { + "op": "PUSH1", + "value": "0xF8" + }, + "6870": { + "op": "SHL" + }, + "6871": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2752, + 2801 + ], + "op": "OR", + "path": "83" + }, + "6872": { + "op": "PUSH1", + "value": "0x1" + }, + "6874": { + "op": "PUSH1", + "value": "0x1" + }, + "6876": { + "op": "PUSH1", + "value": "0xF8" + }, + "6878": { + "op": "SHL" + }, + "6879": { + "op": "SUB" + }, + "6880": { + "op": "NOT" + }, + "6881": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2727, + 2801 + ], + "op": "AND", + "path": "83" + }, + "6882": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2727, + 2801 + ], + "op": "SWAP1", + "path": "83" + }, + "6883": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2727, + 2801 + ], + "op": "MSTORE", + "path": "83" + }, + "6884": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2688, + 2801 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6885": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "POP", + "path": "83" + }, + "6886": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "POP", + "path": "83" + }, + "6887": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6888": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2103, + 2106 + ], + "op": "PUSH1", + "path": "83", + "statement": 121, + "value": "0x1" + }, + "6890": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2103, + 2106 + ], + "op": "ADD", + "path": "83" + }, + "6891": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1A4C" + }, + "6894": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "JUMP", + "path": "83" + }, + "6895": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "JUMPDEST", + "path": "83" + }, + "6896": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 2068, + 2812 + ], + "op": "POP", + "path": "83" + }, + "6897": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1753, + 2818 + ], + "op": "POP", + "path": "83" + }, + "6898": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1753, + 2818 + ], + "op": "POP", + "path": "83" + }, + "6899": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1753, + 2818 + ], + "op": "POP", + "path": "83" + }, + "6900": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "offset": [ + 1753, + 2818 + ], + "op": "POP", + "path": "83" + }, + "6901": { + "fn": "BitmapAssetsHandler.addMultipleifCashAssets", + "jump": "o", + "offset": [ + 1753, + 2818 + ], + "op": "JUMP", + "path": "83" + }, + "6902": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15438, + 15915 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6903": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15584, + 15605 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1AFE" + }, + "6906": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15584, + 15605 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2E9F" + }, + "6909": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15584, + 15605 + ], + "op": "JUMP", + "path": "84" + }, + "6910": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15584, + 15605 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6911": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15617, + 15644 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B06" + }, + "6914": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15617, + 15644 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2E9F" + }, + "6917": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15617, + 15644 + ], + "op": "JUMP", + "path": "84" + }, + "6918": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15617, + 15644 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6919": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15658, + 15679 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "6921": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15658, + 15679 + ], + "op": "DUP5", + "path": "84" + }, + "6922": { + "branch": 388, + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15658, + 15679 + ], + "op": "AND", + "path": "84" + }, + "6923": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15654, + 15693 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B15" + }, + "6926": { + "branch": 388, + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15654, + 15693 + ], + "op": "JUMPI", + "path": "84" + }, + "6927": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15688, + 15693 + ], + "op": "SWAP1", + "path": "84", + "statement": 122 + }, + "6928": { + "op": "POP" + }, + "6929": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15681, + 15693 + ], + "op": "PUSH2", + "path": "84", + "value": "0x653" + }, + "6932": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15681, + 15693 + ], + "op": "JUMP", + "path": "84" + }, + "6933": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15654, + 15693 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6934": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15725, + 15770 + ], + "op": "PUSH2", + "path": "84", + "statement": 123, + "value": "0x1B1F" + }, + "6937": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15744, + 15751 + ], + "op": "DUP6", + "path": "84" + }, + "6938": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15753, + 15769 + ], + "op": "DUP6", + "path": "84" + }, + "6939": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15725, + 15743 + ], + "op": "PUSH2", + "path": "84", + "value": "0xB2F" + }, + "6942": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15725, + 15770 + ], + "op": "JUMP", + "path": "84" + }, + "6943": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15725, + 15770 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6944": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15704, + 15770 + ], + "op": "DUP2", + "path": "84" + }, + "6945": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15704, + 15770 + ], + "op": "MSTORE", + "path": "84" + }, + "6946": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "PUSH1", + "path": "84", + "statement": 124, + "value": "0xFF" + }, + "6948": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "DUP5", + "path": "84" + }, + "6949": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "AND", + "path": "84" + }, + "6950": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15803 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "6952": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15803 + ], + "op": "DUP3", + "path": "84" + }, + "6953": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15803 + ], + "op": "ADD", + "path": "84" + }, + "6954": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15780, + 15822 + ], + "op": "MSTORE", + "path": "84" + }, + "6955": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15871, + 15884 + ], + "op": "DUP3", + "path": "84", + "statement": 125 + }, + "6956": { + "op": "PUSH1", + "value": "0x1" + }, + "6958": { + "op": "PUSH1", + "value": "0x1" + }, + "6960": { + "op": "PUSH1", + "value": "0x40" + }, + "6962": { + "op": "SHL" + }, + "6963": { + "op": "SUB" + }, + "6964": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "6965": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "GT", + "path": "84" + }, + "6966": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "6967": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ISZERO", + "path": "84" + }, + "6968": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B40" + }, + "6971": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPI", + "path": "84" + }, + "6972": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "6974": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "6975": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "REVERT", + "path": "84" + }, + "6976": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "6977": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "POP", + "path": "84" + }, + "6978": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "6980": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MLOAD", + "path": "84" + }, + "6981": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "6982": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "6983": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP3", + "path": "84" + }, + "6984": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "6985": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "6986": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "6988": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MUL", + "path": "84" + }, + "6989": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "6991": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "6992": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP3", + "path": "84" + }, + "6993": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "6994": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "6996": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "6997": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP1", + "path": "84" + }, + "6998": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ISZERO", + "path": "84" + }, + "6999": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B7A" + }, + "7002": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPI", + "path": "84" + }, + "7003": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "7004": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "7006": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "7007": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7008": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B67" + }, + "7011": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2E5F" + }, + "7014": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "i", + "offset": [ + 15850, + 15885 + ], + "op": "JUMP", + "path": "84" + }, + "7015": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7016": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "7017": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "7018": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "7020": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "ADD", + "path": "84" + }, + "7021": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "7022": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "7024": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "7025": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SUB", + "path": "84" + }, + "7026": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "7027": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "DUP2", + "path": "84" + }, + "7028": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B5F" + }, + "7031": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPI", + "path": "84" + }, + "7032": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "SWAP1", + "path": "84" + }, + "7033": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "POP", + "path": "84" + }, + "7034": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15850, + 15885 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7035": { + "op": "POP" + }, + "7036": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "7038": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "DUP3", + "path": "84" + }, + "7039": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "ADD", + "path": "84" + }, + "7040": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15885 + ], + "op": "MSTORE", + "path": "84" + }, + "7041": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15832, + 15847 + ], + "op": "SWAP5", + "path": "84" + }, + "7042": { + "fn": "PortfolioHandler.buildPortfolioState", + "offset": [ + 15438, + 15915 + ], + "op": "SWAP4", + "path": "84" + }, + "7043": { + "op": "POP" + }, + "7044": { + "op": "POP" + }, + "7045": { + "op": "POP" + }, + "7046": { + "op": "POP" + }, + "7047": { + "fn": "PortfolioHandler.buildPortfolioState", + "jump": "o", + "offset": [ + 15438, + 15915 + ], + "op": "JUMP", + "path": "84" + }, + "7048": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 658, + 1160 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7049": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 804, + 813 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "7051": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7052": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 823, + 829 + ], + "op": "DUP2", + "path": "84" + }, + "7053": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 823, + 836 + ], + "op": "MLOAD", + "path": "84" + }, + "7054": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 819, + 820 + ], + "op": "DUP2", + "path": "84" + }, + "7055": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 819, + 836 + ], + "op": "LT", + "path": "84" + }, + "7056": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "ISZERO", + "path": "84" + }, + "7057": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "PUSH2", + "path": "84", + "value": "0x130C" + }, + "7060": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "JUMPI", + "path": "84" + }, + "7061": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 857, + 884 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "7063": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 893 + ], + "op": "DUP3", + "path": "84" + }, + "7064": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 894, + 895 + ], + "op": "DUP3", + "path": "84" + }, + "7065": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "DUP2", + "path": "84" + }, + "7066": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "MLOAD", + "path": "84" + }, + "7067": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "DUP2", + "path": "84" + }, + "7068": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "LT", + "path": "84" + }, + "7069": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1BA2" + }, + "7072": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "JUMPI", + "path": "84" + }, + "7073": { + "dev": "Index out of range", + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "INVALID", + "path": "84" + }, + "7074": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7075": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "7077": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "MUL", + "path": "84" + }, + "7078": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "7080": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "ADD", + "path": "84" + }, + "7081": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "ADD", + "path": "84" + }, + "7082": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 887, + 896 + ], + "op": "MLOAD", + "path": "84" + }, + "7083": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 857, + 896 + ], + "op": "SWAP1", + "path": "84" + }, + "7084": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 857, + 896 + ], + "op": "POP", + "path": "84" + }, + "7085": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 914, + 919 + ], + "op": "DUP1", + "path": "84" + }, + "7086": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 914, + 928 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "7088": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 914, + 928 + ], + "op": "ADD", + "path": "84" + }, + "7089": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 914, + 928 + ], + "op": "MLOAD", + "path": "84" + }, + "7090": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 932, + 933 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "7092": { + "branch": 389, + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 914, + 933 + ], + "op": "EQ", + "path": "84" + }, + "7093": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 910, + 943 + ], + "op": "ISZERO", + "path": "84" + }, + "7094": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 910, + 943 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1BBF" + }, + "7097": { + "branch": 389, + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 910, + 943 + ], + "op": "JUMPI", + "path": "84" + }, + "7098": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 935, + 943 + ], + "op": "POP", + "path": "84", + "statement": 126 + }, + "7099": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 935, + 943 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1BDE" + }, + "7102": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 935, + 943 + ], + "op": "JUMP", + "path": "84" + }, + "7103": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 910, + 943 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7104": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 958, + 1143 + ], + "op": "PUSH2", + "path": "84", + "statement": 127, + "value": "0x1BDC" + }, + "7107": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 984, + 998 + ], + "op": "DUP5", + "path": "84" + }, + "7108": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1016, + 1021 + ], + "op": "DUP3", + "path": "84" + }, + "7109": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1016, + 1032 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "7111": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1016, + 1032 + ], + "op": "ADD", + "path": "84" + }, + "7112": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1016, + 1032 + ], + "op": "MLOAD", + "path": "84" + }, + "7113": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1050, + 1055 + ], + "op": "DUP4", + "path": "84" + }, + "7114": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1050, + 1064 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "7116": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1050, + 1064 + ], + "op": "ADD", + "path": "84" + }, + "7117": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1050, + 1064 + ], + "op": "MLOAD", + "path": "84" + }, + "7118": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1082, + 1087 + ], + "op": "DUP5", + "path": "84" + }, + "7119": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1082, + 1097 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "7121": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1082, + 1097 + ], + "op": "ADD", + "path": "84" + }, + "7122": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1082, + 1097 + ], + "op": "MLOAD", + "path": "84" + }, + "7123": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1115, + 1120 + ], + "op": "DUP6", + "path": "84" + }, + "7124": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1115, + 1129 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "7126": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1115, + 1129 + ], + "op": "ADD", + "path": "84" + }, + "7127": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 1115, + 1129 + ], + "op": "MLOAD", + "path": "84" + }, + "7128": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 958, + 966 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2087" + }, + "7131": { + "fn": "PortfolioHandler.addMultipleAssets", + "jump": "i", + "offset": [ + 958, + 1143 + ], + "op": "JUMP", + "path": "84" + }, + "7132": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 958, + 1143 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7133": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "POP", + "path": "84" + }, + "7134": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "JUMPDEST", + "path": "84" + }, + "7135": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 838, + 841 + ], + "op": "PUSH1", + "path": "84", + "statement": 128, + "value": "0x1" + }, + "7137": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 838, + 841 + ], + "op": "ADD", + "path": "84" + }, + "7138": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1B8B" + }, + "7141": { + "fn": "PortfolioHandler.addMultipleAssets", + "offset": [ + 799, + 1154 + ], + "op": "JUMP", + "path": "84" + }, + "7142": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 9863, + 12215 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7143": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "7145": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "DUP1", + "path": "66" + }, + "7146": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "DUP1", + "path": "66" + }, + "7147": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10240, + 10252 + ], + "op": "DUP1", + "path": "66" + }, + "7148": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10379 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1BF5" + }, + "7151": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10358 + ], + "op": "DUP7", + "path": "66" + }, + "7152": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10371, + 10378 + ], + "op": "DUP9", + "path": "66" + }, + "7153": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10370 + ], + "op": "PUSH2", + "path": "66", + "value": "0x218C" + }, + "7156": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 10344, + 10379 + ], + "op": "JUMP", + "path": "66" + }, + "7157": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10344, + 10379 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7158": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "PUSH5", + "path": "66", + "statement": 129, + "value": "0xFFFFFFFFFF" + }, + "7164": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "DUP2", + "path": "66" + }, + "7165": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "AND", + "path": "66" + }, + "7166": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "DUP13", + "path": "66" + }, + "7167": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10435 + ], + "op": "MSTORE", + "path": "66" + }, + "7168": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP3", + "path": "66" + }, + "7169": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP7", + "path": "66" + }, + "7170": { + "op": "POP" + }, + "7171": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP1", + "path": "66" + }, + "7172": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP5", + "path": "66" + }, + "7173": { + "op": "POP" + }, + "7174": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP3", + "path": "66" + }, + "7175": { + "op": "POP" + }, + "7176": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10239, + 10379 + ], + "op": "SWAP1", + "path": "66" + }, + "7177": { + "op": "POP" + }, + "7178": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10485 + ], + "op": "PUSH2", + "path": "66", + "statement": 130, + "value": "0x1C12" + }, + "7181": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10389, + 10403 + ], + "op": "DUP9", + "path": "66" + }, + "7182": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10469 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1683" + }, + "7185": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 10453, + 10485 + ], + "op": "JUMP", + "path": "66" + }, + "7186": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10485 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7187": { + "branch": 325, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10453, + 10494 + ], + "op": "ISZERO", + "path": "66" + }, + "7188": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1C1C" + }, + "7191": { + "branch": 325, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "JUMPI", + "path": "66" + }, + "7192": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "7194": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "DUP1", + "path": "66" + }, + "7195": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "REVERT", + "path": "66" + }, + "7196": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10445, + 10495 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7197": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "PUSH1", + "path": "66", + "statement": 131, + "value": "0xFF" + }, + "7199": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "DUP3", + "path": "66" + }, + "7200": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "AND", + "path": "66" + }, + "7201": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10572 + ], + "op": "PUSH1", + "path": "66", + "value": "0x40" + }, + "7203": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10572 + ], + "op": "DUP10", + "path": "66" + }, + "7204": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10572 + ], + "op": "ADD", + "path": "66" + }, + "7205": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10541, + 10591 + ], + "op": "MSTORE", + "path": "66" + }, + "7206": { + "branch": 326, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10772, + 10785 + ], + "op": "DUP5", + "path": "66" + }, + "7207": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10767, + 10908 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1C3B" + }, + "7210": { + "branch": 326, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10767, + 10908 + ], + "op": "JUMPI", + "path": "66" + }, + "7211": { + "offset": [ + 2023, + 2024 + ], + "op": "PUSH1", + "path": "60", + "value": "0x7" + }, + "7213": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "PUSH1", + "path": "66", + "statement": 132, + "value": "0xFF" + }, + "7215": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "DUP4", + "path": "66" + }, + "7216": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "AND", + "path": "66" + }, + "7217": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "GT", + "path": "66" + }, + "7218": { + "branch": 327, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10809, + 10869 + ], + "op": "ISZERO", + "path": "66" + }, + "7219": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1C3B" + }, + "7222": { + "branch": 327, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "JUMPI", + "path": "66" + }, + "7223": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "7225": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "DUP1", + "path": "66" + }, + "7226": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "REVERT", + "path": "66" + }, + "7227": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 10801, + 10870 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7228": { + "branch": 328, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11059, + 11066 + ], + "op": "DUP4", + "path": "66" + }, + "7229": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "ISZERO", + "path": "66" + }, + "7230": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1C5E" + }, + "7233": { + "branch": 328, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMPI", + "path": "66" + }, + "7234": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "PUSH1", + "path": "66", + "statement": 133, + "value": "0x20" + }, + "7236": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "DUP9", + "path": "66" + }, + "7237": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "ADD", + "path": "66" + }, + "7238": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "DUP1", + "path": "66" + }, + "7239": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11129 + ], + "op": "MLOAD", + "path": "66" + }, + "7240": { + "op": "PUSH1", + "value": "0x1" + }, + "7242": { + "op": "PUSH1", + "value": "0xF8" + }, + "7244": { + "op": "SHL" + }, + "7245": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11107, + 11156 + ], + "op": "OR", + "path": "66" + }, + "7246": { + "op": "PUSH1", + "value": "0x1" + }, + "7248": { + "op": "PUSH1", + "value": "0x1" + }, + "7250": { + "op": "PUSH1", + "value": "0xF8" + }, + "7252": { + "op": "SHL" + }, + "7253": { + "op": "SUB" + }, + "7254": { + "op": "NOT" + }, + "7255": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11082, + 11156 + ], + "op": "AND", + "path": "66" + }, + "7256": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11082, + 11156 + ], + "op": "SWAP1", + "path": "66" + }, + "7257": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11082, + 11156 + ], + "op": "MSTORE", + "path": "66" + }, + "7258": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1C6D" + }, + "7261": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMP", + "path": "66" + }, + "7262": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7263": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "PUSH1", + "path": "66", + "statement": 134, + "value": "0x20" + }, + "7265": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "DUP9", + "path": "66" + }, + "7266": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "ADD", + "path": "66" + }, + "7267": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "DUP1", + "path": "66" + }, + "7268": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11257, + 11279 + ], + "op": "MLOAD", + "path": "66" + }, + "7269": { + "op": "PUSH1", + "value": "0x7F" + }, + "7271": { + "op": "PUSH1", + "value": "0xF9" + }, + "7273": { + "op": "SHL" + }, + "7274": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11232, + 11307 + ], + "op": "AND", + "path": "66" + }, + "7275": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11232, + 11307 + ], + "op": "SWAP1", + "path": "66" + }, + "7276": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11232, + 11307 + ], + "op": "MSTORE", + "path": "66" + }, + "7277": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11055, + 11318 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7278": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11460, + 11519 + ], + "op": "PUSH2", + "path": "66", + "statement": 135, + "value": "0x1C7A" + }, + "7281": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11501 + ], + "op": "DUP9", + "path": "66" + }, + "7282": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11518 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "7284": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11518 + ], + "op": "ADD", + "path": "66" + }, + "7285": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11487, + 11518 + ], + "op": "MLOAD", + "path": "66" + }, + "7286": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11460, + 11486 + ], + "op": "PUSH2", + "path": "66", + "value": "0x23CB" + }, + "7289": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 11460, + 11519 + ], + "op": "JUMP", + "path": "66" + }, + "7290": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11460, + 11519 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7291": { + "op": "PUSH1", + "value": "0x1" + }, + "7293": { + "op": "PUSH1", + "value": "0x1" + }, + "7295": { + "op": "PUSH1", + "value": "0x70" + }, + "7297": { + "op": "SHL" + }, + "7298": { + "op": "SUB" + }, + "7299": { + "op": "NOT" + }, + "7300": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11519 + ], + "op": "AND", + "path": "66" + }, + "7301": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11457 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "7303": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11457 + ], + "op": "DUP10", + "path": "66" + }, + "7304": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11457 + ], + "op": "ADD", + "path": "66" + }, + "7305": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11426, + 11519 + ], + "op": "MSTORE", + "path": "66" + }, + "7306": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11530, + 11550 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "7308": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7309": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11567, + 11591 + ], + "op": "DUP4", + "path": "66" + }, + "7310": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11567, + 11591 + ], + "op": "ISZERO", + "path": "66" + }, + "7311": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "PUSH2", + "path": "66", + "value": "0x123B" + }, + "7314": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMPI", + "path": "66" + }, + "7315": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF0" + }, + "7317": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "DUP5", + "path": "66" + }, + "7318": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "SWAP1", + "path": "66" + }, + "7319": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11902, + 11937 + ], + "op": "SHR", + "path": "66" + }, + "7320": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11955, + 11981 + ], + "op": "DUP2", + "path": "66" + }, + "7321": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11955, + 11981 + ], + "op": "DUP2", + "path": "66" + }, + "7322": { + "branch": 329, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11955, + 11981 + ], + "op": "EQ", + "path": "66" + }, + "7323": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11951, + 12098 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1CAF" + }, + "7326": { + "branch": 329, + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11951, + 12098 + ], + "op": "JUMPI", + "path": "66" + }, + "7327": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12001, + 12083 + ], + "op": "PUSH2", + "path": "66", + "statement": 136, + "value": "0x1CAF" + }, + "7330": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12019, + 12033 + ], + "op": "DUP11", + "path": "66" + }, + "7331": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12035, + 12045 + ], + "op": "DUP3", + "path": "66" + }, + "7332": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12047, + 12051 + ], + "op": "PUSH1", + "path": "66", + "value": "0x1" + }, + "7334": { + "op": "PUSH1", + "value": "0x1" + }, + "7336": { + "op": "PUSH1", + "value": "0xFF" + }, + "7338": { + "op": "SHL" + }, + "7339": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12001, + 12018 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2446" + }, + "7342": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "jump": "i", + "offset": [ + 12001, + 12083 + ], + "op": "JUMP", + "path": "66" + }, + "7343": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12001, + 12083 + ], + "op": "JUMPDEST", + "path": "66" + }, + "7344": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12196, + 12198 + ], + "op": "PUSH1", + "path": "66", + "statement": 137, + "value": "0x10" + }, + "7346": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP5", + "path": "66" + }, + "7347": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP1", + "path": "66" + }, + "7348": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP5", + "path": "66" + }, + "7349": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SHL", + "path": "66" + }, + "7350": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12173, + 12198 + ], + "op": "SWAP4", + "path": "66" + }, + "7351": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 12126, + 12136 + ], + "op": "SWAP1", + "path": "66", + "statement": 138 + }, + "7352": { + "op": "POP" + }, + "7353": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1C8C" + }, + "7356": { + "fn": "AccountContextHandler.storeAssetsAndUpdateContext", + "offset": [ + 11560, + 12209 + ], + "op": "JUMP", + "path": "66" + }, + "7357": { + "fn": "SafeInt256.neg", + "offset": [ + 1553, + 1643 + ], + "op": "JUMPDEST", + "path": "94" + }, + "7358": { + "fn": "SafeInt256.neg", + "offset": [ + 1599, + 1607 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "7360": { + "fn": "SafeInt256.neg", + "offset": [ + 1626, + 1636 + ], + "op": "PUSH2", + "path": "94", + "statement": 139, + "value": "0x30C" + }, + "7363": { + "op": "PUSH1", + "value": "0x0" + }, + "7365": { + "op": "NOT" + }, + "7366": { + "fn": "SafeInt256.neg", + "offset": [ + 1634, + 1635 + ], + "op": "DUP4", + "path": "94" + }, + "7367": { + "fn": "SafeInt256.neg", + "offset": [ + 1626, + 1629 + ], + "op": "PUSH2", + "path": "94", + "value": "0x2645" + }, + "7370": { + "fn": "SafeInt256.neg", + "jump": "i", + "offset": [ + 1626, + 1636 + ], + "op": "JUMP", + "path": "94" + }, + "7371": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11271, + 11489 + ], + "op": "JUMPDEST", + "path": "77" + }, + "7372": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11348, + 11360 + ], + "op": "PUSH1", + "path": "77", + "value": "0x0" + }, + "7374": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11372, + 11413 + ], + "op": "DUP1", + "path": "77" + }, + "7375": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11416, + 11448 + ], + "op": "PUSH2", + "path": "77", + "value": "0x1CD6" + }, + "7378": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11416, + 11446 + ], + "op": "PUSH2", + "path": "77", + "value": "0x2693" + }, + "7381": { + "fn": "CashGroup._getCashGroupStorageBytes", + "jump": "i", + "offset": [ + 11416, + 11448 + ], + "op": "JUMP", + "path": "77" + }, + "7382": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11416, + 11448 + ], + "op": "JUMPDEST", + "path": "77" + }, + "7383": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "PUSH1", + "path": "77", + "statement": 140, + "value": "0x0" + }, + "7385": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "SWAP4", + "path": "77" + }, + "7386": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "DUP5", + "path": "77" + }, + "7387": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "MSTORE", + "path": "77" + }, + "7388": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "PUSH1", + "path": "77", + "value": "0x20" + }, + "7390": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "MSTORE", + "path": "77" + }, + "7391": { + "op": "POP" + }, + "7392": { + "op": "POP" + }, + "7393": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "PUSH1", + "path": "77", + "value": "0x40" + }, + "7395": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "SWAP1", + "path": "77" + }, + "7396": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "KECCAK256", + "path": "77" + }, + "7397": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "SLOAD", + "path": "77" + }, + "7398": { + "fn": "CashGroup._getCashGroupStorageBytes", + "offset": [ + 11465, + 11482 + ], + "op": "SWAP1", + "path": "77" + }, + "7399": { + "fn": "CashGroup._getCashGroupStorageBytes", + "jump": "o", + "offset": [ + 11271, + 11489 + ], + "op": "JUMP", + "path": "77" + }, + "7400": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 330, + 523 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7401": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 398, + 405 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7403": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "7407": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 425, + 455 + ], + "op": "DUP3", + "path": "78", + "statement": 141 + }, + "7408": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 425, + 455 + ], + "op": "LT", + "path": "78" + }, + "7409": { + "branch": 372, + "fn": "DateTime.getReferenceTime", + "offset": [ + 425, + 455 + ], + "op": "ISZERO", + "path": "78" + }, + "7410": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 417, + 456 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1CFA" + }, + "7413": { + "branch": 372, + "fn": "DateTime.getReferenceTime", + "offset": [ + 417, + 456 + ], + "op": "JUMPI", + "path": "78" + }, + "7414": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 417, + 456 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7416": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 417, + 456 + ], + "op": "DUP1", + "path": "78" + }, + "7417": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 417, + 456 + ], + "op": "REVERT", + "path": "78" + }, + "7418": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 417, + 456 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7419": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "7423": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 486, + 495 + ], + "op": "DUP3", + "path": "78", + "statement": 142 + }, + "7424": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 486, + 515 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1A25" + }, + "7427": { + "fn": "DateTime.getReferenceTime", + "offset": [ + 486, + 515 + ], + "op": "JUMP", + "path": "78" + }, + "7428": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 928, + 1398 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7429": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 991, + 998 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7431": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1014, + 1019 + ], + "op": "DUP2", + "path": "78" + }, + "7432": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1023, + 1024 + ], + "op": "PUSH1", + "path": "78", + "value": "0x1" + }, + "7434": { + "branch": 373, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1014, + 1024 + ], + "op": "EQ", + "path": "78" + }, + "7435": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "ISZERO", + "path": "78" + }, + "7436": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D19" + }, + "7439": { + "branch": 373, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "JUMPI", + "path": "78" + }, + "7440": { + "op": "POP" + }, + "7441": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "7445": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1026, + 1050 + ], + "op": "PUSH2", + "path": "78", + "statement": 143, + "value": "0x327" + }, + "7448": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1026, + 1050 + ], + "op": "JUMP", + "path": "78" + }, + "7449": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1010, + 1050 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7450": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1064, + 1069 + ], + "op": "DUP2", + "path": "78" + }, + "7451": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1073, + 1074 + ], + "op": "PUSH1", + "path": "78", + "value": "0x2" + }, + "7453": { + "branch": 374, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1064, + 1074 + ], + "op": "EQ", + "path": "78" + }, + "7454": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "ISZERO", + "path": "78" + }, + "7455": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D2C" + }, + "7458": { + "branch": 374, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "JUMPI", + "path": "78" + }, + "7459": { + "op": "POP" + }, + "7460": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1083, + 1104 + ], + "op": "PUSH3", + "path": "78", + "statement": 144, + "value": "0xED4E00" + }, + "7464": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1076, + 1104 + ], + "op": "PUSH2", + "path": "78", + "value": "0x327" + }, + "7467": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1076, + 1104 + ], + "op": "JUMP", + "path": "78" + }, + "7468": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1060, + 1104 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7469": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1118, + 1123 + ], + "op": "DUP2", + "path": "78" + }, + "7470": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1127, + 1128 + ], + "op": "PUSH1", + "path": "78", + "value": "0x3" + }, + "7472": { + "branch": 375, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1118, + 1128 + ], + "op": "EQ", + "path": "78" + }, + "7473": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "ISZERO", + "path": "78" + }, + "7474": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D40" + }, + "7477": { + "branch": 375, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "JUMPI", + "path": "78" + }, + "7478": { + "op": "POP" + }, + "7479": { + "offset": [ + 2665, + 2676 + ], + "op": "PUSH4", + "path": "60", + "value": "0x1DA9C00" + }, + "7484": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1130, + 1151 + ], + "op": "PUSH2", + "path": "78", + "statement": 145, + "value": "0x327" + }, + "7487": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1130, + 1151 + ], + "op": "JUMP", + "path": "78" + }, + "7488": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1114, + 1151 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7489": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1165, + 1170 + ], + "op": "DUP2", + "path": "78" + }, + "7490": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1174, + 1175 + ], + "op": "PUSH1", + "path": "78", + "value": "0x4" + }, + "7492": { + "branch": 376, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1165, + 1175 + ], + "op": "EQ", + "path": "78" + }, + "7493": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "ISZERO", + "path": "78" + }, + "7494": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D54" + }, + "7497": { + "branch": 376, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "JUMPI", + "path": "78" + }, + "7498": { + "op": "POP" + }, + "7499": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1184, + 1202 + ], + "op": "PUSH4", + "path": "78", + "statement": 146, + "value": "0x3B53800" + }, + "7504": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1177, + 1202 + ], + "op": "PUSH2", + "path": "78", + "value": "0x327" + }, + "7507": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1177, + 1202 + ], + "op": "JUMP", + "path": "78" + }, + "7508": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1161, + 1202 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7509": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1216, + 1221 + ], + "op": "DUP2", + "path": "78" + }, + "7510": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1225, + 1226 + ], + "op": "PUSH1", + "path": "78", + "value": "0x5" + }, + "7512": { + "branch": 377, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1216, + 1226 + ], + "op": "EQ", + "path": "78" + }, + "7513": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "ISZERO", + "path": "78" + }, + "7514": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D68" + }, + "7517": { + "branch": 377, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "JUMPI", + "path": "78" + }, + "7518": { + "op": "POP" + }, + "7519": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1235, + 1253 + ], + "op": "PUSH4", + "path": "78", + "statement": 147, + "value": "0x9450C00" + }, + "7524": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1228, + 1253 + ], + "op": "PUSH2", + "path": "78", + "value": "0x327" + }, + "7527": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1228, + 1253 + ], + "op": "JUMP", + "path": "78" + }, + "7528": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1212, + 1253 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7529": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1267, + 1272 + ], + "op": "DUP2", + "path": "78" + }, + "7530": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1276, + 1277 + ], + "op": "PUSH1", + "path": "78", + "value": "0x6" + }, + "7532": { + "branch": 378, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1267, + 1277 + ], + "op": "EQ", + "path": "78" + }, + "7533": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "ISZERO", + "path": "78" + }, + "7534": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D7C" + }, + "7537": { + "branch": 378, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "JUMPI", + "path": "78" + }, + "7538": { + "op": "POP" + }, + "7539": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1286, + 1305 + ], + "op": "PUSH4", + "path": "78", + "statement": 148, + "value": "0x128A1800" + }, + "7544": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1279, + 1305 + ], + "op": "PUSH2", + "path": "78", + "value": "0x327" + }, + "7547": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1279, + 1305 + ], + "op": "JUMP", + "path": "78" + }, + "7548": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1263, + 1305 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7549": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1319, + 1324 + ], + "op": "DUP2", + "path": "78" + }, + "7550": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1328, + 1329 + ], + "op": "PUSH1", + "path": "78", + "value": "0x7" + }, + "7552": { + "branch": 379, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1319, + 1329 + ], + "op": "EQ", + "path": "78" + }, + "7553": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "ISZERO", + "path": "78" + }, + "7554": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1D90" + }, + "7557": { + "branch": 379, + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "JUMPI", + "path": "78" + }, + "7558": { + "op": "POP" + }, + "7559": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1338, + 1357 + ], + "op": "PUSH4", + "path": "78", + "statement": 149, + "value": "0x25143000" + }, + "7564": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1331, + 1357 + ], + "op": "PUSH2", + "path": "78", + "value": "0x327" + }, + "7567": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1331, + 1357 + ], + "op": "JUMP", + "path": "78" + }, + "7568": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1315, + 1357 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7569": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH1", + "path": "78", + "statement": 150, + "value": "0x40" + }, + "7571": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "MLOAD", + "path": "78" + }, + "7572": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "7576": { + "op": "PUSH1", + "value": "0xE5" + }, + "7578": { + "op": "SHL" + }, + "7579": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "DUP2", + "path": "78" + }, + "7580": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "MSTORE", + "path": "78" + }, + "7581": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH1", + "path": "78", + "value": "0x4" + }, + "7583": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "ADD", + "path": "78" + }, + "7584": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH2", + "path": "78", + "value": "0x3D8" + }, + "7587": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "SWAP1", + "path": "78" + }, + "7588": { + "fn": "DateTime.getTradedMarket", + "offset": [ + 1368, + 1391 + ], + "op": "PUSH2", + "path": "78", + "value": "0x36E6" + }, + "7591": { + "fn": "DateTime.getTradedMarket", + "jump": "i", + "offset": [ + 1368, + 1391 + ], + "op": "JUMP", + "path": "78" + }, + "7592": { + "fn": "SafeMath.add", + "offset": [ + 2682, + 2857 + ], + "op": "JUMPDEST", + "path": "6" + }, + "7593": { + "fn": "SafeMath.add", + "offset": [ + 2740, + 2747 + ], + "op": "PUSH1", + "path": "6", + "value": "0x0" + }, + "7595": { + "fn": "SafeMath.add", + "offset": [ + 2771, + 2776 + ], + "op": "DUP3", + "path": "6" + }, + "7596": { + "fn": "SafeMath.add", + "offset": [ + 2771, + 2776 + ], + "op": "DUP3", + "path": "6" + }, + "7597": { + "fn": "SafeMath.add", + "offset": [ + 2771, + 2776 + ], + "op": "ADD", + "path": "6" + }, + "7598": { + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "DUP4", + "path": "6", + "statement": 151 + }, + "7599": { + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "DUP2", + "path": "6" + }, + "7600": { + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "LT", + "path": "6" + }, + "7601": { + "branch": 444, + "fn": "SafeMath.add", + "offset": [ + 2794, + 2800 + ], + "op": "ISZERO", + "path": "6" + }, + "7602": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH2", + "path": "6", + "value": "0x653" + }, + "7605": { + "branch": 444, + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "JUMPI", + "path": "6" + }, + "7606": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "7608": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP1", + "path": "6" + }, + "7609": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MLOAD", + "path": "6" + }, + "7610": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "7614": { + "op": "PUSH1", + "value": "0xE5" + }, + "7616": { + "op": "SHL" + }, + "7617": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP2", + "path": "6" + }, + "7618": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "7619": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "7621": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x4" + }, + "7623": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP3", + "path": "6" + }, + "7624": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "7625": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "7626": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x1B" + }, + "7628": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x24" + }, + "7630": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP3", + "path": "6" + }, + "7631": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "7632": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "7633": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH32", + "path": "6", + "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000" + }, + "7666": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x44" + }, + "7668": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP3", + "path": "6" + }, + "7669": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "7670": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MSTORE", + "path": "6" + }, + "7671": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "7672": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "MLOAD", + "path": "6" + }, + "7673": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "7674": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "DUP2", + "path": "6" + }, + "7675": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "7676": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SUB", + "path": "6" + }, + "7677": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "PUSH1", + "path": "6", + "value": "0x64" + }, + "7679": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "ADD", + "path": "6" + }, + "7680": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "SWAP1", + "path": "6" + }, + "7681": { + "fn": "SafeMath.add", + "offset": [ + 2786, + 2832 + ], + "op": "REVERT", + "path": "6" + }, + "7682": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7683": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4140, + 4147 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7685": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4149, + 4153 + ], + "op": "DUP1", + "path": "78" + }, + "7686": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4169, + 4190 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7688": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4193, + 4215 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E10" + }, + "7691": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4205, + 4214 + ], + "op": "DUP6", + "path": "78" + }, + "7692": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4193, + 4204 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1A0D" + }, + "7695": { + "fn": "DateTime.getBitNumFromMaturity", + "jump": "i", + "offset": [ + 4193, + 4215 + ], + "op": "JUMP", + "path": "78" + }, + "7696": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4193, + 4215 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7697": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4169, + 4215 + ], + "op": "SWAP1", + "path": "78" + }, + "7698": { + "op": "POP" + }, + "7699": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "7703": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4283, + 4291 + ], + "op": "DUP5", + "path": "78" + }, + "7704": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4283, + 4307 + ], + "op": "MOD", + "path": "78" + }, + "7705": { + "branch": 380, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4283, + 4312 + ], + "op": "ISZERO", + "path": "78" + }, + "7706": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4279, + 4331 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E2A" + }, + "7709": { + "branch": 380, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4279, + 4331 + ], + "op": "JUMPI", + "path": "78" + }, + "7710": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4322, + 4323 + ], + "op": "PUSH1", + "path": "78", + "statement": 152, + "value": "0x0" + }, + "7712": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4325, + 4330 + ], + "op": "DUP1", + "path": "78" + }, + "7713": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "SWAP3", + "path": "78" + }, + "7714": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "POP", + "path": "78" + }, + "7715": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "SWAP3", + "path": "78" + }, + "7716": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "POP", + "path": "78" + }, + "7717": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "POP", + "path": "78" + }, + "7718": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1F06" + }, + "7721": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4314, + 4331 + ], + "op": "JUMP", + "path": "78" + }, + "7722": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4279, + 4331 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7723": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4404, + 4412 + ], + "op": "DUP4", + "path": "78" + }, + "7724": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4387, + 4400 + ], + "op": "DUP2", + "path": "78" + }, + "7725": { + "branch": 381, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4387, + 4412 + ], + "op": "LT", + "path": "78" + }, + "7726": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4383, + 4431 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E3E" + }, + "7729": { + "branch": 381, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4383, + 4431 + ], + "op": "JUMPI", + "path": "78" + }, + "7730": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4422, + 4423 + ], + "op": "PUSH1", + "path": "78", + "statement": 153, + "value": "0x0" + }, + "7732": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4425, + 4430 + ], + "op": "DUP1", + "path": "78" + }, + "7733": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "SWAP3", + "path": "78" + }, + "7734": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "POP", + "path": "78" + }, + "7735": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "SWAP3", + "path": "78" + }, + "7736": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "POP", + "path": "78" + }, + "7737": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "POP", + "path": "78" + }, + "7738": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1F06" + }, + "7741": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4414, + 4431 + ], + "op": "JUMP", + "path": "78" + }, + "7742": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4383, + 4431 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7743": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "7747": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4556, + 4580 + ], + "op": "DUP2", + "path": "78" + }, + "7748": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4556, + 4580 + ], + "op": "DUP6", + "path": "78" + }, + "7749": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4556, + 4580 + ], + "op": "SUB", + "path": "78" + }, + "7750": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4555, + 4597 + ], + "op": "DIV", + "path": "78" + }, + "7751": { + "offset": [ + 2984, + 2986 + ], + "op": "PUSH1", + "path": "60", + "value": "0x5A" + }, + "7753": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4680, + 4718 + ], + "op": "DUP2", + "path": "78" + }, + "7754": { + "branch": 382, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4680, + 4718 + ], + "op": "GT", + "path": "78" + }, + "7755": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4676, + 6563 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E5B" + }, + "7758": { + "branch": 382, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4676, + 6563 + ], + "op": "JUMPI", + "path": "78" + }, + "7759": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4742, + 4752 + ], + "op": "SWAP3", + "path": "78", + "statement": 154 + }, + "7760": { + "op": "POP" + }, + "7761": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4754, + 4758 + ], + "op": "PUSH1", + "path": "78", + "value": "0x1" + }, + "7763": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4754, + 4758 + ], + "op": "SWAP2", + "path": "78" + }, + "7764": { + "op": "POP" + }, + "7765": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4734, + 4759 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1F06" + }, + "7768": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4734, + 4759 + ], + "op": "SWAP1", + "path": "78" + }, + "7769": { + "op": "POP" + }, + "7770": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4734, + 4759 + ], + "op": "JUMP", + "path": "78" + }, + "7771": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4676, + 6563 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7772": { + "offset": [ + 3036, + 3039 + ], + "op": "PUSH2", + "path": "60", + "value": "0x168" + }, + "7775": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4780, + 4790 + ], + "op": "DUP2", + "path": "78" + }, + "7776": { + "branch": 383, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4780, + 4819 + ], + "op": "GT", + "path": "78" + }, + "7777": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4776, + 6563 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E9A" + }, + "7780": { + "branch": 383, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4776, + 6563 + ], + "op": "JUMPI", + "path": "78" + }, + "7781": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5092, + 5112 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7783": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "7787": { + "offset": [ + 2520, + 2527 + ], + "op": "PUSH3", + "path": "60", + "value": "0x7E900" + }, + "7791": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5212, + 5242 + ], + "op": "DUP5", + "path": "78" + }, + "7792": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5212, + 5242 + ], + "op": "MOD", + "path": "78" + }, + "7793": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5211, + 5279 + ], + "op": "DIV", + "path": "78" + }, + "7794": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5131, + 5279 + ], + "op": "DUP3", + "path": "78" + }, + "7795": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5131, + 5279 + ], + "op": "ADD", + "path": "78" + }, + "7796": { + "op": "PUSH1", + "value": "0x59" + }, + "7798": { + "op": "NOT" + }, + "7799": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5131, + 5279 + ], + "op": "ADD", + "path": "78" + }, + "7800": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5131, + 5279 + ], + "op": "SWAP1", + "path": "78" + }, + "7801": { + "op": "POP" + }, + "7802": { + "offset": [ + 2776, + 2777 + ], + "op": "PUSH1", + "path": "60", + "value": "0x6" + }, + "7804": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5131, + 5279 + ], + "op": "DUP2", + "path": "78" + }, + "7805": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5528, + 5565 + ], + "op": "DIV", + "path": "78", + "statement": 155 + }, + "7806": { + "offset": [ + 3257, + 3259 + ], + "op": "PUSH1", + "path": "60", + "value": "0x5A" + }, + "7808": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5500, + 5565 + ], + "op": "ADD", + "path": "78" + }, + "7809": { + "offset": [ + 2776, + 2777 + ], + "op": "PUSH1", + "path": "60", + "value": "0x6" + }, + "7811": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5596 + ], + "op": "DUP3", + "path": "78" + }, + "7812": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5621 + ], + "op": "DUP2", + "path": "78" + }, + "7813": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5621 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E8A" + }, + "7816": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5621 + ], + "op": "JUMPI", + "path": "78" + }, + "7817": { + "dev": "Modulus by zero", + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5621 + ], + "op": "INVALID", + "path": "78" + }, + "7818": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5621 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7819": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5584, + 5621 + ], + "op": "MOD", + "path": "78" + }, + "7820": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5626, + 5627 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7822": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5583, + 5627 + ], + "op": "EQ", + "path": "78" + }, + "7823": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "SWAP5", + "path": "78" + }, + "7824": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "POP", + "path": "78" + }, + "7825": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "SWAP5", + "path": "78" + }, + "7826": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "POP", + "path": "78" + }, + "7827": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "POP", + "path": "78" + }, + "7828": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "POP", + "path": "78" + }, + "7829": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "POP", + "path": "78" + }, + "7830": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1F06" + }, + "7833": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5306, + 5641 + ], + "op": "JUMP", + "path": "78" + }, + "7834": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4776, + 6563 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7835": { + "offset": [ + 3090, + 3094 + ], + "op": "PUSH2", + "path": "60", + "value": "0x870" + }, + "7838": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5662, + 5672 + ], + "op": "DUP2", + "path": "78" + }, + "7839": { + "branch": 384, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5662, + 5702 + ], + "op": "GT", + "path": "78" + }, + "7840": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5658, + 6563 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1ECA" + }, + "7843": { + "branch": 384, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5658, + 6563 + ], + "op": "JUMPI", + "path": "78" + }, + "7844": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5718, + 5738 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7846": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "7850": { + "offset": [ + 2567, + 2575 + ], + "op": "PUSH3", + "path": "60", + "value": "0x278D00" + }, + "7854": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5839, + 5870 + ], + "op": "DUP5", + "path": "78" + }, + "7855": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5839, + 5870 + ], + "op": "MOD", + "path": "78" + }, + "7856": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5838, + 5907 + ], + "op": "DIV", + "path": "78" + }, + "7857": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5757, + 5907 + ], + "op": "DUP3", + "path": "78" + }, + "7858": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5757, + 5907 + ], + "op": "ADD", + "path": "78" + }, + "7859": { + "op": "PUSH2", + "value": "0x167" + }, + "7862": { + "op": "NOT" + }, + "7863": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5757, + 5907 + ], + "op": "ADD", + "path": "78" + }, + "7864": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5757, + 5907 + ], + "op": "SWAP1", + "path": "78" + }, + "7865": { + "op": "POP" + }, + "7866": { + "offset": [ + 2825, + 2827 + ], + "op": "PUSH1", + "path": "60", + "value": "0x1E" + }, + "7868": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5757, + 5907 + ], + "op": "DUP2", + "path": "78" + }, + "7869": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5976, + 6014 + ], + "op": "DIV", + "path": "78", + "statement": 156 + }, + "7870": { + "offset": [ + 3310, + 3313 + ], + "op": "PUSH1", + "path": "60", + "value": "0x87" + }, + "7872": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5947, + 6014 + ], + "op": "ADD", + "path": "78" + }, + "7873": { + "offset": [ + 2825, + 2827 + ], + "op": "PUSH1", + "path": "60", + "value": "0x1E" + }, + "7875": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6033, + 6045 + ], + "op": "DUP3", + "path": "78" + }, + "7876": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6033, + 6071 + ], + "op": "DUP2", + "path": "78" + }, + "7877": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6033, + 6071 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E8A" + }, + "7880": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6033, + 6071 + ], + "op": "JUMPI", + "path": "78" + }, + "7881": { + "dev": "Modulus by zero", + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6033, + 6071 + ], + "op": "INVALID", + "path": "78" + }, + "7882": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 5658, + 6563 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7883": { + "offset": [ + 3147, + 3151 + ], + "op": "PUSH2", + "path": "60", + "value": "0x1DE2" + }, + "7886": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6112, + 6122 + ], + "op": "DUP2", + "path": "78" + }, + "7887": { + "branch": 385, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6112, + 6154 + ], + "op": "GT", + "path": "78" + }, + "7888": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6108, + 6563 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1EFA" + }, + "7891": { + "branch": 385, + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6108, + 6563 + ], + "op": "JUMPI", + "path": "78" + }, + "7892": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6170, + 6190 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7894": { + "offset": [ + 2399, + 2404 + ], + "op": "PUSH3", + "path": "60", + "value": "0x15180" + }, + "7898": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "7902": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6292, + 6325 + ], + "op": "DUP5", + "path": "78" + }, + "7903": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6292, + 6325 + ], + "op": "MOD", + "path": "78" + }, + "7904": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6291, + 6362 + ], + "op": "DIV", + "path": "78" + }, + "7905": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6209, + 6362 + ], + "op": "DUP3", + "path": "78" + }, + "7906": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6209, + 6362 + ], + "op": "ADD", + "path": "78" + }, + "7907": { + "op": "PUSH2", + "value": "0x86F" + }, + "7910": { + "op": "NOT" + }, + "7911": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6209, + 6362 + ], + "op": "ADD", + "path": "78" + }, + "7912": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6209, + 6362 + ], + "op": "SWAP1", + "path": "78" + }, + "7913": { + "op": "POP" + }, + "7914": { + "offset": [ + 2877, + 2879 + ], + "op": "PUSH1", + "path": "60", + "value": "0x5A" + }, + "7916": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6209, + 6362 + ], + "op": "DUP2", + "path": "78" + }, + "7917": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6433, + 6473 + ], + "op": "DIV", + "path": "78", + "statement": 157 + }, + "7918": { + "offset": [ + 3366, + 3369 + ], + "op": "PUSH1", + "path": "60", + "value": "0xC3" + }, + "7920": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6402, + 6473 + ], + "op": "ADD", + "path": "78" + }, + "7921": { + "offset": [ + 2877, + 2879 + ], + "op": "PUSH1", + "path": "60", + "value": "0x5A" + }, + "7923": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6492, + 6504 + ], + "op": "DUP3", + "path": "78" + }, + "7924": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6492, + 6532 + ], + "op": "DUP2", + "path": "78" + }, + "7925": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6492, + 6532 + ], + "op": "PUSH2", + "path": "78", + "value": "0x1E8A" + }, + "7928": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6492, + 6532 + ], + "op": "JUMPI", + "path": "78" + }, + "7929": { + "dev": "Modulus by zero", + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6492, + 6532 + ], + "op": "INVALID", + "path": "78" + }, + "7930": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6108, + 6563 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7931": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6706, + 6709 + ], + "op": "PUSH2", + "path": "78", + "statement": 158, + "value": "0x100" + }, + "7934": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6711, + 6716 + ], + "op": "PUSH1", + "path": "78", + "value": "0x0" + }, + "7936": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6698, + 6717 + ], + "op": "SWAP4", + "path": "78" + }, + "7937": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6698, + 6717 + ], + "op": "POP", + "path": "78" + }, + "7938": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6698, + 6717 + ], + "op": "SWAP4", + "path": "78" + }, + "7939": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6698, + 6717 + ], + "op": "POP", + "path": "78" + }, + "7940": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6698, + 6717 + ], + "op": "POP", + "path": "78" + }, + "7941": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 6698, + 6717 + ], + "op": "POP", + "path": "78" + }, + "7942": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "JUMPDEST", + "path": "78" + }, + "7943": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "SWAP3", + "path": "78" + }, + "7944": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "POP", + "path": "78" + }, + "7945": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "SWAP3", + "path": "78" + }, + "7946": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "SWAP1", + "path": "78" + }, + "7947": { + "fn": "DateTime.getBitNumFromMaturity", + "offset": [ + 4025, + 6724 + ], + "op": "POP", + "path": "78" + }, + "7948": { + "fn": "DateTime.getBitNumFromMaturity", + "jump": "o", + "offset": [ + 4025, + 6724 + ], + "op": "JUMP", + "path": "78" + }, + "7949": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2175, + 2407 + ], + "op": "JUMPDEST", + "path": "62" + }, + "7950": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2241, + 2288 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "7952": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2305, + 2317 + ], + "op": "DUP1", + "path": "62" + }, + "7953": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2320, + 2360 + ], + "op": "PUSH2", + "path": "62", + "value": "0x30C" + }, + "7956": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2336, + 2359 + ], + "op": "PUSH1", + "path": "62", + "value": "0x2" + }, + "7958": { + "fn": "LibStorage.getNTokenContextStorage", + "offset": [ + 2320, + 2335 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1971" + }, + "7961": { + "fn": "LibStorage.getNTokenContextStorage", + "jump": "i", + "offset": [ + 2320, + 2360 + ], + "op": "JUMP", + "path": "62" + }, + "7962": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "JUMPDEST", + "path": "83" + }, + "7963": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3200, + 3206 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "7965": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3218, + 3238 + ], + "op": "DUP1", + "path": "83" + }, + "7966": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3241, + 3277 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F27" + }, + "7969": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3257, + 3264 + ], + "op": "DUP8", + "path": "83" + }, + "7970": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3266, + 3276 + ], + "op": "DUP8", + "path": "83" + }, + "7971": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3241, + 3256 + ], + "op": "PUSH2", + "path": "83", + "value": "0x26A0" + }, + "7974": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 3241, + 3277 + ], + "op": "JUMP", + "path": "83" + }, + "7975": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3241, + 3277 + ], + "op": "JUMPDEST", + "path": "83" + }, + "7976": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3218, + 3277 + ], + "op": "SWAP1", + "path": "83" + }, + "7977": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3218, + 3277 + ], + "op": "POP", + "path": "83" + }, + "7978": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3287, + 3386 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "7980": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3389, + 3424 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F33" + }, + "7983": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3389, + 3422 + ], + "op": "PUSH2", + "path": "83", + "value": "0x198A" + }, + "7986": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 3389, + 3424 + ], + "op": "JUMP", + "path": "83" + }, + "7987": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3389, + 3424 + ], + "op": "JUMPDEST", + "path": "83" + }, + "7988": { + "op": "PUSH1", + "value": "0x1" + }, + "7990": { + "op": "PUSH1", + "value": "0x1" + }, + "7992": { + "op": "PUSH1", + "value": "0xA0" + }, + "7994": { + "op": "SHL" + }, + "7995": { + "op": "SUB" + }, + "7996": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "DUP10", + "path": "83" + }, + "7997": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "AND", + "path": "83" + }, + "7998": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3434, + 3465 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "8000": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "SWAP1", + "path": "83" + }, + "8001": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "DUP2", + "path": "83" + }, + "8002": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "MSTORE", + "path": "83" + }, + "8003": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "8005": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "DUP3", + "path": "83" + }, + "8006": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "DUP2", + "path": "83" + }, + "8007": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "MSTORE", + "path": "83" + }, + "8008": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "PUSH1", + "path": "83", + "value": "0x40" + }, + "8010": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "DUP1", + "path": "83" + }, + "8011": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "DUP4", + "path": "83" + }, + "8012": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3482 + ], + "op": "KECCAK256", + "path": "83" + }, + "8013": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "DUP12", + "path": "83" + }, + "8014": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "DUP5", + "path": "83" + }, + "8015": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "MSTORE", + "path": "83" + }, + "8016": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "DUP3", + "path": "83" + }, + "8017": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "MSTORE", + "path": "83" + }, + "8018": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "DUP1", + "path": "83" + }, + "8019": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "DUP4", + "path": "83" + }, + "8020": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3494 + ], + "op": "KECCAK256", + "path": "83" + }, + "8021": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "DUP11", + "path": "83" + }, + "8022": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "DUP5", + "path": "83" + }, + "8023": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "MSTORE", + "path": "83" + }, + "8024": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "SWAP1", + "path": "83" + }, + "8025": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "SWAP2", + "path": "83" + }, + "8026": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "MSTORE", + "path": "83" + }, + "8027": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "DUP2", + "path": "83" + }, + "8028": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3468, + 3504 + ], + "op": "KECCAK256", + "path": "83" + }, + "8029": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3287, + 3424 + ], + "op": "SWAP2", + "path": "83" + }, + "8030": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3287, + 3424 + ], + "op": "SWAP3", + "path": "83" + }, + "8031": { + "op": "POP" + }, + "8032": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3434, + 3465 + ], + "op": "DUP1", + "path": "83" + }, + "8033": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3547, + 3603 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F6A" + }, + "8036": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3578, + 3592 + ], + "op": "DUP9", + "path": "83" + }, + "8037": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3495, + 3503 + ], + "op": "DUP11", + "path": "83" + }, + "8038": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3547, + 3577 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1E02" + }, + "8041": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 3547, + 3603 + ], + "op": "JUMP", + "path": "83" + }, + "8042": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3547, + 3603 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8043": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3514, + 3603 + ], + "op": "SWAP2", + "path": "83" + }, + "8044": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3514, + 3603 + ], + "op": "POP", + "path": "83" + }, + "8045": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3514, + 3603 + ], + "op": "SWAP2", + "path": "83" + }, + "8046": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3514, + 3603 + ], + "op": "POP", + "path": "83" + }, + "8047": { + "branch": 362, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3621, + 3628 + ], + "op": "DUP1", + "path": "83", + "statement": 159 + }, + "8048": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3613, + 3629 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F78" + }, + "8051": { + "branch": 362, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3613, + 3629 + ], + "op": "JUMPI", + "path": "83" + }, + "8052": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3613, + 3629 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "8054": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3613, + 3629 + ], + "op": "DUP1", + "path": "83" + }, + "8055": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3613, + 3629 + ], + "op": "REVERT", + "path": "83" + }, + "8056": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3613, + 3629 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8057": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3689, + 3718 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F82" + }, + "8060": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3689, + 3701 + ], + "op": "DUP6", + "path": "83" + }, + "8061": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3711, + 3717 + ], + "op": "DUP4", + "path": "83" + }, + "8062": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3689, + 3710 + ], + "op": "PUSH2", + "path": "83", + "value": "0x26D5" + }, + "8065": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 3689, + 3718 + ], + "op": "JUMP", + "path": "83" + }, + "8066": { + "branch": 363, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3689, + 3718 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8067": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3685, + 4334 + ], + "op": "ISZERO", + "path": "83" + }, + "8068": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3685, + 4334 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2011" + }, + "8071": { + "branch": 363, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3685, + 4334 + ], + "op": "JUMPI", + "path": "83" + }, + "8072": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3838, + 3856 + ], + "op": "DUP3", + "path": "83" + }, + "8073": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3838, + 3856 + ], + "op": "SLOAD", + "path": "83" + }, + "8074": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3802, + 3822 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "8076": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3802, + 3822 + ], + "op": "SWAP1", + "path": "83" + }, + "8077": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3857 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1F9E" + }, + "8080": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3857 + ], + "op": "SWAP1", + "path": "83" + }, + "8081": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3833 + ], + "op": "DUP10", + "path": "83" + }, + "8082": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3833 + ], + "op": "SWAP1", + "path": "83" + }, + "8083": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3838, + 3856 + ], + "op": "PUSH1", + "path": "83", + "value": "0xF" + }, + "8085": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3838, + 3856 + ], + "op": "SWAP1", + "path": "83" + }, + "8086": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3838, + 3856 + ], + "op": "DUP2", + "path": "83" + }, + "8087": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3838, + 3856 + ], + "op": "SIGNEXTEND", + "path": "83" + }, + "8088": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3857 + ], + "op": "SWAP1", + "path": "83" + }, + "8089": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3857 + ], + "op": "SIGNEXTEND", + "path": "83" + }, + "8090": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3837 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2705" + }, + "8093": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 3825, + 3857 + ], + "op": "JUMP", + "path": "83" + }, + "8094": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3825, + 3857 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8095": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3802, + 3857 + ], + "op": "SWAP1", + "path": "83" + }, + "8096": { + "op": "POP" + }, + "8097": { + "op": "PUSH1", + "value": "0x1" + }, + "8099": { + "op": "PUSH1", + "value": "0x1" + }, + "8101": { + "op": "PUSH1", + "value": "0x7F" + }, + "8103": { + "op": "SHL" + }, + "8104": { + "op": "SUB" + }, + "8105": { + "op": "NOT" + }, + "8106": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3912 + ], + "op": "DUP2", + "path": "83", + "statement": 160 + }, + "8107": { + "op": "SLT" + }, + "8108": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3912 + ], + "op": "DUP1", + "path": "83" + }, + "8109": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3912 + ], + "op": "ISZERO", + "path": "83" + }, + "8110": { + "branch": 364, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3912 + ], + "op": "SWAP1", + "path": "83" + }, + "8111": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3949 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1FBF" + }, + "8114": { + "branch": 364, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3949 + ], + "op": "JUMPI", + "path": "83" + }, + "8115": { + "op": "POP" + }, + "8116": { + "op": "PUSH1", + "value": "0x1" + }, + "8118": { + "op": "PUSH1", + "value": "0x1" + }, + "8120": { + "op": "PUSH1", + "value": "0x7F" + }, + "8122": { + "op": "SHL" + }, + "8123": { + "op": "SUB" + }, + "8124": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3916, + 3949 + ], + "op": "DUP2", + "path": "83" + }, + "8125": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3916, + 3949 + ], + "op": "SGT", + "path": "83" + }, + "8126": { + "branch": 365, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3916, + 3949 + ], + "op": "ISZERO", + "path": "83" + }, + "8127": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3879, + 3949 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8128": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3871, + 3950 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1FC8" + }, + "8131": { + "branch": 365, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3871, + 3950 + ], + "op": "JUMPI", + "path": "83" + }, + "8132": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3871, + 3950 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "8134": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3871, + 3950 + ], + "op": "DUP1", + "path": "83" + }, + "8135": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3871, + 3950 + ], + "op": "REVERT", + "path": "83" + }, + "8136": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3871, + 3950 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8137": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "DUP4", + "path": "83", + "statement": 161 + }, + "8138": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "SLOAD", + "path": "83" + }, + "8139": { + "op": "PUSH1", + "value": "0x1" + }, + "8141": { + "op": "PUSH1", + "value": "0x1" + }, + "8143": { + "op": "PUSH1", + "value": "0x80" + }, + "8145": { + "op": "SHL" + }, + "8146": { + "op": "SUB" + }, + "8147": { + "op": "NOT" + }, + "8148": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "AND", + "path": "83" + }, + "8149": { + "op": "PUSH1", + "value": "0x1" + }, + "8151": { + "op": "PUSH1", + "value": "0x1" + }, + "8153": { + "op": "PUSH1", + "value": "0x80" + }, + "8155": { + "op": "SHL" + }, + "8156": { + "op": "SUB" + }, + "8157": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "PUSH1", + "path": "83", + "value": "0xF" + }, + "8159": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "DUP4", + "path": "83" + }, + "8160": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "SWAP1", + "path": "83" + }, + "8161": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "SIGNEXTEND", + "path": "83" + }, + "8162": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "AND", + "path": "83" + }, + "8163": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "OR", + "path": "83" + }, + "8164": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "DUP5", + "path": "83" + }, + "8165": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "SSTORE", + "path": "83" + }, + "8166": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3997, + 4039 + ], + "op": "DUP1", + "path": "83" + }, + "8167": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4119, + 4225 + ], + "op": "PUSH2", + "path": "83", + "value": "0x1FF9" + }, + "8170": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4119, + 4225 + ], + "op": "JUMPI", + "path": "83" + }, + "8171": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4176, + 4210 + ], + "op": "PUSH2", + "path": "83", + "statement": 162, + "value": "0x1FF6" + }, + "8174": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4176, + 4188 + ], + "op": "DUP7", + "path": "83" + }, + "8175": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4196, + 4202 + ], + "op": "DUP5", + "path": "83" + }, + "8176": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4204, + 4209 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "8178": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4176, + 4195 + ], + "op": "PUSH2", + "path": "83", + "value": "0x271B" + }, + "8181": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 4176, + 4210 + ], + "op": "JUMP", + "path": "83" + }, + "8182": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4176, + 4210 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8183": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4161, + 4210 + ], + "op": "SWAP6", + "path": "83" + }, + "8184": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4161, + 4210 + ], + "op": "POP", + "path": "83" + }, + "8185": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4119, + 4225 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8186": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4239, + 4289 + ], + "op": "PUSH2", + "path": "83", + "statement": 163, + "value": "0x2004" + }, + "8189": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4255, + 4262 + ], + "op": "DUP13", + "path": "83" + }, + "8190": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4264, + 4274 + ], + "op": "DUP13", + "path": "83" + }, + "8191": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4276, + 4288 + ], + "op": "DUP9", + "path": "83" + }, + "8192": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4239, + 4254 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2766" + }, + "8195": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 4239, + 4289 + ], + "op": "JUMP", + "path": "83" + }, + "8196": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4239, + 4289 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8197": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4310, + 4323 + ], + "op": "SWAP6", + "path": "83", + "statement": 164 + }, + "8198": { + "op": "POP" + }, + "8199": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4303, + 4323 + ], + "op": "PUSH2", + "path": "83", + "value": "0x207E" + }, + "8202": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4303, + 4323 + ], + "op": "SWAP5", + "path": "83" + }, + "8203": { + "op": "POP" + }, + "8204": { + "op": "POP" + }, + "8205": { + "op": "POP" + }, + "8206": { + "op": "POP" + }, + "8207": { + "op": "POP" + }, + "8208": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4303, + 4323 + ], + "op": "JUMP", + "path": "83" + }, + "8209": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3685, + 4334 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8210": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4348, + 4361 + ], + "op": "DUP7", + "path": "83" + }, + "8211": { + "branch": 366, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4348, + 4361 + ], + "op": "ISZERO", + "path": "83" + }, + "8212": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4344, + 4766 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2075" + }, + "8215": { + "branch": 366, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4344, + 4766 + ], + "op": "JUMPI", + "path": "83" + }, + "8216": { + "op": "PUSH1", + "value": "0x1" + }, + "8218": { + "op": "PUSH1", + "value": "0x1" + }, + "8220": { + "op": "PUSH1", + "value": "0x7F" + }, + "8222": { + "op": "SHL" + }, + "8223": { + "op": "SUB" + }, + "8224": { + "op": "NOT" + }, + "8225": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4511 + ], + "op": "DUP8", + "path": "83", + "statement": 165 + }, + "8226": { + "op": "SLT" + }, + "8227": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4511 + ], + "op": "DUP1", + "path": "83" + }, + "8228": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4511 + ], + "op": "ISZERO", + "path": "83" + }, + "8229": { + "branch": 367, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4511 + ], + "op": "SWAP1", + "path": "83" + }, + "8230": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4543 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2036" + }, + "8233": { + "branch": 367, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4543 + ], + "op": "JUMPI", + "path": "83" + }, + "8234": { + "op": "POP" + }, + "8235": { + "op": "PUSH1", + "value": "0x1" + }, + "8237": { + "op": "PUSH1", + "value": "0x1" + }, + "8239": { + "op": "PUSH1", + "value": "0x7F" + }, + "8241": { + "op": "SHL" + }, + "8242": { + "op": "SUB" + }, + "8243": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4515, + 4543 + ], + "op": "DUP8", + "path": "83" + }, + "8244": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4515, + 4543 + ], + "op": "SGT", + "path": "83" + }, + "8245": { + "branch": 368, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4515, + 4543 + ], + "op": "ISZERO", + "path": "83" + }, + "8246": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4483, + 4543 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8247": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4475, + 4544 + ], + "op": "PUSH2", + "path": "83", + "value": "0x203F" + }, + "8250": { + "branch": 368, + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4475, + 4544 + ], + "op": "JUMPI", + "path": "83" + }, + "8251": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4475, + 4544 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "8253": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4475, + 4544 + ], + "op": "DUP1", + "path": "83" + }, + "8254": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4475, + 4544 + ], + "op": "REVERT", + "path": "83" + }, + "8255": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4475, + 4544 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8256": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "DUP3", + "path": "83", + "statement": 166 + }, + "8257": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "SLOAD", + "path": "83" + }, + "8258": { + "op": "PUSH1", + "value": "0x1" + }, + "8260": { + "op": "PUSH1", + "value": "0x1" + }, + "8262": { + "op": "PUSH1", + "value": "0x80" + }, + "8264": { + "op": "SHL" + }, + "8265": { + "op": "SUB" + }, + "8266": { + "op": "NOT" + }, + "8267": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "AND", + "path": "83" + }, + "8268": { + "op": "PUSH1", + "value": "0x1" + }, + "8270": { + "op": "PUSH1", + "value": "0x1" + }, + "8272": { + "op": "PUSH1", + "value": "0x80" + }, + "8274": { + "op": "SHL" + }, + "8275": { + "op": "SUB" + }, + "8276": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "PUSH1", + "path": "83", + "value": "0xF" + }, + "8278": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "DUP10", + "path": "83" + }, + "8279": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "SWAP1", + "path": "83" + }, + "8280": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "SIGNEXTEND", + "path": "83" + }, + "8281": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "AND", + "path": "83" + }, + "8282": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "OR", + "path": "83" + }, + "8283": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "DUP4", + "path": "83" + }, + "8284": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4591, + 4628 + ], + "op": "SSTORE", + "path": "83" + }, + "8285": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4658, + 4691 + ], + "op": "PUSH2", + "path": "83", + "statement": 167, + "value": "0x2068" + }, + "8288": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4658, + 4670 + ], + "op": "DUP6", + "path": "83" + }, + "8289": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4678, + 4684 + ], + "op": "DUP4", + "path": "83" + }, + "8290": { + "op": "PUSH1", + "value": "0x1" + }, + "8292": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4658, + 4677 + ], + "op": "PUSH2", + "path": "83", + "value": "0x271B" + }, + "8295": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 4658, + 4691 + ], + "op": "JUMP", + "path": "83" + }, + "8296": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4658, + 4691 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8297": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4643, + 4691 + ], + "op": "SWAP5", + "path": "83" + }, + "8298": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4643, + 4691 + ], + "op": "POP", + "path": "83" + }, + "8299": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4705, + 4755 + ], + "op": "PUSH2", + "path": "83", + "statement": 168, + "value": "0x2075" + }, + "8302": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4721, + 4728 + ], + "op": "DUP12", + "path": "83" + }, + "8303": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4730, + 4740 + ], + "op": "DUP12", + "path": "83" + }, + "8304": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4742, + 4754 + ], + "op": "DUP8", + "path": "83" + }, + "8305": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4705, + 4720 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2766" + }, + "8308": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "i", + "offset": [ + 4705, + 4755 + ], + "op": "JUMP", + "path": "83" + }, + "8309": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4705, + 4755 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8310": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4783, + 4791 + ], + "op": "DUP7", + "path": "83", + "statement": 169 + }, + "8311": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "SWAP6", + "path": "83" + }, + "8312": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "POP", + "path": "83" + }, + "8313": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "POP", + "path": "83" + }, + "8314": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "POP", + "path": "83" + }, + "8315": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "POP", + "path": "83" + }, + "8316": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "POP", + "path": "83" + }, + "8317": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 4776, + 4791 + ], + "op": "POP", + "path": "83" + }, + "8318": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "JUMPDEST", + "path": "83" + }, + "8319": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "SWAP6", + "path": "83" + }, + "8320": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "SWAP5", + "path": "83" + }, + "8321": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "POP", + "path": "83" + }, + "8322": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "POP", + "path": "83" + }, + "8323": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "POP", + "path": "83" + }, + "8324": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "POP", + "path": "83" + }, + "8325": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "offset": [ + 3016, + 4798 + ], + "op": "POP", + "path": "83" + }, + "8326": { + "fn": "BitmapAssetsHandler.addifCashAsset", + "jump": "o", + "offset": [ + 3016, + 4798 + ], + "op": "JUMP", + "path": "83" + }, + "8327": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 2971, + 5042 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8328": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3268, + 3295 + ], + "op": "DUP5", + "path": "84" + }, + "8329": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3268, + 3295 + ], + "op": "MLOAD", + "path": "84" + }, + "8330": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3230, + 3416 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2096" + }, + "8333": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3230, + 3416 + ], + "op": "SWAP1", + "path": "84" + }, + "8334": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3313, + 3323 + ], + "op": "DUP6", + "path": "84" + }, + "8335": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3341, + 3349 + ], + "op": "DUP6", + "path": "84" + }, + "8336": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3367, + 3376 + ], + "op": "DUP6", + "path": "84" + }, + "8337": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3394, + 3402 + ], + "op": "DUP6", + "path": "84" + }, + "8338": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3230, + 3250 + ], + "op": "PUSH2", + "path": "84", + "value": "0x27C0" + }, + "8341": { + "fn": "PortfolioHandler.addAsset", + "jump": "i", + "offset": [ + 3230, + 3416 + ], + "op": "JUMP", + "path": "84" + }, + "8342": { + "branch": 390, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3230, + 3416 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8343": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3171, + 3434 + ], + "op": "ISZERO", + "path": "84" + }, + "8344": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3171, + 3434 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20A0" + }, + "8347": { + "branch": 390, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3171, + 3434 + ], + "op": "JUMPI", + "path": "84" + }, + "8348": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3427, + 3434 + ], + "op": "PUSH2", + "path": "84", + "statement": 170, + "value": "0x1AEF" + }, + "8351": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3427, + 3434 + ], + "op": "JUMP", + "path": "84" + }, + "8352": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3171, + 3434 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8353": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3448, + 3480 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "8355": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3448, + 3480 + ], + "op": "DUP6", + "path": "84" + }, + "8356": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3448, + 3480 + ], + "op": "ADD", + "path": "84" + }, + "8357": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3448, + 3480 + ], + "op": "MLOAD", + "path": "84" + }, + "8358": { + "branch": 391, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3448, + 3484 + ], + "op": "ISZERO", + "path": "84" + }, + "8359": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3444, + 3740 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20CD" + }, + "8362": { + "branch": 391, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3444, + 3740 + ], + "op": "JUMPI", + "path": "84" + }, + "8363": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3500, + 3511 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8365": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3514, + 3697 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20BD" + }, + "8368": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3552, + 3566 + ], + "op": "DUP7", + "path": "84" + }, + "8369": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3552, + 3576 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8371": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3552, + 3576 + ], + "op": "ADD", + "path": "84" + }, + "8372": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3552, + 3576 + ], + "op": "MLOAD", + "path": "84" + }, + "8373": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3594, + 3604 + ], + "op": "DUP7", + "path": "84" + }, + "8374": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3622, + 3630 + ], + "op": "DUP7", + "path": "84" + }, + "8375": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3648, + 3657 + ], + "op": "DUP7", + "path": "84" + }, + "8376": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3675, + 3683 + ], + "op": "DUP7", + "path": "84" + }, + "8377": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3514, + 3534 + ], + "op": "PUSH2", + "path": "84", + "value": "0x27C0" + }, + "8380": { + "fn": "PortfolioHandler.addAsset", + "jump": "i", + "offset": [ + 3514, + 3697 + ], + "op": "JUMP", + "path": "84" + }, + "8381": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3514, + 3697 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8382": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3500, + 3697 + ], + "op": "SWAP1", + "path": "84" + }, + "8383": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3500, + 3697 + ], + "op": "POP", + "path": "84" + }, + "8384": { + "branch": 392, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3715, + 3721 + ], + "op": "DUP1", + "path": "84" + }, + "8385": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3711, + 3730 + ], + "op": "ISZERO", + "path": "84" + }, + "8386": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3711, + 3730 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20CB" + }, + "8389": { + "branch": 392, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3711, + 3730 + ], + "op": "JUMPI", + "path": "84" + }, + "8390": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3723, + 3730 + ], + "op": "POP", + "path": "84", + "statement": 171 + }, + "8391": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3723, + 3730 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1AEF" + }, + "8394": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3723, + 3730 + ], + "op": "JUMP", + "path": "84" + }, + "8395": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3711, + 3730 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8396": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3444, + 3740 + ], + "op": "POP", + "path": "84" + }, + "8397": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3444, + 3740 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8398": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3904, + 3944 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20D6" + }, + "8401": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3934, + 3943 + ], + "op": "DUP3", + "path": "84" + }, + "8402": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3904, + 3933 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28D9" + }, + "8405": { + "fn": "PortfolioHandler.addAsset", + "jump": "i", + "offset": [ + 3904, + 3944 + ], + "op": "JUMP", + "path": "84" + }, + "8406": { + "branch": 393, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3904, + 3944 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8407": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3900, + 4052 + ], + "op": "ISZERO", + "path": "84" + }, + "8408": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3900, + 4052 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20E9" + }, + "8411": { + "branch": 393, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3900, + 4052 + ], + "op": "JUMPI", + "path": "84" + }, + "8412": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3980, + 3981 + ], + "op": "PUSH1", + "path": "84", + "statement": 172, + "value": "0x0" + }, + "8414": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3968, + 3976 + ], + "op": "DUP2", + "path": "84" + }, + "8415": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3968, + 3981 + ], + "op": "SLT", + "path": "84" + }, + "8416": { + "branch": 394, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3968, + 3981 + ], + "op": "ISZERO", + "path": "84" + }, + "8417": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3960, + 3982 + ], + "op": "PUSH2", + "path": "84", + "value": "0x20E9" + }, + "8420": { + "branch": 394, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3960, + 3982 + ], + "op": "JUMPI", + "path": "84" + }, + "8421": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3960, + 3982 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8423": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3960, + 3982 + ], + "op": "DUP1", + "path": "84" + }, + "8424": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3960, + 3982 + ], + "op": "REVERT", + "path": "84" + }, + "8425": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 3960, + 3982 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8426": { + "op": "PUSH11", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "8438": { + "op": "NOT" + }, + "8439": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4096 + ], + "op": "DUP2", + "path": "84", + "statement": 173 + }, + "8440": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4096 + ], + "op": "SLT", + "path": "84" + }, + "8441": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4096 + ], + "op": "DUP1", + "path": "84" + }, + "8442": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4096 + ], + "op": "ISZERO", + "path": "84" + }, + "8443": { + "branch": 395, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4096 + ], + "op": "SWAP1", + "path": "84" + }, + "8444": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4127 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2110" + }, + "8447": { + "branch": 395, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4127 + ], + "op": "JUMPI", + "path": "84" + }, + "8448": { + "op": "POP" + }, + "8449": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4112, + 4127 + ], + "op": "PUSH11", + "path": "84", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "8461": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4100, + 4127 + ], + "op": "DUP2", + "path": "84" + }, + "8462": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4100, + 4127 + ], + "op": "SGT", + "path": "84" + }, + "8463": { + "branch": 396, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4100, + 4127 + ], + "op": "ISZERO", + "path": "84" + }, + "8464": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4069, + 4127 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8465": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4061, + 4128 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2119" + }, + "8468": { + "branch": 396, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4061, + 4128 + ], + "op": "JUMPI", + "path": "84" + }, + "8469": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4061, + 4128 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8471": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4061, + 4128 + ], + "op": "DUP1", + "path": "84" + }, + "8472": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4061, + 4128 + ], + "op": "REVERT", + "path": "84" + }, + "8473": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4061, + 4128 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8474": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4278, + 4292 + ], + "op": "DUP5", + "path": "84" + }, + "8475": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4278, + 4302 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8477": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4278, + 4302 + ], + "op": "ADD", + "path": "84" + }, + "8478": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4278, + 4302 + ], + "op": "MLOAD", + "path": "84" + }, + "8479": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4278, + 4309 + ], + "op": "MLOAD", + "path": "84" + }, + "8480": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4242, + 4256 + ], + "op": "DUP6", + "path": "84" + }, + "8481": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4242, + 4274 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "8483": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4242, + 4274 + ], + "op": "ADD", + "path": "84" + }, + "8484": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4242, + 4274 + ], + "op": "MLOAD", + "path": "84" + }, + "8485": { + "branch": 397, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4242, + 4309 + ], + "op": "EQ", + "path": "84" + }, + "8486": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4238, + 4409 + ], + "op": "ISZERO", + "path": "84" + }, + "8487": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4238, + 4409 + ], + "op": "PUSH2", + "path": "84", + "value": "0x213D" + }, + "8490": { + "branch": 397, + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4238, + 4409 + ], + "op": "JUMPI", + "path": "84" + }, + "8491": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4352, + 4398 + ], + "op": "PUSH2", + "path": "84", + "statement": 174, + "value": "0x2137" + }, + "8494": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4373, + 4387 + ], + "op": "DUP6", + "path": "84" + }, + "8495": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4373, + 4397 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8497": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4373, + 4397 + ], + "op": "ADD", + "path": "84" + }, + "8498": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4373, + 4397 + ], + "op": "MLOAD", + "path": "84" + }, + "8499": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4352, + 4372 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28EF" + }, + "8502": { + "fn": "PortfolioHandler.addAsset", + "jump": "i", + "offset": [ + 4352, + 4398 + ], + "op": "JUMP", + "path": "84" + }, + "8503": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4352, + 4398 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8504": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4325, + 4349 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8506": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4325, + 4349 + ], + "op": "DUP7", + "path": "84" + }, + "8507": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4325, + 4349 + ], + "op": "ADD", + "path": "84" + }, + "8508": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4325, + 4398 + ], + "op": "MSTORE", + "path": "84" + }, + "8509": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4238, + 4409 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8510": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4679, + 4709 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8512": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4726 + ], + "op": "DUP6", + "path": "84" + }, + "8513": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4736 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8515": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4736 + ], + "op": "ADD", + "path": "84" + }, + "8516": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4736 + ], + "op": "MLOAD", + "path": "84" + }, + "8517": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4737, + 4751 + ], + "op": "DUP7", + "path": "84" + }, + "8518": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4737, + 4769 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "8520": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4737, + 4769 + ], + "op": "ADD", + "path": "84" + }, + "8521": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4737, + 4769 + ], + "op": "MLOAD", + "path": "84" + }, + "8522": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "DUP2", + "path": "84" + }, + "8523": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "MLOAD", + "path": "84" + }, + "8524": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "DUP2", + "path": "84" + }, + "8525": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "LT", + "path": "84" + }, + "8526": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2153" + }, + "8529": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "JUMPI", + "path": "84" + }, + "8530": { + "dev": "Index out of range", + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "INVALID", + "path": "84" + }, + "8531": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8532": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8534": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "SWAP1", + "path": "84" + }, + "8535": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "DUP2", + "path": "84" + }, + "8536": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "MUL", + "path": "84" + }, + "8537": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "SWAP2", + "path": "84" + }, + "8538": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "SWAP1", + "path": "84" + }, + "8539": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "SWAP2", + "path": "84" + }, + "8540": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "ADD", + "path": "84" + }, + "8541": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "DUP2", + "path": "84" + }, + "8542": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "ADD", + "path": "84" + }, + "8543": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4712, + 4770 + ], + "op": "MLOAD", + "path": "84" + }, + "8544": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4780, + 4812 + ], + "op": "SWAP6", + "path": "84", + "statement": 175 + }, + "8545": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4780, + 4812 + ], + "op": "DUP7", + "path": "84" + }, + "8546": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4780, + 4812 + ], + "op": "MSTORE", + "path": "84" + }, + "8547": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4822, + 4839 + ], + "op": "DUP6", + "path": "84", + "statement": 176 + }, + "8548": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4822, + 4839 + ], + "op": "ADD", + "path": "84" + }, + "8549": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4822, + 4850 + ], + "op": "SWAP4", + "path": "84" + }, + "8550": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4822, + 4850 + ], + "op": "SWAP1", + "path": "84" + }, + "8551": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4822, + 4850 + ], + "op": "SWAP4", + "path": "84" + }, + "8552": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4822, + 4850 + ], + "op": "MSTORE", + "path": "84" + }, + "8553": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4878 + ], + "op": "PUSH1", + "path": "84", + "statement": 177, + "value": "0x40" + }, + "8555": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4878 + ], + "op": "DUP1", + "path": "84" + }, + "8556": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4878 + ], + "op": "DUP6", + "path": "84" + }, + "8557": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4878 + ], + "op": "ADD", + "path": "84" + }, + "8558": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4890 + ], + "op": "SWAP3", + "path": "84" + }, + "8559": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4890 + ], + "op": "SWAP1", + "path": "84" + }, + "8560": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4890 + ], + "op": "SWAP3", + "path": "84" + }, + "8561": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4860, + 4890 + ], + "op": "MSTORE", + "path": "84" + }, + "8562": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4900, + 4917 + ], + "op": "PUSH1", + "path": "84", + "statement": 178, + "value": "0x60" + }, + "8564": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4900, + 4917 + ], + "op": "DUP5", + "path": "84" + }, + "8565": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4900, + 4917 + ], + "op": "ADD", + "path": "84" + }, + "8566": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4900, + 4928 + ], + "op": "MSTORE", + "path": "84" + }, + "8567": { + "op": "PUSH1", + "value": "0x0" + }, + "8569": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4959 + ], + "op": "PUSH1", + "path": "84", + "statement": 179, + "value": "0xA0" + }, + "8571": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4959 + ], + "op": "SWAP1", + "path": "84" + }, + "8572": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4959 + ], + "op": "SWAP4", + "path": "84" + }, + "8573": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4959 + ], + "op": "ADD", + "path": "84" + }, + "8574": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4988 + ], + "op": "SWAP3", + "path": "84" + }, + "8575": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4988 + ], + "op": "SWAP1", + "path": "84" + }, + "8576": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4988 + ], + "op": "SWAP3", + "path": "84" + }, + "8577": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4938, + 4988 + ], + "op": "MSTORE", + "path": "84" + }, + "8578": { + "op": "POP" + }, + "8579": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4998, + 5030 + ], + "op": "ADD", + "path": "84", + "statement": 180 + }, + "8580": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4998, + 5035 + ], + "op": "DUP1", + "path": "84" + }, + "8581": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4998, + 5035 + ], + "op": "MLOAD", + "path": "84" + }, + "8582": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 5034, + 5035 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "8584": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4998, + 5035 + ], + "op": "ADD", + "path": "84" + }, + "8585": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4998, + 5035 + ], + "op": "SWAP1", + "path": "84" + }, + "8586": { + "fn": "PortfolioHandler.addAsset", + "offset": [ + 4998, + 5035 + ], + "op": "MSTORE", + "path": "84" + }, + "8587": { + "fn": "PortfolioHandler.addAsset", + "jump": "o", + "offset": [ + 2971, + 5042 + ], + "op": "JUMP", + "path": "84" + }, + "8588": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6460, + 10583 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8589": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8591": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8592": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8593": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8594": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8595": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8596": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8597": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6583, + 6587 + ], + "op": "DUP1", + "path": "84" + }, + "8598": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8599": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7219, + 7246 + ], + "op": "DUP10", + "path": "84" + }, + "8600": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7219, + 7246 + ], + "op": "MLOAD", + "path": "84" + }, + "8601": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7219, + 7253 + ], + "op": "MLOAD", + "path": "84" + }, + "8602": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7215, + 7253 + ], + "op": "DUP2", + "path": "84" + }, + "8603": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7215, + 7253 + ], + "op": "LT", + "path": "84" + }, + "8604": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "ISZERO", + "path": "84" + }, + "8605": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "PUSH2", + "path": "84", + "value": "0x221D" + }, + "8608": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMPI", + "path": "84" + }, + "8609": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7274, + 7301 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8611": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7318 + ], + "op": "DUP11", + "path": "84" + }, + "8612": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7331 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8614": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7331 + ], + "op": "ADD", + "path": "84" + }, + "8615": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7331 + ], + "op": "MLOAD", + "path": "84" + }, + "8616": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7332, + 7333 + ], + "op": "DUP3", + "path": "84" + }, + "8617": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "DUP2", + "path": "84" + }, + "8618": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "MLOAD", + "path": "84" + }, + "8619": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "DUP2", + "path": "84" + }, + "8620": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "LT", + "path": "84" + }, + "8621": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "PUSH2", + "path": "84", + "value": "0x21B2" + }, + "8624": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "JUMPI", + "path": "84" + }, + "8625": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "INVALID", + "path": "84" + }, + "8626": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8627": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8629": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "MUL", + "path": "84" + }, + "8630": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8632": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "ADD", + "path": "84" + }, + "8633": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "ADD", + "path": "84" + }, + "8634": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7304, + 7334 + ], + "op": "MLOAD", + "path": "84" + }, + "8635": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7274, + 7334 + ], + "op": "SWAP1", + "path": "84" + }, + "8636": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7274, + 7334 + ], + "op": "POP", + "path": "84" + }, + "8637": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7517, + 7549 + ], + "op": "PUSH1", + "path": "84", + "statement": 181, + "value": "0x3" + }, + "8639": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "DUP1", + "path": "84" + }, + "8640": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "DUP2", + "path": "84" + }, + "8641": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "GT", + "path": "84" + }, + "8642": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "ISZERO", + "path": "84" + }, + "8643": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "PUSH2", + "path": "84", + "value": "0x21C8" + }, + "8646": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPI", + "path": "84" + }, + "8647": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "INVALID", + "path": "84" + }, + "8648": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8649": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7500 + ], + "op": "DUP2", + "path": "84" + }, + "8650": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7513 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "8652": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7513 + ], + "op": "ADD", + "path": "84" + }, + "8653": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7513 + ], + "op": "MLOAD", + "path": "84" + }, + "8654": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "8656": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "DUP2", + "path": "84" + }, + "8657": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "GT", + "path": "84" + }, + "8658": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "ISZERO", + "path": "84" + }, + "8659": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "PUSH2", + "path": "84", + "value": "0x21D8" + }, + "8662": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPI", + "path": "84" + }, + "8663": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "INVALID", + "path": "84" + }, + "8664": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8665": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "EQ", + "path": "84" + }, + "8666": { + "branch": 398, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7495, + 7549 + ], + "op": "ISZERO", + "path": "84" + }, + "8667": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "PUSH2", + "path": "84", + "value": "0x21E3" + }, + "8670": { + "branch": 398, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "JUMPI", + "path": "84" + }, + "8671": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8673": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "DUP1", + "path": "84" + }, + "8674": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "REVERT", + "path": "84" + }, + "8675": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7487, + 7550 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8676": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7647, + 7671 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "8678": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7630 + ], + "op": "DUP2", + "path": "84" + }, + "8679": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7643 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "8681": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7643 + ], + "op": "ADD", + "path": "84" + }, + "8682": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7643 + ], + "op": "MLOAD", + "path": "84" + }, + "8683": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "8685": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "DUP2", + "path": "84" + }, + "8686": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "GT", + "path": "84" + }, + "8687": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "ISZERO", + "path": "84" + }, + "8688": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "PUSH2", + "path": "84", + "value": "0x21F5" + }, + "8691": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "JUMPI", + "path": "84" + }, + "8692": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "INVALID", + "path": "84" + }, + "8693": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8694": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "EQ", + "path": "84" + }, + "8695": { + "branch": 399, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7671 + ], + "op": "ISZERO", + "path": "84" + }, + "8696": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "DUP1", + "path": "84" + }, + "8697": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "ISZERO", + "path": "84" + }, + "8698": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2205" + }, + "8701": { + "branch": 399, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "JUMPI", + "path": "84" + }, + "8702": { + "op": "POP" + }, + "8703": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "8705": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "DUP2", + "path": "84" + }, + "8706": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "ADD", + "path": "84" + }, + "8707": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7689 + ], + "op": "MLOAD", + "path": "84" + }, + "8708": { + "branch": 400, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7675, + 7694 + ], + "op": "ISZERO", + "path": "84" + }, + "8709": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7625, + 7694 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8710": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7621, + 7759 + ], + "op": "ISZERO", + "path": "84" + }, + "8711": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7621, + 7759 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2214" + }, + "8714": { + "branch": 400, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7621, + 7759 + ], + "op": "JUMPI", + "path": "84" + }, + "8715": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7714, + 7744 + ], + "op": "PUSH2", + "path": "84", + "statement": 182, + "value": "0x2214" + }, + "8718": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7726, + 7740 + ], + "op": "DUP12", + "path": "84" + }, + "8719": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7742, + 7743 + ], + "op": "DUP4", + "path": "84" + }, + "8720": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7714, + 7725 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29A7" + }, + "8723": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 7714, + 7744 + ], + "op": "JUMP", + "path": "84" + }, + "8724": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7714, + 7744 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8725": { + "op": "POP" + }, + "8726": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7255, + 7258 + ], + "op": "PUSH1", + "path": "84", + "statement": 183, + "value": "0x1" + }, + "8728": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7255, + 7258 + ], + "op": "ADD", + "path": "84" + }, + "8729": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2196" + }, + "8732": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMP", + "path": "84" + }, + "8733": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8734": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7195, + 7769 + ], + "op": "POP", + "path": "84" + }, + "8735": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7868, + 7877 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8737": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8738": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7887, + 7914 + ], + "op": "DUP10", + "path": "84" + }, + "8739": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7887, + 7914 + ], + "op": "MLOAD", + "path": "84" + }, + "8740": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7887, + 7921 + ], + "op": "MLOAD", + "path": "84" + }, + "8741": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7883, + 7921 + ], + "op": "DUP2", + "path": "84" + }, + "8742": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7883, + 7921 + ], + "op": "LT", + "path": "84" + }, + "8743": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "ISZERO", + "path": "84" + }, + "8744": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "PUSH2", + "path": "84", + "value": "0x22C0" + }, + "8747": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMPI", + "path": "84" + }, + "8748": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7942, + 7969 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8750": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7986 + ], + "op": "DUP11", + "path": "84" + }, + "8751": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7999 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8753": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7999 + ], + "op": "ADD", + "path": "84" + }, + "8754": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 7999 + ], + "op": "MLOAD", + "path": "84" + }, + "8755": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8000, + 8001 + ], + "op": "DUP3", + "path": "84" + }, + "8756": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "DUP2", + "path": "84" + }, + "8757": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "MLOAD", + "path": "84" + }, + "8758": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "DUP2", + "path": "84" + }, + "8759": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "LT", + "path": "84" + }, + "8760": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "PUSH2", + "path": "84", + "value": "0x223D" + }, + "8763": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "JUMPI", + "path": "84" + }, + "8764": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "INVALID", + "path": "84" + }, + "8765": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8766": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8768": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "MUL", + "path": "84" + }, + "8769": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8771": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "ADD", + "path": "84" + }, + "8772": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "ADD", + "path": "84" + }, + "8773": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7972, + 8002 + ], + "op": "MLOAD", + "path": "84" + }, + "8774": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7942, + 8002 + ], + "op": "SWAP1", + "path": "84" + }, + "8775": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7942, + 8002 + ], + "op": "POP", + "path": "84" + }, + "8776": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8043, + 8067 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "8778": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "8780": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "DUP2", + "path": "84" + }, + "8781": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "GT", + "path": "84" + }, + "8782": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "ISZERO", + "path": "84" + }, + "8783": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2254" + }, + "8786": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPI", + "path": "84" + }, + "8787": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "INVALID", + "path": "84" + }, + "8788": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8789": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8026 + ], + "op": "DUP2", + "path": "84" + }, + "8790": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8039 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "8792": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8039 + ], + "op": "ADD", + "path": "84" + }, + "8793": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8039 + ], + "op": "MLOAD", + "path": "84" + }, + "8794": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "8796": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "DUP2", + "path": "84" + }, + "8797": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "GT", + "path": "84" + }, + "8798": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "ISZERO", + "path": "84" + }, + "8799": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2264" + }, + "8802": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPI", + "path": "84" + }, + "8803": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "INVALID", + "path": "84" + }, + "8804": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8805": { + "branch": 401, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8021, + 8067 + ], + "op": "EQ", + "path": "84" + }, + "8806": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "ISZERO", + "path": "84" + }, + "8807": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2278" + }, + "8810": { + "branch": 401, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "JUMPI", + "path": "84" + }, + "8811": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "8813": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "DUP2", + "path": "84" + }, + "8814": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "ADD", + "path": "84" + }, + "8815": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8154, + 8171 + ], + "op": "MLOAD", + "path": "84" + }, + "8816": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8132, + 8151 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8818": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8220, + 8245 + ], + "op": "SWAP1", + "path": "84" + }, + "8819": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8220, + 8245 + ], + "op": "SSTORE", + "path": "84" + }, + "8820": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8198, + 8263 + ], + "op": "PUSH2", + "path": "84", + "value": "0x22B7" + }, + "8823": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8198, + 8263 + ], + "op": "JUMP", + "path": "84" + }, + "8824": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8198, + 8263 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8825": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8327, + 8351 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "8827": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8310 + ], + "op": "DUP2", + "path": "84" + }, + "8828": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8323 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "8830": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8323 + ], + "op": "ADD", + "path": "84" + }, + "8831": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8323 + ], + "op": "MLOAD", + "path": "84" + }, + "8832": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "8834": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "DUP2", + "path": "84" + }, + "8835": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "GT", + "path": "84" + }, + "8836": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "ISZERO", + "path": "84" + }, + "8837": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "PUSH2", + "path": "84", + "value": "0x228A" + }, + "8840": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "JUMPI", + "path": "84" + }, + "8841": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "INVALID", + "path": "84" + }, + "8842": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8843": { + "branch": 402, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8305, + 8351 + ], + "op": "EQ", + "path": "84" + }, + "8844": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "ISZERO", + "path": "84" + }, + "8845": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "PUSH2", + "path": "84", + "value": "0x22A3" + }, + "8848": { + "branch": 402, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "JUMPI", + "path": "84" + }, + "8849": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "8851": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "DUP2", + "path": "84" + }, + "8852": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "ADD", + "path": "84" + }, + "8853": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "MLOAD", + "path": "84" + }, + "8854": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "DUP1", + "path": "84" + }, + "8855": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8611, + 8643 + ], + "op": "PUSH2", + "path": "84", + "statement": 184, + "value": "0x22A0" + }, + "8858": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8466 + ], + "op": "DUP4", + "path": "84" + }, + "8859": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8461, + 8478 + ], + "op": "DUP3", + "path": "84" + }, + "8860": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8611, + 8622 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AF6" + }, + "8863": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 8611, + 8643 + ], + "op": "JUMP", + "path": "84" + }, + "8864": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8611, + 8643 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8865": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "POP", + "path": "84" + }, + "8866": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "POP", + "path": "84" + }, + "8867": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8301, + 8662 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8868": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8875, + 9055 + ], + "op": "PUSH2", + "path": "84", + "statement": 185, + "value": "0x22AF" + }, + "8871": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8920, + 8925 + ], + "op": "DUP2", + "path": "84" + }, + "8872": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8947, + 8954 + ], + "op": "DUP7", + "path": "84" + }, + "8873": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8976, + 9001 + ], + "op": "DUP7", + "path": "84" + }, + "8874": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9023, + 9037 + ], + "op": "DUP7", + "path": "84" + }, + "8875": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8875, + 8898 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C27" + }, + "8878": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 8875, + 9055 + ], + "op": "JUMP", + "path": "84" + }, + "8879": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8875, + 9055 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8880": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP2", + "path": "84" + }, + "8881": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP7", + "path": "84" + }, + "8882": { + "op": "POP" + }, + "8883": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP5", + "path": "84" + }, + "8884": { + "op": "POP" + }, + "8885": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8820, + 9055 + ], + "op": "SWAP3", + "path": "84" + }, + "8886": { + "op": "POP" + }, + "8887": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 8017, + 9070 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8888": { + "op": "POP" + }, + "8889": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7923, + 7926 + ], + "op": "PUSH1", + "path": "84", + "statement": 186, + "value": "0x1" + }, + "8891": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7923, + 7926 + ], + "op": "ADD", + "path": "84" + }, + "8892": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2221" + }, + "8895": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMP", + "path": "84" + }, + "8896": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 7863, + 9080 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8897": { + "op": "POP" + }, + "8898": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "8900": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "DUP10", + "path": "84" + }, + "8901": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "ADD", + "path": "84" + }, + "8902": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9145, + 9177 + ], + "op": "MLOAD", + "path": "84" + }, + "8903": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9116, + 9142 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8905": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9280, + 9317 + ], + "op": "PUSH2", + "path": "84", + "value": "0x22D0" + }, + "8908": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9280, + 9315 + ], + "op": "PUSH2", + "path": "84", + "value": "0x1997" + }, + "8911": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 9280, + 9317 + ], + "op": "JUMP", + "path": "84" + }, + "8912": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9280, + 9317 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8913": { + "op": "PUSH1", + "value": "0x1" + }, + "8915": { + "op": "PUSH1", + "value": "0x1" + }, + "8917": { + "op": "PUSH1", + "value": "0xA0" + }, + "8919": { + "op": "SHL" + }, + "8920": { + "op": "SUB" + }, + "8921": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP12", + "path": "84" + }, + "8922": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "AND", + "path": "84" + }, + "8923": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9327, + 9391 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8925": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "SWAP1", + "path": "84" + }, + "8926": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP2", + "path": "84" + }, + "8927": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "MSTORE", + "path": "84" + }, + "8928": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8930": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP3", + "path": "84" + }, + "8931": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "SWAP1", + "path": "84" + }, + "8932": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "MSTORE", + "path": "84" + }, + "8933": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "8935": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "DUP2", + "path": "84" + }, + "8936": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9394, + 9408 + ], + "op": "KECCAK256", + "path": "84" + }, + "8937": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9187, + 9317 + ], + "op": "SWAP2", + "path": "84" + }, + "8938": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9187, + 9317 + ], + "op": "SWAP3", + "path": "84" + }, + "8939": { + "op": "POP" + }, + "8940": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8941": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9456 + ], + "op": "DUP13", + "path": "84" + }, + "8942": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9466 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8944": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9466 + ], + "op": "ADD", + "path": "84" + }, + "8945": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9466 + ], + "op": "MLOAD", + "path": "84" + }, + "8946": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9442, + 9473 + ], + "op": "MLOAD", + "path": "84" + }, + "8947": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9438, + 9439 + ], + "op": "DUP2", + "path": "84" + }, + "8948": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9438, + 9473 + ], + "op": "LT", + "path": "84" + }, + "8949": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "ISZERO", + "path": "84" + }, + "8950": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "PUSH2", + "path": "84", + "value": "0x239A" + }, + "8953": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPI", + "path": "84" + }, + "8954": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9494, + 9521 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8956": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9538 + ], + "op": "DUP14", + "path": "84" + }, + "8957": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9548 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8959": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9548 + ], + "op": "ADD", + "path": "84" + }, + "8960": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9548 + ], + "op": "MLOAD", + "path": "84" + }, + "8961": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9549, + 9550 + ], + "op": "DUP3", + "path": "84" + }, + "8962": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "DUP2", + "path": "84" + }, + "8963": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "MLOAD", + "path": "84" + }, + "8964": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "DUP2", + "path": "84" + }, + "8965": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "LT", + "path": "84" + }, + "8966": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "PUSH2", + "path": "84", + "value": "0x230B" + }, + "8969": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "JUMPI", + "path": "84" + }, + "8970": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "INVALID", + "path": "84" + }, + "8971": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "JUMPDEST", + "path": "84" + }, + "8972": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8974": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "MUL", + "path": "84" + }, + "8975": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "8977": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "ADD", + "path": "84" + }, + "8978": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "ADD", + "path": "84" + }, + "8979": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9524, + 9551 + ], + "op": "MLOAD", + "path": "84" + }, + "8980": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9494, + 9551 + ], + "op": "SWAP1", + "path": "84" + }, + "8981": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9494, + 9551 + ], + "op": "POP", + "path": "84" + }, + "8982": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9574 + ], + "op": "DUP1", + "path": "84" + }, + "8983": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9583 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "8985": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9583 + ], + "op": "ADD", + "path": "84" + }, + "8986": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9583 + ], + "op": "MLOAD", + "path": "84" + }, + "8987": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9587, + 9588 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "8989": { + "branch": 403, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9569, + 9588 + ], + "op": "EQ", + "path": "84" + }, + "8990": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "ISZERO", + "path": "84" + }, + "8991": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2328" + }, + "8994": { + "branch": 403, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "JUMPI", + "path": "84" + }, + "8995": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9590, + 9598 + ], + "op": "POP", + "path": "84", + "statement": 187 + }, + "8996": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9590, + 9598 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2392" + }, + "8999": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9590, + 9598 + ], + "op": "JUMP", + "path": "84" + }, + "9000": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9565, + 9598 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9001": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9659, + 9683 + ], + "op": "PUSH1", + "path": "84", + "statement": 188, + "value": "0x2" + }, + "9003": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9642 + ], + "op": "DUP2", + "path": "84" + }, + "9004": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9655 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9006": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9655 + ], + "op": "ADD", + "path": "84" + }, + "9007": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9655 + ], + "op": "MLOAD", + "path": "84" + }, + "9008": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9010": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "DUP2", + "path": "84" + }, + "9011": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "GT", + "path": "84" + }, + "9012": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "ISZERO", + "path": "84" + }, + "9013": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "PUSH2", + "path": "84", + "value": "0x233A" + }, + "9016": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "JUMPI", + "path": "84" + }, + "9017": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "INVALID", + "path": "84" + }, + "9018": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9019": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "EQ", + "path": "84" + }, + "9020": { + "branch": 404, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9683 + ], + "op": "ISZERO", + "path": "84" + }, + "9021": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "DUP1", + "path": "84" + }, + "9022": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "ISZERO", + "path": "84" + }, + "9023": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2358" + }, + "9026": { + "branch": 404, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "JUMPI", + "path": "84" + }, + "9027": { + "op": "POP" + }, + "9028": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9725, + 9757 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9030": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9708 + ], + "op": "DUP2", + "path": "84" + }, + "9031": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9721 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "9033": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9721 + ], + "op": "ADD", + "path": "84" + }, + "9034": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9721 + ], + "op": "MLOAD", + "path": "84" + }, + "9035": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "9037": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "DUP2", + "path": "84" + }, + "9038": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "GT", + "path": "84" + }, + "9039": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "ISZERO", + "path": "84" + }, + "9040": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2355" + }, + "9043": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "JUMPI", + "path": "84" + }, + "9044": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "INVALID", + "path": "84" + }, + "9045": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9046": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "EQ", + "path": "84" + }, + "9047": { + "branch": 405, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9703, + 9757 + ], + "op": "ISZERO", + "path": "84" + }, + "9048": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9637, + 9757 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9049": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2361" + }, + "9052": { + "branch": 405, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "JUMPI", + "path": "84" + }, + "9053": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9055": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "DUP1", + "path": "84" + }, + "9056": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "REVERT", + "path": "84" + }, + "9057": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9612, + 9771 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9058": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9878, + 10038 + ], + "op": "PUSH2", + "path": "84", + "statement": 189, + "value": "0x236D" + }, + "9061": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9919, + 9924 + ], + "op": "DUP2", + "path": "84" + }, + "9062": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9942, + 9949 + ], + "op": "DUP10", + "path": "84" + }, + "9063": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9967, + 9992 + ], + "op": "DUP10", + "path": "84" + }, + "9064": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10010, + 10024 + ], + "op": "DUP10", + "path": "84" + }, + "9065": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9878, + 9901 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C27" + }, + "9068": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 9878, + 10038 + ], + "op": "JUMP", + "path": "84" + }, + "9069": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9878, + 10038 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9070": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP2", + "path": "84" + }, + "9071": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP10", + "path": "84" + }, + "9072": { + "op": "POP" + }, + "9073": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP8", + "path": "84" + }, + "9074": { + "op": "POP" + }, + "9075": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9823, + 10038 + ], + "op": "SWAP6", + "path": "84" + }, + "9076": { + "op": "POP" + }, + "9077": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10053, + 10105 + ], + "op": "PUSH2", + "path": "84", + "statement": 190, + "value": "0x238A" + }, + "9080": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10065, + 10070 + ], + "op": "DUP2", + "path": "84" + }, + "9081": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10084 + ], + "op": "DUP5", + "path": "84" + }, + "9082": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10085, + 10103 + ], + "op": "DUP8", + "path": "84" + }, + "9083": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "9085": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "DUP2", + "path": "84" + }, + "9086": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "LT", + "path": "84" + }, + "9087": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2384" + }, + "9090": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "JUMPI", + "path": "84" + }, + "9091": { + "dev": "Index out of range", + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "INVALID", + "path": "84" + }, + "9092": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9093": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10072, + 10104 + ], + "op": "ADD", + "path": "84" + }, + "9094": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10053, + 10064 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AF6" + }, + "9097": { + "fn": "PortfolioHandler.storeAssets", + "jump": "i", + "offset": [ + 10053, + 10105 + ], + "op": "JUMP", + "path": "84" + }, + "9098": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10053, + 10105 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9099": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10141, + 10142 + ], + "op": "PUSH1", + "path": "84", + "statement": 191, + "value": "0x1" + }, + "9101": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "DUP6", + "path": "84" + }, + "9102": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "ADD", + "path": "84" + }, + "9103": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "SWAP5", + "path": "84" + }, + "9104": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10119, + 10142 + ], + "op": "POP", + "path": "84" + }, + "9105": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "POP", + "path": "84" + }, + "9106": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9107": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9475, + 9478 + ], + "op": "PUSH1", + "path": "84", + "statement": 192, + "value": "0x1" + }, + "9109": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9475, + 9478 + ], + "op": "ADD", + "path": "84" + }, + "9110": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "PUSH2", + "path": "84", + "value": "0x22EC" + }, + "9113": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMP", + "path": "84" + }, + "9114": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9115": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 9418, + 10153 + ], + "op": "POP", + "path": "84" + }, + "9116": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10333, + 10335 + ], + "op": "PUSH1", + "path": "84", + "statement": 193, + "value": "0x10" + }, + "9118": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10329 + ], + "op": "DUP4", + "path": "84" + }, + "9119": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10335 + ], + "op": "GT", + "path": "84" + }, + "9120": { + "branch": 406, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10335 + ], + "op": "ISZERO", + "path": "84" + }, + "9121": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "DUP1", + "path": "84" + }, + "9122": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "ISZERO", + "path": "84" + }, + "9123": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23B1" + }, + "9126": { + "branch": 406, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "JUMPI", + "path": "84" + }, + "9127": { + "op": "POP" + }, + "9128": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10357, + 10373 + ], + "op": "PUSH5", + "path": "84", + "value": "0xFFFFFFFFFF" + }, + "9134": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10339, + 10373 + ], + "op": "DUP5", + "path": "84" + }, + "9135": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10339, + 10373 + ], + "op": "GT", + "path": "84" + }, + "9136": { + "branch": 407, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10339, + 10373 + ], + "op": "ISZERO", + "path": "84" + }, + "9137": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10311, + 10373 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9138": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "PUSH2", + "path": "84", + "value": "0x23BA" + }, + "9141": { + "branch": 407, + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "JUMPI", + "path": "84" + }, + "9142": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "9144": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "DUP1", + "path": "84" + }, + "9145": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "REVERT", + "path": "84" + }, + "9146": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10303, + 10374 + ], + "op": "JUMPDEST", + "path": "84" + }, + "9147": { + "op": "POP" + }, + "9148": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10445, + 10452 + ], + "op": "SWAP4", + "path": "84", + "statement": 194 + }, + "9149": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10445, + 10452 + ], + "op": "SWAP11", + "path": "84" + }, + "9150": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10466, + 10491 + ], + "op": "SWAP3", + "path": "84" + }, + "9151": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10466, + 10491 + ], + "op": "SWAP10", + "path": "84" + }, + "9152": { + "op": "POP" + }, + "9153": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10466, + 10491 + ], + "op": "SWAP8", + "path": "84" + }, + "9154": { + "op": "POP" + }, + "9155": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 10511, + 10529 + ], + "op": "SWAP6", + "path": "84" + }, + "9156": { + "op": "POP" + }, + "9157": { + "fn": "PortfolioHandler.storeAssets", + "offset": [ + 6460, + 10583 + ], + "op": "SWAP4", + "path": "84" + }, + "9158": { + "op": "POP" + }, + "9159": { + "op": "POP" + }, + "9160": { + "op": "POP" + }, + "9161": { + "op": "POP" + }, + "9162": { + "fn": "PortfolioHandler.storeAssets", + "jump": "o", + "offset": [ + 6460, + 10583 + ], + "op": "JUMP", + "path": "84" + }, + "9163": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 8919, + 9670 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9164": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9004, + 9011 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9166": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9004, + 9011 + ], + "op": "DUP1", + "path": "66" + }, + "9167": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9150, + 9174 + ], + "op": "PUSH32", + "path": "66", + "value": "0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000" + }, + "9200": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9131, + 9174 + ], + "op": "DUP4", + "path": "66" + }, + "9201": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9131, + 9174 + ], + "op": "AND", + "path": "66" + }, + "9202": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9004, + 9011 + ], + "op": "DUP2", + "path": "66" + }, + "9203": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9204": { + "op": "PUSH1", + "value": "0x1" + }, + "9206": { + "op": "PUSH1", + "value": "0x1" + }, + "9208": { + "op": "PUSH1", + "value": "0x70" + }, + "9210": { + "op": "SHL" + }, + "9211": { + "op": "SUB" + }, + "9212": { + "op": "NOT" + }, + "9213": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9309, + 9323 + ], + "op": "DUP3", + "path": "66" + }, + "9214": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9309, + 9323 + ], + "op": "AND", + "path": "66" + }, + "9215": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9309, + 9323 + ], + "op": "ISZERO", + "path": "66" + }, + "9216": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x243D" + }, + "9219": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMPI", + "path": "66" + }, + "9220": { + "op": "PUSH1", + "value": "0x1" + }, + "9222": { + "op": "PUSH1", + "value": "0xFE" + }, + "9224": { + "op": "SHL" + }, + "9225": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9388 + ], + "op": "DUP3", + "path": "66" + }, + "9226": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9388 + ], + "op": "DUP2", + "path": "66" + }, + "9227": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9388 + ], + "op": "AND", + "path": "66" + }, + "9228": { + "branch": 330, + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9343, + 9420 + ], + "op": "EQ", + "path": "66" + }, + "9229": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "ISZERO", + "path": "66" + }, + "9230": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2427" + }, + "9233": { + "branch": 330, + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "JUMPI", + "path": "66" + }, + "9234": { + "op": "PUSH1", + "value": "0x1" + }, + "9236": { + "op": "PUSH1", + "value": "0x1" + }, + "9238": { + "op": "PUSH1", + "value": "0xF0" + }, + "9240": { + "op": "SHL" + }, + "9241": { + "op": "SUB" + }, + "9242": { + "op": "NOT" + }, + "9243": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9539 + ], + "op": "DUP3", + "path": "66", + "statement": 195 + }, + "9244": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9539 + ], + "op": "AND", + "path": "66" + }, + "9245": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9549 + ], + "op": "DUP2", + "path": "66" + }, + "9246": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9516, + 9549 + ], + "op": "SHR", + "path": "66" + }, + "9247": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP3", + "path": "66" + }, + "9248": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP1", + "path": "66" + }, + "9249": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP3", + "path": "66" + }, + "9250": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "OR", + "path": "66" + }, + "9251": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9506, + 9550 + ], + "op": "SWAP2", + "path": "66" + }, + "9252": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9578, + 9580 + ], + "op": "PUSH1", + "path": "66", + "statement": 196, + "value": "0x10" + }, + "9254": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9568, + 9580 + ], + "op": "ADD", + "path": "66" + }, + "9255": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9339, + 9595 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9256": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9627, + 9629 + ], + "op": "PUSH1", + "path": "66", + "statement": 197, + "value": "0x10" + }, + "9258": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9623 + ], + "op": "DUP3", + "path": "66" + }, + "9259": { + "op": "PUSH1", + "value": "0x1" + }, + "9261": { + "op": "PUSH1", + "value": "0x1" + }, + "9263": { + "op": "PUSH1", + "value": "0x70" + }, + "9265": { + "op": "SHL" + }, + "9266": { + "op": "SUB" + }, + "9267": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "NOT", + "path": "66" + }, + "9268": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "AND", + "path": "66" + }, + "9269": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "SWAP1", + "path": "66" + }, + "9270": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9617, + 9629 + ], + "op": "SHL", + "path": "66" + }, + "9271": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9608, + 9629 + ], + "op": "SWAP2", + "path": "66" + }, + "9272": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9608, + 9629 + ], + "op": "POP", + "path": "66" + }, + "9273": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "PUSH2", + "path": "66", + "value": "0x23F3" + }, + "9276": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMP", + "path": "66" + }, + "9277": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9302, + 9640 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9278": { + "op": "POP" + }, + "9279": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9657, + 9663 + ], + "op": "SWAP1", + "path": "66", + "statement": 198 + }, + "9280": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 9657, + 9663 + ], + "op": "SWAP4", + "path": "66" + }, + "9281": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "offset": [ + 8919, + 9670 + ], + "op": "SWAP3", + "path": "66" + }, + "9282": { + "op": "POP" + }, + "9283": { + "op": "POP" + }, + "9284": { + "op": "POP" + }, + "9285": { + "fn": "AccountContextHandler._clearPortfolioActiveFlags", + "jump": "o", + "offset": [ + 8919, + 9670 + ], + "op": "JUMP", + "path": "66" + }, + "9286": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9287": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5435, + 5445 + ], + "op": "DUP3", + "path": "66", + "statement": 199 + }, + "9288": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5432 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9290": { + "branch": 331, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5445 + ], + "op": "LT", + "path": "66" + }, + "9291": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "DUP1", + "path": "66" + }, + "9292": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "ISZERO", + "path": "66" + }, + "9293": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2458" + }, + "9296": { + "branch": 331, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "JUMPI", + "path": "66" + }, + "9297": { + "op": "POP" + }, + "9298": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "9301": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5449, + 5487 + ], + "op": "DUP4", + "path": "66" + }, + "9302": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5449, + 5487 + ], + "op": "GT", + "path": "66" + }, + "9303": { + "branch": 332, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5449, + 5487 + ], + "op": "ISZERO", + "path": "66" + }, + "9304": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5431, + 5487 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9305": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2461" + }, + "9308": { + "branch": 332, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "JUMPI", + "path": "66" + }, + "9309": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9311": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "DUP1", + "path": "66" + }, + "9312": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "REVERT", + "path": "66" + }, + "9313": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5423, + 5488 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9314": { + "branch": 333, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5715 + ], + "op": "DUP2", + "path": "66" + }, + "9315": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "DUP1", + "path": "66" + }, + "9316": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "ISZERO", + "path": "66" + }, + "9317": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2475" + }, + "9320": { + "branch": 333, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "JUMPI", + "path": "66" + }, + "9321": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "POP", + "path": "66" + }, + "9322": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5754, + 5764 + ], + "op": "DUP3", + "path": "66" + }, + "9323": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5733 + ], + "op": "DUP5", + "path": "66" + }, + "9324": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5750 + ], + "op": "PUSH1", + "path": "66", + "value": "0x60" + }, + "9326": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5750 + ], + "op": "ADD", + "path": "66" + }, + "9327": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5750 + ], + "op": "MLOAD", + "path": "66" + }, + "9328": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5764 + ], + "op": "PUSH2", + "path": "66", + "value": "0xFFFF" + }, + "9331": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5764 + ], + "op": "AND", + "path": "66" + }, + "9332": { + "branch": 334, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5719, + 5764 + ], + "op": "EQ", + "path": "66" + }, + "9333": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5707, + 5764 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9334": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "ISZERO", + "path": "66" + }, + "9335": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "PUSH2", + "path": "66", + "value": "0x247F" + }, + "9338": { + "branch": 334, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "JUMPI", + "path": "66" + }, + "9339": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5766, + 5773 + ], + "op": "PUSH2", + "path": "66", + "statement": 200, + "value": "0x1632" + }, + "9342": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5766, + 5773 + ], + "op": "JUMP", + "path": "66" + }, + "9343": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5703, + 5773 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9344": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "9346": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "DUP5", + "path": "66" + }, + "9347": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "ADD", + "path": "66" + }, + "9348": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5824, + 5855 + ], + "op": "MLOAD", + "path": "66" + }, + "9349": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5783, + 5797 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9351": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5783, + 5797 + ], + "op": "SWAP1", + "path": "66" + }, + "9352": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5783, + 5797 + ], + "op": "DUP2", + "path": "66" + }, + "9353": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9354": { + "op": "PUSH1", + "value": "0x1" + }, + "9356": { + "op": "PUSH1", + "value": "0x1" + }, + "9358": { + "op": "PUSH1", + "value": "0x70" + }, + "9360": { + "op": "SHL" + }, + "9361": { + "op": "SUB" + }, + "9362": { + "op": "NOT" + }, + "9363": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6691, + 6705 + ], + "op": "DUP3", + "path": "66" + }, + "9364": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6691, + 6705 + ], + "op": "AND", + "path": "66" + }, + "9365": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6691, + 6705 + ], + "op": "ISZERO", + "path": "66" + }, + "9366": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "PUSH2", + "path": "66", + "value": "0x25FA" + }, + "9369": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMPI", + "path": "66" + }, + "9370": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6767, + 6789 + ], + "op": "PUSH1", + "path": "66", + "value": "0xF0" + }, + "9372": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "DUP3", + "path": "66" + }, + "9373": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "SWAP1", + "path": "66" + }, + "9374": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "SHR", + "path": "66" + }, + "9375": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "9378": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6743, + 6790 + ], + "op": "AND", + "path": "66" + }, + "9379": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6894 + ], + "op": "DUP7", + "path": "66" + }, + "9380": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6894 + ], + "op": "DUP2", + "path": "66" + }, + "9381": { + "branch": 335, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6894 + ], + "op": "EQ", + "path": "66" + }, + "9382": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "DUP1", + "path": "66" + }, + "9383": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "ISZERO", + "path": "66" + }, + "9384": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "PUSH2", + "path": "66", + "value": "0x24AE" + }, + "9387": { + "branch": 335, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "JUMPI", + "path": "66" + }, + "9388": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "POP", + "path": "66" + }, + "9389": { + "branch": 336, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6898, + 6906 + ], + "op": "DUP6", + "path": "66" + }, + "9390": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6877, + 6906 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9391": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "ISZERO", + "path": "66" + }, + "9392": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "PUSH2", + "path": "66", + "value": "0x24E6" + }, + "9395": { + "branch": 336, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "JUMPI", + "path": "66" + }, + "9396": { + "op": "POP" + }, + "9397": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "PUSH1", + "path": "66", + "statement": 201, + "value": "0x80" + }, + "9399": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "DUP8", + "path": "66" + }, + "9400": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "ADD", + "path": "66" + }, + "9401": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "DUP1", + "path": "66" + }, + "9402": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7050 + ], + "op": "MLOAD", + "path": "66" + }, + "9403": { + "op": "PUSH1", + "value": "0x1" + }, + "9405": { + "op": "PUSH1", + "value": "0x1" + }, + "9407": { + "op": "PUSH1", + "value": "0xF0" + }, + "9409": { + "op": "SHL" + }, + "9410": { + "op": "SUB" + }, + "9411": { + "op": "NOT" + }, + "9412": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7088 + ], + "op": "DUP7", + "path": "66" + }, + "9413": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7088 + ], + "op": "AND", + "path": "66" + }, + "9414": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7102, + 7104 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9416": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7093, + 7104 + ], + "op": "SWAP1", + "path": "66" + }, + "9417": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7093, + 7104 + ], + "op": "SWAP4", + "path": "66" + }, + "9418": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7093, + 7104 + ], + "op": "MUL", + "path": "66" + }, + "9419": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SWAP3", + "path": "66" + }, + "9420": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SWAP1", + "path": "66" + }, + "9421": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SWAP3", + "path": "66" + }, + "9422": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7074, + 7105 + ], + "op": "SHR", + "path": "66" + }, + "9423": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "SWAP2", + "path": "66" + }, + "9424": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "SWAP1", + "path": "66" + }, + "9425": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "SWAP2", + "path": "66" + }, + "9426": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7019, + 7106 + ], + "op": "OR", + "path": "66" + }, + "9427": { + "op": "PUSH1", + "value": "0x1" + }, + "9429": { + "op": "PUSH1", + "value": "0x1" + }, + "9431": { + "op": "PUSH1", + "value": "0x70" + }, + "9433": { + "op": "SHL" + }, + "9434": { + "op": "SUB" + }, + "9435": { + "op": "NOT" + }, + "9436": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6965, + 7106 + ], + "op": "AND", + "path": "66" + }, + "9437": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6965, + 7106 + ], + "op": "SWAP1", + "path": "66" + }, + "9438": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6965, + 7106 + ], + "op": "MSTORE", + "path": "66" + }, + "9439": { + "op": "POP" + }, + "9440": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7124, + 7131 + ], + "op": "PUSH2", + "path": "66", + "statement": 202, + "value": "0x1632" + }, + "9443": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7124, + 7131 + ], + "op": "SWAP1", + "path": "66" + }, + "9444": { + "op": "POP" + }, + "9445": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7124, + 7131 + ], + "op": "JUMP", + "path": "66" + }, + "9446": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6873, + 7145 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9447": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7239, + 7249 + ], + "op": "DUP7", + "path": "66" + }, + "9448": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7235 + ], + "op": "DUP2", + "path": "66" + }, + "9449": { + "branch": 337, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7249 + ], + "op": "EQ", + "path": "66" + }, + "9450": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "DUP1", + "path": "66" + }, + "9451": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "ISZERO", + "path": "66" + }, + "9452": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "PUSH2", + "path": "66", + "value": "0x24F3" + }, + "9455": { + "branch": 337, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "JUMPI", + "path": "66" + }, + "9456": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "POP", + "path": "66" + }, + "9457": { + "branch": 338, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7254, + 7262 + ], + "op": "DUP6", + "path": "66" + }, + "9458": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7253, + 7262 + ], + "op": "ISZERO", + "path": "66" + }, + "9459": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7232, + 7262 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9460": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "ISZERO", + "path": "66" + }, + "9461": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2548" + }, + "9464": { + "branch": 338, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "JUMPI", + "path": "66" + }, + "9465": { + "op": "PUSH1", + "value": "0x1" + }, + "9467": { + "op": "PUSH1", + "value": "0x1" + }, + "9469": { + "op": "PUSH1", + "value": "0xF0" + }, + "9471": { + "op": "SHL" + }, + "9472": { + "op": "SUB" + }, + "9473": { + "op": "NOT" + }, + "9474": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7369, + 7383 + ], + "op": "DUP6", + "path": "66", + "statement": 203 + }, + "9475": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7369, + 7383 + ], + "op": "AND", + "path": "66" + }, + "9476": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7368, + 7383 + ], + "op": "NOT", + "path": "66" + }, + "9477": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP3", + "path": "66" + }, + "9478": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP1", + "path": "66" + }, + "9479": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP3", + "path": "66" + }, + "9480": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "AND", + "path": "66" + }, + "9481": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7359, + 7383 + ], + "op": "SWAP2", + "path": "66" + }, + "9482": { + "op": "PUSH1", + "value": "0x3" + }, + "9484": { + "op": "PUSH1", + "value": "0xFE" + }, + "9486": { + "op": "SHL" + }, + "9487": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7405, + 7455 + ], + "op": "DUP4", + "path": "66" + }, + "9488": { + "branch": 339, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7405, + 7455 + ], + "op": "AND", + "path": "66" + }, + "9489": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7401, + 7478 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2526" + }, + "9492": { + "branch": 339, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7401, + 7478 + ], + "op": "JUMPI", + "path": "66" + }, + "9493": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7476, + 7478 + ], + "op": "PUSH1", + "path": "66", + "statement": 204, + "value": "0x10" + }, + "9495": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7472 + ], + "op": "DUP4", + "path": "66" + }, + "9496": { + "op": "PUSH1", + "value": "0x1" + }, + "9498": { + "op": "PUSH1", + "value": "0x1" + }, + "9500": { + "op": "PUSH1", + "value": "0x70" + }, + "9502": { + "op": "SHL" + }, + "9503": { + "op": "SUB" + }, + "9504": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "NOT", + "path": "66" + }, + "9505": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "AND", + "path": "66" + }, + "9506": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "SWAP1", + "path": "66" + }, + "9507": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7466, + 7478 + ], + "op": "SHL", + "path": "66" + }, + "9508": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7457, + 7478 + ], + "op": "SWAP3", + "path": "66" + }, + "9509": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7457, + 7478 + ], + "op": "POP", + "path": "66" + }, + "9510": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7401, + 7478 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9511": { + "op": "POP" + }, + "9512": { + "op": "PUSH1", + "value": "0x1" + }, + "9514": { + "op": "PUSH1", + "value": "0x1" + }, + "9516": { + "op": "PUSH1", + "value": "0x70" + }, + "9518": { + "op": "SHL" + }, + "9519": { + "op": "SUB" + }, + "9520": { + "op": "NOT" + }, + "9521": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "SWAP2", + "path": "66", + "statement": 205 + }, + "9522": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "DUP3", + "path": "66" + }, + "9523": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "AND", + "path": "66" + }, + "9524": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7560, + 7562 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9526": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7551, + 7562 + ], + "op": "SWAP1", + "path": "66" + }, + "9527": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7551, + 7562 + ], + "op": "SWAP2", + "path": "66" + }, + "9528": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7551, + 7562 + ], + "op": "MUL", + "path": "66" + }, + "9529": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7540, + 7563 + ], + "op": "SHR", + "path": "66" + }, + "9530": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "SWAP2", + "path": "66" + }, + "9531": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "SWAP1", + "path": "66" + }, + "9532": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "SWAP2", + "path": "66" + }, + "9533": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7530, + 7564 + ], + "op": "OR", + "path": "66" + }, + "9534": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7564 + ], + "op": "AND", + "path": "66" + }, + "9535": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7527 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "9537": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7527 + ], + "op": "DUP6", + "path": "66" + }, + "9538": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7527 + ], + "op": "ADD", + "path": "66" + }, + "9539": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7496, + 7564 + ], + "op": "MSTORE", + "path": "66" + }, + "9540": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7582, + 7589 + ], + "op": "PUSH2", + "path": "66", + "statement": 206, + "value": "0x1632" + }, + "9543": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7582, + 7589 + ], + "op": "JUMP", + "path": "66" + }, + "9544": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7228, + 7603 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9545": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7695, + 7705 + ], + "op": "DUP7", + "path": "66" + }, + "9546": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7692 + ], + "op": "DUP2", + "path": "66" + }, + "9547": { + "branch": 340, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7705 + ], + "op": "GT", + "path": "66" + }, + "9548": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "DUP1", + "path": "66" + }, + "9549": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "ISZERO", + "path": "66" + }, + "9550": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2554" + }, + "9553": { + "branch": 340, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "JUMPI", + "path": "66" + }, + "9554": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "POP", + "path": "66" + }, + "9555": { + "branch": 341, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7709, + 7717 + ], + "op": "DUP6", + "path": "66" + }, + "9556": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7689, + 7717 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9557": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "ISZERO", + "path": "66" + }, + "9558": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "PUSH2", + "path": "66", + "value": "0x25AE" + }, + "9561": { + "branch": 341, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "JUMPI", + "path": "66" + }, + "9562": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8046, + 8049 + ], + "op": "PUSH1", + "path": "66", + "statement": 207, + "value": "0x80" + }, + "9564": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "DUP9", + "path": "66" + }, + "9565": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "DUP2", + "path": "66" + }, + "9566": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "ADD", + "path": "66" + }, + "9567": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8042 + ], + "op": "MLOAD", + "path": "66" + }, + "9568": { + "op": "PUSH1", + "value": "0x1" + }, + "9570": { + "op": "PUSH1", + "value": "0x1" + }, + "9572": { + "op": "PUSH1", + "value": "0xF0" + }, + "9574": { + "op": "SHL" + }, + "9575": { + "op": "SUB" + }, + "9576": { + "op": "NOT" + }, + "9577": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "PUSH1", + "path": "66", + "statement": 208, + "value": "0xF0" + }, + "9579": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "DUP11", + "path": "66" + }, + "9580": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "SWAP1", + "path": "66" + }, + "9581": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7790 + ], + "op": "SHL", + "path": "66" + }, + "9582": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7798 + ], + "op": "DUP9", + "path": "66" + }, + "9583": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7764, + 7798 + ], + "op": "OR", + "path": "66" + }, + "9584": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7756, + 7799 + ], + "op": "DUP2", + "path": "66" + }, + "9585": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7756, + 7799 + ], + "op": "AND", + "path": "66" + }, + "9586": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7813, + 7815 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9588": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7804, + 7815 + ], + "op": "DUP7", + "path": "66" + }, + "9589": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7804, + 7815 + ], + "op": "MUL", + "path": "66" + }, + "9590": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7756, + 7816 + ], + "op": "SHR", + "path": "66" + }, + "9591": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP7", + "path": "66" + }, + "9592": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP1", + "path": "66" + }, + "9593": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP7", + "path": "66" + }, + "9594": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "OR", + "path": "66" + }, + "9595": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7746, + 7817 + ], + "op": "SWAP6", + "path": "66" + }, + "9596": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8049 + ], + "op": "SWAP2", + "path": "66" + }, + "9597": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8049 + ], + "op": "SHL", + "path": "66" + }, + "9598": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8011, + 8049 + ], + "op": "AND", + "path": "66" + }, + "9599": { + "branch": 342, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8010, + 8058 + ], + "op": "ISZERO", + "path": "66" + }, + "9600": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2588" + }, + "9603": { + "branch": 342, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "JUMPI", + "path": "66" + }, + "9604": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9606": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "DUP1", + "path": "66" + }, + "9607": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "REVERT", + "path": "66" + }, + "9608": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8002, + 8059 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9609": { + "op": "POP" + }, + "9610": { + "op": "PUSH1", + "value": "0x1" + }, + "9612": { + "op": "PUSH1", + "value": "0x1" + }, + "9614": { + "op": "PUSH1", + "value": "0x70" + }, + "9616": { + "op": "SHL" + }, + "9617": { + "op": "SUB" + }, + "9618": { + "op": "NOT" + }, + "9619": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "SWAP2", + "path": "66", + "statement": 209 + }, + "9620": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "DUP3", + "path": "66" + }, + "9621": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "AND", + "path": "66" + }, + "9622": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8212, + 8213 + ], + "op": "PUSH1", + "path": "66", + "value": "0x1" + }, + "9624": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "SWAP2", + "path": "66" + }, + "9625": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "SWAP1", + "path": "66" + }, + "9626": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "SWAP2", + "path": "66" + }, + "9627": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8203, + 8213 + ], + "op": "ADD", + "path": "66" + }, + "9628": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8217, + 8219 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9630": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8202, + 8219 + ], + "op": "MUL", + "path": "66" + }, + "9631": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8191, + 8220 + ], + "op": "SHR", + "path": "66" + }, + "9632": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "SWAP2", + "path": "66" + }, + "9633": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "SWAP1", + "path": "66" + }, + "9634": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "SWAP2", + "path": "66" + }, + "9635": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8181, + 8221 + ], + "op": "OR", + "path": "66" + }, + "9636": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8221 + ], + "op": "AND", + "path": "66" + }, + "9637": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8178 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "9639": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8178 + ], + "op": "DUP6", + "path": "66" + }, + "9640": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8178 + ], + "op": "ADD", + "path": "66" + }, + "9641": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8147, + 8221 + ], + "op": "MSTORE", + "path": "66" + }, + "9642": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8239, + 8246 + ], + "op": "PUSH2", + "path": "66", + "statement": 210, + "value": "0x1632" + }, + "9645": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8239, + 8246 + ], + "op": "JUMP", + "path": "66" + }, + "9646": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 7685, + 8260 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9647": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8364, + 8374 + ], + "op": "DUP7", + "path": "66" + }, + "9648": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8361 + ], + "op": "DUP2", + "path": "66" + }, + "9649": { + "branch": 343, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8374 + ], + "op": "GT", + "path": "66" + }, + "9650": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "DUP1", + "path": "66" + }, + "9651": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "ISZERO", + "path": "66" + }, + "9652": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "PUSH2", + "path": "66", + "value": "0x25BB" + }, + "9655": { + "branch": 343, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "JUMPI", + "path": "66" + }, + "9656": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "POP", + "path": "66" + }, + "9657": { + "branch": 344, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8379, + 8387 + ], + "op": "DUP6", + "path": "66" + }, + "9658": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8378, + 8387 + ], + "op": "ISZERO", + "path": "66" + }, + "9659": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8358, + 8387 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9660": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "ISZERO", + "path": "66" + }, + "9661": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "PUSH2", + "path": "66", + "value": "0x25C9" + }, + "9664": { + "branch": 344, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "JUMPI", + "path": "66" + }, + "9665": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66", + "statement": 211 + }, + "9666": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66" + }, + "9667": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66" + }, + "9668": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "POP", + "path": "66" + }, + "9669": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1632" + }, + "9672": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8389, + 8396 + ], + "op": "JUMP", + "path": "66" + }, + "9673": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8354, + 8396 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9674": { + "op": "POP" + }, + "9675": { + "op": "PUSH1", + "value": "0x1" + }, + "9677": { + "op": "PUSH1", + "value": "0x1" + }, + "9679": { + "op": "PUSH1", + "value": "0xF0" + }, + "9681": { + "op": "SHL" + }, + "9682": { + "op": "SUB" + }, + "9683": { + "op": "NOT" + }, + "9684": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8452 + ], + "op": "DUP3", + "path": "66", + "statement": 212 + }, + "9685": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8452 + ], + "op": "AND", + "path": "66" + }, + "9686": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8466, + 8468 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9688": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8457, + 8468 + ], + "op": "DUP3", + "path": "66" + }, + "9689": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8457, + 8468 + ], + "op": "DUP2", + "path": "66" + }, + "9690": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8457, + 8468 + ], + "op": "MUL", + "path": "66" + }, + "9691": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SWAP2", + "path": "66" + }, + "9692": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SWAP1", + "path": "66" + }, + "9693": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SWAP2", + "path": "66" + }, + "9694": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8429, + 8469 + ], + "op": "SHR", + "path": "66" + }, + "9695": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP4", + "path": "66" + }, + "9696": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP1", + "path": "66" + }, + "9697": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP4", + "path": "66" + }, + "9698": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "OR", + "path": "66" + }, + "9699": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8419, + 8470 + ], + "op": "SWAP3", + "path": "66" + }, + "9700": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP2", + "path": "66", + "statement": 213 + }, + "9701": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP1", + "path": "66" + }, + "9702": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP2", + "path": "66" + }, + "9703": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SHL", + "path": "66" + }, + "9704": { + "op": "PUSH1", + "value": "0x1" + }, + "9706": { + "op": "PUSH1", + "value": "0x1" + }, + "9708": { + "op": "PUSH1", + "value": "0x80" + }, + "9710": { + "op": "SHL" + }, + "9711": { + "op": "SUB" + }, + "9712": { + "op": "NOT" + }, + "9713": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "AND", + "path": "66" + }, + "9714": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8493, + 8505 + ], + "op": "SWAP1", + "path": "66" + }, + "9715": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8529, + 8530 + ], + "op": "PUSH1", + "path": "66", + "statement": 214, + "value": "0x1" + }, + "9717": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8519, + 8530 + ], + "op": "ADD", + "path": "66" + }, + "9718": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2489" + }, + "9721": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMP", + "path": "66" + }, + "9722": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 6684, + 8541 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9723": { + "branch": 345, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8616, + 8624 + ], + "op": "DUP5", + "path": "66" + }, + "9724": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8611, + 8633 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2607" + }, + "9727": { + "branch": 345, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8611, + 8633 + ], + "op": "JUMPI", + "path": "66" + }, + "9728": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "POP", + "path": "66", + "statement": 215 + }, + "9729": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "POP", + "path": "66" + }, + "9730": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "POP", + "path": "66" + }, + "9731": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "PUSH2", + "path": "66", + "value": "0x1632" + }, + "9734": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8626, + 8633 + ], + "op": "JUMP", + "path": "66" + }, + "9735": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8611, + 8633 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9736": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8733, + 8734 + ], + "op": "PUSH1", + "path": "66", + "statement": 216, + "value": "0x9" + }, + "9738": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8724, + 8730 + ], + "op": "DUP2", + "path": "66" + }, + "9739": { + "branch": 346, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8724, + 8734 + ], + "op": "LT", + "path": "66" + }, + "9740": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "PUSH2", + "path": "66", + "value": "0x2614" + }, + "9743": { + "branch": 346, + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "JUMPI", + "path": "66" + }, + "9744": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "PUSH1", + "path": "66", + "value": "0x0" + }, + "9746": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "DUP1", + "path": "66" + }, + "9747": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "REVERT", + "path": "66" + }, + "9748": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8716, + 8735 + ], + "op": "JUMPDEST", + "path": "66" + }, + "9749": { + "op": "PUSH1", + "value": "0x1" + }, + "9751": { + "op": "PUSH1", + "value": "0x1" + }, + "9753": { + "op": "PUSH1", + "value": "0xF0" + }, + "9755": { + "op": "SHL" + }, + "9756": { + "op": "SUB" + }, + "9757": { + "op": "NOT" + }, + "9758": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "PUSH1", + "path": "66", + "statement": 217, + "value": "0xF0" + }, + "9760": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "DUP8", + "path": "66" + }, + "9761": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "SWAP1", + "path": "66" + }, + "9762": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8879 + ], + "op": "SHL", + "path": "66" + }, + "9763": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8887 + ], + "op": "DUP6", + "path": "66" + }, + "9764": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8853, + 8887 + ], + "op": "OR", + "path": "66" + }, + "9765": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8845, + 8888 + ], + "op": "AND", + "path": "66" + }, + "9766": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8902, + 8904 + ], + "op": "PUSH1", + "path": "66", + "value": "0x10" + }, + "9768": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8893, + 8904 + ], + "op": "SWAP1", + "path": "66" + }, + "9769": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8893, + 8904 + ], + "op": "SWAP2", + "path": "66" + }, + "9770": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8893, + 8904 + ], + "op": "MUL", + "path": "66" + }, + "9771": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8845, + 8905 + ], + "op": "SHR", + "path": "66" + }, + "9772": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "SWAP2", + "path": "66" + }, + "9773": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "SWAP1", + "path": "66" + }, + "9774": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "SWAP2", + "path": "66" + }, + "9775": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8823, + 8906 + ], + "op": "OR", + "path": "66" + }, + "9776": { + "op": "PUSH1", + "value": "0x1" + }, + "9778": { + "op": "PUSH1", + "value": "0x1" + }, + "9780": { + "op": "PUSH1", + "value": "0x70" + }, + "9782": { + "op": "SHL" + }, + "9783": { + "op": "SUB" + }, + "9784": { + "op": "NOT" + }, + "9785": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8906 + ], + "op": "AND", + "path": "66" + }, + "9786": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8808 + ], + "op": "PUSH1", + "path": "66", + "value": "0x80" + }, + "9788": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8808 + ], + "op": "DUP7", + "path": "66" + }, + "9789": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8808 + ], + "op": "ADD", + "path": "66" + }, + "9790": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 8777, + 8906 + ], + "op": "MSTORE", + "path": "66" + }, + "9791": { + "op": "POP" + }, + "9792": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9793": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9794": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9795": { + "fn": "AccountContextHandler.setActiveCurrency", + "offset": [ + 5247, + 8913 + ], + "op": "POP", + "path": "66" + }, + "9796": { + "fn": "AccountContextHandler.setActiveCurrency", + "jump": "o", + "offset": [ + 5247, + 8913 + ], + "op": "JUMP", + "path": "66" + }, + "9797": { + "fn": "SafeInt256.mul", + "offset": [ + 398, + 588 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9798": { + "fn": "SafeInt256.mul", + "offset": [ + 478, + 483 + ], + "op": "DUP2", + "path": "94", + "statement": 218 + }, + "9799": { + "fn": "SafeInt256.mul", + "offset": [ + 478, + 483 + ], + "op": "DUP2", + "path": "94" + }, + "9800": { + "fn": "SafeInt256.mul", + "offset": [ + 478, + 483 + ], + "op": "MUL", + "path": "94" + }, + "9801": { + "op": "PUSH1", + "value": "0x0" + }, + "9803": { + "op": "NOT" + }, + "9804": { + "fn": "SafeInt256.mul", + "offset": [ + 497, + 504 + ], + "op": "DUP4", + "path": "94" + }, + "9805": { + "branch": 438, + "fn": "SafeInt256.mul", + "offset": [ + 497, + 504 + ], + "op": "EQ", + "path": "94" + }, + "9806": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "ISZERO", + "path": "94" + }, + "9807": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "PUSH2", + "path": "94", + "value": "0x2675" + }, + "9810": { + "branch": 438, + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "JUMPI", + "path": "94" + }, + "9811": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 521 + ], + "op": "DUP2", + "path": "94", + "statement": 219 + }, + "9812": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 521 + ], + "op": "ISZERO", + "path": "94" + }, + "9813": { + "branch": 439, + "fn": "SafeInt256.mul", + "offset": [ + 515, + 521 + ], + "op": "DUP1", + "path": "94" + }, + "9814": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "PUSH2", + "path": "94", + "value": "0x2667" + }, + "9817": { + "branch": 439, + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "JUMPI", + "path": "94" + }, + "9818": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "POP", + "path": "94" + }, + "9819": { + "fn": "SafeInt256.mul", + "offset": [ + 534, + 535 + ], + "op": "DUP3", + "path": "94" + }, + "9820": { + "fn": "SafeInt256.mul", + "offset": [ + 529, + 530 + ], + "op": "DUP3", + "path": "94" + }, + "9821": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 526 + ], + "op": "DUP3", + "path": "94" + }, + "9822": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "DUP2", + "path": "94" + }, + "9823": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "PUSH2", + "path": "94", + "value": "0x2664" + }, + "9826": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "JUMPI", + "path": "94" + }, + "9827": { + "dev": "Division by zero", + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "INVALID", + "path": "94" + }, + "9828": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9829": { + "fn": "SafeInt256.mul", + "offset": [ + 525, + 530 + ], + "op": "SDIV", + "path": "94" + }, + "9830": { + "branch": 440, + "fn": "SafeInt256.mul", + "offset": [ + 525, + 535 + ], + "op": "EQ", + "path": "94" + }, + "9831": { + "fn": "SafeInt256.mul", + "offset": [ + 515, + 535 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9832": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "PUSH2", + "path": "94", + "value": "0x2670" + }, + "9835": { + "branch": 440, + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "JUMPI", + "path": "94" + }, + "9836": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "9838": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "DUP1", + "path": "94" + }, + "9839": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "REVERT", + "path": "94" + }, + "9840": { + "fn": "SafeInt256.mul", + "offset": [ + 506, + 536 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9841": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "PUSH2", + "path": "94", + "value": "0x30C" + }, + "9844": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "JUMP", + "path": "94" + }, + "9845": { + "fn": "SafeInt256.mul", + "offset": [ + 493, + 581 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9846": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 566 + ], + "op": "DUP3", + "path": "94", + "statement": 220 + }, + "9847": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 566 + ], + "op": "ISZERO", + "path": "94" + }, + "9848": { + "branch": 441, + "fn": "SafeInt256.mul", + "offset": [ + 560, + 566 + ], + "op": "DUP1", + "path": "94" + }, + "9849": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "PUSH2", + "path": "94", + "value": "0x268A" + }, + "9852": { + "branch": 441, + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "JUMPI", + "path": "94" + }, + "9853": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "POP", + "path": "94" + }, + "9854": { + "fn": "SafeInt256.mul", + "offset": [ + 579, + 580 + ], + "op": "DUP2", + "path": "94" + }, + "9855": { + "fn": "SafeInt256.mul", + "offset": [ + 574, + 575 + ], + "op": "DUP4", + "path": "94" + }, + "9856": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 571 + ], + "op": "DUP3", + "path": "94" + }, + "9857": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "DUP2", + "path": "94" + }, + "9858": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "PUSH2", + "path": "94", + "value": "0x2687" + }, + "9861": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "JUMPI", + "path": "94" + }, + "9862": { + "dev": "Division by zero", + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "INVALID", + "path": "94" + }, + "9863": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9864": { + "fn": "SafeInt256.mul", + "offset": [ + 570, + 575 + ], + "op": "SDIV", + "path": "94" + }, + "9865": { + "branch": 442, + "fn": "SafeInt256.mul", + "offset": [ + 570, + 580 + ], + "op": "EQ", + "path": "94" + }, + "9866": { + "fn": "SafeInt256.mul", + "offset": [ + 560, + 580 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9867": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "PUSH2", + "path": "94", + "value": "0x30C" + }, + "9870": { + "branch": 442, + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "JUMPI", + "path": "94" + }, + "9871": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "9873": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "DUP1", + "path": "94" + }, + "9874": { + "fn": "SafeInt256.mul", + "offset": [ + 551, + 581 + ], + "op": "REVERT", + "path": "94" + }, + "9875": { + "fn": "LibStorage.getCashGroupStorage", + "offset": [ + 4677, + 4894 + ], + "op": "JUMPDEST", + "path": "62" + }, + "9876": { + "fn": "LibStorage.getCashGroupStorage", + "offset": [ + 4739, + 4780 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "9878": { + "fn": "LibStorage.getCashGroupStorage", + "offset": [ + 4796, + 4808 + ], + "op": "DUP1", + "path": "62" + }, + "9879": { + "fn": "LibStorage.getCashGroupStorage", + "offset": [ + 4811, + 4847 + ], + "op": "PUSH2", + "path": "62", + "value": "0x30C" + }, + "9882": { + "fn": "LibStorage.getCashGroupStorage", + "offset": [ + 4827, + 4846 + ], + "op": "PUSH1", + "path": "62", + "value": "0x9" + }, + "9884": { + "fn": "LibStorage.getCashGroupStorage", + "offset": [ + 4811, + 4826 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1971" + }, + "9887": { + "fn": "LibStorage.getCashGroupStorage", + "jump": "i", + "offset": [ + 4811, + 4847 + ], + "op": "JUMP", + "path": "62" + }, + "9888": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 656, + 922 + ], + "op": "JUMPDEST", + "path": "83" + }, + "9889": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 741, + 761 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "9891": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 773, + 834 + ], + "op": "DUP1", + "path": "83" + }, + "9892": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 837, + 872 + ], + "op": "PUSH2", + "path": "83", + "value": "0x26AB" + }, + "9895": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 837, + 870 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2C8A" + }, + "9898": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "jump": "i", + "offset": [ + 837, + 872 + ], + "op": "JUMP", + "path": "83" + }, + "9899": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 837, + 872 + ], + "op": "JUMPDEST", + "path": "83" + }, + "9900": { + "op": "PUSH1", + "value": "0x1" + }, + "9902": { + "op": "PUSH1", + "value": "0x1" + }, + "9904": { + "op": "PUSH1", + "value": "0xA0" + }, + "9906": { + "op": "SHL" + }, + "9907": { + "op": "SUB" + }, + "9908": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "DUP6", + "path": "83", + "statement": 221 + }, + "9909": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "AND", + "path": "83" + }, + "9910": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "9912": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "SWAP1", + "path": "83" + }, + "9913": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "DUP2", + "path": "83" + }, + "9914": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "MSTORE", + "path": "83" + }, + "9915": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "9917": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "SWAP2", + "path": "83" + }, + "9918": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "DUP3", + "path": "83" + }, + "9919": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "MSTORE", + "path": "83" + }, + "9920": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "PUSH1", + "path": "83", + "value": "0x40" + }, + "9922": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "DUP1", + "path": "83" + }, + "9923": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "DUP3", + "path": "83" + }, + "9924": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 903 + ], + "op": "KECCAK256", + "path": "83" + }, + "9925": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "DUP7", + "path": "83" + }, + "9926": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "DUP4", + "path": "83" + }, + "9927": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "MSTORE", + "path": "83" + }, + "9928": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "SWAP1", + "path": "83" + }, + "9929": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "SWAP3", + "path": "83" + }, + "9930": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "MSTORE", + "path": "83" + }, + "9931": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "KECCAK256", + "path": "83" + }, + "9932": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "SLOAD", + "path": "83" + }, + "9933": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 889, + 915 + ], + "op": "SWAP2", + "path": "83" + }, + "9934": { + "op": "POP" + }, + "9935": { + "op": "POP" + }, + "9936": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 656, + 922 + ], + "op": "SWAP3", + "path": "83" + }, + "9937": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 656, + 922 + ], + "op": "SWAP2", + "path": "83" + }, + "9938": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 656, + 922 + ], + "op": "POP", + "path": "83" + }, + "9939": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "offset": [ + 656, + 922 + ], + "op": "POP", + "path": "83" + }, + "9940": { + "fn": "BitmapAssetsHandler.getAssetsBitmap", + "jump": "o", + "offset": [ + 656, + 922 + ], + "op": "JUMP", + "path": "83" + }, + "9941": { + "fn": "Bitmap.isBitSet", + "offset": [ + 732, + 966 + ], + "op": "JUMPDEST", + "path": "92" + }, + "9942": { + "fn": "Bitmap.isBitSet", + "offset": [ + 804, + 808 + ], + "op": "PUSH1", + "path": "92", + "value": "0x0" + }, + "9944": { + "fn": "Bitmap.isBitSet", + "offset": [ + 837, + 838 + ], + "op": "PUSH1", + "path": "92", + "statement": 222, + "value": "0x1" + }, + "9946": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 833 + ], + "op": "DUP3", + "path": "92" + }, + "9947": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 838 + ], + "op": "LT", + "path": "92" + }, + "9948": { + "branch": 352, + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 838 + ], + "op": "ISZERO", + "path": "92" + }, + "9949": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 854 + ], + "op": "DUP1", + "path": "92" + }, + "9950": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 854 + ], + "op": "ISZERO", + "path": "92" + }, + "9951": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 854 + ], + "op": "PUSH2", + "path": "92", + "value": "0x26EA" + }, + "9954": { + "branch": 352, + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 854 + ], + "op": "JUMPI", + "path": "92" + }, + "9955": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 854 + ], + "op": "POP", + "path": "92" + }, + "9956": { + "fn": "Bitmap.isBitSet", + "offset": [ + 851, + 854 + ], + "op": "PUSH2", + "path": "92", + "value": "0x100" + }, + "9959": { + "fn": "Bitmap.isBitSet", + "offset": [ + 842, + 847 + ], + "op": "DUP3", + "path": "92" + }, + "9960": { + "fn": "Bitmap.isBitSet", + "offset": [ + 842, + 854 + ], + "op": "GT", + "path": "92" + }, + "9961": { + "branch": 353, + "fn": "Bitmap.isBitSet", + "offset": [ + 842, + 854 + ], + "op": "ISZERO", + "path": "92" + }, + "9962": { + "fn": "Bitmap.isBitSet", + "offset": [ + 828, + 854 + ], + "op": "JUMPDEST", + "path": "92" + }, + "9963": { + "fn": "Bitmap.isBitSet", + "offset": [ + 820, + 855 + ], + "op": "PUSH2", + "path": "92", + "value": "0x26F3" + }, + "9966": { + "branch": 353, + "fn": "Bitmap.isBitSet", + "offset": [ + 820, + 855 + ], + "op": "JUMPI", + "path": "92" + }, + "9967": { + "fn": "Bitmap.isBitSet", + "offset": [ + 820, + 855 + ], + "op": "PUSH1", + "path": "92", + "value": "0x0" + }, + "9969": { + "fn": "Bitmap.isBitSet", + "offset": [ + 820, + 855 + ], + "op": "DUP1", + "path": "92" + }, + "9970": { + "fn": "Bitmap.isBitSet", + "offset": [ + 820, + 855 + ], + "op": "REVERT", + "path": "92" + }, + "9971": { + "fn": "Bitmap.isBitSet", + "offset": [ + 820, + 855 + ], + "op": "JUMPDEST", + "path": "92" + }, + "9972": { + "op": "POP" + }, + "9973": { + "op": "PUSH1", + "value": "0x0" + }, + "9975": { + "op": "NOT" + }, + "9976": { + "fn": "Bitmap.isBitSet", + "offset": [ + 914, + 923 + ], + "op": "ADD", + "path": "92", + "statement": 223 + }, + "9977": { + "fn": "Bitmap.isBitSet", + "offset": [ + 903, + 924 + ], + "op": "SHL", + "path": "92" + }, + "9978": { + "op": "PUSH1", + "value": "0x1" + }, + "9980": { + "op": "PUSH1", + "value": "0xFF" + }, + "9982": { + "op": "SHL" + }, + "9983": { + "fn": "Bitmap.isBitSet", + "offset": [ + 902, + 941 + ], + "op": "SWAP1", + "path": "92" + }, + "9984": { + "fn": "Bitmap.isBitSet", + "offset": [ + 902, + 941 + ], + "op": "DUP2", + "path": "92" + }, + "9985": { + "fn": "Bitmap.isBitSet", + "offset": [ + 902, + 941 + ], + "op": "AND", + "path": "92" + }, + "9986": { + "fn": "Bitmap.isBitSet", + "offset": [ + 901, + 959 + ], + "op": "EQ", + "path": "92" + }, + "9987": { + "fn": "Bitmap.isBitSet", + "offset": [ + 901, + 959 + ], + "op": "SWAP1", + "path": "92" + }, + "9988": { + "fn": "Bitmap.isBitSet", + "jump": "o", + "offset": [ + 732, + 966 + ], + "op": "JUMP", + "path": "92" + }, + "9989": { + "fn": "SafeInt256.add", + "offset": [ + 1427, + 1547 + ], + "op": "JUMPDEST", + "path": "94" + }, + "9990": { + "fn": "SafeInt256.add", + "offset": [ + 1516, + 1521 + ], + "op": "DUP2", + "path": "94", + "statement": 224 + }, + "9991": { + "fn": "SafeInt256.add", + "offset": [ + 1516, + 1521 + ], + "op": "DUP2", + "path": "94" + }, + "9992": { + "fn": "SafeInt256.add", + "offset": [ + 1516, + 1521 + ], + "op": "ADD", + "path": "94" + }, + "9993": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "DUP3", + "path": "94" + }, + "9994": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "DUP2", + "path": "94" + }, + "9995": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "SLT", + "path": "94" + }, + "9996": { + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1527 + ], + "op": "ISZERO", + "path": "94" + }, + "9997": { + "fn": "SafeInt256.add", + "offset": [ + 1483, + 1491 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "9999": { + "fn": "SafeInt256.add", + "offset": [ + 1532, + 1538 + ], + "op": "DUP4", + "path": "94" + }, + "10000": { + "fn": "SafeInt256.add", + "offset": [ + 1532, + 1538 + ], + "op": "SLT", + "path": "94" + }, + "10001": { + "fn": "SafeInt256.add", + "offset": [ + 1532, + 1538 + ], + "op": "ISZERO", + "path": "94" + }, + "10002": { + "branch": 443, + "fn": "SafeInt256.add", + "offset": [ + 1511, + 1539 + ], + "op": "EQ", + "path": "94" + }, + "10003": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "PUSH2", + "path": "94", + "value": "0x30C" + }, + "10006": { + "branch": 443, + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "JUMPI", + "path": "94" + }, + "10007": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "PUSH1", + "path": "94", + "value": "0x0" + }, + "10009": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "DUP1", + "path": "94" + }, + "10010": { + "fn": "SafeInt256.add", + "offset": [ + 1503, + 1540 + ], + "op": "REVERT", + "path": "94" + }, + "10011": { + "fn": "Bitmap.setBit", + "offset": [ + 316, + 688 + ], + "op": "JUMPDEST", + "path": "92" + }, + "10012": { + "fn": "Bitmap.setBit", + "offset": [ + 428, + 435 + ], + "op": "PUSH1", + "path": "92", + "value": "0x0" + }, + "10014": { + "fn": "Bitmap.setBit", + "offset": [ + 464, + 465 + ], + "op": "PUSH1", + "path": "92", + "statement": 225, + "value": "0x1" + }, + "10016": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 460 + ], + "op": "DUP4", + "path": "92" + }, + "10017": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 465 + ], + "op": "LT", + "path": "92" + }, + "10018": { + "branch": 354, + "fn": "Bitmap.setBit", + "offset": [ + 455, + 465 + ], + "op": "ISZERO", + "path": "92" + }, + "10019": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 481 + ], + "op": "DUP1", + "path": "92" + }, + "10020": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 481 + ], + "op": "ISZERO", + "path": "92" + }, + "10021": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 481 + ], + "op": "PUSH2", + "path": "92", + "value": "0x2730" + }, + "10024": { + "branch": 354, + "fn": "Bitmap.setBit", + "offset": [ + 455, + 481 + ], + "op": "JUMPI", + "path": "92" + }, + "10025": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 481 + ], + "op": "POP", + "path": "92" + }, + "10026": { + "fn": "Bitmap.setBit", + "offset": [ + 478, + 481 + ], + "op": "PUSH2", + "path": "92", + "value": "0x100" + }, + "10029": { + "fn": "Bitmap.setBit", + "offset": [ + 469, + 474 + ], + "op": "DUP4", + "path": "92" + }, + "10030": { + "fn": "Bitmap.setBit", + "offset": [ + 469, + 481 + ], + "op": "GT", + "path": "92" + }, + "10031": { + "branch": 355, + "fn": "Bitmap.setBit", + "offset": [ + 469, + 481 + ], + "op": "ISZERO", + "path": "92" + }, + "10032": { + "fn": "Bitmap.setBit", + "offset": [ + 455, + 481 + ], + "op": "JUMPDEST", + "path": "92" + }, + "10033": { + "fn": "Bitmap.setBit", + "offset": [ + 447, + 482 + ], + "op": "PUSH2", + "path": "92", + "value": "0x2739" + }, + "10036": { + "branch": 355, + "fn": "Bitmap.setBit", + "offset": [ + 447, + 482 + ], + "op": "JUMPI", + "path": "92" + }, + "10037": { + "fn": "Bitmap.setBit", + "offset": [ + 447, + 482 + ], + "op": "PUSH1", + "path": "92", + "value": "0x0" + }, + "10039": { + "fn": "Bitmap.setBit", + "offset": [ + 447, + 482 + ], + "op": "DUP1", + "path": "92" + }, + "10040": { + "fn": "Bitmap.setBit", + "offset": [ + 447, + 482 + ], + "op": "REVERT", + "path": "92" + }, + "10041": { + "fn": "Bitmap.setBit", + "offset": [ + 447, + 482 + ], + "op": "JUMPDEST", + "path": "92" + }, + "10042": { + "branch": 356, + "fn": "Bitmap.setBit", + "offset": [ + 526, + 531 + ], + "op": "DUP2", + "path": "92" + }, + "10043": { + "fn": "Bitmap.setBit", + "offset": [ + 522, + 682 + ], + "op": "ISZERO", + "path": "92" + }, + "10044": { + "fn": "Bitmap.setBit", + "offset": [ + 522, + 682 + ], + "op": "PUSH2", + "path": "92", + "value": "0x2752" + }, + "10047": { + "branch": 356, + "fn": "Bitmap.setBit", + "offset": [ + 522, + 682 + ], + "op": "JUMPI", + "path": "92" + }, + "10048": { + "op": "POP" + }, + "10049": { + "op": "PUSH1", + "value": "0x1" + }, + "10051": { + "op": "PUSH1", + "value": "0xFF" + }, + "10053": { + "op": "SHL" + }, + "10054": { + "op": "PUSH1", + "value": "0x0" + }, + "10056": { + "op": "NOT" + }, + "10057": { + "fn": "Bitmap.setBit", + "offset": [ + 582, + 591 + ], + "op": "DUP4", + "path": "92", + "statement": 226 + }, + "10058": { + "fn": "Bitmap.setBit", + "offset": [ + 582, + 591 + ], + "op": "ADD", + "path": "92" + }, + "10059": { + "fn": "Bitmap.setBit", + "offset": [ + 564, + 592 + ], + "op": "SHR", + "path": "92" + }, + "10060": { + "fn": "Bitmap.setBit", + "offset": [ + 554, + 593 + ], + "op": "DUP4", + "path": "92" + }, + "10061": { + "fn": "Bitmap.setBit", + "offset": [ + 554, + 593 + ], + "op": "OR", + "path": "92" + }, + "10062": { + "fn": "Bitmap.setBit", + "offset": [ + 547, + 593 + ], + "op": "PUSH2", + "path": "92", + "value": "0x653" + }, + "10065": { + "fn": "Bitmap.setBit", + "offset": [ + 547, + 593 + ], + "op": "JUMP", + "path": "92" + }, + "10066": { + "fn": "Bitmap.setBit", + "offset": [ + 522, + 682 + ], + "op": "JUMPDEST", + "path": "92" + }, + "10067": { + "op": "POP" + }, + "10068": { + "op": "PUSH1", + "value": "0x1" + }, + "10070": { + "op": "PUSH1", + "value": "0xFF" + }, + "10072": { + "op": "SHL" + }, + "10073": { + "op": "PUSH1", + "value": "0x0" + }, + "10075": { + "op": "NOT" + }, + "10076": { + "fn": "Bitmap.setBit", + "offset": [ + 660, + 669 + ], + "op": "DUP4", + "path": "92", + "statement": 227 + }, + "10077": { + "fn": "Bitmap.setBit", + "offset": [ + 660, + 669 + ], + "op": "ADD", + "path": "92" + }, + "10078": { + "fn": "Bitmap.setBit", + "offset": [ + 642, + 670 + ], + "op": "SHR", + "path": "92" + }, + "10079": { + "fn": "Bitmap.setBit", + "offset": [ + 640, + 671 + ], + "op": "NOT", + "path": "92" + }, + "10080": { + "fn": "Bitmap.setBit", + "offset": [ + 631, + 671 + ], + "op": "DUP4", + "path": "92" + }, + "10081": { + "fn": "Bitmap.setBit", + "offset": [ + 631, + 671 + ], + "op": "AND", + "path": "92" + }, + "10082": { + "fn": "Bitmap.setBit", + "offset": [ + 624, + 671 + ], + "op": "PUSH2", + "path": "92", + "value": "0x653" + }, + "10085": { + "fn": "Bitmap.setBit", + "offset": [ + 624, + 671 + ], + "op": "JUMP", + "path": "92" + }, + "10086": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 928, + 1314 + ], + "op": "JUMPDEST", + "path": "83" + }, + "10087": { + "offset": [ + 2215, + 2217 + ], + "op": "PUSH1", + "path": "60", + "value": "0x14" + }, + "10089": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1069, + 1096 + ], + "op": "PUSH2", + "path": "83", + "statement": 228, + "value": "0x2771" + }, + "10092": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1069, + 1081 + ], + "op": "DUP3", + "path": "83" + }, + "10093": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1069, + 1094 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2C97" + }, + "10096": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "jump": "i", + "offset": [ + 1069, + 1096 + ], + "op": "JUMP", + "path": "83" + }, + "10097": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1069, + 1096 + ], + "op": "JUMPDEST", + "path": "83" + }, + "10098": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1069, + 1127 + ], + "op": "GT", + "path": "83" + }, + "10099": { + "branch": 369, + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1069, + 1127 + ], + "op": "ISZERO", + "path": "83" + }, + "10100": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "PUSH2", + "path": "83", + "value": "0x278F" + }, + "10103": { + "branch": 369, + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "JUMPI", + "path": "83" + }, + "10104": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "PUSH1", + "path": "83", + "value": "0x40" + }, + "10106": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "MLOAD", + "path": "83" + }, + "10107": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "10111": { + "op": "PUSH1", + "value": "0xE5" + }, + "10113": { + "op": "SHL" + }, + "10114": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "DUP2", + "path": "83" + }, + "10115": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "MSTORE", + "path": "83" + }, + "10116": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "PUSH1", + "path": "83", + "value": "0x4" + }, + "10118": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "ADD", + "path": "83" + }, + "10119": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "PUSH2", + "path": "83", + "value": "0x3D8" + }, + "10122": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "SWAP1", + "path": "83" + }, + "10123": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "PUSH2", + "path": "83", + "value": "0x373A" + }, + "10126": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "jump": "i", + "offset": [ + 1061, + 1147 + ], + "op": "JUMP", + "path": "83" + }, + "10127": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1061, + 1147 + ], + "op": "JUMPDEST", + "path": "83" + }, + "10128": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1157, + 1218 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "10130": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1221, + 1256 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2799" + }, + "10133": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1221, + 1254 + ], + "op": "PUSH2", + "path": "83", + "value": "0x2C8A" + }, + "10136": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "jump": "i", + "offset": [ + 1221, + 1256 + ], + "op": "JUMP", + "path": "83" + }, + "10137": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1221, + 1256 + ], + "op": "JUMPDEST", + "path": "83" + }, + "10138": { + "op": "PUSH1", + "value": "0x1" + }, + "10140": { + "op": "PUSH1", + "value": "0x1" + }, + "10142": { + "op": "PUSH1", + "value": "0xA0" + }, + "10144": { + "op": "SHL" + }, + "10145": { + "op": "SUB" + }, + "10146": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "SWAP1", + "path": "83", + "statement": 229 + }, + "10147": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "SWAP5", + "path": "83" + }, + "10148": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "AND", + "path": "83" + }, + "10149": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "PUSH1", + "path": "83", + "value": "0x0" + }, + "10151": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "SWAP1", + "path": "83" + }, + "10152": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "DUP2", + "path": "83" + }, + "10153": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "MSTORE", + "path": "83" + }, + "10154": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "PUSH1", + "path": "83", + "value": "0x20" + }, + "10156": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "SWAP5", + "path": "83" + }, + "10157": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "DUP6", + "path": "83" + }, + "10158": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "MSTORE", + "path": "83" + }, + "10159": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "PUSH1", + "path": "83", + "value": "0x40" + }, + "10161": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "DUP1", + "path": "83" + }, + "10162": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "DUP3", + "path": "83" + }, + "10163": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1280 + ], + "op": "KECCAK256", + "path": "83" + }, + "10164": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "SWAP5", + "path": "83" + }, + "10165": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "DUP3", + "path": "83" + }, + "10166": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "MSTORE", + "path": "83" + }, + "10167": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "SWAP4", + "path": "83" + }, + "10168": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "SWAP1", + "path": "83" + }, + "10169": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "SWAP5", + "path": "83" + }, + "10170": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "MSTORE", + "path": "83" + }, + "10171": { + "op": "POP" + }, + "10172": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "SWAP2", + "path": "83" + }, + "10173": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1292 + ], + "op": "KECCAK256", + "path": "83" + }, + "10174": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "offset": [ + 1266, + 1307 + ], + "op": "SSTORE", + "path": "83" + }, + "10175": { + "fn": "BitmapAssetsHandler.setAssetsBitmap", + "jump": "o", + "offset": [ + 928, + 1314 + ], + "op": "JUMP", + "path": "83" + }, + "10176": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1166, + 2631 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10177": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1374, + 1378 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10179": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1374, + 1378 + ], + "op": "DUP1", + "path": "84" + }, + "10180": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10181": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1414, + 1424 + ], + "op": "DUP7", + "path": "84" + }, + "10182": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1414, + 1431 + ], + "op": "MLOAD", + "path": "84" + }, + "10183": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1410, + 1411 + ], + "op": "DUP2", + "path": "84" + }, + "10184": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1410, + 1431 + ], + "op": "LT", + "path": "84" + }, + "10185": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "ISZERO", + "path": "84" + }, + "10186": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28CC" + }, + "10189": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "JUMPI", + "path": "84" + }, + "10190": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1452, + 1479 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10192": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1492 + ], + "op": "DUP8", + "path": "84" + }, + "10193": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1493, + 1494 + ], + "op": "DUP3", + "path": "84" + }, + "10194": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "DUP2", + "path": "84" + }, + "10195": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "MLOAD", + "path": "84" + }, + "10196": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "DUP2", + "path": "84" + }, + "10197": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "LT", + "path": "84" + }, + "10198": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "PUSH2", + "path": "84", + "value": "0x27DB" + }, + "10201": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "JUMPI", + "path": "84" + }, + "10202": { + "dev": "Index out of range", + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "INVALID", + "path": "84" + }, + "10203": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10204": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10206": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "MUL", + "path": "84" + }, + "10207": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10209": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "ADD", + "path": "84" + }, + "10210": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "ADD", + "path": "84" + }, + "10211": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1482, + 1495 + ], + "op": "MLOAD", + "path": "84" + }, + "10212": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1452, + 1495 + ], + "op": "SWAP1", + "path": "84" + }, + "10213": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1452, + 1495 + ], + "op": "POP", + "path": "84" + }, + "10214": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1549, + 1558 + ], + "op": "DUP5", + "path": "84" + }, + "10215": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1535 + ], + "op": "DUP2", + "path": "84" + }, + "10216": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1545 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10218": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1545 + ], + "op": "ADD", + "path": "84" + }, + "10219": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1545 + ], + "op": "MLOAD", + "path": "84" + }, + "10220": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1558 + ], + "op": "EQ", + "path": "84" + }, + "10221": { + "branch": 408, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1558 + ], + "op": "ISZERO", + "path": "84" + }, + "10222": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1608 + ], + "op": "DUP1", + "path": "84" + }, + "10223": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1608 + ], + "op": "PUSH2", + "path": "84", + "value": "0x27F9" + }, + "10226": { + "branch": 408, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1608 + ], + "op": "JUMPI", + "path": "84" + }, + "10227": { + "op": "POP" + }, + "10228": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1578, + 1594 + ], + "op": "DUP1", + "path": "84" + }, + "10229": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1578, + 1594 + ], + "op": "MLOAD", + "path": "84" + }, + "10230": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1578, + 1608 + ], + "op": "DUP8", + "path": "84" + }, + "10231": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1578, + 1608 + ], + "op": "EQ", + "path": "84" + }, + "10232": { + "branch": 409, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1578, + 1608 + ], + "op": "ISZERO", + "path": "84" + }, + "10233": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1608 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10234": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1654 + ], + "op": "DUP1", + "path": "84" + }, + "10235": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1654 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2808" + }, + "10238": { + "branch": 409, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1654 + ], + "op": "JUMPI", + "path": "84" + }, + "10239": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1654 + ], + "op": "POP", + "path": "84" + }, + "10240": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1646, + 1654 + ], + "op": "DUP6", + "path": "84" + }, + "10241": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1628, + 1633 + ], + "op": "DUP2", + "path": "84" + }, + "10242": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1628, + 1642 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10244": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1628, + 1642 + ], + "op": "ADD", + "path": "84" + }, + "10245": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1628, + 1642 + ], + "op": "MLOAD", + "path": "84" + }, + "10246": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1628, + 1654 + ], + "op": "EQ", + "path": "84" + }, + "10247": { + "branch": 410, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1628, + 1654 + ], + "op": "ISZERO", + "path": "84" + }, + "10248": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1530, + 1654 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10249": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1509, + 1677 + ], + "op": "ISZERO", + "path": "84" + }, + "10250": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1509, + 1677 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2813" + }, + "10253": { + "branch": 410, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1509, + 1677 + ], + "op": "JUMPI", + "path": "84" + }, + "10254": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1669, + 1677 + ], + "op": "POP", + "path": "84", + "statement": 230 + }, + "10255": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1669, + 1677 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28C4" + }, + "10258": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1669, + 1677 + ], + "op": "JUMP", + "path": "84" + }, + "10259": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1509, + 1677 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10260": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1875, + 1899 + ], + "op": "PUSH1", + "path": "84", + "statement": 231, + "value": "0x2" + }, + "10262": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1858 + ], + "op": "DUP2", + "path": "84" + }, + "10263": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1871 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10265": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1871 + ], + "op": "ADD", + "path": "84" + }, + "10266": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1871 + ], + "op": "MLOAD", + "path": "84" + }, + "10267": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10269": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "DUP2", + "path": "84" + }, + "10270": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "GT", + "path": "84" + }, + "10271": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "ISZERO", + "path": "84" + }, + "10272": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2825" + }, + "10275": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "JUMPI", + "path": "84" + }, + "10276": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "INVALID", + "path": "84" + }, + "10277": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10278": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "EQ", + "path": "84" + }, + "10279": { + "branch": 411, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1899 + ], + "op": "ISZERO", + "path": "84" + }, + "10280": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1973 + ], + "op": "DUP1", + "path": "84" + }, + "10281": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1973 + ], + "op": "ISZERO", + "path": "84" + }, + "10282": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1973 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2843" + }, + "10285": { + "branch": 411, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1973 + ], + "op": "JUMPI", + "path": "84" + }, + "10286": { + "op": "POP" + }, + "10287": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1941, + 1973 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10289": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1924 + ], + "op": "DUP2", + "path": "84" + }, + "10290": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1937 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10292": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1937 + ], + "op": "ADD", + "path": "84" + }, + "10293": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1937 + ], + "op": "MLOAD", + "path": "84" + }, + "10294": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10296": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "DUP2", + "path": "84" + }, + "10297": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "GT", + "path": "84" + }, + "10298": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "ISZERO", + "path": "84" + }, + "10299": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2840" + }, + "10302": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "JUMPI", + "path": "84" + }, + "10303": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "INVALID", + "path": "84" + }, + "10304": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10305": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "EQ", + "path": "84" + }, + "10306": { + "branch": 412, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1919, + 1973 + ], + "op": "ISZERO", + "path": "84" + }, + "10307": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1853, + 1973 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10308": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1828, + 1987 + ], + "op": "PUSH2", + "path": "84", + "value": "0x284C" + }, + "10311": { + "branch": 412, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1828, + 1987 + ], + "op": "JUMPI", + "path": "84" + }, + "10312": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1828, + 1987 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10314": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1828, + 1987 + ], + "op": "DUP1", + "path": "84" + }, + "10315": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1828, + 1987 + ], + "op": "REVERT", + "path": "84" + }, + "10316": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1828, + 1987 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10317": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2079 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "10319": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2079 + ], + "op": "DUP2", + "path": "84" + }, + "10320": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2079 + ], + "op": "ADD", + "path": "84" + }, + "10321": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2079 + ], + "op": "MLOAD", + "path": "84" + }, + "10322": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2044, + 2062 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10324": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2044, + 2062 + ], + "op": "SWAP1", + "path": "84" + }, + "10325": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2093 + ], + "op": "PUSH2", + "path": "84", + "value": "0x285E" + }, + "10328": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2093 + ], + "op": "SWAP1", + "path": "84" + }, + "10329": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2084, + 2092 + ], + "op": "DUP7", + "path": "84" + }, + "10330": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2083 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2705" + }, + "10333": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "jump": "i", + "offset": [ + 2065, + 2093 + ], + "op": "JUMP", + "path": "84" + }, + "10334": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2065, + 2093 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10335": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2044, + 2093 + ], + "op": "SWAP1", + "path": "84" + }, + "10336": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2044, + 2093 + ], + "op": "POP", + "path": "84" + }, + "10337": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2173, + 2213 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2869" + }, + "10340": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2203, + 2212 + ], + "op": "DUP7", + "path": "84" + }, + "10341": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2173, + 2202 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28D9" + }, + "10344": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "jump": "i", + "offset": [ + 2173, + 2213 + ], + "op": "JUMP", + "path": "84" + }, + "10345": { + "branch": 413, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2173, + 2213 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10346": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2169, + 2332 + ], + "op": "ISZERO", + "path": "84" + }, + "10347": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2169, + 2332 + ], + "op": "PUSH2", + "path": "84", + "value": "0x287C" + }, + "10350": { + "branch": 413, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2169, + 2332 + ], + "op": "JUMPI", + "path": "84" + }, + "10351": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2256, + 2257 + ], + "op": "PUSH1", + "path": "84", + "statement": 232, + "value": "0x0" + }, + "10353": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2241, + 2252 + ], + "op": "DUP2", + "path": "84" + }, + "10354": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2241, + 2257 + ], + "op": "SLT", + "path": "84" + }, + "10355": { + "branch": 414, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2241, + 2257 + ], + "op": "ISZERO", + "path": "84" + }, + "10356": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2233, + 2258 + ], + "op": "PUSH2", + "path": "84", + "value": "0x287C" + }, + "10359": { + "branch": 414, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2233, + 2258 + ], + "op": "JUMPI", + "path": "84" + }, + "10360": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2233, + 2258 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10362": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2233, + 2258 + ], + "op": "DUP1", + "path": "84" + }, + "10363": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2233, + 2258 + ], + "op": "REVERT", + "path": "84" + }, + "10364": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2233, + 2258 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10365": { + "op": "PUSH11", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "10377": { + "op": "NOT" + }, + "10378": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2384 + ], + "op": "DUP2", + "path": "84", + "statement": 233 + }, + "10379": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2384 + ], + "op": "SLT", + "path": "84" + }, + "10380": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2384 + ], + "op": "DUP1", + "path": "84" + }, + "10381": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2384 + ], + "op": "ISZERO", + "path": "84" + }, + "10382": { + "branch": 415, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2384 + ], + "op": "SWAP1", + "path": "84" + }, + "10383": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2418 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28A3" + }, + "10386": { + "branch": 415, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2418 + ], + "op": "JUMPI", + "path": "84" + }, + "10387": { + "op": "POP" + }, + "10388": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2403, + 2418 + ], + "op": "PUSH11", + "path": "84", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "10400": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2388, + 2418 + ], + "op": "DUP2", + "path": "84" + }, + "10401": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2388, + 2418 + ], + "op": "SGT", + "path": "84" + }, + "10402": { + "branch": 416, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2388, + 2418 + ], + "op": "ISZERO", + "path": "84" + }, + "10403": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2354, + 2418 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10404": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2346, + 2419 + ], + "op": "PUSH2", + "path": "84", + "value": "0x28AC" + }, + "10407": { + "branch": 416, + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2346, + 2419 + ], + "op": "JUMPI", + "path": "84" + }, + "10408": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2346, + 2419 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10410": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2346, + 2419 + ], + "op": "DUP1", + "path": "84" + }, + "10411": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2346, + 2419 + ], + "op": "REVERT", + "path": "84" + }, + "10412": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2346, + 2419 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10413": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2478, + 2492 + ], + "op": "PUSH1", + "path": "84", + "statement": 234, + "value": "0x60" + }, + "10415": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2478, + 2492 + ], + "op": "DUP3", + "path": "84" + }, + "10416": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2478, + 2492 + ], + "op": "ADD", + "path": "84" + }, + "10417": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2478, + 2506 + ], + "op": "MSTORE", + "path": "84" + }, + "10418": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2541, + 2565 + ], + "op": "PUSH1", + "path": "84", + "statement": 235, + "value": "0x1" + }, + "10420": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2538 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10422": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2538 + ], + "op": "SWAP1", + "path": "84" + }, + "10423": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2538 + ], + "op": "SWAP2", + "path": "84" + }, + "10424": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2538 + ], + "op": "ADD", + "path": "84" + }, + "10425": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2565 + ], + "op": "DUP2", + "path": "84" + }, + "10426": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2565 + ], + "op": "SWAP1", + "path": "84" + }, + "10427": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2520, + 2565 + ], + "op": "MSTORE", + "path": "84" + }, + "10428": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2541, + 2565 + ], + "op": "SWAP2", + "path": "84" + }, + "10429": { + "op": "POP" + }, + "10430": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2580, + 2591 + ], + "op": "PUSH2", + "path": "84", + "statement": 236, + "value": "0x207E" + }, + "10433": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2580, + 2591 + ], + "op": "SWAP1", + "path": "84" + }, + "10434": { + "op": "POP" + }, + "10435": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2580, + 2591 + ], + "op": "JUMP", + "path": "84" + }, + "10436": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10437": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1433, + 1436 + ], + "op": "PUSH1", + "path": "84", + "statement": 237, + "value": "0x1" + }, + "10439": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1433, + 1436 + ], + "op": "ADD", + "path": "84" + }, + "10440": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "PUSH2", + "path": "84", + "value": "0x27C4" + }, + "10443": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "JUMP", + "path": "84" + }, + "10444": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1390, + 2602 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10445": { + "op": "POP" + }, + "10446": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2619, + 2624 + ], + "op": "PUSH1", + "path": "84", + "statement": 238, + "value": "0x0" + }, + "10448": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 2619, + 2624 + ], + "op": "SWAP7", + "path": "84" + }, + "10449": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "offset": [ + 1166, + 2631 + ], + "op": "SWAP6", + "path": "84" + }, + "10450": { + "op": "POP" + }, + "10451": { + "op": "POP" + }, + "10452": { + "op": "POP" + }, + "10453": { + "op": "POP" + }, + "10454": { + "op": "POP" + }, + "10455": { + "op": "POP" + }, + "10456": { + "fn": "PortfolioHandler._mergeAssetIntoArray", + "jump": "o", + "offset": [ + 1166, + 2631 + ], + "op": "JUMP", + "path": "84" + }, + "10457": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 615, + 837 + ], + "op": "JUMPDEST", + "path": "88" + }, + "10458": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 683, + 687 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "10460": { + "offset": [ + 4847, + 4848 + ], + "op": "PUSH1", + "path": "60", + "value": "0x2" + }, + "10462": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 766 + ], + "op": "DUP3", + "path": "88", + "statement": 239 + }, + "10463": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 766 + ], + "op": "LT", + "path": "88" + }, + "10464": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 766 + ], + "op": "DUP1", + "path": "88" + }, + "10465": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 766 + ], + "op": "ISZERO", + "path": "88" + }, + "10466": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 766 + ], + "op": "SWAP1", + "path": "88" + }, + "10467": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 830 + ], + "op": "PUSH2", + "path": "88", + "value": "0x30C" + }, + "10470": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 718, + 830 + ], + "op": "JUMPI", + "path": "88" + }, + "10471": { + "op": "POP" + }, + "10472": { + "op": "POP" + }, + "10473": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "10475": { + "op": "LT" + }, + "10476": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 782, + 830 + ], + "op": "ISZERO", + "path": "88" + }, + "10477": { + "fn": "AssetHandler.isLiquidityToken", + "offset": [ + 782, + 830 + ], + "op": "SWAP1", + "path": "88" + }, + "10478": { + "fn": "AssetHandler.isLiquidityToken", + "jump": "o", + "offset": [ + 615, + 837 + ], + "op": "JUMP", + "path": "88" + }, + "10479": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5183, + 5831 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10480": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5294, + 5317 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "10482": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5532, + 5549 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10484": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5561 + ], + "op": "DUP3", + "path": "84" + }, + "10485": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5568 + ], + "op": "MLOAD", + "path": "84" + }, + "10486": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5572, + 5573 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10488": { + "branch": 417, + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5573 + ], + "op": "EQ", + "path": "84" + }, + "10489": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5600 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2906" + }, + "10492": { + "branch": 417, + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5600 + ], + "op": "JUMPI", + "path": "84" + }, + "10493": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5580, + 5589 + ], + "op": "DUP3", + "path": "84" + }, + "10494": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5580, + 5596 + ], + "op": "MLOAD", + "path": "84" + }, + "10495": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5599, + 5600 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "10497": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5580, + 5600 + ], + "op": "MUL", + "path": "84" + }, + "10498": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5600 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2909" + }, + "10501": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5600 + ], + "op": "JUMP", + "path": "84" + }, + "10502": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5600 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10503": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5576, + 5577 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10505": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5552, + 5600 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10506": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5532, + 5600 + ], + "op": "SWAP1", + "path": "84" + }, + "10507": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5532, + 5600 + ], + "op": "POP", + "path": "84" + }, + "10508": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5610, + 5647 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10510": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5671, + 5680 + ], + "op": "DUP2", + "path": "84" + }, + "10511": { + "op": "PUSH1", + "value": "0x1" + }, + "10513": { + "op": "PUSH1", + "value": "0x1" + }, + "10515": { + "op": "PUSH1", + "value": "0x40" + }, + "10517": { + "op": "SHL" + }, + "10518": { + "op": "SUB" + }, + "10519": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP2", + "path": "84" + }, + "10520": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "GT", + "path": "84" + }, + "10521": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP1", + "path": "84" + }, + "10522": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "ISZERO", + "path": "84" + }, + "10523": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2923" + }, + "10526": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPI", + "path": "84" + }, + "10527": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10529": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP1", + "path": "84" + }, + "10530": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "REVERT", + "path": "84" + }, + "10531": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10532": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "POP", + "path": "84" + }, + "10533": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10535": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "MLOAD", + "path": "84" + }, + "10536": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "SWAP1", + "path": "84" + }, + "10537": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP1", + "path": "84" + }, + "10538": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP3", + "path": "84" + }, + "10539": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "MSTORE", + "path": "84" + }, + "10540": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP1", + "path": "84" + }, + "10541": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10543": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "MUL", + "path": "84" + }, + "10544": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10546": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "ADD", + "path": "84" + }, + "10547": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP3", + "path": "84" + }, + "10548": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "ADD", + "path": "84" + }, + "10549": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "10551": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "MSTORE", + "path": "84" + }, + "10552": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP1", + "path": "84" + }, + "10553": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "ISZERO", + "path": "84" + }, + "10554": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH2", + "path": "84", + "value": "0x295D" + }, + "10557": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPI", + "path": "84" + }, + "10558": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP2", + "path": "84" + }, + "10559": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10561": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "ADD", + "path": "84" + }, + "10562": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10563": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH2", + "path": "84", + "value": "0x294A" + }, + "10566": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2E5F" + }, + "10569": { + "fn": "PortfolioHandler._extendNewAssetArray", + "jump": "i", + "offset": [ + 5650, + 5681 + ], + "op": "JUMP", + "path": "84" + }, + "10570": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10571": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP2", + "path": "84" + }, + "10572": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "MSTORE", + "path": "84" + }, + "10573": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10575": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "ADD", + "path": "84" + }, + "10576": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "SWAP1", + "path": "84" + }, + "10577": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH1", + "path": "84", + "value": "0x1" + }, + "10579": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "SWAP1", + "path": "84" + }, + "10580": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "SUB", + "path": "84" + }, + "10581": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "SWAP1", + "path": "84" + }, + "10582": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "DUP2", + "path": "84" + }, + "10583": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2942" + }, + "10586": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPI", + "path": "84" + }, + "10587": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "SWAP1", + "path": "84" + }, + "10588": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "POP", + "path": "84" + }, + "10589": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10590": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5650, + 5681 + ], + "op": "POP", + "path": "84" + }, + "10591": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5610, + 5681 + ], + "op": "SWAP1", + "path": "84" + }, + "10592": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5610, + 5681 + ], + "op": "POP", + "path": "84" + }, + "10593": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5696, + 5705 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10595": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10596": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5715, + 5724 + ], + "op": "DUP5", + "path": "84" + }, + "10597": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5715, + 5731 + ], + "op": "MLOAD", + "path": "84" + }, + "10598": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5711, + 5712 + ], + "op": "DUP2", + "path": "84" + }, + "10599": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5711, + 5731 + ], + "op": "LT", + "path": "84" + }, + "10600": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "ISZERO", + "path": "84" + }, + "10601": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "PUSH2", + "path": "84", + "value": "0x299F" + }, + "10604": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "JUMPI", + "path": "84" + }, + "10605": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5780 + ], + "op": "DUP5", + "path": "84", + "statement": 240 + }, + "10606": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5781, + 5782 + ], + "op": "DUP2", + "path": "84" + }, + "10607": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "DUP2", + "path": "84" + }, + "10608": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "MLOAD", + "path": "84" + }, + "10609": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "DUP2", + "path": "84" + }, + "10610": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "LT", + "path": "84" + }, + "10611": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2978" + }, + "10614": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "JUMPI", + "path": "84" + }, + "10615": { + "dev": "Index out of range", + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "INVALID", + "path": "84" + }, + "10616": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10617": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10619": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "MUL", + "path": "84" + }, + "10620": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10622": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "ADD", + "path": "84" + }, + "10623": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "ADD", + "path": "84" + }, + "10624": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5771, + 5783 + ], + "op": "MLOAD", + "path": "84" + }, + "10625": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5765 + ], + "op": "DUP3", + "path": "84" + }, + "10626": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5766, + 5767 + ], + "op": "DUP3", + "path": "84" + }, + "10627": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "DUP2", + "path": "84" + }, + "10628": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "MLOAD", + "path": "84" + }, + "10629": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "DUP2", + "path": "84" + }, + "10630": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "LT", + "path": "84" + }, + "10631": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "PUSH2", + "path": "84", + "value": "0x298C" + }, + "10634": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "JUMPI", + "path": "84" + }, + "10635": { + "dev": "Index out of range", + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "INVALID", + "path": "84" + }, + "10636": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10637": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10639": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "SWAP1", + "path": "84" + }, + "10640": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "DUP2", + "path": "84" + }, + "10641": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "MUL", + "path": "84" + }, + "10642": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "SWAP2", + "path": "84" + }, + "10643": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "SWAP1", + "path": "84" + }, + "10644": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "SWAP2", + "path": "84" + }, + "10645": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "ADD", + "path": "84" + }, + "10646": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5768 + ], + "op": "ADD", + "path": "84" + }, + "10647": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5752, + 5783 + ], + "op": "MSTORE", + "path": "84" + }, + "10648": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5733, + 5736 + ], + "op": "PUSH1", + "path": "84", + "statement": 241, + "value": "0x1" + }, + "10650": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5733, + 5736 + ], + "op": "ADD", + "path": "84" + }, + "10651": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2963" + }, + "10654": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "JUMP", + "path": "84" + }, + "10655": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5691, + 5794 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10656": { + "op": "POP" + }, + "10657": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5811, + 5824 + ], + "op": "SWAP4", + "path": "84", + "statement": 242 + }, + "10658": { + "fn": "PortfolioHandler._extendNewAssetArray", + "offset": [ + 5183, + 5831 + ], + "op": "SWAP3", + "path": "84" + }, + "10659": { + "op": "POP" + }, + "10660": { + "op": "POP" + }, + "10661": { + "op": "POP" + }, + "10662": { + "fn": "PortfolioHandler._extendNewAssetArray", + "jump": "o", + "offset": [ + 5183, + 5831 + ], + "op": "JUMP", + "path": "84" + }, + "10663": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12689, + 14727 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10664": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12803, + 12830 + ], + "op": "DUP2", + "path": "84", + "statement": 243 + }, + "10665": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12803, + 12830 + ], + "op": "MLOAD", + "path": "84" + }, + "10666": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12803, + 12837 + ], + "op": "MLOAD", + "path": "84" + }, + "10667": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12795, + 12837 + ], + "op": "DUP2", + "path": "84" + }, + "10668": { + "branch": 418, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12795, + 12837 + ], + "op": "LT", + "path": "84" + }, + "10669": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29B5" + }, + "10672": { + "branch": 418, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "JUMPI", + "path": "84" + }, + "10673": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10675": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "DUP1", + "path": "84" + }, + "10676": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "REVERT", + "path": "84" + }, + "10677": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12787, + 12838 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10678": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12920, + 12921 + ], + "op": "PUSH1", + "path": "84", + "statement": 244, + "value": "0x0" + }, + "10680": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12899 + ], + "op": "DUP3", + "path": "84" + }, + "10681": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12917 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "10683": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12917 + ], + "op": "ADD", + "path": "84" + }, + "10684": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12917 + ], + "op": "MLOAD", + "path": "84" + }, + "10685": { + "branch": 419, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12885, + 12921 + ], + "op": "GT", + "path": "84" + }, + "10686": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29C6" + }, + "10689": { + "branch": 419, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "JUMPI", + "path": "84" + }, + "10690": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10692": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "DUP1", + "path": "84" + }, + "10693": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "REVERT", + "path": "84" + }, + "10694": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12877, + 12922 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10695": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12969, + 13004 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10697": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13021 + ], + "op": "DUP3", + "path": "84" + }, + "10698": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13034 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10700": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13034 + ], + "op": "ADD", + "path": "84" + }, + "10701": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13034 + ], + "op": "MLOAD", + "path": "84" + }, + "10702": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13035, + 13040 + ], + "op": "DUP3", + "path": "84" + }, + "10703": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "DUP2", + "path": "84" + }, + "10704": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "MLOAD", + "path": "84" + }, + "10705": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "DUP2", + "path": "84" + }, + "10706": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "LT", + "path": "84" + }, + "10707": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29D8" + }, + "10710": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "JUMPI", + "path": "84" + }, + "10711": { + "dev": "Index out of range", + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "INVALID", + "path": "84" + }, + "10712": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10713": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10715": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "MUL", + "path": "84" + }, + "10716": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10718": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "ADD", + "path": "84" + }, + "10719": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "ADD", + "path": "84" + }, + "10720": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13007, + 13041 + ], + "op": "MLOAD", + "path": "84" + }, + "10721": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12969, + 13041 + ], + "op": "SWAP1", + "path": "84" + }, + "10722": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 12969, + 13041 + ], + "op": "POP", + "path": "84" + }, + "10723": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13102, + 13126 + ], + "op": "PUSH1", + "path": "84", + "statement": 245, + "value": "0x2" + }, + "10725": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10727": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "DUP2", + "path": "84" + }, + "10728": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "GT", + "path": "84" + }, + "10729": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "ISZERO", + "path": "84" + }, + "10730": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29EF" + }, + "10733": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPI", + "path": "84" + }, + "10734": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "INVALID", + "path": "84" + }, + "10735": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10736": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13085 + ], + "op": "DUP2", + "path": "84" + }, + "10737": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13098 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10739": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13098 + ], + "op": "ADD", + "path": "84" + }, + "10740": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13098 + ], + "op": "MLOAD", + "path": "84" + }, + "10741": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10743": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "DUP2", + "path": "84" + }, + "10744": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "GT", + "path": "84" + }, + "10745": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "ISZERO", + "path": "84" + }, + "10746": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "PUSH2", + "path": "84", + "value": "0x29FF" + }, + "10749": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPI", + "path": "84" + }, + "10750": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "INVALID", + "path": "84" + }, + "10751": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10752": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "EQ", + "path": "84" + }, + "10753": { + "branch": 420, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13126 + ], + "op": "ISZERO", + "path": "84" + }, + "10754": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "DUP1", + "path": "84" + }, + "10755": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "ISZERO", + "path": "84" + }, + "10756": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A1D" + }, + "10759": { + "branch": 420, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "JUMPI", + "path": "84" + }, + "10760": { + "op": "POP" + }, + "10761": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13172, + 13204 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10763": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13155 + ], + "op": "DUP2", + "path": "84" + }, + "10764": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13168 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10766": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13168 + ], + "op": "ADD", + "path": "84" + }, + "10767": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13168 + ], + "op": "MLOAD", + "path": "84" + }, + "10768": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10770": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "DUP2", + "path": "84" + }, + "10771": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "GT", + "path": "84" + }, + "10772": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "ISZERO", + "path": "84" + }, + "10773": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A1A" + }, + "10776": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "JUMPI", + "path": "84" + }, + "10777": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "INVALID", + "path": "84" + }, + "10778": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10779": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "EQ", + "path": "84" + }, + "10780": { + "branch": 421, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13142, + 13204 + ], + "op": "ISZERO", + "path": "84" + }, + "10781": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13072, + 13204 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10782": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A26" + }, + "10785": { + "branch": 421, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "JUMPI", + "path": "84" + }, + "10786": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10788": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "DUP1", + "path": "84" + }, + "10789": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "REVERT", + "path": "84" + }, + "10790": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13051, + 13214 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10791": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13285 + ], + "op": "PUSH1", + "path": "84", + "statement": 246, + "value": "0x60" + }, + "10793": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13285 + ], + "op": "DUP4", + "path": "84" + }, + "10794": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13285 + ], + "op": "ADD", + "path": "84" + }, + "10795": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "DUP1", + "path": "84" + }, + "10796": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "MLOAD", + "path": "84" + }, + "10797": { + "op": "PUSH1", + "value": "0x0" + }, + "10799": { + "op": "NOT" + }, + "10800": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "ADD", + "path": "84" + }, + "10801": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "SWAP1", + "path": "84" + }, + "10802": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13253, + 13290 + ], + "op": "MSTORE", + "path": "84" + }, + "10803": { + "op": "PUSH1", + "value": "0x0" + }, + "10805": { + "op": "DUP1" + }, + "10806": { + "op": "DUP1" + }, + "10807": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10808": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13551, + 13578 + ], + "op": "DUP6", + "path": "84" + }, + "10809": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13551, + 13578 + ], + "op": "MLOAD", + "path": "84" + }, + "10810": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13551, + 13585 + ], + "op": "MLOAD", + "path": "84" + }, + "10811": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13547, + 13585 + ], + "op": "DUP2", + "path": "84" + }, + "10812": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13547, + 13585 + ], + "op": "LT", + "path": "84" + }, + "10813": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "ISZERO", + "path": "84" + }, + "10814": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A99" + }, + "10817": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMPI", + "path": "84" + }, + "10818": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13606, + 13629 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10820": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13646 + ], + "op": "DUP7", + "path": "84" + }, + "10821": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13659 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10823": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13659 + ], + "op": "ADD", + "path": "84" + }, + "10824": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13659 + ], + "op": "MLOAD", + "path": "84" + }, + "10825": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13660, + 13661 + ], + "op": "DUP3", + "path": "84" + }, + "10826": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "DUP2", + "path": "84" + }, + "10827": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "MLOAD", + "path": "84" + }, + "10828": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "DUP2", + "path": "84" + }, + "10829": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "LT", + "path": "84" + }, + "10830": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A53" + }, + "10833": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "JUMPI", + "path": "84" + }, + "10834": { + "dev": "Index out of range", + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "INVALID", + "path": "84" + }, + "10835": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10836": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10838": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "MUL", + "path": "84" + }, + "10839": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10841": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "ADD", + "path": "84" + }, + "10842": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "ADD", + "path": "84" + }, + "10843": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13632, + 13662 + ], + "op": "MLOAD", + "path": "84" + }, + "10844": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13606, + 13662 + ], + "op": "SWAP1", + "path": "84" + }, + "10845": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13606, + 13662 + ], + "op": "POP", + "path": "84" + }, + "10846": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13696, + 13709 + ], + "op": "DUP3", + "path": "84" + }, + "10847": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13681 + ], + "op": "DUP2", + "path": "84" + }, + "10848": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13693 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "10850": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13693 + ], + "op": "ADD", + "path": "84" + }, + "10851": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13693 + ], + "op": "MLOAD", + "path": "84" + }, + "10852": { + "branch": 422, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13709 + ], + "op": "GT", + "path": "84" + }, + "10853": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "DUP1", + "path": "84" + }, + "10854": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "ISZERO", + "path": "84" + }, + "10855": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A80" + }, + "10858": { + "branch": 422, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "JUMPI", + "path": "84" + }, + "10859": { + "op": "POP" + }, + "10860": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13731, + 13755 + ], + "op": "PUSH1", + "path": "84", + "value": "0x2" + }, + "10862": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13714 + ], + "op": "DUP2", + "path": "84" + }, + "10863": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13727 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10865": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13727 + ], + "op": "ADD", + "path": "84" + }, + "10866": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13727 + ], + "op": "MLOAD", + "path": "84" + }, + "10867": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "PUSH1", + "path": "84", + "value": "0x3" + }, + "10869": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "DUP2", + "path": "84" + }, + "10870": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "GT", + "path": "84" + }, + "10871": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "ISZERO", + "path": "84" + }, + "10872": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A7D" + }, + "10875": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "JUMPI", + "path": "84" + }, + "10876": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "INVALID", + "path": "84" + }, + "10877": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10878": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "EQ", + "path": "84" + }, + "10879": { + "branch": 423, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13713, + 13755 + ], + "op": "ISZERO", + "path": "84" + }, + "10880": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13680, + 13755 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10881": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "ISZERO", + "path": "84" + }, + "10882": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A90" + }, + "10885": { + "branch": 423, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "JUMPI", + "path": "84" + }, + "10886": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13792 + ], + "op": "DUP1", + "path": "84", + "statement": 247 + }, + "10887": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13804 + ], + "op": "PUSH1", + "path": "84", + "value": "0x80" + }, + "10889": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13804 + ], + "op": "ADD", + "path": "84" + }, + "10890": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13791, + 13804 + ], + "op": "MLOAD", + "path": "84" + }, + "10891": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13775, + 13804 + ], + "op": "SWAP3", + "path": "84" + }, + "10892": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13775, + 13804 + ], + "op": "POP", + "path": "84" + }, + "10893": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13843, + 13844 + ], + "op": "DUP2", + "path": "84", + "statement": 248 + }, + "10894": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13822, + 13844 + ], + "op": "SWAP4", + "path": "84" + }, + "10895": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13822, + 13844 + ], + "op": "POP", + "path": "84" + }, + "10896": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13676, + 13859 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10897": { + "op": "POP" + }, + "10898": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13587, + 13590 + ], + "op": "PUSH1", + "path": "84", + "statement": 249, + "value": "0x1" + }, + "10900": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13587, + 13590 + ], + "op": "ADD", + "path": "84" + }, + "10901": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2A37" + }, + "10904": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMP", + "path": "84" + }, + "10905": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10906": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13531, + 13869 + ], + "op": "POP", + "path": "84" + }, + "10907": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13892, + 13910 + ], + "op": "DUP2", + "path": "84" + }, + "10908": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13883, + 13888 + ], + "op": "DUP5", + "path": "84" + }, + "10909": { + "branch": 424, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13883, + 13910 + ], + "op": "EQ", + "path": "84" + }, + "10910": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "ISZERO", + "path": "84" + }, + "10911": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AB2" + }, + "10914": { + "branch": 424, + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "JUMPI", + "path": "84" + }, + "10915": { + "op": "POP" + }, + "10916": { + "op": "POP" + }, + "10917": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14060, + 14084 + ], + "op": "PUSH1", + "path": "84", + "statement": 250, + "value": "0x2" + }, + "10919": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10921": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "SWAP2", + "path": "84" + }, + "10922": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "SWAP1", + "path": "84" + }, + "10923": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "SWAP2", + "path": "84" + }, + "10924": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14057 + ], + "op": "ADD", + "path": "84" + }, + "10925": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14031, + 14084 + ], + "op": "MSTORE", + "path": "84" + }, + "10926": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14098, + 14105 + ], + "op": "PUSH2", + "path": "84", + "statement": 251, + "value": "0xC7A" + }, + "10929": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14098, + 14105 + ], + "op": "JUMP", + "path": "84" + }, + "10930": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 13879, + 14115 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10931": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14328, + 14361 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10933": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14378 + ], + "op": "DUP6", + "path": "84" + }, + "10934": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14391 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "10936": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14391 + ], + "op": "ADD", + "path": "84" + }, + "10937": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14391 + ], + "op": "MLOAD", + "path": "84" + }, + "10938": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14392, + 14410 + ], + "op": "DUP4", + "path": "84" + }, + "10939": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "DUP2", + "path": "84" + }, + "10940": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "MLOAD", + "path": "84" + }, + "10941": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "DUP2", + "path": "84" + }, + "10942": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "LT", + "path": "84" + }, + "10943": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2AC4" + }, + "10946": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "JUMPI", + "path": "84" + }, + "10947": { + "dev": "Index out of range", + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "INVALID", + "path": "84" + }, + "10948": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10949": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "10951": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP1", + "path": "84" + }, + "10952": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "DUP2", + "path": "84" + }, + "10953": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "MUL", + "path": "84" + }, + "10954": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP2", + "path": "84" + }, + "10955": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP1", + "path": "84" + }, + "10956": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "SWAP2", + "path": "84" + }, + "10957": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "ADD", + "path": "84" + }, + "10958": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "ADD", + "path": "84" + }, + "10959": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14364, + 14411 + ], + "op": "MLOAD", + "path": "84" + }, + "10960": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "PUSH1", + "path": "84", + "statement": 252, + "value": "0x80" + }, + "10962": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "DUP6", + "path": "84" + }, + "10963": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "DUP2", + "path": "84" + }, + "10964": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "ADD", + "path": "84" + }, + "10965": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "DUP1", + "path": "84" + }, + "10966": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14524, + 14549 + ], + "op": "MLOAD", + "path": "84" + }, + "10967": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "SWAP2", + "path": "84" + }, + "10968": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "DUP4", + "path": "84" + }, + "10969": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "ADD", + "path": "84" + }, + "10970": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "DUP1", + "path": "84" + }, + "10971": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14563, + 14586 + ], + "op": "MLOAD", + "path": "84" + }, + "10972": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "SWAP1", + "path": "84" + }, + "10973": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "SWAP2", + "path": "84" + }, + "10974": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "MSTORE", + "path": "84" + }, + "10975": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14421, + 14596 + ], + "op": "MSTORE", + "path": "84" + }, + "10976": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14633, + 14657 + ], + "op": "PUSH1", + "path": "84", + "statement": 253, + "value": "0x1" + }, + "10978": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA0" + }, + "10980": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "SWAP2", + "path": "84" + }, + "10981": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "DUP3", + "path": "84" + }, + "10982": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14630 + ], + "op": "ADD", + "path": "84" + }, + "10983": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14606, + 14657 + ], + "op": "MSTORE", + "path": "84" + }, + "10984": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14696, + 14720 + ], + "op": "PUSH1", + "path": "84", + "statement": 254, + "value": "0x2" + }, + "10986": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14693 + ], + "op": "SWAP5", + "path": "84" + }, + "10987": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14693 + ], + "op": "ADD", + "path": "84" + }, + "10988": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "SWAP4", + "path": "84" + }, + "10989": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "SWAP1", + "path": "84" + }, + "10990": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "SWAP4", + "path": "84" + }, + "10991": { + "fn": "PortfolioHandler.deleteAsset", + "offset": [ + 14667, + 14720 + ], + "op": "MSTORE", + "path": "84" + }, + "10992": { + "op": "POP" + }, + "10993": { + "op": "POP" + }, + "10994": { + "op": "POP" + }, + "10995": { + "op": "POP" + }, + "10996": { + "op": "POP" + }, + "10997": { + "fn": "PortfolioHandler.deleteAsset", + "jump": "o", + "offset": [ + 12689, + 14727 + ], + "op": "JUMP", + "path": "84" + }, + "10998": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11592, + 12454 + ], + "op": "JUMPDEST", + "path": "84" + }, + "10999": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11739, + 11755 + ], + "op": "DUP2", + "path": "84", + "statement": 255 + }, + "11000": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11739, + 11755 + ], + "op": "MLOAD", + "path": "84" + }, + "11001": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "ISZERO", + "path": "84" + }, + "11002": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "DUP1", + "path": "84" + }, + "11003": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "ISZERO", + "path": "84" + }, + "11004": { + "branch": 425, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11755 + ], + "op": "SWAP1", + "path": "84" + }, + "11005": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11803 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B09" + }, + "11008": { + "branch": 425, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11803 + ], + "op": "JUMPI", + "path": "84" + }, + "11009": { + "op": "POP" + }, + "11010": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11759, + 11775 + ], + "op": "DUP2", + "path": "84" + }, + "11011": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11759, + 11775 + ], + "op": "MLOAD", + "path": "84" + }, + "11012": { + "offset": [ + 5408, + 5414 + ], + "op": "PUSH2", + "path": "60", + "value": "0x3FFF" + }, + "11015": { + "op": "LT" + }, + "11016": { + "branch": 426, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11759, + 11803 + ], + "op": "ISZERO", + "path": "84" + }, + "11017": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11735, + 11803 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11018": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B12" + }, + "11021": { + "branch": 426, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "JUMPI", + "path": "84" + }, + "11022": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11024": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "DUP1", + "path": "84" + }, + "11025": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "REVERT", + "path": "84" + }, + "11026": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11727, + 11804 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11027": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11873 + ], + "op": "DUP2", + "path": "84", + "statement": 256 + }, + "11028": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11882 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11030": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11882 + ], + "op": "ADD", + "path": "84" + }, + "11031": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11868, + 11882 + ], + "op": "MLOAD", + "path": "84" + }, + "11032": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11865 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11034": { + "branch": 427, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11882 + ], + "op": "LT", + "path": "84" + }, + "11035": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "DUP1", + "path": "84" + }, + "11036": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "ISZERO", + "path": "84" + }, + "11037": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B2F" + }, + "11040": { + "branch": 427, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "JUMPI", + "path": "84" + }, + "11041": { + "op": "POP" + }, + "11042": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "PUSH1", + "path": "84", + "value": "0x20" + }, + "11044": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "DUP3", + "path": "84" + }, + "11045": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "ADD", + "path": "84" + }, + "11046": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11900 + ], + "op": "MLOAD", + "path": "84" + }, + "11047": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11904, + 11920 + ], + "op": "PUSH5", + "path": "84", + "value": "0xFFFFFFFFFF" + }, + "11053": { + "op": "LT" + }, + "11054": { + "branch": 428, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11886, + 11920 + ], + "op": "ISZERO", + "path": "84" + }, + "11055": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11864, + 11920 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11056": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B38" + }, + "11059": { + "branch": 428, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "JUMPI", + "path": "84" + }, + "11060": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11062": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "DUP1", + "path": "84" + }, + "11063": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "REVERT", + "path": "84" + }, + "11064": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11856, + 11921 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11065": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11987 + ], + "op": "DUP2", + "path": "84", + "statement": 257 + }, + "11066": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11997 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "11068": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11997 + ], + "op": "ADD", + "path": "84" + }, + "11069": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11982, + 11997 + ], + "op": "MLOAD", + "path": "84" + }, + "11070": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 11979 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11072": { + "branch": 429, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 11997 + ], + "op": "LT", + "path": "84" + }, + "11073": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "DUP1", + "path": "84" + }, + "11074": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "ISZERO", + "path": "84" + }, + "11075": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B51" + }, + "11078": { + "branch": 429, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "JUMPI", + "path": "84" + }, + "11079": { + "op": "POP" + }, + "11080": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "PUSH1", + "path": "84", + "value": "0x40" + }, + "11082": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "DUP3", + "path": "84" + }, + "11083": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "ADD", + "path": "84" + }, + "11084": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12016 + ], + "op": "MLOAD", + "path": "84" + }, + "11085": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "11087": { + "op": "LT" + }, + "11088": { + "branch": 430, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12001, + 12055 + ], + "op": "ISZERO", + "path": "84" + }, + "11089": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11978, + 12055 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11090": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B5A" + }, + "11093": { + "branch": 430, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "JUMPI", + "path": "84" + }, + "11094": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11096": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "DUP1", + "path": "84" + }, + "11097": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "REVERT", + "path": "84" + }, + "11098": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 11970, + 12056 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11099": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "PUSH1", + "path": "84", + "statement": 258, + "value": "0x60" + }, + "11101": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "DUP3", + "path": "84" + }, + "11102": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "ADD", + "path": "84" + }, + "11103": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12127, + 12141 + ], + "op": "MLOAD", + "path": "84" + }, + "11104": { + "op": "PUSH11", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "11116": { + "op": "NOT" + }, + "11117": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "SGT", + "path": "84" + }, + "11118": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "DUP1", + "path": "84" + }, + "11119": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "ISZERO", + "path": "84" + }, + "11120": { + "branch": 431, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12141 + ], + "op": "SWAP1", + "path": "84" + }, + "11121": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12178 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B89" + }, + "11124": { + "branch": 431, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12178 + ], + "op": "JUMPI", + "path": "84" + }, + "11125": { + "op": "POP" + }, + "11126": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "11128": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "DUP3", + "path": "84" + }, + "11129": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "ADD", + "path": "84" + }, + "11130": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12159 + ], + "op": "MLOAD", + "path": "84" + }, + "11131": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12163, + 12178 + ], + "op": "PUSH11", + "path": "84", + "value": "0x7FFFFFFFFFFFFFFFFFFFFF" + }, + "11143": { + "op": "SLT" + }, + "11144": { + "branch": 432, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12145, + 12178 + ], + "op": "ISZERO", + "path": "84" + }, + "11145": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12108, + 12178 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11146": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2B92" + }, + "11149": { + "branch": 432, + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "JUMPI", + "path": "84" + }, + "11150": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11152": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "DUP1", + "path": "84" + }, + "11153": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "REVERT", + "path": "84" + }, + "11154": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12100, + 12179 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11155": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12262, + 12278 + ], + "op": "DUP2", + "path": "84", + "statement": 259 + }, + "11156": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12262, + 12278 + ], + "op": "MLOAD", + "path": "84" + }, + "11157": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "DUP2", + "path": "84" + }, + "11158": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SLOAD", + "path": "84" + }, + "11159": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "PUSH1", + "path": "84", + "statement": 260, + "value": "0x20" + }, + "11161": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "DUP5", + "path": "84" + }, + "11162": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "ADD", + "path": "84" + }, + "11163": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12320, + 12334 + ], + "op": "MLOAD", + "path": "84" + }, + "11164": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "PUSH1", + "path": "84", + "statement": 261, + "value": "0x40" + }, + "11166": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "DUP6", + "path": "84" + }, + "11167": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "ADD", + "path": "84" + }, + "11168": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12376, + 12391 + ], + "op": "MLOAD", + "path": "84" + }, + "11169": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "PUSH1", + "path": "84", + "statement": 262, + "value": "0x60" + }, + "11171": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "SWAP1", + "path": "84" + }, + "11172": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "SWAP6", + "path": "84" + }, + "11173": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "ADD", + "path": "84" + }, + "11174": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12432, + 12446 + ], + "op": "MLOAD", + "path": "84" + }, + "11175": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "PUSH1", + "path": "84", + "value": "0xA" + }, + "11177": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SIGNEXTEND", + "path": "84" + }, + "11178": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "PUSH11", + "path": "84", + "value": "0xFFFFFFFFFFFFFFFFFFFFFF" + }, + "11190": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "AND", + "path": "84" + }, + "11191": { + "op": "PUSH1", + "value": "0x1" + }, + "11193": { + "op": "PUSH1", + "value": "0x40" + }, + "11195": { + "op": "SHL" + }, + "11196": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "MUL", + "path": "84" + }, + "11197": { + "op": "PUSH19", + "value": "0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000" + }, + "11217": { + "op": "NOT" + }, + "11218": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "PUSH1", + "path": "84", + "value": "0xFF" + }, + "11220": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP1", + "path": "84" + }, + "11221": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP7", + "path": "84" + }, + "11222": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "AND", + "path": "84" + }, + "11223": { + "op": "PUSH1", + "value": "0x1" + }, + "11225": { + "op": "PUSH1", + "value": "0x38" + }, + "11227": { + "op": "SHL" + }, + "11228": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "MUL", + "path": "84" + }, + "11229": { + "op": "PUSH8", + "value": "0xFF00000000000000" + }, + "11238": { + "op": "NOT" + }, + "11239": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "PUSH5", + "path": "84", + "value": "0xFFFFFFFFFF" + }, + "11245": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP1", + "path": "84" + }, + "11246": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP4", + "path": "84" + }, + "11247": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "AND", + "path": "84" + }, + "11248": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "PUSH3", + "path": "84", + "value": "0x10000" + }, + "11252": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "MUL", + "path": "84" + }, + "11253": { + "op": "PUSH7", + "value": "0xFFFFFFFFFF0000" + }, + "11261": { + "op": "NOT" + }, + "11262": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "PUSH2", + "path": "84", + "value": "0xFFFF" + }, + "11265": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP1", + "path": "84" + }, + "11266": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP7", + "path": "84" + }, + "11267": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "AND", + "path": "84" + }, + "11268": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "11271": { + "op": "NOT" + }, + "11272": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP1", + "path": "84" + }, + "11273": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP6", + "path": "84" + }, + "11274": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "AND", + "path": "84" + }, + "11275": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP5", + "path": "84" + }, + "11276": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP1", + "path": "84" + }, + "11277": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "SWAP5", + "path": "84" + }, + "11278": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12229, + 12279 + ], + "op": "OR", + "path": "84" + }, + "11279": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP5", + "path": "84" + }, + "11280": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP1", + "path": "84" + }, + "11281": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP5", + "path": "84" + }, + "11282": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "AND", + "path": "84" + }, + "11283": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP3", + "path": "84" + }, + "11284": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP1", + "path": "84" + }, + "11285": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "SWAP3", + "path": "84" + }, + "11286": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12289, + 12335 + ], + "op": "OR", + "path": "84" + }, + "11287": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "AND", + "path": "84" + }, + "11288": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP2", + "path": "84" + }, + "11289": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP1", + "path": "84" + }, + "11290": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "SWAP2", + "path": "84" + }, + "11291": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12345, + 12392 + ], + "op": "OR", + "path": "84" + }, + "11292": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP3", + "path": "84" + }, + "11293": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP1", + "path": "84" + }, + "11294": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP3", + "path": "84" + }, + "11295": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "AND", + "path": "84" + }, + "11296": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP2", + "path": "84" + }, + "11297": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP1", + "path": "84" + }, + "11298": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP2", + "path": "84" + }, + "11299": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "OR", + "path": "84" + }, + "11300": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SWAP1", + "path": "84" + }, + "11301": { + "fn": "PortfolioHandler._storeAsset", + "offset": [ + 12402, + 12447 + ], + "op": "SSTORE", + "path": "84" + }, + "11302": { + "fn": "PortfolioHandler._storeAsset", + "jump": "o", + "offset": [ + 11592, + 12454 + ], + "op": "JUMP", + "path": "84" + }, + "11303": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10664, + 11546 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11304": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10896, + 10900 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11306": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10914, + 10921 + ], + "op": "DUP1", + "path": "84" + }, + "11307": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10935, + 10942 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11309": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10967, + 10989 + ], + "op": "DUP1", + "path": "84" + }, + "11310": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 11017 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C36" + }, + "11313": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 10997 + ], + "op": "DUP9", + "path": "84" + }, + "11314": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 11015 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2D67" + }, + "11317": { + "fn": "PortfolioHandler._updatePortfolioContext", + "jump": "i", + "offset": [ + 10992, + 11017 + ], + "op": "JUMP", + "path": "84" + }, + "11318": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10992, + 11017 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11319": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 10967, + 11017 + ], + "op": "SWAP1", + "path": "84" + }, + "11320": { + "op": "POP" + }, + "11321": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11108 + ], + "op": "DUP5", + "path": "84" + }, + "11322": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11108 + ], + "op": "ISZERO", + "path": "84" + }, + "11323": { + "branch": 433, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11108 + ], + "op": "DUP1", + "path": "84" + }, + "11324": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C44" + }, + "11327": { + "branch": 433, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "JUMPI", + "path": "84" + }, + "11328": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "POP", + "path": "84" + }, + "11329": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11129, + 11143 + ], + "op": "DUP1", + "path": "84" + }, + "11330": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11112, + 11126 + ], + "op": "DUP6", + "path": "84" + }, + "11331": { + "branch": 434, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11112, + 11143 + ], + "op": "GT", + "path": "84" + }, + "11332": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11089, + 11143 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11333": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "ISZERO", + "path": "84" + }, + "11334": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C4D" + }, + "11337": { + "branch": 434, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "JUMPI", + "path": "84" + }, + "11338": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11176, + 11190 + ], + "op": "DUP1", + "path": "84", + "statement": 263 + }, + "11339": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11159, + 11190 + ], + "op": "SWAP5", + "path": "84" + }, + "11340": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11159, + 11190 + ], + "op": "POP", + "path": "84" + }, + "11341": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11085, + 11201 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11342": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11227 + ], + "op": "DUP7", + "path": "84", + "statement": 264 + }, + "11343": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "DUP1", + "path": "84" + }, + "11344": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C5D" + }, + "11347": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "JUMPI", + "path": "84" + }, + "11348": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "POP", + "path": "84" + }, + "11349": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11248, + 11249 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11351": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11236 + ], + "op": "DUP9", + "path": "84" + }, + "11352": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11245 + ], + "op": "PUSH1", + "path": "84", + "value": "0x60" + }, + "11354": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11245 + ], + "op": "ADD", + "path": "84" + }, + "11355": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11245 + ], + "op": "MLOAD", + "path": "84" + }, + "11356": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11231, + 11249 + ], + "op": "SLT", + "path": "84" + }, + "11357": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11220, + 11249 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11358": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11210, + 11249 + ], + "op": "SWAP7", + "path": "84" + }, + "11359": { + "op": "POP" + }, + "11360": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "PUSH2", + "path": "84", + "statement": 265, + "value": "0xFFFF" + }, + "11363": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "DUP7", + "path": "84" + }, + "11364": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "AND", + "path": "84" + }, + "11365": { + "branch": 435, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11268, + 11315 + ], + "op": "ISZERO", + "path": "84" + }, + "11366": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "PUSH2", + "path": "84", + "value": "0x2C6E" + }, + "11369": { + "branch": 435, + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "JUMPI", + "path": "84" + }, + "11370": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "PUSH1", + "path": "84", + "value": "0x0" + }, + "11372": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "DUP1", + "path": "84" + }, + "11373": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "REVERT", + "path": "84" + }, + "11374": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11260, + 11316 + ], + "op": "JUMPDEST", + "path": "84" + }, + "11375": { + "op": "POP" + }, + "11376": { + "op": "POP" + }, + "11377": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11444, + 11460 + ], + "op": "SWAP5", + "path": "84", + "statement": 266 + }, + "11378": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11444, + 11460 + ], + "op": "MLOAD", + "path": "84" + }, + "11379": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11488, + 11495 + ], + "op": "SWAP4", + "path": "84", + "statement": 267 + }, + "11380": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11488, + 11495 + ], + "op": "SWAP6", + "path": "84" + }, + "11381": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11429, + 11431 + ], + "op": "PUSH1", + "path": "84", + "value": "0x10" + }, + "11383": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SWAP4", + "path": "84" + }, + "11384": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SWAP1", + "path": "84" + }, + "11385": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SWAP4", + "path": "84" + }, + "11386": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11400, + 11431 + ], + "op": "SHR", + "path": "84" + }, + "11387": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11465, + 11468 + ], + "op": "PUSH1", + "path": "84", + "value": "0xF0" + }, + "11389": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SWAP5", + "path": "84" + }, + "11390": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SWAP1", + "path": "84" + }, + "11391": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SWAP5", + "path": "84" + }, + "11392": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11436, + 11468 + ], + "op": "SHL", + "path": "84" + }, + "11393": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP4", + "path": "84" + }, + "11394": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP1", + "path": "84" + }, + "11395": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP4", + "path": "84" + }, + "11396": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "OR", + "path": "84" + }, + "11397": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11399, + 11469 + ], + "op": "SWAP4", + "path": "84" + }, + "11398": { + "op": "POP" + }, + "11399": { + "fn": "PortfolioHandler._updatePortfolioContext", + "offset": [ + 11524, + 11538 + ], + "op": "SWAP2", + "path": "84" + }, + "11400": { + "op": "POP" + }, + "11401": { + "fn": "PortfolioHandler._updatePortfolioContext", + "jump": "o", + "offset": [ + 10664, + 11546 + ], + "op": "JUMP", + "path": "84" + }, + "11402": { + "fn": "LibStorage.getAssetsBitmapStorage", + "offset": [ + 5315, + 5558 + ], + "op": "JUMPDEST", + "path": "62" + }, + "11403": { + "fn": "LibStorage.getAssetsBitmapStorage", + "offset": [ + 5380, + 5441 + ], + "op": "PUSH1", + "path": "62", + "value": "0x0" + }, + "11405": { + "fn": "LibStorage.getAssetsBitmapStorage", + "offset": [ + 5457, + 5469 + ], + "op": "DUP1", + "path": "62" + }, + "11406": { + "fn": "LibStorage.getAssetsBitmapStorage", + "offset": [ + 5472, + 5511 + ], + "op": "PUSH2", + "path": "62", + "value": "0x30C" + }, + "11409": { + "fn": "LibStorage.getAssetsBitmapStorage", + "offset": [ + 5488, + 5510 + ], + "op": "PUSH1", + "path": "62", + "value": "0xB" + }, + "11411": { + "fn": "LibStorage.getAssetsBitmapStorage", + "offset": [ + 5472, + 5487 + ], + "op": "PUSH2", + "path": "62", + "value": "0x1971" + }, + "11414": { + "fn": "LibStorage.getAssetsBitmapStorage", + "jump": "i", + "offset": [ + 5472, + 5511 + ], + "op": "JUMP", + "path": "62" + }, + "11415": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1013, + 1851 + ], + "op": "JUMPDEST", + "path": "92" + }, + "11416": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1215, + 1216 + ], + "op": "PUSH1", + "path": "92", + "statement": 268, + "value": "0x1" + }, + "11418": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1210, + 1216 + ], + "op": "DUP2", + "path": "92" + }, + "11419": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1210, + 1216 + ], + "op": "SWAP1", + "path": "92" + }, + "11420": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1210, + 1216 + ], + "op": "SHR", + "path": "92" + }, + "11421": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1219, + 1285 + ], + "op": "PUSH32", + "path": "92", + "value": "0x5555555555555555555555555555555555555555555555555555555555555555" + }, + "11454": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1210, + 1285 + ], + "op": "SWAP1", + "path": "92" + }, + "11455": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1210, + 1285 + ], + "op": "DUP2", + "path": "92" + }, + "11456": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1210, + 1285 + ], + "op": "AND", + "path": "92" + }, + "11457": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1135, + 1205 + ], + "op": "SWAP2", + "path": "92" + }, + "11458": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1135, + 1205 + ], + "op": "AND", + "path": "92" + }, + "11459": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1134, + 1286 + ], + "op": "ADD", + "path": "92" + }, + "11460": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1381, + 1382 + ], + "op": "PUSH1", + "path": "92", + "statement": 269, + "value": "0x2" + }, + "11462": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1376, + 1382 + ], + "op": "DUP2", + "path": "92" + }, + "11463": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1376, + 1382 + ], + "op": "SWAP1", + "path": "92" + }, + "11464": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1376, + 1382 + ], + "op": "SHR", + "path": "92" + }, + "11465": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1385, + 1451 + ], + "op": "PUSH32", + "path": "92", + "value": "0x3333333333333333333333333333333333333333333333333333333333333333" + }, + "11498": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1376, + 1451 + ], + "op": "SWAP1", + "path": "92" + }, + "11499": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1376, + 1451 + ], + "op": "DUP2", + "path": "92" + }, + "11500": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1376, + 1451 + ], + "op": "AND", + "path": "92" + }, + "11501": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1301, + 1371 + ], + "op": "SWAP2", + "path": "92" + }, + "11502": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1301, + 1371 + ], + "op": "AND", + "path": "92" + }, + "11503": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1300, + 1452 + ], + "op": "ADD", + "path": "92" + }, + "11504": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1547, + 1548 + ], + "op": "PUSH1", + "path": "92", + "statement": 270, + "value": "0x4" + }, + "11506": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1542, + 1548 + ], + "op": "DUP2", + "path": "92" + }, + "11507": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1542, + 1548 + ], + "op": "SWAP1", + "path": "92" + }, + "11508": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1542, + 1548 + ], + "op": "SHR", + "path": "92" + }, + "11509": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1471, + 1537 + ], + "op": "PUSH32", + "path": "92", + "value": "0x707070707070707070707070707070707070707070707070707070707070707" + }, + "11542": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1467, + 1537 + ], + "op": "SWAP2", + "path": "92" + }, + "11543": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1467, + 1537 + ], + "op": "SWAP1", + "path": "92" + }, + "11544": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1467, + 1537 + ], + "op": "SWAP2", + "path": "92" + }, + "11545": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1467, + 1537 + ], + "op": "AND", + "path": "92" + }, + "11546": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1466, + 1549 + ], + "op": "ADD", + "path": "92" + }, + "11547": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1644, + 1645 + ], + "op": "PUSH1", + "path": "92", + "statement": 271, + "value": "0x8" + }, + "11549": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1639, + 1645 + ], + "op": "DUP2", + "path": "92" + }, + "11550": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1639, + 1645 + ], + "op": "SWAP1", + "path": "92" + }, + "11551": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1639, + 1645 + ], + "op": "SHR", + "path": "92" + }, + "11552": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1648, + 1714 + ], + "op": "PUSH31", + "path": "92", + "value": "0xF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F" + }, + "11584": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1639, + 1714 + ], + "op": "SWAP1", + "path": "92" + }, + "11585": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1639, + 1714 + ], + "op": "DUP2", + "path": "92" + }, + "11586": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1639, + 1714 + ], + "op": "AND", + "path": "92" + }, + "11587": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1564, + 1634 + ], + "op": "SWAP2", + "path": "92" + }, + "11588": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1564, + 1634 + ], + "op": "AND", + "path": "92" + }, + "11589": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1563, + 1715 + ], + "op": "ADD", + "path": "92" + }, + "11590": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1739, + 1741 + ], + "op": "PUSH1", + "path": "92", + "statement": 272, + "value": "0x10" + }, + "11592": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1734, + 1741 + ], + "op": "DUP2", + "path": "92" + }, + "11593": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1734, + 1741 + ], + "op": "SWAP1", + "path": "92" + }, + "11594": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1734, + 1741 + ], + "op": "SHR", + "path": "92" + }, + "11595": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1729, + 1742 + ], + "op": "ADD", + "path": "92" + }, + "11596": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1766, + 1768 + ], + "op": "PUSH1", + "path": "92", + "statement": 273, + "value": "0x20" + }, + "11598": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1761, + 1768 + ], + "op": "DUP2", + "path": "92" + }, + "11599": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1761, + 1768 + ], + "op": "SWAP1", + "path": "92" + }, + "11600": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1761, + 1768 + ], + "op": "SHR", + "path": "92" + }, + "11601": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1756, + 1769 + ], + "op": "ADD", + "path": "92" + }, + "11602": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1794, + 1796 + ], + "op": "PUSH1", + "path": "92", + "statement": 274, + "value": "0x40" + }, + "11604": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1789, + 1796 + ], + "op": "DUP2", + "path": "92" + }, + "11605": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1789, + 1796 + ], + "op": "SWAP1", + "path": "92" + }, + "11606": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1789, + 1796 + ], + "op": "SHR", + "path": "92" + }, + "11607": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1783, + 1797 + ], + "op": "ADD", + "path": "92" + }, + "11608": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1833, + 1836 + ], + "op": "PUSH1", + "path": "92", + "statement": 275, + "value": "0x80" + }, + "11610": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1828, + 1836 + ], + "op": "DUP2", + "path": "92" + }, + "11611": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1828, + 1836 + ], + "op": "SWAP1", + "path": "92" + }, + "11612": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1828, + 1836 + ], + "op": "SHR", + "path": "92" + }, + "11613": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1839, + 1843 + ], + "op": "PUSH1", + "path": "92", + "value": "0xFF" + }, + "11615": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1828, + 1843 + ], + "op": "SWAP1", + "path": "92" + }, + "11616": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1828, + 1843 + ], + "op": "DUP2", + "path": "92" + }, + "11617": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1828, + 1843 + ], + "op": "AND", + "path": "92" + }, + "11618": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1815, + 1823 + ], + "op": "SWAP2", + "path": "92" + }, + "11619": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1815, + 1823 + ], + "op": "AND", + "path": "92" + }, + "11620": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1814, + 1844 + ], + "op": "ADD", + "path": "92" + }, + "11621": { + "fn": "Bitmap.totalBitsSet", + "offset": [ + 1814, + 1844 + ], + "op": "SWAP1", + "path": "92" + }, + "11622": { + "fn": "Bitmap.totalBitsSet", + "jump": "o", + "offset": [ + 1013, + 1851 + ], + "op": "JUMP", + "path": "92" + }, + "11623": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1006, + 1758 + ], + "op": "JUMPDEST", + "path": "88" + }, + "11624": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1085, + 1092 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "11626": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1130, + 1131 + ], + "op": "DUP1", + "path": "88", + "statement": 276 + }, + "11627": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1117 + ], + "op": "DUP3", + "path": "88" + }, + "11628": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1127 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "11630": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1127 + ], + "op": "ADD", + "path": "88" + }, + "11631": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1127 + ], + "op": "MLOAD", + "path": "88" + }, + "11632": { + "branch": 350, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1131 + ], + "op": "GT", + "path": "88" + }, + "11633": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "DUP1", + "path": "88" + }, + "11634": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "ISZERO", + "path": "88" + }, + "11635": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "PUSH2", + "path": "88", + "value": "0x2D81" + }, + "11638": { + "branch": 350, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "JUMPI", + "path": "88" + }, + "11639": { + "op": "POP" + }, + "11640": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "11642": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "DUP3", + "path": "88" + }, + "11643": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "ADD", + "path": "88" + }, + "11644": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1150 + ], + "op": "MLOAD", + "path": "88" + }, + "11645": { + "offset": [ + 4906, + 4907 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "11647": { + "op": "LT" + }, + "11648": { + "branch": 351, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1135, + 1189 + ], + "op": "ISZERO", + "path": "88" + }, + "11649": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1112, + 1189 + ], + "op": "JUMPDEST", + "path": "88" + }, + "11650": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "PUSH2", + "path": "88", + "value": "0x2D8A" + }, + "11653": { + "branch": 351, + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "JUMPI", + "path": "88" + }, + "11654": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "11656": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "DUP1", + "path": "88" + }, + "11657": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "REVERT", + "path": "88" + }, + "11658": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1104, + 1190 + ], + "op": "JUMPDEST", + "path": "88" + }, + "11659": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "11661": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "DUP3", + "path": "88" + }, + "11662": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "ADD", + "path": "88" + }, + "11663": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1309, + 1324 + ], + "op": "MLOAD", + "path": "88" + }, + "11664": { + "offset": [ + 4847, + 4848 + ], + "op": "PUSH1", + "path": "60", + "value": "0x2" + }, + "11666": { + "op": "LT" + }, + "11667": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1305, + 1386 + ], + "op": "PUSH2", + "path": "88", + "value": "0x2DA1" + }, + "11670": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1305, + 1386 + ], + "op": "JUMPI", + "path": "88" + }, + "11671": { + "op": "POP" + }, + "11672": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "PUSH1", + "path": "88", + "statement": 277, + "value": "0x20" + }, + "11674": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "DUP2", + "path": "88" + }, + "11675": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "ADD", + "path": "88" + }, + "11676": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1372, + 1386 + ], + "op": "MLOAD", + "path": "88" + }, + "11677": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1365, + 1386 + ], + "op": "PUSH2", + "path": "88", + "value": "0x327" + }, + "11680": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1365, + 1386 + ], + "op": "JUMP", + "path": "88" + }, + "11681": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1305, + 1386 + ], + "op": "JUMPDEST", + "path": "88" + }, + "11682": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1417 + ], + "op": "PUSH1", + "path": "88", + "value": "0x0" + }, + "11684": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1420, + 1465 + ], + "op": "PUSH2", + "path": "88", + "value": "0x2DB3" + }, + "11687": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1463, + 1464 + ], + "op": "PUSH1", + "path": "88", + "value": "0x1" + }, + "11689": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1450 + ], + "op": "DUP5", + "path": "88" + }, + "11690": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1460 + ], + "op": "PUSH1", + "path": "88", + "value": "0x40" + }, + "11692": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1460 + ], + "op": "ADD", + "path": "88" + }, + "11693": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1460 + ], + "op": "MLOAD", + "path": "88" + }, + "11694": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1445, + 1464 + ], + "op": "SUB", + "path": "88" + }, + "11695": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1420, + 1444 + ], + "op": "PUSH2", + "path": "88", + "value": "0x1D04" + }, + "11698": { + "fn": "AssetHandler.getSettlementDate", + "jump": "i", + "offset": [ + 1420, + 1465 + ], + "op": "JUMP", + "path": "88" + }, + "11699": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1420, + 1465 + ], + "op": "JUMPDEST", + "path": "88" + }, + "11700": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "PUSH1", + "path": "88", + "statement": 278, + "value": "0x20" + }, + "11702": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "DUP5", + "path": "88" + }, + "11703": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "ADD", + "path": "88" + }, + "11704": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1710 + ], + "op": "MLOAD", + "path": "88" + }, + "11705": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1465 + ], + "op": "SWAP1", + "path": "88" + }, + "11706": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1465 + ], + "op": "SWAP2", + "path": "88" + }, + "11707": { + "op": "POP" + }, + "11708": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1751 + ], + "op": "PUSH2", + "path": "88", + "value": "0x653" + }, + "11711": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1751 + ], + "op": "SWAP1", + "path": "88" + }, + "11712": { + "offset": [ + 2617, + 2626 + ], + "op": "PUSH3", + "path": "60", + "value": "0x76A700" + }, + "11716": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 2617, + 2626 + ], + "op": "SWAP1", + "path": "60" + }, + "11717": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1728 + ], + "op": "PUSH2", + "path": "88", + "value": "0x2DCE" + }, + "11720": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1728 + ], + "op": "SWAP1", + "path": "88" + }, + "11721": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1397, + 1465 + ], + "op": "DUP5", + "path": "88" + }, + "11722": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1714 + ], + "op": "PUSH2", + "path": "88", + "value": "0x2DD4" + }, + "11725": { + "fn": "AssetHandler.getSettlementDate", + "jump": "i", + "offset": [ + 1696, + 1728 + ], + "op": "JUMP", + "path": "88" + }, + "11726": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1728 + ], + "op": "JUMPDEST", + "path": "88" + }, + "11727": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1732 + ], + "op": "SWAP1", + "path": "88" + }, + "11728": { + "fn": "AssetHandler.getSettlementDate", + "offset": [ + 1696, + 1732 + ], + "op": "PUSH2", + "path": "88", + "value": "0x1DA8" + }, + "11731": { + "fn": "AssetHandler.getSettlementDate", + "jump": "i", + "offset": [ + 1696, + 1751 + ], + "op": "JUMP", + "path": "88" + }, + "11732": { + "fn": "SafeMath.sub", + "offset": [ + 3128, + 3283 + ], + "op": "JUMPDEST", + "path": "6" + }, + "11733": { + "fn": "SafeMath.sub", + "offset": [ + 3186, + 3193 + ], + "op": "PUSH1", + "path": "6", + "value": "0x0" + }, + "11735": { + "fn": "SafeMath.sub", + "offset": [ + 3218, + 3219 + ], + "op": "DUP3", + "path": "6", + "statement": 279 + }, + "11736": { + "fn": "SafeMath.sub", + "offset": [ + 3213, + 3214 + ], + "op": "DUP3", + "path": "6" + }, + "11737": { + "fn": "SafeMath.sub", + "offset": [ + 3213, + 3219 + ], + "op": "GT", + "path": "6" + }, + "11738": { + "branch": 445, + "fn": "SafeMath.sub", + "offset": [ + 3213, + 3219 + ], + "op": "ISZERO", + "path": "6" + }, + "11739": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH2", + "path": "6", + "value": "0x2E2B" + }, + "11742": { + "branch": 445, + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "JUMPI", + "path": "6" + }, + "11743": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x40" + }, + "11745": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP1", + "path": "6" + }, + "11746": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MLOAD", + "path": "6" + }, + "11747": { + "op": "PUSH3", + "value": "0x461BCD" + }, + "11751": { + "op": "PUSH1", + "value": "0xE5" + }, + "11753": { + "op": "SHL" + }, + "11754": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP2", + "path": "6" + }, + "11755": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "11756": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x20" + }, + "11758": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x4" + }, + "11760": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP3", + "path": "6" + }, + "11761": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "11762": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "11763": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x1E" + }, + "11765": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x24" + }, + "11767": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP3", + "path": "6" + }, + "11768": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "11769": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "11770": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH32", + "path": "6", + "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000" + }, + "11803": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x44" + }, + "11805": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP3", + "path": "6" + }, + "11806": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "11807": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MSTORE", + "path": "6" + }, + "11808": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "11809": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "MLOAD", + "path": "6" + }, + "11810": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "11811": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "DUP2", + "path": "6" + }, + "11812": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "11813": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SUB", + "path": "6" + }, + "11814": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "PUSH1", + "path": "6", + "value": "0x64" + }, + "11816": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "ADD", + "path": "6" + }, + "11817": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "SWAP1", + "path": "6" + }, + "11818": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "REVERT", + "path": "6" + }, + "11819": { + "fn": "SafeMath.sub", + "offset": [ + 3205, + 3254 + ], + "op": "JUMPDEST", + "path": "6" + }, + "11820": { + "op": "POP" + }, + "11821": { + "fn": "SafeMath.sub", + "offset": [ + 3271, + 3276 + ], + "op": "SWAP1", + "path": "6", + "statement": 280 + }, + "11822": { + "fn": "SafeMath.sub", + "offset": [ + 3271, + 3276 + ], + "op": "SUB", + "path": "6" + }, + "11823": { + "fn": "SafeMath.sub", + "offset": [ + 3271, + 3276 + ], + "op": "SWAP1", + "path": "6" + }, + "11824": { + "fn": "SafeMath.sub", + "jump": "o", + "offset": [ + 3128, + 3283 + ], + "op": "JUMP", + "path": "6" + }, + "11825": { + "op": "JUMPDEST" + }, + "11826": { + "op": "PUSH1", + "value": "0x40" + }, + "11828": { + "op": "DUP1" + }, + "11829": { + "op": "MLOAD" + }, + "11830": { + "op": "PUSH1", + "value": "0xA0" + }, + "11832": { + "op": "DUP2" + }, + "11833": { + "op": "ADD" + }, + "11834": { + "op": "DUP3" + }, + "11835": { + "op": "MSTORE" + }, + "11836": { + "op": "PUSH1", + "value": "0x0" + }, + "11838": { + "op": "DUP1" + }, + "11839": { + "op": "DUP3" + }, + "11840": { + "op": "MSTORE" + }, + "11841": { + "op": "PUSH1", + "value": "0x20" + }, + "11843": { + "op": "DUP3" + }, + "11844": { + "op": "ADD" + }, + "11845": { + "op": "DUP2" + }, + "11846": { + "op": "SWAP1" + }, + "11847": { + "op": "MSTORE" + }, + "11848": { + "op": "SWAP2" + }, + "11849": { + "op": "DUP2" + }, + "11850": { + "op": "ADD" + }, + "11851": { + "op": "DUP3" + }, + "11852": { + "op": "SWAP1" + }, + "11853": { + "op": "MSTORE" + }, + "11854": { + "op": "PUSH1", + "value": "0x60" + }, + "11856": { + "op": "DUP2" + }, + "11857": { + "op": "ADD" + }, + "11858": { + "op": "DUP3" + }, + "11859": { + "op": "SWAP1" + }, + "11860": { + "op": "MSTORE" + }, + "11861": { + "op": "PUSH1", + "value": "0x80" + }, + "11863": { + "op": "DUP2" + }, + "11864": { + "op": "ADD" + }, + "11865": { + "op": "SWAP2" + }, + "11866": { + "op": "SWAP1" + }, + "11867": { + "op": "SWAP2" + }, + "11868": { + "op": "MSTORE" + }, + "11869": { + "op": "SWAP1" + }, + "11870": { + "jump": "o", + "op": "JUMP" + }, + "11871": { + "op": "JUMPDEST" + }, + "11872": { + "op": "PUSH1", + "value": "0x40" + }, + "11874": { + "op": "MLOAD" + }, + "11875": { + "op": "DUP1" + }, + "11876": { + "op": "PUSH1", + "value": "0xC0" + }, + "11878": { + "op": "ADD" + }, + "11879": { + "op": "PUSH1", + "value": "0x40" + }, + "11881": { + "op": "MSTORE" + }, + "11882": { + "op": "DUP1" + }, + "11883": { + "op": "PUSH1", + "value": "0x0" + }, + "11885": { + "op": "DUP2" + }, + "11886": { + "op": "MSTORE" + }, + "11887": { + "op": "PUSH1", + "value": "0x20" + }, + "11889": { + "op": "ADD" + }, + "11890": { + "op": "PUSH1", + "value": "0x0" + }, + "11892": { + "op": "DUP2" + }, + "11893": { + "op": "MSTORE" + }, + "11894": { + "op": "PUSH1", + "value": "0x20" + }, + "11896": { + "op": "ADD" + }, + "11897": { + "op": "PUSH1", + "value": "0x0" + }, + "11899": { + "op": "DUP2" + }, + "11900": { + "op": "MSTORE" + }, + "11901": { + "op": "PUSH1", + "value": "0x20" + }, + "11903": { + "op": "ADD" + }, + "11904": { + "op": "PUSH1", + "value": "0x0" + }, + "11906": { + "op": "DUP2" + }, + "11907": { + "op": "MSTORE" + }, + "11908": { + "op": "PUSH1", + "value": "0x20" + }, + "11910": { + "op": "ADD" + }, + "11911": { + "op": "PUSH1", + "value": "0x0" + }, + "11913": { + "op": "DUP2" + }, + "11914": { + "op": "MSTORE" + }, + "11915": { + "op": "PUSH1", + "value": "0x20" + }, + "11917": { + "op": "ADD" + }, + "11918": { + "op": "PUSH1", + "value": "0x0" + }, + "11920": { + "op": "PUSH1", + "value": "0x3" + }, + "11922": { + "op": "DUP2" + }, + "11923": { + "op": "GT" + }, + "11924": { + "op": "ISZERO" + }, + "11925": { + "op": "PUSH2", + "value": "0x2E9A" + }, + "11928": { + "op": "JUMPI" + }, + "11929": { + "op": "INVALID" + }, + "11930": { + "op": "JUMPDEST" + }, + "11931": { + "op": "SWAP1" + }, + "11932": { + "op": "MSTORE" + }, + "11933": { + "op": "SWAP1" + }, + "11934": { + "jump": "o", + "op": "JUMP" + }, + "11935": { + "op": "JUMPDEST" + }, + "11936": { + "op": "PUSH1", + "value": "0x40" + }, + "11938": { + "op": "MLOAD" + }, + "11939": { + "op": "DUP1" + }, + "11940": { + "op": "PUSH1", + "value": "0x80" + }, + "11942": { + "op": "ADD" + }, + "11943": { + "op": "PUSH1", + "value": "0x40" + }, + "11945": { + "op": "MSTORE" + }, + "11946": { + "op": "DUP1" + }, + "11947": { + "op": "PUSH1", + "value": "0x60" + }, + "11949": { + "op": "DUP2" + }, + "11950": { + "op": "MSTORE" + }, + "11951": { + "op": "PUSH1", + "value": "0x20" + }, + "11953": { + "op": "ADD" + }, + "11954": { + "op": "PUSH1", + "value": "0x60" + }, + "11956": { + "op": "DUP2" + }, + "11957": { + "op": "MSTORE" + }, + "11958": { + "op": "PUSH1", + "value": "0x20" + }, + "11960": { + "op": "ADD" + }, + "11961": { + "op": "PUSH1", + "value": "0x0" + }, + "11963": { + "op": "DUP2" + }, + "11964": { + "op": "MSTORE" + }, + "11965": { + "op": "PUSH1", + "value": "0x20" + }, + "11967": { + "op": "ADD" + }, + "11968": { + "op": "PUSH1", + "value": "0x0" + }, + "11970": { + "op": "DUP2" + }, + "11971": { + "op": "MSTORE" + }, + "11972": { + "op": "POP" + }, + "11973": { + "op": "SWAP1" + }, + "11974": { + "jump": "o", + "op": "JUMP" + }, + "11975": { + "op": "JUMPDEST" + }, + "11976": { + "op": "PUSH1", + "value": "0x0" + }, + "11978": { + "op": "DUP1" + }, + "11979": { + "op": "DUP4" + }, + "11980": { + "op": "PUSH1", + "value": "0x1F" + }, + "11982": { + "op": "DUP5" + }, + "11983": { + "op": "ADD" + }, + "11984": { + "op": "SLT" + }, + "11985": { + "op": "PUSH2", + "value": "0x2ED8" + }, + "11988": { + "op": "JUMPI" + }, + "11989": { + "op": "DUP1" + }, + "11990": { + "op": "DUP2" + }, + "11991": { + "op": "REVERT" + }, + "11992": { + "op": "JUMPDEST" + }, + "11993": { + "op": "POP" + }, + "11994": { + "op": "DUP2" + }, + "11995": { + "op": "CALLDATALOAD" + }, + "11996": { + "op": "PUSH1", + "value": "0x1" + }, + "11998": { + "op": "PUSH1", + "value": "0x1" + }, + "12000": { + "op": "PUSH1", + "value": "0x40" + }, + "12002": { + "op": "SHL" + }, + "12003": { + "op": "SUB" + }, + "12004": { + "op": "DUP2" + }, + "12005": { + "op": "GT" + }, + "12006": { + "op": "ISZERO" + }, + "12007": { + "op": "PUSH2", + "value": "0x2EEE" + }, + "12010": { + "op": "JUMPI" + }, + "12011": { + "op": "DUP2" + }, + "12012": { + "op": "DUP3" + }, + "12013": { + "op": "REVERT" + }, + "12014": { + "op": "JUMPDEST" + }, + "12015": { + "op": "PUSH1", + "value": "0x20" + }, + "12017": { + "op": "DUP4" + }, + "12018": { + "op": "ADD" + }, + "12019": { + "op": "SWAP2" + }, + "12020": { + "op": "POP" + }, + "12021": { + "op": "DUP4" + }, + "12022": { + "op": "PUSH1", + "value": "0x20" + }, + "12024": { + "op": "DUP1" + }, + "12025": { + "op": "DUP4" + }, + "12026": { + "op": "MUL" + }, + "12027": { + "op": "DUP6" + }, + "12028": { + "op": "ADD" + }, + "12029": { + "op": "ADD" + }, + "12030": { + "op": "GT" + }, + "12031": { + "op": "ISZERO" + }, + "12032": { + "op": "PUSH2", + "value": "0x1F06" + }, + "12035": { + "op": "JUMPI" + }, + "12036": { + "op": "PUSH1", + "value": "0x0" + }, + "12038": { + "op": "DUP1" + }, + "12039": { + "op": "REVERT" + }, + "12040": { + "op": "JUMPDEST" + }, + "12041": { + "op": "DUP1" + }, + "12042": { + "op": "MLOAD" + }, + "12043": { + "op": "PUSH1", + "value": "0x1" + }, + "12045": { + "op": "PUSH1", + "value": "0x1" + }, + "12047": { + "op": "PUSH1", + "value": "0x70" + }, + "12049": { + "op": "SHL" + }, + "12050": { + "op": "SUB" + }, + "12051": { + "op": "NOT" + }, + "12052": { + "op": "DUP2" + }, + "12053": { + "op": "AND" + }, + "12054": { + "op": "DUP2" + }, + "12055": { + "op": "EQ" + }, + "12056": { + "op": "PUSH2", + "value": "0x327" + }, + "12059": { + "op": "JUMPI" + }, + "12060": { + "op": "PUSH1", + "value": "0x0" + }, + "12062": { + "op": "DUP1" + }, + "12063": { + "op": "REVERT" + }, + "12064": { + "op": "JUMPDEST" + }, + "12065": { + "op": "PUSH1", + "value": "0x0" + }, + "12067": { + "op": "DUP1" + }, + "12068": { + "op": "DUP4" + }, + "12069": { + "op": "PUSH1", + "value": "0x1F" + }, + "12071": { + "op": "DUP5" + }, + "12072": { + "op": "ADD" + }, + "12073": { + "op": "SLT" + }, + "12074": { + "op": "PUSH2", + "value": "0x2F31" + }, + "12077": { + "op": "JUMPI" + }, + "12078": { + "op": "DUP2" + }, + "12079": { + "op": "DUP3" + }, + "12080": { + "op": "REVERT" + }, + "12081": { + "op": "JUMPDEST" + }, + "12082": { + "op": "POP" + }, + "12083": { + "op": "DUP2" + }, + "12084": { + "op": "CALLDATALOAD" + }, + "12085": { + "op": "PUSH1", + "value": "0x1" + }, + "12087": { + "op": "PUSH1", + "value": "0x1" + }, + "12089": { + "op": "PUSH1", + "value": "0x40" + }, + "12091": { + "op": "SHL" + }, + "12092": { + "op": "SUB" + }, + "12093": { + "op": "DUP2" + }, + "12094": { + "op": "GT" + }, + "12095": { + "op": "ISZERO" + }, + "12096": { + "op": "PUSH2", + "value": "0x2F47" + }, + "12099": { + "op": "JUMPI" + }, + "12100": { + "op": "DUP2" + }, + "12101": { + "op": "DUP3" + }, + "12102": { + "op": "REVERT" + }, + "12103": { + "op": "JUMPDEST" + }, + "12104": { + "op": "PUSH1", + "value": "0x20" + }, + "12106": { + "op": "DUP4" + }, + "12107": { + "op": "ADD" + }, + "12108": { + "op": "SWAP2" + }, + "12109": { + "op": "POP" + }, + "12110": { + "op": "DUP4" + }, + "12111": { + "op": "PUSH1", + "value": "0x20" + }, + "12113": { + "op": "DUP3" + }, + "12114": { + "op": "DUP6" + }, + "12115": { + "op": "ADD" + }, + "12116": { + "op": "ADD" + }, + "12117": { + "op": "GT" + }, + "12118": { + "op": "ISZERO" + }, + "12119": { + "op": "PUSH2", + "value": "0x1F06" + }, + "12122": { + "op": "JUMPI" + }, + "12123": { + "op": "PUSH1", + "value": "0x0" + }, + "12125": { + "op": "DUP1" + }, + "12126": { + "op": "REVERT" + }, + "12127": { + "op": "JUMPDEST" + }, + "12128": { + "op": "DUP1" + }, + "12129": { + "op": "MLOAD" + }, + "12130": { + "op": "PUSH2", + "value": "0x327" + }, + "12133": { + "op": "DUP2" + }, + "12134": { + "op": "PUSH2", + "value": "0x386F" + }, + "12137": { + "jump": "i", + "op": "JUMP" + }, + "12138": { + "op": "JUMPDEST" + }, + "12139": { + "op": "DUP1" + }, + "12140": { + "op": "MLOAD" + }, + "12141": { + "op": "PUSH2", + "value": "0x327" + }, + "12144": { + "op": "DUP2" + }, + "12145": { + "op": "PUSH2", + "value": "0x3892" + }, + "12148": { + "jump": "i", + "op": "JUMP" + }, + "12149": { + "op": "JUMPDEST" + }, + "12150": { + "op": "PUSH1", + "value": "0x0" + }, + "12152": { + "op": "PUSH1", + "value": "0x20" + }, + "12154": { + "op": "DUP3" + }, + "12155": { + "op": "DUP5" + }, + "12156": { + "op": "SUB" + }, + "12157": { + "op": "SLT" + }, + "12158": { + "op": "ISZERO" + }, + "12159": { + "op": "PUSH2", + "value": "0x2F86" + }, + "12162": { + "op": "JUMPI" + }, + "12163": { + "op": "DUP1" + }, + "12164": { + "op": "DUP2" + }, + "12165": { + "op": "REVERT" + }, + "12166": { + "op": "JUMPDEST" + }, + "12167": { + "op": "DUP2" + }, + "12168": { + "op": "CALLDATALOAD" + }, + "12169": { + "op": "PUSH2", + "value": "0x653" + }, + "12172": { + "op": "DUP2" + }, + "12173": { + "op": "PUSH2", + "value": "0x3841" + }, + "12176": { + "jump": "i", + "op": "JUMP" + }, + "12177": { + "op": "JUMPDEST" + }, + "12178": { + "op": "PUSH1", + "value": "0x0" + }, + "12180": { + "op": "DUP1" + }, + "12181": { + "op": "PUSH1", + "value": "0x40" + }, + "12183": { + "op": "DUP4" + }, + "12184": { + "op": "DUP6" + }, + "12185": { + "op": "SUB" + }, + "12186": { + "op": "SLT" + }, + "12187": { + "op": "ISZERO" + }, + "12188": { + "op": "PUSH2", + "value": "0x2FA3" + }, + "12191": { + "op": "JUMPI" + }, + "12192": { + "op": "DUP1" + }, + "12193": { + "op": "DUP2" + }, + "12194": { + "op": "REVERT" + }, + "12195": { + "op": "JUMPDEST" + }, + "12196": { + "op": "DUP3" + }, + "12197": { + "op": "CALLDATALOAD" + }, + "12198": { + "op": "PUSH2", + "value": "0x2FAE" + }, + "12201": { + "op": "DUP2" + }, + "12202": { + "op": "PUSH2", + "value": "0x3841" + }, + "12205": { + "jump": "i", + "op": "JUMP" + }, + "12206": { + "op": "JUMPDEST" + }, + "12207": { + "op": "SWAP2" + }, + "12208": { + "op": "POP" + }, + "12209": { + "op": "PUSH1", + "value": "0x20" + }, + "12211": { + "op": "DUP4" + }, + "12212": { + "op": "ADD" + }, + "12213": { + "op": "CALLDATALOAD" + }, + "12214": { + "op": "PUSH2", + "value": "0x2FBE" + }, + "12217": { + "op": "DUP2" + }, + "12218": { + "op": "PUSH2", + "value": "0x3841" + }, + "12221": { + "jump": "i", + "op": "JUMP" + }, + "12222": { + "op": "JUMPDEST" + }, + "12223": { + "op": "DUP1" + }, + "12224": { + "op": "SWAP2" + }, + "12225": { + "op": "POP" + }, + "12226": { + "op": "POP" + }, + "12227": { + "op": "SWAP3" + }, + "12228": { + "op": "POP" + }, + "12229": { + "op": "SWAP3" + }, + "12230": { + "op": "SWAP1" + }, + "12231": { + "op": "POP" + }, + "12232": { + "jump": "o", + "op": "JUMP" + }, + "12233": { + "op": "JUMPDEST" + }, + "12234": { + "op": "PUSH1", + "value": "0x0" + }, + "12236": { + "op": "DUP1" + }, + "12237": { + "op": "PUSH1", + "value": "0x0" + }, + "12239": { + "op": "DUP1" + }, + "12240": { + "op": "PUSH1", + "value": "0x0" + }, + "12242": { + "op": "DUP1" + }, + "12243": { + "op": "PUSH1", + "value": "0x0" + }, + "12245": { + "op": "DUP1" + }, + "12246": { + "op": "PUSH1", + "value": "0xA0" + }, + "12248": { + "op": "DUP10" + }, + "12249": { + "op": "DUP12" + }, + "12250": { + "op": "SUB" + }, + "12251": { + "op": "SLT" + }, + "12252": { + "op": "ISZERO" + }, + "12253": { + "op": "PUSH2", + "value": "0x2FE4" + }, + "12256": { + "op": "JUMPI" + }, + "12257": { + "op": "DUP4" + }, + "12258": { + "op": "DUP5" + }, + "12259": { + "op": "REVERT" + }, + "12260": { + "op": "JUMPDEST" + }, + "12261": { + "op": "DUP9" + }, + "12262": { + "op": "CALLDATALOAD" + }, + "12263": { + "op": "PUSH2", + "value": "0x2FEF" + }, + "12266": { + "op": "DUP2" + }, + "12267": { + "op": "PUSH2", + "value": "0x3841" + }, + "12270": { + "jump": "i", + "op": "JUMP" + }, + "12271": { + "op": "JUMPDEST" + }, + "12272": { + "op": "SWAP8" + }, + "12273": { + "op": "POP" + }, + "12274": { + "op": "PUSH1", + "value": "0x20" + }, + "12276": { + "op": "DUP10" + }, + "12277": { + "op": "ADD" + }, + "12278": { + "op": "CALLDATALOAD" + }, + "12279": { + "op": "PUSH2", + "value": "0x2FFF" + }, + "12282": { + "op": "DUP2" + }, + "12283": { + "op": "PUSH2", + "value": "0x3841" + }, + "12286": { + "jump": "i", + "op": "JUMP" + }, + "12287": { + "op": "JUMPDEST" + }, + "12288": { + "op": "SWAP7" + }, + "12289": { + "op": "POP" + }, + "12290": { + "op": "PUSH1", + "value": "0x40" + }, + "12292": { + "op": "DUP10" + }, + "12293": { + "op": "ADD" + }, + "12294": { + "op": "CALLDATALOAD" + }, + "12295": { + "op": "PUSH1", + "value": "0x1" + }, + "12297": { + "op": "PUSH1", + "value": "0x1" + }, + "12299": { + "op": "PUSH1", + "value": "0x40" + }, + "12301": { + "op": "SHL" + }, + "12302": { + "op": "SUB" + }, + "12303": { + "op": "DUP1" + }, + "12304": { + "op": "DUP3" + }, + "12305": { + "op": "GT" + }, + "12306": { + "op": "ISZERO" + }, + "12307": { + "op": "PUSH2", + "value": "0x301A" + }, + "12310": { + "op": "JUMPI" + }, + "12311": { + "op": "DUP6" + }, + "12312": { + "op": "DUP7" + }, + "12313": { + "op": "REVERT" + }, + "12314": { + "op": "JUMPDEST" + }, + "12315": { + "op": "PUSH2", + "value": "0x3026" + }, + "12318": { + "op": "DUP13" + }, + "12319": { + "op": "DUP4" + }, + "12320": { + "op": "DUP14" + }, + "12321": { + "op": "ADD" + }, + "12322": { + "op": "PUSH2", + "value": "0x2EC7" + }, + "12325": { + "jump": "i", + "op": "JUMP" + }, + "12326": { + "op": "JUMPDEST" + }, + "12327": { + "op": "SWAP1" + }, + "12328": { + "op": "SWAP9" + }, + "12329": { + "op": "POP" + }, + "12330": { + "op": "SWAP7" + }, + "12331": { + "op": "POP" + }, + "12332": { + "op": "PUSH1", + "value": "0x60" + }, + "12334": { + "op": "DUP12" + }, + "12335": { + "op": "ADD" + }, + "12336": { + "op": "CALLDATALOAD" + }, + "12337": { + "op": "SWAP2" + }, + "12338": { + "op": "POP" + }, + "12339": { + "op": "DUP1" + }, + "12340": { + "op": "DUP3" + }, + "12341": { + "op": "GT" + }, + "12342": { + "op": "ISZERO" + }, + "12343": { + "op": "PUSH2", + "value": "0x303E" + }, + "12346": { + "op": "JUMPI" + }, + "12347": { + "op": "DUP6" + }, + "12348": { + "op": "DUP7" + }, + "12349": { + "op": "REVERT" + }, + "12350": { + "op": "JUMPDEST" + }, + "12351": { + "op": "PUSH2", + "value": "0x304A" + }, + "12354": { + "op": "DUP13" + }, + "12355": { + "op": "DUP4" + }, + "12356": { + "op": "DUP14" + }, + "12357": { + "op": "ADD" + }, + "12358": { + "op": "PUSH2", + "value": "0x2EC7" + }, + "12361": { + "jump": "i", + "op": "JUMP" + }, + "12362": { + "op": "JUMPDEST" + }, + "12363": { + "op": "SWAP1" + }, + "12364": { + "op": "SWAP7" + }, + "12365": { + "op": "POP" + }, + "12366": { + "op": "SWAP5" + }, + "12367": { + "op": "POP" + }, + "12368": { + "op": "PUSH1", + "value": "0x80" + }, + "12370": { + "op": "DUP12" + }, + "12371": { + "op": "ADD" + }, + "12372": { + "op": "CALLDATALOAD" + }, + "12373": { + "op": "SWAP2" + }, + "12374": { + "op": "POP" + }, + "12375": { + "op": "DUP1" + }, + "12376": { + "op": "DUP3" + }, + "12377": { + "op": "GT" + }, + "12378": { + "op": "ISZERO" + }, + "12379": { + "op": "PUSH2", + "value": "0x3062" + }, + "12382": { + "op": "JUMPI" + }, + "12383": { + "op": "DUP4" + }, + "12384": { + "op": "DUP5" + }, + "12385": { + "op": "REVERT" + }, + "12386": { + "op": "JUMPDEST" + }, + "12387": { + "op": "POP" + }, + "12388": { + "op": "PUSH2", + "value": "0x306F" + }, + "12391": { + "op": "DUP12" + }, + "12392": { + "op": "DUP3" + }, + "12393": { + "op": "DUP13" + }, + "12394": { + "op": "ADD" + }, + "12395": { + "op": "PUSH2", + "value": "0x2F20" + }, + "12398": { + "jump": "i", + "op": "JUMP" + }, + "12399": { + "op": "JUMPDEST" + }, + "12400": { + "op": "SWAP10" + }, + "12401": { + "op": "SWAP13" + }, + "12402": { + "op": "SWAP9" + }, + "12403": { + "op": "SWAP12" + }, + "12404": { + "op": "POP" + }, + "12405": { + "op": "SWAP7" + }, + "12406": { + "op": "SWAP10" + }, + "12407": { + "op": "POP" + }, + "12408": { + "op": "SWAP5" + }, + "12409": { + "op": "SWAP8" + }, + "12410": { + "op": "SWAP4" + }, + "12411": { + "op": "SWAP7" + }, + "12412": { + "op": "SWAP3" + }, + "12413": { + "op": "SWAP6" + }, + "12414": { + "op": "SWAP5" + }, + "12415": { + "op": "POP" + }, + "12416": { + "op": "POP" + }, + "12417": { + "op": "POP" + }, + "12418": { + "jump": "o", + "op": "JUMP" + }, + "12419": { + "op": "JUMPDEST" + }, + "12420": { + "op": "PUSH1", + "value": "0x0" + }, + "12422": { + "op": "DUP1" + }, + "12423": { + "op": "PUSH1", + "value": "0x0" + }, + "12425": { + "op": "DUP1" + }, + "12426": { + "op": "PUSH1", + "value": "0x0" + }, + "12428": { + "op": "DUP1" + }, + "12429": { + "op": "PUSH1", + "value": "0xA0" + }, + "12431": { + "op": "DUP8" + }, + "12432": { + "op": "DUP10" + }, + "12433": { + "op": "SUB" + }, + "12434": { + "op": "SLT" + }, + "12435": { + "op": "ISZERO" + }, + "12436": { + "op": "PUSH2", + "value": "0x309B" + }, + "12439": { + "op": "JUMPI" + }, + "12440": { + "op": "DUP2" + }, + "12441": { + "op": "DUP3" + }, + "12442": { + "op": "REVERT" + }, + "12443": { + "op": "JUMPDEST" + }, + "12444": { + "op": "DUP7" + }, + "12445": { + "op": "CALLDATALOAD" + }, + "12446": { + "op": "PUSH2", + "value": "0x30A6" + }, + "12449": { + "op": "DUP2" + }, + "12450": { + "op": "PUSH2", + "value": "0x3841" + }, + "12453": { + "jump": "i", + "op": "JUMP" + }, + "12454": { + "op": "JUMPDEST" + }, + "12455": { + "op": "SWAP6" + }, + "12456": { + "op": "POP" + }, + "12457": { + "op": "PUSH1", + "value": "0x20" + }, + "12459": { + "op": "DUP8" + }, + "12460": { + "op": "ADD" + }, + "12461": { + "op": "CALLDATALOAD" + }, + "12462": { + "op": "PUSH2", + "value": "0x30B6" + }, + "12465": { + "op": "DUP2" + }, + "12466": { + "op": "PUSH2", + "value": "0x3841" + }, + "12469": { + "jump": "i", + "op": "JUMP" + }, + "12470": { + "op": "JUMPDEST" + }, + "12471": { + "op": "SWAP5" + }, + "12472": { + "op": "POP" + }, + "12473": { + "op": "PUSH1", + "value": "0x40" + }, + "12475": { + "op": "DUP8" + }, + "12476": { + "op": "ADD" + }, + "12477": { + "op": "CALLDATALOAD" + }, + "12478": { + "op": "SWAP4" + }, + "12479": { + "op": "POP" + }, + "12480": { + "op": "PUSH1", + "value": "0x60" + }, + "12482": { + "op": "DUP8" + }, + "12483": { + "op": "ADD" + }, + "12484": { + "op": "CALLDATALOAD" + }, + "12485": { + "op": "SWAP3" + }, + "12486": { + "op": "POP" + }, + "12487": { + "op": "PUSH1", + "value": "0x80" + }, + "12489": { + "op": "DUP8" + }, + "12490": { + "op": "ADD" + }, + "12491": { + "op": "CALLDATALOAD" + }, + "12492": { + "op": "PUSH1", + "value": "0x1" + }, + "12494": { + "op": "PUSH1", + "value": "0x1" + }, + "12496": { + "op": "PUSH1", + "value": "0x40" + }, + "12498": { + "op": "SHL" + }, + "12499": { + "op": "SUB" + }, + "12500": { + "op": "DUP2" + }, + "12501": { + "op": "GT" + }, + "12502": { + "op": "ISZERO" + }, + "12503": { + "op": "PUSH2", + "value": "0x30DE" + }, + "12506": { + "op": "JUMPI" + }, + "12507": { + "op": "DUP3" + }, + "12508": { + "op": "DUP4" + }, + "12509": { + "op": "REVERT" + }, + "12510": { + "op": "JUMPDEST" + }, + "12511": { + "op": "PUSH2", + "value": "0x30EA" + }, + "12514": { + "op": "DUP10" + }, + "12515": { + "op": "DUP3" + }, + "12516": { + "op": "DUP11" + }, + "12517": { + "op": "ADD" + }, + "12518": { + "op": "PUSH2", + "value": "0x2F20" + }, + "12521": { + "jump": "i", + "op": "JUMP" + }, + "12522": { + "op": "JUMPDEST" + }, + "12523": { + "op": "SWAP8" + }, + "12524": { + "op": "SWAP11" + }, + "12525": { + "op": "SWAP7" + }, + "12526": { + "op": "SWAP10" + }, + "12527": { + "op": "POP" + }, + "12528": { + "op": "SWAP5" + }, + "12529": { + "op": "SWAP8" + }, + "12530": { + "op": "POP" + }, + "12531": { + "op": "SWAP3" + }, + "12532": { + "op": "SWAP6" + }, + "12533": { + "op": "SWAP4" + }, + "12534": { + "op": "SWAP5" + }, + "12535": { + "op": "SWAP3" + }, + "12536": { + "op": "POP" + }, + "12537": { + "op": "POP" + }, + "12538": { + "op": "POP" + }, + "12539": { + "jump": "o", + "op": "JUMP" + }, + "12540": { + "op": "JUMPDEST" + }, + "12541": { + "op": "PUSH1", + "value": "0x0" + }, + "12543": { + "op": "DUP1" + }, + "12544": { + "op": "PUSH1", + "value": "0x40" + }, + "12546": { + "op": "DUP4" + }, + "12547": { + "op": "DUP6" + }, + "12548": { + "op": "SUB" + }, + "12549": { + "op": "SLT" + }, + "12550": { + "op": "ISZERO" + }, + "12551": { + "op": "PUSH2", + "value": "0x310E" + }, + "12554": { + "op": "JUMPI" + }, + "12555": { + "op": "DUP2" + }, + "12556": { + "op": "DUP3" + }, + "12557": { + "op": "REVERT" + }, + "12558": { + "op": "JUMPDEST" + }, + "12559": { + "op": "DUP3" + }, + "12560": { + "op": "CALLDATALOAD" + }, + "12561": { + "op": "PUSH2", + "value": "0x3119" + }, + "12564": { + "op": "DUP2" + }, + "12565": { + "op": "PUSH2", + "value": "0x3841" + }, + "12568": { + "jump": "i", + "op": "JUMP" + }, + "12569": { + "op": "JUMPDEST" + }, + "12570": { + "op": "SWAP2" + }, + "12571": { + "op": "POP" + }, + "12572": { + "op": "PUSH1", + "value": "0x20" + }, + "12574": { + "op": "DUP4" + }, + "12575": { + "op": "ADD" + }, + "12576": { + "op": "CALLDATALOAD" + }, + "12577": { + "op": "DUP1" + }, + "12578": { + "op": "ISZERO" + }, + "12579": { + "op": "ISZERO" + }, + "12580": { + "op": "DUP2" + }, + "12581": { + "op": "EQ" + }, + "12582": { + "op": "PUSH2", + "value": "0x2FBE" + }, + "12585": { + "op": "JUMPI" + }, + "12586": { + "op": "DUP2" + }, + "12587": { + "op": "DUP3" + }, + "12588": { + "op": "REVERT" + }, + "12589": { + "op": "JUMPDEST" + }, + "12590": { + "op": "PUSH1", + "value": "0x0" + }, + "12592": { + "op": "DUP1" + }, + "12593": { + "op": "PUSH1", + "value": "0x40" + }, + "12595": { + "op": "DUP4" + }, + "12596": { + "op": "DUP6" + }, + "12597": { + "op": "SUB" + }, + "12598": { + "op": "SLT" + }, + "12599": { + "op": "ISZERO" + }, + "12600": { + "op": "PUSH2", + "value": "0x313F" + }, + "12603": { + "op": "JUMPI" + }, + "12604": { + "op": "DUP2" + }, + "12605": { + "op": "DUP3" + }, + "12606": { + "op": "REVERT" + }, + "12607": { + "op": "JUMPDEST" + }, + "12608": { + "op": "DUP3" + }, + "12609": { + "op": "CALLDATALOAD" + }, + "12610": { + "op": "PUSH2", + "value": "0x314A" + }, + "12613": { + "op": "DUP2" + }, + "12614": { + "op": "PUSH2", + "value": "0x3841" + }, + "12617": { + "jump": "i", + "op": "JUMP" + }, + "12618": { + "op": "JUMPDEST" + }, + "12619": { + "op": "SWAP5" + }, + "12620": { + "op": "PUSH1", + "value": "0x20" + }, + "12622": { + "op": "SWAP4" + }, + "12623": { + "op": "SWAP1" + }, + "12624": { + "op": "SWAP4" + }, + "12625": { + "op": "ADD" + }, + "12626": { + "op": "CALLDATALOAD" + }, + "12627": { + "op": "SWAP4" + }, + "12628": { + "op": "POP" + }, + "12629": { + "op": "POP" + }, + "12630": { + "op": "POP" + }, + "12631": { + "jump": "o", + "op": "JUMP" + }, + "12632": { + "op": "JUMPDEST" + }, + "12633": { + "op": "PUSH1", + "value": "0x0" + }, + "12635": { + "op": "DUP1" + }, + "12636": { + "op": "PUSH1", + "value": "0x0" + }, + "12638": { + "op": "DUP1" + }, + "12639": { + "op": "PUSH1", + "value": "0x40" + }, + "12641": { + "op": "DUP6" + }, + "12642": { + "op": "DUP8" + }, + "12643": { + "op": "SUB" + }, + "12644": { + "op": "SLT" + }, + "12645": { + "op": "ISZERO" + }, + "12646": { + "op": "PUSH2", + "value": "0x316D" + }, + "12649": { + "op": "JUMPI" + }, + "12650": { + "op": "DUP2" + }, + "12651": { + "op": "DUP3" + }, + "12652": { + "op": "REVERT" + }, + "12653": { + "op": "JUMPDEST" + }, + "12654": { + "op": "DUP5" + }, + "12655": { + "op": "CALLDATALOAD" + }, + "12656": { + "op": "PUSH1", + "value": "0x1" + }, + "12658": { + "op": "PUSH1", + "value": "0x1" + }, + "12660": { + "op": "PUSH1", + "value": "0x40" + }, + "12662": { + "op": "SHL" + }, + "12663": { + "op": "SUB" + }, + "12664": { + "op": "DUP1" + }, + "12665": { + "op": "DUP3" + }, + "12666": { + "op": "GT" + }, + "12667": { + "op": "ISZERO" + }, + "12668": { + "op": "PUSH2", + "value": "0x3183" + }, + "12671": { + "op": "JUMPI" + }, + "12672": { + "op": "DUP4" + }, + "12673": { + "op": "DUP5" + }, + "12674": { + "op": "REVERT" + }, + "12675": { + "op": "JUMPDEST" + }, + "12676": { + "op": "PUSH2", + "value": "0x318F" + }, + "12679": { + "op": "DUP9" + }, + "12680": { + "op": "DUP4" + }, + "12681": { + "op": "DUP10" + }, + "12682": { + "op": "ADD" + }, + "12683": { + "op": "PUSH2", + "value": "0x2EC7" + }, + "12686": { + "jump": "i", + "op": "JUMP" + }, + "12687": { + "op": "JUMPDEST" + }, + "12688": { + "op": "SWAP1" + }, + "12689": { + "op": "SWAP7" + }, + "12690": { + "op": "POP" + }, + "12691": { + "op": "SWAP5" + }, + "12692": { + "op": "POP" + }, + "12693": { + "op": "PUSH1", + "value": "0x20" + }, + "12695": { + "op": "DUP8" + }, + "12696": { + "op": "ADD" + }, + "12697": { + "op": "CALLDATALOAD" + }, + "12698": { + "op": "SWAP2" + }, + "12699": { + "op": "POP" + }, + "12700": { + "op": "DUP1" + }, + "12701": { + "op": "DUP3" + }, + "12702": { + "op": "GT" + }, + "12703": { + "op": "ISZERO" + }, + "12704": { + "op": "PUSH2", + "value": "0x31A7" + }, + "12707": { + "op": "JUMPI" + }, + "12708": { + "op": "DUP4" + }, + "12709": { + "op": "DUP5" + }, + "12710": { + "op": "REVERT" + }, + "12711": { + "op": "JUMPDEST" + }, + "12712": { + "op": "POP" + }, + "12713": { + "op": "PUSH2", + "value": "0x31B4" + }, + "12716": { + "op": "DUP8" + }, + "12717": { + "op": "DUP3" + }, + "12718": { + "op": "DUP9" + }, + "12719": { + "op": "ADD" + }, + "12720": { + "op": "PUSH2", + "value": "0x2EC7" + }, + "12723": { + "jump": "i", + "op": "JUMP" + }, + "12724": { + "op": "JUMPDEST" + }, + "12725": { + "op": "SWAP6" + }, + "12726": { + "op": "SWAP9" + }, + "12727": { + "op": "SWAP5" + }, + "12728": { + "op": "SWAP8" + }, + "12729": { + "op": "POP" + }, + "12730": { + "op": "SWAP6" + }, + "12731": { + "op": "POP" + }, + "12732": { + "op": "POP" + }, + "12733": { + "op": "POP" + }, + "12734": { + "op": "POP" + }, + "12735": { + "jump": "o", + "op": "JUMP" + }, + "12736": { + "op": "JUMPDEST" + }, + "12737": { + "op": "PUSH1", + "value": "0x0" + }, + "12739": { + "op": "PUSH1", + "value": "0x20" + }, + "12741": { + "op": "DUP3" + }, + "12742": { + "op": "DUP5" + }, + "12743": { + "op": "SUB" + }, + "12744": { + "op": "SLT" + }, + "12745": { + "op": "ISZERO" + }, + "12746": { + "op": "PUSH2", + "value": "0x31D1" + }, + "12749": { + "op": "JUMPI" + }, + "12750": { + "op": "DUP1" + }, + "12751": { + "op": "DUP2" + }, + "12752": { + "op": "REVERT" + }, + "12753": { + "op": "JUMPDEST" + }, + "12754": { + "op": "POP" + }, + "12755": { + "op": "CALLDATALOAD" + }, + "12756": { + "op": "SWAP2" + }, + "12757": { + "op": "SWAP1" + }, + "12758": { + "op": "POP" + }, + "12759": { + "jump": "o", + "op": "JUMP" + }, + "12760": { + "op": "JUMPDEST" + }, + "12761": { + "op": "PUSH1", + "value": "0x0" + }, + "12763": { + "op": "PUSH1", + "value": "0x20" + }, + "12765": { + "op": "DUP3" + }, + "12766": { + "op": "DUP5" + }, + "12767": { + "op": "SUB" + }, + "12768": { + "op": "SLT" + }, + "12769": { + "op": "ISZERO" + }, + "12770": { + "op": "PUSH2", + "value": "0x31E9" + }, + "12773": { + "op": "JUMPI" + }, + "12774": { + "op": "DUP1" + }, + "12775": { + "op": "DUP2" + }, + "12776": { + "op": "REVERT" + }, + "12777": { + "op": "JUMPDEST" + }, + "12778": { + "op": "DUP2" + }, + "12779": { + "op": "CALLDATALOAD" + }, + "12780": { + "op": "PUSH2", + "value": "0x653" + }, + "12783": { + "op": "DUP2" + }, + "12784": { + "op": "PUSH2", + "value": "0x3859" + }, + "12787": { + "jump": "i", + "op": "JUMP" + }, + "12788": { + "op": "JUMPDEST" + }, + "12789": { + "op": "PUSH1", + "value": "0x0" + }, + "12791": { + "op": "PUSH1", + "value": "0x20" + }, + "12793": { + "op": "DUP3" + }, + "12794": { + "op": "DUP5" + }, + "12795": { + "op": "SUB" + }, + "12796": { + "op": "SLT" + }, + "12797": { + "op": "ISZERO" + }, + "12798": { + "op": "PUSH2", + "value": "0x3205" + }, + "12801": { + "op": "JUMPI" + }, + "12802": { + "op": "DUP1" + }, + "12803": { + "op": "DUP2" + }, + "12804": { + "op": "REVERT" + }, + "12805": { + "op": "JUMPDEST" + }, + "12806": { + "op": "DUP2" + }, + "12807": { + "op": "MLOAD" + }, + "12808": { + "op": "PUSH2", + "value": "0x653" + }, + "12811": { + "op": "DUP2" + }, + "12812": { + "op": "PUSH2", + "value": "0x3859" + }, + "12815": { + "jump": "i", + "op": "JUMP" + }, + "12816": { + "op": "JUMPDEST" + }, + "12817": { + "op": "PUSH1", + "value": "0x0" + }, + "12819": { + "op": "PUSH1", + "value": "0x20" + }, + "12821": { + "op": "DUP3" + }, + "12822": { + "op": "DUP5" + }, + "12823": { + "op": "SUB" + }, + "12824": { + "op": "SLT" + }, + "12825": { + "op": "ISZERO" + }, + "12826": { + "op": "PUSH2", + "value": "0x3221" + }, + "12829": { + "op": "JUMPI" + }, + "12830": { + "op": "DUP1" + }, + "12831": { + "op": "DUP2" + }, + "12832": { + "op": "REVERT" + }, + "12833": { + "op": "JUMPDEST" + }, + "12834": { + "op": "DUP2" + }, + "12835": { + "op": "MLOAD" + }, + "12836": { + "op": "PUSH1", + "value": "0x1" + }, + "12838": { + "op": "PUSH1", + "value": "0x1" + }, + "12840": { + "op": "PUSH1", + "value": "0x40" + }, + "12842": { + "op": "SHL" + }, + "12843": { + "op": "SUB" + }, + "12844": { + "op": "DUP1" + }, + "12845": { + "op": "DUP3" + }, + "12846": { + "op": "GT" + }, + "12847": { + "op": "ISZERO" + }, + "12848": { + "op": "PUSH2", + "value": "0x3237" + }, + "12851": { + "op": "JUMPI" + }, + "12852": { + "op": "DUP3" + }, + "12853": { + "op": "DUP4" + }, + "12854": { + "op": "REVERT" + }, + "12855": { + "op": "JUMPDEST" + }, + "12856": { + "op": "DUP2" + }, + "12857": { + "op": "DUP5" + }, + "12858": { + "op": "ADD" + }, + "12859": { + "op": "SWAP2" + }, + "12860": { + "op": "POP" + }, + "12861": { + "op": "DUP5" + }, + "12862": { + "op": "PUSH1", + "value": "0x1F" + }, + "12864": { + "op": "DUP4" + }, + "12865": { + "op": "ADD" + }, + "12866": { + "op": "SLT" + }, + "12867": { + "op": "PUSH2", + "value": "0x324A" + }, + "12870": { + "op": "JUMPI" + }, + "12871": { + "op": "DUP3" + }, + "12872": { + "op": "DUP4" + }, + "12873": { + "op": "REVERT" + }, + "12874": { + "op": "JUMPDEST" + }, + "12875": { + "op": "DUP2" + }, + "12876": { + "op": "MLOAD" + }, + "12877": { + "op": "DUP2" + }, + "12878": { + "op": "DUP2" + }, + "12879": { + "op": "GT" + }, + "12880": { + "op": "ISZERO" + }, + "12881": { + "op": "PUSH2", + "value": "0x3256" + }, + "12884": { + "op": "JUMPI" + }, + "12885": { + "op": "INVALID" + }, + "12886": { + "op": "JUMPDEST" + }, + "12887": { + "op": "PUSH1", + "value": "0x40" + }, + "12889": { + "op": "MLOAD" + }, + "12890": { + "op": "PUSH1", + "value": "0x1F" + }, + "12892": { + "op": "DUP3" + }, + "12893": { + "op": "ADD" + }, + "12894": { + "op": "PUSH1", + "value": "0x1F" + }, + "12896": { + "op": "NOT" + }, + "12897": { + "op": "AND" + }, + "12898": { + "op": "DUP2" + }, + "12899": { + "op": "ADD" + }, + "12900": { + "op": "PUSH1", + "value": "0x20" + }, + "12902": { + "op": "ADD" + }, + "12903": { + "op": "DUP4" + }, + "12904": { + "op": "DUP2" + }, + "12905": { + "op": "GT" + }, + "12906": { + "op": "DUP3" + }, + "12907": { + "op": "DUP3" + }, + "12908": { + "op": "LT" + }, + "12909": { + "op": "OR" + }, + "12910": { + "op": "ISZERO" + }, + "12911": { + "op": "PUSH2", + "value": "0x3274" + }, + "12914": { + "op": "JUMPI" + }, + "12915": { + "op": "INVALID" + }, + "12916": { + "op": "JUMPDEST" + }, + "12917": { + "op": "PUSH1", + "value": "0x40" + }, + "12919": { + "op": "MSTORE" + }, + "12920": { + "op": "DUP2" + }, + "12921": { + "op": "DUP2" + }, + "12922": { + "op": "MSTORE" + }, + "12923": { + "op": "DUP4" + }, + "12924": { + "op": "DUP3" + }, + "12925": { + "op": "ADD" + }, + "12926": { + "op": "PUSH1", + "value": "0x20" + }, + "12928": { + "op": "ADD" + }, + "12929": { + "op": "DUP8" + }, + "12930": { + "op": "LT" + }, + "12931": { + "op": "ISZERO" + }, + "12932": { + "op": "PUSH2", + "value": "0x328B" + }, + "12935": { + "op": "JUMPI" + }, + "12936": { + "op": "DUP5" + }, + "12937": { + "op": "DUP6" + }, + "12938": { + "op": "REVERT" + }, + "12939": { + "op": "JUMPDEST" + }, + "12940": { + "op": "PUSH2", + "value": "0x329C" + }, + "12943": { + "op": "DUP3" + }, + "12944": { + "op": "PUSH1", + "value": "0x20" + }, + "12946": { + "op": "DUP4" + }, + "12947": { + "op": "ADD" + }, + "12948": { + "op": "PUSH1", + "value": "0x20" + }, + "12950": { + "op": "DUP8" + }, + "12951": { + "op": "ADD" + }, + "12952": { + "op": "PUSH2", + "value": "0x3815" + }, + "12955": { + "jump": "i", + "op": "JUMP" + }, + "12956": { + "op": "JUMPDEST" + }, + "12957": { + "op": "SWAP7" + }, + "12958": { + "op": "SWAP6" + }, + "12959": { + "op": "POP" + }, + "12960": { + "op": "POP" + }, + "12961": { + "op": "POP" + }, + "12962": { + "op": "POP" + }, + "12963": { + "op": "POP" + }, + "12964": { + "op": "POP" + }, + "12965": { + "jump": "o", + "op": "JUMP" + }, + "12966": { + "op": "JUMPDEST" + }, + "12967": { + "op": "PUSH1", + "value": "0x0" + }, + "12969": { + "op": "PUSH1", + "value": "0xA0" + }, + "12971": { + "op": "DUP3" + }, + "12972": { + "op": "DUP5" + }, + "12973": { + "op": "SUB" + }, + "12974": { + "op": "SLT" + }, + "12975": { + "op": "ISZERO" + }, + "12976": { + "op": "PUSH2", + "value": "0x32B7" + }, + "12979": { + "op": "JUMPI" + }, + "12980": { + "op": "DUP1" + }, + "12981": { + "op": "DUP2" + }, + "12982": { + "op": "REVERT" + }, + "12983": { + "op": "JUMPDEST" + }, + "12984": { + "op": "PUSH1", + "value": "0x40" + }, + "12986": { + "op": "MLOAD" + }, + "12987": { + "op": "PUSH1", + "value": "0xA0" + }, + "12989": { + "op": "DUP2" + }, + "12990": { + "op": "ADD" + }, + "12991": { + "op": "DUP2" + }, + "12992": { + "op": "DUP2" + }, + "12993": { + "op": "LT" + }, + "12994": { + "op": "PUSH1", + "value": "0x1" + }, + "12996": { + "op": "PUSH1", + "value": "0x1" + }, + "12998": { + "op": "PUSH1", + "value": "0x40" + }, + "13000": { + "op": "SHL" + }, + "13001": { + "op": "SUB" + }, + "13002": { + "op": "DUP3" + }, + "13003": { + "op": "GT" + }, + "13004": { + "op": "OR" + }, + "13005": { + "op": "ISZERO" + }, + "13006": { + "op": "PUSH2", + "value": "0x32D3" + }, + "13009": { + "op": "JUMPI" + }, + "13010": { + "op": "INVALID" + }, + "13011": { + "op": "JUMPDEST" + }, + "13012": { + "op": "PUSH1", + "value": "0x40" + }, + "13014": { + "op": "MSTORE" + }, + "13015": { + "op": "DUP3" + }, + "13016": { + "op": "MLOAD" + }, + "13017": { + "op": "PUSH2", + "value": "0x32E1" + }, + "13020": { + "op": "DUP2" + }, + "13021": { + "op": "PUSH2", + "value": "0x387F" + }, + "13024": { + "jump": "i", + "op": "JUMP" + }, + "13025": { + "op": "JUMPDEST" + }, + "13026": { + "op": "DUP2" + }, + "13027": { + "op": "MSTORE" + }, + "13028": { + "op": "PUSH1", + "value": "0x20" + }, + "13030": { + "op": "DUP4" + }, + "13031": { + "op": "ADD" + }, + "13032": { + "op": "MLOAD" + }, + "13033": { + "op": "PUSH1", + "value": "0x1" + }, + "13035": { + "op": "PUSH1", + "value": "0x1" + }, + "13037": { + "op": "PUSH1", + "value": "0xF8" + }, + "13039": { + "op": "SHL" + }, + "13040": { + "op": "SUB" + }, + "13041": { + "op": "NOT" + }, + "13042": { + "op": "DUP2" + }, + "13043": { + "op": "AND" + }, + "13044": { + "op": "DUP2" + }, + "13045": { + "op": "EQ" + }, + "13046": { + "op": "PUSH2", + "value": "0x32FD" + }, + "13049": { + "op": "JUMPI" + }, + "13050": { + "op": "DUP3" + }, + "13051": { + "op": "DUP4" + }, + "13052": { + "op": "REVERT" + }, + "13053": { + "op": "JUMPDEST" + }, + "13054": { + "op": "PUSH1", + "value": "0x20" + }, + "13056": { + "op": "DUP3" + }, + "13057": { + "op": "ADD" + }, + "13058": { + "op": "MSTORE" + }, + "13059": { + "op": "PUSH2", + "value": "0x330E" + }, + "13062": { + "op": "PUSH1", + "value": "0x40" + }, + "13064": { + "op": "DUP5" + }, + "13065": { + "op": "ADD" + }, + "13066": { + "op": "PUSH2", + "value": "0x2F6A" + }, + "13069": { + "jump": "i", + "op": "JUMP" + }, + "13070": { + "op": "JUMPDEST" + }, + "13071": { + "op": "PUSH1", + "value": "0x40" + }, + "13073": { + "op": "DUP3" + }, + "13074": { + "op": "ADD" + }, + "13075": { + "op": "MSTORE" + }, + "13076": { + "op": "PUSH2", + "value": "0x331F" + }, + "13079": { + "op": "PUSH1", + "value": "0x60" + }, + "13081": { + "op": "DUP5" + }, + "13082": { + "op": "ADD" + }, + "13083": { + "op": "PUSH2", + "value": "0x2F5F" + }, + "13086": { + "jump": "i", + "op": "JUMP" + }, + "13087": { + "op": "JUMPDEST" + }, + "13088": { + "op": "PUSH1", + "value": "0x60" + }, + "13090": { + "op": "DUP3" + }, + "13091": { + "op": "ADD" + }, + "13092": { + "op": "MSTORE" + }, + "13093": { + "op": "PUSH2", + "value": "0x3330" + }, + "13096": { + "op": "PUSH1", + "value": "0x80" + }, + "13098": { + "op": "DUP5" + }, + "13099": { + "op": "ADD" + }, + "13100": { + "op": "PUSH2", + "value": "0x2F08" + }, + "13103": { + "jump": "i", + "op": "JUMP" + }, + "13104": { + "op": "JUMPDEST" + }, + "13105": { + "op": "PUSH1", + "value": "0x80" + }, + "13107": { + "op": "DUP3" + }, + "13108": { + "op": "ADD" + }, + "13109": { + "op": "MSTORE" + }, + "13110": { + "op": "SWAP4" + }, + "13111": { + "op": "SWAP3" + }, + "13112": { + "op": "POP" + }, + "13113": { + "op": "POP" + }, + "13114": { + "op": "POP" + }, + "13115": { + "jump": "o", + "op": "JUMP" + }, + "13116": { + "op": "JUMPDEST" + }, + "13117": { + "op": "PUSH1", + "value": "0x0" + }, + "13119": { + "op": "DUP1" + }, + "13120": { + "op": "PUSH1", + "value": "0x0" + }, + "13122": { + "op": "PUSH1", + "value": "0x60" + }, + "13124": { + "op": "DUP5" + }, + "13125": { + "op": "DUP7" + }, + "13126": { + "op": "SUB" + }, + "13127": { + "op": "SLT" + }, + "13128": { + "op": "ISZERO" + }, + "13129": { + "op": "PUSH2", + "value": "0x3350" + }, + "13132": { + "op": "JUMPI" + }, + "13133": { + "op": "DUP1" + }, + "13134": { + "op": "DUP2" + }, + "13135": { + "op": "REVERT" + }, + "13136": { + "op": "JUMPDEST" + }, + "13137": { + "op": "DUP4" + }, + "13138": { + "op": "CALLDATALOAD" + }, + "13139": { + "op": "PUSH2", + "value": "0x335B" + }, + "13142": { + "op": "DUP2" + }, + "13143": { + "op": "PUSH2", + "value": "0x386F" + }, + "13146": { + "jump": "i", + "op": "JUMP" + }, + "13147": { + "op": "JUMPDEST" + }, + "13148": { + "op": "SWAP3" + }, + "13149": { + "op": "POP" + }, + "13150": { + "op": "PUSH1", + "value": "0x20" + }, + "13152": { + "op": "DUP5" + }, + "13153": { + "op": "ADD" + }, + "13154": { + "op": "CALLDATALOAD" + }, + "13155": { + "op": "PUSH2", + "value": "0x336B" + }, + "13158": { + "op": "DUP2" + }, + "13159": { + "op": "PUSH2", + "value": "0x387F" + }, + "13162": { + "jump": "i", + "op": "JUMP" + }, + "13163": { + "op": "JUMPDEST" + }, + "13164": { + "op": "SWAP2" + }, + "13165": { + "op": "POP" + }, + "13166": { + "op": "PUSH1", + "value": "0x40" + }, + "13168": { + "op": "DUP5" + }, + "13169": { + "op": "ADD" + }, + "13170": { + "op": "CALLDATALOAD" + }, + "13171": { + "op": "PUSH2", + "value": "0x337B" + }, + "13174": { + "op": "DUP2" + }, + "13175": { + "op": "PUSH2", + "value": "0x3892" + }, + "13178": { + "jump": "i", + "op": "JUMP" + }, + "13179": { + "op": "JUMPDEST" + }, + "13180": { + "op": "DUP1" + }, + "13181": { + "op": "SWAP2" + }, + "13182": { + "op": "POP" + }, + "13183": { + "op": "POP" + }, + "13184": { + "op": "SWAP3" + }, + "13185": { + "op": "POP" + }, + "13186": { + "op": "SWAP3" + }, + "13187": { + "op": "POP" + }, + "13188": { + "op": "SWAP3" + }, + "13189": { + "jump": "o", + "op": "JUMP" + }, + "13190": { + "op": "JUMPDEST" + }, + "13191": { + "op": "DUP2" + }, + "13192": { + "op": "DUP4" + }, + "13193": { + "op": "MSTORE" + }, + "13194": { + "op": "PUSH1", + "value": "0x0" + }, + "13196": { + "op": "PUSH1", + "value": "0x1" + }, + "13198": { + "op": "PUSH1", + "value": "0x1" + }, + "13200": { + "op": "PUSH1", + "value": "0xFB" + }, + "13202": { + "op": "SHL" + }, + "13203": { + "op": "SUB" + }, + "13204": { + "op": "DUP4" + }, + "13205": { + "op": "GT" + }, + "13206": { + "op": "ISZERO" + }, + "13207": { + "op": "PUSH2", + "value": "0x339E" + }, + "13210": { + "op": "JUMPI" + }, + "13211": { + "op": "DUP1" + }, + "13212": { + "op": "DUP2" + }, + "13213": { + "op": "REVERT" + }, + "13214": { + "op": "JUMPDEST" + }, + "13215": { + "op": "PUSH1", + "value": "0x20" + }, + "13217": { + "op": "DUP4" + }, + "13218": { + "op": "MUL" + }, + "13219": { + "op": "DUP1" + }, + "13220": { + "op": "DUP4" + }, + "13221": { + "op": "PUSH1", + "value": "0x20" + }, + "13223": { + "op": "DUP8" + }, + "13224": { + "op": "ADD" + }, + "13225": { + "op": "CALLDATACOPY" + }, + "13226": { + "op": "SWAP4" + }, + "13227": { + "op": "SWAP1" + }, + "13228": { + "op": "SWAP4" + }, + "13229": { + "op": "ADD" + }, + "13230": { + "op": "PUSH1", + "value": "0x20" + }, + "13232": { + "op": "ADD" + }, + "13233": { + "op": "SWAP3" + }, + "13234": { + "op": "DUP4" + }, + "13235": { + "op": "MSTORE" + }, + "13236": { + "op": "POP" + }, + "13237": { + "op": "SWAP1" + }, + "13238": { + "op": "SWAP2" + }, + "13239": { + "op": "SWAP1" + }, + "13240": { + "op": "POP" + }, + "13241": { + "jump": "o", + "op": "JUMP" + }, + "13242": { + "op": "JUMPDEST" + }, + "13243": { + "op": "PUSH1", + "value": "0x0" + }, + "13245": { + "op": "DUP3" + }, + "13246": { + "op": "DUP5" + }, + "13247": { + "op": "MSTORE" + }, + "13248": { + "op": "DUP3" + }, + "13249": { + "op": "DUP3" + }, + "13250": { + "op": "PUSH1", + "value": "0x20" + }, + "13252": { + "op": "DUP7" + }, + "13253": { + "op": "ADD" + }, + "13254": { + "op": "CALLDATACOPY" + }, + "13255": { + "op": "DUP1" + }, + "13256": { + "op": "PUSH1", + "value": "0x20" + }, + "13258": { + "op": "DUP5" + }, + "13259": { + "op": "DUP7" + }, + "13260": { + "op": "ADD" + }, + "13261": { + "op": "ADD" + }, + "13262": { + "op": "MSTORE" + }, + "13263": { + "op": "PUSH1", + "value": "0x20" + }, + "13265": { + "op": "PUSH1", + "value": "0x1F" + }, + "13267": { + "op": "NOT" + }, + "13268": { + "op": "PUSH1", + "value": "0x1F" + }, + "13270": { + "op": "DUP6" + }, + "13271": { + "op": "ADD" + }, + "13272": { + "op": "AND" + }, + "13273": { + "op": "DUP6" + }, + "13274": { + "op": "ADD" + }, + "13275": { + "op": "ADD" + }, + "13276": { + "op": "SWAP1" + }, + "13277": { + "op": "POP" + }, + "13278": { + "op": "SWAP4" + }, + "13279": { + "op": "SWAP3" + }, + "13280": { + "op": "POP" + }, + "13281": { + "op": "POP" + }, + "13282": { + "op": "POP" + }, + "13283": { + "jump": "o", + "op": "JUMP" + }, + "13284": { + "op": "JUMPDEST" + }, + "13285": { + "op": "PUSH1", + "value": "0x0" + }, + "13287": { + "op": "DUP3" + }, + "13288": { + "op": "DUP5" + }, + "13289": { + "op": "DUP4" + }, + "13290": { + "op": "CALLDATACOPY" + }, + "13291": { + "op": "SWAP2" + }, + "13292": { + "op": "ADD" + }, + "13293": { + "op": "SWAP1" + }, + "13294": { + "op": "DUP2" + }, + "13295": { + "op": "MSTORE" + }, + "13296": { + "op": "SWAP2" + }, + "13297": { + "op": "SWAP1" + }, + "13298": { + "op": "POP" + }, + "13299": { + "jump": "o", + "op": "JUMP" + }, + "13300": { + "op": "JUMPDEST" + }, + "13301": { + "op": "PUSH1", + "value": "0x1" + }, + "13303": { + "op": "PUSH1", + "value": "0x1" + }, + "13305": { + "op": "PUSH1", + "value": "0xA0" + }, + "13307": { + "op": "SHL" + }, + "13308": { + "op": "SUB" + }, + "13309": { + "op": "SWAP2" + }, + "13310": { + "op": "SWAP1" + }, + "13311": { + "op": "SWAP2" + }, + "13312": { + "op": "AND" + }, + "13313": { + "op": "DUP2" + }, + "13314": { + "op": "MSTORE" + }, + "13315": { + "op": "PUSH1", + "value": "0x20" + }, + "13317": { + "op": "ADD" + }, + "13318": { + "op": "SWAP1" + }, + "13319": { + "jump": "o", + "op": "JUMP" + }, + "13320": { + "op": "JUMPDEST" + }, + "13321": { + "op": "PUSH1", + "value": "0x1" + }, + "13323": { + "op": "PUSH1", + "value": "0x1" + }, + "13325": { + "op": "PUSH1", + "value": "0xA0" + }, + "13327": { + "op": "SHL" + }, + "13328": { + "op": "SUB" + }, + "13329": { + "op": "DUP10" + }, + "13330": { + "op": "DUP2" + }, + "13331": { + "op": "AND" + }, + "13332": { + "op": "DUP3" + }, + "13333": { + "op": "MSTORE" + }, + "13334": { + "op": "DUP9" + }, + "13335": { + "op": "AND" + }, + "13336": { + "op": "PUSH1", + "value": "0x20" + }, + "13338": { + "op": "DUP3" + }, + "13339": { + "op": "ADD" + }, + "13340": { + "op": "MSTORE" + }, + "13341": { + "op": "PUSH1", + "value": "0xA0" + }, + "13343": { + "op": "PUSH1", + "value": "0x40" + }, + "13345": { + "op": "DUP3" + }, + "13346": { + "op": "ADD" + }, + "13347": { + "op": "DUP2" + }, + "13348": { + "op": "SWAP1" + }, + "13349": { + "op": "MSTORE" + }, + "13350": { + "op": "PUSH1", + "value": "0x0" + }, + "13352": { + "op": "SWAP1" + }, + "13353": { + "op": "PUSH2", + "value": "0x3435" + }, + "13356": { + "op": "SWAP1" + }, + "13357": { + "op": "DUP4" + }, + "13358": { + "op": "ADD" + }, + "13359": { + "op": "DUP9" + }, + "13360": { + "op": "DUP11" + }, + "13361": { + "op": "PUSH2", + "value": "0x3386" + }, + "13364": { + "jump": "i", + "op": "JUMP" + }, + "13365": { + "op": "JUMPDEST" + }, + "13366": { + "op": "DUP3" + }, + "13367": { + "op": "DUP2" + }, + "13368": { + "op": "SUB" + }, + "13369": { + "op": "PUSH1", + "value": "0x60" + }, + "13371": { + "op": "DUP5" + }, + "13372": { + "op": "ADD" + }, + "13373": { + "op": "MSTORE" + }, + "13374": { + "op": "PUSH2", + "value": "0x3448" + }, + "13377": { + "op": "DUP2" + }, + "13378": { + "op": "DUP8" + }, + "13379": { + "op": "DUP10" + }, + "13380": { + "op": "PUSH2", + "value": "0x3386" + }, + "13383": { + "jump": "i", + "op": "JUMP" + }, + "13384": { + "op": "JUMPDEST" + }, + "13385": { + "op": "SWAP1" + }, + "13386": { + "op": "POP" + }, + "13387": { + "op": "DUP3" + }, + "13388": { + "op": "DUP2" + }, + "13389": { + "op": "SUB" + }, + "13390": { + "op": "PUSH1", + "value": "0x80" + }, + "13392": { + "op": "DUP5" + }, + "13393": { + "op": "ADD" + }, + "13394": { + "op": "MSTORE" + }, + "13395": { + "op": "PUSH2", + "value": "0x345D" + }, + "13398": { + "op": "DUP2" + }, + "13399": { + "op": "DUP6" + }, + "13400": { + "op": "DUP8" + }, + "13401": { + "op": "PUSH2", + "value": "0x33BA" + }, + "13404": { + "jump": "i", + "op": "JUMP" + }, + "13405": { + "op": "JUMPDEST" + }, + "13406": { + "op": "SWAP12" + }, + "13407": { + "op": "SWAP11" + }, + "13408": { + "op": "POP" + }, + "13409": { + "op": "POP" + }, + "13410": { + "op": "POP" + }, + "13411": { + "op": "POP" + }, + "13412": { + "op": "POP" + }, + "13413": { + "op": "POP" + }, + "13414": { + "op": "POP" + }, + "13415": { + "op": "POP" + }, + "13416": { + "op": "POP" + }, + "13417": { + "op": "POP" + }, + "13418": { + "op": "POP" + }, + "13419": { + "jump": "o", + "op": "JUMP" + }, + "13420": { + "op": "JUMPDEST" + }, + "13421": { + "op": "PUSH1", + "value": "0x1" + }, + "13423": { + "op": "PUSH1", + "value": "0x1" + }, + "13425": { + "op": "PUSH1", + "value": "0xA0" + }, + "13427": { + "op": "SHL" + }, + "13428": { + "op": "SUB" + }, + "13429": { + "op": "DUP8" + }, + "13430": { + "op": "DUP2" + }, + "13431": { + "op": "AND" + }, + "13432": { + "op": "DUP3" + }, + "13433": { + "op": "MSTORE" + }, + "13434": { + "op": "DUP7" + }, + "13435": { + "op": "AND" + }, + "13436": { + "op": "PUSH1", + "value": "0x20" + }, + "13438": { + "op": "DUP3" + }, + "13439": { + "op": "ADD" + }, + "13440": { + "op": "MSTORE" + }, + "13441": { + "op": "PUSH1", + "value": "0x40" + }, + "13443": { + "op": "DUP2" + }, + "13444": { + "op": "ADD" + }, + "13445": { + "op": "DUP6" + }, + "13446": { + "op": "SWAP1" + }, + "13447": { + "op": "MSTORE" + }, + "13448": { + "op": "PUSH1", + "value": "0x60" + }, + "13450": { + "op": "DUP2" + }, + "13451": { + "op": "ADD" + }, + "13452": { + "op": "DUP5" + }, + "13453": { + "op": "SWAP1" + }, + "13454": { + "op": "MSTORE" + }, + "13455": { + "op": "PUSH1", + "value": "0xA0" + }, + "13457": { + "op": "PUSH1", + "value": "0x80" + }, + "13459": { + "op": "DUP3" + }, + "13460": { + "op": "ADD" + }, + "13461": { + "op": "DUP2" + }, + "13462": { + "op": "SWAP1" + }, + "13463": { + "op": "MSTORE" + }, + "13464": { + "op": "PUSH1", + "value": "0x0" + }, + "13466": { + "op": "SWAP1" + }, + "13467": { + "op": "PUSH2", + "value": "0x1965" + }, + "13470": { + "op": "SWAP1" + }, + "13471": { + "op": "DUP4" + }, + "13472": { + "op": "ADD" + }, + "13473": { + "op": "DUP5" + }, + "13474": { + "op": "DUP7" + }, + "13475": { + "op": "PUSH2", + "value": "0x33BA" + }, + "13478": { + "jump": "i", + "op": "JUMP" + }, + "13479": { + "op": "JUMPDEST" + }, + "13480": { + "op": "PUSH1", + "value": "0x1" + }, + "13482": { + "op": "PUSH1", + "value": "0x1" + }, + "13484": { + "op": "PUSH1", + "value": "0xA0" + }, + "13486": { + "op": "SHL" + }, + "13487": { + "op": "SUB" + }, + "13488": { + "op": "SWAP3" + }, + "13489": { + "op": "DUP4" + }, + "13490": { + "op": "AND" + }, + "13491": { + "op": "DUP2" + }, + "13492": { + "op": "MSTORE" + }, + "13493": { + "op": "SWAP2" + }, + "13494": { + "op": "AND" + }, + "13495": { + "op": "PUSH1", + "value": "0x20" + }, + "13497": { + "op": "DUP3" + }, + "13498": { + "op": "ADD" + }, + "13499": { + "op": "MSTORE" + }, + "13500": { + "op": "PUSH1", + "value": "0x40" + }, + "13502": { + "op": "ADD" + }, + "13503": { + "op": "SWAP1" + }, + "13504": { + "jump": "o", + "op": "JUMP" + }, + "13505": { + "op": "JUMPDEST" + }, + "13506": { + "op": "PUSH1", + "value": "0x1" + }, + "13508": { + "op": "PUSH1", + "value": "0x1" + }, + "13510": { + "op": "PUSH1", + "value": "0xA0" + }, + "13512": { + "op": "SHL" + }, + "13513": { + "op": "SUB" + }, + "13514": { + "op": "SWAP3" + }, + "13515": { + "op": "SWAP1" + }, + "13516": { + "op": "SWAP3" + }, + "13517": { + "op": "AND" + }, + "13518": { + "op": "DUP3" + }, + "13519": { + "op": "MSTORE" + }, + "13520": { + "op": "DUP1" + }, + "13521": { + "op": "MLOAD" + }, + "13522": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "13528": { + "op": "AND" + }, + "13529": { + "op": "PUSH1", + "value": "0x20" + }, + "13531": { + "op": "DUP1" + }, + "13532": { + "op": "DUP5" + }, + "13533": { + "op": "ADD" + }, + "13534": { + "op": "SWAP2" + }, + "13535": { + "op": "SWAP1" + }, + "13536": { + "op": "SWAP2" + }, + "13537": { + "op": "MSTORE" + }, + "13538": { + "op": "DUP2" + }, + "13539": { + "op": "ADD" + }, + "13540": { + "op": "MLOAD" + }, + "13541": { + "op": "PUSH1", + "value": "0x1" + }, + "13543": { + "op": "PUSH1", + "value": "0x1" + }, + "13545": { + "op": "PUSH1", + "value": "0xF8" + }, + "13547": { + "op": "SHL" + }, + "13548": { + "op": "SUB" + }, + "13549": { + "op": "NOT" + }, + "13550": { + "op": "AND" + }, + "13551": { + "op": "PUSH1", + "value": "0x40" + }, + "13553": { + "op": "DUP1" + }, + "13554": { + "op": "DUP5" + }, + "13555": { + "op": "ADD" + }, + "13556": { + "op": "SWAP2" + }, + "13557": { + "op": "SWAP1" + }, + "13558": { + "op": "SWAP2" + }, + "13559": { + "op": "MSTORE" + }, + "13560": { + "op": "DUP2" + }, + "13561": { + "op": "ADD" + }, + "13562": { + "op": "MLOAD" + }, + "13563": { + "op": "PUSH1", + "value": "0xFF" + }, + "13565": { + "op": "AND" + }, + "13566": { + "op": "PUSH1", + "value": "0x60" + }, + "13568": { + "op": "DUP1" + }, + "13569": { + "op": "DUP5" + }, + "13570": { + "op": "ADD" + }, + "13571": { + "op": "SWAP2" + }, + "13572": { + "op": "SWAP1" + }, + "13573": { + "op": "SWAP2" + }, + "13574": { + "op": "MSTORE" + }, + "13575": { + "op": "DUP2" + }, + "13576": { + "op": "ADD" + }, + "13577": { + "op": "MLOAD" + }, + "13578": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "13581": { + "op": "AND" + }, + "13582": { + "op": "PUSH1", + "value": "0x80" + }, + "13584": { + "op": "DUP1" + }, + "13585": { + "op": "DUP5" + }, + "13586": { + "op": "ADD" + }, + "13587": { + "op": "SWAP2" + }, + "13588": { + "op": "SWAP1" + }, + "13589": { + "op": "SWAP2" + }, + "13590": { + "op": "MSTORE" + }, + "13591": { + "op": "ADD" + }, + "13592": { + "op": "MLOAD" + }, + "13593": { + "op": "PUSH1", + "value": "0x1" + }, + "13595": { + "op": "PUSH1", + "value": "0x1" + }, + "13597": { + "op": "PUSH1", + "value": "0x70" + }, + "13599": { + "op": "SHL" + }, + "13600": { + "op": "SUB" + }, + "13601": { + "op": "NOT" + }, + "13602": { + "op": "AND" + }, + "13603": { + "op": "PUSH1", + "value": "0xA0" + }, + "13605": { + "op": "DUP3" + }, + "13606": { + "op": "ADD" + }, + "13607": { + "op": "MSTORE" + }, + "13608": { + "op": "PUSH1", + "value": "0xC0" + }, + "13610": { + "op": "ADD" + }, + "13611": { + "op": "SWAP1" + }, + "13612": { + "jump": "o", + "op": "JUMP" + }, + "13613": { + "op": "JUMPDEST" + }, + "13614": { + "op": "PUSH1", + "value": "0x20" + }, + "13616": { + "op": "DUP1" + }, + "13617": { + "op": "DUP3" + }, + "13618": { + "op": "MSTORE" + }, + "13619": { + "op": "DUP3" + }, + "13620": { + "op": "MLOAD" + }, + "13621": { + "op": "DUP3" + }, + "13622": { + "op": "DUP3" + }, + "13623": { + "op": "ADD" + }, + "13624": { + "op": "DUP2" + }, + "13625": { + "op": "SWAP1" + }, + "13626": { + "op": "MSTORE" + }, + "13627": { + "op": "PUSH1", + "value": "0x0" + }, + "13629": { + "op": "SWAP2" + }, + "13630": { + "op": "SWAP1" + }, + "13631": { + "op": "DUP5" + }, + "13632": { + "op": "DUP3" + }, + "13633": { + "op": "ADD" + }, + "13634": { + "op": "SWAP1" + }, + "13635": { + "op": "PUSH1", + "value": "0x40" + }, + "13637": { + "op": "DUP6" + }, + "13638": { + "op": "ADD" + }, + "13639": { + "op": "SWAP1" + }, + "13640": { + "op": "DUP5" + }, + "13641": { + "op": "JUMPDEST" + }, + "13642": { + "op": "DUP2" + }, + "13643": { + "op": "DUP2" + }, + "13644": { + "op": "LT" + }, + "13645": { + "op": "ISZERO" + }, + "13646": { + "op": "PUSH2", + "value": "0x3565" + }, + "13649": { + "op": "JUMPI" + }, + "13650": { + "op": "DUP4" + }, + "13651": { + "op": "MLOAD" + }, + "13652": { + "op": "DUP4" + }, + "13653": { + "op": "MSTORE" + }, + "13654": { + "op": "SWAP3" + }, + "13655": { + "op": "DUP5" + }, + "13656": { + "op": "ADD" + }, + "13657": { + "op": "SWAP3" + }, + "13658": { + "op": "SWAP2" + }, + "13659": { + "op": "DUP5" + }, + "13660": { + "op": "ADD" + }, + "13661": { + "op": "SWAP2" + }, + "13662": { + "op": "PUSH1", + "value": "0x1" + }, + "13664": { + "op": "ADD" + }, + "13665": { + "op": "PUSH2", + "value": "0x3549" + }, + "13668": { + "op": "JUMP" + }, + "13669": { + "op": "JUMPDEST" + }, + "13670": { + "op": "POP" + }, + "13671": { + "op": "SWAP1" + }, + "13672": { + "op": "SWAP7" + }, + "13673": { + "op": "SWAP6" + }, + "13674": { + "op": "POP" + }, + "13675": { + "op": "POP" + }, + "13676": { + "op": "POP" + }, + "13677": { + "op": "POP" + }, + "13678": { + "op": "POP" + }, + "13679": { + "op": "POP" + }, + "13680": { + "jump": "o", + "op": "JUMP" + }, + "13681": { + "op": "JUMPDEST" + }, + "13682": { + "op": "PUSH1", + "value": "0x20" + }, + "13684": { + "op": "DUP1" + }, + "13685": { + "op": "DUP3" + }, + "13686": { + "op": "MSTORE" + }, + "13687": { + "op": "DUP3" + }, + "13688": { + "op": "MLOAD" + }, + "13689": { + "op": "DUP3" + }, + "13690": { + "op": "DUP3" + }, + "13691": { + "op": "ADD" + }, + "13692": { + "op": "DUP2" + }, + "13693": { + "op": "SWAP1" + }, + "13694": { + "op": "MSTORE" + }, + "13695": { + "op": "PUSH1", + "value": "0x0" + }, + "13697": { + "op": "SWAP2" + }, + "13698": { + "op": "SWAP1" + }, + "13699": { + "op": "PUSH1", + "value": "0x40" + }, + "13701": { + "op": "SWAP1" + }, + "13702": { + "op": "DUP2" + }, + "13703": { + "op": "DUP6" + }, + "13704": { + "op": "ADD" + }, + "13705": { + "op": "SWAP1" + }, + "13706": { + "op": "DUP7" + }, + "13707": { + "op": "DUP5" + }, + "13708": { + "op": "ADD" + }, + "13709": { + "op": "DUP6" + }, + "13710": { + "op": "JUMPDEST" + }, + "13711": { + "op": "DUP3" + }, + "13712": { + "op": "DUP2" + }, + "13713": { + "op": "LT" + }, + "13714": { + "op": "ISZERO" + }, + "13715": { + "op": "PUSH2", + "value": "0x35E6" + }, + "13718": { + "op": "JUMPI" + }, + "13719": { + "op": "DUP2" + }, + "13720": { + "op": "MLOAD" + }, + "13721": { + "op": "DUP1" + }, + "13722": { + "op": "MLOAD" + }, + "13723": { + "op": "DUP6" + }, + "13724": { + "op": "MSTORE" + }, + "13725": { + "op": "DUP7" + }, + "13726": { + "op": "DUP2" + }, + "13727": { + "op": "ADD" + }, + "13728": { + "op": "MLOAD" + }, + "13729": { + "op": "DUP8" + }, + "13730": { + "op": "DUP7" + }, + "13731": { + "op": "ADD" + }, + "13732": { + "op": "MSTORE" + }, + "13733": { + "op": "DUP6" + }, + "13734": { + "op": "DUP2" + }, + "13735": { + "op": "ADD" + }, + "13736": { + "op": "MLOAD" + }, + "13737": { + "op": "DUP7" + }, + "13738": { + "op": "DUP7" + }, + "13739": { + "op": "ADD" + }, + "13740": { + "op": "MSTORE" + }, + "13741": { + "op": "PUSH1", + "value": "0x60" + }, + "13743": { + "op": "DUP1" + }, + "13744": { + "op": "DUP3" + }, + "13745": { + "op": "ADD" + }, + "13746": { + "op": "MLOAD" + }, + "13747": { + "op": "SWAP1" + }, + "13748": { + "op": "DUP7" + }, + "13749": { + "op": "ADD" + }, + "13750": { + "op": "MSTORE" + }, + "13751": { + "op": "PUSH1", + "value": "0x80" + }, + "13753": { + "op": "DUP1" + }, + "13754": { + "op": "DUP3" + }, + "13755": { + "op": "ADD" + }, + "13756": { + "op": "MLOAD" + }, + "13757": { + "op": "SWAP1" + }, + "13758": { + "op": "DUP7" + }, + "13759": { + "op": "ADD" + }, + "13760": { + "op": "MSTORE" + }, + "13761": { + "op": "PUSH1", + "value": "0xA0" + }, + "13763": { + "op": "SWAP1" + }, + "13764": { + "op": "DUP2" + }, + "13765": { + "op": "ADD" + }, + "13766": { + "op": "MLOAD" + }, + "13767": { + "op": "SWAP1" + }, + "13768": { + "op": "PUSH1", + "value": "0x4" + }, + "13770": { + "op": "DUP3" + }, + "13771": { + "op": "LT" + }, + "13772": { + "op": "PUSH2", + "value": "0x35D1" + }, + "13775": { + "op": "JUMPI" + }, + "13776": { + "op": "INVALID" + }, + "13777": { + "op": "JUMPDEST" + }, + "13778": { + "op": "DUP6" + }, + "13779": { + "op": "ADD" + }, + "13780": { + "op": "MSTORE" + }, + "13781": { + "op": "PUSH1", + "value": "0xC0" + }, + "13783": { + "op": "SWAP1" + }, + "13784": { + "op": "SWAP4" + }, + "13785": { + "op": "ADD" + }, + "13786": { + "op": "SWAP3" + }, + "13787": { + "op": "SWAP1" + }, + "13788": { + "op": "DUP6" + }, + "13789": { + "op": "ADD" + }, + "13790": { + "op": "SWAP1" + }, + "13791": { + "op": "PUSH1", + "value": "0x1" + }, + "13793": { + "op": "ADD" + }, + "13794": { + "op": "PUSH2", + "value": "0x358E" + }, + "13797": { + "op": "JUMP" + }, + "13798": { + "op": "JUMPDEST" + }, + "13799": { + "op": "POP" + }, + "13800": { + "op": "SWAP2" + }, + "13801": { + "op": "SWAP8" + }, + "13802": { + "op": "SWAP7" + }, + "13803": { + "op": "POP" + }, + "13804": { + "op": "POP" + }, + "13805": { + "op": "POP" + }, + "13806": { + "op": "POP" + }, + "13807": { + "op": "POP" + }, + "13808": { + "op": "POP" + }, + "13809": { + "op": "POP" + }, + "13810": { + "jump": "o", + "op": "JUMP" + }, + "13811": { + "op": "JUMPDEST" + }, + "13812": { + "op": "PUSH1", + "value": "0x0" + }, + "13814": { + "op": "PUSH1", + "value": "0x40" + }, + "13816": { + "op": "DUP3" + }, + "13817": { + "op": "MSTORE" + }, + "13818": { + "op": "PUSH2", + "value": "0x3607" + }, + "13821": { + "op": "PUSH1", + "value": "0x40" + }, + "13823": { + "op": "DUP4" + }, + "13824": { + "op": "ADD" + }, + "13825": { + "op": "DUP7" + }, + "13826": { + "op": "DUP9" + }, + "13827": { + "op": "PUSH2", + "value": "0x3386" + }, + "13830": { + "jump": "i", + "op": "JUMP" + }, + "13831": { + "op": "JUMPDEST" + }, + "13832": { + "op": "DUP3" + }, + "13833": { + "op": "DUP2" + }, + "13834": { + "op": "SUB" + }, + "13835": { + "op": "PUSH1", + "value": "0x20" + }, + "13837": { + "op": "DUP5" + }, + "13838": { + "op": "ADD" + }, + "13839": { + "op": "MSTORE" + }, + "13840": { + "op": "PUSH2", + "value": "0x361A" + }, + "13843": { + "op": "DUP2" + }, + "13844": { + "op": "DUP6" + }, + "13845": { + "op": "DUP8" + }, + "13846": { + "op": "PUSH2", + "value": "0x3386" + }, + "13849": { + "jump": "i", + "op": "JUMP" + }, + "13850": { + "op": "JUMPDEST" + }, + "13851": { + "op": "SWAP8" + }, + "13852": { + "op": "SWAP7" + }, + "13853": { + "op": "POP" + }, + "13854": { + "op": "POP" + }, + "13855": { + "op": "POP" + }, + "13856": { + "op": "POP" + }, + "13857": { + "op": "POP" + }, + "13858": { + "op": "POP" + }, + "13859": { + "op": "POP" + }, + "13860": { + "jump": "o", + "op": "JUMP" + }, + "13861": { + "op": "JUMPDEST" + }, + "13862": { + "op": "SWAP1" + }, + "13863": { + "op": "ISZERO" + }, + "13864": { + "op": "ISZERO" + }, + "13865": { + "op": "DUP2" + }, + "13866": { + "op": "MSTORE" + }, + "13867": { + "op": "PUSH1", + "value": "0x20" + }, + "13869": { + "op": "ADD" + }, + "13870": { + "op": "SWAP1" + }, + "13871": { + "jump": "o", + "op": "JUMP" + }, + "13872": { + "op": "JUMPDEST" + }, + "13873": { + "op": "SWAP1" + }, + "13874": { + "op": "DUP2" + }, + "13875": { + "op": "MSTORE" + }, + "13876": { + "op": "PUSH1", + "value": "0x20" + }, + "13878": { + "op": "ADD" + }, + "13879": { + "op": "SWAP1" + }, + "13880": { + "jump": "o", + "op": "JUMP" + }, + "13881": { + "op": "JUMPDEST" + }, + "13882": { + "op": "PUSH1", + "value": "0x0" + }, + "13884": { + "op": "PUSH1", + "value": "0x20" + }, + "13886": { + "op": "DUP3" + }, + "13887": { + "op": "MSTORE" + }, + "13888": { + "op": "DUP3" + }, + "13889": { + "op": "MLOAD" + }, + "13890": { + "op": "DUP1" + }, + "13891": { + "op": "PUSH1", + "value": "0x20" + }, + "13893": { + "op": "DUP5" + }, + "13894": { + "op": "ADD" + }, + "13895": { + "op": "MSTORE" + }, + "13896": { + "op": "PUSH2", + "value": "0x3658" + }, + "13899": { + "op": "DUP2" + }, + "13900": { + "op": "PUSH1", + "value": "0x40" + }, + "13902": { + "op": "DUP6" + }, + "13903": { + "op": "ADD" + }, + "13904": { + "op": "PUSH1", + "value": "0x20" + }, + "13906": { + "op": "DUP8" + }, + "13907": { + "op": "ADD" + }, + "13908": { + "op": "PUSH2", + "value": "0x3815" + }, + "13911": { + "jump": "i", + "op": "JUMP" + }, + "13912": { + "op": "JUMPDEST" + }, + "13913": { + "op": "PUSH1", + "value": "0x1F" + }, + "13915": { + "op": "ADD" + }, + "13916": { + "op": "PUSH1", + "value": "0x1F" + }, + "13918": { + "op": "NOT" + }, + "13919": { + "op": "AND" + }, + "13920": { + "op": "SWAP2" + }, + "13921": { + "op": "SWAP1" + }, + "13922": { + "op": "SWAP2" + }, + "13923": { + "op": "ADD" + }, + "13924": { + "op": "PUSH1", + "value": "0x40" + }, + "13926": { + "op": "ADD" + }, + "13927": { + "op": "SWAP3" + }, + "13928": { + "op": "SWAP2" + }, + "13929": { + "op": "POP" + }, + "13930": { + "op": "POP" + }, + "13931": { + "jump": "o", + "op": "JUMP" + }, + "13932": { + "op": "JUMPDEST" + }, + "13933": { + "op": "PUSH1", + "value": "0x20" + }, + "13935": { + "op": "DUP1" + }, + "13936": { + "op": "DUP3" + }, + "13937": { + "op": "MSTORE" + }, + "13938": { + "op": "PUSH1", + "value": "0xF" + }, + "13940": { + "op": "SWAP1" + }, + "13941": { + "op": "DUP3" + }, + "13942": { + "op": "ADD" + }, + "13943": { + "op": "MSTORE" + }, + "13944": { + "op": "PUSH15", + "value": "0x496E76616C69642061646472657373" + }, + "13960": { + "op": "PUSH1", + "value": "0x88" + }, + "13962": { + "op": "SHL" + }, + "13963": { + "op": "PUSH1", + "value": "0x40" + }, + "13965": { + "op": "DUP3" + }, + "13966": { + "op": "ADD" + }, + "13967": { + "op": "MSTORE" + }, + "13968": { + "op": "PUSH1", + "value": "0x60" + }, + "13970": { + "op": "ADD" + }, + "13971": { + "op": "SWAP1" + }, + "13972": { + "jump": "o", + "op": "JUMP" + }, + "13973": { + "op": "JUMPDEST" + }, + "13974": { + "op": "PUSH1", + "value": "0x20" + }, + "13976": { + "op": "DUP1" + }, + "13977": { + "op": "DUP3" + }, + "13978": { + "op": "MSTORE" + }, + "13979": { + "op": "PUSH1", + "value": "0x11" + }, + "13981": { + "op": "SWAP1" + }, + "13982": { + "op": "DUP3" + }, + "13983": { + "op": "ADD" + }, + "13984": { + "op": "MSTORE" + }, + "13985": { + "op": "PUSH17", + "value": "0x155B985D5D1A1BDC9A5E99590818D85B1B" + }, + "14003": { + "op": "PUSH1", + "value": "0x7A" + }, + "14005": { + "op": "SHL" + }, + "14006": { + "op": "PUSH1", + "value": "0x40" + }, + "14008": { + "op": "DUP3" + }, + "14009": { + "op": "ADD" + }, + "14010": { + "op": "MSTORE" + }, + "14011": { + "op": "PUSH1", + "value": "0x60" + }, + "14013": { + "op": "ADD" + }, + "14014": { + "op": "SWAP1" + }, + "14015": { + "jump": "o", + "op": "JUMP" + }, + "14016": { + "op": "JUMPDEST" + }, + "14017": { + "op": "PUSH1", + "value": "0x20" + }, + "14019": { + "op": "DUP1" + }, + "14020": { + "op": "DUP3" + }, + "14021": { + "op": "MSTORE" + }, + "14022": { + "op": "PUSH1", + "value": "0xC" + }, + "14024": { + "op": "SWAP1" + }, + "14025": { + "op": "DUP3" + }, + "14026": { + "op": "ADD" + }, + "14027": { + "op": "MSTORE" + }, + "14028": { + "op": "PUSH12", + "value": "0x155B985D5D1A1BDC9A5E9959" + }, + "14041": { + "op": "PUSH1", + "value": "0xA2" + }, + "14043": { + "op": "SHL" + }, + "14044": { + "op": "PUSH1", + "value": "0x40" + }, + "14046": { + "op": "DUP3" + }, + "14047": { + "op": "ADD" + }, + "14048": { + "op": "MSTORE" + }, + "14049": { + "op": "PUSH1", + "value": "0x60" + }, + "14051": { + "op": "ADD" + }, + "14052": { + "op": "SWAP1" + }, + "14053": { + "jump": "o", + "op": "JUMP" + }, + "14054": { + "op": "JUMPDEST" + }, + "14055": { + "op": "PUSH1", + "value": "0x20" + }, + "14057": { + "op": "DUP1" + }, + "14058": { + "op": "DUP3" + }, + "14059": { + "op": "MSTORE" + }, + "14060": { + "op": "PUSH1", + "value": "0xD" + }, + "14062": { + "op": "SWAP1" + }, + "14063": { + "op": "DUP3" + }, + "14064": { + "op": "ADD" + }, + "14065": { + "op": "MSTORE" + }, + "14066": { + "op": "PUSH13", + "value": "0x92DCECC2D8D2C840D2DCC8CAF" + }, + "14080": { + "op": "PUSH1", + "value": "0x9B" + }, + "14082": { + "op": "SHL" + }, + "14083": { + "op": "PUSH1", + "value": "0x40" + }, + "14085": { + "op": "DUP3" + }, + "14086": { + "op": "ADD" + }, + "14087": { + "op": "MSTORE" + }, + "14088": { + "op": "PUSH1", + "value": "0x60" + }, + "14090": { + "op": "ADD" + }, + "14091": { + "op": "SWAP1" + }, + "14092": { + "jump": "o", + "op": "JUMP" + }, + "14093": { + "op": "JUMPDEST" + }, + "14094": { + "op": "PUSH1", + "value": "0x20" + }, + "14096": { + "op": "DUP1" + }, + "14097": { + "op": "DUP3" + }, + "14098": { + "op": "MSTORE" + }, + "14099": { + "op": "PUSH1", + "value": "0x13" + }, + "14101": { + "op": "SWAP1" + }, + "14102": { + "op": "DUP3" + }, + "14103": { + "op": "ADD" + }, + "14104": { + "op": "MSTORE" + }, + "14105": { + "op": "PUSH19", + "value": "0x4163636F756E74206D75737420736574746C65" + }, + "14125": { + "op": "PUSH1", + "value": "0x68" + }, + "14127": { + "op": "SHL" + }, + "14128": { + "op": "PUSH1", + "value": "0x40" + }, + "14130": { + "op": "DUP3" + }, + "14131": { + "op": "ADD" + }, + "14132": { + "op": "MSTORE" + }, + "14133": { + "op": "PUSH1", + "value": "0x60" + }, + "14135": { + "op": "ADD" + }, + "14136": { + "op": "SWAP1" + }, + "14137": { + "jump": "o", + "op": "JUMP" + }, + "14138": { + "op": "JUMPDEST" + }, + "14139": { + "op": "PUSH1", + "value": "0x20" + }, + "14141": { + "op": "DUP1" + }, + "14142": { + "op": "DUP3" + }, + "14143": { + "op": "MSTORE" + }, + "14144": { + "op": "PUSH1", + "value": "0xF" + }, + "14146": { + "op": "SWAP1" + }, + "14147": { + "op": "DUP3" + }, + "14148": { + "op": "ADD" + }, + "14149": { + "op": "MSTORE" + }, + "14150": { + "op": "PUSH15", + "value": "0x4F766572206D617820617373657473" + }, + "14166": { + "op": "PUSH1", + "value": "0x88" + }, + "14168": { + "op": "SHL" + }, + "14169": { + "op": "PUSH1", + "value": "0x40" + }, + "14171": { + "op": "DUP3" + }, + "14172": { + "op": "ADD" + }, + "14173": { + "op": "MSTORE" + }, + "14174": { + "op": "PUSH1", + "value": "0x60" + }, + "14176": { + "op": "ADD" + }, + "14177": { + "op": "SWAP1" + }, + "14178": { + "jump": "o", + "op": "JUMP" + }, + "14179": { + "op": "JUMPDEST" + }, + "14180": { + "op": "PUSH1", + "value": "0x20" + }, + "14182": { + "op": "DUP1" + }, + "14183": { + "op": "DUP3" + }, + "14184": { + "op": "MSTORE" + }, + "14185": { + "op": "PUSH1", + "value": "0x10" + }, + "14187": { + "op": "SWAP1" + }, + "14188": { + "op": "DUP3" + }, + "14189": { + "op": "ADD" + }, + "14190": { + "op": "MSTORE" + }, + "14191": { + "op": "PUSH16", + "value": "0x496E76616C6964206D61747572697479" + }, + "14208": { + "op": "PUSH1", + "value": "0x80" + }, + "14210": { + "op": "SHL" + }, + "14211": { + "op": "PUSH1", + "value": "0x40" + }, + "14213": { + "op": "DUP3" + }, + "14214": { + "op": "ADD" + }, + "14215": { + "op": "MSTORE" + }, + "14216": { + "op": "PUSH1", + "value": "0x60" + }, + "14218": { + "op": "ADD" + }, + "14219": { + "op": "SWAP1" + }, + "14220": { + "jump": "o", + "op": "JUMP" + }, + "14221": { + "op": "JUMPDEST" + }, + "14222": { + "op": "PUSH1", + "value": "0x20" + }, + "14224": { + "op": "DUP1" + }, + "14225": { + "op": "DUP3" + }, + "14226": { + "op": "MSTORE" + }, + "14227": { + "op": "PUSH1", + "value": "0x12" + }, + "14229": { + "op": "SWAP1" + }, + "14230": { + "op": "DUP3" + }, + "14231": { + "op": "ADD" + }, + "14232": { + "op": "MSTORE" + }, + "14233": { + "op": "PUSH18", + "value": "0x12511CC81B5D5CDD081899481CDBDC9D1959" + }, + "14252": { + "op": "PUSH1", + "value": "0x72" + }, + "14254": { + "op": "SHL" + }, + "14255": { + "op": "PUSH1", + "value": "0x40" + }, + "14257": { + "op": "DUP3" + }, + "14258": { + "op": "ADD" + }, + "14259": { + "op": "MSTORE" + }, + "14260": { + "op": "PUSH1", + "value": "0x60" + }, + "14262": { + "op": "ADD" + }, + "14263": { + "op": "SWAP1" + }, + "14264": { + "jump": "o", + "op": "JUMP" + }, + "14265": { + "op": "JUMPDEST" + }, + "14266": { + "op": "PUSH1", + "value": "0x20" + }, + "14268": { + "op": "DUP1" + }, + "14269": { + "op": "DUP3" + }, + "14270": { + "op": "MSTORE" + }, + "14271": { + "op": "PUSH1", + "value": "0xC" + }, + "14273": { + "op": "SWAP1" + }, + "14274": { + "op": "DUP3" + }, + "14275": { + "op": "ADD" + }, + "14276": { + "op": "MSTORE" + }, + "14277": { + "op": "PUSH12", + "value": "0x139BDD081858D8D95C1D1959" + }, + "14290": { + "op": "PUSH1", + "value": "0xA2" + }, + "14292": { + "op": "SHL" + }, + "14293": { + "op": "PUSH1", + "value": "0x40" + }, + "14295": { + "op": "DUP3" + }, + "14296": { + "op": "ADD" + }, + "14297": { + "op": "MSTORE" + }, + "14298": { + "op": "PUSH1", + "value": "0x60" + }, + "14300": { + "op": "ADD" + }, + "14301": { + "op": "SWAP1" + }, + "14302": { + "jump": "o", + "op": "JUMP" + }, + "14303": { + "op": "JUMPDEST" + }, + "14304": { + "op": "SWAP2" + }, + "14305": { + "op": "DUP3" + }, + "14306": { + "op": "MSTORE" + }, + "14307": { + "op": "PUSH1", + "value": "0x20" + }, + "14309": { + "op": "DUP3" + }, + "14310": { + "op": "ADD" + }, + "14311": { + "op": "MSTORE" + }, + "14312": { + "op": "PUSH1", + "value": "0x40" + }, + "14314": { + "op": "ADD" + }, + "14315": { + "op": "SWAP1" + }, + "14316": { + "jump": "o", + "op": "JUMP" + }, + "14317": { + "op": "JUMPDEST" + }, + "14318": { + "op": "PUSH1", + "value": "0x0" + }, + "14320": { + "op": "DUP1" + }, + "14321": { + "op": "DUP6" + }, + "14322": { + "op": "DUP6" + }, + "14323": { + "op": "GT" + }, + "14324": { + "op": "ISZERO" + }, + "14325": { + "op": "PUSH2", + "value": "0x37FC" + }, + "14328": { + "op": "JUMPI" + }, + "14329": { + "op": "DUP2" + }, + "14330": { + "op": "DUP3" + }, + "14331": { + "op": "REVERT" + }, + "14332": { + "op": "JUMPDEST" + }, + "14333": { + "op": "DUP4" + }, + "14334": { + "op": "DUP7" + }, + "14335": { + "op": "GT" + }, + "14336": { + "op": "ISZERO" + }, + "14337": { + "op": "PUSH2", + "value": "0x3808" + }, + "14340": { + "op": "JUMPI" + }, + "14341": { + "op": "DUP2" + }, + "14342": { + "op": "DUP3" + }, + "14343": { + "op": "REVERT" + }, + "14344": { + "op": "JUMPDEST" + }, + "14345": { + "op": "POP" + }, + "14346": { + "op": "POP" + }, + "14347": { + "op": "DUP3" + }, + "14348": { + "op": "ADD" + }, + "14349": { + "op": "SWAP4" + }, + "14350": { + "op": "SWAP2" + }, + "14351": { + "op": "SWAP1" + }, + "14352": { + "op": "SWAP3" + }, + "14353": { + "op": "SUB" + }, + "14354": { + "op": "SWAP2" + }, + "14355": { + "op": "POP" + }, + "14356": { + "jump": "o", + "op": "JUMP" + }, + "14357": { + "op": "JUMPDEST" + }, + "14358": { + "op": "PUSH1", + "value": "0x0" + }, + "14360": { + "op": "JUMPDEST" + }, + "14361": { + "op": "DUP4" + }, + "14362": { + "op": "DUP2" + }, + "14363": { + "op": "LT" + }, + "14364": { + "op": "ISZERO" + }, + "14365": { + "op": "PUSH2", + "value": "0x3830" + }, + "14368": { + "op": "JUMPI" + }, + "14369": { + "op": "DUP2" + }, + "14370": { + "op": "DUP2" + }, + "14371": { + "op": "ADD" + }, + "14372": { + "op": "MLOAD" + }, + "14373": { + "op": "DUP4" + }, + "14374": { + "op": "DUP3" + }, + "14375": { + "op": "ADD" + }, + "14376": { + "op": "MSTORE" + }, + "14377": { + "op": "PUSH1", + "value": "0x20" + }, + "14379": { + "op": "ADD" + }, + "14380": { + "op": "PUSH2", + "value": "0x3818" + }, + "14383": { + "op": "JUMP" + }, + "14384": { + "op": "JUMPDEST" + }, + "14385": { + "op": "DUP4" + }, + "14386": { + "op": "DUP2" + }, + "14387": { + "op": "GT" + }, + "14388": { + "op": "ISZERO" + }, + "14389": { + "op": "PUSH2", + "value": "0x1632" + }, + "14392": { + "op": "JUMPI" + }, + "14393": { + "op": "POP" + }, + "14394": { + "op": "POP" + }, + "14395": { + "op": "PUSH1", + "value": "0x0" + }, + "14397": { + "op": "SWAP2" + }, + "14398": { + "op": "ADD" + }, + "14399": { + "op": "MSTORE" + }, + "14400": { + "jump": "o", + "op": "JUMP" + }, + "14401": { + "op": "JUMPDEST" + }, + "14402": { + "op": "PUSH1", + "value": "0x1" + }, + "14404": { + "op": "PUSH1", + "value": "0x1" + }, + "14406": { + "op": "PUSH1", + "value": "0xA0" + }, + "14408": { + "op": "SHL" + }, + "14409": { + "op": "SUB" + }, + "14410": { + "op": "DUP2" + }, + "14411": { + "op": "AND" + }, + "14412": { + "op": "DUP2" + }, + "14413": { + "op": "EQ" + }, + "14414": { + "op": "PUSH2", + "value": "0x3856" + }, + "14417": { + "op": "JUMPI" + }, + "14418": { + "op": "PUSH1", + "value": "0x0" + }, + "14420": { + "op": "DUP1" + }, + "14421": { + "op": "REVERT" + }, + "14422": { + "op": "JUMPDEST" + }, + "14423": { + "op": "POP" + }, + "14424": { + "jump": "o", + "op": "JUMP" + }, + "14425": { + "op": "JUMPDEST" + }, + "14426": { + "op": "PUSH1", + "value": "0x1" + }, + "14428": { + "op": "PUSH1", + "value": "0x1" + }, + "14430": { + "op": "PUSH1", + "value": "0xE0" + }, + "14432": { + "op": "SHL" + }, + "14433": { + "op": "SUB" + }, + "14434": { + "op": "NOT" + }, + "14435": { + "op": "DUP2" + }, + "14436": { + "op": "AND" + }, + "14437": { + "op": "DUP2" + }, + "14438": { + "op": "EQ" + }, + "14439": { + "op": "PUSH2", + "value": "0x3856" + }, + "14442": { + "op": "JUMPI" + }, + "14443": { + "op": "PUSH1", + "value": "0x0" + }, + "14445": { + "op": "DUP1" + }, + "14446": { + "op": "REVERT" + }, + "14447": { + "op": "JUMPDEST" + }, + "14448": { + "op": "PUSH2", + "value": "0xFFFF" + }, + "14451": { + "op": "DUP2" + }, + "14452": { + "op": "AND" + }, + "14453": { + "op": "DUP2" + }, + "14454": { + "op": "EQ" + }, + "14455": { + "op": "PUSH2", + "value": "0x3856" + }, + "14458": { + "op": "JUMPI" + }, + "14459": { + "op": "PUSH1", + "value": "0x0" + }, + "14461": { + "op": "DUP1" + }, + "14462": { + "op": "REVERT" + }, + "14463": { + "op": "JUMPDEST" + }, + "14464": { + "op": "PUSH5", + "value": "0xFFFFFFFFFF" + }, + "14470": { + "op": "DUP2" + }, + "14471": { + "op": "AND" + }, + "14472": { + "op": "DUP2" + }, + "14473": { + "op": "EQ" + }, + "14474": { + "op": "PUSH2", + "value": "0x3856" + }, + "14477": { + "op": "JUMPI" + }, + "14478": { + "op": "PUSH1", + "value": "0x0" + }, + "14480": { + "op": "DUP1" + }, + "14481": { + "op": "REVERT" + }, + "14482": { + "op": "JUMPDEST" + }, + "14483": { + "op": "PUSH1", + "value": "0xFF" + }, + "14485": { + "op": "DUP2" + }, + "14486": { + "op": "AND" + }, + "14487": { + "op": "DUP2" + }, + "14488": { + "op": "EQ" + }, + "14489": { + "op": "PUSH2", + "value": "0x3856" + }, + "14492": { + "op": "JUMPI" + }, + "14493": { + "op": "PUSH1", + "value": "0x0" + }, + "14495": { + "op": "DUP1" + }, + "14496": { + "op": "REVERT" + } + }, + "sha1": "9990855d2421ebb03f25cd2269aa560a54cf9b05", + "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./ActionGuards.sol\";\nimport \"../FreeCollateralExternal.sol\";\nimport \"../../global/StorageLayoutV1.sol\";\nimport \"../../math/SafeInt256.sol\";\nimport \"../../internal/AccountContextHandler.sol\";\nimport \"../../internal/portfolio/TransferAssets.sol\";\nimport \"../../internal/portfolio/PortfolioHandler.sol\";\nimport \"../../../interfaces/notional/NotionalProxy.sol\";\nimport \"../../../interfaces/IERC1155TokenReceiver.sol\";\nimport \"../../../interfaces/notional/nERC1155Interface.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\";\nimport \"@openzeppelin/contracts/utils/Address.sol\";\n\ncontract ERC1155Action is nERC1155Interface, ActionGuards {\n using SafeInt256 for int256;\n using AccountContextHandler for AccountContext;\n\n bytes4 internal constant ERC1155_ACCEPTED = bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"));\n bytes4 internal constant ERC1155_BATCH_ACCEPTED = bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"));\n\n function supportsInterface(bytes4 interfaceId) external pure override returns (bool) {\n return interfaceId == type(IERC1155).interfaceId;\n }\n\n /// @notice Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by\n /// this method do not show negative fCash balances because only unsigned integers are returned. They\n /// are represented by zero here. Use `signedBalanceOf` to get a signed return value.\n /// @param account account to get the id for\n /// @param id the ERC1155 id\n /// @return Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)\n function balanceOf(address account, uint256 id) public view override returns (uint256) {\n int256 notional = signedBalanceOf(account, id);\n return notional < 0 ? 0 : notional.toUint();\n }\n\n /// @notice Returns the balance of an ERC1155 id on an account.\n /// @param account account to get the id for\n /// @param id the ERC1155 id\n /// @return notional balance of the ERC1155 id as a signed integer\n function signedBalanceOf(address account, uint256 id) public view override returns (int256 notional) {\n AccountContext memory accountContext = AccountContextHandler.getAccountContext(account);\n\n if (accountContext.isBitmapEnabled()) {\n notional = _balanceInBitmap(account, accountContext.bitmapCurrencyId, id);\n } else {\n notional = _balanceInArray(\n PortfolioHandler.getSortedPortfolio(account, accountContext.assetArrayLength),\n id\n );\n }\n }\n\n /// @notice Returns the balance of a batch of accounts and ids.\n /// @param accounts array of accounts to get balances for\n /// @param ids array of ids to get balances for\n /// @return Returns an array of signed balances\n function signedBalanceOfBatch(address[] calldata accounts, uint256[] calldata ids)\n external\n view\n override\n returns (int256[] memory)\n {\n require(accounts.length == ids.length);\n int256[] memory amounts = new int256[](accounts.length);\n\n for (uint256 i; i < accounts.length; i++) {\n // This is pretty inefficient but gets the job done\n amounts[i] = signedBalanceOf(accounts[i], ids[i]);\n }\n\n return amounts;\n }\n\n /// @notice Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented\n /// as zero balances in the array. \n /// @param accounts array of accounts to get balances for\n /// @param ids array of ids to get balances for\n /// @return Returns an array of unsigned balances\n function balanceOfBatch(address[] calldata accounts, uint256[] calldata ids)\n external\n view\n override\n returns (uint256[] memory)\n {\n require(accounts.length == ids.length);\n uint256[] memory amounts = new uint256[](accounts.length);\n\n for (uint256 i; i < accounts.length; i++) {\n // This is pretty inefficient but gets the job done\n amounts[i] = balanceOf(accounts[i], ids[i]);\n }\n\n return amounts;\n }\n\n /// @dev Returns the balance from a bitmap given the id\n function _balanceInBitmap(\n address account,\n uint256 bitmapCurrencyId,\n uint256 id\n ) internal view returns (int256) {\n (uint256 currencyId, uint256 maturity, uint256 assetType) = TransferAssets.decodeAssetId(id);\n\n if (\n currencyId != bitmapCurrencyId ||\n assetType != Constants.FCASH_ASSET_TYPE\n ) {\n // Neither of these are possible for a bitmap group\n return 0;\n } else {\n return BitmapAssetsHandler.getifCashNotional(account, currencyId, maturity);\n }\n }\n\n /// @dev Searches an array for the matching asset\n function _balanceInArray(PortfolioAsset[] memory portfolio, uint256 id)\n internal\n pure\n returns (int256)\n {\n (uint256 currencyId, uint256 maturity, uint256 assetType) = TransferAssets.decodeAssetId(id);\n\n for (uint256 i; i < portfolio.length; i++) {\n PortfolioAsset memory asset = portfolio[i];\n if (\n asset.currencyId == currencyId &&\n asset.maturity == maturity &&\n asset.assetType == assetType\n ) return asset.notional;\n }\n }\n\n /// @notice Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash\n /// than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n /// @param from account to transfer from\n /// @param to account to transfer to\n /// @param id ERC1155 id of the asset\n /// @param amount amount to transfer\n /// @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n /// a trading action on Notional for the `from` address\n /// @dev emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled\n function safeTransferFrom(\n address from,\n address to,\n uint256 id,\n uint256 amount,\n bytes calldata data\n ) external payable override {\n // NOTE: there is no re-entrancy guard on this method because that would prevent a callback in \n // _checkPostTransferEvent. The external call to the receiver is done at the very end after all stateful\n // updates have occurred.\n _validateAccounts(from, to);\n\n // When amount is set to zero this method can be used as a way to execute trades via a transfer operator\n AccountContext memory fromContext;\n if (amount > 0) {\n PortfolioAsset[] memory assets = new PortfolioAsset[](1);\n PortfolioAsset memory asset = assets[0];\n\n (asset.currencyId, asset.maturity, asset.assetType) = TransferAssets.decodeAssetId(id);\n // This ensures that asset.notional is always a positive amount\n asset.notional = SafeInt256.toInt(amount);\n _requireValidMaturity(asset.currencyId, asset.maturity, block.timestamp);\n\n // prettier-ignore\n (fromContext, /* toContext */) = _transfer(from, to, assets);\n\n emit TransferSingle(msg.sender, from, to, id, amount);\n } else {\n fromContext = AccountContextHandler.getAccountContext(from);\n }\n\n // toContext is always empty here because we cannot have bidirectional transfers in `safeTransferFrom`\n AccountContext memory toContext;\n _checkPostTransferEvent(from, to, fromContext, toContext, data, false);\n\n // Do this external call at the end to prevent re-entrancy\n if (Address.isContract(to)) {\n require(\n IERC1155TokenReceiver(to).onERC1155Received(msg.sender, from, id, amount, data) ==\n ERC1155_ACCEPTED,\n \"Not accepted\"\n );\n }\n }\n\n /// @notice Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash\n /// than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n /// @param from account to transfer from\n /// @param to account to transfer to\n /// @param ids ERC1155 ids of the assets\n /// @param amounts amounts to transfer\n /// @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n /// a trading action on Notional for the `from` address\n /// @dev emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled\n function safeBatchTransferFrom(\n address from,\n address to,\n uint256[] calldata ids,\n uint256[] calldata amounts,\n bytes calldata data\n ) external payable override {\n // NOTE: there is no re-entrancy guard on this method because that would prevent a callback in \n // _checkPostTransferEvent. The external call to the receiver is done at the very end.\n _validateAccounts(from, to);\n\n (PortfolioAsset[] memory assets, bool toTransferNegative) = _decodeToAssets(ids, amounts);\n // When doing a bidirectional transfer must ensure that the `to` account has given approval\n // to msg.sender as well.\n if (toTransferNegative) require(isApprovedForAll(to, msg.sender), \"Unauthorized\");\n\n (AccountContext memory fromContext, AccountContext memory toContext) = _transfer(\n from,\n to,\n assets\n );\n\n _checkPostTransferEvent(from, to, fromContext, toContext, data, toTransferNegative);\n emit TransferBatch(msg.sender, from, to, ids, amounts);\n\n // Do this at the end to prevent re-entrancy\n if (Address.isContract(to)) {\n require(\n IERC1155TokenReceiver(to).onERC1155BatchReceived(\n msg.sender,\n from,\n ids,\n amounts,\n data\n ) == ERC1155_BATCH_ACCEPTED,\n \"Not accepted\"\n );\n }\n }\n\n /// @dev Validates accounts on transfer\n function _validateAccounts(address from, address to) private view {\n // Cannot transfer to self, cannot transfer to zero address\n require(from != to && to != address(0) && to != address(this), \"Invalid address\");\n // Authentication is valid\n require(msg.sender == from || isApprovedForAll(from, msg.sender), \"Unauthorized\");\n // nTokens will not accept transfers because they do not implement the ERC1155\n // receive method\n\n // Defensive check to ensure that an authorized operator does not call these methods\n // with an invalid `from` account\n requireValidAccount(from);\n }\n\n /// @notice Decodes ids and amounts to PortfolioAsset objects\n /// @param ids array of ERC1155 ids\n /// @param amounts amounts to transfer\n /// @return array of portfolio asset objects\n function decodeToAssets(uint256[] calldata ids, uint256[] calldata amounts)\n external\n view\n override\n returns (PortfolioAsset[] memory)\n {\n // prettier-ignore\n (PortfolioAsset[] memory assets, /* */) = _decodeToAssets(ids, amounts);\n return assets;\n }\n\n function _decodeToAssets(uint256[] calldata ids, uint256[] calldata amounts)\n internal\n view\n returns (PortfolioAsset[] memory, bool)\n {\n require(ids.length == amounts.length);\n bool toTransferNegative = false;\n PortfolioAsset[] memory assets = new PortfolioAsset[](ids.length);\n\n for (uint256 i; i < ids.length; i++) {\n // Require that ids are not duplicated, there is no valid reason to have duplicate ids\n if (i > 0) require(ids[i] > ids[i - 1], \"IDs must be sorted\");\n\n PortfolioAsset memory asset = assets[i];\n (asset.currencyId, asset.maturity, asset.assetType) = TransferAssets.decodeAssetId(ids[i]);\n\n _requireValidMaturity(asset.currencyId, asset.maturity, block.timestamp);\n // Although amounts is encoded as uint256 we allow it to be negative here. This will\n // allow for bidirectional transfers of fCash. Internally fCash assets are always stored\n // as int128 (for bitmap portfolio) or int88 (for array portfolio) so there is no potential\n // that a uint256 value that is greater than type(int256).max would actually valid.\n asset.notional = int256(amounts[i]);\n // If there is a negative transfer we mark it as such, this will force us to do a free collateral\n // check on the `to` address as well.\n if (asset.notional < 0) toTransferNegative = true;\n }\n\n return (assets, toTransferNegative);\n }\n\n /// @notice Encodes parameters into an ERC1155 id\n /// @param currencyId currency id of the asset\n /// @param maturity timestamp of the maturity\n /// @param assetType id of the asset type\n /// @return ERC1155 id\n function encodeToId(\n uint16 currencyId,\n uint40 maturity,\n uint8 assetType\n ) external pure override returns (uint256) {\n return TransferAssets.encodeAssetId(currencyId, maturity, assetType);\n }\n\n /// @dev Ensures that all maturities specified are valid for the currency id (i.e. they do not\n /// go past the max maturity date)\n function _requireValidMaturity(\n uint256 currencyId,\n uint256 maturity,\n uint256 blockTime\n ) private view {\n require(\n DateTime.isValidMaturity(CashGroup.getMaxMarketIndex(currencyId), maturity, blockTime),\n \"Invalid maturity\"\n );\n }\n\n /// @dev Internal asset transfer event between accounts\n function _transfer(\n address from,\n address to,\n PortfolioAsset[] memory assets\n ) internal returns (AccountContext memory, AccountContext memory) {\n // Finalize all parts of a transfer for each account separately. Settlement must happen\n // before the call to placeAssetsInAccount so that we load the proper portfolio state.\n AccountContext memory toContext = AccountContextHandler.getAccountContext(to);\n if (toContext.mustSettleAssets()) {\n toContext = SettleAssetsExternal.settleAccount(to, toContext);\n }\n toContext = TransferAssets.placeAssetsInAccount(to, toContext, assets);\n toContext.setAccountContext(to);\n\n // Will flip the sign of notional in the assets array in memory\n TransferAssets.invertNotionalAmountsInPlace(assets);\n\n // Now finalize the from account\n AccountContext memory fromContext = AccountContextHandler.getAccountContext(from);\n if (fromContext.mustSettleAssets()) {\n fromContext = SettleAssetsExternal.settleAccount(from, fromContext);\n }\n fromContext = TransferAssets.placeAssetsInAccount(from, fromContext, assets);\n fromContext.setAccountContext(from);\n\n return (fromContext, toContext);\n }\n\n /// @dev Checks post transfer events which will either be initiating one of the batch trading events or a free collateral\n /// check if required.\n function _checkPostTransferEvent(\n address from,\n address to,\n AccountContext memory fromContext,\n AccountContext memory toContext,\n bytes calldata data,\n bool toTransferNegative\n ) internal {\n bytes4 sig = 0;\n address transactedAccount = address(0);\n if (data.length >= 32) {\n // Method signature is not abi encoded so decode to bytes32 first and take the first 4 bytes. This works\n // because all the methods we want to call below require more than 32 bytes in the calldata\n bytes32 tmp = abi.decode(data, (bytes32));\n sig = bytes4(tmp);\n }\n\n // These are the only four methods allowed to occur in a post transfer event. These actions allow `from`\n // accounts to take any sort of trading action as a result of their transfer. All of these actions will\n // handle checking free collateral so no additional check is necessary here.\n if (\n sig == NotionalProxy.nTokenRedeem.selector ||\n sig == NotionalProxy.batchLend.selector ||\n sig == NotionalProxy.batchBalanceAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeAction.selector\n ) {\n transactedAccount = abi.decode(data[4:36], (address));\n // Ensure that the \"transactedAccount\" parameter of the call is set to the from address or the\n // to address. If it is the \"to\" address then ensure that the msg.sender has approval to\n // execute operations\n require(\n transactedAccount == from ||\n (transactedAccount == to && isApprovedForAll(to, msg.sender)),\n \"Unauthorized call\"\n );\n\n // We can only call back to Notional itself at this point, account context is already\n // stored and all three of the whitelisted methods above will check free collateral.\n (bool status, bytes memory result) = address(this).call{value: msg.value}(data);\n require(status, _getRevertMsg(result));\n }\n\n // The transacted account will have its free collateral checked above so there is\n // no need to recheck here.\n // If transactedAccount == 0 then will check fc\n // If transactedAccount == to then will check fc\n // If transactedAccount == from then will skip, prefer call above\n if (transactedAccount != from && fromContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(from);\n }\n\n // Check free collateral if the `to` account has taken on a negative fCash amount\n // If toTransferNegative is false then will not check\n // If transactedAccount == 0 then will check fc\n // If transactedAccount == from then will check fc\n // If transactedAccount == to then will skip, prefer call above\n if (toTransferNegative && transactedAccount != to && toContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(to);\n }\n }\n\n function _getRevertMsg(bytes memory _returnData) internal pure returns (string memory) {\n // If the _res length is less than 68, then the transaction failed silently (without a revert message)\n if (_returnData.length < 68) return \"Transaction reverted silently\";\n\n assembly {\n // Slice the sighash.\n _returnData := add(_returnData, 0x04)\n }\n return abi.decode(_returnData, (string)); // All that remains is the revert string\n }\n\n /// @notice Allows an account to set approval for an operator\n /// @param operator address of the operator\n /// @param approved state of the approval\n /// @dev emit:ApprovalForAll\n function setApprovalForAll(address operator, bool approved) external override {\n accountAuthorizedTransferOperator[msg.sender][operator] = approved;\n emit ApprovalForAll(msg.sender, operator, approved);\n }\n\n /// @notice Checks approval state for an account, will first check if global transfer operator is enabled\n /// before falling through to an account specific transfer operator.\n /// @param account address of the account\n /// @param operator address of the operator\n /// @return true for approved\n function isApprovedForAll(address account, address operator)\n public\n view\n override\n returns (bool)\n {\n if (globalTransferOperator[operator]) return true;\n\n return accountAuthorizedTransferOperator[account][operator];\n }\n\n /// @notice Get a list of deployed library addresses (sorted by library name)\n function getLibInfo() external view returns (address, address) {\n return (address(FreeCollateralExternal), address(SettleAssetsExternal));\n }\n}\n", + "sourceMap": "683:19633:30:-:0;;;;;;;;;;;;;;;;;;;", + "sourcePath": "contracts/external/actions/ERC1155Action.sol", + "type": "contract" +} diff --git a/external/abi/notional/Router.json b/external/abi/notional/Router.json new file mode 100644 index 000000000..50d67e338 --- /dev/null +++ b/external/abi/notional/Router.json @@ -0,0 +1,25958 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "governance_", + "type": "address" + }, + { + "internalType": "address", + "name": "views_", + "type": "address" + }, + { + "internalType": "address", + "name": "initializeMarket_", + "type": "address" + }, + { + "internalType": "address", + "name": "nTokenActions_", + "type": "address" + }, + { + "internalType": "address", + "name": "batchAction_", + "type": "address" + }, + { + "internalType": "address", + "name": "accountAction_", + "type": "address" + }, + { + "internalType": "address", + "name": "erc1155_", + "type": "address" + }, + { + "internalType": "address", + "name": "liquidateCurrency_", + "type": "address" + }, + { + "internalType": "address", + "name": "liquidatefCash_", + "type": "address" + }, + { + "internalType": "address", + "name": "cETH_", + "type": "address" + }, + { + "internalType": "address", + "name": "treasury_", + "type": "address" + }, + { + "internalType": "address", + "name": "calculationViews_", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "ACCOUNT_ACTION", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "BATCH_ACTION", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "CALCULATION_VIEWS", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "ERC1155", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "GOVERNANCE", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "INITIALIZE_MARKET", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "LIQUIDATE_CURRENCY", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "LIQUIDATE_FCASH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "NTOKEN_ACTIONS", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "TREASURY", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "VIEWS", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cETH", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "sig", + "type": "bytes4" + } + ], + "name": "getRouterImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner_", + "type": "address" + }, + { + "internalType": "address", + "name": "pauseRouter_", + "type": "address" + }, + { + "internalType": "address", + "name": "pauseGuardian_", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseRouter", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "allSourcePaths": { + "24": "contracts/external/Router.sol", + "60": "contracts/global/Constants.sol", + "63": "contracts/global/StorageLayoutV1.sol", + "65": "contracts/global/Types.sol" + }, + "ast": { + "absolutePath": "contracts/external/Router.sol", + "exportedSymbols": { + "ABDKMath64x64": [ + 44430 + ], + "AaveHandler": [ + 26669 + ], + "AccountBalance": [ + 57824 + ], + "AccountContext": [ + 57743 + ], + "AccountContextHandler": [ + 24055 + ], + "ActionGuards": [ + 3662 + ], + "AggregatorInterface": [ + 62384 + ], + "AggregatorV2V3Interface": [ + 58997 + ], + "AggregatorV3Interface": [ + 62430 + ], + "AssetHandler": [ + 40067 + ], + "AssetRate": [ + 30677 + ], + "AssetRateAdapter": [ + 59041 + ], + "AssetRateParameters": [ + 57639 + ], + "AssetRateStorage": [ + 57707 + ], + "AssetStorageState": [ + 57500 + ], + "BalanceAction": [ + 57521 + ], + "BalanceActionWithTrades": [ + 57537 + ], + "BalanceHandler": [ + 25398 + ], + "BalanceState": [ + 57632 + ], + "BalanceStorage": [ + 57767 + ], + "BatchLend": [ + 57508 + ], + "Bitmap": [ + 44771 + ], + "BitmapAssetsHandler": [ + 37096 + ], + "CErc20Interface": [ + 59445 + ], + "CEtherInterface": [ + 59757 + ], + "CTokenInterface": [ + 59740 + ], + "CashGroup": [ + 31956 + ], + "CashGroupParameters": [ + 57648 + ], + "CashGroupSettings": [ + 57732 + ], + "CompoundHandler": [ + 26861 + ], + "Constants": [ + 22832 + ], + "Context": [ + 62453 + ], + "DateTime": [ + 32595 + ], + "Deployments": [ + 22839 + ], + "DepositActionType": [ + 57495 + ], + "ERC20": [ + 60749 + ], + "ETHRate": [ + 57613 + ], + "ETHRateStorage": [ + 57702 + ], + "ExchangeRate": [ + 40263 + ], + "FloatingPoint56": [ + 44847 + ], + "FreeCollateral": [ + 41676 + ], + "FreeCollateralExternal": [ + 618 + ], + "GenericToken": [ + 26993 + ], + "IAToken": [ + 60771 + ], + "IATokenFull": [ + 60806 + ], + "IEIP20NonStandard": [ + 61875 + ], + "IERC20": [ + 59607 + ], + "ILendingPool": [ + 60888 + ], + "IRewarder": [ + 59057 + ], + "IScaledBalanceToken": [ + 60796 + ], + "Incentives": [ + 25585 + ], + "LendingPoolStorage": [ + 60812 + ], + "LibStorage": [ + 23238 + ], + "LiquidationFactors": [ + 57591 + ], + "Market": [ + 34509 + ], + "MarketParameters": [ + 57678 + ], + "MarketStorage": [ + 57787 + ], + "MigrateIncentives": [ + 775 + ], + "NotionalCalculations": [ + 57001 + ], + "NotionalGovernance": [ + 58068 + ], + "NotionalProxy": [ + 57468 + ], + "NotionalTreasury": [ + 59529 + ], + "NotionalViews": [ + 58520 + ], + "PortfolioAsset": [ + 57661 + ], + "PortfolioAssetStorage": [ + 57799 + ], + "PortfolioHandler": [ + 38387 + ], + "PortfolioState": [ + 57602 + ], + "Router": [ + 1734 + ], + "SafeCast": [ + 56950 + ], + "SafeInt256": [ + 45162 + ], + "SafeMath": [ + 56637 + ], + "SettleAmount": [ + 57542 + ], + "SettleAssetsExternal": [ + 1878 + ], + "SettleBitmapAssets": [ + 38867 + ], + "SettlePortfolioAssets": [ + 39292 + ], + "SettlementRateStorage": [ + 57774 + ], + "StorageLayoutV1": [ + 23292 + ], + "Token": [ + 57553 + ], + "TokenHandler": [ + 26426 + ], + "TokenStorage": [ + 57689 + ], + "TokenType": [ + 57480 + ], + "TradeActionType": [ + 57487 + ], + "TransferAssets": [ + 38618 + ], + "ifCashStorage": [ + 57790 + ], + "nERC1155Interface": [ + 58229 + ], + "nTokenAction": [ + 12193 + ], + "nTokenCalculations": [ + 35079 + ], + "nTokenContext": [ + 57758 + ], + "nTokenERC20": [ + 59173 + ], + "nTokenHandler": [ + 36105 + ], + "nTokenMintAction": [ + 12854 + ], + "nTokenPortfolio": [ + 57568 + ], + "nTokenSupply": [ + 36407 + ], + "nTokenTotalSupplyStorage": [ + 57813 + ], + "nTokenTotalSupplyStorage_deprecated": [ + 57806 + ] + }, + "id": 1735, + "license": "GPL-3.0-only", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1058, + "literals": [ + "solidity", + "^", + "0.7", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "41:23:24" + }, + { + "id": 1059, + "literals": [ + "abicoder", + "v2" + ], + "nodeType": "PragmaDirective", + "src": "65:19:24" + }, + { + "absolutePath": "contracts/external/actions/nTokenAction.sol", + "file": "./actions/nTokenAction.sol", + "id": 1060, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 12194, + "src": "86:36:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/external/actions/nTokenMintAction.sol", + "file": "./actions/nTokenMintAction.sol", + "id": 1061, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 12855, + "src": "123:40:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/global/StorageLayoutV1.sol", + "file": "../global/StorageLayoutV1.sol", + "id": 1062, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 23293, + "src": "164:39:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "contracts/global/Types.sol", + "file": "../global/Types.sol", + "id": 1063, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 57825, + "src": "204:29:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/NotionalProxy.sol", + "file": "../../interfaces/notional/NotionalProxy.sol", + "id": 1064, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 57469, + "src": "234:53:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/nERC1155Interface.sol", + "file": "../../interfaces/notional/nERC1155Interface.sol", + "id": 1065, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 58230, + "src": "288:57:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/NotionalGovernance.sol", + "file": "../../interfaces/notional/NotionalGovernance.sol", + "id": 1066, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 58069, + "src": "346:58:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "interfaces/notional/NotionalCalculations.sol", + "file": "../../interfaces/notional/NotionalCalculations.sol", + "id": 1067, + "nodeType": "ImportDirective", + "scope": 1735, + "sourceUnit": 57002, + "src": "405:60:24", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 1069, + "name": "StorageLayoutV1", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 23292, + "src": "1075:15:24", + "typeDescriptions": { + "typeIdentifier": "t_contract$_StorageLayoutV1_$23292", + "typeString": "contract StorageLayoutV1" + } + }, + "id": 1070, + "nodeType": "InheritanceSpecifier", + "src": "1075:15:24" + } + ], + "contractDependencies": [ + 23292 + ], + "contractKind": "contract", + "documentation": { + "id": 1068, + "nodeType": "StructuredDocumentation", + "src": "467:588:24", + "text": " @notice Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage\n will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing\n contracts.\n This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also\n allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a\n new Router with the new hardcoded addresses will then be deployed and upgraded into place." + }, + "fullyImplemented": true, + "id": 1734, + "linearizedBaseContracts": [ + 1734, + 23292 + ], + "name": "Router", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "functionSelector": "14627834", + "id": 1072, + "mutability": "immutable", + "name": "GOVERNANCE", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1175:35:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1071, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1175:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "0c4e7935", + "id": 1074, + "mutability": "immutable", + "name": "VIEWS", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1216:30:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1073, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1216:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "dcc1a738", + "id": 1076, + "mutability": "immutable", + "name": "INITIALIZE_MARKET", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1252:42:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1075, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1252:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "15beeb93", + "id": 1078, + "mutability": "immutable", + "name": "NTOKEN_ACTIONS", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1300:39:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1077, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1300:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "6d7cdbbf", + "id": 1080, + "mutability": "immutable", + "name": "BATCH_ACTION", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1345:37:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1079, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1345:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "6009b8e6", + "id": 1082, + "mutability": "immutable", + "name": "ACCOUNT_ACTION", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1388:39:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1081, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1388:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "2d255471", + "id": 1084, + "mutability": "immutable", + "name": "ERC1155", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1433:32:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1433:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "2be75895", + "id": 1086, + "mutability": "immutable", + "name": "LIQUIDATE_CURRENCY", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1471:43:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1085, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1471:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "206109b5", + "id": 1088, + "mutability": "immutable", + "name": "LIQUIDATE_FCASH", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1520:40:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1087, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1520:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "a1b4d011", + "id": 1090, + "mutability": "immutable", + "name": "cETH", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1566:29:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1089, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1566:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "2d2c5565", + "id": 1092, + "mutability": "immutable", + "name": "TREASURY", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1601:33:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1091, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1601:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "functionSelector": "72d27134", + "id": 1094, + "mutability": "immutable", + "name": "CALCULATION_VIEWS", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1640:42:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1093, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1640:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "id": 1096, + "mutability": "immutable", + "name": "DEPLOYER", + "nodeType": "VariableDeclaration", + "scope": 1734, + "src": "1688:34:24", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1095, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1688:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "private" + }, + { + "body": { + "id": 1180, + "nodeType": "Block", + "src": "2109:603:24", + "statements": [ + { + "expression": { + "id": 1125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1123, + "name": "GOVERNANCE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1072, + "src": "2119:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1124, + "name": "governance_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1098, + "src": "2132:11:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2119:24:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1126, + "nodeType": "ExpressionStatement", + "src": "2119:24:24" + }, + { + "expression": { + "id": 1129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1127, + "name": "VIEWS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1074, + "src": "2153:5:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1128, + "name": "views_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1100, + "src": "2161:6:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2153:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1130, + "nodeType": "ExpressionStatement", + "src": "2153:14:24" + }, + { + "expression": { + "id": 1133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1131, + "name": "INITIALIZE_MARKET", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1076, + "src": "2177:17:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1132, + "name": "initializeMarket_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1102, + "src": "2197:17:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2177:37:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1134, + "nodeType": "ExpressionStatement", + "src": "2177:37:24" + }, + { + "expression": { + "id": 1137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1135, + "name": "NTOKEN_ACTIONS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1078, + "src": "2224:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1136, + "name": "nTokenActions_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1104, + "src": "2241:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2224:31:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1138, + "nodeType": "ExpressionStatement", + "src": "2224:31:24" + }, + { + "expression": { + "id": 1141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1139, + "name": "BATCH_ACTION", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1080, + "src": "2265:12:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1140, + "name": "batchAction_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1106, + "src": "2280:12:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2265:27:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1142, + "nodeType": "ExpressionStatement", + "src": "2265:27:24" + }, + { + "expression": { + "id": 1145, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1143, + "name": "ACCOUNT_ACTION", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1082, + "src": "2302:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1144, + "name": "accountAction_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1108, + "src": "2319:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2302:31:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1146, + "nodeType": "ExpressionStatement", + "src": "2302:31:24" + }, + { + "expression": { + "id": 1149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1147, + "name": "ERC1155", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1084, + "src": "2343:7:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1148, + "name": "erc1155_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1110, + "src": "2353:8:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2343:18:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1150, + "nodeType": "ExpressionStatement", + "src": "2343:18:24" + }, + { + "expression": { + "id": 1153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1151, + "name": "LIQUIDATE_CURRENCY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1086, + "src": "2371:18:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1152, + "name": "liquidateCurrency_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1112, + "src": "2392:18:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2371:39:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1154, + "nodeType": "ExpressionStatement", + "src": "2371:39:24" + }, + { + "expression": { + "id": 1157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1155, + "name": "LIQUIDATE_FCASH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1088, + "src": "2420:15:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1156, + "name": "liquidatefCash_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1114, + "src": "2438:15:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2420:33:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1158, + "nodeType": "ExpressionStatement", + "src": "2420:33:24" + }, + { + "expression": { + "id": 1161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1159, + "name": "cETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1090, + "src": "2463:4:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1160, + "name": "cETH_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1116, + "src": "2470:5:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2463:12:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1162, + "nodeType": "ExpressionStatement", + "src": "2463:12:24" + }, + { + "expression": { + "id": 1166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1163, + "name": "DEPLOYER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1096, + "src": "2485:8:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 1164, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2496:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2496:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "2485:21:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1167, + "nodeType": "ExpressionStatement", + "src": "2485:21:24" + }, + { + "expression": { + "id": 1170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1168, + "name": "TREASURY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1092, + "src": "2516:8:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1169, + "name": "treasury_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1118, + "src": "2527:9:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2516:20:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1171, + "nodeType": "ExpressionStatement", + "src": "2516:20:24" + }, + { + "expression": { + "id": 1174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1172, + "name": "CALCULATION_VIEWS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1094, + "src": "2546:17:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1173, + "name": "calculationViews_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1120, + "src": "2566:17:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2546:37:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1175, + "nodeType": "ExpressionStatement", + "src": "2546:37:24" + }, + { + "expression": { + "id": 1178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1176, + "name": "hasInitialized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23249, + "src": "2684:14:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2701:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "2684:21:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1179, + "nodeType": "ExpressionStatement", + "src": "2684:21:24" + } + ] + }, + "id": 1181, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1121, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1098, + "mutability": "mutable", + "name": "governance_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1750:19:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1097, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1750:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1100, + "mutability": "mutable", + "name": "views_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1779:14:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1099, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1779:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1102, + "mutability": "mutable", + "name": "initializeMarket_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1803:25:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1101, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1803:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1104, + "mutability": "mutable", + "name": "nTokenActions_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1838:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1103, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1838:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1106, + "mutability": "mutable", + "name": "batchAction_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1870:20:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1105, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1870:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1108, + "mutability": "mutable", + "name": "accountAction_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1900:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1900:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1110, + "mutability": "mutable", + "name": "erc1155_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1932:16:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1109, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1932:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1112, + "mutability": "mutable", + "name": "liquidateCurrency_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1958:26:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1111, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1958:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1114, + "mutability": "mutable", + "name": "liquidatefCash_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "1994:23:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1113, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1994:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1116, + "mutability": "mutable", + "name": "cETH_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "2027:13:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1115, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2027:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1118, + "mutability": "mutable", + "name": "treasury_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "2050:17:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1117, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2050:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1120, + "mutability": "mutable", + "name": "calculationViews_", + "nodeType": "VariableDeclaration", + "scope": 1181, + "src": "2077:25:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1119, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2077:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1740:368:24" + }, + "returnParameters": { + "id": 1122, + "nodeType": "ParameterList", + "parameters": [], + "src": "2109:0:24" + }, + "scope": 1734, + "src": "1729:983:24", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1269, + "nodeType": "Block", + "src": "2807:1337:24", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1191, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "2880:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2880:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 1193, + "name": "DEPLOYER", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1096, + "src": "2894:8:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2880:22:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 1196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "2906:15:24", + "subExpression": { + "id": 1195, + "name": "hasInitialized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23249, + "src": "2907:14:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2880:41:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1190, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "2872:7:24", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2872:50:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1199, + "nodeType": "ExpressionStatement", + "src": "2872:50:24" + }, + { + "expression": { + "id": 1203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1200, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23251, + "src": "3056:5:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 1201, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "3064:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3064:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "3056:18:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1204, + "nodeType": "ExpressionStatement", + "src": "3056:18:24" + }, + { + "assignments": [ + 1206, + null + ], + "declarations": [ + { + "constant": false, + "id": 1206, + "mutability": "mutable", + "name": "status", + "nodeType": "VariableDeclaration", + "scope": 1269, + "src": "3247:11:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1205, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3247:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + null + ], + "id": 1248, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "expression": { + "id": 1214, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "3370:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "listCurrency", + "nodeType": "MemberAccess", + "referencedDeclaration": 57948, + "src": "3370:31:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$_t_uint16_$", + "typeString": "function NotionalGovernance.listCurrency(struct TokenStorage calldata,struct TokenStorage calldata,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8) returns (uint16)" + } + }, + "id": 1216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "3370:40:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 1218, + "name": "cETH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1090, + "src": "3445:4:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "66616c7365", + "id": 1219, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3451:5:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "expression": { + "id": 1220, + "name": "TokenType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57480, + "src": "3458:9:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_TokenType_$57480_$", + "typeString": "type(enum TokenType)" + } + }, + "id": 1221, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "cETH", + "nodeType": "MemberAccess", + "src": "3458:14:24", + "typeDescriptions": { + "typeIdentifier": "t_enum$_TokenType_$57480", + "typeString": "enum TokenType" + } + }, + { + "expression": { + "id": 1222, + "name": "Constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22832, + "src": "3474:9:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", + "typeString": "type(library Constants)" + } + }, + "id": 1223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "CETH_DECIMAL_PLACES", + "nodeType": "MemberAccess", + "referencedDeclaration": 22572, + "src": "3474:29:24", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "hexValue": "30", + "id": 1224, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3505:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_enum$_TokenType_$57480", + "typeString": "enum TokenType" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 1217, + "name": "TokenStorage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57689, + "src": "3432:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_TokenStorage_$57689_storage_ptr_$", + "typeString": "type(struct TokenStorage storage pointer)" + } + }, + "id": 1225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3432:75:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", + "typeString": "struct TokenStorage memory" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30", + "id": 1229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3600:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 1228, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3592:7:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3592:7:24", + "typeDescriptions": {} + } + }, + "id": 1230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3592:10:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "hexValue": "66616c7365", + "id": 1231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3604:5:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "expression": { + "id": 1232, + "name": "TokenType", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57480, + "src": "3611:9:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_enum$_TokenType_$57480_$", + "typeString": "type(enum TokenType)" + } + }, + "id": 1233, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "Ether", + "nodeType": "MemberAccess", + "src": "3611:15:24", + "typeDescriptions": { + "typeIdentifier": "t_enum$_TokenType_$57480", + "typeString": "enum TokenType" + } + }, + { + "expression": { + "id": 1234, + "name": "Constants", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22832, + "src": "3628:9:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", + "typeString": "type(library Constants)" + } + }, + "id": 1235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "ETH_DECIMAL_PLACES", + "nodeType": "MemberAccess", + "referencedDeclaration": 22584, + "src": "3628:28:24", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + { + "hexValue": "30", + "id": 1236, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3658:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_enum$_TokenType_$57480", + "typeString": "enum TokenType" + }, + { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 1226, + "name": "TokenStorage", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57689, + "src": "3579:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_TokenStorage_$57689_storage_ptr_$", + "typeString": "type(struct TokenStorage storage pointer)" + } + }, + "id": 1237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3579:81:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", + "typeString": "struct TokenStorage memory" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 1240, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3690:1:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 1239, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3682:7:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1238, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3682:7:24", + "typeDescriptions": {} + } + }, + "id": 1241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3682:10:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "hexValue": "66616c7365", + "id": 1242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3714:5:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "313333", + "id": 1243, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3741:3:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_133_by_1", + "typeString": "int_const 133" + }, + "value": "133" + }, + { + "hexValue": "3735", + "id": 1244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3801:2:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_75_by_1", + "typeString": "int_const 75" + }, + "value": "75" + }, + { + "hexValue": "313038", + "id": 1245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3841:3:24", + "typeDescriptions": { + "typeIdentifier": "t_rational_108_by_1", + "typeString": "int_const 108" + }, + "value": "108" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", + "typeString": "struct TokenStorage memory" + }, + { + "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", + "typeString": "struct TokenStorage memory" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_rational_133_by_1", + "typeString": "int_const 133" + }, + { + "typeIdentifier": "t_rational_75_by_1", + "typeString": "int_const 75" + }, + { + "typeIdentifier": "t_rational_108_by_1", + "typeString": "int_const 108" + } + ], + "expression": { + "id": 1212, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3326:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1213, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "3326:22:24", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 1246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3326:564:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "arguments": [ + { + "id": 1209, + "name": "GOVERNANCE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1072, + "src": "3284:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3276:7:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1207, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3276:7:24", + "typeDescriptions": {} + } + }, + "id": 1210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3276:19:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1211, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delegatecall", + "nodeType": "MemberAccess", + "src": "3276:32:24", + "typeDescriptions": { + "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "function (bytes memory) returns (bool,bytes memory)" + } + }, + "id": 1247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3276:628:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3246:658:24" + }, + { + "expression": { + "arguments": [ + { + "id": 1250, + "name": "status", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1206, + "src": "3922:6:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1249, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "3914:7:24", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3914:15:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1252, + "nodeType": "ExpressionStatement", + "src": "3914:15:24" + }, + { + "expression": { + "id": 1255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1253, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23251, + "src": "3940:5:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1254, + "name": "owner_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1183, + "src": "3948:6:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3940:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1256, + "nodeType": "ExpressionStatement", + "src": "3940:14:24" + }, + { + "expression": { + "id": 1259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1257, + "name": "pauseRouter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23253, + "src": "4038:11:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1258, + "name": "pauseRouter_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4052:12:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4038:26:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1260, + "nodeType": "ExpressionStatement", + "src": "4038:26:24" + }, + { + "expression": { + "id": 1263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1261, + "name": "pauseGuardian", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23255, + "src": "4074:13:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1262, + "name": "pauseGuardian_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1187, + "src": "4090:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "4074:30:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1264, + "nodeType": "ExpressionStatement", + "src": "4074:30:24" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1267, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1265, + "name": "hasInitialized", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 23249, + "src": "4115:14:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "74727565", + "id": 1266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4133:4:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4115:22:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1268, + "nodeType": "ExpressionStatement", + "src": "4115:22:24" + } + ] + }, + "functionSelector": "c0c53b8b", + "id": 1270, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "initialize", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1188, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1183, + "mutability": "mutable", + "name": "owner_", + "nodeType": "VariableDeclaration", + "scope": 1270, + "src": "2738:14:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1182, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2738:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1185, + "mutability": "mutable", + "name": "pauseRouter_", + "nodeType": "VariableDeclaration", + "scope": 1270, + "src": "2754:20:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1184, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2754:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1187, + "mutability": "mutable", + "name": "pauseGuardian_", + "nodeType": "VariableDeclaration", + "scope": 1270, + "src": "2776:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1186, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2776:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2737:62:24" + }, + "returnParameters": { + "id": 1189, + "nodeType": "ParameterList", + "parameters": [], + "src": "2807:0:24" + }, + "scope": 1734, + "src": "2718:1426:24", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1713, + "nodeType": "Block", + "src": "4385:5440:24", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1300, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1278, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4412:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1279, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "4419:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchBalanceAction", + "nodeType": "MemberAccess", + "referencedDeclaration": 57296, + "src": "4419:32:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchBalanceAction(address,struct BalanceAction calldata[] calldata) payable" + } + }, + "id": 1281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4419:41:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4412:48:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1283, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4476:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1284, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "4483:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchBalanceAndTradeAction", + "nodeType": "MemberAccess", + "referencedDeclaration": 57304, + "src": "4483:40:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchBalanceAndTradeAction(address,struct BalanceActionWithTrades calldata[] calldata) payable" + } + }, + "id": 1286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4483:49:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4476:56:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4412:120:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1289, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4548:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1290, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "4555:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchBalanceAndTradeActionWithCallback", + "nodeType": "MemberAccess", + "referencedDeclaration": 57314, + "src": "4555:52:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchBalanceAndTradeActionWithCallback(address,struct BalanceActionWithTrades calldata[] calldata,bytes calldata) payable" + } + }, + "id": 1292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4555:61:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4548:68:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4412:204:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1295, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4632:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1296, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "4639:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1297, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "batchLend", + "nodeType": "MemberAccess", + "referencedDeclaration": 57322, + "src": "4639:23:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalProxy.batchLend(address,struct BatchLend calldata[] calldata)" + } + }, + "id": 1298, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4639:32:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4632:39:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4412:259:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1326, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1304, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4749:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1305, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "4756:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenTotalSupply", + "nodeType": "MemberAccess", + "referencedDeclaration": 11541, + "src": "4756:30:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_address_$returns$_t_uint256_$", + "typeString": "function nTokenAction.nTokenTotalSupply(address) view returns (uint256)" + } + }, + "id": 1307, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4756:39:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4749:46:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1309, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4811:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1310, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "4818:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenBalanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 11572, + "src": "4818:28:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_address_$returns$_t_uint256_$", + "typeString": "function nTokenAction.nTokenBalanceOf(uint16,address) view returns (uint256)" + } + }, + "id": 1312, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4818:37:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4811:44:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:106:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1315, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4871:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1316, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "4878:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1317, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenTransferAllowance", + "nodeType": "MemberAccess", + "referencedDeclaration": 11610, + "src": "4878:36:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_address_$_t_address_$returns$_t_uint256_$", + "typeString": "function nTokenAction.nTokenTransferAllowance(uint16,address,address) view returns (uint256)" + } + }, + "id": 1318, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4878:45:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4871:52:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:174:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1321, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "4939:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1322, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "4946:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenTransferApprove", + "nodeType": "MemberAccess", + "referencedDeclaration": 11662, + "src": "4946:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function nTokenAction.nTokenTransferApprove(uint16,address,address,uint256) returns (bool)" + } + }, + "id": 1324, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "4946:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "4939:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:240:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1327, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5005:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1328, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "5012:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1329, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenTransfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 11711, + "src": "5012:27:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function nTokenAction.nTokenTransfer(uint16,address,address,uint256) returns (bool)" + } + }, + "id": 1330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5012:36:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5005:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:299:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1337, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1333, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5064:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1334, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "5071:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenTransferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 11822, + "src": "5071:31:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function nTokenAction.nTokenTransferFrom(uint16,address,address,address,uint256) returns (bool)" + } + }, + "id": 1336, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5071:40:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5064:47:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:362:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1339, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5127:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1340, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "5134:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1341, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenClaimIncentives", + "nodeType": "MemberAccess", + "referencedDeclaration": 11961, + "src": "5134:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$__$returns$_t_uint256_$", + "typeString": "function nTokenAction.nTokenClaimIncentives() returns (uint256)" + } + }, + "id": 1342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5134:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5127:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:428:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1345, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5193:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1346, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "5200:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1347, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenTransferApproveAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 11852, + "src": "5200:37:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function nTokenAction.nTokenTransferApproveAll(address,uint256) returns (bool)" + } + }, + "id": 1348, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5200:46:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5193:53:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:497:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1351, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5262:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1352, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "5269:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1353, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenPresentValueAssetDenominated", + "nodeType": "MemberAccess", + "referencedDeclaration": 11979, + "src": "5269:47:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$returns$_t_int256_$", + "typeString": "function nTokenAction.nTokenPresentValueAssetDenominated(uint16) view returns (int256)" + } + }, + "id": 1354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5269:56:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5262:63:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:576:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1357, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5341:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1358, + "name": "nTokenAction", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12193, + "src": "5348:12:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", + "typeString": "type(contract nTokenAction)" + } + }, + "id": 1359, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenPresentValueUnderlyingDenominated", + "nodeType": "MemberAccess", + "referencedDeclaration": 12004, + "src": "5348:52:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$returns$_t_int256_$", + "typeString": "function nTokenAction.nTokenPresentValueUnderlyingDenominated(uint16) view returns (int256)" + } + }, + "id": 1360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5348:61:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5341:68:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "4749:660:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1366, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5489:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1367, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "5496:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "depositUnderlyingToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 57265, + "src": "5496:36:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_uint16_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function NotionalProxy.depositUnderlyingToken(address,uint16,uint256) payable returns (uint256)" + } + }, + "id": 1369, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5496:45:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5489:52:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1371, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5557:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1372, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "5564:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1373, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "depositAssetToken", + "nodeType": "MemberAccess", + "referencedDeclaration": 57276, + "src": "5564:31:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function NotionalProxy.depositAssetToken(address,uint16,uint256) returns (uint256)" + } + }, + "id": 1374, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5564:40:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5557:47:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5489:115:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1377, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5620:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1378, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "5627:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "withdraw", + "nodeType": "MemberAccess", + "referencedDeclaration": 57287, + "src": "5627:22:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint88_$_t_bool_$returns$_t_uint256_$", + "typeString": "function NotionalProxy.withdraw(uint16,uint88,bool) returns (uint256)" + } + }, + "id": 1380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5627:31:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5620:38:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5489:169:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1383, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5674:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1384, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "5681:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "settleAccount", + "nodeType": "MemberAccess", + "referencedDeclaration": 57254, + "src": "5681:27:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", + "typeString": "function NotionalProxy.settleAccount(address)" + } + }, + "id": 1386, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5681:36:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5674:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5489:228:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1393, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1389, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5733:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1390, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "5740:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1391, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenRedeem", + "nodeType": "MemberAccess", + "referencedDeclaration": 57243, + "src": "5740:26:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$", + "typeString": "function NotionalProxy.nTokenRedeem(address,uint16,uint96,bool,bool) returns (int256)" + } + }, + "id": 1392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5740:35:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5733:42:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5489:286:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1399, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1395, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5791:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1396, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "5798:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "enableBitmapCurrency", + "nodeType": "MemberAccess", + "referencedDeclaration": 57249, + "src": "5798:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$returns$__$", + "typeString": "function NotionalProxy.enableBitmapCurrency(uint16)" + } + }, + "id": 1398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5798:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5791:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5489:352:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1462, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1450, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1404, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5921:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1405, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "5928:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1406, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "supportsInterface", + "nodeType": "MemberAccess", + "referencedDeclaration": 58119, + "src": "5928:35:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_pure$_t_bytes4_$returns$_t_bool_$", + "typeString": "function nERC1155Interface.supportsInterface(bytes4) pure returns (bool)" + } + }, + "id": 1407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5928:44:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5921:51:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1409, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "5988:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1410, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "5995:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1411, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "balanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 58128, + "src": "5995:27:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function nERC1155Interface.balanceOf(address,uint256) view returns (uint256)" + } + }, + "id": 1412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "5995:36:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "5988:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:110:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1415, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6047:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1416, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6054:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1417, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "balanceOfBatch", + "nodeType": "MemberAccess", + "referencedDeclaration": 58140, + "src": "6054:32:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_array$_t_address_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function nERC1155Interface.balanceOfBatch(address[] calldata,uint256[] calldata) view returns (uint256[] memory)" + } + }, + "id": 1418, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6054:41:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6047:48:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:174:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1421, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6111:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1422, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6118:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1423, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "signedBalanceOf", + "nodeType": "MemberAccess", + "referencedDeclaration": 58149, + "src": "6118:33:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_int256_$", + "typeString": "function nERC1155Interface.signedBalanceOf(address,uint256) view returns (int256)" + } + }, + "id": 1424, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6118:42:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6111:49:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:239:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1427, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6176:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1428, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6183:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1429, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "signedBalanceOfBatch", + "nodeType": "MemberAccess", + "referencedDeclaration": 58161, + "src": "6183:38:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_array$_t_address_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$", + "typeString": "function nERC1155Interface.signedBalanceOfBatch(address[] calldata,uint256[] calldata) view returns (int256[] memory)" + } + }, + "id": 1430, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6183:47:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6176:54:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:309:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1433, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6246:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1434, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6253:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "safeTransferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 58190, + "src": "6253:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_calldata_ptr_$returns$__$", + "typeString": "function nERC1155Interface.safeTransferFrom(address,address,uint256,uint256,bytes calldata) payable" + } + }, + "id": 1436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6253:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6246:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:375:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1439, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6312:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1440, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6319:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "safeBatchTransferFrom", + "nodeType": "MemberAccess", + "referencedDeclaration": 58205, + "src": "6319:39:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", + "typeString": "function nERC1155Interface.safeBatchTransferFrom(address,address,uint256[] calldata,uint256[] calldata,bytes calldata) payable" + } + }, + "id": 1442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6319:48:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6312:55:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:446:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1445, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6383:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1446, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6390:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1447, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decodeToAssets", + "nodeType": "MemberAccess", + "referencedDeclaration": 58217, + "src": "6390:32:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function nERC1155Interface.decodeToAssets(uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory)" + } + }, + "id": 1448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6390:41:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6383:48:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:510:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1451, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6447:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1452, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6454:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1453, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeToId", + "nodeType": "MemberAccess", + "referencedDeclaration": 58228, + "src": "6454:28:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_pure$_t_uint16_$_t_uint40_$_t_uint8_$returns$_t_uint256_$", + "typeString": "function nERC1155Interface.encodeToId(uint16,uint40,uint8) pure returns (uint256)" + } + }, + "id": 1454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6454:37:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6447:44:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:570:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1457, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6507:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1458, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6514:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "setApprovalForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 58168, + "src": "6514:35:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function nERC1155Interface.setApprovalForAll(address,bool)" + } + }, + "id": 1460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6514:44:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6507:51:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:637:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1463, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6574:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1464, + "name": "nERC1155Interface", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58229, + "src": "6581:17:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", + "typeString": "type(contract nERC1155Interface)" + } + }, + "id": 1465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "isApprovedForAll", + "nodeType": "MemberAccess", + "referencedDeclaration": 58177, + "src": "6581:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_address_$_t_address_$returns$_t_bool_$", + "typeString": "function nERC1155Interface.isApprovedForAll(address,address) view returns (bool)" + } + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6581:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6574:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "5921:703:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1472, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6697:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1473, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "6704:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "liquidateLocalCurrency", + "nodeType": "MemberAccess", + "referencedDeclaration": 57349, + "src": "6704:36:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$returns$_t_int256_$_t_int256_$", + "typeString": "function NotionalProxy.liquidateLocalCurrency(address,uint16,uint96) returns (int256,int256)" + } + }, + "id": 1475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6704:45:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6697:52:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1477, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6765:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1478, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "6772:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "liquidateCollateralCurrency", + "nodeType": "MemberAccess", + "referencedDeclaration": 57391, + "src": "6772:41:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_uint128_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$_t_int256_$_t_int256_$", + "typeString": "function NotionalProxy.liquidateCollateralCurrency(address,uint16,uint16,uint128,uint96,bool,bool) returns (int256,int256,int256)" + } + }, + "id": 1480, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6772:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6765:57:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6697:125:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1483, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6838:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1484, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "6845:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1485, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "calculateLocalCurrencyLiquidation", + "nodeType": "MemberAccess", + "referencedDeclaration": 57336, + "src": "6845:47:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$returns$_t_int256_$_t_int256_$", + "typeString": "function NotionalProxy.calculateLocalCurrencyLiquidation(address,uint16,uint96) returns (int256,int256)" + } + }, + "id": 1486, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6845:56:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6838:63:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6697:204:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1489, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "6917:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1490, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "6924:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1491, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "calculateCollateralCurrencyLiquidation", + "nodeType": "MemberAccess", + "referencedDeclaration": 57368, + "src": "6924:52:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_uint128_$_t_uint96_$returns$_t_int256_$_t_int256_$_t_int256_$", + "typeString": "function NotionalProxy.calculateCollateralCurrencyLiquidation(address,uint16,uint16,uint128,uint96) returns (int256,int256,int256)" + } + }, + "id": 1492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "6924:61:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "6917:68:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6697:288:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1498, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7069:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1499, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "7076:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "liquidatefCashLocal", + "nodeType": "MemberAccess", + "referencedDeclaration": 57427, + "src": "7076:33:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", + "typeString": "function NotionalProxy.liquidatefCashLocal(address,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" + } + }, + "id": 1501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7076:42:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7069:49:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1503, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7134:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1504, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "7141:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "liquidatefCashCrossCurrency", + "nodeType": "MemberAccess", + "referencedDeclaration": 57467, + "src": "7141:41:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", + "typeString": "function NotionalProxy.liquidatefCashCrossCurrency(address,uint16,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" + } + }, + "id": 1506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7141:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7134:57:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7069:122:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1509, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7207:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1510, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "7214:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "calculatefCashLocalLiquidation", + "nodeType": "MemberAccess", + "referencedDeclaration": 57409, + "src": "7214:44:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", + "typeString": "function NotionalProxy.calculatefCashLocalLiquidation(address,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" + } + }, + "id": 1512, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7214:53:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7207:60:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7069:198:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1515, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7283:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1516, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "7290:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1517, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "calculatefCashCrossCurrencyLiquidation", + "nodeType": "MemberAccess", + "referencedDeclaration": 57447, + "src": "7290:52:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", + "typeString": "function NotionalProxy.calculatefCashCrossCurrencyLiquidation(address,uint16,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" + } + }, + "id": 1518, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7290:61:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7283:68:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7069:282:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1524, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7432:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1525, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "7439:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "initializeMarkets", + "nodeType": "MemberAccess", + "referencedDeclaration": 57222, + "src": "7439:31:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_bool_$returns$__$", + "typeString": "function NotionalProxy.initializeMarkets(uint16,bool)" + } + }, + "id": 1527, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7439:40:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7432:47:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1529, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7495:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1530, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "7502:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1531, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "sweepCashIntoMarkets", + "nodeType": "MemberAccess", + "referencedDeclaration": 57227, + "src": "7502:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$returns$__$", + "typeString": "function NotionalProxy.sweepCashIntoMarkets(uint16)" + } + }, + "id": 1532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7502:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7495:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7432:113:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1566, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1554, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1548, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1538, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7628:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1539, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "7635:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "listCurrency", + "nodeType": "MemberAccess", + "referencedDeclaration": 57948, + "src": "7635:31:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$_t_uint16_$", + "typeString": "function NotionalGovernance.listCurrency(struct TokenStorage calldata,struct TokenStorage calldata,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8) returns (uint16)" + } + }, + "id": 1541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7635:40:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7628:47:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1543, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7691:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1544, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "7698:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1545, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "enableCashGroup", + "nodeType": "MemberAccess", + "referencedDeclaration": 57968, + "src": "7698:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AssetRateAdapter_$59041_$_t_struct$_CashGroupSettings_$57732_calldata_ptr_$_t_string_calldata_ptr_$_t_string_calldata_ptr_$returns$__$", + "typeString": "function NotionalGovernance.enableCashGroup(uint16,contract AssetRateAdapter,struct CashGroupSettings calldata,string calldata,string calldata)" + } + }, + "id": 1546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7698:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7691:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:113:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1553, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1549, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7757:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1550, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "7764:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1551, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateCashGroup", + "nodeType": "MemberAccess", + "referencedDeclaration": 58019, + "src": "7764:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_struct$_CashGroupSettings_$57732_calldata_ptr_$returns$__$", + "typeString": "function NotionalGovernance.updateCashGroup(uint16,struct CashGroupSettings calldata)" + } + }, + "id": 1552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7764:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7757:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:179:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1555, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7823:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1556, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "7830:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateAssetRate", + "nodeType": "MemberAccess", + "referencedDeclaration": 58026, + "src": "7830:34:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AssetRateAdapter_$59041_$returns$__$", + "typeString": "function NotionalGovernance.updateAssetRate(uint16,contract AssetRateAdapter)" + } + }, + "id": 1558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7830:43:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7823:50:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:245:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1565, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1561, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7889:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1562, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "7896:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateETHRate", + "nodeType": "MemberAccess", + "referencedDeclaration": 58041, + "src": "7896:32:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$__$", + "typeString": "function NotionalGovernance.updateETHRate(uint16,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8)" + } + }, + "id": 1564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7896:41:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7889:48:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:309:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1567, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "7953:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1568, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "7960:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1569, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "transferOwnership", + "nodeType": "MemberAccess", + "referencedDeclaration": 57919, + "src": "7960:36:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function NotionalGovernance.transferOwnership(address,bool)" + } + }, + "id": 1570, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "7960:45:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "7953:52:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:377:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1573, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8021:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1574, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8028:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "claimOwnership", + "nodeType": "MemberAccess", + "referencedDeclaration": 57922, + "src": "8028:33:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$__$returns$__$", + "typeString": "function NotionalGovernance.claimOwnership()" + } + }, + "id": 1576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8028:42:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8021:49:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:442:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1579, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8086:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1580, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8093:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateIncentiveEmissionRate", + "nodeType": "MemberAccess", + "referencedDeclaration": 57997, + "src": "8093:46:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint32_$returns$__$", + "typeString": "function NotionalGovernance.updateIncentiveEmissionRate(uint16,uint32)" + } + }, + "id": 1582, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8093:55:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8086:62:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:520:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1589, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1585, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8164:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1586, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8171:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateMaxCollateralBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 57955, + "src": "8171:45:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint72_$returns$__$", + "typeString": "function NotionalGovernance.updateMaxCollateralBalance(uint16,uint72)" + } + }, + "id": 1588, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8171:54:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8164:61:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:597:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1591, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8241:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1592, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8248:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1593, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateDepositParameters", + "nodeType": "MemberAccess", + "referencedDeclaration": 57979, + "src": "8248:42:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_array$_t_uint32_$dyn_calldata_ptr_$_t_array$_t_uint32_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalGovernance.updateDepositParameters(uint16,uint32[] calldata,uint32[] calldata)" + } + }, + "id": 1594, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8248:51:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8241:58:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:671:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1597, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8315:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1598, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8322:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateInitializationParameters", + "nodeType": "MemberAccess", + "referencedDeclaration": 57990, + "src": "8322:49:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_array$_t_uint32_$dyn_calldata_ptr_$_t_array$_t_uint32_$dyn_calldata_ptr_$returns$__$", + "typeString": "function NotionalGovernance.updateInitializationParameters(uint16,uint32[] calldata,uint32[] calldata)" + } + }, + "id": 1600, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8322:58:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8315:65:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:752:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1603, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8396:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1604, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8403:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateTokenCollateralParameters", + "nodeType": "MemberAccess", + "referencedDeclaration": 58012, + "src": "8403:50:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint8_$_t_uint8_$_t_uint8_$_t_uint8_$_t_uint8_$returns$__$", + "typeString": "function NotionalGovernance.updateTokenCollateralParameters(uint16,uint8,uint8,uint8,uint8,uint8)" + } + }, + "id": 1606, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8403:59:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8396:66:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:834:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1609, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8478:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1610, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8485:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1611, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateGlobalTransferOperator", + "nodeType": "MemberAccess", + "referencedDeclaration": 58048, + "src": "8485:47:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function NotionalGovernance.updateGlobalTransferOperator(address,bool)" + } + }, + "id": 1612, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8485:56:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8478:63:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:913:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1615, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8557:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1616, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8564:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "updateAuthorizedCallbackContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 58055, + "src": "8564:51:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", + "typeString": "function NotionalGovernance.updateAuthorizedCallbackContract(address,bool)" + } + }, + "id": 1618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8564:60:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8557:67:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:996:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1621, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8640:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1622, + "name": "NotionalGovernance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 58068, + "src": "8647:18:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", + "typeString": "type(contract NotionalGovernance)" + } + }, + "id": 1623, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "setLendingPool", + "nodeType": "MemberAccess", + "referencedDeclaration": 58060, + "src": "8647:33:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_contract$_ILendingPool_$60888_$returns$__$", + "typeString": "function NotionalGovernance.setLendingPool(contract ILendingPool)" + } + }, + "id": 1624, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8647:42:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8640:49:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:1061:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1627, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8705:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1628, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "8712:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1629, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "upgradeTo", + "nodeType": "MemberAccess", + "referencedDeclaration": 57187, + "src": "8712:23:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", + "typeString": "function NotionalProxy.upgradeTo(address)" + } + }, + "id": 1630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8712:32:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8705:39:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:1116:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1633, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8760:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1634, + "name": "NotionalProxy", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57468, + "src": "8767:13:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", + "typeString": "type(contract NotionalProxy)" + } + }, + "id": 1635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "upgradeToAndCall", + "nodeType": "MemberAccess", + "referencedDeclaration": 57194, + "src": "8767:30:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function NotionalProxy.upgradeToAndCall(address,bytes memory) payable" + } + }, + "id": 1636, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8767:39:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8760:46:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7628:1178:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1670, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1642, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8882:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1643, + "name": "NotionalTreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 59529, + "src": "8889:16:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", + "typeString": "type(contract NotionalTreasury)" + } + }, + "id": 1644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "claimCOMPAndTransfer", + "nodeType": "MemberAccess", + "referencedDeclaration": 59500, + "src": "8889:37:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_array$_t_address_$dyn_calldata_ptr_$returns$_t_uint256_$", + "typeString": "function NotionalTreasury.claimCOMPAndTransfer(address[] calldata) returns (uint256)" + } + }, + "id": 1645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8889:46:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8882:53:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1647, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "8951:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1648, + "name": "NotionalTreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 59529, + "src": "8958:16:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", + "typeString": "type(contract NotionalTreasury)" + } + }, + "id": 1649, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "transferReserveToTreasury", + "nodeType": "MemberAccess", + "referencedDeclaration": 59509, + "src": "8958:42:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_array$_t_uint16_$dyn_calldata_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", + "typeString": "function NotionalTreasury.transferReserveToTreasury(uint16[] calldata) returns (uint256[] memory)" + } + }, + "id": 1650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "8958:51:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "8951:58:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8882:127:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1653, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9025:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1654, + "name": "NotionalTreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 59529, + "src": "9032:16:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", + "typeString": "type(contract NotionalTreasury)" + } + }, + "id": 1655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "setTreasuryManager", + "nodeType": "MemberAccess", + "referencedDeclaration": 59514, + "src": "9032:35:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", + "typeString": "function NotionalTreasury.setTreasuryManager(address)" + } + }, + "id": 1656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9032:44:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9025:51:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8882:194:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1659, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9092:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1660, + "name": "NotionalTreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 59529, + "src": "9099:16:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", + "typeString": "type(contract NotionalTreasury)" + } + }, + "id": 1661, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "setReserveBuffer", + "nodeType": "MemberAccess", + "referencedDeclaration": 59521, + "src": "9099:33:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint256_$returns$__$", + "typeString": "function NotionalTreasury.setReserveBuffer(uint16,uint256)" + } + }, + "id": 1662, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9099:42:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9092:49:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8882:259:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1665, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9157:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1666, + "name": "NotionalTreasury", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 59529, + "src": "9164:16:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", + "typeString": "type(contract NotionalTreasury)" + } + }, + "id": 1667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "setReserveCashBalance", + "nodeType": "MemberAccess", + "referencedDeclaration": 59528, + "src": "9164:38:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_int256_$returns$__$", + "typeString": "function NotionalTreasury.setReserveCashBalance(uint16,int256)" + } + }, + "id": 1668, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9164:47:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9157:54:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "8882:329:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1674, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9285:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1675, + "name": "NotionalCalculations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57001, + "src": "9292:20:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", + "typeString": "type(contract NotionalCalculations)" + } + }, + "id": 1676, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "calculateNTokensToMint", + "nodeType": "MemberAccess", + "referencedDeclaration": 56963, + "src": "9292:43:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_uint88_$returns$_t_uint256_$", + "typeString": "function NotionalCalculations.calculateNTokensToMint(uint16,uint88) view returns (uint256)" + } + }, + "id": 1677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9292:52:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9285:59:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1679, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9360:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1680, + "name": "NotionalCalculations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57001, + "src": "9367:20:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", + "typeString": "type(contract NotionalCalculations)" + } + }, + "id": 1681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "getfCashAmountGivenCashAmount", + "nodeType": "MemberAccess", + "referencedDeclaration": 56976, + "src": "9367:50:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_int88_$_t_uint256_$_t_uint256_$returns$_t_int256_$", + "typeString": "function NotionalCalculations.getfCashAmountGivenCashAmount(uint16,int88,uint256,uint256) view returns (int256)" + } + }, + "id": 1682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9367:59:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9360:66:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9285:141:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1689, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1685, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9442:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1686, + "name": "NotionalCalculations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57001, + "src": "9449:20:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", + "typeString": "type(contract NotionalCalculations)" + } + }, + "id": 1687, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "getCashAmountGivenfCashAmount", + "nodeType": "MemberAccess", + "referencedDeclaration": 56991, + "src": "9449:50:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_int88_$_t_uint256_$_t_uint256_$returns$_t_int256_$_t_int256_$", + "typeString": "function NotionalCalculations.getCashAmountGivenfCashAmount(uint16,int88,uint256,uint256) view returns (int256,int256)" + } + }, + "id": 1688, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9449:59:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9442:66:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9285:223:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "id": 1695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1691, + "name": "sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1273, + "src": "9524:3:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "expression": { + "id": 1692, + "name": "NotionalCalculations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 57001, + "src": "9531:20:24", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", + "typeString": "type(contract NotionalCalculations)" + } + }, + "id": 1693, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "nTokenGetClaimableIncentives", + "nodeType": "MemberAccess", + "referencedDeclaration": 57000, + "src": "9531:49:24", + "typeDescriptions": { + "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function NotionalCalculations.nTokenGetClaimableIncentives(address,uint256) view returns (uint256)" + } + }, + "id": 1694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "selector", + "nodeType": "MemberAccess", + "src": "9531:58:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "9524:65:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9285:304:24", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1702, + "nodeType": "Block", + "src": "9655:164:24", + "statements": [ + { + "expression": { + "id": 1700, + "name": "VIEWS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1074, + "src": "9803:5:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1701, + "nodeType": "Return", + "src": "9796:12:24" + } + ] + }, + "id": 1703, + "nodeType": "IfStatement", + "src": "9268:551:24", + "trueBody": { + "id": 1699, + "nodeType": "Block", + "src": "9600:49:24", + "statements": [ + { + "expression": { + "id": 1697, + "name": "CALCULATION_VIEWS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1094, + "src": "9621:17:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1698, + "nodeType": "Return", + "src": "9614:24:24" + } + ] + } + }, + "id": 1704, + "nodeType": "IfStatement", + "src": "8865:954:24", + "trueBody": { + "id": 1673, + "nodeType": "Block", + "src": "9222:40:24", + "statements": [ + { + "expression": { + "id": 1671, + "name": "TREASURY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1092, + "src": "9243:8:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1672, + "nodeType": "Return", + "src": "9236:15:24" + } + ] + } + }, + "id": 1705, + "nodeType": "IfStatement", + "src": "7611:2208:24", + "trueBody": { + "id": 1641, + "nodeType": "Block", + "src": "8817:42:24", + "statements": [ + { + "expression": { + "id": 1639, + "name": "GOVERNANCE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1072, + "src": "8838:10:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1640, + "nodeType": "Return", + "src": "8831:17:24" + } + ] + } + }, + "id": 1706, + "nodeType": "IfStatement", + "src": "7415:2404:24", + "trueBody": { + "id": 1537, + "nodeType": "Block", + "src": "7556:49:24", + "statements": [ + { + "expression": { + "id": 1535, + "name": "INITIALIZE_MARKET", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1076, + "src": "7577:17:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1536, + "nodeType": "Return", + "src": "7570:24:24" + } + ] + } + }, + "id": 1707, + "nodeType": "IfStatement", + "src": "7052:2767:24", + "trueBody": { + "id": 1523, + "nodeType": "Block", + "src": "7362:47:24", + "statements": [ + { + "expression": { + "id": 1521, + "name": "LIQUIDATE_FCASH", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1088, + "src": "7383:15:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1522, + "nodeType": "Return", + "src": "7376:22:24" + } + ] + } + }, + "id": 1708, + "nodeType": "IfStatement", + "src": "6680:3139:24", + "trueBody": { + "id": 1497, + "nodeType": "Block", + "src": "6996:50:24", + "statements": [ + { + "expression": { + "id": 1495, + "name": "LIQUIDATE_CURRENCY", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1086, + "src": "7017:18:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1496, + "nodeType": "Return", + "src": "7010:25:24" + } + ] + } + }, + "id": 1709, + "nodeType": "IfStatement", + "src": "5904:3915:24", + "trueBody": { + "id": 1471, + "nodeType": "Block", + "src": "6635:39:24", + "statements": [ + { + "expression": { + "id": 1469, + "name": "ERC1155", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1084, + "src": "6656:7:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1470, + "nodeType": "Return", + "src": "6649:14:24" + } + ] + } + }, + "id": 1710, + "nodeType": "IfStatement", + "src": "5472:4347:24", + "trueBody": { + "id": 1403, + "nodeType": "Block", + "src": "5852:46:24", + "statements": [ + { + "expression": { + "id": 1401, + "name": "ACCOUNT_ACTION", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1082, + "src": "5873:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1402, + "nodeType": "Return", + "src": "5866:21:24" + } + ] + } + }, + "id": 1711, + "nodeType": "IfStatement", + "src": "4732:5087:24", + "trueBody": { + "id": 1365, + "nodeType": "Block", + "src": "5420:46:24", + "statements": [ + { + "expression": { + "id": 1363, + "name": "NTOKEN_ACTIONS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1078, + "src": "5441:14:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1364, + "nodeType": "Return", + "src": "5434:21:24" + } + ] + } + }, + "id": 1712, + "nodeType": "IfStatement", + "src": "4395:5424:24", + "trueBody": { + "id": 1303, + "nodeType": "Block", + "src": "4682:44:24", + "statements": [ + { + "expression": { + "id": 1301, + "name": "BATCH_ACTION", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1080, + "src": "4703:12:24", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 1277, + "id": 1302, + "nodeType": "Return", + "src": "4696:19:24" + } + ] + } + } + ] + }, + "documentation": { + "id": 1271, + "nodeType": "StructuredDocumentation", + "src": "4150:155:24", + "text": "@notice Returns the implementation contract for the method signature\n @param sig method signature to call\n @return implementation address" + }, + "functionSelector": "76e1df48", + "id": 1714, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getRouterImplementation", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1273, + "mutability": "mutable", + "name": "sig", + "nodeType": "VariableDeclaration", + "scope": 1714, + "src": "4343:10:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 1272, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "4343:6:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "4342:12:24" + }, + "returnParameters": { + "id": 1277, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1276, + "mutability": "mutable", + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1714, + "src": "4376:7:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1275, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4376:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4375:9:24" + }, + "scope": 1734, + "src": "4310:5515:24", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1721, + "nodeType": "Block", + "src": "10056:919:24", + "statements": [ + { + "AST": { + "nodeType": "YulBlock", + "src": "10131:838:24", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10384:1:24", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10387:1:24", + "type": "", + "value": "0" + }, + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nodeType": "YulIdentifier", + "src": "10390:12:24" + }, + "nodeType": "YulFunctionCall", + "src": "10390:14:24" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "10371:12:24" + }, + "nodeType": "YulFunctionCall", + "src": "10371:34:24" + }, + "nodeType": "YulExpressionStatement", + "src": "10371:34:24" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10532:74:24", + "value": { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "gas", + "nodeType": "YulIdentifier", + "src": "10559:3:24" + }, + "nodeType": "YulFunctionCall", + "src": "10559:5:24" + }, + { + "name": "implementation", + "nodeType": "YulIdentifier", + "src": "10566:14:24" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10582:1:24", + "type": "", + "value": "0" + }, + { + "arguments": [], + "functionName": { + "name": "calldatasize", + "nodeType": "YulIdentifier", + "src": "10585:12:24" + }, + "nodeType": "YulFunctionCall", + "src": "10585:14:24" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10601:1:24", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10604:1:24", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "delegatecall", + "nodeType": "YulIdentifier", + "src": "10546:12:24" + }, + "nodeType": "YulFunctionCall", + "src": "10546:60:24" + }, + "variables": [ + { + "name": "result", + "nodeType": "YulTypedName", + "src": "10536:6:24", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10674:1:24", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10677:1:24", + "type": "", + "value": "0" + }, + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nodeType": "YulIdentifier", + "src": "10680:14:24" + }, + "nodeType": "YulFunctionCall", + "src": "10680:16:24" + } + ], + "functionName": { + "name": "returndatacopy", + "nodeType": "YulIdentifier", + "src": "10659:14:24" + }, + "nodeType": "YulFunctionCall", + "src": "10659:38:24" + }, + "nodeType": "YulExpressionStatement", + "src": "10659:38:24" + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10800:67:24", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10829:1:24", + "type": "", + "value": "0" + }, + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nodeType": "YulIdentifier", + "src": "10832:14:24" + }, + "nodeType": "YulFunctionCall", + "src": "10832:16:24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "10822:6:24" + }, + "nodeType": "YulFunctionCall", + "src": "10822:27:24" + }, + "nodeType": "YulExpressionStatement", + "src": "10822:27:24" + } + ] + }, + "nodeType": "YulCase", + "src": "10793:74:24", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10798:1:24", + "type": "", + "value": "0" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10892:67:24", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10921:1:24", + "type": "", + "value": "0" + }, + { + "arguments": [], + "functionName": { + "name": "returndatasize", + "nodeType": "YulIdentifier", + "src": "10924:14:24" + }, + "nodeType": "YulFunctionCall", + "src": "10924:16:24" + } + ], + "functionName": { + "name": "return", + "nodeType": "YulIdentifier", + "src": "10914:6:24" + }, + "nodeType": "YulFunctionCall", + "src": "10914:27:24" + }, + "nodeType": "YulExpressionStatement", + "src": "10914:27:24" + } + ] + }, + "nodeType": "YulCase", + "src": "10884:75:24", + "value": "default" + } + ], + "expression": { + "name": "result", + "nodeType": "YulIdentifier", + "src": "10718:6:24" + }, + "nodeType": "YulSwitch", + "src": "10711:248:24" + } + ] + }, + "evmVersion": "istanbul", + "externalReferences": [ + { + "declaration": 1717, + "isOffset": false, + "isSlot": false, + "src": "10566:14:24", + "valueSize": 1 + } + ], + "id": 1720, + "nodeType": "InlineAssembly", + "src": "10122:847:24" + } + ] + }, + "documentation": { + "id": 1715, + "nodeType": "StructuredDocumentation", + "src": "9831:169:24", + "text": "@dev Delegates the current call to `implementation`.\n This function does not return to its internal call site, it will return directly to the external caller." + }, + "id": 1722, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_delegate", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1718, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1717, + "mutability": "mutable", + "name": "implementation", + "nodeType": "VariableDeclaration", + "scope": 1722, + "src": "10024:22:24", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1716, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10024:7:24", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10023:24:24" + }, + "returnParameters": { + "id": 1719, + "nodeType": "ParameterList", + "parameters": [], + "src": "10056:0:24" + }, + "scope": 1734, + "src": "10005:970:24", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "body": { + "id": 1732, + "nodeType": "Block", + "src": "11009:60:24", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "expression": { + "id": 1727, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "11053:3:24", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "src": "11053:7:24", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "id": 1726, + "name": "getRouterImplementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1714, + "src": "11029:23:24", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_address_$", + "typeString": "function (bytes4) view returns (address)" + } + }, + "id": 1729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11029:32:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1725, + "name": "_delegate", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1722, + "src": "11019:9:24", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 1730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11019:43:24", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1731, + "nodeType": "ExpressionStatement", + "src": "11019:43:24" + } + ] + }, + "id": 1733, + "implemented": true, + "kind": "fallback", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1723, + "nodeType": "ParameterList", + "parameters": [], + "src": "10989:2:24" + }, + "returnParameters": { + "id": 1724, + "nodeType": "ParameterList", + "parameters": [], + "src": "11009:0:24" + }, + "scope": 1734, + "src": "10981:88:24", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 1735, + "src": "1056:10103:24" + } + ], + "src": "41:11119:24" + }, + "bytecode": "6102206040523480156200001257600080fd5b50604051620013ee380380620013ee8339810160408190526200003591620000e0565b6001600160601b031960609c8d1b81166080529a8c1b8b1660a052988b1b8a1660c052968a1b891660e05294891b88166101005292881b87166101205290871b861661014052861b851661016052851b841661018052841b83166101a05233841b61020052831b82166101c05290911b166101e0526000805463ff00000019166301000000179055620001d4565b80516001600160a01b0381168114620000db57600080fd5b919050565b6000806000806000806000806000806000806101808d8f03121562000103578788fd5b6200010e8d620000c3565b9b506200011e60208e01620000c3565b9a506200012e60408e01620000c3565b99506200013e60608e01620000c3565b98506200014e60808e01620000c3565b97506200015e60a08e01620000c3565b96506200016e60c08e01620000c3565b95506200017e60e08e01620000c3565b94506200018f6101008e01620000c3565b9350620001a06101208e01620000c3565b9250620001b16101408e01620000c3565b9150620001c26101608e01620000c3565b90509295989b509295989b509295989b565b60805160601c60a05160601c60c05160601c60e05160601c6101005160601c6101205160601c6101405160601c6101605160601c6101805160601c6101a05160601c6101c05160601c6101e05160601c6102005160601c611122620002cc60003980610d49525080610b0d5280610cd2525080610a7c5280610c66525080610d1c5280610dba5250806107855280610beb5250806106f45280610c1e5250806106635280610c425250806105165280610c8a52508061031d5280610cae5250806104505280610bc75250806107e05280610f4c525080610b345280610b7f5250806109d05280610ba35280610de652506111226000f3fe6080604052600436106100fe5760003560e01c80636009b8e6116100955780638246336711610064578063824633671461023a5780638da5cb5b1461024f578063a1b4d01114610264578063c0c53b8b14610279578063dcc1a73814610299576100fe565b80636009b8e6146101db5780636d7cdbbf146101f057806372d271341461020557806376e1df481461021a576100fe565b806324a3d622116100d157806324a3d622146101875780632be758951461019c5780632d255471146101b15780632d2c5565146101c6576100fe565b80630c4e79351461011d578063146278341461014857806315beeb931461015d578063206109b514610172575b61011b6101166000356001600160e01b0319166102ae565b610b59565b005b34801561012957600080fd5b50610132610b7d565b60405161013f919061107f565b60405180910390f35b34801561015457600080fd5b50610132610ba1565b34801561016957600080fd5b50610132610bc5565b34801561017e57600080fd5b50610132610be9565b34801561019357600080fd5b50610132610c0d565b3480156101a857600080fd5b50610132610c1c565b3480156101bd57600080fd5b50610132610c40565b3480156101d257600080fd5b50610132610c64565b3480156101e757600080fd5b50610132610c88565b3480156101fc57600080fd5b50610132610cac565b34801561021157600080fd5b50610132610cd0565b34801561022657600080fd5b50610132610235366004610fc7565b6102ae565b34801561024657600080fd5b50610132610cf4565b34801561025b57600080fd5b50610132610d03565b34801561027057600080fd5b50610132610d1a565b34801561028557600080fd5b5061011b610294366004610f85565b610d3e565b3480156102a557600080fd5b50610132610f4a565b60006001600160e01b03198216633735195360e11b14806102df57506001600160e01b03198216630276b64b60e01b145b806102fa57506001600160e01b03198216635950d8e960e01b145b8061031557506001600160e01b03198216630541f52760e41b145b1561034157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a96e86f60e01b148061037057506001600160e01b0319821663a78dbfff60e01b145b8061038b57506001600160e01b03198216637db31ab960e01b145b806103a657506001600160e01b0319821663184e005360e11b145b806103c157506001600160e01b031982166318ae40d760e01b145b806103dc57506001600160e01b03198216634425384960e11b145b806103f757506001600160e01b03198216636d6503d360e11b145b8061041257506001600160e01b031982166305c1d97560e31b145b8061042d57506001600160e01b03198216631a05bce160e01b145b8061044857506001600160e01b03198216633b2987b360e01b145b1561047457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632890fb6560e01b14806104a357506001600160e01b0319821663b8a6945560e01b145b806104bd57506001600160e01b03198216625e665d60e31b145b806104d857506001600160e01b0319821663f667f89760e01b145b806104f357506001600160e01b03198216636689064360e01b145b8061050e57506001600160e01b031982166309c9794560e41b145b1561053a57507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b031982166301ffc9a760e01b148061056857506001600160e01b03198216627eeac760e11b145b8061058357506001600160e01b031982166313849cfd60e21b145b8061059e57506001600160e01b03198216630fac8f0960e01b145b806105b957506001600160e01b031982166381a8685560e01b145b806105d457506001600160e01b03198216637921219560e11b145b806105ef57506001600160e01b03198216631759616b60e11b145b8061060a57506001600160e01b031982166307f4d70160e31b145b8061062557506001600160e01b03198216630e6b43b960e31b145b8061064057506001600160e01b0319821663a22cb46560e01b145b8061065b57506001600160e01b0319821663e985e9c560e01b145b1561068757507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632d10e6eb60e01b14806106b657506001600160e01b03198216636633af3960e01b145b806106d157506001600160e01b0319821663e3e7cb4f60e01b145b806106ec57506001600160e01b03198216639a600eeb60e01b145b1561071857507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216631ff7aefd60e21b148061074757506001600160e01b0319821663e816469d60e01b145b8061076257506001600160e01b03198216630fb281d960e01b145b8061077d57506001600160e01b0319821663fa37e39560e01b145b156107a957507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216630343819360e61b14806107d857506001600160e01b03198216635db6eac760e11b145b1561080457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637abaf27160e11b148061083357506001600160e01b0319821663e31051a160e01b145b8061084e57506001600160e01b0319821663a11a429360e01b145b8061086957506001600160e01b03198216630528476560e51b145b8061088457506001600160e01b0319821663315cb2b960e21b145b8061089f57506001600160e01b03198216632c90b94d60e21b145b806108ba57506001600160e01b031982166309ce3c1960e31b145b806108d557506001600160e01b031982166354ebde2960e11b145b806108f057506001600160e01b031982166398dcbc2360e01b145b8061090b57506001600160e01b031982166333eabd1d60e21b145b8061092657506001600160e01b0319821663413f2c5f60e01b145b8061094157506001600160e01b03198216630d0da86760e21b145b8061095c57506001600160e01b0319821663353abc5d60e01b145b8061097757506001600160e01b0319821663fa17b5f160e01b145b8061099257506001600160e01b0319821663113aa8b160e01b145b806109ad57506001600160e01b03198216631b2ce7f360e11b145b806109c857506001600160e01b0319821663278f794360e11b145b156109f457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637d6dbff760e11b1480610a2357506001600160e01b03198216636d7a00eb60e01b145b80610a3e57506001600160e01b03198216637f23d4f960e11b145b80610a5957506001600160e01b0319821663239cec8f60e21b145b80610a7457506001600160e01b031982166312adc47b60e01b145b15610aa057507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a09a2a360e01b1480610acf57506001600160e01b03198216638355e89560e01b145b80610aea57506001600160e01b0319821663094614df60e01b145b80610b0557506001600160e01b03198216634beb6d9760e11b145b15610b3157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b507f00000000000000000000000000000000000000000000000000000000000000005b919050565b3660008037600080366000845af43d6000803e808015610b78573d6000f35b3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6002546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610d8057506000546301000000900460ff16155b610d8957600080fd5b60008054640100000000600160c01b03191633640100000000021781556040805160a0810182526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081168252602082018490527f00000000000000000000000000000000000000000000000000000000000000001691637abaf27160e11b9190810160028152600860208083019190915260006040928301819052825160a081018452818152918201529081016003815260126020820152600060409182018190529051610e6f939291908190608590604b90606c90602401611093565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ead9190611046565b600060405180830381855af49150503d8060008114610ee8576040519150601f19603f3d011682016040523d82523d6000602084013e610eed565b606091505b5050905080610efb57600080fd5b50600080546001600160a01b0394851664010000000002640100000000600160c01b0319909116179055600180549284166001600160a01b031993841617905560028054919093169116179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b80356001600160a01b0381168114610b5457600080fd5b600080600060608486031215610f99578283fd5b610fa284610f6e565b9250610fb060208501610f6e565b9150610fbe60408501610f6e565b90509250925092565b600060208284031215610fd8578081fd5b81356001600160e01b031981168114610fef578182fd5b9392505050565b80516001600160a01b0316825260208082015115159083015260408101516006811061101e57fe5b604083015260608181015160ff169083015260809081015168ffffffffffffffffff16910152565b60008251815b81811015611066576020818601810151858301520161104c565b818111156110745782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6101e081016110a2828a610ff6565b6110af60a0830189610ff6565b6001600160a01b039690961661014082015293151561016085015260ff9283166101808501529082166101a0840152166101c0909101529291505056fea26469706673582212203297c764dc6ad3f1b84384a7a27deb87fba8bfa8567881c47a81ca18ac28b6ff64736f6c63430007060033", + "bytecodeSha1": "1ee90eab3fe828251afc0d7472b9288567c5741e", + "compiler": { + "evm_version": "istanbul", + "optimizer": { + "enabled": true, + "runs": 200 + }, + "version": "0.7.6+commit.7338295f" + }, + "contractName": "Router", + "coverageMap": { + "branches": { + "24": { + "Router.getRouterImplementation": { + "18": [ + 4412, + 4460, + true + ], + "19": [ + 4476, + 4532, + true + ], + "20": [ + 4548, + 4616, + true + ], + "21": [ + 4632, + 4671, + false + ], + "22": [ + 4749, + 4795, + true + ], + "23": [ + 4811, + 4855, + true + ], + "24": [ + 4871, + 4923, + true + ], + "25": [ + 4939, + 4989, + true + ], + "26": [ + 5005, + 5048, + true + ], + "27": [ + 5064, + 5111, + true + ], + "28": [ + 5127, + 5177, + true + ], + "29": [ + 5193, + 5246, + true + ], + "30": [ + 5262, + 5325, + true + ], + "31": [ + 5341, + 5409, + false + ], + "32": [ + 5489, + 5541, + true + ], + "33": [ + 5557, + 5604, + true + ], + "34": [ + 5620, + 5658, + true + ], + "35": [ + 5674, + 5717, + true + ], + "36": [ + 5733, + 5775, + true + ], + "37": [ + 5791, + 5841, + false + ], + "38": [ + 5921, + 5972, + true + ], + "39": [ + 5988, + 6031, + true + ], + "40": [ + 6047, + 6095, + true + ], + "41": [ + 6111, + 6160, + true + ], + "42": [ + 6176, + 6230, + true + ], + "43": [ + 6246, + 6296, + true + ], + "44": [ + 6312, + 6367, + true + ], + "45": [ + 6383, + 6431, + true + ], + "46": [ + 6447, + 6491, + true + ], + "47": [ + 6507, + 6558, + true + ], + "48": [ + 6574, + 6624, + false + ], + "49": [ + 6697, + 6749, + true + ], + "50": [ + 6765, + 6822, + true + ], + "51": [ + 6838, + 6901, + true + ], + "52": [ + 6917, + 6985, + false + ], + "53": [ + 7069, + 7118, + true + ], + "54": [ + 7134, + 7191, + true + ], + "55": [ + 7207, + 7267, + true + ], + "56": [ + 7283, + 7351, + false + ], + "57": [ + 7432, + 7479, + true + ], + "58": [ + 7495, + 7545, + false + ], + "59": [ + 7628, + 7675, + true + ], + "60": [ + 7691, + 7741, + true + ], + "61": [ + 7757, + 7807, + true + ], + "62": [ + 7823, + 7873, + true + ], + "63": [ + 7889, + 7937, + true + ], + "64": [ + 7953, + 8005, + true + ], + "65": [ + 8021, + 8070, + true + ], + "66": [ + 8086, + 8148, + true + ], + "67": [ + 8164, + 8225, + true + ], + "68": [ + 8241, + 8299, + true + ], + "69": [ + 8315, + 8380, + true + ], + "70": [ + 8396, + 8462, + true + ], + "71": [ + 8478, + 8541, + true + ], + "72": [ + 8557, + 8624, + true + ], + "73": [ + 8640, + 8689, + true + ], + "74": [ + 8705, + 8744, + true + ], + "75": [ + 8760, + 8806, + false + ], + "76": [ + 8882, + 8935, + true + ], + "77": [ + 8951, + 9009, + true + ], + "78": [ + 9025, + 9076, + true + ], + "79": [ + 9092, + 9141, + true + ], + "80": [ + 9157, + 9211, + false + ], + "81": [ + 9285, + 9344, + true + ], + "82": [ + 9360, + 9426, + true + ], + "83": [ + 9442, + 9508, + true + ], + "84": [ + 9524, + 9589, + false + ] + }, + "Router.initialize": { + "85": [ + 2880, + 2902, + false + ], + "86": [ + 2907, + 2921, + true + ], + "87": [ + 3922, + 3928, + true + ] + } + }, + "60": {}, + "63": {}, + "65": {} + }, + "statements": { + "24": { + "Router.": { + "0": [ + 11019, + 11062 + ] + }, + "Router.getRouterImplementation": { + "1": [ + 4696, + 4715 + ], + "2": [ + 5434, + 5455 + ], + "3": [ + 5866, + 5887 + ], + "4": [ + 6649, + 6663 + ], + "5": [ + 7010, + 7035 + ], + "6": [ + 7376, + 7398 + ], + "7": [ + 7570, + 7594 + ], + "8": [ + 8831, + 8848 + ], + "9": [ + 9236, + 9251 + ], + "10": [ + 9614, + 9638 + ], + "11": [ + 9796, + 9808 + ] + }, + "Router.initialize": { + "12": [ + 2872, + 2922 + ], + "13": [ + 3056, + 3074 + ], + "14": [ + 3914, + 3929 + ], + "15": [ + 3940, + 3954 + ], + "16": [ + 4038, + 4064 + ], + "17": [ + 4074, + 4104 + ] + } + }, + "60": {}, + "63": {}, + "65": {} + } + }, + "dependencies": [ + "Constants", + "StorageLayoutV1" + ], + "deployedBytecode": "6080604052600436106100fe5760003560e01c80636009b8e6116100955780638246336711610064578063824633671461023a5780638da5cb5b1461024f578063a1b4d01114610264578063c0c53b8b14610279578063dcc1a73814610299576100fe565b80636009b8e6146101db5780636d7cdbbf146101f057806372d271341461020557806376e1df481461021a576100fe565b806324a3d622116100d157806324a3d622146101875780632be758951461019c5780632d255471146101b15780632d2c5565146101c6576100fe565b80630c4e79351461011d578063146278341461014857806315beeb931461015d578063206109b514610172575b61011b6101166000356001600160e01b0319166102ae565b610b59565b005b34801561012957600080fd5b50610132610b7d565b60405161013f919061107f565b60405180910390f35b34801561015457600080fd5b50610132610ba1565b34801561016957600080fd5b50610132610bc5565b34801561017e57600080fd5b50610132610be9565b34801561019357600080fd5b50610132610c0d565b3480156101a857600080fd5b50610132610c1c565b3480156101bd57600080fd5b50610132610c40565b3480156101d257600080fd5b50610132610c64565b3480156101e757600080fd5b50610132610c88565b3480156101fc57600080fd5b50610132610cac565b34801561021157600080fd5b50610132610cd0565b34801561022657600080fd5b50610132610235366004610fc7565b6102ae565b34801561024657600080fd5b50610132610cf4565b34801561025b57600080fd5b50610132610d03565b34801561027057600080fd5b50610132610d1a565b34801561028557600080fd5b5061011b610294366004610f85565b610d3e565b3480156102a557600080fd5b50610132610f4a565b60006001600160e01b03198216633735195360e11b14806102df57506001600160e01b03198216630276b64b60e01b145b806102fa57506001600160e01b03198216635950d8e960e01b145b8061031557506001600160e01b03198216630541f52760e41b145b1561034157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a96e86f60e01b148061037057506001600160e01b0319821663a78dbfff60e01b145b8061038b57506001600160e01b03198216637db31ab960e01b145b806103a657506001600160e01b0319821663184e005360e11b145b806103c157506001600160e01b031982166318ae40d760e01b145b806103dc57506001600160e01b03198216634425384960e11b145b806103f757506001600160e01b03198216636d6503d360e11b145b8061041257506001600160e01b031982166305c1d97560e31b145b8061042d57506001600160e01b03198216631a05bce160e01b145b8061044857506001600160e01b03198216633b2987b360e01b145b1561047457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632890fb6560e01b14806104a357506001600160e01b0319821663b8a6945560e01b145b806104bd57506001600160e01b03198216625e665d60e31b145b806104d857506001600160e01b0319821663f667f89760e01b145b806104f357506001600160e01b03198216636689064360e01b145b8061050e57506001600160e01b031982166309c9794560e41b145b1561053a57507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b031982166301ffc9a760e01b148061056857506001600160e01b03198216627eeac760e11b145b8061058357506001600160e01b031982166313849cfd60e21b145b8061059e57506001600160e01b03198216630fac8f0960e01b145b806105b957506001600160e01b031982166381a8685560e01b145b806105d457506001600160e01b03198216637921219560e11b145b806105ef57506001600160e01b03198216631759616b60e11b145b8061060a57506001600160e01b031982166307f4d70160e31b145b8061062557506001600160e01b03198216630e6b43b960e31b145b8061064057506001600160e01b0319821663a22cb46560e01b145b8061065b57506001600160e01b0319821663e985e9c560e01b145b1561068757507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632d10e6eb60e01b14806106b657506001600160e01b03198216636633af3960e01b145b806106d157506001600160e01b0319821663e3e7cb4f60e01b145b806106ec57506001600160e01b03198216639a600eeb60e01b145b1561071857507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216631ff7aefd60e21b148061074757506001600160e01b0319821663e816469d60e01b145b8061076257506001600160e01b03198216630fb281d960e01b145b8061077d57506001600160e01b0319821663fa37e39560e01b145b156107a957507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216630343819360e61b14806107d857506001600160e01b03198216635db6eac760e11b145b1561080457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637abaf27160e11b148061083357506001600160e01b0319821663e31051a160e01b145b8061084e57506001600160e01b0319821663a11a429360e01b145b8061086957506001600160e01b03198216630528476560e51b145b8061088457506001600160e01b0319821663315cb2b960e21b145b8061089f57506001600160e01b03198216632c90b94d60e21b145b806108ba57506001600160e01b031982166309ce3c1960e31b145b806108d557506001600160e01b031982166354ebde2960e11b145b806108f057506001600160e01b031982166398dcbc2360e01b145b8061090b57506001600160e01b031982166333eabd1d60e21b145b8061092657506001600160e01b0319821663413f2c5f60e01b145b8061094157506001600160e01b03198216630d0da86760e21b145b8061095c57506001600160e01b0319821663353abc5d60e01b145b8061097757506001600160e01b0319821663fa17b5f160e01b145b8061099257506001600160e01b0319821663113aa8b160e01b145b806109ad57506001600160e01b03198216631b2ce7f360e11b145b806109c857506001600160e01b0319821663278f794360e11b145b156109f457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637d6dbff760e11b1480610a2357506001600160e01b03198216636d7a00eb60e01b145b80610a3e57506001600160e01b03198216637f23d4f960e11b145b80610a5957506001600160e01b0319821663239cec8f60e21b145b80610a7457506001600160e01b031982166312adc47b60e01b145b15610aa057507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a09a2a360e01b1480610acf57506001600160e01b03198216638355e89560e01b145b80610aea57506001600160e01b0319821663094614df60e01b145b80610b0557506001600160e01b03198216634beb6d9760e11b145b15610b3157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b507f00000000000000000000000000000000000000000000000000000000000000005b919050565b3660008037600080366000845af43d6000803e808015610b78573d6000f35b3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6002546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610d8057506000546301000000900460ff16155b610d8957600080fd5b60008054640100000000600160c01b03191633640100000000021781556040805160a0810182526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081168252602082018490527f00000000000000000000000000000000000000000000000000000000000000001691637abaf27160e11b9190810160028152600860208083019190915260006040928301819052825160a081018452818152918201529081016003815260126020820152600060409182018190529051610e6f939291908190608590604b90606c90602401611093565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ead9190611046565b600060405180830381855af49150503d8060008114610ee8576040519150601f19603f3d011682016040523d82523d6000602084013e610eed565b606091505b5050905080610efb57600080fd5b50600080546001600160a01b0394851664010000000002640100000000600160c01b0319909116179055600180549284166001600160a01b031993841617905560028054919093169116179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b80356001600160a01b0381168114610b5457600080fd5b600080600060608486031215610f99578283fd5b610fa284610f6e565b9250610fb060208501610f6e565b9150610fbe60408501610f6e565b90509250925092565b600060208284031215610fd8578081fd5b81356001600160e01b031981168114610fef578182fd5b9392505050565b80516001600160a01b0316825260208082015115159083015260408101516006811061101e57fe5b604083015260608181015160ff169083015260809081015168ffffffffffffffffff16910152565b60008251815b81811015611066576020818601810151858301520161104c565b818111156110745782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6101e081016110a2828a610ff6565b6110af60a0830189610ff6565b6001600160a01b039690961661014082015293151561016085015260ff9283166101808501529082166101a0840152166101c0909101529291505056fea26469706673582212203297c764dc6ad3f1b84384a7a27deb87fba8bfa8567881c47a81ca18ac28b6ff64736f6c63430007060033", + "deployedSourceMap": "1056:10103:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11019:43;11029:32;11053:7;;-1:-1:-1;;;;;;11053:7:24;11029:23;:32::i;:::-;11019:9;:43::i;:::-;1056:10103;1216:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1175:35;;;;;;;;;;;;;:::i;1300:39::-;;;;;;;;;;;;;:::i;1520:40::-;;;;;;;;;;;;;:::i;1035:28:63:-;;;;;;;;;;;;;:::i;1471:43:24:-;;;;;;;;;;;;;:::i;1433:32::-;;;;;;;;;;;;;:::i;1601:33::-;;;;;;;;;;;;;:::i;1388:39::-;;;;;;;;;;;;;:::i;1345:37::-;;;;;;;;;;;;;:::i;1640:42::-;;;;;;;;;;;;;:::i;4310:5515::-;;;;;;;;;;-1:-1:-1;4310:5515:24;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;1566:29:24:-;;;;;;;;;;;;;:::i;2718:1426::-;;;;;;;;;;-1:-1:-1;2718:1426:24;;;;;:::i;:::-;;:::i;1252:42::-;;;;;;;;;;;;;:::i;4310:5515::-;4376:7;-1:-1:-1;;;;;;4412:48:24;;-1:-1:-1;;;4412:48:24;;:120;;-1:-1:-1;;;;;;;4476:56:24;;-1:-1:-1;;;4476:56:24;4412:120;:204;;;-1:-1:-1;;;;;;;4548:68:24;;-1:-1:-1;;;4548:68:24;4412:204;:259;;;-1:-1:-1;;;;;;;4632:39:24;;-1:-1:-1;;;4632:39:24;4412:259;4395:5424;;;-1:-1:-1;4703:12:24;4696:19;;4395:5424;-1:-1:-1;;;;;;4749:46:24;;-1:-1:-1;;;4749:46:24;;:106;;-1:-1:-1;;;;;;;4811:44:24;;-1:-1:-1;;;4811:44:24;4749:106;:174;;;-1:-1:-1;;;;;;;4871:52:24;;-1:-1:-1;;;4871:52:24;4749:174;:240;;;-1:-1:-1;;;;;;;4939:50:24;;-1:-1:-1;;;4939:50:24;4749:240;:299;;;-1:-1:-1;;;;;;;5005:43:24;;-1:-1:-1;;;5005:43:24;4749:299;:362;;;-1:-1:-1;;;;;;;5064:47:24;;-1:-1:-1;;;5064:47:24;4749:362;:428;;;-1:-1:-1;;;;;;;5127:50:24;;-1:-1:-1;;;5127:50:24;4749:428;:497;;;-1:-1:-1;;;;;;;5193:53:24;;-1:-1:-1;;;5193:53:24;4749:497;:576;;;-1:-1:-1;;;;;;;5262:63:24;;-1:-1:-1;;;5262:63:24;4749:576;:660;;;-1:-1:-1;;;;;;;5341:68:24;;-1:-1:-1;;;5341:68:24;4749:660;4732:5087;;;-1:-1:-1;5441:14:24;5434:21;;4732:5087;-1:-1:-1;;;;;;5489:52:24;;-1:-1:-1;;;5489:52:24;;:115;;-1:-1:-1;;;;;;;5557:47:24;;-1:-1:-1;;;5557:47:24;5489:115;:169;;;-1:-1:-1;;;;;;;5620:38:24;;-1:-1:-1;;;5620:38:24;5489:169;:228;;;-1:-1:-1;;;;;;;5674:43:24;;-1:-1:-1;;;5674:43:24;5489:228;:286;;;-1:-1:-1;;;;;;;5733:42:24;;-1:-1:-1;;;5733:42:24;5489:286;:352;;;-1:-1:-1;;;;;;;5791:50:24;;-1:-1:-1;;;5791:50:24;5489:352;5472:4347;;;-1:-1:-1;5873:14:24;5866:21;;5472:4347;-1:-1:-1;;;;;;5921:51:24;;-1:-1:-1;;;5921:51:24;;:110;;-1:-1:-1;;;;;;;5988:43:24;;-1:-1:-1;;;5988:43:24;5921:110;:174;;;-1:-1:-1;;;;;;;6047:48:24;;-1:-1:-1;;;6047:48:24;5921:174;:239;;;-1:-1:-1;;;;;;;6111:49:24;;-1:-1:-1;;;6111:49:24;5921:239;:309;;;-1:-1:-1;;;;;;;6176:54:24;;-1:-1:-1;;;6176:54:24;5921:309;:375;;;-1:-1:-1;;;;;;;6246:50:24;;-1:-1:-1;;;6246:50:24;5921:375;:446;;;-1:-1:-1;;;;;;;6312:55:24;;-1:-1:-1;;;6312:55:24;5921:446;:510;;;-1:-1:-1;;;;;;;6383:48:24;;-1:-1:-1;;;6383:48:24;5921:510;:570;;;-1:-1:-1;;;;;;;6447:44:24;;-1:-1:-1;;;6447:44:24;5921:570;:637;;;-1:-1:-1;;;;;;;6507:51:24;;-1:-1:-1;;;6507:51:24;5921:637;:703;;;-1:-1:-1;;;;;;;6574:50:24;;-1:-1:-1;;;6574:50:24;5921:703;5904:3915;;;-1:-1:-1;6656:7:24;6649:14;;5904:3915;-1:-1:-1;;;;;;6697:52:24;;-1:-1:-1;;;6697:52:24;;:125;;-1:-1:-1;;;;;;;6765:57:24;;-1:-1:-1;;;6765:57:24;6697:125;:204;;;-1:-1:-1;;;;;;;6838:63:24;;-1:-1:-1;;;6838:63:24;6697:204;:288;;;-1:-1:-1;;;;;;;6917:68:24;;-1:-1:-1;;;6917:68:24;6697:288;6680:3139;;;-1:-1:-1;7017:18:24;7010:25;;6680:3139;-1:-1:-1;;;;;;7069:49:24;;-1:-1:-1;;;7069:49:24;;:122;;-1:-1:-1;;;;;;;7134:57:24;;-1:-1:-1;;;7134:57:24;7069:122;:198;;;-1:-1:-1;;;;;;;7207:60:24;;-1:-1:-1;;;7207:60:24;7069:198;:282;;;-1:-1:-1;;;;;;;7283:68:24;;-1:-1:-1;;;7283:68:24;7069:282;7052:2767;;;-1:-1:-1;7383:15:24;7376:22;;7052:2767;-1:-1:-1;;;;;;7432:47:24;;-1:-1:-1;;;7432:47:24;;:113;;-1:-1:-1;;;;;;;7495:50:24;;-1:-1:-1;;;7495:50:24;7432:113;7415:2404;;;-1:-1:-1;7577:17:24;7570:24;;7415:2404;-1:-1:-1;;;;;;7628:47:24;;-1:-1:-1;;;7628:47:24;;:113;;-1:-1:-1;;;;;;;7691:50:24;;-1:-1:-1;;;7691:50:24;7628:113;:179;;;-1:-1:-1;;;;;;;7757:50:24;;-1:-1:-1;;;7757:50:24;7628:179;:245;;;-1:-1:-1;;;;;;;7823:50:24;;-1:-1:-1;;;7823:50:24;7628:245;:309;;;-1:-1:-1;;;;;;;7889:48:24;;-1:-1:-1;;;7889:48:24;7628:309;:377;;;-1:-1:-1;;;;;;;7953:52:24;;-1:-1:-1;;;7953:52:24;7628:377;:442;;;-1:-1:-1;;;;;;;8021:49:24;;-1:-1:-1;;;8021:49:24;7628:442;:520;;;-1:-1:-1;;;;;;;8086:62:24;;-1:-1:-1;;;8086:62:24;7628:520;:597;;;-1:-1:-1;;;;;;;8164:61:24;;-1:-1:-1;;;8164:61:24;7628:597;:671;;;-1:-1:-1;;;;;;;8241:58:24;;-1:-1:-1;;;8241:58:24;7628:671;:752;;;-1:-1:-1;;;;;;;8315:65:24;;-1:-1:-1;;;8315:65:24;7628:752;:834;;;-1:-1:-1;;;;;;;8396:66:24;;-1:-1:-1;;;8396:66:24;7628:834;:913;;;-1:-1:-1;;;;;;;8478:63:24;;-1:-1:-1;;;8478:63:24;7628:913;:996;;;-1:-1:-1;;;;;;;8557:67:24;;-1:-1:-1;;;8557:67:24;7628:996;:1061;;;-1:-1:-1;;;;;;;8640:49:24;;-1:-1:-1;;;8640:49:24;7628:1061;:1116;;;-1:-1:-1;;;;;;;8705:39:24;;-1:-1:-1;;;8705:39:24;7628:1116;:1178;;;-1:-1:-1;;;;;;;8760:46:24;;-1:-1:-1;;;8760:46:24;7628:1178;7611:2208;;;-1:-1:-1;8838:10:24;8831:17;;7611:2208;-1:-1:-1;;;;;;8882:53:24;;-1:-1:-1;;;8882:53:24;;:127;;-1:-1:-1;;;;;;;8951:58:24;;-1:-1:-1;;;8951:58:24;8882:127;:194;;;-1:-1:-1;;;;;;;9025:51:24;;-1:-1:-1;;;9025:51:24;8882:194;:259;;;-1:-1:-1;;;;;;;9092:49:24;;-1:-1:-1;;;9092:49:24;8882:259;:329;;;-1:-1:-1;;;;;;;9157:54:24;;-1:-1:-1;;;9157:54:24;8882:329;8865:954;;;-1:-1:-1;9243:8:24;9236:15;;8865:954;-1:-1:-1;;;;;;9285:59:24;;-1:-1:-1;;;9285:59:24;;:141;;-1:-1:-1;;;;;;;9360:66:24;;-1:-1:-1;;;9360:66:24;9285:141;:223;;;-1:-1:-1;;;;;;;9442:66:24;;-1:-1:-1;;;9442:66:24;9285:223;:304;;;-1:-1:-1;;;;;;;9524:65:24;;-1:-1:-1;;;9524:65:24;9285:304;9268:551;;;-1:-1:-1;9621:17:24;9614:24;;9268:551;-1:-1:-1;9803:5:24;9268:551;4310:5515;;;:::o;10005:970::-;10390:14;10387:1;10384;10371:34;10604:1;10601;10585:14;10582:1;10566:14;10559:5;10546:60;10680:16;10677:1;10674;10659:38;10718:6;10793:74;;;;10924:16;10921:1;10914:27;10793:74;10832:16;10829:1;10822:27;1216:30;;;:::o;1175:35::-;;;:::o;1300:39::-;;;:::o;1520:40::-;;;:::o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;1471:43:24:-;;;:::o;1433:32::-;;;:::o;1601:33::-;;;:::o;1388:39::-;;;:::o;1345:37::-;;;:::o;1640:42::-;;;:::o;920:26:63:-;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;1566:29:24:-;;;:::o;2718:1426::-;2880:10;-1:-1:-1;;;;;2894:8:24;2880:22;;:41;;;;-1:-1:-1;2907:14:24;;;;;;;2906:15;2880:41;2872:50;;;;;;3056:5;:18;;-1:-1:-1;;;;;;3056:18:24;3064:10;3056:18;;;;;3432:75;;;;;;;;-1:-1:-1;;;;;3445:4:24;3432:75;;;;;;;;;;3284:10;3276:32;;-1:-1:-1;;;3370:40:24;3432:75;;;3458:14;3432:75;;217:1:60;3432:75:24;;;;;;;;-1:-1:-1;3432:75:24;;;;;;;3579:81;;;;;;;;;;;;;;;;;3611:15;3579:81;;659:2:60;3579:81:24;;;;-1:-1:-1;3579:81:24;;;;;;;3326:564;;;;;;-1:-1:-1;;;3741:3:24;;3801:2;;3841:3;;3326:564;;;:::i;:::-;;;;-1:-1:-1;;3326:564:24;;;;;;;;;;;;;;-1:-1:-1;;;;;3326:564:24;-1:-1:-1;;;;;;3326:564:24;;;;;;;;;;3276:628;;;;3326:564;3276:628;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3246:658;;;3922:6;3914:15;;;;;;-1:-1:-1;3940:5:24;:14;;-1:-1:-1;;;;;3940:14:24;;;;;-1:-1:-1;;;;;;3940:14:24;;;;;;-1:-1:-1;4038:26:24;;;;;-1:-1:-1;;;;;;4038:26:24;;;;;;4074:13;:30;;;;;;;;;;;2718:1426::o;1252:42::-;;;:::o;14:175:168:-;84:20;;-1:-1:-1;;;;;133:31:168;;123:42;;113:2;;179:1;176;169:12;194:350;;;;340:2;328:9;319:7;315:23;311:32;308:2;;;361:6;353;346:22;308:2;389:31;410:9;389:31;:::i;:::-;379:41;;439:40;475:2;464:9;460:18;439:40;:::i;:::-;429:50;;498:40;534:2;523:9;519:18;498:40;:::i;:::-;488:50;;298:246;;;;;:::o;549:306::-;;660:2;648:9;639:7;635:23;631:32;628:2;;;681:6;673;666:22;628:2;712:23;;-1:-1:-1;;;;;;764:32:168;;754:43;;744:2;;816:6;808;801:22;744:2;844:5;618:237;-1:-1:-1;;;618:237:168:o;860:498::-;945:12;;-1:-1:-1;;;;;941:38:168;929:51;;1043:4;1032:16;;;1026:23;1019:31;1012:39;996:14;;;989:63;1098:4;1087:16;;1081:23;1140:1;1123:19;;1113:2;;1146:9;1113:2;1182:4;1173:14;;1166:36;1255:4;1244:16;;;1238:23;1263:4;1234:34;1218:14;;;1211:58;1322:4;1311:16;;;1305:23;1330:20;1301:50;1285:14;;1278:74;919:439::o;1363:430::-;;1530:6;1524:13;1555:3;1567:129;1581:6;1578:1;1575:13;1567:129;;;1679:4;1663:14;;;1659:25;;1653:32;1640:11;;;1633:53;1596:12;1567:129;;;1714:6;1711:1;1708:13;1705:2;;;1749:3;1740:6;1735:3;1731:16;1724:29;1705:2;-1:-1:-1;1771:16:168;;;;;1500:293;-1:-1:-1;;1500:293:168:o;1798:203::-;-1:-1:-1;;;;;1962:32:168;;;;1944:51;;1932:2;1917:18;;1899:102::o;2006:896::-;2465:3;2450:19;;2478:52;2454:9;2512:6;2478:52;:::i;:::-;2539:62;2596:3;2585:9;2581:19;2573:6;2539:62;:::i;:::-;-1:-1:-1;;;;;2638:32:168;;;;2632:3;2617:19;;2610:61;2715:14;;2708:22;2702:3;2687:19;;2680:51;2780:4;2768:17;;;2762:3;2747:19;;2740:46;2823:17;;;2817:3;2802:19;;2795:46;2878:17;2872:3;2857:19;;;2850:46;2432:470;;-1:-1:-1;;2432:470:168:o", + "language": "Solidity", + "natspec": { + "kind": "dev", + "methods": { + "getRouterImplementation(bytes4)": { + "notice": "Returns the implementation contract for the method signature", + "params": { + "sig": "method signature to call" + }, + "returns": { + "_0": "implementation address" + } + } + }, + "notice": "Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing contracts. This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a new Router with the new hardcoded addresses will then be deployed and upgraded into place.", + "version": 1 + }, + "offset": [ + 1056, + 11159 + ], + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xFE JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6009B8E6 GT PUSH2 0x95 JUMPI DUP1 PUSH4 0x82463367 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x23A JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xA1B4D011 EQ PUSH2 0x264 JUMPI DUP1 PUSH4 0xC0C53B8B EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xDCC1A738 EQ PUSH2 0x299 JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0x6009B8E6 EQ PUSH2 0x1DB JUMPI DUP1 PUSH4 0x6D7CDBBF EQ PUSH2 0x1F0 JUMPI DUP1 PUSH4 0x72D27134 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0x76E1DF48 EQ PUSH2 0x21A JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0x24A3D622 GT PUSH2 0xD1 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x187 JUMPI DUP1 PUSH4 0x2BE75895 EQ PUSH2 0x19C JUMPI DUP1 PUSH4 0x2D255471 EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x2D2C5565 EQ PUSH2 0x1C6 JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0xC4E7935 EQ PUSH2 0x11D JUMPI DUP1 PUSH4 0x14627834 EQ PUSH2 0x148 JUMPI DUP1 PUSH4 0x15BEEB93 EQ PUSH2 0x15D JUMPI DUP1 PUSH4 0x206109B5 EQ PUSH2 0x172 JUMPI JUMPDEST PUSH2 0x11B PUSH2 0x116 PUSH1 0x0 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND PUSH2 0x2AE JUMP JUMPDEST PUSH2 0xB59 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x129 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xB7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x13F SWAP2 SWAP1 PUSH2 0x107F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x154 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBA1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x169 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBC5 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBE9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x193 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC0D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1A8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC1C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC40 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC64 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC88 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCAC JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCD0 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x226 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0x235 CALLDATASIZE PUSH1 0x4 PUSH2 0xFC7 JUMP JUMPDEST PUSH2 0x2AE JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x246 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCF4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x25B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xD03 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x270 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xD1A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x285 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x11B PUSH2 0x294 CALLDATASIZE PUSH1 0x4 PUSH2 0xF85 JUMP JUMPDEST PUSH2 0xD3E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xF4A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x37351953 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0x2DF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x276B64B PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x2FA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5950D8E9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x315 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x541F527 PUSH1 0xE4 SHL EQ JUMPDEST ISZERO PUSH2 0x341 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6A96E86F PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x370 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA78DBFFF PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x38B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7DB31AB9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x3A6 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x184E0053 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x3C1 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x18AE40D7 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x3DC JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x44253849 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x3F7 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6D6503D3 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x412 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5C1D975 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x42D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1A05BCE1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x448 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x3B2987B3 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x474 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2890FB65 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x4A3 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xB8A69455 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x4BD JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH3 0x5E665D PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x4D8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xF667F897 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x4F3 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x66890643 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x50E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9C97945 PUSH1 0xE4 SHL EQ JUMPDEST ISZERO PUSH2 0x53A JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1FFC9A7 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x568 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH3 0x7EEAC7 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x583 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x13849CFD PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x59E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFAC8F09 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x5B9 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x81A86855 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x5D4 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x79212195 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x5EF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1759616B PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x60A JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7F4D701 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x625 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE6B43B9 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x640 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA22CB465 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x65B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE985E9C5 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x687 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2D10E6EB PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x6B6 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6633AF39 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x6D1 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE3E7CB4F PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x6EC JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9A600EEB PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x718 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1FF7AEFD PUSH1 0xE2 SHL EQ DUP1 PUSH2 0x747 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE816469D PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x762 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFB281D9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x77D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFA37E395 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x7A9 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x3438193 PUSH1 0xE6 SHL EQ DUP1 PUSH2 0x7D8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5DB6EAC7 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0x804 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7ABAF271 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0x833 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE31051A1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x84E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA11A4293 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x869 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5284765 PUSH1 0xE5 SHL EQ JUMPDEST DUP1 PUSH2 0x884 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x315CB2B9 PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x89F JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2C90B94D PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x8BA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9CE3C19 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x8D5 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x54EBDE29 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x8F0 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x98DCBC23 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x90B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x33EABD1D PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x926 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x413F2C5F PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x941 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xD0DA867 PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x95C JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x353ABC5D PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x977 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFA17B5F1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x992 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x113AA8B1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x9AD JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1B2CE7F3 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x9C8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x278F7943 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0x9F4 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7D6DBFF7 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0xA23 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6D7A00EB PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xA3E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7F23D4F9 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0xA59 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x239CEC8F PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0xA74 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x12ADC47B PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0xAA0 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6A09A2A3 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0xACF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x8355E895 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xAEA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x94614DF PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xB05 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x4BEB6D97 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0xB31 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST POP PUSH32 0x0 JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST CALLDATASIZE PUSH1 0x0 DUP1 CALLDATACOPY PUSH1 0x0 DUP1 CALLDATASIZE PUSH1 0x0 DUP5 GAS DELEGATECALL RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY DUP1 DUP1 ISZERO PUSH2 0xB78 JUMPI RETURNDATASIZE PUSH1 0x0 RETURN JUMPDEST RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND EQ DUP1 ISZERO PUSH2 0xD80 JUMPI POP PUSH1 0x0 SLOAD PUSH4 0x1000000 SWAP1 DIV PUSH1 0xFF AND ISZERO JUMPDEST PUSH2 0xD89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH5 0x100000000 PUSH1 0x1 PUSH1 0xC0 SHL SUB NOT AND CALLER PUSH5 0x100000000 MUL OR DUP2 SSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP5 SWAP1 MSTORE PUSH32 0x0 AND SWAP2 PUSH4 0x7ABAF271 PUSH1 0xE1 SHL SWAP2 SWAP1 DUP2 ADD PUSH1 0x2 DUP2 MSTORE PUSH1 0x8 PUSH1 0x20 DUP1 DUP4 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x0 PUSH1 0x40 SWAP3 DUP4 ADD DUP2 SWAP1 MSTORE DUP3 MLOAD PUSH1 0xA0 DUP2 ADD DUP5 MSTORE DUP2 DUP2 MSTORE SWAP2 DUP3 ADD MSTORE SWAP1 DUP2 ADD PUSH1 0x3 DUP2 MSTORE PUSH1 0x12 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH1 0x40 SWAP2 DUP3 ADD DUP2 SWAP1 MSTORE SWAP1 MLOAD PUSH2 0xE6F SWAP4 SWAP3 SWAP2 SWAP1 DUP2 SWAP1 PUSH1 0x85 SWAP1 PUSH1 0x4B SWAP1 PUSH1 0x6C SWAP1 PUSH1 0x24 ADD PUSH2 0x1093 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 DUP2 MSTORE PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT SWAP1 SWAP5 AND SWAP4 SWAP1 SWAP4 OR SWAP1 SWAP3 MSTORE SWAP1 MLOAD PUSH2 0xEAD SWAP2 SWAP1 PUSH2 0x1046 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xEE8 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xEED JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0xEFB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND PUSH5 0x100000000 MUL PUSH5 0x100000000 PUSH1 0x1 PUSH1 0xC0 SHL SUB NOT SWAP1 SWAP2 AND OR SWAP1 SSTORE PUSH1 0x1 DUP1 SLOAD SWAP3 DUP5 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT SWAP4 DUP5 AND OR SWAP1 SSTORE PUSH1 0x2 DUP1 SLOAD SWAP2 SWAP1 SWAP4 AND SWAP2 AND OR SWAP1 SSTORE JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xB54 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xF99 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0xFA2 DUP5 PUSH2 0xF6E JUMP JUMPDEST SWAP3 POP PUSH2 0xFB0 PUSH1 0x20 DUP6 ADD PUSH2 0xF6E JUMP JUMPDEST SWAP2 POP PUSH2 0xFBE PUSH1 0x40 DUP6 ADD PUSH2 0xF6E JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xFD8 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0xFEF JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP3 MSTORE PUSH1 0x20 DUP1 DUP3 ADD MLOAD ISZERO ISZERO SWAP1 DUP4 ADD MSTORE PUSH1 0x40 DUP2 ADD MLOAD PUSH1 0x6 DUP2 LT PUSH2 0x101E JUMPI INVALID JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP2 DUP2 ADD MLOAD PUSH1 0xFF AND SWAP1 DUP4 ADD MSTORE PUSH1 0x80 SWAP1 DUP2 ADD MLOAD PUSH9 0xFFFFFFFFFFFFFFFFFF AND SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD DUP2 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1066 JUMPI PUSH1 0x20 DUP2 DUP7 ADD DUP2 ADD MLOAD DUP6 DUP4 ADD MSTORE ADD PUSH2 0x104C JUMP JUMPDEST DUP2 DUP2 GT ISZERO PUSH2 0x1074 JUMPI DUP3 DUP3 DUP6 ADD MSTORE JUMPDEST POP SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH2 0x1E0 DUP2 ADD PUSH2 0x10A2 DUP3 DUP11 PUSH2 0xFF6 JUMP JUMPDEST PUSH2 0x10AF PUSH1 0xA0 DUP4 ADD DUP10 PUSH2 0xFF6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP7 SWAP1 SWAP7 AND PUSH2 0x140 DUP3 ADD MSTORE SWAP4 ISZERO ISZERO PUSH2 0x160 DUP6 ADD MSTORE PUSH1 0xFF SWAP3 DUP4 AND PUSH2 0x180 DUP6 ADD MSTORE SWAP1 DUP3 AND PUSH2 0x1A0 DUP5 ADD MSTORE AND PUSH2 0x1C0 SWAP1 SWAP2 ADD MSTORE SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 ORIGIN SWAP8 0xC7 PUSH5 0xDC6AD3F1B8 NUMBER DUP5 0xA7 LOG2 PUSH30 0xEB87FBA8BFA8567881C47A81CA18AC28B6FF64736F6C6343000706003300 ", + "pcMap": { + "0": { + "offset": [ + 1056, + 11159 + ], + "op": "PUSH1", + "path": "24", + "value": "0x80" + }, + "2": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "4": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "MSTORE", + "path": "24" + }, + "5": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH1", + "path": "24", + "value": "0x4" + }, + "7": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "CALLDATASIZE", + "path": "24" + }, + "8": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "LT", + "path": "24" + }, + "9": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0xFE" + }, + "12": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "13": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "15": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "CALLDATALOAD", + "path": "24" + }, + "16": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH1", + "path": "24", + "value": "0xE0" + }, + "18": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "SHR", + "path": "24" + }, + "19": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "20": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x6009B8E6" + }, + "25": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "GT", + "path": "24" + }, + "26": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x95" + }, + "29": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "30": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "31": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x82463367" + }, + "36": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "GT", + "path": "24" + }, + "37": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x64" + }, + "40": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "41": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "42": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x82463367" + }, + "47": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "48": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x23A" + }, + "51": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "52": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "53": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x8DA5CB5B" + }, + "58": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "59": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x24F" + }, + "62": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "63": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "64": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0xA1B4D011" + }, + "69": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "70": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x264" + }, + "73": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "74": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "75": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0xC0C53B8B" + }, + "80": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "81": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x279" + }, + "84": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "85": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "86": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0xDCC1A738" + }, + "91": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "92": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x299" + }, + "95": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "96": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0xFE" + }, + "99": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMP", + "path": "24" + }, + "100": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPDEST", + "path": "24" + }, + "101": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "102": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x6009B8E6" + }, + "107": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "108": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1DB" + }, + "111": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "112": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "113": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x6D7CDBBF" + }, + "118": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "119": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1F0" + }, + "122": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "123": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "124": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x72D27134" + }, + "129": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "130": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x205" + }, + "133": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "134": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "135": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x76E1DF48" + }, + "140": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "141": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x21A" + }, + "144": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "145": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0xFE" + }, + "148": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMP", + "path": "24" + }, + "149": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPDEST", + "path": "24" + }, + "150": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "151": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x24A3D622" + }, + "156": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "GT", + "path": "24" + }, + "157": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0xD1" + }, + "160": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "161": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "162": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x24A3D622" + }, + "167": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "168": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x187" + }, + "171": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "172": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "173": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x2BE75895" + }, + "178": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "179": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x19C" + }, + "182": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "183": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "184": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x2D255471" + }, + "189": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "190": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1B1" + }, + "193": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "194": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "195": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x2D2C5565" + }, + "200": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "201": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1C6" + }, + "204": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "205": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0xFE" + }, + "208": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMP", + "path": "24" + }, + "209": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPDEST", + "path": "24" + }, + "210": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "211": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0xC4E7935" + }, + "216": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "217": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x11D" + }, + "220": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "221": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "222": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x14627834" + }, + "227": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "228": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x148" + }, + "231": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "232": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "233": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x15BEEB93" + }, + "238": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "239": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x15D" + }, + "242": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "243": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "DUP1", + "path": "24" + }, + "244": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH4", + "path": "24", + "value": "0x206109B5" + }, + "249": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "EQ", + "path": "24" + }, + "250": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "PUSH2", + "path": "24", + "value": "0x172" + }, + "253": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPI", + "path": "24" + }, + "254": { + "fn": null, + "offset": [ + 1056, + 11159 + ], + "op": "JUMPDEST", + "path": "24" + }, + "255": { + "fn": "Router.", + "offset": [ + 11019, + 11062 + ], + "op": "PUSH2", + "path": "24", + "statement": 0, + "value": "0x11B" + }, + "258": { + "fn": "Router.", + "offset": [ + 11029, + 11061 + ], + "op": "PUSH2", + "path": "24", + "value": "0x116" + }, + "261": { + "fn": "Router.", + "offset": [ + 11053, + 11060 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "263": { + "fn": "Router.", + "offset": [ + 11053, + 11060 + ], + "op": "CALLDATALOAD", + "path": "24" + }, + "264": { + "op": "PUSH1", + "value": "0x1" + }, + "266": { + "op": "PUSH1", + "value": "0x1" + }, + "268": { + "op": "PUSH1", + "value": "0xE0" + }, + "270": { + "op": "SHL" + }, + "271": { + "op": "SUB" + }, + "272": { + "op": "NOT" + }, + "273": { + "fn": "Router.", + "offset": [ + 11053, + 11060 + ], + "op": "AND", + "path": "24" + }, + "274": { + "fn": "Router.", + "offset": [ + 11029, + 11052 + ], + "op": "PUSH2", + "path": "24", + "value": "0x2AE" + }, + "277": { + "fn": "Router.", + "jump": "i", + "offset": [ + 11029, + 11061 + ], + "op": "JUMP", + "path": "24" + }, + "278": { + "fn": "Router.", + "offset": [ + 11029, + 11061 + ], + "op": "JUMPDEST", + "path": "24" + }, + "279": { + "fn": "Router.", + "offset": [ + 11019, + 11028 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB59" + }, + "282": { + "fn": "Router.", + "jump": "i", + "offset": [ + 11019, + 11062 + ], + "op": "JUMP", + "path": "24" + }, + "283": { + "fn": "Router.", + "offset": [ + 11019, + 11062 + ], + "op": "JUMPDEST", + "path": "24" + }, + "284": { + "offset": [ + 1056, + 11159 + ], + "op": "STOP", + "path": "24" + }, + "285": { + "offset": [ + 1216, + 1246 + ], + "op": "JUMPDEST", + "path": "24" + }, + "286": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "CALLVALUE", + "path": "24" + }, + "287": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "DUP1", + "path": "24" + }, + "288": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "ISZERO", + "path": "24" + }, + "289": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH2", + "path": "24", + "value": "0x129" + }, + "292": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "JUMPI", + "path": "24" + }, + "293": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "295": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "DUP1", + "path": "24" + }, + "296": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "REVERT", + "path": "24" + }, + "297": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "JUMPDEST", + "path": "24" + }, + "298": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "POP", + "path": "24" + }, + "299": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "302": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB7D" + }, + "305": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1216, + 1246 + ], + "op": "JUMP", + "path": "24" + }, + "306": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "JUMPDEST", + "path": "24" + }, + "307": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "309": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "MLOAD", + "path": "24" + }, + "310": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH2", + "path": "24", + "value": "0x13F" + }, + "313": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "SWAP2", + "path": "24" + }, + "314": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "SWAP1", + "path": "24" + }, + "315": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH2", + "path": "24", + "value": "0x107F" + }, + "318": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1216, + 1246 + ], + "op": "JUMP", + "path": "24" + }, + "319": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "JUMPDEST", + "path": "24" + }, + "320": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "322": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "MLOAD", + "path": "24" + }, + "323": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "DUP1", + "path": "24" + }, + "324": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "SWAP2", + "path": "24" + }, + "325": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "SUB", + "path": "24" + }, + "326": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "SWAP1", + "path": "24" + }, + "327": { + "fn": "Router.", + "offset": [ + 1216, + 1246 + ], + "op": "RETURN", + "path": "24" + }, + "328": { + "offset": [ + 1175, + 1210 + ], + "op": "JUMPDEST", + "path": "24" + }, + "329": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "CALLVALUE", + "path": "24" + }, + "330": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "DUP1", + "path": "24" + }, + "331": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "ISZERO", + "path": "24" + }, + "332": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "PUSH2", + "path": "24", + "value": "0x154" + }, + "335": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "JUMPI", + "path": "24" + }, + "336": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "338": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "DUP1", + "path": "24" + }, + "339": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "REVERT", + "path": "24" + }, + "340": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "JUMPDEST", + "path": "24" + }, + "341": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "POP", + "path": "24" + }, + "342": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "345": { + "fn": "Router.", + "offset": [ + 1175, + 1210 + ], + "op": "PUSH2", + "path": "24", + "value": "0xBA1" + }, + "348": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1175, + 1210 + ], + "op": "JUMP", + "path": "24" + }, + "349": { + "offset": [ + 1300, + 1339 + ], + "op": "JUMPDEST", + "path": "24" + }, + "350": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "CALLVALUE", + "path": "24" + }, + "351": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "DUP1", + "path": "24" + }, + "352": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "ISZERO", + "path": "24" + }, + "353": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "PUSH2", + "path": "24", + "value": "0x169" + }, + "356": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "JUMPI", + "path": "24" + }, + "357": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "359": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "DUP1", + "path": "24" + }, + "360": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "REVERT", + "path": "24" + }, + "361": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "JUMPDEST", + "path": "24" + }, + "362": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "POP", + "path": "24" + }, + "363": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "366": { + "fn": "Router.", + "offset": [ + 1300, + 1339 + ], + "op": "PUSH2", + "path": "24", + "value": "0xBC5" + }, + "369": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1300, + 1339 + ], + "op": "JUMP", + "path": "24" + }, + "370": { + "offset": [ + 1520, + 1560 + ], + "op": "JUMPDEST", + "path": "24" + }, + "371": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "CALLVALUE", + "path": "24" + }, + "372": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "DUP1", + "path": "24" + }, + "373": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "ISZERO", + "path": "24" + }, + "374": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "PUSH2", + "path": "24", + "value": "0x17E" + }, + "377": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "JUMPI", + "path": "24" + }, + "378": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "380": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "DUP1", + "path": "24" + }, + "381": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "REVERT", + "path": "24" + }, + "382": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "JUMPDEST", + "path": "24" + }, + "383": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "POP", + "path": "24" + }, + "384": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "387": { + "fn": "Router.", + "offset": [ + 1520, + 1560 + ], + "op": "PUSH2", + "path": "24", + "value": "0xBE9" + }, + "390": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1520, + 1560 + ], + "op": "JUMP", + "path": "24" + }, + "391": { + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "392": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "CALLVALUE", + "path": "63" + }, + "393": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "394": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "ISZERO", + "path": "63" + }, + "395": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x193" + }, + "398": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPI", + "path": "63" + }, + "399": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "401": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "DUP1", + "path": "63" + }, + "402": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "REVERT", + "path": "63" + }, + "403": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "404": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "POP", + "path": "63" + }, + "405": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0x132" + }, + "408": { + "fn": "Router.", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH2", + "path": "63", + "value": "0xC0D" + }, + "411": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "412": { + "offset": [ + 1471, + 1514 + ], + "op": "JUMPDEST", + "path": "24" + }, + "413": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "CALLVALUE", + "path": "24" + }, + "414": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "DUP1", + "path": "24" + }, + "415": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "ISZERO", + "path": "24" + }, + "416": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1A8" + }, + "419": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "JUMPI", + "path": "24" + }, + "420": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "422": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "DUP1", + "path": "24" + }, + "423": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "REVERT", + "path": "24" + }, + "424": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "JUMPDEST", + "path": "24" + }, + "425": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "POP", + "path": "24" + }, + "426": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "429": { + "fn": "Router.", + "offset": [ + 1471, + 1514 + ], + "op": "PUSH2", + "path": "24", + "value": "0xC1C" + }, + "432": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1471, + 1514 + ], + "op": "JUMP", + "path": "24" + }, + "433": { + "offset": [ + 1433, + 1465 + ], + "op": "JUMPDEST", + "path": "24" + }, + "434": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "CALLVALUE", + "path": "24" + }, + "435": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "DUP1", + "path": "24" + }, + "436": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "ISZERO", + "path": "24" + }, + "437": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1BD" + }, + "440": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "JUMPI", + "path": "24" + }, + "441": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "443": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "DUP1", + "path": "24" + }, + "444": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "REVERT", + "path": "24" + }, + "445": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "JUMPDEST", + "path": "24" + }, + "446": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "POP", + "path": "24" + }, + "447": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "450": { + "fn": "Router.", + "offset": [ + 1433, + 1465 + ], + "op": "PUSH2", + "path": "24", + "value": "0xC40" + }, + "453": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1433, + 1465 + ], + "op": "JUMP", + "path": "24" + }, + "454": { + "offset": [ + 1601, + 1634 + ], + "op": "JUMPDEST", + "path": "24" + }, + "455": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "CALLVALUE", + "path": "24" + }, + "456": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "DUP1", + "path": "24" + }, + "457": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "ISZERO", + "path": "24" + }, + "458": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1D2" + }, + "461": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "JUMPI", + "path": "24" + }, + "462": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "464": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "DUP1", + "path": "24" + }, + "465": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "REVERT", + "path": "24" + }, + "466": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "JUMPDEST", + "path": "24" + }, + "467": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "POP", + "path": "24" + }, + "468": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "471": { + "fn": "Router.", + "offset": [ + 1601, + 1634 + ], + "op": "PUSH2", + "path": "24", + "value": "0xC64" + }, + "474": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1601, + 1634 + ], + "op": "JUMP", + "path": "24" + }, + "475": { + "offset": [ + 1388, + 1427 + ], + "op": "JUMPDEST", + "path": "24" + }, + "476": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "CALLVALUE", + "path": "24" + }, + "477": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "DUP1", + "path": "24" + }, + "478": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "ISZERO", + "path": "24" + }, + "479": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1E7" + }, + "482": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "JUMPI", + "path": "24" + }, + "483": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "485": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "DUP1", + "path": "24" + }, + "486": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "REVERT", + "path": "24" + }, + "487": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "JUMPDEST", + "path": "24" + }, + "488": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "POP", + "path": "24" + }, + "489": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "492": { + "fn": "Router.", + "offset": [ + 1388, + 1427 + ], + "op": "PUSH2", + "path": "24", + "value": "0xC88" + }, + "495": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1388, + 1427 + ], + "op": "JUMP", + "path": "24" + }, + "496": { + "offset": [ + 1345, + 1382 + ], + "op": "JUMPDEST", + "path": "24" + }, + "497": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "CALLVALUE", + "path": "24" + }, + "498": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "DUP1", + "path": "24" + }, + "499": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "ISZERO", + "path": "24" + }, + "500": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1FC" + }, + "503": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "JUMPI", + "path": "24" + }, + "504": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "506": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "DUP1", + "path": "24" + }, + "507": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "REVERT", + "path": "24" + }, + "508": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "JUMPDEST", + "path": "24" + }, + "509": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "POP", + "path": "24" + }, + "510": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "513": { + "fn": "Router.", + "offset": [ + 1345, + 1382 + ], + "op": "PUSH2", + "path": "24", + "value": "0xCAC" + }, + "516": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1345, + 1382 + ], + "op": "JUMP", + "path": "24" + }, + "517": { + "offset": [ + 1640, + 1682 + ], + "op": "JUMPDEST", + "path": "24" + }, + "518": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "CALLVALUE", + "path": "24" + }, + "519": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "DUP1", + "path": "24" + }, + "520": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "ISZERO", + "path": "24" + }, + "521": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "PUSH2", + "path": "24", + "value": "0x211" + }, + "524": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "JUMPI", + "path": "24" + }, + "525": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "527": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "DUP1", + "path": "24" + }, + "528": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "REVERT", + "path": "24" + }, + "529": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "JUMPDEST", + "path": "24" + }, + "530": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "POP", + "path": "24" + }, + "531": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "534": { + "fn": "Router.", + "offset": [ + 1640, + 1682 + ], + "op": "PUSH2", + "path": "24", + "value": "0xCD0" + }, + "537": { + "fn": "Router.", + "jump": "i", + "offset": [ + 1640, + 1682 + ], + "op": "JUMP", + "path": "24" + }, + "538": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "JUMPDEST", + "path": "24" + }, + "539": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "CALLVALUE", + "path": "24" + }, + "540": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "DUP1", + "path": "24" + }, + "541": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "ISZERO", + "path": "24" + }, + "542": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH2", + "path": "24", + "value": "0x226" + }, + "545": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "JUMPI", + "path": "24" + }, + "546": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "548": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "DUP1", + "path": "24" + }, + "549": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "REVERT", + "path": "24" + }, + "550": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "JUMPDEST", + "path": "24" + }, + "551": { + "op": "POP" + }, + "552": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "555": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH2", + "path": "24", + "value": "0x235" + }, + "558": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "CALLDATASIZE", + "path": "24" + }, + "559": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH1", + "path": "24", + "value": "0x4" + }, + "561": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH2", + "path": "24", + "value": "0xFC7" + }, + "564": { + "fn": "Router.getRouterImplementation", + "jump": "i", + "offset": [ + 4310, + 9825 + ], + "op": "JUMP", + "path": "24" + }, + "565": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "JUMPDEST", + "path": "24" + }, + "566": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "PUSH2", + "path": "24", + "value": "0x2AE" + }, + "569": { + "fn": "Router.getRouterImplementation", + "jump": "i", + "offset": [ + 4310, + 9825 + ], + "op": "JUMP", + "path": "24" + }, + "570": { + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "571": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "CALLVALUE", + "path": "63" + }, + "572": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "DUP1", + "path": "63" + }, + "573": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "ISZERO", + "path": "63" + }, + "574": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x246" + }, + "577": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "JUMPI", + "path": "63" + }, + "578": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "580": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "DUP1", + "path": "63" + }, + "581": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "REVERT", + "path": "63" + }, + "582": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "583": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "POP", + "path": "63" + }, + "584": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0x132" + }, + "587": { + "fn": "Router.getRouterImplementation", + "offset": [ + 920, + 946 + ], + "op": "PUSH2", + "path": "63", + "value": "0xCF4" + }, + "590": { + "fn": "Router.getRouterImplementation", + "jump": "i", + "offset": [ + 920, + 946 + ], + "op": "JUMP", + "path": "63" + }, + "591": { + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "592": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "CALLVALUE", + "path": "63" + }, + "593": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "DUP1", + "path": "63" + }, + "594": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "ISZERO", + "path": "63" + }, + "595": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x25B" + }, + "598": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "JUMPI", + "path": "63" + }, + "599": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "601": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "DUP1", + "path": "63" + }, + "602": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "REVERT", + "path": "63" + }, + "603": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "604": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "POP", + "path": "63" + }, + "605": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0x132" + }, + "608": { + "fn": "Router.getRouterImplementation", + "offset": [ + 811, + 831 + ], + "op": "PUSH2", + "path": "63", + "value": "0xD03" + }, + "611": { + "fn": "Router.getRouterImplementation", + "jump": "i", + "offset": [ + 811, + 831 + ], + "op": "JUMP", + "path": "63" + }, + "612": { + "offset": [ + 1566, + 1595 + ], + "op": "JUMPDEST", + "path": "24" + }, + "613": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "CALLVALUE", + "path": "24" + }, + "614": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "DUP1", + "path": "24" + }, + "615": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "ISZERO", + "path": "24" + }, + "616": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "PUSH2", + "path": "24", + "value": "0x270" + }, + "619": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "JUMPI", + "path": "24" + }, + "620": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "622": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "DUP1", + "path": "24" + }, + "623": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "REVERT", + "path": "24" + }, + "624": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "JUMPDEST", + "path": "24" + }, + "625": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "POP", + "path": "24" + }, + "626": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "629": { + "fn": "Router.getRouterImplementation", + "offset": [ + 1566, + 1595 + ], + "op": "PUSH2", + "path": "24", + "value": "0xD1A" + }, + "632": { + "fn": "Router.getRouterImplementation", + "jump": "i", + "offset": [ + 1566, + 1595 + ], + "op": "JUMP", + "path": "24" + }, + "633": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "JUMPDEST", + "path": "24" + }, + "634": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "CALLVALUE", + "path": "24" + }, + "635": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "DUP1", + "path": "24" + }, + "636": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "ISZERO", + "path": "24" + }, + "637": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH2", + "path": "24", + "value": "0x285" + }, + "640": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "JUMPI", + "path": "24" + }, + "641": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "643": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "DUP1", + "path": "24" + }, + "644": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "REVERT", + "path": "24" + }, + "645": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "JUMPDEST", + "path": "24" + }, + "646": { + "op": "POP" + }, + "647": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH2", + "path": "24", + "value": "0x11B" + }, + "650": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH2", + "path": "24", + "value": "0x294" + }, + "653": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "CALLDATASIZE", + "path": "24" + }, + "654": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH1", + "path": "24", + "value": "0x4" + }, + "656": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH2", + "path": "24", + "value": "0xF85" + }, + "659": { + "fn": "Router.initialize", + "jump": "i", + "offset": [ + 2718, + 4144 + ], + "op": "JUMP", + "path": "24" + }, + "660": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "JUMPDEST", + "path": "24" + }, + "661": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "PUSH2", + "path": "24", + "value": "0xD3E" + }, + "664": { + "fn": "Router.initialize", + "jump": "i", + "offset": [ + 2718, + 4144 + ], + "op": "JUMP", + "path": "24" + }, + "665": { + "offset": [ + 1252, + 1294 + ], + "op": "JUMPDEST", + "path": "24" + }, + "666": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "CALLVALUE", + "path": "24" + }, + "667": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "DUP1", + "path": "24" + }, + "668": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "ISZERO", + "path": "24" + }, + "669": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH2", + "path": "24", + "value": "0x2A5" + }, + "672": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "JUMPI", + "path": "24" + }, + "673": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "675": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "DUP1", + "path": "24" + }, + "676": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "REVERT", + "path": "24" + }, + "677": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "JUMPDEST", + "path": "24" + }, + "678": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "POP", + "path": "24" + }, + "679": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH2", + "path": "24", + "value": "0x132" + }, + "682": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH2", + "path": "24", + "value": "0xF4A" + }, + "685": { + "fn": "Router.initialize", + "jump": "i", + "offset": [ + 1252, + 1294 + ], + "op": "JUMP", + "path": "24" + }, + "686": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "JUMPDEST", + "path": "24" + }, + "687": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4376, + 4383 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "689": { + "op": "PUSH1", + "value": "0x1" + }, + "691": { + "op": "PUSH1", + "value": "0x1" + }, + "693": { + "op": "PUSH1", + "value": "0xE0" + }, + "695": { + "op": "SHL" + }, + "696": { + "op": "SUB" + }, + "697": { + "op": "NOT" + }, + "698": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4460 + ], + "op": "DUP3", + "path": "24" + }, + "699": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4460 + ], + "op": "AND", + "path": "24" + }, + "700": { + "op": "PUSH4", + "value": "0x37351953" + }, + "705": { + "op": "PUSH1", + "value": "0xE1" + }, + "707": { + "op": "SHL" + }, + "708": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4460 + ], + "op": "EQ", + "path": "24" + }, + "709": { + "branch": 18, + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4460 + ], + "op": "DUP1", + "path": "24" + }, + "710": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4532 + ], + "op": "PUSH2", + "path": "24", + "value": "0x2DF" + }, + "713": { + "branch": 18, + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4532 + ], + "op": "JUMPI", + "path": "24" + }, + "714": { + "op": "POP" + }, + "715": { + "op": "PUSH1", + "value": "0x1" + }, + "717": { + "op": "PUSH1", + "value": "0x1" + }, + "719": { + "op": "PUSH1", + "value": "0xE0" + }, + "721": { + "op": "SHL" + }, + "722": { + "op": "SUB" + }, + "723": { + "op": "NOT" + }, + "724": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4476, + 4532 + ], + "op": "DUP3", + "path": "24" + }, + "725": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4476, + 4532 + ], + "op": "AND", + "path": "24" + }, + "726": { + "op": "PUSH4", + "value": "0x276B64B" + }, + "731": { + "op": "PUSH1", + "value": "0xE0" + }, + "733": { + "op": "SHL" + }, + "734": { + "branch": 19, + "fn": "Router.getRouterImplementation", + "offset": [ + 4476, + 4532 + ], + "op": "EQ", + "path": "24" + }, + "735": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4532 + ], + "op": "JUMPDEST", + "path": "24" + }, + "736": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4616 + ], + "op": "DUP1", + "path": "24" + }, + "737": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4616 + ], + "op": "PUSH2", + "path": "24", + "value": "0x2FA" + }, + "740": { + "branch": 19, + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4616 + ], + "op": "JUMPI", + "path": "24" + }, + "741": { + "op": "POP" + }, + "742": { + "op": "PUSH1", + "value": "0x1" + }, + "744": { + "op": "PUSH1", + "value": "0x1" + }, + "746": { + "op": "PUSH1", + "value": "0xE0" + }, + "748": { + "op": "SHL" + }, + "749": { + "op": "SUB" + }, + "750": { + "op": "NOT" + }, + "751": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4548, + 4616 + ], + "op": "DUP3", + "path": "24" + }, + "752": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4548, + 4616 + ], + "op": "AND", + "path": "24" + }, + "753": { + "op": "PUSH4", + "value": "0x5950D8E9" + }, + "758": { + "op": "PUSH1", + "value": "0xE0" + }, + "760": { + "op": "SHL" + }, + "761": { + "branch": 20, + "fn": "Router.getRouterImplementation", + "offset": [ + 4548, + 4616 + ], + "op": "EQ", + "path": "24" + }, + "762": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4616 + ], + "op": "JUMPDEST", + "path": "24" + }, + "763": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4671 + ], + "op": "DUP1", + "path": "24" + }, + "764": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4671 + ], + "op": "PUSH2", + "path": "24", + "value": "0x315" + }, + "767": { + "branch": 20, + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4671 + ], + "op": "JUMPI", + "path": "24" + }, + "768": { + "op": "POP" + }, + "769": { + "op": "PUSH1", + "value": "0x1" + }, + "771": { + "op": "PUSH1", + "value": "0x1" + }, + "773": { + "op": "PUSH1", + "value": "0xE0" + }, + "775": { + "op": "SHL" + }, + "776": { + "op": "SUB" + }, + "777": { + "op": "NOT" + }, + "778": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4632, + 4671 + ], + "op": "DUP3", + "path": "24" + }, + "779": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4632, + 4671 + ], + "op": "AND", + "path": "24" + }, + "780": { + "op": "PUSH4", + "value": "0x541F527" + }, + "785": { + "op": "PUSH1", + "value": "0xE4" + }, + "787": { + "op": "SHL" + }, + "788": { + "branch": 21, + "fn": "Router.getRouterImplementation", + "offset": [ + 4632, + 4671 + ], + "op": "EQ", + "path": "24" + }, + "789": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4412, + 4671 + ], + "op": "JUMPDEST", + "path": "24" + }, + "790": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4395, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "791": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4395, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x341" + }, + "794": { + "branch": 21, + "fn": "Router.getRouterImplementation", + "offset": [ + 4395, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "795": { + "op": "POP" + }, + "796": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4703, + 4715 + ], + "op": "PUSH32", + "path": "24", + "statement": 1, + "value": "0x0" + }, + "829": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4696, + 4715 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "832": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4696, + 4715 + ], + "op": "JUMP", + "path": "24" + }, + "833": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4395, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "834": { + "op": "PUSH1", + "value": "0x1" + }, + "836": { + "op": "PUSH1", + "value": "0x1" + }, + "838": { + "op": "PUSH1", + "value": "0xE0" + }, + "840": { + "op": "SHL" + }, + "841": { + "op": "SUB" + }, + "842": { + "op": "NOT" + }, + "843": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4795 + ], + "op": "DUP3", + "path": "24" + }, + "844": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4795 + ], + "op": "AND", + "path": "24" + }, + "845": { + "op": "PUSH4", + "value": "0x6A96E86F" + }, + "850": { + "op": "PUSH1", + "value": "0xE0" + }, + "852": { + "op": "SHL" + }, + "853": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4795 + ], + "op": "EQ", + "path": "24" + }, + "854": { + "branch": 22, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4795 + ], + "op": "DUP1", + "path": "24" + }, + "855": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4855 + ], + "op": "PUSH2", + "path": "24", + "value": "0x370" + }, + "858": { + "branch": 22, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4855 + ], + "op": "JUMPI", + "path": "24" + }, + "859": { + "op": "POP" + }, + "860": { + "op": "PUSH1", + "value": "0x1" + }, + "862": { + "op": "PUSH1", + "value": "0x1" + }, + "864": { + "op": "PUSH1", + "value": "0xE0" + }, + "866": { + "op": "SHL" + }, + "867": { + "op": "SUB" + }, + "868": { + "op": "NOT" + }, + "869": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4811, + 4855 + ], + "op": "DUP3", + "path": "24" + }, + "870": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4811, + 4855 + ], + "op": "AND", + "path": "24" + }, + "871": { + "op": "PUSH4", + "value": "0xA78DBFFF" + }, + "876": { + "op": "PUSH1", + "value": "0xE0" + }, + "878": { + "op": "SHL" + }, + "879": { + "branch": 23, + "fn": "Router.getRouterImplementation", + "offset": [ + 4811, + 4855 + ], + "op": "EQ", + "path": "24" + }, + "880": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4855 + ], + "op": "JUMPDEST", + "path": "24" + }, + "881": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4923 + ], + "op": "DUP1", + "path": "24" + }, + "882": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4923 + ], + "op": "PUSH2", + "path": "24", + "value": "0x38B" + }, + "885": { + "branch": 23, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4923 + ], + "op": "JUMPI", + "path": "24" + }, + "886": { + "op": "POP" + }, + "887": { + "op": "PUSH1", + "value": "0x1" + }, + "889": { + "op": "PUSH1", + "value": "0x1" + }, + "891": { + "op": "PUSH1", + "value": "0xE0" + }, + "893": { + "op": "SHL" + }, + "894": { + "op": "SUB" + }, + "895": { + "op": "NOT" + }, + "896": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4871, + 4923 + ], + "op": "DUP3", + "path": "24" + }, + "897": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4871, + 4923 + ], + "op": "AND", + "path": "24" + }, + "898": { + "op": "PUSH4", + "value": "0x7DB31AB9" + }, + "903": { + "op": "PUSH1", + "value": "0xE0" + }, + "905": { + "op": "SHL" + }, + "906": { + "branch": 24, + "fn": "Router.getRouterImplementation", + "offset": [ + 4871, + 4923 + ], + "op": "EQ", + "path": "24" + }, + "907": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4923 + ], + "op": "JUMPDEST", + "path": "24" + }, + "908": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4989 + ], + "op": "DUP1", + "path": "24" + }, + "909": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4989 + ], + "op": "PUSH2", + "path": "24", + "value": "0x3A6" + }, + "912": { + "branch": 24, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4989 + ], + "op": "JUMPI", + "path": "24" + }, + "913": { + "op": "POP" + }, + "914": { + "op": "PUSH1", + "value": "0x1" + }, + "916": { + "op": "PUSH1", + "value": "0x1" + }, + "918": { + "op": "PUSH1", + "value": "0xE0" + }, + "920": { + "op": "SHL" + }, + "921": { + "op": "SUB" + }, + "922": { + "op": "NOT" + }, + "923": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4939, + 4989 + ], + "op": "DUP3", + "path": "24" + }, + "924": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4939, + 4989 + ], + "op": "AND", + "path": "24" + }, + "925": { + "op": "PUSH4", + "value": "0x184E0053" + }, + "930": { + "op": "PUSH1", + "value": "0xE1" + }, + "932": { + "op": "SHL" + }, + "933": { + "branch": 25, + "fn": "Router.getRouterImplementation", + "offset": [ + 4939, + 4989 + ], + "op": "EQ", + "path": "24" + }, + "934": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 4989 + ], + "op": "JUMPDEST", + "path": "24" + }, + "935": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5048 + ], + "op": "DUP1", + "path": "24" + }, + "936": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5048 + ], + "op": "PUSH2", + "path": "24", + "value": "0x3C1" + }, + "939": { + "branch": 25, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5048 + ], + "op": "JUMPI", + "path": "24" + }, + "940": { + "op": "POP" + }, + "941": { + "op": "PUSH1", + "value": "0x1" + }, + "943": { + "op": "PUSH1", + "value": "0x1" + }, + "945": { + "op": "PUSH1", + "value": "0xE0" + }, + "947": { + "op": "SHL" + }, + "948": { + "op": "SUB" + }, + "949": { + "op": "NOT" + }, + "950": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5005, + 5048 + ], + "op": "DUP3", + "path": "24" + }, + "951": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5005, + 5048 + ], + "op": "AND", + "path": "24" + }, + "952": { + "op": "PUSH4", + "value": "0x18AE40D7" + }, + "957": { + "op": "PUSH1", + "value": "0xE0" + }, + "959": { + "op": "SHL" + }, + "960": { + "branch": 26, + "fn": "Router.getRouterImplementation", + "offset": [ + 5005, + 5048 + ], + "op": "EQ", + "path": "24" + }, + "961": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5048 + ], + "op": "JUMPDEST", + "path": "24" + }, + "962": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5111 + ], + "op": "DUP1", + "path": "24" + }, + "963": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5111 + ], + "op": "PUSH2", + "path": "24", + "value": "0x3DC" + }, + "966": { + "branch": 26, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5111 + ], + "op": "JUMPI", + "path": "24" + }, + "967": { + "op": "POP" + }, + "968": { + "op": "PUSH1", + "value": "0x1" + }, + "970": { + "op": "PUSH1", + "value": "0x1" + }, + "972": { + "op": "PUSH1", + "value": "0xE0" + }, + "974": { + "op": "SHL" + }, + "975": { + "op": "SUB" + }, + "976": { + "op": "NOT" + }, + "977": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5064, + 5111 + ], + "op": "DUP3", + "path": "24" + }, + "978": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5064, + 5111 + ], + "op": "AND", + "path": "24" + }, + "979": { + "op": "PUSH4", + "value": "0x44253849" + }, + "984": { + "op": "PUSH1", + "value": "0xE1" + }, + "986": { + "op": "SHL" + }, + "987": { + "branch": 27, + "fn": "Router.getRouterImplementation", + "offset": [ + 5064, + 5111 + ], + "op": "EQ", + "path": "24" + }, + "988": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5111 + ], + "op": "JUMPDEST", + "path": "24" + }, + "989": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5177 + ], + "op": "DUP1", + "path": "24" + }, + "990": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5177 + ], + "op": "PUSH2", + "path": "24", + "value": "0x3F7" + }, + "993": { + "branch": 27, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5177 + ], + "op": "JUMPI", + "path": "24" + }, + "994": { + "op": "POP" + }, + "995": { + "op": "PUSH1", + "value": "0x1" + }, + "997": { + "op": "PUSH1", + "value": "0x1" + }, + "999": { + "op": "PUSH1", + "value": "0xE0" + }, + "1001": { + "op": "SHL" + }, + "1002": { + "op": "SUB" + }, + "1003": { + "op": "NOT" + }, + "1004": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5127, + 5177 + ], + "op": "DUP3", + "path": "24" + }, + "1005": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5127, + 5177 + ], + "op": "AND", + "path": "24" + }, + "1006": { + "op": "PUSH4", + "value": "0x6D6503D3" + }, + "1011": { + "op": "PUSH1", + "value": "0xE1" + }, + "1013": { + "op": "SHL" + }, + "1014": { + "branch": 28, + "fn": "Router.getRouterImplementation", + "offset": [ + 5127, + 5177 + ], + "op": "EQ", + "path": "24" + }, + "1015": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5177 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1016": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5246 + ], + "op": "DUP1", + "path": "24" + }, + "1017": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5246 + ], + "op": "PUSH2", + "path": "24", + "value": "0x412" + }, + "1020": { + "branch": 28, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5246 + ], + "op": "JUMPI", + "path": "24" + }, + "1021": { + "op": "POP" + }, + "1022": { + "op": "PUSH1", + "value": "0x1" + }, + "1024": { + "op": "PUSH1", + "value": "0x1" + }, + "1026": { + "op": "PUSH1", + "value": "0xE0" + }, + "1028": { + "op": "SHL" + }, + "1029": { + "op": "SUB" + }, + "1030": { + "op": "NOT" + }, + "1031": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5193, + 5246 + ], + "op": "DUP3", + "path": "24" + }, + "1032": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5193, + 5246 + ], + "op": "AND", + "path": "24" + }, + "1033": { + "op": "PUSH4", + "value": "0x5C1D975" + }, + "1038": { + "op": "PUSH1", + "value": "0xE3" + }, + "1040": { + "op": "SHL" + }, + "1041": { + "branch": 29, + "fn": "Router.getRouterImplementation", + "offset": [ + 5193, + 5246 + ], + "op": "EQ", + "path": "24" + }, + "1042": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5246 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1043": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5325 + ], + "op": "DUP1", + "path": "24" + }, + "1044": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5325 + ], + "op": "PUSH2", + "path": "24", + "value": "0x42D" + }, + "1047": { + "branch": 29, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5325 + ], + "op": "JUMPI", + "path": "24" + }, + "1048": { + "op": "POP" + }, + "1049": { + "op": "PUSH1", + "value": "0x1" + }, + "1051": { + "op": "PUSH1", + "value": "0x1" + }, + "1053": { + "op": "PUSH1", + "value": "0xE0" + }, + "1055": { + "op": "SHL" + }, + "1056": { + "op": "SUB" + }, + "1057": { + "op": "NOT" + }, + "1058": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5262, + 5325 + ], + "op": "DUP3", + "path": "24" + }, + "1059": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5262, + 5325 + ], + "op": "AND", + "path": "24" + }, + "1060": { + "op": "PUSH4", + "value": "0x1A05BCE1" + }, + "1065": { + "op": "PUSH1", + "value": "0xE0" + }, + "1067": { + "op": "SHL" + }, + "1068": { + "branch": 30, + "fn": "Router.getRouterImplementation", + "offset": [ + 5262, + 5325 + ], + "op": "EQ", + "path": "24" + }, + "1069": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5325 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1070": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5409 + ], + "op": "DUP1", + "path": "24" + }, + "1071": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5409 + ], + "op": "PUSH2", + "path": "24", + "value": "0x448" + }, + "1074": { + "branch": 30, + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5409 + ], + "op": "JUMPI", + "path": "24" + }, + "1075": { + "op": "POP" + }, + "1076": { + "op": "PUSH1", + "value": "0x1" + }, + "1078": { + "op": "PUSH1", + "value": "0x1" + }, + "1080": { + "op": "PUSH1", + "value": "0xE0" + }, + "1082": { + "op": "SHL" + }, + "1083": { + "op": "SUB" + }, + "1084": { + "op": "NOT" + }, + "1085": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5341, + 5409 + ], + "op": "DUP3", + "path": "24" + }, + "1086": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5341, + 5409 + ], + "op": "AND", + "path": "24" + }, + "1087": { + "op": "PUSH4", + "value": "0x3B2987B3" + }, + "1092": { + "op": "PUSH1", + "value": "0xE0" + }, + "1094": { + "op": "SHL" + }, + "1095": { + "branch": 31, + "fn": "Router.getRouterImplementation", + "offset": [ + 5341, + 5409 + ], + "op": "EQ", + "path": "24" + }, + "1096": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4749, + 5409 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1097": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4732, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "1098": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4732, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x474" + }, + "1101": { + "branch": 31, + "fn": "Router.getRouterImplementation", + "offset": [ + 4732, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "1102": { + "op": "POP" + }, + "1103": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5441, + 5455 + ], + "op": "PUSH32", + "path": "24", + "statement": 2, + "value": "0x0" + }, + "1136": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5434, + 5455 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "1139": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5434, + 5455 + ], + "op": "JUMP", + "path": "24" + }, + "1140": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4732, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1141": { + "op": "PUSH1", + "value": "0x1" + }, + "1143": { + "op": "PUSH1", + "value": "0x1" + }, + "1145": { + "op": "PUSH1", + "value": "0xE0" + }, + "1147": { + "op": "SHL" + }, + "1148": { + "op": "SUB" + }, + "1149": { + "op": "NOT" + }, + "1150": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5541 + ], + "op": "DUP3", + "path": "24" + }, + "1151": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5541 + ], + "op": "AND", + "path": "24" + }, + "1152": { + "op": "PUSH4", + "value": "0x2890FB65" + }, + "1157": { + "op": "PUSH1", + "value": "0xE0" + }, + "1159": { + "op": "SHL" + }, + "1160": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5541 + ], + "op": "EQ", + "path": "24" + }, + "1161": { + "branch": 32, + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5541 + ], + "op": "DUP1", + "path": "24" + }, + "1162": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5604 + ], + "op": "PUSH2", + "path": "24", + "value": "0x4A3" + }, + "1165": { + "branch": 32, + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5604 + ], + "op": "JUMPI", + "path": "24" + }, + "1166": { + "op": "POP" + }, + "1167": { + "op": "PUSH1", + "value": "0x1" + }, + "1169": { + "op": "PUSH1", + "value": "0x1" + }, + "1171": { + "op": "PUSH1", + "value": "0xE0" + }, + "1173": { + "op": "SHL" + }, + "1174": { + "op": "SUB" + }, + "1175": { + "op": "NOT" + }, + "1176": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5557, + 5604 + ], + "op": "DUP3", + "path": "24" + }, + "1177": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5557, + 5604 + ], + "op": "AND", + "path": "24" + }, + "1178": { + "op": "PUSH4", + "value": "0xB8A69455" + }, + "1183": { + "op": "PUSH1", + "value": "0xE0" + }, + "1185": { + "op": "SHL" + }, + "1186": { + "branch": 33, + "fn": "Router.getRouterImplementation", + "offset": [ + 5557, + 5604 + ], + "op": "EQ", + "path": "24" + }, + "1187": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5604 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1188": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5658 + ], + "op": "DUP1", + "path": "24" + }, + "1189": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5658 + ], + "op": "PUSH2", + "path": "24", + "value": "0x4BD" + }, + "1192": { + "branch": 33, + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5658 + ], + "op": "JUMPI", + "path": "24" + }, + "1193": { + "op": "POP" + }, + "1194": { + "op": "PUSH1", + "value": "0x1" + }, + "1196": { + "op": "PUSH1", + "value": "0x1" + }, + "1198": { + "op": "PUSH1", + "value": "0xE0" + }, + "1200": { + "op": "SHL" + }, + "1201": { + "op": "SUB" + }, + "1202": { + "op": "NOT" + }, + "1203": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5620, + 5658 + ], + "op": "DUP3", + "path": "24" + }, + "1204": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5620, + 5658 + ], + "op": "AND", + "path": "24" + }, + "1205": { + "op": "PUSH3", + "value": "0x5E665D" + }, + "1209": { + "op": "PUSH1", + "value": "0xE3" + }, + "1211": { + "op": "SHL" + }, + "1212": { + "branch": 34, + "fn": "Router.getRouterImplementation", + "offset": [ + 5620, + 5658 + ], + "op": "EQ", + "path": "24" + }, + "1213": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5658 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1214": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5717 + ], + "op": "DUP1", + "path": "24" + }, + "1215": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5717 + ], + "op": "PUSH2", + "path": "24", + "value": "0x4D8" + }, + "1218": { + "branch": 34, + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5717 + ], + "op": "JUMPI", + "path": "24" + }, + "1219": { + "op": "POP" + }, + "1220": { + "op": "PUSH1", + "value": "0x1" + }, + "1222": { + "op": "PUSH1", + "value": "0x1" + }, + "1224": { + "op": "PUSH1", + "value": "0xE0" + }, + "1226": { + "op": "SHL" + }, + "1227": { + "op": "SUB" + }, + "1228": { + "op": "NOT" + }, + "1229": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5674, + 5717 + ], + "op": "DUP3", + "path": "24" + }, + "1230": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5674, + 5717 + ], + "op": "AND", + "path": "24" + }, + "1231": { + "op": "PUSH4", + "value": "0xF667F897" + }, + "1236": { + "op": "PUSH1", + "value": "0xE0" + }, + "1238": { + "op": "SHL" + }, + "1239": { + "branch": 35, + "fn": "Router.getRouterImplementation", + "offset": [ + 5674, + 5717 + ], + "op": "EQ", + "path": "24" + }, + "1240": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5717 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1241": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5775 + ], + "op": "DUP1", + "path": "24" + }, + "1242": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5775 + ], + "op": "PUSH2", + "path": "24", + "value": "0x4F3" + }, + "1245": { + "branch": 35, + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5775 + ], + "op": "JUMPI", + "path": "24" + }, + "1246": { + "op": "POP" + }, + "1247": { + "op": "PUSH1", + "value": "0x1" + }, + "1249": { + "op": "PUSH1", + "value": "0x1" + }, + "1251": { + "op": "PUSH1", + "value": "0xE0" + }, + "1253": { + "op": "SHL" + }, + "1254": { + "op": "SUB" + }, + "1255": { + "op": "NOT" + }, + "1256": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5733, + 5775 + ], + "op": "DUP3", + "path": "24" + }, + "1257": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5733, + 5775 + ], + "op": "AND", + "path": "24" + }, + "1258": { + "op": "PUSH4", + "value": "0x66890643" + }, + "1263": { + "op": "PUSH1", + "value": "0xE0" + }, + "1265": { + "op": "SHL" + }, + "1266": { + "branch": 36, + "fn": "Router.getRouterImplementation", + "offset": [ + 5733, + 5775 + ], + "op": "EQ", + "path": "24" + }, + "1267": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5775 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1268": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5841 + ], + "op": "DUP1", + "path": "24" + }, + "1269": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5841 + ], + "op": "PUSH2", + "path": "24", + "value": "0x50E" + }, + "1272": { + "branch": 36, + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5841 + ], + "op": "JUMPI", + "path": "24" + }, + "1273": { + "op": "POP" + }, + "1274": { + "op": "PUSH1", + "value": "0x1" + }, + "1276": { + "op": "PUSH1", + "value": "0x1" + }, + "1278": { + "op": "PUSH1", + "value": "0xE0" + }, + "1280": { + "op": "SHL" + }, + "1281": { + "op": "SUB" + }, + "1282": { + "op": "NOT" + }, + "1283": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5791, + 5841 + ], + "op": "DUP3", + "path": "24" + }, + "1284": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5791, + 5841 + ], + "op": "AND", + "path": "24" + }, + "1285": { + "op": "PUSH4", + "value": "0x9C97945" + }, + "1290": { + "op": "PUSH1", + "value": "0xE4" + }, + "1292": { + "op": "SHL" + }, + "1293": { + "branch": 37, + "fn": "Router.getRouterImplementation", + "offset": [ + 5791, + 5841 + ], + "op": "EQ", + "path": "24" + }, + "1294": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5489, + 5841 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1295": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5472, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "1296": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5472, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x53A" + }, + "1299": { + "branch": 37, + "fn": "Router.getRouterImplementation", + "offset": [ + 5472, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "1300": { + "op": "POP" + }, + "1301": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5873, + 5887 + ], + "op": "PUSH32", + "path": "24", + "statement": 3, + "value": "0x0" + }, + "1334": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5866, + 5887 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "1337": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5866, + 5887 + ], + "op": "JUMP", + "path": "24" + }, + "1338": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5472, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1339": { + "op": "PUSH1", + "value": "0x1" + }, + "1341": { + "op": "PUSH1", + "value": "0x1" + }, + "1343": { + "op": "PUSH1", + "value": "0xE0" + }, + "1345": { + "op": "SHL" + }, + "1346": { + "op": "SUB" + }, + "1347": { + "op": "NOT" + }, + "1348": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 5972 + ], + "op": "DUP3", + "path": "24" + }, + "1349": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 5972 + ], + "op": "AND", + "path": "24" + }, + "1350": { + "op": "PUSH4", + "value": "0x1FFC9A7" + }, + "1355": { + "op": "PUSH1", + "value": "0xE0" + }, + "1357": { + "op": "SHL" + }, + "1358": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 5972 + ], + "op": "EQ", + "path": "24" + }, + "1359": { + "branch": 38, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 5972 + ], + "op": "DUP1", + "path": "24" + }, + "1360": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6031 + ], + "op": "PUSH2", + "path": "24", + "value": "0x568" + }, + "1363": { + "branch": 38, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6031 + ], + "op": "JUMPI", + "path": "24" + }, + "1364": { + "op": "POP" + }, + "1365": { + "op": "PUSH1", + "value": "0x1" + }, + "1367": { + "op": "PUSH1", + "value": "0x1" + }, + "1369": { + "op": "PUSH1", + "value": "0xE0" + }, + "1371": { + "op": "SHL" + }, + "1372": { + "op": "SUB" + }, + "1373": { + "op": "NOT" + }, + "1374": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5988, + 6031 + ], + "op": "DUP3", + "path": "24" + }, + "1375": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5988, + 6031 + ], + "op": "AND", + "path": "24" + }, + "1376": { + "op": "PUSH3", + "value": "0x7EEAC7" + }, + "1380": { + "op": "PUSH1", + "value": "0xE1" + }, + "1382": { + "op": "SHL" + }, + "1383": { + "branch": 39, + "fn": "Router.getRouterImplementation", + "offset": [ + 5988, + 6031 + ], + "op": "EQ", + "path": "24" + }, + "1384": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6031 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1385": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6095 + ], + "op": "DUP1", + "path": "24" + }, + "1386": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6095 + ], + "op": "PUSH2", + "path": "24", + "value": "0x583" + }, + "1389": { + "branch": 39, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6095 + ], + "op": "JUMPI", + "path": "24" + }, + "1390": { + "op": "POP" + }, + "1391": { + "op": "PUSH1", + "value": "0x1" + }, + "1393": { + "op": "PUSH1", + "value": "0x1" + }, + "1395": { + "op": "PUSH1", + "value": "0xE0" + }, + "1397": { + "op": "SHL" + }, + "1398": { + "op": "SUB" + }, + "1399": { + "op": "NOT" + }, + "1400": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6047, + 6095 + ], + "op": "DUP3", + "path": "24" + }, + "1401": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6047, + 6095 + ], + "op": "AND", + "path": "24" + }, + "1402": { + "op": "PUSH4", + "value": "0x13849CFD" + }, + "1407": { + "op": "PUSH1", + "value": "0xE2" + }, + "1409": { + "op": "SHL" + }, + "1410": { + "branch": 40, + "fn": "Router.getRouterImplementation", + "offset": [ + 6047, + 6095 + ], + "op": "EQ", + "path": "24" + }, + "1411": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6095 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1412": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6160 + ], + "op": "DUP1", + "path": "24" + }, + "1413": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6160 + ], + "op": "PUSH2", + "path": "24", + "value": "0x59E" + }, + "1416": { + "branch": 40, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6160 + ], + "op": "JUMPI", + "path": "24" + }, + "1417": { + "op": "POP" + }, + "1418": { + "op": "PUSH1", + "value": "0x1" + }, + "1420": { + "op": "PUSH1", + "value": "0x1" + }, + "1422": { + "op": "PUSH1", + "value": "0xE0" + }, + "1424": { + "op": "SHL" + }, + "1425": { + "op": "SUB" + }, + "1426": { + "op": "NOT" + }, + "1427": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6111, + 6160 + ], + "op": "DUP3", + "path": "24" + }, + "1428": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6111, + 6160 + ], + "op": "AND", + "path": "24" + }, + "1429": { + "op": "PUSH4", + "value": "0xFAC8F09" + }, + "1434": { + "op": "PUSH1", + "value": "0xE0" + }, + "1436": { + "op": "SHL" + }, + "1437": { + "branch": 41, + "fn": "Router.getRouterImplementation", + "offset": [ + 6111, + 6160 + ], + "op": "EQ", + "path": "24" + }, + "1438": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6160 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1439": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6230 + ], + "op": "DUP1", + "path": "24" + }, + "1440": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6230 + ], + "op": "PUSH2", + "path": "24", + "value": "0x5B9" + }, + "1443": { + "branch": 41, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6230 + ], + "op": "JUMPI", + "path": "24" + }, + "1444": { + "op": "POP" + }, + "1445": { + "op": "PUSH1", + "value": "0x1" + }, + "1447": { + "op": "PUSH1", + "value": "0x1" + }, + "1449": { + "op": "PUSH1", + "value": "0xE0" + }, + "1451": { + "op": "SHL" + }, + "1452": { + "op": "SUB" + }, + "1453": { + "op": "NOT" + }, + "1454": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6176, + 6230 + ], + "op": "DUP3", + "path": "24" + }, + "1455": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6176, + 6230 + ], + "op": "AND", + "path": "24" + }, + "1456": { + "op": "PUSH4", + "value": "0x81A86855" + }, + "1461": { + "op": "PUSH1", + "value": "0xE0" + }, + "1463": { + "op": "SHL" + }, + "1464": { + "branch": 42, + "fn": "Router.getRouterImplementation", + "offset": [ + 6176, + 6230 + ], + "op": "EQ", + "path": "24" + }, + "1465": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6230 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1466": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6296 + ], + "op": "DUP1", + "path": "24" + }, + "1467": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6296 + ], + "op": "PUSH2", + "path": "24", + "value": "0x5D4" + }, + "1470": { + "branch": 42, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6296 + ], + "op": "JUMPI", + "path": "24" + }, + "1471": { + "op": "POP" + }, + "1472": { + "op": "PUSH1", + "value": "0x1" + }, + "1474": { + "op": "PUSH1", + "value": "0x1" + }, + "1476": { + "op": "PUSH1", + "value": "0xE0" + }, + "1478": { + "op": "SHL" + }, + "1479": { + "op": "SUB" + }, + "1480": { + "op": "NOT" + }, + "1481": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6246, + 6296 + ], + "op": "DUP3", + "path": "24" + }, + "1482": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6246, + 6296 + ], + "op": "AND", + "path": "24" + }, + "1483": { + "op": "PUSH4", + "value": "0x79212195" + }, + "1488": { + "op": "PUSH1", + "value": "0xE1" + }, + "1490": { + "op": "SHL" + }, + "1491": { + "branch": 43, + "fn": "Router.getRouterImplementation", + "offset": [ + 6246, + 6296 + ], + "op": "EQ", + "path": "24" + }, + "1492": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6296 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1493": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6367 + ], + "op": "DUP1", + "path": "24" + }, + "1494": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6367 + ], + "op": "PUSH2", + "path": "24", + "value": "0x5EF" + }, + "1497": { + "branch": 43, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6367 + ], + "op": "JUMPI", + "path": "24" + }, + "1498": { + "op": "POP" + }, + "1499": { + "op": "PUSH1", + "value": "0x1" + }, + "1501": { + "op": "PUSH1", + "value": "0x1" + }, + "1503": { + "op": "PUSH1", + "value": "0xE0" + }, + "1505": { + "op": "SHL" + }, + "1506": { + "op": "SUB" + }, + "1507": { + "op": "NOT" + }, + "1508": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6312, + 6367 + ], + "op": "DUP3", + "path": "24" + }, + "1509": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6312, + 6367 + ], + "op": "AND", + "path": "24" + }, + "1510": { + "op": "PUSH4", + "value": "0x1759616B" + }, + "1515": { + "op": "PUSH1", + "value": "0xE1" + }, + "1517": { + "op": "SHL" + }, + "1518": { + "branch": 44, + "fn": "Router.getRouterImplementation", + "offset": [ + 6312, + 6367 + ], + "op": "EQ", + "path": "24" + }, + "1519": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6367 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1520": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6431 + ], + "op": "DUP1", + "path": "24" + }, + "1521": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6431 + ], + "op": "PUSH2", + "path": "24", + "value": "0x60A" + }, + "1524": { + "branch": 44, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6431 + ], + "op": "JUMPI", + "path": "24" + }, + "1525": { + "op": "POP" + }, + "1526": { + "op": "PUSH1", + "value": "0x1" + }, + "1528": { + "op": "PUSH1", + "value": "0x1" + }, + "1530": { + "op": "PUSH1", + "value": "0xE0" + }, + "1532": { + "op": "SHL" + }, + "1533": { + "op": "SUB" + }, + "1534": { + "op": "NOT" + }, + "1535": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6383, + 6431 + ], + "op": "DUP3", + "path": "24" + }, + "1536": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6383, + 6431 + ], + "op": "AND", + "path": "24" + }, + "1537": { + "op": "PUSH4", + "value": "0x7F4D701" + }, + "1542": { + "op": "PUSH1", + "value": "0xE3" + }, + "1544": { + "op": "SHL" + }, + "1545": { + "branch": 45, + "fn": "Router.getRouterImplementation", + "offset": [ + 6383, + 6431 + ], + "op": "EQ", + "path": "24" + }, + "1546": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6431 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1547": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6491 + ], + "op": "DUP1", + "path": "24" + }, + "1548": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6491 + ], + "op": "PUSH2", + "path": "24", + "value": "0x625" + }, + "1551": { + "branch": 45, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6491 + ], + "op": "JUMPI", + "path": "24" + }, + "1552": { + "op": "POP" + }, + "1553": { + "op": "PUSH1", + "value": "0x1" + }, + "1555": { + "op": "PUSH1", + "value": "0x1" + }, + "1557": { + "op": "PUSH1", + "value": "0xE0" + }, + "1559": { + "op": "SHL" + }, + "1560": { + "op": "SUB" + }, + "1561": { + "op": "NOT" + }, + "1562": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6447, + 6491 + ], + "op": "DUP3", + "path": "24" + }, + "1563": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6447, + 6491 + ], + "op": "AND", + "path": "24" + }, + "1564": { + "op": "PUSH4", + "value": "0xE6B43B9" + }, + "1569": { + "op": "PUSH1", + "value": "0xE3" + }, + "1571": { + "op": "SHL" + }, + "1572": { + "branch": 46, + "fn": "Router.getRouterImplementation", + "offset": [ + 6447, + 6491 + ], + "op": "EQ", + "path": "24" + }, + "1573": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6491 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1574": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6558 + ], + "op": "DUP1", + "path": "24" + }, + "1575": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6558 + ], + "op": "PUSH2", + "path": "24", + "value": "0x640" + }, + "1578": { + "branch": 46, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6558 + ], + "op": "JUMPI", + "path": "24" + }, + "1579": { + "op": "POP" + }, + "1580": { + "op": "PUSH1", + "value": "0x1" + }, + "1582": { + "op": "PUSH1", + "value": "0x1" + }, + "1584": { + "op": "PUSH1", + "value": "0xE0" + }, + "1586": { + "op": "SHL" + }, + "1587": { + "op": "SUB" + }, + "1588": { + "op": "NOT" + }, + "1589": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6507, + 6558 + ], + "op": "DUP3", + "path": "24" + }, + "1590": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6507, + 6558 + ], + "op": "AND", + "path": "24" + }, + "1591": { + "op": "PUSH4", + "value": "0xA22CB465" + }, + "1596": { + "op": "PUSH1", + "value": "0xE0" + }, + "1598": { + "op": "SHL" + }, + "1599": { + "branch": 47, + "fn": "Router.getRouterImplementation", + "offset": [ + 6507, + 6558 + ], + "op": "EQ", + "path": "24" + }, + "1600": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6558 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1601": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6624 + ], + "op": "DUP1", + "path": "24" + }, + "1602": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6624 + ], + "op": "PUSH2", + "path": "24", + "value": "0x65B" + }, + "1605": { + "branch": 47, + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6624 + ], + "op": "JUMPI", + "path": "24" + }, + "1606": { + "op": "POP" + }, + "1607": { + "op": "PUSH1", + "value": "0x1" + }, + "1609": { + "op": "PUSH1", + "value": "0x1" + }, + "1611": { + "op": "PUSH1", + "value": "0xE0" + }, + "1613": { + "op": "SHL" + }, + "1614": { + "op": "SUB" + }, + "1615": { + "op": "NOT" + }, + "1616": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6574, + 6624 + ], + "op": "DUP3", + "path": "24" + }, + "1617": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6574, + 6624 + ], + "op": "AND", + "path": "24" + }, + "1618": { + "op": "PUSH4", + "value": "0xE985E9C5" + }, + "1623": { + "op": "PUSH1", + "value": "0xE0" + }, + "1625": { + "op": "SHL" + }, + "1626": { + "branch": 48, + "fn": "Router.getRouterImplementation", + "offset": [ + 6574, + 6624 + ], + "op": "EQ", + "path": "24" + }, + "1627": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5921, + 6624 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1628": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5904, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "1629": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5904, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x687" + }, + "1632": { + "branch": 48, + "fn": "Router.getRouterImplementation", + "offset": [ + 5904, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "1633": { + "op": "POP" + }, + "1634": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6656, + 6663 + ], + "op": "PUSH32", + "path": "24", + "statement": 4, + "value": "0x0" + }, + "1667": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6649, + 6663 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "1670": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6649, + 6663 + ], + "op": "JUMP", + "path": "24" + }, + "1671": { + "fn": "Router.getRouterImplementation", + "offset": [ + 5904, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1672": { + "op": "PUSH1", + "value": "0x1" + }, + "1674": { + "op": "PUSH1", + "value": "0x1" + }, + "1676": { + "op": "PUSH1", + "value": "0xE0" + }, + "1678": { + "op": "SHL" + }, + "1679": { + "op": "SUB" + }, + "1680": { + "op": "NOT" + }, + "1681": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6749 + ], + "op": "DUP3", + "path": "24" + }, + "1682": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6749 + ], + "op": "AND", + "path": "24" + }, + "1683": { + "op": "PUSH4", + "value": "0x2D10E6EB" + }, + "1688": { + "op": "PUSH1", + "value": "0xE0" + }, + "1690": { + "op": "SHL" + }, + "1691": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6749 + ], + "op": "EQ", + "path": "24" + }, + "1692": { + "branch": 49, + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6749 + ], + "op": "DUP1", + "path": "24" + }, + "1693": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6822 + ], + "op": "PUSH2", + "path": "24", + "value": "0x6B6" + }, + "1696": { + "branch": 49, + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6822 + ], + "op": "JUMPI", + "path": "24" + }, + "1697": { + "op": "POP" + }, + "1698": { + "op": "PUSH1", + "value": "0x1" + }, + "1700": { + "op": "PUSH1", + "value": "0x1" + }, + "1702": { + "op": "PUSH1", + "value": "0xE0" + }, + "1704": { + "op": "SHL" + }, + "1705": { + "op": "SUB" + }, + "1706": { + "op": "NOT" + }, + "1707": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6765, + 6822 + ], + "op": "DUP3", + "path": "24" + }, + "1708": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6765, + 6822 + ], + "op": "AND", + "path": "24" + }, + "1709": { + "op": "PUSH4", + "value": "0x6633AF39" + }, + "1714": { + "op": "PUSH1", + "value": "0xE0" + }, + "1716": { + "op": "SHL" + }, + "1717": { + "branch": 50, + "fn": "Router.getRouterImplementation", + "offset": [ + 6765, + 6822 + ], + "op": "EQ", + "path": "24" + }, + "1718": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6822 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1719": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6901 + ], + "op": "DUP1", + "path": "24" + }, + "1720": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6901 + ], + "op": "PUSH2", + "path": "24", + "value": "0x6D1" + }, + "1723": { + "branch": 50, + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6901 + ], + "op": "JUMPI", + "path": "24" + }, + "1724": { + "op": "POP" + }, + "1725": { + "op": "PUSH1", + "value": "0x1" + }, + "1727": { + "op": "PUSH1", + "value": "0x1" + }, + "1729": { + "op": "PUSH1", + "value": "0xE0" + }, + "1731": { + "op": "SHL" + }, + "1732": { + "op": "SUB" + }, + "1733": { + "op": "NOT" + }, + "1734": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6838, + 6901 + ], + "op": "DUP3", + "path": "24" + }, + "1735": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6838, + 6901 + ], + "op": "AND", + "path": "24" + }, + "1736": { + "op": "PUSH4", + "value": "0xE3E7CB4F" + }, + "1741": { + "op": "PUSH1", + "value": "0xE0" + }, + "1743": { + "op": "SHL" + }, + "1744": { + "branch": 51, + "fn": "Router.getRouterImplementation", + "offset": [ + 6838, + 6901 + ], + "op": "EQ", + "path": "24" + }, + "1745": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6901 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1746": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6985 + ], + "op": "DUP1", + "path": "24" + }, + "1747": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6985 + ], + "op": "PUSH2", + "path": "24", + "value": "0x6EC" + }, + "1750": { + "branch": 51, + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6985 + ], + "op": "JUMPI", + "path": "24" + }, + "1751": { + "op": "POP" + }, + "1752": { + "op": "PUSH1", + "value": "0x1" + }, + "1754": { + "op": "PUSH1", + "value": "0x1" + }, + "1756": { + "op": "PUSH1", + "value": "0xE0" + }, + "1758": { + "op": "SHL" + }, + "1759": { + "op": "SUB" + }, + "1760": { + "op": "NOT" + }, + "1761": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6917, + 6985 + ], + "op": "DUP3", + "path": "24" + }, + "1762": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6917, + 6985 + ], + "op": "AND", + "path": "24" + }, + "1763": { + "op": "PUSH4", + "value": "0x9A600EEB" + }, + "1768": { + "op": "PUSH1", + "value": "0xE0" + }, + "1770": { + "op": "SHL" + }, + "1771": { + "branch": 52, + "fn": "Router.getRouterImplementation", + "offset": [ + 6917, + 6985 + ], + "op": "EQ", + "path": "24" + }, + "1772": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6697, + 6985 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1773": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6680, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "1774": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6680, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x718" + }, + "1777": { + "branch": 52, + "fn": "Router.getRouterImplementation", + "offset": [ + 6680, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "1778": { + "op": "POP" + }, + "1779": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7017, + 7035 + ], + "op": "PUSH32", + "path": "24", + "statement": 5, + "value": "0x0" + }, + "1812": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7010, + 7035 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "1815": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7010, + 7035 + ], + "op": "JUMP", + "path": "24" + }, + "1816": { + "fn": "Router.getRouterImplementation", + "offset": [ + 6680, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1817": { + "op": "PUSH1", + "value": "0x1" + }, + "1819": { + "op": "PUSH1", + "value": "0x1" + }, + "1821": { + "op": "PUSH1", + "value": "0xE0" + }, + "1823": { + "op": "SHL" + }, + "1824": { + "op": "SUB" + }, + "1825": { + "op": "NOT" + }, + "1826": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7118 + ], + "op": "DUP3", + "path": "24" + }, + "1827": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7118 + ], + "op": "AND", + "path": "24" + }, + "1828": { + "op": "PUSH4", + "value": "0x1FF7AEFD" + }, + "1833": { + "op": "PUSH1", + "value": "0xE2" + }, + "1835": { + "op": "SHL" + }, + "1836": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7118 + ], + "op": "EQ", + "path": "24" + }, + "1837": { + "branch": 53, + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7118 + ], + "op": "DUP1", + "path": "24" + }, + "1838": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7191 + ], + "op": "PUSH2", + "path": "24", + "value": "0x747" + }, + "1841": { + "branch": 53, + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7191 + ], + "op": "JUMPI", + "path": "24" + }, + "1842": { + "op": "POP" + }, + "1843": { + "op": "PUSH1", + "value": "0x1" + }, + "1845": { + "op": "PUSH1", + "value": "0x1" + }, + "1847": { + "op": "PUSH1", + "value": "0xE0" + }, + "1849": { + "op": "SHL" + }, + "1850": { + "op": "SUB" + }, + "1851": { + "op": "NOT" + }, + "1852": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7134, + 7191 + ], + "op": "DUP3", + "path": "24" + }, + "1853": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7134, + 7191 + ], + "op": "AND", + "path": "24" + }, + "1854": { + "op": "PUSH4", + "value": "0xE816469D" + }, + "1859": { + "op": "PUSH1", + "value": "0xE0" + }, + "1861": { + "op": "SHL" + }, + "1862": { + "branch": 54, + "fn": "Router.getRouterImplementation", + "offset": [ + 7134, + 7191 + ], + "op": "EQ", + "path": "24" + }, + "1863": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7191 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1864": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7267 + ], + "op": "DUP1", + "path": "24" + }, + "1865": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7267 + ], + "op": "PUSH2", + "path": "24", + "value": "0x762" + }, + "1868": { + "branch": 54, + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7267 + ], + "op": "JUMPI", + "path": "24" + }, + "1869": { + "op": "POP" + }, + "1870": { + "op": "PUSH1", + "value": "0x1" + }, + "1872": { + "op": "PUSH1", + "value": "0x1" + }, + "1874": { + "op": "PUSH1", + "value": "0xE0" + }, + "1876": { + "op": "SHL" + }, + "1877": { + "op": "SUB" + }, + "1878": { + "op": "NOT" + }, + "1879": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7207, + 7267 + ], + "op": "DUP3", + "path": "24" + }, + "1880": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7207, + 7267 + ], + "op": "AND", + "path": "24" + }, + "1881": { + "op": "PUSH4", + "value": "0xFB281D9" + }, + "1886": { + "op": "PUSH1", + "value": "0xE0" + }, + "1888": { + "op": "SHL" + }, + "1889": { + "branch": 55, + "fn": "Router.getRouterImplementation", + "offset": [ + 7207, + 7267 + ], + "op": "EQ", + "path": "24" + }, + "1890": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7267 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1891": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7351 + ], + "op": "DUP1", + "path": "24" + }, + "1892": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7351 + ], + "op": "PUSH2", + "path": "24", + "value": "0x77D" + }, + "1895": { + "branch": 55, + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7351 + ], + "op": "JUMPI", + "path": "24" + }, + "1896": { + "op": "POP" + }, + "1897": { + "op": "PUSH1", + "value": "0x1" + }, + "1899": { + "op": "PUSH1", + "value": "0x1" + }, + "1901": { + "op": "PUSH1", + "value": "0xE0" + }, + "1903": { + "op": "SHL" + }, + "1904": { + "op": "SUB" + }, + "1905": { + "op": "NOT" + }, + "1906": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7283, + 7351 + ], + "op": "DUP3", + "path": "24" + }, + "1907": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7283, + 7351 + ], + "op": "AND", + "path": "24" + }, + "1908": { + "op": "PUSH4", + "value": "0xFA37E395" + }, + "1913": { + "op": "PUSH1", + "value": "0xE0" + }, + "1915": { + "op": "SHL" + }, + "1916": { + "branch": 56, + "fn": "Router.getRouterImplementation", + "offset": [ + 7283, + 7351 + ], + "op": "EQ", + "path": "24" + }, + "1917": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7069, + 7351 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1918": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7052, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "1919": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7052, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x7A9" + }, + "1922": { + "branch": 56, + "fn": "Router.getRouterImplementation", + "offset": [ + 7052, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "1923": { + "op": "POP" + }, + "1924": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7383, + 7398 + ], + "op": "PUSH32", + "path": "24", + "statement": 6, + "value": "0x0" + }, + "1957": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7376, + 7398 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "1960": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7376, + 7398 + ], + "op": "JUMP", + "path": "24" + }, + "1961": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7052, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "1962": { + "op": "PUSH1", + "value": "0x1" + }, + "1964": { + "op": "PUSH1", + "value": "0x1" + }, + "1966": { + "op": "PUSH1", + "value": "0xE0" + }, + "1968": { + "op": "SHL" + }, + "1969": { + "op": "SUB" + }, + "1970": { + "op": "NOT" + }, + "1971": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7479 + ], + "op": "DUP3", + "path": "24" + }, + "1972": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7479 + ], + "op": "AND", + "path": "24" + }, + "1973": { + "op": "PUSH4", + "value": "0x3438193" + }, + "1978": { + "op": "PUSH1", + "value": "0xE6" + }, + "1980": { + "op": "SHL" + }, + "1981": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7479 + ], + "op": "EQ", + "path": "24" + }, + "1982": { + "branch": 57, + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7479 + ], + "op": "DUP1", + "path": "24" + }, + "1983": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7545 + ], + "op": "PUSH2", + "path": "24", + "value": "0x7D8" + }, + "1986": { + "branch": 57, + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7545 + ], + "op": "JUMPI", + "path": "24" + }, + "1987": { + "op": "POP" + }, + "1988": { + "op": "PUSH1", + "value": "0x1" + }, + "1990": { + "op": "PUSH1", + "value": "0x1" + }, + "1992": { + "op": "PUSH1", + "value": "0xE0" + }, + "1994": { + "op": "SHL" + }, + "1995": { + "op": "SUB" + }, + "1996": { + "op": "NOT" + }, + "1997": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7495, + 7545 + ], + "op": "DUP3", + "path": "24" + }, + "1998": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7495, + 7545 + ], + "op": "AND", + "path": "24" + }, + "1999": { + "op": "PUSH4", + "value": "0x5DB6EAC7" + }, + "2004": { + "op": "PUSH1", + "value": "0xE1" + }, + "2006": { + "op": "SHL" + }, + "2007": { + "branch": 58, + "fn": "Router.getRouterImplementation", + "offset": [ + 7495, + 7545 + ], + "op": "EQ", + "path": "24" + }, + "2008": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7432, + 7545 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2009": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7415, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "2010": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7415, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x804" + }, + "2013": { + "branch": 58, + "fn": "Router.getRouterImplementation", + "offset": [ + 7415, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "2014": { + "op": "POP" + }, + "2015": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7577, + 7594 + ], + "op": "PUSH32", + "path": "24", + "statement": 7, + "value": "0x0" + }, + "2048": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7570, + 7594 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "2051": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7570, + 7594 + ], + "op": "JUMP", + "path": "24" + }, + "2052": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7415, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2053": { + "op": "PUSH1", + "value": "0x1" + }, + "2055": { + "op": "PUSH1", + "value": "0x1" + }, + "2057": { + "op": "PUSH1", + "value": "0xE0" + }, + "2059": { + "op": "SHL" + }, + "2060": { + "op": "SUB" + }, + "2061": { + "op": "NOT" + }, + "2062": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7675 + ], + "op": "DUP3", + "path": "24" + }, + "2063": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7675 + ], + "op": "AND", + "path": "24" + }, + "2064": { + "op": "PUSH4", + "value": "0x7ABAF271" + }, + "2069": { + "op": "PUSH1", + "value": "0xE1" + }, + "2071": { + "op": "SHL" + }, + "2072": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7675 + ], + "op": "EQ", + "path": "24" + }, + "2073": { + "branch": 59, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7675 + ], + "op": "DUP1", + "path": "24" + }, + "2074": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7741 + ], + "op": "PUSH2", + "path": "24", + "value": "0x833" + }, + "2077": { + "branch": 59, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7741 + ], + "op": "JUMPI", + "path": "24" + }, + "2078": { + "op": "POP" + }, + "2079": { + "op": "PUSH1", + "value": "0x1" + }, + "2081": { + "op": "PUSH1", + "value": "0x1" + }, + "2083": { + "op": "PUSH1", + "value": "0xE0" + }, + "2085": { + "op": "SHL" + }, + "2086": { + "op": "SUB" + }, + "2087": { + "op": "NOT" + }, + "2088": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7691, + 7741 + ], + "op": "DUP3", + "path": "24" + }, + "2089": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7691, + 7741 + ], + "op": "AND", + "path": "24" + }, + "2090": { + "op": "PUSH4", + "value": "0xE31051A1" + }, + "2095": { + "op": "PUSH1", + "value": "0xE0" + }, + "2097": { + "op": "SHL" + }, + "2098": { + "branch": 60, + "fn": "Router.getRouterImplementation", + "offset": [ + 7691, + 7741 + ], + "op": "EQ", + "path": "24" + }, + "2099": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7741 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2100": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7807 + ], + "op": "DUP1", + "path": "24" + }, + "2101": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7807 + ], + "op": "PUSH2", + "path": "24", + "value": "0x84E" + }, + "2104": { + "branch": 60, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7807 + ], + "op": "JUMPI", + "path": "24" + }, + "2105": { + "op": "POP" + }, + "2106": { + "op": "PUSH1", + "value": "0x1" + }, + "2108": { + "op": "PUSH1", + "value": "0x1" + }, + "2110": { + "op": "PUSH1", + "value": "0xE0" + }, + "2112": { + "op": "SHL" + }, + "2113": { + "op": "SUB" + }, + "2114": { + "op": "NOT" + }, + "2115": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7757, + 7807 + ], + "op": "DUP3", + "path": "24" + }, + "2116": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7757, + 7807 + ], + "op": "AND", + "path": "24" + }, + "2117": { + "op": "PUSH4", + "value": "0xA11A4293" + }, + "2122": { + "op": "PUSH1", + "value": "0xE0" + }, + "2124": { + "op": "SHL" + }, + "2125": { + "branch": 61, + "fn": "Router.getRouterImplementation", + "offset": [ + 7757, + 7807 + ], + "op": "EQ", + "path": "24" + }, + "2126": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7807 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2127": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7873 + ], + "op": "DUP1", + "path": "24" + }, + "2128": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7873 + ], + "op": "PUSH2", + "path": "24", + "value": "0x869" + }, + "2131": { + "branch": 61, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7873 + ], + "op": "JUMPI", + "path": "24" + }, + "2132": { + "op": "POP" + }, + "2133": { + "op": "PUSH1", + "value": "0x1" + }, + "2135": { + "op": "PUSH1", + "value": "0x1" + }, + "2137": { + "op": "PUSH1", + "value": "0xE0" + }, + "2139": { + "op": "SHL" + }, + "2140": { + "op": "SUB" + }, + "2141": { + "op": "NOT" + }, + "2142": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7823, + 7873 + ], + "op": "DUP3", + "path": "24" + }, + "2143": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7823, + 7873 + ], + "op": "AND", + "path": "24" + }, + "2144": { + "op": "PUSH4", + "value": "0x5284765" + }, + "2149": { + "op": "PUSH1", + "value": "0xE5" + }, + "2151": { + "op": "SHL" + }, + "2152": { + "branch": 62, + "fn": "Router.getRouterImplementation", + "offset": [ + 7823, + 7873 + ], + "op": "EQ", + "path": "24" + }, + "2153": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7873 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2154": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7937 + ], + "op": "DUP1", + "path": "24" + }, + "2155": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7937 + ], + "op": "PUSH2", + "path": "24", + "value": "0x884" + }, + "2158": { + "branch": 62, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7937 + ], + "op": "JUMPI", + "path": "24" + }, + "2159": { + "op": "POP" + }, + "2160": { + "op": "PUSH1", + "value": "0x1" + }, + "2162": { + "op": "PUSH1", + "value": "0x1" + }, + "2164": { + "op": "PUSH1", + "value": "0xE0" + }, + "2166": { + "op": "SHL" + }, + "2167": { + "op": "SUB" + }, + "2168": { + "op": "NOT" + }, + "2169": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7889, + 7937 + ], + "op": "DUP3", + "path": "24" + }, + "2170": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7889, + 7937 + ], + "op": "AND", + "path": "24" + }, + "2171": { + "op": "PUSH4", + "value": "0x315CB2B9" + }, + "2176": { + "op": "PUSH1", + "value": "0xE2" + }, + "2178": { + "op": "SHL" + }, + "2179": { + "branch": 63, + "fn": "Router.getRouterImplementation", + "offset": [ + 7889, + 7937 + ], + "op": "EQ", + "path": "24" + }, + "2180": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 7937 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2181": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8005 + ], + "op": "DUP1", + "path": "24" + }, + "2182": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8005 + ], + "op": "PUSH2", + "path": "24", + "value": "0x89F" + }, + "2185": { + "branch": 63, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8005 + ], + "op": "JUMPI", + "path": "24" + }, + "2186": { + "op": "POP" + }, + "2187": { + "op": "PUSH1", + "value": "0x1" + }, + "2189": { + "op": "PUSH1", + "value": "0x1" + }, + "2191": { + "op": "PUSH1", + "value": "0xE0" + }, + "2193": { + "op": "SHL" + }, + "2194": { + "op": "SUB" + }, + "2195": { + "op": "NOT" + }, + "2196": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7953, + 8005 + ], + "op": "DUP3", + "path": "24" + }, + "2197": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7953, + 8005 + ], + "op": "AND", + "path": "24" + }, + "2198": { + "op": "PUSH4", + "value": "0x2C90B94D" + }, + "2203": { + "op": "PUSH1", + "value": "0xE2" + }, + "2205": { + "op": "SHL" + }, + "2206": { + "branch": 64, + "fn": "Router.getRouterImplementation", + "offset": [ + 7953, + 8005 + ], + "op": "EQ", + "path": "24" + }, + "2207": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8005 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2208": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8070 + ], + "op": "DUP1", + "path": "24" + }, + "2209": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8070 + ], + "op": "PUSH2", + "path": "24", + "value": "0x8BA" + }, + "2212": { + "branch": 64, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8070 + ], + "op": "JUMPI", + "path": "24" + }, + "2213": { + "op": "POP" + }, + "2214": { + "op": "PUSH1", + "value": "0x1" + }, + "2216": { + "op": "PUSH1", + "value": "0x1" + }, + "2218": { + "op": "PUSH1", + "value": "0xE0" + }, + "2220": { + "op": "SHL" + }, + "2221": { + "op": "SUB" + }, + "2222": { + "op": "NOT" + }, + "2223": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8021, + 8070 + ], + "op": "DUP3", + "path": "24" + }, + "2224": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8021, + 8070 + ], + "op": "AND", + "path": "24" + }, + "2225": { + "op": "PUSH4", + "value": "0x9CE3C19" + }, + "2230": { + "op": "PUSH1", + "value": "0xE3" + }, + "2232": { + "op": "SHL" + }, + "2233": { + "branch": 65, + "fn": "Router.getRouterImplementation", + "offset": [ + 8021, + 8070 + ], + "op": "EQ", + "path": "24" + }, + "2234": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8070 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2235": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8148 + ], + "op": "DUP1", + "path": "24" + }, + "2236": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8148 + ], + "op": "PUSH2", + "path": "24", + "value": "0x8D5" + }, + "2239": { + "branch": 65, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8148 + ], + "op": "JUMPI", + "path": "24" + }, + "2240": { + "op": "POP" + }, + "2241": { + "op": "PUSH1", + "value": "0x1" + }, + "2243": { + "op": "PUSH1", + "value": "0x1" + }, + "2245": { + "op": "PUSH1", + "value": "0xE0" + }, + "2247": { + "op": "SHL" + }, + "2248": { + "op": "SUB" + }, + "2249": { + "op": "NOT" + }, + "2250": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8086, + 8148 + ], + "op": "DUP3", + "path": "24" + }, + "2251": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8086, + 8148 + ], + "op": "AND", + "path": "24" + }, + "2252": { + "op": "PUSH4", + "value": "0x54EBDE29" + }, + "2257": { + "op": "PUSH1", + "value": "0xE1" + }, + "2259": { + "op": "SHL" + }, + "2260": { + "branch": 66, + "fn": "Router.getRouterImplementation", + "offset": [ + 8086, + 8148 + ], + "op": "EQ", + "path": "24" + }, + "2261": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8148 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2262": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8225 + ], + "op": "DUP1", + "path": "24" + }, + "2263": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8225 + ], + "op": "PUSH2", + "path": "24", + "value": "0x8F0" + }, + "2266": { + "branch": 66, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8225 + ], + "op": "JUMPI", + "path": "24" + }, + "2267": { + "op": "POP" + }, + "2268": { + "op": "PUSH1", + "value": "0x1" + }, + "2270": { + "op": "PUSH1", + "value": "0x1" + }, + "2272": { + "op": "PUSH1", + "value": "0xE0" + }, + "2274": { + "op": "SHL" + }, + "2275": { + "op": "SUB" + }, + "2276": { + "op": "NOT" + }, + "2277": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8164, + 8225 + ], + "op": "DUP3", + "path": "24" + }, + "2278": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8164, + 8225 + ], + "op": "AND", + "path": "24" + }, + "2279": { + "op": "PUSH4", + "value": "0x98DCBC23" + }, + "2284": { + "op": "PUSH1", + "value": "0xE0" + }, + "2286": { + "op": "SHL" + }, + "2287": { + "branch": 67, + "fn": "Router.getRouterImplementation", + "offset": [ + 8164, + 8225 + ], + "op": "EQ", + "path": "24" + }, + "2288": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8225 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2289": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8299 + ], + "op": "DUP1", + "path": "24" + }, + "2290": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8299 + ], + "op": "PUSH2", + "path": "24", + "value": "0x90B" + }, + "2293": { + "branch": 67, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8299 + ], + "op": "JUMPI", + "path": "24" + }, + "2294": { + "op": "POP" + }, + "2295": { + "op": "PUSH1", + "value": "0x1" + }, + "2297": { + "op": "PUSH1", + "value": "0x1" + }, + "2299": { + "op": "PUSH1", + "value": "0xE0" + }, + "2301": { + "op": "SHL" + }, + "2302": { + "op": "SUB" + }, + "2303": { + "op": "NOT" + }, + "2304": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8241, + 8299 + ], + "op": "DUP3", + "path": "24" + }, + "2305": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8241, + 8299 + ], + "op": "AND", + "path": "24" + }, + "2306": { + "op": "PUSH4", + "value": "0x33EABD1D" + }, + "2311": { + "op": "PUSH1", + "value": "0xE2" + }, + "2313": { + "op": "SHL" + }, + "2314": { + "branch": 68, + "fn": "Router.getRouterImplementation", + "offset": [ + 8241, + 8299 + ], + "op": "EQ", + "path": "24" + }, + "2315": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8299 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2316": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8380 + ], + "op": "DUP1", + "path": "24" + }, + "2317": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8380 + ], + "op": "PUSH2", + "path": "24", + "value": "0x926" + }, + "2320": { + "branch": 68, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8380 + ], + "op": "JUMPI", + "path": "24" + }, + "2321": { + "op": "POP" + }, + "2322": { + "op": "PUSH1", + "value": "0x1" + }, + "2324": { + "op": "PUSH1", + "value": "0x1" + }, + "2326": { + "op": "PUSH1", + "value": "0xE0" + }, + "2328": { + "op": "SHL" + }, + "2329": { + "op": "SUB" + }, + "2330": { + "op": "NOT" + }, + "2331": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8315, + 8380 + ], + "op": "DUP3", + "path": "24" + }, + "2332": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8315, + 8380 + ], + "op": "AND", + "path": "24" + }, + "2333": { + "op": "PUSH4", + "value": "0x413F2C5F" + }, + "2338": { + "op": "PUSH1", + "value": "0xE0" + }, + "2340": { + "op": "SHL" + }, + "2341": { + "branch": 69, + "fn": "Router.getRouterImplementation", + "offset": [ + 8315, + 8380 + ], + "op": "EQ", + "path": "24" + }, + "2342": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8380 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2343": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8462 + ], + "op": "DUP1", + "path": "24" + }, + "2344": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8462 + ], + "op": "PUSH2", + "path": "24", + "value": "0x941" + }, + "2347": { + "branch": 69, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8462 + ], + "op": "JUMPI", + "path": "24" + }, + "2348": { + "op": "POP" + }, + "2349": { + "op": "PUSH1", + "value": "0x1" + }, + "2351": { + "op": "PUSH1", + "value": "0x1" + }, + "2353": { + "op": "PUSH1", + "value": "0xE0" + }, + "2355": { + "op": "SHL" + }, + "2356": { + "op": "SUB" + }, + "2357": { + "op": "NOT" + }, + "2358": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8396, + 8462 + ], + "op": "DUP3", + "path": "24" + }, + "2359": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8396, + 8462 + ], + "op": "AND", + "path": "24" + }, + "2360": { + "op": "PUSH4", + "value": "0xD0DA867" + }, + "2365": { + "op": "PUSH1", + "value": "0xE2" + }, + "2367": { + "op": "SHL" + }, + "2368": { + "branch": 70, + "fn": "Router.getRouterImplementation", + "offset": [ + 8396, + 8462 + ], + "op": "EQ", + "path": "24" + }, + "2369": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8462 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2370": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8541 + ], + "op": "DUP1", + "path": "24" + }, + "2371": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8541 + ], + "op": "PUSH2", + "path": "24", + "value": "0x95C" + }, + "2374": { + "branch": 70, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8541 + ], + "op": "JUMPI", + "path": "24" + }, + "2375": { + "op": "POP" + }, + "2376": { + "op": "PUSH1", + "value": "0x1" + }, + "2378": { + "op": "PUSH1", + "value": "0x1" + }, + "2380": { + "op": "PUSH1", + "value": "0xE0" + }, + "2382": { + "op": "SHL" + }, + "2383": { + "op": "SUB" + }, + "2384": { + "op": "NOT" + }, + "2385": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8478, + 8541 + ], + "op": "DUP3", + "path": "24" + }, + "2386": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8478, + 8541 + ], + "op": "AND", + "path": "24" + }, + "2387": { + "op": "PUSH4", + "value": "0x353ABC5D" + }, + "2392": { + "op": "PUSH1", + "value": "0xE0" + }, + "2394": { + "op": "SHL" + }, + "2395": { + "branch": 71, + "fn": "Router.getRouterImplementation", + "offset": [ + 8478, + 8541 + ], + "op": "EQ", + "path": "24" + }, + "2396": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8541 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2397": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8624 + ], + "op": "DUP1", + "path": "24" + }, + "2398": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8624 + ], + "op": "PUSH2", + "path": "24", + "value": "0x977" + }, + "2401": { + "branch": 71, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8624 + ], + "op": "JUMPI", + "path": "24" + }, + "2402": { + "op": "POP" + }, + "2403": { + "op": "PUSH1", + "value": "0x1" + }, + "2405": { + "op": "PUSH1", + "value": "0x1" + }, + "2407": { + "op": "PUSH1", + "value": "0xE0" + }, + "2409": { + "op": "SHL" + }, + "2410": { + "op": "SUB" + }, + "2411": { + "op": "NOT" + }, + "2412": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8557, + 8624 + ], + "op": "DUP3", + "path": "24" + }, + "2413": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8557, + 8624 + ], + "op": "AND", + "path": "24" + }, + "2414": { + "op": "PUSH4", + "value": "0xFA17B5F1" + }, + "2419": { + "op": "PUSH1", + "value": "0xE0" + }, + "2421": { + "op": "SHL" + }, + "2422": { + "branch": 72, + "fn": "Router.getRouterImplementation", + "offset": [ + 8557, + 8624 + ], + "op": "EQ", + "path": "24" + }, + "2423": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8624 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2424": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8689 + ], + "op": "DUP1", + "path": "24" + }, + "2425": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8689 + ], + "op": "PUSH2", + "path": "24", + "value": "0x992" + }, + "2428": { + "branch": 72, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8689 + ], + "op": "JUMPI", + "path": "24" + }, + "2429": { + "op": "POP" + }, + "2430": { + "op": "PUSH1", + "value": "0x1" + }, + "2432": { + "op": "PUSH1", + "value": "0x1" + }, + "2434": { + "op": "PUSH1", + "value": "0xE0" + }, + "2436": { + "op": "SHL" + }, + "2437": { + "op": "SUB" + }, + "2438": { + "op": "NOT" + }, + "2439": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8640, + 8689 + ], + "op": "DUP3", + "path": "24" + }, + "2440": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8640, + 8689 + ], + "op": "AND", + "path": "24" + }, + "2441": { + "op": "PUSH4", + "value": "0x113AA8B1" + }, + "2446": { + "op": "PUSH1", + "value": "0xE0" + }, + "2448": { + "op": "SHL" + }, + "2449": { + "branch": 73, + "fn": "Router.getRouterImplementation", + "offset": [ + 8640, + 8689 + ], + "op": "EQ", + "path": "24" + }, + "2450": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8689 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2451": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8744 + ], + "op": "DUP1", + "path": "24" + }, + "2452": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8744 + ], + "op": "PUSH2", + "path": "24", + "value": "0x9AD" + }, + "2455": { + "branch": 73, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8744 + ], + "op": "JUMPI", + "path": "24" + }, + "2456": { + "op": "POP" + }, + "2457": { + "op": "PUSH1", + "value": "0x1" + }, + "2459": { + "op": "PUSH1", + "value": "0x1" + }, + "2461": { + "op": "PUSH1", + "value": "0xE0" + }, + "2463": { + "op": "SHL" + }, + "2464": { + "op": "SUB" + }, + "2465": { + "op": "NOT" + }, + "2466": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8705, + 8744 + ], + "op": "DUP3", + "path": "24" + }, + "2467": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8705, + 8744 + ], + "op": "AND", + "path": "24" + }, + "2468": { + "op": "PUSH4", + "value": "0x1B2CE7F3" + }, + "2473": { + "op": "PUSH1", + "value": "0xE1" + }, + "2475": { + "op": "SHL" + }, + "2476": { + "branch": 74, + "fn": "Router.getRouterImplementation", + "offset": [ + 8705, + 8744 + ], + "op": "EQ", + "path": "24" + }, + "2477": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8744 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2478": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8806 + ], + "op": "DUP1", + "path": "24" + }, + "2479": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8806 + ], + "op": "PUSH2", + "path": "24", + "value": "0x9C8" + }, + "2482": { + "branch": 74, + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8806 + ], + "op": "JUMPI", + "path": "24" + }, + "2483": { + "op": "POP" + }, + "2484": { + "op": "PUSH1", + "value": "0x1" + }, + "2486": { + "op": "PUSH1", + "value": "0x1" + }, + "2488": { + "op": "PUSH1", + "value": "0xE0" + }, + "2490": { + "op": "SHL" + }, + "2491": { + "op": "SUB" + }, + "2492": { + "op": "NOT" + }, + "2493": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8760, + 8806 + ], + "op": "DUP3", + "path": "24" + }, + "2494": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8760, + 8806 + ], + "op": "AND", + "path": "24" + }, + "2495": { + "op": "PUSH4", + "value": "0x278F7943" + }, + "2500": { + "op": "PUSH1", + "value": "0xE1" + }, + "2502": { + "op": "SHL" + }, + "2503": { + "branch": 75, + "fn": "Router.getRouterImplementation", + "offset": [ + 8760, + 8806 + ], + "op": "EQ", + "path": "24" + }, + "2504": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7628, + 8806 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2505": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7611, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "2506": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7611, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0x9F4" + }, + "2509": { + "branch": 75, + "fn": "Router.getRouterImplementation", + "offset": [ + 7611, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "2510": { + "op": "POP" + }, + "2511": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8838, + 8848 + ], + "op": "PUSH32", + "path": "24", + "statement": 8, + "value": "0x0" + }, + "2544": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8831, + 8848 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "2547": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8831, + 8848 + ], + "op": "JUMP", + "path": "24" + }, + "2548": { + "fn": "Router.getRouterImplementation", + "offset": [ + 7611, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2549": { + "op": "PUSH1", + "value": "0x1" + }, + "2551": { + "op": "PUSH1", + "value": "0x1" + }, + "2553": { + "op": "PUSH1", + "value": "0xE0" + }, + "2555": { + "op": "SHL" + }, + "2556": { + "op": "SUB" + }, + "2557": { + "op": "NOT" + }, + "2558": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 8935 + ], + "op": "DUP3", + "path": "24" + }, + "2559": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 8935 + ], + "op": "AND", + "path": "24" + }, + "2560": { + "op": "PUSH4", + "value": "0x7D6DBFF7" + }, + "2565": { + "op": "PUSH1", + "value": "0xE1" + }, + "2567": { + "op": "SHL" + }, + "2568": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 8935 + ], + "op": "EQ", + "path": "24" + }, + "2569": { + "branch": 76, + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 8935 + ], + "op": "DUP1", + "path": "24" + }, + "2570": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9009 + ], + "op": "PUSH2", + "path": "24", + "value": "0xA23" + }, + "2573": { + "branch": 76, + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9009 + ], + "op": "JUMPI", + "path": "24" + }, + "2574": { + "op": "POP" + }, + "2575": { + "op": "PUSH1", + "value": "0x1" + }, + "2577": { + "op": "PUSH1", + "value": "0x1" + }, + "2579": { + "op": "PUSH1", + "value": "0xE0" + }, + "2581": { + "op": "SHL" + }, + "2582": { + "op": "SUB" + }, + "2583": { + "op": "NOT" + }, + "2584": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8951, + 9009 + ], + "op": "DUP3", + "path": "24" + }, + "2585": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8951, + 9009 + ], + "op": "AND", + "path": "24" + }, + "2586": { + "op": "PUSH4", + "value": "0x6D7A00EB" + }, + "2591": { + "op": "PUSH1", + "value": "0xE0" + }, + "2593": { + "op": "SHL" + }, + "2594": { + "branch": 77, + "fn": "Router.getRouterImplementation", + "offset": [ + 8951, + 9009 + ], + "op": "EQ", + "path": "24" + }, + "2595": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9009 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2596": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9076 + ], + "op": "DUP1", + "path": "24" + }, + "2597": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9076 + ], + "op": "PUSH2", + "path": "24", + "value": "0xA3E" + }, + "2600": { + "branch": 77, + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9076 + ], + "op": "JUMPI", + "path": "24" + }, + "2601": { + "op": "POP" + }, + "2602": { + "op": "PUSH1", + "value": "0x1" + }, + "2604": { + "op": "PUSH1", + "value": "0x1" + }, + "2606": { + "op": "PUSH1", + "value": "0xE0" + }, + "2608": { + "op": "SHL" + }, + "2609": { + "op": "SUB" + }, + "2610": { + "op": "NOT" + }, + "2611": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9025, + 9076 + ], + "op": "DUP3", + "path": "24" + }, + "2612": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9025, + 9076 + ], + "op": "AND", + "path": "24" + }, + "2613": { + "op": "PUSH4", + "value": "0x7F23D4F9" + }, + "2618": { + "op": "PUSH1", + "value": "0xE1" + }, + "2620": { + "op": "SHL" + }, + "2621": { + "branch": 78, + "fn": "Router.getRouterImplementation", + "offset": [ + 9025, + 9076 + ], + "op": "EQ", + "path": "24" + }, + "2622": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9076 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2623": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9141 + ], + "op": "DUP1", + "path": "24" + }, + "2624": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9141 + ], + "op": "PUSH2", + "path": "24", + "value": "0xA59" + }, + "2627": { + "branch": 78, + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9141 + ], + "op": "JUMPI", + "path": "24" + }, + "2628": { + "op": "POP" + }, + "2629": { + "op": "PUSH1", + "value": "0x1" + }, + "2631": { + "op": "PUSH1", + "value": "0x1" + }, + "2633": { + "op": "PUSH1", + "value": "0xE0" + }, + "2635": { + "op": "SHL" + }, + "2636": { + "op": "SUB" + }, + "2637": { + "op": "NOT" + }, + "2638": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9092, + 9141 + ], + "op": "DUP3", + "path": "24" + }, + "2639": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9092, + 9141 + ], + "op": "AND", + "path": "24" + }, + "2640": { + "op": "PUSH4", + "value": "0x239CEC8F" + }, + "2645": { + "op": "PUSH1", + "value": "0xE2" + }, + "2647": { + "op": "SHL" + }, + "2648": { + "branch": 79, + "fn": "Router.getRouterImplementation", + "offset": [ + 9092, + 9141 + ], + "op": "EQ", + "path": "24" + }, + "2649": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9141 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2650": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9211 + ], + "op": "DUP1", + "path": "24" + }, + "2651": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9211 + ], + "op": "PUSH2", + "path": "24", + "value": "0xA74" + }, + "2654": { + "branch": 79, + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9211 + ], + "op": "JUMPI", + "path": "24" + }, + "2655": { + "op": "POP" + }, + "2656": { + "op": "PUSH1", + "value": "0x1" + }, + "2658": { + "op": "PUSH1", + "value": "0x1" + }, + "2660": { + "op": "PUSH1", + "value": "0xE0" + }, + "2662": { + "op": "SHL" + }, + "2663": { + "op": "SUB" + }, + "2664": { + "op": "NOT" + }, + "2665": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9157, + 9211 + ], + "op": "DUP3", + "path": "24" + }, + "2666": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9157, + 9211 + ], + "op": "AND", + "path": "24" + }, + "2667": { + "op": "PUSH4", + "value": "0x12ADC47B" + }, + "2672": { + "op": "PUSH1", + "value": "0xE0" + }, + "2674": { + "op": "SHL" + }, + "2675": { + "branch": 80, + "fn": "Router.getRouterImplementation", + "offset": [ + 9157, + 9211 + ], + "op": "EQ", + "path": "24" + }, + "2676": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8882, + 9211 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2677": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8865, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "2678": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8865, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0xAA0" + }, + "2681": { + "branch": 80, + "fn": "Router.getRouterImplementation", + "offset": [ + 8865, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "2682": { + "op": "POP" + }, + "2683": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9243, + 9251 + ], + "op": "PUSH32", + "path": "24", + "statement": 9, + "value": "0x0" + }, + "2716": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9236, + 9251 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "2719": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9236, + 9251 + ], + "op": "JUMP", + "path": "24" + }, + "2720": { + "fn": "Router.getRouterImplementation", + "offset": [ + 8865, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2721": { + "op": "PUSH1", + "value": "0x1" + }, + "2723": { + "op": "PUSH1", + "value": "0x1" + }, + "2725": { + "op": "PUSH1", + "value": "0xE0" + }, + "2727": { + "op": "SHL" + }, + "2728": { + "op": "SUB" + }, + "2729": { + "op": "NOT" + }, + "2730": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9344 + ], + "op": "DUP3", + "path": "24" + }, + "2731": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9344 + ], + "op": "AND", + "path": "24" + }, + "2732": { + "op": "PUSH4", + "value": "0x6A09A2A3" + }, + "2737": { + "op": "PUSH1", + "value": "0xE0" + }, + "2739": { + "op": "SHL" + }, + "2740": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9344 + ], + "op": "EQ", + "path": "24" + }, + "2741": { + "branch": 81, + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9344 + ], + "op": "DUP1", + "path": "24" + }, + "2742": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9426 + ], + "op": "PUSH2", + "path": "24", + "value": "0xACF" + }, + "2745": { + "branch": 81, + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9426 + ], + "op": "JUMPI", + "path": "24" + }, + "2746": { + "op": "POP" + }, + "2747": { + "op": "PUSH1", + "value": "0x1" + }, + "2749": { + "op": "PUSH1", + "value": "0x1" + }, + "2751": { + "op": "PUSH1", + "value": "0xE0" + }, + "2753": { + "op": "SHL" + }, + "2754": { + "op": "SUB" + }, + "2755": { + "op": "NOT" + }, + "2756": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9360, + 9426 + ], + "op": "DUP3", + "path": "24" + }, + "2757": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9360, + 9426 + ], + "op": "AND", + "path": "24" + }, + "2758": { + "op": "PUSH4", + "value": "0x8355E895" + }, + "2763": { + "op": "PUSH1", + "value": "0xE0" + }, + "2765": { + "op": "SHL" + }, + "2766": { + "branch": 82, + "fn": "Router.getRouterImplementation", + "offset": [ + 9360, + 9426 + ], + "op": "EQ", + "path": "24" + }, + "2767": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9426 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2768": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9508 + ], + "op": "DUP1", + "path": "24" + }, + "2769": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9508 + ], + "op": "PUSH2", + "path": "24", + "value": "0xAEA" + }, + "2772": { + "branch": 82, + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9508 + ], + "op": "JUMPI", + "path": "24" + }, + "2773": { + "op": "POP" + }, + "2774": { + "op": "PUSH1", + "value": "0x1" + }, + "2776": { + "op": "PUSH1", + "value": "0x1" + }, + "2778": { + "op": "PUSH1", + "value": "0xE0" + }, + "2780": { + "op": "SHL" + }, + "2781": { + "op": "SUB" + }, + "2782": { + "op": "NOT" + }, + "2783": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9442, + 9508 + ], + "op": "DUP3", + "path": "24" + }, + "2784": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9442, + 9508 + ], + "op": "AND", + "path": "24" + }, + "2785": { + "op": "PUSH4", + "value": "0x94614DF" + }, + "2790": { + "op": "PUSH1", + "value": "0xE0" + }, + "2792": { + "op": "SHL" + }, + "2793": { + "branch": 83, + "fn": "Router.getRouterImplementation", + "offset": [ + 9442, + 9508 + ], + "op": "EQ", + "path": "24" + }, + "2794": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9508 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2795": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9589 + ], + "op": "DUP1", + "path": "24" + }, + "2796": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9589 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB05" + }, + "2799": { + "branch": 83, + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9589 + ], + "op": "JUMPI", + "path": "24" + }, + "2800": { + "op": "POP" + }, + "2801": { + "op": "PUSH1", + "value": "0x1" + }, + "2803": { + "op": "PUSH1", + "value": "0x1" + }, + "2805": { + "op": "PUSH1", + "value": "0xE0" + }, + "2807": { + "op": "SHL" + }, + "2808": { + "op": "SUB" + }, + "2809": { + "op": "NOT" + }, + "2810": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9524, + 9589 + ], + "op": "DUP3", + "path": "24" + }, + "2811": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9524, + 9589 + ], + "op": "AND", + "path": "24" + }, + "2812": { + "op": "PUSH4", + "value": "0x4BEB6D97" + }, + "2817": { + "op": "PUSH1", + "value": "0xE1" + }, + "2819": { + "op": "SHL" + }, + "2820": { + "branch": 84, + "fn": "Router.getRouterImplementation", + "offset": [ + 9524, + 9589 + ], + "op": "EQ", + "path": "24" + }, + "2821": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9285, + 9589 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2822": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9268, + 9819 + ], + "op": "ISZERO", + "path": "24" + }, + "2823": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9268, + 9819 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB31" + }, + "2826": { + "branch": 84, + "fn": "Router.getRouterImplementation", + "offset": [ + 9268, + 9819 + ], + "op": "JUMPI", + "path": "24" + }, + "2827": { + "op": "POP" + }, + "2828": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9621, + 9638 + ], + "op": "PUSH32", + "path": "24", + "statement": 10, + "value": "0x0" + }, + "2861": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9614, + 9638 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB54" + }, + "2864": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9614, + 9638 + ], + "op": "JUMP", + "path": "24" + }, + "2865": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9268, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2866": { + "op": "POP" + }, + "2867": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9803, + 9808 + ], + "op": "PUSH32", + "path": "24", + "statement": 11, + "value": "0x0" + }, + "2900": { + "fn": "Router.getRouterImplementation", + "offset": [ + 9268, + 9819 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2901": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "SWAP2", + "path": "24" + }, + "2902": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "SWAP1", + "path": "24" + }, + "2903": { + "fn": "Router.getRouterImplementation", + "offset": [ + 4310, + 9825 + ], + "op": "POP", + "path": "24" + }, + "2904": { + "fn": "Router.getRouterImplementation", + "jump": "o", + "offset": [ + 4310, + 9825 + ], + "op": "JUMP", + "path": "24" + }, + "2905": { + "fn": "Router._delegate", + "offset": [ + 10005, + 10975 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2906": { + "fn": "Router._delegate", + "offset": [ + 10390, + 10404 + ], + "op": "CALLDATASIZE", + "path": "24" + }, + "2907": { + "fn": "Router._delegate", + "offset": [ + 10387, + 10388 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "2909": { + "fn": "Router._delegate", + "offset": [ + 10384, + 10385 + ], + "op": "DUP1", + "path": "24" + }, + "2910": { + "fn": "Router._delegate", + "offset": [ + 10371, + 10405 + ], + "op": "CALLDATACOPY", + "path": "24" + }, + "2911": { + "fn": "Router._delegate", + "offset": [ + 10604, + 10605 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "2913": { + "fn": "Router._delegate", + "offset": [ + 10601, + 10602 + ], + "op": "DUP1", + "path": "24" + }, + "2914": { + "fn": "Router._delegate", + "offset": [ + 10585, + 10599 + ], + "op": "CALLDATASIZE", + "path": "24" + }, + "2915": { + "fn": "Router._delegate", + "offset": [ + 10582, + 10583 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "2917": { + "fn": "Router._delegate", + "offset": [ + 10566, + 10580 + ], + "op": "DUP5", + "path": "24" + }, + "2918": { + "fn": "Router._delegate", + "offset": [ + 10559, + 10564 + ], + "op": "GAS", + "path": "24" + }, + "2919": { + "fn": "Router._delegate", + "offset": [ + 10546, + 10606 + ], + "op": "DELEGATECALL", + "path": "24" + }, + "2920": { + "fn": "Router._delegate", + "offset": [ + 10680, + 10696 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "2921": { + "fn": "Router._delegate", + "offset": [ + 10677, + 10678 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "2923": { + "fn": "Router._delegate", + "offset": [ + 10674, + 10675 + ], + "op": "DUP1", + "path": "24" + }, + "2924": { + "fn": "Router._delegate", + "offset": [ + 10659, + 10697 + ], + "op": "RETURNDATACOPY", + "path": "24" + }, + "2925": { + "fn": "Router._delegate", + "offset": [ + 10718, + 10724 + ], + "op": "DUP1", + "path": "24" + }, + "2926": { + "fn": "Router._delegate", + "offset": [ + 10793, + 10867 + ], + "op": "DUP1", + "path": "24" + }, + "2927": { + "fn": "Router._delegate", + "offset": [ + 10793, + 10867 + ], + "op": "ISZERO", + "path": "24" + }, + "2928": { + "fn": "Router._delegate", + "offset": [ + 10793, + 10867 + ], + "op": "PUSH2", + "path": "24", + "value": "0xB78" + }, + "2931": { + "fn": "Router._delegate", + "offset": [ + 10793, + 10867 + ], + "op": "JUMPI", + "path": "24" + }, + "2932": { + "fn": "Router._delegate", + "offset": [ + 10924, + 10940 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "2933": { + "fn": "Router._delegate", + "offset": [ + 10921, + 10922 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "2935": { + "fn": "Router._delegate", + "offset": [ + 10914, + 10941 + ], + "op": "RETURN", + "path": "24" + }, + "2936": { + "fn": "Router._delegate", + "offset": [ + 10793, + 10867 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2937": { + "fn": "Router._delegate", + "offset": [ + 10832, + 10848 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "2938": { + "fn": "Router._delegate", + "offset": [ + 10829, + 10830 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "2940": { + "fn": "Router._delegate", + "offset": [ + 10822, + 10849 + ], + "op": "REVERT", + "path": "24" + }, + "2941": { + "offset": [ + 1216, + 1246 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2942": { + "fn": "Router._delegate", + "offset": [ + 1216, + 1246 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "2975": { + "fn": "Router._delegate", + "offset": [ + 1216, + 1246 + ], + "op": "DUP2", + "path": "24" + }, + "2976": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1216, + 1246 + ], + "op": "JUMP", + "path": "24" + }, + "2977": { + "offset": [ + 1175, + 1210 + ], + "op": "JUMPDEST", + "path": "24" + }, + "2978": { + "fn": "Router._delegate", + "offset": [ + 1175, + 1210 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3011": { + "fn": "Router._delegate", + "offset": [ + 1175, + 1210 + ], + "op": "DUP2", + "path": "24" + }, + "3012": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1175, + 1210 + ], + "op": "JUMP", + "path": "24" + }, + "3013": { + "offset": [ + 1300, + 1339 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3014": { + "fn": "Router._delegate", + "offset": [ + 1300, + 1339 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3047": { + "fn": "Router._delegate", + "offset": [ + 1300, + 1339 + ], + "op": "DUP2", + "path": "24" + }, + "3048": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1300, + 1339 + ], + "op": "JUMP", + "path": "24" + }, + "3049": { + "offset": [ + 1520, + 1560 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3050": { + "fn": "Router._delegate", + "offset": [ + 1520, + 1560 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3083": { + "fn": "Router._delegate", + "offset": [ + 1520, + 1560 + ], + "op": "DUP2", + "path": "24" + }, + "3084": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1520, + 1560 + ], + "op": "JUMP", + "path": "24" + }, + "3085": { + "offset": [ + 1035, + 1063 + ], + "op": "JUMPDEST", + "path": "63" + }, + "3086": { + "fn": "Router._delegate", + "offset": [ + 1035, + 1063 + ], + "op": "PUSH1", + "path": "63", + "value": "0x2" + }, + "3088": { + "fn": "Router._delegate", + "offset": [ + 1035, + 1063 + ], + "op": "SLOAD", + "path": "63" + }, + "3089": { + "op": "PUSH1", + "value": "0x1" + }, + "3091": { + "op": "PUSH1", + "value": "0x1" + }, + "3093": { + "op": "PUSH1", + "value": "0xA0" + }, + "3095": { + "op": "SHL" + }, + "3096": { + "op": "SUB" + }, + "3097": { + "offset": [ + 1035, + 1063 + ], + "op": "AND", + "path": "63" + }, + "3098": { + "fn": "Router._delegate", + "offset": [ + 1035, + 1063 + ], + "op": "DUP2", + "path": "63" + }, + "3099": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1035, + 1063 + ], + "op": "JUMP", + "path": "63" + }, + "3100": { + "offset": [ + 1471, + 1514 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3101": { + "fn": "Router._delegate", + "offset": [ + 1471, + 1514 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3134": { + "fn": "Router._delegate", + "offset": [ + 1471, + 1514 + ], + "op": "DUP2", + "path": "24" + }, + "3135": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1471, + 1514 + ], + "op": "JUMP", + "path": "24" + }, + "3136": { + "offset": [ + 1433, + 1465 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3137": { + "fn": "Router._delegate", + "offset": [ + 1433, + 1465 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3170": { + "fn": "Router._delegate", + "offset": [ + 1433, + 1465 + ], + "op": "DUP2", + "path": "24" + }, + "3171": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1433, + 1465 + ], + "op": "JUMP", + "path": "24" + }, + "3172": { + "offset": [ + 1601, + 1634 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3173": { + "fn": "Router._delegate", + "offset": [ + 1601, + 1634 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3206": { + "fn": "Router._delegate", + "offset": [ + 1601, + 1634 + ], + "op": "DUP2", + "path": "24" + }, + "3207": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1601, + 1634 + ], + "op": "JUMP", + "path": "24" + }, + "3208": { + "offset": [ + 1388, + 1427 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3209": { + "fn": "Router._delegate", + "offset": [ + 1388, + 1427 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3242": { + "fn": "Router._delegate", + "offset": [ + 1388, + 1427 + ], + "op": "DUP2", + "path": "24" + }, + "3243": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1388, + 1427 + ], + "op": "JUMP", + "path": "24" + }, + "3244": { + "offset": [ + 1345, + 1382 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3245": { + "fn": "Router._delegate", + "offset": [ + 1345, + 1382 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3278": { + "fn": "Router._delegate", + "offset": [ + 1345, + 1382 + ], + "op": "DUP2", + "path": "24" + }, + "3279": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1345, + 1382 + ], + "op": "JUMP", + "path": "24" + }, + "3280": { + "offset": [ + 1640, + 1682 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3281": { + "fn": "Router._delegate", + "offset": [ + 1640, + 1682 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3314": { + "fn": "Router._delegate", + "offset": [ + 1640, + 1682 + ], + "op": "DUP2", + "path": "24" + }, + "3315": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1640, + 1682 + ], + "op": "JUMP", + "path": "24" + }, + "3316": { + "offset": [ + 920, + 946 + ], + "op": "JUMPDEST", + "path": "63" + }, + "3317": { + "fn": "Router._delegate", + "offset": [ + 920, + 946 + ], + "op": "PUSH1", + "path": "63", + "value": "0x1" + }, + "3319": { + "fn": "Router._delegate", + "offset": [ + 920, + 946 + ], + "op": "SLOAD", + "path": "63" + }, + "3320": { + "op": "PUSH1", + "value": "0x1" + }, + "3322": { + "op": "PUSH1", + "value": "0x1" + }, + "3324": { + "op": "PUSH1", + "value": "0xA0" + }, + "3326": { + "op": "SHL" + }, + "3327": { + "op": "SUB" + }, + "3328": { + "offset": [ + 920, + 946 + ], + "op": "AND", + "path": "63" + }, + "3329": { + "fn": "Router._delegate", + "offset": [ + 920, + 946 + ], + "op": "DUP2", + "path": "63" + }, + "3330": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 920, + 946 + ], + "op": "JUMP", + "path": "63" + }, + "3331": { + "offset": [ + 811, + 831 + ], + "op": "JUMPDEST", + "path": "63" + }, + "3332": { + "fn": "Router._delegate", + "offset": [ + 811, + 831 + ], + "op": "PUSH1", + "path": "63", + "value": "0x0" + }, + "3334": { + "fn": "Router._delegate", + "offset": [ + 811, + 831 + ], + "op": "SLOAD", + "path": "63" + }, + "3335": { + "fn": "Router._delegate", + "offset": [ + 811, + 831 + ], + "op": "PUSH5", + "path": "63", + "value": "0x100000000" + }, + "3341": { + "fn": "Router._delegate", + "offset": [ + 811, + 831 + ], + "op": "SWAP1", + "path": "63" + }, + "3342": { + "fn": "Router._delegate", + "offset": [ + 811, + 831 + ], + "op": "DIV", + "path": "63" + }, + "3343": { + "op": "PUSH1", + "value": "0x1" + }, + "3345": { + "op": "PUSH1", + "value": "0x1" + }, + "3347": { + "op": "PUSH1", + "value": "0xA0" + }, + "3349": { + "op": "SHL" + }, + "3350": { + "op": "SUB" + }, + "3351": { + "offset": [ + 811, + 831 + ], + "op": "AND", + "path": "63" + }, + "3352": { + "fn": "Router._delegate", + "offset": [ + 811, + 831 + ], + "op": "DUP2", + "path": "63" + }, + "3353": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 811, + 831 + ], + "op": "JUMP", + "path": "63" + }, + "3354": { + "offset": [ + 1566, + 1595 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3355": { + "fn": "Router._delegate", + "offset": [ + 1566, + 1595 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3388": { + "fn": "Router._delegate", + "offset": [ + 1566, + 1595 + ], + "op": "DUP2", + "path": "24" + }, + "3389": { + "fn": "Router._delegate", + "jump": "o", + "offset": [ + 1566, + 1595 + ], + "op": "JUMP", + "path": "24" + }, + "3390": { + "fn": "Router.initialize", + "offset": [ + 2718, + 4144 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3391": { + "fn": "Router.initialize", + "offset": [ + 2880, + 2890 + ], + "op": "CALLER", + "path": "24", + "statement": 12 + }, + "3392": { + "op": "PUSH1", + "value": "0x1" + }, + "3394": { + "op": "PUSH1", + "value": "0x1" + }, + "3396": { + "op": "PUSH1", + "value": "0xA0" + }, + "3398": { + "op": "SHL" + }, + "3399": { + "op": "SUB" + }, + "3400": { + "fn": "Router.initialize", + "offset": [ + 2894, + 2902 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3433": { + "fn": "Router.initialize", + "offset": [ + 2880, + 2902 + ], + "op": "AND", + "path": "24" + }, + "3434": { + "branch": 85, + "fn": "Router.initialize", + "offset": [ + 2880, + 2902 + ], + "op": "EQ", + "path": "24" + }, + "3435": { + "fn": "Router.initialize", + "offset": [ + 2880, + 2921 + ], + "op": "DUP1", + "path": "24" + }, + "3436": { + "fn": "Router.initialize", + "offset": [ + 2880, + 2921 + ], + "op": "ISZERO", + "path": "24" + }, + "3437": { + "fn": "Router.initialize", + "offset": [ + 2880, + 2921 + ], + "op": "PUSH2", + "path": "24", + "value": "0xD80" + }, + "3440": { + "branch": 85, + "fn": "Router.initialize", + "offset": [ + 2880, + 2921 + ], + "op": "JUMPI", + "path": "24" + }, + "3441": { + "op": "POP" + }, + "3442": { + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "3444": { + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "SLOAD", + "path": "24" + }, + "3445": { + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "PUSH4", + "path": "24", + "value": "0x1000000" + }, + "3450": { + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "SWAP1", + "path": "24" + }, + "3451": { + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "DIV", + "path": "24" + }, + "3452": { + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "PUSH1", + "path": "24", + "value": "0xFF" + }, + "3454": { + "branch": 86, + "fn": "Router.initialize", + "offset": [ + 2907, + 2921 + ], + "op": "AND", + "path": "24" + }, + "3455": { + "fn": "Router.initialize", + "offset": [ + 2906, + 2921 + ], + "op": "ISZERO", + "path": "24" + }, + "3456": { + "fn": "Router.initialize", + "offset": [ + 2880, + 2921 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3457": { + "fn": "Router.initialize", + "offset": [ + 2872, + 2922 + ], + "op": "PUSH2", + "path": "24", + "value": "0xD89" + }, + "3460": { + "branch": 86, + "fn": "Router.initialize", + "offset": [ + 2872, + 2922 + ], + "op": "JUMPI", + "path": "24" + }, + "3461": { + "fn": "Router.initialize", + "offset": [ + 2872, + 2922 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "3463": { + "fn": "Router.initialize", + "offset": [ + 2872, + 2922 + ], + "op": "DUP1", + "path": "24" + }, + "3464": { + "fn": "Router.initialize", + "offset": [ + 2872, + 2922 + ], + "op": "REVERT", + "path": "24" + }, + "3465": { + "fn": "Router.initialize", + "offset": [ + 2872, + 2922 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3466": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3061 + ], + "op": "PUSH1", + "path": "24", + "statement": 13, + "value": "0x0" + }, + "3468": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "DUP1", + "path": "24" + }, + "3469": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "SLOAD", + "path": "24" + }, + "3470": { + "op": "PUSH5", + "value": "0x100000000" + }, + "3476": { + "op": "PUSH1", + "value": "0x1" + }, + "3478": { + "op": "PUSH1", + "value": "0xC0" + }, + "3480": { + "op": "SHL" + }, + "3481": { + "op": "SUB" + }, + "3482": { + "op": "NOT" + }, + "3483": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "AND", + "path": "24" + }, + "3484": { + "fn": "Router.initialize", + "offset": [ + 3064, + 3074 + ], + "op": "CALLER", + "path": "24" + }, + "3485": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "PUSH5", + "path": "24", + "value": "0x100000000" + }, + "3491": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "MUL", + "path": "24" + }, + "3492": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "OR", + "path": "24" + }, + "3493": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "DUP2", + "path": "24" + }, + "3494": { + "fn": "Router.initialize", + "offset": [ + 3056, + 3074 + ], + "op": "SSTORE", + "path": "24" + }, + "3495": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3497": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP1", + "path": "24" + }, + "3498": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MLOAD", + "path": "24" + }, + "3499": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "PUSH1", + "path": "24", + "value": "0xA0" + }, + "3501": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP2", + "path": "24" + }, + "3502": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "ADD", + "path": "24" + }, + "3503": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP3", + "path": "24" + }, + "3504": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MSTORE", + "path": "24" + }, + "3505": { + "op": "PUSH1", + "value": "0x1" + }, + "3507": { + "op": "PUSH1", + "value": "0x1" + }, + "3509": { + "op": "PUSH1", + "value": "0xA0" + }, + "3511": { + "op": "SHL" + }, + "3512": { + "op": "SUB" + }, + "3513": { + "fn": "Router.initialize", + "offset": [ + 3445, + 3449 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3546": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP2", + "path": "24" + }, + "3547": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "AND", + "path": "24" + }, + "3548": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP3", + "path": "24" + }, + "3549": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MSTORE", + "path": "24" + }, + "3550": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "PUSH1", + "path": "24", + "value": "0x20" + }, + "3552": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP3", + "path": "24" + }, + "3553": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "ADD", + "path": "24" + }, + "3554": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP5", + "path": "24" + }, + "3555": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP1", + "path": "24" + }, + "3556": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MSTORE", + "path": "24" + }, + "3557": { + "fn": "Router.initialize", + "offset": [ + 3284, + 3294 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3590": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3308 + ], + "op": "AND", + "path": "24" + }, + "3591": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3308 + ], + "op": "SWAP2", + "path": "24" + }, + "3592": { + "op": "PUSH4", + "value": "0x7ABAF271" + }, + "3597": { + "op": "PUSH1", + "value": "0xE1" + }, + "3599": { + "op": "SHL" + }, + "3600": { + "fn": "Router.initialize", + "offset": [ + 3370, + 3410 + ], + "op": "SWAP2", + "path": "24" + }, + "3601": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP1", + "path": "24" + }, + "3602": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP2", + "path": "24" + }, + "3603": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "ADD", + "path": "24" + }, + "3604": { + "fn": "Router.initialize", + "offset": [ + 3458, + 3472 + ], + "op": "PUSH1", + "path": "24", + "value": "0x2" + }, + "3606": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP2", + "path": "24" + }, + "3607": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MSTORE", + "path": "24" + }, + "3608": { + "offset": [ + 217, + 218 + ], + "op": "PUSH1", + "path": "60", + "value": "0x8" + }, + "3610": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "PUSH1", + "path": "24", + "value": "0x20" + }, + "3612": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP1", + "path": "24" + }, + "3613": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP4", + "path": "24" + }, + "3614": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "ADD", + "path": "24" + }, + "3615": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP2", + "path": "24" + }, + "3616": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP1", + "path": "24" + }, + "3617": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP2", + "path": "24" + }, + "3618": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MSTORE", + "path": "24" + }, + "3619": { + "op": "PUSH1", + "value": "0x0" + }, + "3621": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3623": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP3", + "path": "24" + }, + "3624": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP4", + "path": "24" + }, + "3625": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "ADD", + "path": "24" + }, + "3626": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "DUP2", + "path": "24" + }, + "3627": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "SWAP1", + "path": "24" + }, + "3628": { + "fn": "Router.initialize", + "offset": [ + 3432, + 3507 + ], + "op": "MSTORE", + "path": "24" + }, + "3629": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP3", + "path": "24" + }, + "3630": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MLOAD", + "path": "24" + }, + "3631": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "PUSH1", + "path": "24", + "value": "0xA0" + }, + "3633": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP2", + "path": "24" + }, + "3634": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "ADD", + "path": "24" + }, + "3635": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP5", + "path": "24" + }, + "3636": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MSTORE", + "path": "24" + }, + "3637": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP2", + "path": "24" + }, + "3638": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP2", + "path": "24" + }, + "3639": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MSTORE", + "path": "24" + }, + "3640": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "SWAP2", + "path": "24" + }, + "3641": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP3", + "path": "24" + }, + "3642": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "ADD", + "path": "24" + }, + "3643": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MSTORE", + "path": "24" + }, + "3644": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "SWAP1", + "path": "24" + }, + "3645": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP2", + "path": "24" + }, + "3646": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "ADD", + "path": "24" + }, + "3647": { + "fn": "Router.initialize", + "offset": [ + 3611, + 3626 + ], + "op": "PUSH1", + "path": "24", + "value": "0x3" + }, + "3649": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP2", + "path": "24" + }, + "3650": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MSTORE", + "path": "24" + }, + "3651": { + "offset": [ + 659, + 661 + ], + "op": "PUSH1", + "path": "60", + "value": "0x12" + }, + "3653": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "PUSH1", + "path": "24", + "value": "0x20" + }, + "3655": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP3", + "path": "24" + }, + "3656": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "ADD", + "path": "24" + }, + "3657": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MSTORE", + "path": "24" + }, + "3658": { + "op": "PUSH1", + "value": "0x0" + }, + "3660": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3662": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "SWAP2", + "path": "24" + }, + "3663": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP3", + "path": "24" + }, + "3664": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "ADD", + "path": "24" + }, + "3665": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "DUP2", + "path": "24" + }, + "3666": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "SWAP1", + "path": "24" + }, + "3667": { + "fn": "Router.initialize", + "offset": [ + 3579, + 3660 + ], + "op": "MSTORE", + "path": "24" + }, + "3668": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP1", + "path": "24" + }, + "3669": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "MLOAD", + "path": "24" + }, + "3670": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "PUSH2", + "path": "24", + "value": "0xE6F" + }, + "3673": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP4", + "path": "24" + }, + "3674": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP3", + "path": "24" + }, + "3675": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP2", + "path": "24" + }, + "3676": { + "op": "SWAP1" + }, + "3677": { + "op": "DUP2" + }, + "3678": { + "op": "SWAP1" + }, + "3679": { + "fn": "Router.initialize", + "offset": [ + 3741, + 3744 + ], + "op": "PUSH1", + "path": "24", + "value": "0x85" + }, + "3681": { + "fn": "Router.initialize", + "offset": [ + 3741, + 3744 + ], + "op": "SWAP1", + "path": "24" + }, + "3682": { + "fn": "Router.initialize", + "offset": [ + 3801, + 3803 + ], + "op": "PUSH1", + "path": "24", + "value": "0x4B" + }, + "3684": { + "fn": "Router.initialize", + "offset": [ + 3801, + 3803 + ], + "op": "SWAP1", + "path": "24" + }, + "3685": { + "fn": "Router.initialize", + "offset": [ + 3841, + 3844 + ], + "op": "PUSH1", + "path": "24", + "value": "0x6C" + }, + "3687": { + "fn": "Router.initialize", + "offset": [ + 3841, + 3844 + ], + "op": "SWAP1", + "path": "24" + }, + "3688": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "PUSH1", + "path": "24", + "value": "0x24" + }, + "3690": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "ADD", + "path": "24" + }, + "3691": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1093" + }, + "3694": { + "fn": "Router.initialize", + "jump": "i", + "offset": [ + 3326, + 3890 + ], + "op": "JUMP", + "path": "24" + }, + "3695": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3696": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3698": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP1", + "path": "24" + }, + "3699": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "MLOAD", + "path": "24" + }, + "3700": { + "op": "PUSH1", + "value": "0x1F" + }, + "3702": { + "op": "NOT" + }, + "3703": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP2", + "path": "24" + }, + "3704": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP5", + "path": "24" + }, + "3705": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SUB", + "path": "24" + }, + "3706": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "ADD", + "path": "24" + }, + "3707": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP2", + "path": "24" + }, + "3708": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "MSTORE", + "path": "24" + }, + "3709": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP2", + "path": "24" + }, + "3710": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP2", + "path": "24" + }, + "3711": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "MSTORE", + "path": "24" + }, + "3712": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "PUSH1", + "path": "24", + "value": "0x20" + }, + "3714": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP3", + "path": "24" + }, + "3715": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "ADD", + "path": "24" + }, + "3716": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "DUP1", + "path": "24" + }, + "3717": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "MLOAD", + "path": "24" + }, + "3718": { + "op": "PUSH1", + "value": "0x1" + }, + "3720": { + "op": "PUSH1", + "value": "0x1" + }, + "3722": { + "op": "PUSH1", + "value": "0xE0" + }, + "3724": { + "op": "SHL" + }, + "3725": { + "op": "SUB" + }, + "3726": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "AND", + "path": "24" + }, + "3727": { + "op": "PUSH1", + "value": "0x1" + }, + "3729": { + "op": "PUSH1", + "value": "0x1" + }, + "3731": { + "op": "PUSH1", + "value": "0xE0" + }, + "3733": { + "op": "SHL" + }, + "3734": { + "op": "SUB" + }, + "3735": { + "op": "NOT" + }, + "3736": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP1", + "path": "24" + }, + "3737": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP5", + "path": "24" + }, + "3738": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "AND", + "path": "24" + }, + "3739": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP4", + "path": "24" + }, + "3740": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP1", + "path": "24" + }, + "3741": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP4", + "path": "24" + }, + "3742": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "OR", + "path": "24" + }, + "3743": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP1", + "path": "24" + }, + "3744": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP3", + "path": "24" + }, + "3745": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "MSTORE", + "path": "24" + }, + "3746": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "SWAP1", + "path": "24" + }, + "3747": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "MLOAD", + "path": "24" + }, + "3748": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH2", + "path": "24", + "value": "0xEAD" + }, + "3751": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "SWAP2", + "path": "24" + }, + "3752": { + "fn": "Router.initialize", + "offset": [ + 3326, + 3890 + ], + "op": "SWAP1", + "path": "24" + }, + "3753": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH2", + "path": "24", + "value": "0x1046" + }, + "3756": { + "fn": "Router.initialize", + "jump": "i", + "offset": [ + 3276, + 3904 + ], + "op": "JUMP", + "path": "24" + }, + "3757": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3758": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "3760": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3762": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "MLOAD", + "path": "24" + }, + "3763": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP1", + "path": "24" + }, + "3764": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP4", + "path": "24" + }, + "3765": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "SUB", + "path": "24" + }, + "3766": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP2", + "path": "24" + }, + "3767": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP6", + "path": "24" + }, + "3768": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "GAS", + "path": "24" + }, + "3769": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DELEGATECALL", + "path": "24" + }, + "3770": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "SWAP2", + "path": "24" + }, + "3771": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3772": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3773": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "3774": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP1", + "path": "24" + }, + "3775": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "3777": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP2", + "path": "24" + }, + "3778": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "EQ", + "path": "24" + }, + "3779": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH2", + "path": "24", + "value": "0xEE8" + }, + "3782": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "JUMPI", + "path": "24" + }, + "3783": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3785": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "MLOAD", + "path": "24" + }, + "3786": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "SWAP2", + "path": "24" + }, + "3787": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3788": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x1F" + }, + "3790": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "NOT", + "path": "24" + }, + "3791": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x3F" + }, + "3793": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "3794": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "ADD", + "path": "24" + }, + "3795": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "AND", + "path": "24" + }, + "3796": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP3", + "path": "24" + }, + "3797": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "ADD", + "path": "24" + }, + "3798": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x40" + }, + "3800": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "MSTORE", + "path": "24" + }, + "3801": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "3802": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP3", + "path": "24" + }, + "3803": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "MSTORE", + "path": "24" + }, + "3804": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "RETURNDATASIZE", + "path": "24" + }, + "3805": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "3807": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x20" + }, + "3809": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "DUP5", + "path": "24" + }, + "3810": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "ADD", + "path": "24" + }, + "3811": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "RETURNDATACOPY", + "path": "24" + }, + "3812": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH2", + "path": "24", + "value": "0xEED" + }, + "3815": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "JUMP", + "path": "24" + }, + "3816": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3817": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "PUSH1", + "path": "24", + "value": "0x60" + }, + "3819": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "SWAP2", + "path": "24" + }, + "3820": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3821": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3822": { + "fn": "Router.initialize", + "offset": [ + 3276, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3823": { + "fn": "Router.initialize", + "offset": [ + 3246, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3824": { + "fn": "Router.initialize", + "offset": [ + 3246, + 3904 + ], + "op": "SWAP1", + "path": "24" + }, + "3825": { + "fn": "Router.initialize", + "offset": [ + 3246, + 3904 + ], + "op": "POP", + "path": "24" + }, + "3826": { + "branch": 87, + "fn": "Router.initialize", + "offset": [ + 3922, + 3928 + ], + "op": "DUP1", + "path": "24", + "statement": 14 + }, + "3827": { + "fn": "Router.initialize", + "offset": [ + 3914, + 3929 + ], + "op": "PUSH2", + "path": "24", + "value": "0xEFB" + }, + "3830": { + "branch": 87, + "fn": "Router.initialize", + "offset": [ + 3914, + 3929 + ], + "op": "JUMPI", + "path": "24" + }, + "3831": { + "fn": "Router.initialize", + "offset": [ + 3914, + 3929 + ], + "op": "PUSH1", + "path": "24", + "value": "0x0" + }, + "3833": { + "fn": "Router.initialize", + "offset": [ + 3914, + 3929 + ], + "op": "DUP1", + "path": "24" + }, + "3834": { + "fn": "Router.initialize", + "offset": [ + 3914, + 3929 + ], + "op": "REVERT", + "path": "24" + }, + "3835": { + "fn": "Router.initialize", + "offset": [ + 3914, + 3929 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3836": { + "op": "POP" + }, + "3837": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3945 + ], + "op": "PUSH1", + "path": "24", + "statement": 15, + "value": "0x0" + }, + "3839": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "DUP1", + "path": "24" + }, + "3840": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "SLOAD", + "path": "24" + }, + "3841": { + "op": "PUSH1", + "value": "0x1" + }, + "3843": { + "op": "PUSH1", + "value": "0x1" + }, + "3845": { + "op": "PUSH1", + "value": "0xA0" + }, + "3847": { + "op": "SHL" + }, + "3848": { + "op": "SUB" + }, + "3849": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "SWAP5", + "path": "24" + }, + "3850": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "DUP6", + "path": "24" + }, + "3851": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "AND", + "path": "24" + }, + "3852": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "PUSH5", + "path": "24", + "value": "0x100000000" + }, + "3858": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "MUL", + "path": "24" + }, + "3859": { + "op": "PUSH5", + "value": "0x100000000" + }, + "3865": { + "op": "PUSH1", + "value": "0x1" + }, + "3867": { + "op": "PUSH1", + "value": "0xC0" + }, + "3869": { + "op": "SHL" + }, + "3870": { + "op": "SUB" + }, + "3871": { + "op": "NOT" + }, + "3872": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "SWAP1", + "path": "24" + }, + "3873": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "SWAP2", + "path": "24" + }, + "3874": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "AND", + "path": "24" + }, + "3875": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "OR", + "path": "24" + }, + "3876": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "SWAP1", + "path": "24" + }, + "3877": { + "fn": "Router.initialize", + "offset": [ + 3940, + 3954 + ], + "op": "SSTORE", + "path": "24" + }, + "3878": { + "op": "PUSH1", + "value": "0x1" + }, + "3880": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "DUP1", + "path": "24", + "statement": 16 + }, + "3881": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "SLOAD", + "path": "24" + }, + "3882": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "SWAP3", + "path": "24" + }, + "3883": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "DUP5", + "path": "24" + }, + "3884": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "AND", + "path": "24" + }, + "3885": { + "op": "PUSH1", + "value": "0x1" + }, + "3887": { + "op": "PUSH1", + "value": "0x1" + }, + "3889": { + "op": "PUSH1", + "value": "0xA0" + }, + "3891": { + "op": "SHL" + }, + "3892": { + "op": "SUB" + }, + "3893": { + "op": "NOT" + }, + "3894": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "SWAP4", + "path": "24" + }, + "3895": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "DUP5", + "path": "24" + }, + "3896": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "AND", + "path": "24" + }, + "3897": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "OR", + "path": "24" + }, + "3898": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "SWAP1", + "path": "24" + }, + "3899": { + "fn": "Router.initialize", + "offset": [ + 4038, + 4064 + ], + "op": "SSTORE", + "path": "24" + }, + "3900": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4087 + ], + "op": "PUSH1", + "path": "24", + "statement": 17, + "value": "0x2" + }, + "3902": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "DUP1", + "path": "24" + }, + "3903": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SLOAD", + "path": "24" + }, + "3904": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SWAP2", + "path": "24" + }, + "3905": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SWAP1", + "path": "24" + }, + "3906": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SWAP4", + "path": "24" + }, + "3907": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "AND", + "path": "24" + }, + "3908": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SWAP2", + "path": "24" + }, + "3909": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "AND", + "path": "24" + }, + "3910": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "OR", + "path": "24" + }, + "3911": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SWAP1", + "path": "24" + }, + "3912": { + "fn": "Router.initialize", + "offset": [ + 4074, + 4104 + ], + "op": "SSTORE", + "path": "24" + }, + "3913": { + "fn": "Router.initialize", + "jump": "o", + "offset": [ + 2718, + 4144 + ], + "op": "JUMP", + "path": "24" + }, + "3914": { + "offset": [ + 1252, + 1294 + ], + "op": "JUMPDEST", + "path": "24" + }, + "3915": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "PUSH32", + "path": "24", + "value": "0x0" + }, + "3948": { + "fn": "Router.initialize", + "offset": [ + 1252, + 1294 + ], + "op": "DUP2", + "path": "24" + }, + "3949": { + "fn": "Router.initialize", + "jump": "o", + "offset": [ + 1252, + 1294 + ], + "op": "JUMP", + "path": "24" + }, + "3950": { + "op": "JUMPDEST" + }, + "3951": { + "op": "DUP1" + }, + "3952": { + "op": "CALLDATALOAD" + }, + "3953": { + "op": "PUSH1", + "value": "0x1" + }, + "3955": { + "op": "PUSH1", + "value": "0x1" + }, + "3957": { + "op": "PUSH1", + "value": "0xA0" + }, + "3959": { + "op": "SHL" + }, + "3960": { + "op": "SUB" + }, + "3961": { + "op": "DUP2" + }, + "3962": { + "op": "AND" + }, + "3963": { + "op": "DUP2" + }, + "3964": { + "op": "EQ" + }, + "3965": { + "op": "PUSH2", + "value": "0xB54" + }, + "3968": { + "op": "JUMPI" + }, + "3969": { + "op": "PUSH1", + "value": "0x0" + }, + "3971": { + "op": "DUP1" + }, + "3972": { + "op": "REVERT" + }, + "3973": { + "op": "JUMPDEST" + }, + "3974": { + "op": "PUSH1", + "value": "0x0" + }, + "3976": { + "op": "DUP1" + }, + "3977": { + "op": "PUSH1", + "value": "0x0" + }, + "3979": { + "op": "PUSH1", + "value": "0x60" + }, + "3981": { + "op": "DUP5" + }, + "3982": { + "op": "DUP7" + }, + "3983": { + "op": "SUB" + }, + "3984": { + "op": "SLT" + }, + "3985": { + "op": "ISZERO" + }, + "3986": { + "op": "PUSH2", + "value": "0xF99" + }, + "3989": { + "op": "JUMPI" + }, + "3990": { + "op": "DUP3" + }, + "3991": { + "op": "DUP4" + }, + "3992": { + "op": "REVERT" + }, + "3993": { + "op": "JUMPDEST" + }, + "3994": { + "op": "PUSH2", + "value": "0xFA2" + }, + "3997": { + "op": "DUP5" + }, + "3998": { + "op": "PUSH2", + "value": "0xF6E" + }, + "4001": { + "jump": "i", + "op": "JUMP" + }, + "4002": { + "op": "JUMPDEST" + }, + "4003": { + "op": "SWAP3" + }, + "4004": { + "op": "POP" + }, + "4005": { + "op": "PUSH2", + "value": "0xFB0" + }, + "4008": { + "op": "PUSH1", + "value": "0x20" + }, + "4010": { + "op": "DUP6" + }, + "4011": { + "op": "ADD" + }, + "4012": { + "op": "PUSH2", + "value": "0xF6E" + }, + "4015": { + "jump": "i", + "op": "JUMP" + }, + "4016": { + "op": "JUMPDEST" + }, + "4017": { + "op": "SWAP2" + }, + "4018": { + "op": "POP" + }, + "4019": { + "op": "PUSH2", + "value": "0xFBE" + }, + "4022": { + "op": "PUSH1", + "value": "0x40" + }, + "4024": { + "op": "DUP6" + }, + "4025": { + "op": "ADD" + }, + "4026": { + "op": "PUSH2", + "value": "0xF6E" + }, + "4029": { + "jump": "i", + "op": "JUMP" + }, + "4030": { + "op": "JUMPDEST" + }, + "4031": { + "op": "SWAP1" + }, + "4032": { + "op": "POP" + }, + "4033": { + "op": "SWAP3" + }, + "4034": { + "op": "POP" + }, + "4035": { + "op": "SWAP3" + }, + "4036": { + "op": "POP" + }, + "4037": { + "op": "SWAP3" + }, + "4038": { + "jump": "o", + "op": "JUMP" + }, + "4039": { + "op": "JUMPDEST" + }, + "4040": { + "op": "PUSH1", + "value": "0x0" + }, + "4042": { + "op": "PUSH1", + "value": "0x20" + }, + "4044": { + "op": "DUP3" + }, + "4045": { + "op": "DUP5" + }, + "4046": { + "op": "SUB" + }, + "4047": { + "op": "SLT" + }, + "4048": { + "op": "ISZERO" + }, + "4049": { + "op": "PUSH2", + "value": "0xFD8" + }, + "4052": { + "op": "JUMPI" + }, + "4053": { + "op": "DUP1" + }, + "4054": { + "op": "DUP2" + }, + "4055": { + "op": "REVERT" + }, + "4056": { + "op": "JUMPDEST" + }, + "4057": { + "op": "DUP2" + }, + "4058": { + "op": "CALLDATALOAD" + }, + "4059": { + "op": "PUSH1", + "value": "0x1" + }, + "4061": { + "op": "PUSH1", + "value": "0x1" + }, + "4063": { + "op": "PUSH1", + "value": "0xE0" + }, + "4065": { + "op": "SHL" + }, + "4066": { + "op": "SUB" + }, + "4067": { + "op": "NOT" + }, + "4068": { + "op": "DUP2" + }, + "4069": { + "op": "AND" + }, + "4070": { + "op": "DUP2" + }, + "4071": { + "op": "EQ" + }, + "4072": { + "op": "PUSH2", + "value": "0xFEF" + }, + "4075": { + "op": "JUMPI" + }, + "4076": { + "op": "DUP2" + }, + "4077": { + "op": "DUP3" + }, + "4078": { + "op": "REVERT" + }, + "4079": { + "op": "JUMPDEST" + }, + "4080": { + "op": "SWAP4" + }, + "4081": { + "op": "SWAP3" + }, + "4082": { + "op": "POP" + }, + "4083": { + "op": "POP" + }, + "4084": { + "op": "POP" + }, + "4085": { + "jump": "o", + "op": "JUMP" + }, + "4086": { + "op": "JUMPDEST" + }, + "4087": { + "op": "DUP1" + }, + "4088": { + "op": "MLOAD" + }, + "4089": { + "op": "PUSH1", + "value": "0x1" + }, + "4091": { + "op": "PUSH1", + "value": "0x1" + }, + "4093": { + "op": "PUSH1", + "value": "0xA0" + }, + "4095": { + "op": "SHL" + }, + "4096": { + "op": "SUB" + }, + "4097": { + "op": "AND" + }, + "4098": { + "op": "DUP3" + }, + "4099": { + "op": "MSTORE" + }, + "4100": { + "op": "PUSH1", + "value": "0x20" + }, + "4102": { + "op": "DUP1" + }, + "4103": { + "op": "DUP3" + }, + "4104": { + "op": "ADD" + }, + "4105": { + "op": "MLOAD" + }, + "4106": { + "op": "ISZERO" + }, + "4107": { + "op": "ISZERO" + }, + "4108": { + "op": "SWAP1" + }, + "4109": { + "op": "DUP4" + }, + "4110": { + "op": "ADD" + }, + "4111": { + "op": "MSTORE" + }, + "4112": { + "op": "PUSH1", + "value": "0x40" + }, + "4114": { + "op": "DUP2" + }, + "4115": { + "op": "ADD" + }, + "4116": { + "op": "MLOAD" + }, + "4117": { + "op": "PUSH1", + "value": "0x6" + }, + "4119": { + "op": "DUP2" + }, + "4120": { + "op": "LT" + }, + "4121": { + "op": "PUSH2", + "value": "0x101E" + }, + "4124": { + "op": "JUMPI" + }, + "4125": { + "op": "INVALID" + }, + "4126": { + "op": "JUMPDEST" + }, + "4127": { + "op": "PUSH1", + "value": "0x40" + }, + "4129": { + "op": "DUP4" + }, + "4130": { + "op": "ADD" + }, + "4131": { + "op": "MSTORE" + }, + "4132": { + "op": "PUSH1", + "value": "0x60" + }, + "4134": { + "op": "DUP2" + }, + "4135": { + "op": "DUP2" + }, + "4136": { + "op": "ADD" + }, + "4137": { + "op": "MLOAD" + }, + "4138": { + "op": "PUSH1", + "value": "0xFF" + }, + "4140": { + "op": "AND" + }, + "4141": { + "op": "SWAP1" + }, + "4142": { + "op": "DUP4" + }, + "4143": { + "op": "ADD" + }, + "4144": { + "op": "MSTORE" + }, + "4145": { + "op": "PUSH1", + "value": "0x80" + }, + "4147": { + "op": "SWAP1" + }, + "4148": { + "op": "DUP2" + }, + "4149": { + "op": "ADD" + }, + "4150": { + "op": "MLOAD" + }, + "4151": { + "op": "PUSH9", + "value": "0xFFFFFFFFFFFFFFFFFF" + }, + "4161": { + "op": "AND" + }, + "4162": { + "op": "SWAP2" + }, + "4163": { + "op": "ADD" + }, + "4164": { + "op": "MSTORE" + }, + "4165": { + "jump": "o", + "op": "JUMP" + }, + "4166": { + "op": "JUMPDEST" + }, + "4167": { + "op": "PUSH1", + "value": "0x0" + }, + "4169": { + "op": "DUP3" + }, + "4170": { + "op": "MLOAD" + }, + "4171": { + "op": "DUP2" + }, + "4172": { + "op": "JUMPDEST" + }, + "4173": { + "op": "DUP2" + }, + "4174": { + "op": "DUP2" + }, + "4175": { + "op": "LT" + }, + "4176": { + "op": "ISZERO" + }, + "4177": { + "op": "PUSH2", + "value": "0x1066" + }, + "4180": { + "op": "JUMPI" + }, + "4181": { + "op": "PUSH1", + "value": "0x20" + }, + "4183": { + "op": "DUP2" + }, + "4184": { + "op": "DUP7" + }, + "4185": { + "op": "ADD" + }, + "4186": { + "op": "DUP2" + }, + "4187": { + "op": "ADD" + }, + "4188": { + "op": "MLOAD" + }, + "4189": { + "op": "DUP6" + }, + "4190": { + "op": "DUP4" + }, + "4191": { + "op": "ADD" + }, + "4192": { + "op": "MSTORE" + }, + "4193": { + "op": "ADD" + }, + "4194": { + "op": "PUSH2", + "value": "0x104C" + }, + "4197": { + "op": "JUMP" + }, + "4198": { + "op": "JUMPDEST" + }, + "4199": { + "op": "DUP2" + }, + "4200": { + "op": "DUP2" + }, + "4201": { + "op": "GT" + }, + "4202": { + "op": "ISZERO" + }, + "4203": { + "op": "PUSH2", + "value": "0x1074" + }, + "4206": { + "op": "JUMPI" + }, + "4207": { + "op": "DUP3" + }, + "4208": { + "op": "DUP3" + }, + "4209": { + "op": "DUP6" + }, + "4210": { + "op": "ADD" + }, + "4211": { + "op": "MSTORE" + }, + "4212": { + "op": "JUMPDEST" + }, + "4213": { + "op": "POP" + }, + "4214": { + "op": "SWAP2" + }, + "4215": { + "op": "SWAP1" + }, + "4216": { + "op": "SWAP2" + }, + "4217": { + "op": "ADD" + }, + "4218": { + "op": "SWAP3" + }, + "4219": { + "op": "SWAP2" + }, + "4220": { + "op": "POP" + }, + "4221": { + "op": "POP" + }, + "4222": { + "jump": "o", + "op": "JUMP" + }, + "4223": { + "op": "JUMPDEST" + }, + "4224": { + "op": "PUSH1", + "value": "0x1" + }, + "4226": { + "op": "PUSH1", + "value": "0x1" + }, + "4228": { + "op": "PUSH1", + "value": "0xA0" + }, + "4230": { + "op": "SHL" + }, + "4231": { + "op": "SUB" + }, + "4232": { + "op": "SWAP2" + }, + "4233": { + "op": "SWAP1" + }, + "4234": { + "op": "SWAP2" + }, + "4235": { + "op": "AND" + }, + "4236": { + "op": "DUP2" + }, + "4237": { + "op": "MSTORE" + }, + "4238": { + "op": "PUSH1", + "value": "0x20" + }, + "4240": { + "op": "ADD" + }, + "4241": { + "op": "SWAP1" + }, + "4242": { + "jump": "o", + "op": "JUMP" + }, + "4243": { + "op": "JUMPDEST" + }, + "4244": { + "op": "PUSH2", + "value": "0x1E0" + }, + "4247": { + "op": "DUP2" + }, + "4248": { + "op": "ADD" + }, + "4249": { + "op": "PUSH2", + "value": "0x10A2" + }, + "4252": { + "op": "DUP3" + }, + "4253": { + "op": "DUP11" + }, + "4254": { + "op": "PUSH2", + "value": "0xFF6" + }, + "4257": { + "jump": "i", + "op": "JUMP" + }, + "4258": { + "op": "JUMPDEST" + }, + "4259": { + "op": "PUSH2", + "value": "0x10AF" + }, + "4262": { + "op": "PUSH1", + "value": "0xA0" + }, + "4264": { + "op": "DUP4" + }, + "4265": { + "op": "ADD" + }, + "4266": { + "op": "DUP10" + }, + "4267": { + "op": "PUSH2", + "value": "0xFF6" + }, + "4270": { + "jump": "i", + "op": "JUMP" + }, + "4271": { + "op": "JUMPDEST" + }, + "4272": { + "op": "PUSH1", + "value": "0x1" + }, + "4274": { + "op": "PUSH1", + "value": "0x1" + }, + "4276": { + "op": "PUSH1", + "value": "0xA0" + }, + "4278": { + "op": "SHL" + }, + "4279": { + "op": "SUB" + }, + "4280": { + "op": "SWAP7" + }, + "4281": { + "op": "SWAP1" + }, + "4282": { + "op": "SWAP7" + }, + "4283": { + "op": "AND" + }, + "4284": { + "op": "PUSH2", + "value": "0x140" + }, + "4287": { + "op": "DUP3" + }, + "4288": { + "op": "ADD" + }, + "4289": { + "op": "MSTORE" + }, + "4290": { + "op": "SWAP4" + }, + "4291": { + "op": "ISZERO" + }, + "4292": { + "op": "ISZERO" + }, + "4293": { + "op": "PUSH2", + "value": "0x160" + }, + "4296": { + "op": "DUP6" + }, + "4297": { + "op": "ADD" + }, + "4298": { + "op": "MSTORE" + }, + "4299": { + "op": "PUSH1", + "value": "0xFF" + }, + "4301": { + "op": "SWAP3" + }, + "4302": { + "op": "DUP4" + }, + "4303": { + "op": "AND" + }, + "4304": { + "op": "PUSH2", + "value": "0x180" + }, + "4307": { + "op": "DUP6" + }, + "4308": { + "op": "ADD" + }, + "4309": { + "op": "MSTORE" + }, + "4310": { + "op": "SWAP1" + }, + "4311": { + "op": "DUP3" + }, + "4312": { + "op": "AND" + }, + "4313": { + "op": "PUSH2", + "value": "0x1A0" + }, + "4316": { + "op": "DUP5" + }, + "4317": { + "op": "ADD" + }, + "4318": { + "op": "MSTORE" + }, + "4319": { + "op": "AND" + }, + "4320": { + "op": "PUSH2", + "value": "0x1C0" + }, + "4323": { + "op": "SWAP1" + }, + "4324": { + "op": "SWAP2" + }, + "4325": { + "op": "ADD" + }, + "4326": { + "op": "MSTORE" + }, + "4327": { + "op": "SWAP3" + }, + "4328": { + "op": "SWAP2" + }, + "4329": { + "op": "POP" + }, + "4330": { + "op": "POP" + }, + "4331": { + "jump": "o", + "op": "JUMP" + } + }, + "sha1": "632e5f1f49977cd3cee56a5488db9c3285ba2b9c", + "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./actions/nTokenAction.sol\";\nimport \"./actions/nTokenMintAction.sol\";\nimport \"../global/StorageLayoutV1.sol\";\nimport \"../global/Types.sol\";\nimport \"../../interfaces/notional/NotionalProxy.sol\";\nimport \"../../interfaces/notional/nERC1155Interface.sol\";\nimport \"../../interfaces/notional/NotionalGovernance.sol\";\nimport \"../../interfaces/notional/NotionalCalculations.sol\";\n\n/**\n * @notice Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage\n * will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing\n * contracts.\n *\n * This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also\n * allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a\n * new Router with the new hardcoded addresses will then be deployed and upgraded into place.\n */\ncontract Router is StorageLayoutV1 {\n // These contract addresses cannot be changed once set by the constructor\n address public immutable GOVERNANCE;\n address public immutable VIEWS;\n address public immutable INITIALIZE_MARKET;\n address public immutable NTOKEN_ACTIONS;\n address public immutable BATCH_ACTION;\n address public immutable ACCOUNT_ACTION;\n address public immutable ERC1155;\n address public immutable LIQUIDATE_CURRENCY;\n address public immutable LIQUIDATE_FCASH;\n address public immutable cETH;\n address public immutable TREASURY;\n address public immutable CALCULATION_VIEWS;\n address private immutable DEPLOYER;\n\n constructor(\n address governance_,\n address views_,\n address initializeMarket_,\n address nTokenActions_,\n address batchAction_,\n address accountAction_,\n address erc1155_,\n address liquidateCurrency_,\n address liquidatefCash_,\n address cETH_,\n address treasury_,\n address calculationViews_\n ) {\n GOVERNANCE = governance_;\n VIEWS = views_;\n INITIALIZE_MARKET = initializeMarket_;\n NTOKEN_ACTIONS = nTokenActions_;\n BATCH_ACTION = batchAction_;\n ACCOUNT_ACTION = accountAction_;\n ERC1155 = erc1155_;\n LIQUIDATE_CURRENCY = liquidateCurrency_;\n LIQUIDATE_FCASH = liquidatefCash_;\n cETH = cETH_;\n DEPLOYER = msg.sender;\n TREASURY = treasury_;\n CALCULATION_VIEWS = calculationViews_;\n\n // This will lock everyone from calling initialize on the implementation contract\n hasInitialized = true;\n }\n\n function initialize(address owner_, address pauseRouter_, address pauseGuardian_) public {\n // Check that only the deployer can initialize\n require(msg.sender == DEPLOYER && !hasInitialized);\n\n // Allow list currency to be called by this contract for the purposes of\n // initializing ETH as a currency\n owner = msg.sender;\n // List ETH as currency id == 1, NOTE: return value is ignored here\n\n // FIXME: on non-mainnet deployments we should be using WETH instead here...\n (bool status, ) =\n address(GOVERNANCE).delegatecall(\n abi.encodeWithSelector(\n NotionalGovernance.listCurrency.selector,\n TokenStorage(cETH, false, TokenType.cETH, Constants.CETH_DECIMAL_PLACES, 0),\n // No underlying set for cETH\n TokenStorage(address(0), false, TokenType.Ether, Constants.ETH_DECIMAL_PLACES, 0),\n address(0),\n false,\n 133, // Initial settings of 133% buffer\n 75, // 75% haircut\n 108 // 8% liquidation discount\n )\n );\n require(status);\n\n owner = owner_;\n // The pause guardian may downgrade the router to the pauseRouter\n pauseRouter = pauseRouter_;\n pauseGuardian = pauseGuardian_;\n\n hasInitialized == true;\n }\n\n /// @notice Returns the implementation contract for the method signature\n /// @param sig method signature to call\n /// @return implementation address\n function getRouterImplementation(bytes4 sig) public view returns (address) {\n if (\n sig == NotionalProxy.batchBalanceAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeActionWithCallback.selector ||\n sig == NotionalProxy.batchLend.selector\n ) {\n return BATCH_ACTION;\n } else if (\n sig == nTokenAction.nTokenTotalSupply.selector ||\n sig == nTokenAction.nTokenBalanceOf.selector ||\n sig == nTokenAction.nTokenTransferAllowance.selector ||\n sig == nTokenAction.nTokenTransferApprove.selector ||\n sig == nTokenAction.nTokenTransfer.selector ||\n sig == nTokenAction.nTokenTransferFrom.selector ||\n sig == nTokenAction.nTokenClaimIncentives.selector ||\n sig == nTokenAction.nTokenTransferApproveAll.selector ||\n sig == nTokenAction.nTokenPresentValueAssetDenominated.selector ||\n sig == nTokenAction.nTokenPresentValueUnderlyingDenominated.selector\n ) {\n return NTOKEN_ACTIONS;\n } else if (\n sig == NotionalProxy.depositUnderlyingToken.selector ||\n sig == NotionalProxy.depositAssetToken.selector ||\n sig == NotionalProxy.withdraw.selector ||\n sig == NotionalProxy.settleAccount.selector ||\n sig == NotionalProxy.nTokenRedeem.selector ||\n sig == NotionalProxy.enableBitmapCurrency.selector\n ) {\n return ACCOUNT_ACTION;\n } else if (\n sig == nERC1155Interface.supportsInterface.selector ||\n sig == nERC1155Interface.balanceOf.selector ||\n sig == nERC1155Interface.balanceOfBatch.selector ||\n sig == nERC1155Interface.signedBalanceOf.selector ||\n sig == nERC1155Interface.signedBalanceOfBatch.selector ||\n sig == nERC1155Interface.safeTransferFrom.selector ||\n sig == nERC1155Interface.safeBatchTransferFrom.selector ||\n sig == nERC1155Interface.decodeToAssets.selector ||\n sig == nERC1155Interface.encodeToId.selector ||\n sig == nERC1155Interface.setApprovalForAll.selector ||\n sig == nERC1155Interface.isApprovedForAll.selector\n ) {\n return ERC1155;\n } else if (\n sig == NotionalProxy.liquidateLocalCurrency.selector ||\n sig == NotionalProxy.liquidateCollateralCurrency.selector ||\n sig == NotionalProxy.calculateLocalCurrencyLiquidation.selector ||\n sig == NotionalProxy.calculateCollateralCurrencyLiquidation.selector\n ) {\n return LIQUIDATE_CURRENCY;\n } else if (\n sig == NotionalProxy.liquidatefCashLocal.selector ||\n sig == NotionalProxy.liquidatefCashCrossCurrency.selector ||\n sig == NotionalProxy.calculatefCashLocalLiquidation.selector ||\n sig == NotionalProxy.calculatefCashCrossCurrencyLiquidation.selector\n ) {\n return LIQUIDATE_FCASH;\n } else if (\n sig == NotionalProxy.initializeMarkets.selector ||\n sig == NotionalProxy.sweepCashIntoMarkets.selector\n ) {\n return INITIALIZE_MARKET;\n } else if (\n sig == NotionalGovernance.listCurrency.selector ||\n sig == NotionalGovernance.enableCashGroup.selector ||\n sig == NotionalGovernance.updateCashGroup.selector ||\n sig == NotionalGovernance.updateAssetRate.selector ||\n sig == NotionalGovernance.updateETHRate.selector ||\n sig == NotionalGovernance.transferOwnership.selector ||\n sig == NotionalGovernance.claimOwnership.selector ||\n sig == NotionalGovernance.updateIncentiveEmissionRate.selector ||\n sig == NotionalGovernance.updateMaxCollateralBalance.selector ||\n sig == NotionalGovernance.updateDepositParameters.selector ||\n sig == NotionalGovernance.updateInitializationParameters.selector ||\n sig == NotionalGovernance.updateTokenCollateralParameters.selector ||\n sig == NotionalGovernance.updateGlobalTransferOperator.selector ||\n sig == NotionalGovernance.updateAuthorizedCallbackContract.selector ||\n sig == NotionalGovernance.setLendingPool.selector ||\n sig == NotionalProxy.upgradeTo.selector ||\n sig == NotionalProxy.upgradeToAndCall.selector\n ) {\n return GOVERNANCE;\n } else if (\n sig == NotionalTreasury.claimCOMPAndTransfer.selector ||\n sig == NotionalTreasury.transferReserveToTreasury.selector ||\n sig == NotionalTreasury.setTreasuryManager.selector ||\n sig == NotionalTreasury.setReserveBuffer.selector ||\n sig == NotionalTreasury.setReserveCashBalance.selector\n ) {\n return TREASURY;\n } else if (\n sig == NotionalCalculations.calculateNTokensToMint.selector ||\n sig == NotionalCalculations.getfCashAmountGivenCashAmount.selector ||\n sig == NotionalCalculations.getCashAmountGivenfCashAmount.selector ||\n sig == NotionalCalculations.nTokenGetClaimableIncentives.selector\n ) {\n return CALCULATION_VIEWS;\n } else {\n // If not found then delegate to views. This will revert if there is no method on\n // the view contract\n return VIEWS;\n }\n }\n\n /// @dev Delegates the current call to `implementation`.\n /// This function does not return to its internal call site, it will return directly to the external caller.\n function _delegate(address implementation) private {\n // solhint-disable-next-line no-inline-assembly\n assembly {\n // Copy msg.data. We take full control of memory in this inline assembly\n // block because it will not return to Solidity code. We overwrite the\n // Solidity scratch pad at memory position 0.\n calldatacopy(0, 0, calldatasize())\n\n // Call the implementation.\n // out and outsize are 0 because we don't know the size yet.\n let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)\n\n // Copy the returned data.\n returndatacopy(0, 0, returndatasize())\n\n switch result\n // delegatecall returns 0 on error.\n case 0 {\n revert(0, returndatasize())\n }\n default {\n return(0, returndatasize())\n }\n }\n }\n\n fallback() external payable {\n _delegate(getRouterImplementation(msg.sig));\n }\n\n // NOTE: receive() is overridden in \"nProxy\" to allow for eth transfers to succeed\n}\n", + "sourceMap": "1056:10103:24:-:0;;;1729:983;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;2119:24:24;;;;;;;;2153:14;;;;;;;2177:37;;;;;;;2224:31;;;;;;;2265:27;;;;;;;2302:31;;;;;;;2343:18;;;;;;;2371:39;;;;;;2420:33;;;;;;2463:12;;;;;;2496:10;2485:21;;;;2516:20;;;;;;2546:37;;;;;;2684:14;:21;;-1:-1:-1;;2684:21:24;;;;;1056:10103;;14:179:168;95:13;;-1:-1:-1;;;;;137:31:168;;127:42;;117:2;;183:1;180;173:12;117:2;76:117;;;:::o;198:1190::-;;;;;;;;;;;;;510:3;498:9;489:7;485:23;481:33;478:2;;;532:6;524;517:22;478:2;560:42;592:9;560:42;:::i;:::-;550:52;;621:51;668:2;657:9;653:18;621:51;:::i;:::-;611:61;;691:51;738:2;727:9;723:18;691:51;:::i;:::-;681:61;;761:51;808:2;797:9;793:18;761:51;:::i;:::-;751:61;;831:52;878:3;867:9;863:19;831:52;:::i;:::-;821:62;;902:52;949:3;938:9;934:19;902:52;:::i;:::-;892:62;;973:52;1020:3;1009:9;1005:19;973:52;:::i;:::-;963:62;;1044:52;1091:3;1080:9;1076:19;1044:52;:::i;:::-;1034:62;;1115:52;1162:3;1151:9;1147:19;1115:52;:::i;:::-;1105:62;;1186:52;1233:3;1222:9;1218:19;1186:52;:::i;:::-;1176:62;;1258:52;1305:3;1294:9;1290:19;1258:52;:::i;:::-;1247:63;;1330:52;1377:3;1366:9;1362:19;1330:52;:::i;:::-;1319:63;;468:920;;;;;;;;;;;;;;:::o;:::-;1056:10103:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", + "sourcePath": "contracts/external/Router.sol", + "type": "contract" +} \ No newline at end of file diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index a8840907a..80a5806a7 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -1,6 +1,6 @@ import "module-alias/register"; -import { BigNumber, constants } from "ethers"; +import { BigNumber, Signer } from "ethers"; import { ethers } from "hardhat"; import { Account, ForkedTokens } from "@utils/test/types"; @@ -37,6 +37,72 @@ import { MAX_UINT_256 } from "@utils/constants"; const expect = getWaffleExpect(); +const batchActionArtifact = require("../../external/abi/notional/BatchAction.json"); +const erc1155ActionArtifact = require("../../external/abi/notional/ERC1155Action.json"); +const routerArtifact = require("../../external/abi/notional/Router.json"); + +async function upgradeNotionalProxy(signer: Signer) { + // Create these three contract factories + console.log("RouterFactory"); + const routerFactory = new ethers.ContractFactory( + routerArtifact["abi"], + routerArtifact["bytecode"], + signer, + ); + console.log("ERC155Factory"); + const erc1155ActionFactory = new ethers.ContractFactory( + erc1155ActionArtifact["abi"], + erc1155ActionArtifact["bytecode"], + signer, + ); + console.log("BatchActionFactory"); + const batchActionFactory = new ethers.ContractFactory( + batchActionArtifact["abi"], + batchActionArtifact["bytecode"], + signer, + ); + console.log("Created factories"); + + // Get the current router to get current contract addresses (same as notional contract, just different abi) + const router = (await ethers.getContractAt( + routerArtifact["abi"], + "0x1344A36A1B56144C3Bc62E7757377D288fDE0369", + )) as any; + + // This is the notional contract w/ notional abi + const notional = (await ethers.getContractAt( + ["upgradeTo(address)"], + "0x1344A36A1B56144C3Bc62E7757377D288fDE0369", + )); + + // Deploy the new upgraded contracts + const batchAction = await batchActionFactory.deploy(); + const erc1155Action = await erc1155ActionFactory.deploy(); + + // Get the current router args and replace upgraded addresses + const routerArgs = await Promise.all([ + router.GOVERNANCE(), + router.VIEWS(), + router.INITIALIZE_MARKET(), + router.NTOKEN_ACTIONS(), + batchAction.address, // upgraded + router.ACCOUNT_ACTION(), + erc1155Action.address, // upgraded + router.LIQUIDATE_CURRENCY(), + router.LIQUIDATE_FCASH(), + router.cETH(), + router.TREASURY(), + router.CALCULATION_VIEWS(), + ]); + + // Deploy a new router + const newRouter = await routerFactory.deploy(routerArgs, signer); + // Get the owner contract + const owner = await ethers.getSigner(await notional.owner()); + // Upgrade the system to the new router + await notional.connect(owner).upgradeTo(newRouter); +} + /** * Tests the icETH rebalance flow. * @@ -298,21 +364,28 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(assetTokenAddress).to.eq(cdaiAddress); }); - it("mint works", async () => { - const depositAmountExternal = ethers.utils.parseEther("1"); - const fCashAmount = ethers.utils.parseEther("1"); - const receiver = owner.address; - const minImpliedRate = 0; - const useUnderlying = true; - await dai.transfer(owner.address, depositAmountExternal); - await dai.connect(owner.wallet).approve(wrappedFCashInstance.address, depositAmountExternal); - await wrappedFCashInstance.mint( - depositAmountExternal, - fCashAmount, - receiver, - minImpliedRate, - useUnderlying, - ); + describe("When notional proxy is upgraded", () => { + beforeEach(async () => { + await upgradeNotionalProxy(owner.wallet); + }); + it("mint works", async () => { + const depositAmountExternal = ethers.utils.parseEther("1"); + const fCashAmount = ethers.utils.parseEther("1"); + const receiver = owner.address; + const minImpliedRate = 0; + const useUnderlying = true; + await dai.transfer(owner.address, depositAmountExternal); + await dai + .connect(owner.wallet) + .approve(wrappedFCashInstance.address, depositAmountExternal); + await wrappedFCashInstance.mint( + depositAmountExternal, + fCashAmount, + receiver, + minImpliedRate, + useUnderlying, + ); + }); }); }); }); From b502bc93b8ff46debb74e778bf1ea54144742664 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 26 Apr 2022 10:48:20 +0800 Subject: [PATCH 026/120] fix invalid bytecode --- external/abi/notional/BatchAction.json | 2 +- external/abi/notional/ERC1155Action.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/external/abi/notional/BatchAction.json b/external/abi/notional/BatchAction.json index aaa44cf6b..b3a23723e 100644 --- a/external/abi/notional/BatchAction.json +++ b/external/abi/notional/BatchAction.json @@ -15966,7 +15966,7 @@ ], "src": "41:24110:29" }, - "bytecode": "608060405234801561001057600080fd5b50614c12806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e36600461420f565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b7919061465e565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614383565b6101f6565b6100936100ee36600461425f565b61053e565b610093610101366004614303565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b7969594939291906146bb565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149eb565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148da565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148da565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f2f565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b62565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b62565b6102e3906020810190614596565b61ffff166102f46020830183614596565b61ffff16116103155760405162461bcd60e51b815260040161017a9061498a565b60006103246040830183614afd565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614afd565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614596565b86919089610c79565b6103b4896103a06020850185614596565b6103ad6040860186614afd565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a60408401602085016143ba565b156104b757600061042a6104216020860186614596565b61ffff16610eef565b9050600061044761043e6020870187614596565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614abb565b505050506104ef565b60006104d26104c96020860186614596565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148da565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614672565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061063590899060040161465e565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148da565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f2f565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614596565b61ffff1661074a6040830160208401614596565b61ffff161161076b5760405162461bcd60e51b815260040161017a9061498a565b6107888761077f6040840160208501614596565b85919087610c79565b6107a4878461079a60208501856143d6565b8460400135611605565b6107d487858560608501356107bf60a08701608088016143ba565b6107cf60c0880160a089016143ba565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b730x4763672dEa3bF087929d5537B6BAfeB8e6938F46730x244321a0C5eE55DF1F4D31c71570Cbe0236c1864730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA730x4b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16730x5d0Df02534ab3c805c59f9cC98E282DC929821e1730xEaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f7f565b600061090285610b2b565b905061090c613f2f565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b43565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b43565b610984906040810190602001614596565b61ffff166109986040830160208401614596565b61ffff16116109b95760405162461bcd60e51b815260040161017a9061498a565b6109d6896109cd6040840160208501614596565b86919088610c79565b6109e8898561079a60208501856143d6565b60006109f760c0830183614afd565b90501115610a5e576000610a298a610a156040850160208601614596565b610a2260c0860186614afd565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a08701608088016143ba565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610aff90859060040161465e565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f7f565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b8152730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610b8790869085906004016146f5565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061443c565b915050610be2565b90505b919050565b610bef613fad565b610bf7613fad565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fd5565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613fad565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a35565b60608401518451604051633643f39b60e01b8152600092730x4b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610da9928e9290918d908d9060040161481f565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df8919061440d565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b8152730x4b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e61908b908b9088908c908c90600401614761565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144db565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7614015565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f4361403f565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a9061491e565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac61403f565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a6c565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a90614a13565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148d1565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148d1565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c6101000151612054565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b6121a4565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e86886123a3565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125e2565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b6121a4565b60109490941b9390506114c5565b505050505050505050565b600061150b61265d565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261266a565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612680565b50505050565b60006116e38461266a565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261289b565b608086015261174b85888885611191565b5050505050505050565b6000806000806000806117666128b1565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a90565b611815613f7f565b600061181f61265d565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128be565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128dc565b9050600181511161191f579050610edb565b610aa3816129fd565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612bb5565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612bc2565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bd0565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143f5565b905060008113611b6457600080fd5b969195509350915050565b611b7761403f565b6000611b81612c07565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612c14565b9250505b6000821315611cb2576000611c9c868685612ca6565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d99565b610f7f565b8451610f7f9085611cf185610ee1565b612dd4565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e4b565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f5d565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fc8565b600286606001516005811115611dbb57fe5b141561007b57611dca86613074565b6000611ddb87600001513085612e4b565b9050611def611dea82846130b3565b61266a565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e628260000151613110565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061319b565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613231565b90506000611f90828860c0015185613257565b9050611f9e8783838861333a565b93506000611fab83613467565b90506001600160a01b0381161561203957806001600160a01b0316631d684dd2888a60000151611fde8c60400151611cf6565b8a8d60c001518b6040518763ffffffff1660e01b8152600401612006969594939291906147e8565b600060405180830381600087803b15801561202057600080fd5b505af1158015612034573d6000803e3d6000fd5b505050505b84156120495761204987866134d9565b505050509392505050565b600061205e612bb5565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a957506a7fffffffffffffffffffff8613155b6120b257600080fd5b600085121580156120cd575069ffffffffffffffffffff8513155b6120d657600080fd5b836121165766ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612130565b8054600160501b900463ffffffff16841461213057600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121b65750613fff8311155b6121bf57600080fd5b8180156121d3575082846060015161ffff16145b156121dd576116d2565b6080840151600090815b6001600160701b03198216156123585760f082901c613fff16868114801561220c5750855b1561224457506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612251575085155b156122a6576001600160f01b03198516199290921691600360fe1b8316612284576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122b25750855b1561230c576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122e657600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b8681118015612319575085155b1561232757505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121e7565b84612365575050506116d2565b6009811061237257600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124345760008a6000015182815181106123c957fe5b602002602001015190506003808111156123df57fe5b8160a0015160038111156123ef57fe5b14156123fa57600080fd5b60028160a00151600381111561240c57fe5b1415801561241c57506060810151155b1561242b5761242b8b836134f8565b506001016123ad565b5060005b8951518110156124d75760008a60000151828151811061245457fe5b602002602001015190506002600381111561246b57fe5b8160a00151600381111561247b57fe5b141561248f576080810151600090556124ce565b60018160a0015160038111156124a157fe5b14156124ba576080810151806124b78382613647565b50505b6124c681868686613778565b919650945092505b50600101612438565b50606089015160006124e76137db565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125b15760008d60200151828151811061252257fe5b6020026020010151905080606001516000141561253f57506125a9565b60028160a00151600381111561255157fe5b1415801561256f575060038160a00151600381111561256c57fe5b14155b61257857600080fd5b61258481898989613778565b919950975095506125a18184876010811061259b57fe5b01613647565b600185019450505b600101612503565b50601083111580156125c8575064ffffffffff8411155b6125d157600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561265457600160fe1b828116141561263e576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061260a565b50909392505050565b600080610edb60016137e4565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561268e57fe5b14806126a5575060048360068111156126a357fe5b145b806126bb575060068360068111156126b957fe5b145b15612787576126ca84826117be565b60608401516126d9908261289b565b60608501528351604051632128561360e11b8152600091730x5d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161271a918690600401614ae9565b60206040518083038186803b15801561273257600080fd5b505af4158015612746573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061276a91906143f5565b60c086015190915061277c9082610ec5565b60c0860152506116d2565b600583600681111561279557fe5b14156116d257816127bf8560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127dd5760405162461bcd60e51b815260040161017a906149b4565b60c08401516127ec908361289b565b60c085015283516040516352e73f7760e01b8152600091730xEaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f779161282d918790600401614ae9565b60206040518083038186803b15801561284557600080fd5b505af4158015612859573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061287d91906143f5565b606086015190915061288f9082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137e4565b6000620151808210156128d057600080fd5b50620151808106900390565b606060108260ff1611156128ef57600080fd5b60006128f96137db565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561292d57600080fd5b5060405190808252806020026020018201604052801561296757816020015b612954613fd5565b81526020019060019003908161294c5790505b50905060005b8560ff168110156129f357600083826010811061298657fe5b019050600083838151811061299757fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b6060820152608001919091525060010161296d565b5095945050505050565b80516000816001600160401b0381118015612a1757600080fd5b50604051908082528060200260200182016040528015612a41578160200160208202803683370190505b50905060005b82811015612a9e576000848281518110612a5d57fe5b60200260200101519050612a7e8160000151826020015183604001516137fd565b838381518110612a8a57fe5b602090810291909101015250600101612a47565b5060015b828110156116d257805b600081118015612ae45750828181518110612ac357fe5b6020026020010151836001830381518110612ada57fe5b6020026020010151115b15612bac57828181518110612af557fe5b6020026020010151836001830381518110612b0c57fe5b6020026020010151846001840381518110612b2357fe5b60200260200101858481518110612b3657fe5b6020026020010182815250828152505050848181518110612b5357fe5b6020026020010151856001830381518110612b6a57fe5b6020026020010151866001840381518110612b8157fe5b60200260200101878481518110612b9457fe5b60209081029190910101919091525260001901612aac565b50600101612aa2565b600080610edb60066137e4565b600881901c60ff9091161b90565b6000806000612bdd613858565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137e4565b600081612c2357506000610edb565b6000612c2e84613110565b90506000612c3b84613865565b9050816b019d971e4fe8401e74000001600160ff1b0381612c5857fe5b05811315612c6557600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c9a57612c9581610ee1565b612c9c565b805b9695505050505050565b6000808080600587606001516005811115612cbd57fe5b14612ccf576370a0823160e01b612cd8565b630ed1279f60e11b5b9050866020015115612cf4578651612cf1903083612e4b565b92505b8651612d01908787613886565b866020015180612d15575060008760800151115b15612d2a578651612d27903083612e4b565b91505b608087015115612d65576000612d4888612d438561266a565b611dfa565b9050612d57886080015161266a565b811315612d6357600080fd5b505b866020015115612d8657612d7c611dea83856130b3565b9350505050610aa3565b612d7c8561266a565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612dcf573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e2b57600080fd5b505af1158015612e3f573d6000803e3d6000fd5b50505050612dcf6138de565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612ec85780518252601f199092019160209182019101612ea9565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f28576040519150601f19603f3d011682016040523d82523d6000602084013e612f2d565b606091505b509150915081612f3c57600080fd5b808060200190516020811015612f5157600080fd5b50519695505050505050565b612f6561394b565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f9a918590309060009060040161487e565b600060405180830381600087803b158015612fb457600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612ffb91906148d1565b602060405180830381600087803b15801561301557600080fd5b505af1158015613029573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061304d91906143f5565b9050801561306d5760405162461bcd60e51b815260040161017a90614900565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fb457600080fd5b60008282111561310a576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61311d61394b565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061314b90869060040161465e565b60206040518083038186803b15801561316357600080fd5b505afa158015613177573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143f5565b6000806002866060015160058111156131b057fe5b14156131c8576131c1868585613958565b9050613225565b60006131d386610f3b565b90506005876060015160058111156131e757fe5b14156131ff576131f8818686613a15565b9150613223565b60018760600151600581111561321157fe5b141561007b576131f887828787613acb565b505b612c9c6103ea8261266a565b60008061323c613bc9565b6000938452602052505060409020546001600160a01b031690565b60008060006132668685613bd6565b50915091506000613275613c6c565b6001600160a01b038816600090815260208290526040812091925061329a8589610ec5565b9050806000131580156132b357506001600160601b0381105b6132bc57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061331157600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133fb57730x244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a728561336f8860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161339994939291906148ab565b60206040518083038186803b1580156133b157600080fd5b505af41580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e991906143f5565b600060e0870181905261010087015290505b61343d613436866101000151613430670de0b6b3a764000061342a886134248c60400151611cf6565b90613c79565b90613cd2565b906130b3565b8290613d39565b9050613455670de0b6b3a764000061342a8486613c79565b85610100018181525050949350505050565b6000806134726128b1565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134ce576134a7613d93565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612dd4565b815151811061350657600080fd5b600082606001511161351757600080fd5b60008260000151828151811061352957fe5b602002602001015190506002600381111561354057fe5b8160a00151600381111561355057fe5b1415801561356e575060038160a00151600381111561356b57fe5b14155b61357757600080fd5b606083018051600019019052600080805b8551518110156135ea576000866000015182815181106135a457fe5b602002602001015190508281608001511180156135d1575060028160a0015160038111156135ce57fe5b14155b156135e157806080015192508193505b50600101613588565b5081841415613603575050600260a091909101526108eb565b60008560000151838151811061361557fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061365a57508151613fff10155b61366357600080fd5b816020015160001080156136805750602082015164ffffffffff10155b61368957600080fd5b816040015160001080156136a257506040820151600810155b6136ab57600080fd5b60608201516a7fffffffffffffffffffff19138015906136da575060608201516a7fffffffffffffffffffff12155b6136e357600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061378788613da0565b905084158061379557508085115b1561379e578094505b86806137ae575060008860600151125b965061ffff8616156137bf57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137f657fe5b0192915050565b6000613fff84111561380e57600080fd5b64ffffffffff83111561382057600080fd5b600882111561382e57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137e4565b60008082121561387f5761387882610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e2b57600080fd5b60006138e861406e565b3d80156138fc576020811461390557600080fd5b60019250613910565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137e4565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061398c9087906004016148d1565b602060405180830381600087803b1580156139a657600080fd5b505af11580156139ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139de91906143f5565b905080156139fe5760405162461bcd60e51b815260040161017a90614943565b47613a0981846130b3565b9350612d8f8685612d99565b6000613a35613a308560000151613a2b8561266a565b612c14565b611cf6565b9050613a3f61394b565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a71918590889060040161485b565b602060405180830381600087803b158015613a8b57600080fd5b505af1158015613a9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ac391906143f5565b509392505050565b82516000908190613ae490306370a0823160e01b612e4b565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b1891906148d1565b602060405180830381600087803b158015613b3257600080fd5b505af1158015613b46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b6a91906143f5565b90508015613b8a5760405162461bcd60e51b815260040161017a90614943565b8551600090613ba190306370a0823160e01b612e4b565b9050613bad81846130b3565b9350613bbe87600001518786612dd4565b505050949350505050565b600080610edb60036137e4565b6000806000613be485613e0d565b919450925090508084118015613bfa5750600081115b8015613c065750600083115b15613c65576000613c1686611755565b5050509150506000613c41613c386305f5e10084613c7990919063ffffffff16565b84880387613e69565b9050613c4d8482613d39565b93506001600160801b038410613c6257600080fd5b50505b9250925092565b600080610edb60116137e4565b600082613c8857506000610edb565b82820282848281613c9557fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614bbc6021913960400191505060405180910390fd5b6000808211613d28576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d3157fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137e4565b6000808260400151118015613dba57506040820151600810155b613dc357600080fd5b6040820151600210613dda57506020810151610be2565b6000613dec6001846040015103613e8b565b6020840151909150610aa3906276a70090613e0790846130b3565b90613d39565b600080600080613e1b613c6c565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261342a6301da9c00818861342489670de0b6b3a7640000613c79565b60008160011415613ea057506276a700610be2565b8160021415613eb3575062ed4e00610be2565b8160031415613ec757506301da9c00610be2565b8160041415613edb57506303b53800610be2565b8160051415613eef57506309450c00610be2565b8160061415613f03575063128a1800610be2565b8160071415613f1757506325143000610be2565b60405162461bcd60e51b815260040161017a90614963565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561401057fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f8401126140b4578081fd5b5081356001600160401b038111156140ca578182fd5b60208301915083602080830285010111156140e457600080fd5b9250929050565b600082601f8301126140fb578081fd5b815160206001600160401b038083111561411157fe5b61411e8283850201614b77565b8381528281019086840160c0808702890186018a101561413c578788fd5b875b878110156141bd5781838c031215614154578889fd5b60408051838101818110898211171561416957fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141a48286016141e4565b918101919091528552938601939181019160010161413e565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614bab565b805160ff81168114610be257600080fd5b600080600060408486031215614223578283fd5b61422c8461408c565b925060208401356001600160401b03811115614246578283fd5b614252868287016140a3565b9497909650939450505050565b600080600080600060608688031215614276578081fd5b61427f8661408c565b945060208601356001600160401b038082111561429a578283fd5b6142a689838a016140a3565b909650945060408801359150808211156142be578283fd5b818801915088601f8301126142d1578283fd5b8135818111156142df578384fd5b8960208285010111156142f0578384fd5b9699959850939650602001949392505050565b600080600060408486031215614317578283fd5b6143208461408c565b925060208401356001600160401b038082111561433b578384fd5b818601915086601f83011261434e578384fd5b81358181111561435c578485fd5b87602060c083028501011115614370578485fd5b6020830194508093505050509250925092565b600080600060408486031215614397578081fd5b6143a08461408c565b925060208401356001600160401b03811115614246578182fd5b6000602082840312156143cb578081fd5b8135610aa381614b9a565b6000602082840312156143e7578081fd5b813560078110610aa3578182fd5b600060208284031215614406578081fd5b5051919050565b6000806040838503121561441f578182fd5b82519150602083015161443181614b9a565b809150509250929050565b600060a0828403121561444d578081fd5b60405160a081018181106001600160401b038211171561446957fe5b604052825164ffffffffff81168114614480578283fd5b815260208301516001600160f81b03198116811461449c578283fd5b60208201526144ad604084016141fe565b60408201526144be606084016141f3565b60608201526144cf608084016141cc565b60808201529392505050565b600080604083850312156144ed578182fd5b82516001600160401b0380821115614503578384fd5b9084019060808287031215614516578384fd5b60405160808101818110838211171561452b57fe5b60405282518281111561453c578586fd5b614548888286016140eb565b82525060208301518281111561455c578586fd5b614568888286016140eb565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145a7578081fd5b8135610aa381614bab565b81835260006001600160fb1b038311156145ca578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561465357815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061463e57fe5b88015260c090960195908201906001016145f9565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147956101008401826145e6565b90506020860151607f198483030160a08501526147b282826145e6565b915050604086015160c0840152606086015160e084015282810360608401526147dc8185876145b2565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def90830184866145b2565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b13578283fd5b8301803591506001600160401b03821115614b2c578283fd5b60209081019250810236038213156140e457600080fd5b6000823560de19833603018112614b58578182fd5b9190910192915050565b60008235605e19833603018112614b58578182fd5b6040518181016001600160401b0381118282101715614b9257fe5b604052919050565b8015158114614ba857600080fd5b50565b61ffff81168114614ba857600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f884fe8220b7f46cc58f6be0c7ed42e9dc17ee783d51559bea0e93dbfe1fcabc64736f6c63430007060033", + "bytecode": "608060405234801561001057600080fd5b50614c12806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e36600461420f565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b7919061465e565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614383565b6101f6565b6100936100ee36600461425f565b61053e565b610093610101366004614303565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b7969594939291906146bb565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149eb565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148da565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148da565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f2f565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b62565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b62565b6102e3906020810190614596565b61ffff166102f46020830183614596565b61ffff16116103155760405162461bcd60e51b815260040161017a9061498a565b60006103246040830183614afd565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614afd565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614596565b86919089610c79565b6103b4896103a06020850185614596565b6103ad6040860186614afd565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a60408401602085016143ba565b156104b757600061042a6104216020860186614596565b61ffff16610eef565b9050600061044761043e6020870187614596565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614abb565b505050506104ef565b60006104d26104c96020860186614596565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148da565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614672565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061063590899060040161465e565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148da565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f2f565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614596565b61ffff1661074a6040830160208401614596565b61ffff161161076b5760405162461bcd60e51b815260040161017a9061498a565b6107888761077f6040840160208501614596565b85919087610c79565b6107a4878461079a60208501856143d6565b8460400135611605565b6107d487858560608501356107bf60a08701608088016143ba565b6107cf60c0880160a089016143ba565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b734763672dEa3bF087929d5537B6BAfeB8e6938F4673244321a0C5eE55DF1F4D31c71570Cbe0236c18647301713633a1b85a4a3d2f9430C68Bd4392c4a90eA734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16735d0Df02534ab3c805c59f9cC98E282DC929821e173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f7f565b600061090285610b2b565b905061090c613f2f565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b43565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b43565b610984906040810190602001614596565b61ffff166109986040830160208401614596565b61ffff16116109b95760405162461bcd60e51b815260040161017a9061498a565b6109d6896109cd6040840160208501614596565b86919088610c79565b6109e8898561079a60208501856143d6565b60006109f760c0830183614afd565b90501115610a5e576000610a298a610a156040850160208601614596565b610a2260c0860186614afd565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a08701608088016143ba565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610aff90859060040161465e565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f7f565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610b8790869085906004016146f5565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061443c565b915050610be2565b90505b919050565b610bef613fad565b610bf7613fad565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fd5565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613fad565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a35565b60608401518451604051633643f39b60e01b8152600092734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610da9928e9290918d908d9060040161481f565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df8919061440d565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b8152734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e61908b908b9088908c908c90600401614761565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144db565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7614015565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f4361403f565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a9061491e565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac61403f565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a6c565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a90614a13565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148d1565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148d1565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c6101000151612054565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b6121a4565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e86886123a3565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125e2565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b6121a4565b60109490941b9390506114c5565b505050505050505050565b600061150b61265d565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261266a565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612680565b50505050565b60006116e38461266a565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261289b565b608086015261174b85888885611191565b5050505050505050565b6000806000806000806117666128b1565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a90565b611815613f7f565b600061181f61265d565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128be565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128dc565b9050600181511161191f579050610edb565b610aa3816129fd565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612bb5565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612bc2565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bd0565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143f5565b905060008113611b6457600080fd5b969195509350915050565b611b7761403f565b6000611b81612c07565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612c14565b9250505b6000821315611cb2576000611c9c868685612ca6565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d99565b610f7f565b8451610f7f9085611cf185610ee1565b612dd4565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e4b565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f5d565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fc8565b600286606001516005811115611dbb57fe5b141561007b57611dca86613074565b6000611ddb87600001513085612e4b565b9050611def611dea82846130b3565b61266a565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e628260000151613110565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061319b565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613231565b90506000611f90828860c0015185613257565b9050611f9e8783838861333a565b93506000611fab83613467565b90506001600160a01b0381161561203957806001600160a01b0316631d684dd2888a60000151611fde8c60400151611cf6565b8a8d60c001518b6040518763ffffffff1660e01b8152600401612006969594939291906147e8565b600060405180830381600087803b15801561202057600080fd5b505af1158015612034573d6000803e3d6000fd5b505050505b84156120495761204987866134d9565b505050509392505050565b600061205e612bb5565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a957506a7fffffffffffffffffffff8613155b6120b257600080fd5b600085121580156120cd575069ffffffffffffffffffff8513155b6120d657600080fd5b836121165766ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612130565b8054600160501b900463ffffffff16841461213057600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121b65750613fff8311155b6121bf57600080fd5b8180156121d3575082846060015161ffff16145b156121dd576116d2565b6080840151600090815b6001600160701b03198216156123585760f082901c613fff16868114801561220c5750855b1561224457506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612251575085155b156122a6576001600160f01b03198516199290921691600360fe1b8316612284576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122b25750855b1561230c576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122e657600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b8681118015612319575085155b1561232757505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121e7565b84612365575050506116d2565b6009811061237257600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124345760008a6000015182815181106123c957fe5b602002602001015190506003808111156123df57fe5b8160a0015160038111156123ef57fe5b14156123fa57600080fd5b60028160a00151600381111561240c57fe5b1415801561241c57506060810151155b1561242b5761242b8b836134f8565b506001016123ad565b5060005b8951518110156124d75760008a60000151828151811061245457fe5b602002602001015190506002600381111561246b57fe5b8160a00151600381111561247b57fe5b141561248f576080810151600090556124ce565b60018160a0015160038111156124a157fe5b14156124ba576080810151806124b78382613647565b50505b6124c681868686613778565b919650945092505b50600101612438565b50606089015160006124e76137db565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125b15760008d60200151828151811061252257fe5b6020026020010151905080606001516000141561253f57506125a9565b60028160a00151600381111561255157fe5b1415801561256f575060038160a00151600381111561256c57fe5b14155b61257857600080fd5b61258481898989613778565b919950975095506125a18184876010811061259b57fe5b01613647565b600185019450505b600101612503565b50601083111580156125c8575064ffffffffff8411155b6125d157600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561265457600160fe1b828116141561263e576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061260a565b50909392505050565b600080610edb60016137e4565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561268e57fe5b14806126a5575060048360068111156126a357fe5b145b806126bb575060068360068111156126b957fe5b145b15612787576126ca84826117be565b60608401516126d9908261289b565b60608501528351604051632128561360e11b8152600091735d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161271a918690600401614ae9565b60206040518083038186803b15801561273257600080fd5b505af4158015612746573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061276a91906143f5565b60c086015190915061277c9082610ec5565b60c0860152506116d2565b600583600681111561279557fe5b14156116d257816127bf8560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127dd5760405162461bcd60e51b815260040161017a906149b4565b60c08401516127ec908361289b565b60c085015283516040516352e73f7760e01b815260009173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f779161282d918790600401614ae9565b60206040518083038186803b15801561284557600080fd5b505af4158015612859573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061287d91906143f5565b606086015190915061288f9082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137e4565b6000620151808210156128d057600080fd5b50620151808106900390565b606060108260ff1611156128ef57600080fd5b60006128f96137db565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561292d57600080fd5b5060405190808252806020026020018201604052801561296757816020015b612954613fd5565b81526020019060019003908161294c5790505b50905060005b8560ff168110156129f357600083826010811061298657fe5b019050600083838151811061299757fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b6060820152608001919091525060010161296d565b5095945050505050565b80516000816001600160401b0381118015612a1757600080fd5b50604051908082528060200260200182016040528015612a41578160200160208202803683370190505b50905060005b82811015612a9e576000848281518110612a5d57fe5b60200260200101519050612a7e8160000151826020015183604001516137fd565b838381518110612a8a57fe5b602090810291909101015250600101612a47565b5060015b828110156116d257805b600081118015612ae45750828181518110612ac357fe5b6020026020010151836001830381518110612ada57fe5b6020026020010151115b15612bac57828181518110612af557fe5b6020026020010151836001830381518110612b0c57fe5b6020026020010151846001840381518110612b2357fe5b60200260200101858481518110612b3657fe5b6020026020010182815250828152505050848181518110612b5357fe5b6020026020010151856001830381518110612b6a57fe5b6020026020010151866001840381518110612b8157fe5b60200260200101878481518110612b9457fe5b60209081029190910101919091525260001901612aac565b50600101612aa2565b600080610edb60066137e4565b600881901c60ff9091161b90565b6000806000612bdd613858565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137e4565b600081612c2357506000610edb565b6000612c2e84613110565b90506000612c3b84613865565b9050816b019d971e4fe8401e74000001600160ff1b0381612c5857fe5b05811315612c6557600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c9a57612c9581610ee1565b612c9c565b805b9695505050505050565b6000808080600587606001516005811115612cbd57fe5b14612ccf576370a0823160e01b612cd8565b630ed1279f60e11b5b9050866020015115612cf4578651612cf1903083612e4b565b92505b8651612d01908787613886565b866020015180612d15575060008760800151115b15612d2a578651612d27903083612e4b565b91505b608087015115612d65576000612d4888612d438561266a565b611dfa565b9050612d57886080015161266a565b811315612d6357600080fd5b505b866020015115612d8657612d7c611dea83856130b3565b9350505050610aa3565b612d7c8561266a565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612dcf573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e2b57600080fd5b505af1158015612e3f573d6000803e3d6000fd5b50505050612dcf6138de565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612ec85780518252601f199092019160209182019101612ea9565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f28576040519150601f19603f3d011682016040523d82523d6000602084013e612f2d565b606091505b509150915081612f3c57600080fd5b808060200190516020811015612f5157600080fd5b50519695505050505050565b612f6561394b565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f9a918590309060009060040161487e565b600060405180830381600087803b158015612fb457600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612ffb91906148d1565b602060405180830381600087803b15801561301557600080fd5b505af1158015613029573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061304d91906143f5565b9050801561306d5760405162461bcd60e51b815260040161017a90614900565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fb457600080fd5b60008282111561310a576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61311d61394b565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061314b90869060040161465e565b60206040518083038186803b15801561316357600080fd5b505afa158015613177573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143f5565b6000806002866060015160058111156131b057fe5b14156131c8576131c1868585613958565b9050613225565b60006131d386610f3b565b90506005876060015160058111156131e757fe5b14156131ff576131f8818686613a15565b9150613223565b60018760600151600581111561321157fe5b141561007b576131f887828787613acb565b505b612c9c6103ea8261266a565b60008061323c613bc9565b6000938452602052505060409020546001600160a01b031690565b60008060006132668685613bd6565b50915091506000613275613c6c565b6001600160a01b038816600090815260208290526040812091925061329a8589610ec5565b9050806000131580156132b357506001600160601b0381105b6132bc57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061331157600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133fb5773244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a728561336f8860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161339994939291906148ab565b60206040518083038186803b1580156133b157600080fd5b505af41580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e991906143f5565b600060e0870181905261010087015290505b61343d613436866101000151613430670de0b6b3a764000061342a886134248c60400151611cf6565b90613c79565b90613cd2565b906130b3565b8290613d39565b9050613455670de0b6b3a764000061342a8486613c79565b85610100018181525050949350505050565b6000806134726128b1565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134ce576134a7613d93565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612dd4565b815151811061350657600080fd5b600082606001511161351757600080fd5b60008260000151828151811061352957fe5b602002602001015190506002600381111561354057fe5b8160a00151600381111561355057fe5b1415801561356e575060038160a00151600381111561356b57fe5b14155b61357757600080fd5b606083018051600019019052600080805b8551518110156135ea576000866000015182815181106135a457fe5b602002602001015190508281608001511180156135d1575060028160a0015160038111156135ce57fe5b14155b156135e157806080015192508193505b50600101613588565b5081841415613603575050600260a091909101526108eb565b60008560000151838151811061361557fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061365a57508151613fff10155b61366357600080fd5b816020015160001080156136805750602082015164ffffffffff10155b61368957600080fd5b816040015160001080156136a257506040820151600810155b6136ab57600080fd5b60608201516a7fffffffffffffffffffff19138015906136da575060608201516a7fffffffffffffffffffff12155b6136e357600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061378788613da0565b905084158061379557508085115b1561379e578094505b86806137ae575060008860600151125b965061ffff8616156137bf57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137f657fe5b0192915050565b6000613fff84111561380e57600080fd5b64ffffffffff83111561382057600080fd5b600882111561382e57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137e4565b60008082121561387f5761387882610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e2b57600080fd5b60006138e861406e565b3d80156138fc576020811461390557600080fd5b60019250613910565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137e4565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061398c9087906004016148d1565b602060405180830381600087803b1580156139a657600080fd5b505af11580156139ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139de91906143f5565b905080156139fe5760405162461bcd60e51b815260040161017a90614943565b47613a0981846130b3565b9350612d8f8685612d99565b6000613a35613a308560000151613a2b8561266a565b612c14565b611cf6565b9050613a3f61394b565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a71918590889060040161485b565b602060405180830381600087803b158015613a8b57600080fd5b505af1158015613a9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ac391906143f5565b509392505050565b82516000908190613ae490306370a0823160e01b612e4b565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b1891906148d1565b602060405180830381600087803b158015613b3257600080fd5b505af1158015613b46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b6a91906143f5565b90508015613b8a5760405162461bcd60e51b815260040161017a90614943565b8551600090613ba190306370a0823160e01b612e4b565b9050613bad81846130b3565b9350613bbe87600001518786612dd4565b505050949350505050565b600080610edb60036137e4565b6000806000613be485613e0d565b919450925090508084118015613bfa5750600081115b8015613c065750600083115b15613c65576000613c1686611755565b5050509150506000613c41613c386305f5e10084613c7990919063ffffffff16565b84880387613e69565b9050613c4d8482613d39565b93506001600160801b038410613c6257600080fd5b50505b9250925092565b600080610edb60116137e4565b600082613c8857506000610edb565b82820282848281613c9557fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614bbc6021913960400191505060405180910390fd5b6000808211613d28576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d3157fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137e4565b6000808260400151118015613dba57506040820151600810155b613dc357600080fd5b6040820151600210613dda57506020810151610be2565b6000613dec6001846040015103613e8b565b6020840151909150610aa3906276a70090613e0790846130b3565b90613d39565b600080600080613e1b613c6c565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261342a6301da9c00818861342489670de0b6b3a7640000613c79565b60008160011415613ea057506276a700610be2565b8160021415613eb3575062ed4e00610be2565b8160031415613ec757506301da9c00610be2565b8160041415613edb57506303b53800610be2565b8160051415613eef57506309450c00610be2565b8160061415613f03575063128a1800610be2565b8160071415613f1757506325143000610be2565b60405162461bcd60e51b815260040161017a90614963565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561401057fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f8401126140b4578081fd5b5081356001600160401b038111156140ca578182fd5b60208301915083602080830285010111156140e457600080fd5b9250929050565b600082601f8301126140fb578081fd5b815160206001600160401b038083111561411157fe5b61411e8283850201614b77565b8381528281019086840160c0808702890186018a101561413c578788fd5b875b878110156141bd5781838c031215614154578889fd5b60408051838101818110898211171561416957fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141a48286016141e4565b918101919091528552938601939181019160010161413e565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614bab565b805160ff81168114610be257600080fd5b600080600060408486031215614223578283fd5b61422c8461408c565b925060208401356001600160401b03811115614246578283fd5b614252868287016140a3565b9497909650939450505050565b600080600080600060608688031215614276578081fd5b61427f8661408c565b945060208601356001600160401b038082111561429a578283fd5b6142a689838a016140a3565b909650945060408801359150808211156142be578283fd5b818801915088601f8301126142d1578283fd5b8135818111156142df578384fd5b8960208285010111156142f0578384fd5b9699959850939650602001949392505050565b600080600060408486031215614317578283fd5b6143208461408c565b925060208401356001600160401b038082111561433b578384fd5b818601915086601f83011261434e578384fd5b81358181111561435c578485fd5b87602060c083028501011115614370578485fd5b6020830194508093505050509250925092565b600080600060408486031215614397578081fd5b6143a08461408c565b925060208401356001600160401b03811115614246578182fd5b6000602082840312156143cb578081fd5b8135610aa381614b9a565b6000602082840312156143e7578081fd5b813560078110610aa3578182fd5b600060208284031215614406578081fd5b5051919050565b6000806040838503121561441f578182fd5b82519150602083015161443181614b9a565b809150509250929050565b600060a0828403121561444d578081fd5b60405160a081018181106001600160401b038211171561446957fe5b604052825164ffffffffff81168114614480578283fd5b815260208301516001600160f81b03198116811461449c578283fd5b60208201526144ad604084016141fe565b60408201526144be606084016141f3565b60608201526144cf608084016141cc565b60808201529392505050565b600080604083850312156144ed578182fd5b82516001600160401b0380821115614503578384fd5b9084019060808287031215614516578384fd5b60405160808101818110838211171561452b57fe5b60405282518281111561453c578586fd5b614548888286016140eb565b82525060208301518281111561455c578586fd5b614568888286016140eb565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145a7578081fd5b8135610aa381614bab565b81835260006001600160fb1b038311156145ca578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561465357815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061463e57fe5b88015260c090960195908201906001016145f9565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147956101008401826145e6565b90506020860151607f198483030160a08501526147b282826145e6565b915050604086015160c0840152606086015160e084015282810360608401526147dc8185876145b2565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def90830184866145b2565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b13578283fd5b8301803591506001600160401b03821115614b2c578283fd5b60209081019250810236038213156140e457600080fd5b6000823560de19833603018112614b58578182fd5b9190910192915050565b60008235605e19833603018112614b58578182fd5b6040518181016001600160401b0381118282101715614b9257fe5b604052919050565b8015158114614ba857600080fd5b50565b61ffff81168114614ba857600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f884fe8220b7f46cc58f6be0c7ed42e9dc17ee783d51559bea0e93dbfe1fcabc64736f6c63430007060033", "bytecodeSha1": "d5eb9853740b24e7c8aa2301d5ef74e768ee2bb1", "compiler": { "evm_version": "istanbul", diff --git a/external/abi/notional/ERC1155Action.json b/external/abi/notional/ERC1155Action.json index 6eeff0404..dfdebaf8d 100644 --- a/external/abi/notional/ERC1155Action.json +++ b/external/abi/notional/ERC1155Action.json @@ -16026,7 +16026,7 @@ ], "src": "41:20276:30" }, - "bytecode": "608060405234801561001057600080fd5b506138d7806100206000396000f3fe6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b730x4763672dEa3bF087929d5537B6BAfeB8e6938F46730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b8152730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b8152730x01713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b8152730x4763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea264697066735822122004fb3323a9552ead7044be41b2d326c7c87d5f575bc1c147a7aba924aad314b464736f6c63430007060033", + "bytecode": "608060405234801561001057600080fd5b506138d7806100206000396000f3fe6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b734763672dEa3bF087929d5537B6BAfeB8e6938F467301713633a1b85a4a3d2f9430C68Bd4392c4a90eA9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea264697066735822122004fb3323a9552ead7044be41b2d326c7c87d5f575bc1c147a7aba924aad314b464736f6c63430007060033", "bytecodeSha1": "ad542a50fd9521f9faf16216c20b79ea94d56047", "compiler": { "evm_version": "istanbul", From 83eb617a37848b2ec8139255128f031bb0b330ea Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 26 Apr 2022 18:54:11 +0800 Subject: [PATCH 027/120] Finish notional setup in integration test --- test/integration/notionalTradeModule.spec.ts | 27 +++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 80a5806a7..72d360012 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -1,7 +1,7 @@ import "module-alias/register"; import { BigNumber, Signer } from "ethers"; -import { ethers } from "hardhat"; +import { ethers, network } from "hardhat"; import { Account, ForkedTokens } from "@utils/test/types"; import DeployHelper from "@utils/deploys"; @@ -41,6 +41,14 @@ const batchActionArtifact = require("../../external/abi/notional/BatchAction.jso const erc1155ActionArtifact = require("../../external/abi/notional/ERC1155Action.json"); const routerArtifact = require("../../external/abi/notional/Router.json"); +async function impersonateAccount(address: string) { + await network.provider.request({ + method: "hardhat_impersonateAccount", + params: [address], + }); + return ethers.provider.getSigner(address); +} + async function upgradeNotionalProxy(signer: Signer) { // Create these three contract factories console.log("RouterFactory"); @@ -70,10 +78,12 @@ async function upgradeNotionalProxy(signer: Signer) { )) as any; // This is the notional contract w/ notional abi + console.log("connecting to notional"); const notional = (await ethers.getContractAt( - ["upgradeTo(address)"], + "INotionalProxy", "0x1344A36A1B56144C3Bc62E7757377D288fDE0369", - )); + )) as INotionalProxy; + console.log("connected to notional"); // Deploy the new upgraded contracts const batchAction = await batchActionFactory.deploy(); @@ -96,11 +106,16 @@ async function upgradeNotionalProxy(signer: Signer) { ]); // Deploy a new router - const newRouter = await routerFactory.deploy(routerArgs, signer); + const newRouter = await routerFactory.deploy(...routerArgs); // Get the owner contract - const owner = await ethers.getSigner(await notional.owner()); + const notionalOwner = await impersonateAccount(await notional.owner()); // Upgrade the system to the new router - await notional.connect(owner).upgradeTo(newRouter); + + const fundingValue = ethers.utils.parseEther("1"); + await signer.sendTransaction({ to: await notionalOwner.getAddress(), value: fundingValue }); + + console.log("Upgrading to", newRouter.address); + await notional.connect(notionalOwner).upgradeTo(newRouter.address); } /** From 508e9b9c887f412949b242384cf3fabb9f16bb92 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 27 Apr 2022 10:15:08 +0800 Subject: [PATCH 028/120] Additional comment in failing mint test --- hardhat.config.ts | 2 +- test/integration/notionalTradeModule.spec.ts | 29 ++++++++++++++------ 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/hardhat.config.ts b/hardhat.config.ts index f4cb1f951..25482050e 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -12,7 +12,7 @@ import "./tasks"; const forkingConfig = { url: `https://eth-mainnet.alchemyapi.io/v2/${process.env.ALCHEMY_TOKEN}`, - blockNumber: 14634000, + blockNumber: 14663600, }; const mochaConfig = { diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 72d360012..eac856bb4 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -384,8 +384,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await upgradeNotionalProxy(owner.wallet); }); it("mint works", async () => { - const depositAmountExternal = ethers.utils.parseEther("1"); - const fCashAmount = ethers.utils.parseEther("1"); + // No matter how high I set the depositAmoutnExternal get 'Insufficient deposit' revertion from Notional address. + // (If I set it below the fCash amoutn I get a transfer failed exception from the DAI contract instead, which is to be expected. + const depositAmountExternal = ethers.utils.parseEther("2"); + const fCashAmount = ethers.utils.parseUnits("1", 8); const receiver = owner.address; const minImpliedRate = 0; const useUnderlying = true; @@ -393,13 +395,24 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await dai .connect(owner.wallet) .approve(wrappedFCashInstance.address, depositAmountExternal); - await wrappedFCashInstance.mint( - depositAmountExternal, - fCashAmount, - receiver, - minImpliedRate, - useUnderlying, + + // Double check we have enough dai + const balanceBefore = await dai.balanceOf(owner.address); + console.log("Dai balance", ethers.utils.formatEther(balanceBefore)); + expect(balanceBefore).to.be.gte(depositAmountExternal); + + // Double check we have approved enough + const allowanceBefore = await dai.allowance( + owner.address, + wrappedFCashInstance.address, ); + console.log("Allowance", ethers.utils.formatEther(allowanceBefore)); + expect(allowanceBefore).to.be.gte(depositAmountExternal); + + // Mint fcash (reverting) + await wrappedFCashInstance + .connect(owner.wallet) + .mint(depositAmountExternal, fCashAmount, receiver, minImpliedRate, useUnderlying); }); }); }); From eafb521bd630e4048cfc9ec82156a42701a6ad84 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 27 Apr 2022 10:24:41 +0800 Subject: [PATCH 029/120] Log out selected maturity in test --- test/integration/notionalTradeModule.spec.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index eac856bb4..e30c54b7e 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -338,6 +338,8 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { beforeEach(async () => { const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); maturity = activeMarkets[0].maturity; + const maturityDate = new Date(Math.floor(maturity.toNumber() * 1000)); + console.log("maturity", maturityDate.toISOString()); }); describe("Deploying WrappedfCash with beacon proxy", () => { From f2ab1a62541bc170953cefed8c914cc0ab919679 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 27 Apr 2022 20:06:32 +0800 Subject: [PATCH 030/120] Swap out notional compiled bytecodes to make test work --- external/abi/notional/BatchAction.json | 2 +- test/integration/notionalTradeModule.spec.ts | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/external/abi/notional/BatchAction.json b/external/abi/notional/BatchAction.json index b3a23723e..40aa3956d 100644 --- a/external/abi/notional/BatchAction.json +++ b/external/abi/notional/BatchAction.json @@ -15966,7 +15966,7 @@ ], "src": "41:24110:29" }, - "bytecode": "608060405234801561001057600080fd5b50614c12806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e36600461420f565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b7919061465e565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614383565b6101f6565b6100936100ee36600461425f565b61053e565b610093610101366004614303565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b7969594939291906146bb565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149eb565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148da565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148da565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f2f565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b62565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b62565b6102e3906020810190614596565b61ffff166102f46020830183614596565b61ffff16116103155760405162461bcd60e51b815260040161017a9061498a565b60006103246040830183614afd565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614afd565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614596565b86919089610c79565b6103b4896103a06020850185614596565b6103ad6040860186614afd565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a60408401602085016143ba565b156104b757600061042a6104216020860186614596565b61ffff16610eef565b9050600061044761043e6020870187614596565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614abb565b505050506104ef565b60006104d26104c96020860186614596565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148da565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614672565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061063590899060040161465e565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149eb565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148da565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f2f565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614596565b61ffff1661074a6040830160208401614596565b61ffff161161076b5760405162461bcd60e51b815260040161017a9061498a565b6107888761077f6040840160208501614596565b85919087610c79565b6107a4878461079a60208501856143d6565b8460400135611605565b6107d487858560608501356107bf60a08701608088016143ba565b6107cf60c0880160a089016143ba565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b734763672dEa3bF087929d5537B6BAfeB8e6938F4673244321a0C5eE55DF1F4D31c71570Cbe0236c18647301713633a1b85a4a3d2f9430C68Bd4392c4a90eA734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16735d0Df02534ab3c805c59f9cC98E282DC929821e173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f7f565b600061090285610b2b565b905061090c613f2f565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b43565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b43565b610984906040810190602001614596565b61ffff166109986040830160208401614596565b61ffff16116109b95760405162461bcd60e51b815260040161017a9061498a565b6109d6896109cd6040840160208501614596565b86919088610c79565b6109e8898561079a60208501856143d6565b60006109f760c0830183614afd565b90501115610a5e576000610a298a610a156040850160208601614596565b610a2260c0860186614afd565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a08701608088016143ba565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610aff90859060040161465e565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f7f565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610b8790869085906004016146f5565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061443c565b915050610be2565b90505b919050565b610bef613fad565b610bf7613fad565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fd5565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613fad565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a35565b60608401518451604051633643f39b60e01b8152600092734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610da9928e9290918d908d9060040161481f565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df8919061440d565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b8152734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e61908b908b9088908c908c90600401614761565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144db565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7614015565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f4361403f565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a9061491e565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac61403f565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a6c565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a90614a13565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148d1565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148d1565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c6101000151612054565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b6121a4565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e86886123a3565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125e2565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b6121a4565b60109490941b9390506114c5565b505050505050505050565b600061150b61265d565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261266a565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612680565b50505050565b60006116e38461266a565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261289b565b608086015261174b85888885611191565b5050505050505050565b6000806000806000806117666128b1565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a90565b611815613f7f565b600061181f61265d565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128be565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128dc565b9050600181511161191f579050610edb565b610aa3816129fd565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612bb5565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612bc2565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bd0565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143f5565b905060008113611b6457600080fd5b969195509350915050565b611b7761403f565b6000611b81612c07565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612c14565b9250505b6000821315611cb2576000611c9c868685612ca6565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d99565b610f7f565b8451610f7f9085611cf185610ee1565b612dd4565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e4b565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f5d565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fc8565b600286606001516005811115611dbb57fe5b141561007b57611dca86613074565b6000611ddb87600001513085612e4b565b9050611def611dea82846130b3565b61266a565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e628260000151613110565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061319b565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613231565b90506000611f90828860c0015185613257565b9050611f9e8783838861333a565b93506000611fab83613467565b90506001600160a01b0381161561203957806001600160a01b0316631d684dd2888a60000151611fde8c60400151611cf6565b8a8d60c001518b6040518763ffffffff1660e01b8152600401612006969594939291906147e8565b600060405180830381600087803b15801561202057600080fd5b505af1158015612034573d6000803e3d6000fd5b505050505b84156120495761204987866134d9565b505050509392505050565b600061205e612bb5565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a957506a7fffffffffffffffffffff8613155b6120b257600080fd5b600085121580156120cd575069ffffffffffffffffffff8513155b6120d657600080fd5b836121165766ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612130565b8054600160501b900463ffffffff16841461213057600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121b65750613fff8311155b6121bf57600080fd5b8180156121d3575082846060015161ffff16145b156121dd576116d2565b6080840151600090815b6001600160701b03198216156123585760f082901c613fff16868114801561220c5750855b1561224457506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612251575085155b156122a6576001600160f01b03198516199290921691600360fe1b8316612284576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122b25750855b1561230c576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122e657600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b8681118015612319575085155b1561232757505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121e7565b84612365575050506116d2565b6009811061237257600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124345760008a6000015182815181106123c957fe5b602002602001015190506003808111156123df57fe5b8160a0015160038111156123ef57fe5b14156123fa57600080fd5b60028160a00151600381111561240c57fe5b1415801561241c57506060810151155b1561242b5761242b8b836134f8565b506001016123ad565b5060005b8951518110156124d75760008a60000151828151811061245457fe5b602002602001015190506002600381111561246b57fe5b8160a00151600381111561247b57fe5b141561248f576080810151600090556124ce565b60018160a0015160038111156124a157fe5b14156124ba576080810151806124b78382613647565b50505b6124c681868686613778565b919650945092505b50600101612438565b50606089015160006124e76137db565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125b15760008d60200151828151811061252257fe5b6020026020010151905080606001516000141561253f57506125a9565b60028160a00151600381111561255157fe5b1415801561256f575060038160a00151600381111561256c57fe5b14155b61257857600080fd5b61258481898989613778565b919950975095506125a18184876010811061259b57fe5b01613647565b600185019450505b600101612503565b50601083111580156125c8575064ffffffffff8411155b6125d157600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561265457600160fe1b828116141561263e576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061260a565b50909392505050565b600080610edb60016137e4565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561268e57fe5b14806126a5575060048360068111156126a357fe5b145b806126bb575060068360068111156126b957fe5b145b15612787576126ca84826117be565b60608401516126d9908261289b565b60608501528351604051632128561360e11b8152600091735d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161271a918690600401614ae9565b60206040518083038186803b15801561273257600080fd5b505af4158015612746573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061276a91906143f5565b60c086015190915061277c9082610ec5565b60c0860152506116d2565b600583600681111561279557fe5b14156116d257816127bf8560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127dd5760405162461bcd60e51b815260040161017a906149b4565b60c08401516127ec908361289b565b60c085015283516040516352e73f7760e01b815260009173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f779161282d918790600401614ae9565b60206040518083038186803b15801561284557600080fd5b505af4158015612859573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061287d91906143f5565b606086015190915061288f9082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137e4565b6000620151808210156128d057600080fd5b50620151808106900390565b606060108260ff1611156128ef57600080fd5b60006128f96137db565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561292d57600080fd5b5060405190808252806020026020018201604052801561296757816020015b612954613fd5565b81526020019060019003908161294c5790505b50905060005b8560ff168110156129f357600083826010811061298657fe5b019050600083838151811061299757fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b6060820152608001919091525060010161296d565b5095945050505050565b80516000816001600160401b0381118015612a1757600080fd5b50604051908082528060200260200182016040528015612a41578160200160208202803683370190505b50905060005b82811015612a9e576000848281518110612a5d57fe5b60200260200101519050612a7e8160000151826020015183604001516137fd565b838381518110612a8a57fe5b602090810291909101015250600101612a47565b5060015b828110156116d257805b600081118015612ae45750828181518110612ac357fe5b6020026020010151836001830381518110612ada57fe5b6020026020010151115b15612bac57828181518110612af557fe5b6020026020010151836001830381518110612b0c57fe5b6020026020010151846001840381518110612b2357fe5b60200260200101858481518110612b3657fe5b6020026020010182815250828152505050848181518110612b5357fe5b6020026020010151856001830381518110612b6a57fe5b6020026020010151866001840381518110612b8157fe5b60200260200101878481518110612b9457fe5b60209081029190910101919091525260001901612aac565b50600101612aa2565b600080610edb60066137e4565b600881901c60ff9091161b90565b6000806000612bdd613858565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137e4565b600081612c2357506000610edb565b6000612c2e84613110565b90506000612c3b84613865565b9050816b019d971e4fe8401e74000001600160ff1b0381612c5857fe5b05811315612c6557600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c9a57612c9581610ee1565b612c9c565b805b9695505050505050565b6000808080600587606001516005811115612cbd57fe5b14612ccf576370a0823160e01b612cd8565b630ed1279f60e11b5b9050866020015115612cf4578651612cf1903083612e4b565b92505b8651612d01908787613886565b866020015180612d15575060008760800151115b15612d2a578651612d27903083612e4b565b91505b608087015115612d65576000612d4888612d438561266a565b611dfa565b9050612d57886080015161266a565b811315612d6357600080fd5b505b866020015115612d8657612d7c611dea83856130b3565b9350505050610aa3565b612d7c8561266a565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612dcf573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e2b57600080fd5b505af1158015612e3f573d6000803e3d6000fd5b50505050612dcf6138de565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612ec85780518252601f199092019160209182019101612ea9565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f28576040519150601f19603f3d011682016040523d82523d6000602084013e612f2d565b606091505b509150915081612f3c57600080fd5b808060200190516020811015612f5157600080fd5b50519695505050505050565b612f6561394b565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f9a918590309060009060040161487e565b600060405180830381600087803b158015612fb457600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612ffb91906148d1565b602060405180830381600087803b15801561301557600080fd5b505af1158015613029573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061304d91906143f5565b9050801561306d5760405162461bcd60e51b815260040161017a90614900565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fb457600080fd5b60008282111561310a576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61311d61394b565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061314b90869060040161465e565b60206040518083038186803b15801561316357600080fd5b505afa158015613177573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143f5565b6000806002866060015160058111156131b057fe5b14156131c8576131c1868585613958565b9050613225565b60006131d386610f3b565b90506005876060015160058111156131e757fe5b14156131ff576131f8818686613a15565b9150613223565b60018760600151600581111561321157fe5b141561007b576131f887828787613acb565b505b612c9c6103ea8261266a565b60008061323c613bc9565b6000938452602052505060409020546001600160a01b031690565b60008060006132668685613bd6565b50915091506000613275613c6c565b6001600160a01b038816600090815260208290526040812091925061329a8589610ec5565b9050806000131580156132b357506001600160601b0381105b6132bc57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061331157600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133fb5773244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a728561336f8860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161339994939291906148ab565b60206040518083038186803b1580156133b157600080fd5b505af41580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e991906143f5565b600060e0870181905261010087015290505b61343d613436866101000151613430670de0b6b3a764000061342a886134248c60400151611cf6565b90613c79565b90613cd2565b906130b3565b8290613d39565b9050613455670de0b6b3a764000061342a8486613c79565b85610100018181525050949350505050565b6000806134726128b1565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134ce576134a7613d93565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612dd4565b815151811061350657600080fd5b600082606001511161351757600080fd5b60008260000151828151811061352957fe5b602002602001015190506002600381111561354057fe5b8160a00151600381111561355057fe5b1415801561356e575060038160a00151600381111561356b57fe5b14155b61357757600080fd5b606083018051600019019052600080805b8551518110156135ea576000866000015182815181106135a457fe5b602002602001015190508281608001511180156135d1575060028160a0015160038111156135ce57fe5b14155b156135e157806080015192508193505b50600101613588565b5081841415613603575050600260a091909101526108eb565b60008560000151838151811061361557fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061365a57508151613fff10155b61366357600080fd5b816020015160001080156136805750602082015164ffffffffff10155b61368957600080fd5b816040015160001080156136a257506040820151600810155b6136ab57600080fd5b60608201516a7fffffffffffffffffffff19138015906136da575060608201516a7fffffffffffffffffffff12155b6136e357600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061378788613da0565b905084158061379557508085115b1561379e578094505b86806137ae575060008860600151125b965061ffff8616156137bf57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137f657fe5b0192915050565b6000613fff84111561380e57600080fd5b64ffffffffff83111561382057600080fd5b600882111561382e57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137e4565b60008082121561387f5761387882610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e2b57600080fd5b60006138e861406e565b3d80156138fc576020811461390557600080fd5b60019250613910565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137e4565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061398c9087906004016148d1565b602060405180830381600087803b1580156139a657600080fd5b505af11580156139ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139de91906143f5565b905080156139fe5760405162461bcd60e51b815260040161017a90614943565b47613a0981846130b3565b9350612d8f8685612d99565b6000613a35613a308560000151613a2b8561266a565b612c14565b611cf6565b9050613a3f61394b565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a71918590889060040161485b565b602060405180830381600087803b158015613a8b57600080fd5b505af1158015613a9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ac391906143f5565b509392505050565b82516000908190613ae490306370a0823160e01b612e4b565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b1891906148d1565b602060405180830381600087803b158015613b3257600080fd5b505af1158015613b46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b6a91906143f5565b90508015613b8a5760405162461bcd60e51b815260040161017a90614943565b8551600090613ba190306370a0823160e01b612e4b565b9050613bad81846130b3565b9350613bbe87600001518786612dd4565b505050949350505050565b600080610edb60036137e4565b6000806000613be485613e0d565b919450925090508084118015613bfa5750600081115b8015613c065750600083115b15613c65576000613c1686611755565b5050509150506000613c41613c386305f5e10084613c7990919063ffffffff16565b84880387613e69565b9050613c4d8482613d39565b93506001600160801b038410613c6257600080fd5b50505b9250925092565b600080610edb60116137e4565b600082613c8857506000610edb565b82820282848281613c9557fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614bbc6021913960400191505060405180910390fd5b6000808211613d28576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d3157fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137e4565b6000808260400151118015613dba57506040820151600810155b613dc357600080fd5b6040820151600210613dda57506020810151610be2565b6000613dec6001846040015103613e8b565b6020840151909150610aa3906276a70090613e0790846130b3565b90613d39565b600080600080613e1b613c6c565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261342a6301da9c00818861342489670de0b6b3a7640000613c79565b60008160011415613ea057506276a700610be2565b8160021415613eb3575062ed4e00610be2565b8160031415613ec757506301da9c00610be2565b8160041415613edb57506303b53800610be2565b8160051415613eef57506309450c00610be2565b8160061415613f03575063128a1800610be2565b8160071415613f1757506325143000610be2565b60405162461bcd60e51b815260040161017a90614963565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561401057fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f8401126140b4578081fd5b5081356001600160401b038111156140ca578182fd5b60208301915083602080830285010111156140e457600080fd5b9250929050565b600082601f8301126140fb578081fd5b815160206001600160401b038083111561411157fe5b61411e8283850201614b77565b8381528281019086840160c0808702890186018a101561413c578788fd5b875b878110156141bd5781838c031215614154578889fd5b60408051838101818110898211171561416957fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141a48286016141e4565b918101919091528552938601939181019160010161413e565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614bab565b805160ff81168114610be257600080fd5b600080600060408486031215614223578283fd5b61422c8461408c565b925060208401356001600160401b03811115614246578283fd5b614252868287016140a3565b9497909650939450505050565b600080600080600060608688031215614276578081fd5b61427f8661408c565b945060208601356001600160401b038082111561429a578283fd5b6142a689838a016140a3565b909650945060408801359150808211156142be578283fd5b818801915088601f8301126142d1578283fd5b8135818111156142df578384fd5b8960208285010111156142f0578384fd5b9699959850939650602001949392505050565b600080600060408486031215614317578283fd5b6143208461408c565b925060208401356001600160401b038082111561433b578384fd5b818601915086601f83011261434e578384fd5b81358181111561435c578485fd5b87602060c083028501011115614370578485fd5b6020830194508093505050509250925092565b600080600060408486031215614397578081fd5b6143a08461408c565b925060208401356001600160401b03811115614246578182fd5b6000602082840312156143cb578081fd5b8135610aa381614b9a565b6000602082840312156143e7578081fd5b813560078110610aa3578182fd5b600060208284031215614406578081fd5b5051919050565b6000806040838503121561441f578182fd5b82519150602083015161443181614b9a565b809150509250929050565b600060a0828403121561444d578081fd5b60405160a081018181106001600160401b038211171561446957fe5b604052825164ffffffffff81168114614480578283fd5b815260208301516001600160f81b03198116811461449c578283fd5b60208201526144ad604084016141fe565b60408201526144be606084016141f3565b60608201526144cf608084016141cc565b60808201529392505050565b600080604083850312156144ed578182fd5b82516001600160401b0380821115614503578384fd5b9084019060808287031215614516578384fd5b60405160808101818110838211171561452b57fe5b60405282518281111561453c578586fd5b614548888286016140eb565b82525060208301518281111561455c578586fd5b614568888286016140eb565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145a7578081fd5b8135610aa381614bab565b81835260006001600160fb1b038311156145ca578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561465357815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061463e57fe5b88015260c090960195908201906001016145f9565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147956101008401826145e6565b90506020860151607f198483030160a08501526147b282826145e6565b915050604086015160c0840152606086015160e084015282810360608401526147dc8185876145b2565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def90830184866145b2565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b13578283fd5b8301803591506001600160401b03821115614b2c578283fd5b60209081019250810236038213156140e457600080fd5b6000823560de19833603018112614b58578182fd5b9190910192915050565b60008235605e19833603018112614b58578182fd5b6040518181016001600160401b0381118282101715614b9257fe5b604052919050565b8015158114614ba857600080fd5b50565b61ffff81168114614ba857600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f884fe8220b7f46cc58f6be0c7ed42e9dc17ee783d51559bea0e93dbfe1fcabc64736f6c63430007060033", + "bytecode": "608060405234801561001057600080fd5b50614c35806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e366004614232565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b79190614681565b60405180910390f35b3480156100cc57600080fd5b506100936100db3660046143a6565b6101f6565b6100936100ee366004614282565b610567565b610093610101366004614326565b610697565b34801561011257600080fd5b506100aa61081d565b34801561012757600080fd5b506100aa61082c565b34801561013c57600080fd5b50610145610843565b6040516100b7969594939291906146de565b6002600a5414156101835760405162461bcd60e51b815260040161017a90614a0e565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148fd565b6101c3836108c9565b60006101d0848484610918565b90506101dc8482610ad3565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a90614a0e565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148fd565b610259836108c9565b600061026484610b54565b905060006102788583604001516000610c10565b9050610282613f52565b60005b84811015610535573686868381811061029a57fe5b90506020028101906102ac9190614b85565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b85565b6102e39060208101906145b9565b61ffff166102f460208301836145b9565b61ffff16116103155760405162461bcd60e51b815260040161017a906149ad565b60006103246040830183614b20565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614b20565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f8961038660208501856145b9565b86919089610ca2565b6103b4896103a060208501856145b9565b6103ad6040860186614b20565b8a8a610d48565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610eee90919063ffffffff16565b610f0a565b905060008113156105185761040a60408401602085016143dd565b156104e057600061042a61042160208601866145b9565b61ffff16610f18565b9050600061044761043e60208701876145b9565b61ffff16610f64565b905060006104558385610f77565b905060006305f5e100836040015112156104855761047e60016104788585610fb0565b90610eee565b905061049d565b61049a610493836001610eee565b8490610fb0565b90505b60006104b48f838c610fe89092919063ffffffff16565b9050858112156104d65760405162461bcd60e51b815260040161017a90614ade565b5050505050610518565b60006104fb6104f260208601866145b9565b61ffff166110cd565b90506105158b61050b8385610fb0565b88919060006110e0565b50505b610525858b8960006111ba565b5050600190920191506102859050565b5061053f83611435565b610550576105508387846000611442565b61055a8684610ad3565b50506001600a5550505050565b3360009081526008602052604090205460ff166105965760405162461bcd60e51b815260040161017a906148fd565b61059f856108c9565b60006105ac868686610918565b90506105b88187611524565b60405163550d065760e11b8152339063aa1a0cae906105e19083908a9088908890600401614695565b600060405180830381600087803b1580156105fb57600080fd5b505af115801561060f573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561068f57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061065e908990600401614681565b60006040518083038186803b15801561067657600080fd5b505af415801561068a573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106ba5760405162461bcd60e51b815260040161017a90614a0e565b6002600a556001600160a01b0383163314806106d557503330145b6106f15760405162461bcd60e51b815260040161017a906148fd565b6106fa836108c9565b600061070584610b54565b905061070f613f52565b60005b83811015610806573685858381811061072757fe5b905060c00201905060008211156107945785856001840381811061074757fe5b905060c00201602001602081019061075f91906145b9565b61ffff1661077360408301602084016145b9565b61ffff16116107945760405162461bcd60e51b815260040161017a906149ad565b6107b1876107a860408401602085016145b9565b85919087610ca2565b6107cd87846107c360208501856143f9565b8460400135611628565b6107fd87858560608501356107e860a08701608088016143dd565b6107f860c0880160a089016143dd565b6116fb565b50600101610712565b506108118583610ad3565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b734763672dEa3bF087929d5537B6BAfeB8e6938F4673244321a0C5eE55DF1F4D31c71570Cbe0236c18647301713633a1b85a4a3d2f9430C68Bd4392c4a90eA734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16735d0Df02534ab3c805c59f9cC98E282DC929821e173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108dc57600080fd5b6001600160a01b0381163014156108f257600080fd5b60006108fd82611778565b5050505061ffff1690508060001461091457600080fd5b5050565b610920613fa2565b600061092b85610b54565b9050610935613f52565b60006109478784604001516000610c10565b905060005b85811015610aab573687878381811061096157fe5b90506020028101906109739190614b66565b905081156109e25787876001840381811061098a57fe5b905060200281019061099c9190614b66565b6109ad9060408101906020016145b9565b61ffff166109c160408301602084016145b9565b61ffff16116109e25760405162461bcd60e51b815260040161017a906149ad565b6109ff896109f660408401602085016145b9565b86919088610ca2565b610a1189856107c360208501856143f9565b6000610a2060c0830183614b20565b90501115610a87576000610a528a610a3e60408501602086016145b9565b610a4b60c0860186614b20565b8a89610d48565b945090506000811215610a7157610a7185610a6c83610f0a565b6117e1565b6060850151610a809082610eee565b6060860152505b610aa289868660608501356107e860a08701608088016143dd565b5060010161094c565b50610ab583611435565b610ac657610ac68388836000611442565b50909150505b9392505050565b610add8183611524565b60208101516001600160f81b0319161561091457604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610b28908590600401614681565b60006040518083038186803b158015610b4057600080fd5b505af415801561068f573d6000803e3d6000fd5b610b5c613fa2565b6000610b6783611830565b9050610b72816118d1565b15610c08576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610bb09086908590600401614718565b60a06040518083038186803b158015610bc857600080fd5b505af4158015610bdc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c00919061445f565b915050610c0b565b90505b919050565b610c18613fd0565b610c20613fd0565b60ff8416610c2f579050610acc565b610c398585611922565b815260ff84166060820152826001600160401b0381118015610c5a57600080fd5b50604051908082528060200260200182016040528015610c9457816020015b610c81613ff8565b815260200190600190039081610c795790505b506020820152949350505050565b8161ffff166000108015610cbc5750613fff61ffff831611155b610cc557600080fd5b61ffff8216808552610cd890829061194b565b15610d0557610ceb838361ffff166119d5565b61010088015260e087015260408601526020850152610d23565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d52613fd0565b610d5b84611435565b15610e4b578661ffff16846060015161ffff1614610d8b5760405162461bcd60e51b815260040161017a90614a58565b60608401518451604051633643f39b60e01b8152600092734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610dd2928e9290918d908d90600401614842565b604080518083038186803b158015610de957600080fd5b505af4158015610dfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e219190614430565b90935090508015610e4557602085018051600160f81b176001600160f81b03191690525b50610ee3565b60405163b58f83ed60e01b8152734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e8a908b908b9088908c908c90600401614784565b60006040518083038186803b158015610ea257600080fd5b505af4158015610eb6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ede91908101906144fe565b925090505b965096945050505050565b81810182811215600083121514610f0457600080fd5b92915050565b6000610c0860001983611a81565b610f20614038565b6000806000610f2e85611acf565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f6c614062565b610c08826001611b92565b600080610fa88460400151610fa26402540be400610fa2878960200151611a8190919063ffffffff16565b90611c40565b949350505050565b60006305f5e10083604001511415610fc9575080610f04565b610acc6305f5e100610fa2856040015185611a8190919063ffffffff16565b600081610ff757506000610acc565b6000821361100457600080fd5b6000611017856000015161ffff16610f64565b905060038160600151600581111561102b57fe5b1415611055573483146110505760405162461bcd60e51b815260040161017a90614941565b61106c565b8451611069908290869061ffff1686611c71565b92505b600061107f866000015161ffff166110cd565b9050600061109c876000015161109487611d19565b849190611d2c565b905060006110aa8383611e1d565b60608901519091506110bc9082610eee565b606089015293505050509392505050565b6110d5614062565b610c08826000611b92565b6000826110ef57506000610fa8565b600083136110fc57600080fd5b600061110f866000015161ffff166110cd565b905060058160600151600581111561112357fe5b141561113c5785516111399061ffff1685611e4d565b93505b8060200151806111495750825b15611190578551600090611165908390889061ffff1688611c71565b90506111718282611e1d565b60608801519093506111839084610eee565b606088015250610fa89050565b61119a8185611e1d565b60808701519092506111ac9083610eee565b608087015250949350505050565b60008060008660a00151121561120d5760006111ef8760a001516104788960c001518a60400151610eee90919063ffffffff16565b121561120d5760405162461bcd60e51b815260040161017a90614a8f565b60008660800151121561125d57600061123f876080015161047889606001518a60200151610eee90919063ffffffff16565b121561125d5760405162461bcd60e51b815260040161017a90614a36565b611268868685611ed4565b60808801819052606088015191935060009161128391610eee565b905080156112f057602087015161129a9082610eee565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112e79085906148f4565b60405180910390a35b60a0870151151580611305575060c087015115155b156113ab57600061132f8860c001516104788a60a001518b60400151610eee90919063ffffffff16565b9050611344888861133f84611d19565b611f8a565b506040880181905260c0880151156113a557876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161139c91906148f4565b60405180910390a35b60019250505b81156113d8576113d886886000015161ffff1689602001518a604001518b60e001518c6101000151612077565b865160208801516114059161ffff16901515806113f85750604089015115155b879190600160fe1b6121c7565b60008760200151121561142b57602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061145186886123c6565b64ffffffffff81168c529296509094509250905061146e886118d1565b1561147857600080fd5b60ff821660408901528461149757600760ff8316111561149757600080fd5b83156114ba57602088018051600160f81b176001600160f81b03191690526114c9565b602088018051607f60f91b1690525b6114d68860800151612605565b6001600160701b031916608089015260005b83156115195760f084901c81811461150b5761150b8a826001600160ff1b6121c7565b60109490941b9390506114e8565b505050505050505050565b600061152e612680565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116338261268d565b905060008082121561164457600080fd5b600084600681111561165257fe5b141561165f5750506116f5565b600184600681111561166d57fe5b14806116845750600384600681111561168257fe5b145b1561169d5761169685878460006110e0565b90506116e9565b60028460068111156116ab57fe5b14806116c2575060048460068111156116c057fe5b145b156116d257611696858784610fe8565b60068460068111156116e057fe5b14156116e95750805b61068f858584846126a3565b50505050565b60006117068461268d565b9050600081121561171657600080fd5b821561174e5761173f856080015161047887606001518860200151610eee90919063ffffffff16565b9050600081121561174e575060005b608085015161175d90826128be565b608086015261176e858888856111ba565b5050505050505050565b6000806000806000806117896128d4565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b60008112158015611814575080611811836080015161047885606001518660200151610eee90919063ffffffff16565b12155b6109145760405162461bcd60e51b815260040161017a90614ab3565b611838613fa2565b6000611842612680565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118dd83611435565b156118fe576118eb816128e1565b835164ffffffffff16109150610c0b9050565b825164ffffffffff1615801590610c005750825164ffffffffff1611159050610c0b565b6060600061193084846128ff565b90506001815111611942579050610f04565b610acc81612a20565b6000811580159061195e5750613fff8211155b61196757600080fd5b6080830151606084015161ffff16831415611986576001915050610f04565b6001600160701b03198116156119cb5760f081901c613fff16838114156119b85750600160fe1b908116149050610f04565b5060101b6001600160801b031916611986565b5060009392505050565b60008060008060006119e5612bd8565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a51578054611a4a90600160701b900466ffffffffffffff16612be5565b9250611a66565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611ab157811580611aa3575082828281611aa057fe5b05145b611aac57600080fd5b610f04565b821580611ac6575081838281611ac357fe5b05145b610f0457600080fd5b6000806000806000611ae086612bf3565b909250905060006001600160a01b038316611b055750600090506402540be400611b87565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b4057600080fd5b505af1158015611b54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b789190614418565b905060008113611b8757600080fd5b969195509350915050565b611b9a614062565b6000611ba4612c2a565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611c1957fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c565750600160ff1b83145b15611c6057600080fd5b818381611c6957fe5b059392505050565b80600585606001516005811115611c8457fe5b1415611ca9576000611c9584610f64565b9050611ca5816000015184612c37565b9250505b6000821315611cd5576000611cbf868685612cc9565b9050856020015115611ccf578091505b50610fa8565b600385606001516005811115611ce757fe5b1415611d0457611cff84611cfa84610f0a565b612dbc565b610fa8565b8451610fa89085611d1485610f0a565b612df7565b600080821215611d2857600080fd5b5090565b600080600585606001516005811115611d4157fe5b14611d53576370a0823160e01b611d5c565b630ed1279f60e11b5b90506000611d6f86600001513084612e6e565b9050600586606001516005811115611d8357fe5b1415611daa576000611d988661ffff16610f64565b9050611da48186612f80565b50611ded565b600186606001516005811115611dbc57fe5b1415611dcc57611da48685612feb565b600286606001516005811115611dde57fe5b141561007b57611ded86613097565b6000611dfe87600001513085612e6e565b9050611e12611e0d82846130d6565b61268d565b979650505050505050565b60006305f5e10083604001511415611e36575080610f04565b6040830151610acc90610fa2846305f5e100611a81565b600081611e5c57506000610f04565b60008213611e6957600080fd5b6000611e7484610f64565b90506000611e858260000151613133565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611eb057600080fd5b81816b033b2e3c9fd0803ce800000087020181611ec957fe5b059695505050505050565b6000806000611eea866000015161ffff166110cd565b90506000611f05876080015183610fb090919063ffffffff16565b905080611f1a57600080935093505050611f82565b848015611f275750600081125b15611f5c578651611f499061ffff1687611f4084610f0a565b859291906131be565b9350611f558282611e1d565b9250611f7f565b8651611f70908390889061ffff1684611c71565b9350611f7c8285611e1d565b92505b50505b935093915050565b825160009042908290611fa09061ffff16613254565b90506000611fb3828860c001518561327a565b9050611fc18783838861335d565b93506000611fce8361348a565b90506001600160a01b0381161561205c57806001600160a01b0316631d684dd2888a600001516120018c60400151611d19565b8a8d60c001518b6040518763ffffffff1660e01b81526004016120299695949392919061480b565b600060405180830381600087803b15801561204357600080fd5b505af1158015612057573d6000803e3d6000fd5b505050505b841561206c5761206c87866134fc565b505050509392505050565b6000612081612bd8565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120cc57506a7fffffffffffffffffffff8613155b6120d557600080fd5b600085121580156120f0575069ffffffffffffffffffff8513155b6120f957600080fd5b836121395766ffffffffffffff83111561211257600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612153565b8054600160501b900463ffffffff16841461215357600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121d95750613fff8311155b6121e257600080fd5b8180156121f6575082846060015161ffff16145b15612200576116f5565b6080840151600090815b6001600160701b031982161561237b5760f082901c613fff16868114801561222f5750855b1561226757506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116f59050565b8681148015612274575085155b156122c9576001600160f01b03198516199290921691600360fe1b83166122a7576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116f5565b86811180156122d55750855b1561232f576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561230957600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116f5565b868111801561233c575085155b1561234a57505050506116f5565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b0319169060010161220a565b84612388575050506116f5565b6009811061239557600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124575760008a6000015182815181106123ec57fe5b6020026020010151905060038081111561240257fe5b8160a00151600381111561241257fe5b141561241d57600080fd5b60028160a00151600381111561242f57fe5b1415801561243f57506060810151155b1561244e5761244e8b8361351b565b506001016123d0565b5060005b8951518110156124fa5760008a60000151828151811061247757fe5b602002602001015190506002600381111561248e57fe5b8160a00151600381111561249e57fe5b14156124b2576080810151600090556124f1565b60018160a0015160038111156124c457fe5b14156124dd576080810151806124da838261366a565b50505b6124e98186868661379b565b919650945092505b5060010161245b565b506060890151600061250a6137fe565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125d45760008d60200151828151811061254557fe5b6020026020010151905080606001516000141561256257506125cc565b60028160a00151600381111561257457fe5b14158015612592575060038160a00151600381111561258f57fe5b14155b61259b57600080fd5b6125a78189898961379b565b919950975095506125c4818487601081106125be57fe5b0161366a565b600185019450505b600101612526565b50601083111580156125eb575064ffffffffff8411155b6125f457600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561267757600160fe1b8281161415612661576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061262d565b50909392505050565b600080610f046001613807565b60006001600160ff1b03821115611d2857600080fd5b60038360068111156126b157fe5b14806126c8575060048360068111156126c657fe5b145b806126de575060068360068111156126dc57fe5b145b156127aa576126ed84826117e1565b60608401516126fc90826128be565b60608501528351604051632128561360e11b8152600091735d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161273d918690600401614b0c565b60206040518083038186803b15801561275557600080fd5b505af4158015612769573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061278d9190614418565b60c086015190915061279f9082610eee565b60c0860152506116f5565b60058360068111156127b857fe5b14156116f557816127e28560c001516104788760a001518860400151610eee90919063ffffffff16565b12156128005760405162461bcd60e51b815260040161017a906149d7565b60c084015161280f90836128be565b60c085015283516040516352e73f7760e01b815260009173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f7791612850918790600401614b0c565b60206040518083038186803b15801561286857600080fd5b505af415801561287c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a09190614418565b60608601519091506128b29082610eee565b60608601525050505050565b80820382811315600083121514610f0457600080fd5b600080610f046002613807565b6000620151808210156128f357600080fd5b50620151808106900390565b606060108260ff16111561291257600080fd5b600061291c6137fe565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561295057600080fd5b5060405190808252806020026020018201604052801561298a57816020015b612977613ff8565b81526020019060019003908161296f5790505b50905060005b8560ff16811015612a165760008382601081106129a957fe5b01905060008383815181106129ba57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b60608201526080019190915250600101612990565b5095945050505050565b80516000816001600160401b0381118015612a3a57600080fd5b50604051908082528060200260200182016040528015612a64578160200160208202803683370190505b50905060005b82811015612ac1576000848281518110612a8057fe5b60200260200101519050612aa1816000015182602001518360400151613820565b838381518110612aad57fe5b602090810291909101015250600101612a6a565b5060015b828110156116f557805b600081118015612b075750828181518110612ae657fe5b6020026020010151836001830381518110612afd57fe5b6020026020010151115b15612bcf57828181518110612b1857fe5b6020026020010151836001830381518110612b2f57fe5b6020026020010151846001840381518110612b4657fe5b60200260200101858481518110612b5957fe5b6020026020010182815250828152505050848181518110612b7657fe5b6020026020010151856001830381518110612b8d57fe5b6020026020010151866001840381518110612ba457fe5b60200260200101878481518110612bb757fe5b60209081029190910101919091525260001901612acf565b50600101612ac5565b600080610f046006613807565b600881901c60ff9091161b90565b6000806000612c0061387b565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610f046007613807565b600081612c4657506000610f04565b6000612c5184613133565b90506000612c5e84613888565b9050816b019d971e4fe8401e74000001600160ff1b0381612c7b57fe5b05811315612c8857600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612cbd57612cb881610f0a565b612cbf565b805b9695505050505050565b6000808080600587606001516005811115612ce057fe5b14612cf2576370a0823160e01b612cfb565b630ed1279f60e11b5b9050866020015115612d17578651612d14903083612e6e565b92505b8651612d249087876138a9565b866020015180612d38575060008760800151115b15612d4d578651612d4a903083612e6e565b91505b608087015115612d88576000612d6b88612d668561268d565b611e1d565b9050612d7a886080015161268d565b811315612d8657600080fd5b505b866020015115612da957612d9f611e0d83856130d6565b9350505050610acc565b612d9f8561268d565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612df2573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e4e57600080fd5b505af1158015612e62573d6000803e3d6000fd5b50505050612df2613901565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612eeb5780518252601f199092019160209182019101612ecc565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f4b576040519150601f19603f3d011682016040523d82523d6000602084013e612f50565b606091505b509150915081612f5f57600080fd5b808060200190516020811015612f7457600080fd5b50519695505050505050565b612f8861396e565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612fbd91859030906000906004016148a1565b600060405180830381600087803b158015612fd757600080fd5b505af115801561068f573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b815260040161301e91906148f4565b602060405180830381600087803b15801561303857600080fd5b505af115801561304c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130709190614418565b905080156130905760405162461bcd60e51b815260040161017a90614923565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fd757600080fd5b60008282111561312d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610c0861314061396e565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061316e908690600401614681565b60206040518083038186803b15801561318657600080fd5b505afa15801561319a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0d9190614418565b6000806002866060015160058111156131d357fe5b14156131eb576131e486858561397b565b9050613248565b60006131f686610f64565b905060058760600151600581111561320a57fe5b14156132225761321b818686613a38565b9150613246565b60018760600151600581111561323457fe5b141561007b5761321b87828787613aee565b505b612cbf6103ea8261268d565b60008061325f613bec565b6000938452602052505060409020546001600160a01b031690565b60008060006132898685613bf9565b50915091506000613298613c8f565b6001600160a01b03881660009081526020829052604081209192506132bd8589610eee565b9050806000131580156132d657506001600160601b0381105b6132df57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061333457600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e08401516000901561341e5773244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a72856133928860400151611d19565b8860e001518961010001516040518563ffffffff1660e01b81526004016133bc94939291906148ce565b60206040518083038186803b1580156133d457600080fd5b505af41580156133e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061340c9190614418565b600060e0870181905261010087015290505b613460613459866101000151613453670de0b6b3a764000061344d886134478c60400151611d19565b90613c9c565b90613cf5565b906130d6565b8290613d5c565b9050613478670de0b6b3a764000061344d8486613c9c565b85610100018181525050949350505050565b6000806134956128d4565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134f1576134ca613db6565b6001600160a01b038086166000908152602092909252604090912054169250610c0b915050565b600092505050610c0b565b61091473cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612df7565b815151811061352957600080fd5b600082606001511161353a57600080fd5b60008260000151828151811061354c57fe5b602002602001015190506002600381111561356357fe5b8160a00151600381111561357357fe5b14158015613591575060038160a00151600381111561358e57fe5b14155b61359a57600080fd5b606083018051600019019052600080805b85515181101561360d576000866000015182815181106135c757fe5b602002602001015190508281608001511180156135f4575060028160a0015160038111156135f157fe5b14155b1561360457806080015192508193505b506001016135ab565b5081841415613626575050600260a09190910152610914565b60008560000151838151811061363857fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061367d57508151613fff10155b61368657600080fd5b816020015160001080156136a35750602082015164ffffffffff10155b6136ac57600080fd5b816040015160001080156136c557506040820151600810155b6136ce57600080fd5b60608201516a7fffffffffffffffffffff19138015906136fd575060608201516a7fffffffffffffffffffff12155b61370657600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b6000806000806137aa88613dc3565b90508415806137b857508085115b156137c1578094505b86806137d1575060008860600151125b965061ffff8616156137e257600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610f04600d5b6000620f424082601381111561381957fe5b0192915050565b6000613fff84111561383157600080fd5b64ffffffffff83111561384357600080fd5b600882111561385157600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610f04600f613807565b6000808212156138a25761389b82610f0a565b9050610c0b565b5080610c0b565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e4e57600080fd5b600061390b614091565b3d801561391f576020811461392857600080fd5b60019250613933565b60206000833e815192505b5081610914576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610f046013613807565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a75906139af9087906004016148f4565b602060405180830381600087803b1580156139c957600080fd5b505af11580156139dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a019190614418565b90508015613a215760405162461bcd60e51b815260040161017a90614966565b47613a2c81846130d6565b9350612db28685612dbc565b6000613a58613a538560000151613a4e8561268d565b612c37565b611d19565b9050613a6261396e565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a94918590889060040161487e565b602060405180830381600087803b158015613aae57600080fd5b505af1158015613ac2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ae69190614418565b509392505050565b82516000908190613b0790306370a0823160e01b612e6e565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b3b91906148f4565b602060405180830381600087803b158015613b5557600080fd5b505af1158015613b69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b8d9190614418565b90508015613bad5760405162461bcd60e51b815260040161017a90614966565b8551600090613bc490306370a0823160e01b612e6e565b9050613bd081846130d6565b9350613be187600001518786612df7565b505050949350505050565b600080610f046003613807565b6000806000613c0785613e30565b919450925090508084118015613c1d5750600081115b8015613c295750600083115b15613c88576000613c3986611778565b5050509150506000613c64613c5b6305f5e10084613c9c90919063ffffffff16565b84880387613e8c565b9050613c708482613d5c565b93506001600160801b038410613c8557600080fd5b50505b9250925092565b600080610f046011613807565b600082613cab57506000610f04565b82820282848281613cb857fe5b0414610acc5760405162461bcd60e51b8152600401808060200182810382526021815260200180614bdf6021913960400191505060405180910390fd5b6000808211613d4b576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d5457fe5b049392505050565b600082820183811015610acc576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610f046012613807565b6000808260400151118015613ddd57506040820151600810155b613de657600080fd5b6040820151600210613dfd57506020810151610c0b565b6000613e0f6001846040015103613eae565b6020840151909150610acc906276a70090613e2a90846130d6565b90613d5c565b600080600080613e3e613c8f565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610fa88261344d6301da9c00818861344789670de0b6b3a7640000613c9c565b60008160011415613ec357506276a700610c0b565b8160021415613ed6575062ed4e00610c0b565b8160031415613eea57506301da9c00610c0b565b8160041415613efe57506303b53800610c0b565b8160051415613f1257506309450c00610c0b565b8160061415613f26575063128a1800610c0b565b8160071415613f3a57506325143000610c0b565b60405162461bcd60e51b815260040161017a90614986565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561403357fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610c0b57600080fd5b60008083601f8401126140d7578081fd5b5081356001600160401b038111156140ed578182fd5b602083019150836020808302850101111561410757600080fd5b9250929050565b600082601f83011261411e578081fd5b815160206001600160401b038083111561413457fe5b6141418283850201614b9a565b8381528281019086840160c0808702890186018a101561415f578788fd5b875b878110156141e05781838c031215614177578889fd5b60408051838101818110898211171561418c57fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141c7828601614207565b9181019190915285529386019391810191600101614161565b50919998505050505050505050565b80516001600160701b031981168114610c0b57600080fd5b805160048110610c0b57600080fd5b8051610c0b81614bce565b805160ff81168114610c0b57600080fd5b600080600060408486031215614246578283fd5b61424f846140af565b925060208401356001600160401b03811115614269578283fd5b614275868287016140c6565b9497909650939450505050565b600080600080600060608688031215614299578081fd5b6142a2866140af565b945060208601356001600160401b03808211156142bd578283fd5b6142c989838a016140c6565b909650945060408801359150808211156142e1578283fd5b818801915088601f8301126142f4578283fd5b813581811115614302578384fd5b896020828501011115614313578384fd5b9699959850939650602001949392505050565b60008060006040848603121561433a578283fd5b614343846140af565b925060208401356001600160401b038082111561435e578384fd5b818601915086601f830112614371578384fd5b81358181111561437f578485fd5b87602060c083028501011115614393578485fd5b6020830194508093505050509250925092565b6000806000604084860312156143ba578081fd5b6143c3846140af565b925060208401356001600160401b03811115614269578182fd5b6000602082840312156143ee578081fd5b8135610acc81614bbd565b60006020828403121561440a578081fd5b813560078110610acc578182fd5b600060208284031215614429578081fd5b5051919050565b60008060408385031215614442578182fd5b82519150602083015161445481614bbd565b809150509250929050565b600060a08284031215614470578081fd5b60405160a081018181106001600160401b038211171561448c57fe5b604052825164ffffffffff811681146144a3578283fd5b815260208301516001600160f81b0319811681146144bf578283fd5b60208201526144d060408401614221565b60408201526144e160608401614216565b60608201526144f2608084016141ef565b60808201529392505050565b60008060408385031215614510578182fd5b82516001600160401b0380821115614526578384fd5b9084019060808287031215614539578384fd5b60405160808101818110838211171561454e57fe5b60405282518281111561455f578586fd5b61456b8882860161410e565b82525060208301518281111561457f578586fd5b61458b8882860161410e565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145ca578081fd5b8135610acc81614bce565b81835260006001600160fb1b038311156145ed578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561467657815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061466157fe5b88015260c0909601959082019060010161461c565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147b8610100840182614609565b90506020860151607f198483030160a08501526147d58282614609565b915050604086015160c0840152606086015160e084015282810360608401526147ff8185876145d5565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611e1290830184866145d5565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b36578283fd5b8301803591506001600160401b03821115614b4f578283fd5b602090810192508102360382131561410757600080fd5b6000823560de19833603018112614b7b578182fd5b9190910192915050565b60008235605e19833603018112614b7b578182fd5b6040518181016001600160401b0381118282101715614bb557fe5b604052919050565b8015158114614bcb57600080fd5b50565b61ffff81168114614bcb57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212209bd29b5891303174061353c8aa58b2b4e4610e9c4816784b642d9bd89aae5aca64736f6c63430007060033", "bytecodeSha1": "d5eb9853740b24e7c8aa2301d5ef74e768ee2bb1", "compiler": { "evm_version": "istanbul", diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index e30c54b7e..460cddd07 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -388,7 +388,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { it("mint works", async () => { // No matter how high I set the depositAmoutnExternal get 'Insufficient deposit' revertion from Notional address. // (If I set it below the fCash amoutn I get a transfer failed exception from the DAI contract instead, which is to be expected. - const depositAmountExternal = ethers.utils.parseEther("2"); + const depositAmountExternal = ethers.utils.parseEther("1"); const fCashAmount = ethers.utils.parseUnits("1", 8); const receiver = owner.address; const minImpliedRate = 0; @@ -415,6 +415,9 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await wrappedFCashInstance .connect(owner.wallet) .mint(depositAmountExternal, fCashAmount, receiver, minImpliedRate, useUnderlying); + + const wrappedFCashBalanceAfter = await wrappedFCashInstance.balanceOf(owner.address); + console.log("wrappedFCashBalanceAfter", ethers.utils.formatUnits(wrappedFCashBalanceAfter, 8)); }); }); }); From a2021519df3ab622d9eab9c8786e37e8ac663fe7 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 28 Apr 2022 13:29:51 +0800 Subject: [PATCH 031/120] Refactor wrappeFCash tests --- test/integration/notionalTradeModule.spec.ts | 133 +++++++++++++------ 1 file changed, 91 insertions(+), 42 deletions(-) diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts index 460cddd07..1f7947df2 100644 --- a/test/integration/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule.spec.ts @@ -28,6 +28,7 @@ import { } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; +import { ICErc20 } from "@typechain/ICErc20"; import { IERC20Metadata } from "@typechain/IERC20Metadata"; import { NBeaconProxy } from "@typechain/NBeaconProxy"; import { NBeaconProxy__factory } from "@typechain/factories/NBeaconProxy__factory"; @@ -51,25 +52,21 @@ async function impersonateAccount(address: string) { async function upgradeNotionalProxy(signer: Signer) { // Create these three contract factories - console.log("RouterFactory"); const routerFactory = new ethers.ContractFactory( routerArtifact["abi"], routerArtifact["bytecode"], signer, ); - console.log("ERC155Factory"); const erc1155ActionFactory = new ethers.ContractFactory( erc1155ActionArtifact["abi"], erc1155ActionArtifact["bytecode"], signer, ); - console.log("BatchActionFactory"); const batchActionFactory = new ethers.ContractFactory( batchActionArtifact["abi"], batchActionArtifact["bytecode"], signer, ); - console.log("Created factories"); // Get the current router to get current contract addresses (same as notional contract, just different abi) const router = (await ethers.getContractAt( @@ -78,12 +75,10 @@ async function upgradeNotionalProxy(signer: Signer) { )) as any; // This is the notional contract w/ notional abi - console.log("connecting to notional"); const notional = (await ethers.getContractAt( "INotionalProxy", "0x1344A36A1B56144C3Bc62E7757377D288fDE0369", )) as INotionalProxy; - console.log("connected to notional"); // Deploy the new upgraded contracts const batchAction = await batchActionFactory.deploy(); @@ -114,7 +109,6 @@ async function upgradeNotionalProxy(signer: Signer) { const fundingValue = ethers.utils.parseEther("1"); await signer.sendTransaction({ to: await notionalOwner.getAddress(), value: fundingValue }); - console.log("Upgrading to", newRouter.address); await notional.connect(notionalOwner).upgradeTo(newRouter.address); } @@ -231,6 +225,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let weth: IERC20; let dai: IERC20; let steth: IERC20; + let cDai: ICErc20; let debtIssuanceModule: DebtIssuanceModuleV2; let mockPreIssuanceHook: ManagerIssuanceHookMock; let notionalTradeModule: NotionalTradeModule; @@ -256,6 +251,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { weth = tokens.weth; steth = tokens.steth; dai = tokens.dai; + cDai = (await ethers.getContractAt("ICErc20", cdaiAddress)) as ICErc20; // Deploy WrappedfCash wrappedfCashImplementation = await deployer.external.deployWrappedfCash(notionalProxyAddress); @@ -338,8 +334,11 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { beforeEach(async () => { const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); maturity = activeMarkets[0].maturity; - const maturityDate = new Date(Math.floor(maturity.toNumber() * 1000)); - console.log("maturity", maturityDate.toISOString()); + // const maturityDate = new Date(Math.floor(maturity.toNumber() * 1000)); + // console.log("maturity", maturityDate.toISOString()); + const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); + expect(underlyingToken.tokenAddress).to.eq(ethers.utils.getAddress(dai.address)); + expect(assetToken.tokenAddress).to.eq(ethers.utils.getAddress(cDai.address)); }); describe("Deploying WrappedfCash with beacon proxy", () => { @@ -382,42 +381,92 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("When notional proxy is upgraded", () => { + let daiAmount: BigNumber; + let fCashAmount: BigNumber; + let receiver: string; + let minImpliedRate: number; beforeEach(async () => { await upgradeNotionalProxy(owner.wallet); + daiAmount = ethers.utils.parseEther("1"); + fCashAmount = ethers.utils.parseUnits("1", 8); + receiver = owner.address; + minImpliedRate = 0; + await dai.transfer(owner.address, daiAmount); }); - it("mint works", async () => { - // No matter how high I set the depositAmoutnExternal get 'Insufficient deposit' revertion from Notional address. - // (If I set it below the fCash amoutn I get a transfer failed exception from the DAI contract instead, which is to be expected. - const depositAmountExternal = ethers.utils.parseEther("1"); - const fCashAmount = ethers.utils.parseUnits("1", 8); - const receiver = owner.address; - const minImpliedRate = 0; - const useUnderlying = true; - await dai.transfer(owner.address, depositAmountExternal); - await dai - .connect(owner.wallet) - .approve(wrappedFCashInstance.address, depositAmountExternal); - - // Double check we have enough dai - const balanceBefore = await dai.balanceOf(owner.address); - console.log("Dai balance", ethers.utils.formatEther(balanceBefore)); - expect(balanceBefore).to.be.gte(depositAmountExternal); - - // Double check we have approved enough - const allowanceBefore = await dai.allowance( - owner.address, - wrappedFCashInstance.address, - ); - console.log("Allowance", ethers.utils.formatEther(allowanceBefore)); - expect(allowanceBefore).to.be.gte(depositAmountExternal); - - // Mint fcash (reverting) - await wrappedFCashInstance - .connect(owner.wallet) - .mint(depositAmountExternal, fCashAmount, receiver, minImpliedRate, useUnderlying); - - const wrappedFCashBalanceAfter = await wrappedFCashInstance.balanceOf(owner.address); - console.log("wrappedFCashBalanceAfter", ethers.utils.formatUnits(wrappedFCashBalanceAfter, 8)); + [true, false].forEach((useUnderlying) => { + describe(`when ${useUnderlying ? "" : "not"} using underlying`, () => { + async function mint() { + let inputToken: IERC20; + let depositAmountExternal: BigNumber; + if (useUnderlying) { + inputToken = dai; + depositAmountExternal = daiAmount; + } else { + await dai.connect(owner.wallet).approve(cDai.address, daiAmount); + const cDaiBalanceBefore = await cDai.balanceOf(owner.address); + await cDai.mint(daiAmount); + const cDaiBalanceAfter = await cDai.balanceOf(owner.address); + depositAmountExternal = cDaiBalanceAfter.sub(cDaiBalanceBefore); + inputToken = cDai; + } + await inputToken.connect(owner.wallet).approve(wrappedFCashInstance.address, depositAmountExternal); + const inputTokenBalanceBefore = await inputToken.balanceOf(owner.address); + const wrappedFCashBalanceBefore = await wrappedFCashInstance.balanceOf( + owner.address, + ); + const txReceipt = await wrappedFCashInstance + .connect(owner.wallet) + .mint( + depositAmountExternal, + fCashAmount, + receiver, + minImpliedRate, + useUnderlying, + ); + const wrappedFCashBalanceAfter = await wrappedFCashInstance.balanceOf( + owner.address, + ); + const inputTokenBalanceAfter = await inputToken.balanceOf(owner.address); + const inputTokenSpent = inputTokenBalanceAfter.sub(inputTokenBalanceBefore); + const wrappedFCashReceived = wrappedFCashBalanceAfter.sub( + wrappedFCashBalanceBefore, + ); + return { + wrappedFCashReceived, + depositAmountExternal, + inputTokenSpent, + txReceipt, + }; + } + it("mint works", async () => { + const { + wrappedFCashReceived, + depositAmountExternal, + inputTokenSpent, + inputToken, + } = await mint(); + expect(wrappedFCashReceived).to.eq(fCashAmount); + expect(inputTokenSpent).to.be.lte(depositAmountExternal); + }); + + it("redeem works", async () => { + const { + wrappedFCashReceived, + depositAmountExternal, + inputTokenSpent, + } = await mint(); + const maxImpliedRate = BigNumber.from(2).pow(32).sub(1); + if (useUnderlying) { + await wrappedFCashInstance + .connect(owner.wallet) + .redeemToUnderlying(wrappedFCashReceived, receiver, maxImpliedRate); + } else { + await wrappedFCashInstance + .connect(owner.wallet) + .redeemToAsset(wrappedFCashReceived, receiver, maxImpliedRate); + } + }); + }); }); }); }); From 45d5076d4f5e59ce0a9e49a8717ac7077e3c48f6 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 28 Apr 2022 20:14:06 +0800 Subject: [PATCH 032/120] Refactor and simplify integration tests --- test/integration/notionalTradeModule.spec.ts | 476 ------------------ .../notionalTradeModule.spec.ts | 169 +++++++ test/integration/notionalTradeModule/utils.ts | 160 ++++++ .../notionalTradeModule/wrappedFCash.spec.ts | 106 ++++ 4 files changed, 435 insertions(+), 476 deletions(-) delete mode 100644 test/integration/notionalTradeModule.spec.ts create mode 100644 test/integration/notionalTradeModule/notionalTradeModule.spec.ts create mode 100644 test/integration/notionalTradeModule/utils.ts create mode 100644 test/integration/notionalTradeModule/wrappedFCash.spec.ts diff --git a/test/integration/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule.spec.ts deleted file mode 100644 index 1f7947df2..000000000 --- a/test/integration/notionalTradeModule.spec.ts +++ /dev/null @@ -1,476 +0,0 @@ -import "module-alias/register"; - -import { BigNumber, Signer } from "ethers"; -import { ethers, network } from "hardhat"; - -import { Account, ForkedTokens } from "@utils/test/types"; -import DeployHelper from "@utils/deploys"; -import { ether } from "@utils/index"; -import { - cacheBeforeEach, - getAccounts, - getForkedTokens, - getRandomAccount, - getSystemFixture, - getWaffleExpect, - initializeForkedTokens, -} from "@utils/test/index"; - -import { SystemFixture } from "@utils/fixtures"; -import { - SetToken, - DebtIssuanceModuleV2, - INotionalProxy, - ManagerIssuanceHookMock, - NotionalTradeModule, - WrappedfCash, - WrappedfCashFactory, -} from "@utils/contracts"; - -import { IERC20 } from "@typechain/IERC20"; -import { ICErc20 } from "@typechain/ICErc20"; -import { IERC20Metadata } from "@typechain/IERC20Metadata"; -import { NBeaconProxy } from "@typechain/NBeaconProxy"; -import { NBeaconProxy__factory } from "@typechain/factories/NBeaconProxy__factory"; -import { NUpgradeableBeacon } from "@typechain/NUpgradeableBeacon"; -import { NUpgradeableBeacon__factory } from "@typechain/factories/NUpgradeableBeacon__factory"; -import { MAX_UINT_256 } from "@utils/constants"; - -const expect = getWaffleExpect(); - -const batchActionArtifact = require("../../external/abi/notional/BatchAction.json"); -const erc1155ActionArtifact = require("../../external/abi/notional/ERC1155Action.json"); -const routerArtifact = require("../../external/abi/notional/Router.json"); - -async function impersonateAccount(address: string) { - await network.provider.request({ - method: "hardhat_impersonateAccount", - params: [address], - }); - return ethers.provider.getSigner(address); -} - -async function upgradeNotionalProxy(signer: Signer) { - // Create these three contract factories - const routerFactory = new ethers.ContractFactory( - routerArtifact["abi"], - routerArtifact["bytecode"], - signer, - ); - const erc1155ActionFactory = new ethers.ContractFactory( - erc1155ActionArtifact["abi"], - erc1155ActionArtifact["bytecode"], - signer, - ); - const batchActionFactory = new ethers.ContractFactory( - batchActionArtifact["abi"], - batchActionArtifact["bytecode"], - signer, - ); - - // Get the current router to get current contract addresses (same as notional contract, just different abi) - const router = (await ethers.getContractAt( - routerArtifact["abi"], - "0x1344A36A1B56144C3Bc62E7757377D288fDE0369", - )) as any; - - // This is the notional contract w/ notional abi - const notional = (await ethers.getContractAt( - "INotionalProxy", - "0x1344A36A1B56144C3Bc62E7757377D288fDE0369", - )) as INotionalProxy; - - // Deploy the new upgraded contracts - const batchAction = await batchActionFactory.deploy(); - const erc1155Action = await erc1155ActionFactory.deploy(); - - // Get the current router args and replace upgraded addresses - const routerArgs = await Promise.all([ - router.GOVERNANCE(), - router.VIEWS(), - router.INITIALIZE_MARKET(), - router.NTOKEN_ACTIONS(), - batchAction.address, // upgraded - router.ACCOUNT_ACTION(), - erc1155Action.address, // upgraded - router.LIQUIDATE_CURRENCY(), - router.LIQUIDATE_FCASH(), - router.cETH(), - router.TREASURY(), - router.CALCULATION_VIEWS(), - ]); - - // Deploy a new router - const newRouter = await routerFactory.deploy(...routerArgs); - // Get the owner contract - const notionalOwner = await impersonateAccount(await notional.owner()); - // Upgrade the system to the new router - - const fundingValue = ethers.utils.parseEther("1"); - await signer.sendTransaction({ to: await notionalOwner.getAddress(), value: fundingValue }); - - await notional.connect(notionalOwner).upgradeTo(newRouter.address); -} - -/** - * Tests the icETH rebalance flow. - * - * The icETH product is a composite product composed of: - * 1. stETH - * 2. WETH - */ -describe("Notional trade module integration [ @forked-mainnet ]", () => { - const notionalProxyAddress = "0x1344a36a1b56144c3bc62e7757377d288fde0369"; - const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; - let notionalProxy: INotionalProxy; - - beforeEach(async () => { - notionalProxy = (await ethers.getContractAt( - "INotionalProxy", - notionalProxyAddress, - )) as INotionalProxy; - }); - - describe("Test notional proxy", async () => { - // // cacheBeforeEach(initialize); - // const daiCurrencyId = 2; - // it("owner should work", async () => { - // const owner = await notionalProxy.owner(); - // }); - // it("max currency id should work", async () => { - // const maxCurrencyId = await notionalProxy.getMaxCurrencyId(); - // expect(maxCurrencyId).to.eq(4); - // }); - // it("getCurrencyId should work", async () => { - // const currencyId = await notionalProxy.getCurrencyId(cdaiAddress); - // expect(currencyId).to.eq(daiCurrencyId); - // }); - // describe("When currencyId is valid", () => { - // [1, 2, 3, 4].forEach((currencyId) => { - // describe(`With currencyId: ${currencyId}`, () => { - // it("getCurrency should work", async () => { - // const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); - // const underlyingContract = (await ethers.getContractAt( - // "IERC20Metadata", - // underlyingToken.tokenAddress, - // )) as IERC20Metadata; - // const tokenSymbol = - // underlyingToken.tokenAddress == constants.AddressZero - // ? "ETH" - // : await underlyingContract.symbol(); - // console.log("Underlying token", { - // assetAddress: assetToken.tokenAddress, - // underlyingAddress: underlyingToken.tokenAddress, - // symbol: tokenSymbol, - // }); - // }); - // it("getDepositParameters should work", async () => { - // await notionalProxy.getDepositParameters(currencyId); - // }); - // it("getInitializationParameters should work", async () => { - // await notionalProxy.getInitializationParameters(currencyId); - // }); - // it("getRateStorage should work", async () => { - // await notionalProxy.getRateStorage(currencyId); - // }); - // it("getCurrencyAndRates should work", async () => { - // await notionalProxy.getCurrencyAndRates(currencyId); - // }); - // it("getActiveMarkets should work", async () => { - // const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); - // expect(activeMarkets.length).to.be.gte(2); - // }); - // describe("When the maturity is valid", () => { - // let maturity: number; - // let referenceTime: number; - // beforeEach(async () => { - // const secondsInQuarter = 3 * 30 * 24 * 60 * 60; - // const latestBlock = await ethers.provider.getBlock("latest"); - // const blockTime = latestBlock.timestamp; - // referenceTime = blockTime - (blockTime % secondsInQuarter); - // const quarters = referenceTime / secondsInQuarter; - // maturity = referenceTime + secondsInQuarter; - // }); - // it("getSettlementRate should work", async () => { - // const settlementRate = await notionalProxy.getSettlementRate(currencyId, maturity); - // expect(settlementRate.underlyingDecimals.gt(0)).to.be.true; - // }); - // it("getMarket should work", async () => { - // const marketData = await notionalProxy.getMarket(currencyId, maturity, maturity); - // expect(marketData.maturity).to.eq(maturity); - // }); - // }); - // }); - // }); - // }); - // describe("When currency id is invalid", () => { - // const invalidCurrencyId = 5; - // it("getActiveMarkets should revert correctly", async () => { - // await expect(notionalProxy.getActiveMarkets(invalidCurrencyId)).to.be.revertedWith( - // "Invalid currency id", - // ); - // }); - // }); - }); - - describe("Test WrappedfCash contract", () => { - let owner: Account; - let manager: Account; - - let deployer: DeployHelper; - - let setup: SystemFixture; - let tokens: ForkedTokens; - - let weth: IERC20; - let dai: IERC20; - let steth: IERC20; - let cDai: ICErc20; - let debtIssuanceModule: DebtIssuanceModuleV2; - let mockPreIssuanceHook: ManagerIssuanceHookMock; - let notionalTradeModule: NotionalTradeModule; - - let setToken: SetToken; - let issueQuantity: BigNumber; - - let wrappedfCashImplementation: WrappedfCash; - let wrappedfCashBeacon: NUpgradeableBeacon; - let wrappedfCashFactory: WrappedfCashFactory; - - beforeEach(async () => { - [owner, manager] = await getAccounts(); - - deployer = new DeployHelper(owner.wallet); - - setup = getSystemFixture(owner.address); - await setup.initialize(); - - // Setup ForkedTokens - await initializeForkedTokens(deployer); - tokens = getForkedTokens(); - weth = tokens.weth; - steth = tokens.steth; - dai = tokens.dai; - cDai = (await ethers.getContractAt("ICErc20", cdaiAddress)) as ICErc20; - // Deploy WrappedfCash - wrappedfCashImplementation = await deployer.external.deployWrappedfCash(notionalProxyAddress); - - wrappedfCashBeacon = await new NUpgradeableBeacon__factory(owner.wallet).deploy( - wrappedfCashImplementation.address, - ); - - wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( - wrappedfCashBeacon.address, - ); - - // Deploy DebtIssuanceModuleV2 - debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( - setup.controller.address, - ); - await setup.controller.addModule(debtIssuanceModule.address); - - // Deploy NotionalTradeModule - notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - setup.controller.address, - ); - await setup.controller.addModule(notionalTradeModule.address); - - // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization - mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); - - // Create liquidity - const ape = await getRandomAccount(); // The wallet adding initial liquidity - await weth.transfer(ape.address, ether(50)); - await steth.transfer(ape.address, ether(50000)); - - await initialize(); - }); - - async function initialize() { - // Create Set token - setToken = await setup.createSetToken( - [steth.address], - [ether(2)], - [debtIssuanceModule.address, notionalTradeModule.address], - manager.address, - ); - - // Fund owner with stETH - await tokens.steth.transfer(owner.address, ether(11000)); - - // stETH has balance rounding errors that crash DebtIssuanceModuleV2 with: - // "Invalid transfer in. Results in undercollateralization" - // > transfer quantity = 1000000000000000000 - // > stETH balanceOf after transfer = 999999999999999999 - // Transfer steth to set token to overcollaterize the position by exactly the rounding error - // Transferring 2 results in steth.balanceOf(setToken) == 1 - await tokens.steth.transfer(setToken.address, 2); - - await steth.connect(owner.wallet).approve(debtIssuanceModule.address, MAX_UINT_256); - - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, - ); - - // Issue - issueQuantity = ether(1); - - await debtIssuanceModule - .connect(owner.wallet) - .issue(setToken.address, issueQuantity, owner.address); - } - - describe("Test WrappedFCash contracts", () => { - // kAI currencyId - const currencyId = 2; - let maturity: BigNumber; - let wrappedFCashInstance: WrappedfCash; - beforeEach(async () => { - const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); - maturity = activeMarkets[0].maturity; - // const maturityDate = new Date(Math.floor(maturity.toNumber() * 1000)); - // console.log("maturity", maturityDate.toISOString()); - const { underlyingToken, assetToken } = await notionalProxy.getCurrency(currencyId); - expect(underlyingToken.tokenAddress).to.eq(ethers.utils.getAddress(dai.address)); - expect(assetToken.tokenAddress).to.eq(ethers.utils.getAddress(cDai.address)); - }); - - describe("Deploying WrappedfCash with beacon proxy", () => { - let proxyContract; - it("deployment should work", async () => { - const initializationData = wrappedfCashImplementation.interface.encodeFunctionData( - "initialize", - [currencyId, maturity], - ); - proxyContract = await new NBeaconProxy__factory(owner.wallet).deploy( - wrappedfCashBeacon.address, - initializationData, - ); - wrappedFCashInstance = wrappedfCashImplementation.attach(proxyContract.address); - }); - }); - - describe("WrappedFCashFactory", () => { - it("Can create new wrappedFCash instance", async () => { - await wrappedfCashFactory.deployWrapper(currencyId, maturity); - }); - describe("When WrappedfCash is deployed", () => { - beforeEach(async () => { - const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( - currencyId, - maturity, - ); - await wrappedfCashFactory.deployWrapper(currencyId, maturity); - wrappedFCashInstance = wrappedfCashImplementation.attach(wrappeFCashAddress); - }); - - it("getCurrencyId works correctly", async () => { - const returnedCurrencyId = await wrappedFCashInstance.getCurrencyId(); - expect(returnedCurrencyId).to.eq(currencyId); - }); - - it("getAssetToken works", async () => { - const [assetTokenAddress] = await wrappedFCashInstance.getAssetToken(); - expect(assetTokenAddress).to.eq(cdaiAddress); - }); - - describe("When notional proxy is upgraded", () => { - let daiAmount: BigNumber; - let fCashAmount: BigNumber; - let receiver: string; - let minImpliedRate: number; - beforeEach(async () => { - await upgradeNotionalProxy(owner.wallet); - daiAmount = ethers.utils.parseEther("1"); - fCashAmount = ethers.utils.parseUnits("1", 8); - receiver = owner.address; - minImpliedRate = 0; - await dai.transfer(owner.address, daiAmount); - }); - [true, false].forEach((useUnderlying) => { - describe(`when ${useUnderlying ? "" : "not"} using underlying`, () => { - async function mint() { - let inputToken: IERC20; - let depositAmountExternal: BigNumber; - if (useUnderlying) { - inputToken = dai; - depositAmountExternal = daiAmount; - } else { - await dai.connect(owner.wallet).approve(cDai.address, daiAmount); - const cDaiBalanceBefore = await cDai.balanceOf(owner.address); - await cDai.mint(daiAmount); - const cDaiBalanceAfter = await cDai.balanceOf(owner.address); - depositAmountExternal = cDaiBalanceAfter.sub(cDaiBalanceBefore); - inputToken = cDai; - } - await inputToken.connect(owner.wallet).approve(wrappedFCashInstance.address, depositAmountExternal); - const inputTokenBalanceBefore = await inputToken.balanceOf(owner.address); - const wrappedFCashBalanceBefore = await wrappedFCashInstance.balanceOf( - owner.address, - ); - const txReceipt = await wrappedFCashInstance - .connect(owner.wallet) - .mint( - depositAmountExternal, - fCashAmount, - receiver, - minImpliedRate, - useUnderlying, - ); - const wrappedFCashBalanceAfter = await wrappedFCashInstance.balanceOf( - owner.address, - ); - const inputTokenBalanceAfter = await inputToken.balanceOf(owner.address); - const inputTokenSpent = inputTokenBalanceAfter.sub(inputTokenBalanceBefore); - const wrappedFCashReceived = wrappedFCashBalanceAfter.sub( - wrappedFCashBalanceBefore, - ); - return { - wrappedFCashReceived, - depositAmountExternal, - inputTokenSpent, - txReceipt, - }; - } - it("mint works", async () => { - const { - wrappedFCashReceived, - depositAmountExternal, - inputTokenSpent, - inputToken, - } = await mint(); - expect(wrappedFCashReceived).to.eq(fCashAmount); - expect(inputTokenSpent).to.be.lte(depositAmountExternal); - }); - - it("redeem works", async () => { - const { - wrappedFCashReceived, - depositAmountExternal, - inputTokenSpent, - } = await mint(); - const maxImpliedRate = BigNumber.from(2).pow(32).sub(1); - if (useUnderlying) { - await wrappedFCashInstance - .connect(owner.wallet) - .redeemToUnderlying(wrappedFCashReceived, receiver, maxImpliedRate); - } else { - await wrappedFCashInstance - .connect(owner.wallet) - .redeemToAsset(wrappedFCashReceived, receiver, maxImpliedRate); - } - }); - }); - }); - }); - }); - }); - }); - }); -}); diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts new file mode 100644 index 000000000..cc5b3129c --- /dev/null +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -0,0 +1,169 @@ +import "module-alias/register"; + +import { BigNumber} from "ethers"; +import { ethers} from "hardhat"; + +import { Account, ForkedTokens } from "@utils/test/types"; +import DeployHelper from "@utils/deploys"; +import { ether } from "@utils/index"; +import { + getAccounts, + getForkedTokens, + getSystemFixture, + getWaffleExpect, + initializeForkedTokens, +} from "@utils/test/index"; + +import { SystemFixture } from "@utils/fixtures"; +import { + SetToken, + DebtIssuanceModuleV2, + ManagerIssuanceHookMock, + NotionalTradeModule, + WrappedfCash, +} from "@utils/contracts"; + +import { IERC20 } from "@typechain/IERC20"; +import { ICErc20 } from "@typechain/ICErc20"; +import { upgradeNotionalProxy, deployWrappedfCashInstance, mintWrappedFCash } from "./utils"; + +const expect = getWaffleExpect(); + +describe("Notional trade module integration [ @forked-mainnet ]", () => { + const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; + let owner: Account; + let manager: Account; + let tokens: ForkedTokens; + let dai: IERC20; + let cDai: ICErc20; + let deployer: DeployHelper; + let setup: SystemFixture; + + beforeEach(async () => { + [owner, manager] = await getAccounts(); + deployer = new DeployHelper(owner.wallet); + setup = getSystemFixture(owner.address); + await setup.initialize(); + + // Setup ForkedTokens + await initializeForkedTokens(deployer); + tokens = getForkedTokens(); + dai = tokens.dai; + cDai = (await ethers.getContractAt("ICErc20", cdaiAddress)) as ICErc20; + }); + + describe("When WrappedfCash is deployed", () => { + let wrappedFCashInstance: WrappedfCash; + beforeEach(async () => { + wrappedFCashInstance = await deployWrappedfCashInstance(deployer, owner.wallet, cdaiAddress); + }); + + describe("When notional proxy is upgraded", () => { + let daiAmount: BigNumber; + let fCashAmount: BigNumber; + beforeEach(async () => { + await upgradeNotionalProxy(owner.wallet); + daiAmount = ethers.utils.parseEther("1"); + fCashAmount = ethers.utils.parseUnits("1", 8); + await dai.transfer(owner.address, daiAmount); + }); + + describe("When setToken with wrappedFCash component is deployed", () => { + let debtIssuanceModule: DebtIssuanceModuleV2; + let mockPreIssuanceHook: ManagerIssuanceHookMock; + let notionalTradeModule: NotionalTradeModule; + let setToken: SetToken; + let wrappedFCashPosition: BigNumber; + + beforeEach(async () => { + // Deploy DebtIssuanceModuleV2 + debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + setup.controller.address, + ); + await setup.controller.addModule(debtIssuanceModule.address); + + // Deploy NotionalTradeModule + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization + mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); + + wrappedFCashPosition = ethers.utils.parseUnits( + "2", + await wrappedFCashInstance.decimals(), + ); + + await initialize(); + }); + + async function initialize() { + // Create Set token + setToken = await setup.createSetToken( + [wrappedFCashInstance.address], + [wrappedFCashPosition], + [debtIssuanceModule.address, notionalTradeModule.address], + manager.address, + ); + + // Fund owner with stETH + await tokens.steth.transfer(owner.address, ether(11000)); + + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + await notionalTradeModule + .connect(manager.wallet) + .initialize(setToken.address, [wrappedFCashInstance.address]); + } + + it("Should be able to issue set from wrappeFCash", async () => { + daiAmount = ethers.utils.parseEther("10"); + fCashAmount = ethers.utils.parseUnits("9", 8); + const setAmount = ethers.utils.parseEther("1"); + await dai.transfer(owner.address, daiAmount); + + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai, + wrappedFCashInstance, + true, + ); + + await wrappedFCashInstance + .connect(owner.wallet) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + await wrappedFCashInstance + .connect(owner.wallet) + .approve(setToken.address, ethers.constants.MaxUint256); + + const setBalanceBefore = await setToken.balanceOf(owner.address); + await debtIssuanceModule + .connect(owner.wallet) + .issue(setToken.address, setAmount, owner.address); + const setBalanceAfter = await setToken.balanceOf(owner.address); + + expect(setBalanceAfter.sub(setBalanceBefore)).to.eq(setAmount); + }); + }); + }); + }); +}); diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts new file mode 100644 index 000000000..ac482232e --- /dev/null +++ b/test/integration/notionalTradeModule/utils.ts @@ -0,0 +1,160 @@ +import { ethers, network } from "hardhat"; +import { BigNumber, Signer } from "ethers"; +import { INotionalProxy, WrappedfCash } from "@utils/contracts"; +import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; +import { IERC20 } from "@typechain/IERC20"; +import { ICErc20 } from "@typechain/ICErc20"; +import DeployHelper from "@utils/deploys"; +import { NUpgradeableBeacon__factory } from "@typechain/factories/NUpgradeableBeacon__factory"; + +const ROUTER_ADDRESS = "0x1344A36A1B56144C3Bc62E7757377D288fDE0369"; +const NOTIONAL_PROXY_ADDRESS = "0x1344A36A1B56144C3Bc62E7757377D288fDE0369"; +const batchActionArtifact = require("../../../external/abi/notional/BatchAction.json"); +const erc1155ActionArtifact = require("../../../external/abi/notional/ERC1155Action.json"); +const routerArtifact = require("../../../external/abi/notional/Router.json"); + +async function impersonateAccount(address: string) { + await network.provider.request({ + method: "hardhat_impersonateAccount", + params: [address], + }); + return ethers.provider.getSigner(address); +} + +export async function upgradeNotionalProxy(signer: Signer) { + // Create these three contract factories + const routerFactory = new ethers.ContractFactory( + routerArtifact["abi"], + routerArtifact["bytecode"], + signer, + ); + const erc1155ActionFactory = new ethers.ContractFactory( + erc1155ActionArtifact["abi"], + erc1155ActionArtifact["bytecode"], + signer, + ); + const batchActionFactory = new ethers.ContractFactory( + batchActionArtifact["abi"], + batchActionArtifact["bytecode"], + signer, + ); + + // Get the current router to get current contract addresses (same as notional contract, just different abi) + const router = (await ethers.getContractAt(routerArtifact["abi"], ROUTER_ADDRESS)) as any; + + // This is the notional contract w/ notional abi + const notional = (await ethers.getContractAt( + "INotionalProxy", + NOTIONAL_PROXY_ADDRESS, + )) as INotionalProxy; + + // Deploy the new upgraded contracts + const batchAction = await batchActionFactory.deploy(); + const erc1155Action = await erc1155ActionFactory.deploy(); + + // Get the current router args and replace upgraded addresses + const routerArgs = await Promise.all([ + router.GOVERNANCE(), + router.VIEWS(), + router.INITIALIZE_MARKET(), + router.NTOKEN_ACTIONS(), + batchAction.address, // upgraded + router.ACCOUNT_ACTION(), + erc1155Action.address, // upgraded + router.LIQUIDATE_CURRENCY(), + router.LIQUIDATE_FCASH(), + router.cETH(), + router.TREASURY(), + router.CALCULATION_VIEWS(), + ]); + + // Deploy a new router + const newRouter = await routerFactory.deploy(...routerArgs); + // Get the owner contract + const notionalOwner = await impersonateAccount(await notional.owner()); + // Upgrade the system to the new router + + const fundingValue = ethers.utils.parseEther("1"); + await signer.sendTransaction({ to: await notionalOwner.getAddress(), value: fundingValue }); + + await notional.connect(notionalOwner).upgradeTo(newRouter.address); +} + +export async function deployWrappedfCashInstance( + deployer: DeployHelper, + owner: SignerWithAddress, + underlyingAddress: string, + maturityIndex = 0, +) { + const notionalProxy = (await ethers.getContractAt( + "INotionalProxy", + NOTIONAL_PROXY_ADDRESS, + )) as INotionalProxy; + const currencyId = await notionalProxy.getCurrencyId(underlyingAddress); + const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); + const maturity = activeMarkets[maturityIndex].maturity; + const wrappedfCashImplementation = await deployer.external.deployWrappedfCash( + NOTIONAL_PROXY_ADDRESS, + ); + + const wrappedfCashBeacon = await new NUpgradeableBeacon__factory(owner).deploy( + wrappedfCashImplementation.address, + ); + + const wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( + wrappedfCashBeacon.address, + ); + const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( + currencyId, + maturity, + ); + await wrappedfCashFactory.deployWrapper(currencyId, maturity); + const wrappedFCashInstance = wrappedfCashImplementation.attach(wrappeFCashAddress); + return wrappedFCashInstance; +} + +export async function mintWrappedFCash( + signer: SignerWithAddress, + underlyingToken: IERC20, + underlyingTokenAmount: BigNumber, + fCashAmount: BigNumber, + assetToken: ICErc20, + wrappedFCashInstance: WrappedfCash, + useUnderlying: boolean = false, + receiver: string | undefined = undefined, + minImpliedRate: number | BigNumber = 0, +) { + let inputToken: IERC20; + let depositAmountExternal: BigNumber; + receiver = receiver ?? signer.address; + + if (useUnderlying) { + inputToken = underlyingToken; + depositAmountExternal = underlyingTokenAmount; + } else { + await underlyingToken.connect(signer).approve(assetToken.address, underlyingTokenAmount); + const assetTokenBalanceBefore = await assetToken.balanceOf(signer.address); + await assetToken.mint(underlyingTokenAmount); + const assetTokenBalanceAfter = await assetToken.balanceOf(signer.address); + depositAmountExternal = assetTokenBalanceAfter.sub(assetTokenBalanceBefore); + inputToken = assetToken; + } + + await inputToken.connect(signer).approve(wrappedFCashInstance.address, depositAmountExternal); + const inputTokenBalanceBefore = await inputToken.balanceOf(signer.address); + const wrappedFCashBalanceBefore = await wrappedFCashInstance.balanceOf(signer.address); + const txReceipt = await wrappedFCashInstance + .connect(signer) + .mint(depositAmountExternal, fCashAmount, receiver, minImpliedRate, useUnderlying); + const wrappedFCashBalanceAfter = await wrappedFCashInstance.balanceOf(signer.address); + const inputTokenBalanceAfter = await inputToken.balanceOf(signer.address); + const inputTokenSpent = inputTokenBalanceAfter.sub(inputTokenBalanceBefore); + const wrappedFCashReceived = wrappedFCashBalanceAfter.sub(wrappedFCashBalanceBefore); + return { + wrappedFCashReceived, + depositAmountExternal, + inputTokenSpent, + txReceipt, + inputToken, + }; +} diff --git a/test/integration/notionalTradeModule/wrappedFCash.spec.ts b/test/integration/notionalTradeModule/wrappedFCash.spec.ts new file mode 100644 index 000000000..a4ddf1885 --- /dev/null +++ b/test/integration/notionalTradeModule/wrappedFCash.spec.ts @@ -0,0 +1,106 @@ +import "module-alias/register"; + +import { BigNumber } from "ethers"; +import { ethers } from "hardhat"; + +import { Account, ForkedTokens } from "@utils/test/types"; +import DeployHelper from "@utils/deploys"; +import { + getAccounts, + getForkedTokens, + getWaffleExpect, + initializeForkedTokens, +} from "@utils/test/index"; + +import { WrappedfCash } from "@utils/contracts"; +import { IERC20 } from "@typechain/IERC20"; +import { ICErc20 } from "@typechain/ICErc20"; + +import { upgradeNotionalProxy, deployWrappedfCashInstance, mintWrappedFCash } from "./utils"; + +const expect = getWaffleExpect(); + +describe("Notional trade module integration [ @forked-mainnet ]", () => { + const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; + let owner: Account; + let tokens: ForkedTokens; + let dai: IERC20; + let cDai: ICErc20; + let deployer: DeployHelper; + + beforeEach(async () => { + [owner] = await getAccounts(); + deployer = new DeployHelper(owner.wallet); + // Setup ForkedTokens + await initializeForkedTokens(deployer); + tokens = getForkedTokens(); + dai = tokens.dai; + cDai = (await ethers.getContractAt("ICErc20", cdaiAddress)) as ICErc20; + }); + + describe("When WrappedfCash is deployed", () => { + let wrappedFCashInstance: WrappedfCash; + beforeEach(async () => { + wrappedFCashInstance = await deployWrappedfCashInstance(deployer, owner.wallet, cdaiAddress); + }); + + describe("When notional proxy is upgraded", () => { + let daiAmount: BigNumber; + let fCashAmount: BigNumber; + let receiver: string; + beforeEach(async () => { + await upgradeNotionalProxy(owner.wallet); + daiAmount = ethers.utils.parseEther("1"); + fCashAmount = ethers.utils.parseUnits("1", 8); + receiver = owner.address; + await dai.transfer(owner.address, daiAmount); + }); + + [true, false].forEach(useUnderlying => { + describe(`when ${useUnderlying ? "" : "not"} using underlying`, () => { + it("mint works", async () => { + const { + wrappedFCashReceived, + depositAmountExternal, + inputTokenSpent, + } = await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai, + wrappedFCashInstance, + useUnderlying, + ); + expect(wrappedFCashReceived).to.eq(fCashAmount); + expect(inputTokenSpent).to.be.lte(depositAmountExternal); + }); + + it("redeem works", async () => { + const { + wrappedFCashReceived, + } = await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai, + wrappedFCashInstance, + useUnderlying, + ); + const maxImpliedRate = BigNumber.from(2).pow(32).sub(1); + if (useUnderlying) { + await wrappedFCashInstance + .connect(owner.wallet) + .redeemToUnderlying(wrappedFCashReceived, receiver, maxImpliedRate); + } else { + await wrappedFCashInstance + .connect(owner.wallet) + .redeemToAsset(wrappedFCashReceived, receiver, maxImpliedRate); + } + }); + }); + }); + }); + }); +}); From a17294765c6a6ef8b713009b2a1cf648c2faf6ae Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 29 Apr 2022 13:18:29 +0800 Subject: [PATCH 033/120] Sell and buy trades via notional trade module are working --- .../modules/v1/NotionalTradeModule.sol | 37 +++-- .../notionalTradeModule.spec.ts | 144 +++++++++++++++++- 2 files changed, 169 insertions(+), 12 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 0de7d20a0..f6068dac8 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -109,7 +109,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } else if(fCashPositions[_setToken].contains(_receiveToken)) { - return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), _minReceiveQuantity, _minReceiveQuantity, _useUnderlying); + return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), _minReceiveQuantity, _sendQuantity, _useUnderlying); } else { revert("Neither send nor receive token is a registered fCash position"); @@ -262,8 +262,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } + function _setOperatorIfNecessary(ISetToken _setToken, IWrappedfCashComplete _fCashPosition) internal { + if(!IERC777(address(_fCashPosition)).isOperatorFor(address(this), address(_setToken))){ + bytes memory authorizeCallData = abi.encodeWithSignature( "authorizeOperator(address)", address(this)); + _setToken.invoke(address(_fCashPosition), 0, authorizeCallData); + } + } + function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _amount, bool _toUnderlying) internal returns(uint256) { if(_amount == 0) return 0; + _setOperatorIfNecessary(_setToken, _fCashPosition); // TODO: Review if this value is correct / what is max implied rate ? uint32 maxImpliedRate = type(uint32).max; @@ -309,18 +317,29 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss (paymentToken,,) = _fCashPosition.getAssetToken(); } - paymentToken.transferFrom(address(_setToken), address(this), _maxAssetAmount); + if(IERC20(paymentToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { + bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), _maxAssetAmount); + _setToken.invoke(address(paymentToken), 0, approveCallData); + } - uint256 balanceBefore = paymentToken.balanceOf(address(this)); - _fCashPosition.mint(_maxAssetAmount, uint88(_fCashAmount), address(_setToken), minImpliedRate, _useUnderlying); - assetAmountSpent = paymentToken.balanceOf(address(this)).sub(balanceBefore); - require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); + uint256 balanceBefore = paymentToken.balanceOf(address(_setToken)); + require(balanceBefore >= _maxAssetAmount, "Input token balance to low"); - if(_maxAssetAmount > assetAmountSpent) { - paymentToken.transfer(address(_setToken), _maxAssetAmount.sub(assetAmountSpent)); - } + uint256 allowanceBefore = paymentToken.allowance(address(_setToken), address(_fCashPosition)); + require(allowanceBefore >= _maxAssetAmount, "Input token allowance to low"); + bytes memory mintCallData = abi.encodeWithSignature( + "mint(uint256,uint88,address,uint32,bool)", + _maxAssetAmount, + uint88(_fCashAmount), + address(_setToken), + minImpliedRate, + _useUnderlying + ); + _setToken.invoke(address(_fCashPosition), 0, mintCallData); + assetAmountSpent = balanceBefore.sub(paymentToken.balanceOf(address(_setToken))); + require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); } function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index cc5b3129c..b16d8ceb5 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -1,7 +1,8 @@ import "module-alias/register"; -import { BigNumber} from "ethers"; -import { ethers} from "hardhat"; +import { BigNumber } from "ethers"; +import { ethers } from "hardhat"; +import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; import { Account, ForkedTokens } from "@utils/test/types"; import DeployHelper from "@utils/deploys"; @@ -132,7 +133,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .initialize(setToken.address, [wrappedFCashInstance.address]); } - it("Should be able to issue set from wrappeFCash", async () => { + it("Should be able to issue set from wrappedFCash", async () => { daiAmount = ethers.utils.parseEther("10"); fCashAmount = ethers.utils.parseUnits("9", 8); const setAmount = ethers.utils.parseEther("1"); @@ -163,6 +164,143 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(setBalanceAfter.sub(setBalanceBefore)).to.eq(setAmount); }); + describe("When initial amount of set token has been issued", () => { + beforeEach(async () => { + daiAmount = ethers.utils.parseEther("2000"); + fCashAmount = ethers.utils.parseUnits("2000", 8); + const setAmount = ethers.utils.parseEther("1000"); + await dai.transfer(owner.address, daiAmount); + + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai, + wrappedFCashInstance, + true, + ); + + await wrappedFCashInstance + .connect(owner.wallet) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + await wrappedFCashInstance + .connect(owner.wallet) + .approve(setToken.address, ethers.constants.MaxUint256); + + await debtIssuanceModule + .connect(owner.wallet) + .issue(setToken.address, setAmount, owner.address); + }); + describe("#trade", () => { + let receiverToken: IERC20; + let sendToken: IERC20; + let subjectSetToken: string; + let subjectSendToken: string; + let subjectSendQuantity: BigNumber; + let subjectReceiverToken: string; + let subjectMinReceiveQuantity: BigNumber; + let subjectUseUnderlying: boolean; + let caller: SignerWithAddress; + + beforeEach(async () => { + subjectSetToken = setToken.address; + caller = manager.wallet; + }); + + const subject = () => { + return notionalTradeModule + .connect(caller) + .trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiverToken, + subjectMinReceiveQuantity, + subjectUseUnderlying, + ); + }; + + ["buying"].forEach(tradeDirection => { + ["underlyingToken", "assetToken"].forEach(tokenType => { + describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { + beforeEach(async () => { + const underlyingTokenQuantity = ethers.utils.parseEther("1"); + const assetToken = cDai; + const underlyingToken = dai; + const otherToken = tokenType == "assetToken" ? cDai : dai; + subjectUseUnderlying = tokenType == "underlyingToken"; + subjectMinReceiveQuantity = ethers.utils.parseUnits("0.1", 8); + + sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; + const sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + subjectSendToken = sendToken.address; + + receiverToken = tradeDirection == "buying" ? wrappedFCashInstance : otherToken; + subjectReceiverToken = receiverToken.address; + + if (tradeDirection == "buying") { + if (sendTokenType == "assetToken") { + const assetTokenBalanceBefore = await otherToken.balanceOf(owner.address); + await underlyingToken + .connect(owner.wallet) + .approve(assetToken.address, underlyingTokenQuantity); + await assetToken.connect(owner.wallet).mint(underlyingTokenQuantity); + const assetTokenBalanceAfter = await otherToken.balanceOf(owner.address); + subjectSendQuantity = assetTokenBalanceAfter.sub(assetTokenBalanceBefore); + } else { + subjectSendQuantity = underlyingTokenQuantity.mul(2); + } + console.log("Sending send token to setToken"); + await sendToken + .connect(owner.wallet) + .transfer(setToken.address, subjectSendQuantity); + console.log("Done"); + const sendTokenBalance = await sendToken.balanceOf(setToken.address); + console.log( + "sendTokenBalance", + sendTokenBalance.toString(), + sendToken.address, + ); + } + }); + + it("should not revert", async () => { + await subject(); + }); + + it("setToken should receive receiver token", async () => { + const receiverTokenBalanceBefore = await receiverToken.balanceOf( + setToken.address, + ); + await subject(); + const receiverTokenBalanceAfter = await receiverToken.balanceOf( + setToken.address, + ); + expect(receiverTokenBalanceAfter.sub(receiverTokenBalanceBefore)).to.be.gte( + subjectMinReceiveQuantity, + ); + }); + + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); + }); + }); + }); + }); + }); }); }); }); From 7a69beffac2dc22b59c7c9117c5688adcf1e63fd Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 29 Apr 2022 16:39:03 +0800 Subject: [PATCH 034/120] More tests --- .../modules/v1/NotionalTradeModule.sol | 9 +-- .../notionalTradeModule.spec.ts | 81 +++++++++++++++---- 2 files changed, 67 insertions(+), 23 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index f6068dac8..756556df7 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -32,6 +32,7 @@ import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; + contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; @@ -101,7 +102,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss external nonReentrant onlyManagerAndValidSet(_setToken) - returns(uint256 receiveQuantity) + returns(uint256) { if(fCashPositions[_setToken].contains(_sendToken)) { @@ -291,7 +292,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss "" ); uint256 balanceAfter = receiveToken.balanceOf(address(_setToken)); - return balanceAfter.sub(balanceBefore); } @@ -324,11 +324,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss uint256 balanceBefore = paymentToken.balanceOf(address(_setToken)); - require(balanceBefore >= _maxAssetAmount, "Input token balance to low"); - - uint256 allowanceBefore = paymentToken.allowance(address(_setToken), address(_fCashPosition)); - require(allowanceBefore >= _maxAssetAmount, "Input token allowance to low"); - bytes memory mintCallData = abi.encodeWithSignature( "mint(uint256,uint88,address,uint32,bool)", _maxAssetAmount, diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index b16d8ceb5..40df87a4c 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -1,7 +1,7 @@ import "module-alias/register"; import { BigNumber } from "ethers"; -import { ethers } from "hardhat"; +import { ethers, network } from "hardhat"; import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; import { Account, ForkedTokens } from "@utils/test/types"; @@ -221,19 +221,34 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); }; - ["buying"].forEach(tradeDirection => { + const subjectCall = () => { + return notionalTradeModule + .connect(caller) + .callStatic.trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiverToken, + subjectMinReceiveQuantity, + subjectUseUnderlying, + ); + }; + + ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { + let sendTokenType: string; + let otherToken: IERC20; beforeEach(async () => { const underlyingTokenQuantity = ethers.utils.parseEther("1"); const assetToken = cDai; const underlyingToken = dai; - const otherToken = tokenType == "assetToken" ? cDai : dai; + otherToken = tokenType == "assetToken" ? cDai : dai; subjectUseUnderlying = tokenType == "underlyingToken"; subjectMinReceiveQuantity = ethers.utils.parseUnits("0.1", 8); sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; - const sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; subjectSendToken = sendToken.address; receiverToken = tradeDirection == "buying" ? wrappedFCashInstance : otherToken; @@ -251,24 +266,12 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } else { subjectSendQuantity = underlyingTokenQuantity.mul(2); } - console.log("Sending send token to setToken"); await sendToken .connect(owner.wallet) .transfer(setToken.address, subjectSendQuantity); - console.log("Done"); - const sendTokenBalance = await sendToken.balanceOf(setToken.address); - console.log( - "sendTokenBalance", - sendTokenBalance.toString(), - sendToken.address, - ); } }); - it("should not revert", async () => { - await subject(); - }); - it("setToken should receive receiver token", async () => { const receiverTokenBalanceBefore = await receiverToken.balanceOf( setToken.address, @@ -296,9 +299,55 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); } }); + + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf(setToken.address); + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); + + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + } else { + expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); + } + + if (tradeDirection == "buying" && tokenType == "underlyingToken") { + expect(result).to.be.eq(expectedResult); + } else { + // TODO: Review why there is some deviation in these cases + const allowedDeviationPercent = 1; + expect(result).to.be.gte(expectedResult.mul(100 - allowedDeviationPercent).div(100)); + expect(result).to.be.lte(expectedResult.mul(100 + allowedDeviationPercent).div(100)); + } + }); + + if (tradeDirection == "buying") { + describe("When sendQuantity is too low", () => { + beforeEach(() => { + subjectSendQuantity = BigNumber.from(1000); + }); + it("should revert", async () => { + const revertReason = + sendTokenType == "underlyingToken" ? "Dai/insufficient-balance" : "ERC20"; + await expect(subject()).to.be.revertedWith(revertReason); + }); + }); + } }); }); }); + + describe("When component has matured", () => { + beforeEach(async () => { + const maturity = await wrappedFCashInstance.getMaturity(); + await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); + await network.provider.send("evm_mine"); + expect(await wrappedFCashInstance.hasMatured()).to.be.true; + }); + it("should work", async () => {}); + }); }); }); }); From d5a5ea71611725afba1dcf0d74b025d8f12a14b0 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 29 Apr 2022 17:55:27 +0800 Subject: [PATCH 035/120] add check on minReceiveQuantity when redeeming --- .../modules/v1/NotionalTradeModule.sol | 9 +- .../notionalTradeModule.spec.ts | 92 +++++++++++++++---- 2 files changed, 80 insertions(+), 21 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 756556df7..fc997bda1 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -106,7 +106,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { if(fCashPositions[_setToken].contains(_sendToken)) { - return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), _sendQuantity, _useUnderlying); + return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), _sendQuantity, _minReceiveQuantity, _useUnderlying); } else if(fCashPositions[_setToken].contains(_receiveToken)) { @@ -253,7 +253,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss if(fCashPosition.hasMatured()) { uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); - _redeemFCashPosition(_setToken, fCashPosition, fCashBalance, toUnderlying); + _redeemFCashPosition(_setToken, fCashPosition, fCashBalance, 0, toUnderlying); if(_setToken.isComponent(address(fCashPosition))) { _setToken.removeComponent(address(fCashPosition)); } @@ -270,7 +270,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } - function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _amount, bool _toUnderlying) internal returns(uint256) { + function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _amount, uint256 _minReceiveQuantity, bool _toUnderlying) internal returns(uint256 receivedQuantity) { if(_amount == 0) return 0; _setOperatorIfNecessary(_setToken, _fCashPosition); @@ -292,7 +292,8 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss "" ); uint256 balanceAfter = receiveToken.balanceOf(address(_setToken)); - return balanceAfter.sub(balanceBefore); + receivedQuantity = balanceAfter.sub(balanceBefore); + require(receivedQuantity >= _minReceiveQuantity, "Not enough received quantity"); } diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 40df87a4c..6d4124d21 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -243,9 +243,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const underlyingTokenQuantity = ethers.utils.parseEther("1"); const assetToken = cDai; const underlyingToken = dai; + const fTokenQuantity = ethers.utils.parseUnits("1", 8); + otherToken = tokenType == "assetToken" ? cDai : dai; subjectUseUnderlying = tokenType == "underlyingToken"; - subjectMinReceiveQuantity = ethers.utils.parseUnits("0.1", 8); sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; @@ -255,6 +256,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { subjectReceiverToken = receiverToken.address; if (tradeDirection == "buying") { + subjectMinReceiveQuantity = fTokenQuantity; if (sendTokenType == "assetToken") { const assetTokenBalanceBefore = await otherToken.balanceOf(owner.address); await underlyingToken @@ -264,11 +266,18 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const assetTokenBalanceAfter = await otherToken.balanceOf(owner.address); subjectSendQuantity = assetTokenBalanceAfter.sub(assetTokenBalanceBefore); } else { - subjectSendQuantity = underlyingTokenQuantity.mul(2); + subjectSendQuantity = underlyingTokenQuantity; } await sendToken .connect(owner.wallet) .transfer(setToken.address, subjectSendQuantity); + } else { + subjectSendQuantity = fTokenQuantity; + if (tokenType == "assetToken") { + subjectMinReceiveQuantity = ethers.utils.parseUnits("0.4", 8); + } else { + subjectMinReceiveQuantity = ethers.utils.parseEther("0.9"); + } } }); @@ -313,14 +322,14 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); } - if (tradeDirection == "buying" && tokenType == "underlyingToken") { - expect(result).to.be.eq(expectedResult); - } else { - // TODO: Review why there is some deviation in these cases - const allowedDeviationPercent = 1; - expect(result).to.be.gte(expectedResult.mul(100 - allowedDeviationPercent).div(100)); - expect(result).to.be.lte(expectedResult.mul(100 + allowedDeviationPercent).div(100)); - } + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), + ); + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), + ); }); if (tradeDirection == "buying") { @@ -339,14 +348,63 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); }); - describe("When component has matured", () => { - beforeEach(async () => { - const maturity = await wrappedFCashInstance.getMaturity(); - await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); - await network.provider.send("evm_mine"); - expect(await wrappedFCashInstance.hasMatured()).to.be.true; + describe("#moduleIssue/RedeemHook", () => { + ["issue", "redeem"].forEach(triggerAction => { + describe(`When set token is ${triggerAction}ed`, () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(async () => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + + if (triggerAction == "redeem") { + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else { + await wrappedFCashInstance + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + }); + describe("When component has matured", () => { + let snapshotId: string; + beforeEach(async () => { + snapshotId = await network.provider.send("evm_snapshot", []); + const maturity = await wrappedFCashInstance.getMaturity(); + console.log("Setting timeblock to after maturity"); + await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); + await network.provider.send("evm_mine"); + expect(await wrappedFCashInstance.hasMatured()).to.be.true; + }); + afterEach(async () => { + await network.provider.send("evm_revert", [snapshotId]); + }); + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } + }; + + it("should not revert", async () => { + await subject(); + }); + }); + }); }); - it("should work", async () => {}); }); }); }); From ad77c24eae5a3e4e57b3650d0feb6c54d4d30b74 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 30 Apr 2022 17:51:48 +0800 Subject: [PATCH 036/120] Use logic to adjust positions from trade module --- .../modules/v1/NotionalTradeModule.sol | 65 ++++++++-- .../notionalTradeModule.spec.ts | 119 ++++++++++++++++-- 2 files changed, 168 insertions(+), 16 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index fc997bda1..32355b5f8 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -32,6 +32,8 @@ import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; +import "hardhat/console.sol"; + contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; @@ -254,9 +256,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss if(fCashPosition.hasMatured()) { uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); _redeemFCashPosition(_setToken, fCashPosition, fCashBalance, 0, toUnderlying); - if(_setToken.isComponent(address(fCashPosition))) { - _setToken.removeComponent(address(fCashPosition)); - } } } @@ -284,15 +283,26 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss (receiveToken,,) = _fCashPosition.getAssetToken(); } - uint256 balanceBefore = receiveToken.balanceOf(address(_setToken)); + uint256 preTradeReceiveTokenBalance = receiveToken.balanceOf(address(_setToken)); + uint256 preTradeSendTokenBalance = _fCashPosition.balanceOf(address(_setToken)); + IERC777(address(_fCashPosition)).operatorBurn( address(_setToken), _amount, abi.encode(IWrappedfCash.RedeemOpts(_toUnderlying, false, address(_setToken), maxImpliedRate)), "" ); - uint256 balanceAfter = receiveToken.balanceOf(address(_setToken)); - receivedQuantity = balanceAfter.sub(balanceBefore); + + + (, receivedQuantity) = _updateSetTokenPositions( + _setToken, + address(_fCashPosition), + preTradeSendTokenBalance, + address(receiveToken), + preTradeReceiveTokenBalance + ); + + require(receivedQuantity >= _minReceiveQuantity, "Not enough received quantity"); } @@ -324,7 +334,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } - uint256 balanceBefore = paymentToken.balanceOf(address(_setToken)); + uint256 preTradeSendTokenBalance = paymentToken.balanceOf(address(_setToken)); + uint256 preTradeReceiveTokenBalance = _fCashPosition.balanceOf(address(_setToken)); + bytes memory mintCallData = abi.encodeWithSignature( "mint(uint256,uint88,address,uint32,bool)", _maxAssetAmount, @@ -334,7 +346,15 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss _useUnderlying ); _setToken.invoke(address(_fCashPosition), 0, mintCallData); - assetAmountSpent = balanceBefore.sub(paymentToken.balanceOf(address(_setToken))); + + (assetAmountSpent,) = _updateSetTokenPositions( + _setToken, + address(paymentToken), + preTradeSendTokenBalance, + address(_fCashPosition), + preTradeReceiveTokenBalance + ); + require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); } @@ -343,4 +363,33 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss fCashPositions[_setToken].add(_fCashPositions[i]); } } + + function _updateSetTokenPositions( + ISetToken setToken, + address sendToken, + uint256 preTradeSendTokenBalance, + address receiveToken, + uint256 preTradeReceiveTokenBalance + ) internal returns (uint256, uint256) { + console.log("_updateSetTokenPositions"); + uint256 setTotalSupply = setToken.totalSupply(); + + (uint256 currentSendTokenBalance,,) = setToken.calculateAndEditDefaultPosition( + sendToken, + setTotalSupply, + preTradeSendTokenBalance + ); + + (uint256 currentReceiveTokenBalance,,) = setToken.calculateAndEditDefaultPosition( + receiveToken, + setTotalSupply, + preTradeReceiveTokenBalance + ); + + return ( + preTradeSendTokenBalance.sub(currentSendTokenBalance), + currentReceiveTokenBalance.sub(preTradeReceiveTokenBalance) + ); + + } } diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 6d4124d21..4e1b1c37b 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -234,7 +234,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); }; - ["buying", "selling"].forEach(tradeDirection => { + [ + "buying", + "selling", + ].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; @@ -268,9 +271,19 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } else { subjectSendQuantity = underlyingTokenQuantity; } - await sendToken - .connect(owner.wallet) - .transfer(setToken.address, subjectSendQuantity); + // Apparently it is not possible to trade tokens that are not a set component + // Also sending extra tokens to the trade module might break it + // TODO: Review + await notionalTradeModule + .connect(manager.wallet) + .trade( + setToken.address, + wrappedFCashInstance.address, + fTokenQuantity.mul(2), + sendToken.address, + subjectSendQuantity, + subjectUseUnderlying, + ); } else { subjectSendQuantity = fTokenQuantity; if (tokenType == "assetToken") { @@ -332,6 +345,34 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); }); + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); + + + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); + } else { + sendTokenAmountNormalized = BigNumber.from( + Math.round(sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10), + ); + } + + expect(sendTokenAmountNormalized).to.eq(positionChange); + }); + if (tradeDirection == "buying") { describe("When sendQuantity is too low", () => { beforeEach(() => { @@ -349,7 +390,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("#moduleIssue/RedeemHook", () => { - ["issue", "redeem"].forEach(triggerAction => { + [ + "issue", + "redeem" + ].forEach(triggerAction => { describe(`When set token is ${triggerAction}ed`, () => { let subjectSetToken: string; let subjectReceiver: string; @@ -362,6 +406,17 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { subjectReceiver = caller.address; if (triggerAction == "redeem") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai, + wrappedFCashInstance, + true, + ); await debtIssuanceModule .connect(owner.wallet) .issue(subjectSetToken, subjectAmount, caller.address); @@ -369,7 +424,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .connect(caller) .approve(debtIssuanceModule.address, subjectAmount); } else { - await wrappedFCashInstance + await dai.transfer(caller.address, daiAmount); + await dai.connect(caller).approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai .connect(caller) .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); } @@ -379,7 +437,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { beforeEach(async () => { snapshotId = await network.provider.send("evm_snapshot", []); const maturity = await wrappedFCashInstance.getMaturity(); - console.log("Setting timeblock to after maturity"); await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); await network.provider.send("evm_mine"); expect(await wrappedFCashInstance.hasMatured()).to.be.true; @@ -399,8 +456,54 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } }; - it("should not revert", async () => { + it("should adjust assetToken balance correctly", async () => { + const minAmountCDaiTransfered = ethers.utils.parseUnits("90", 8); + const cDaiBalanceBefore = await cDai.balanceOf(caller.address); + await subject(); + const cDaiBalanceAfter = await cDai.balanceOf(caller.address); + const amountCDaiTransfered = + triggerAction == "redeem" + ? cDaiBalanceAfter.sub(cDaiBalanceBefore) + : cDaiBalanceBefore.sub(cDaiBalanceAfter); + + expect(amountCDaiTransfered).to.be.gte(minAmountCDaiTransfered); + }); + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf(caller.address); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf(caller.address); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be.true; + await subject(); + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be.false; + }); + + it("Adds assetToken (cDai) to component list", async () => { + expect(await setToken.isComponent(cDai.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(cDai.address)).to.be.true; + }); + + it("Adds asset token to component list", async () => { + expect(await setToken.isComponent(cDai.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(cDai.address)).to.be.true; + }); + + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedFCashInstance.balanceOf(subjectSetToken); + expect(balanceBefore).to.be.gt(0); await subject(); + const balanceAfter = await wrappedFCashInstance.balanceOf(subjectSetToken); + expect(balanceAfter).to.eq(0); }); }); }); From 486b8283fab246fe3d8def43eebbddfd27035ff4 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 30 Apr 2022 19:54:12 +0800 Subject: [PATCH 037/120] Additional tests --- .../notionalTradeModule.spec.ts | 207 +++++++++++++----- 1 file changed, 151 insertions(+), 56 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 4e1b1c37b..96851aca7 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -193,12 +193,12 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .issue(setToken.address, setAmount, owner.address); }); describe("#trade", () => { - let receiverToken: IERC20; + let receiveToken: IERC20; let sendToken: IERC20; let subjectSetToken: string; let subjectSendToken: string; let subjectSendQuantity: BigNumber; - let subjectReceiverToken: string; + let subjectReceiveToken: string; let subjectMinReceiveQuantity: BigNumber; let subjectUseUnderlying: boolean; let caller: SignerWithAddress; @@ -215,7 +215,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { subjectSetToken, subjectSendToken, subjectSendQuantity, - subjectReceiverToken, + subjectReceiveToken, subjectMinReceiveQuantity, subjectUseUnderlying, ); @@ -228,19 +228,17 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { subjectSetToken, subjectSendToken, subjectSendQuantity, - subjectReceiverToken, + subjectReceiveToken, subjectMinReceiveQuantity, subjectUseUnderlying, ); }; - [ - "buying", - "selling", - ].forEach(tradeDirection => { + ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; + let receiveTokenType: string; let otherToken: IERC20; beforeEach(async () => { const underlyingTokenQuantity = ethers.utils.parseEther("1"); @@ -251,12 +249,14 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { otherToken = tokenType == "assetToken" ? cDai : dai; subjectUseUnderlying = tokenType == "underlyingToken"; + sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; subjectSendToken = sendToken.address; - receiverToken = tradeDirection == "buying" ? wrappedFCashInstance : otherToken; - subjectReceiverToken = receiverToken.address; + receiveToken = tradeDirection == "buying" ? wrappedFCashInstance : otherToken; + subjectReceiveToken = receiveToken.address; if (tradeDirection == "buying") { subjectMinReceiveQuantity = fTokenQuantity; @@ -295,14 +295,12 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); it("setToken should receive receiver token", async () => { - const receiverTokenBalanceBefore = await receiverToken.balanceOf( + const receiveTokenBalanceBefore = await receiveToken.balanceOf( setToken.address, ); await subject(); - const receiverTokenBalanceAfter = await receiverToken.balanceOf( - setToken.address, - ); - expect(receiverTokenBalanceAfter.sub(receiverTokenBalanceBefore)).to.be.gte( + const receiveTokenBalanceAfter = await receiveToken.balanceOf(setToken.address); + expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( subjectMinReceiveQuantity, ); }); @@ -345,12 +343,54 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); }); + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); + + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div(totalSetSupplyEther); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), + ); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); + it("should adjust the components position of the sendToken correctly", async () => { const positionBefore = await setToken.getDefaultPositionRealUnit( sendToken.address, ); const tradeAmount = await subjectCall(); - const sendTokenAmount = tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; await subject(); const positionAfter = await setToken.getDefaultPositionRealUnit( sendToken.address, @@ -360,13 +400,15 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const totalSetSupplyWei = await setToken.totalSupply(); const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); - let sendTokenAmountNormalized; if (sendTokenType == "underlyingToken") { sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); } else { sendTokenAmountNormalized = BigNumber.from( - Math.round(sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10), + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), ); } @@ -390,11 +432,8 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("#moduleIssue/RedeemHook", () => { - [ - "issue", - "redeem" - ].forEach(triggerAction => { - describe(`When set token is ${triggerAction}ed`, () => { + ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; let subjectAmount: BigNumber; @@ -432,6 +471,55 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); } }); + + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + dai, + daiAmount, + fCashAmount, + cDai, + wrappedFCashInstance, + true, + ); + await wrappedFCashInstance + .connect(caller) + .approve(debtIssuanceModule.address, fCashAmount); + } + expect(await wrappedFCashInstance.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedFCashInstance.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedFCashInstance.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); + describe("When component has matured", () => { let snapshotId: string; beforeEach(async () => { @@ -444,41 +532,32 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { afterEach(async () => { await network.provider.send("evm_revert", [snapshotId]); }); - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } - }; - - it("should adjust assetToken balance correctly", async () => { - const minAmountCDaiTransfered = ethers.utils.parseUnits("90", 8); - const cDaiBalanceBefore = await cDai.balanceOf(caller.address); - await subject(); - const cDaiBalanceAfter = await cDai.balanceOf(caller.address); - const amountCDaiTransfered = - triggerAction == "redeem" - ? cDaiBalanceAfter.sub(cDaiBalanceBefore) - : cDaiBalanceBefore.sub(cDaiBalanceAfter); - expect(amountCDaiTransfered).to.be.gte(minAmountCDaiTransfered); - }); + if (triggerAction != "manualTrigger") { + it("should adjust assetToken balance correctly", async () => { + const minAmountCDaiTransfered = ethers.utils.parseUnits("90", 8); + const cDaiBalanceBefore = await cDai.balanceOf(caller.address); + await subject(); + const cDaiBalanceAfter = await cDai.balanceOf(caller.address); + const amountCDaiTransfered = + triggerAction == "redeem" + ? cDaiBalanceAfter.sub(cDaiBalanceBefore) + : cDaiBalanceBefore.sub(cDaiBalanceAfter); + + expect(amountCDaiTransfered).to.be.gte(minAmountCDaiTransfered); + }); - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf(caller.address); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf(caller.address); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); - }); + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf(caller.address); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf(caller.address); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + } it("Removes wrappedFCash from component list", async () => { expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be.true; @@ -505,6 +584,22 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const balanceAfter = await wrappedFCashInstance.balanceOf(subjectSetToken); expect(balanceAfter).to.eq(0); }); + + it("Afterwards setToken should have received asset token", async () => { + const balanceBefore = await cDai.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await cDai.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it("Afterwards setToken should have positive cDai position", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + cDai.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit(cDai.address); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); }); }); }); From c6afc32ee223b0fa4c5bcedb530456678a0dc635 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 2 May 2022 14:58:41 +0800 Subject: [PATCH 038/120] Adjust trade interface to remove useUnderlying parameter --- .../modules/v1/NotionalTradeModule.sol | 84 ++++++++++++------- .../notionalTradeModule.spec.ts | 9 +- 2 files changed, 56 insertions(+), 37 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 32355b5f8..2ce2e5531 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -1,5 +1,5 @@ /* - Copyright 2021 Set Labs Inc. + Copyright 2022 Set Labs Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -98,8 +98,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss address _sendToken, uint256 _sendQuantity, address _receiveToken, - uint256 _minReceiveQuantity, - bool _useUnderlying + uint256 _minReceiveQuantity ) external nonReentrant @@ -108,11 +107,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { if(fCashPositions[_setToken].contains(_sendToken)) { - return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), _sendQuantity, _minReceiveQuantity, _useUnderlying); + return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendQuantity, _minReceiveQuantity); } else if(fCashPositions[_setToken].contains(_receiveToken)) { - return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), _minReceiveQuantity, _sendQuantity, _useUnderlying); + return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _minReceiveQuantity, _sendQuantity); } else { revert("Neither send nor receive token is a registered fCash position"); @@ -250,12 +249,14 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss bool toUnderlying = redeemToUnderlying[_setToken]; + for(uint256 i = 0; i < fCashPositionLength; i++) { IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositions[_setToken].at(i)); if(fCashPosition.hasMatured()) { + IERC20 receiveToken = _getPaymentToken(fCashPosition, toUnderlying); uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); - _redeemFCashPosition(_setToken, fCashPosition, fCashBalance, 0, toUnderlying); + _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); } } @@ -269,27 +270,32 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } - function _redeemFCashPosition(ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _amount, uint256 _minReceiveQuantity, bool _toUnderlying) internal returns(uint256 receivedQuantity) { + function _redeemFCashPosition( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition, + IERC20 _receiveToken, + uint256 _amount, + uint256 _minReceiveQuantity + ) + internal + returns(uint256 receivedQuantity) + { if(_amount == 0) return 0; _setOperatorIfNecessary(_setToken, _fCashPosition); // TODO: Review if this value is correct / what is max implied rate ? uint32 maxImpliedRate = type(uint32).max; - IERC20 receiveToken; - if(_toUnderlying) { - (receiveToken,) = _fCashPosition.getUnderlyingToken(); - } else { - (receiveToken,,) = _fCashPosition.getAssetToken(); - } - uint256 preTradeReceiveTokenBalance = receiveToken.balanceOf(address(_setToken)); + bool toUnderlying = _isUnderlying(_fCashPosition, _receiveToken); + + uint256 preTradeReceiveTokenBalance = _receiveToken.balanceOf(address(_setToken)); uint256 preTradeSendTokenBalance = _fCashPosition.balanceOf(address(_setToken)); IERC777(address(_fCashPosition)).operatorBurn( address(_setToken), _amount, - abi.encode(IWrappedfCash.RedeemOpts(_toUnderlying, false, address(_setToken), maxImpliedRate)), + abi.encode(IWrappedfCash.RedeemOpts(toUnderlying, false, address(_setToken), maxImpliedRate)), "" ); @@ -298,7 +304,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss _setToken, address(_fCashPosition), preTradeSendTokenBalance, - address(receiveToken), + address(_receiveToken), preTradeReceiveTokenBalance ); @@ -307,12 +313,36 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } + function _isUnderlying( + IWrappedfCashComplete _fCashPosition, + IERC20 _otherToken + ) internal view returns(bool isUnderlying){ + (IERC20 underlyingToken, IERC20 assetToken) = _getUnderlyingAndAssetTokens(_fCashPosition); + isUnderlying = _otherToken == underlyingToken; + if(!isUnderlying) { + require(_otherToken == assetToken, "Token is neither asset nor underlying token"); + } + } + + function _getPaymentToken( + IWrappedfCashComplete _fCashPosition, + bool _isUnderlying + ) internal view returns(IERC20 paymentToken) { + (IERC20 underlyingToken, IERC20 assetToken) = _getUnderlyingAndAssetTokens(_fCashPosition); + paymentToken = _isUnderlying ? underlyingToken : assetToken; + } + + function _getUnderlyingAndAssetTokens(IWrappedfCashComplete _fCashPosition) internal view returns(IERC20 underlyingToken, IERC20 assetToken) { + (underlyingToken,) = _fCashPosition.getUnderlyingToken(); + (assetToken,,) = _fCashPosition.getAssetToken(); + } + function _mintFCashPosition( ISetToken _setToken, IWrappedfCashComplete _fCashPosition, + IERC20 _sendToken, uint256 _fCashAmount, - uint256 _maxAssetAmount, - bool _useUnderlying + uint256 _maxAssetAmount ) internal returns(uint256 assetAmountSpent) @@ -321,20 +351,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // TODO: Review if this value is correct / what is max implied rate ? uint32 minImpliedRate = 0; - IERC20 paymentToken; - if(_useUnderlying) { - (paymentToken,) = _fCashPosition.getUnderlyingToken(); - } else { - (paymentToken,,) = _fCashPosition.getAssetToken(); - } + bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); + - if(IERC20(paymentToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { + if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), _maxAssetAmount); - _setToken.invoke(address(paymentToken), 0, approveCallData); + _setToken.invoke(address(_sendToken), 0, approveCallData); } - uint256 preTradeSendTokenBalance = paymentToken.balanceOf(address(_setToken)); + uint256 preTradeSendTokenBalance = _sendToken.balanceOf(address(_setToken)); uint256 preTradeReceiveTokenBalance = _fCashPosition.balanceOf(address(_setToken)); bytes memory mintCallData = abi.encodeWithSignature( @@ -343,13 +369,13 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss uint88(_fCashAmount), address(_setToken), minImpliedRate, - _useUnderlying + fromUnderlying ); _setToken.invoke(address(_fCashPosition), 0, mintCallData); (assetAmountSpent,) = _updateSetTokenPositions( _setToken, - address(paymentToken), + address(_sendToken), preTradeSendTokenBalance, address(_fCashPosition), preTradeReceiveTokenBalance diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 96851aca7..cf2444449 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -200,7 +200,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let subjectSendQuantity: BigNumber; let subjectReceiveToken: string; let subjectMinReceiveQuantity: BigNumber; - let subjectUseUnderlying: boolean; let caller: SignerWithAddress; beforeEach(async () => { @@ -217,7 +216,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { subjectSendQuantity, subjectReceiveToken, subjectMinReceiveQuantity, - subjectUseUnderlying, ); }; @@ -230,7 +228,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { subjectSendQuantity, subjectReceiveToken, subjectMinReceiveQuantity, - subjectUseUnderlying, ); }; @@ -247,9 +244,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const fTokenQuantity = ethers.utils.parseUnits("1", 8); otherToken = tokenType == "assetToken" ? cDai : dai; - subjectUseUnderlying = tokenType == "underlyingToken"; - - sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; @@ -281,8 +275,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { wrappedFCashInstance.address, fTokenQuantity.mul(2), sendToken.address, - subjectSendQuantity, - subjectUseUnderlying, + subjectSendQuantity ); } else { subjectSendQuantity = fTokenQuantity; From 82229cd2367f7b04d070431f342cc6af23acff70 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 2 May 2022 15:46:30 +0800 Subject: [PATCH 039/120] Add docstrings for notional trade module --- .../modules/v1/NotionalTradeModule.sol | 199 ++++++++++++------ 1 file changed, 140 insertions(+), 59 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 2ce2e5531..cc2bd0827 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -32,8 +32,6 @@ import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; -import "hardhat/console.sol"; - contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; @@ -75,7 +73,8 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Mapping of SetToken to boolean indicating if SetToken is on allow list. Updateable by governance mapping(ISetToken => bool) public allowedSetTokens; - // Mapping of SetToken to fCash positions + // Mapping of SetToken to fCash positions that are availabe for trading on this fCash token and that are monitored for maturity + // TODO: Check / Compare alternative ways to handle this. Maybe remove this mapping and just use the set token components list ? mapping(ISetToken => EnumerableSet.AddressSet) private fCashPositions; // Boolean that returns if any SetToken can initialize this module. If false, then subject to allow list. Updateable by governance. @@ -93,12 +92,23 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ External Functions ============ */ + /** + * @dev MANAGER ONLY: Trades in or out of an fCash position. + * If sendToken is a registered fCash position it redeems it, if the receiveToken is an fCash position it mints it. + * The respective other token must be either the underlying or asset token of the fCash position. + * Reverts if send and receive token are not a combination of 1 registered fCash position and its underlying or asset token. + * @param _setToken Instance of the SetToken + * @param _sendToken Address of the token to trade out of ("sell") + * @param _sendQuantity Amount of send token to sell. (Fixed amount in the redeem case and max amount in mint case); + * @param _receiveToken Address of the token to trade in to ("buy") + * @param _receiveQuantity Amount of receive token to buy. (Fixed amount in the mint case and min amount in redeem case); + */ function trade( ISetToken _setToken, address _sendToken, uint256 _sendQuantity, address _receiveToken, - uint256 _minReceiveQuantity + uint256 _receiveQuantity ) external nonReentrant @@ -107,11 +117,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { if(fCashPositions[_setToken].contains(_sendToken)) { - return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendQuantity, _minReceiveQuantity); + return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendQuantity, _receiveQuantity); } else if(fCashPositions[_setToken].contains(_receiveToken)) { - return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _minReceiveQuantity, _sendQuantity); + return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _receiveQuantity, _sendQuantity); } else { revert("Neither send nor receive token is a registered fCash position"); @@ -119,10 +129,22 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } + /** + * @dev CALLABLE BY ANYBODY: Redeem all matured fCash positions of given setToken + * Redeem all fCash positions that have reached maturity for their asset token (cToken) + * This will update the set tokens components and positions (removes matured fCash positions and creates / increases positions of the asset token). + * @param _setToken Instance of the SetToken + */ function redeemMaturedPositions(ISetToken _setToken) public nonReentrant onlyValidAndInitializedSet(_setToken) { _redeemMaturedPositions(_setToken); } + /** + * @dev MANGER ONLY: Initialize given SetToken with initial list of registered fCash positions + * Redeem all fCash positions that have reached maturity for their asset token (cToken) + * @param _setToken Instance of the SetToken + * @param _fCashPositions WrappedFCash tokens to register for trading and maturity monitoring. (this will NOT add these components to the set) + */ function initialize( ISetToken _setToken, address[] calldata _fCashPositions @@ -204,15 +226,27 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss emit AnySetAllowedUpdated(_anySetAllowed); } + /** + * @dev Hook called once before setToken issuance + * @dev Ensures that no matured fCash positions are in the set when it is issued + */ function moduleIssueHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external override onlyModule(_setToken) { _redeemMaturedPositions(_setToken); } + /** + * @dev Hook called once before setToken redemption + * @dev Ensures that no matured fCash positions are in the set when it is redeemed + */ function moduleRedeemHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external override onlyModule(_setToken) { _redeemMaturedPositions(_setToken); } + /** + * @dev Hook called once for each component upon setToken issuance + * @dev Empty method added to satisfy IModuleIssuanceHook interface + */ function componentIssueHook( ISetToken _setToken, uint256 _setTokenQuantity, @@ -221,6 +255,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss ) external override onlyModule(_setToken) { } + /** + * @dev Hook called once for each component upon setToken redemption + * @dev Empty method added to satisfy IModuleIssuanceHook interface + */ function componentRedeemHook( ISetToken _setToken, uint256 _setTokenQuantity, @@ -234,6 +272,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ External Getter Functions ============ */ + /** + * @dev Get array of registered fCash positions + * @param _setToken Instance of the SetToken + */ function getFCashPositions(ISetToken _setToken) external view returns(address[] memory positions) { uint256 length = fCashPositions[_setToken].length(); for(uint256 i = 0; i < length; i++) { @@ -243,6 +285,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ Internal Functions ============ */ + /** + * @dev Redeem all matured fCash positions for the given SetToken + */ function _redeemMaturedPositions(ISetToken _setToken) internal { uint fCashPositionLength = fCashPositions[_setToken].length(); if(fCashPositionLength == 0) return; @@ -263,6 +308,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } + /** + * @dev Add this contract as an IERC777-operator for the SetTokens balance of given wrappedFCash token + * @dev Except for the typing this would also work for any ERC777 token as _fCashPosition. (not necessarily wrappedFCash) + */ function _setOperatorIfNecessary(ISetToken _setToken, IWrappedfCashComplete _fCashPosition) internal { if(!IERC777(address(_fCashPosition)).isOperatorFor(address(this), address(_setToken))){ bytes memory authorizeCallData = abi.encodeWithSignature( "authorizeOperator(address)", address(this)); @@ -270,6 +319,61 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } + /** + * @dev Redeem a given fCash position from the specified send token (either underlying or asset token) + * @dev Alo adjust the components / position of the set token accordingly + */ + function _mintFCashPosition( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition, + IERC20 _sendToken, + uint256 _fCashAmount, + uint256 _maxAssetAmount + ) + internal + returns(uint256 assetAmountSpent) + { + if(_fCashAmount == 0) return 0; + // TODO: Review if this value is correct / what is max implied rate ? + uint32 minImpliedRate = 0; + + bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); + + + if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { + bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), _maxAssetAmount); + _setToken.invoke(address(_sendToken), 0, approveCallData); + } + + + uint256 preTradeSendTokenBalance = _sendToken.balanceOf(address(_setToken)); + uint256 preTradeReceiveTokenBalance = _fCashPosition.balanceOf(address(_setToken)); + + bytes memory mintCallData = abi.encodeWithSignature( + "mint(uint256,uint88,address,uint32,bool)", + _maxAssetAmount, + uint88(_fCashAmount), + address(_setToken), + minImpliedRate, + fromUnderlying + ); + _setToken.invoke(address(_fCashPosition), 0, mintCallData); + + (assetAmountSpent,) = _updateSetTokenPositions( + _setToken, + address(_sendToken), + preTradeSendTokenBalance, + address(_fCashPosition), + preTradeReceiveTokenBalance + ); + + require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); + } + + /** + * @dev Redeem a given fCash position for the specified receive token (either underlying or asset token) + * @dev Alo adjust the components / position of the set token accordingly + */ function _redeemFCashPosition( ISetToken _setToken, IWrappedfCashComplete _fCashPosition, @@ -313,83 +417,58 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } + /** + * @dev Returns boolean indicating if given paymentToken is the underlying of the given fCashPosition + * @dev Reverts if given token is neither underlying nor asset token of the fCashPosition + */ function _isUnderlying( IWrappedfCashComplete _fCashPosition, - IERC20 _otherToken - ) internal view returns(bool isUnderlying){ + IERC20 _paymentToken + ) + internal + view + returns(bool isUnderlying) + { (IERC20 underlyingToken, IERC20 assetToken) = _getUnderlyingAndAssetTokens(_fCashPosition); - isUnderlying = _otherToken == underlyingToken; + isUnderlying = _paymentToken == underlyingToken; if(!isUnderlying) { - require(_otherToken == assetToken, "Token is neither asset nor underlying token"); + require(_paymentToken == assetToken, "Token is neither asset nor underlying token"); } } + /** + * @dev Returns underlying or asset token address for given fCashPosition based on _getUnderlying flag + */ function _getPaymentToken( IWrappedfCashComplete _fCashPosition, - bool _isUnderlying + bool _getUnderlying ) internal view returns(IERC20 paymentToken) { (IERC20 underlyingToken, IERC20 assetToken) = _getUnderlyingAndAssetTokens(_fCashPosition); - paymentToken = _isUnderlying ? underlyingToken : assetToken; + paymentToken = _getUnderlying ? underlyingToken : assetToken; } + /** + * @dev Returns both underlying and asset token address for given fCash position + */ function _getUnderlyingAndAssetTokens(IWrappedfCashComplete _fCashPosition) internal view returns(IERC20 underlyingToken, IERC20 assetToken) { (underlyingToken,) = _fCashPosition.getUnderlyingToken(); (assetToken,,) = _fCashPosition.getAssetToken(); } - function _mintFCashPosition( - ISetToken _setToken, - IWrappedfCashComplete _fCashPosition, - IERC20 _sendToken, - uint256 _fCashAmount, - uint256 _maxAssetAmount - ) - internal - returns(uint256 assetAmountSpent) - { - if(_fCashAmount == 0) return 0; - // TODO: Review if this value is correct / what is max implied rate ? - uint32 minImpliedRate = 0; - - bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); - - - if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { - bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), _maxAssetAmount); - _setToken.invoke(address(_sendToken), 0, approveCallData); - } - - - uint256 preTradeSendTokenBalance = _sendToken.balanceOf(address(_setToken)); - uint256 preTradeReceiveTokenBalance = _fCashPosition.balanceOf(address(_setToken)); - - bytes memory mintCallData = abi.encodeWithSignature( - "mint(uint256,uint88,address,uint32,bool)", - _maxAssetAmount, - uint88(_fCashAmount), - address(_setToken), - minImpliedRate, - fromUnderlying - ); - _setToken.invoke(address(_fCashPosition), 0, mintCallData); - - (assetAmountSpent,) = _updateSetTokenPositions( - _setToken, - address(_sendToken), - preTradeSendTokenBalance, - address(_fCashPosition), - preTradeReceiveTokenBalance - ); - - require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); - } + /** + * @dev Register given fCash positions to enable them to be traded and have them monitored for maturity redemption + */ function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { for(uint256 i = 0; i < _fCashPositions.length; i++) { fCashPositions[_setToken].add(_fCashPositions[i]); } } + /** + * @dev Update set token positions after mint or redeem + * @dev WARNING: This function is largely copied from the + */ function _updateSetTokenPositions( ISetToken setToken, address sendToken, @@ -397,9 +476,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss address receiveToken, uint256 preTradeReceiveTokenBalance ) internal returns (uint256, uint256) { - console.log("_updateSetTokenPositions"); + uint256 setTotalSupply = setToken.totalSupply(); + // This reverts if i try to trade a token that is not a registered component. (I.e. I just sent a lot of sendToken to the contract manually and then try to trade it. + // TODO: Review if this needs to be addressed (uint256 currentSendTokenBalance,,) = setToken.calculateAndEditDefaultPosition( sendToken, setTotalSupply, From 114fed5b0f71ab4b0b45c8fccaf0af9356179d46 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 2 May 2022 17:27:07 +0800 Subject: [PATCH 040/120] Refactoring and adding redeem / mint events to NotionalTradeModule --- .../modules/v1/NotionalTradeModule.sol | 226 +++++++++++++----- 1 file changed, 161 insertions(+), 65 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index cc2bd0827..e81b1f005 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -36,9 +36,6 @@ import "@openzeppelin/contracts/utils/EnumerableSet.sol"; contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; - /* ============ Structs ============ */ - - /* ============ Events ============ */ /** @@ -59,6 +56,39 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss bool indexed _added ); + /** + * @dev Emitted when minting new FCash + * @param _setToken SetToken on whose behalf fcash was minted + * @param _fCashPosition Address of wrappedFCash token + * @param _sendToken Address of send token used to pay for minting + * @param _fCashAmount Amount of fCash minted + * @param _sentAmount Amount of sendToken spent + */ + event FCashMinted( + ISetToken indexed _setToken, + IWrappedfCashComplete indexed _fCashPosition, + IERC20 indexed _sendToken, + uint256 _fCashAmount, + uint256 _sentAmount + ); + + /** + * @dev Emitted when redeeming new FCash + * @param _setToken SetToken on whose behalf fcash was redeemed + * @param _fCashPosition Address of wrappedFCash token + * @param _receiveToken Address of receive token used to pay for redeeming + * @param _fCashAmount Amount of fCash redeemed / burned + * @param _receivedAmount Amount of receiveToken received + */ + event FCashRedeemed( + ISetToken indexed _setToken, + IWrappedfCashComplete indexed _fCashPosition, + IERC20 indexed _receiveToken, + uint256 _fCashAmount, + uint256 _receivedAmount + ); + + /* ============ Constants ============ */ // String identifying the DebtIssuanceModule in the IntegrationRegistry. Note: Governance must add DefaultIssuanceModule as @@ -99,16 +129,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * Reverts if send and receive token are not a combination of 1 registered fCash position and its underlying or asset token. * @param _setToken Instance of the SetToken * @param _sendToken Address of the token to trade out of ("sell") - * @param _sendQuantity Amount of send token to sell. (Fixed amount in the redeem case and max amount in mint case); + * @param _sendAmount Amount of send token to sell. (Fixed amount in the redeem case and max amount in mint case); * @param _receiveToken Address of the token to trade in to ("buy") - * @param _receiveQuantity Amount of receive token to buy. (Fixed amount in the mint case and min amount in redeem case); + * @param _receiveAmount Amount of receive token to buy. (Fixed amount in the mint case and min amount in redeem case); */ function trade( ISetToken _setToken, address _sendToken, - uint256 _sendQuantity, + uint256 _sendAmount, address _receiveToken, - uint256 _receiveQuantity + uint256 _receiveAmount ) external nonReentrant @@ -117,11 +147,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { if(fCashPositions[_setToken].contains(_sendToken)) { - return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendQuantity, _receiveQuantity); + return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendAmount, _receiveAmount); } else if(fCashPositions[_setToken].contains(_receiveToken)) { - return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _receiveQuantity, _sendQuantity); + return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _receiveAmount, _sendAmount); } else { revert("Neither send nor receive token is a registered fCash position"); @@ -230,7 +260,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * @dev Hook called once before setToken issuance * @dev Ensures that no matured fCash positions are in the set when it is issued */ - function moduleIssueHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external override onlyModule(_setToken) { + function moduleIssueHook(ISetToken _setToken, uint256 /* _setTokenAmount */) external override onlyModule(_setToken) { _redeemMaturedPositions(_setToken); } @@ -238,7 +268,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * @dev Hook called once before setToken redemption * @dev Ensures that no matured fCash positions are in the set when it is redeemed */ - function moduleRedeemHook(ISetToken _setToken, uint256 /* _setTokenQuantity */) external override onlyModule(_setToken) { + function moduleRedeemHook(ISetToken _setToken, uint256 /* _setTokenAmount */) external override onlyModule(_setToken) { _redeemMaturedPositions(_setToken); } @@ -249,7 +279,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss */ function componentIssueHook( ISetToken _setToken, - uint256 _setTokenQuantity, + uint256 _setTokenAmount, IERC20 _component, bool _isEquity ) external override onlyModule(_setToken) { @@ -261,7 +291,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss */ function componentRedeemHook( ISetToken _setToken, - uint256 _setTokenQuantity, + uint256 _setTokenAmount, IERC20 _component, bool _isEquity ) external override onlyModule(_setToken) { @@ -276,7 +306,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * @dev Get array of registered fCash positions * @param _setToken Instance of the SetToken */ - function getFCashPositions(ISetToken _setToken) external view returns(address[] memory positions) { + function getFCashPositions(ISetToken _setToken) + external + view + returns(address[] memory positions) + { uint256 length = fCashPositions[_setToken].length(); for(uint256 i = 0; i < length; i++) { positions[i] = fCashPositions[_setToken].at(i); @@ -288,7 +322,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Redeem all matured fCash positions for the given SetToken */ - function _redeemMaturedPositions(ISetToken _setToken) internal { + function _redeemMaturedPositions(ISetToken _setToken) + internal + { uint fCashPositionLength = fCashPositions[_setToken].length(); if(fCashPositionLength == 0) return; @@ -308,16 +344,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } - /** - * @dev Add this contract as an IERC777-operator for the SetTokens balance of given wrappedFCash token - * @dev Except for the typing this would also work for any ERC777 token as _fCashPosition. (not necessarily wrappedFCash) - */ - function _setOperatorIfNecessary(ISetToken _setToken, IWrappedfCashComplete _fCashPosition) internal { - if(!IERC777(address(_fCashPosition)).isOperatorFor(address(this), address(_setToken))){ - bytes memory authorizeCallData = abi.encodeWithSignature( "authorizeOperator(address)", address(this)); - _setToken.invoke(address(_fCashPosition), 0, authorizeCallData); - } - } + /** * @dev Redeem a given fCash position from the specified send token (either underlying or asset token) @@ -328,38 +355,25 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss IWrappedfCashComplete _fCashPosition, IERC20 _sendToken, uint256 _fCashAmount, - uint256 _maxAssetAmount + uint256 _maxSendAmount ) internal - returns(uint256 assetAmountSpent) + returns(uint256 sentAmount) { if(_fCashAmount == 0) return 0; - // TODO: Review if this value is correct / what is max implied rate ? - uint32 minImpliedRate = 0; bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); - if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { - bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), _maxAssetAmount); - _setToken.invoke(address(_sendToken), 0, approveCallData); - } - + _approveIfNecessary(_setToken, _fCashPosition, _sendToken, _maxSendAmount); uint256 preTradeSendTokenBalance = _sendToken.balanceOf(address(_setToken)); uint256 preTradeReceiveTokenBalance = _fCashPosition.balanceOf(address(_setToken)); - bytes memory mintCallData = abi.encodeWithSignature( - "mint(uint256,uint88,address,uint32,bool)", - _maxAssetAmount, - uint88(_fCashAmount), - address(_setToken), - minImpliedRate, - fromUnderlying - ); - _setToken.invoke(address(_fCashPosition), 0, mintCallData); + _mint(_setToken, _fCashPosition, _maxSendAmount, _fCashAmount, fromUnderlying); - (assetAmountSpent,) = _updateSetTokenPositions( + + (sentAmount,) = _updateSetTokenPositions( _setToken, address(_sendToken), preTradeSendTokenBalance, @@ -367,7 +381,8 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss preTradeReceiveTokenBalance ); - require(assetAmountSpent <= _maxAssetAmount, "Overpaid"); + require(sentAmount <= _maxSendAmount, "Overpaid"); + emit FCashMinted(_setToken, _fCashPosition, _sendToken, _fCashAmount, sentAmount); } /** @@ -378,33 +393,23 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss ISetToken _setToken, IWrappedfCashComplete _fCashPosition, IERC20 _receiveToken, - uint256 _amount, - uint256 _minReceiveQuantity + uint256 _fCashAmount, + uint256 _minReceiveAmount ) internal - returns(uint256 receivedQuantity) + returns(uint256 receivedAmount) { - if(_amount == 0) return 0; + if(_fCashAmount == 0) return 0; _setOperatorIfNecessary(_setToken, _fCashPosition); - // TODO: Review if this value is correct / what is max implied rate ? - uint32 maxImpliedRate = type(uint32).max; - - bool toUnderlying = _isUnderlying(_fCashPosition, _receiveToken); - uint256 preTradeReceiveTokenBalance = _receiveToken.balanceOf(address(_setToken)); uint256 preTradeSendTokenBalance = _fCashPosition.balanceOf(address(_setToken)); - IERC777(address(_fCashPosition)).operatorBurn( - address(_setToken), - _amount, - abi.encode(IWrappedfCash.RedeemOpts(toUnderlying, false, address(_setToken), maxImpliedRate)), - "" - ); + _burn(_setToken, _fCashPosition, _fCashAmount, toUnderlying); - (, receivedQuantity) = _updateSetTokenPositions( + (, receivedAmount) = _updateSetTokenPositions( _setToken, address(_fCashPosition), preTradeSendTokenBalance, @@ -413,10 +418,93 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss ); - require(receivedQuantity >= _minReceiveQuantity, "Not enough received quantity"); + require(receivedAmount >= _minReceiveAmount, "Not enough received amount"); + emit FCashRedeemed(_setToken, _fCashPosition, _receiveToken, _fCashAmount, receivedAmount); } + /** + * @dev Add this contract as an IERC777-operator for the SetTokens balance of given wrappedFCash token + * @dev Except for the typing this would also work for any ERC777 token as _fCashPosition. (not necessarily wrappedFCash) + */ + function _setOperatorIfNecessary( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition + ) + internal + { + if(!IERC777(address(_fCashPosition)).isOperatorFor(address(this), address(_setToken))){ + bytes memory authorizeCallData = abi.encodeWithSignature( "authorizeOperator(address)", address(this)); + _setToken.invoke(address(_fCashPosition), 0, authorizeCallData); + } + } + + /** + * @dev Approve the given wrappedFCash instance to spend the setToken's sendToken + */ + function _approveIfNecessary( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition, + IERC20 _sendToken, + uint256 _maxAssetAmount + ) + internal + { + if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { + // TODO: Review if we want to only approve "_maxAssetAmount" or keep it at maxUint256 + bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), type(uint256).max); + _setToken.invoke(address(_sendToken), 0, approveCallData); + } + } + + /** + * @dev Invokes the wrappedFCash token's mint function from the setToken + */ + function _mint( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition, + uint256 _maxAssetAmount, + uint256 _fCashAmount, + bool _fromUnderlying + ) + internal + { + // TODO: Review if this value is correct / what is min implied rate ? + uint32 minImpliedRate = 0; + + bytes memory mintCallData = abi.encodeWithSignature( + "mint(uint256,uint88,address,uint32,bool)", + _maxAssetAmount, + uint88(_fCashAmount), + address(_setToken), + minImpliedRate, + _fromUnderlying + ); + _setToken.invoke(address(_fCashPosition), 0, mintCallData); + } + + /** + * @dev Uses operator rights to burn the given amount of fCash token on behalf of the setToken + */ + function _burn( + ISetToken _setToken, + IWrappedfCashComplete _fCashPosition, + uint256 _fCashAmount, + bool _toUnderlying + ) + internal + { + // TODO: Review if this value is correct / what is max implied rate ? + uint32 maxImpliedRate = type(uint32).max; + // TODO: This is copied from the notional sdk proxy. Review if this is really more efficient that just invoking "burn" through the setToken (as in the mint case + IERC777(address(_fCashPosition)).operatorBurn( + address(_setToken), + _fCashAmount, + abi.encode(IWrappedfCash.RedeemOpts(_toUnderlying, false, address(_setToken), maxImpliedRate)), + "" + ); + } + /** * @dev Returns boolean indicating if given paymentToken is the underlying of the given fCashPosition * @dev Reverts if given token is neither underlying nor asset token of the fCashPosition @@ -442,7 +530,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function _getPaymentToken( IWrappedfCashComplete _fCashPosition, bool _getUnderlying - ) internal view returns(IERC20 paymentToken) { + ) + internal + view + returns(IERC20 paymentToken) + { (IERC20 underlyingToken, IERC20 assetToken) = _getUnderlyingAndAssetTokens(_fCashPosition); paymentToken = _getUnderlying ? underlyingToken : assetToken; } @@ -450,7 +542,11 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Returns both underlying and asset token address for given fCash position */ - function _getUnderlyingAndAssetTokens(IWrappedfCashComplete _fCashPosition) internal view returns(IERC20 underlyingToken, IERC20 assetToken) { + function _getUnderlyingAndAssetTokens(IWrappedfCashComplete _fCashPosition) + internal + view + returns(IERC20 underlyingToken, IERC20 assetToken) + { (underlyingToken,) = _fCashPosition.getUnderlyingToken(); (assetToken,,) = _fCashPosition.getAssetToken(); } @@ -467,7 +563,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Update set token positions after mint or redeem - * @dev WARNING: This function is largely copied from the + * @dev WARNING: This function is largely copied from the trade module */ function _updateSetTokenPositions( ISetToken setToken, From fdc8e60aaaa362e3ad3d03aa544118a47dac23b7 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 2 May 2022 17:59:40 +0800 Subject: [PATCH 041/120] Remove unneeded wrappedFCash test --- .../notionalTradeModule/wrappedFCash.spec.ts | 106 ------------------ 1 file changed, 106 deletions(-) delete mode 100644 test/integration/notionalTradeModule/wrappedFCash.spec.ts diff --git a/test/integration/notionalTradeModule/wrappedFCash.spec.ts b/test/integration/notionalTradeModule/wrappedFCash.spec.ts deleted file mode 100644 index a4ddf1885..000000000 --- a/test/integration/notionalTradeModule/wrappedFCash.spec.ts +++ /dev/null @@ -1,106 +0,0 @@ -import "module-alias/register"; - -import { BigNumber } from "ethers"; -import { ethers } from "hardhat"; - -import { Account, ForkedTokens } from "@utils/test/types"; -import DeployHelper from "@utils/deploys"; -import { - getAccounts, - getForkedTokens, - getWaffleExpect, - initializeForkedTokens, -} from "@utils/test/index"; - -import { WrappedfCash } from "@utils/contracts"; -import { IERC20 } from "@typechain/IERC20"; -import { ICErc20 } from "@typechain/ICErc20"; - -import { upgradeNotionalProxy, deployWrappedfCashInstance, mintWrappedFCash } from "./utils"; - -const expect = getWaffleExpect(); - -describe("Notional trade module integration [ @forked-mainnet ]", () => { - const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; - let owner: Account; - let tokens: ForkedTokens; - let dai: IERC20; - let cDai: ICErc20; - let deployer: DeployHelper; - - beforeEach(async () => { - [owner] = await getAccounts(); - deployer = new DeployHelper(owner.wallet); - // Setup ForkedTokens - await initializeForkedTokens(deployer); - tokens = getForkedTokens(); - dai = tokens.dai; - cDai = (await ethers.getContractAt("ICErc20", cdaiAddress)) as ICErc20; - }); - - describe("When WrappedfCash is deployed", () => { - let wrappedFCashInstance: WrappedfCash; - beforeEach(async () => { - wrappedFCashInstance = await deployWrappedfCashInstance(deployer, owner.wallet, cdaiAddress); - }); - - describe("When notional proxy is upgraded", () => { - let daiAmount: BigNumber; - let fCashAmount: BigNumber; - let receiver: string; - beforeEach(async () => { - await upgradeNotionalProxy(owner.wallet); - daiAmount = ethers.utils.parseEther("1"); - fCashAmount = ethers.utils.parseUnits("1", 8); - receiver = owner.address; - await dai.transfer(owner.address, daiAmount); - }); - - [true, false].forEach(useUnderlying => { - describe(`when ${useUnderlying ? "" : "not"} using underlying`, () => { - it("mint works", async () => { - const { - wrappedFCashReceived, - depositAmountExternal, - inputTokenSpent, - } = await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai, - wrappedFCashInstance, - useUnderlying, - ); - expect(wrappedFCashReceived).to.eq(fCashAmount); - expect(inputTokenSpent).to.be.lte(depositAmountExternal); - }); - - it("redeem works", async () => { - const { - wrappedFCashReceived, - } = await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai, - wrappedFCashInstance, - useUnderlying, - ); - const maxImpliedRate = BigNumber.from(2).pow(32).sub(1); - if (useUnderlying) { - await wrappedFCashInstance - .connect(owner.wallet) - .redeemToUnderlying(wrappedFCashReceived, receiver, maxImpliedRate); - } else { - await wrappedFCashInstance - .connect(owner.wallet) - .redeemToAsset(wrappedFCashReceived, receiver, maxImpliedRate); - } - }); - }); - }); - }); - }); -}); From 07e10b761286660a1e48e7e2c877c2dc37c5964c Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 2 May 2022 18:09:39 +0800 Subject: [PATCH 042/120] Adjust wbtcRate in integration test to be in line with new pinned block number --- test/integration/sushiswapExchangeTradeModule.spec.ts | 2 +- test/integration/uniswapV2ExchangeTradeModule.spec.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/integration/sushiswapExchangeTradeModule.spec.ts b/test/integration/sushiswapExchangeTradeModule.spec.ts index 66cd3819a..be2ebf666 100644 --- a/test/integration/sushiswapExchangeTradeModule.spec.ts +++ b/test/integration/sushiswapExchangeTradeModule.spec.ts @@ -60,7 +60,7 @@ describe("SushiSwap TradeModule Integration [ @forked-mainnet ]", () => { setup = getSystemFixture(owner.address); await setup.initialize(); - wbtcRate = ether(29); + wbtcRate = ether(14); sushiswapSetup = getUniswapFixture(owner.address); sushiswapRouter = sushiswapSetup.getForkedSushiswapRouter(); diff --git a/test/integration/uniswapV2ExchangeTradeModule.spec.ts b/test/integration/uniswapV2ExchangeTradeModule.spec.ts index 1920b113b..e7f1bda61 100644 --- a/test/integration/uniswapV2ExchangeTradeModule.spec.ts +++ b/test/integration/uniswapV2ExchangeTradeModule.spec.ts @@ -60,7 +60,7 @@ describe("UniswapExchangeV2 TradeModule Integration [ @forked-mainnet ]", () => setup = getSystemFixture(owner.address); await setup.initialize(); - wbtcRate = ether(29); + wbtcRate = ether(14); uniswapSetup = getUniswapFixture(owner.address); uniswapRouter = uniswapSetup.getForkedUniswapRouter(); From aed6f346e220d889632234d96d20b16734fcc74b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 4 May 2022 09:17:48 +0800 Subject: [PATCH 043/120] Remove unneeded contracts --- .../protocol/integration/wrap/notional/WrappedfCash.sol | 9 --------- .../protocol/integration/wrap/notional/nBeaconProxy.sol | 7 ------- 2 files changed, 16 deletions(-) delete mode 100644 contracts/protocol/integration/wrap/notional/WrappedfCash.sol delete mode 100644 contracts/protocol/integration/wrap/notional/nBeaconProxy.sol diff --git a/contracts/protocol/integration/wrap/notional/WrappedfCash.sol b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol deleted file mode 100644 index 022ff21d4..000000000 --- a/contracts/protocol/integration/wrap/notional/WrappedfCash.sol +++ /dev/null @@ -1,9 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity 0.8.11; -import { WrappedfCash as WrappedfCashBase } from "notional-solidity-sdk/contracts/fCash/WrappedfCash.sol"; -import { NotionalProxy } from "notional-solidity-sdk/interfaces/notional/NotionalProxy.sol"; - -contract WrappedfCash is WrappedfCashBase { - constructor(NotionalProxy _notionalProxy) WrappedfCashBase(_notionalProxy){ - } -} diff --git a/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol b/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol deleted file mode 100644 index ce440b7da..000000000 --- a/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol +++ /dev/null @@ -1,7 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity 0.8.11; -import { nBeaconProxy as nBeaconProxyBase } from "notional-solidity-sdk/contracts/fCash/nBeaconProxy.sol"; - -contract nBeaconProxy is nBeaconProxyBase { - constructor(address beacon, bytes memory data) payable nBeaconProxyBase(beacon, data) { } -} From e45147f03d6d534523463f7053cb59f3002c50bc Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 4 May 2022 09:50:11 +0800 Subject: [PATCH 044/120] Import new wrappedFcash repo instead of old one --- .../interfaces/external/INotionalProxy.sol | 4 +-- .../wrap/notional/WrappedfCashFactory.sol | 2 +- package.json | 5 ++-- yarn.lock | 30 +++++-------------- 4 files changed, 13 insertions(+), 28 deletions(-) diff --git a/contracts/interfaces/external/INotionalProxy.sol b/contracts/interfaces/external/INotionalProxy.sol index ada426e2c..71e7e664f 100644 --- a/contracts/interfaces/external/INotionalProxy.sol +++ b/contracts/interfaces/external/INotionalProxy.sol @@ -1,4 +1,4 @@ pragma solidity ^0.8.11; -import { NotionalProxy } from "notional-solidity-sdk/interfaces/notional/NotionalProxy.sol"; +import { INotionalV2 } from "wrapped-fcash/interfaces/notional/INotionalV2.sol"; -interface INotionalProxy is NotionalProxy {} +interface INotionalProxy is INotionalV2 {} diff --git a/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol b/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol index e1bc31703..53b690ec1 100644 --- a/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol +++ b/contracts/protocol/integration/wrap/notional/WrappedfCashFactory.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.11; -import { WrappedfCashFactory as WrappedfCashFactoryBase } from "notional-solidity-sdk/contracts/fCash/WrappedfCashFactory.sol"; +import { WrappedfCashFactory as WrappedfCashFactoryBase } from "wrapped-fcash/contracts/proxy/WrappedfCashFactory.sol"; contract WrappedfCashFactory is WrappedfCashFactoryBase { constructor(address _beacon) WrappedfCashFactoryBase(_beacon){ diff --git a/package.json b/package.json index e29b0320d..dded1c792 100644 --- a/package.json +++ b/package.json @@ -108,10 +108,11 @@ "@uniswap/v3-core": "1.0.1", "@uniswap/v3-sdk": "^3.5.1", "ethers": "^5.5.2", - "fs-extra": "^5.0.0", + "fs-extra": "^9.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", - "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c", + "wrapped-fcash": "https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f", + "openzeppelin-contracts-V4": "npm:@openzeppelin/contracts@4.5", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/yarn.lock b/yarn.lock index 8d465ce02..fd24328b2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1615,11 +1615,6 @@ dependencies: "@octokit/openapi-types" "^11.2.0" -"@openzeppelin/contracts-upgradeable@^4.5.2": - version "4.5.2" - resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.5.2.tgz#90d9e47bacfd8693bfad0ac8a394645575528d05" - integrity sha512-xgWZYaPlrEOQo3cBj97Ufiuv79SPd8Brh4GcFYhPgb6WvAq4ppz8dWKL6h+jLAK01rUqMRp/TS9AdXgAeNvCLA== - "@openzeppelin/contracts@3.4.1-solc-0.7-2": version "3.4.1-solc-0.7-2" resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-3.4.1-solc-0.7-2.tgz#371c67ebffe50f551c3146a9eec5fe6ffe862e92" @@ -6455,15 +6450,6 @@ fs-extra@^4.0.2, fs-extra@^4.0.3: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-5.0.0.tgz#414d0110cdd06705734d055652c5411260c31abd" - integrity sha512-66Pm4RYbjzdyeuqudYqhFiNBbCIuI9kgRqLPSHIlXHidW8NIQtVdkM1yeZ4lXwuhbTETv3EUGMNHAAw6hiundQ== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - fs-extra@^7.0.0, fs-extra@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" @@ -6482,7 +6468,7 @@ fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.1.0: +fs-extra@^9.0.0, fs-extra@^9.1.0: version "9.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== @@ -9541,14 +9527,6 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c": - version "1.0.0" - resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c" - dependencies: - "@openzeppelin/contracts-upgradeable" "^4.5.2" - dotenv "^10.0.0" - openzeppelin-contracts-V4 "npm:@openzeppelin/contracts@4.5" - npm-audit-report@^2.1.5: version "2.1.5" resolved "https://registry.yarnpkg.com/npm-audit-report/-/npm-audit-report-2.1.5.tgz#a5b8850abe2e8452fce976c8960dd432981737b5" @@ -13827,6 +13805,12 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +"wrapped-fcash@https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f": + version "1.0.0" + resolved "https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f" + dependencies: + dotenv "^10.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" From db0cf2d571efe318d3572a4fb0fd46157b220754 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 4 May 2022 10:23:38 +0800 Subject: [PATCH 045/120] Add WrappedFCash and nBeaconProxy back in --- .../protocol/integration/wrap/notional/WrappedfCash.sol | 9 +++++++++ .../protocol/integration/wrap/notional/nBeaconProxy.sol | 7 +++++++ package.json | 1 + yarn.lock | 5 +++++ 4 files changed, 22 insertions(+) create mode 100644 contracts/protocol/integration/wrap/notional/WrappedfCash.sol create mode 100644 contracts/protocol/integration/wrap/notional/nBeaconProxy.sol diff --git a/contracts/protocol/integration/wrap/notional/WrappedfCash.sol b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol new file mode 100644 index 000000000..68bfaa299 --- /dev/null +++ b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.11; +import { wfCashERC4626 } from "wrapped-fcash/contracts/wfCashERC4626.sol"; +import { INotionalV2 } from "wrapped-fcash/interfaces/notional/INotionalV2.sol"; + +contract WrappedfCash is wfCashERC4626 { + constructor(INotionalV2 _notionalProxy) wfCashERC4626(_notionalProxy){ + } +} diff --git a/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol b/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol new file mode 100644 index 000000000..417d8edb5 --- /dev/null +++ b/contracts/protocol/integration/wrap/notional/nBeaconProxy.sol @@ -0,0 +1,7 @@ +// SPDX-License-Identifier: MIT +pragma solidity 0.8.11; +import { nBeaconProxy as nBeaconProxyBase } from "wrapped-fcash/contracts/proxy/nBeaconProxy.sol"; + +contract nBeaconProxy is nBeaconProxyBase { + constructor(address beacon, bytes memory data) payable nBeaconProxyBase(beacon, data) { } +} diff --git a/package.json b/package.json index dded1c792..4ac3029d1 100644 --- a/package.json +++ b/package.json @@ -113,6 +113,7 @@ "module-alias": "^2.2.2", "wrapped-fcash": "https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f", "openzeppelin-contracts-V4": "npm:@openzeppelin/contracts@4.5", + "@openzeppelin-upgradeable/contracts": "npm:@openzeppelin/contracts-upgradeable@4.5.2", "replace-in-file": "^6.1.0" }, "peerDependencies": { diff --git a/yarn.lock b/yarn.lock index fd24328b2..20f4367f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1615,6 +1615,11 @@ dependencies: "@octokit/openapi-types" "^11.2.0" +"@openzeppelin-upgradeable/contracts@npm:@openzeppelin/contracts-upgradeable@4.5.2": + version "4.5.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.5.2.tgz#90d9e47bacfd8693bfad0ac8a394645575528d05" + integrity sha512-xgWZYaPlrEOQo3cBj97Ufiuv79SPd8Brh4GcFYhPgb6WvAq4ppz8dWKL6h+jLAK01rUqMRp/TS9AdXgAeNvCLA== + "@openzeppelin/contracts@3.4.1-solc-0.7-2": version "3.4.1-solc-0.7-2" resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-3.4.1-solc-0.7-2.tgz#371c67ebffe50f551c3146a9eec5fe6ffe862e92" From c79c0758145f5ba291c3ae2c270f128231782b30 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 4 May 2022 10:53:01 +0800 Subject: [PATCH 046/120] Get minting to work with new interface --- contracts/interfaces/external/INotionalProxy.sol | 4 ++-- .../protocol/modules/v1/NotionalTradeModule.sol | 4 +++- package.json | 1 + test/integration/notionalTradeModule/utils.ts | 13 ++++++++++--- yarn.lock | 13 +++++++++++++ 5 files changed, 29 insertions(+), 6 deletions(-) diff --git a/contracts/interfaces/external/INotionalProxy.sol b/contracts/interfaces/external/INotionalProxy.sol index 71e7e664f..ada426e2c 100644 --- a/contracts/interfaces/external/INotionalProxy.sol +++ b/contracts/interfaces/external/INotionalProxy.sol @@ -1,4 +1,4 @@ pragma solidity ^0.8.11; -import { INotionalV2 } from "wrapped-fcash/interfaces/notional/INotionalV2.sol"; +import { NotionalProxy } from "notional-solidity-sdk/interfaces/notional/NotionalProxy.sol"; -interface INotionalProxy is INotionalV2 {} +interface INotionalProxy is NotionalProxy {} diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index e81b1f005..e0ba035ec 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -472,8 +472,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // TODO: Review if this value is correct / what is min implied rate ? uint32 minImpliedRate = 0; + string memory functionSignature = + _fromUnderlying ? "mintViaUnderlying(uint256,uint88,address,uint32)": "mintViaAsset(uint256,uint88,address,uint32)"; bytes memory mintCallData = abi.encodeWithSignature( - "mint(uint256,uint88,address,uint32,bool)", + functionSignature, _maxAssetAmount, uint88(_fCashAmount), address(_setToken), diff --git a/package.json b/package.json index 4ac3029d1..805cbfde8 100644 --- a/package.json +++ b/package.json @@ -111,6 +111,7 @@ "fs-extra": "^9.0.0", "jsbi": "^3.2.5", "module-alias": "^2.2.2", + "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c", "wrapped-fcash": "https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f", "openzeppelin-contracts-V4": "npm:@openzeppelin/contracts@4.5", "@openzeppelin-upgradeable/contracts": "npm:@openzeppelin/contracts-upgradeable@4.5.2", diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts index ac482232e..78f8ab22a 100644 --- a/test/integration/notionalTradeModule/utils.ts +++ b/test/integration/notionalTradeModule/utils.ts @@ -143,9 +143,16 @@ export async function mintWrappedFCash( await inputToken.connect(signer).approve(wrappedFCashInstance.address, depositAmountExternal); const inputTokenBalanceBefore = await inputToken.balanceOf(signer.address); const wrappedFCashBalanceBefore = await wrappedFCashInstance.balanceOf(signer.address); - const txReceipt = await wrappedFCashInstance - .connect(signer) - .mint(depositAmountExternal, fCashAmount, receiver, minImpliedRate, useUnderlying); + let txReceipt; + if (useUnderlying) { + txReceipt = await wrappedFCashInstance + .connect(signer) + .mintViaUnderlying(depositAmountExternal, fCashAmount, receiver, minImpliedRate); + } else { + txReceipt = await wrappedFCashInstance + .connect(signer) + .mintViaAsset(depositAmountExternal, fCashAmount, receiver, minImpliedRate); + } const wrappedFCashBalanceAfter = await wrappedFCashInstance.balanceOf(signer.address); const inputTokenBalanceAfter = await inputToken.balanceOf(signer.address); const inputTokenSpent = inputTokenBalanceAfter.sub(inputTokenBalanceBefore); diff --git a/yarn.lock b/yarn.lock index 20f4367f5..767e8ba0a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1620,6 +1620,11 @@ resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.5.2.tgz#90d9e47bacfd8693bfad0ac8a394645575528d05" integrity sha512-xgWZYaPlrEOQo3cBj97Ufiuv79SPd8Brh4GcFYhPgb6WvAq4ppz8dWKL6h+jLAK01rUqMRp/TS9AdXgAeNvCLA== +"@openzeppelin/contracts-upgradeable@^4.5.2": + version "4.6.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.6.0.tgz#1bf55f230f008554d4c6fe25eb165b85112108b0" + integrity sha512-5OnVuO4HlkjSCJO165a4i2Pu1zQGzMs//o54LPrwUgxvEO2P3ax1QuaSI0cEHHTveA77guS0PnNugpR2JMsPfA== + "@openzeppelin/contracts@3.4.1-solc-0.7-2": version "3.4.1-solc-0.7-2" resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-3.4.1-solc-0.7-2.tgz#371c67ebffe50f551c3146a9eec5fe6ffe862e92" @@ -9532,6 +9537,14 @@ normalize-url@^6.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== +"notional-solidity-sdk@https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c": + version "1.0.0" + resolved "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c" + dependencies: + "@openzeppelin/contracts-upgradeable" "^4.5.2" + dotenv "^10.0.0" + openzeppelin-contracts-V4 "npm:@openzeppelin/contracts@4.5" + npm-audit-report@^2.1.5: version "2.1.5" resolved "https://registry.yarnpkg.com/npm-audit-report/-/npm-audit-report-2.1.5.tgz#a5b8850abe2e8452fce976c8960dd432981737b5" From f980ed3253113435b25a6ad68f0d532759563819 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 5 May 2022 15:40:45 +0800 Subject: [PATCH 047/120] Replace operatorBurn with calling redeem method via set token --- .../modules/v1/NotionalTradeModule.sol | 36 ++++++------------- 1 file changed, 11 insertions(+), 25 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index e0ba035ec..d44142103 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -400,13 +400,12 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss returns(uint256 receivedAmount) { if(_fCashAmount == 0) return 0; - _setOperatorIfNecessary(_setToken, _fCashPosition); bool toUnderlying = _isUnderlying(_fCashPosition, _receiveToken); uint256 preTradeReceiveTokenBalance = _receiveToken.balanceOf(address(_setToken)); uint256 preTradeSendTokenBalance = _fCashPosition.balanceOf(address(_setToken)); - _burn(_setToken, _fCashPosition, _fCashAmount, toUnderlying); + _redeem(_setToken, _fCashPosition, _fCashAmount, toUnderlying); (, receivedAmount) = _updateSetTokenPositions( @@ -423,22 +422,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } - /** - * @dev Add this contract as an IERC777-operator for the SetTokens balance of given wrappedFCash token - * @dev Except for the typing this would also work for any ERC777 token as _fCashPosition. (not necessarily wrappedFCash) - */ - function _setOperatorIfNecessary( - ISetToken _setToken, - IWrappedfCashComplete _fCashPosition - ) - internal - { - if(!IERC777(address(_fCashPosition)).isOperatorFor(address(this), address(_setToken))){ - bytes memory authorizeCallData = abi.encodeWithSignature( "authorizeOperator(address)", address(this)); - _setToken.invoke(address(_fCashPosition), 0, authorizeCallData); - } - } - /** * @dev Approve the given wrappedFCash instance to spend the setToken's sendToken */ @@ -486,9 +469,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } /** - * @dev Uses operator rights to burn the given amount of fCash token on behalf of the setToken + * @dev Redeems the given amount of fCash token on behalf of the setToken */ - function _burn( + function _redeem( ISetToken _setToken, IWrappedfCashComplete _fCashPosition, uint256 _fCashAmount, @@ -498,13 +481,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { // TODO: Review if this value is correct / what is max implied rate ? uint32 maxImpliedRate = type(uint32).max; - // TODO: This is copied from the notional sdk proxy. Review if this is really more efficient that just invoking "burn" through the setToken (as in the mint case - IERC777(address(_fCashPosition)).operatorBurn( - address(_setToken), + + string memory functionSignature = + _toUnderlying ? "redeemToUnderlying(uint256,address,uint32)": "redeemToAsset(uint256,address,uint32)"; + bytes memory redeemCallData = abi.encodeWithSignature( + functionSignature, _fCashAmount, - abi.encode(IWrappedfCash.RedeemOpts(_toUnderlying, false, address(_setToken), maxImpliedRate)), - "" + address(_setToken), + maxImpliedRate ); + _setToken.invoke(address(_fCashPosition), 0, redeemCallData); } /** From 28c25178818c565c087333e528b6d8cd0fb27ba0 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 5 May 2022 17:43:51 +0800 Subject: [PATCH 048/120] Add tolerance in component position change of sendToken --- .../notionalTradeModule/notionalTradeModule.spec.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index cf2444449..4f3961269 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -405,7 +405,8 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); } - expect(sendTokenAmountNormalized).to.eq(positionChange); + // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review + expect(sendTokenAmountNormalized).to.closeTo(positionChange, positionChange.div(10**6).toNumber()); }); if (tradeDirection == "buying") { From 3c8a62d2a29b54f4cae260e0be7357dfee81cdd4 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 6 May 2022 09:44:25 +0800 Subject: [PATCH 049/120] Update WrappedFCash interface and mock --- contracts/interfaces/IWrappedFCash.sol | 16 +++++++++++----- contracts/mocks/WrappedfCashMock.sol | 17 ++++++++++++++--- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol index 21401e455..8f42d9c26 100644 --- a/contracts/interfaces/IWrappedFCash.sol +++ b/contracts/interfaces/IWrappedFCash.sol @@ -27,14 +27,21 @@ interface IWrappedfCash { // Zero signifies no maximum slippage uint32 maxImpliedRate; } + function initialize(uint16 currencyId, uint40 maturity) external; /// @notice Mints wrapped fCash ERC20 tokens - function mint( + function mintViaAsset( uint256 depositAmountExternal, uint88 fCashAmount, address receiver, - uint32 minImpliedRate, - bool useUnderlying + uint32 minImpliedRate + ) external; + + function mintViaUnderlying( + uint256 depositAmountExternal, + uint88 fCashAmount, + address receiver, + uint32 minImpliedRate ) external; function redeem(uint256 amount, RedeemOpts memory data) external; @@ -71,5 +78,4 @@ interface IWrappedfCash { } -interface IWrappedfCashComplete is IWrappedfCash, IERC20 {} - +interface IWrappedfCashComplete is IWrappedfCash, IERC777 {} diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 77d948723..58f45199f 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -42,13 +42,24 @@ contract WrappedfCashMock is ERC777, IWrappedfCash { underlyingToken = _underlyingToken; } + function initialize(uint16 currencyId, uint40 maturity) external override { + } + /// @notice Mints wrapped fCash ERC20 tokens - function mint( + function mintViaAsset( + uint256 depositAmountExternal, + uint88 fCashAmount, + address receiver, + uint32 minImpliedRate + ) external override{ + _mint(receiver, fCashAmount, "", ""); + } + + function mintViaUnderlying( uint256 depositAmountExternal, uint88 fCashAmount, address receiver, - uint32 minImpliedRate, - bool useUnderlying + uint32 minImpliedRate ) external override{ _mint(receiver, fCashAmount, "", ""); } From a201eea8d70aed68ee8b8f1232e78fd5dbeabb97 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 6 May 2022 12:33:14 +0800 Subject: [PATCH 050/120] Deploy WrappedFCashMock in unittest --- contracts/interfaces/IWrappedFCash.sol | 12 +- contracts/mocks/WrappedfCashMock.sol | 35 +- .../modules/v1/notionalTradeModule.spec.ts | 353 ++++++++++-------- utils/contracts/index.ts | 1 + utils/deploys/deployMocks.ts | 114 ++++-- 5 files changed, 296 insertions(+), 219 deletions(-) diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol index 8f42d9c26..043501329 100644 --- a/contracts/interfaces/IWrappedFCash.sol +++ b/contracts/interfaces/IWrappedFCash.sol @@ -3,7 +3,7 @@ pragma solidity 0.6.10; pragma experimental "ABIEncoderV2"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import "@openzeppelin/contracts/token/ERC777/IERC777.sol"; +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; /// @notice Different types of internal tokens /// - UnderlyingToken: underlying asset for a cToken (except for Ether) @@ -20,13 +20,6 @@ enum TokenType { } interface IWrappedfCash { - struct RedeemOpts { - bool redeemToUnderlying; - bool transferfCash; - address receiver; - // Zero signifies no maximum slippage - uint32 maxImpliedRate; - } function initialize(uint16 currencyId, uint40 maturity) external; /// @notice Mints wrapped fCash ERC20 tokens @@ -44,7 +37,6 @@ interface IWrappedfCash { uint32 minImpliedRate ) external; - function redeem(uint256 amount, RedeemOpts memory data) external; function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external; function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external; @@ -78,4 +70,4 @@ interface IWrappedfCash { } -interface IWrappedfCashComplete is IWrappedfCash, IERC777 {} +interface IWrappedfCashComplete is IWrappedfCash, IERC20 {} diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 58f45199f..071566022 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -19,12 +19,14 @@ pragma solidity 0.6.10; pragma experimental "ABIEncoderV2"; -import "@openzeppelin/contracts/token/ERC777/ERC777.sol"; +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import { TokenType, IWrappedfCash } from "../interfaces/IWrappedFCash.sol"; +import "hardhat/console.sol"; + // mock class using BasicToken -contract WrappedfCashMock is ERC777, IWrappedfCash { +contract WrappedfCashMock is ERC20, IWrappedfCash { uint256 private fCashId; uint40 private maturity; @@ -37,7 +39,8 @@ contract WrappedfCashMock is ERC777, IWrappedfCash { int256 private assetPrecision; TokenType private tokenType; - constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC777("FCashMock", "FCM", new address[](0)) { + constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC20("FCashMock", "FCM") { + console.log("Constructor WrappedfCashMock"); assetToken = _assetToken; underlyingToken = _underlyingToken; } @@ -52,7 +55,8 @@ contract WrappedfCashMock is ERC777, IWrappedfCash { address receiver, uint32 minImpliedRate ) external override{ - _mint(receiver, fCashAmount, "", ""); + assetToken.transferFrom(msg.sender, address(this), depositAmountExternal); + _mint(receiver, fCashAmount); } function mintViaUnderlying( @@ -61,30 +65,19 @@ contract WrappedfCashMock is ERC777, IWrappedfCash { address receiver, uint32 minImpliedRate ) external override{ - _mint(receiver, fCashAmount, "", ""); + underlyingToken.transferFrom(msg.sender, address(this), depositAmountExternal); + _mint(receiver, fCashAmount); } - function redeem(uint256 amount, RedeemOpts memory opts) public override { - bytes memory data = abi.encode(opts); - burn(amount, data); - } function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external override { - redeem(amount, RedeemOpts({ - redeemToUnderlying: false, - transferfCash: false, - receiver: receiver, - maxImpliedRate: maxImpliedRate - })); + _burn(msg.sender, amount); + assetToken.transfer(receiver, amount); } function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external override { - redeem(amount, RedeemOpts({ - redeemToUnderlying: true, - transferfCash: false, - receiver: receiver, - maxImpliedRate: maxImpliedRate - })); + _burn(msg.sender, amount); + underlyingToken.transfer(receiver, amount); } /// @notice Returns the underlying fCash ID of the token diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index a809a304e..260ea6e49 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -1,17 +1,26 @@ import "module-alias/register"; +import { BigNumber } from "ethers"; import { Address } from "@utils/types"; import { Account } from "@utils/test/types"; -import { NotionalTradeModule, DebtIssuanceMock, SetToken } from "@utils/contracts"; +import { + NotionalTradeModule, + DebtIssuanceMock, + SetToken, + StandardTokenMock, + WrappedfCashMock, +} from "@utils/contracts"; import DeployHelper from "@utils/deploys"; import { ether } from "@utils/index"; import { getAccounts, - getWaffleExpect, - getSystemFixture, + getCompoundFixture, getRandomAccount, getRandomAddress, + getSystemFixture, + getWaffleExpect, } from "@utils/test/index"; -import { SystemFixture } from "@utils/fixtures"; +import { CompoundFixture, SystemFixture } from "@utils/fixtures"; +import { CERc20 } from "@utils/contracts/compound"; const expect = getWaffleExpect(); @@ -21,7 +30,11 @@ describe("NotionalTradeModule", () => { let setup: SystemFixture; let debtIssuanceMock: DebtIssuanceMock; - let notionalTradeModule: NotionalTradeModule; + + let compoundSetup: CompoundFixture; + let cDai: CERc20; + let dai: StandardTokenMock; + let cTokenInitialMantissa: BigNumber; beforeEach(async () => { [owner] = await getAccounts(); @@ -31,18 +44,21 @@ describe("NotionalTradeModule", () => { setup = getSystemFixture(owner.address); await setup.initialize(); - notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - setup.controller.address, - ); - await setup.controller.addModule(notionalTradeModule.address); - - debtIssuanceMock = await deployer.mocks.deployDebtIssuanceMock(); - await setup.controller.addModule(debtIssuanceMock.address); - - await setup.integrationRegistry.addIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceMock.address + compoundSetup = getCompoundFixture(owner.address); + await compoundSetup.initialize(); + cTokenInitialMantissa = ether(200000000); + + dai = setup.dai; + cDai = await compoundSetup.createAndEnableCToken( + setup.dai.address, + cTokenInitialMantissa, + compoundSetup.comptroller.address, + compoundSetup.interestRateModel.address, + "Compound Dai", + "cDAI", + 8, + ether(0.75), // 75% collateral factor + ether(1), ); }); @@ -65,157 +81,186 @@ describe("NotionalTradeModule", () => { }); }); - describe("#initialize", async () => { - let setToken: SetToken; - let isAllowListed: boolean = true; - let subjectSetToken: Address; - let subjectFCashPositions: Address[]; - let subjectCaller: Account; - + describe("When wrappedFCashMock is deployed", async () => { + let wrappedfCashMock: WrappedfCashMock; beforeEach(async () => { - setToken = await setup.createSetToken( - [setup.weth.address, setup.dai.address], - [ether(1), ether(100)], - [notionalTradeModule.address, debtIssuanceMock.address], - ); - await debtIssuanceMock.initialize(setToken.address); - - if (isAllowListed) { - // Add SetToken to allow list - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - } - - subjectSetToken = setToken.address; - subjectFCashPositions = [setup.weth.address, setup.dai.address]; - subjectCaller = owner; + console.log("deploying wrappedfCashMock"); + wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock(cDai.address, dai.address); + console.log("deployed wrappedfCashMock", wrappedfCashMock.address); }); - - async function subject(): Promise { - return notionalTradeModule - .connect(subjectCaller.wallet) - .initialize(subjectSetToken, subjectFCashPositions); - } - - describe("when isAllowListed is true", () => { - before(async () => { - isAllowListed = true; + describe("When notional module is deployed", async () => { + let notionalTradeModule: NotionalTradeModule; + beforeEach(async () => { + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + debtIssuanceMock = await deployer.mocks.deployDebtIssuanceMock(); + await setup.controller.addModule(debtIssuanceMock.address); + + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceMock.address, + ); }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule(notionalTradeModule.address); - expect(isModuleEnabled).to.eq(true); - }); + describe("#initialize", async () => { + let setToken: SetToken; + let isAllowListed: boolean = true; + let subjectSetToken: Address; + let subjectFCashPositions: Address[]; + let subjectCaller: Account; - it("should register on the debt issuance module", async () => { - await subject(); - const isRegistered = await debtIssuanceMock.isRegistered(setToken.address); - expect(isRegistered).to.be.true; - }); - - describe("when debt issuance module is not added to integration registry", async () => { beforeEach(async () => { - await setup.integrationRegistry.removeIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - ); - }); - - afterEach(async () => { - // Add debt issuance address to integration - await setup.integrationRegistry.addIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceMock.address, + setToken = await setup.createSetToken( + [setup.weth.address, setup.dai.address], + [ether(1), ether(100)], + [notionalTradeModule.address, debtIssuanceMock.address], ); - }); - - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be valid adapter"); - }); - }); - - describe("when debt issuance module is not initialized on SetToken", async () => { - beforeEach(async () => { - await setToken.removeModule(debtIssuanceMock.address); - }); - - afterEach(async () => { - await setToken.addModule(debtIssuanceMock.address); await debtIssuanceMock.initialize(setToken.address); - }); - - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Issuance not initialized"); - }); - }); - describe("when the caller is not the SetToken manager", async () => { - beforeEach(async () => { - subjectCaller = await getRandomAccount(); - }); + if (isAllowListed) { + // Add SetToken to allow list + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + } - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + subjectSetToken = setToken.address; + subjectFCashPositions = [setup.weth.address, setup.dai.address]; + subjectCaller = owner; }); - }); - - describe("when SetToken is not in pending state", async () => { - beforeEach(async () => { - const newModule = await getRandomAddress(); - await setup.controller.addModule(newModule); - const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( - [setup.weth.address], - [ether(1)], - [newModule], - ); - - subjectSetToken = notionalTradeModuleNotPendingSetToken.address; - }); - - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be pending initialization"); - }); - }); - - describe("when the SetToken is not enabled on the controller", async () => { - beforeEach(async () => { - const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( - [setup.weth.address], - [ether(1)], - [notionalTradeModule.address], - ); - - subjectSetToken = nonEnabledSetToken.address; - }); - - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); - }); - }); - }); - - describe("when isAllowListed is false", async () => { - before(async () => { - isAllowListed = false; - }); - - describe("when SetToken is not allowlisted", async () => { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Not allowed SetToken"); - }); - }); - - describe("when any Set can initialize this module", async () => { - beforeEach(async () => { - await notionalTradeModule.updateAnySetAllowed(true); + async function subject(): Promise { + return notionalTradeModule + .connect(subjectCaller.wallet) + .initialize(subjectSetToken, subjectFCashPositions); + } + + describe("when isAllowListed is true", () => { + before(async () => { + isAllowListed = true; + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule(notionalTradeModule.address); + expect(isModuleEnabled).to.eq(true); + }); + + it("should register on the debt issuance module", async () => { + await subject(); + const isRegistered = await debtIssuanceMock.isRegistered(setToken.address); + expect(isRegistered).to.be.true; + }); + + describe("when debt issuance module is not added to integration registry", async () => { + beforeEach(async () => { + await setup.integrationRegistry.removeIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + ); + }); + + afterEach(async () => { + // Add debt issuance address to integration + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceMock.address, + ); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be valid adapter"); + }); + }); + + describe("when debt issuance module is not initialized on SetToken", async () => { + beforeEach(async () => { + await setToken.removeModule(debtIssuanceMock.address); + }); + + afterEach(async () => { + await setToken.addModule(debtIssuanceMock.address); + await debtIssuanceMock.initialize(setToken.address); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); + }); + + describe("when the caller is not the SetToken manager", async () => { + beforeEach(async () => { + subjectCaller = await getRandomAccount(); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); + + describe("when SetToken is not in pending state", async () => { + beforeEach(async () => { + const newModule = await getRandomAddress(); + await setup.controller.addModule(newModule); + + const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( + [setup.weth.address], + [ether(1)], + [newModule], + ); + + subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be pending initialization"); + }); + }); + + describe("when the SetToken is not enabled on the controller", async () => { + beforeEach(async () => { + const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( + [setup.weth.address], + [ether(1)], + [notionalTradeModule.address], + ); + + subjectSetToken = nonEnabledSetToken.address; + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); + }); + }); }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule(notionalTradeModule.address); - expect(isModuleEnabled).to.eq(true); + describe("when isAllowListed is false", async () => { + before(async () => { + isAllowListed = false; + }); + + describe("when SetToken is not allowlisted", async () => { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Not allowed SetToken"); + }); + }); + + describe("when any Set can initialize this module", async () => { + beforeEach(async () => { + await notionalTradeModule.updateAnySetAllowed(true); + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( + notionalTradeModule.address, + ); + expect(isModuleEnabled).to.eq(true); + }); + }); }); }); }); diff --git a/utils/contracts/index.ts b/utils/contracts/index.ts index 207d53c79..10b46a38c 100644 --- a/utils/contracts/index.ts +++ b/utils/contracts/index.ts @@ -127,6 +127,7 @@ export { WrapModule } from "../../typechain/WrapModule"; export { WrapModuleV2 } from "../../typechain/WrapModuleV2"; export { WrappedfCash } from "../../typechain/WrappedfCash"; export { WrappedfCashFactory } from "../../typechain/WrappedfCashFactory"; +export { WrappedfCashMock } from "../../typechain/WrappedfCashMock"; export { YearnWrapV2Adapter } from "../../typechain/YearnWrapV2Adapter"; export { YearnStrategyMock } from "../../typechain/YearnStrategyMock"; export { ZeroExApiAdapter } from "../../typechain/ZeroExApiAdapter"; diff --git a/utils/deploys/deployMocks.ts b/utils/deploys/deployMocks.ts index 09356fcf2..4c7ac3103 100644 --- a/utils/deploys/deployMocks.ts +++ b/utils/deploys/deployMocks.ts @@ -57,7 +57,8 @@ import { AaveV2Mock, UniswapV3MathMock, UnitConversionUtilsMock, - SetTokenAccessibleMock + SetTokenAccessibleMock, + WrappedfCashMock, } from "../contracts"; import { ether } from "../common"; @@ -111,7 +112,7 @@ import { Uint256ArrayUtilsMock__factory } from "../../typechain/factories/Uint25 import { WrapAdapterMock__factory } from "../../typechain/factories/WrapAdapterMock__factory"; import { WrapV2AdapterMock__factory } from "../../typechain/factories/WrapV2AdapterMock__factory"; import { ZeroExMock__factory } from "../../typechain/factories/ZeroExMock__factory"; -import { StringArrayUtilsMock__factory } from "../../typechain/factories/StringArrayUtilsMock__factory"; +import { StringArrayUtilsMock__factory } from "../../typechain/factories/StringArrayUtilsMock__factory"; import { SynthMock__factory } from "../../typechain/factories/SynthMock__factory"; import { SynthetixExchangerMock__factory } from "../../typechain/factories/SynthetixExchangerMock__factory"; import { YearnStrategyMock__factory } from "../../typechain/factories/YearnStrategyMock__factory"; @@ -119,6 +120,7 @@ import { AaveV2Mock__factory } from "../../typechain/factories/AaveV2Mock__facto import { UniswapV3MathMock__factory } from "../../typechain/factories/UniswapV3MathMock__factory"; import { UnitConversionUtilsMock__factory } from "../../typechain/factories/UnitConversionUtilsMock__factory"; import { SetTokenAccessibleMock__factory } from "../../typechain/factories/SetTokenAccessibleMock__factory"; +import { WrappedfCashMock__factory } from "../../typechain/factories/WrappedfCashMock__factory"; export default class DeployMocks { private _deployerSigner: Signer; @@ -159,7 +161,9 @@ export default class DeployMocks { return await new Uint256ArrayUtilsMock__factory(this._deployerSigner).deploy(); } - public async deployKyberNetworkProxyMock(mockWethAddress: Address): Promise { + public async deployKyberNetworkProxyMock( + mockWethAddress: Address, + ): Promise { return await new KyberNetworkProxyMock__factory(this._deployerSigner).deploy(mockWethAddress); } @@ -179,7 +183,9 @@ export default class DeployMocks { return await new DebtModuleMock__factory(this._deployerSigner).deploy(controllerAddress); } - public async deployGovernanceAdapterMock(initialProposalId: BigNumberish): Promise { + public async deployGovernanceAdapterMock( + initialProposalId: BigNumberish, + ): Promise { return await new GovernanceAdapterMock__factory(this._deployerSigner).deploy(initialProposalId); } @@ -225,7 +231,7 @@ export default class DeployMocks { public async deployOracleAdapterMock( asset: Address, - dummyPrice: BigNumber + dummyPrice: BigNumber, ): Promise { return await new OracleAdapterMock__factory(this._deployerSigner).deploy(asset, dummyPrice); } @@ -234,13 +240,16 @@ export default class DeployMocks { return await new PositionMock__factory(this._deployerSigner).deploy(); } - public async deployPositionV2Mock(libraryName: string, libraryAddress: Address): Promise { + public async deployPositionV2Mock( + libraryName: string, + libraryAddress: Address, + ): Promise { return await new PositionV2Mock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner + this._deployerSigner, ).deploy(); } @@ -253,8 +262,7 @@ export default class DeployMocks { } public async deployStakingAdapterMock(stakingAsset: Address): Promise { - return await new StakingAdapterMock__factory(this._deployerSigner) - .deploy(stakingAsset); + return await new StakingAdapterMock__factory(this._deployerSigner).deploy(stakingAsset); } public async deployTokenMock( @@ -262,10 +270,15 @@ export default class DeployMocks { initialBalance: BigNumberish = ether(1000000000), decimals: BigNumberish = 18, name: string = "Token", - symbol: string = "Symbol" + symbol: string = "Symbol", ): Promise { - return await new StandardTokenMock__factory(this._deployerSigner) - .deploy(initialAccount, initialBalance, name, symbol, decimals); + return await new StandardTokenMock__factory(this._deployerSigner).deploy( + initialAccount, + initialBalance, + name, + symbol, + decimals, + ); } public async deployTokenWithFeeMock( @@ -273,10 +286,15 @@ export default class DeployMocks { initialBalance: BigNumberish = ether(1000000000), fee: BigNumberish = ether(0.1), name: string = "Token", - symbol: string = "Symbol" + symbol: string = "Symbol", ): Promise { - return await new StandardTokenWithFeeMock__factory(this._deployerSigner) - .deploy(initialAccount, initialBalance, name, symbol, fee); + return await new StandardTokenWithFeeMock__factory(this._deployerSigner).deploy( + initialAccount, + initialBalance, + name, + symbol, + fee, + ); } public async deployTokenWithErrorMock( @@ -285,10 +303,15 @@ export default class DeployMocks { error: BigNumberish, name: string = "Token", symbol: string = "Symbol", - decimals: BigNumberish = BigNumber.from(18) + decimals: BigNumberish = BigNumber.from(18), ): Promise { return await new StandardTokenWithRoundingErrorMock__factory(this._deployerSigner).deploy( - initialAccount, initialBalance, error, name, symbol, decimals + initialAccount, + initialBalance, + error, + name, + symbol, + decimals, ); } @@ -308,7 +331,9 @@ export default class DeployMocks { return await new AaveLendingPoolCoreMock__factory(this._deployerSigner).deploy(); } - public async deployAaveLendingPoolMock(aaveLendingPoolCore: Address): Promise { + public async deployAaveLendingPoolMock( + aaveLendingPoolCore: Address, + ): Promise { return await new AaveLendingPoolMock__factory(this._deployerSigner).deploy(aaveLendingPoolCore); } @@ -318,7 +343,7 @@ export default class DeployMocks { { [libraryName]: libraryAddress, }, - this._deployerSigner + this._deployerSigner, ).deploy(); } @@ -328,30 +353,33 @@ export default class DeployMocks { { [libraryName]: libraryAddress, }, - this._deployerSigner + this._deployerSigner, ).deploy(); } - public async deployPerpV2LibraryV2Mock(libraryName: string, libraryAddress: Address): Promise { + public async deployPerpV2LibraryV2Mock( + libraryName: string, + libraryAddress: Address, + ): Promise { return await new PerpV2LibraryV2Mock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner + this._deployerSigner, ).deploy(); } public async deployPerpV2PositionsMock( libraryName: string, - libraryAddress: Address + libraryAddress: Address, ): Promise { return await new PerpV2PositionsMock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner + this._deployerSigner, ).deploy(); } @@ -386,22 +414,25 @@ export default class DeployMocks { public async deployComptrollerMock( comp: Address, compAmount: BigNumber, - cToken: Address + cToken: Address, ): Promise { return await new ComptrollerMock__factory(this._deployerSigner).deploy( comp, compAmount, - cToken + cToken, ); } - public async deployCompoundMock(libraryName: string, libraryAddress: Address): Promise { + public async deployCompoundMock( + libraryName: string, + libraryAddress: Address, + ): Promise { return await new CompoundMock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner + this._deployerSigner, ).deploy(); } @@ -412,8 +443,14 @@ export default class DeployMocks { name: string = "Token", symbol: string = "Symbol", ): Promise { - return await new SynthMock__factory(this._deployerSigner) - .deploy(initialAccount, initialBalance, name, symbol, 18, currencyKey); + return await new SynthMock__factory(this._deployerSigner).deploy( + initialAccount, + initialBalance, + name, + symbol, + 18, + currencyKey, + ); } public async deploySynthetixExchangerMock( @@ -421,7 +458,7 @@ export default class DeployMocks { sEth: Address, sBtc: Address, currencyKeys: any, - rates: any + rates: any, ): Promise { return await new SynthetixExchangerMock__factory(this._deployerSigner).deploy( sUsd, @@ -433,7 +470,7 @@ export default class DeployMocks { rates.usd.eth, rates.eth.usd, rates.usd.btc, - rates.btc.usd + rates.btc.usd, ); } @@ -457,7 +494,10 @@ export default class DeployMocks { return await new ChainlinkAggregatorMock__factory(this._deployerSigner).deploy(decimals); } - public async deployTribePegExchangerMock(rgt: Address, tribe: Address): Promise { + public async deployTribePegExchangerMock( + rgt: Address, + tribe: Address, + ): Promise { return await new TribePegExchangerMock__factory(this._deployerSigner).deploy(rgt, tribe); } @@ -469,6 +509,9 @@ export default class DeployMocks { return await new BytesArrayUtilsMock__factory(this._deployerSigner).deploy(); } + public async deployWrappedfCashMock(assetToken: Address, underlyingToken: Address): Promise { + return await new WrappedfCashMock__factory(this._deployerSigner).deploy(assetToken, underlyingToken); + } /** *********************************** * Instance getters ************************************/ @@ -478,6 +521,9 @@ export default class DeployMocks { } public async getForkedZeroExExchange(): Promise { - return await ZeroExMock__factory.connect(dependencies.ZERO_EX_EXCHANGE[1], this._deployerSigner); + return await ZeroExMock__factory.connect( + dependencies.ZERO_EX_EXCHANGE[1], + this._deployerSigner, + ); } } From 57a0a41b1a8d3a539fd110f83ff4f9abbced9d51 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 8 May 2022 17:56:10 +0800 Subject: [PATCH 051/120] Add trade scenarios to unit tests --- .../modules/v1/notionalTradeModule.spec.ts | 549 +++++++++++++----- 1 file changed, 416 insertions(+), 133 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 260ea6e49..89aed290d 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -1,10 +1,13 @@ import "module-alias/register"; import { BigNumber } from "ethers"; +import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; +import { ethers } from "hardhat"; import { Address } from "@utils/types"; import { Account } from "@utils/test/types"; import { + ManagerIssuanceHookMock, NotionalTradeModule, - DebtIssuanceMock, + DebtIssuanceModule, SetToken, StandardTokenMock, WrappedfCashMock, @@ -21,15 +24,18 @@ import { } from "@utils/test/index"; import { CompoundFixture, SystemFixture } from "@utils/fixtures"; import { CERc20 } from "@utils/contracts/compound"; +import { IERC20 } from "@typechain/IERC20"; const expect = getWaffleExpect(); describe("NotionalTradeModule", () => { let owner: Account; let deployer: DeployHelper; + let manager: Account; let setup: SystemFixture; - let debtIssuanceMock: DebtIssuanceMock; + let mockPreIssuanceHook: ManagerIssuanceHookMock; + let debtIssuanceModule: DebtIssuanceModule; let compoundSetup: CompoundFixture; let cDai: CERc20; @@ -37,7 +43,7 @@ describe("NotionalTradeModule", () => { let cTokenInitialMantissa: BigNumber; beforeEach(async () => { - [owner] = await getAccounts(); + [owner, manager] = await getAccounts(); deployer = new DeployHelper(owner.wallet); @@ -60,6 +66,9 @@ describe("NotionalTradeModule", () => { ether(0.75), // 75% collateral factor ether(1), ); + await dai.approve(cDai.address, ethers.constants.MaxUint256); + await cDai.mint(ether(100)); + mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); }); describe("#constructor", async () => { @@ -81,184 +90,458 @@ describe("NotionalTradeModule", () => { }); }); - describe("When wrappedFCashMock is deployed", async () => { - let wrappedfCashMock: WrappedfCashMock; + describe("When notional module is deployed", async () => { + let notionalTradeModule: NotionalTradeModule; beforeEach(async () => { - console.log("deploying wrappedfCashMock"); - wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock(cDai.address, dai.address); - console.log("deployed wrappedfCashMock", wrappedfCashMock.address); + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + setup.controller.address, + ); + await setup.controller.addModule(debtIssuanceModule.address); + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); }); - describe("When notional module is deployed", async () => { - let notionalTradeModule: NotionalTradeModule; + + describe("When wrappedFCashMock is deployed", async () => { + let wrappedfCashMock: WrappedfCashMock; + let daiBalance: BigNumber; beforeEach(async () => { - notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - setup.controller.address, - ); - await setup.controller.addModule(notionalTradeModule.address); - - debtIssuanceMock = await deployer.mocks.deployDebtIssuanceMock(); - await setup.controller.addModule(debtIssuanceMock.address); - - await setup.integrationRegistry.addIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceMock.address, - ); - }); + wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock(cDai.address, dai.address); - describe("#initialize", async () => { - let setToken: SetToken; - let isAllowListed: boolean = true; - let subjectSetToken: Address; - let subjectFCashPositions: Address[]; - let subjectCaller: Account; + daiBalance = ether(1000); + dai.transfer(owner.address, daiBalance); + dai.approve(wrappedfCashMock.address, daiBalance); + wrappedfCashMock.mintViaUnderlying(daiBalance, daiBalance, owner.address, 0); + }); + describe("When setToken is deployed", async () => { + let wrappedfCashPosition: BigNumber; + let initialSetBalance: BigNumber; + let setToken: SetToken; beforeEach(async () => { + wrappedfCashPosition = ethers.utils.parseUnits("2", await wrappedfCashMock.decimals()); + setToken = await setup.createSetToken( - [setup.weth.address, setup.dai.address], - [ether(1), ether(100)], - [notionalTradeModule.address, debtIssuanceMock.address], + [wrappedfCashMock.address], + [wrappedfCashPosition], + [debtIssuanceModule.address, notionalTradeModule.address], + manager.address, ); - await debtIssuanceMock.initialize(setToken.address); - if (isAllowListed) { - // Add SetToken to allow list - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - } - - subjectSetToken = setToken.address; - subjectFCashPositions = [setup.weth.address, setup.dai.address]; - subjectCaller = owner; - }); + expect(await setToken.isPendingModule(debtIssuanceModule.address)).to.be.true; - async function subject(): Promise { - return notionalTradeModule - .connect(subjectCaller.wallet) - .initialize(subjectSetToken, subjectFCashPositions); - } + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); - describe("when isAllowListed is true", () => { - before(async () => { - isAllowListed = true; - }); + initialSetBalance = daiBalance.div(10); + await wrappedfCashMock.approve(debtIssuanceModule.address, daiBalance); + await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); + }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule(notionalTradeModule.address); - expect(isModuleEnabled).to.eq(true); + describe("#initialize", async () => { + let isAllowListed: boolean = true; + let subjectSetToken: Address; + let subjectFCashPositions: Address[]; + let subjectCaller: Account; + + beforeEach(async () => { + if (isAllowListed) { + // Add SetToken to allow list + console.log("Updated allow list"); + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + } + + subjectSetToken = setToken.address; + subjectFCashPositions = [setup.weth.address, setup.dai.address]; + subjectCaller = manager; + console.log("Done"); }); - it("should register on the debt issuance module", async () => { - await subject(); - const isRegistered = await debtIssuanceMock.isRegistered(setToken.address); - expect(isRegistered).to.be.true; - }); + async function subject(): Promise { + return notionalTradeModule + .connect(subjectCaller.wallet) + .initialize(subjectSetToken, subjectFCashPositions); + } - describe("when debt issuance module is not added to integration registry", async () => { - beforeEach(async () => { - await setup.integrationRegistry.removeIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - ); + describe("when isAllowListed is true", () => { + before(async () => { + isAllowListed = true; }); - afterEach(async () => { - // Add debt issuance address to integration - await setup.integrationRegistry.addIntegration( + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceMock.address, ); + expect(isModuleEnabled).to.eq(true); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be valid adapter"); - }); - }); - - describe("when debt issuance module is not initialized on SetToken", async () => { - beforeEach(async () => { - await setToken.removeModule(debtIssuanceMock.address); + describe("when debt issuance module is not added to integration registry", async () => { + beforeEach(async () => { + await setup.integrationRegistry.removeIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + ); + }); + + afterEach(async () => { + // Add debt issuance address to integration + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be valid adapter"); + }); }); - afterEach(async () => { - await setToken.addModule(debtIssuanceMock.address); - await debtIssuanceMock.initialize(setToken.address); + describe("when debt issuance module is not initialized on SetToken", async () => { + beforeEach(async () => { + await setToken.connect(manager.wallet).removeModule(debtIssuanceModule.address); + }); + + afterEach(async () => { + await setToken.connect(manager.wallet).addModule(debtIssuanceModule.address); + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Issuance not initialized"); - }); - }); + describe("when the caller is not the SetToken manager", async () => { + beforeEach(async () => { + subjectCaller = await getRandomAccount(); + }); - describe("when the caller is not the SetToken manager", async () => { - beforeEach(async () => { - subjectCaller = await getRandomAccount(); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); - }); - }); + describe("when SetToken is not in pending state", async () => { + beforeEach(async () => { + const newModule = await getRandomAddress(); + await setup.controller.addModule(newModule); - describe("when SetToken is not in pending state", async () => { - beforeEach(async () => { - const newModule = await getRandomAddress(); - await setup.controller.addModule(newModule); + const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( + [setup.weth.address], + [ether(1)], + [newModule], + manager.address, + ); - const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( - [setup.weth.address], - [ether(1)], - [newModule], - ); + subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + }); - subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be pending initialization"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be pending initialization"); + describe("when the SetToken is not enabled on the controller", async () => { + beforeEach(async () => { + const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( + [setup.weth.address], + [ether(1)], + [notionalTradeModule.address], + manager.address, + ); + + subjectSetToken = nonEnabledSetToken.address; + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); + }); }); }); - describe("when the SetToken is not enabled on the controller", async () => { - beforeEach(async () => { - const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( - [setup.weth.address], - [ether(1)], - [notionalTradeModule.address], - ); + describe("when isAllowListed is false", async () => { + before(async () => { + isAllowListed = false; + }); - subjectSetToken = nonEnabledSetToken.address; + describe("when SetToken is not allowlisted", async () => { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Not allowed SetToken"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); + describe("when any Set can initialize this module", async () => { + beforeEach(async () => { + await notionalTradeModule.updateAnySetAllowed(true); + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( + notionalTradeModule.address, + ); + expect(isModuleEnabled).to.eq(true); + }); }); }); }); - describe("when isAllowListed is false", async () => { - before(async () => { - isAllowListed = false; + describe("#trade", () => { + let receiveToken: IERC20; + let sendToken: IERC20; + let subjectSetToken: string; + let subjectSendToken: string; + let subjectSendQuantity: BigNumber; + let subjectReceiveToken: string; + let subjectMinReceiveQuantity: BigNumber; + let caller: SignerWithAddress; + + beforeEach(async () => { + subjectSetToken = setToken.address; + caller = manager.wallet; }); - describe("when SetToken is not allowlisted", async () => { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Not allowed SetToken"); - }); - }); + const subject = () => { + return notionalTradeModule + .connect(caller) + .trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + }; + + const subjectCall = () => { + return notionalTradeModule + .connect(caller) + .callStatic.trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + }; - describe("when any Set can initialize this module", async () => { + describe("when set token is allowed", () => { beforeEach(async () => { - await notionalTradeModule.updateAnySetAllowed(true); + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); }); - - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule( - notionalTradeModule.address, - ); - expect(isModuleEnabled).to.eq(true); + describe("when token is initialized on the notional module", () => { + beforeEach(async () => { + await notionalTradeModule + .connect(manager.wallet) + .initialize(setToken.address, [wrappedfCashMock.address]); + }); + + [ + "buying", + "selling", + ].forEach(tradeDirection => { + [ + "underlyingToken", + "assetToken", + ].forEach(tokenType => { + describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { + let sendTokenType: string; + let receiveTokenType: string; + let otherToken: IERC20; + beforeEach(async () => { + const fTokenQuantity = ethers.utils.parseUnits("1", 8); + + otherToken = tokenType == "assetToken" ? cDai : dai; + sendToken = tradeDirection == "buying" ? otherToken : wrappedfCashMock; + sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; + subjectSendToken = sendToken.address; + + receiveToken = tradeDirection == "buying" ? wrappedfCashMock : otherToken; + subjectReceiveToken = receiveToken.address; + + subjectMinReceiveQuantity = fTokenQuantity; + subjectSendQuantity = fTokenQuantity; + if (tradeDirection == "buying") { + // Apparently it is not possible to trade tokens that are not a set component + // Also sending extra tokens to the trade module might break it + // TODO: Review + await sendToken.transfer(wrappedfCashMock.address, subjectSendQuantity); + await notionalTradeModule + .connect(manager.wallet) + .trade( + setToken.address, + wrappedfCashMock.address, + fTokenQuantity, + sendToken.address, + subjectSendQuantity, + ); + } + if (tradeDirection == "selling") { + await receiveToken.transfer( + wrappedfCashMock.address, + subjectMinReceiveQuantity, + ); + console.log( + "Sent receive tokens to mock", + receiveToken.address, + await receiveToken.balanceOf(wrappedfCashMock.address), + ); + } + }); + + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( + subjectMinReceiveQuantity, + ); + }); + + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); + + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf(setToken.address); + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); + + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + } else { + expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); + } + + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), + ); + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), + ); + }); + + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); + + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div(totalSetSupplyEther); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), + ); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); + + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); + + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), + ); + }); + }); + }); + }); }); }); }); From ab56837a036e85115e14f888557b093b799f62a1 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 10:32:16 +0800 Subject: [PATCH 052/120] Add unit tests for issuance / redemption hook --- contracts/mocks/WrappedfCashMock.sol | 20 +- .../modules/v1/notionalTradeModule.spec.ts | 270 ++++++++++++++---- 2 files changed, 236 insertions(+), 54 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 071566022..46f0eb815 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -30,7 +30,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint256 private fCashId; uint40 private maturity; - bool private _hasMatured; + bool private matured; uint16 private currencyId; uint8 private marketIndex; IERC20 private underlyingToken; @@ -39,6 +39,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { int256 private assetPrecision; TokenType private tokenType; + uint256 private redemptionAssetAmount; + constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC20("FCashMock", "FCM") { console.log("Constructor WrappedfCashMock"); assetToken = _assetToken; @@ -71,8 +73,12 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external override { + console.log("redeemToAsset"); _burn(msg.sender, amount); - assetToken.transfer(receiver, amount); + console.logUint(assetToken.balanceOf(address(this))); + uint256 assetTokenAmount = redemptionAssetAmount == 0 ? amount : redemptionAssetAmount; + console.logUint(assetTokenAmount); + assetToken.transfer(receiver, assetTokenAmount); } function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external override { @@ -92,7 +98,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { /// @notice True if the fCash has matured, assets mature exactly on the block time function hasMatured() external override view returns (bool) { - return _hasMatured; + return matured; } /// @notice Returns the underlying fCash currency @@ -123,4 +129,12 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { function getAssetToken() external override view returns (IERC20, int256, TokenType) { return (assetToken, assetPrecision, tokenType); } + + function setMatured(bool _matured) external{ + matured = _matured; + } + + function setRedemptionAssetAmount(uint256 _redemptionAssetAmount) external{ + redemptionAssetAmount = _redemptionAssetAmount; + } } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 89aed290d..39b0847e6 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -25,6 +25,7 @@ import { import { CompoundFixture, SystemFixture } from "@utils/fixtures"; import { CERc20 } from "@utils/contracts/compound"; import { IERC20 } from "@typechain/IERC20"; +import { mintWrappedFCash } from "../../../integration/notionalTradeModule/utils"; const expect = getWaffleExpect(); @@ -310,64 +311,57 @@ describe("NotionalTradeModule", () => { }); }); - describe("#trade", () => { - let receiveToken: IERC20; - let sendToken: IERC20; - let subjectSetToken: string; - let subjectSendToken: string; - let subjectSendQuantity: BigNumber; - let subjectReceiveToken: string; - let subjectMinReceiveQuantity: BigNumber; - let caller: SignerWithAddress; - + describe("when set token is allowed", () => { beforeEach(async () => { - subjectSetToken = setToken.address; - caller = manager.wallet; + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); }); - - const subject = () => { - return notionalTradeModule - .connect(caller) - .trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - const subjectCall = () => { - return notionalTradeModule - .connect(caller) - .callStatic.trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - describe("when set token is allowed", () => { + describe("when token is initialized on the notional module", () => { beforeEach(async () => { - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + await notionalTradeModule + .connect(manager.wallet) + .initialize(setToken.address, [wrappedfCashMock.address]); }); - describe("when token is initialized on the notional module", () => { + describe("#trade", () => { + let receiveToken: IERC20; + let sendToken: IERC20; + let subjectSetToken: string; + let subjectSendToken: string; + let subjectSendQuantity: BigNumber; + let subjectReceiveToken: string; + let subjectMinReceiveQuantity: BigNumber; + let caller: SignerWithAddress; + beforeEach(async () => { - await notionalTradeModule - .connect(manager.wallet) - .initialize(setToken.address, [wrappedfCashMock.address]); + subjectSetToken = setToken.address; + caller = manager.wallet; }); - [ - "buying", - "selling", - ].forEach(tradeDirection => { - [ - "underlyingToken", - "assetToken", - ].forEach(tokenType => { + const subject = () => { + return notionalTradeModule + .connect(caller) + .trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + }; + + const subjectCall = () => { + return notionalTradeModule + .connect(caller) + .callStatic.trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + }; + + ["buying", "selling"].forEach(tradeDirection => { + ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; @@ -543,6 +537,180 @@ describe("NotionalTradeModule", () => { }); }); }); + describe("#moduleIssue/RedeemHook", () => { + ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(async () => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + + await cDai.connect(owner.wallet).mint(ether(1)); + const cDaiBalance = await cDai.balanceOf(owner.address); + await cDai + .connect(owner.wallet) + .transfer(wrappedfCashMock.address, cDaiBalance); + + const redemptionAssetAmount = cDaiBalance.div(2); + await wrappedfCashMock.setRedemptionAssetAmount(redemptionAssetAmount); + + if (triggerAction == "redeem") { + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else { + await dai.transfer(caller.address, daiAmount); + await dai.connect(caller).approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + }); + + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + expect(await wrappedfCashMock.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); + + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); + + if (triggerAction != "manualTrigger") { + it("should adjust assetToken balance correctly", async () => { + const cDaiBalanceBefore = await cDai.balanceOf(caller.address); + await subject(); + const cDaiBalanceAfter = await cDai.balanceOf(caller.address); + const amountCDaiTransfered = + triggerAction == "redeem" + ? cDaiBalanceAfter.sub(cDaiBalanceBefore) + : cDaiBalanceBefore.sub(cDaiBalanceAfter); + + expect(amountCDaiTransfered).to.be.gt(0); + }); + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf(caller.address); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf(caller.address); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + } + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.false; + }); + + it("Adds assetToken (cDai) to component list", async () => { + expect(await setToken.isComponent(cDai.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(cDai.address)).to.be.true; + }); + + it("Adds asset token to component list", async () => { + expect(await setToken.isComponent(cDai.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(cDai.address)).to.be.true; + }); + + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf(subjectSetToken); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf(subjectSetToken); + expect(balanceAfter).to.eq(0); + }); + + it("Afterwards setToken should have received asset token", async () => { + const balanceBefore = await cDai.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await cDai.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it("Afterwards setToken should have positive cDai position", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + cDai.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit(cDai.address); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + }); + }); + }); + }); }); }); }); From e4ef888269a3767f8da0a7937be85585dbf36d05 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 11:46:43 +0800 Subject: [PATCH 053/120] Add test for getFCashPositions getter --- .../modules/v1/NotionalTradeModule.sol | 1 + .../modules/v1/notionalTradeModule.spec.ts | 18 +++++++++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index d44142103..b1e99d83e 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -312,6 +312,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss returns(address[] memory positions) { uint256 length = fCashPositions[_setToken].length(); + positions = new address[](length); for(uint256 i = 0; i < length; i++) { positions[i] = fCashPositions[_setToken].at(i); } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 39b0847e6..754d71020 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -321,6 +321,19 @@ describe("NotionalTradeModule", () => { .connect(manager.wallet) .initialize(setToken.address, [wrappedfCashMock.address]); }); + describe("#getFCashPositions", () => { + let subjectSetToken: string; + const subject = () => { + return notionalTradeModule.getFCashPositions(subjectSetToken); + }; + beforeEach(() => { + subjectSetToken = setToken.address; + }); + it("should return the correct fCash positions", async () => { + const fCashPositions = await subject(); + expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); + }); + }); describe("#trade", () => { let receiveToken: IERC20; let sendToken: IERC20; @@ -400,11 +413,6 @@ describe("NotionalTradeModule", () => { wrappedfCashMock.address, subjectMinReceiveQuantity, ); - console.log( - "Sent receive tokens to mock", - receiveToken.address, - await receiveToken.balanceOf(wrappedfCashMock.address), - ); } }); From f5035777ed9c5896f19dfeb7973ec3316d72e082 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 11:50:19 +0800 Subject: [PATCH 054/120] Remove logs from wrappedfCashMock --- contracts/mocks/WrappedfCashMock.sol | 4 ---- 1 file changed, 4 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 46f0eb815..7b02264ca 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -42,7 +42,6 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint256 private redemptionAssetAmount; constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC20("FCashMock", "FCM") { - console.log("Constructor WrappedfCashMock"); assetToken = _assetToken; underlyingToken = _underlyingToken; } @@ -73,11 +72,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external override { - console.log("redeemToAsset"); _burn(msg.sender, amount); - console.logUint(assetToken.balanceOf(address(this))); uint256 assetTokenAmount = redemptionAssetAmount == 0 ? amount : redemptionAssetAmount; - console.logUint(assetTokenAmount); assetToken.transfer(receiver, assetTokenAmount); } From f711c80761a3683928d82ef4c46f8106a2fe2091 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 13:05:39 +0800 Subject: [PATCH 055/120] Add unit test for removeModule method --- contracts/protocol/modules/v1/NotionalTradeModule.sol | 4 +--- test/protocol/modules/v1/notionalTradeModule.spec.ts | 8 ++++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index b1e99d83e..8fc3d018f 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -204,9 +204,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } /** - * @dev MANAGER ONLY: Removes this module from the SetToken, via call by the SetToken. Any deposited collateral assets - * are disabled to be used as collateral on Aave. Aave Settings and manager enabled assets state is deleted. - * Note: Function will revert is there is any debt remaining on Aave + * @dev MANAGER ONLY: Removes this module from the SetToken, via call by the SetToken. Redeems any matured positions */ function removeModule() external override onlyValidAndInitializedSet(ISetToken(msg.sender)) { ISetToken setToken = ISetToken(msg.sender); diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 754d71020..4ed4e474c 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -546,7 +546,7 @@ describe("NotionalTradeModule", () => { }); }); describe("#moduleIssue/RedeemHook", () => { - ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { + ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; @@ -605,6 +605,10 @@ describe("NotionalTradeModule", () => { return debtIssuanceModule .connect(caller) .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); } else { return notionalTradeModule .connect(caller) @@ -649,7 +653,7 @@ describe("NotionalTradeModule", () => { await wrappedfCashMock.setMatured(true); }); - if (triggerAction != "manualTrigger") { + if (["issue", "redeem"].includes(triggerAction)) { it("should adjust assetToken balance correctly", async () => { const cDaiBalanceBefore = await cDai.balanceOf(caller.address); await subject(); From aba4ad4e1cf2f21462cc4859422a49642f410997 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 13:38:03 +0800 Subject: [PATCH 056/120] Add registerToModule unittest --- .../modules/v1/notionalTradeModule.spec.ts | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 4ed4e474c..b7fdd06e7 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -315,12 +315,34 @@ describe("NotionalTradeModule", () => { beforeEach(async () => { await notionalTradeModule.updateAllowedSetToken(setToken.address, true); }); + describe("#registerToModule", () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectDebtIssuanceModule: Address; + + const subject = () => { + return notionalTradeModule + .connect(caller) + .registerToModule(subjectSetToken, subjectDebtIssuanceModule); + }; + + beforeEach(() => { + caller = manager.wallet; + subjectDebtIssuanceModule = debtIssuanceModule.address; + subjectSetToken = setToken.address; + }); + + it("should not revert", async () => { + await subject(); + }); + }); describe("when token is initialized on the notional module", () => { beforeEach(async () => { await notionalTradeModule .connect(manager.wallet) .initialize(setToken.address, [wrappedfCashMock.address]); }); + describe("#getFCashPositions", () => { let subjectSetToken: string; const subject = () => { From ab30064c6d5264a86550e706bf0fe87babd4841c Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 14:28:08 +0800 Subject: [PATCH 057/120] Fix registerToModule --- .../modules/v1/notionalTradeModule.spec.ts | 49 +++++++++++-------- 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index b7fdd06e7..62e963328 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -315,27 +315,7 @@ describe("NotionalTradeModule", () => { beforeEach(async () => { await notionalTradeModule.updateAllowedSetToken(setToken.address, true); }); - describe("#registerToModule", () => { - let caller: SignerWithAddress; - let subjectSetToken: Address; - let subjectDebtIssuanceModule: Address; - - const subject = () => { - return notionalTradeModule - .connect(caller) - .registerToModule(subjectSetToken, subjectDebtIssuanceModule); - }; - - beforeEach(() => { - caller = manager.wallet; - subjectDebtIssuanceModule = debtIssuanceModule.address; - subjectSetToken = setToken.address; - }); - it("should not revert", async () => { - await subject(); - }); - }); describe("when token is initialized on the notional module", () => { beforeEach(async () => { await notionalTradeModule @@ -343,6 +323,35 @@ describe("NotionalTradeModule", () => { .initialize(setToken.address, [wrappedfCashMock.address]); }); + describe("#registerToModule", () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectIssuanceModule: Address; + + const subject = () => { + return notionalTradeModule + .connect(caller) + .registerToModule(subjectSetToken, subjectIssuanceModule); + }; + + beforeEach(async () => { + caller = manager.wallet; + subjectSetToken = setToken.address; + const newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); + console.log("Adding module on controller"); + await setup.controller.addModule(newIssuanceModule.address); + console.log("Adding module on token"); + await setToken.connect(manager.wallet).addModule(newIssuanceModule.address); + console.log("Initializing new issuance module"); + await newIssuanceModule.initialize(setToken.address); + subjectIssuanceModule = newIssuanceModule.address; + }); + + it("should not revert", async () => { + await subject(); + }); + }); + describe("#getFCashPositions", () => { let subjectSetToken: string; const subject = () => { From 62d9677bff97f09bb8922e416de0cca6f9406fdd Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 16:40:59 +0800 Subject: [PATCH 058/120] Add additional unit test cases --- .../modules/v1/notionalTradeModule.spec.ts | 62 ++++++++++++++++--- 1 file changed, 55 insertions(+), 7 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 62e963328..6570d2886 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -8,6 +8,7 @@ import { ManagerIssuanceHookMock, NotionalTradeModule, DebtIssuanceModule, + DebtIssuanceMock, SetToken, StandardTokenMock, WrappedfCashMock, @@ -153,6 +154,30 @@ describe("NotionalTradeModule", () => { await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); }); + describe("#updateAllowedSetToken", async () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectStatus: boolean; + + beforeEach(async () => { + caller = owner.wallet; + subjectStatus = true; + }); + + const subject = () => { + return notionalTradeModule + .connect(caller) + .updateAllowedSetToken(subjectSetToken, subjectStatus); + }; + describe("when set token is invalid", () => { + beforeEach(() => { + subjectSetToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Invalid set token"); + }); + }); + }); describe("#initialize", async () => { let isAllowListed: boolean = true; let subjectSetToken: Address; @@ -327,6 +352,7 @@ describe("NotionalTradeModule", () => { let caller: SignerWithAddress; let subjectSetToken: Address; let subjectIssuanceModule: Address; + let newIssuanceModule: DebtIssuanceMock; const subject = () => { return notionalTradeModule @@ -337,18 +363,26 @@ describe("NotionalTradeModule", () => { beforeEach(async () => { caller = manager.wallet; subjectSetToken = setToken.address; - const newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); - console.log("Adding module on controller"); + newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); await setup.controller.addModule(newIssuanceModule.address); - console.log("Adding module on token"); await setToken.connect(manager.wallet).addModule(newIssuanceModule.address); - console.log("Initializing new issuance module"); - await newIssuanceModule.initialize(setToken.address); subjectIssuanceModule = newIssuanceModule.address; }); - it("should not revert", async () => { - await subject(); + describe("when token is initialized on new issuance module", () => { + beforeEach(async () => { + await newIssuanceModule.initialize(setToken.address); + }); + + it("should not revert", async () => { + await subject(); + }); + }); + + describe("when token is NOT initialized on new issuance module", () => { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); }); }); @@ -404,6 +438,20 @@ describe("NotionalTradeModule", () => { ); }; + describe("When neither token is a registered fCash position", () => { + beforeEach(() => { + subjectSendToken = dai.address; + subjectSendQuantity = ether(1); + subjectReceiveToken = cDai.address; + subjectMinReceiveQuantity = ether(1); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Neither send nor receive token is a registered fCash position", + ); + }); + }); + ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { From 405917e76cd83f3238b6bc72e57472b31036127f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 17:12:22 +0800 Subject: [PATCH 059/120] More unittest cases for managing allowed set tokens --- .../modules/v1/notionalTradeModule.spec.ts | 78 +++++++++++++++++-- 1 file changed, 72 insertions(+), 6 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 6570d2886..2dd92f326 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -154,6 +154,36 @@ describe("NotionalTradeModule", () => { await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); }); + describe("#updateAnySetAllowed", async () => { + let caller: SignerWithAddress; + let subjectStatus: boolean; + + beforeEach(async () => { + caller = owner.wallet; + }); + + const subject = () => { + return notionalTradeModule.connect(caller).updateAnySetAllowed(subjectStatus); + }; + describe("when setting to true", () => { + beforeEach(async () => { + subjectStatus = true; + }); + it("updates allowedSetTokens", async () => { + await subject(); + expect(await notionalTradeModule.anySetAllowed()).to.be.true; + }); + describe("when caller is not the owner", () => { + beforeEach(() => { + caller = manager.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); + }); + }); + }); + }); + describe("#updateAllowedSetToken", async () => { let caller: SignerWithAddress; let subjectSetToken: Address; @@ -161,7 +191,6 @@ describe("NotionalTradeModule", () => { beforeEach(async () => { caller = owner.wallet; - subjectStatus = true; }); const subject = () => { @@ -169,15 +198,52 @@ describe("NotionalTradeModule", () => { .connect(caller) .updateAllowedSetToken(subjectSetToken, subjectStatus); }; - describe("when set token is invalid", () => { - beforeEach(() => { - subjectSetToken = ethers.constants.AddressZero; + describe("when adding a new allowed set token", () => { + beforeEach(async () => { + subjectStatus = true; }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Invalid set token"); + describe("when set token is invalid", () => { + beforeEach(() => { + subjectSetToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Invalid SetToken"); + }); + }); + describe("when set token is valid", () => { + beforeEach(() => { + subjectSetToken = setToken.address; + }); + it("updates allowedSetTokens", async () => { + await subject(); + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; + }); + }); + describe("when caller is not the owner", () => { + beforeEach(() => { + caller = manager.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); + }); + }); + }); + describe("when removing an allowed set token", () => { + beforeEach(async () => { + subjectSetToken = setToken.address; + subjectStatus = false; + await notionalTradeModule + .connect(owner.wallet) + .updateAllowedSetToken(subjectSetToken, true); + }); + it("updates allowedSetTokens", async () => { + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; + await subject(); + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.false; }); }); }); + describe("#initialize", async () => { let isAllowListed: boolean = true; let subjectSetToken: Address; From 84404caca61a18bd6d442cd78da71b08684e6cb9 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 19:06:26 +0800 Subject: [PATCH 060/120] Test cases for wrong in/output amounts during trades --- contracts/mocks/WrappedfCashMock.sol | 23 +++++++++----- .../modules/v1/NotionalTradeModule.sol | 2 +- .../modules/v1/notionalTradeModule.spec.ts | 30 ++++++++++++++++--- 3 files changed, 43 insertions(+), 12 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 7b02264ca..505ebe97e 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -39,7 +39,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { int256 private assetPrecision; TokenType private tokenType; - uint256 private redemptionAssetAmount; + uint256 private redeemTokenReturned; + uint256 private mintTokenSpent; constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC20("FCashMock", "FCM") { assetToken = _assetToken; @@ -56,7 +57,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { address receiver, uint32 minImpliedRate ) external override{ - assetToken.transferFrom(msg.sender, address(this), depositAmountExternal); + uint256 assetTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; + assetToken.transferFrom(msg.sender, address(this), assetTokenAmount); _mint(receiver, fCashAmount); } @@ -66,20 +68,22 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { address receiver, uint32 minImpliedRate ) external override{ - underlyingToken.transferFrom(msg.sender, address(this), depositAmountExternal); + uint256 underlyingTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; + underlyingToken.transferFrom(msg.sender, address(this), underlyingTokenAmount); _mint(receiver, fCashAmount); } function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external override { _burn(msg.sender, amount); - uint256 assetTokenAmount = redemptionAssetAmount == 0 ? amount : redemptionAssetAmount; + uint256 assetTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; assetToken.transfer(receiver, assetTokenAmount); } function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external override { _burn(msg.sender, amount); - underlyingToken.transfer(receiver, amount); + uint256 underlyingTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; + underlyingToken.transfer(receiver, underlyingTokenAmount); } /// @notice Returns the underlying fCash ID of the token @@ -130,7 +134,12 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { matured = _matured; } - function setRedemptionAssetAmount(uint256 _redemptionAssetAmount) external{ - redemptionAssetAmount = _redemptionAssetAmount; + function setRedeemTokenReturned(uint256 _redeemTokenReturned) external{ + redeemTokenReturned = _redeemTokenReturned; } + + function setMintTokenSpent(uint256 _mintTokenSpent) external{ + mintTokenSpent = _mintTokenSpent; + } + } diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 8fc3d018f..952821728 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -380,7 +380,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss preTradeReceiveTokenBalance ); - require(sentAmount <= _maxSendAmount, "Overpaid"); + require(sentAmount <= _maxSendAmount, "Overspent"); emit FCashMinted(_setToken, _fCashPosition, _sendToken, _fCashAmount, sentAmount); } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 2dd92f326..2b4497ac0 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -542,15 +542,18 @@ describe("NotionalTradeModule", () => { // Apparently it is not possible to trade tokens that are not a set component // Also sending extra tokens to the trade module might break it // TODO: Review - await sendToken.transfer(wrappedfCashMock.address, subjectSendQuantity); + await sendToken.transfer( + wrappedfCashMock.address, + subjectSendQuantity.mul(2), + ); await notionalTradeModule .connect(manager.wallet) .trade( setToken.address, wrappedfCashMock.address, - fTokenQuantity, + fTokenQuantity.mul(2), sendToken.address, - subjectSendQuantity, + subjectSendQuantity.mul(2), ); } if (tradeDirection == "selling") { @@ -561,6 +564,25 @@ describe("NotionalTradeModule", () => { } }); + if (tradeDirection == "buying") { + describe(`when too much ${tokenType} is spent`, () => { + beforeEach(async () => { + await wrappedfCashMock.setMintTokenSpent(subjectSendQuantity.mul(2)); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Overspent"); + }); + }); + } else { + describe(`when too little ${tokenType} is returned`, () => { + beforeEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned(subjectMinReceiveQuantity.div(2)); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Not enough received amount"); + }); + }); + } it("setToken should receive receiver token", async () => { const receiveTokenBalanceBefore = await receiveToken.balanceOf( setToken.address, @@ -713,7 +735,7 @@ describe("NotionalTradeModule", () => { .transfer(wrappedfCashMock.address, cDaiBalance); const redemptionAssetAmount = cDaiBalance.div(2); - await wrappedfCashMock.setRedemptionAssetAmount(redemptionAssetAmount); + await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); if (triggerAction == "redeem") { await mintWrappedFCash( From 4071e0e0bd32b9d3aa00c5012f667858bbcad843 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 9 May 2022 20:03:13 +0800 Subject: [PATCH 061/120] Fill coverage gaps in notionalModule unittests --- .../modules/v1/notionalTradeModule.spec.ts | 49 ++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 2b4497ac0..5ba5e4910 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -565,6 +565,25 @@ describe("NotionalTradeModule", () => { }); if (tradeDirection == "buying") { + + describe("When sendToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectSendToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Token is neither asset nor underlying token"); + }); + }); + + describe("When receiveAmount is 0", () => { + beforeEach(async () => { + subjectMinReceiveQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); + }); + describe(`when too much ${tokenType} is spent`, () => { beforeEach(async () => { await wrappedfCashMock.setMintTokenSpent(subjectSendQuantity.mul(2)); @@ -574,9 +593,29 @@ describe("NotionalTradeModule", () => { }); }); } else { + + describe("When receiveToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectReceiveToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Token is neither asset nor underlying token"); + }); + }); + + describe("When sendAmount is 0", () => { + beforeEach(async () => { + subjectSendQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); + }); describe(`when too little ${tokenType} is returned`, () => { beforeEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned(subjectMinReceiveQuantity.div(2)); + await wrappedfCashMock.setRedeemTokenReturned( + subjectMinReceiveQuantity.div(2), + ); }); it("should revert", async () => { await expect(subject()).to.be.revertedWith("Not enough received amount"); @@ -886,6 +925,14 @@ describe("NotionalTradeModule", () => { const positionAfter = await setToken.getDefaultPositionRealUnit(cDai.address); expect(positionAfter.sub(positionBefore)).to.be.gt(0); }); + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions(setToken.address); + }); + it("should not revert", async () => { + await subject(); + }); + }); }); }); }); From 7d03a77f1a8770857719b0e3c273dde4d1b8bba5 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 09:01:23 +0800 Subject: [PATCH 062/120] Add test case executing trade twice to fill last coverage gap --- .../modules/v1/notionalTradeModule.spec.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 5ba5e4910..1dc9d4f2e 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -559,19 +559,20 @@ describe("NotionalTradeModule", () => { if (tradeDirection == "selling") { await receiveToken.transfer( wrappedfCashMock.address, - subjectMinReceiveQuantity, + subjectMinReceiveQuantity.mul(2), ); } }); if (tradeDirection == "buying") { - describe("When sendToken is neither underlying nor asset token", () => { beforeEach(async () => { subjectSendToken = ethers.constants.AddressZero; }); it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Token is neither asset nor underlying token"); + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); }); }); @@ -593,13 +594,14 @@ describe("NotionalTradeModule", () => { }); }); } else { - describe("When receiveToken is neither underlying nor asset token", () => { beforeEach(async () => { subjectReceiveToken = ethers.constants.AddressZero; }); it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Token is neither asset nor underlying token"); + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); }); }); @@ -650,6 +652,11 @@ describe("NotionalTradeModule", () => { } }); + it("should not revert when executing trade twice", async () => { + await subject(); + await subject(); + }); + it("should return spent / received amount of non-fcash-token", async () => { const otherTokenBalanceBefore = await otherToken.balanceOf(setToken.address); const result = await subjectCall(); From f748e2154ff3608748ac63b6828488178b6f7c95 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 11:40:48 +0800 Subject: [PATCH 063/120] Deregister fcash positions when redeeming --- .../modules/v1/NotionalTradeModule.sol | 39 +++++++++++++++---- .../modules/v1/notionalTradeModule.spec.ts | 27 ++++++++----- 2 files changed, 49 insertions(+), 17 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 952821728..6bacbc2a5 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -199,7 +199,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss try IDebtIssuanceModule(modules[i]).registerToIssuanceModule(_setToken) {} catch {} } - // _collateralAssets and _borrowAssets arrays are validated in their respective internal functions _addFCashPositions(_setToken, _fCashPositions); } @@ -309,11 +308,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss view returns(address[] memory positions) { - uint256 length = fCashPositions[_setToken].length(); - positions = new address[](length); - for(uint256 i = 0; i < length; i++) { - positions[i] = fCashPositions[_setToken].at(i); - } + return _getFCashPositions(_setToken); } /* ============ Internal Functions ============ */ @@ -324,19 +319,21 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function _redeemMaturedPositions(ISetToken _setToken) internal { - uint fCashPositionLength = fCashPositions[_setToken].length(); + address[] memory fCashPositionsArray = _getFCashPositions(_setToken); + uint fCashPositionLength = fCashPositionsArray.length; if(fCashPositionLength == 0) return; bool toUnderlying = redeemToUnderlying[_setToken]; for(uint256 i = 0; i < fCashPositionLength; i++) { - IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositions[_setToken].at(i)); + IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositionsArray[i]); if(fCashPosition.hasMatured()) { IERC20 receiveToken = _getPaymentToken(fCashPosition, toUnderlying); uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); + fCashPositions[_setToken].remove(address(fCashPosition)); } } @@ -538,6 +535,22 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss (assetToken,,) = _fCashPosition.getAssetToken(); } + /** + * @dev Returns an array with fcash position addresses for given set token + */ + function _getFCashPositions(ISetToken _setToken) + internal + view + returns(address[] memory positions) + { + uint256 length = fCashPositions[_setToken].length(); + positions = new address[](length); + for(uint256 i = 0; i < length; i++) { + positions[i] = fCashPositions[_setToken].at(i); + } + } + + /** * @dev Register given fCash positions to enable them to be traded and have them monitored for maturity redemption @@ -548,6 +561,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } + /** + * @dev Remove given fCash positions to disable them from trading and maturity redemption + */ + function _removeFCashPositions(ISetToken _setToken, address[] memory _fCashPositions) internal { + for(uint256 i = 0; i < _fCashPositions.length; i++) { + fCashPositions[_setToken].remove(_fCashPositions[i]); + } + } + + /** * @dev Update set token positions after mint or redeem * @dev WARNING: This function is largely copied from the trade module diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 1dc9d4f2e..b422878dc 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -759,18 +759,19 @@ describe("NotionalTradeModule", () => { }); }); describe("#moduleIssue/RedeemHook", () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + }); ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { - let subjectSetToken: string; - let subjectReceiver: string; - let subjectAmount: BigNumber; - let caller: SignerWithAddress; beforeEach(async () => { - subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseEther("1"); - caller = owner.wallet; - subjectReceiver = caller.address; - const daiAmount = ethers.utils.parseEther("2.1"); const fCashAmount = ethers.utils.parseUnits("2", 8); @@ -897,6 +898,14 @@ describe("NotionalTradeModule", () => { expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.false; }); + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include(wrappedfCashMock.address); + }); + it("Adds assetToken (cDai) to component list", async () => { expect(await setToken.isComponent(cDai.address)).to.be.false; await subject(); From f2db5bd11827ec09d99e32a053ab2a5cea9a2533 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 12:36:17 +0800 Subject: [PATCH 064/120] Add external methods to add / remove registered fcash positions --- .../modules/v1/NotionalTradeModule.sol | 31 ++++++- .../modules/v1/notionalTradeModule.spec.ts | 84 +++++++++++++++++++ 2 files changed, 114 insertions(+), 1 deletion(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 6bacbc2a5..c2ba73f82 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -159,6 +159,34 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } + /** + * @dev Register given fCash positions to enable them to be traded and have them monitored for maturity redemption + */ + function addFCashPositions( + ISetToken _setToken, + address[] calldata _fCashPositions + ) + external + onlyManagerAndValidSet(_setToken) + { + _addFCashPositions(_setToken, _fCashPositions); + } + + /** + * @dev Remove given fCash positions to disable them from trading and maturity redemption + */ + function removeFCashPositions( + ISetToken _setToken, + address[] calldata _fCashPositions + ) + external + onlyManagerAndValidSet(_setToken) + { + _removeFCashPositions(_setToken, _fCashPositions); + } + + + /** * @dev CALLABLE BY ANYBODY: Redeem all matured fCash positions of given setToken * Redeem all fCash positions that have reached maturity for their asset token (cToken) @@ -253,6 +281,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss emit AnySetAllowedUpdated(_anySetAllowed); } + /** * @dev Hook called once before setToken issuance * @dev Ensures that no matured fCash positions are in the set when it is issued @@ -564,7 +593,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Remove given fCash positions to disable them from trading and maturity redemption */ - function _removeFCashPositions(ISetToken _setToken, address[] memory _fCashPositions) internal { + function _removeFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { for(uint256 i = 0; i < _fCashPositions.length; i++) { fCashPositions[_setToken].remove(_fCashPositions[i]); } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index b422878dc..164a58d5d 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -414,6 +414,90 @@ describe("NotionalTradeModule", () => { .initialize(setToken.address, [wrappedfCashMock.address]); }); + describe("#addFCashPositions", () => { + let subjectFCashPositions: Address[]; + let subjectSetToken: Address; + let caller: SignerWithAddress; + beforeEach(async () => { + subjectFCashPositions = [await getRandomAddress(), await getRandomAddress()]; + subjectSetToken = setToken.address; + caller = manager.wallet; + }); + const subject = () => { + return notionalTradeModule + .connect(caller) + .addFCashPositions(subjectSetToken, subjectFCashPositions); + }; + it("should adjust fCash positions accordingly", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions(subjectSetToken); + subjectFCashPositions.forEach(fCashPosition => { + expect(fCashPositions).to.include(fCashPosition); + }); + }); + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); + describe("when fCashPosition is already registered", () => { + beforeEach(async () => { + subjectFCashPositions = [wrappedfCashMock.address, await getRandomAddress()]; + }); + it("should adjust fCash positions correctly", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.deep.eq(subjectFCashPositions); + }); + }); + }); + + describe("#removeFCashPositions", () => { + let subjectFCashPositions: Address[]; + let subjectSetToken: Address; + let caller: SignerWithAddress; + beforeEach(async () => { + subjectFCashPositions = [wrappedfCashMock.address]; + subjectSetToken = setToken.address; + caller = manager.wallet; + }); + const subject = () => { + return notionalTradeModule + .connect(caller) + .removeFCashPositions(subjectSetToken, subjectFCashPositions); + }; + it("should adjust fCash positions accordingly", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions(subjectSetToken); + expect(fCashPositions).to.deep.eq([]); + }); + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); + describe("when one of the fCashPositions is not registered", () => { + beforeEach(async () => { + subjectFCashPositions = [await getRandomAddress(), wrappedfCashMock.address]; + }); + it("should adjust fCash positions correctly", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.deep.eq([]); + }); + }); + }); + describe("#registerToModule", () => { let caller: SignerWithAddress; let subjectSetToken: Address; From c0eb2cd2bbbe83b3912c37bdac1e3bd06d387550 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 14:06:12 +0800 Subject: [PATCH 065/120] Add todo comments and javadoc params --- .../modules/v1/NotionalTradeModule.sol | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index c2ba73f82..c818bfa13 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -97,14 +97,13 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ State Variables ============ */ - // Internal mapping of enabled collateral and borrow tokens for syncing positions + // Mapping for a set token, wether or not to redeem to underlying upon reaching maturity mapping(ISetToken => bool) internal redeemToUnderlying; // Mapping of SetToken to boolean indicating if SetToken is on allow list. Updateable by governance mapping(ISetToken => bool) public allowedSetTokens; // Mapping of SetToken to fCash positions that are availabe for trading on this fCash token and that are monitored for maturity - // TODO: Check / Compare alternative ways to handle this. Maybe remove this mapping and just use the set token components list ? mapping(ISetToken => EnumerableSet.AddressSet) private fCashPositions; // Boolean that returns if any SetToken can initialize this module. If false, then subject to allow list. Updateable by governance. @@ -127,10 +126,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * If sendToken is a registered fCash position it redeems it, if the receiveToken is an fCash position it mints it. * The respective other token must be either the underlying or asset token of the fCash position. * Reverts if send and receive token are not a combination of 1 registered fCash position and its underlying or asset token. - * @param _setToken Instance of the SetToken - * @param _sendToken Address of the token to trade out of ("sell") + * @param _setToken Instance of the SetToken + * @param _sendToken Address of the token to trade out of ("sell") * @param _sendAmount Amount of send token to sell. (Fixed amount in the redeem case and max amount in mint case); - * @param _receiveToken Address of the token to trade in to ("buy") + * @param _receiveToken Address of the token to trade in to ("buy") * @param _receiveAmount Amount of receive token to buy. (Fixed amount in the mint case and min amount in redeem case); */ function trade( @@ -161,6 +160,8 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Register given fCash positions to enable them to be traded and have them monitored for maturity redemption + * @param _setToken Instance of the SetToken + * @param _fCashPositions Addresses of fCash wrappers to register for trading / maturity redemption */ function addFCashPositions( ISetToken _setToken, @@ -174,6 +175,8 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Remove given fCash positions to disable them from trading and maturity redemption + * @param _setToken Instance of the SetToken + * @param _fCashPositions Addresses of fCash wrappers to remove from registry */ function removeFCashPositions( ISetToken _setToken, @@ -355,6 +358,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss bool toUnderlying = redeemToUnderlying[_setToken]; + // TODO: Review alterative to keeping track of registered fCash positions. For example iterate through all components and check for each component if it is a wrappedFCash token. for(uint256 i = 0; i < fCashPositionLength; i++) { IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositionsArray[i]); @@ -385,6 +389,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss internal returns(uint256 sentAmount) { + // TODO: If we want to integrate the wrapper deployment into this contract but don't want to keep the fCash position registry, we can call the wrapper factory here. if(_fCashAmount == 0) return 0; bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); @@ -477,7 +482,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss ) internal { - // TODO: Review if this value is correct / what is min implied rate ? uint32 minImpliedRate = 0; string memory functionSignature = @@ -504,7 +508,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss ) internal { - // TODO: Review if this value is correct / what is max implied rate ? uint32 maxImpliedRate = type(uint32).max; string memory functionSignature = @@ -586,6 +589,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss */ function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { for(uint256 i = 0; i < _fCashPositions.length; i++) { + // TODO: If we want to integrate the deployment of the wrapper in to this contract and also keep this fCashPosition registry we can call the wrapper factory here. fCashPositions[_setToken].add(_fCashPositions[i]); } } From e50ac7c10932e5928d629c8976fce076b7aae71e Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 14:10:54 +0800 Subject: [PATCH 066/120] Undo empty lines added at end of contract files --- contracts/protocol/modules/v1/AaveLeverageModule.sol | 2 +- contracts/protocol/modules/v1/TradeModule.sol | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/contracts/protocol/modules/v1/AaveLeverageModule.sol b/contracts/protocol/modules/v1/AaveLeverageModule.sol index bcf973d4f..a4799d518 100644 --- a/contracts/protocol/modules/v1/AaveLeverageModule.sol +++ b/contracts/protocol/modules/v1/AaveLeverageModule.sol @@ -1135,4 +1135,4 @@ contract AaveLeverageModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssu uint256 borrowNotionalBalance = underlyingToReserveTokens[_borrowAsset].variableDebtToken.balanceOf(address(_setToken)); return borrowNotionalBalance.preciseDivCeil(_setTotalSupply).toInt256().mul(-1); } -} +} \ No newline at end of file diff --git a/contracts/protocol/modules/v1/TradeModule.sol b/contracts/protocol/modules/v1/TradeModule.sol index 09e399990..c98919d8a 100644 --- a/contracts/protocol/modules/v1/TradeModule.sol +++ b/contracts/protocol/modules/v1/TradeModule.sol @@ -320,4 +320,4 @@ contract TradeModule is ModuleBase, ReentrancyGuard { currentReceiveTokenBalance.sub(_tradeInfo.preTradeReceiveTokenBalance) ); } -} +} \ No newline at end of file From 0566d6cd0f96812a8ff3ff76688b4bd6662a88c4 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 14:20:49 +0800 Subject: [PATCH 067/120] Undo autoformatter changes --- utils/deploys/deployExternal.ts | 1 - utils/deploys/deployMocks.ts | 107 ++++++++++---------------------- utils/deploys/deployModules.ts | 47 ++++++++------ 3 files changed, 61 insertions(+), 94 deletions(-) diff --git a/utils/deploys/deployExternal.ts b/utils/deploys/deployExternal.ts index dca28331b..9d0c3fd01 100644 --- a/utils/deploys/deployExternal.ts +++ b/utils/deploys/deployExternal.ts @@ -733,5 +733,4 @@ export default class DeployExternalContracts { public async getVToken(token: Address): Promise { return await new PerpV2BaseToken__factory(this._deployerSigner).attach(token); } - } diff --git a/utils/deploys/deployMocks.ts b/utils/deploys/deployMocks.ts index 4c7ac3103..386c75350 100644 --- a/utils/deploys/deployMocks.ts +++ b/utils/deploys/deployMocks.ts @@ -112,7 +112,7 @@ import { Uint256ArrayUtilsMock__factory } from "../../typechain/factories/Uint25 import { WrapAdapterMock__factory } from "../../typechain/factories/WrapAdapterMock__factory"; import { WrapV2AdapterMock__factory } from "../../typechain/factories/WrapV2AdapterMock__factory"; import { ZeroExMock__factory } from "../../typechain/factories/ZeroExMock__factory"; -import { StringArrayUtilsMock__factory } from "../../typechain/factories/StringArrayUtilsMock__factory"; +import { StringArrayUtilsMock__factory } from "../../typechain/factories/StringArrayUtilsMock__factory"; import { SynthMock__factory } from "../../typechain/factories/SynthMock__factory"; import { SynthetixExchangerMock__factory } from "../../typechain/factories/SynthetixExchangerMock__factory"; import { YearnStrategyMock__factory } from "../../typechain/factories/YearnStrategyMock__factory"; @@ -161,9 +161,7 @@ export default class DeployMocks { return await new Uint256ArrayUtilsMock__factory(this._deployerSigner).deploy(); } - public async deployKyberNetworkProxyMock( - mockWethAddress: Address, - ): Promise { + public async deployKyberNetworkProxyMock(mockWethAddress: Address): Promise { return await new KyberNetworkProxyMock__factory(this._deployerSigner).deploy(mockWethAddress); } @@ -183,9 +181,7 @@ export default class DeployMocks { return await new DebtModuleMock__factory(this._deployerSigner).deploy(controllerAddress); } - public async deployGovernanceAdapterMock( - initialProposalId: BigNumberish, - ): Promise { + public async deployGovernanceAdapterMock(initialProposalId: BigNumberish): Promise { return await new GovernanceAdapterMock__factory(this._deployerSigner).deploy(initialProposalId); } @@ -231,7 +227,7 @@ export default class DeployMocks { public async deployOracleAdapterMock( asset: Address, - dummyPrice: BigNumber, + dummyPrice: BigNumber ): Promise { return await new OracleAdapterMock__factory(this._deployerSigner).deploy(asset, dummyPrice); } @@ -240,16 +236,13 @@ export default class DeployMocks { return await new PositionMock__factory(this._deployerSigner).deploy(); } - public async deployPositionV2Mock( - libraryName: string, - libraryAddress: Address, - ): Promise { + public async deployPositionV2Mock(libraryName: string, libraryAddress: Address): Promise { return await new PositionV2Mock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner, + this._deployerSigner ).deploy(); } @@ -262,7 +255,8 @@ export default class DeployMocks { } public async deployStakingAdapterMock(stakingAsset: Address): Promise { - return await new StakingAdapterMock__factory(this._deployerSigner).deploy(stakingAsset); + return await new StakingAdapterMock__factory(this._deployerSigner) + .deploy(stakingAsset); } public async deployTokenMock( @@ -270,15 +264,10 @@ export default class DeployMocks { initialBalance: BigNumberish = ether(1000000000), decimals: BigNumberish = 18, name: string = "Token", - symbol: string = "Symbol", + symbol: string = "Symbol" ): Promise { - return await new StandardTokenMock__factory(this._deployerSigner).deploy( - initialAccount, - initialBalance, - name, - symbol, - decimals, - ); + return await new StandardTokenMock__factory(this._deployerSigner) + .deploy(initialAccount, initialBalance, name, symbol, decimals); } public async deployTokenWithFeeMock( @@ -286,15 +275,10 @@ export default class DeployMocks { initialBalance: BigNumberish = ether(1000000000), fee: BigNumberish = ether(0.1), name: string = "Token", - symbol: string = "Symbol", + symbol: string = "Symbol" ): Promise { - return await new StandardTokenWithFeeMock__factory(this._deployerSigner).deploy( - initialAccount, - initialBalance, - name, - symbol, - fee, - ); + return await new StandardTokenWithFeeMock__factory(this._deployerSigner) + .deploy(initialAccount, initialBalance, name, symbol, fee); } public async deployTokenWithErrorMock( @@ -303,15 +287,10 @@ export default class DeployMocks { error: BigNumberish, name: string = "Token", symbol: string = "Symbol", - decimals: BigNumberish = BigNumber.from(18), + decimals: BigNumberish = BigNumber.from(18) ): Promise { return await new StandardTokenWithRoundingErrorMock__factory(this._deployerSigner).deploy( - initialAccount, - initialBalance, - error, - name, - symbol, - decimals, + initialAccount, initialBalance, error, name, symbol, decimals ); } @@ -331,9 +310,7 @@ export default class DeployMocks { return await new AaveLendingPoolCoreMock__factory(this._deployerSigner).deploy(); } - public async deployAaveLendingPoolMock( - aaveLendingPoolCore: Address, - ): Promise { + public async deployAaveLendingPoolMock(aaveLendingPoolCore: Address): Promise { return await new AaveLendingPoolMock__factory(this._deployerSigner).deploy(aaveLendingPoolCore); } @@ -343,7 +320,7 @@ export default class DeployMocks { { [libraryName]: libraryAddress, }, - this._deployerSigner, + this._deployerSigner ).deploy(); } @@ -353,33 +330,30 @@ export default class DeployMocks { { [libraryName]: libraryAddress, }, - this._deployerSigner, + this._deployerSigner ).deploy(); } - public async deployPerpV2LibraryV2Mock( - libraryName: string, - libraryAddress: Address, - ): Promise { + public async deployPerpV2LibraryV2Mock(libraryName: string, libraryAddress: Address): Promise { return await new PerpV2LibraryV2Mock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner, + this._deployerSigner ).deploy(); } public async deployPerpV2PositionsMock( libraryName: string, - libraryAddress: Address, + libraryAddress: Address ): Promise { return await new PerpV2PositionsMock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner, + this._deployerSigner ).deploy(); } @@ -414,25 +388,22 @@ export default class DeployMocks { public async deployComptrollerMock( comp: Address, compAmount: BigNumber, - cToken: Address, + cToken: Address ): Promise { return await new ComptrollerMock__factory(this._deployerSigner).deploy( comp, compAmount, - cToken, + cToken ); } - public async deployCompoundMock( - libraryName: string, - libraryAddress: Address, - ): Promise { + public async deployCompoundMock(libraryName: string, libraryAddress: Address): Promise { return await new CompoundMock__factory( // @ts-ignore { [libraryName]: libraryAddress, }, - this._deployerSigner, + this._deployerSigner ).deploy(); } @@ -443,14 +414,8 @@ export default class DeployMocks { name: string = "Token", symbol: string = "Symbol", ): Promise { - return await new SynthMock__factory(this._deployerSigner).deploy( - initialAccount, - initialBalance, - name, - symbol, - 18, - currencyKey, - ); + return await new SynthMock__factory(this._deployerSigner) + .deploy(initialAccount, initialBalance, name, symbol, 18, currencyKey); } public async deploySynthetixExchangerMock( @@ -458,7 +423,7 @@ export default class DeployMocks { sEth: Address, sBtc: Address, currencyKeys: any, - rates: any, + rates: any ): Promise { return await new SynthetixExchangerMock__factory(this._deployerSigner).deploy( sUsd, @@ -470,7 +435,7 @@ export default class DeployMocks { rates.usd.eth, rates.eth.usd, rates.usd.btc, - rates.btc.usd, + rates.btc.usd ); } @@ -494,10 +459,7 @@ export default class DeployMocks { return await new ChainlinkAggregatorMock__factory(this._deployerSigner).deploy(decimals); } - public async deployTribePegExchangerMock( - rgt: Address, - tribe: Address, - ): Promise { + public async deployTribePegExchangerMock(rgt: Address, tribe: Address): Promise { return await new TribePegExchangerMock__factory(this._deployerSigner).deploy(rgt, tribe); } @@ -521,9 +483,6 @@ export default class DeployMocks { } public async getForkedZeroExExchange(): Promise { - return await ZeroExMock__factory.connect( - dependencies.ZERO_EX_EXCHANGE[1], - this._deployerSigner, - ); + return await ZeroExMock__factory.connect(dependencies.ZERO_EX_EXCHANGE[1], this._deployerSigner); } } diff --git a/utils/deploys/deployModules.ts b/utils/deploys/deployModules.ts index 82c3e18c5..40f4f6816 100644 --- a/utils/deploys/deployModules.ts +++ b/utils/deploys/deployModules.ts @@ -22,7 +22,7 @@ import { StreamingFeeModule, TradeModule, WrapModule, - WrapModuleV2, + WrapModuleV2 } from "../contracts"; import { Address } from "../types"; @@ -112,14 +112,8 @@ export default class DeployModules { return await new StakingModule__factory(this._deployerSigner).deploy(controller); } - public async deployCustomOracleNavIssuanceModule( - controller: Address, - weth: Address, - ): Promise { - return await new CustomOracleNavIssuanceModule__factory(this._deployerSigner).deploy( - controller, - weth, - ); + public async deployCustomOracleNavIssuanceModule(controller: Address, weth: Address): Promise { + return await new CustomOracleNavIssuanceModule__factory(this._deployerSigner).deploy(controller, weth); } public async deploySingleIndexModule( @@ -127,7 +121,7 @@ export default class DeployModules { weth: Address, uniswapRouter: Address, sushiswapRouter: Address, - balancerProxy: Address, + balancerProxy: Address ): Promise { return await new SingleIndexModule__factory(this._deployerSigner).deploy( controller, @@ -140,9 +134,12 @@ export default class DeployModules { public async deployGeneralIndexModule( controller: Address, - weth: Address, + weth: Address ): Promise { - return await new GeneralIndexModule__factory(this._deployerSigner).deploy(controller, weth); + return await new GeneralIndexModule__factory(this._deployerSigner).deploy( + controller, + weth + ); } public async deployGovernanceModule(controller: Address): Promise { @@ -201,7 +198,7 @@ export default class DeployModules { perpV2LibraryName: string, perpV2LibraryAddress: Address, perpV2PositionsLibraryName: string, - perpV2PositionsLibraryAddress: Address, + perpV2PositionsLibraryAddress: Address ): Promise { return await new PerpV2LeverageModuleV2__factory( // @ts-ignore @@ -210,8 +207,14 @@ export default class DeployModules { [perpV2LibraryName]: perpV2LibraryAddress, [perpV2PositionsLibraryName]: perpV2PositionsLibraryAddress, }, - this._deployerSigner, - ).deploy(controller, perpVault, perpQuoter, perpMarketRegistry, maxPerpPositionsPerSet); + this._deployerSigner + ).deploy( + controller, + perpVault, + perpQuoter, + perpMarketRegistry, + maxPerpPositionsPerSet + ); } public async deployPerpV2BasisTradingModule( @@ -225,7 +228,7 @@ export default class DeployModules { perpV2LibraryName: string, perpV2LibraryAddress: Address, perpV2PositionsLibraryName: string, - perpV2PositionsLibraryAddress: Address, + perpV2PositionsLibraryAddress: Address ): Promise { return await new PerpV2BasisTradingModule__factory( // @ts-ignore @@ -234,7 +237,13 @@ export default class DeployModules { [perpV2LibraryName]: perpV2LibraryAddress, [perpV2PositionsLibraryName]: perpV2PositionsLibraryAddress, }, - this._deployerSigner, - ).deploy(controller, perpVault, perpQuoter, perpMarketRegistry, maxPerpPositionsPerSet); + this._deployerSigner + ).deploy( + controller, + perpVault, + perpQuoter, + perpMarketRegistry, + maxPerpPositionsPerSet + ); } -} +} \ No newline at end of file From 24f7cbb5176cc04577b1e1196dac7d3a4e3ffe9b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 10 May 2022 14:27:12 +0800 Subject: [PATCH 068/120] Undo unnecessary changes to hardhat.config --- hardhat.config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hardhat.config.ts b/hardhat.config.ts index 25482050e..3de785350 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -61,9 +61,9 @@ const config: HardhatUserConfig = { accounts: [`0x${process.env.KOVAN_DEPLOY_PRIVATE_KEY}`], }, staging_mainnet: { - url: `https://eth-mainnet.alchemyapi.io/v2/${process.env.ALCHEMY_TOKEN}`, + url: "https://mainnet.infura.io/v3/" + process.env.INFURA_TOKEN, // @ts-ignore - // accounts: [`0x${process.env.STAGING_MAINNET_DEPLOY_PRIVATE_KEY}`], + accounts: [`0x${process.env.STAGING_MAINNET_DEPLOY_PRIVATE_KEY}`], }, production: { url: "https://mainnet.infura.io/v3/" + process.env.INFURA_TOKEN, From 6c040cca8baea4fde175b7b4b534d811a9e58d37 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 12:53:30 +0800 Subject: [PATCH 069/120] Minor nits based on PR feedback --- .../interfaces/external/INotionalProxy.sol | 1 + contracts/mocks/WrappedfCashMock.sol | 22 ++++++++++++++----- .../modules/v1/NotionalTradeModule.sol | 1 - 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/contracts/interfaces/external/INotionalProxy.sol b/contracts/interfaces/external/INotionalProxy.sol index ada426e2c..2e21b0633 100644 --- a/contracts/interfaces/external/INotionalProxy.sol +++ b/contracts/interfaces/external/INotionalProxy.sol @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: MIT pragma solidity ^0.8.11; import { NotionalProxy } from "notional-solidity-sdk/interfaces/notional/NotionalProxy.sol"; diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 505ebe97e..9ef38dda0 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -1,5 +1,5 @@ /* - Copyright 2020 Set Labs Inc. + Copyright 2022 Set Labs Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -47,7 +47,9 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { underlyingToken = _underlyingToken; } - function initialize(uint16 currencyId, uint40 maturity) external override { + function initialize(uint16 _currencyId, uint40 _maturity) external override { + currencyId = _currencyId; + maturity = _maturity; } /// @notice Mints wrapped fCash ERC20 tokens @@ -55,7 +57,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint256 depositAmountExternal, uint88 fCashAmount, address receiver, - uint32 minImpliedRate + uint32 /* minImpliedRate */ ) external override{ uint256 assetTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; assetToken.transferFrom(msg.sender, address(this), assetTokenAmount); @@ -66,7 +68,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint256 depositAmountExternal, uint88 fCashAmount, address receiver, - uint32 minImpliedRate + uint32 /* minImpliedRate */ ) external override{ uint256 underlyingTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; underlyingToken.transferFrom(msg.sender, address(this), underlyingTokenAmount); @@ -74,13 +76,21 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { } - function redeemToAsset(uint256 amount, address receiver, uint32 maxImpliedRate) external override { + function redeemToAsset( + uint256 amount, + address receiver, + uint32 /* maxImpliedRate */ + ) external override { _burn(msg.sender, amount); uint256 assetTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; assetToken.transfer(receiver, assetTokenAmount); } - function redeemToUnderlying(uint256 amount, address receiver, uint32 maxImpliedRate) external override { + function redeemToUnderlying( + uint256 amount, + address receiver, + uint32 /* maxImpliedRate */ + ) external override { _burn(msg.sender, amount); uint256 underlyingTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; underlyingToken.transfer(receiver, underlyingTokenAmount); diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index c818bfa13..6c0691e1f 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -636,6 +636,5 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss preTradeSendTokenBalance.sub(currentSendTokenBalance), currentReceiveTokenBalance.sub(preTradeReceiveTokenBalance) ); - } } From e7150ac507a3523a31618be55ce453c4363bcf23 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 13:04:26 +0800 Subject: [PATCH 070/120] Add top level docstring to NotionalTradeModule --- contracts/protocol/modules/v1/NotionalTradeModule.sol | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 6c0691e1f..da9978cf1 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -33,6 +33,12 @@ import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; +/** + * @title NotionalTradeModule + * @author Set Protocol + * @notice Smart contract that enables trading in and out of Notional fCash positions and redeem matured positions. + * @dev This module depends on the wrappedFCash token-wrapper. Meaning positions managed with this module have to be in the form of wrappedfCash NOT fCash directly. + */ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; From 32766810f95f39f5b6a34c01ce1f99615168d7d8 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 14:20:39 +0800 Subject: [PATCH 071/120] Add method to change redeemToUnderlying option and associated tests --- .../modules/v1/NotionalTradeModule.sol | 12 +- .../modules/v1/notionalTradeModule.spec.ts | 343 +++++++++--------- 2 files changed, 191 insertions(+), 164 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index da9978cf1..d80e9ce68 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -37,7 +37,7 @@ import "@openzeppelin/contracts/utils/EnumerableSet.sol"; * @title NotionalTradeModule * @author Set Protocol * @notice Smart contract that enables trading in and out of Notional fCash positions and redeem matured positions. - * @dev This module depends on the wrappedFCash token-wrapper. Meaning positions managed with this module have to be in the form of wrappedfCash NOT fCash directly. + * @dev This module depends on the wrappedFCash erc20-token-wrapper. Meaning positions managed with this module have to be in the form of wrappedfCash NOT fCash directly. */ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; @@ -290,6 +290,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss emit AnySetAllowedUpdated(_anySetAllowed); } + function setRedeemToUnderlying( + ISetToken _setToken, + bool _toUnderlying + ) + external + onlyManagerAndValidSet(_setToken) + { + redeemToUnderlying[_setToken] = _toUnderlying; + } + /** * @dev Hook called once before setToken issuance diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 164a58d5d..f5f636a32 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -853,184 +853,201 @@ describe("NotionalTradeModule", () => { caller = owner.wallet; subjectReceiver = caller.address; }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { + ["underlying", "asset"].forEach(redeemToken => { + describe(`when redeeming to ${redeemToken}`, () => { + let outputToken: IERC20; beforeEach(async () => { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - - await cDai.connect(owner.wallet).mint(ether(1)); - const cDaiBalance = await cDai.balanceOf(owner.address); - await cDai - .connect(owner.wallet) - .transfer(wrappedfCashMock.address, cDaiBalance); - - const redemptionAssetAmount = cDaiBalance.div(2); - await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); - - if (triggerAction == "redeem") { - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, - ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else { - await dai.transfer(caller.address, daiAmount); - await dai.connect(caller).approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } + const toUnderlying = redeemToken == "underlying"; + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, toUnderlying); + outputToken = redeemToken == "underlying" ? dai : cDai; }); - - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "removeModule") { - return setToken - .connect(manager.wallet) - .removeModule(notionalTradeModule.address); - } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); - } - }; - - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { + ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + beforeEach(async () => { const daiAmount = ethers.utils.parseEther("2.1"); const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, - ); - await wrappedfCashMock - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - expect(await wrappedfCashMock.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - expect(positionAfter).to.eq(positionBefore); - }); - }); - describe("When component has matured", () => { - beforeEach(async () => { - await wrappedfCashMock.setMatured(true); - }); - - if (["issue", "redeem"].includes(triggerAction)) { - it("should adjust assetToken balance correctly", async () => { - const cDaiBalanceBefore = await cDai.balanceOf(caller.address); - await subject(); - const cDaiBalanceAfter = await cDai.balanceOf(caller.address); - const amountCDaiTransfered = - triggerAction == "redeem" - ? cDaiBalanceAfter.sub(cDaiBalanceBefore) - : cDaiBalanceBefore.sub(cDaiBalanceAfter); - - expect(amountCDaiTransfered).to.be.gt(0); + await cDai.connect(owner.wallet).mint(ether(1)); + const cDaiBalance = await cDai.balanceOf(owner.address); + await cDai + .connect(owner.wallet) + .transfer(wrappedfCashMock.address, cDaiBalance); + + const redemptionAssetAmount = cDaiBalance.div(2); + await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); + + if (triggerAction == "redeem") { + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else { + await dai.transfer(caller.address, daiAmount); + await dai + .connect(caller) + .approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } }); - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf(caller.address); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf(caller.address); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + expect(await wrappedfCashMock.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); }); - } - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; - await subject(); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.false; - }); + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); - it("Removes wrappedFCash from the list of registered fCashPositions", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.not.include(wrappedfCashMock.address); - }); + if (["issue", "redeem"].includes(triggerAction)) { + it("should adjust assetToken balance correctly", async () => { + const cDaiBalanceBefore = await cDai.balanceOf(caller.address); + await subject(); + const cDaiBalanceAfter = await cDai.balanceOf(caller.address); + const amountCDaiTransfered = + triggerAction == "redeem" + ? cDaiBalanceAfter.sub(cDaiBalanceBefore) + : cDaiBalanceBefore.sub(cDaiBalanceAfter); + + expect(amountCDaiTransfered).to.be.gt(0); + }); + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf(caller.address); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf(caller.address); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + } + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.false; + }); - it("Adds assetToken (cDai) to component list", async () => { - expect(await setToken.isComponent(cDai.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(cDai.address)).to.be.true; - }); + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include(wrappedfCashMock.address); + }); - it("Adds asset token to component list", async () => { - expect(await setToken.isComponent(cDai.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(cDai.address)).to.be.true; - }); + it(`Adds ${redeemToken} token to component list`, async () => { + expect(await setToken.isComponent(outputToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be.true; + }); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedfCashMock.balanceOf(subjectSetToken); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedfCashMock.balanceOf(subjectSetToken); - expect(balanceAfter).to.eq(0); - }); + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf(subjectSetToken); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf(subjectSetToken); + expect(balanceAfter).to.eq(0); + }); - it("Afterwards setToken should have received asset token", async () => { - const balanceBefore = await cDai.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await cDai.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + console.log("Output token address", outputToken.address); + const balanceBefore = await outputToken.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + const cDaiBalanceAfter = await cDai.balanceOf(subjectSetToken); + const daiBalanceAfter = await dai.balanceOf(subjectSetToken); + console.log("balances after", { + cDaiBalanceAfter: cDaiBalanceAfter.toString(), + daiBalanceAfter: daiBalanceAfter.toString(), + }); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); - it("Afterwards setToken should have positive cDai position", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - cDai.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit(cDai.address); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); - }); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); - }); - it("should not revert", async () => { - await subject(); + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions(setToken.address); + }); + it("should not revert", async () => { + await subject(); + }); + }); }); }); }); From 1fef416a46604848656803110a42c8d2e2254d9b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 14:30:17 +0800 Subject: [PATCH 072/120] Fix unittests --- .../modules/v1/notionalTradeModule.spec.ts | 35 ++++++++++++------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index f5f636a32..279a9b688 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -894,15 +894,24 @@ describe("NotionalTradeModule", () => { await setToken .connect(caller) .approve(debtIssuanceModule.address, subjectAmount); - } else { + } else if (triggerAction == "issue"){ await dai.transfer(caller.address, daiAmount); - await dai - .connect(caller) - .approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + + if (redeemToken == "underlying") { + // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance + await dai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } else { + // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance + await dai + .connect(caller) + .approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } } }); @@ -964,14 +973,14 @@ describe("NotionalTradeModule", () => { }); if (["issue", "redeem"].includes(triggerAction)) { - it("should adjust assetToken balance correctly", async () => { - const cDaiBalanceBefore = await cDai.balanceOf(caller.address); + it(`should adjust ${redeemToken} balance correctly`, async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf(caller.address); await subject(); - const cDaiBalanceAfter = await cDai.balanceOf(caller.address); + const outputTokenBalanceAfter = await outputToken.balanceOf(caller.address); const amountCDaiTransfered = triggerAction == "redeem" - ? cDaiBalanceAfter.sub(cDaiBalanceBefore) - : cDaiBalanceBefore.sub(cDaiBalanceAfter); + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); expect(amountCDaiTransfered).to.be.gt(0); }); From 7889355a58d34258f42d03a4c9187a23420c2669 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 15:08:24 +0800 Subject: [PATCH 073/120] Add unit test to set the redeemToUnderlying parameter --- .../modules/v1/NotionalTradeModule.sol | 2 +- .../modules/v1/notionalTradeModule.spec.ts | 59 +++++++++++++++---- 2 files changed, 50 insertions(+), 11 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index d80e9ce68..05e14fd5d 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -104,7 +104,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ State Variables ============ */ // Mapping for a set token, wether or not to redeem to underlying upon reaching maturity - mapping(ISetToken => bool) internal redeemToUnderlying; + mapping(ISetToken => bool) public redeemToUnderlying; // Mapping of SetToken to boolean indicating if SetToken is on allow list. Updateable by governance mapping(ISetToken => bool) public allowedSetTokens; diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 279a9b688..9abb7f079 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -536,6 +536,48 @@ describe("NotionalTradeModule", () => { }); }); + describe("#setRedeemToUnderlying", () => { + let subjectSetToken: string; + let subjectToUnderlying: boolean; + let caller: SignerWithAddress; + const subject = () => { + return notionalTradeModule + .connect(caller) + .setRedeemToUnderlying(subjectSetToken, subjectToUnderlying); + }; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectToUnderlying = true; + caller = manager.wallet; + }); + describe("when setting to true", () => { + it("should adjust the state correctly", async () => { + await subject(); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be.true; + }); + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); + }); + + describe("when setting to false", () => { + beforeEach(async () => { + subjectToUnderlying = false; + await notionalTradeModule.setRedeemToUnderlying(subjectSetToken, true); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be.true; + }); + it("should adjust the state correctly", async () => { + await subject(); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be.false; + }); + }); + }); + describe("#getFCashPositions", () => { let subjectSetToken: string; const subject = () => { @@ -894,7 +936,7 @@ describe("NotionalTradeModule", () => { await setToken .connect(caller) .approve(debtIssuanceModule.address, subjectAmount); - } else if (triggerAction == "issue"){ + } else if (triggerAction == "issue") { await dai.transfer(caller.address, daiAmount); if (redeemToken == "underlying") { @@ -974,9 +1016,13 @@ describe("NotionalTradeModule", () => { if (["issue", "redeem"].includes(triggerAction)) { it(`should adjust ${redeemToken} balance correctly`, async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf(caller.address); + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); await subject(); - const outputTokenBalanceAfter = await outputToken.balanceOf(caller.address); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); const amountCDaiTransfered = triggerAction == "redeem" ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) @@ -1026,16 +1072,9 @@ describe("NotionalTradeModule", () => { }); it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - console.log("Output token address", outputToken.address); const balanceBefore = await outputToken.balanceOf(subjectSetToken); await subject(); const balanceAfter = await outputToken.balanceOf(subjectSetToken); - const cDaiBalanceAfter = await cDai.balanceOf(subjectSetToken); - const daiBalanceAfter = await dai.balanceOf(subjectSetToken); - console.log("balances after", { - cDaiBalanceAfter: cDaiBalanceAfter.toString(), - daiBalanceAfter: daiBalanceAfter.toString(), - }); expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); }); From d7d167ff26ebc3e60bf74f5a88d9710e736b3f63 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 17:27:06 +0800 Subject: [PATCH 074/120] Adjust unit test to account for checks on wether given addresses are actually fCash wrappers --- .../modules/v1/NotionalTradeModule.sol | 37 +- .../modules/v1/notionalTradeModule.spec.ts | 1761 +++++++++-------- utils/contracts/index.ts | 1 + utils/deploys/deployMocks.ts | 6 + utils/deploys/deployModules.ts | 6 +- 5 files changed, 953 insertions(+), 858 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 05e14fd5d..25e2aea5c 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -28,6 +28,7 @@ import { IController } from "../../../interfaces/IController.sol"; import { IDebtIssuanceModule } from "../../../interfaces/IDebtIssuanceModule.sol"; import { IModuleIssuanceHook } from "../../../interfaces/IModuleIssuanceHook.sol"; import { IWrappedfCash, IWrappedfCashComplete } from "../../../interfaces/IWrappedFCash.sol"; +import { IWrappedfCashFactory } from "../../../interfaces/IWrappedFCashFactory.sol"; import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; @@ -115,14 +116,18 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Boolean that returns if any SetToken can initialize this module. If false, then subject to allow list. Updateable by governance. bool public anySetAllowed; + IWrappedfCashFactory public wrappedfCashFactory; + /* ============ Constructor ============ */ constructor( - IController _controller + IController _controller, + IWrappedfCashFactory _wrappedfCashFactory ) public ModuleBase(_controller) { + wrappedfCashFactory = _wrappedfCashFactory; } /* ============ External Functions ============ */ @@ -606,8 +611,36 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { for(uint256 i = 0; i < _fCashPositions.length; i++) { // TODO: If we want to integrate the deployment of the wrapper in to this contract and also keep this fCashPosition registry we can call the wrapper factory here. - fCashPositions[_setToken].add(_fCashPositions[i]); + address fCashPosition = _fCashPositions[i]; + require(_isWrappedFCash(fCashPosition), "Given address is not a valid fCash position"); + fCashPositions[_setToken].add(fCashPosition); + } + } + + /** + * @dev Checks if a given address is an fCash position that was deployed from the factory + */ + function _isWrappedFCash(address _fCashPosition) internal returns(bool){ + uint16 currencyId; + try IWrappedfCash(_fCashPosition).getCurrencyId() returns(uint16 _currencyId){ + currencyId = _currencyId; + } catch { + return false; } + + uint40 maturity; + try IWrappedfCash(_fCashPosition).getMaturity() returns(uint40 _maturity){ + maturity = _maturity; + } catch { + return false; + } + + try wrappedfCashFactory.computeAddress(currencyId, maturity) returns(address _computedAddress){ + return _fCashPosition == _computedAddress; + } catch { + return false; + } + } /** diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 9abb7f079..686472dfc 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -12,6 +12,7 @@ import { SetToken, StandardTokenMock, WrappedfCashMock, + WrappedfCashFactoryMock, } from "@utils/contracts"; import DeployHelper from "@utils/deploys"; import { ether } from "@utils/index"; @@ -73,1031 +74,1085 @@ describe("NotionalTradeModule", () => { mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); }); - describe("#constructor", async () => { - let subjectController: Address; - + describe("when factory mock is deployed", async () => { + let wrappedfCashFactoryMock: WrappedfCashFactoryMock; beforeEach(async () => { - subjectController = setup.controller.address; + wrappedfCashFactoryMock = await deployer.mocks.deployWrappedfCashFactoryMock(); }); - async function subject(): Promise { - return deployer.modules.deployNotionalTradeModule(subjectController); - } + describe("#constructor", async () => { + let subjectController: Address; + let subjectWrappedfCashFactory: Address; - it("should set the correct controller", async () => { - const notionalTradeModule = await subject(); + beforeEach(async () => { + subjectController = setup.controller.address; + subjectWrappedfCashFactory = wrappedfCashFactoryMock.address; + }); - const controller = await notionalTradeModule.controller(); - expect(controller).to.eq(subjectController); - }); - }); + async function subject(): Promise { + return deployer.modules.deployNotionalTradeModule( + subjectController, + subjectWrappedfCashFactory, + ); + } - describe("When notional module is deployed", async () => { - let notionalTradeModule: NotionalTradeModule; - beforeEach(async () => { - notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - setup.controller.address, - ); - await setup.controller.addModule(notionalTradeModule.address); - - debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( - setup.controller.address, - ); - await setup.controller.addModule(debtIssuanceModule.address); - await setup.integrationRegistry.addIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceModule.address, - ); + it("should set the correct controller", async () => { + const notionalTradeModule = await subject(); + + const controller = await notionalTradeModule.controller(); + expect(controller).to.eq(subjectController); + }); }); - describe("When wrappedFCashMock is deployed", async () => { - let wrappedfCashMock: WrappedfCashMock; - let daiBalance: BigNumber; + describe("When notional module is deployed", async () => { + let notionalTradeModule: NotionalTradeModule; beforeEach(async () => { - wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock(cDai.address, dai.address); - - daiBalance = ether(1000); - dai.transfer(owner.address, daiBalance); - dai.approve(wrappedfCashMock.address, daiBalance); - - wrappedfCashMock.mintViaUnderlying(daiBalance, daiBalance, owner.address, 0); + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + wrappedfCashFactoryMock.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + setup.controller.address, + ); + await setup.controller.addModule(debtIssuanceModule.address); + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); }); - describe("When setToken is deployed", async () => { - let wrappedfCashPosition: BigNumber; - let initialSetBalance: BigNumber; - let setToken: SetToken; - beforeEach(async () => { - wrappedfCashPosition = ethers.utils.parseUnits("2", await wrappedfCashMock.decimals()); - setToken = await setup.createSetToken( - [wrappedfCashMock.address], - [wrappedfCashPosition], - [debtIssuanceModule.address, notionalTradeModule.address], - manager.address, - ); + describe("When wrappedFCashMock is deployed", async () => { + let wrappedfCashMock: WrappedfCashMock; + let daiBalance: BigNumber; + let currencyId: number; + let maturity: number; + beforeEach(async () => { + wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock(cDai.address, dai.address); + currencyId = 1; + maturity = (await ethers.provider.getBlock("latest")).timestamp + 30 * 24 * 3600; - expect(await setToken.isPendingModule(debtIssuanceModule.address)).to.be.true; + await wrappedfCashMock.initialize(currencyId, maturity); - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, + await wrappedfCashFactoryMock.registerWrapper( + currencyId, + maturity, + wrappedfCashMock.address, ); - initialSetBalance = daiBalance.div(10); - await wrappedfCashMock.approve(debtIssuanceModule.address, daiBalance); - await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); - }); - - describe("#updateAnySetAllowed", async () => { - let caller: SignerWithAddress; - let subjectStatus: boolean; + daiBalance = ether(1000); + dai.transfer(owner.address, daiBalance); + dai.approve(wrappedfCashMock.address, daiBalance); + wrappedfCashMock.mintViaUnderlying(daiBalance, daiBalance, owner.address, 0); + }); + describe("When setToken is deployed", async () => { + let wrappedfCashPosition: BigNumber; + let initialSetBalance: BigNumber; + let setToken: SetToken; beforeEach(async () => { - caller = owner.wallet; + wrappedfCashPosition = ethers.utils.parseUnits("2", await wrappedfCashMock.decimals()); + + setToken = await setup.createSetToken( + [wrappedfCashMock.address], + [wrappedfCashPosition], + [debtIssuanceModule.address, notionalTradeModule.address], + manager.address, + ); + + expect(await setToken.isPendingModule(debtIssuanceModule.address)).to.be.true; + + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + + initialSetBalance = daiBalance.div(10); + await wrappedfCashMock.approve(debtIssuanceModule.address, daiBalance); + await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); }); - const subject = () => { - return notionalTradeModule.connect(caller).updateAnySetAllowed(subjectStatus); - }; - describe("when setting to true", () => { + describe("#updateAnySetAllowed", async () => { + let caller: SignerWithAddress; + let subjectStatus: boolean; + beforeEach(async () => { - subjectStatus = true; - }); - it("updates allowedSetTokens", async () => { - await subject(); - expect(await notionalTradeModule.anySetAllowed()).to.be.true; + caller = owner.wallet; }); - describe("when caller is not the owner", () => { - beforeEach(() => { - caller = manager.wallet; + + const subject = () => { + return notionalTradeModule.connect(caller).updateAnySetAllowed(subjectStatus); + }; + describe("when setting to true", () => { + beforeEach(async () => { + subjectStatus = true; }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); + it("updates allowedSetTokens", async () => { + await subject(); + expect(await notionalTradeModule.anySetAllowed()).to.be.true; + }); + describe("when caller is not the owner", () => { + beforeEach(() => { + caller = manager.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); + }); }); }); }); - }); - - describe("#updateAllowedSetToken", async () => { - let caller: SignerWithAddress; - let subjectSetToken: Address; - let subjectStatus: boolean; - beforeEach(async () => { - caller = owner.wallet; - }); + describe("#updateAllowedSetToken", async () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectStatus: boolean; - const subject = () => { - return notionalTradeModule - .connect(caller) - .updateAllowedSetToken(subjectSetToken, subjectStatus); - }; - describe("when adding a new allowed set token", () => { beforeEach(async () => { - subjectStatus = true; + caller = owner.wallet; }); - describe("when set token is invalid", () => { - beforeEach(() => { - subjectSetToken = ethers.constants.AddressZero; + + const subject = () => { + return notionalTradeModule + .connect(caller) + .updateAllowedSetToken(subjectSetToken, subjectStatus); + }; + describe("when adding a new allowed set token", () => { + beforeEach(async () => { + subjectStatus = true; + }); + describe("when set token is invalid", () => { + beforeEach(() => { + subjectSetToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Invalid SetToken"); + }); + }); + describe("when set token is valid", () => { + beforeEach(() => { + subjectSetToken = setToken.address; + }); + it("updates allowedSetTokens", async () => { + await subject(); + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Invalid SetToken"); + describe("when caller is not the owner", () => { + beforeEach(() => { + caller = manager.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); + }); }); }); - describe("when set token is valid", () => { - beforeEach(() => { + describe("when removing an allowed set token", () => { + beforeEach(async () => { subjectSetToken = setToken.address; + subjectStatus = false; + await notionalTradeModule + .connect(owner.wallet) + .updateAllowedSetToken(subjectSetToken, true); }); it("updates allowedSetTokens", async () => { - await subject(); expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; - }); - }); - describe("when caller is not the owner", () => { - beforeEach(() => { - caller = manager.wallet; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); + await subject(); + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.false; }); }); }); - describe("when removing an allowed set token", () => { - beforeEach(async () => { - subjectSetToken = setToken.address; - subjectStatus = false; - await notionalTradeModule - .connect(owner.wallet) - .updateAllowedSetToken(subjectSetToken, true); - }); - it("updates allowedSetTokens", async () => { - expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; - await subject(); - expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.false; - }); - }); - }); - describe("#initialize", async () => { - let isAllowListed: boolean = true; - let subjectSetToken: Address; - let subjectFCashPositions: Address[]; - let subjectCaller: Account; + describe("#initialize", async () => { + let isAllowListed: boolean = true; + let subjectSetToken: Address; + let subjectFCashPositions: Address[]; + let subjectCaller: Account; - beforeEach(async () => { - if (isAllowListed) { - // Add SetToken to allow list - console.log("Updated allow list"); - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - } - - subjectSetToken = setToken.address; - subjectFCashPositions = [setup.weth.address, setup.dai.address]; - subjectCaller = manager; - console.log("Done"); - }); - - async function subject(): Promise { - return notionalTradeModule - .connect(subjectCaller.wallet) - .initialize(subjectSetToken, subjectFCashPositions); - } + beforeEach(async () => { + if (isAllowListed) { + // Add SetToken to allow list + console.log("Updated allow list"); + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + } - describe("when isAllowListed is true", () => { - before(async () => { - isAllowListed = true; + subjectSetToken = setToken.address; + subjectFCashPositions = [wrappedfCashMock.address]; + subjectCaller = manager; + console.log("Done"); }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule( - notionalTradeModule.address, - ); - expect(isModuleEnabled).to.eq(true); - }); + async function subject(): Promise { + return notionalTradeModule + .connect(subjectCaller.wallet) + .initialize(subjectSetToken, subjectFCashPositions); + } - describe("when debt issuance module is not added to integration registry", async () => { - beforeEach(async () => { - await setup.integrationRegistry.removeIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - ); + describe("when isAllowListed is true", () => { + before(async () => { + isAllowListed = true; }); - afterEach(async () => { - // Add debt issuance address to integration - await setup.integrationRegistry.addIntegration( + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceModule.address, ); + expect(isModuleEnabled).to.eq(true); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be valid adapter"); - }); - }); + describe("when debt issuance module is not added to integration registry", async () => { + beforeEach(async () => { + await setup.integrationRegistry.removeIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + ); + }); - describe("when debt issuance module is not initialized on SetToken", async () => { - beforeEach(async () => { - await setToken.connect(manager.wallet).removeModule(debtIssuanceModule.address); - }); + afterEach(async () => { + // Add debt issuance address to integration + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); + }); - afterEach(async () => { - await setToken.connect(manager.wallet).addModule(debtIssuanceModule.address); - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, - ); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be valid adapter"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Issuance not initialized"); - }); - }); + describe("when debt issuance module is not initialized on SetToken", async () => { + beforeEach(async () => { + await setToken.connect(manager.wallet).removeModule(debtIssuanceModule.address); + }); - describe("when the caller is not the SetToken manager", async () => { - beforeEach(async () => { - subjectCaller = await getRandomAccount(); - }); + afterEach(async () => { + await setToken.connect(manager.wallet).addModule(debtIssuanceModule.address); + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); }); - }); - describe("when SetToken is not in pending state", async () => { - beforeEach(async () => { - const newModule = await getRandomAddress(); - await setup.controller.addModule(newModule); - - const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( - [setup.weth.address], - [ether(1)], - [newModule], - manager.address, - ); + describe("when the caller is not the SetToken manager", async () => { + beforeEach(async () => { + subjectCaller = await getRandomAccount(); + }); - subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be pending initialization"); - }); - }); + describe("when SetToken is not in pending state", async () => { + beforeEach(async () => { + const newModule = await getRandomAddress(); + await setup.controller.addModule(newModule); + + const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( + [setup.weth.address], + [ether(1)], + [newModule], + manager.address, + ); - describe("when the SetToken is not enabled on the controller", async () => { - beforeEach(async () => { - const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( - [setup.weth.address], - [ether(1)], - [notionalTradeModule.address], - manager.address, - ); + subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + }); - subjectSetToken = nonEnabledSetToken.address; + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be pending initialization"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); - }); - }); - }); + describe("when the SetToken is not enabled on the controller", async () => { + beforeEach(async () => { + const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( + [setup.weth.address], + [ether(1)], + [notionalTradeModule.address], + manager.address, + ); - describe("when isAllowListed is false", async () => { - before(async () => { - isAllowListed = false; - }); + subjectSetToken = nonEnabledSetToken.address; + }); - describe("when SetToken is not allowlisted", async () => { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Not allowed SetToken"); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); + }); }); }); - describe("when any Set can initialize this module", async () => { - beforeEach(async () => { - await notionalTradeModule.updateAnySetAllowed(true); + describe("when isAllowListed is false", async () => { + before(async () => { + isAllowListed = false; }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule( - notionalTradeModule.address, - ); - expect(isModuleEnabled).to.eq(true); + describe("when SetToken is not allowlisted", async () => { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Not allowed SetToken"); + }); }); - }); - }); - }); - describe("when set token is allowed", () => { - beforeEach(async () => { - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + describe("when any Set can initialize this module", async () => { + beforeEach(async () => { + await notionalTradeModule.updateAnySetAllowed(true); + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( + notionalTradeModule.address, + ); + expect(isModuleEnabled).to.eq(true); + }); + }); + }); }); - describe("when token is initialized on the notional module", () => { + describe("when set token is allowed", () => { beforeEach(async () => { - await notionalTradeModule - .connect(manager.wallet) - .initialize(setToken.address, [wrappedfCashMock.address]); + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); }); - describe("#addFCashPositions", () => { - let subjectFCashPositions: Address[]; - let subjectSetToken: Address; - let caller: SignerWithAddress; + describe("when token is initialized on the notional module", () => { beforeEach(async () => { - subjectFCashPositions = [await getRandomAddress(), await getRandomAddress()]; - subjectSetToken = setToken.address; - caller = manager.wallet; - }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .addFCashPositions(subjectSetToken, subjectFCashPositions); - }; - it("should adjust fCash positions accordingly", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions(subjectSetToken); - subjectFCashPositions.forEach(fCashPosition => { - expect(fCashPositions).to.include(fCashPosition); - }); - }); - describe("when caller is not the manager", () => { - beforeEach(() => { - caller = owner.wallet; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); - }); + await notionalTradeModule + .connect(manager.wallet) + .initialize(setToken.address, [wrappedfCashMock.address]); }); - describe("when fCashPosition is already registered", () => { + + describe("#addFCashPositions", () => { + let subjectFCashPositions: Address[]; + let subjectSetToken: Address; + let caller: SignerWithAddress; beforeEach(async () => { - subjectFCashPositions = [wrappedfCashMock.address, await getRandomAddress()]; + subjectFCashPositions = [wrappedfCashMock.address]; + subjectSetToken = setToken.address; + caller = manager.wallet; }); - it("should adjust fCash positions correctly", async () => { + const subject = () => { + return notionalTradeModule + .connect(caller) + .addFCashPositions(subjectSetToken, subjectFCashPositions); + }; + it("should adjust fCash positions accordingly", async () => { await subject(); const fCashPositions = await notionalTradeModule.getFCashPositions( subjectSetToken, ); - expect(fCashPositions).to.deep.eq(subjectFCashPositions); + subjectFCashPositions.forEach(fCashPosition => { + expect(fCashPositions).to.include(fCashPosition); + }); }); - }); - }); - - describe("#removeFCashPositions", () => { - let subjectFCashPositions: Address[]; - let subjectSetToken: Address; - let caller: SignerWithAddress; - beforeEach(async () => { - subjectFCashPositions = [wrappedfCashMock.address]; - subjectSetToken = setToken.address; - caller = manager.wallet; - }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .removeFCashPositions(subjectSetToken, subjectFCashPositions); - }; - it("should adjust fCash positions accordingly", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions(subjectSetToken); - expect(fCashPositions).to.deep.eq([]); - }); - describe("when caller is not the manager", () => { - beforeEach(() => { - caller = owner.wallet; + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + describe("when fCashPosition is already registered", () => { + beforeEach(async () => { + subjectFCashPositions = [wrappedfCashMock.address]; + }); + it("should keep fcash positions unchanged", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.deep.eq(subjectFCashPositions); + }); }); }); - describe("when one of the fCashPositions is not registered", () => { + + describe("#removeFCashPositions", () => { + let subjectFCashPositions: Address[]; + let subjectSetToken: Address; + let caller: SignerWithAddress; beforeEach(async () => { - subjectFCashPositions = [await getRandomAddress(), wrappedfCashMock.address]; + subjectFCashPositions = [wrappedfCashMock.address]; + subjectSetToken = setToken.address; + caller = manager.wallet; }); - it("should adjust fCash positions correctly", async () => { + const subject = () => { + return notionalTradeModule + .connect(caller) + .removeFCashPositions(subjectSetToken, subjectFCashPositions); + }; + it("should adjust fCash positions accordingly", async () => { await subject(); const fCashPositions = await notionalTradeModule.getFCashPositions( subjectSetToken, ); expect(fCashPositions).to.deep.eq([]); }); + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); + describe("when one of the fCashPositions is not registered", () => { + beforeEach(async () => { + subjectFCashPositions = [await getRandomAddress(), wrappedfCashMock.address]; + }); + it("should adjust fCash positions correctly", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.deep.eq([]); + }); + }); }); - }); - describe("#registerToModule", () => { - let caller: SignerWithAddress; - let subjectSetToken: Address; - let subjectIssuanceModule: Address; - let newIssuanceModule: DebtIssuanceMock; + describe("#registerToModule", () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectIssuanceModule: Address; + let newIssuanceModule: DebtIssuanceMock; - const subject = () => { - return notionalTradeModule - .connect(caller) - .registerToModule(subjectSetToken, subjectIssuanceModule); - }; + const subject = () => { + return notionalTradeModule + .connect(caller) + .registerToModule(subjectSetToken, subjectIssuanceModule); + }; - beforeEach(async () => { - caller = manager.wallet; - subjectSetToken = setToken.address; - newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); - await setup.controller.addModule(newIssuanceModule.address); - await setToken.connect(manager.wallet).addModule(newIssuanceModule.address); - subjectIssuanceModule = newIssuanceModule.address; - }); - - describe("when token is initialized on new issuance module", () => { beforeEach(async () => { - await newIssuanceModule.initialize(setToken.address); + caller = manager.wallet; + subjectSetToken = setToken.address; + newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); + await setup.controller.addModule(newIssuanceModule.address); + await setToken.connect(manager.wallet).addModule(newIssuanceModule.address); + subjectIssuanceModule = newIssuanceModule.address; }); - it("should not revert", async () => { - await subject(); - }); - }); + describe("when token is initialized on new issuance module", () => { + beforeEach(async () => { + await newIssuanceModule.initialize(setToken.address); + }); - describe("when token is NOT initialized on new issuance module", () => { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Issuance not initialized"); + it("should not revert", async () => { + await subject(); + }); }); - }); - }); - describe("#setRedeemToUnderlying", () => { - let subjectSetToken: string; - let subjectToUnderlying: boolean; - let caller: SignerWithAddress; - const subject = () => { - return notionalTradeModule - .connect(caller) - .setRedeemToUnderlying(subjectSetToken, subjectToUnderlying); - }; - beforeEach(() => { - subjectSetToken = setToken.address; - subjectToUnderlying = true; - caller = manager.wallet; - }); - describe("when setting to true", () => { - it("should adjust the state correctly", async () => { - await subject(); - expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be.true; - }); - describe("when caller is not the manager", () => { - beforeEach(() => { - caller = owner.wallet; - }); + describe("when token is NOT initialized on new issuance module", () => { it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + await expect(subject()).to.be.revertedWith("Issuance not initialized"); }); }); }); - describe("when setting to false", () => { - beforeEach(async () => { - subjectToUnderlying = false; - await notionalTradeModule.setRedeemToUnderlying(subjectSetToken, true); - expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be.true; + describe("#setRedeemToUnderlying", () => { + let subjectSetToken: string; + let subjectToUnderlying: boolean; + let caller: SignerWithAddress; + const subject = () => { + return notionalTradeModule + .connect(caller) + .setRedeemToUnderlying(subjectSetToken, subjectToUnderlying); + }; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectToUnderlying = true; + caller = manager.wallet; }); - it("should adjust the state correctly", async () => { - await subject(); - expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be.false; + describe("when setting to true", () => { + it("should adjust the state correctly", async () => { + await subject(); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be + .true; + }); + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); }); - }); - }); - describe("#getFCashPositions", () => { - let subjectSetToken: string; - const subject = () => { - return notionalTradeModule.getFCashPositions(subjectSetToken); - }; - beforeEach(() => { - subjectSetToken = setToken.address; - }); - it("should return the correct fCash positions", async () => { - const fCashPositions = await subject(); - expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); - }); - }); - describe("#trade", () => { - let receiveToken: IERC20; - let sendToken: IERC20; - let subjectSetToken: string; - let subjectSendToken: string; - let subjectSendQuantity: BigNumber; - let subjectReceiveToken: string; - let subjectMinReceiveQuantity: BigNumber; - let caller: SignerWithAddress; - - beforeEach(async () => { - subjectSetToken = setToken.address; - caller = manager.wallet; + describe("when setting to false", () => { + beforeEach(async () => { + subjectToUnderlying = false; + await notionalTradeModule.connect(manager.wallet).setRedeemToUnderlying(subjectSetToken, true); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be + .true; + }); + it("should adjust the state correctly", async () => { + await subject(); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be + .false; + }); + }); }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - const subjectCall = () => { - return notionalTradeModule - .connect(caller) - .callStatic.trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - describe("When neither token is a registered fCash position", () => { + describe("#getFCashPositions", () => { + let subjectSetToken: string; + const subject = () => { + return notionalTradeModule.getFCashPositions(subjectSetToken); + }; beforeEach(() => { - subjectSendToken = dai.address; - subjectSendQuantity = ether(1); - subjectReceiveToken = cDai.address; - subjectMinReceiveQuantity = ether(1); + subjectSetToken = setToken.address; }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Neither send nor receive token is a registered fCash position", - ); + it("should return the correct fCash positions", async () => { + const fCashPositions = await subject(); + expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); }); }); + describe("#trade", () => { + let receiveToken: IERC20; + let sendToken: IERC20; + let subjectSetToken: string; + let subjectSendToken: string; + let subjectSendQuantity: BigNumber; + let subjectReceiveToken: string; + let subjectMinReceiveQuantity: BigNumber; + let caller: SignerWithAddress; - ["buying", "selling"].forEach(tradeDirection => { - ["underlyingToken", "assetToken"].forEach(tokenType => { - describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { - let sendTokenType: string; - let receiveTokenType: string; - let otherToken: IERC20; - beforeEach(async () => { - const fTokenQuantity = ethers.utils.parseUnits("1", 8); - - otherToken = tokenType == "assetToken" ? cDai : dai; - sendToken = tradeDirection == "buying" ? otherToken : wrappedfCashMock; - sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; - receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; - subjectSendToken = sendToken.address; + beforeEach(async () => { + subjectSetToken = setToken.address; + caller = manager.wallet; + }); - receiveToken = tradeDirection == "buying" ? wrappedfCashMock : otherToken; - subjectReceiveToken = receiveToken.address; + const subject = () => { + return notionalTradeModule + .connect(caller) + .trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + }; + + const subjectCall = () => { + return notionalTradeModule + .connect(caller) + .callStatic.trade( + subjectSetToken, + subjectSendToken, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + }; + + describe("When neither token is a registered fCash position", () => { + beforeEach(() => { + subjectSendToken = dai.address; + subjectSendQuantity = ether(1); + subjectReceiveToken = cDai.address; + subjectMinReceiveQuantity = ether(1); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Neither send nor receive token is a registered fCash position", + ); + }); + }); - subjectMinReceiveQuantity = fTokenQuantity; - subjectSendQuantity = fTokenQuantity; - if (tradeDirection == "buying") { - // Apparently it is not possible to trade tokens that are not a set component - // Also sending extra tokens to the trade module might break it - // TODO: Review - await sendToken.transfer( - wrappedfCashMock.address, - subjectSendQuantity.mul(2), - ); - await notionalTradeModule - .connect(manager.wallet) - .trade( - setToken.address, + ["buying", "selling"].forEach(tradeDirection => { + ["underlyingToken", "assetToken"].forEach(tokenType => { + describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { + let sendTokenType: string; + let receiveTokenType: string; + let otherToken: IERC20; + beforeEach(async () => { + const fTokenQuantity = ethers.utils.parseUnits("1", 8); + + otherToken = tokenType == "assetToken" ? cDai : dai; + sendToken = tradeDirection == "buying" ? otherToken : wrappedfCashMock; + sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; + subjectSendToken = sendToken.address; + + receiveToken = tradeDirection == "buying" ? wrappedfCashMock : otherToken; + subjectReceiveToken = receiveToken.address; + + subjectMinReceiveQuantity = fTokenQuantity; + subjectSendQuantity = fTokenQuantity; + if (tradeDirection == "buying") { + // Apparently it is not possible to trade tokens that are not a set component + // Also sending extra tokens to the trade module might break it + // TODO: Review + await sendToken.transfer( wrappedfCashMock.address, - fTokenQuantity.mul(2), - sendToken.address, subjectSendQuantity.mul(2), ); - } - if (tradeDirection == "selling") { - await receiveToken.transfer( - wrappedfCashMock.address, - subjectMinReceiveQuantity.mul(2), - ); - } - }); - - if (tradeDirection == "buying") { - describe("When sendToken is neither underlying nor asset token", () => { - beforeEach(async () => { - subjectSendToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", + await notionalTradeModule + .connect(manager.wallet) + .trade( + setToken.address, + wrappedfCashMock.address, + fTokenQuantity.mul(2), + sendToken.address, + subjectSendQuantity.mul(2), + ); + } + if (tradeDirection == "selling") { + await receiveToken.transfer( + wrappedfCashMock.address, + subjectMinReceiveQuantity.mul(2), ); - }); + } }); - describe("When receiveAmount is 0", () => { - beforeEach(async () => { - subjectMinReceiveQuantity = BigNumber.from(0); - }); - it("should not revert", async () => { - await subject(); + if (tradeDirection == "buying") { + describe("When sendToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectSendToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); + }); }); - }); - describe(`when too much ${tokenType} is spent`, () => { - beforeEach(async () => { - await wrappedfCashMock.setMintTokenSpent(subjectSendQuantity.mul(2)); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Overspent"); - }); - }); - } else { - describe("When receiveToken is neither underlying nor asset token", () => { - beforeEach(async () => { - subjectReceiveToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", - ); + describe("When receiveAmount is 0", () => { + beforeEach(async () => { + subjectMinReceiveQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); }); - }); - describe("When sendAmount is 0", () => { - beforeEach(async () => { - subjectSendQuantity = BigNumber.from(0); + describe(`when too much ${tokenType} is spent`, () => { + beforeEach(async () => { + await wrappedfCashMock.setMintTokenSpent(subjectSendQuantity.mul(2)); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Overspent"); + }); }); - it("should not revert", async () => { - await subject(); + } else { + describe("When receiveToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectReceiveToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); + }); }); - }); - describe(`when too little ${tokenType} is returned`, () => { - beforeEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned( - subjectMinReceiveQuantity.div(2), - ); + + describe("When sendAmount is 0", () => { + beforeEach(async () => { + subjectSendQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Not enough received amount"); + describe(`when too little ${tokenType} is returned`, () => { + beforeEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned( + subjectMinReceiveQuantity.div(2), + ); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Not enough received amount", + ); + }); }); - }); - } - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( - subjectMinReceiveQuantity, - ); - }); - - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, + } + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, ); - } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( - subjectSendQuantity, + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, ); - } - }); - - it("should not revert when executing trade twice", async () => { - await subject(); - await subject(); - }); - - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf(setToken.address); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); + expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( + subjectMinReceiveQuantity, + ); + }); - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); - } else { - expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); - } + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); + it("should not revert when executing trade twice", async () => { + await subject(); + await subject(); + }); - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); - - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div(totalSetSupplyEther); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, ); - } + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); + + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + } else { + expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); + } - if (receiveTokenType == "underlyingToken") { // TODO: Review why there is some deviation const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } - }); + }); - it("should adjust the components position of the sendToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); - - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, ); - } - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); - }); - }); - }); - }); - }); - describe("#moduleIssue/RedeemHook", () => { - let subjectSetToken: string; - let subjectReceiver: string; - let subjectAmount: BigNumber; - let caller: SignerWithAddress; - beforeEach(() => { - subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseEther("1"); - caller = owner.wallet; - subjectReceiver = caller.address; - }); - ["underlying", "asset"].forEach(redeemToken => { - describe(`when redeeming to ${redeemToken}`, () => { - let outputToken: IERC20; - beforeEach(async () => { - const toUnderlying = redeemToken == "underlying"; - await notionalTradeModule - .connect(manager.wallet) - .setRedeemToUnderlying(subjectSetToken, toUnderlying); - outputToken = redeemToken == "underlying" ? dai : cDai; - }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { - beforeEach(async () => { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - - await cDai.connect(owner.wallet).mint(ether(1)); - const cDaiBalance = await cDai.balanceOf(owner.address); - await cDai - .connect(owner.wallet) - .transfer(wrappedfCashMock.address, cDaiBalance); - - const redemptionAssetAmount = cDaiBalance.div(2); - await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); - - if (triggerAction == "redeem") { - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, - ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else if (triggerAction == "issue") { - await dai.transfer(caller.address, daiAmount); - - if (redeemToken == "underlying") { - // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance - await dai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } else { - // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance - await dai - .connect(caller) - .approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - } - }); + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "removeModule") { - return setToken - .connect(manager.wallet) - .removeModule(notionalTradeModule.address); + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, + ); } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); } - }; - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, - ); - await wrappedfCashMock - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - expect(await wrappedfCashMock.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), ); - expect(positionAfter).to.eq(positionBefore); - }); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } }); - describe("When component has matured", () => { - beforeEach(async () => { - await wrappedfCashMock.setMatured(true); - }); - - if (["issue", "redeem"].includes(triggerAction)) { - it(`should adjust ${redeemToken} balance correctly`, async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf( - caller.address, - ); - await subject(); - const outputTokenBalanceAfter = await outputToken.balanceOf( - caller.address, - ); - const amountCDaiTransfered = - triggerAction == "redeem" - ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) - : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); - - expect(amountCDaiTransfered).to.be.gt(0); - }); - - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf(caller.address); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf(caller.address); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); - }); - } + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; - await subject(); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.false; - }); + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - it("Removes wrappedFCash from the list of registered fCashPositions", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), ); - expect(fCashPositions).to.not.include(wrappedfCashMock.address); - }); - - it(`Adds ${redeemToken} token to component list`, async () => { - expect(await setToken.isComponent(outputToken.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be.true; - }); + } - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedfCashMock.balanceOf(subjectSetToken); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedfCashMock.balanceOf(subjectSetToken); - expect(balanceAfter).to.eq(0); - }); + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), + ); + }); + }); + }); + }); + }); + describe("#moduleIssue/RedeemHook", () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + }); + ["underlying", "asset"].forEach(redeemToken => { + describe(`when redeeming to ${redeemToken}`, () => { + let outputToken: IERC20; + beforeEach(async () => { + const toUnderlying = redeemToken == "underlying"; + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, toUnderlying); + outputToken = redeemToken == "underlying" ? dai : cDai; + }); + ["issue", "redeem", "manualTrigger", "removeModule"].forEach( + triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + beforeEach(async () => { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); - it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - const balanceBefore = await outputToken.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + await cDai.connect(owner.wallet).mint(ether(1)); + const cDaiBalance = await cDai.balanceOf(owner.address); + await cDai + .connect(owner.wallet) + .transfer(wrappedfCashMock.address, cDaiBalance); + + const redemptionAssetAmount = cDaiBalance.div(2); + await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); + + if (triggerAction == "redeem") { + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else if (triggerAction == "issue") { + await dai.transfer(caller.address, daiAmount); + + if (redeemToken == "underlying") { + // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance + await dai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } else { + // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance + await dai + .connect(caller) + .approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + } + }); - it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); - }); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + expect(await wrappedfCashMock.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); }); - it("should not revert", async () => { - await subject(); + + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); + + if (["issue", "redeem"].includes(triggerAction)) { + it(`should adjust ${redeemToken} balance correctly`, async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); + await subject(); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); + const amountCDaiTransfered = + triggerAction == "redeem" + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); + + expect(amountCDaiTransfered).to.be.gt(0); + }); + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf( + caller.address, + ); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf( + caller.address, + ); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + } + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .false; + }); + + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include(wrappedfCashMock.address); + }); + + it(`Adds ${redeemToken} token to component list`, async () => { + expect(await setToken.isComponent(outputToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be.true; + }); + + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceAfter).to.eq(0); + }); + + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions(setToken.address); + }); + it("should not revert", async () => { + await subject(); + }); + }); }); }); - }); - }); + }, + ); }); }); }); diff --git a/utils/contracts/index.ts b/utils/contracts/index.ts index 10b46a38c..b6718f2f9 100644 --- a/utils/contracts/index.ts +++ b/utils/contracts/index.ts @@ -128,6 +128,7 @@ export { WrapModuleV2 } from "../../typechain/WrapModuleV2"; export { WrappedfCash } from "../../typechain/WrappedfCash"; export { WrappedfCashFactory } from "../../typechain/WrappedfCashFactory"; export { WrappedfCashMock } from "../../typechain/WrappedfCashMock"; +export { WrappedfCashFactoryMock } from "../../typechain/WrappedfCashFactoryMock"; export { YearnWrapV2Adapter } from "../../typechain/YearnWrapV2Adapter"; export { YearnStrategyMock } from "../../typechain/YearnStrategyMock"; export { ZeroExApiAdapter } from "../../typechain/ZeroExApiAdapter"; diff --git a/utils/deploys/deployMocks.ts b/utils/deploys/deployMocks.ts index 386c75350..c3b04406a 100644 --- a/utils/deploys/deployMocks.ts +++ b/utils/deploys/deployMocks.ts @@ -59,6 +59,7 @@ import { UnitConversionUtilsMock, SetTokenAccessibleMock, WrappedfCashMock, + WrappedfCashFactoryMock, } from "../contracts"; import { ether } from "../common"; @@ -121,6 +122,7 @@ import { UniswapV3MathMock__factory } from "../../typechain/factories/UniswapV3M import { UnitConversionUtilsMock__factory } from "../../typechain/factories/UnitConversionUtilsMock__factory"; import { SetTokenAccessibleMock__factory } from "../../typechain/factories/SetTokenAccessibleMock__factory"; import { WrappedfCashMock__factory } from "../../typechain/factories/WrappedfCashMock__factory"; +import { WrappedfCashFactoryMock__factory } from "../../typechain/factories/WrappedfCashFactoryMock__factory"; export default class DeployMocks { private _deployerSigner: Signer; @@ -474,6 +476,10 @@ export default class DeployMocks { public async deployWrappedfCashMock(assetToken: Address, underlyingToken: Address): Promise { return await new WrappedfCashMock__factory(this._deployerSigner).deploy(assetToken, underlyingToken); } + + public async deployWrappedfCashFactoryMock(): Promise { + return await new WrappedfCashFactoryMock__factory(this._deployerSigner).deploy(); + } /** *********************************** * Instance getters ************************************/ diff --git a/utils/deploys/deployModules.ts b/utils/deploys/deployModules.ts index 40f4f6816..a57ab61b4 100644 --- a/utils/deploys/deployModules.ts +++ b/utils/deploys/deployModules.ts @@ -179,8 +179,8 @@ export default class DeployModules { ).deploy(controller, lendingPoolAddressesProvider); } - public async deployNotionalTradeModule(controller: Address): Promise { - return await new NotionalTradeModule__factory(this._deployerSigner).deploy(controller); + public async deployNotionalTradeModule(controller: Address, wrappedfCashFactory: Address): Promise { + return await new NotionalTradeModule__factory(this._deployerSigner).deploy(controller, wrappedfCashFactory); } public async deployWrapModuleV2(controller: Address, weth: Address): Promise { @@ -246,4 +246,4 @@ export default class DeployModules { maxPerpPositionsPerSet ); } -} \ No newline at end of file +} From caf6e4b0272a4683779efceb9e82ba17ea3c6fdb Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 14 May 2022 17:36:47 +0800 Subject: [PATCH 075/120] Fix integrationtests --- .../notionalTradeModule.spec.ts | 20 ++++++++++++---- test/integration/notionalTradeModule/utils.ts | 23 +++++++++++-------- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 4f3961269..c9352e444 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -22,11 +22,17 @@ import { ManagerIssuanceHookMock, NotionalTradeModule, WrappedfCash, + WrappedfCashFactory, } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; import { ICErc20 } from "@typechain/ICErc20"; -import { upgradeNotionalProxy, deployWrappedfCashInstance, mintWrappedFCash } from "./utils"; +import { + upgradeNotionalProxy, + deployWrappedfCashInstance, + deployWrappedfCashFactory, + mintWrappedFCash, +} from "./utils"; const expect = getWaffleExpect(); @@ -55,8 +61,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { describe("When WrappedfCash is deployed", () => { let wrappedFCashInstance: WrappedfCash; + let wrappedFCashFactory: WrappedfCashFactory; beforeEach(async () => { - wrappedFCashInstance = await deployWrappedfCashInstance(deployer, owner.wallet, cdaiAddress); + wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); + wrappedFCashInstance = await deployWrappedfCashInstance(wrappedFCashFactory, cdaiAddress); }); describe("When notional proxy is upgraded", () => { @@ -86,6 +94,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { // Deploy NotionalTradeModule notionalTradeModule = await deployer.modules.deployNotionalTradeModule( setup.controller.address, + wrappedFCashFactory.address, ); await setup.controller.addModule(notionalTradeModule.address); @@ -275,7 +284,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { wrappedFCashInstance.address, fTokenQuantity.mul(2), sendToken.address, - subjectSendQuantity + subjectSendQuantity, ); } else { subjectSendQuantity = fTokenQuantity; @@ -406,7 +415,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review - expect(sendTokenAmountNormalized).to.closeTo(positionChange, positionChange.div(10**6).toNumber()); + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), + ); }); if (tradeDirection == "buying") { diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts index 78f8ab22a..cbba392da 100644 --- a/test/integration/notionalTradeModule/utils.ts +++ b/test/integration/notionalTradeModule/utils.ts @@ -1,6 +1,6 @@ import { ethers, network } from "hardhat"; import { BigNumber, Signer } from "ethers"; -import { INotionalProxy, WrappedfCash } from "@utils/contracts"; +import { INotionalProxy, WrappedfCash, WrappedfCashFactory } from "@utils/contracts"; import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; import { IERC20 } from "@typechain/IERC20"; import { ICErc20 } from "@typechain/ICErc20"; @@ -81,8 +81,7 @@ export async function upgradeNotionalProxy(signer: Signer) { } export async function deployWrappedfCashInstance( - deployer: DeployHelper, - owner: SignerWithAddress, + wrappedfCashFactory: WrappedfCashFactory, underlyingAddress: string, maturityIndex = 0, ) { @@ -93,6 +92,16 @@ export async function deployWrappedfCashInstance( const currencyId = await notionalProxy.getCurrencyId(underlyingAddress); const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); const maturity = activeMarkets[maturityIndex].maturity; + const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( + currencyId, + maturity, + ); + await wrappedfCashFactory.deployWrapper(currencyId, maturity); + const wrappedFCashInstance = await ethers.getContractAt("WrappedfCash", wrappeFCashAddress) as WrappedfCash; + return wrappedFCashInstance; +} + +export async function deployWrappedfCashFactory(deployer: DeployHelper, owner: SignerWithAddress) { const wrappedfCashImplementation = await deployer.external.deployWrappedfCash( NOTIONAL_PROXY_ADDRESS, ); @@ -104,13 +113,7 @@ export async function deployWrappedfCashInstance( const wrappedfCashFactory = await deployer.external.deployWrappedfCashFactory( wrappedfCashBeacon.address, ); - const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( - currencyId, - maturity, - ); - await wrappedfCashFactory.deployWrapper(currencyId, maturity); - const wrappedFCashInstance = wrappedfCashImplementation.attach(wrappeFCashAddress); - return wrappedFCashInstance; + return wrappedfCashFactory; } export async function mintWrappedFCash( From afb6e76e7cb1c5d1ab386d840f0f61b27ad0e568 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 12:54:38 +0800 Subject: [PATCH 076/120] Add missing WrappedfCashFactory contracts --- contracts/interfaces/IWrappedFCashFactory.sol | 9 ++++ contracts/mocks/WrappedfCashFactoryMock.sol | 44 +++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 contracts/interfaces/IWrappedFCashFactory.sol create mode 100644 contracts/mocks/WrappedfCashFactoryMock.sol diff --git a/contracts/interfaces/IWrappedFCashFactory.sol b/contracts/interfaces/IWrappedFCashFactory.sol new file mode 100644 index 000000000..6dbe463a3 --- /dev/null +++ b/contracts/interfaces/IWrappedFCashFactory.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-3.0-only +pragma solidity 0.6.10; + +interface IWrappedfCashFactory { + function deployWrapper(uint16 currencyId, uint40 maturity) external returns(address); + function computeAddress(uint16 currencyId, uint40 maturity) external view returns(address); +} + + diff --git a/contracts/mocks/WrappedfCashFactoryMock.sol b/contracts/mocks/WrappedfCashFactoryMock.sol new file mode 100644 index 000000000..fc956e898 --- /dev/null +++ b/contracts/mocks/WrappedfCashFactoryMock.sol @@ -0,0 +1,44 @@ +/* + Copyright 2022 Set Labs Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + SPDX-License-Identifier: Apache License, Version 2.0 +*/ + +pragma solidity 0.6.10; +pragma experimental "ABIEncoderV2"; + +import { IWrappedfCashFactory } from "../interfaces/IWrappedFCashFactory.sol"; +import { WrappedfCashMock } from "./WrappedfCashMock.sol"; + + +// mock class using BasicToken +contract WrappedfCashFactoryMock is IWrappedfCashFactory { + + mapping(uint16 => mapping(uint40 => address)) paramsToAddress; + + function registerWrapper(uint16 _currencyId, uint40 _maturity, address _fCashWrapper) external { + paramsToAddress[_currencyId][_maturity] = _fCashWrapper; + } + + function deployWrapper(uint16 _currencyId, uint40 _maturity) external override returns(address) { + return computeAddress(_currencyId, _maturity); + } + + function computeAddress(uint16 _currencyId, uint40 _maturity) public view override returns(address) { + return paramsToAddress[_currencyId][_maturity]; + } + + +} From 33b3cd9d71dc5b7f4dd2fc2bdcd284e1eb3d425c Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 13:42:57 +0800 Subject: [PATCH 077/120] Add test cases for invalid fcash wrapper address in addFCashPositions --- .../protocol/modules/v1/NotionalTradeModule.sol | 5 +++++ .../modules/v1/notionalTradeModule.spec.ts | 16 +++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 25e2aea5c..62778c583 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -23,6 +23,7 @@ import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import { IERC777 } from "@openzeppelin/contracts/token/ERC777/IERC777.sol"; import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol"; import { ReentrancyGuard } from "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; +import { Address } from "@openzeppelin/contracts/utils/Address.sol"; import { IController } from "../../../interfaces/IController.sol"; import { IDebtIssuanceModule } from "../../../interfaces/IDebtIssuanceModule.sol"; @@ -42,6 +43,7 @@ import "@openzeppelin/contracts/utils/EnumerableSet.sol"; */ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using EnumerableSet for EnumerableSet.AddressSet; + using Address for address; /* ============ Events ============ */ @@ -621,6 +623,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * @dev Checks if a given address is an fCash position that was deployed from the factory */ function _isWrappedFCash(address _fCashPosition) internal returns(bool){ + if(!_fCashPosition.isContract()) { + return false; + } uint16 currencyId; try IWrappedfCash(_fCashPosition).getCurrencyId() returns(uint16 _currencyId){ currencyId = _currencyId; diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 686472dfc..2538d0af7 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -307,6 +307,18 @@ describe("NotionalTradeModule", () => { expect(isModuleEnabled).to.eq(true); }); + describe("when fCash position list contains invalid fCash position", async () => { + beforeEach(async () => { + subjectFCashPositions = [wrappedfCashMock.address, await getRandomAddress()]; + }); + + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Given address is not a valid fCash position", + ); + }); + }); + describe("when debt issuance module is not added to integration registry", async () => { beforeEach(async () => { await setup.integrationRegistry.removeIntegration( @@ -598,7 +610,9 @@ describe("NotionalTradeModule", () => { describe("when setting to false", () => { beforeEach(async () => { subjectToUnderlying = false; - await notionalTradeModule.connect(manager.wallet).setRedeemToUnderlying(subjectSetToken, true); + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, true); expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be .true; }); From c1b5769f13243aaeb518dac64e9fe6bd6d61262a Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 14:05:13 +0800 Subject: [PATCH 078/120] Remove reliance on registered tokens when redeeming matured positions --- .../modules/v1/NotionalTradeModule.sol | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 62778c583..cd5da5c16 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -35,6 +35,7 @@ import { ModuleBase } from "../../lib/ModuleBase.sol"; import "@openzeppelin/contracts/utils/EnumerableSet.sol"; + /** * @title NotionalTradeModule * @author Set Protocol @@ -374,26 +375,28 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function _redeemMaturedPositions(ISetToken _setToken) internal { - address[] memory fCashPositionsArray = _getFCashPositions(_setToken); - uint fCashPositionLength = fCashPositionsArray.length; - if(fCashPositionLength == 0) return; + ISetToken.Position[] memory positions = _setToken.getPositions(); + uint positionsLength = positions.length; + if(positionsLength == 0) return; bool toUnderlying = redeemToUnderlying[_setToken]; - - // TODO: Review alterative to keeping track of registered fCash positions. For example iterate through all components and check for each component if it is a wrappedFCash token. - for(uint256 i = 0; i < fCashPositionLength; i++) { - IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(fCashPositionsArray[i]); - - if(fCashPosition.hasMatured()) { - IERC20 receiveToken = _getPaymentToken(fCashPosition, toUnderlying); - uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); - _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); - fCashPositions[_setToken].remove(address(fCashPosition)); + for(uint256 i = 0; i < positions.length; i++) { + // Check that the given position is an equity position + if(positions[i].unit > 0) { + address component = positions[i].component; + if(_isWrappedFCash(component)) { + IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(component); + + if(fCashPosition.hasMatured()) { + IERC20 receiveToken = _getPaymentToken(fCashPosition, toUnderlying); + uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); + _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); + fCashPositions[_setToken].remove(address(fCashPosition)); + } + } } - } - } From fa8562609cf8b42e6de313375299a5ccd329fd59 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 18:27:25 +0800 Subject: [PATCH 079/120] Add methods to redeem / mint fCash position using currencyId and maturity --- .../modules/v1/NotionalTradeModule.sol | 136 ++++++----- .../notionalTradeModule.spec.ts | 2 +- .../modules/v1/notionalTradeModule.spec.ts | 215 ++++++------------ 3 files changed, 141 insertions(+), 212 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index cd5da5c16..45dac59e2 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -32,8 +32,6 @@ import { IWrappedfCash, IWrappedfCashComplete } from "../../../interfaces/IWrapp import { IWrappedfCashFactory } from "../../../interfaces/IWrappedFCashFactory.sol"; import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; -import "@openzeppelin/contracts/utils/EnumerableSet.sol"; - /** @@ -43,7 +41,6 @@ import "@openzeppelin/contracts/utils/EnumerableSet.sol"; * @dev This module depends on the wrappedFCash erc20-token-wrapper. Meaning positions managed with this module have to be in the form of wrappedfCash NOT fCash directly. */ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { - using EnumerableSet for EnumerableSet.AddressSet; using Address for address; /* ============ Events ============ */ @@ -113,9 +110,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Mapping of SetToken to boolean indicating if SetToken is on allow list. Updateable by governance mapping(ISetToken => bool) public allowedSetTokens; - // Mapping of SetToken to fCash positions that are availabe for trading on this fCash token and that are monitored for maturity - mapping(ISetToken => EnumerableSet.AddressSet) private fCashPositions; - // Boolean that returns if any SetToken can initialize this module. If false, then subject to allow list. Updateable by governance. bool public anySetAllowed; @@ -158,51 +152,79 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss onlyManagerAndValidSet(_setToken) returns(uint256) { - if(fCashPositions[_setToken].contains(_sendToken)) + if(_isWrappedFCash(_sendToken)) { return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendAmount, _receiveAmount); } - else if(fCashPositions[_setToken].contains(_receiveToken)) + else if(_isWrappedFCash(_receiveToken)) { return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _receiveAmount, _sendAmount); } else { revert("Neither send nor receive token is a registered fCash position"); } - } /** - * @dev Register given fCash positions to enable them to be traded and have them monitored for maturity redemption + * @dev MANAGER ONLY: Trades into a new fCash position. * @param _setToken Instance of the SetToken - * @param _fCashPositions Addresses of fCash wrappers to register for trading / maturity redemption + * @param _currencyId CurrencyId of the fCash token as defined by the notional protocol. + * @param _maturity Maturity of the fCash token as defined by the notional protocol. + * @param _mintAmount Amount of fCash token to mint + * @param _sendToken Token to mint from, must be either the underlying or the asset token. + * @param _maxSendAmount Maximum amount to spend */ - function addFCashPositions( + function mintFCashPosition( ISetToken _setToken, - address[] calldata _fCashPositions + uint16 _currencyId, + uint40 _maturity, + uint256 _mintAmount, + address _sendToken, + uint256 _maxSendAmount ) - external - onlyManagerAndValidSet(_setToken) + external + nonReentrant + onlyManagerAndValidSet(_setToken) + returns(uint256) { - _addFCashPositions(_setToken, _fCashPositions); + + IWrappedfCashComplete wrappedfCash = _getWrappedfCash(_currencyId, _maturity); + return _mintFCashPosition(_setToken, wrappedfCash, IERC20(_sendToken), _mintAmount, _maxSendAmount); } /** - * @dev Remove given fCash positions to disable them from trading and maturity redemption + * @dev MANAGER ONLY: Trades out of an existing fCash position. + * Will revert if no wrapper for the selected fCash token was deployed * @param _setToken Instance of the SetToken - * @param _fCashPositions Addresses of fCash wrappers to remove from registry + * @param _currencyId CurrencyId of the fCash token as defined by the notional protocol. + * @param _maturity Maturity of the fCash token as defined by the notional protocol. + * @param _redeemAmount Amount of fCash token to redeem + * @param _receiveToken Token to redeem into, must be either asset or underlying token of the fCash token + * @param _minReceiveAmount Minimum amount of receive token to receive */ - function removeFCashPositions( + function redeemFCashPosition( ISetToken _setToken, - address[] calldata _fCashPositions + uint16 _currencyId, + uint40 _maturity, + uint256 _redeemAmount, + address _receiveToken, + uint256 _minReceiveAmount ) - external - onlyManagerAndValidSet(_setToken) + external + nonReentrant + onlyManagerAndValidSet(_setToken) + returns(uint256) { - _removeFCashPositions(_setToken, _fCashPositions); - } + IWrappedfCashComplete wrappedfCash = _getWrappedfCash(_currencyId, _maturity); + return _redeemFCashPosition(_setToken, wrappedfCash, IERC20(_receiveToken), _redeemAmount, _minReceiveAmount); + } + function _getWrappedfCash(uint16 _currencyId, uint40 _maturity) internal view returns(IWrappedfCashComplete) { + address wrappedfCashAddress = wrappedfCashFactory.computeAddress(_currencyId, _maturity); + require(wrappedfCashAddress.isContract(), "WrappedfCash not deployed for given parameters"); + return IWrappedfCashComplete(wrappedfCashAddress); + } /** * @dev CALLABLE BY ANYBODY: Redeem all matured fCash positions of given setToken @@ -218,11 +240,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss * @dev MANGER ONLY: Initialize given SetToken with initial list of registered fCash positions * Redeem all fCash positions that have reached maturity for their asset token (cToken) * @param _setToken Instance of the SetToken - * @param _fCashPositions WrappedFCash tokens to register for trading and maturity monitoring. (this will NOT add these components to the set) */ function initialize( - ISetToken _setToken, - address[] calldata _fCashPositions + ISetToken _setToken ) external onlySetManager(_setToken, msg.sender) @@ -243,8 +263,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss for(uint256 i = 0; i < modules.length; i++) { try IDebtIssuanceModule(modules[i]).registerToIssuanceModule(_setToken) {} catch {} } - - _addFCashPositions(_setToken, _fCashPositions); } /** @@ -256,8 +274,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Redeem matured positions prior to any removal action _redeemMaturedPositions(setToken); - delete fCashPositions[setToken]; - // Try if unregister exists on any of the modules address[] memory modules = setToken.getModules(); for(uint256 i = 0; i < modules.length; i++) { @@ -377,22 +393,19 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { ISetToken.Position[] memory positions = _setToken.getPositions(); uint positionsLength = positions.length; - if(positionsLength == 0) return; bool toUnderlying = redeemToUnderlying[_setToken]; - for(uint256 i = 0; i < positions.length; i++) { + for(uint256 i = 0; i < positionsLength; i++) { // Check that the given position is an equity position if(positions[i].unit > 0) { address component = positions[i].component; if(_isWrappedFCash(component)) { IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(component); - if(fCashPosition.hasMatured()) { IERC20 receiveToken = _getPaymentToken(fCashPosition, toUnderlying); uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); - fCashPositions[_setToken].remove(address(fCashPosition)); } } } @@ -599,33 +612,42 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss function _getFCashPositions(ISetToken _setToken) internal view - returns(address[] memory positions) + returns(address[] memory fCashPositions) { - uint256 length = fCashPositions[_setToken].length(); - positions = new address[](length); - for(uint256 i = 0; i < length; i++) { - positions[i] = fCashPositions[_setToken].at(i); - } - } + ISetToken.Position[] memory positions = _setToken.getPositions(); + uint positionsLength = positions.length; + uint numFCashPositions; + for(uint256 i = 0; i < positionsLength; i++) { + // Check that the given position is an equity position + if(positions[i].unit > 0) { + address component = positions[i].component; + if(_isWrappedFCash(component)) { + numFCashPositions++; + } + } + } + fCashPositions = new address[](numFCashPositions); - /** - * @dev Register given fCash positions to enable them to be traded and have them monitored for maturity redemption - */ - function _addFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { - for(uint256 i = 0; i < _fCashPositions.length; i++) { - // TODO: If we want to integrate the deployment of the wrapper in to this contract and also keep this fCashPosition registry we can call the wrapper factory here. - address fCashPosition = _fCashPositions[i]; - require(_isWrappedFCash(fCashPosition), "Given address is not a valid fCash position"); - fCashPositions[_setToken].add(fCashPosition); + uint j; + for(uint256 i = 0; i < positionsLength; i++) { + if(positions[i].unit > 0) { + address component = positions[i].component; + if(_isWrappedFCash(component)) { + fCashPositions[j] = component; + j++; + } + } } } + + /** * @dev Checks if a given address is an fCash position that was deployed from the factory */ - function _isWrappedFCash(address _fCashPosition) internal returns(bool){ + function _isWrappedFCash(address _fCashPosition) internal view returns(bool){ if(!_fCashPosition.isContract()) { return false; } @@ -651,16 +673,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } - /** - * @dev Remove given fCash positions to disable them from trading and maturity redemption - */ - function _removeFCashPositions(ISetToken _setToken, address[] calldata _fCashPositions) internal { - for(uint256 i = 0; i < _fCashPositions.length; i++) { - fCashPositions[_setToken].remove(_fCashPositions[i]); - } - } - - /** * @dev Update set token positions after mint or redeem * @dev WARNING: This function is largely copied from the trade module diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index c9352e444..e0967f8a4 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -139,7 +139,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await notionalTradeModule.updateAllowedSetToken(setToken.address, true); await notionalTradeModule .connect(manager.wallet) - .initialize(setToken.address, [wrappedFCashInstance.address]); + .initialize(setToken.address); } it("Should be able to issue set from wrappedFCash", async () => { diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 2538d0af7..bc61ce4e2 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -272,7 +272,6 @@ describe("NotionalTradeModule", () => { describe("#initialize", async () => { let isAllowListed: boolean = true; let subjectSetToken: Address; - let subjectFCashPositions: Address[]; let subjectCaller: Account; beforeEach(async () => { @@ -283,15 +282,12 @@ describe("NotionalTradeModule", () => { } subjectSetToken = setToken.address; - subjectFCashPositions = [wrappedfCashMock.address]; subjectCaller = manager; console.log("Done"); }); async function subject(): Promise { - return notionalTradeModule - .connect(subjectCaller.wallet) - .initialize(subjectSetToken, subjectFCashPositions); + return notionalTradeModule.connect(subjectCaller.wallet).initialize(subjectSetToken); } describe("when isAllowListed is true", () => { @@ -307,18 +303,6 @@ describe("NotionalTradeModule", () => { expect(isModuleEnabled).to.eq(true); }); - describe("when fCash position list contains invalid fCash position", async () => { - beforeEach(async () => { - subjectFCashPositions = [wrappedfCashMock.address, await getRandomAddress()]; - }); - - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Given address is not a valid fCash position", - ); - }); - }); - describe("when debt issuance module is not added to integration registry", async () => { beforeEach(async () => { await setup.integrationRegistry.removeIntegration( @@ -446,97 +430,7 @@ describe("NotionalTradeModule", () => { describe("when token is initialized on the notional module", () => { beforeEach(async () => { - await notionalTradeModule - .connect(manager.wallet) - .initialize(setToken.address, [wrappedfCashMock.address]); - }); - - describe("#addFCashPositions", () => { - let subjectFCashPositions: Address[]; - let subjectSetToken: Address; - let caller: SignerWithAddress; - beforeEach(async () => { - subjectFCashPositions = [wrappedfCashMock.address]; - subjectSetToken = setToken.address; - caller = manager.wallet; - }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .addFCashPositions(subjectSetToken, subjectFCashPositions); - }; - it("should adjust fCash positions accordingly", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - subjectFCashPositions.forEach(fCashPosition => { - expect(fCashPositions).to.include(fCashPosition); - }); - }); - describe("when caller is not the manager", () => { - beforeEach(() => { - caller = owner.wallet; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); - }); - }); - describe("when fCashPosition is already registered", () => { - beforeEach(async () => { - subjectFCashPositions = [wrappedfCashMock.address]; - }); - it("should keep fcash positions unchanged", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.deep.eq(subjectFCashPositions); - }); - }); - }); - - describe("#removeFCashPositions", () => { - let subjectFCashPositions: Address[]; - let subjectSetToken: Address; - let caller: SignerWithAddress; - beforeEach(async () => { - subjectFCashPositions = [wrappedfCashMock.address]; - subjectSetToken = setToken.address; - caller = manager.wallet; - }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .removeFCashPositions(subjectSetToken, subjectFCashPositions); - }; - it("should adjust fCash positions accordingly", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.deep.eq([]); - }); - describe("when caller is not the manager", () => { - beforeEach(() => { - caller = owner.wallet; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); - }); - }); - describe("when one of the fCashPositions is not registered", () => { - beforeEach(async () => { - subjectFCashPositions = [await getRandomAddress(), wrappedfCashMock.address]; - }); - it("should adjust fCash positions correctly", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.deep.eq([]); - }); - }); + await notionalTradeModule.connect(manager.wallet).initialize(setToken.address); }); describe("#registerToModule", () => { @@ -645,49 +539,15 @@ describe("NotionalTradeModule", () => { let subjectSendQuantity: BigNumber; let subjectReceiveToken: string; let subjectMinReceiveQuantity: BigNumber; + let subjectCurrencyId: number; + let subjectMaturity: number | BigNumber; let caller: SignerWithAddress; beforeEach(async () => { subjectSetToken = setToken.address; caller = manager.wallet; - }); - - const subject = () => { - return notionalTradeModule - .connect(caller) - .trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - const subjectCall = () => { - return notionalTradeModule - .connect(caller) - .callStatic.trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - describe("When neither token is a registered fCash position", () => { - beforeEach(() => { - subjectSendToken = dai.address; - subjectSendQuantity = ether(1); - subjectReceiveToken = cDai.address; - subjectMinReceiveQuantity = ether(1); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Neither send nor receive token is a registered fCash position", - ); - }); + subjectCurrencyId = currencyId; + subjectMaturity = maturity; }); ["buying", "selling"].forEach(tradeDirection => { @@ -720,9 +580,10 @@ describe("NotionalTradeModule", () => { ); await notionalTradeModule .connect(manager.wallet) - .trade( + .redeemFCashPosition( setToken.address, - wrappedfCashMock.address, + subjectCurrencyId, + subjectMaturity, fTokenQuantity.mul(2), sendToken.address, subjectSendQuantity.mul(2), @@ -736,6 +597,60 @@ describe("NotionalTradeModule", () => { } }); + const subject = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule + .connect(caller) + .redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; + + const subjectCall = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .callStatic + .mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule + .connect(caller) + .callStatic + .redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; + if (tradeDirection == "buying") { describe("When sendToken is neither underlying nor asset token", () => { beforeEach(async () => { @@ -961,7 +876,9 @@ describe("NotionalTradeModule", () => { .setRedeemToUnderlying(subjectSetToken, toUnderlying); outputToken = redeemToken == "underlying" ? dai : cDai; }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach( + [ + // "issue", "redeem", "manualTrigger", "removeModule" + ].forEach( triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { beforeEach(async () => { From 9bb4ac89205672d335e7282e763b4567b8c60332 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 18:50:40 +0800 Subject: [PATCH 080/120] Use new redeem / mint methods in integration test --- .../notionalTradeModule.spec.ts | 99 +++++++++++++------ test/integration/notionalTradeModule/utils.ts | 19 ++-- 2 files changed, 82 insertions(+), 36 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index e0967f8a4..47c179806 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -31,6 +31,7 @@ import { upgradeNotionalProxy, deployWrappedfCashInstance, deployWrappedfCashFactory, + getCurrencyIdAndMaturity, mintWrappedFCash, } from "./utils"; @@ -62,9 +63,16 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { describe("When WrappedfCash is deployed", () => { let wrappedFCashInstance: WrappedfCash; let wrappedFCashFactory: WrappedfCashFactory; + let currencyId: number; + let maturity: number; beforeEach(async () => { wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); - wrappedFCashInstance = await deployWrappedfCashInstance(wrappedFCashFactory, cdaiAddress); + ({ currencyId, maturity } = await getCurrencyIdAndMaturity(cdaiAddress, 0)); + wrappedFCashInstance = await deployWrappedfCashInstance( + wrappedFCashFactory, + currencyId, + maturity, + ); }); describe("When notional proxy is upgraded", () => { @@ -137,9 +145,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { debtIssuanceModule.address, ); await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - await notionalTradeModule - .connect(manager.wallet) - .initialize(setToken.address); + await notionalTradeModule.connect(manager.wallet).initialize(setToken.address); } it("Should be able to issue set from wrappedFCash", async () => { @@ -216,37 +222,17 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - - const subjectCall = () => { - return notionalTradeModule - .connect(caller) - .callStatic.trade( - subjectSetToken, - subjectSendToken, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - }; - ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; let otherToken: IERC20; + let subjectCurrencyId: number; + let subjectMaturity: number; beforeEach(async () => { + subjectCurrencyId = currencyId; + subjectMaturity = maturity; const underlyingTokenQuantity = ethers.utils.parseEther("1"); const assetToken = cDai; const underlyingToken = dai; @@ -279,9 +265,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { // TODO: Review await notionalTradeModule .connect(manager.wallet) - .trade( + .redeemFCashPosition( setToken.address, - wrappedFCashInstance.address, + subjectCurrencyId, + subjectMaturity, fTokenQuantity.mul(2), sendToken.address, subjectSendQuantity, @@ -296,6 +283,58 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } }); + const subject = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule + .connect(caller) + .redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; + + const subjectCall = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .callStatic.mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule + .connect(caller) + .callStatic.redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; + it("setToken should receive receiver token", async () => { const receiveTokenBalanceBefore = await receiveToken.balanceOf( setToken.address, diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts index cbba392da..220bf06a8 100644 --- a/test/integration/notionalTradeModule/utils.ts +++ b/test/integration/notionalTradeModule/utils.ts @@ -80,11 +80,7 @@ export async function upgradeNotionalProxy(signer: Signer) { await notional.connect(notionalOwner).upgradeTo(newRouter.address); } -export async function deployWrappedfCashInstance( - wrappedfCashFactory: WrappedfCashFactory, - underlyingAddress: string, - maturityIndex = 0, -) { +export async function getCurrencyIdAndMaturity(underlyingAddress: string, maturityIndex: number) { const notionalProxy = (await ethers.getContractAt( "INotionalProxy", NOTIONAL_PROXY_ADDRESS, @@ -92,12 +88,23 @@ export async function deployWrappedfCashInstance( const currencyId = await notionalProxy.getCurrencyId(underlyingAddress); const activeMarkets = await notionalProxy.getActiveMarkets(currencyId); const maturity = activeMarkets[maturityIndex].maturity; + return { currencyId, maturity }; +} + +export async function deployWrappedfCashInstance( + wrappedfCashFactory: WrappedfCashFactory, + currencyId: number, + maturity: number, +) { const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( currencyId, maturity, ); await wrappedfCashFactory.deployWrapper(currencyId, maturity); - const wrappedFCashInstance = await ethers.getContractAt("WrappedfCash", wrappeFCashAddress) as WrappedfCash; + const wrappedFCashInstance = (await ethers.getContractAt( + "WrappedfCash", + wrappeFCashAddress, + )) as WrappedfCash; return wrappedFCashInstance; } From abe0ce6bc5640c9aaed8b6b03fcae2824127ce7d Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 19:12:32 +0800 Subject: [PATCH 081/120] Remove old trade method --- .../modules/v1/NotionalTradeModule.sol | 35 ------------------- 1 file changed, 35 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 45dac59e2..03c280fde 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -129,41 +129,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ External Functions ============ */ - /** - * @dev MANAGER ONLY: Trades in or out of an fCash position. - * If sendToken is a registered fCash position it redeems it, if the receiveToken is an fCash position it mints it. - * The respective other token must be either the underlying or asset token of the fCash position. - * Reverts if send and receive token are not a combination of 1 registered fCash position and its underlying or asset token. - * @param _setToken Instance of the SetToken - * @param _sendToken Address of the token to trade out of ("sell") - * @param _sendAmount Amount of send token to sell. (Fixed amount in the redeem case and max amount in mint case); - * @param _receiveToken Address of the token to trade in to ("buy") - * @param _receiveAmount Amount of receive token to buy. (Fixed amount in the mint case and min amount in redeem case); - */ - function trade( - ISetToken _setToken, - address _sendToken, - uint256 _sendAmount, - address _receiveToken, - uint256 _receiveAmount - ) - external - nonReentrant - onlyManagerAndValidSet(_setToken) - returns(uint256) - { - if(_isWrappedFCash(_sendToken)) - { - return _redeemFCashPosition(_setToken, IWrappedfCashComplete(_sendToken), IERC20(_receiveToken), _sendAmount, _receiveAmount); - } - else if(_isWrappedFCash(_receiveToken)) - { - return _mintFCashPosition(_setToken, IWrappedfCashComplete(_receiveToken), IERC20(_sendToken), _receiveAmount, _sendAmount); - } - else { - revert("Neither send nor receive token is a registered fCash position"); - } - } /** * @dev MANAGER ONLY: Trades into a new fCash position. From 42b9fb58753a15da2cae450d0277aee1f905c798 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 15 May 2022 20:24:31 +0800 Subject: [PATCH 082/120] Add test case for newly deployed wrapper in integration tests --- .../modules/v1/NotionalTradeModule.sol | 25 +- .../notionalTradeModule.spec.ts | 303 ++++++++++-------- test/integration/notionalTradeModule/utils.ts | 2 +- 3 files changed, 190 insertions(+), 140 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 03c280fde..287bf80dd 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -153,7 +153,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss returns(uint256) { - IWrappedfCashComplete wrappedfCash = _getWrappedfCash(_currencyId, _maturity); + IWrappedfCashComplete wrappedfCash = _deployWrappedfCash(_currencyId, _maturity); return _mintFCashPosition(_setToken, wrappedfCash, IERC20(_sendToken), _mintAmount, _maxSendAmount); } @@ -185,12 +185,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss return _redeemFCashPosition(_setToken, wrappedfCash, IERC20(_receiveToken), _redeemAmount, _minReceiveAmount); } - function _getWrappedfCash(uint16 _currencyId, uint40 _maturity) internal view returns(IWrappedfCashComplete) { - address wrappedfCashAddress = wrappedfCashFactory.computeAddress(_currencyId, _maturity); - require(wrappedfCashAddress.isContract(), "WrappedfCash not deployed for given parameters"); - return IWrappedfCashComplete(wrappedfCashAddress); - } - /** * @dev CALLABLE BY ANYBODY: Redeem all matured fCash positions of given setToken * Redeem all fCash positions that have reached maturity for their asset token (cToken) @@ -350,6 +344,23 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /* ============ Internal Functions ============ */ + /** + * @dev Deploy wrapper if it does not exist yet and return address + */ + function _deployWrappedfCash(uint16 _currencyId, uint40 _maturity) internal returns(IWrappedfCashComplete) { + address wrappedfCashAddress = wrappedfCashFactory.deployWrapper(_currencyId, _maturity); + return IWrappedfCashComplete(wrappedfCashAddress); + } + + /** + * @dev Return wrapper address and revert if it isn't deployed + */ + function _getWrappedfCash(uint16 _currencyId, uint40 _maturity) internal view returns(IWrappedfCashComplete) { + address wrappedfCashAddress = wrappedfCashFactory.computeAddress(_currencyId, _maturity); + require(wrappedfCashAddress.isContract(), "WrappedfCash not deployed for given parameters"); + return IWrappedfCashComplete(wrappedfCashAddress); + } + /** * @dev Redeem all matured fCash positions for the given SetToken */ diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 47c179806..351780d71 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -64,7 +64,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let wrappedFCashInstance: WrappedfCash; let wrappedFCashFactory: WrappedfCashFactory; let currencyId: number; - let maturity: number; + let maturity: BigNumber; beforeEach(async () => { wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); ({ currencyId, maturity } = await getCurrencyIdAndMaturity(cdaiAddress, 0)); @@ -222,14 +222,20 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - ["buying", "selling"].forEach(tradeDirection => { - ["underlyingToken", "assetToken"].forEach(tokenType => { + [ + "buying", + "selling" + ].forEach(tradeDirection => { + [ + "underlyingToken", + "assetToken" + ].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; let otherToken: IERC20; let subjectCurrencyId: number; - let subjectMaturity: number; + let subjectMaturity: BigNumber; beforeEach(async () => { subjectCurrencyId = currencyId; subjectMaturity = maturity; @@ -335,149 +341,182 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } }; - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf(setToken.address); - expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( - subjectMinReceiveQuantity, - ); - }); - - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, - ); - } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( - subjectSendQuantity, - ); - } - }); + (tradeDirection == "buying" ? ["new", "existing"] : ["existing"]).forEach(wrapperType => { + describe(`when using ${wrapperType} wrapper`, () => { + beforeEach(async () => { + if (wrapperType == "new") { + const newWrapperId = await getCurrencyIdAndMaturity(cdaiAddress, 1); + subjectMaturity = newWrapperId.maturity; + subjectCurrencyId = newWrapperId.currencyId; + const newWrapperAddress = await wrappedFCashFactory.computeAddress( + subjectCurrencyId, + subjectMaturity, + ); + + receiveToken = (await ethers.getContractAt( + "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20", + newWrapperAddress, + )) as IERC20; + } + }); + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = + wrapperType == "new" ? 0 : await receiveToken.balanceOf(subjectSetToken); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + subjectSetToken, + ); + expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( + subjectMinReceiveQuantity, + ); + }); - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf(setToken.address); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); - } else { - expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); - } + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, + ); + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); + + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + } else { + expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); + } + + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), + ); + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), + ); + }); - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); - - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div(totalSetSupplyEther); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), - ); - } + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - if (receiveTokenType == "underlyingToken") { - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), - ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), - ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } - }); + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, + ); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), + ); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); - it("should adjust the components position of the sendToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div(BigNumber.from(10).pow(18)); - - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), - ); - } + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); - // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); - }); + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - if (tradeDirection == "buying") { - describe("When sendQuantity is too low", () => { - beforeEach(() => { - subjectSendQuantity = BigNumber.from(1000); - }); - it("should revert", async () => { - const revertReason = - sendTokenType == "underlyingToken" ? "Dai/insufficient-balance" : "ERC20"; - await expect(subject()).to.be.revertedWith(revertReason); + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), + ); }); + + if (tradeDirection == "buying") { + describe("When sendQuantity is too low", () => { + beforeEach(() => { + subjectSendQuantity = BigNumber.from(1000); + }); + it("should revert", async () => { + const revertReason = + sendTokenType == "underlyingToken" + ? "Dai/insufficient-balance" + : "ERC20"; + await expect(subject()).to.be.revertedWith(revertReason); + }); + }); + } }); - } + }); }); }); }); describe("#moduleIssue/RedeemHook", () => { - ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { + [ + "issue", "redeem", "manualTrigger" + ].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts index 220bf06a8..5997b6a0b 100644 --- a/test/integration/notionalTradeModule/utils.ts +++ b/test/integration/notionalTradeModule/utils.ts @@ -94,7 +94,7 @@ export async function getCurrencyIdAndMaturity(underlyingAddress: string, maturi export async function deployWrappedfCashInstance( wrappedfCashFactory: WrappedfCashFactory, currencyId: number, - maturity: number, + maturity: BigNumber, ) { const wrappeFCashAddress = await wrappedfCashFactory.callStatic.deployWrapper( currencyId, From 95f0884b6c8d139c4e6a2cd1bd8ed615bca11f66 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 09:22:50 +0800 Subject: [PATCH 083/120] Reactivate the issuance / redeem hook tests --- test/protocol/modules/v1/notionalTradeModule.spec.ts | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index bc61ce4e2..7f5768b3d 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -627,8 +627,7 @@ describe("NotionalTradeModule", () => { if (tradeDirection == "buying") { return notionalTradeModule .connect(caller) - .callStatic - .mintFCashPosition( + .callStatic.mintFCashPosition( subjectSetToken, subjectCurrencyId, subjectMaturity, @@ -639,8 +638,7 @@ describe("NotionalTradeModule", () => { } else { return notionalTradeModule .connect(caller) - .callStatic - .redeemFCashPosition( + .callStatic.redeemFCashPosition( subjectSetToken, subjectCurrencyId, subjectMaturity, @@ -876,9 +874,7 @@ describe("NotionalTradeModule", () => { .setRedeemToUnderlying(subjectSetToken, toUnderlying); outputToken = redeemToken == "underlying" ? dai : cDai; }); - [ - // "issue", "redeem", "manualTrigger", "removeModule" - ].forEach( + ["issue", "redeem", "manualTrigger", "removeModule"].forEach( triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { beforeEach(async () => { From de22cde446cedef6c204393fc9fc188f847176de Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 13:50:07 +0800 Subject: [PATCH 084/120] Add additional test cases where isWrappedFCash returns false --- contracts/mocks/WrappedfCashMock.sol | 13 + .../modules/v1/notionalTradeModule.spec.ts | 397 ++++++++++-------- 2 files changed, 244 insertions(+), 166 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 9ef38dda0..d6476a376 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -39,6 +39,9 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { int256 private assetPrecision; TokenType private tokenType; + bool private revertCurrencyId; + bool private revertMaturity; + uint256 private redeemTokenReturned; uint256 private mintTokenSpent; @@ -103,6 +106,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { /// @notice Returns the underlying fCash maturity of the token function getMaturity() external override view returns (uint40) { + require(!revertMaturity, "Test revertion Maturity"); return maturity; } @@ -113,6 +117,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { /// @notice Returns the underlying fCash currency function getCurrencyId() external override view returns (uint16) { + require(!revertCurrencyId, "Test revertion CurrencyId"); return currencyId; } @@ -152,4 +157,12 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { mintTokenSpent = _mintTokenSpent; } + function setRevertCurrencyId(bool _revertCurrencyId) external{ + revertCurrencyId = _revertCurrencyId; + } + + function setRevertMaturity(bool _revertMaturity) external{ + revertMaturity = _revertMaturity; + } + } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 7f5768b3d..271518f80 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -531,7 +531,7 @@ describe("NotionalTradeModule", () => { expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); }); }); - describe("#trade", () => { + describe("#redeem/mintFCashPosition", () => { let receiveToken: IERC20; let sendToken: IERC20; let subjectSetToken: string; @@ -550,7 +550,7 @@ describe("NotionalTradeModule", () => { subjectMaturity = maturity; }); - ["buying", "selling"].forEach(tradeDirection => { + ["buying", "welling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; @@ -874,25 +874,85 @@ describe("NotionalTradeModule", () => { .setRedeemToUnderlying(subjectSetToken, toUnderlying); outputToken = redeemToken == "underlying" ? dai : cDai; }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach( - triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { - beforeEach(async () => { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - - await cDai.connect(owner.wallet).mint(ether(1)); - const cDaiBalance = await cDai.balanceOf(owner.address); - await cDai + ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + beforeEach(async () => { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + + await cDai.connect(owner.wallet).mint(ether(1)); + const cDaiBalance = await cDai.balanceOf(owner.address); + await cDai + .connect(owner.wallet) + .transfer(wrappedfCashMock.address, cDaiBalance); + + const redemptionAssetAmount = cDaiBalance.div(2); + await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); + + if (triggerAction == "redeem") { + await mintWrappedFCash( + owner.wallet, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await debtIssuanceModule .connect(owner.wallet) - .transfer(wrappedfCashMock.address, cDaiBalance); - - const redemptionAssetAmount = cDaiBalance.div(2); - await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else if (triggerAction == "issue") { + await dai.transfer(caller.address, daiAmount); + + if (redeemToken == "underlying") { + // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance + await dai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } else { + // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance + await dai + .connect(caller) + .approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + } + }); - if (triggerAction == "redeem") { + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); await mintWrappedFCash( - owner.wallet, + caller, dai, daiAmount, fCashAmount, @@ -900,186 +960,191 @@ describe("NotionalTradeModule", () => { wrappedfCashMock as any, true, ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken + await wrappedfCashMock .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else if (triggerAction == "issue") { - await dai.transfer(caller.address, daiAmount); - - if (redeemToken == "underlying") { - // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance - await dai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } else { - // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance - await dai - .connect(caller) - .approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); } + expect(await wrappedfCashMock.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); }); + }); - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "removeModule") { - return setToken - .connect(manager.wallet) - .removeModule(notionalTradeModule.address); - } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); - } - }; + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, - ); - await wrappedfCashMock - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - expect(await wrappedfCashMock.hasMatured()).to.be.false; + if (["issue", "redeem"].includes(triggerAction)) { + it(`should adjust ${redeemToken} balance correctly`, async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); + await subject(); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); + const amountCDaiTransfered = + triggerAction == "redeem" + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); + + expect(amountCDaiTransfered).to.be.gt(0); }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf( + caller.address, ); await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + const setTokenBalanceAfter = await setToken.balanceOf(caller.address); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, ); - expect(positionAfter).to.eq(positionBefore); }); + } + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .false; }); - describe("When component has matured", () => { - beforeEach(async () => { - await wrappedfCashMock.setMatured(true); - }); + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include(wrappedfCashMock.address); + }); - if (["issue", "redeem"].includes(triggerAction)) { - it(`should adjust ${redeemToken} balance correctly`, async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf( - caller.address, - ); - await subject(); - const outputTokenBalanceAfter = await outputToken.balanceOf( - caller.address, - ); - const amountCDaiTransfered = - triggerAction == "redeem" - ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) - : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); + it(`Adds ${redeemToken} token to component list`, async () => { + expect(await setToken.isComponent(outputToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be.true; + }); - expect(amountCDaiTransfered).to.be.gt(0); - }); + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf(subjectSetToken); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf(subjectSetToken); + expect(balanceAfter).to.eq(0); + }); - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf( - caller.address, - ); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf( - caller.address, - ); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); - }); - } + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .true; - await subject(); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .false; - }); + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); - it("Removes wrappedFCash from the list of registered fCashPositions", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.not.include(wrappedfCashMock.address); + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions(setToken.address); }); - - it(`Adds ${redeemToken} token to component list`, async () => { - expect(await setToken.isComponent(outputToken.address)).to.be.false; + it("should not revert", async () => { await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be.true; }); + }); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedfCashMock.balanceOf( - subjectSetToken, - ); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedfCashMock.balanceOf( - subjectSetToken, - ); - expect(balanceAfter).to.eq(0); + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions(setToken.address); }); - - it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - const balanceBefore = await outputToken.balanceOf(subjectSetToken); + it("should not revert", async () => { await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); }); + }); - it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); + if (triggerAction == "manualTrigger") { + [ + "wrong currencyId", + "wrong maturity", + "reverted getCurrencyId", + "reverted getMaturity", + ].forEach(reason => { + describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { + beforeEach(async () => { + if (reason == "wrong currencyId") { + await wrappedfCashMock.initialize(420, maturity); + } else if (reason == "wrong maturity") { + await wrappedfCashMock.initialize(currencyId, 420); + } else if (reason == "reverted getCurrencyId") { + await wrappedfCashMock.setRevertCurrencyId(true); + } else if (reason == "reverted getMaturity") { + await wrappedfCashMock.setRevertMaturity(true); + } + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); }); - describe("When positions have been redeemed already", () => { + + describe("When setToken contains an additional position that is not a smart contract", () => { beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); + // We add the owner as a fake-module to be able to add arbitrary addresses as components + await setup.controller + .connect(owner.wallet) + .addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .addComponent(await getRandomAddress()); }); - it("should not revert", async () => { + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); }); }); - }); + } }); - }, - ); + }); + }); }); }); }); From 6c55aa120fadf1d5d01e3f5f795d6acfc24bb5cd Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 14:16:48 +0800 Subject: [PATCH 085/120] Fix typo --- test/protocol/modules/v1/notionalTradeModule.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 271518f80..f21d536f8 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -550,7 +550,7 @@ describe("NotionalTradeModule", () => { subjectMaturity = maturity; }); - ["buying", "welling"].forEach(tradeDirection => { + ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; From 37113d6bf90874ca49c1d80648be3db88c42b78f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 15:02:46 +0800 Subject: [PATCH 086/120] Close more coverage gaps in isWrappedFCash --- contracts/mocks/WrappedfCashFactoryMock.sol | 6 ++++++ test/protocol/modules/v1/notionalTradeModule.spec.ts | 9 ++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/contracts/mocks/WrappedfCashFactoryMock.sol b/contracts/mocks/WrappedfCashFactoryMock.sol index fc956e898..d54d81aa5 100644 --- a/contracts/mocks/WrappedfCashFactoryMock.sol +++ b/contracts/mocks/WrappedfCashFactoryMock.sol @@ -27,6 +27,7 @@ import { WrappedfCashMock } from "./WrappedfCashMock.sol"; contract WrappedfCashFactoryMock is IWrappedfCashFactory { mapping(uint16 => mapping(uint40 => address)) paramsToAddress; + bool private revertComputeAddress; function registerWrapper(uint16 _currencyId, uint40 _maturity, address _fCashWrapper) external { paramsToAddress[_currencyId][_maturity] = _fCashWrapper; @@ -37,8 +38,13 @@ contract WrappedfCashFactoryMock is IWrappedfCashFactory { } function computeAddress(uint16 _currencyId, uint40 _maturity) public view override returns(address) { + require(!revertComputeAddress, "Test revertion ComputeAddress"); return paramsToAddress[_currencyId][_maturity]; } + function setRevertComputeAddress(bool _revertComputeAddress) external{ + revertComputeAddress = _revertComputeAddress; + } + } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index f21d536f8..bbdda7301 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -1085,6 +1085,7 @@ describe("NotionalTradeModule", () => { "wrong maturity", "reverted getCurrencyId", "reverted getMaturity", + "reverted computeAddress", ].forEach(reason => { describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { beforeEach(async () => { @@ -1096,6 +1097,8 @@ describe("NotionalTradeModule", () => { await wrappedfCashMock.setRevertCurrencyId(true); } else if (reason == "reverted getMaturity") { await wrappedfCashMock.setRevertMaturity(true); + } else if (reason == "reverted computeAddress") { + await wrappedfCashFactoryMock.setRevertComputeAddress(true); } }); it("fCash position remains the same", async () => { @@ -1113,6 +1116,7 @@ describe("NotionalTradeModule", () => { describe("When setToken contains an additional position that is not a smart contract", () => { beforeEach(async () => { + const nonContractComponent = await getRandomAddress(); // We add the owner as a fake-module to be able to add arbitrary addresses as components await setup.controller .connect(owner.wallet) @@ -1121,7 +1125,10 @@ describe("NotionalTradeModule", () => { await setToken.connect(owner.wallet).initializeModule(); await setToken .connect(owner.wallet) - .addComponent(await getRandomAddress()); + .addComponent(nonContractComponent); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(nonContractComponent, 420); }); it(`Afterwards setToken should have received ${redeemToken} token`, async () => { const balanceBefore = await outputToken.balanceOf(subjectSetToken); From afbf54ca10475a29892aa0583892c9c2368b021e Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 15:45:44 +0800 Subject: [PATCH 087/120] Add extra test case for negative position --- .../modules/v1/notionalTradeModule.spec.ts | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index bbdda7301..ec03c35fa 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -530,6 +530,20 @@ describe("NotionalTradeModule", () => { const fCashPositions = await subject(); expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); }); + describe("When the unit is negative", () => { + beforeEach(async () => { + await setup.controller.connect(owner.wallet).addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, -420); + }); + it("should not return the fCash component", async () => { + const fCashPositions = await subject(); + expect(fCashPositions).to.deep.eq([]); + }); + }); }); describe("#redeem/mintFCashPosition", () => { let receiveToken: IERC20; @@ -1086,6 +1100,7 @@ describe("NotionalTradeModule", () => { "reverted getCurrencyId", "reverted getMaturity", "reverted computeAddress", + "negative unit", ].forEach(reason => { describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { beforeEach(async () => { @@ -1099,6 +1114,16 @@ describe("NotionalTradeModule", () => { await wrappedfCashMock.setRevertMaturity(true); } else if (reason == "reverted computeAddress") { await wrappedfCashFactoryMock.setRevertComputeAddress(true); + } else if (reason == "negative unit") { + // We add the owner as a fake-module to be able to add arbitrary addresses as components + await setup.controller + .connect(owner.wallet) + .addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, -420); } }); it("fCash position remains the same", async () => { From d2e7ce1b5194f9d70326e352442c7eb24f5e576e Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 17:46:47 +0800 Subject: [PATCH 088/120] Achieve negative unit on wrappedCash position in test --- .../modules/v1/notionalTradeModule.spec.ts | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index ec03c35fa..5085b3210 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -538,6 +538,17 @@ describe("NotionalTradeModule", () => { await setToken .connect(owner.wallet) .editDefaultPositionUnit(wrappedfCashMock.address, -420); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule(wrappedfCashMock.address, externalPositionModule); + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( + wrappedfCashMock.address, + externalPositionModule, + -420, + ); }); it("should not return the fCash component", async () => { const fCashPositions = await subject(); @@ -1121,9 +1132,25 @@ describe("NotionalTradeModule", () => { .addModule(owner.address); await setToken.connect(manager.wallet).addModule(owner.address); await setToken.connect(owner.wallet).initializeModule(); + // Just changing the default position to <= 0 will make it disappear from the position list await setToken .connect(owner.wallet) .editDefaultPositionUnit(wrappedfCashMock.address, -420); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule( + wrappedfCashMock.address, + externalPositionModule, + ); + // Have to add it back in as an external position to get a negative unit + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( + wrappedfCashMock.address, + externalPositionModule, + -420, + ); } }); it("fCash position remains the same", async () => { From 3bc0f2a8ecdf528d38766a6d755b52d3eab21317 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 17:57:18 +0800 Subject: [PATCH 089/120] Add test case for trying to redeem an undeployed wrapper --- test/protocol/modules/v1/notionalTradeModule.spec.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 5085b3210..ea346b969 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -704,6 +704,18 @@ describe("NotionalTradeModule", () => { }); }); } else { + + describe("When wrappedFCash is not deployed for given parameters", () => { + beforeEach(async () => { + subjectCurrencyId = 10; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "WrappedfCash not deployed for given parameters", + ); + }); + }); + describe("When receiveToken is neither underlying nor asset token", () => { beforeEach(async () => { subjectReceiveToken = ethers.constants.AddressZero; From 1202d43e9668de806789e4a46cfe008b5ae2f3a0 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 18:05:51 +0800 Subject: [PATCH 090/120] Add integration test case for trying to sell non deployed wrapper --- .../notionalTradeModule.spec.ts | 288 +++++++++--------- 1 file changed, 147 insertions(+), 141 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 351780d71..bfab3b4e4 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -222,14 +222,8 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - [ - "buying", - "selling" - ].forEach(tradeDirection => { - [ - "underlyingToken", - "assetToken" - ].forEach(tokenType => { + ["buying", "selling"].forEach(tradeDirection => { + ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; @@ -341,7 +335,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } }; - (tradeDirection == "buying" ? ["new", "existing"] : ["existing"]).forEach(wrapperType => { + ["new", "existing"].forEach(wrapperType => { describe(`when using ${wrapperType} wrapper`, () => { beforeEach(async () => { if (wrapperType == "new") { @@ -359,153 +353,167 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { )) as IERC20; } }); - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = - wrapperType == "new" ? 0 : await receiveToken.balanceOf(subjectSetToken); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - subjectSetToken, - ); - expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( - subjectMinReceiveQuantity, - ); - }); - - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, + if (tradeDirection == "selling" && wrapperType == "new") { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "WrappedfCash not deployed for given parameters", ); - } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( - subjectSendQuantity, + }); + } else { + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = + wrapperType == "new" + ? 0 + : await receiveToken.balanceOf(subjectSetToken); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + subjectSetToken, ); - } - }); - - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf( - setToken.address, - ); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); - - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); - } else { - expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); - } - - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); - - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); + expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( + subjectMinReceiveQuantity, + ); + }); - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, + ); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div( - totalSetSupplyEther, + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, ); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf( + setToken.address, ); - } - if (receiveTokenType == "underlyingToken") { + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + } else { + expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); + } + // TODO: Review why there is some deviation const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } - }); + }); - it("should adjust the components position of the sendToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); + + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, + ); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), + ); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, ); - } - // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); - }); + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - if (tradeDirection == "buying") { - describe("When sendQuantity is too low", () => { - beforeEach(() => { - subjectSendQuantity = BigNumber.from(1000); - }); - it("should revert", async () => { - const revertReason = - sendTokenType == "underlyingToken" - ? "Dai/insufficient-balance" - : "ERC20"; - await expect(subject()).to.be.revertedWith(revertReason); - }); + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), + ); }); + + if (tradeDirection == "buying") { + describe("When sendQuantity is too low", () => { + beforeEach(() => { + subjectSendQuantity = BigNumber.from(1000); + }); + it("should revert", async () => { + const revertReason = + sendTokenType == "underlyingToken" + ? "Dai/insufficient-balance" + : "ERC20"; + await expect(subject()).to.be.revertedWith(revertReason); + }); + }); + } } }); }); @@ -514,9 +522,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("#moduleIssue/RedeemHook", () => { - [ - "issue", "redeem", "manualTrigger" - ].forEach(triggerAction => { + ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; From c662f2b4b14bf4d5d49f2204060b4b0133d9ca2f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 19:30:42 +0800 Subject: [PATCH 091/120] Make wrapper factory immutable and add some comments --- contracts/protocol/modules/v1/NotionalTradeModule.sol | 10 ++++++++-- .../notionalTradeModule/notionalTradeModule.spec.ts | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 287bf80dd..6a550dc4f 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -113,10 +113,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Boolean that returns if any SetToken can initialize this module. If false, then subject to allow list. Updateable by governance. bool public anySetAllowed; - IWrappedfCashFactory public wrappedfCashFactory; + // Factory that is used to deploy and check fCash wrapper contracts + IWrappedfCashFactory public immutable wrappedfCashFactory; /* ============ Constructor ============ */ + /** + * @dev Instantiate addresses + * @param _controller Address of controller contract + * @param _wrappedfCashFactory Address of fCash wrapper factory used to check and deploy wrappers + */ constructor( IController _controller, IWrappedfCashFactory _wrappedfCashFactory @@ -124,6 +130,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss public ModuleBase(_controller) { + // TODO: Review if we want to make this address mutable. (made it immutable initially to be consistent with other modules) wrappedfCashFactory = _wrappedfCashFactory; } @@ -404,7 +411,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss internal returns(uint256 sentAmount) { - // TODO: If we want to integrate the wrapper deployment into this contract but don't want to keep the fCash position registry, we can call the wrapper factory here. if(_fCashAmount == 0) return 0; bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index bfab3b4e4..2b4771852 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -207,7 +207,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .connect(owner.wallet) .issue(setToken.address, setAmount, owner.address); }); - describe("#trade", () => { + describe("#mint/redeemFCashPosition", () => { let receiveToken: IERC20; let sendToken: IERC20; let subjectSetToken: string; From c42eb826172a634bcfd64ce5b190844d5270a6de Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 16 May 2022 20:15:15 +0800 Subject: [PATCH 092/120] Add todo comment regarding inefficient fCash position listing --- contracts/protocol/modules/v1/NotionalTradeModule.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 6a550dc4f..29a74a7f2 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -610,6 +610,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } + // TODO: Looping twice just to get the array length for initialization feels inefficient, review if there is a better way. fCashPositions = new address[](numFCashPositions); uint j; From 800c0f8c1d0dd1a51b9cd2c1904ad2288fb7fa3e Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Tue, 17 May 2022 09:39:51 +0800 Subject: [PATCH 093/120] Combine all notional abis to single line files --- external/abi/notional/BatchAction.json | 121841 +------------------- external/abi/notional/ERC1155Action.json | 94890 +-------------- external/abi/notional/Router.json | 25959 +---- 3 files changed, 3 insertions(+), 242687 deletions(-) diff --git a/external/abi/notional/BatchAction.json b/external/abi/notional/BatchAction.json index 40aa3956d..48dd4cb0b 100644 --- a/external/abi/notional/BatchAction.json +++ b/external/abi/notional/BatchAction.json @@ -1,121840 +1 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum DepositActionType", - "name": "actionType", - "type": "uint8" - }, - { - "internalType": "uint16", - "name": "currencyId", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "depositActionAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "withdrawAmountInternalPrecision", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "withdrawEntireCashBalance", - "type": "bool" - }, - { - "internalType": "bool", - "name": "redeemToUnderlying", - "type": "bool" - } - ], - "internalType": "struct BalanceAction[]", - "name": "actions", - "type": "tuple[]" - } - ], - "name": "batchBalanceAction", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum DepositActionType", - "name": "actionType", - "type": "uint8" - }, - { - "internalType": "uint16", - "name": "currencyId", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "depositActionAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "withdrawAmountInternalPrecision", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "withdrawEntireCashBalance", - "type": "bool" - }, - { - "internalType": "bool", - "name": "redeemToUnderlying", - "type": "bool" - }, - { - "internalType": "bytes32[]", - "name": "trades", - "type": "bytes32[]" - } - ], - "internalType": "struct BalanceActionWithTrades[]", - "name": "actions", - "type": "tuple[]" - } - ], - "name": "batchBalanceAndTradeAction", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum DepositActionType", - "name": "actionType", - "type": "uint8" - }, - { - "internalType": "uint16", - "name": "currencyId", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "depositActionAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "withdrawAmountInternalPrecision", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "withdrawEntireCashBalance", - "type": "bool" - }, - { - "internalType": "bool", - "name": "redeemToUnderlying", - "type": "bool" - }, - { - "internalType": "bytes32[]", - "name": "trades", - "type": "bytes32[]" - } - ], - "internalType": "struct BalanceActionWithTrades[]", - "name": "actions", - "type": "tuple[]" - }, - { - "internalType": "bytes", - "name": "callbackData", - "type": "bytes" - } - ], - "name": "batchBalanceAndTradeActionWithCallback", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "components": [ - { - "internalType": "uint16", - "name": "currencyId", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "depositUnderlying", - "type": "bool" - }, - { - "internalType": "bytes32[]", - "name": "trades", - "type": "bytes32[]" - } - ], - "internalType": "struct BatchLend[]", - "name": "actions", - "type": "tuple[]" - } - ], - "name": "batchLend", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getLibInfo", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pauseGuardian", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pauseRouter", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "allSourcePaths": { - "141": "interfaces/IEIP20NonStandard.sol", - "147": "interfaces/aave/ILendingPool.sol", - "151": "interfaces/compound/CErc20Interface.sol", - "152": "interfaces/compound/CEtherInterface.sol", - "153": "interfaces/compound/CTokenInterface.sol", - "155": "interfaces/notional/AssetRateAdapter.sol", - "157": "interfaces/notional/IRewarder.sol", - "159": "interfaces/notional/NotionalCallback.sol", - "21": "contracts/external/FreeCollateralExternal.sol", - "22": "contracts/external/MigrateIncentives.sol", - "25": "contracts/external/SettleAssetsExternal.sol", - "28": "contracts/external/actions/ActionGuards.sol", - "29": "contracts/external/actions/BatchAction.sol", - "35": "contracts/external/actions/TradingAction.sol", - "38": "contracts/external/actions/nTokenMintAction.sol", - "39": "contracts/external/actions/nTokenRedeemAction.sol", - "6": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/math/SafeMath.sol", - "60": "contracts/global/Constants.sol", - "61": "contracts/global/Deployments.sol", - "62": "contracts/global/LibStorage.sol", - "63": "contracts/global/StorageLayoutV1.sol", - "65": "contracts/global/Types.sol", - "66": "contracts/internal/AccountContextHandler.sol", - "67": "contracts/internal/balances/BalanceHandler.sol", - "68": "contracts/internal/balances/Incentives.sol", - "69": "contracts/internal/balances/TokenHandler.sol", - "70": "contracts/internal/balances/protocols/AaveHandler.sol", - "71": "contracts/internal/balances/protocols/CompoundHandler.sol", - "72": "contracts/internal/balances/protocols/GenericToken.sol", - "76": "contracts/internal/markets/AssetRate.sol", - "77": "contracts/internal/markets/CashGroup.sol", - "78": "contracts/internal/markets/DateTime.sol", - "79": "contracts/internal/markets/Market.sol", - "80": "contracts/internal/nToken/nTokenCalculations.sol", - "81": "contracts/internal/nToken/nTokenHandler.sol", - "82": "contracts/internal/nToken/nTokenSupply.sol", - "83": "contracts/internal/portfolio/BitmapAssetsHandler.sol", - "84": "contracts/internal/portfolio/PortfolioHandler.sol", - "85": "contracts/internal/portfolio/TransferAssets.sol", - "86": "contracts/internal/settlement/SettleBitmapAssets.sol", - "87": "contracts/internal/settlement/SettlePortfolioAssets.sol", - "88": "contracts/internal/valuation/AssetHandler.sol", - "89": "contracts/internal/valuation/ExchangeRate.sol", - "90": "contracts/internal/valuation/FreeCollateral.sol", - "91": "contracts/math/ABDKMath64x64.sol", - "92": "contracts/math/Bitmap.sol", - "93": "contracts/math/FloatingPoint56.sol", - "94": "contracts/math/SafeInt256.sol" - }, - "ast": { - "absolutePath": "contracts/external/actions/BatchAction.sol", - "exportedSymbols": { - "ABDKMath64x64": [ - 44430 - ], - "AaveHandler": [ - 26669 - ], - "AccountBalance": [ - 57824 - ], - "AccountContext": [ - 57743 - ], - "AccountContextHandler": [ - 24055 - ], - "ActionGuards": [ - 3662 - ], - "AggregatorInterface": [ - 62384 - ], - "AggregatorV2V3Interface": [ - 58997 - ], - "AggregatorV3Interface": [ - 62430 - ], - "AssetHandler": [ - 40067 - ], - "AssetRate": [ - 30677 - ], - "AssetRateAdapter": [ - 59041 - ], - "AssetRateParameters": [ - 57639 - ], - "AssetRateStorage": [ - 57707 - ], - "AssetStorageState": [ - 57500 - ], - "BalanceAction": [ - 57521 - ], - "BalanceActionWithTrades": [ - 57537 - ], - "BalanceHandler": [ - 25398 - ], - "BalanceState": [ - 57632 - ], - "BalanceStorage": [ - 57767 - ], - "BatchAction": [ - 4840 - ], - "BatchLend": [ - 57508 - ], - "Bitmap": [ - 44771 - ], - "BitmapAssetsHandler": [ - 37096 - ], - "CErc20Interface": [ - 59445 - ], - "CEtherInterface": [ - 59757 - ], - "CTokenInterface": [ - 59740 - ], - "CashGroup": [ - 31956 - ], - "CashGroupParameters": [ - 57648 - ], - "CashGroupSettings": [ - 57732 - ], - "CompoundHandler": [ - 26861 - ], - "Constants": [ - 22832 - ], - "Context": [ - 62453 - ], - "DateTime": [ - 32595 - ], - "Deployments": [ - 22839 - ], - "DepositActionType": [ - 57495 - ], - "ERC20": [ - 60749 - ], - "ETHRate": [ - 57613 - ], - "ETHRateStorage": [ - 57702 - ], - "ExchangeRate": [ - 40263 - ], - "FloatingPoint56": [ - 44847 - ], - "FreeCollateral": [ - 41676 - ], - "FreeCollateralExternal": [ - 618 - ], - "GenericToken": [ - 26993 - ], - "IAToken": [ - 60771 - ], - "IATokenFull": [ - 60806 - ], - "IEIP20NonStandard": [ - 61875 - ], - "IERC20": [ - 59607 - ], - "ILendingPool": [ - 60888 - ], - "IRewarder": [ - 59057 - ], - "IScaledBalanceToken": [ - 60796 - ], - "Incentives": [ - 25585 - ], - "LendingPoolStorage": [ - 60812 - ], - "LibStorage": [ - 23238 - ], - "LiquidationFactors": [ - 57591 - ], - "Market": [ - 34509 - ], - "MarketParameters": [ - 57678 - ], - "MarketStorage": [ - 57787 - ], - "MigrateIncentives": [ - 775 - ], - "NotionalCallback": [ - 58532 - ], - "PortfolioAsset": [ - 57661 - ], - "PortfolioAssetStorage": [ - 57799 - ], - "PortfolioHandler": [ - 38387 - ], - "PortfolioState": [ - 57602 - ], - "SafeInt256": [ - 45162 - ], - "SafeMath": [ - 56637 - ], - "SettleAmount": [ - 57542 - ], - "SettleAssetsExternal": [ - 1878 - ], - "SettleBitmapAssets": [ - 38867 - ], - "SettlePortfolioAssets": [ - 39292 - ], - "SettlementRateStorage": [ - 57774 - ], - "StorageLayoutV1": [ - 23292 - ], - "Token": [ - 57553 - ], - "TokenHandler": [ - 26426 - ], - "TokenStorage": [ - 57689 - ], - "TokenType": [ - 57480 - ], - "TradeActionType": [ - 57487 - ], - "TradingAction": [ - 11085 - ], - "TransferAssets": [ - 38618 - ], - "ifCashStorage": [ - 57790 - ], - "nTokenCalculations": [ - 35079 - ], - "nTokenContext": [ - 57758 - ], - "nTokenHandler": [ - 36105 - ], - "nTokenMintAction": [ - 12854 - ], - "nTokenPortfolio": [ - 57568 - ], - "nTokenRedeemAction": [ - 13836 - ], - "nTokenSupply": [ - 36407 - ], - "nTokenTotalSupplyStorage": [ - 57813 - ], - "nTokenTotalSupplyStorage_deprecated": [ - 57806 - ] - }, - "id": 4841, - "license": "GPL-3.0-only", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3664, - "literals": [ - "solidity", - "^", - "0.7", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "41:23:29" - }, - { - "id": 3665, - "literals": [ - "abicoder", - "v2" - ], - "nodeType": "PragmaDirective", - "src": "65:19:29" - }, - { - "absolutePath": "contracts/external/actions/TradingAction.sol", - "file": "./TradingAction.sol", - "id": 3666, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 11086, - "src": "86:29:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/actions/ActionGuards.sol", - "file": "./ActionGuards.sol", - "id": 3667, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 3663, - "src": "116:28:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/actions/nTokenMintAction.sol", - "file": "./nTokenMintAction.sol", - "id": 3668, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 12855, - "src": "145:32:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/actions/nTokenRedeemAction.sol", - "file": "./nTokenRedeemAction.sol", - "id": 3669, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 13837, - "src": "178:34:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/SettleAssetsExternal.sol", - "file": "../SettleAssetsExternal.sol", - "id": 3670, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 1879, - "src": "213:37:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/FreeCollateralExternal.sol", - "file": "../FreeCollateralExternal.sol", - "id": 3671, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 619, - "src": "251:39:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/math/SafeInt256.sol", - "file": "../../math/SafeInt256.sol", - "id": 3672, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 45163, - "src": "291:35:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/global/StorageLayoutV1.sol", - "file": "../../global/StorageLayoutV1.sol", - "id": 3673, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 23293, - "src": "327:42:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/internal/balances/BalanceHandler.sol", - "file": "../../internal/balances/BalanceHandler.sol", - "id": 3674, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 25399, - "src": "370:52:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/internal/portfolio/PortfolioHandler.sol", - "file": "../../internal/portfolio/PortfolioHandler.sol", - "id": 3675, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 38388, - "src": "423:55:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/internal/AccountContextHandler.sol", - "file": "../../internal/AccountContextHandler.sol", - "id": 3676, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 24056, - "src": "479:50:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/NotionalCallback.sol", - "file": "../../../interfaces/notional/NotionalCallback.sol", - "id": 3677, - "nodeType": "ImportDirective", - "scope": 4841, - "sourceUnit": 58533, - "src": "530:59:29", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 3678, - "name": "StorageLayoutV1", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 23292, - "src": "615:15:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_StorageLayoutV1_$23292", - "typeString": "contract StorageLayoutV1" - } - }, - "id": 3679, - "nodeType": "InheritanceSpecifier", - "src": "615:15:29" - }, - { - "baseName": { - "id": 3680, - "name": "ActionGuards", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3662, - "src": "632:12:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ActionGuards_$3662", - "typeString": "contract ActionGuards" - } - }, - "id": 3681, - "nodeType": "InheritanceSpecifier", - "src": "632:12:29" - } - ], - "contractDependencies": [ - 3662, - 23292 - ], - "contractKind": "contract", - "fullyImplemented": true, - "id": 4840, - "linearizedBaseContracts": [ - 4840, - 3662, - 23292 - ], - "name": "BatchAction", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 3684, - "libraryName": { - "id": 3682, - "name": "BalanceHandler", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 25398, - "src": "657:14:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_BalanceHandler_$25398", - "typeString": "library BalanceHandler" - } - }, - "nodeType": "UsingForDirective", - "src": "651:38:29", - "typeName": { - "id": 3683, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "676:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - } - }, - { - "id": 3687, - "libraryName": { - "id": 3685, - "name": "PortfolioHandler", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 38387, - "src": "700:16:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_PortfolioHandler_$38387", - "typeString": "library PortfolioHandler" - } - }, - "nodeType": "UsingForDirective", - "src": "694:42:29", - "typeName": { - "id": 3686, - "name": "PortfolioState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57602, - "src": "721:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", - "typeString": "struct PortfolioState" - } - } - }, - { - "id": 3690, - "libraryName": { - "id": 3688, - "name": "AccountContextHandler", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 24055, - "src": "747:21:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AccountContextHandler_$24055", - "typeString": "library AccountContextHandler" - } - }, - "nodeType": "UsingForDirective", - "src": "741:47:29", - "typeName": { - "id": 3689, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "773:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - } - }, - { - "id": 3693, - "libraryName": { - "id": 3691, - "name": "AssetRate", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 30677, - "src": "799:9:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetRate_$30677", - "typeString": "library AssetRate" - } - }, - "nodeType": "UsingForDirective", - "src": "793:40:29", - "typeName": { - "id": 3692, - "name": "AssetRateParameters", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57639, - "src": "813:19:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AssetRateParameters_$57639_storage_ptr", - "typeString": "struct AssetRateParameters" - } - } - }, - { - "id": 3696, - "libraryName": { - "id": 3694, - "name": "TokenHandler", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 26426, - "src": "844:12:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenHandler_$26426", - "typeString": "library TokenHandler" - } - }, - "nodeType": "UsingForDirective", - "src": "838:29:29", - "typeName": { - "id": 3695, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57553, - "src": "861:5:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", - "typeString": "struct Token" - } - } - }, - { - "id": 3699, - "libraryName": { - "id": 3697, - "name": "SafeInt256", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 45162, - "src": "878:10:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeInt256_$45162", - "typeString": "library SafeInt256" - } - }, - "nodeType": "UsingForDirective", - "src": "872:28:29", - "typeName": { - "id": 3698, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "893:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - }, - { - "body": { - "id": 3811, - "nodeType": "Block", - "src": "1378:1390:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3722, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3711, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "1396:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 3712, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "1407:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1407:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "1396:21:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3721, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3715, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "1421:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "1421:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 3719, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "1443:4:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_BatchAction_$4840", - "typeString": "contract BatchAction" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_BatchAction_$4840", - "typeString": "contract BatchAction" - } - ], - "id": 3718, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1435:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 3717, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1435:7:29", - "typeDescriptions": {} - } - }, - "id": 3720, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1435:13:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1421:27:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1396:52:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a6564", - "id": 3723, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1450:14:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - }, - "value": "Unauthorized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - } - ], - "id": 3710, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "1388:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1388:77:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3725, - "nodeType": "ExpressionStatement", - "src": "1388:77:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3727, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "1495:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3726, - "name": "requireValidAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3661, - "src": "1475:19:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", - "typeString": "function (address) view" - } - }, - "id": 3728, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1475:28:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3729, - "nodeType": "ExpressionStatement", - "src": "1475:28:29" - }, - { - "assignments": [ - 3731 - ], - "declarations": [ - { - "constant": false, - "id": 3731, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 3811, - "src": "1514:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 3730, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "1514:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 3735, - "initialValue": { - "arguments": [ - { - "id": 3733, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "1578:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3732, - "name": "_settleAccountIfRequired", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "1553:24:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) returns (struct AccountContext memory)" - } - }, - "id": 3734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1553:33:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1514:72:29" - }, - { - "assignments": [ - 3737 - ], - "declarations": [ - { - "constant": false, - "id": 3737, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 3811, - "src": "1596:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 3736, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "1596:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - } - ], - "id": 3738, - "nodeType": "VariableDeclarationStatement", - "src": "1596:32:29" - }, - { - "body": { - "id": 3804, - "nodeType": "Block", - "src": "1684:1019:29", - "statements": [ - { - "assignments": [ - 3751 - ], - "declarations": [ - { - "constant": false, - "id": 3751, - "mutability": "mutable", - "name": "action", - "nodeType": "VariableDeclaration", - "scope": 3804, - "src": "1698:29:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction" - }, - "typeName": { - "id": 3750, - "name": "BalanceAction", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57521, - "src": "1698:13:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_storage_ptr", - "typeString": "struct BalanceAction" - } - }, - "visibility": "internal" - } - ], - "id": 3755, - "initialValue": { - "baseExpression": { - "id": 3752, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3705, - "src": "1730:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceAction calldata[] calldata" - } - }, - "id": 3754, - "indexExpression": { - "id": 3753, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3740, - "src": "1738:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1730:10:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1698:42:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3758, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3756, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3740, - "src": "1953:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 3757, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1957:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1953:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3773, - "nodeType": "IfStatement", - "src": "1949:118:29", - "trueBody": { - "id": 3772, - "nodeType": "Block", - "src": "1960:107:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "id": 3768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3760, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "1986:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57512, - "src": "1986:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 3762, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3705, - "src": "2006:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceAction calldata[] calldata" - } - }, - "id": 3766, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3763, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3740, - "src": "2014:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 3764, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2018:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "2014:5:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2006:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3767, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57512, - "src": "2006:25:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "1986:45:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e736f7274656420616374696f6e73", - "id": 3769, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2033:18:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", - "typeString": "literal_string \"Unsorted actions\"" - }, - "value": "Unsorted actions" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", - "typeString": "literal_string \"Unsorted actions\"" - } - ], - "id": 3759, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "1978:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3770, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1978:74:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3771, - "nodeType": "ExpressionStatement", - "src": "1978:74:29" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 3777, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "2165:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 3778, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "2174:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3779, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57512, - "src": "2174:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 3780, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3731, - "src": "2193:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "expression": { - "id": 3774, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3737, - "src": "2135:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 3776, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "loadBalanceState", - "nodeType": "MemberAccess", - "referencedDeclaration": 25360, - "src": "2135:29:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" - } - }, - "id": 3781, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2135:73:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3782, - "nodeType": "ExpressionStatement", - "src": "2135:73:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3784, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "2262:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 3785, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3737, - "src": "2287:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "expression": { - "id": 3786, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "2317:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3787, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "actionType", - "nodeType": "MemberAccess", - "referencedDeclaration": 57510, - "src": "2317:17:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - { - "expression": { - "id": 3788, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "2352:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3789, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "depositActionAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 57514, - "src": "2352:26:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3783, - "name": "_executeDepositAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4451, - "src": "2223:21:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_uint256_$returns$__$", - "typeString": "function (address,struct BalanceState memory,enum DepositActionType,uint256)" - } - }, - "id": 3790, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2223:169:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3791, - "nodeType": "ExpressionStatement", - "src": "2223:169:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3793, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "2460:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 3794, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3731, - "src": "2485:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 3795, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3737, - "src": "2517:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "expression": { - "id": 3796, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "2547:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3797, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "withdrawAmountInternalPrecision", - "nodeType": "MemberAccess", - "referencedDeclaration": 57516, - "src": "2547:38:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 3798, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "2603:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3799, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "withdrawEntireCashBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57518, - "src": "2603:32:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "expression": { - "id": 3800, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3751, - "src": "2653:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", - "typeString": "struct BalanceAction calldata" - } - }, - "id": 3801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "redeemToUnderlying", - "nodeType": "MemberAccess", - "referencedDeclaration": 57520, - "src": "2653:25:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3792, - "name": "_calculateWithdrawActionAndFinalize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4637, - "src": "2407:35:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_uint256_$_t_bool_$_t_bool_$returns$__$", - "typeString": "function (address,struct AccountContext memory,struct BalanceState memory,uint256,bool,bool)" - } - }, - "id": 3802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2407:285:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3803, - "nodeType": "ExpressionStatement", - "src": "2407:285:29" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3743, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3740, - "src": "1659:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 3744, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3705, - "src": "1663:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceAction calldata[] calldata" - } - }, - "id": 3745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1663:14:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1659:18:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3805, - "initializationExpression": { - "assignments": [ - 3740 - ], - "declarations": [ - { - "constant": false, - "id": 3740, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 3805, - "src": "1644:9:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3739, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1644:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3742, - "initialValue": { - "hexValue": "30", - "id": 3741, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1656:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1644:13:29" - }, - "loopExpression": { - "expression": { - "id": 3748, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1679:3:29", - "subExpression": { - "id": 3747, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3740, - "src": "1679:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3749, - "nodeType": "ExpressionStatement", - "src": "1679:3:29" - }, - "nodeType": "ForStatement", - "src": "1639:1064:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3807, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3702, - "src": "2737:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 3808, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3731, - "src": "2746:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "id": 3806, - "name": "_finalizeAccountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4663, - "src": "2713:23:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", - "typeString": "function (address,struct AccountContext memory)" - } - }, - "id": 3809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2713:48:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3810, - "nodeType": "ExpressionStatement", - "src": "2713:48:29" - } - ] - }, - "documentation": { - "id": 3700, - "nodeType": "StructuredDocumentation", - "src": "906:330:29", - "text": "@notice Executes a batch of balance transfers including minting and redeeming nTokens.\n @param account the account for the action\n @param actions array of balance actions to take, must be sorted by currency id\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange\n @dev auth:msg.sender auth:ERC1155" - }, - "functionSelector": "6e6a32a6", - "id": 3812, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 3708, - "modifierName": { - "id": 3707, - "name": "nonReentrant", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3626, - "src": "1361:12:29", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "1361:12:29" - } - ], - "name": "batchBalanceAction", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3706, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3702, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 3812, - "src": "1269:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3701, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1269:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3705, - "mutability": "mutable", - "name": "actions", - "nodeType": "VariableDeclaration", - "scope": 3812, - "src": "1286:32:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceAction[]" - }, - "typeName": { - "baseType": { - "id": 3703, - "name": "BalanceAction", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57521, - "src": "1286:13:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceAction_$57521_storage_ptr", - "typeString": "struct BalanceAction" - } - }, - "id": 3704, - "nodeType": "ArrayTypeName", - "src": "1286:15:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_storage_$dyn_storage_ptr", - "typeString": "struct BalanceAction[]" - } - }, - "visibility": "internal" - } - ], - "src": "1268:51:29" - }, - "returnParameters": { - "id": 3709, - "nodeType": "ParameterList", - "parameters": [], - "src": "1378:0:29" - }, - "scope": 4840, - "src": "1241:1527:29", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 3855, - "nodeType": "Block", - "src": "3390:284:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3824, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3815, - "src": "3408:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 3825, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3419:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3826, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3419:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "3408:21:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3828, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3433:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3433:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 3832, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "3455:4:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_BatchAction_$4840", - "typeString": "contract BatchAction" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_BatchAction_$4840", - "typeString": "contract BatchAction" - } - ], - "id": 3831, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3447:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 3830, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3447:7:29", - "typeDescriptions": {} - } - }, - "id": 3833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3447:13:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3433:27:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3408:52:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a6564", - "id": 3836, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3462:14:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - }, - "value": "Unauthorized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - } - ], - "id": 3823, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "3400:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3837, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3400:77:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3838, - "nodeType": "ExpressionStatement", - "src": "3400:77:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3840, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3815, - "src": "3507:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3839, - "name": "requireValidAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3661, - "src": "3487:19:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", - "typeString": "function (address) view" - } - }, - "id": 3841, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3487:28:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3842, - "nodeType": "ExpressionStatement", - "src": "3487:28:29" - }, - { - "assignments": [ - 3844 - ], - "declarations": [ - { - "constant": false, - "id": 3844, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 3855, - "src": "3525:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 3843, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "3525:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 3849, - "initialValue": { - "arguments": [ - { - "id": 3846, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3815, - "src": "3592:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 3847, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3818, - "src": "3601:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - ], - "id": 3845, - "name": "_batchBalanceAndTradeAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4359, - "src": "3564:27:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct BalanceActionWithTrades calldata[] calldata) returns (struct AccountContext memory)" - } - }, - "id": 3848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3564:45:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3525:84:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3851, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3815, - "src": "3643:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 3852, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3844, - "src": "3652:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "id": 3850, - "name": "_finalizeAccountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4663, - "src": "3619:23:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", - "typeString": "function (address,struct AccountContext memory)" - } - }, - "id": 3853, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3619:48:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3854, - "nodeType": "ExpressionStatement", - "src": "3619:48:29" - } - ] - }, - "documentation": { - "id": 3813, - "nodeType": "StructuredDocumentation", - "src": "2774:456:29", - "text": "@notice Executes a batch of balance transfers and trading actions\n @param account the account for the action\n @param actions array of balance actions with trades to take, must be sorted by currency id\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n @dev auth:msg.sender auth:ERC1155" - }, - "functionSelector": "0276b64b", - "id": 3856, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 3821, - "modifierName": { - "id": 3820, - "name": "nonReentrant", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3626, - "src": "3373:12:29", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "3373:12:29" - } - ], - "name": "batchBalanceAndTradeAction", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3819, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3815, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 3856, - "src": "3271:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3814, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3271:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3818, - "mutability": "mutable", - "name": "actions", - "nodeType": "VariableDeclaration", - "scope": 3856, - "src": "3288:42:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades[]" - }, - "typeName": { - "baseType": { - "id": 3816, - "name": "BalanceActionWithTrades", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57537, - "src": "3288:23:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", - "typeString": "struct BalanceActionWithTrades" - } - }, - "id": 3817, - "nodeType": "ArrayTypeName", - "src": "3288:25:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", - "typeString": "struct BalanceActionWithTrades[]" - } - }, - "visibility": "internal" - } - ], - "src": "3270:61:29" - }, - "returnParameters": { - "id": 3822, - "nodeType": "ParameterList", - "parameters": [], - "src": "3390:0:29" - }, - "scope": 4840, - "src": "3235:439:29", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 4140, - "nodeType": "Block", - "src": "4595:5307:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3879, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3871, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3868, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "4613:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 3869, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "4624:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3870, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4624:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "4613:21:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3878, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3872, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "4638:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3873, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4638:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 3876, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "4660:4:29", - "typeDescriptions": { - "typeIdentifier": "t_contract$_BatchAction_$4840", - "typeString": "contract BatchAction" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_BatchAction_$4840", - "typeString": "contract BatchAction" - } - ], - "id": 3875, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4652:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 3874, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4652:7:29", - "typeDescriptions": {} - } - }, - "id": 3877, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4652:13:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4638:27:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4613:52:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a6564", - "id": 3880, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4667:14:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - }, - "value": "Unauthorized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - } - ], - "id": 3867, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "4605:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3881, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4605:77:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3882, - "nodeType": "ExpressionStatement", - "src": "4605:77:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3884, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "4712:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3883, - "name": "requireValidAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3661, - "src": "4692:19:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", - "typeString": "function (address) view" - } - }, - "id": 3885, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4692:28:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3886, - "nodeType": "ExpressionStatement", - "src": "4692:28:29" - }, - { - "assignments": [ - 3888 - ], - "declarations": [ - { - "constant": false, - "id": 3888, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4140, - "src": "4731:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 3887, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "4731:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 3892, - "initialValue": { - "arguments": [ - { - "id": 3890, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "4795:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3889, - "name": "_settleAccountIfRequired", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "4770:24:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) returns (struct AccountContext memory)" - } - }, - "id": 3891, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4770:33:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4731:72:29" - }, - { - "assignments": [ - 3894 - ], - "declarations": [ - { - "constant": false, - "id": 3894, - "mutability": "mutable", - "name": "portfolioState", - "nodeType": "VariableDeclaration", - "scope": 4140, - "src": "4980:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState" - }, - "typeName": { - "id": 3893, - "name": "PortfolioState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57602, - "src": "4980:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", - "typeString": "struct PortfolioState" - } - }, - "visibility": "internal" - } - ], - "id": 3902, - "initialValue": { - "arguments": [ - { - "id": 3897, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "5069:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 3898, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "5090:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 3899, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetArrayLength", - "nodeType": "MemberAccess", - "referencedDeclaration": 57738, - "src": "5090:31:29", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "hexValue": "30", - "id": 3900, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5135:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "expression": { - "id": 3895, - "name": "PortfolioHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38387, - "src": "5019:16:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", - "typeString": "type(library PortfolioHandler)" - } - }, - "id": 3896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "buildPortfolioState", - "nodeType": "MemberAccess", - "referencedDeclaration": 38148, - "src": "5019:36:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$_t_uint256_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "function (address,uint8,uint256) view returns (struct PortfolioState memory)" - } - }, - "id": 3901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5019:127:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4980:166:29" - }, - { - "assignments": [ - 3904 - ], - "declarations": [ - { - "constant": false, - "id": 3904, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 4140, - "src": "5156:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 3903, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "5156:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - } - ], - "id": 3905, - "nodeType": "VariableDeclarationStatement", - "src": "5156:32:29" - }, - { - "body": { - "id": 4119, - "nodeType": "Block", - "src": "5244:4125:29", - "statements": [ - { - "assignments": [ - 3918 - ], - "declarations": [ - { - "constant": false, - "id": 3918, - "mutability": "mutable", - "name": "action", - "nodeType": "VariableDeclaration", - "scope": 4119, - "src": "5258:25:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend" - }, - "typeName": { - "id": 3917, - "name": "BatchLend", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57508, - "src": "5258:9:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_storage_ptr", - "typeString": "struct BatchLend" - } - }, - "visibility": "internal" - } - ], - "id": 3922, - "initialValue": { - "baseExpression": { - "id": 3919, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "5286:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BatchLend calldata[] calldata" - } - }, - "id": 3921, - "indexExpression": { - "id": 3920, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3907, - "src": "5294:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5286:10:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5258:38:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3923, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3907, - "src": "5509:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 3924, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5513:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5509:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3940, - "nodeType": "IfStatement", - "src": "5505:118:29", - "trueBody": { - "id": 3939, - "nodeType": "Block", - "src": "5516:107:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "id": 3935, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3927, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "5542:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 3928, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "5542:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 3929, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "5562:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BatchLend calldata[] calldata" - } - }, - "id": 3933, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3932, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3930, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3907, - "src": "5570:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 3931, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5574:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "5570:5:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5562:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 3934, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "5562:25:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "5542:45:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e736f7274656420616374696f6e73", - "id": 3936, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5589:18:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", - "typeString": "literal_string \"Unsorted actions\"" - }, - "value": "Unsorted actions" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", - "typeString": "literal_string \"Unsorted actions\"" - } - ], - "id": 3926, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "5534:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3937, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5534:74:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3938, - "nodeType": "ExpressionStatement", - "src": "5534:74:29" - } - ] - } - }, - { - "assignments": [ - 3942 - ], - "declarations": [ - { - "constant": false, - "id": 3942, - "mutability": "mutable", - "name": "numTrades", - "nodeType": "VariableDeclaration", - "scope": 4119, - "src": "5733:17:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3941, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5733:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3946, - "initialValue": { - "expression": { - "expression": { - "id": 3943, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "5753:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 3944, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "trades", - "nodeType": "MemberAccess", - "referencedDeclaration": 57507, - "src": "5753:13:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - }, - "id": 3945, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "5753:20:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5733:40:29" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3948, - "name": "numTrades", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3942, - "src": "5795:9:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 3949, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5807:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5795:13:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3947, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "5787:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 3951, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5787:22:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3952, - "nodeType": "ExpressionStatement", - "src": "5787:22:29" - }, - { - "body": { - "id": 3982, - "nodeType": "Block", - "src": "5882:129:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 3979, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 3968, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "5921:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 3969, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "trades", - "nodeType": "MemberAccess", - "referencedDeclaration": 57507, - "src": "5921:13:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - }, - "id": 3971, - "indexExpression": { - "id": 3970, - "name": "j", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3954, - "src": "5935:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5921:16:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 3967, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5914:6:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes1_$", - "typeString": "type(bytes1)" - }, - "typeName": { - "id": 3966, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "5914:6:29", - "typeDescriptions": {} - } - }, - "id": 3972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5914:24:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3965, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5908:5:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3964, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "5908:5:29", - "typeDescriptions": {} - } - }, - "id": 3973, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5908:31:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "expression": { - "id": 3976, - "name": "TradeActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57487, - "src": "5949:15:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_TradeActionType_$57487_$", - "typeString": "type(enum TradeActionType)" - } - }, - "id": 3977, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Lend", - "nodeType": "MemberAccess", - "src": "5949:20:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_TradeActionType_$57487", - "typeString": "enum TradeActionType" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_enum$_TradeActionType_$57487", - "typeString": "enum TradeActionType" - } - ], - "id": 3975, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5943:5:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3974, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "5943:5:29", - "typeDescriptions": {} - } - }, - "id": 3978, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5943:27:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "5908:62:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3963, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "5900:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 3980, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5900:71:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3981, - "nodeType": "ExpressionStatement", - "src": "5900:71:29" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3959, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3957, - "name": "j", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3954, - "src": "5862:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 3958, - "name": "numTrades", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3942, - "src": "5866:9:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5862:13:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3983, - "initializationExpression": { - "assignments": [ - 3954 - ], - "declarations": [ - { - "constant": false, - "id": 3954, - "mutability": "mutable", - "name": "j", - "nodeType": "VariableDeclaration", - "scope": 3983, - "src": "5847:9:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3953, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5847:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3956, - "initialValue": { - "hexValue": "30", - "id": 3955, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5859:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "5847:13:29" - }, - "loopExpression": { - "expression": { - "id": 3961, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "5877:3:29", - "subExpression": { - "id": 3960, - "name": "j", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3954, - "src": "5877:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3962, - "nodeType": "ExpressionStatement", - "src": "5877:3:29" - }, - "nodeType": "ForStatement", - "src": "5842:169:29" - }, - { - "expression": { - "arguments": [ - { - "id": 3987, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "6110:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 3988, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "6119:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 3989, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "6119:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 3990, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "6138:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "expression": { - "id": 3984, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "6080:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 3986, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "loadBalanceState", - "nodeType": "MemberAccess", - "referencedDeclaration": 25360, - "src": "6080:29:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" - } - }, - "id": 3991, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6080:73:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3992, - "nodeType": "ExpressionStatement", - "src": "6080:73:29" - }, - { - "expression": { - "id": 4007, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "expression": { - "id": 3993, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "6168:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 3995, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "6168:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 3996, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "6196:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - } - ], - "id": 3997, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "6167:44:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "tuple(int256,struct PortfolioState memory)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 3999, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "6246:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4000, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "6271:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 4001, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "6271:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 4002, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "6306:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 4003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "trades", - "nodeType": "MemberAccess", - "referencedDeclaration": 57507, - "src": "6306:13:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - }, - { - "id": 4004, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "6337:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 4005, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "6369:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - ], - "id": 3998, - "name": "_executeTrades", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4738, - "src": "6214:14:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint16_$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_PortfolioState_$57602_memory_ptr_$returns$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "function (address,uint16,bytes32[] calldata,struct AccountContext memory,struct PortfolioState memory) returns (int256,struct PortfolioState memory)" - } - }, - "id": 4006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6214:183:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "tuple(int256,struct PortfolioState memory)" - } - }, - "src": "6167:230:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4008, - "nodeType": "ExpressionStatement", - "src": "6167:230:29" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4013, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4010, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "6494:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4011, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "6494:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "30", - "id": 4012, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6524:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6494:31:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 4009, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "6486:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 4014, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6486:40:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4015, - "nodeType": "ExpressionStatement", - "src": "6486:40:29" - }, - { - "assignments": [ - 4017 - ], - "declarations": [ - { - "constant": false, - "id": 4017, - "mutability": "mutable", - "name": "requiredCash", - "nodeType": "VariableDeclaration", - "scope": 4119, - "src": "6978:19:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4016, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6978:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4026, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "arguments": [ - { - "expression": { - "id": 4021, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "7035:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4022, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "7035:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4018, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "7000:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4019, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "storedCashBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57617, - "src": "7000:30:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4020, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "7000:34:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7000:62:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4024, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "neg", - "nodeType": "MemberAccess", - "referencedDeclaration": 44999, - "src": "7000:66:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256) pure returns (int256)" - } - }, - "id": 4025, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7000:68:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6978:90:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4029, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4027, - "name": "requiredCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4017, - "src": "7086:12:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 4028, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7101:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7086:16:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4110, - "nodeType": "IfStatement", - "src": "7082:2109:29", - "trueBody": { - "id": 4109, - "nodeType": "Block", - "src": "7104:2087:29", - "statements": [ - { - "condition": { - "expression": { - "id": 4030, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "7126:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 4031, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "depositUnderlying", - "nodeType": "MemberAccess", - "referencedDeclaration": 57504, - "src": "7126:24:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 4107, - "nodeType": "Block", - "src": "8601:576:29", - "statements": [ - { - "assignments": [ - 4089 - ], - "declarations": [ - { - "constant": false, - "id": 4089, - "mutability": "mutable", - "name": "assetToken", - "nodeType": "VariableDeclaration", - "scope": 4107, - "src": "8810:23:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token" - }, - "typeName": { - "id": 4088, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57553, - "src": "8810:5:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", - "typeString": "struct Token" - } - }, - "visibility": "internal" - } - ], - "id": 4095, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 4092, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "8863:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 4093, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "8863:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - ], - "expression": { - "id": 4090, - "name": "TokenHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 26426, - "src": "8836:12:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TokenHandler_$26426_$", - "typeString": "type(library TokenHandler)" - } - }, - "id": 4091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getAssetToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 25650, - "src": "8836:26:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_struct$_Token_$57553_memory_ptr_$", - "typeString": "function (uint256) view returns (struct Token memory)" - } - }, - "id": 4094, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8836:45:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8810:71:29" - }, - { - "expression": { - "arguments": [ - { - "id": 4099, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "8959:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 4102, - "name": "requiredCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4017, - "src": "9021:12:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4100, - "name": "assetToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4089, - "src": "8992:10:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token memory" - } - }, - "id": 4101, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "convertToExternal", - "nodeType": "MemberAccess", - "referencedDeclaration": 26408, - "src": "8992:28:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_Token_$57553_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_Token_$57553_memory_ptr_$", - "typeString": "function (struct Token memory,int256) pure returns (int256)" - } - }, - "id": 4103, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8992:42:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "hexValue": "66616c7365", - "id": 4104, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9060:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 4096, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "8903:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4098, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "depositAssetToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 24222, - "src": "8903:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,int256,bool) returns (int256)" - } - }, - "id": 4105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8903:255:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4106, - "nodeType": "ExpressionStatement", - "src": "8903:255:29" - } - ] - }, - "id": 4108, - "nodeType": "IfStatement", - "src": "7122:2055:29", - "trueBody": { - "id": 4087, - "nodeType": "Block", - "src": "7152:1443:29", - "statements": [ - { - "assignments": [ - 4033 - ], - "declarations": [ - { - "constant": false, - "id": 4033, - "mutability": "mutable", - "name": "ar", - "nodeType": "VariableDeclaration", - "scope": 4087, - "src": "7323:29:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", - "typeString": "struct AssetRateParameters" - }, - "typeName": { - "id": 4032, - "name": "AssetRateParameters", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57639, - "src": "7323:19:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AssetRateParameters_$57639_storage_ptr", - "typeString": "struct AssetRateParameters" - } - }, - "visibility": "internal" - } - ], - "id": 4039, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 4036, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "7388:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 4037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "7388:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - ], - "expression": { - "id": 4034, - "name": "AssetRate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 30677, - "src": "7355:9:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AssetRate_$30677_$", - "typeString": "type(library AssetRate)" - } - }, - "id": 4035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "buildAssetRateStateful", - "nodeType": "MemberAccess", - "referencedDeclaration": 30437, - "src": "7355:32:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$_t_struct$_AssetRateParameters_$57639_memory_ptr_$", - "typeString": "function (uint256) returns (struct AssetRateParameters memory)" - } - }, - "id": 4038, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7355:51:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", - "typeString": "struct AssetRateParameters memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7323:83:29" - }, - { - "assignments": [ - 4041 - ], - "declarations": [ - { - "constant": false, - "id": 4041, - "mutability": "mutable", - "name": "underlyingToken", - "nodeType": "VariableDeclaration", - "scope": 4087, - "src": "7428:28:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token" - }, - "typeName": { - "id": 4040, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57553, - "src": "7428:5:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", - "typeString": "struct Token" - } - }, - "visibility": "internal" - } - ], - "id": 4047, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 4044, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3918, - "src": "7491:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", - "typeString": "struct BatchLend calldata" - } - }, - "id": 4045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57502, - "src": "7491:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - ], - "expression": { - "id": 4042, - "name": "TokenHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 26426, - "src": "7459:12:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TokenHandler_$26426_$", - "typeString": "type(library TokenHandler)" - } - }, - "id": 4043, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getUnderlyingToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 25663, - "src": "7459:31:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_struct$_Token_$57553_memory_ptr_$", - "typeString": "function (uint256) view returns (struct Token memory)" - } - }, - "id": 4046, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7459:50:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7428:81:29" - }, - { - "assignments": [ - 4049 - ], - "declarations": [ - { - "constant": false, - "id": 4049, - "mutability": "mutable", - "name": "underlyingExternalAmount", - "nodeType": "VariableDeclaration", - "scope": 4087, - "src": "7531:31:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4048, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7531:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4057, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "id": 4054, - "name": "requiredCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4017, - "src": "7622:12:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4052, - "name": "ar", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4033, - "src": "7599:2:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", - "typeString": "struct AssetRateParameters memory" - } - }, - "id": 4053, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "convertToUnderlying", - "nodeType": "MemberAccess", - "referencedDeclaration": 30154, - "src": "7599:22:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_AssetRateParameters_$57639_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_AssetRateParameters_$57639_memory_ptr_$", - "typeString": "function (struct AssetRateParameters memory,int256) pure returns (int256)" - } - }, - "id": 4055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7599:36:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4050, - "name": "underlyingToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4041, - "src": "7565:15:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token memory" - } - }, - "id": 4051, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "convertToExternal", - "nodeType": "MemberAccess", - "referencedDeclaration": 26408, - "src": "7565:33:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_Token_$57553_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_Token_$57553_memory_ptr_$", - "typeString": "function (struct Token memory,int256) pure returns (int256)" - } - }, - "id": 4056, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7565:71:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7531:105:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4062, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4058, - "name": "underlyingToken", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4041, - "src": "7663:15:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", - "typeString": "struct Token memory" - } - }, - "id": 4059, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "decimals", - "nodeType": "MemberAccess", - "referencedDeclaration": 57548, - "src": "7663:24:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 4060, - "name": "Constants", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 22832, - "src": "7690:9:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", - "typeString": "type(library Constants)" - } - }, - "id": 4061, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "INTERNAL_TOKEN_PRECISION", - "nodeType": "MemberAccess", - "referencedDeclaration": 22575, - "src": "7690:34:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "7663:61:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4071, - "nodeType": "IfStatement", - "src": "7659:536:29", - "trueBody": { - "id": 4070, - "nodeType": "Block", - "src": "7726:469:29", - "statements": [ - { - "expression": { - "id": 4068, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4063, - "name": "underlyingExternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4049, - "src": "8114:24:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "hexValue": "31", - "id": 4066, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8170:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - } - ], - "expression": { - "id": 4064, - "name": "underlyingExternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4049, - "src": "8141:24:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4065, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "8141:28:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4067, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8141:31:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "8114:58:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4069, - "nodeType": "ExpressionStatement", - "src": "8114:58:29" - } - ] - } - }, - { - "assignments": [ - 4073 - ], - "declarations": [ - { - "constant": false, - "id": 4073, - "mutability": "mutable", - "name": "assetAmountInternal", - "nodeType": "VariableDeclaration", - "scope": 4087, - "src": "8387:26:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4072, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "8387:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4079, - "initialValue": { - "arguments": [ - { - "id": 4076, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "8452:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4077, - "name": "underlyingExternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4049, - "src": "8461:24:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4074, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "8416:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4075, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "depositUnderlyingToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 24323, - "src": "8416:35:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,int256) returns (int256)" - } - }, - "id": 4078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8416:70:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8387:99:29" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4083, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4081, - "name": "assetAmountInternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4073, - "src": "8516:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 4082, - "name": "requiredCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4017, - "src": "8539:12:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "8516:35:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e73756666696369656e74206465706f736974", - "id": 4084, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8553:22:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f8fcaef683f0d1614f3145343efc9a3d2cb7c83cead426db44ecb090c666d824", - "typeString": "literal_string \"Insufficient deposit\"" - }, - "value": "Insufficient deposit" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f8fcaef683f0d1614f3145343efc9a3d2cb7c83cead426db44ecb090c666d824", - "typeString": "literal_string \"Insufficient deposit\"" - } - ], - "id": 4080, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "8508:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8508:68:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4086, - "nodeType": "ExpressionStatement", - "src": "8508:68:29" - } - ] - } - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 4114, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "9327:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4115, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "9336:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "hexValue": "66616c7365", - "id": 4116, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9352:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 4111, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3904, - "src": "9305:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4113, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "finalize", - "nodeType": "MemberAccess", - "referencedDeclaration": 24546, - "src": "9305:21:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,struct AccountContext memory,bool) returns (int256)" - } - }, - "id": 4117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9305:53:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4118, - "nodeType": "ExpressionStatement", - "src": "9305:53:29" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3910, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3907, - "src": "5219:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 3911, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "5223:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BatchLend calldata[] calldata" - } - }, - "id": 3912, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "5223:14:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5219:18:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4120, - "initializationExpression": { - "assignments": [ - 3907 - ], - "declarations": [ - { - "constant": false, - "id": 3907, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 4120, - "src": "5204:9:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3906, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5204:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3909, - "initialValue": { - "hexValue": "30", - "id": 3908, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5216:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "5204:13:29" - }, - "loopExpression": { - "expression": { - "id": 3915, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "5239:3:29", - "subExpression": { - "id": 3914, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3907, - "src": "5239:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3916, - "nodeType": "ExpressionStatement", - "src": "5239:3:29" - }, - "nodeType": "ForStatement", - "src": "5199:4170:29" - }, - { - "condition": { - "id": 4124, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "9548:33:29", - "subExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4121, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "9549:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4122, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "isBitmapEnabled", - "nodeType": "MemberAccess", - "referencedDeclaration": 23385, - "src": "9549:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) pure returns (bool)" - } - }, - "id": 4123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9549:32:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4134, - "nodeType": "IfStatement", - "src": "9544:221:29", - "trueBody": { - "id": 4133, - "nodeType": "Block", - "src": "9583:182:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4128, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "9723:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4129, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "9732:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - }, - { - "hexValue": "66616c7365", - "id": 4130, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9748:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 4125, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "9680:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4127, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "storeAssetsAndUpdateContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 24054, - "src": "9680:42:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_bool_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory,address,struct PortfolioState memory,bool)" - } - }, - "id": 4131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9680:74:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4132, - "nodeType": "ExpressionStatement", - "src": "9680:74:29" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 4136, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3859, - "src": "9871:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4137, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3888, - "src": "9880:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "id": 4135, - "name": "_finalizeAccountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4663, - "src": "9847:23:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", - "typeString": "function (address,struct AccountContext memory)" - } - }, - "id": 4138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9847:48:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4139, - "nodeType": "ExpressionStatement", - "src": "9847:48:29" - } - ] - }, - "documentation": { - "id": 3857, - "nodeType": "StructuredDocumentation", - "src": "3680:802:29", - "text": "@notice Executes a batch of lending actions. This is different from batchBalanceAndTrade because\n it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces\n the gas costs for lending because there is no second token transfer where residual balances are sent\n back to the account.\n @dev Note that this method does not work with native ETH because it requires the ability to pull payment\n from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.\n @param account the account for the action\n @param actions array of batch lending actions\n @dev emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebt\n @dev auth:msg.sender auth:ERC1155" - }, - "functionSelector": "541f5270", - "id": 4141, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 3865, - "modifierName": { - "id": 3864, - "name": "nonReentrant", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3626, - "src": "4578:12:29", - "typeDescriptions": { - "typeIdentifier": "t_modifier$__$", - "typeString": "modifier ()" - } - }, - "nodeType": "ModifierInvocation", - "src": "4578:12:29" - } - ], - "name": "batchLend", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3863, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3859, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4141, - "src": "4506:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3858, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4506:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3862, - "mutability": "mutable", - "name": "actions", - "nodeType": "VariableDeclaration", - "scope": 4141, - "src": "4523:28:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BatchLend[]" - }, - "typeName": { - "baseType": { - "id": 3860, - "name": "BatchLend", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57508, - "src": "4523:9:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BatchLend_$57508_storage_ptr", - "typeString": "struct BatchLend" - } - }, - "id": 3861, - "nodeType": "ArrayTypeName", - "src": "4523:11:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_storage_$dyn_storage_ptr", - "typeString": "struct BatchLend[]" - } - }, - "visibility": "internal" - } - ], - "src": "4505:47:29" - }, - "returnParameters": { - "id": 3866, - "nodeType": "ParameterList", - "parameters": [], - "src": "4595:0:29" - }, - "scope": 4840, - "src": "4487:5415:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 4200, - "nodeType": "Block", - "src": "11344:1235:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "baseExpression": { - "id": 4153, - "name": "authorizedCallbackContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23285, - "src": "11437:26:29", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 4156, - "indexExpression": { - "expression": { - "id": 4154, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "11464:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 4155, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11464:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11437:38:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a6564", - "id": 4157, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11477:14:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - }, - "value": "Unauthorized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - } - ], - "id": 4152, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "11429:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11429:63:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4159, - "nodeType": "ExpressionStatement", - "src": "11429:63:29" - }, - { - "expression": { - "arguments": [ - { - "id": 4161, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4144, - "src": "11522:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 4160, - "name": "requireValidAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3661, - "src": "11502:19:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", - "typeString": "function (address) view" - } - }, - "id": 4162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11502:28:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4163, - "nodeType": "ExpressionStatement", - "src": "11502:28:29" - }, - { - "assignments": [ - 4165 - ], - "declarations": [ - { - "constant": false, - "id": 4165, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4200, - "src": "11541:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4164, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "11541:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 4170, - "initialValue": { - "arguments": [ - { - "id": 4167, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4144, - "src": "11608:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4168, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4147, - "src": "11617:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - ], - "id": 4166, - "name": "_batchBalanceAndTradeAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4359, - "src": "11580:27:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct BalanceActionWithTrades calldata[] calldata) returns (struct AccountContext memory)" - } - }, - "id": 4169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11580:45:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11541:84:29" - }, - { - "expression": { - "arguments": [ - { - "id": 4174, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4144, - "src": "11668:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 4171, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4165, - "src": "11635:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4173, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "setAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23372, - "src": "11635:32:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory,address)" - } - }, - "id": 4175, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11635:41:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4176, - "nodeType": "ExpressionStatement", - "src": "11635:41:29" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 4182, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "12001:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 4183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12001:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 4184, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4144, - "src": "12013:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4185, - "name": "callbackData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4149, - "src": "12022:12:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "expression": { - "arguments": [ - { - "expression": { - "id": 4178, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "11972:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 4179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11972:10:29", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 4177, - "name": "NotionalCallback", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58532, - "src": "11955:16:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalCallback_$58532_$", - "typeString": "type(contract NotionalCallback)" - } - }, - "id": 4180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11955:28:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_NotionalCallback_$58532", - "typeString": "contract NotionalCallback" - } - }, - "id": 4181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "notionalCallback", - "nodeType": "MemberAccess", - "referencedDeclaration": 58531, - "src": "11955:45:29", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,address,bytes memory) external" - } - }, - "id": 4186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11955:80:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4187, - "nodeType": "ExpressionStatement", - "src": "11955:80:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 4191, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4188, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4165, - "src": "12050:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4189, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "hasDebt", - "nodeType": "MemberAccess", - "referencedDeclaration": 57736, - "src": "12050:22:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30783030", - "id": 4190, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12076:4:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "src": "12050:30:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4199, - "nodeType": "IfStatement", - "src": "12046:527:29", - "trueBody": { - "id": 4198, - "nodeType": "Block", - "src": "12082:491:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4195, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4144, - "src": "12554:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 4192, - "name": "FreeCollateralExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "12502:22:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - }, - "id": 4194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkFreeCollateralAndRevert", - "nodeType": "MemberAccess", - "referencedDeclaration": 553, - "src": "12502:51:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 4196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12502:60:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4197, - "nodeType": "ExpressionStatement", - "src": "12502:60:29" - } - ] - } - } - ] - }, - "documentation": { - "id": 4142, - "nodeType": "StructuredDocumentation", - "src": "9908:1246:29", - "text": "@notice Executes a batch of balance transfers and trading actions via an authorized callback contract. This\n can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform\n other actions on behalf of the user.\n Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract\n needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM\n will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting\n and will mainly be used for contracts that make migrating assets a better user experience.\n @param account the account that will take all the actions\n @param actions array of balance actions with trades to take, must be sorted by currency id\n @param callbackData arbitrary bytes to be passed backed to the caller in the callback\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n @dev auth:authorizedCallbackContract" - }, - "functionSelector": "5950d8e9", - "id": 4201, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "batchBalanceAndTradeActionWithCallback", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4150, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4144, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4201, - "src": "11216:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4143, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11216:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4147, - "mutability": "mutable", - "name": "actions", - "nodeType": "VariableDeclaration", - "scope": 4201, - "src": "11241:42:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades[]" - }, - "typeName": { - "baseType": { - "id": 4145, - "name": "BalanceActionWithTrades", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57537, - "src": "11241:23:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", - "typeString": "struct BalanceActionWithTrades" - } - }, - "id": 4146, - "nodeType": "ArrayTypeName", - "src": "11241:25:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", - "typeString": "struct BalanceActionWithTrades[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4149, - "mutability": "mutable", - "name": "callbackData", - "nodeType": "VariableDeclaration", - "scope": 4201, - "src": "11293:27:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4148, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11293:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "11206:120:29" - }, - "returnParameters": { - "id": 4151, - "nodeType": "ParameterList", - "parameters": [], - "src": "11344:0:29" - }, - "scope": 4840, - "src": "11159:1420:29", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 4358, - "nodeType": "Block", - "src": "12746:2767:29", - "statements": [ - { - "assignments": [ - 4212 - ], - "declarations": [ - { - "constant": false, - "id": 4212, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4358, - "src": "12756:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4211, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "12756:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 4216, - "initialValue": { - "arguments": [ - { - "id": 4214, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "12820:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 4213, - "name": "_settleAccountIfRequired", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4796, - "src": "12795:24:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) returns (struct AccountContext memory)" - } - }, - "id": 4215, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12795:33:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12756:72:29" - }, - { - "assignments": [ - 4218 - ], - "declarations": [ - { - "constant": false, - "id": 4218, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 4358, - "src": "12838:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 4217, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "12838:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - } - ], - "id": 4219, - "nodeType": "VariableDeclarationStatement", - "src": "12838:32:29" - }, - { - "assignments": [ - 4221 - ], - "declarations": [ - { - "constant": false, - "id": 4221, - "mutability": "mutable", - "name": "portfolioState", - "nodeType": "VariableDeclaration", - "scope": 4358, - "src": "13047:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState" - }, - "typeName": { - "id": 4220, - "name": "PortfolioState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57602, - "src": "13047:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", - "typeString": "struct PortfolioState" - } - }, - "visibility": "internal" - } - ], - "id": 4229, - "initialValue": { - "arguments": [ - { - "id": 4224, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "13136:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4225, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "13157:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4226, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetArrayLength", - "nodeType": "MemberAccess", - "referencedDeclaration": 57738, - "src": "13157:31:29", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "hexValue": "30", - "id": 4227, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13202:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "expression": { - "id": 4222, - "name": "PortfolioHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38387, - "src": "13086:16:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", - "typeString": "type(library PortfolioHandler)" - } - }, - "id": 4223, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "buildPortfolioState", - "nodeType": "MemberAccess", - "referencedDeclaration": 38148, - "src": "13086:36:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$_t_uint256_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "function (address,uint8,uint256) view returns (struct PortfolioState memory)" - } - }, - "id": 4228, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13086:127:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13047:166:29" - }, - { - "body": { - "id": 4340, - "nodeType": "Block", - "src": "13269:1716:29", - "statements": [ - { - "assignments": [ - 4242 - ], - "declarations": [ - { - "constant": false, - "id": 4242, - "mutability": "mutable", - "name": "action", - "nodeType": "VariableDeclaration", - "scope": 4340, - "src": "13283:39:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades" - }, - "typeName": { - "id": 4241, - "name": "BalanceActionWithTrades", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57537, - "src": "13283:23:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", - "typeString": "struct BalanceActionWithTrades" - } - }, - "visibility": "internal" - } - ], - "id": 4246, - "initialValue": { - "baseExpression": { - "id": 4243, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4206, - "src": "13325:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - }, - "id": 4245, - "indexExpression": { - "id": 4244, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4231, - "src": "13333:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13325:10:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13283:52:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 4249, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4247, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4231, - "src": "13548:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 4248, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13552:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13548:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4264, - "nodeType": "IfStatement", - "src": "13544:118:29", - "trueBody": { - "id": 4263, - "nodeType": "Block", - "src": "13555:107:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "id": 4259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4251, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "13581:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57525, - "src": "13581:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 4253, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4206, - "src": "13601:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - }, - "id": 4257, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 4256, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4254, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4231, - "src": "13609:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 4255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13613:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "13609:5:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13601:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57525, - "src": "13601:25:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "13581:45:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e736f7274656420616374696f6e73", - "id": 4260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13628:18:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", - "typeString": "literal_string \"Unsorted actions\"" - }, - "value": "Unsorted actions" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", - "typeString": "literal_string \"Unsorted actions\"" - } - ], - "id": 4250, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "13573:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13573:74:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4262, - "nodeType": "ExpressionStatement", - "src": "13573:74:29" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 4268, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "13760:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4269, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "13769:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4270, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57525, - "src": "13769:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 4271, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "13788:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "expression": { - "id": 4265, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "13730:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4267, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "loadBalanceState", - "nodeType": "MemberAccess", - "referencedDeclaration": 25360, - "src": "13730:29:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" - } - }, - "id": 4272, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13730:73:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4273, - "nodeType": "ExpressionStatement", - "src": "13730:73:29" - }, - { - "expression": { - "arguments": [ - { - "id": 4275, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "13944:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4276, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "13969:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "expression": { - "id": 4277, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "13999:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4278, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "actionType", - "nodeType": "MemberAccess", - "referencedDeclaration": 57523, - "src": "13999:17:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - { - "expression": { - "id": 4279, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14034:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4280, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "depositActionAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 57527, - "src": "14034:26:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 4274, - "name": "_executeDepositAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4451, - "src": "13905:21:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_uint256_$returns$__$", - "typeString": "function (address,struct BalanceState memory,enum DepositActionType,uint256)" - } - }, - "id": 4281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13905:169:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4282, - "nodeType": "ExpressionStatement", - "src": "13905:169:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 4287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 4283, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14093:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4284, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "trades", - "nodeType": "MemberAccess", - "referencedDeclaration": 57536, - "src": "14093:13:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - }, - "id": 4285, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14093:20:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 4286, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14116:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "14093:24:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4327, - "nodeType": "IfStatement", - "src": "14089:586:29", - "trueBody": { - "id": 4326, - "nodeType": "Block", - "src": "14119:556:29", - "statements": [ - { - "assignments": [ - 4289 - ], - "declarations": [ - { - "constant": false, - "id": 4289, - "mutability": "mutable", - "name": "netCash", - "nodeType": "VariableDeclaration", - "scope": 4326, - "src": "14137:14:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4288, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "14137:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4290, - "nodeType": "VariableDeclarationStatement", - "src": "14137:14:29" - }, - { - "expression": { - "id": 4303, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 4291, - "name": "netCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4289, - "src": "14170:7:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 4292, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4221, - "src": "14179:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - } - ], - "id": 4293, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "14169:25:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "tuple(int256,struct PortfolioState memory)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4295, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "14233:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4296, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14262:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4297, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57525, - "src": "14262:17:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 4298, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14301:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4299, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "trades", - "nodeType": "MemberAccess", - "referencedDeclaration": 57536, - "src": "14301:13:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - }, - { - "id": 4300, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "14336:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 4301, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4221, - "src": "14372:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - ], - "id": 4294, - "name": "_executeTrades", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4738, - "src": "14197:14:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint16_$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_PortfolioState_$57602_memory_ptr_$returns$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "function (address,uint16,bytes32[] calldata,struct AccountContext memory,struct PortfolioState memory) returns (int256,struct PortfolioState memory)" - } - }, - "id": 4302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14197:207:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", - "typeString": "tuple(int256,struct PortfolioState memory)" - } - }, - "src": "14169:235:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4304, - "nodeType": "ExpressionStatement", - "src": "14169:235:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4305, - "name": "netCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4289, - "src": "14512:7:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "30", - "id": 4306, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14522:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "14512:11:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4315, - "nodeType": "IfStatement", - "src": "14508:66:29", - "trueBody": { - "expression": { - "arguments": [ - { - "id": 4309, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "14546:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4310, - "name": "netCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4289, - "src": "14560:7:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4311, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "neg", - "nodeType": "MemberAccess", - "referencedDeclaration": 44999, - "src": "14560:11:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256) pure returns (int256)" - } - }, - "id": 4312, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14560:13:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 4308, - "name": "_checkSufficientCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4767, - "src": "14525:20:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_BalanceState_$57632_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (struct BalanceState memory,int256) pure" - } - }, - "id": 4313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14525:49:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4314, - "nodeType": "ExpressionStatement", - "src": "14525:49:29" - } - }, - { - "expression": { - "id": 4324, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4316, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "14592:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4318, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "14592:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4322, - "name": "netCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4289, - "src": "14652:7:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4319, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "14621:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4320, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "14621:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4321, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "14621:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14621:39:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "14592:68:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4325, - "nodeType": "ExpressionStatement", - "src": "14592:68:29" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 4329, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "14742:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4330, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "14767:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 4331, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "14799:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "expression": { - "id": 4332, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14829:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "withdrawAmountInternalPrecision", - "nodeType": "MemberAccess", - "referencedDeclaration": 57529, - "src": "14829:38:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 4334, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14885:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4335, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "withdrawEntireCashBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57531, - "src": "14885:32:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "expression": { - "id": 4336, - "name": "action", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4242, - "src": "14935:6:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata" - } - }, - "id": 4337, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "redeemToUnderlying", - "nodeType": "MemberAccess", - "referencedDeclaration": 57533, - "src": "14935:25:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 4328, - "name": "_calculateWithdrawActionAndFinalize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4637, - "src": "14689:35:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_uint256_$_t_bool_$_t_bool_$returns$__$", - "typeString": "function (address,struct AccountContext memory,struct BalanceState memory,uint256,bool,bool)" - } - }, - "id": 4338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14689:285:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4339, - "nodeType": "ExpressionStatement", - "src": "14689:285:29" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 4237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4234, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4231, - "src": "13244:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 4235, - "name": "actions", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4206, - "src": "13248:7:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades calldata[] calldata" - } - }, - "id": 4236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "13248:14:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13244:18:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4341, - "initializationExpression": { - "assignments": [ - 4231 - ], - "declarations": [ - { - "constant": false, - "id": 4231, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 4341, - "src": "13229:9:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4230, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13229:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 4233, - "initialValue": { - "hexValue": "30", - "id": 4232, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13241:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "13229:13:29" - }, - "loopExpression": { - "expression": { - "id": 4239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "13264:3:29", - "subExpression": { - "id": 4238, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4231, - "src": "13264:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 4240, - "nodeType": "ExpressionStatement", - "src": "13264:3:29" - }, - "nodeType": "ForStatement", - "src": "13224:1761:29" - }, - { - "condition": { - "id": 4345, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "15164:33:29", - "subExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4342, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "15165:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4343, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "isBitmapEnabled", - "nodeType": "MemberAccess", - "referencedDeclaration": 23385, - "src": "15165:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) pure returns (bool)" - } - }, - "id": 4344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15165:32:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4355, - "nodeType": "IfStatement", - "src": "15160:221:29", - "trueBody": { - "id": 4354, - "nodeType": "Block", - "src": "15199:182:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4349, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "15339:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4350, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4221, - "src": "15348:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - }, - { - "hexValue": "66616c7365", - "id": 4351, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15364:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 4346, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "15296:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4348, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "storeAssetsAndUpdateContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 24054, - "src": "15296:42:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_bool_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory,address,struct PortfolioState memory,bool)" - } - }, - "id": 4352, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15296:74:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4353, - "nodeType": "ExpressionStatement", - "src": "15296:74:29" - } - ] - } - }, - { - "expression": { - "id": 4356, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4212, - "src": "15492:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "functionReturnParameters": 4210, - "id": 4357, - "nodeType": "Return", - "src": "15485:21:29" - } - ] - }, - "id": 4359, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_batchBalanceAndTradeAction", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4207, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4203, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4359, - "src": "12631:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4202, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12631:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4206, - "mutability": "mutable", - "name": "actions", - "nodeType": "VariableDeclaration", - "scope": 4359, - "src": "12656:42:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", - "typeString": "struct BalanceActionWithTrades[]" - }, - "typeName": { - "baseType": { - "id": 4204, - "name": "BalanceActionWithTrades", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57537, - "src": "12656:23:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", - "typeString": "struct BalanceActionWithTrades" - } - }, - "id": 4205, - "nodeType": "ArrayTypeName", - "src": "12656:25:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", - "typeString": "struct BalanceActionWithTrades[]" - } - }, - "visibility": "internal" - } - ], - "src": "12621:83:29" - }, - "returnParameters": { - "id": 4210, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4209, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4359, - "src": "12723:21:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4208, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "12723:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "src": "12722:23:29" - }, - "scope": 4840, - "src": "12585:2928:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 4450, - "nodeType": "Block", - "src": "15739:1507:29", - "statements": [ - { - "assignments": [ - 4372 - ], - "declarations": [ - { - "constant": false, - "id": 4372, - "mutability": "mutable", - "name": "depositActionAmount", - "nodeType": "VariableDeclaration", - "scope": 4450, - "src": "15749:26:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4371, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "15749:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4377, - "initialValue": { - "arguments": [ - { - "id": 4375, - "name": "depositActionAmount_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4368, - "src": "15795:20:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 4373, - "name": "SafeInt256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45162, - "src": "15778:10:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", - "typeString": "type(library SafeInt256)" - } - }, - "id": 4374, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "toInt", - "nodeType": "MemberAccess", - "referencedDeclaration": 45127, - "src": "15778:16:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", - "typeString": "function (uint256) pure returns (int256)" - } - }, - "id": 4376, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15778:38:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15749:67:29" - }, - { - "assignments": [ - 4379 - ], - "declarations": [ - { - "constant": false, - "id": 4379, - "mutability": "mutable", - "name": "assetInternalAmount", - "nodeType": "VariableDeclaration", - "scope": 4450, - "src": "15826:26:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4378, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "15826:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4380, - "nodeType": "VariableDeclarationStatement", - "src": "15826:26:29" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4384, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4382, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4372, - "src": "15870:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "30", - "id": 4383, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15893:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "15870:24:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 4381, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "15862:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 4385, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15862:33:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4386, - "nodeType": "ExpressionStatement", - "src": "15862:33:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4390, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4387, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "15910:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4388, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "15925:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4389, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "None", - "nodeType": "MemberAccess", - "src": "15925:22:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "15910:37:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 4401, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4396, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4393, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "16003:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4394, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "16018:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4395, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "DepositAsset", - "nodeType": "MemberAccess", - "src": "16018:30:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "16003:45:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4397, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "16064:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4398, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "16079:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4399, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "DepositAssetAndMintNToken", - "nodeType": "MemberAccess", - "src": "16079:43:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "16064:58:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16003:119:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 4420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4412, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "16539:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4413, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "16554:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4414, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "DepositUnderlying", - "nodeType": "MemberAccess", - "src": "16554:35:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "16539:50:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4416, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "16605:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4417, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "16620:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4418, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "DepositUnderlyingAndMintNToken", - "nodeType": "MemberAccess", - "src": "16620:48:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "16605:63:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16539:129:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4433, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4430, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "16880:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4431, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "16895:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4432, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "ConvertCashToNToken", - "nodeType": "MemberAccess", - "src": "16895:37:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "16880:52:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4439, - "nodeType": "IfStatement", - "src": "16876:206:29", - "trueBody": { - "id": 4438, - "nodeType": "Block", - "src": "16934:148:29", - "statements": [ - { - "expression": { - "id": 4436, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4434, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4379, - "src": "17030:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 4435, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4372, - "src": "17052:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "17030:41:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4437, - "nodeType": "ExpressionStatement", - "src": "17030:41:29" - } - ] - } - }, - "id": 4440, - "nodeType": "IfStatement", - "src": "16522:560:29", - "trueBody": { - "id": 4429, - "nodeType": "Block", - "src": "16679:191:29", - "statements": [ - { - "expression": { - "id": 4427, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4421, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4379, - "src": "16772:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4424, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4362, - "src": "16830:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4425, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4372, - "src": "16839:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4422, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4364, - "src": "16794:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4423, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "depositUnderlyingToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 24323, - "src": "16794:35:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,int256) returns (int256)" - } - }, - "id": 4426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16794:65:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "16772:87:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4428, - "nodeType": "ExpressionStatement", - "src": "16772:87:29" - } - ] - } - }, - "id": 4441, - "nodeType": "IfStatement", - "src": "15986:1096:29", - "trueBody": { - "id": 4411, - "nodeType": "Block", - "src": "16133:383:29", - "statements": [ - { - "expression": { - "id": 4409, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4402, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4379, - "src": "16333:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4405, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4362, - "src": "16403:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4406, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4372, - "src": "16428:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "hexValue": "66616c7365", - "id": 4407, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16465:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 4403, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4364, - "src": "16355:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4404, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "depositAssetToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 24222, - "src": "16355:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,int256,bool) returns (int256)" - } - }, - "id": 4408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16355:150:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "16333:172:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4410, - "nodeType": "ExpressionStatement", - "src": "16333:172:29" - } - ] - } - }, - "id": 4442, - "nodeType": "IfStatement", - "src": "15906:1176:29", - "trueBody": { - "id": 4392, - "nodeType": "Block", - "src": "15949:31:29", - "statements": [ - { - "functionReturnParameters": 4370, - "id": 4391, - "nodeType": "Return", - "src": "15963:7:29" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 4444, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4364, - "src": "17126:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "id": 4445, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4366, - "src": "17152:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - { - "id": 4446, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4372, - "src": "17177:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 4447, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4379, - "src": "17210:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 4443, - "name": "_executeNTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4565, - "src": "17092:20:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_int256_$_t_int256_$returns$__$", - "typeString": "function (struct BalanceState memory,enum DepositActionType,int256,int256)" - } - }, - "id": 4448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17092:147:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4449, - "nodeType": "ExpressionStatement", - "src": "17092:147:29" - } - ] - }, - "documentation": { - "id": 4360, - "nodeType": "StructuredDocumentation", - "src": "15519:26:29", - "text": "@dev Executes deposits" - }, - "id": 4451, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_executeDepositAction", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4369, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4362, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4451, - "src": "15590:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4361, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15590:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4364, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 4451, - "src": "15615:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 4363, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "15615:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4366, - "mutability": "mutable", - "name": "depositType", - "nodeType": "VariableDeclaration", - "scope": 4451, - "src": "15657:29:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "typeName": { - "id": 4365, - "name": "DepositActionType", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57495, - "src": "15657:17:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4368, - "mutability": "mutable", - "name": "depositActionAmount_", - "nodeType": "VariableDeclaration", - "scope": 4451, - "src": "15696:28:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4367, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15696:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "15580:150:29" - }, - "returnParameters": { - "id": 4370, - "nodeType": "ParameterList", - "parameters": [], - "src": "15739:0:29" - }, - "scope": 4840, - "src": "15550:1696:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4564, - "nodeType": "Block", - "src": "17486:1804:29", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 4476, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 4471, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4463, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4456, - "src": "17586:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4464, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "17601:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4465, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "DepositAssetAndMintNToken", - "nodeType": "MemberAccess", - "src": "17601:43:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "17586:58:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4467, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4456, - "src": "17660:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4468, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "17675:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4469, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "DepositUnderlyingAndMintNToken", - "nodeType": "MemberAccess", - "src": "17675:48:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "17660:63:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "17586:137:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4472, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4456, - "src": "17739:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4473, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "17754:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4474, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "ConvertCashToNToken", - "nodeType": "MemberAccess", - "src": "17754:37:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "17739:52:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "17586:205:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "id": 4515, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4512, - "name": "depositType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4456, - "src": "18464:11:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4513, - "name": "DepositActionType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57495, - "src": "18479:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", - "typeString": "type(enum DepositActionType)" - } - }, - "id": 4514, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "RedeemNToken", - "nodeType": "MemberAccess", - "src": "18479:30:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "src": "18464:45:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4562, - "nodeType": "IfStatement", - "src": "18460:824:29", - "trueBody": { - "id": 4561, - "nodeType": "Block", - "src": "18511:773:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 4524, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18764:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4525, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netNTokenSupplyChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57627, - "src": "18764:34:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "arguments": [ - { - "expression": { - "id": 4520, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18664:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4521, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netNTokenTransfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 57625, - "src": "18664:30:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4517, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18585:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4518, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "storedNTokenBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57619, - "src": "18585:53:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "18585:78:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18585:110:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4523, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "18585:178:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18585:214:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 4527, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4458, - "src": "18803:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "18585:237:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e73756666696369656e7420746f6b656e2062616c616e6365", - "id": 4529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18840:28:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a7e5e4d46ea524835ea36125140e247d59a2bce707f2094f88605dba8157d192", - "typeString": "literal_string \"Insufficient token balance\"" - }, - "value": "Insufficient token balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a7e5e4d46ea524835ea36125140e247d59a2bce707f2094f88605dba8157d192", - "typeString": "literal_string \"Insufficient token balance\"" - } - ], - "id": 4516, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "18525:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18525:357:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4531, - "nodeType": "ExpressionStatement", - "src": "18525:357:29" - }, - { - "expression": { - "id": 4540, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4532, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18897:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4534, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netNTokenSupplyChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57627, - "src": "18897:34:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4538, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4458, - "src": "18990:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4535, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18934:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4536, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netNTokenSupplyChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57627, - "src": "18934:34:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4537, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 44959, - "src": "18934:38:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18934:89:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "18897:126:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4541, - "nodeType": "ExpressionStatement", - "src": "18897:126:29" - }, - { - "assignments": [ - 4543 - ], - "declarations": [ - { - "constant": false, - "id": 4543, - "mutability": "mutable", - "name": "assetCash", - "nodeType": "VariableDeclaration", - "scope": 4561, - "src": "19038:16:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4542, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "19038:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4550, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 4546, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "19114:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4547, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57615, - "src": "19114:23:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 4548, - "name": "depositActionAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4458, - "src": "19155:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4544, - "name": "nTokenRedeemAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 13836, - "src": "19057:18:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", - "typeString": "type(library nTokenRedeemAction)" - } - }, - "id": 4545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "nTokenRedeemViaBatch", - "nodeType": "MemberAccess", - "referencedDeclaration": 12926, - "src": "19057:39:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_uint16_$_t_int256_$returns$_t_int256_$", - "typeString": "function (uint16,int256) returns (int256)" - } - }, - "id": 4549, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19057:131:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "19038:150:29" - }, - { - "expression": { - "id": 4559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4551, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "19203:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4553, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "19203:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4557, - "name": "assetCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4543, - "src": "19263:9:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4554, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "19232:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4555, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "19232:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4556, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "19232:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4558, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19232:41:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "19203:70:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4560, - "nodeType": "ExpressionStatement", - "src": "19203:70:29" - } - ] - } - }, - "id": 4563, - "nodeType": "IfStatement", - "src": "17569:1715:29", - "trueBody": { - "id": 4511, - "nodeType": "Block", - "src": "17802:652:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4478, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "17929:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - { - "id": 4479, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4460, - "src": "17943:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 4477, - "name": "_checkSufficientCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4767, - "src": "17908:20:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_BalanceState_$57632_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (struct BalanceState memory,int256) pure" - } - }, - "id": 4480, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17908:55:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4481, - "nodeType": "ExpressionStatement", - "src": "17908:55:29" - }, - { - "expression": { - "id": 4490, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4482, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "17977:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4484, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "17977:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4488, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4460, - "src": "18037:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4485, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18006:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4486, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "18006:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 44959, - "src": "18006:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4489, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18006:51:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "17977:80:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4491, - "nodeType": "ExpressionStatement", - "src": "17977:80:29" - }, - { - "assignments": [ - 4493 - ], - "declarations": [ - { - "constant": false, - "id": 4493, - "mutability": "mutable", - "name": "tokensMinted", - "nodeType": "VariableDeclaration", - "scope": 4511, - "src": "18168:19:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4492, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "18168:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4500, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 4496, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18235:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4497, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57615, - "src": "18235:23:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 4498, - "name": "assetInternalAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4460, - "src": "18276:19:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "id": 4494, - "name": "nTokenMintAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12854, - "src": "18190:16:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", - "typeString": "type(library nTokenMintAction)" - } - }, - "id": 4495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "nTokenMint", - "nodeType": "MemberAccess", - "referencedDeclaration": 12310, - "src": "18190:27:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_uint16_$_t_int256_$returns$_t_int256_$", - "typeString": "function (uint16,int256) returns (int256)" - } - }, - "id": 4499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18190:119:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18168:141:29" - }, - { - "expression": { - "id": 4509, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4501, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18324:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4503, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netNTokenSupplyChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57627, - "src": "18324:34:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4507, - "name": "tokensMinted", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4493, - "src": "18417:12:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4504, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4454, - "src": "18361:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4505, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netNTokenSupplyChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57627, - "src": "18361:34:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4506, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "18361:38:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4508, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18361:82:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "18324:119:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4510, - "nodeType": "ExpressionStatement", - "src": "18324:119:29" - } - ] - } - } - ] - }, - "documentation": { - "id": 4452, - "nodeType": "StructuredDocumentation", - "src": "17252:32:29", - "text": "@dev Executes nToken actions" - }, - "id": 4565, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_executeNTokenAction", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4461, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4454, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 4565, - "src": "17328:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 4453, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "17328:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4456, - "mutability": "mutable", - "name": "depositType", - "nodeType": "VariableDeclaration", - "scope": 4565, - "src": "17370:29:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - }, - "typeName": { - "id": 4455, - "name": "DepositActionType", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57495, - "src": "17370:17:29", - "typeDescriptions": { - "typeIdentifier": "t_enum$_DepositActionType_$57495", - "typeString": "enum DepositActionType" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4458, - "mutability": "mutable", - "name": "depositActionAmount", - "nodeType": "VariableDeclaration", - "scope": 4565, - "src": "17409:26:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4457, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "17409:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4460, - "mutability": "mutable", - "name": "assetInternalAmount", - "nodeType": "VariableDeclaration", - "scope": 4565, - "src": "17445:26:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4459, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "17445:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "17318:159:29" - }, - "returnParameters": { - "id": 4462, - "nodeType": "ParameterList", - "parameters": [], - "src": "17486:0:29" - }, - "scope": 4840, - "src": "17289:2001:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4636, - "nodeType": "Block", - "src": "19653:1082:29", - "statements": [ - { - "assignments": [ - 4582 - ], - "declarations": [ - { - "constant": false, - "id": 4582, - "mutability": "mutable", - "name": "withdrawAmount", - "nodeType": "VariableDeclaration", - "scope": 4636, - "src": "19663:21:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4581, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "19663:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4587, - "initialValue": { - "arguments": [ - { - "id": 4585, - "name": "withdrawAmountInternalPrecision", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4574, - "src": "19704:31:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 4583, - "name": "SafeInt256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45162, - "src": "19687:10:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", - "typeString": "type(library SafeInt256)" - } - }, - "id": 4584, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "toInt", - "nodeType": "MemberAccess", - "referencedDeclaration": 45127, - "src": "19687:16:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", - "typeString": "function (uint256) pure returns (int256)" - } - }, - "id": 4586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19687:49:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "19663:73:29" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4589, - "name": "withdrawAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4582, - "src": "19754:14:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "30", - "id": 4590, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19772:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "19754:19:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 4588, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "19746:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 4592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19746:28:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4593, - "nodeType": "ExpressionStatement", - "src": "19746:28:29" - }, - { - "condition": { - "id": 4594, - "name": "withdrawEntireCashBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4576, - "src": "19934:25:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4617, - "nodeType": "IfStatement", - "src": "19930:543:29", - "trueBody": { - "id": 4616, - "nodeType": "Block", - "src": "19961:512:29", - "statements": [ - { - "expression": { - "id": 4606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4595, - "name": "withdrawAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4582, - "src": "20161:14:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 4603, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4572, - "src": "20279:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4604, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netAssetTransferInternalPrecision", - "nodeType": "MemberAccess", - "referencedDeclaration": 57623, - "src": "20279:46:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "arguments": [ - { - "expression": { - "id": 4599, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4572, - "src": "20230:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4600, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "20230:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4596, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4572, - "src": "20178:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4597, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "storedCashBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57617, - "src": "20178:30:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4598, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "20178:51:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4601, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20178:79:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "20178:100:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20178:148:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "20161:165:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4607, - "nodeType": "ExpressionStatement", - "src": "20161:165:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4608, - "name": "withdrawAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4582, - "src": "20424:14:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "30", - "id": 4609, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20441:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20424:18:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4615, - "nodeType": "IfStatement", - "src": "20420:42:29", - "trueBody": { - "expression": { - "id": 4613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4611, - "name": "withdrawAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4582, - "src": "20444:14:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 4612, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20461:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20444:18:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4614, - "nodeType": "ExpressionStatement", - "src": "20444:18:29" - } - } - ] - } - }, - { - "expression": { - "id": 4626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4618, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4572, - "src": "20510:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4620, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "netAssetTransferInternalPrecision", - "nodeType": "MemberAccess", - "referencedDeclaration": 57623, - "src": "20510:46:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4624, - "name": "withdrawAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4582, - "src": "20636:14:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4621, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4572, - "src": "20559:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4622, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netAssetTransferInternalPrecision", - "nodeType": "MemberAccess", - "referencedDeclaration": 57623, - "src": "20559:59:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sub", - "nodeType": "MemberAccess", - "referencedDeclaration": 44959, - "src": "20559:76:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20559:92:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "20510:141:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4627, - "nodeType": "ExpressionStatement", - "src": "20510:141:29" - }, - { - "expression": { - "arguments": [ - { - "id": 4631, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4568, - "src": "20684:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4632, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4570, - "src": "20693:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 4633, - "name": "redeemToUnderlying", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4578, - "src": "20709:18:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 4628, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4572, - "src": "20662:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4630, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "finalize", - "nodeType": "MemberAccess", - "referencedDeclaration": 24546, - "src": "20662:21:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", - "typeString": "function (struct BalanceState memory,address,struct AccountContext memory,bool) returns (int256)" - } - }, - "id": 4634, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20662:66:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4635, - "nodeType": "ExpressionStatement", - "src": "20662:66:29" - } - ] - }, - "documentation": { - "id": 4566, - "nodeType": "StructuredDocumentation", - "src": "19296:58:29", - "text": "@dev Calculations any withdraws and finalizes balances" - }, - "id": 4637, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_calculateWithdrawActionAndFinalize", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4579, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4568, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4637, - "src": "19413:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4567, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19413:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4570, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4637, - "src": "19438:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4569, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "19438:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4572, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 4637, - "src": "19484:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 4571, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "19484:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4574, - "mutability": "mutable", - "name": "withdrawAmountInternalPrecision", - "nodeType": "VariableDeclaration", - "scope": 4637, - "src": "19526:39:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4573, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "19526:7:29", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4576, - "mutability": "mutable", - "name": "withdrawEntireCashBalance", - "nodeType": "VariableDeclaration", - "scope": 4637, - "src": "19575:30:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4575, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "19575:4:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4578, - "mutability": "mutable", - "name": "redeemToUnderlying", - "nodeType": "VariableDeclaration", - "scope": 4637, - "src": "19615:23:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4577, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "19615:4:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "19403:241:29" - }, - "returnParameters": { - "id": 4580, - "nodeType": "ParameterList", - "parameters": [], - "src": "19653:0:29" - }, - "scope": 4840, - "src": "19359:1376:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4662, - "nodeType": "Block", - "src": "20849:342:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4647, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4639, - "src": "21046:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 4644, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4641, - "src": "21013:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4646, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "setAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23372, - "src": "21013:32:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory,address)" - } - }, - "id": 4648, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21013:41:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4649, - "nodeType": "ExpressionStatement", - "src": "21013:41:29" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 4653, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4650, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4641, - "src": "21068:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4651, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "hasDebt", - "nodeType": "MemberAccess", - "referencedDeclaration": 57736, - "src": "21068:22:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30783030", - "id": 4652, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21094:4:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "src": "21068:30:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4661, - "nodeType": "IfStatement", - "src": "21064:121:29", - "trueBody": { - "id": 4660, - "nodeType": "Block", - "src": "21100:85:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4657, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4639, - "src": "21166:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 4654, - "name": "FreeCollateralExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "21114:22:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - }, - "id": 4656, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkFreeCollateralAndRevert", - "nodeType": "MemberAccess", - "referencedDeclaration": 553, - "src": "21114:51:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 4658, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21114:60:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4659, - "nodeType": "ExpressionStatement", - "src": "21114:60:29" - } - ] - } - } - ] - }, - "id": 4663, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_finalizeAccountContext", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4642, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4639, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4663, - "src": "20774:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4638, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "20774:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4641, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4663, - "src": "20791:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4640, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "20791:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "src": "20773:55:29" - }, - "returnParameters": { - "id": 4643, - "nodeType": "ParameterList", - "parameters": [], - "src": "20849:0:29" - }, - "scope": 4840, - "src": "20741:450:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4737, - "nodeType": "Block", - "src": "21477:1031:29", - "statements": [ - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4681, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4672, - "src": "21491:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4682, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "isBitmapEnabled", - "nodeType": "MemberAccess", - "referencedDeclaration": 23385, - "src": "21491:30:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) pure returns (bool)" - } - }, - "id": 4683, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21491:32:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 4735, - "nodeType": "Block", - "src": "22092:410:29", - "statements": [ - { - "expression": { - "id": 4733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 4723, - "name": "postTradeState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4679, - "src": "22304:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - }, - { - "id": 4724, - "name": "netCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4677, - "src": "22320:7:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "id": 4725, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "22303:25:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", - "typeString": "tuple(struct PortfolioState memory,int256)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4728, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4665, - "src": "22386:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4729, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4667, - "src": "22411:10:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 4730, - "name": "portfolioState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4674, - "src": "22439:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - } - }, - { - "id": 4731, - "name": "trades", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4670, - "src": "22471:6:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState memory" - }, - { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - ], - "expression": { - "id": 4726, - "name": "TradingAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11085, - "src": "22331:13:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", - "typeString": "type(library TradingAction)" - } - }, - "id": 4727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "executeTradesArrayBatch", - "nodeType": "MemberAccess", - "referencedDeclaration": 10018, - "src": "22331:37:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_uint16_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", - "typeString": "function (address,uint16,struct PortfolioState memory,bytes32[] memory) returns (struct PortfolioState memory,int256)" - } - }, - "id": 4732, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22331:160:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", - "typeString": "tuple(struct PortfolioState memory,int256)" - } - }, - "src": "22303:188:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4734, - "nodeType": "ExpressionStatement", - "src": "22303:188:29" - } - ] - }, - "id": 4736, - "nodeType": "IfStatement", - "src": "21487:1015:29", - "trueBody": { - "id": 4722, - "nodeType": "Block", - "src": "21525:561:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "id": 4688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4685, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4672, - "src": "21564:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4686, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "bitmapCurrencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57740, - "src": "21564:31:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 4687, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4667, - "src": "21599:10:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "21564:45:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c69642074726164657320666f72206163636f756e74", - "id": 4689, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21627:28:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c3935fddfd35e5ed413bf683e8d0d0c7f8f93a5fcd3635d6f34d5796738ae68f", - "typeString": "literal_string \"Invalid trades for account\"" - }, - "value": "Invalid trades for account" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c3935fddfd35e5ed413bf683e8d0d0c7f8f93a5fcd3635d6f34d5796738ae68f", - "typeString": "literal_string \"Invalid trades for account\"" - } - ], - "id": 4684, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "21539:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21539:130:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4691, - "nodeType": "ExpressionStatement", - "src": "21539:130:29" - }, - { - "assignments": [ - 4693 - ], - "declarations": [ - { - "constant": false, - "id": 4693, - "mutability": "mutable", - "name": "didIncurDebt", - "nodeType": "VariableDeclaration", - "scope": 4722, - "src": "21683:17:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4692, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "21683:4:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 4694, - "nodeType": "VariableDeclarationStatement", - "src": "21683:17:29" - }, - { - "expression": { - "id": 4707, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 4695, - "name": "netCash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4677, - "src": "21715:7:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 4696, - "name": "didIncurDebt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4693, - "src": "21724:12:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 4697, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "21714:23:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_int256_$_t_bool_$", - "typeString": "tuple(int256,bool)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4700, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4665, - "src": "21796:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4701, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4672, - "src": "21821:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4702, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "bitmapCurrencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57740, - "src": "21821:31:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 4703, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4672, - "src": "21870:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4704, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "nextSettleTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 57734, - "src": "21870:29:29", - "typeDescriptions": { - "typeIdentifier": "t_uint40", - "typeString": "uint40" - } - }, - { - "id": 4705, - "name": "trades", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4670, - "src": "21917:6:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint40", - "typeString": "uint40" - }, - { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[] calldata" - } - ], - "expression": { - "id": 4698, - "name": "TradingAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11085, - "src": "21740:13:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", - "typeString": "type(library TradingAction)" - } - }, - "id": 4699, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "executeTradesBitmapBatch", - "nodeType": "MemberAccess", - "referencedDeclaration": 9886, - "src": "21740:38:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_uint16_$_t_uint40_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$_t_bool_$", - "typeString": "function (address,uint16,uint40,bytes32[] memory) returns (int256,bool)" - } - }, - "id": 4706, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "21740:197:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_int256_$_t_bool_$", - "typeString": "tuple(int256,bool)" - } - }, - "src": "21714:223:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4708, - "nodeType": "ExpressionStatement", - "src": "21714:223:29" - }, - { - "condition": { - "id": 4709, - "name": "didIncurDebt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4693, - "src": "21955:12:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 4721, - "nodeType": "IfStatement", - "src": "21951:125:29", - "trueBody": { - "id": 4720, - "nodeType": "Block", - "src": "21969:107:29", - "statements": [ - { - "expression": { - "id": 4718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 4710, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4672, - "src": "21987:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4712, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "hasDebt", - "nodeType": "MemberAccess", - "referencedDeclaration": 57736, - "src": "21987:22:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 4717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4713, - "name": "Constants", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 22832, - "src": "22012:9:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", - "typeString": "type(library Constants)" - } - }, - "id": 4714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "HAS_ASSET_DEBT", - "nodeType": "MemberAccess", - "referencedDeclaration": 22777, - "src": "22012:24:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "expression": { - "id": 4715, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4672, - "src": "22039:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4716, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "hasDebt", - "nodeType": "MemberAccess", - "referencedDeclaration": 57736, - "src": "22039:22:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "22012:49:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "21987:74:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 4719, - "nodeType": "ExpressionStatement", - "src": "21987:74:29" - } - ] - } - } - ] - } - } - ] - }, - "id": 4738, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_executeTrades", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4675, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4665, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21230:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4664, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "21230:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4667, - "mutability": "mutable", - "name": "currencyId", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21255:17:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 4666, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "21255:6:29", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4670, - "mutability": "mutable", - "name": "trades", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21282:25:29", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[]" - }, - "typeName": { - "baseType": { - "id": 4668, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "21282:7:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 4669, - "nodeType": "ArrayTypeName", - "src": "21282:9:29", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", - "typeString": "bytes32[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4672, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21317:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4671, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "21317:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4674, - "mutability": "mutable", - "name": "portfolioState", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21363:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState" - }, - "typeName": { - "id": 4673, - "name": "PortfolioState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57602, - "src": "21363:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", - "typeString": "struct PortfolioState" - } - }, - "visibility": "internal" - } - ], - "src": "21220:185:29" - }, - "returnParameters": { - "id": 4680, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4677, - "mutability": "mutable", - "name": "netCash", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21423:14:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4676, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "21423:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4679, - "mutability": "mutable", - "name": "postTradeState", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "21439:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", - "typeString": "struct PortfolioState" - }, - "typeName": { - "id": 4678, - "name": "PortfolioState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57602, - "src": "21439:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", - "typeString": "struct PortfolioState" - } - }, - "visibility": "internal" - } - ], - "src": "21422:54:29" - }, - "scope": 4840, - "src": "21197:1311:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4766, - "nodeType": "Block", - "src": "22775:427:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 4762, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4747, - "name": "amountInternalPrecision", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4743, - "src": "22929:23:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "30", - "id": 4748, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22956:1:29", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "22929:28:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 4757, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4741, - "src": "23078:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4758, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netAssetTransferInternalPrecision", - "nodeType": "MemberAccess", - "referencedDeclaration": 57623, - "src": "23078:46:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "arguments": [ - { - "expression": { - "id": 4753, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4741, - "src": "23029:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4754, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "netCashChange", - "nodeType": "MemberAccess", - "referencedDeclaration": 57621, - "src": "23029:26:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "expression": { - "expression": { - "id": 4750, - "name": "balanceState", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4741, - "src": "22977:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState memory" - } - }, - "id": 4751, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "storedCashBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57617, - "src": "22977:30:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "22977:51:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4755, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22977:79:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "add", - "nodeType": "MemberAccess", - "referencedDeclaration": 44985, - "src": "22977:100:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", - "typeString": "function (int256,int256) pure returns (int256)" - } - }, - "id": 4759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22977:148:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 4760, - "name": "amountInternalPrecision", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4743, - "src": "23129:23:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "22977:175:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "22929:223:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e73756666696369656e742063617368", - "id": 4763, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23166:19:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_dc004f7ed1a482e42015716a7d78c2cffca4ace23a8603c3b541c93e3ee37d90", - "typeString": "literal_string \"Insufficient cash\"" - }, - "value": "Insufficient cash" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_dc004f7ed1a482e42015716a7d78c2cffca4ace23a8603c3b541c93e3ee37d90", - "typeString": "literal_string \"Insufficient cash\"" - } - ], - "id": 4746, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "22908:7:29", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4764, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "22908:287:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4765, - "nodeType": "ExpressionStatement", - "src": "22908:287:29" - } - ] - }, - "documentation": { - "id": 4739, - "nodeType": "StructuredDocumentation", - "src": "22514:127:29", - "text": "@notice When lending, adding liquidity or minting nTokens the account must have a sufficient cash balance\n to do so." - }, - "id": 4767, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkSufficientCash", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4744, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4741, - "mutability": "mutable", - "name": "balanceState", - "nodeType": "VariableDeclaration", - "scope": 4767, - "src": "22676:32:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", - "typeString": "struct BalanceState" - }, - "typeName": { - "id": 4740, - "name": "BalanceState", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57632, - "src": "22676:12:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", - "typeString": "struct BalanceState" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4743, - "mutability": "mutable", - "name": "amountInternalPrecision", - "nodeType": "VariableDeclaration", - "scope": 4767, - "src": "22710:30:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4742, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "22710:6:29", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "22675:66:29" - }, - "returnParameters": { - "id": 4745, - "nodeType": "ParameterList", - "parameters": [], - "src": "22775:0:29" - }, - "scope": 4840, - "src": "22646:556:29", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4795, - "nodeType": "Block", - "src": "23319:360:29", - "statements": [ - { - "assignments": [ - 4775 - ], - "declarations": [ - { - "constant": false, - "id": 4775, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4795, - "src": "23329:36:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4774, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "23329:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 4780, - "initialValue": { - "arguments": [ - { - "id": 4778, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4769, - "src": "23408:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 4776, - "name": "AccountContextHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24055, - "src": "23368:21:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", - "typeString": "type(library AccountContextHandler)" - } - }, - "id": 4777, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23345, - "src": "23368:39:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) view returns (struct AccountContext memory)" - } - }, - "id": 4779, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23368:48:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23329:87:29" - }, - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4781, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4775, - "src": "23430:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4782, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "mustSettleAssets", - "nodeType": "MemberAccess", - "referencedDeclaration": 23510, - "src": "23430:31:29", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) view returns (bool)" - } - }, - "id": 4783, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23430:33:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 4793, - "nodeType": "Block", - "src": "23627:46:29", - "statements": [ - { - "expression": { - "id": 4791, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4775, - "src": "23648:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "functionReturnParameters": 4773, - "id": 4792, - "nodeType": "Return", - "src": "23641:21:29" - } - ] - }, - "id": 4794, - "nodeType": "IfStatement", - "src": "23426:247:29", - "trueBody": { - "id": 4790, - "nodeType": "Block", - "src": "23465:156:29", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 4786, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4769, - "src": "23586:7:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4787, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4775, - "src": "23595:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "expression": { - "id": 4784, - "name": "SettleAssetsExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "23551:20:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - }, - "id": 4785, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "settleAccount", - "nodeType": "MemberAccess", - "referencedDeclaration": 1877, - "src": "23551:34:29", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" - } - }, - "id": 4788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23551:59:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "functionReturnParameters": 4773, - "id": 4789, - "nodeType": "Return", - "src": "23544:66:29" - } - ] - } - } - ] - }, - "id": 4796, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_settleAccountIfRequired", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4770, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4769, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4796, - "src": "23242:15:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4768, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23242:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "23241:17:29" - }, - "returnParameters": { - "id": 4773, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4772, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4796, - "src": "23292:21:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4771, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "23292:14:29", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "src": "23291:23:29" - }, - "scope": 4840, - "src": "23208:471:29", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 4838, - "nodeType": "Block", - "src": "23866:282:29", - "statements": [ - { - "expression": { - "components": [ - { - "arguments": [ - { - "id": 4814, - "name": "FreeCollateralExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "23905:22:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - ], - "id": 4813, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "23897:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 4812, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23897:7:29", - "typeDescriptions": {} - } - }, - "id": 4815, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23897:31:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 4818, - "name": "MigrateIncentives", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "23951:17:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_MigrateIncentives_$775_$", - "typeString": "type(library MigrateIncentives)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_MigrateIncentives_$775_$", - "typeString": "type(library MigrateIncentives)" - } - ], - "id": 4817, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "23943:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 4816, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23943:7:29", - "typeDescriptions": {} - } - }, - "id": 4819, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23943:26:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 4822, - "name": "SettleAssetsExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "23992:20:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - ], - "id": 4821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "23984:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 4820, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23984:7:29", - "typeDescriptions": {} - } - }, - "id": 4823, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "23984:29:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 4826, - "name": "TradingAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11085, - "src": "24036:13:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", - "typeString": "type(library TradingAction)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", - "typeString": "type(library TradingAction)" - } - ], - "id": 4825, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "24028:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 4824, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24028:7:29", - "typeDescriptions": {} - } - }, - "id": 4827, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "24028:22:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 4830, - "name": "nTokenMintAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12854, - "src": "24072:16:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", - "typeString": "type(library nTokenMintAction)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", - "typeString": "type(library nTokenMintAction)" - } - ], - "id": 4829, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "24064:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 4828, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24064:7:29", - "typeDescriptions": {} - } - }, - "id": 4831, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "24064:25:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 4834, - "name": "nTokenRedeemAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 13836, - "src": "24112:18:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", - "typeString": "type(library nTokenRedeemAction)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", - "typeString": "type(library nTokenRedeemAction)" - } - ], - "id": 4833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "24104:7:29", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 4832, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24104:7:29", - "typeDescriptions": {} - } - }, - "id": 4835, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "24104:27:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 4836, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "23883:258:29", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_address_$_t_address_$_t_address_$_t_address_$", - "typeString": "tuple(address,address,address,address,address,address)" - } - }, - "functionReturnParameters": 4811, - "id": 4837, - "nodeType": "Return", - "src": "23876:265:29" - } - ] - }, - "documentation": { - "id": 4797, - "nodeType": "StructuredDocumentation", - "src": "23685:77:29", - "text": "@notice Get a list of deployed library addresses (sorted by library name)" - }, - "functionSelector": "c4c96dae", - "id": 4839, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getLibInfo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4798, - "nodeType": "ParameterList", - "parameters": [], - "src": "23786:2:29" - }, - "returnParameters": { - "id": 4811, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4800, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4839, - "src": "23812:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4799, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23812:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4802, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4839, - "src": "23821:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4801, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23821:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4804, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4839, - "src": "23830:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4803, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23830:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4806, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4839, - "src": "23839:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4805, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23839:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4808, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4839, - "src": "23848:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4807, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23848:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4810, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4839, - "src": "23857:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4809, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23857:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "23811:54:29" - }, - "scope": 4840, - "src": "23767:381:29", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 4841, - "src": "591:23559:29" - } - ], - "src": "41:24110:29" - }, - "bytecode": "608060405234801561001057600080fd5b50614c35806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e366004614232565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b79190614681565b60405180910390f35b3480156100cc57600080fd5b506100936100db3660046143a6565b6101f6565b6100936100ee366004614282565b610567565b610093610101366004614326565b610697565b34801561011257600080fd5b506100aa61081d565b34801561012757600080fd5b506100aa61082c565b34801561013c57600080fd5b50610145610843565b6040516100b7969594939291906146de565b6002600a5414156101835760405162461bcd60e51b815260040161017a90614a0e565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148fd565b6101c3836108c9565b60006101d0848484610918565b90506101dc8482610ad3565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a90614a0e565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148fd565b610259836108c9565b600061026484610b54565b905060006102788583604001516000610c10565b9050610282613f52565b60005b84811015610535573686868381811061029a57fe5b90506020028101906102ac9190614b85565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b85565b6102e39060208101906145b9565b61ffff166102f460208301836145b9565b61ffff16116103155760405162461bcd60e51b815260040161017a906149ad565b60006103246040830183614b20565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614b20565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f8961038660208501856145b9565b86919089610ca2565b6103b4896103a060208501856145b9565b6103ad6040860186614b20565b8a8a610d48565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610eee90919063ffffffff16565b610f0a565b905060008113156105185761040a60408401602085016143dd565b156104e057600061042a61042160208601866145b9565b61ffff16610f18565b9050600061044761043e60208701876145b9565b61ffff16610f64565b905060006104558385610f77565b905060006305f5e100836040015112156104855761047e60016104788585610fb0565b90610eee565b905061049d565b61049a610493836001610eee565b8490610fb0565b90505b60006104b48f838c610fe89092919063ffffffff16565b9050858112156104d65760405162461bcd60e51b815260040161017a90614ade565b5050505050610518565b60006104fb6104f260208601866145b9565b61ffff166110cd565b90506105158b61050b8385610fb0565b88919060006110e0565b50505b610525858b8960006111ba565b5050600190920191506102859050565b5061053f83611435565b610550576105508387846000611442565b61055a8684610ad3565b50506001600a5550505050565b3360009081526008602052604090205460ff166105965760405162461bcd60e51b815260040161017a906148fd565b61059f856108c9565b60006105ac868686610918565b90506105b88187611524565b60405163550d065760e11b8152339063aa1a0cae906105e19083908a9088908890600401614695565b600060405180830381600087803b1580156105fb57600080fd5b505af115801561060f573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561068f57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061065e908990600401614681565b60006040518083038186803b15801561067657600080fd5b505af415801561068a573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106ba5760405162461bcd60e51b815260040161017a90614a0e565b6002600a556001600160a01b0383163314806106d557503330145b6106f15760405162461bcd60e51b815260040161017a906148fd565b6106fa836108c9565b600061070584610b54565b905061070f613f52565b60005b83811015610806573685858381811061072757fe5b905060c00201905060008211156107945785856001840381811061074757fe5b905060c00201602001602081019061075f91906145b9565b61ffff1661077360408301602084016145b9565b61ffff16116107945760405162461bcd60e51b815260040161017a906149ad565b6107b1876107a860408401602085016145b9565b85919087610ca2565b6107cd87846107c360208501856143f9565b8460400135611628565b6107fd87858560608501356107e860a08701608088016143dd565b6107f860c0880160a089016143dd565b6116fb565b50600101610712565b506108118583610ad3565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b734763672dEa3bF087929d5537B6BAfeB8e6938F4673244321a0C5eE55DF1F4D31c71570Cbe0236c18647301713633a1b85a4a3d2f9430C68Bd4392c4a90eA734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16735d0Df02534ab3c805c59f9cC98E282DC929821e173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108dc57600080fd5b6001600160a01b0381163014156108f257600080fd5b60006108fd82611778565b5050505061ffff1690508060001461091457600080fd5b5050565b610920613fa2565b600061092b85610b54565b9050610935613f52565b60006109478784604001516000610c10565b905060005b85811015610aab573687878381811061096157fe5b90506020028101906109739190614b66565b905081156109e25787876001840381811061098a57fe5b905060200281019061099c9190614b66565b6109ad9060408101906020016145b9565b61ffff166109c160408301602084016145b9565b61ffff16116109e25760405162461bcd60e51b815260040161017a906149ad565b6109ff896109f660408401602085016145b9565b86919088610ca2565b610a1189856107c360208501856143f9565b6000610a2060c0830183614b20565b90501115610a87576000610a528a610a3e60408501602086016145b9565b610a4b60c0860186614b20565b8a89610d48565b945090506000811215610a7157610a7185610a6c83610f0a565b6117e1565b6060850151610a809082610eee565b6060860152505b610aa289868660608501356107e860a08701608088016143dd565b5060010161094c565b50610ab583611435565b610ac657610ac68388836000611442565b50909150505b9392505050565b610add8183611524565b60208101516001600160f81b0319161561091457604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610b28908590600401614681565b60006040518083038186803b158015610b4057600080fd5b505af415801561068f573d6000803e3d6000fd5b610b5c613fa2565b6000610b6783611830565b9050610b72816118d1565b15610c08576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610bb09086908590600401614718565b60a06040518083038186803b158015610bc857600080fd5b505af4158015610bdc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c00919061445f565b915050610c0b565b90505b919050565b610c18613fd0565b610c20613fd0565b60ff8416610c2f579050610acc565b610c398585611922565b815260ff84166060820152826001600160401b0381118015610c5a57600080fd5b50604051908082528060200260200182016040528015610c9457816020015b610c81613ff8565b815260200190600190039081610c795790505b506020820152949350505050565b8161ffff166000108015610cbc5750613fff61ffff831611155b610cc557600080fd5b61ffff8216808552610cd890829061194b565b15610d0557610ceb838361ffff166119d5565b61010088015260e087015260408601526020850152610d23565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d52613fd0565b610d5b84611435565b15610e4b578661ffff16846060015161ffff1614610d8b5760405162461bcd60e51b815260040161017a90614a58565b60608401518451604051633643f39b60e01b8152600092734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610dd2928e9290918d908d90600401614842565b604080518083038186803b158015610de957600080fd5b505af4158015610dfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e219190614430565b90935090508015610e4557602085018051600160f81b176001600160f81b03191690525b50610ee3565b60405163b58f83ed60e01b8152734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e8a908b908b9088908c908c90600401614784565b60006040518083038186803b158015610ea257600080fd5b505af4158015610eb6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ede91908101906144fe565b925090505b965096945050505050565b81810182811215600083121514610f0457600080fd5b92915050565b6000610c0860001983611a81565b610f20614038565b6000806000610f2e85611acf565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f6c614062565b610c08826001611b92565b600080610fa88460400151610fa26402540be400610fa2878960200151611a8190919063ffffffff16565b90611c40565b949350505050565b60006305f5e10083604001511415610fc9575080610f04565b610acc6305f5e100610fa2856040015185611a8190919063ffffffff16565b600081610ff757506000610acc565b6000821361100457600080fd5b6000611017856000015161ffff16610f64565b905060038160600151600581111561102b57fe5b1415611055573483146110505760405162461bcd60e51b815260040161017a90614941565b61106c565b8451611069908290869061ffff1686611c71565b92505b600061107f866000015161ffff166110cd565b9050600061109c876000015161109487611d19565b849190611d2c565b905060006110aa8383611e1d565b60608901519091506110bc9082610eee565b606089015293505050509392505050565b6110d5614062565b610c08826000611b92565b6000826110ef57506000610fa8565b600083136110fc57600080fd5b600061110f866000015161ffff166110cd565b905060058160600151600581111561112357fe5b141561113c5785516111399061ffff1685611e4d565b93505b8060200151806111495750825b15611190578551600090611165908390889061ffff1688611c71565b90506111718282611e1d565b60608801519093506111839084610eee565b606088015250610fa89050565b61119a8185611e1d565b60808701519092506111ac9083610eee565b608087015250949350505050565b60008060008660a00151121561120d5760006111ef8760a001516104788960c001518a60400151610eee90919063ffffffff16565b121561120d5760405162461bcd60e51b815260040161017a90614a8f565b60008660800151121561125d57600061123f876080015161047889606001518a60200151610eee90919063ffffffff16565b121561125d5760405162461bcd60e51b815260040161017a90614a36565b611268868685611ed4565b60808801819052606088015191935060009161128391610eee565b905080156112f057602087015161129a9082610eee565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112e79085906148f4565b60405180910390a35b60a0870151151580611305575060c087015115155b156113ab57600061132f8860c001516104788a60a001518b60400151610eee90919063ffffffff16565b9050611344888861133f84611d19565b611f8a565b506040880181905260c0880151156113a557876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161139c91906148f4565b60405180910390a35b60019250505b81156113d8576113d886886000015161ffff1689602001518a604001518b60e001518c6101000151612077565b865160208801516114059161ffff16901515806113f85750604089015115155b879190600160fe1b6121c7565b60008760200151121561142b57602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061145186886123c6565b64ffffffffff81168c529296509094509250905061146e886118d1565b1561147857600080fd5b60ff821660408901528461149757600760ff8316111561149757600080fd5b83156114ba57602088018051600160f81b176001600160f81b03191690526114c9565b602088018051607f60f91b1690525b6114d68860800151612605565b6001600160701b031916608089015260005b83156115195760f084901c81811461150b5761150b8a826001600160ff1b6121c7565b60109490941b9390506114e8565b505050505050505050565b600061152e612680565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116338261268d565b905060008082121561164457600080fd5b600084600681111561165257fe5b141561165f5750506116f5565b600184600681111561166d57fe5b14806116845750600384600681111561168257fe5b145b1561169d5761169685878460006110e0565b90506116e9565b60028460068111156116ab57fe5b14806116c2575060048460068111156116c057fe5b145b156116d257611696858784610fe8565b60068460068111156116e057fe5b14156116e95750805b61068f858584846126a3565b50505050565b60006117068461268d565b9050600081121561171657600080fd5b821561174e5761173f856080015161047887606001518860200151610eee90919063ffffffff16565b9050600081121561174e575060005b608085015161175d90826128be565b608086015261176e858888856111ba565b5050505050505050565b6000806000806000806117896128d4565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b60008112158015611814575080611811836080015161047885606001518660200151610eee90919063ffffffff16565b12155b6109145760405162461bcd60e51b815260040161017a90614ab3565b611838613fa2565b6000611842612680565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118dd83611435565b156118fe576118eb816128e1565b835164ffffffffff16109150610c0b9050565b825164ffffffffff1615801590610c005750825164ffffffffff1611159050610c0b565b6060600061193084846128ff565b90506001815111611942579050610f04565b610acc81612a20565b6000811580159061195e5750613fff8211155b61196757600080fd5b6080830151606084015161ffff16831415611986576001915050610f04565b6001600160701b03198116156119cb5760f081901c613fff16838114156119b85750600160fe1b908116149050610f04565b5060101b6001600160801b031916611986565b5060009392505050565b60008060008060006119e5612bd8565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a51578054611a4a90600160701b900466ffffffffffffff16612be5565b9250611a66565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611ab157811580611aa3575082828281611aa057fe5b05145b611aac57600080fd5b610f04565b821580611ac6575081838281611ac357fe5b05145b610f0457600080fd5b6000806000806000611ae086612bf3565b909250905060006001600160a01b038316611b055750600090506402540be400611b87565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b4057600080fd5b505af1158015611b54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b789190614418565b905060008113611b8757600080fd5b969195509350915050565b611b9a614062565b6000611ba4612c2a565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611c1957fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c565750600160ff1b83145b15611c6057600080fd5b818381611c6957fe5b059392505050565b80600585606001516005811115611c8457fe5b1415611ca9576000611c9584610f64565b9050611ca5816000015184612c37565b9250505b6000821315611cd5576000611cbf868685612cc9565b9050856020015115611ccf578091505b50610fa8565b600385606001516005811115611ce757fe5b1415611d0457611cff84611cfa84610f0a565b612dbc565b610fa8565b8451610fa89085611d1485610f0a565b612df7565b600080821215611d2857600080fd5b5090565b600080600585606001516005811115611d4157fe5b14611d53576370a0823160e01b611d5c565b630ed1279f60e11b5b90506000611d6f86600001513084612e6e565b9050600586606001516005811115611d8357fe5b1415611daa576000611d988661ffff16610f64565b9050611da48186612f80565b50611ded565b600186606001516005811115611dbc57fe5b1415611dcc57611da48685612feb565b600286606001516005811115611dde57fe5b141561007b57611ded86613097565b6000611dfe87600001513085612e6e565b9050611e12611e0d82846130d6565b61268d565b979650505050505050565b60006305f5e10083604001511415611e36575080610f04565b6040830151610acc90610fa2846305f5e100611a81565b600081611e5c57506000610f04565b60008213611e6957600080fd5b6000611e7484610f64565b90506000611e858260000151613133565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611eb057600080fd5b81816b033b2e3c9fd0803ce800000087020181611ec957fe5b059695505050505050565b6000806000611eea866000015161ffff166110cd565b90506000611f05876080015183610fb090919063ffffffff16565b905080611f1a57600080935093505050611f82565b848015611f275750600081125b15611f5c578651611f499061ffff1687611f4084610f0a565b859291906131be565b9350611f558282611e1d565b9250611f7f565b8651611f70908390889061ffff1684611c71565b9350611f7c8285611e1d565b92505b50505b935093915050565b825160009042908290611fa09061ffff16613254565b90506000611fb3828860c001518561327a565b9050611fc18783838861335d565b93506000611fce8361348a565b90506001600160a01b0381161561205c57806001600160a01b0316631d684dd2888a600001516120018c60400151611d19565b8a8d60c001518b6040518763ffffffff1660e01b81526004016120299695949392919061480b565b600060405180830381600087803b15801561204357600080fd5b505af1158015612057573d6000803e3d6000fd5b505050505b841561206c5761206c87866134fc565b505050509392505050565b6000612081612bd8565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120cc57506a7fffffffffffffffffffff8613155b6120d557600080fd5b600085121580156120f0575069ffffffffffffffffffff8513155b6120f957600080fd5b836121395766ffffffffffffff83111561211257600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612153565b8054600160501b900463ffffffff16841461215357600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121d95750613fff8311155b6121e257600080fd5b8180156121f6575082846060015161ffff16145b15612200576116f5565b6080840151600090815b6001600160701b031982161561237b5760f082901c613fff16868114801561222f5750855b1561226757506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116f59050565b8681148015612274575085155b156122c9576001600160f01b03198516199290921691600360fe1b83166122a7576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116f5565b86811180156122d55750855b1561232f576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561230957600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116f5565b868111801561233c575085155b1561234a57505050506116f5565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b0319169060010161220a565b84612388575050506116f5565b6009811061239557600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124575760008a6000015182815181106123ec57fe5b6020026020010151905060038081111561240257fe5b8160a00151600381111561241257fe5b141561241d57600080fd5b60028160a00151600381111561242f57fe5b1415801561243f57506060810151155b1561244e5761244e8b8361351b565b506001016123d0565b5060005b8951518110156124fa5760008a60000151828151811061247757fe5b602002602001015190506002600381111561248e57fe5b8160a00151600381111561249e57fe5b14156124b2576080810151600090556124f1565b60018160a0015160038111156124c457fe5b14156124dd576080810151806124da838261366a565b50505b6124e98186868661379b565b919650945092505b5060010161245b565b506060890151600061250a6137fe565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125d45760008d60200151828151811061254557fe5b6020026020010151905080606001516000141561256257506125cc565b60028160a00151600381111561257457fe5b14158015612592575060038160a00151600381111561258f57fe5b14155b61259b57600080fd5b6125a78189898961379b565b919950975095506125c4818487601081106125be57fe5b0161366a565b600185019450505b600101612526565b50601083111580156125eb575064ffffffffff8411155b6125f457600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561267757600160fe1b8281161415612661576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061262d565b50909392505050565b600080610f046001613807565b60006001600160ff1b03821115611d2857600080fd5b60038360068111156126b157fe5b14806126c8575060048360068111156126c657fe5b145b806126de575060068360068111156126dc57fe5b145b156127aa576126ed84826117e1565b60608401516126fc90826128be565b60608501528351604051632128561360e11b8152600091735d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161273d918690600401614b0c565b60206040518083038186803b15801561275557600080fd5b505af4158015612769573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061278d9190614418565b60c086015190915061279f9082610eee565b60c0860152506116f5565b60058360068111156127b857fe5b14156116f557816127e28560c001516104788760a001518860400151610eee90919063ffffffff16565b12156128005760405162461bcd60e51b815260040161017a906149d7565b60c084015161280f90836128be565b60c085015283516040516352e73f7760e01b815260009173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f7791612850918790600401614b0c565b60206040518083038186803b15801561286857600080fd5b505af415801561287c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a09190614418565b60608601519091506128b29082610eee565b60608601525050505050565b80820382811315600083121514610f0457600080fd5b600080610f046002613807565b6000620151808210156128f357600080fd5b50620151808106900390565b606060108260ff16111561291257600080fd5b600061291c6137fe565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561295057600080fd5b5060405190808252806020026020018201604052801561298a57816020015b612977613ff8565b81526020019060019003908161296f5790505b50905060005b8560ff16811015612a165760008382601081106129a957fe5b01905060008383815181106129ba57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b60608201526080019190915250600101612990565b5095945050505050565b80516000816001600160401b0381118015612a3a57600080fd5b50604051908082528060200260200182016040528015612a64578160200160208202803683370190505b50905060005b82811015612ac1576000848281518110612a8057fe5b60200260200101519050612aa1816000015182602001518360400151613820565b838381518110612aad57fe5b602090810291909101015250600101612a6a565b5060015b828110156116f557805b600081118015612b075750828181518110612ae657fe5b6020026020010151836001830381518110612afd57fe5b6020026020010151115b15612bcf57828181518110612b1857fe5b6020026020010151836001830381518110612b2f57fe5b6020026020010151846001840381518110612b4657fe5b60200260200101858481518110612b5957fe5b6020026020010182815250828152505050848181518110612b7657fe5b6020026020010151856001830381518110612b8d57fe5b6020026020010151866001840381518110612ba457fe5b60200260200101878481518110612bb757fe5b60209081029190910101919091525260001901612acf565b50600101612ac5565b600080610f046006613807565b600881901c60ff9091161b90565b6000806000612c0061387b565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610f046007613807565b600081612c4657506000610f04565b6000612c5184613133565b90506000612c5e84613888565b9050816b019d971e4fe8401e74000001600160ff1b0381612c7b57fe5b05811315612c8857600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612cbd57612cb881610f0a565b612cbf565b805b9695505050505050565b6000808080600587606001516005811115612ce057fe5b14612cf2576370a0823160e01b612cfb565b630ed1279f60e11b5b9050866020015115612d17578651612d14903083612e6e565b92505b8651612d249087876138a9565b866020015180612d38575060008760800151115b15612d4d578651612d4a903083612e6e565b91505b608087015115612d88576000612d6b88612d668561268d565b611e1d565b9050612d7a886080015161268d565b811315612d8657600080fd5b505b866020015115612da957612d9f611e0d83856130d6565b9350505050610acc565b612d9f8561268d565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612df2573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e4e57600080fd5b505af1158015612e62573d6000803e3d6000fd5b50505050612df2613901565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612eeb5780518252601f199092019160209182019101612ecc565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f4b576040519150601f19603f3d011682016040523d82523d6000602084013e612f50565b606091505b509150915081612f5f57600080fd5b808060200190516020811015612f7457600080fd5b50519695505050505050565b612f8861396e565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612fbd91859030906000906004016148a1565b600060405180830381600087803b158015612fd757600080fd5b505af115801561068f573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b815260040161301e91906148f4565b602060405180830381600087803b15801561303857600080fd5b505af115801561304c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130709190614418565b905080156130905760405162461bcd60e51b815260040161017a90614923565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fd757600080fd5b60008282111561312d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610c0861314061396e565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061316e908690600401614681565b60206040518083038186803b15801561318657600080fd5b505afa15801561319a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0d9190614418565b6000806002866060015160058111156131d357fe5b14156131eb576131e486858561397b565b9050613248565b60006131f686610f64565b905060058760600151600581111561320a57fe5b14156132225761321b818686613a38565b9150613246565b60018760600151600581111561323457fe5b141561007b5761321b87828787613aee565b505b612cbf6103ea8261268d565b60008061325f613bec565b6000938452602052505060409020546001600160a01b031690565b60008060006132898685613bf9565b50915091506000613298613c8f565b6001600160a01b03881660009081526020829052604081209192506132bd8589610eee565b9050806000131580156132d657506001600160601b0381105b6132df57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061333457600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e08401516000901561341e5773244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a72856133928860400151611d19565b8860e001518961010001516040518563ffffffff1660e01b81526004016133bc94939291906148ce565b60206040518083038186803b1580156133d457600080fd5b505af41580156133e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061340c9190614418565b600060e0870181905261010087015290505b613460613459866101000151613453670de0b6b3a764000061344d886134478c60400151611d19565b90613c9c565b90613cf5565b906130d6565b8290613d5c565b9050613478670de0b6b3a764000061344d8486613c9c565b85610100018181525050949350505050565b6000806134956128d4565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134f1576134ca613db6565b6001600160a01b038086166000908152602092909252604090912054169250610c0b915050565b600092505050610c0b565b61091473cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612df7565b815151811061352957600080fd5b600082606001511161353a57600080fd5b60008260000151828151811061354c57fe5b602002602001015190506002600381111561356357fe5b8160a00151600381111561357357fe5b14158015613591575060038160a00151600381111561358e57fe5b14155b61359a57600080fd5b606083018051600019019052600080805b85515181101561360d576000866000015182815181106135c757fe5b602002602001015190508281608001511180156135f4575060028160a0015160038111156135f157fe5b14155b1561360457806080015192508193505b506001016135ab565b5081841415613626575050600260a09190910152610914565b60008560000151838151811061363857fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061367d57508151613fff10155b61368657600080fd5b816020015160001080156136a35750602082015164ffffffffff10155b6136ac57600080fd5b816040015160001080156136c557506040820151600810155b6136ce57600080fd5b60608201516a7fffffffffffffffffffff19138015906136fd575060608201516a7fffffffffffffffffffff12155b61370657600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b6000806000806137aa88613dc3565b90508415806137b857508085115b156137c1578094505b86806137d1575060008860600151125b965061ffff8616156137e257600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610f04600d5b6000620f424082601381111561381957fe5b0192915050565b6000613fff84111561383157600080fd5b64ffffffffff83111561384357600080fd5b600882111561385157600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610f04600f613807565b6000808212156138a25761389b82610f0a565b9050610c0b565b5080610c0b565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e4e57600080fd5b600061390b614091565b3d801561391f576020811461392857600080fd5b60019250613933565b60206000833e815192505b5081610914576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610f046013613807565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a75906139af9087906004016148f4565b602060405180830381600087803b1580156139c957600080fd5b505af11580156139dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a019190614418565b90508015613a215760405162461bcd60e51b815260040161017a90614966565b47613a2c81846130d6565b9350612db28685612dbc565b6000613a58613a538560000151613a4e8561268d565b612c37565b611d19565b9050613a6261396e565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a94918590889060040161487e565b602060405180830381600087803b158015613aae57600080fd5b505af1158015613ac2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ae69190614418565b509392505050565b82516000908190613b0790306370a0823160e01b612e6e565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b3b91906148f4565b602060405180830381600087803b158015613b5557600080fd5b505af1158015613b69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b8d9190614418565b90508015613bad5760405162461bcd60e51b815260040161017a90614966565b8551600090613bc490306370a0823160e01b612e6e565b9050613bd081846130d6565b9350613be187600001518786612df7565b505050949350505050565b600080610f046003613807565b6000806000613c0785613e30565b919450925090508084118015613c1d5750600081115b8015613c295750600083115b15613c88576000613c3986611778565b5050509150506000613c64613c5b6305f5e10084613c9c90919063ffffffff16565b84880387613e8c565b9050613c708482613d5c565b93506001600160801b038410613c8557600080fd5b50505b9250925092565b600080610f046011613807565b600082613cab57506000610f04565b82820282848281613cb857fe5b0414610acc5760405162461bcd60e51b8152600401808060200182810382526021815260200180614bdf6021913960400191505060405180910390fd5b6000808211613d4b576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d5457fe5b049392505050565b600082820183811015610acc576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610f046012613807565b6000808260400151118015613ddd57506040820151600810155b613de657600080fd5b6040820151600210613dfd57506020810151610c0b565b6000613e0f6001846040015103613eae565b6020840151909150610acc906276a70090613e2a90846130d6565b90613d5c565b600080600080613e3e613c8f565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610fa88261344d6301da9c00818861344789670de0b6b3a7640000613c9c565b60008160011415613ec357506276a700610c0b565b8160021415613ed6575062ed4e00610c0b565b8160031415613eea57506301da9c00610c0b565b8160041415613efe57506303b53800610c0b565b8160051415613f1257506309450c00610c0b565b8160061415613f26575063128a1800610c0b565b8160071415613f3a57506325143000610c0b565b60405162461bcd60e51b815260040161017a90614986565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561403357fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610c0b57600080fd5b60008083601f8401126140d7578081fd5b5081356001600160401b038111156140ed578182fd5b602083019150836020808302850101111561410757600080fd5b9250929050565b600082601f83011261411e578081fd5b815160206001600160401b038083111561413457fe5b6141418283850201614b9a565b8381528281019086840160c0808702890186018a101561415f578788fd5b875b878110156141e05781838c031215614177578889fd5b60408051838101818110898211171561418c57fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141c7828601614207565b9181019190915285529386019391810191600101614161565b50919998505050505050505050565b80516001600160701b031981168114610c0b57600080fd5b805160048110610c0b57600080fd5b8051610c0b81614bce565b805160ff81168114610c0b57600080fd5b600080600060408486031215614246578283fd5b61424f846140af565b925060208401356001600160401b03811115614269578283fd5b614275868287016140c6565b9497909650939450505050565b600080600080600060608688031215614299578081fd5b6142a2866140af565b945060208601356001600160401b03808211156142bd578283fd5b6142c989838a016140c6565b909650945060408801359150808211156142e1578283fd5b818801915088601f8301126142f4578283fd5b813581811115614302578384fd5b896020828501011115614313578384fd5b9699959850939650602001949392505050565b60008060006040848603121561433a578283fd5b614343846140af565b925060208401356001600160401b038082111561435e578384fd5b818601915086601f830112614371578384fd5b81358181111561437f578485fd5b87602060c083028501011115614393578485fd5b6020830194508093505050509250925092565b6000806000604084860312156143ba578081fd5b6143c3846140af565b925060208401356001600160401b03811115614269578182fd5b6000602082840312156143ee578081fd5b8135610acc81614bbd565b60006020828403121561440a578081fd5b813560078110610acc578182fd5b600060208284031215614429578081fd5b5051919050565b60008060408385031215614442578182fd5b82519150602083015161445481614bbd565b809150509250929050565b600060a08284031215614470578081fd5b60405160a081018181106001600160401b038211171561448c57fe5b604052825164ffffffffff811681146144a3578283fd5b815260208301516001600160f81b0319811681146144bf578283fd5b60208201526144d060408401614221565b60408201526144e160608401614216565b60608201526144f2608084016141ef565b60808201529392505050565b60008060408385031215614510578182fd5b82516001600160401b0380821115614526578384fd5b9084019060808287031215614539578384fd5b60405160808101818110838211171561454e57fe5b60405282518281111561455f578586fd5b61456b8882860161410e565b82525060208301518281111561457f578586fd5b61458b8882860161410e565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145ca578081fd5b8135610acc81614bce565b81835260006001600160fb1b038311156145ed578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561467657815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061466157fe5b88015260c0909601959082019060010161461c565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147b8610100840182614609565b90506020860151607f198483030160a08501526147d58282614609565b915050604086015160c0840152606086015160e084015282810360608401526147ff8185876145d5565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611e1290830184866145d5565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b36578283fd5b8301803591506001600160401b03821115614b4f578283fd5b602090810192508102360382131561410757600080fd5b6000823560de19833603018112614b7b578182fd5b9190910192915050565b60008235605e19833603018112614b7b578182fd5b6040518181016001600160401b0381118282101715614bb557fe5b604052919050565b8015158114614bcb57600080fd5b50565b61ffff81168114614bcb57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212209bd29b5891303174061353c8aa58b2b4e4610e9c4816784b642d9bd89aae5aca64736f6c63430007060033", - "bytecodeSha1": "d5eb9853740b24e7c8aa2301d5ef74e768ee2bb1", - "compiler": { - "evm_version": "istanbul", - "optimizer": { - "enabled": true, - "runs": 200 - }, - "version": "0.7.6+commit.7338295f" - }, - "contractName": "BatchAction", - "coverageMap": { - "branches": { - "141": {}, - "147": {}, - "151": {}, - "152": {}, - "153": {}, - "155": {}, - "157": {}, - "159": {}, - "21": {}, - "22": {}, - "25": {}, - "28": { - "ActionGuards.requireValidAccount": { - "439": [ - 1374, - 1402, - true - ], - "440": [ - 1454, - 1478, - true - ], - "441": [ - 1741, - 1754, - true - ] - }, - "BatchAction.batchBalanceAction": { - "438": [ - 838, - 866, - true - ] - } - }, - "29": { - "BatchAction._batchBalanceAndTradeAction": { - "379": [ - 13548, - 13553, - false - ], - "380": [ - 13581, - 13626, - true - ], - "381": [ - 14093, - 14117, - false - ], - "382": [ - 14512, - 14523, - false - ], - "383": [ - 15165, - 15197, - false - ] - }, - "BatchAction._calculateWithdrawActionAndFinalize": { - "395": [ - 19754, - 19773, - true - ], - "396": [ - 19934, - 19959, - false - ], - "397": [ - 20424, - 20442, - false - ] - }, - "BatchAction._checkSufficientCash": { - "398": [ - 22929, - 22957, - false - ], - "399": [ - 22977, - 23152, - true - ] - }, - "BatchAction._executeDepositAction": { - "388": [ - 15870, - 15894, - true - ], - "389": [ - 15910, - 15947, - false - ], - "390": [ - 16003, - 16048, - true - ], - "391": [ - 16064, - 16122, - false - ], - "392": [ - 16539, - 16589, - true - ], - "393": [ - 16605, - 16668, - false - ], - "394": [ - 16880, - 16932, - false - ] - }, - "BatchAction._executeNTokenAction": { - "400": [ - 17586, - 17644, - true - ], - "401": [ - 17660, - 17723, - true - ], - "402": [ - 17739, - 17791, - false - ], - "403": [ - 18464, - 18509, - false - ], - "404": [ - 18585, - 18822, - true - ] - }, - "BatchAction._executeTrades": { - "386": [ - 21491, - 21523, - false - ], - "387": [ - 21564, - 21609, - true - ] - }, - "BatchAction._finalizeAccountContext": { - "384": [ - 21068, - 21098, - false - ] - }, - "BatchAction._settleAccountIfRequired": { - "385": [ - 23430, - 23463, - false - ] - }, - "BatchAction.batchBalanceAction": { - "375": [ - 1396, - 1417, - true - ], - "376": [ - 1421, - 1448, - true - ], - "377": [ - 1953, - 1958, - false - ], - "378": [ - 1986, - 2031, - true - ] - }, - "BatchAction.batchBalanceAndTradeAction": { - "359": [ - 3408, - 3429, - true - ], - "360": [ - 3433, - 3460, - true - ] - }, - "BatchAction.batchBalanceAndTradeActionWithCallback": { - "373": [ - 11437, - 11475, - true - ], - "374": [ - 12050, - 12080, - false - ] - }, - "BatchAction.batchLend": { - "361": [ - 4613, - 4634, - true - ], - "362": [ - 4638, - 4665, - true - ], - "363": [ - 5509, - 5514, - false - ], - "364": [ - 5542, - 5587, - true - ], - "365": [ - 5795, - 5808, - true - ], - "366": [ - 5908, - 5970, - true - ], - "367": [ - 6494, - 6525, - true - ], - "368": [ - 7086, - 7102, - false - ], - "369": [ - 7126, - 7150, - false - ], - "370": [ - 7663, - 7724, - false - ], - "371": [ - 8516, - 8551, - true - ], - "372": [ - 9549, - 9581, - false - ] - } - }, - "35": {}, - "38": {}, - "39": {}, - "6": { - "SafeMath.add": { - "541": [ - 2794, - 2800, - true - ] - }, - "SafeMath.div": { - "540": [ - 4294, - 4299, - true - ] - }, - "SafeMath.mul": { - "538": [ - 3611, - 3617, - false - ], - "539": [ - 3672, - 3682, - true - ] - }, - "SafeMath.sub": { - "537": [ - 3213, - 3219, - true - ] - } - }, - "60": {}, - "61": {}, - "62": {}, - "63": {}, - "65": {}, - "66": { - "AccountContextHandler._clearPortfolioActiveFlags": { - "437": [ - 9343, - 9420, - false - ] - }, - "AccountContextHandler.isActiveInBalances": { - "417": [ - 4157, - 4172, - false - ], - "418": [ - 4176, - 4214, - true - ], - "419": [ - 4320, - 4365, - false - ], - "420": [ - 4513, - 4530, - false - ] - }, - "AccountContextHandler.mustSettleAssets": { - "416": [ - 3173, - 3204, - false - ] - }, - "AccountContextHandler.setActiveCurrency": { - "421": [ - 5431, - 5445, - false - ], - "422": [ - 5449, - 5487, - true - ], - "423": [ - 5707, - 5715, - false - ], - "424": [ - 5719, - 5764, - false - ], - "425": [ - 6877, - 6894, - false - ], - "426": [ - 6898, - 6906, - false - ], - "427": [ - 7232, - 7249, - false - ], - "428": [ - 7254, - 7262, - false - ], - "429": [ - 7405, - 7455, - false - ], - "430": [ - 7689, - 7705, - false - ], - "431": [ - 7709, - 7717, - false - ], - "432": [ - 8010, - 8058, - true - ], - "433": [ - 8358, - 8374, - false - ], - "434": [ - 8379, - 8387, - false - ], - "435": [ - 8616, - 8624, - false - ], - "436": [ - 8724, - 8734, - true - ] - }, - "AccountContextHandler.storeAssetsAndUpdateContext": { - "411": [ - 10453, - 10494, - true - ], - "412": [ - 10772, - 10785, - false - ], - "413": [ - 10809, - 10869, - true - ], - "414": [ - 11059, - 11066, - false - ], - "415": [ - 11955, - 11981, - false - ] - } - }, - "67": { - "BalanceHandler._finalizeTransfers": { - "469": [ - 10925, - 10957, - false - ], - "470": [ - 11007, - 11025, - false - ], - "471": [ - 11029, - 11060, - false - ] - }, - "BalanceHandler._setBalanceStorage": { - "472": [ - 19647, - 19677, - false - ], - "473": [ - 19681, - 19711, - true - ], - "474": [ - 19851, - 19869, - false - ], - "475": [ - 19873, - 19906, - true - ], - "476": [ - 20044, - 20062, - true - ], - "477": [ - 20278, - 20318, - true - ] - }, - "BalanceHandler.depositAssetToken": { - "453": [ - 2084, - 2108, - false - ], - "454": [ - 2136, - 2159, - true - ], - "455": [ - 2300, - 2335, - false - ], - "456": [ - 2683, - 2703, - true - ], - "457": [ - 2707, - 2720, - false - ] - }, - "BalanceHandler.depositUnderlyingToken": { - "449": [ - 4733, - 4762, - false - ], - "450": [ - 4790, - 4818, - true - ], - "451": [ - 5069, - 5113, - false - ], - "452": [ - 5176, - 5222, - true - ] - }, - "BalanceHandler.finalize": { - "458": [ - 6768, - 6802, - false - ], - "459": [ - 6843, - 6998, - true - ], - "460": [ - 7067, - 7117, - false - ], - "461": [ - 7158, - 7319, - true - ], - "462": [ - 7935, - 7955, - false - ], - "463": [ - 8269, - 8304, - true - ], - "464": [ - 8308, - 8347, - false - ], - "465": [ - 8890, - 8929, - false - ], - "466": [ - 9199, - 9209, - false - ], - "467": [ - 9836, - 9870, - false - ] - }, - "BalanceHandler.getBalanceStorage": { - "468": [ - 21302, - 21319, - false - ] - }, - "BalanceHandler.loadBalanceState": { - "446": [ - 22128, - 22142, - false - ], - "447": [ - 22146, - 22184, - true - ], - "448": [ - 22274, - 22319, - false - ] - } - }, - "68": { - "Incentives.calculateIncentivesToClaim": { - "493": [ - 958, - 988, - false - ] - }, - "Incentives.claimIncentives": { - "491": [ - 5317, - 5348, - false - ], - "492": [ - 6082, - 6103, - false - ] - } - }, - "69": { - "TokenHandler._deposit": { - "552": [ - 11386, - 11421, - true - ], - "553": [ - 11538, - 11558, - false - ], - "554": [ - 11782, - 11802, - true - ], - "555": [ - 11806, - 11836, - false - ], - "556": [ - 12292, - 12322, - false - ], - "557": [ - 12522, - 12594, - true - ], - "558": [ - 12740, - 12760, - false - ] - }, - "TokenHandler.convertToExternal": { - "542": [ - 13827, - 13879, - false - ] - }, - "TokenHandler.convertToInternal": { - "551": [ - 13557, - 13609, - false - ] - }, - "TokenHandler.mint": { - "547": [ - 6249, - 6289, - true - ], - "548": [ - 6546, - 6586, - false - ], - "549": [ - 6757, - 6797, - false - ], - "550": [ - 6892, - 6930, - false - ] - }, - "TokenHandler.redeem": { - "559": [ - 8140, - 8178, - false - ], - "560": [ - 8389, - 8429, - false - ], - "561": [ - 8556, - 8596, - false - ] - }, - "TokenHandler.transfer": { - "543": [ - 9558, - 9593, - false - ], - "544": [ - 10052, - 10075, - false - ], - "545": [ - 10386, - 10406, - false - ], - "546": [ - 10464, - 10498, - false - ] - } - }, - "70": { - "AaveHandler.convertFromScaledBalanceExternal": { - "408": [ - 5163, - 5192, - false - ], - "409": [ - 5803, - 5846, - true - ], - "410": [ - 5923, - 5951, - true - ] - }, - "AaveHandler.convertToScaledBalanceExternal": { - "405": [ - 3386, - 3410, - false - ], - "406": [ - 3438, - 3461, - true - ], - "407": [ - 3892, - 3951, - true - ] - } - }, - "71": { - "CompoundHandler.mint": { - "478": [ - 877, - 917, - true - ] - }, - "CompoundHandler.redeem": { - "480": [ - 2685, - 2725, - true - ] - }, - "CompoundHandler.redeemCETH": { - "479": [ - 1572, - 1612, - true - ] - } - }, - "72": { - "GenericToken.checkBalanceViaSelector": { - "489": [ - 748, - 755, - true - ] - }, - "GenericToken.checkReturnCode": { - "490": [ - 2337, - 2344, - true - ] - } - }, - "76": { - "AssetRate._getAssetRateStateful": { - "444": [ - 4732, - 4765, - false - ], - "445": [ - 5116, - 5124, - true - ] - } - }, - "77": {}, - "78": { - "DateTime.getTimeUTC0": { - "481": [ - 668, - 689, - true - ] - }, - "DateTime.getTradedMarket": { - "482": [ - 1014, - 1024, - false - ], - "483": [ - 1064, - 1074, - false - ], - "484": [ - 1118, - 1128, - false - ], - "485": [ - 1165, - 1175, - false - ], - "486": [ - 1216, - 1226, - false - ], - "487": [ - 1267, - 1277, - false - ], - "488": [ - 1319, - 1329, - false - ] - } - }, - "79": {}, - "80": {}, - "81": { - "nTokenHandler.getSecondaryRewarder": { - "565": [ - 5399, - 5427, - false - ] - } - }, - "82": { - "nTokenSupply.changeNTokenSupply": { - "566": [ - 5620, - 5639, - false - ], - "567": [ - 5643, - 5685, - true - ], - "568": [ - 6052, - 6080, - true - ] - }, - "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken": { - "569": [ - 2155, - 2186, - false - ], - "570": [ - 2190, - 2213, - false - ], - "571": [ - 2217, - 2232, - false - ], - "572": [ - 3087, - 3131, - true - ] - } - }, - "83": {}, - "84": { - "PortfolioHandler._loadAssetArray": { - "506": [ - 16955, - 16985, - true - ] - }, - "PortfolioHandler._storeAsset": { - "514": [ - 11735, - 11755, - false - ], - "515": [ - 11759, - 11803, - true - ], - "516": [ - 11864, - 11882, - false - ], - "517": [ - 11886, - 11920, - true - ], - "518": [ - 11978, - 11997, - false - ], - "519": [ - 12001, - 12055, - true - ], - "520": [ - 12108, - 12141, - false - ], - "521": [ - 12145, - 12178, - true - ] - }, - "PortfolioHandler._updatePortfolioContext": { - "522": [ - 11089, - 11108, - true - ], - "523": [ - 11112, - 11143, - false - ], - "524": [ - 11268, - 11315, - true - ] - }, - "PortfolioHandler.buildPortfolioState": { - "494": [ - 15658, - 15679, - false - ] - }, - "PortfolioHandler.deleteAsset": { - "507": [ - 12795, - 12837, - true - ], - "508": [ - 12885, - 12921, - true - ], - "509": [ - 13072, - 13126, - false - ], - "510": [ - 13142, - 13204, - true - ], - "511": [ - 13680, - 13709, - false - ], - "512": [ - 13713, - 13755, - false - ], - "513": [ - 13883, - 13910, - false - ] - }, - "PortfolioHandler.getSortedPortfolio": { - "495": [ - 15082, - 15100, - false - ] - }, - "PortfolioHandler.storeAssets": { - "496": [ - 7495, - 7549, - true - ], - "497": [ - 7625, - 7671, - false - ], - "498": [ - 7675, - 7694, - false - ], - "499": [ - 8021, - 8067, - false - ], - "500": [ - 8305, - 8351, - false - ], - "501": [ - 9569, - 9588, - false - ], - "502": [ - 9637, - 9683, - false - ], - "503": [ - 9703, - 9757, - true - ], - "504": [ - 10311, - 10335, - false - ], - "505": [ - 10339, - 10373, - true - ] - } - }, - "85": { - "TransferAssets.encodeAssetId": { - "562": [ - 1043, - 1081, - true - ], - "563": [ - 1100, - 1128, - true - ], - "564": [ - 1147, - 1195, - true - ] - } - }, - "86": {}, - "87": {}, - "88": { - "AssetHandler.getSettlementDate": { - "442": [ - 1112, - 1131, - false - ], - "443": [ - 1135, - 1189, - true - ] - } - }, - "89": {}, - "90": {}, - "91": {}, - "92": {}, - "93": {}, - "94": { - "SafeInt256.abs": { - "536": [ - 1717, - 1722, - false - ] - }, - "SafeInt256.add": { - "525": [ - 1511, - 1539, - true - ] - }, - "SafeInt256.div": { - "531": [ - 1108, - 1115, - false - ], - "532": [ - 1119, - 1135, - true - ] - }, - "SafeInt256.mul": { - "526": [ - 497, - 504, - false - ], - "527": [ - 515, - 521, - true - ], - "528": [ - 525, - 535, - true - ], - "529": [ - 560, - 566, - true - ], - "530": [ - 570, - 580, - true - ] - }, - "SafeInt256.sub": { - "535": [ - 1385, - 1413, - true - ] - }, - "SafeInt256.toInt": { - "534": [ - 2596, - 2626, - true - ] - }, - "SafeInt256.toUint": { - "533": [ - 2473, - 2479, - true - ] - } - } - }, - "statements": { - "141": {}, - "147": {}, - "151": {}, - "152": {}, - "153": {}, - "155": {}, - "157": {}, - "159": {}, - "21": {}, - "22": {}, - "25": {}, - "28": { - "ActionGuards.requireValidAccount": { - "33": [ - 1366, - 1403 - ], - "34": [ - 1446, - 1479 - ], - "35": [ - 1733, - 1755 - ] - } - }, - "29": { - "BatchAction._batchBalanceAndTradeAction": { - "36": [ - 13573, - 13647 - ], - "37": [ - 13730, - 13803 - ], - "38": [ - 13905, - 14074 - ], - "39": [ - 14169, - 14404 - ], - "40": [ - 14525, - 14574 - ], - "41": [ - 14592, - 14660 - ], - "42": [ - 14689, - 14974 - ], - "43": [ - 13264, - 13267 - ], - "44": [ - 15296, - 15370 - ], - "45": [ - 15485, - 15506 - ] - }, - "BatchAction._calculateWithdrawActionAndFinalize": { - "122": [ - 19746, - 19774 - ], - "123": [ - 20161, - 20326 - ], - "124": [ - 20444, - 20462 - ], - "125": [ - 20510, - 20651 - ], - "126": [ - 20662, - 20728 - ] - }, - "BatchAction._checkSufficientCash": { - "132": [ - 22908, - 23195 - ] - }, - "BatchAction._executeDepositAction": { - "116": [ - 15862, - 15895 - ], - "117": [ - 15963, - 15970 - ], - "118": [ - 16333, - 16505 - ], - "119": [ - 16772, - 16859 - ], - "120": [ - 17030, - 17071 - ], - "121": [ - 17092, - 17239 - ] - }, - "BatchAction._executeNTokenAction": { - "229": [ - 17908, - 17963 - ], - "230": [ - 17977, - 18057 - ], - "231": [ - 18324, - 18443 - ], - "232": [ - 18525, - 18882 - ], - "233": [ - 18897, - 19023 - ], - "234": [ - 19203, - 19273 - ] - }, - "BatchAction._executeTrades": { - "65": [ - 21539, - 21669 - ], - "66": [ - 21714, - 21937 - ], - "67": [ - 21987, - 22061 - ], - "68": [ - 22303, - 22491 - ] - }, - "BatchAction._finalizeAccountContext": { - "46": [ - 21013, - 21054 - ], - "47": [ - 21114, - 21174 - ] - }, - "BatchAction._settleAccountIfRequired": { - "48": [ - 23544, - 23610 - ], - "49": [ - 23641, - 23662 - ] - }, - "BatchAction.batchBalanceAction": { - "24": [ - 1388, - 1465 - ], - "25": [ - 1475, - 1503 - ], - "26": [ - 1978, - 2052 - ], - "27": [ - 2135, - 2208 - ], - "28": [ - 2223, - 2392 - ], - "29": [ - 2407, - 2692 - ], - "30": [ - 1679, - 1682 - ], - "31": [ - 2713, - 2761 - ] - }, - "BatchAction.batchBalanceAndTradeAction": { - "0": [ - 3400, - 3477 - ], - "1": [ - 3487, - 3515 - ], - "2": [ - 3619, - 3667 - ] - }, - "BatchAction.batchBalanceAndTradeActionWithCallback": { - "19": [ - 11429, - 11492 - ], - "20": [ - 11502, - 11530 - ], - "21": [ - 11635, - 11676 - ], - "22": [ - 11955, - 12035 - ], - "23": [ - 12502, - 12562 - ] - }, - "BatchAction.batchLend": { - "3": [ - 4605, - 4682 - ], - "4": [ - 4692, - 4720 - ], - "5": [ - 5534, - 5608 - ], - "6": [ - 5787, - 5809 - ], - "7": [ - 5900, - 5971 - ], - "8": [ - 5877, - 5880 - ], - "9": [ - 6080, - 6153 - ], - "10": [ - 6167, - 6397 - ], - "11": [ - 6486, - 6526 - ], - "12": [ - 8114, - 8172 - ], - "13": [ - 8508, - 8576 - ], - "14": [ - 8903, - 9158 - ], - "15": [ - 9305, - 9358 - ], - "16": [ - 5239, - 5242 - ], - "17": [ - 9680, - 9754 - ], - "18": [ - 9847, - 9895 - ] - }, - "BatchAction.getLibInfo": { - "32": [ - 23876, - 24141 - ] - } - }, - "35": {}, - "38": {}, - "39": {}, - "6": { - "SafeMath.add": { - "343": [ - 2786, - 2832 - ] - }, - "SafeMath.div": { - "341": [ - 4286, - 4330 - ], - "342": [ - 4340, - 4352 - ] - }, - "SafeMath.mul": { - "339": [ - 3619, - 3627 - ], - "340": [ - 3664, - 3720 - ] - }, - "SafeMath.sub": { - "272": [ - 3205, - 3254 - ], - "273": [ - 3264, - 3276 - ] - } - }, - "60": {}, - "61": {}, - "62": { - "LibStorage._getStorageSlot": { - "319": [ - 8727, - 8772 - ] - } - }, - "63": {}, - "65": {}, - "66": { - "AccountContextHandler._clearPortfolioActiveFlags": { - "224": [ - 9497, - 9550 - ], - "225": [ - 9568, - 9580 - ], - "226": [ - 9608, - 9629 - ], - "227": [ - 9650, - 9663 - ] - }, - "AccountContextHandler.getAccountContext": { - "133": [ - 743, - 764 - ] - }, - "AccountContextHandler.isActiveInBalances": { - "138": [ - 4149, - 4215 - ], - "139": [ - 4367, - 4378 - ], - "140": [ - 4627, - 4715 - ], - "141": [ - 4744, - 4773 - ], - "142": [ - 4794, - 4806 - ] - }, - "AccountContextHandler.isBitmapEnabled": { - "103": [ - 1219, - 1262 - ] - }, - "AccountContextHandler.mustSettleAssets": { - "134": [ - 3350, - 3420 - ], - "135": [ - 3649, - 3735 - ] - }, - "AccountContextHandler.setAccountContext": { - "114": [ - 1029, - 1060 - ], - "115": [ - 1070, - 1104 - ] - }, - "AccountContextHandler.setActiveCurrency": { - "191": [ - 5423, - 5488 - ], - "192": [ - 5766, - 5773 - ], - "193": [ - 6965, - 7106 - ], - "194": [ - 7124, - 7131 - ], - "195": [ - 7350, - 7383 - ], - "196": [ - 7457, - 7478 - ], - "197": [ - 7496, - 7564 - ], - "198": [ - 7582, - 7589 - ], - "199": [ - 8002, - 8059 - ], - "200": [ - 7737, - 7817 - ], - "201": [ - 8147, - 8221 - ], - "202": [ - 8239, - 8246 - ], - "203": [ - 8389, - 8396 - ], - "204": [ - 8410, - 8470 - ], - "205": [ - 8484, - 8505 - ], - "206": [ - 8519, - 8530 - ], - "207": [ - 8626, - 8633 - ], - "208": [ - 8716, - 8735 - ], - "209": [ - 8777, - 8906 - ] - }, - "AccountContextHandler.storeAssetsAndUpdateContext": { - "104": [ - 10389, - 10435 - ], - "105": [ - 10445, - 10495 - ], - "106": [ - 10541, - 10591 - ], - "107": [ - 10801, - 10870 - ], - "108": [ - 11082, - 11156 - ], - "109": [ - 11232, - 11307 - ], - "110": [ - 11426, - 11519 - ], - "111": [ - 12001, - 12083 - ], - "112": [ - 12151, - 12198 - ], - "113": [ - 12111, - 12136 - ] - } - }, - "67": { - "BalanceHandler._finalizeTransfers": { - "175": [ - 10973, - 10986 - ], - "176": [ - 11628, - 11862 - ], - "177": [ - 12038, - 12125 - ], - "178": [ - 12352, - 12465 - ], - "179": [ - 12532, - 12620 - ] - }, - "BalanceHandler._setBalanceStorage": { - "183": [ - 19639, - 19712 - ], - "184": [ - 19843, - 19907 - ], - "185": [ - 20036, - 20063 - ], - "186": [ - 20270, - 20319 - ], - "187": [ - 20374, - 20426 - ], - "188": [ - 20555, - 20621 - ], - "189": [ - 20436, - 20488 - ], - "190": [ - 20498, - 20545 - ] - }, - "BalanceHandler.depositAssetToken": { - "82": [ - 2110, - 2118 - ], - "83": [ - 2128, - 2160 - ], - "84": [ - 2418, - 2574 - ], - "85": [ - 3339, - 3419 - ], - "86": [ - 3473, - 3553 - ], - "87": [ - 3568, - 3594 - ], - "88": [ - 3625, - 3691 - ], - "89": [ - 4016, - 4170 - ] - }, - "BalanceHandler.depositUnderlyingToken": { - "75": [ - 4764, - 4772 - ], - "76": [ - 4782, - 4819 - ], - "77": [ - 5168, - 5238 - ], - "78": [ - 5269, - 5380 - ], - "79": [ - 6101, - 6189 - ], - "80": [ - 6200, - 6234 - ] - }, - "BalanceHandler.finalize": { - "90": [ - 6818, - 7042 - ], - "91": [ - 7133, - 7361 - ], - "92": [ - 7584, - 7754 - ], - "93": [ - 7971, - 8055 - ], - "94": [ - 8101, - 8244 - ], - "95": [ - 8069, - 8086 - ], - "96": [ - 8725, - 8803 - ], - "97": [ - 8818, - 8871 - ], - "98": [ - 8949, - 9128 - ], - "99": [ - 9157, - 9174 - ], - "100": [ - 9225, - 9516 - ], - "101": [ - 9537, - 9821 - ], - "102": [ - 10025, - 10098 - ] - }, - "BalanceHandler.getBalanceStorage": { - "143": [ - 21190, - 21234 - ], - "144": [ - 21244, - 21288 - ], - "145": [ - 21494, - 21586 - ], - "146": [ - 21617, - 21675 - ], - "147": [ - 21695, - 21735 - ] - }, - "BalanceHandler.loadBalanceState": { - "54": [ - 22120, - 22185 - ], - "55": [ - 22223, - 22259 - ], - "56": [ - 22335, - 22583 - ], - "57": [ - 22614, - 22648 - ], - "58": [ - 22662, - 22698 - ], - "59": [ - 22712, - 22742 - ], - "60": [ - 22756, - 22793 - ], - "61": [ - 22814, - 22844 - ], - "62": [ - 22854, - 22904 - ], - "63": [ - 22914, - 22948 - ], - "64": [ - 22958, - 22996 - ] - } - }, - "68": { - "Incentives.calculateIncentivesToClaim": { - "286": [ - 1219, - 1631 - ], - "287": [ - 1737, - 1767 - ], - "288": [ - 1927, - 1964 - ], - "289": [ - 2927, - 3201 - ], - "290": [ - 3997, - 4155 - ] - }, - "Incentives.claimIncentives": { - "180": [ - 4979, - 5157 - ], - "181": [ - 5364, - 6057 - ], - "182": [ - 6105, - 6163 - ] - } - }, - "69": { - "TokenHandler._deposit": { - "258": [ - 11574, - 11682 - ], - "259": [ - 11703, - 11767 - ], - "260": [ - 12161, - 12267 - ], - "261": [ - 12514, - 12595 - ], - "262": [ - 12776, - 12835 - ], - "263": [ - 12866, - 12897 - ] - }, - "TokenHandler._getToken": { - "155": [ - 1720, - 2122 - ] - }, - "TokenHandler.convertToExternal": { - "73": [ - 13881, - 13894 - ], - "74": [ - 14429, - 14502 - ] - }, - "TokenHandler.convertToInternal": { - "169": [ - 13611, - 13624 - ], - "170": [ - 13634, - 13707 - ] - }, - "TokenHandler.getAssetToken": { - "81": [ - 1085, - 1120 - ] - }, - "TokenHandler.getUnderlyingToken": { - "72": [ - 1228, - 1262 - ] - }, - "TokenHandler.mint": { - "165": [ - 6677, - 6736 - ], - "166": [ - 6813, - 6871 - ], - "167": [ - 6946, - 6982 - ], - "168": [ - 7271, - 7330 - ] - }, - "TokenHandler.redeem": { - "275": [ - 8194, - 8279 - ], - "276": [ - 8449, - 8531 - ], - "277": [ - 8616, - 8714 - ], - "278": [ - 8918, - 8963 - ] - }, - "TokenHandler.transfer": { - "158": [ - 9499, - 9543 - ], - "159": [ - 9864, - 10027 - ], - "160": [ - 10408, - 10443 - ], - "161": [ - 10592, - 10672 - ], - "162": [ - 10703, - 10922 - ] - }, - "TokenHandler.transferIncentive": { - "293": [ - 14604, - 14691 - ] - } - }, - "70": { - "AaveHandler._getReserveNormalizedIncome": { - "274": [ - 6266, - 6416 - ] - }, - "AaveHandler.convertFromScaledBalanceExternal": { - "255": [ - 5194, - 5202 - ], - "256": [ - 5795, - 5847 - ], - "257": [ - 5916, - 5981 - ] - }, - "AaveHandler.convertToScaledBalanceExternal": { - "171": [ - 3412, - 3420 - ], - "172": [ - 3430, - 3462 - ], - "173": [ - 3884, - 3952 - ], - "174": [ - 4013, - 4067 - ] - }, - "AaveHandler.mint": { - "269": [ - 1271, - 1450 - ] - }, - "AaveHandler.redeem": { - "331": [ - 1953, - 2124 - ], - "332": [ - 2134, - 2293 - ] - } - }, - "71": { - "CompoundHandler.mint": { - "270": [ - 869, - 926 - ] - }, - "CompoundHandler.mintCETH": { - "271": [ - 598, - 658 - ] - }, - "CompoundHandler.redeem": { - "333": [ - 2677, - 2736 - ], - "334": [ - 2902, - 2963 - ], - "335": [ - 3048, - 3141 - ] - }, - "CompoundHandler.redeemCETH": { - "328": [ - 1564, - 1623 - ], - "329": [ - 1690, - 1751 - ], - "330": [ - 1836, - 1906 - ] - } - }, - "72": { - "GenericToken.checkBalanceViaSelector": { - "267": [ - 740, - 756 - ], - "268": [ - 766, - 811 - ] - }, - "GenericToken.checkReturnCode": { - "327": [ - 2329, - 2354 - ] - }, - "GenericToken.safeTransferIn": { - "326": [ - 1506, - 1575 - ] - }, - "GenericToken.safeTransferOut": { - "265": [ - 1295, - 1345 - ], - "266": [ - 1355, - 1372 - ] - }, - "GenericToken.transferNativeTokenOut": { - "264": [ - 1127, - 1160 - ] - } - }, - "76": { - "AssetRate._getAssetRateStateful": { - "151": [ - 4993, - 5020 - ], - "152": [ - 5051, - 5094 - ], - "153": [ - 5108, - 5125 - ], - "154": [ - 5176, - 5226 - ] - }, - "AssetRate._getAssetRateStorage": { - "253": [ - 3154, - 3198 - ], - "254": [ - 3208, - 3260 - ] - }, - "AssetRate.buildAssetRateStateful": { - "71": [ - 6164, - 6413 - ] - } - }, - "77": {}, - "78": { - "DateTime.getTimeUTC0": { - "236": [ - 660, - 690 - ], - "237": [ - 700, - 736 - ] - }, - "DateTime.getTradedMarket": { - "351": [ - 1026, - 1050 - ], - "352": [ - 1076, - 1104 - ], - "353": [ - 1130, - 1151 - ], - "354": [ - 1177, - 1202 - ], - "355": [ - 1228, - 1253 - ], - "356": [ - 1279, - 1305 - ], - "357": [ - 1331, - 1357 - ], - "358": [ - 1368, - 1391 - ] - } - }, - "79": {}, - "80": {}, - "81": { - "nTokenHandler.getNTokenContext": { - "127": [ - 1193, - 1224 - ], - "128": [ - 1234, - 1299 - ], - "129": [ - 1309, - 1358 - ], - "130": [ - 1368, - 1411 - ], - "131": [ - 1421, - 1458 - ] - }, - "nTokenHandler.getSecondaryRewarder": { - "291": [ - 5443, - 5506 - ], - "292": [ - 5537, - 5565 - ] - }, - "nTokenHandler.nTokenAddress": { - "279": [ - 1729, - 1753 - ] - } - }, - "82": { - "nTokenSupply._calculateAdditionalNOTE": { - "350": [ - 4128, - 4388 - ] - }, - "nTokenSupply.changeNTokenSupply": { - "280": [ - 5612, - 5686 - ], - "281": [ - 5728, - 5778 - ], - "282": [ - 5959, - 6033 - ], - "283": [ - 6044, - 6081 - ], - "284": [ - 6119, - 6172 - ], - "285": [ - 6183, - 6214 - ] - }, - "nTokenSupply.getStoredNTokenSupplyFactors": { - "347": [ - 966, - 1005 - ], - "348": [ - 1218, - 1283 - ], - "349": [ - 1293, - 1348 - ] - }, - "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken": { - "336": [ - 1720, - 1871 - ], - "337": [ - 2974, - 3065 - ], - "338": [ - 3079, - 3132 - ] - } - }, - "83": {}, - "84": { - "PortfolioHandler._loadAssetArray": { - "238": [ - 16947, - 16986 - ], - "239": [ - 17584, - 17626 - ], - "240": [ - 17640, - 17678 - ], - "241": [ - 17692, - 17732 - ], - "242": [ - 17746, - 17784 - ], - "243": [ - 17798, - 17822 - ], - "244": [ - 17332, - 17335 - ], - "245": [ - 17843, - 17856 - ] - }, - "PortfolioHandler._sortInPlace": { - "246": [ - 16250, - 16338 - ], - "247": [ - 16120, - 16123 - ], - "248": [ - 16565, - 16608 - ], - "249": [ - 16626, - 16681 - ], - "250": [ - 16699, - 16702 - ], - "251": [ - 16730, - 16733 - ] - }, - "PortfolioHandler._storeAsset": { - "306": [ - 11727, - 11804 - ], - "307": [ - 11856, - 11921 - ], - "308": [ - 11970, - 12056 - ], - "309": [ - 12100, - 12179 - ], - "310": [ - 12229, - 12279 - ], - "311": [ - 12289, - 12335 - ], - "312": [ - 12345, - 12392 - ], - "313": [ - 12402, - 12447 - ] - }, - "PortfolioHandler._updatePortfolioContext": { - "314": [ - 11159, - 11190 - ], - "315": [ - 11210, - 11249 - ], - "316": [ - 11260, - 11316 - ], - "317": [ - 11371, - 11469 - ], - "318": [ - 11480, - 11539 - ] - }, - "PortfolioHandler.buildPortfolioState": { - "50": [ - 15681, - 15693 - ], - "51": [ - 15704, - 15770 - ], - "52": [ - 15780, - 15822 - ], - "53": [ - 15832, - 15885 - ] - }, - "PortfolioHandler.deleteAsset": { - "294": [ - 12787, - 12838 - ], - "295": [ - 12877, - 12922 - ], - "296": [ - 13051, - 13214 - ], - "297": [ - 13253, - 13290 - ], - "298": [ - 13775, - 13804 - ], - "299": [ - 13822, - 13844 - ], - "300": [ - 13587, - 13590 - ], - "301": [ - 14031, - 14084 - ], - "302": [ - 14098, - 14105 - ], - "303": [ - 14421, - 14596 - ], - "304": [ - 14606, - 14657 - ], - "305": [ - 14667, - 14720 - ] - }, - "PortfolioHandler.getSortedPortfolio": { - "136": [ - 15102, - 15115 - ], - "137": [ - 15126, - 15146 - ] - }, - "PortfolioHandler.storeAssets": { - "210": [ - 7487, - 7550 - ], - "211": [ - 7714, - 7744 - ], - "212": [ - 7255, - 7258 - ], - "213": [ - 8611, - 8643 - ], - "214": [ - 8820, - 9055 - ], - "215": [ - 7923, - 7926 - ], - "216": [ - 9590, - 9598 - ], - "217": [ - 9612, - 9771 - ], - "218": [ - 9823, - 10038 - ], - "219": [ - 10053, - 10105 - ], - "220": [ - 10119, - 10142 - ], - "221": [ - 9475, - 9478 - ], - "222": [ - 10303, - 10374 - ], - "223": [ - 10424, - 10576 - ] - } - }, - "85": { - "TransferAssets.encodeAssetId": { - "320": [ - 1035, - 1082 - ], - "321": [ - 1092, - 1129 - ], - "322": [ - 1139, - 1196 - ], - "323": [ - 1207, - 1430 - ] - } - }, - "86": {}, - "87": {}, - "88": { - "AssetHandler.getSettlementDate": { - "344": [ - 1104, - 1190 - ], - "345": [ - 1365, - 1386 - ], - "346": [ - 1689, - 1751 - ] - } - }, - "89": {}, - "90": {}, - "91": {}, - "92": {}, - "93": { - "FloatingPoint56.unpackFrom56Bits": { - "252": [ - 1385, - 1418 - ] - } - }, - "94": { - "SafeInt256.abs": { - "324": [ - 1724, - 1737 - ], - "325": [ - 1752, - 1760 - ] - }, - "SafeInt256.add": { - "69": [ - 1503, - 1540 - ] - }, - "SafeInt256.div": { - "156": [ - 1098, - 1137 - ], - "157": [ - 1245, - 1254 - ] - }, - "SafeInt256.mul": { - "148": [ - 474, - 483 - ], - "149": [ - 506, - 536 - ], - "150": [ - 551, - 581 - ] - }, - "SafeInt256.neg": { - "70": [ - 1619, - 1636 - ] - }, - "SafeInt256.sub": { - "235": [ - 1377, - 1414 - ] - }, - "SafeInt256.toInt": { - "228": [ - 2587, - 2627 - ] - }, - "SafeInt256.toUint": { - "163": [ - 2465, - 2480 - ], - "164": [ - 2490, - 2507 - ] - } - } - } - }, - "dependencies": [ - "ABDKMath64x64", - "AaveHandler", - "AccountContextHandler", - "ActionGuards", - "AssetHandler", - "AssetRate", - "AssetRateAdapter", - "BalanceHandler", - "Bitmap", - "BitmapAssetsHandler", - "CErc20Interface", - "CEtherInterface", - "CTokenInterface", - "CashGroup", - "CompoundHandler", - "Constants", - "DateTime", - "Deployments", - "ExchangeRate", - "FloatingPoint56", - "FreeCollateral", - "FreeCollateralExternal", - "GenericToken", - "IEIP20NonStandard", - "IRewarder", - "Incentives", - "LibStorage", - "Market", - "MigrateIncentives", - "NotionalCallback", - "PortfolioHandler", - "SafeInt256", - "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/SafeMath", - "SettleAssetsExternal", - "SettleBitmapAssets", - "SettlePortfolioAssets", - "StorageLayoutV1", - "TokenHandler", - "TradingAction", - "TransferAssets", - "nTokenCalculations", - "nTokenHandler", - "nTokenMintAction", - "nTokenRedeemAction", - "nTokenSupply" - ], - "deployedBytecode": "60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e3660046141f2565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b79190614641565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614366565b6101f6565b6100936100ee366004614242565b61053e565b6100936101013660046142e6565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b79695949392919061469e565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149c5565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148b4565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149c5565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148b4565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f12565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b3c565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b3c565b6102e3906020810190614579565b61ffff166102f46020830183614579565b61ffff16116103155760405162461bcd60e51b815260040161017a90614964565b60006103246040830183614ad7565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614ad7565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614579565b86919089610c79565b6103b4896103a06020850185614579565b6103ad6040860186614ad7565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a604084016020850161439d565b156104b757600061042a6104216020860186614579565b61ffff16610eef565b9050600061044761043e6020870187614579565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614a95565b505050506104ef565b60006104d26104c96020860186614579565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148b4565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614655565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90610635908990600401614641565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149c5565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148b4565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f12565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614579565b61ffff1661074a6040830160208401614579565b61ffff161161076b5760405162461bcd60e51b815260040161017a90614964565b6107888761077f6040840160208501614579565b85919087610c79565b6107a4878461079a60208501856143b9565b8460400135611605565b6107d487858560608501356107bf60a087016080880161439d565b6107cf60c0880160a0890161439d565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b73__$841fddfe32830bb6dbc3a02d7f16c53722$__73__$b21a4dc043b77aa57922ad9143a3cb040e$__73__$f6541b0d362a0c7d99a2a29cd3d373d61b$__73__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__73__$892f367d396be2b92d3b049e6e62920984$__73__$43fd92ea4ea9b72ca0014644dbfd757564$__909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f62565b600061090285610b2b565b905061090c613f12565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b1d565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b1d565b610984906040810190602001614579565b61ffff166109986040830160208401614579565b61ffff16116109b95760405162461bcd60e51b815260040161017a90614964565b6109d6896109cd6040840160208501614579565b86919088610c79565b6109e8898561079a60208501856143b9565b60006109f760c0830183614ad7565b90501115610a5e576000610a298a610a156040850160208601614579565b610a2260c0860186614ad7565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a087016080880161439d565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90610aff908590600401614641565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f62565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610b8790869085906004016146d8565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061441f565b915050610be2565b90505b919050565b610bef613f90565b610bf7613f90565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fb8565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613f90565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a0f565b60608401518451604051633643f39b60e01b815260009273__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__92633643f39b92610da9928e9290918d908d906004016147cb565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df891906143f0565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b815273__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__9063b58f83ed90610e61908b908b9088908c908c90600401614744565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144be565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7613ff8565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f43614022565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a906148f8565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac614022565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a46565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a906149ed565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148ab565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148ab565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c610100015161204e565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b612187565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e8688612386565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125c5565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b612187565b60109490941b9390506114c5565b505050505050505050565b600061150b612640565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261264d565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612663565b50505050565b60006116e38461264d565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261287e565b608086015261174b85888885611191565b5050505050505050565b600080600080600080611766612894565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a6a565b611815613f62565b600061181f612640565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128a1565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128bf565b9050600181511161191f579050610edb565b610aa3816129e0565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612b98565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612ba5565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bb3565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143d8565b905060008113611b6457600080fd5b969195509350915050565b611b77614022565b6000611b81612bea565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612bf7565b9250505b6000821315611cb2576000611c9c868685612c89565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d7c565b610f7f565b8451610f7f9085611cf185610ee1565b612db7565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e2e565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f40565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fab565b600286606001516005811115611dbb57fe5b141561007b57611dca86613057565b6000611ddb87600001513085612e2e565b9050611def611dea8284613096565b61264d565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e6282600001516130f3565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061317e565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613214565b90506000611f90828860c001518561323a565b9050611f9e8783838861331d565b93506000611fab8361344a565b90506001600160a01b0381161561203357806001600160a01b0316639fc27b9288611fd98b60400151611cf6565b898c60c001518a6040518663ffffffff1660e01b8152600401612000959493929190614857565b600060405180830381600087803b15801561201a57600080fd5b505af115801561202e573d6000803e3d6000fd5b505050505b84156120435761204387866134bc565b505050509392505050565b6000612058612b98565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a357506a7fffffffffffffffffffff8613155b6120ac57600080fd5b600085121580156120c7575069ffffffffffffffffffff8513155b6120d057600080fd5b83156120db57600080fd5b66ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff909316600160701b0266ffffffffffffff60701b19600a9790970b6affffffffffffffffffffff16600160a81b026001600160a81b0363ffffffff909616600160501b0263ffffffff60501b1969ffffffffffffffffffff90981669ffffffffffffffffffff1990961695909517969096169390931793909316939093179390931692909217909155505050565b8260001080156121995750613fff8311155b6121a257600080fd5b8180156121b6575082846060015161ffff16145b156121c0576116d2565b6080840151600090815b6001600160701b031982161561233b5760f082901c613fff1686811480156121ef5750855b1561222757506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612234575085155b15612289576001600160f01b03198516199290921691600360fe1b8316612267576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122955750855b156122ef576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122c957600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b86811180156122fc575085155b1561230a57505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121ca565b84612348575050506116d2565b6009811061235557600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124175760008a6000015182815181106123ac57fe5b602002602001015190506003808111156123c257fe5b8160a0015160038111156123d257fe5b14156123dd57600080fd5b60028160a0015160038111156123ef57fe5b141580156123ff57506060810151155b1561240e5761240e8b836134db565b50600101612390565b5060005b8951518110156124ba5760008a60000151828151811061243757fe5b602002602001015190506002600381111561244e57fe5b8160a00151600381111561245e57fe5b1415612472576080810151600090556124b1565b60018160a00151600381111561248457fe5b141561249d5760808101518061249a838261362a565b50505b6124a98186868661375b565b919650945092505b5060010161241b565b50606089015160006124ca6137be565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125945760008d60200151828151811061250557fe5b60200260200101519050806060015160001415612522575061258c565b60028160a00151600381111561253457fe5b14158015612552575060038160a00151600381111561254f57fe5b14155b61255b57600080fd5b6125678189898961375b565b919950975095506125848184876010811061257e57fe5b0161362a565b600185019450505b6001016124e6565b50601083111580156125ab575064ffffffffff8411155b6125b457600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561263757600160fe1b8281161415612621576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506125ed565b50909392505050565b600080610edb60016137c7565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561267157fe5b14806126885750600483600681111561268657fe5b145b8061269e5750600683600681111561269c57fe5b145b1561276a576126ad84826117be565b60608401516126bc908261287e565b60608501528351604051632128561360e11b815260009173__$892f367d396be2b92d3b049e6e62920984$__91634250ac26916126fd918690600401614ac3565b60206040518083038186803b15801561271557600080fd5b505af4158015612729573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274d91906143d8565b60c086015190915061275f9082610ec5565b60c0860152506116d2565b600583600681111561277857fe5b14156116d257816127a28560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127c05760405162461bcd60e51b815260040161017a9061498e565b60c08401516127cf908361287e565b60c085015283516040516352e73f7760e01b815260009173__$43fd92ea4ea9b72ca0014644dbfd757564$__916352e73f7791612810918790600401614ac3565b60206040518083038186803b15801561282857600080fd5b505af415801561283c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061286091906143d8565b60608601519091506128729082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137c7565b6000620151808210156128b357600080fd5b50620151808106900390565b606060108260ff1611156128d257600080fd5b60006128dc6137be565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561291057600080fd5b5060405190808252806020026020018201604052801561294a57816020015b612937613fb8565b81526020019060019003908161292f5790505b50905060005b8560ff168110156129d657600083826010811061296957fe5b019050600083838151811061297a57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b60608201526080019190915250600101612950565b5095945050505050565b80516000816001600160401b03811180156129fa57600080fd5b50604051908082528060200260200182016040528015612a24578160200160208202803683370190505b50905060005b82811015612a81576000848281518110612a4057fe5b60200260200101519050612a618160000151826020015183604001516137e0565b838381518110612a6d57fe5b602090810291909101015250600101612a2a565b5060015b828110156116d257805b600081118015612ac75750828181518110612aa657fe5b6020026020010151836001830381518110612abd57fe5b6020026020010151115b15612b8f57828181518110612ad857fe5b6020026020010151836001830381518110612aef57fe5b6020026020010151846001840381518110612b0657fe5b60200260200101858481518110612b1957fe5b6020026020010182815250828152505050848181518110612b3657fe5b6020026020010151856001830381518110612b4d57fe5b6020026020010151866001840381518110612b6457fe5b60200260200101878481518110612b7757fe5b60209081029190910101919091525260001901612a8f565b50600101612a85565b600080610edb60066137c7565b600881901c60ff9091161b90565b6000806000612bc061383b565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137c7565b600081612c0657506000610edb565b6000612c11846130f3565b90506000612c1e84613848565b9050816b019d971e4fe8401e74000001600160ff1b0381612c3b57fe5b05811315612c4857600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c7d57612c7881610ee1565b612c7f565b805b9695505050505050565b6000808080600587606001516005811115612ca057fe5b14612cb2576370a0823160e01b612cbb565b630ed1279f60e11b5b9050866020015115612cd7578651612cd4903083612e2e565b92505b8651612ce4908787613869565b866020015180612cf8575060008760800151115b15612d0d578651612d0a903083612e2e565b91505b608087015115612d48576000612d2b88612d268561264d565b611dfa565b9050612d3a886080015161264d565b811315612d4657600080fd5b505b866020015115612d6957612d5f611dea8385613096565b9350505050610aa3565b612d5f8561264d565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612db2573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e0e57600080fd5b505af1158015612e22573d6000803e3d6000fd5b50505050612db26138c1565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612eab5780518252601f199092019160209182019101612e8c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f0b576040519150601f19603f3d011682016040523d82523d6000602084013e612f10565b606091505b509150915081612f1f57600080fd5b808060200190516020811015612f3457600080fd5b50519695505050505050565b612f4861392e565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f7d918590309060009060040161482a565b600060405180830381600087803b158015612f9757600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612fde91906148ab565b602060405180830381600087803b158015612ff857600080fd5b505af115801561300c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061303091906143d8565b905080156130505760405162461bcd60e51b815260040161017a906148da565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612f9757600080fd5b6000828211156130ed576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61310061392e565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061312e908690600401614641565b60206040518083038186803b15801561314657600080fd5b505afa15801561315a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143d8565b60008060028660600151600581111561319357fe5b14156131ab576131a486858561393b565b9050613208565b60006131b686610f3b565b90506005876060015160058111156131ca57fe5b14156131e2576131db8186866139f8565b9150613206565b6001876060015160058111156131f457fe5b141561007b576131db87828787613aae565b505b612c7f6103ea8261264d565b60008061321f613bac565b6000938452602052505060409020546001600160a01b031690565b60008060006132498685613bb9565b50915091506000613258613c4f565b6001600160a01b038816600090815260208290526040812091925061327d8589610ec5565b90508060001315801561329657506001600160601b0381105b61329f57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff87106132f457600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133de5773__$b21a4dc043b77aa57922ad9143a3cb040e$__63e0c01a72856133528860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161337c9493929190614885565b60206040518083038186803b15801561339457600080fd5b505af41580156133a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133cc91906143d8565b600060e0870181905261010087015290505b613420613419866101000151613413670de0b6b3a764000061340d886134078c60400151611cf6565b90613c5c565b90613cb5565b90613096565b8290613d1c565b9050613438670de0b6b3a764000061340d8486613c5c565b85610100018181525050949350505050565b600080613455612894565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134b15761348a613d76565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612db7565b81515181106134e957600080fd5b60008260600151116134fa57600080fd5b60008260000151828151811061350c57fe5b602002602001015190506002600381111561352357fe5b8160a00151600381111561353357fe5b14158015613551575060038160a00151600381111561354e57fe5b14155b61355a57600080fd5b606083018051600019019052600080805b8551518110156135cd5760008660000151828151811061358757fe5b602002602001015190508281608001511180156135b4575060028160a0015160038111156135b157fe5b14155b156135c457806080015192508193505b5060010161356b565b50818414156135e6575050600260a091909101526108eb565b6000856000015183815181106135f857fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061363d57508151613fff10155b61364657600080fd5b816020015160001080156136635750602082015164ffffffffff10155b61366c57600080fd5b8160400151600010801561368557506040820151600810155b61368e57600080fd5b60608201516a7fffffffffffffffffffff19138015906136bd575060608201516a7fffffffffffffffffffff12155b6136c657600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061376a88613d83565b905084158061377857508085115b15613781578094505b8680613791575060008860600151125b965061ffff8616156137a257600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137d957fe5b0192915050565b6000613fff8411156137f157600080fd5b64ffffffffff83111561380357600080fd5b600882111561381157600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137c7565b6000808212156138625761385b82610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e0e57600080fd5b60006138cb614051565b3d80156138df57602081146138e857600080fd5b600192506138f3565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137c7565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061396f9087906004016148ab565b602060405180830381600087803b15801561398957600080fd5b505af115801561399d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139c191906143d8565b905080156139e15760405162461bcd60e51b815260040161017a9061491d565b476139ec8184613096565b9350612d728685612d7c565b6000613a18613a138560000151613a0e8561264d565b612bf7565b611cf6565b9050613a2261392e565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a549185908890600401614807565b602060405180830381600087803b158015613a6e57600080fd5b505af1158015613a82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aa691906143d8565b509392505050565b82516000908190613ac790306370a0823160e01b612e2e565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613afb91906148ab565b602060405180830381600087803b158015613b1557600080fd5b505af1158015613b29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b4d91906143d8565b90508015613b6d5760405162461bcd60e51b815260040161017a9061491d565b8551600090613b8490306370a0823160e01b612e2e565b9050613b908184613096565b9350613ba187600001518786612db7565b505050949350505050565b600080610edb60036137c7565b6000806000613bc785613df0565b919450925090508084118015613bdd5750600081115b8015613be95750600083115b15613c48576000613bf986611755565b5050509150506000613c24613c1b6305f5e10084613c5c90919063ffffffff16565b84880387613e4c565b9050613c308482613d1c565b93506001600160801b038410613c4557600080fd5b50505b9250925092565b600080610edb60116137c7565b600082613c6b57506000610edb565b82820282848281613c7857fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614b966021913960400191505060405180910390fd5b6000808211613d0b576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d1457fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137c7565b6000808260400151118015613d9d57506040820151600810155b613da657600080fd5b6040820151600210613dbd57506020810151610be2565b6000613dcf6001846040015103613e6e565b6020840151909150610aa3906276a70090613dea9084613096565b90613d1c565b600080600080613dfe613c4f565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261340d6301da9c00818861340789670de0b6b3a7640000613c5c565b60008160011415613e8357506276a700610be2565b8160021415613e96575062ed4e00610be2565b8160031415613eaa57506301da9c00610be2565b8160041415613ebe57506303b53800610be2565b8160051415613ed257506309450c00610be2565b8160061415613ee6575063128a1800610be2565b8160071415613efa57506325143000610be2565b60405162461bcd60e51b815260040161017a9061493d565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115613ff357fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f840112614097578081fd5b5081356001600160401b038111156140ad578182fd5b60208301915083602080830285010111156140c757600080fd5b9250929050565b600082601f8301126140de578081fd5b815160206001600160401b03808311156140f457fe5b6141018283850201614b51565b8381528281019086840160c0808702890186018a101561411f578788fd5b875b878110156141a05781838c031215614137578889fd5b60408051838101818110898211171561414c57fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141878286016141c7565b9181019190915285529386019391810191600101614121565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614b85565b805160ff81168114610be257600080fd5b600080600060408486031215614206578283fd5b61420f8461406f565b925060208401356001600160401b03811115614229578283fd5b61423586828701614086565b9497909650939450505050565b600080600080600060608688031215614259578081fd5b6142628661406f565b945060208601356001600160401b038082111561427d578283fd5b61428989838a01614086565b909650945060408801359150808211156142a1578283fd5b818801915088601f8301126142b4578283fd5b8135818111156142c2578384fd5b8960208285010111156142d3578384fd5b9699959850939650602001949392505050565b6000806000604084860312156142fa578283fd5b6143038461406f565b925060208401356001600160401b038082111561431e578384fd5b818601915086601f830112614331578384fd5b81358181111561433f578485fd5b87602060c083028501011115614353578485fd5b6020830194508093505050509250925092565b60008060006040848603121561437a578081fd5b6143838461406f565b925060208401356001600160401b03811115614229578182fd5b6000602082840312156143ae578081fd5b8135610aa381614b74565b6000602082840312156143ca578081fd5b813560078110610aa3578182fd5b6000602082840312156143e9578081fd5b5051919050565b60008060408385031215614402578182fd5b82519150602083015161441481614b74565b809150509250929050565b600060a08284031215614430578081fd5b60405160a081018181106001600160401b038211171561444c57fe5b604052825164ffffffffff81168114614463578283fd5b815260208301516001600160f81b03198116811461447f578283fd5b6020820152614490604084016141e1565b60408201526144a1606084016141d6565b60608201526144b2608084016141af565b60808201529392505050565b600080604083850312156144d0578182fd5b82516001600160401b03808211156144e6578384fd5b90840190608082870312156144f9578384fd5b60405160808101818110838211171561450e57fe5b60405282518281111561451f578586fd5b61452b888286016140ce565b82525060208301518281111561453f578586fd5b61454b888286016140ce565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b60006020828403121561458a578081fd5b8135610aa381614b85565b81835260006001600160fb1b038311156145ad578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561463657815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061462157fe5b88015260c090960195908201906001016145dc565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147786101008401826145c9565b90506020860151607f198483030160a085015261479582826145c9565b915050604086015160c0840152606086015160e084015282810360608401526147bf818587614595565b98975050505050505050565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def9083018486614595565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614aed578283fd5b8301803591506001600160401b03821115614b06578283fd5b60209081019250810236038213156140c757600080fd5b6000823560de19833603018112614b32578182fd5b9190910192915050565b60008235605e19833603018112614b32578182fd5b6040518181016001600160401b0381118282101715614b6c57fe5b604052919050565b8015158114614b8257600080fd5b50565b61ffff81168114614b8257600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122032811f7f2dfaed6ae73f5ee82dde37e34e8a29d87704373d06746e0114bf0ee664736f6c63430007060033", - "deployedSourceMap": "591:23559:29:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3235:439;;;;;;:::i;:::-;;:::i;:::-;;1035:28:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4487:5415:29;;;;;;;;;;-1:-1:-1;4487:5415:29;;;;;:::i;:::-;;:::i;11159:1420::-;;;;;;:::i;:::-;;:::i;1241:1527::-;;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;23767:381:29:-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;3235:439::-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;;;;;;;;;319:1;960:16;:27;-1:-1:-1;;;;;3408:21:29;::::1;3419:10;3408:21;::::0;:52:::1;;-1:-1:-1::0;3433:10:29::1;3455:4;3433:27;3408:52;3400:77;;;;-1:-1:-1::0;;;3400:77:29::1;;;;;;;:::i;:::-;3487:28;3507:7;3487:19;:28::i;:::-;3525:36;3564:45;3592:7;3601;;3564:27;:45::i;:::-;3525:84;;3619:48;3643:7;3652:14;3619:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;3235:439:29:o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;4487:5415:29:-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;319:1;960:16;:27;-1:-1:-1;;;;;4613:21:29;::::1;4624:10;4613:21;::::0;:52:::1;;-1:-1:-1::0;4638:10:29::1;4660:4;4638:27;4613:52;4605:77;;;;-1:-1:-1::0;;;4605:77:29::1;;;;;;;:::i;:::-;4692:28;4712:7;4692:19;:28::i;:::-;4731:36;4770:33;4795:7;4770:24;:33::i;:::-;4731:72;;4980:36;5019:127;5069:7;5090:14;:31;;;5135:1;5019:36;:127::i;:::-;4980:166;;5156:32;;:::i;:::-;5204:9;5199:4170;5219:18:::0;;::::1;5199:4170;;;5258:25;5286:7;;5294:1;5286:10;;;;;;;;;;;;;;;;;;:::i;:::-;5258:38:::0;-1:-1:-1;5509:5:29;;5505:118:::1;;5562:7;;5574:1;5570;:5;5562:14;;;;;;;;;;;;;;;;;;:::i;:::-;:25;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;5542:45;;:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;:45;;;5534:74;;;;-1:-1:-1::0;;;5534:74:29::1;;;;;;;:::i;:::-;5733:17;5753:13;;::::0;::::1;:6:::0;:13:::1;:::i;:::-;:20:::0;-1:-1:-1;;5795:13:29;5787:22:::1;;;::::0;::::1;;5847:9;5842:169;5866:9;5862:1;:13;5842:169;;;5949:20;5921:13;;::::0;::::1;::::0;::::1;:::i;:::-;5935:1;5921:16;;;;;;;;;;;;;5908:31;;:62;;;5900:71;;;::::0;::::1;;5877:3;;5842:169;;;-1:-1:-1::0;6080:73:29::1;6110:7:::0;6119:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;6080:12:::0;;:73;6138:14;6080:29:::1;:73::i;:::-;6214:183;6246:7:::0;6271:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;6306:13;;::::0;::::1;:6:::0;:13:::1;:::i;:::-;6337:14;6369;6214;:183::i;:::-;6168:26;::::0;::::1;6167:230:::0;;;;-1:-1:-1;6524:1:29::1;-1:-1:-1::0;6494:31:29::1;6486:40;;;::::0;::::1;;6978:19;7000:68;:62;7035:12;:26;;;7000:12;:30;;;:34;;:62;;;;:::i;:::-;:66;:68::i;:::-;6978:90;;7101:1;7086:12;:16;7082:2109;;;7126:24;::::0;;;::::1;::::0;::::1;;:::i;:::-;7122:2055;;;7323:29;7355:51;7388:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;7355:51;;:32;:51::i;:::-;7323:83:::0;-1:-1:-1;7428:28:29::1;7459:50;7491:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;7459:50;;:31;:50::i;:::-;7428:81:::0;-1:-1:-1;7531:31:29::1;7565:71;7599:36;:2:::0;7622:12;7599:22:::1;:36::i;:::-;7565:15:::0;;:33:::1;:71::i;:::-;7531:105;;429:3:60;7663:15:29;:24;;;:61;7659:536;;;8141:31;:24:::0;8170:1:::1;8141:28;:31::i;:::-;8114:58;;7659:536;8387:26;8416:70;:12:::0;8452:7;8461:24;8416:35:::1;:70::i;:::-;8387:99;;8539:12;8516:19;:35;;8508:68;;;;-1:-1:-1::0;;;8508:68:29::1;;;;;;;:::i;:::-;7122:2055;;;;;;;8810:23;8836:45;8863:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;8836:45;;:26;:45::i;:::-;8810:71:::0;-1:-1:-1;8903:255:29::1;8959:7:::0;8992:42:::1;8810:71:::0;9021:12;8992:28:::1;:42::i;:::-;8903:12:::0;;:255;9060:5:::1;8903:30;:255::i;:::-;;7122:2055;;9305:53;:12:::0;9327:7;9336:14;9352:5:::1;9305:21;:53::i;:::-;-1:-1:-1::0;;5239:3:29::1;::::0;;::::1;::::0;-1:-1:-1;5199:4170:29::1;::::0;-1:-1:-1;5199:4170:29::1;;;9549:32;:14;:30;:32::i;:::-;9544:221;;9680:74;:14:::0;9723:7;9732:14;9748:5:::1;9680:42;:74::i;:::-;9847:48;9871:7;9880:14;9847:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;;;4487:5415:29:o;11159:1420::-;11464:10;11437:38;;;;:26;:38;;;;;;;;11429:63;;;;-1:-1:-1;;;11429:63:29;;;;;;;:::i;:::-;11502:28;11522:7;11502:19;:28::i;:::-;11541:36;11580:45;11608:7;11617;;11580:27;:45::i;:::-;11541:84;-1:-1:-1;11635:41:29;11541:84;11668:7;11635:32;:41::i;:::-;11955:80;;-1:-1:-1;;;11955:80:29;;11972:10;;11955:45;;:80;;11972:10;;12013:7;;12022:12;;;;11955:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;12050:22:29;;;;-1:-1:-1;;;;;;12050:30:29;;12046:527;;12502:60;;-1:-1:-1;;;12502:60:29;;:22;;:51;;:60;;12554:7;;12502:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12046:527;11159:1420;;;;;;:::o;1241:1527::-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;319:1;960:16;:27;-1:-1:-1;;;;;1396:21:29;::::1;1407:10;1396:21;::::0;:52:::1;;-1:-1:-1::0;1421:10:29::1;1443:4;1421:27;1396:52;1388:77;;;;-1:-1:-1::0;;;1388:77:29::1;;;;;;;:::i;:::-;1475:28;1495:7;1475:19;:28::i;:::-;1514:36;1553:33;1578:7;1553:24;:33::i;:::-;1514:72;;1596:32;;:::i;:::-;1644:9;1639:1064;1659:18:::0;;::::1;1639:1064;;;1698:29;1730:7;;1738:1;1730:10;;;;;;;;;;;;1698:42;;1957:1;1953;:5;1949:118;;;2006:7;;2018:1;2014;:5;2006:14;;;;;;;;;;;;:25;;;;;;;;;;:::i;:::-;1986:45;;:17;::::0;;;::::1;::::0;::::1;;:::i;:::-;:45;;;1978:74;;;;-1:-1:-1::0;;;1978:74:29::1;;;;;;;:::i;:::-;2135:73;2165:7:::0;2174:17:::1;::::0;;;::::1;::::0;::::1;;:::i;:::-;2135:12:::0;;:73;2193:14;2135:29:::1;:73::i;:::-;2223:169;2262:7:::0;2287:12;2317:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;2352:6;:26;;;2223:21;:169::i;:::-;2407:285;2460:7:::0;2485:14;2517:12;2547:38:::1;::::0;::::1;;2603:32;::::0;;;::::1;::::0;::::1;;:::i;:::-;2653:25;::::0;;;::::1;::::0;::::1;;:::i;:::-;2407:35;:285::i;:::-;-1:-1:-1::0;1679:3:29::1;;1639:1064;;;;2713:48;2737:7;2746:14;2713:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;;1241:1527:29:o;920:26:63:-;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;23767:381:29:-;23897:31;23943:26;23984:29;24028:22;24064:25;24104:27;23767:381;;;;;;:::o;1296:466:28:-;-1:-1:-1;;;;;1374:28:28;;1366:37;;;;;;-1:-1:-1;;;;;1454:24:28;;1473:4;1454:24;;1446:33;;;;;;1503:16;1684:39;1715:7;1684:30;:39::i;:::-;1489:234;;;;;;;;1741:8;1753:1;1741:13;1733:22;;;;;;1296:466;;:::o;12585:2928:29:-;12723:21;;:::i;:::-;12756:36;12795:33;12820:7;12795:24;:33::i;:::-;12756:72;;12838:32;;:::i;:::-;13047:36;13086:127;13136:7;13157:14;:31;;;13202:1;13086:36;:127::i;:::-;13047:166;;13229:9;13224:1761;13244:18;;;13224:1761;;;13283:39;13325:7;;13333:1;13325:10;;;;;;;;;;;;;;;;;;:::i;:::-;13283:52;-1:-1:-1;13548:5:29;;13544:118;;13601:7;;13613:1;13609;:5;13601:14;;;;;;;;;;;;;;;;;;:::i;:::-;:25;;;;;;;;;:::i;:::-;13581:45;;:17;;;;;;;;:::i;:::-;:45;;;13573:74;;;;-1:-1:-1;;;13573:74:29;;;;;;;:::i;:::-;13730:73;13760:7;13769:17;;;;;;;;:::i;:::-;13730:12;;:73;13788:14;13730:29;:73::i;:::-;13905:169;13944:7;13969:12;13999:17;;;;:6;:17;:::i;13905:169::-;14116:1;14093:13;;;;:6;:13;:::i;:::-;:20;;:24;14089:586;;;14137:14;14197:207;14233:7;14262:17;;;;;;;;:::i;:::-;14301:13;;;;:6;:13;:::i;:::-;14336:14;14372;14197;:207::i;:::-;14169:235;-1:-1:-1;14169:235:29;-1:-1:-1;14522:1:29;14512:11;;14508:66;;;14525:49;14546:12;14560:13;:7;:11;:13::i;:::-;14525:20;:49::i;:::-;14621:26;;;;:39;;14652:7;14621:30;:39::i;:::-;14592:26;;;:68;-1:-1:-1;14089:586:29;14689:285;14742:7;14767:14;14799:12;14829:38;;;;14885:32;;;;;;;;:::i;14689:285::-;-1:-1:-1;13264:3:29;;13224:1761;;;;15165:32;:14;:30;:32::i;:::-;15160:221;;15296:74;:14;15339:7;15348:14;15364:5;15296:42;:74::i;:::-;-1:-1:-1;15492:14:29;;-1:-1:-1;;12585:2928:29;;;;;;:::o;20741:450::-;21013:41;:14;21046:7;21013:32;:41::i;:::-;21068:22;;;;-1:-1:-1;;;;;;21068:30:29;;21064:121;;21114:60;;-1:-1:-1;;;21114:60:29;;:22;;:51;;:60;;21166:7;;21114:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23208:471;23292:21;;:::i;:::-;23329:36;23368:48;23408:7;23368:39;:48::i;:::-;23329:87;;23430:33;:14;:31;:33::i;:::-;23426:247;;;23551:59;;-1:-1:-1;;;23551:59:29;;:20;;:34;;:59;;23586:7;;23595:14;;23551:59;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23544:66;;;;;23426:247;23648:14;-1:-1:-1;23208:471:29;;;;:::o;15438:477:84:-;15584:21;;:::i;:::-;15617:27;;:::i;:::-;15658:21;;;15654:39;;15688:5;-1:-1:-1;15681:12:84;;15654:39;15725:45;15744:7;15753:16;15725:18;:45::i;:::-;15704:66;;15780:42;;;:23;;;:42;15871:13;-1:-1:-1;;;;;15850:35:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;15832:15:84;;;:53;:15;15438:477;-1:-1:-1;;;;15438:477:84:o;21924:1079:67:-;22132:10;22128:14;;:1;:14;:56;;;;-1:-1:-1;5408:6:60;22146:38:67;;;;;22128:56;22120:65;;;;;;22223:36;;;;;;22274:45;;:14;;:33;:45::i;:::-;22270:534;;;22545:38;22563:7;22572:10;22545:38;;:17;:38::i;:::-;22495:33;;;22335:248;22451:26;;;22335:248;22401:32;;;22335:248;22353:30;;;22335:248;22270:534;;;22647:1;22614:30;;;:34;;;22662:32;;;:36;;;22712:26;;;:30;;;22756:33;;;:37;22270:534;-1:-1:-1;;22843:1:67;22814:26;;;:30;;;22854:46;;;:50;;;22914:30;;;:34;;;22958;;;;:38;;;;-1:-1:-1;21924:1079:67:o;21197:1311:29:-;21423:14;21439:36;;:::i;:::-;21491:32;:14;:30;:32::i;:::-;21487:1015;;;21599:10;21564:45;;:14;:31;;;:45;;;21539:130;;;;-1:-1:-1;;;21539:130:29;;;;;;;:::i;:::-;21821:31;;;;21870:29;;21740:197;;-1:-1:-1;;;21740:197:29;;21683:17;;21740:13;;:38;;:197;;21796:7;;21821:31;;21917:6;;;;21740:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21714:223;;-1:-1:-1;21714:223:29;-1:-1:-1;21951:125:29;;;;22039:22;;;;;-1:-1:-1;;;22012:49:29;-1:-1:-1;;;;;;21987:74:29;;;21951:125;21487:1015;;;;22331:160;;-1:-1:-1;;;22331:160:29;;:13;;:37;;:160;;22386:7;;22411:10;;22439:14;;22471:6;;;;22331:160;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22331:160:29;;;;;;;;;;;;:::i;:::-;22303:188;-1:-1:-1;22303:188:29;-1:-1:-1;21487:1015:29;21197:1311;;;;;;;;;:::o;1427:120:94:-;1516:5;;;1511:16;;;;1483:8;1532:6;;;1511:28;1503:37;;;;;;1427:120;;;;:::o;1553:90::-;1599:8;1626:10;-1:-1:-1;;1634:1:94;1626:3;:10::i;5904:516:76:-;5990:26;;:::i;:::-;6033:11;6046:27;6075:29;6120:33;6142:10;6120:21;:33::i;:::-;6183:230;;;;;;;;-1:-1:-1;;;;;6183:230:76;;;;;;;;;;;;6370:27;;:2;:27;6183:230;;;;;;;;-1:-1:-1;;;;5904:516:76;;;:::o;1133:136:69:-;1204:12;;:::i;:::-;1235:27;1245:10;1257:4;1235:9;:27::i;882:468:76:-;1010:6;1155:24;1182:126;1286:2;:21;;;1182:86;658:4;1182:38;1207:12;1182:2;:7;;;:24;;:38;;;;:::i;:::-;:55;;:86::i;:126::-;1155:153;882:468;-1:-1:-1;;;;882:468:76:o;13720:789:69:-;13805:6;429:3:60;13827:5:69;:14;;;:52;13823:71;;;-1:-1:-1;13888:6:69;13881:13;;13823:71;14436:66;429:3:60;14436:26:69;14447:5;:14;;;14436:6;:10;;:26;;;;:::i;4547:1694:67:-;4711:6;4733:29;4729:43;;-1:-1:-1;4771:1:67;4764:8;;4729:43;4817:1;4790:24;:28;4782:37;;;;;;4872:28;4903:56;4935:12;:23;;;4903:56;;:31;:56::i;:::-;4872:87;-1:-1:-1;5098:15:67;5069;:25;;;:44;;;;;;;;;5065:326;;;5213:9;5184:24;5176:46;5168:70;;;;-1:-1:-1;;;5168:70:67;;;;;;;:::i;:::-;5065:326;;;5330:23;;5296:84;;:15;;5321:7;;5296:84;;5355:24;5296;:84::i;:::-;5269:111;;5065:326;5401:23;5427:51;5454:12;:23;;;5427:51;;:26;:51::i;:::-;5401:77;;5488:43;5546:85;5562:12;:23;;;5587:43;5605:24;5587:17;:43::i;:::-;5546:10;;:85;:15;:85::i;:::-;5488:143;-1:-1:-1;5932:34:67;5981:66;:10;5488:143;5981:28;:66::i;:::-;6130:26;;;;5932:115;;-1:-1:-1;6130:59:67;;5932:115;6130:30;:59::i;:::-;6101:26;;;:88;6207:27;-1:-1:-1;;;;4547:1694:67;;;;;:::o;995:132:69:-;1061:12;;:::i;:::-;1092:28;1102:10;1114:5;1092:9;:28::i;1860:2448:67:-;2042:26;2084:24;2080:38;;-1:-1:-1;2117:1:67;2110:8;;2080:38;2158:1;2136:19;:23;2128:32;;;;;;2214:18;2235:51;2262:12;:23;;;2235:51;;:26;:51::i;:::-;2214:72;-1:-1:-1;2319:16:67;2300:5;:15;;;:35;;;;;;;;;2296:289;;;2500:23;;2440:134;;;;2541:19;2440:42;:134::i;:::-;2418:156;;2296:289;2683:5;:20;;;:37;;;;2707:13;2683:37;2679:1623;;;3080:23;;3013:40;;3056:69;;:5;;3071:7;;3056:69;;3105:19;3056:14;:69::i;:::-;3013:112;-1:-1:-1;3361:58:67;:5;3013:112;3361:23;:58::i;:::-;3502:26;;;;3339:80;;-1:-1:-1;3502:51:67;;3339:80;3502:30;:51::i;:::-;3473:26;;;:80;-1:-1:-1;3568:26:67;;-1:-1:-1;3568:26:67;2679:1623;3647:44;:5;3671:19;3647:23;:44::i;:::-;4065:63;;;;3625:66;;-1:-1:-1;4065:105:67;;3625:66;4065:84;:105::i;:::-;4016:46;;;:154;-1:-1:-1;1860:2448:67;;;;;;:::o;6510:3605::-;6698:29;6739:15;6801:1;6768:12;:30;;;:34;6764:289;;;6997:1;6843:150;6962:12;:30;;;6843:93;6901:12;:34;;;6843:12;:32;;;:57;;:93;;;;:::i;:::-;:118;;:150::i;:::-;:155;;6818:224;;;;-1:-1:-1;;;6818:224:67;;;;;;;:::i;:::-;7116:1;7067:12;:46;;;:50;7063:309;;;7318:1;7158:156;7267:12;:46;;;7158:83;7214:12;:26;;;7158:12;:30;;;:55;;:83;;;;:::i;:156::-;:161;;7133:228;;;;-1:-1:-1;;;7133:228:67;;;;;;;:::i;:::-;7693:61;7712:12;7726:7;7735:18;7693;:61::i;:::-;7634:46;;;7584:170;;;7842:26;;;;7584:170;;-1:-1:-1;7817:22:67;;7842:78;;:30;:78::i;:::-;7817:103;-1:-1:-1;7935:20:67;;7931:324;;8004:30;;;;:51;;8039:15;8004:34;:51::i;:::-;7971:30;;;:84;8173:23;;8106:138;;8082:4;;-1:-1:-1;8106:138:67;;;;;-1:-1:-1;;;;;8106:138:67;;;;;;;8215:15;;8106:138;:::i;:::-;;;;;;;;7931:324;8269:30;;;;:35;;;:78;;-1:-1:-1;8308:34:67;;;;:39;;8269:78;8265:920;;;8447:25;8475:142;8582:12;:34;;;8475:85;8529:12;:30;;;8475:12;:32;;;:53;;:85;;;;:::i;:142::-;8447:170;;8725:78;8752:12;8766:7;8775:27;:18;:25;:27::i;:::-;8725:26;:78::i;:::-;-1:-1:-1;8818:32:67;;;:53;;;8890:34;;;;:39;8886:257;;9030:12;:23;;;8954:174;;8994:7;-1:-1:-1;;;;;8954:174:67;;9076:12;:34;;;8954:174;;;;;;:::i;:::-;;;;;;;;8886:257;9170:4;9157:17;;8265:920;;9199:10;9195:332;;;9225:291;9261:7;9286:12;:23;;;9225:291;;9327:12;:30;;;9375:12;:32;;;9425:12;:26;;;9469:12;:33;;;9225:18;:291::i;:::-;9583:23;;9693:30;;;;9537:284;;;;;9693:35;;;:76;;-1:-1:-1;9732:32:67;;;;:37;;9693:76;9537:14;;:284;-1:-1:-1;;;9537:32:67;:284::i;:::-;9869:1;9836:12;:30;;;:34;9832:277;;;10050:22;;;;;-1:-1:-1;;;10050:48:67;-1:-1:-1;;;;;;10025:73:67;;;9832:277;6510:3605;;;;;;;;:::o;1117:152:66:-;1226:31;;;:36;;;;;1117:152::o;9863:2352::-;10240:12;;;;10344:35;:14;10371:7;10344:26;:35::i;:::-;10389:46;;;;;10239:140;;-1:-1:-1;10239:140:66;;-1:-1:-1;10239:140:66;-1:-1:-1;10239:140:66;-1:-1:-1;10453:32:66;10389:14;10453:16;:32::i;:::-;:41;10445:50;;;;;;10541;;;:31;;;:50;10772:13;10767:141;;2023:1:60;10809:60:66;;;;;10801:69;;;;;;11059:7;11055:263;;;11107:22;;;;;-1:-1:-1;;;11107:49:66;-1:-1:-1;;;;;;11082:74:66;;;11055:263;;;11257:22;;;;;-1:-1:-1;;;11232:75:66;;;11055:263;11460:59;11487:14;:31;;;11460:26;:59::i;:::-;-1:-1:-1;;;;;;11426:93:66;:31;;;:93;11530:20;11560:649;11567:24;;11560:649;;11902:35;;;;11955:26;;;11951:147;;12001:82;12019:14;12035:10;12047:4;-1:-1:-1;;;12001:17:66;:82::i;:::-;12196:2;12173:25;;;;;12126:10;-1:-1:-1;11560:649:66;;;9863:2352;;;;;;;;;:::o;837:274::-;938:48;989:30;:28;:30::i;:::-;-1:-1:-1;;;;;1029:14:66;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;;;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;1029:31:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:29;938:81;;-1:-1:-1;1029:14:66;;1075:29;;1029:14;1075:29;837:274;;;:::o;15550:1696:29:-;15749:26;15778:38;15795:20;15778:16;:38::i;:::-;15749:67;;15826:26;15893:1;15870:19;:24;;15862:33;;;;;;15925:22;15910:11;:37;;;;;;;;;15906:1176;;;15963:7;;;;15906:1176;16018:30;16003:11;:45;;;;;;;;;:119;;;-1:-1:-1;16079:43:29;16064:11;:58;;;;;;;;;16003:119;15986:1096;;;16355:150;:12;16403:7;16428:19;16465:5;16355:30;:150::i;:::-;16333:172;;15986:1096;;;16554:35;16539:11;:50;;;;;;;;;:129;;;-1:-1:-1;16620:48:29;16605:11;:63;;;;;;;;;16539:129;16522:560;;;16794:65;:12;16830:7;16839:19;16794:35;:65::i;16522:560::-;16895:37;16880:11;:52;;;;;;;;;16876:206;;;-1:-1:-1;17052:19:29;16876:206;17092:147;17126:12;17152:11;17177:19;17210;17092:20;:147::i;15550:1696::-;;;;;:::o;19359:1376::-;19663:21;19687:49;19704:31;19687:16;:49::i;:::-;19663:73;;19772:1;19754:14;:19;;19746:28;;;;;;19934:25;19930:543;;;20178:148;20279:12;:46;;;20178:79;20230:12;:26;;;20178:12;:30;;;:51;;:79;;;;:::i;:148::-;20161:165;;20441:1;20424:14;:18;20420:42;;;-1:-1:-1;20461:1:29;20420:42;20559:59;;;;:92;;20636:14;20559:76;:92::i;:::-;20510:46;;;:141;20662:66;20510:12;20684:7;20693:14;20709:18;20662:21;:66::i;:::-;;19359:1376;;;;;;;:::o;728:737:81:-;836:17;867:35;916:27;957:22;993:17;1035:47;1085:36;:34;:36::i;:::-;-1:-1:-1;;;;;1163:19:81;;;1131:29;1163:19;;;;;;;;-1:-1:-1;;1163:19:81;;;;1206:18;;;;;1264:35;;;;;;;-1:-1:-1;;;;1331:27:81;;;;-1:-1:-1;1387:24:81;-1:-1:-1;;;1387:24:81;;;;-1:-1:-1;;;;1434:24:81;;;;;;-1:-1:-1;728:737:81:o;22646:556:29:-;22956:1;22929:23;:28;;:223;;;;;23129:23;22977:148;23078:12;:46;;;22977:79;23029:12;:26;;;22977:12;:30;;;:51;;:79;;;;:::i;:148::-;:175;;22929:223;22908:287;;;;-1:-1:-1;;;22908:287:29;;;;;;;:::i;552:219:66:-;619:21;;:::i;:::-;652:48;703:30;:28;:30::i;:::-;-1:-1:-1;;;;;750:14:66;;;;;;;;;;;;;;;;;743:21;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;-1:-1:-1;;;;;;743:21:66;;;;;-1:-1:-1;743:21:66;;552:219;-1:-1:-1;552:219:66:o;3020:732::-;3107:4;3143:15;3173:31;3189:14;3173:15;:31::i;:::-;3169:577;;;3389:31;3410:9;3389:20;:31::i;:::-;3357:29;;:63;;;;-1:-1:-1;3350:70:66;;-1:-1:-1;3350:70:66;3169:577;3660:29;;3656:33;;;;;;:79;;-1:-1:-1;3693:29:66;;:42;;-1:-1:-1;3693:42:66;;-1:-1:-1;3649:86:66;;14791:385:84;14907:23;14946:30;14979:42;14995:7;15004:16;14979:15;:42::i;:::-;14946:75;;15099:1;15082:6;:13;:18;15078:37;;15109:6;-1:-1:-1;15102:13:84;;15078:37;15126:20;15139:6;15126:12;:20::i;3996:817:66:-;4129:4;4157:15;;;;;:57;;-1:-1:-1;5408:6:60;4176:38:66;;;4157:57;4149:66;;;;;;4274:31;;;;4320;;;;:45;;;;4316:62;;;4374:4;4367:11;;;;;4316:62;-1:-1:-1;;;;;;4396:18:66;;;4389:395;;4472:22;4444:51;;;5408:6:60;4444:51:66;4513:17;;;4509:221;;;-1:-1:-1;;;;4634:49:66;;;:81;;-1:-1:-1;4627:88:66;;4509:221;-1:-1:-1;4771:2:66;4757:16;-1:-1:-1;;;;;;4757:16:66;4389:395;;;-1:-1:-1;4801:5:66;;3996:817;-1:-1:-1;;;3996:817:66:o;20724:1018:67:-;20848:18;20880:20;20914:21;20949:28;21002:68;21073:30;:28;:30::i;:::-;-1:-1:-1;;;;;21153:14:67;;21113:37;21153:14;;;;;;;;;;;:26;;;;;;;;21206:28;;;;;;-1:-1:-1;;;;21260:28:67;;;;;-1:-1:-1;21153:14:67;;-1:-1:-1;21302:17:67;;21298:388;;21550:35;;21517:69;;-1:-1:-1;;;21550:35:67;;;;21517:32;:69::i;:::-;21494:92;;21298:388;;;21640:35;;-1:-1:-1;;;21640:35:67;;;;;-1:-1:-1;21298:388:67;21709:26;-1:-1:-1;;;21709:26:67;;;;;;21695:40;;;20724:1018;;-1:-1:-1;20724:1018:67;;-1:-1:-1;20724:1018:67;-1:-1:-1;;20724:1018:67:o;398:190:94:-;478:5;;;-1:-1:-1;;497:7:94;;493:88;;;515:6;;;:20;;;534:1;529;525;:5;;;;;;:10;515:20;506:30;;;;;;493:88;;;560:6;;;:20;;;579:1;574;570;:5;;;;;;:10;560:20;551:30;;;;;4424:809:76;4521:6;4541:16;4571:5;4602:27;4631:29;4664:32;4685:10;4664:20;:32::i;:::-;4601:95;;-1:-1:-1;4601:95:76;-1:-1:-1;4707:11:76;-1:-1:-1;;;;;4732:33:76;;4728:438;;-1:-1:-1;5019:1:76;;-1:-1:-1;658:4:76;4728:438;;;5058:10;-1:-1:-1;;;;;5058:34:76;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5051:43;;5123:1;5116:4;:8;5108:17;;;;;;5184:4;5190:10;;-1:-1:-1;5190:10:76;-1:-1:-1;4424:809:76;-1:-1:-1;;4424:809:76:o;1438:691:69:-;1516:12;;:::i;:::-;1540:63;1606:28;:26;:28::i;:::-;1644:33;1680:17;;;;;;;;;;;:29;;;;;;;;;;;1739:383;;;;;;;1777:25;;-1:-1:-1;;;;;1777:25:69;;1739:383;;1836:27;-1:-1:-1;;;1836:27:69;;;;1739:383;;;;;;;;;-1:-1:-1;;;1956:26:69;;;;1952:2;:30;1739:383;;;;;;;1540:94;;-1:-1:-1;1680:29:69;1739:383;;;;;-1:-1:-1;;;2012:22:69;;;;1739:383;;;;;;;;;;2074:33;;-1:-1:-1;;;2074:33:69;;;;1739:383;;;;;;;;;1438:691;-1:-1:-1;;;;1438:691:69:o;1022:239:94:-;1078:8;1108:1;-1:-1:-1;;1108:7:94;:27;;;;;-1:-1:-1;;;1119:1:94;:16;1108:27;1106:30;1098:39;;;;;;1253:1;1249;:5;;;;;;;1022:239;-1:-1:-1;;;1022:239:94:o;9098:1841:69:-;9524:19;9577:16;9558:5;:15;;;:35;;;;;;;;;9554:484;;;9609:28;9640:30;9659:10;9640:18;:30::i;:::-;9609:61;;9886:141;9948:15;:28;;;9994:19;9886:44;:141::i;:::-;9864:163;;9554:484;;10074:1;10052:19;:23;10048:885;;;10147:17;10167:54;10176:5;10183:7;10200:19;10167:8;:54::i;:::-;10147:74;;10386:5;:20;;;10382:61;;;10433:10;10408:35;;10382:61;10048:885;;;;10483:15;10464:5;:15;;;:34;;;;;;;;;10460:473;;;10592:80;10628:7;10645:25;:19;:23;:25::i;:::-;10592:35;:80::i;:::-;10460:473;;;10749:18;;10703:219;;10785:7;10882:25;:19;:23;:25::i;:::-;10703:28;:219::i;2397:117:94:-;2446:7;2478:1;2473;:6;;2465:15;;;;;;-1:-1:-1;2505:1:94;2397:117::o;5788:1549:69:-;5898:6;;6273:16;6249:10;:20;;;:40;;;;;;;;;:142;;-1:-1:-1;;;6249:142:69;;;-1:-1:-1;;;6249:142:69;6222:169;;6410:23;6436:95;6473:10;:23;;;6506:4;6513:17;6436:36;:95::i;:::-;6410:121;-1:-1:-1;6570:16:69;6546:10;:20;;;:40;;;;;;;;;6542:517;;;6602:28;6633:30;6652:10;6633:30;;:18;:30::i;:::-;6602:61;;6677:59;6694:15;6711:24;6677:16;:59::i;:::-;6542:517;;;;6781:16;6757:10;:20;;;:40;;;;;;;;;6753:306;;;6813:58;6834:10;6846:24;6813:20;:58::i;6753:306::-;6916:14;6892:10;:20;;;:38;;;;;;;;;6888:171;;;6946:36;6971:10;6946:24;:36::i;:::-;7069:21;7093:95;7130:10;:23;;;7163:4;7170:17;7093:36;:95::i;:::-;7069:119;-1:-1:-1;7278:52:69;7295:34;7069:119;7313:15;7295:17;:34::i;:::-;7278:16;:52::i;:::-;7271:59;5788:1549;-1:-1:-1;;;;;;;5788:1549:69:o;12920:794::-;13005:6;429:3:60;13557:5:69;:14;;;:52;13553:71;;;-1:-1:-1;13618:6:69;13611:13;;13553:71;13692:14;;;;13641:66;;:46;:6;429:3:60;13641:10:69;:46::i;3253:821:70:-;3364:6;3386:24;3382:38;;-1:-1:-1;3419:1:70;3412:8;;3382:38;3460:1;3438:19;:23;3430:32;;;;;;3473:28;3504:43;3536:10;3504:31;:43::i;:::-;3473:74;;3609:12;3624:57;3652:15;:28;;;3624:27;:57::i;:::-;3609:72;-1:-1:-1;3800:1:70;3792:9;;457:4;-1:-1:-1;;;;;3916:28:70;;;3915:36;3892:19;:59;;3884:68;;;;;;4062:5;4049:9;457:4;4021:19;:25;:37;4020:47;;;;;;;3253:821;-1:-1:-1;;;;;;3253:821:70:o;10254:2383:67:-;10405:35;10442:34;10488:23;10514:51;10541:12;:23;;;10514:51;;:26;:51::i;:::-;10488:77;;10785:34;10834:76;10863:12;:46;;;10834:10;:28;;:76;;;;:::i;:::-;10785:125;-1:-1:-1;10925:32:67;10921:1710;;10981:1;10984;10973:13;;;;;;;;10921:1710;11007:18;:53;;;;;11059:1;11029:27;:31;11007:53;11003:1628;;;11694:23;;11659:203;;;;11735:7;11814:33;:27;:31;:33::i;:::-;11659:10;;:203;;:17;:203::i;:::-;11628:234;-1:-1:-1;12068:57:67;:10;12097:27;12068:28;:57::i;:::-;12038:87;;11003:1628;;;12412:23;;12383:82;;:10;;12403:7;;12383:82;;12437:27;12383:19;:82::i;:::-;12352:113;-1:-1:-1;12562:58:67;:10;12352:113;12562:28;:58::i;:::-;12532:88;;11003:1628;10254:2383;;;;;;;;;:::o;4318:1852:68:-;4603:23;;4470:25;;4527:15;;4470:25;;4575:52;;;;:27;:52::i;:::-;4552:75;;4795:32;4830:138;4875:12;4901;:34;;;4949:9;4830:31;:138::i;:::-;4795:173;;4999:158;5039:12;5065;5091:24;5129:18;4999:26;:158::i;:::-;4979:178;;5234:18;5255:48;5290:12;5255:34;:48::i;:::-;5234:69;-1:-1:-1;;;;;;5317:31:68;;;5313:755;;5364:8;-1:-1:-1;;;;;5364:21:68;;5403:7;5621:41;:12;:32;;;:39;:41::i;:::-;5680:18;5974:12;:34;;;6026:17;5364:693;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5313:755;6082:21;;6078:85;;6105:58;6136:7;6145:17;6105:30;:58::i;:::-;4318:1852;;;;;;;;;:::o;19219:1409:67:-;19451:68;19522:30;:28;:30::i;:::-;-1:-1:-1;;;;;19602:14:67;;19562:37;19602:14;;;;;;;;;;;:26;;;;;;;;19451:101;;-1:-1:-1;;;19647:30:67;;;;;:64;;-1:-1:-1;19696:15:67;19681:30;;;19647:64;19639:73;;;;;;19868:1;19851:13;:18;;:55;;;;-1:-1:-1;19890:16:67;19873:33;;;19851:55;19843:64;;;;;;20044:18;;20036:27;;;;;;20302:16;20278:40;;;20270:49;;;;;;20374:52;;20555:66;;;;-1:-1:-1;;;20555:66:67;-1:-1:-1;;;;20436:28:67;20498:47;;;;;;-1:-1:-1;;;20498:47:67;-1:-1:-1;;;;;20436:52:67;;;;-1:-1:-1;;;20436:52:67;-1:-1:-1;;;;20374:52:67;;;;-1:-1:-1;;20374:52:67;;;;;;;20436;;;;;;;;20498:47;;;;;;;;20555:66;;;;;;;;;;;-1:-1:-1;;;19219:1409:67:o;5247:3666:66:-;5435:10;5431:1;:14;:56;;;;-1:-1:-1;5408:6:60;5449:38:66;;;5431:56;5423:65;;;;;;5707:8;:57;;;;;5754:10;5719:14;:31;;;:45;;;5707:57;5703:70;;;5766:7;;5703:70;5824:31;;;;5783:14;;;6684:1857;-1:-1:-1;;;;;;6691:14:66;;;6684:1857;;6767:22;6743:47;;;5408:6:60;6743:47:66;6877:17;;;:29;;;;;6898:8;6877:29;6873:272;;;-1:-1:-1;7019:31:66;;;;;-1:-1:-1;;;;;;7074:14:66;;7102:2;7093:11;;;7074:31;;;;7019:87;;;;-1:-1:-1;;;;;;6965:141:66;;;-1:-1:-1;7124:7:66;;-1:-1:-1;7124:7:66;6873:272;7239:10;7232:3;:17;:30;;;;;7254:8;7253:9;7232:30;7228:375;;;-1:-1:-1;;;;;;7369:14:66;;7368:15;7359:24;;;;;-1:-1:-1;;;7405:50:66;;7401:77;;7476:2;7466:6;-1:-1:-1;;;;;7466:12:66;;;;7457:21;;7401:77;-1:-1:-1;;;;;;;7540:23:66;;;7560:2;7551:11;;;7540:23;7530:34;;;;7496:68;:31;;;:68;7582:7;;7228:375;7695:10;7689:3;:16;:28;;;;;7709:8;7689:28;7685:575;;;8046:3;8011:31;;;;-1:-1:-1;;;;;;7764:26:66;;;;:34;;7756:43;;7813:2;7804:11;;7756:60;7746:71;;;;;8011:38;;;8010:48;8002:57;;;;;;-1:-1:-1;;;;;;;8191:29:66;;;8212:1;8203:10;;;;8217:2;8202:17;8191:29;8181:40;;;;8147:74;:31;;;:74;8239:7;;7685:575;8364:10;8358:3;:16;:29;;;;;8379:8;8378:9;8358:29;8354:42;;;8389:7;;;;;;8354:42;-1:-1:-1;;;;;;;8429:23:66;;8466:2;8457:11;;;8429:40;;;;8419:51;;;;;8493:12;;;;-1:-1:-1;;;;;;8493:12:66;;8529:1;8519:11;6684:1857;;;8616:8;8611:22;;8626:7;;;;;8611:22;8733:1;8724:6;:10;8716:19;;;;;;-1:-1:-1;;;;;;8853:26:66;;;;:34;;8845:43;8902:2;8893:11;;;8845:60;8823:83;;;;-1:-1:-1;;;;;;8777:129:66;:31;;;:129;-1:-1:-1;5247:3666:66;;;;:::o;6460:4123:84:-;6583:4;;;;;;;;7195:574;7219:27;;:34;7215:38;;7195:574;;;7274:27;7304:14;:27;;;7332:1;7304:30;;;;;;;;;;;;;;7274:60;;7517:32;7495:54;;;;;;;;:5;:18;;;:54;;;;;;;;;;7487:63;;;;;;7647:24;7625:5;:18;;;:46;;;;;;;;;;:69;;;;-1:-1:-1;7675:14:84;;;;:19;7625:69;7621:138;;;7714:30;7726:14;7742:1;7714:11;:30::i;:::-;-1:-1:-1;7255:3:84;;7195:574;;;;7868:9;7863:1217;7887:27;;:34;7883:38;;7863:1217;;;7942:27;7972:14;:27;;;8000:1;7972:30;;;;;;;;;;;;;;7942:60;;8043:24;8021:46;;;;;;;;:5;:18;;;:46;;;;;;;;;8017:1053;;;8154:17;;;;8132:19;8220:25;;8198:65;;;8327:24;8305:5;:18;;;:46;;;;;;;;;8301:361;;;8461:17;;;;;8611:32;8461:5;:17;8611:11;:32::i;:::-;8301:361;;;8875:180;8920:5;8947:7;8976:25;9023:14;8875:23;:180::i;:::-;8820:235;;-1:-1:-1;8820:235:84;-1:-1:-1;8820:235:84;-1:-1:-1;8017:1053:84;-1:-1:-1;7923:3:84;;7863:1217;;;-1:-1:-1;9145:32:84;;;;9116:26;9280:37;:35;:37::i;:::-;-1:-1:-1;;;;;9394:14:84;;9327:64;9394:14;;;;;;;;;;9187:130;;-1:-1:-1;9418:735:84;9442:14;:24;;;:31;9438:1;:35;9418:735;;;9494:27;9524:14;:24;;;9549:1;9524:27;;;;;;;;;;;;;;9494:57;;9569:5;:14;;;9587:1;9569:19;9565:33;;;9590:8;;;9565:33;9659:24;9637:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;9725:32:84;9703:5;:18;;;:54;;;;;;;;;;9637:120;9612:159;;;;;;9878:160;9919:5;9942:7;9967:25;10010:14;9878:23;:160::i;:::-;9823:215;;-1:-1:-1;9823:215:84;-1:-1:-1;9823:215:84;-1:-1:-1;10053:52:84;10065:5;10072:12;10085:18;10072:32;;;;;;;;10053:11;:52::i;:::-;10141:1;10119:23;;;;9418:735;;9475:3;;9418:735;;;;10333:2;10311:18;:24;;:62;;;;-1:-1:-1;10357:16:84;10339:34;;;10311:62;10303:71;;;;;;-1:-1:-1;10445:7:84;;10466:25;;-1:-1:-1;10466:25:84;-1:-1:-1;10511:18:84;-1:-1:-1;6460:4123:84;-1:-1:-1;;;;6460:4123:84:o;8919:751:66:-;9004:7;;9150:24;9131:43;;9004:7;9302:338;-1:-1:-1;;;;;;9309:14:66;;;9302:338;;-1:-1:-1;;;9343:45:66;;;:77;9339:256;;;-1:-1:-1;;;;;;9516:23:66;;:33;;9506:44;;;;;9578:2;9568:12;9339:256;9627:2;9617:6;-1:-1:-1;;;;;9617:12:66;;;;9608:21;;9302:338;;;-1:-1:-1;9657:6:66;;8919:751;-1:-1:-1;;;8919:751:66:o;1879:229:62:-;1940:48;2005:12;2020:41;2036:24;2020:15;:41::i;2520:163:94:-;2569:6;-1:-1:-1;;;;;2596:1:94;:30;;2587:40;;;;;17289:2001:29;17601:43;17586:11;:58;;;;;;;;;:137;;;-1:-1:-1;17675:48:29;17660:11;:63;;;;;;;;;17586:137;:205;;;-1:-1:-1;17754:37:29;17739:11;:52;;;;;;;;;17586:205;17569:1715;;;17908:55;17929:12;17943:19;17908:20;:55::i;:::-;18006:26;;;;:51;;18037:19;18006:30;:51::i;:::-;17977:26;;;:80;18235:23;;18190:119;;-1:-1:-1;;;18190:119:29;;18168:19;;18190:16;;:27;;:119;;18276:19;;18190:119;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18361:34;;;;18168:141;;-1:-1:-1;18361:82:29;;18168:141;18361:38;:82::i;:::-;18324:34;;;:119;-1:-1:-1;17569:1715:29;;;18479:30;18464:11;:45;;;;;;;;;18460:824;;;18803:19;18585:214;18764:12;:34;;;18585:110;18664:12;:30;;;18585:12;:53;;;:78;;:110;;;;:::i;:214::-;:237;;18525:357;;;;-1:-1:-1;;;18525:357:29;;;;;;;:::i;:::-;18934:34;;;;:89;;18990:19;18934:38;:89::i;:::-;18897:34;;;:126;19114:23;;19057:131;;-1:-1:-1;;;19057:131:29;;19038:16;;19057:18;;:39;;:131;;19155:19;;19057:131;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19232:26;;;;19038:150;;-1:-1:-1;19232:41:29;;19038:150;19232:30;:41::i;:::-;19203:26;;;:70;-1:-1:-1;17289:2001:29;;;;:::o;1267:154:94:-;1390:5;;;1385:16;;;;1323:8;1406:6;;;1385:28;1377:37;;;;;2175:232:62;2241:47;2305:12;2320:40;2336:23;2320:15;:40::i;583:160:78:-;641:7;2399:5:60;668:4:78;:21;;660:30;;;;;;-1:-1:-1;2399:5:60;715:20:78;;707:29;;;583:160::o;16756:1107:84:-;16858:23;588:2;16955:6;:30;;;;16947:39;;;;;;16997:90;17090:37;:35;:37::i;:::-;-1:-1:-1;;;;;17204:14:84;;17137:64;17204:14;;;;;;;;;;16997:130;;-1:-1:-1;17261:28:84;;;-1:-1:-1;;;;;17261:28:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;17228:61;;17305:9;17300:533;17324:6;17320:10;;:1;:10;17300:533;;;17351:42;17396:12;17409:1;17396:15;;;;;;;;17351:60;;17425:27;17455:6;17462:1;17455:9;;;;;;;;;;;;;;;;;;;17603:23;;;;;17584:42;;17657:21;;;;;17640:14;;;:38;;;;17710:22;-1:-1:-1;;;17710:22:84;;;17692:15;;;:40;-1:-1:-1;;;17763:21:84;;;;;;;17746:38;;:14;;;:38;17798:17;;:24;;;;-1:-1:-1;17603:23:84;17332:3;17300:533;;;-1:-1:-1;17850:6:84;16756:1107;-1:-1:-1;;;;;16756:1107:84:o;15921:829::-;16015:13;;15998:14;16015:13;-1:-1:-1;;;;;16061:21:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16061:21:84;;16038:44;;16097:9;16092:257;16112:6;16108:1;:10;16092:257;;;16139:27;16169:6;16176:1;16169:9;;;;;;;;;;;;;;16139:39;;16259:79;16288:5;:16;;;16306:5;:14;;;16322:5;:15;;;16259:28;:79::i;:::-;16250:3;16254:1;16250:6;;;;;;;;;;;;;;;;;:88;-1:-1:-1;16120:3:84;;16092:257;;;-1:-1:-1;16403:1:84;16414:330;16425:6;16421:1;:10;16414:330;;;16459:1;16474:243;16485:1;16481;:5;:28;;;;;16503:3;16507:1;16503:6;;;;;;;;;;;;;;16490:3;16498:1;16494;:5;16490:10;;;;;;;;;;;;;;:19;16481:28;16474:243;;;16589:3;16593:1;16589:6;;;;;;;;;;;;;;16597:3;16605:1;16601;:5;16597:10;;;;;;;;;;;;;;16566:3;16574:1;16570;:5;16566:10;;;;;;;;;;;;;16578:3;16582:1;16578:6;;;;;;;;;;;;;16565:43;;;;;;;;;;16656:6;16663:1;16656:9;;;;;;;;;;;;;;16667:6;16678:1;16674;:5;16667:13;;;;;;;;;;;;;;16627:6;16638:1;16634;:5;16627:13;;;;;;;;;;;;;16642:6;16649:1;16642:9;;;;;;;;;;;;;;;;;16626:55;;;;;-1:-1:-1;;16699:3:84;16474:243;;;-1:-1:-1;16730:3:84;;16414:330;;3638:240:62;3698:68;3782:12;3797:34;3813:17;3797:15;:34::i;1180:245:93:-;1403:1;1394:10;;;1354:21;;;;1393:24;;1180:245::o;2832:435:76:-;2928:27;2957:29;3002:50;3055:32;:30;:32::i;:::-;3097:27;3127:17;;;;;-1:-1:-1;;3127:17:76;;;;3184:13;-1:-1:-1;;;;;3184:13:76;;;-1:-1:-1;;;3234:26:76;;;;;;-1:-1:-1;2832:435:76:o;3993:231:62:-;4051:63;4130:12;4145:32;4161:15;4145;:32::i;4999:989:70:-;5122:25;5163:29;5159:43;;-1:-1:-1;5201:1:70;5194:8;;5159:43;5265:12;5280:44;5308:15;5280:27;:44::i;:::-;5265:59;;5443:10;5456:30;:24;:28;:30::i;:::-;5443:43;-1:-1:-1;5841:5:70;-1:-1:-1;;;;;5841:5:70;5810:36;;;;;5803:3;:43;;5795:52;;;;;;457:4;502:7;5877:11;;;:21;5876:29;5857:16;5923:28;;:58;;5966:15;:9;:13;:15::i;:::-;5923:58;;;5954:9;5923:58;5916:65;4999:989;-1:-1:-1;;;;;;4999:989:70:o;11159:1755:69:-;11277:6;;;;11405:16;11386:5;:15;;;:35;;;;;;;;;:137;;-1:-1:-1;;;11386:137:69;;;-1:-1:-1;;;11386:137:69;11359:164;;11538:5;:20;;;11534:159;;;11629:18;;11592:90;;11657:4;11664:17;11592:36;:90::i;:::-;11574:108;;11534:159;11731:18;;11703:64;;11751:7;11760:6;11703:27;:64::i;:::-;11782:5;:20;;;:54;;;;11835:1;11806:5;:26;;;:30;11782:54;11778:500;;;12214:18;;12177:90;;12242:4;12249:17;12177:36;:90::i;:::-;12161:106;;11778:500;12292:26;;;;:30;12288:354;;12338:31;12372:57;12390:5;12397:31;12414:13;12397:16;:31::i;:::-;12372:17;:57::i;:::-;12338:91;;12550:44;12567:5;:26;;;12550:16;:44::i;:::-;12522:24;:72;;12514:81;;;;;;12288:354;;12740:5;:20;;;12736:172;;;12783:52;12800:34;:13;12818:15;12800:17;:34::i;12783:52::-;12776:59;;;;;;;12736:172;12873:24;12890:6;12873:16;:24::i;12736:172::-;11159:1755;;;;;;;;:::o;824:343:72:-;1127:33;;-1:-1:-1;;;;;1127:25:72;;;:33;;;;;1153:6;;1127:33;;;;1153:6;1127:25;:33;;;;;;;;;;;;;;;;;;;;;824:343;;:::o;1173:206::-;1313:5;-1:-1:-1;;;;;1295:33:72;;1329:7;1338:6;1295:50;;;;;;;;;;;;;-1:-1:-1;;;;;1295:50:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1355:17;:15;:17::i;454:364::-;679:50;;;-1:-1:-1;;;;;679:50:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;679:50:72;-1:-1:-1;;;;;;679:50:72;;;;;662:68;;;;593:15;;;;;;662:16;;;679:50;;662:68;;;;;;679:50;662:68;;;;;;;;;;-1:-1:-1;;662:68:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;620:110;;;;748:7;740:16;;;;;;789:10;778:33;;;;;;;;;;;;;;;-1:-1:-1;778:33:72;;454:364;-1:-1:-1;;;;;;454:364:72:o;873:584:70:-;1271:27;:25;:27::i;:::-;:39;1332:28;;1271:179;;-1:-1:-1;;;1271:179:70;;-1:-1:-1;;;;;1271:39:70;;;;:47;;:179;;1374:24;;1420:4;;1271:39;;:179;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;671:262:71;757:6;775:15;809:5;:18;;;-1:-1:-1;;;;;793:40:71;;834:24;793:66;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;775:84;-1:-1:-1;877:40:71;;869:57;;;;-1:-1:-1;;;869:57:71;;;;;;;:::i;:::-;671:262;;;;;:::o;513:152::-;614:5;:18;;;-1:-1:-1;;;;;598:40:71;;646:9;598:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3128:155:6;3186:7;3218:1;3213;:6;;3205:49;;;;;-1:-1:-1;;;3205:49:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3271:5:6;;;3128:155::o;6164:259:70:-;6248:6;6285:131;6319:27;:25;:27::i;:::-;:39;:83;;-1:-1:-1;;;6319:83:70;;-1:-1:-1;;;;;6319:39:70;;;;:66;;:83;;6386:15;;6319:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7923:1047:69:-;8086:6;;8164:14;8140:10;:20;;;:38;;;;;;;;;8136:679;;;8211:68;8238:10;8250:7;8259:19;8211:26;:68::i;:::-;8194:85;;8136:679;;;8310:28;8341:30;8360:10;8341:18;:30::i;:::-;8310:61;-1:-1:-1;8413:16:69;8389:10;:20;;;:40;;;;;;;;;8385:420;;;8466:65;8485:15;8502:7;8511:19;8466:18;:65::i;:::-;8449:82;;8385:420;;;8580:16;8556:10;:20;;;:40;;;;;;;;;8552:253;;;8633:81;8656:10;8668:15;8685:7;8694:19;8633:22;:81::i;8552:253::-;8136:679;;8925:38;:32;8942:14;8925:16;:32::i;1541:219:81:-;1607:20;1639:41;1683:36;:34;:36::i;:::-;1736:17;;;;;;-1:-1:-1;;1736:17:81;;;;-1:-1:-1;;;;;1736:17:81;;1541:219::o;4730:1491:82:-;4865:7;4898:19;4931:32;5023:59;5058:12;5072:9;5023:34;:59::i;:::-;4884:198;;;;;5129:58;5190:40;:38;:40::i;:::-;-1:-1:-1;;;;;5289:19:82;;5240:46;5289:19;;;;;;;;;;5129:101;;-1:-1:-1;5343:34:82;5350:11;5367:9;5343:23;:34::i;:::-;5319:58;;5625:14;5620:1;:19;;:65;;;;-1:-1:-1;;;;;;5643:42:82;;5620:65;5612:74;;;;;;5728:50;;-1:-1:-1;;5728:50:82;-1:-1:-1;;;;;5728:50:82;;;-1:-1:-1;;;;5959:74:82;-1:-1:-1;;;;;;;;5959:74:82;;;;;;6064:16;6052:28;;6044:37;;;;;;-1:-1:-1;6119:53:82;;;;;-1:-1:-1;;;6119:53:82;-1:-1:-1;;;;;6119:53:82;;;;;;-1:-1:-1;6190:24:82;-1:-1:-1;;4730:1491:82;;;;;:::o;702:3460:68:-;958:26;;;;917:25;;958:30;954:1021;;1239:17;:55;1312:12;1342:41;:12;:32;;;:39;:41::i;:::-;1401:12;:26;;;1584:12;:33;;;1239:392;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1766:1;1737:26;;;:30;;;1927:33;;;:37;1219:412;-1:-1:-1;954:1021:68;2947:254;2982:209;3157:12;:33;;;2982:153;499:4:60;2982:88:68;3045:24;2982:41;:12;:32;;;:39;:41::i;:::-;:62;;:88::i;:::-;:109;;:153::i;:::-;:174;;:209::i;:::-;2947:17;;:21;:254::i;:::-;2927:274;-1:-1:-1;4033:122:68;499:4:60;4033:61:68;:18;4069:24;4033:35;:61::i;:122::-;3997:12;:33;;:158;;;;;702:3460;;;;;;:::o;5133:449:81:-;5208:9;5229:47;5279:36;:34;:36::i;:::-;-1:-1:-1;;;;;5357:19:81;;5325:29;5357:19;;;;;;;;;;5399:28;;5357:19;;-1:-1:-1;5357:19:81;-1:-1:-1;;;5399:28:81;;;;5395:181;;;5450:42;:40;:42::i;:::-;-1:-1:-1;;;;;5450:56:81;;;;;;;;;;;;;;;;;;;-1:-1:-1;5443:63:81;;-1:-1:-1;;5443:63:81;5395:181;5562:1;5537:28;;;;;;14515:183:69;14604:87;336:42:61;14665:7:69;14674:16;14604:28;:87::i;12689:2038:84:-;12803:27;;:34;12795:42;;12787:51;;;;;;12920:1;12885:14;:32;;;:36;12877:45;;;;;;12969:35;13007:14;:27;;;13035:5;13007:34;;;;;;;;;;;;;;12969:72;;13102:24;13072:54;;;;;;;;:13;:26;;;:54;;;;;;;;;;:132;;;;-1:-1:-1;13172:32:84;13142:13;:26;;;:62;;;;;;;;;;13072:132;13051:163;;;;;;13253:32;;;:37;;-1:-1:-1;;13253:37:84;;;-1:-1:-1;;;13531:338:84;13551:27;;:34;13547:38;;13531:338;;;13606:23;13632:14;:27;;;13660:1;13632:30;;;;;;;;;;;;;;13606:56;;13696:13;13680:1;:13;;;:29;:75;;;;-1:-1:-1;13731:24:84;13713:1;:14;;;:42;;;;;;;;;;13680:75;13676:183;;;13791:1;:13;;;13775:29;;13843:1;13822:22;;13676:183;-1:-1:-1;13587:3:84;;13531:338;;;;13892:18;13883:5;:27;13879:236;;;-1:-1:-1;;14060:24:84;14031:26;;;;;:53;14098:7;;13879:236;14328:33;14364:14;:27;;;14392:18;14364:47;;;;;;;;;;;;;;;;;;14524:25;;;;;;14563:23;;;;;14421:175;;;;14633:24;14606;;;;:51;14696:24;14667:26;;:53;;;;-1:-1:-1;;;;;12689:2038:84:o;11592:862::-;11739:16;;11735:20;;;;:68;;-1:-1:-1;11759:16:84;;5408:6:60;-1:-1:-1;11759:44:84;11735:68;11727:77;;;;;;11868:5;:14;;;11864:1;:18;:56;;;;-1:-1:-1;11886:14:84;;;;11904:16;-1:-1:-1;11886:34:84;11864:56;11856:65;;;;;;11982:5;:15;;;11978:1;:19;:77;;;;-1:-1:-1;12001:15:84;;;;4906:1:60;-1:-1:-1;12001:54:84;11978:77;11970:86;;;;;;12127:14;;;;-1:-1:-1;;12108:33:84;;;;:70;;-1:-1:-1;12145:14:84;;;;12163:15;-1:-1:-1;12145:33:84;12108:70;12100:79;;;;;;12262:16;;12229:50;;12320:14;;;;12376:15;;;;12432:14;;;;;12402:45;;;;-1:-1:-1;;;12402:45:84;-1:-1:-1;;12345:47:84;;;;-1:-1:-1;;;12345:47:84;-1:-1:-1;;12289:46:84;;;;;;-1:-1:-1;;12229:50:84;;;;-1:-1:-1;;12229:50:84;;;;;;;12289:46;;;;;;;;12345:47;;;;;12402:45;;;;;;;;;;11592:862::o;10664:882::-;10896:4;10914:7;10935;10967:22;10992:25;:5;:23;:25::i;:::-;10967:50;-1:-1:-1;11089:19:84;;;:54;;;11129:14;11112;:31;11089:54;11085:116;;;11176:14;11159:31;;11085:116;11220:7;:29;;;;11248:1;11231:5;:14;;;:18;11220:29;11210:39;-1:-1:-1;11268:47:84;;;;11260:56;;;;;;-1:-1:-1;;11444:16:84;;11488:7;;11429:2;11400:31;;;;11465:3;11436:32;;;;11399:70;;;;;-1:-1:-1;11524:14:84;-1:-1:-1;10664:882:84:o;6020:263:62:-;6087:77;6180:12;6195:41;6211:24;8450:329;8542:12;494:7;8742:9;8734:18;;;;;;;;:38;;8450:329;-1:-1:-1;;8450:329:62:o;883:554:85:-;1016:7;5408:6:60;1043:38:85;;;1035:47;;;;;;1112:16;1100:28;;;1092:37;;;;;;4906:1:60;1147:48:85;;;1139:57;;;;;;-1:-1:-1;1252:42:85;1292:2;1252:42;;;;1319:39;1357:1;1319:39;;;;1251:108;1390:25;;;1251:165;883:554;;;;;:::o;7074:226:62:-;7136:50;7202:12;7217:36;7233:19;7217:15;:36::i;1649:118:94:-;1695:6;1721:1;1717;:5;1713:47;;;1731:6;1735:1;1731:3;:6::i;:::-;1724:13;;;;1713:47;-1:-1:-1;1759:1:94;1752:8;;1385:224:72;1506:69;;;-1:-1:-1;;;1506:69:72;;-1:-1:-1;;;;;1506:69:72;;;;;;;1561:4;1506:69;;;;;;;;;;;;:37;;;;;;:69;;;;;-1:-1:-1;;1506:69:72;;;;;;;;-1:-1:-1;1506:37:72;:69;;;;;;;;;;1615:746;1666:12;1688:24;;:::i;:::-;1752:16;1785:135;;;;1942:2;1937:219;;;;2289:1;2286;2279:12;1785:135;1878:1;1867:12;;1785:135;;1937:219;2043:2;2040:1;2032:6;2017:29;2084:6;2078:13;2067:24;;1745:564;;2337:7;2329:25;;;;;-1:-1:-1;;;2329:25:72;;;;;;;;;;;;-1:-1:-1;;;2329:25:72;;;;;;;;;;;;;;8109:193:62;8158:32;8202:12;8217:38;8233:21;8217:15;:38::i;939:974:71:-;1502:23;;1486:68;;-1:-1:-1;;;1486:68:71;;1078:32;;1436:21;;1078:32;;-1:-1:-1;;;;;1486:47:71;;;;:68;;1534:19;;1486:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1468:86;-1:-1:-1;1572:40:71;;1564:59;;;;-1:-1:-1;;;1564:59:71;;;;;;;:::i;:::-;1658:21;1717:34;1658:21;1735:15;1717:17;:34::i;:::-;1690:61;;1836:70;1872:7;1881:24;1836:35;:70::i;1769:531:70:-;1909:32;1980:144;:135;2026:15;:28;;;2068:37;2085:19;2068:16;:37::i;:::-;1980:32;:135::i;:::-;:142;:144::i;:::-;1953:171;;2134:27;:25;:27::i;:::-;:39;2196:28;;2134:159;;-1:-1:-1;;;2134:159:70;;-1:-1:-1;;;;;2134:39:70;;;;:48;;:159;;2238:24;;2276:7;;2134:159;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1769:531;;;;;:::o;1919:1229:71:-;2487:28;;2092:32;;;;2450:120;;2525:4;-1:-1:-1;;;2450:36:71;:120::i;:::-;2424:146;;2581:15;2615:10;:23;;;-1:-1:-1;;;;;2599:47:71;;2647:19;2599:68;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2581:86;-1:-1:-1;2685:40:71;;2677:59;;;;-1:-1:-1;;;2677:59:71;;;;;;;:::i;:::-;2808:28;;2747:21;;2771:120;;2846:4;-1:-1:-1;;;2771:36:71;:120::i;:::-;2747:144;-1:-1:-1;2929:34:71;2747:144;2947:15;2929:17;:34::i;:::-;2902:61;;3048:93;3077:15;:28;;;3107:7;3116:24;3048:28;:93::i;:::-;1919:1229;;;;;;;;;:::o;2468:225:62:-;2534:41;2591:12;2606:40;2622:23;2606:15;:40::i;1452:1731:82:-;1589:19;1622:32;1668:27;1829:42;1858:12;1829:28;:42::i;:::-;1720:151;;-1:-1:-1;1720:151:82;-1:-1:-1;1720:151:82;-1:-1:-1;2155:31:82;;;:58;;;;;2212:1;2190:19;:23;2155:58;:77;;;;;2231:1;2217:11;:15;2155:77;2151:1026;;;2331:27;2488:44;2519:12;2488:30;:44::i;:::-;2279:253;;;;;;2547:42;2592:367;2726:68;429:3:60;2726:19:82;:23;;:68;;;;:::i;:::-;2897:19;2885:9;:31;2934:11;2592:24;:367::i;:::-;2547:412;-1:-1:-1;3001:64:82;:24;2547:412;3001:28;:64::i;:::-;2974:91;-1:-1:-1;;;;;;3087:44:82;;3079:53;;;;;;2151:1026;;;1452:1731;;;;;:::o;6645:250:62:-;6715:58;6789:12;6804:44;6820:27;6804:15;:44::i;3530:215:6:-;3588:7;3611:6;3607:20;;-1:-1:-1;3626:1:6;3619:8;;3607:20;3649:5;;;3653:1;3649;:5;:1;3672:5;;;;;:10;3664:56;;;;-1:-1:-1;;;3664:56:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4209:150;4267:7;4298:1;4294;:5;4286:44;;;;;-1:-1:-1;;;4286:44:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;4351:1;4347;:5;;;;;;;4209:150;-1:-1:-1;;;4209:150:6:o;2682:175::-;2740:7;2771:5;;;2794:6;;;;2786:46;;;;;-1:-1:-1;;;2786:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;7804:246:62;7876:43;7935:12;7950:53;7966:36;7950:15;:53::i;1006:752:88:-;1085:7;1130:1;1112:5;:15;;;:19;:77;;;;-1:-1:-1;1135:15:88;;;;4906:1:60;-1:-1:-1;1135:54:88;1112:77;1104:86;;;;;;1309:15;;;;4847:1:60;-1:-1:-1;1305:81:88;;-1:-1:-1;1372:14:88;;;;1365:21;;1305:81;1397:20;1420:45;1463:1;1445:5;:15;;;:19;1420:24;:45::i;:::-;1696:14;;;;1397:68;;-1:-1:-1;1696:55:88;;2617:9:60;;1696:32:88;;1397:68;1696:18;:32::i;:::-;:36;;:55::i;526:829:82:-;646:19;679:32;725:27;777:58;838:40;:38;:40::i;:::-;-1:-1:-1;;;;;937:19:82;;;;888:46;937:19;;;;;;;;-1:-1:-1;;937:19:82;;;;980:25;-1:-1:-1;;;;;980:25:82;;;-1:-1:-1;;;1245:38:82;;-1:-1:-1;;;;;1245:38:82;;-1:-1:-1;;;;1315:33:82;;;;;;-1:-1:-1;526:829:82:o;3288:1107::-;3483:7;4135:253;4376:11;4135:157;2665:11:60;4135:157:82;4239:19;4135:86;:25;499:4:60;4135:42:82;:86::i;928:470:78:-;991:7;1014:5;1023:1;1014:10;1010:40;;;-1:-1:-1;2617:9:60;1026:24:78;;1010:40;1064:5;1073:1;1064:10;1060:44;;;-1:-1:-1;1083:21:78;1076:28;;1060:44;1118:5;1127:1;1118:10;1114:37;;;-1:-1:-1;2665:11:60;1130:21:78;;1114:37;1165:5;1174:1;1165:10;1161:41;;;-1:-1:-1;1184:18:78;1177:25;;1161:41;1216:5;1225:1;1216:10;1212:41;;;-1:-1:-1;1235:18:78;1228:25;;1212:41;1267:5;1276:1;1267:10;1263:42;;;-1:-1:-1;1286:19:78;1279:26;;1263:42;1319:5;1328:1;1319:10;1315:42;;;-1:-1:-1;1338:19:78;1331:26;;1315:42;1368:23;;-1:-1:-1;;;1368:23:78;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:175:168:-;84:20;;-1:-1:-1;;;;;133:31:168;;123:42;;113:2;;179:1;176;169:12;194:433;;;360:3;353:4;345:6;341:17;337:27;327:2;;383:6;375;368:22;327:2;-1:-1:-1;411:20:168;;-1:-1:-1;;;;;443:30:168;;440:2;;;493:8;483;476:26;440:2;537:4;529:6;525:17;513:29;;600:3;593:4;585;577:6;573:17;565:6;561:30;557:41;554:50;551:2;;;617:1;614;607:12;551:2;317:310;;;;;:::o;632:1504::-;;771:3;764:4;756:6;752:17;748:27;738:2;;793:5;786;779:20;738:2;826:6;820:13;852:4;-1:-1:-1;;;;;912:2:168;908;905:10;902:2;;;918:9;902:2;949:36;981:2;976;972;968:11;964:20;949:36;:::i;:::-;1019:15;;;1050:12;;;;1082:15;;;1116:4;1151:11;;;1139:24;;1135:33;;1132:42;-1:-1:-1;1129:2:168;;;1191:5;1184;1177:20;1129:2;1217:5;1231:876;1245:2;1242:1;1239:9;1231:876;;;1312:2;1306:3;1301;1297:13;1293:22;1290:2;;;1332:5;1325;1318:20;1290:2;1363;1398;1392:9;1444:2;1436:6;1432:15;1501:6;1489:10;1486:22;1481:2;1469:10;1466:18;1463:46;1460:2;;;1512:9;1460:2;1536:22;;1586:10;;1571:26;;1640:12;;;1634:19;1617:15;;;1610:44;1697:12;;;1691:19;1674:15;;;1667:44;;;;1734:2;1779:12;;;1773:19;1756:15;;;1749:44;1816:3;1862:12;;;1856:19;1839:15;;;1832:44;1899:3;;1939:61;1987:12;;;1939:61;:::i;:::-;1922:15;;;1915:86;;;;2014:19;;2053:12;;;;2085;;;;1263:1;1256:9;1231:876;;;-1:-1:-1;2125:5:168;;728:1408;-1:-1:-1;;;;;;;;;728:1408:168:o;2141:195::-;2222:13;;-1:-1:-1;;;;;;2264:47:168;;2254:58;;2244:2;;2326:1;2323;2316:12;2341:165;2438:13;;2480:1;2470:12;;2460:2;;2496:1;2493;2486:12;2511:140;2591:13;;2613:32;2591:13;2613:32;:::i;2656:162::-;2735:13;;2788:4;2777:16;;2767:27;;2757:2;;2808:1;2805;2798:12;2823:616;;;;3031:2;3019:9;3010:7;3006:23;3002:32;2999:2;;;3052:6;3044;3037:22;2999:2;3080:31;3101:9;3080:31;:::i;:::-;3070:41;;3162:2;3151:9;3147:18;3134:32;-1:-1:-1;;;;;3181:6:168;3178:30;3175:2;;;3226:6;3218;3211:22;3175:2;3270:109;3371:7;3362:6;3351:9;3347:22;3270:109;:::i;:::-;2989:450;;3398:8;;-1:-1:-1;3244:135:168;;-1:-1:-1;;;;2989:450:168:o;3444:1125::-;;;;;;3688:2;3676:9;3667:7;3663:23;3659:32;3656:2;;;3709:6;3701;3694:22;3656:2;3737:31;3758:9;3737:31;:::i;:::-;3727:41;;3819:2;3808:9;3804:18;3791:32;-1:-1:-1;;;;;3883:2:168;3875:6;3872:14;3869:2;;;3904:6;3896;3889:22;3869:2;3948:109;4049:7;4040:6;4029:9;4025:22;3948:109;:::i;:::-;4076:8;;-1:-1:-1;3922:135:168;-1:-1:-1;4164:2:168;4149:18;;4136:32;;-1:-1:-1;4180:16:168;;;4177:2;;;4214:6;4206;4199:22;4177:2;4257:8;4246:9;4242:24;4232:34;;4304:7;4297:4;4293:2;4289:13;4285:27;4275:2;;4331:6;4323;4316:22;4275:2;4376;4363:16;4402:2;4394:6;4391:14;4388:2;;;4423:6;4415;4408:22;4388:2;4473:7;4468:2;4459:6;4455:2;4451:15;4447:24;4444:37;4441:2;;;4499:6;4491;4484:22;4441:2;3646:923;;;;-1:-1:-1;3646:923:168;;-1:-1:-1;4535:2:168;4527:11;;4557:6;3646:923;-1:-1:-1;;;3646:923:168:o;4574:778::-;;;;4772:2;4760:9;4751:7;4747:23;4743:32;4740:2;;;4793:6;4785;4778:22;4740:2;4821:31;4842:9;4821:31;:::i;:::-;4811:41;;4903:2;4892:9;4888:18;4875:32;-1:-1:-1;;;;;4967:2:168;4959:6;4956:14;4953:2;;;4988:6;4980;4973:22;4953:2;5031:6;5020:9;5016:22;5006:32;;5076:7;5069:4;5065:2;5061:13;5057:27;5047:2;;5103:6;5095;5088:22;5047:2;5148;5135:16;5174:2;5166:6;5163:14;5160:2;;;5195:6;5187;5180:22;5160:2;5256:7;5251:2;5243:4;5235:6;5231:17;5227:2;5223:26;5219:35;5216:48;5213:2;;;5282:6;5274;5267:22;5213:2;5318;5314;5310:11;5300:21;;5340:6;5330:16;;;;;4730:622;;;;;:::o;5357:602::-;;;;5551:2;5539:9;5530:7;5526:23;5522:32;5519:2;;;5572:6;5564;5557:22;5519:2;5600:31;5621:9;5600:31;:::i;:::-;5590:41;;5682:2;5671:9;5667:18;5654:32;-1:-1:-1;;;;;5701:6:168;5698:30;5695:2;;;5746:6;5738;5731:22;5964:253;;6073:2;6061:9;6052:7;6048:23;6044:32;6041:2;;;6094:6;6086;6079:22;6041:2;6138:9;6125:23;6157:30;6181:5;6157:30;:::i;6222:299::-;;6357:2;6345:9;6336:7;6332:23;6328:32;6325:2;;;6378:6;6370;6363:22;6325:2;6422:9;6409:23;6461:1;6454:5;6451:12;6441:2;;6482:6;6474;6467:22;6526:193;;6648:2;6636:9;6627:7;6623:23;6619:32;6616:2;;;6669:6;6661;6654:22;6616:2;-1:-1:-1;6697:16:168;;6606:113;-1:-1:-1;6606:113:168:o;6724:317::-;;;6860:2;6848:9;6839:7;6835:23;6831:32;6828:2;;;6881:6;6873;6866:22;6828:2;6915:9;6909:16;6899:26;;6968:2;6957:9;6953:18;6947:25;6981:30;7005:5;6981:30;:::i;:::-;7030:5;7020:15;;;6818:223;;;;;:::o;7046:993::-;;7202:3;7190:9;7181:7;7177:23;7173:33;7170:2;;;7224:6;7216;7209:22;7170:2;7262;7256:9;7304:3;7296:6;7292:16;7374:6;7362:10;7359:22;-1:-1:-1;;;;;7326:10:168;7323:34;7320:62;7317:2;;;7385:9;7317:2;7412;7405:22;7449:16;;7505:12;7494:24;;7484:35;;7474:2;;7538:6;7530;7523:22;7474:2;7556:21;;7622:2;7607:18;;7601:25;-1:-1:-1;;;;;;7657:27:168;;7645:40;;7635:2;;7704:6;7696;7689:22;7635:2;7741;7729:15;;7722:32;7787:49;7832:2;7817:18;;7787:49;:::i;:::-;7782:2;7774:6;7770:15;7763:74;7870:50;7916:2;7905:9;7901:18;7870:50;:::i;:::-;7865:2;7857:6;7853:15;7846:75;7955:52;8002:3;7991:9;7987:19;7955:52;:::i;:::-;7949:3;7937:16;;7930:78;7941:6;7160:879;-1:-1:-1;;;7160:879:168:o;8044:1218::-;;;8216:2;8204:9;8195:7;8191:23;8187:32;8184:2;;;8237:6;8229;8222:22;8184:2;8275:9;8269:16;-1:-1:-1;;;;;8345:2:168;8337:6;8334:14;8331:2;;;8366:6;8358;8351:22;8331:2;8394:22;;;;8450:4;8432:16;;;8428:27;8425:2;;;8473:6;8465;8458:22;8425:2;8511;8505:9;8553:4;8545:6;8541:17;8608:6;8596:10;8593:22;8588:2;8576:10;8573:18;8570:46;8567:2;;;8619:9;8567:2;8646;8639:22;8686:9;;8707:16;;;8704:2;;;8741:6;8733;8726:22;8704:2;8774:88;8854:7;8843:8;8839:2;8835:17;8774:88;:::i;:::-;8766:6;8759:104;;8902:2;8898;8894:11;8888:18;8931:2;8921:8;8918:16;8915:2;;;8952:6;8944;8937:22;8915:2;8994:88;9074:7;9063:8;9059:2;9055:17;8994:88;:::i;:::-;8989:2;8981:6;8977:15;8970:113;;9130:2;9126;9122:11;9116:18;9111:2;9103:6;9099:15;9092:43;9182:2;9178;9174:11;9168:18;9163:2;9155:6;9151:15;9144:43;9206:6;9196:16;;;;;9252:2;9241:9;9237:18;9231:25;9221:35;;8174:1088;;;;;:::o;9267:257::-;;9378:2;9366:9;9357:7;9353:23;9349:32;9346:2;;;9399:6;9391;9384:22;9346:2;9443:9;9430:23;9462:32;9488:5;9462:32;:::i;9728:369::-;9822:19;;;9728:369;-1:-1:-1;;;;;9853:31:168;;9850:2;;;9899:3;9894;9887:16;9850:2;9942:4;9934:6;9930:17;9992:8;9985:5;9978:4;9973:3;9969:14;9956:45;10024:18;;;;10044:4;10020:29;10058:15;;;-1:-1:-1;10020:29:168;;9812:285;-1:-1:-1;9812:285:168:o;10102:967::-;;10214:5;10208:12;10241:6;10236:3;10229:19;10267:4;10296:2;10291:3;10287:12;10280:19;;10333:2;10326:5;10322:14;10354:3;10366:678;10380:6;10377:1;10374:13;10366:678;;;10439:13;;10477:9;;10465:22;;10527:11;;;10521:18;10507:12;;;10500:40;10563:4;10607:11;;;10601:18;10587:12;;;10580:40;10643:4;10687:11;;;10681:18;10667:12;;;10660:40;10723:4;10767:11;;;10761:18;10747:12;;;10740:40;10803:4;10846:11;;;10840:18;;10898:1;10881:19;;10871:2;;10904:9;10871:2;10935:12;;10928:34;10991:4;10982:14;;;;11019:15;;;;10402:1;10395:9;10366:678;;;-1:-1:-1;11060:3:168;;10184:885;-1:-1:-1;;;;;10184:885:168:o;11074:211::-;-1:-1:-1;;;;;11246:32:168;;;;11228:51;;11216:2;11201:18;;11183:102::o;11498:600::-;-1:-1:-1;;;;;11757:15:168;;;11739:34;;11809:15;;11804:2;11789:18;;11782:43;11861:2;11856;11841:18;;11834:30;;;11880:18;;11873:34;;;11498:600;11900:6;11950;11944:3;11929:19;;11916:49;11985:22;;;12009:3;11981:32;;;11974:46;;;;12081:2;12060:15;;;-1:-1:-1;;12056:29:168;12041:45;12037:55;;11691:407;-1:-1:-1;;;11691:407:168:o;12103:627::-;-1:-1:-1;;;;;12446:15:168;;;12428:34;;12498:15;;;12493:2;12478:18;;12471:43;12550:15;;;12545:2;12530:18;;12523:43;12602:15;;;12597:2;12582:18;;12575:43;12655:15;;12649:3;12634:19;;12627:44;12708:15;;;12408:3;12687:19;;12680:44;12377:3;12362:19;;12344:386::o;12735:700::-;-1:-1:-1;;;;;13002:32:168;;;;12984:51;;13075:13;;13090:12;13071:32;13066:2;13051:18;;;13044:60;;;;13150:15;;13144:22;-1:-1:-1;;;;;;13140:42:168;13135:2;13120:18;;;13113:70;;;;13229:15;;13223:22;13177:3;13219:33;13214:2;13199:18;;;13192:61;;;;13300:15;;13294:22;13318:6;13290:35;13284:3;13269:19;;;13262:64;;;;13373:16;13367:23;-1:-1:-1;;;;;;13363:65:168;13022:3;13342:19;;13335:94;12971:3;12956:19;;12938:497::o;13440:1161::-;;13814:1;13810;13805:3;13801:11;13797:19;13789:6;13785:32;13774:9;13767:51;13866:6;13858;13854:19;13849:2;13838:9;13834:18;13827:47;13910:3;13905:2;13894:9;13890:18;13883:31;13949:6;13943:13;13993:3;13987;13976:9;13972:19;13965:32;14020:84;14099:3;14088:9;14084:19;14070:12;14020:84;:::i;:::-;14006:98;;14153:2;14145:6;14141:15;14135:22;14226:3;14222:8;14210:9;14202:6;14198:22;14194:37;14188:3;14177:9;14173:19;14166:66;14255:73;14321:6;14305:14;14255:73;:::i;:::-;14241:87;;;14383:2;14375:6;14371:15;14365:22;14359:3;14348:9;14344:19;14337:51;14443:4;14435:6;14431:17;14425:24;14419:3;14408:9;14404:19;14397:53;14500:9;14492:6;14488:22;14481:4;14470:9;14466:20;14459:52;14528:67;14588:6;14580;14572;14528:67;:::i;:::-;14520:75;13757:844;-1:-1:-1;;;;;;;;13757:844:168:o;14606:571::-;-1:-1:-1;;;;;14883:32:168;;14865:51;;14964:6;14952:19;;14947:2;14932:18;;14925:47;15020:12;15008:25;;15003:2;14988:18;;14981:53;15070:3;15065:2;15050:18;;15043:31;;;14606:571;;15091:80;;15151:19;;15143:6;15135;15091:80;:::i;15182:375::-;-1:-1:-1;;;;;15440:15:168;;;15422:34;;15487:2;15472:18;;15465:34;;;;15535:15;;;15530:2;15515:18;;15508:43;15372:2;15357:18;;15339:218::o;15562:467::-;-1:-1:-1;;;;;15856:15:168;;;15838:34;;15903:2;15888:18;;15881:34;;;;15951:15;;15946:2;15931:18;;15924:43;16015:6;16003:19;;;15998:2;15983:18;;15976:47;15787:3;15772:19;;15754:275::o;16034:487::-;-1:-1:-1;;;;;16309:32:168;;;;16291:51;;16373:2;16358:18;;16351:34;;;;16416:2;16401:18;;16394:34;;;;16459:2;16444:18;;16437:34;16502:3;16487:19;;16480:35;16278:3;16263:19;;16245:276::o;16526:425::-;-1:-1:-1;;;;;16783:32:168;;;;16765:51;;16847:2;16832:18;;16825:34;;;;16890:2;16875:18;;16868:34;16933:2;16918:18;;16911:34;16752:3;16737:19;;16719:232::o;16956:175::-;17100:25;;;17088:2;17073:18;;17055:76::o;17136:336::-;17338:2;17320:21;;;17377:2;17357:18;;;17350:30;-1:-1:-1;;;17411:2:168;17396:18;;17389:42;17463:2;17448:18;;17310:162::o;17477:327::-;17679:2;17661:21;;;17718:1;17698:18;;;17691:29;-1:-1:-1;;;17751:2:168;17736:18;;17729:34;17795:2;17780:18;;17651:153::o;17809:335::-;18011:2;17993:21;;;18050:2;18030:18;;;18023:30;-1:-1:-1;;;18084:2:168;18069:18;;18062:41;18135:2;18120:18;;17983:161::o;18149:329::-;18351:2;18333:21;;;18390:1;18370:18;;;18363:29;-1:-1:-1;;;18423:2:168;18408:18;;18401:36;18469:2;18454:18;;18323:155::o;18483:337::-;18685:2;18667:21;;;18724:2;18704:18;;;18697:30;-1:-1:-1;;;18758:2:168;18743:18;;18736:43;18811:2;18796:18;;18657:163::o;18825:340::-;19027:2;19009:21;;;19066:2;19046:18;;;19039:30;-1:-1:-1;;;19100:2:168;19085:18;;19078:46;19156:2;19141:18;;18999:166::o;19170:350::-;19372:2;19354:21;;;19411:2;19391:18;;;19384:30;19450:28;19445:2;19430:18;;19423:56;19511:2;19496:18;;19344:176::o;19525:338::-;19727:2;19709:21;;;19766:2;19746:18;;;19739:30;-1:-1:-1;;;19800:2:168;19785:18;;19778:44;19854:2;19839:18;;19699:164::o;19868:331::-;20070:2;20052:21;;;20109:1;20089:18;;;20082:29;-1:-1:-1;;;20142:2:168;20127:18;;20120:38;20190:2;20175:18;;20042:157::o;20204:350::-;20406:2;20388:21;;;20445:2;20425:18;;;20418:30;20484:28;20479:2;20464:18;;20457:56;20545:2;20530:18;;20378:176::o;20559:334::-;20761:2;20743:21;;;20800:2;20780:18;;;20773:30;-1:-1:-1;;;20834:2:168;20819:18;;20812:40;20884:2;20869:18;;20733:160::o;20898:341::-;21100:2;21082:21;;;21139:2;21119:18;;;21112:30;-1:-1:-1;;;21173:2:168;21158:18;;21151:47;21230:2;21215:18;;21072:167::o;21244:344::-;21446:2;21428:21;;;21485:2;21465:18;;;21458:30;-1:-1:-1;;;21519:2:168;21504:18;;21497:50;21579:2;21564:18;;21418:170::o;21593:265::-;21801:6;21789:19;;;;21771:38;;21840:2;21825:18;;21818:34;21759:2;21744:18;;21726:132::o;22045:560::-;;;22204:11;22191:25;22298:2;22294:7;22283:8;22267:14;22263:29;22259:43;22239:18;22235:68;22225:2;;22320:4;22314;22307:18;22225:2;22350:33;;22402:20;;;-1:-1:-1;;;;;;22434:30:168;;22431:2;;;22480:4;22474;22467:18;22431:2;22516:4;22504:17;;;;-1:-1:-1;22563:17:168;;22547:14;22543:38;22533:49;;22530:2;;;22595:1;22592;22585:12;22610:348;;22778:11;22765:25;22872:3;22868:8;22857;22841:14;22837:29;22833:44;22813:18;22809:69;22799:2;;22895:4;22889;22882:18;22799:2;22919:33;;;;;22729:229;-1:-1:-1;;22729:229:168:o;22963:333::-;;23117:11;23104:25;23211:2;23207:7;23196:8;23180:14;23176:29;23172:43;23152:18;23148:68;23138:2;;23233:4;23227;23220:18;23301:242;23371:2;23365:9;23401:17;;;-1:-1:-1;;;;;23433:34:168;;23469:22;;;23430:62;23427:2;;;23495:9;23427:2;23522;23515:22;23345:198;;-1:-1:-1;23345:198:168:o;23548:120::-;23636:5;23629:13;23622:21;23615:5;23612:32;23602:2;;23658:1;23655;23648:12;23602:2;23592:76;:::o;23673:119::-;23760:6;23753:5;23749:18;23742:5;23739:29;23729:2;;23782:1;23779;23772:12", - "language": "Solidity", - "natspec": { - "kind": "dev", - "methods": { - "batchBalanceAction(address,(uint8,uint16,uint256,uint256,bool,bool)[])": { - "details": "emit:CashBalanceChange, emit:nTokenSupplyChangeauth:msg.sender auth:ERC1155", - "notice": "Executes a batch of balance transfers including minting and redeeming nTokens.", - "params": { - "account": "the account for the action", - "actions": "array of balance actions to take, must be sorted by currency id" - } - }, - "batchBalanceAndTradeAction(address,(uint8,uint16,uint256,uint256,bool,bool,bytes32[])[])": { - "details": "emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccruedauth:msg.sender auth:ERC1155", - "notice": "Executes a batch of balance transfers and trading actions", - "params": { - "account": "the account for the action", - "actions": "array of balance actions with trades to take, must be sorted by currency id" - } - }, - "batchBalanceAndTradeActionWithCallback(address,(uint8,uint16,uint256,uint256,bool,bool,bytes32[])[],bytes)": { - "details": "emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccruedauth:authorizedCallbackContract", - "notice": "Executes a batch of balance transfers and trading actions via an authorized callback contract. This can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform other actions on behalf of the user. Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting and will mainly be used for contracts that make migrating assets a better user experience.", - "params": { - "account": "the account that will take all the actions", - "actions": "array of balance actions with trades to take, must be sorted by currency id", - "callbackData": "arbitrary bytes to be passed backed to the caller in the callback" - } - }, - "batchLend(address,(uint16,bool,bytes32[])[])": { - "details": "Note that this method does not work with native ETH because it requires the ability to pull payment from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebtauth:msg.sender auth:ERC1155", - "notice": "Executes a batch of lending actions. This is different from batchBalanceAndTrade because it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces the gas costs for lending because there is no second token transfer where residual balances are sent back to the account.", - "params": { - "account": "the account for the action", - "actions": "array of batch lending actions" - } - }, - "getLibInfo()": { - "notice": "Get a list of deployed library addresses (sorted by library name)" - } - }, - "version": 1 - }, - "offset": [ - 591, - 24150 - ], - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x7B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6E6A32A6 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x6E6A32A6 EQ PUSH2 0xF3 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x106 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0xC4C96DAE EQ PUSH2 0x130 JUMPI PUSH2 0x7B JUMP JUMPDEST DUP1 PUSH4 0x276B64B EQ PUSH2 0x80 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x95 JUMPI DUP1 PUSH4 0x541F5270 EQ PUSH2 0xC0 JUMPI DUP1 PUSH4 0x5950D8E9 EQ PUSH2 0xE0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x93 PUSH2 0x8E CALLDATASIZE PUSH1 0x4 PUSH2 0x41F2 JUMP JUMPDEST PUSH2 0x157 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x1E7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x93 PUSH2 0xDB CALLDATASIZE PUSH1 0x4 PUSH2 0x4366 JUMP JUMPDEST PUSH2 0x1F6 JUMP JUMPDEST PUSH2 0x93 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0x4242 JUMP JUMPDEST PUSH2 0x53E JUMP JUMPDEST PUSH2 0x93 PUSH2 0x101 CALLDATASIZE PUSH1 0x4 PUSH2 0x42E6 JUMP JUMPDEST PUSH2 0x66E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x112 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x7F4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x127 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x803 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x13C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x145 PUSH2 0x81A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB7 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x469E JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x183 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x19E JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x1BA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x1C3 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D0 DUP5 DUP5 DUP5 PUSH2 0x8EF JUMP JUMPDEST SWAP1 POP PUSH2 0x1DC DUP5 DUP3 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x219 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x234 JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x250 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x259 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x264 DUP5 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x278 DUP6 DUP4 PUSH1 0x40 ADD MLOAD PUSH1 0x0 PUSH2 0xBE7 JUMP JUMPDEST SWAP1 POP PUSH2 0x282 PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP5 DUP2 LT ISZERO PUSH2 0x50C JUMPI CALLDATASIZE DUP7 DUP7 DUP4 DUP2 DUP2 LT PUSH2 0x29A JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2AC SWAP2 SWAP1 PUSH2 0x4B3C JUMP JUMPDEST SWAP1 POP DUP2 ISZERO PUSH2 0x315 JUMPI DUP7 DUP7 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x2C3 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2D5 SWAP2 SWAP1 PUSH2 0x4B3C JUMP JUMPDEST PUSH2 0x2E3 SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x2F4 PUSH1 0x20 DUP4 ADD DUP4 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x315 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324 PUSH1 0x40 DUP4 ADD DUP4 PUSH2 0x4AD7 JUMP JUMPDEST SWAP2 POP POP DUP1 PUSH2 0x331 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x0 PUSH2 0x34B PUSH1 0x40 DUP6 ADD DUP6 PUSH2 0x4AD7 JUMP JUMPDEST DUP4 DUP2 DUP2 LT PUSH2 0x355 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH1 0xF8 SHR PUSH1 0xFF AND EQ PUSH2 0x36C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 ADD PUSH2 0x334 JUMP JUMPDEST POP PUSH2 0x38F DUP10 PUSH2 0x386 PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x4579 JUMP JUMPDEST DUP7 SWAP2 SWAP1 DUP10 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x3B4 DUP10 PUSH2 0x3A0 PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0x3AD PUSH1 0x40 DUP7 ADD DUP7 PUSH2 0x4AD7 JUMP JUMPDEST DUP11 DUP11 PUSH2 0xD1F JUMP JUMPDEST PUSH1 0x60 DUP7 ADD DUP3 SWAP1 MSTORE SWAP6 POP PUSH1 0x0 SLT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x3EF PUSH2 0x3EA DUP7 PUSH1 0x60 ADD MLOAD DUP8 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0xEE1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SGT ISZERO PUSH2 0x4EF JUMPI PUSH2 0x40A PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x439D JUMP JUMPDEST ISZERO PUSH2 0x4B7 JUMPI PUSH1 0x0 PUSH2 0x42A PUSH2 0x421 PUSH1 0x20 DUP7 ADD DUP7 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0xEEF JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x447 PUSH2 0x43E PUSH1 0x20 DUP8 ADD DUP8 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x45F PUSH2 0x458 DUP5 DUP7 PUSH2 0xF4E JUMP JUMPDEST DUP4 SWAP1 PUSH2 0xF87 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP3 PUSH1 0x40 ADD MLOAD SLT ISZERO PUSH2 0x47F JUMPI PUSH2 0x47C DUP2 PUSH1 0x1 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 PUSH2 0x48C DUP10 DUP16 DUP5 PUSH2 0xFBF JUMP JUMPDEST SWAP1 POP DUP5 DUP2 SLT ISZERO PUSH2 0x4AE JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A95 JUMP JUMPDEST POP POP POP POP PUSH2 0x4EF JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D2 PUSH2 0x4C9 PUSH1 0x20 DUP7 ADD DUP7 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH2 0x4EC DUP12 PUSH2 0x4E2 DUP4 DUP6 PUSH2 0xF87 JUMP JUMPDEST DUP9 SWAP2 SWAP1 PUSH1 0x0 PUSH2 0x10B7 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x4FC DUP6 DUP12 DUP10 PUSH1 0x0 PUSH2 0x1191 JUMP JUMPDEST POP POP PUSH1 0x1 SWAP1 SWAP3 ADD SWAP2 POP PUSH2 0x285 SWAP1 POP JUMP JUMPDEST POP PUSH2 0x516 DUP4 PUSH2 0x1412 JUMP JUMPDEST PUSH2 0x527 JUMPI PUSH2 0x527 DUP4 DUP8 DUP5 PUSH1 0x0 PUSH2 0x141F JUMP JUMPDEST PUSH2 0x531 DUP7 DUP5 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP POP POP JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x8 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH2 0x56D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x576 DUP6 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x583 DUP7 DUP7 DUP7 PUSH2 0x8EF JUMP JUMPDEST SWAP1 POP PUSH2 0x58F DUP2 DUP8 PUSH2 0x1501 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x550D0657 PUSH1 0xE1 SHL DUP2 MSTORE CALLER SWAP1 PUSH4 0xAA1A0CAE SWAP1 PUSH2 0x5B8 SWAP1 DUP4 SWAP1 DUP11 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x4655 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x20 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO PUSH2 0x666 JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x635 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x64D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x661 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x691 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x6AC JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x6C8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x6D1 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6DC DUP5 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH2 0x6E6 PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7DD JUMPI CALLDATASIZE DUP6 DUP6 DUP4 DUP2 DUP2 LT PUSH2 0x6FE JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0xC0 MUL ADD SWAP1 POP PUSH1 0x0 DUP3 GT ISZERO PUSH2 0x76B JUMPI DUP6 DUP6 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x71E JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0xC0 MUL ADD PUSH1 0x20 ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x736 SWAP2 SWAP1 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x74A PUSH1 0x40 DUP4 ADD PUSH1 0x20 DUP5 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x76B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH2 0x788 DUP8 PUSH2 0x77F PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x4579 JUMP JUMPDEST DUP6 SWAP2 SWAP1 DUP8 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x7A4 DUP8 DUP5 PUSH2 0x79A PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x43B9 JUMP JUMPDEST DUP5 PUSH1 0x40 ADD CALLDATALOAD PUSH2 0x1605 JUMP JUMPDEST PUSH2 0x7D4 DUP8 DUP6 DUP6 PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH2 0x7BF PUSH1 0xA0 DUP8 ADD PUSH1 0x80 DUP9 ADD PUSH2 0x439D JUMP JUMPDEST PUSH2 0x7CF PUSH1 0xC0 DUP9 ADD PUSH1 0xA0 DUP10 ADD PUSH2 0x439D JUMP JUMPDEST PUSH2 0x16D8 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x6E9 JUMP JUMPDEST POP PUSH2 0x7E8 DUP6 DUP4 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 SWAP1 SWAP2 SWAP3 SWAP4 SWAP5 SWAP6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x8B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO PUSH2 0x8C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8D4 DUP3 PUSH2 0x1755 JUMP JUMPDEST POP POP POP POP PUSH2 0xFFFF AND SWAP1 POP DUP1 PUSH1 0x0 EQ PUSH2 0x8EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x8F7 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x902 DUP6 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH2 0x90C PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x91E DUP8 DUP5 PUSH1 0x40 ADD MLOAD PUSH1 0x0 PUSH2 0xBE7 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xA82 JUMPI CALLDATASIZE DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x938 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x94A SWAP2 SWAP1 PUSH2 0x4B1D JUMP JUMPDEST SWAP1 POP DUP2 ISZERO PUSH2 0x9B9 JUMPI DUP8 DUP8 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x961 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x973 SWAP2 SWAP1 PUSH2 0x4B1D JUMP JUMPDEST PUSH2 0x984 SWAP1 PUSH1 0x40 DUP2 ADD SWAP1 PUSH1 0x20 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x998 PUSH1 0x40 DUP4 ADD PUSH1 0x20 DUP5 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x9B9 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH2 0x9D6 DUP10 PUSH2 0x9CD PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x4579 JUMP JUMPDEST DUP7 SWAP2 SWAP1 DUP9 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x9E8 DUP10 DUP6 PUSH2 0x79A PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x43B9 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9F7 PUSH1 0xC0 DUP4 ADD DUP4 PUSH2 0x4AD7 JUMP JUMPDEST SWAP1 POP GT ISZERO PUSH2 0xA5E JUMPI PUSH1 0x0 PUSH2 0xA29 DUP11 PUSH2 0xA15 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP7 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xA22 PUSH1 0xC0 DUP7 ADD DUP7 PUSH2 0x4AD7 JUMP JUMPDEST DUP11 DUP10 PUSH2 0xD1F JUMP JUMPDEST SWAP5 POP SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0xA48 JUMPI PUSH2 0xA48 DUP6 PUSH2 0xA43 DUP4 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x17BE JUMP JUMPDEST PUSH1 0x60 DUP6 ADD MLOAD PUSH2 0xA57 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MSTORE POP JUMPDEST PUSH2 0xA79 DUP10 DUP7 DUP7 PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH2 0x7BF PUSH1 0xA0 DUP8 ADD PUSH1 0x80 DUP9 ADD PUSH2 0x439D JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x923 JUMP JUMPDEST POP PUSH2 0xA8C DUP4 PUSH2 0x1412 JUMP JUMPDEST PUSH2 0xA9D JUMPI PUSH2 0xA9D DUP4 DUP9 DUP4 PUSH1 0x0 PUSH2 0x141F JUMP JUMPDEST POP SWAP1 SWAP2 POP POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xAB4 DUP2 DUP4 PUSH2 0x1501 JUMP JUMPDEST PUSH1 0x20 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO PUSH2 0x8EB JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0xAFF SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB17 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x666 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH2 0xB33 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP4 PUSH2 0x180D JUMP JUMPDEST SWAP1 POP PUSH2 0xB49 DUP2 PUSH2 0x18AE JUMP JUMPDEST ISZERO PUSH2 0xBDF JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xB87 SWAP1 DUP7 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x46D8 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB9F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xBB3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBD7 SWAP2 SWAP1 PUSH2 0x441F JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE2 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xBEF PUSH2 0x3F90 JUMP JUMPDEST PUSH2 0xBF7 PUSH2 0x3F90 JUMP JUMPDEST PUSH1 0xFF DUP5 AND PUSH2 0xC06 JUMPI SWAP1 POP PUSH2 0xAA3 JUMP JUMPDEST PUSH2 0xC10 DUP6 DUP6 PUSH2 0x18FF JUMP JUMPDEST DUP2 MSTORE PUSH1 0xFF DUP5 AND PUSH1 0x60 DUP3 ADD MSTORE DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0xC31 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xC6B JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xC58 PUSH2 0x3FB8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xC50 JUMPI SWAP1 POP JUMPDEST POP PUSH1 0x20 DUP3 ADD MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST DUP2 PUSH2 0xFFFF AND PUSH1 0x0 LT DUP1 ISZERO PUSH2 0xC93 JUMPI POP PUSH2 0x3FFF PUSH2 0xFFFF DUP4 AND GT ISZERO JUMPDEST PUSH2 0xC9C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP3 AND DUP1 DUP6 MSTORE PUSH2 0xCAF SWAP1 DUP3 SWAP1 PUSH2 0x1928 JUMP JUMPDEST ISZERO PUSH2 0xCDC JUMPI PUSH2 0xCC2 DUP4 DUP4 PUSH2 0xFFFF AND PUSH2 0x19B2 JUMP JUMPDEST PUSH2 0x100 DUP9 ADD MSTORE PUSH1 0xE0 DUP8 ADD MSTORE PUSH1 0x40 DUP7 ADD MSTORE PUSH1 0x20 DUP6 ADD MSTORE PUSH2 0xCFA JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP6 ADD DUP2 SWAP1 MSTORE PUSH1 0x40 DUP6 ADD DUP2 SWAP1 MSTORE PUSH1 0xE0 DUP6 ADD DUP2 SWAP1 MSTORE PUSH2 0x100 DUP6 ADD MSTORE JUMPDEST POP POP PUSH1 0x0 PUSH1 0x60 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0x80 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0xA0 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0xC0 SWAP1 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xD29 PUSH2 0x3F90 JUMP JUMPDEST PUSH2 0xD32 DUP5 PUSH2 0x1412 JUMP JUMPDEST ISZERO PUSH2 0xE22 JUMPI DUP7 PUSH2 0xFFFF AND DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ PUSH2 0xD62 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A0F JUMP JUMPDEST PUSH1 0x60 DUP5 ADD MLOAD DUP5 MLOAD PUSH1 0x40 MLOAD PUSH4 0x3643F39B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP3 PUSH20 0x0 SWAP3 PUSH4 0x3643F39B SWAP3 PUSH2 0xDA9 SWAP3 DUP15 SWAP3 SWAP1 SWAP2 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x47CB JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDC0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xDD4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xDF8 SWAP2 SWAP1 PUSH2 0x43F0 JUMP JUMPDEST SWAP1 SWAP4 POP SWAP1 POP DUP1 ISZERO PUSH2 0xE1C JUMPI PUSH1 0x20 DUP6 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xB58F83ED PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0xB58F83ED SWAP1 PUSH2 0xE61 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 DUP13 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x4744 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE8D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0xEB5 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x44BE JUMP JUMPDEST SWAP3 POP SWAP1 POP JUMPDEST SWAP7 POP SWAP7 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 ADD DUP3 DUP2 SLT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH1 0x0 NOT DUP4 PUSH2 0x1A5E JUMP JUMPDEST PUSH2 0xEF7 PUSH2 0x3FF8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xF05 DUP6 PUSH2 0x1AAC JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x60 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP4 AND DUP4 MSTORE PUSH1 0x20 DUP4 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0xFF AND PUSH1 0xA EXP SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF43 PUSH2 0x4022 JUMP JUMPDEST PUSH2 0xBDF DUP3 PUSH1 0x1 PUSH2 0x1B6F JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xF7F DUP5 PUSH1 0x40 ADD MLOAD PUSH2 0xF79 PUSH5 0x2540BE400 PUSH2 0xF79 DUP8 DUP10 PUSH1 0x20 ADD MLOAD PUSH2 0x1A5E SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 PUSH2 0x1C1D JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0x5F5E100 DUP4 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0xFA0 JUMPI POP DUP1 PUSH2 0xEDB JUMP JUMPDEST PUSH2 0xAA3 PUSH4 0x5F5E100 PUSH2 0xF79 DUP6 PUSH1 0x40 ADD MLOAD DUP6 PUSH2 0x1A5E SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0xFCE JUMPI POP PUSH1 0x0 PUSH2 0xAA3 JUMP JUMPDEST PUSH1 0x0 DUP3 SGT PUSH2 0xFDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xFEE DUP6 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x3 DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1002 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x102C JUMPI CALLVALUE DUP4 EQ PUSH2 0x1027 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48F8 JUMP JUMPDEST PUSH2 0x1043 JUMP JUMPDEST DUP5 MLOAD PUSH2 0x1040 SWAP1 DUP3 SWAP1 DUP7 SWAP1 PUSH2 0xFFFF AND DUP7 PUSH2 0x1C4E JUMP JUMPDEST SWAP3 POP JUMPDEST PUSH1 0x0 PUSH2 0x1056 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1073 DUP8 PUSH1 0x0 ADD MLOAD PUSH2 0x106B DUP8 PUSH2 0x1CF6 JUMP JUMPDEST DUP5 SWAP2 SWAP1 PUSH2 0x1D09 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1081 DUP4 DUP4 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x60 DUP10 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x1093 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP10 ADD MSTORE SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x10AC PUSH2 0x4022 JUMP JUMPDEST PUSH2 0xBDF DUP3 PUSH1 0x0 PUSH2 0x1B6F JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x10C6 JUMPI POP PUSH1 0x0 PUSH2 0xF7F JUMP JUMPDEST PUSH1 0x0 DUP4 SGT PUSH2 0x10D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10E6 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x10FA JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1113 JUMPI DUP6 MLOAD PUSH2 0x1110 SWAP1 PUSH2 0xFFFF AND DUP6 PUSH2 0x1E2A JUMP JUMPDEST SWAP4 POP JUMPDEST DUP1 PUSH1 0x20 ADD MLOAD DUP1 PUSH2 0x1120 JUMPI POP DUP3 JUMPDEST ISZERO PUSH2 0x1167 JUMPI DUP6 MLOAD PUSH1 0x0 SWAP1 PUSH2 0x113C SWAP1 DUP4 SWAP1 DUP9 SWAP1 PUSH2 0xFFFF AND DUP9 PUSH2 0x1C4E JUMP JUMPDEST SWAP1 POP PUSH2 0x1148 DUP3 DUP3 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x60 DUP9 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x115A SWAP1 DUP5 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP9 ADD MSTORE POP PUSH2 0xF7F SWAP1 POP JUMP JUMPDEST PUSH2 0x1171 DUP2 DUP6 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x80 DUP8 ADD MLOAD SWAP1 SWAP3 POP PUSH2 0x1183 SWAP1 DUP4 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x80 DUP8 ADD MSTORE POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH1 0xA0 ADD MLOAD SLT ISZERO PUSH2 0x11EA JUMPI PUSH1 0x0 PUSH2 0x11CC DUP8 PUSH1 0xA0 ADD MLOAD PUSH2 0x11C6 DUP10 PUSH1 0xC0 ADD MLOAD DUP11 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 PUSH2 0xEC5 JUMP JUMPDEST SLT ISZERO PUSH2 0x11EA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A46 JUMP JUMPDEST PUSH1 0x0 DUP7 PUSH1 0x80 ADD MLOAD SLT ISZERO PUSH2 0x123A JUMPI PUSH1 0x0 PUSH2 0x121C DUP8 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP10 PUSH1 0x60 ADD MLOAD DUP11 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO PUSH2 0x123A JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49ED JUMP JUMPDEST PUSH2 0x1245 DUP7 DUP7 DUP6 PUSH2 0x1EB1 JUMP JUMPDEST PUSH1 0x80 DUP9 ADD DUP2 SWAP1 MSTORE PUSH1 0x60 DUP9 ADD MLOAD SWAP2 SWAP4 POP PUSH1 0x0 SWAP2 PUSH2 0x1260 SWAP2 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x12CD JUMPI PUSH1 0x20 DUP8 ADD MLOAD PUSH2 0x1277 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x20 DUP9 ADD MSTORE DUP7 MLOAD PUSH1 0x40 MLOAD PUSH1 0x1 SWAP4 POP PUSH2 0xFFFF SWAP1 SWAP2 AND SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP1 PUSH32 0x5441E4A5FAC93A951D782E6F1CDB82E95C8FC58561A013953D17E395C5E69B4B SWAP1 PUSH2 0x12C4 SWAP1 DUP6 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST PUSH1 0xA0 DUP8 ADD MLOAD ISZERO ISZERO DUP1 PUSH2 0x12E2 JUMPI POP PUSH1 0xC0 DUP8 ADD MLOAD ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1388 JUMPI PUSH1 0x0 PUSH2 0x130C DUP9 PUSH1 0xC0 ADD MLOAD PUSH2 0x11C6 DUP11 PUSH1 0xA0 ADD MLOAD DUP12 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0x1321 DUP9 DUP9 PUSH2 0x131C DUP5 PUSH2 0x1CF6 JUMP JUMPDEST PUSH2 0x1F67 JUMP JUMPDEST POP PUSH1 0x40 DUP9 ADD DUP2 SWAP1 MSTORE PUSH1 0xC0 DUP9 ADD MLOAD ISZERO PUSH2 0x1382 JUMPI DUP8 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0x412BC13D202A2EA5119E55FEC9C5E420DDDB18FAF186373AD9795AD4F4545AA9 DUP11 PUSH1 0xC0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x1379 SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST PUSH1 0x1 SWAP3 POP POP JUMPDEST DUP2 ISZERO PUSH2 0x13B5 JUMPI PUSH2 0x13B5 DUP7 DUP9 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND DUP10 PUSH1 0x20 ADD MLOAD DUP11 PUSH1 0x40 ADD MLOAD DUP12 PUSH1 0xE0 ADD MLOAD DUP13 PUSH2 0x100 ADD MLOAD PUSH2 0x204E JUMP JUMPDEST DUP7 MLOAD PUSH1 0x20 DUP9 ADD MLOAD PUSH2 0x13E2 SWAP2 PUSH2 0xFFFF AND SWAP1 ISZERO ISZERO DUP1 PUSH2 0x13D5 JUMPI POP PUSH1 0x40 DUP10 ADD MLOAD ISZERO ISZERO JUMPDEST DUP8 SWAP2 SWAP1 PUSH1 0x1 PUSH1 0xFE SHL PUSH2 0x2187 JUMP JUMPDEST PUSH1 0x0 DUP8 PUSH1 0x20 ADD MLOAD SLT ISZERO PUSH2 0x1408 JUMPI PUSH1 0x20 DUP6 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF9 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH2 0x142E DUP7 DUP9 PUSH2 0x2386 JUMP JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP13 MSTORE SWAP3 SWAP7 POP SWAP1 SWAP5 POP SWAP3 POP SWAP1 POP PUSH2 0x144B DUP9 PUSH2 0x18AE JUMP JUMPDEST ISZERO PUSH2 0x1455 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP3 AND PUSH1 0x40 DUP10 ADD MSTORE DUP5 PUSH2 0x1474 JUMPI PUSH1 0x7 PUSH1 0xFF DUP4 AND GT ISZERO PUSH2 0x1474 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x1497 JUMPI PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE PUSH2 0x14A6 JUMP JUMPDEST PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x7F PUSH1 0xF9 SHL AND SWAP1 MSTORE JUMPDEST PUSH2 0x14B3 DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x25C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP10 ADD MSTORE PUSH1 0x0 JUMPDEST DUP4 ISZERO PUSH2 0x14F6 JUMPI PUSH1 0xF0 DUP5 SWAP1 SHR DUP2 DUP2 EQ PUSH2 0x14E8 JUMPI PUSH2 0x14E8 DUP11 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL PUSH2 0x2187 JUMP JUMPDEST PUSH1 0x10 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 POP PUSH2 0x14C5 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150B PUSH2 0x2640 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP4 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP9 MLOAD DUP2 SLOAD SWAP4 DUP11 ADD MLOAD DUP4 DUP12 ADD MLOAD PUSH1 0x60 DUP13 ADD MLOAD PUSH1 0x80 DUP14 ADD MLOAD PUSH1 0x70 SHR PUSH1 0x1 PUSH1 0x48 SHL MUL PUSH27 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000 NOT PUSH2 0xFFFF SWAP1 SWAP3 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH9 0xFFFF00000000000000 NOT PUSH1 0xFF SWAP5 SWAP1 SWAP5 AND PUSH1 0x1 PUSH1 0x30 SHL MUL PUSH7 0xFF000000000000 NOT PUSH1 0xF8 SWAP7 SWAP1 SWAP7 SHR PUSH6 0x10000000000 MUL PUSH6 0xFF0000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP9 AND PUSH5 0xFFFFFFFFFF NOT SWAP1 SWAP12 AND SWAP11 SWAP1 SWAP11 OR SWAP7 SWAP1 SWAP7 AND SWAP9 SWAP1 SWAP9 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR AND SWAP5 SWAP1 SWAP5 OR AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE MLOAD SWAP3 SWAP4 POP SWAP1 SWAP2 PUSH32 0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E SWAP2 SWAP1 LOG2 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1610 DUP3 PUSH2 0x264D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x1621 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x162F JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x163C JUMPI POP POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x1 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x164A JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x1661 JUMPI POP PUSH1 0x3 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x165F JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x167A JUMPI PUSH2 0x1673 DUP6 DUP8 DUP5 PUSH1 0x0 PUSH2 0x10B7 JUMP JUMPDEST SWAP1 POP PUSH2 0x16C6 JUMP JUMPDEST PUSH1 0x2 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x1688 JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x169F JUMPI POP PUSH1 0x4 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x169D JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x16AF JUMPI PUSH2 0x1673 DUP6 DUP8 DUP5 PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x6 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x16BD JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x16C6 JUMPI POP DUP1 JUMPDEST PUSH2 0x666 DUP6 DUP6 DUP5 DUP5 PUSH2 0x2663 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16E3 DUP5 PUSH2 0x264D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x16F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 ISZERO PUSH2 0x172B JUMPI PUSH2 0x171C DUP6 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP8 PUSH1 0x60 ADD MLOAD DUP9 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x172B JUMPI POP PUSH1 0x0 JUMPDEST PUSH1 0x80 DUP6 ADD MLOAD PUSH2 0x173A SWAP1 DUP3 PUSH2 0x287E JUMP JUMPDEST PUSH1 0x80 DUP7 ADD MSTORE PUSH2 0x174B DUP6 DUP9 DUP9 DUP6 PUSH2 0x1191 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x1766 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP8 SWAP1 SWAP8 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP5 KECCAK256 SLOAD PUSH2 0xFFFF DUP2 AND SWAP6 PUSH4 0xFFFFFFFF PUSH3 0x10000 DUP4 DIV DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x30 SHL DUP4 DIV AND SWAP5 POP PUSH1 0xFF PUSH1 0x1 PUSH1 0x50 SHL DUP4 DIV AND SWAP4 POP PUSH1 0x1 PUSH1 0x58 SHL SWAP1 SWAP2 DIV PUSH1 0xD8 SHL SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLT ISZERO DUP1 ISZERO PUSH2 0x17F1 JUMPI POP DUP1 PUSH2 0x17EE DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP6 PUSH1 0x60 ADD MLOAD DUP7 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO JUMPDEST PUSH2 0x8EB JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A6A JUMP JUMPDEST PUSH2 0x1815 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x181F PUSH2 0x2640 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP4 DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP2 MLOAD PUSH1 0xA0 DUP2 ADD DUP4 MSTORE SWAP1 SLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP3 MSTORE PUSH6 0x10000000000 DUP2 DIV PUSH1 0xF8 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP6 DUP3 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x1 PUSH1 0x30 SHL DUP6 DIV PUSH1 0xFF AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1 PUSH1 0x38 SHL DUP5 DIV PUSH2 0xFFFF AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x48 SHL SWAP1 SWAP4 DIV PUSH1 0x70 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH2 0x18BA DUP4 PUSH2 0x1412 JUMP JUMPDEST ISZERO PUSH2 0x18DB JUMPI PUSH2 0x18C8 DUP2 PUSH2 0x28A1 JUMP JUMPDEST DUP4 MLOAD PUSH5 0xFFFFFFFFFF AND LT SWAP2 POP PUSH2 0xBE2 SWAP1 POP JUMP JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND ISZERO DUP1 ISZERO SWAP1 PUSH2 0xBD7 JUMPI POP DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND GT ISZERO SWAP1 POP PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x190D DUP5 DUP5 PUSH2 0x28BF JUMP JUMPDEST SWAP1 POP PUSH1 0x1 DUP2 MLOAD GT PUSH2 0x191F JUMPI SWAP1 POP PUSH2 0xEDB JUMP JUMPDEST PUSH2 0xAA3 DUP2 PUSH2 0x29E0 JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO DUP1 ISZERO SWAP1 PUSH2 0x193B JUMPI POP PUSH2 0x3FFF DUP3 GT ISZERO JUMPDEST PUSH2 0x1944 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x80 DUP4 ADD MLOAD PUSH1 0x60 DUP5 ADD MLOAD PUSH2 0xFFFF AND DUP4 EQ ISZERO PUSH2 0x1963 JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND ISZERO PUSH2 0x19A8 JUMPI PUSH1 0xF0 DUP2 SWAP1 SHR PUSH2 0x3FFF AND DUP4 DUP2 EQ ISZERO PUSH2 0x1995 JUMPI POP PUSH1 0x1 PUSH1 0xFE SHL SWAP1 DUP2 AND EQ SWAP1 POP PUSH2 0xEDB JUMP JUMPDEST POP PUSH1 0x10 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH2 0x1963 JUMP JUMPDEST POP PUSH1 0x0 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x19C2 PUSH2 0x2B98 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x50 SHL SWAP1 DIV PUSH4 0xFFFFFFFF AND SWAP5 POP SWAP1 SWAP2 POP DUP4 ISZERO PUSH2 0x1A2E JUMPI DUP1 SLOAD PUSH2 0x1A27 SWAP1 PUSH1 0x1 PUSH1 0x70 SHL SWAP1 DIV PUSH7 0xFFFFFFFFFFFFFF AND PUSH2 0x2BA5 JUMP JUMPDEST SWAP3 POP PUSH2 0x1A43 JUMP JUMPDEST DUP1 SLOAD PUSH1 0x1 PUSH1 0x70 SHL SWAP1 DIV PUSH7 0xFFFFFFFFFFFFFF AND SWAP3 POP JUMPDEST SLOAD PUSH1 0x1 PUSH1 0xA8 SHL SWAP1 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND SWAP8 SWAP4 SWAP7 POP SWAP2 SWAP5 POP SWAP3 POP POP JUMP JUMPDEST DUP2 DUP2 MUL PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x1A8E JUMPI DUP2 ISZERO DUP1 PUSH2 0x1A80 JUMPI POP DUP3 DUP3 DUP3 DUP2 PUSH2 0x1A7D JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x1A89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xEDB JUMP JUMPDEST DUP3 ISZERO DUP1 PUSH2 0x1AA3 JUMPI POP DUP2 DUP4 DUP3 DUP2 PUSH2 0x1AA0 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1ABD DUP7 PUSH2 0x2BB3 JUMP JUMPDEST SWAP1 SWAP3 POP SWAP1 POP PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x1AE2 JUMPI POP PUSH1 0x0 SWAP1 POP PUSH5 0x2540BE400 PUSH2 0x1B64 JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1EE10833 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1B1D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1B31 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1B55 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SGT PUSH2 0x1B64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP7 SWAP2 SWAP6 POP SWAP4 POP SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1B77 PUSH2 0x4022 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B81 PUSH2 0x2BEA JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP8 ISZERO ISZERO DUP5 MSTORE DUP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP3 MLOAD PUSH1 0xA0 DUP2 ADD DUP5 MSTORE DUP2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0xA0 SHL DUP3 DIV DUP2 AND ISZERO ISZERO SWAP5 DUP4 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH1 0x1 PUSH1 0xB0 SHL DUP2 DIV DUP5 AND PUSH1 0xA EXP SWAP5 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE SWAP4 SWAP5 POP SWAP3 SWAP2 PUSH1 0x60 DUP4 ADD SWAP2 PUSH1 0x1 PUSH1 0xA8 SHL SWAP1 SWAP2 DIV AND PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1BF6 JUMPI INVALID JUMPDEST DUP2 MSTORE SWAP2 SLOAD PUSH1 0x1 PUSH1 0xB8 SHL SWAP1 DIV PUSH9 0xFFFFFFFFFFFFFFFFFF AND PUSH1 0x20 SWAP1 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 NOT EQ DUP1 ISZERO PUSH2 0x1C33 JUMPI POP PUSH1 0x1 PUSH1 0xFF SHL DUP4 EQ JUMPDEST ISZERO PUSH2 0x1C3D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x1C46 JUMPI INVALID JUMPDEST SDIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x5 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1C61 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1C86 JUMPI PUSH1 0x0 PUSH2 0x1C72 DUP5 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH2 0x1C82 DUP2 PUSH1 0x0 ADD MLOAD DUP5 PUSH2 0x2BF7 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH1 0x0 DUP3 SGT ISZERO PUSH2 0x1CB2 JUMPI PUSH1 0x0 PUSH2 0x1C9C DUP7 DUP7 DUP6 PUSH2 0x2C89 JUMP JUMPDEST SWAP1 POP DUP6 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x1CAC JUMPI DUP1 SWAP2 POP JUMPDEST POP PUSH2 0xF7F JUMP JUMPDEST PUSH1 0x3 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1CC4 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1CE1 JUMPI PUSH2 0x1CDC DUP5 PUSH2 0x1CD7 DUP5 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2D7C JUMP JUMPDEST PUSH2 0xF7F JUMP JUMPDEST DUP5 MLOAD PUSH2 0xF7F SWAP1 DUP6 PUSH2 0x1CF1 DUP6 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2DB7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x1D05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x5 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D1E JUMPI INVALID JUMPDEST EQ PUSH2 0x1D30 JUMPI PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x1D39 JUMP JUMPDEST PUSH4 0xED1279F PUSH1 0xE1 SHL JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1D4C DUP7 PUSH1 0x0 ADD MLOAD ADDRESS DUP5 PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D60 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1D87 JUMPI PUSH1 0x0 PUSH2 0x1D75 DUP7 PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH2 0x1D81 DUP2 DUP7 PUSH2 0x2F40 JUMP JUMPDEST POP PUSH2 0x1DCA JUMP JUMPDEST PUSH1 0x1 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D99 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1DA9 JUMPI PUSH2 0x1D81 DUP7 DUP6 PUSH2 0x2FAB JUMP JUMPDEST PUSH1 0x2 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1DBB JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x7B JUMPI PUSH2 0x1DCA DUP7 PUSH2 0x3057 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DDB DUP8 PUSH1 0x0 ADD MLOAD ADDRESS DUP6 PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH2 0x1DEF PUSH2 0x1DEA DUP3 DUP5 PUSH2 0x3096 JUMP JUMPDEST PUSH2 0x264D JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0x5F5E100 DUP4 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x1E13 JUMPI POP DUP1 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0xAA3 SWAP1 PUSH2 0xF79 DUP5 PUSH4 0x5F5E100 PUSH2 0x1A5E JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x1E39 JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x0 DUP3 SGT PUSH2 0x1E46 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1E51 DUP5 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E62 DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x30F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x2 DUP2 SDIV PUSH12 0x33B2E3C9FD0803CE8000000 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 SWAP1 SUB SDIV DUP6 SGT ISZERO PUSH2 0x1E8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP2 PUSH12 0x33B2E3C9FD0803CE8000000 DUP8 MUL ADD DUP2 PUSH2 0x1EA6 JUMPI INVALID JUMPDEST SDIV SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1EC7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1EE2 DUP8 PUSH1 0x80 ADD MLOAD DUP4 PUSH2 0xF87 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP1 PUSH2 0x1EF7 JUMPI PUSH1 0x0 DUP1 SWAP4 POP SWAP4 POP POP POP PUSH2 0x1F5F JUMP JUMPDEST DUP5 DUP1 ISZERO PUSH2 0x1F04 JUMPI POP PUSH1 0x0 DUP2 SLT JUMPDEST ISZERO PUSH2 0x1F39 JUMPI DUP7 MLOAD PUSH2 0x1F26 SWAP1 PUSH2 0xFFFF AND DUP8 PUSH2 0x1F1D DUP5 PUSH2 0xEE1 JUMP JUMPDEST DUP6 SWAP3 SWAP2 SWAP1 PUSH2 0x317E JUMP JUMPDEST SWAP4 POP PUSH2 0x1F32 DUP3 DUP3 PUSH2 0x1DFA JUMP JUMPDEST SWAP3 POP PUSH2 0x1F5C JUMP JUMPDEST DUP7 MLOAD PUSH2 0x1F4D SWAP1 DUP4 SWAP1 DUP9 SWAP1 PUSH2 0xFFFF AND DUP5 PUSH2 0x1C4E JUMP JUMPDEST SWAP4 POP PUSH2 0x1F59 DUP3 DUP6 PUSH2 0x1DFA JUMP JUMPDEST SWAP3 POP JUMPDEST POP POP JUMPDEST SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST DUP3 MLOAD PUSH1 0x0 SWAP1 TIMESTAMP SWAP1 DUP3 SWAP1 PUSH2 0x1F7D SWAP1 PUSH2 0xFFFF AND PUSH2 0x3214 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F90 DUP3 DUP9 PUSH1 0xC0 ADD MLOAD DUP6 PUSH2 0x323A JUMP JUMPDEST SWAP1 POP PUSH2 0x1F9E DUP8 DUP4 DUP4 DUP9 PUSH2 0x331D JUMP JUMPDEST SWAP4 POP PUSH1 0x0 PUSH2 0x1FAB DUP4 PUSH2 0x344A JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ISZERO PUSH2 0x2033 JUMPI DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x9FC27B92 DUP9 PUSH2 0x1FD9 DUP12 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST DUP10 DUP13 PUSH1 0xC0 ADD MLOAD DUP11 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2000 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4857 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x201A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x202E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP5 ISZERO PUSH2 0x2043 JUMPI PUSH2 0x2043 DUP8 DUP7 PUSH2 0x34BC JUMP JUMPDEST POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2058 PUSH2 0x2B98 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SWAP1 SWAP2 POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP7 SLT DUP1 ISZERO SWAP1 PUSH2 0x20A3 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP7 SGT ISZERO JUMPDEST PUSH2 0x20AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP6 SLT ISZERO DUP1 ISZERO PUSH2 0x20C7 JUMPI POP PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP6 SGT ISZERO JUMPDEST PUSH2 0x20D0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x20DB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH7 0xFFFFFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x20EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 SLOAD PUSH7 0xFFFFFFFFFFFFFF SWAP1 SWAP4 AND PUSH1 0x1 PUSH1 0x70 SHL MUL PUSH7 0xFFFFFFFFFFFFFF PUSH1 0x70 SHL NOT PUSH1 0xA SWAP8 SWAP1 SWAP8 SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0xA8 SHL MUL PUSH1 0x1 PUSH1 0x1 PUSH1 0xA8 SHL SUB PUSH4 0xFFFFFFFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x50 SHL MUL PUSH4 0xFFFFFFFF PUSH1 0x50 SHL NOT PUSH10 0xFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP9 AND PUSH10 0xFFFFFFFFFFFFFFFFFFFF NOT SWAP1 SWAP7 AND SWAP6 SWAP1 SWAP6 OR SWAP7 SWAP1 SWAP7 AND SWAP4 SWAP1 SWAP4 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR SWAP4 SWAP1 SWAP4 AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2199 JUMPI POP PUSH2 0x3FFF DUP4 GT ISZERO JUMPDEST PUSH2 0x21A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP1 ISZERO PUSH2 0x21B6 JUMPI POP DUP3 DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ JUMPDEST ISZERO PUSH2 0x21C0 JUMPI PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x80 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x233B JUMPI PUSH1 0xF0 DUP3 SWAP1 SHR PUSH2 0x3FFF AND DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x21EF JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x2227 JUMPI POP PUSH1 0x80 DUP8 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP7 AND PUSH1 0x10 SWAP1 SWAP4 MUL SWAP3 SWAP1 SWAP3 SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 MSTORE POP PUSH2 0x16D2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x2234 JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x2289 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP6 AND NOT SWAP3 SWAP1 SWAP3 AND SWAP2 PUSH1 0x3 PUSH1 0xFE SHL DUP4 AND PUSH2 0x2267 JUMPI PUSH1 0x10 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP3 POP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x16D2 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x2295 JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x22EF JUMPI PUSH1 0x80 DUP9 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP11 SWAP1 SHL DUP9 OR DUP2 AND PUSH1 0x10 DUP7 MUL SHR SWAP7 SWAP1 SWAP7 OR SWAP6 SWAP2 SHL AND ISZERO PUSH2 0x22C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x1 SWAP2 SWAP1 SWAP2 ADD PUSH1 0x10 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x16D2 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x22FC JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x230A JUMPI POP POP POP POP PUSH2 0x16D2 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND PUSH1 0x10 DUP3 DUP2 MUL SWAP2 SWAP1 SWAP2 SHR SWAP4 SWAP1 SWAP4 OR SWAP3 SWAP2 SWAP1 SWAP2 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND SWAP1 PUSH1 0x1 ADD PUSH2 0x21CA JUMP JUMPDEST DUP5 PUSH2 0x2348 JUMPI POP POP POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x9 DUP2 LT PUSH2 0x2355 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP8 SWAP1 SHL DUP6 OR AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2417 JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x23AC JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x23C2 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23D2 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x23DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23EF JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x23FF JUMPI POP PUSH1 0x60 DUP2 ADD MLOAD ISZERO JUMPDEST ISZERO PUSH2 0x240E JUMPI PUSH2 0x240E DUP12 DUP4 PUSH2 0x34DB JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2390 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x24BA JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2437 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x244E JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x245E JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x2472 JUMPI PUSH1 0x80 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 SSTORE PUSH2 0x24B1 JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2484 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x249D JUMPI PUSH1 0x80 DUP2 ADD MLOAD DUP1 PUSH2 0x249A DUP4 DUP3 PUSH2 0x362A JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x24A9 DUP2 DUP7 DUP7 DUP7 PUSH2 0x375B JUMP JUMPDEST SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x241B JUMP JUMPDEST POP PUSH1 0x60 DUP10 ADD MLOAD PUSH1 0x0 PUSH2 0x24CA PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP12 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP JUMPDEST DUP13 PUSH1 0x20 ADD MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2594 JUMPI PUSH1 0x0 DUP14 PUSH1 0x20 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2505 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x2522 JUMPI POP PUSH2 0x258C JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2534 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2552 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x254F JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x255B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2567 DUP2 DUP10 DUP10 DUP10 PUSH2 0x375B JUMP JUMPDEST SWAP2 SWAP10 POP SWAP8 POP SWAP6 POP PUSH2 0x2584 DUP2 DUP5 DUP8 PUSH1 0x10 DUP2 LT PUSH2 0x257E JUMPI INVALID JUMPDEST ADD PUSH2 0x362A JUMP JUMPDEST PUSH1 0x1 DUP6 ADD SWAP5 POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x24E6 JUMP JUMPDEST POP PUSH1 0x10 DUP4 GT ISZERO DUP1 ISZERO PUSH2 0x25AB JUMPI POP PUSH5 0xFFFFFFFFFF DUP5 GT ISZERO JUMPDEST PUSH2 0x25B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP4 SWAP11 SWAP3 SWAP10 POP SWAP8 POP SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000 DUP4 AND DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x2637 JUMPI PUSH1 0x1 PUSH1 0xFE SHL DUP3 DUP2 AND EQ ISZERO PUSH2 0x2621 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND DUP2 SHR SWAP3 SWAP1 SWAP3 OR SWAP2 PUSH1 0x10 ADD JUMPDEST PUSH1 0x10 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP2 POP PUSH2 0x25ED JUMP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x1 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 GT ISZERO PUSH2 0x1D05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2671 JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x2688 JUMPI POP PUSH1 0x4 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2686 JUMPI INVALID JUMPDEST EQ JUMPDEST DUP1 PUSH2 0x269E JUMPI POP PUSH1 0x6 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x269C JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x276A JUMPI PUSH2 0x26AD DUP5 DUP3 PUSH2 0x17BE JUMP JUMPDEST PUSH1 0x60 DUP5 ADD MLOAD PUSH2 0x26BC SWAP1 DUP3 PUSH2 0x287E JUMP JUMPDEST PUSH1 0x60 DUP6 ADD MSTORE DUP4 MLOAD PUSH1 0x40 MLOAD PUSH4 0x21285613 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 PUSH20 0x0 SWAP2 PUSH4 0x4250AC26 SWAP2 PUSH2 0x26FD SWAP2 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x4AC3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2715 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2729 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x274D SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0xC0 DUP7 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x275F SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0xC0 DUP7 ADD MSTORE POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x5 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2778 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x16D2 JUMPI DUP2 PUSH2 0x27A2 DUP6 PUSH1 0xC0 ADD MLOAD PUSH2 0x11C6 DUP8 PUSH1 0xA0 ADD MLOAD DUP9 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO PUSH2 0x27C0 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x498E JUMP JUMPDEST PUSH1 0xC0 DUP5 ADD MLOAD PUSH2 0x27CF SWAP1 DUP4 PUSH2 0x287E JUMP JUMPDEST PUSH1 0xC0 DUP6 ADD MSTORE DUP4 MLOAD PUSH1 0x40 MLOAD PUSH4 0x52E73F77 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 PUSH20 0x0 SWAP2 PUSH4 0x52E73F77 SWAP2 PUSH2 0x2810 SWAP2 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x4AC3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2828 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x283C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2860 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x2872 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST DUP1 DUP3 SUB DUP3 DUP2 SGT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x2 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x15180 DUP3 LT ISZERO PUSH2 0x28B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x15180 DUP2 MOD SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x10 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x28D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x28DC PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH1 0xFF DUP6 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x2910 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x294A JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x2937 PUSH2 0x3FB8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x292F JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x29D6 JUMPI PUSH1 0x0 DUP4 DUP3 PUSH1 0x10 DUP2 LT PUSH2 0x2969 JUMPI INVALID JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x297A JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD DUP4 SLOAD PUSH2 0xFFFF DUP2 AND DUP3 MSTORE PUSH5 0xFFFFFFFFFF PUSH3 0x10000 DUP3 DIV AND SWAP3 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0x38 SHL DUP4 DIV AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x40 SHL SWAP1 SWAP2 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH1 0x1 ADD PUSH2 0x2950 JUMP JUMPDEST POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x29FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2A24 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x2A81 JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2A40 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x2A61 DUP2 PUSH1 0x0 ADD MLOAD DUP3 PUSH1 0x20 ADD MLOAD DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0x37E0 JUMP JUMPDEST DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2A6D JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE POP PUSH1 0x1 ADD PUSH2 0x2A2A JUMP JUMPDEST POP PUSH1 0x1 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x16D2 JUMPI DUP1 JUMPDEST PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x2AC7 JUMPI POP DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2AA6 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2ABD JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2B8F JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2AD8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2AEF JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B06 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2B19 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP3 DUP2 MSTORE POP DUP3 DUP2 MSTORE POP POP POP DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2B36 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B4D JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP7 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B64 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP8 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2B77 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD SWAP2 SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x0 NOT ADD PUSH2 0x2A8F JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2A85 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x6 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x8 DUP2 SWAP1 SHR PUSH1 0xFF SWAP1 SWAP2 AND SHL SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x2BC0 PUSH2 0x383B JUMP JUMPDEST PUSH1 0x0 SWAP5 DUP6 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP2 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND SWAP3 PUSH1 0x1 PUSH1 0xA0 SHL SWAP1 SWAP2 DIV PUSH1 0xFF AND SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x7 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x2C06 JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C11 DUP5 PUSH2 0x30F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2C1E DUP5 PUSH2 0x3848 JUMP JUMPDEST SWAP1 POP DUP2 PUSH12 0x19D971E4FE8401E74000001 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP2 PUSH2 0x2C3B JUMPI INVALID JUMPDEST SDIV DUP2 SGT ISZERO PUSH2 0x2C48 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH12 0x33B2E3C9FD0803CE8000000 PUSH12 0x19D971E4FE8401E74000000 DUP4 DUP4 MUL ADD SDIV PUSH1 0x0 DUP6 SGT PUSH2 0x2C7D JUMPI PUSH2 0x2C78 DUP2 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2C7F JUMP JUMPDEST DUP1 JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH1 0x5 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x2CA0 JUMPI INVALID JUMPDEST EQ PUSH2 0x2CB2 JUMPI PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2CBB JUMP JUMPDEST PUSH4 0xED1279F PUSH1 0xE1 SHL JUMPDEST SWAP1 POP DUP7 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x2CD7 JUMPI DUP7 MLOAD PUSH2 0x2CD4 SWAP1 ADDRESS DUP4 PUSH2 0x2E2E JUMP JUMPDEST SWAP3 POP JUMPDEST DUP7 MLOAD PUSH2 0x2CE4 SWAP1 DUP8 DUP8 PUSH2 0x3869 JUMP JUMPDEST DUP7 PUSH1 0x20 ADD MLOAD DUP1 PUSH2 0x2CF8 JUMPI POP PUSH1 0x0 DUP8 PUSH1 0x80 ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2D0D JUMPI DUP7 MLOAD PUSH2 0x2D0A SWAP1 ADDRESS DUP4 PUSH2 0x2E2E JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x80 DUP8 ADD MLOAD ISZERO PUSH2 0x2D48 JUMPI PUSH1 0x0 PUSH2 0x2D2B DUP9 PUSH2 0x2D26 DUP6 PUSH2 0x264D JUMP JUMPDEST PUSH2 0x1DFA JUMP JUMPDEST SWAP1 POP PUSH2 0x2D3A DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x264D JUMP JUMPDEST DUP2 SGT ISZERO PUSH2 0x2D46 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMPDEST DUP7 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x2D69 JUMPI PUSH2 0x2D5F PUSH2 0x1DEA DUP4 DUP6 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP POP POP POP PUSH2 0xAA3 JUMP JUMPDEST PUSH2 0x2D5F DUP6 PUSH2 0x264D JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND SWAP1 DUP3 ISZERO PUSH2 0x8FC MUL SWAP1 DUP4 SWAP1 PUSH1 0x0 DUP2 DUP2 DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x2DB2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2E22 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x2DB2 PUSH2 0x38C1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 DUP2 AND PUSH1 0x24 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP4 MLOAD DUP1 DUP5 SUB SWAP1 SWAP2 ADD DUP2 MSTORE PUSH1 0x44 SWAP1 SWAP3 ADD DUP4 MSTORE PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP7 AND OR DUP2 MSTORE SWAP3 MLOAD DUP3 MLOAD PUSH1 0x0 SWAP5 DUP6 SWAP5 DUP6 SWAP5 DUP11 AND SWAP4 SWAP1 SWAP3 SWAP1 SWAP2 DUP3 SWAP2 DUP1 DUP4 DUP4 JUMPDEST PUSH1 0x20 DUP4 LT PUSH2 0x2EAB JUMPI DUP1 MLOAD DUP3 MSTORE PUSH1 0x1F NOT SWAP1 SWAP3 ADD SWAP2 PUSH1 0x20 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x2E8C JUMP JUMPDEST PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB DUP1 NOT DUP3 MLOAD AND DUP2 DUP5 MLOAD AND DUP1 DUP3 OR DUP6 MSTORE POP POP POP POP POP POP SWAP1 POP ADD SWAP2 POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2F0B JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2F10 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x2F1F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x2F34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x2F48 PUSH2 0x392E JUMP JUMPDEST SLOAD DUP3 MLOAD PUSH1 0x40 MLOAD PUSH4 0xE8EDA9DF PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 PUSH4 0xE8EDA9DF SWAP2 PUSH2 0x2F7D SWAP2 DUP6 SWAP1 ADDRESS SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x4 ADD PUSH2 0x482A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2F97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x666 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA0712D68 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2FDE SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2FF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x300C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3030 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x3050 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48DA JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1249C58B CALLVALUE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2F97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x30ED JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH2 0x3100 PUSH2 0x392E JUMP JUMPDEST SLOAD PUSH1 0x40 MLOAD PUSH4 0xD15E0053 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND SWAP1 PUSH4 0xD15E0053 SWAP1 PUSH2 0x312E SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3146 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x315A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1DEA SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x3193 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x31AB JUMPI PUSH2 0x31A4 DUP7 DUP6 DUP6 PUSH2 0x393B JUMP JUMPDEST SWAP1 POP PUSH2 0x3208 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31B6 DUP7 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x31CA JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x31E2 JUMPI PUSH2 0x31DB DUP2 DUP7 DUP7 PUSH2 0x39F8 JUMP JUMPDEST SWAP2 POP PUSH2 0x3206 JUMP JUMPDEST PUSH1 0x1 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x31F4 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x7B JUMPI PUSH2 0x31DB DUP8 DUP3 DUP8 DUP8 PUSH2 0x3AAE JUMP JUMPDEST POP JUMPDEST PUSH2 0x2C7F PUSH2 0x3EA DUP3 PUSH2 0x264D JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x321F PUSH2 0x3BAC JUMP JUMPDEST PUSH1 0x0 SWAP4 DUP5 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3249 DUP7 DUP6 PUSH2 0x3BB9 JUMP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x3258 PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH2 0x327D DUP6 DUP10 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x0 SGT ISZERO DUP1 ISZERO PUSH2 0x3296 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP2 LT JUMPDEST PUSH2 0x329F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 SLOAD PUSH12 0xFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP3 AND OR PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x60 SHL NOT AND PUSH1 0x1 PUSH1 0x60 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP7 AND MUL OR DUP3 SSTORE PUSH4 0xFFFFFFFF DUP8 LT PUSH2 0x32F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 SLOAD PUSH4 0xFFFFFFFF DUP8 AND PUSH1 0x1 PUSH1 0xE0 SHL MUL PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB SWAP1 SWAP2 AND OR SWAP1 SSTORE POP SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0xE0 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 ISZERO PUSH2 0x33DE JUMPI PUSH20 0x0 PUSH4 0xE0C01A72 DUP6 PUSH2 0x3352 DUP9 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST DUP9 PUSH1 0xE0 ADD MLOAD DUP10 PUSH2 0x100 ADD MLOAD PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x337C SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4885 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3394 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x33A8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x33CC SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP8 ADD DUP2 SWAP1 MSTORE PUSH2 0x100 DUP8 ADD MSTORE SWAP1 POP JUMPDEST PUSH2 0x3420 PUSH2 0x3419 DUP7 PUSH2 0x100 ADD MLOAD PUSH2 0x3413 PUSH8 0xDE0B6B3A7640000 PUSH2 0x340D DUP9 PUSH2 0x3407 DUP13 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST SWAP1 PUSH2 0x3C5C JUMP JUMPDEST SWAP1 PUSH2 0x3CB5 JUMP JUMPDEST SWAP1 PUSH2 0x3096 JUMP JUMPDEST DUP3 SWAP1 PUSH2 0x3D1C JUMP JUMPDEST SWAP1 POP PUSH2 0x3438 PUSH8 0xDE0B6B3A7640000 PUSH2 0x340D DUP5 DUP7 PUSH2 0x3C5C JUMP JUMPDEST DUP6 PUSH2 0x100 ADD DUP2 DUP2 MSTORE POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3455 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD SWAP2 SWAP3 POP SWAP1 PUSH1 0x1 PUSH1 0xF8 SHL SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x34B1 JUMPI PUSH2 0x348A PUSH2 0x3D76 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 SLOAD AND SWAP3 POP PUSH2 0xBE2 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 SWAP3 POP POP POP PUSH2 0xBE2 JUMP JUMPDEST PUSH2 0x8EB PUSH20 0xCFEAEAD4947F0705A14EC42AC3D44129E1EF3ED5 DUP4 DUP4 PUSH2 0x2DB7 JUMP JUMPDEST DUP2 MLOAD MLOAD DUP2 LT PUSH2 0x34E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x60 ADD MLOAD GT PUSH2 0x34FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x350C JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3523 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3533 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x3551 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x354E JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x355A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ADD DUP1 MLOAD PUSH1 0x0 NOT ADD SWAP1 MSTORE PUSH1 0x0 DUP1 DUP1 JUMPDEST DUP6 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x35CD JUMPI PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3587 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP3 DUP2 PUSH1 0x80 ADD MLOAD GT DUP1 ISZERO PUSH2 0x35B4 JUMPI POP PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x35B1 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST ISZERO PUSH2 0x35C4 JUMPI DUP1 PUSH1 0x80 ADD MLOAD SWAP3 POP DUP2 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x356B JUMP JUMPDEST POP DUP2 DUP5 EQ ISZERO PUSH2 0x35E6 JUMPI POP POP PUSH1 0x2 PUSH1 0xA0 SWAP2 SWAP1 SWAP2 ADD MSTORE PUSH2 0x8EB JUMP JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x0 ADD MLOAD DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x35F8 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x80 DUP6 DUP2 ADD DUP1 MLOAD SWAP2 DUP4 ADD DUP1 MLOAD SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP2 DUP3 ADD MSTORE PUSH1 0x2 SWAP5 ADD SWAP4 SWAP1 SWAP4 MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x363D JUMPI POP DUP2 MLOAD PUSH2 0x3FFF LT ISZERO JUMPDEST PUSH2 0x3646 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x3663 JUMPI POP PUSH1 0x20 DUP3 ADD MLOAD PUSH5 0xFFFFFFFFFF LT ISZERO JUMPDEST PUSH2 0x366C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x3685 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x368E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT SGT DUP1 ISZERO SWAP1 PUSH2 0x36BD JUMPI POP PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF SLT ISZERO JUMPDEST PUSH2 0x36C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 DUP5 ADD MLOAD PUSH1 0x40 DUP6 ADD MLOAD PUSH1 0x60 SWAP1 SWAP6 ADD MLOAD PUSH1 0xA SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 SHL MUL PUSH19 0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000 NOT PUSH1 0xFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH8 0xFF00000000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP4 AND PUSH3 0x10000 MUL PUSH7 0xFFFFFFFFFF0000 NOT PUSH2 0xFFFF SWAP1 SWAP7 AND PUSH2 0xFFFF NOT SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 OR SWAP5 SWAP1 SWAP5 AND SWAP3 SWAP1 SWAP3 OR AND SWAP2 SWAP1 SWAP2 OR SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x376A DUP9 PUSH2 0x3D83 JUMP JUMPDEST SWAP1 POP DUP5 ISZERO DUP1 PUSH2 0x3778 JUMPI POP DUP1 DUP6 GT JUMPDEST ISZERO PUSH2 0x3781 JUMPI DUP1 SWAP5 POP JUMPDEST DUP7 DUP1 PUSH2 0x3791 JUMPI POP PUSH1 0x0 DUP9 PUSH1 0x60 ADD MLOAD SLT JUMPDEST SWAP7 POP PUSH2 0xFFFF DUP7 AND ISZERO PUSH2 0x37A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP SWAP5 MLOAD SWAP4 SWAP6 PUSH1 0x10 SWAP4 SWAP1 SWAP4 SHR PUSH1 0xF0 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 SWAP4 OR SWAP4 POP SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0xD JUMPDEST PUSH1 0x0 PUSH3 0xF4240 DUP3 PUSH1 0x13 DUP2 GT ISZERO PUSH2 0x37D9 JUMPI INVALID JUMPDEST ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFF DUP5 GT ISZERO PUSH2 0x37F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x3803 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 DUP3 GT ISZERO PUSH2 0x3811 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH8 0xFFFF000000000000 PUSH1 0x30 DUP5 SWAP1 SHL AND PUSH6 0xFFFFFFFFFF00 PUSH1 0x8 DUP5 SWAP1 SHL AND OR PUSH1 0xFF DUP3 AND OR SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0xF PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x3862 JUMPI PUSH2 0x385B DUP3 PUSH2 0xEE1 JUMP JUMPDEST SWAP1 POP PUSH2 0xBE2 JUMP JUMPDEST POP DUP1 PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH4 0x23B872DD PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE ADDRESS PUSH1 0x24 DUP4 ADD MSTORE PUSH1 0x44 DUP3 ADD DUP5 SWAP1 MSTORE SWAP2 MLOAD SWAP2 DUP6 AND SWAP2 PUSH4 0x23B872DD SWAP2 PUSH1 0x64 DUP1 DUP3 ADD SWAP3 PUSH1 0x0 SWAP3 SWAP1 SWAP2 SWAP1 DUP3 SWAP1 SUB ADD DUP2 DUP4 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x38CB PUSH2 0x4051 JUMP JUMPDEST RETURNDATASIZE DUP1 ISZERO PUSH2 0x38DF JUMPI PUSH1 0x20 DUP2 EQ PUSH2 0x38E8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SWAP3 POP PUSH2 0x38F3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x0 DUP4 RETURNDATACOPY DUP2 MLOAD SWAP3 POP JUMPDEST POP DUP2 PUSH2 0x8EB JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x5 PUSH1 0x24 DUP3 ADD MSTORE PUSH5 0x455243323 PUSH1 0xDC SHL PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x13 PUSH2 0x37C7 JUMP JUMPDEST DUP3 MLOAD PUSH1 0x40 MLOAD PUSH4 0xDB006A75 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 SELFBALANCE SWAP2 DUP4 SWAP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 PUSH4 0xDB006A75 SWAP1 PUSH2 0x396F SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3989 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x399D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x39C1 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x39E1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x491D JUMP JUMPDEST SELFBALANCE PUSH2 0x39EC DUP2 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP PUSH2 0x2D72 DUP7 DUP6 PUSH2 0x2D7C JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A18 PUSH2 0x3A13 DUP6 PUSH1 0x0 ADD MLOAD PUSH2 0x3A0E DUP6 PUSH2 0x264D JUMP JUMPDEST PUSH2 0x2BF7 JUMP JUMPDEST PUSH2 0x1CF6 JUMP JUMPDEST SWAP1 POP PUSH2 0x3A22 PUSH2 0x392E JUMP JUMPDEST SLOAD DUP5 MLOAD PUSH1 0x40 MLOAD PUSH4 0x1A4CA37B PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 PUSH4 0x69328DEC SWAP2 PUSH2 0x3A54 SWAP2 DUP6 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x4807 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A6E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3A82 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3AA6 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 MLOAD PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0x3AC7 SWAP1 ADDRESS PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xDB006A75 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3AFB SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3B15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3B29 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3B4D SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x3B6D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x491D JUMP JUMPDEST DUP6 MLOAD PUSH1 0x0 SWAP1 PUSH2 0x3B84 SWAP1 ADDRESS PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH2 0x3B90 DUP2 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP PUSH2 0x3BA1 DUP8 PUSH1 0x0 ADD MLOAD DUP8 DUP7 PUSH2 0x2DB7 JUMP JUMPDEST POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x3 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3BC7 DUP6 PUSH2 0x3DF0 JUMP JUMPDEST SWAP2 SWAP5 POP SWAP3 POP SWAP1 POP DUP1 DUP5 GT DUP1 ISZERO PUSH2 0x3BDD JUMPI POP PUSH1 0x0 DUP2 GT JUMPDEST DUP1 ISZERO PUSH2 0x3BE9 JUMPI POP PUSH1 0x0 DUP4 GT JUMPDEST ISZERO PUSH2 0x3C48 JUMPI PUSH1 0x0 PUSH2 0x3BF9 DUP7 PUSH2 0x1755 JUMP JUMPDEST POP POP POP SWAP2 POP POP PUSH1 0x0 PUSH2 0x3C24 PUSH2 0x3C1B PUSH4 0x5F5E100 DUP5 PUSH2 0x3C5C SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP5 DUP9 SUB DUP8 PUSH2 0x3E4C JUMP JUMPDEST SWAP1 POP PUSH2 0x3C30 DUP5 DUP3 PUSH2 0x3D1C JUMP JUMPDEST SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP5 LT PUSH2 0x3C45 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x11 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x3C6B JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST DUP3 DUP3 MUL DUP3 DUP5 DUP3 DUP2 PUSH2 0x3C78 JUMPI INVALID JUMPDEST DIV EQ PUSH2 0xAA3 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE PUSH1 0x21 DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH2 0x4B96 PUSH1 0x21 SWAP2 CODECOPY PUSH1 0x40 ADD SWAP2 POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x3D0B JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1A PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206469766973696F6E206279207A65726F000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x3D14 JUMPI INVALID JUMPDEST DIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0xAA3 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x12 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD GT DUP1 ISZERO PUSH2 0x3D9D JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x3DA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x2 LT PUSH2 0x3DBD JUMPI POP PUSH1 0x20 DUP2 ADD MLOAD PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DCF PUSH1 0x1 DUP5 PUSH1 0x40 ADD MLOAD SUB PUSH2 0x3E6E JUMP JUMPDEST PUSH1 0x20 DUP5 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0xAA3 SWAP1 PUSH3 0x76A700 SWAP1 PUSH2 0x3DEA SWAP1 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP1 PUSH2 0x3D1C JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x3DFE PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP6 SWAP1 SWAP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP6 SWAP1 SWAP6 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP3 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP2 AND SWAP4 PUSH1 0x1 PUSH1 0x60 SHL DUP3 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP4 POP PUSH1 0x1 PUSH1 0xE0 SHL SWAP1 SWAP2 DIV PUSH4 0xFFFFFFFF AND SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF7F DUP3 PUSH2 0x340D PUSH4 0x1DA9C00 DUP2 DUP9 PUSH2 0x3407 DUP10 PUSH8 0xDE0B6B3A7640000 PUSH2 0x3C5C JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 EQ ISZERO PUSH2 0x3E83 JUMPI POP PUSH3 0x76A700 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x2 EQ ISZERO PUSH2 0x3E96 JUMPI POP PUSH3 0xED4E00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x3 EQ ISZERO PUSH2 0x3EAA JUMPI POP PUSH4 0x1DA9C00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x4 EQ ISZERO PUSH2 0x3EBE JUMPI POP PUSH4 0x3B53800 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x5 EQ ISZERO PUSH2 0x3ED2 JUMPI POP PUSH4 0x9450C00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x6 EQ ISZERO PUSH2 0x3EE6 JUMPI POP PUSH4 0x128A1800 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x7 EQ ISZERO PUSH2 0x3EFA JUMPI POP PUSH4 0x25143000 PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x493D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3FF3 JUMPI INVALID JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE SWAP1 PUSH1 0x60 DUP3 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1 SWAP1 PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY POP SWAP2 SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x4097 JUMPI DUP1 DUP2 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x40AD JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x40C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x40DE JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x20 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP4 GT ISZERO PUSH2 0x40F4 JUMPI INVALID JUMPDEST PUSH2 0x4101 DUP3 DUP4 DUP6 MUL ADD PUSH2 0x4B51 JUMP JUMPDEST DUP4 DUP2 MSTORE DUP3 DUP2 ADD SWAP1 DUP7 DUP5 ADD PUSH1 0xC0 DUP1 DUP8 MUL DUP10 ADD DUP7 ADD DUP11 LT ISZERO PUSH2 0x411F JUMPI DUP8 DUP9 REVERT JUMPDEST DUP8 JUMPDEST DUP8 DUP2 LT ISZERO PUSH2 0x41A0 JUMPI DUP2 DUP4 DUP13 SUB SLT ISZERO PUSH2 0x4137 JUMPI DUP9 DUP10 REVERT JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP4 DUP2 ADD DUP2 DUP2 LT DUP10 DUP3 GT OR ISZERO PUSH2 0x414C JUMPI INVALID JUMPDEST DUP3 MSTORE DUP5 MLOAD DUP2 MSTORE DUP9 DUP6 ADD MLOAD DUP10 DUP3 ADD MSTORE DUP5 DUP3 ADD MLOAD SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP1 DUP6 ADD MLOAD SWAP1 DUP3 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP3 ADD MSTORE PUSH1 0xA0 SWAP1 PUSH2 0x4187 DUP3 DUP7 ADD PUSH2 0x41C7 JUMP JUMPDEST SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MSTORE SWAP4 DUP7 ADD SWAP4 SWAP2 DUP2 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x4121 JUMP JUMPDEST POP SWAP2 SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0x4 DUP2 LT PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH2 0xBE2 DUP2 PUSH2 0x4B85 JUMP JUMPDEST DUP1 MLOAD PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4206 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x420F DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x4229 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4235 DUP7 DUP3 DUP8 ADD PUSH2 0x4086 JUMP JUMPDEST SWAP5 SWAP8 SWAP1 SWAP7 POP SWAP4 SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4259 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x4262 DUP7 PUSH2 0x406F JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x427D JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4289 DUP10 DUP4 DUP11 ADD PUSH2 0x4086 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x42A1 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP9 ADD SWAP2 POP DUP9 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x42B4 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x42C2 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP10 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x42D3 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP7 SWAP10 SWAP6 SWAP9 POP SWAP4 SWAP7 POP PUSH1 0x20 ADD SWAP5 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x42FA JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4303 DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x431E JUMPI DUP4 DUP5 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4331 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x433F JUMPI DUP5 DUP6 REVERT JUMPDEST DUP8 PUSH1 0x20 PUSH1 0xC0 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x4353 JUMPI DUP5 DUP6 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP5 POP DUP1 SWAP4 POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x437A JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x4383 DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x4229 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43AE JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0xAA3 DUP2 PUSH2 0x4B74 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43CA JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x7 DUP2 LT PUSH2 0xAA3 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43E9 JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4402 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD SWAP2 POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x4414 DUP2 PUSH2 0x4B74 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4430 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xA0 DUP2 ADD DUP2 DUP2 LT PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT OR ISZERO PUSH2 0x444C JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x4463 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x447F JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x4490 PUSH1 0x40 DUP5 ADD PUSH2 0x41E1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x44A1 PUSH1 0x60 DUP5 ADD PUSH2 0x41D6 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x44B2 PUSH1 0x80 DUP5 ADD PUSH2 0x41AF JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x44D0 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x44E6 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP1 DUP5 ADD SWAP1 PUSH1 0x80 DUP3 DUP8 SUB SLT ISZERO PUSH2 0x44F9 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x80 DUP2 ADD DUP2 DUP2 LT DUP4 DUP3 GT OR ISZERO PUSH2 0x450E JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD DUP3 DUP2 GT ISZERO PUSH2 0x451F JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x452B DUP9 DUP3 DUP7 ADD PUSH2 0x40CE JUMP JUMPDEST DUP3 MSTORE POP PUSH1 0x20 DUP4 ADD MLOAD DUP3 DUP2 GT ISZERO PUSH2 0x453F JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x454B DUP9 DUP3 DUP7 ADD PUSH2 0x40CE JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP4 ADD MLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 DUP4 ADD MLOAD PUSH1 0x60 DUP3 ADD MSTORE DUP1 SWAP5 POP POP POP POP PUSH1 0x20 DUP4 ADD MLOAD SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x458A JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0xAA3 DUP2 PUSH2 0x4B85 JUMP JUMPDEST DUP2 DUP4 MSTORE PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFB SHL SUB DUP4 GT ISZERO PUSH2 0x45AD JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x20 DUP4 MUL DUP1 DUP4 PUSH1 0x20 DUP8 ADD CALLDATACOPY SWAP4 SWAP1 SWAP4 ADD PUSH1 0x20 ADD SWAP3 DUP4 MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD SWAP5 POP DUP1 DUP5 ADD DUP4 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4636 JUMPI DUP2 MLOAD DUP1 MLOAD DUP9 MSTORE DUP4 DUP2 ADD MLOAD DUP5 DUP10 ADD MSTORE PUSH1 0x40 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0x60 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0x80 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0xA0 SWAP1 DUP2 ADD MLOAD SWAP1 PUSH1 0x4 DUP3 LT PUSH2 0x4621 JUMPI INVALID JUMPDEST DUP9 ADD MSTORE PUSH1 0xC0 SWAP1 SWAP7 ADD SWAP6 SWAP1 DUP3 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x45DC JUMP JUMPDEST POP SWAP5 SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 DUP2 AND DUP3 MSTORE DUP5 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x60 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x0 DUP3 DUP5 PUSH1 0x80 DUP5 ADD CALLDATACOPY DUP2 DUP4 ADD PUSH1 0x80 SWAP1 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1F SWAP1 SWAP3 ADD PUSH1 0x1F NOT AND ADD ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP7 DUP8 AND DUP2 MSTORE SWAP5 DUP7 AND PUSH1 0x20 DUP7 ADD MSTORE SWAP3 DUP6 AND PUSH1 0x40 DUP6 ADD MSTORE SWAP1 DUP5 AND PUSH1 0x60 DUP5 ADD MSTORE DUP4 AND PUSH1 0x80 DUP4 ADD MSTORE SWAP1 SWAP2 AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND PUSH1 0x20 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND PUSH1 0x40 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0xFF AND PUSH1 0x60 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP1 PUSH1 0xA0 SHL SUB DUP8 AND DUP3 MSTORE PUSH2 0xFFFF DUP7 AND PUSH1 0x20 DUP4 ADD MSTORE PUSH1 0x80 PUSH1 0x40 DUP4 ADD MSTORE DUP5 MLOAD PUSH1 0x80 DUP1 DUP5 ADD MSTORE PUSH2 0x4778 PUSH2 0x100 DUP5 ADD DUP3 PUSH2 0x45C9 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP7 ADD MLOAD PUSH1 0x7F NOT DUP5 DUP4 SUB ADD PUSH1 0xA0 DUP6 ADD MSTORE PUSH2 0x4795 DUP3 DUP3 PUSH2 0x45C9 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP7 ADD MLOAD PUSH1 0xC0 DUP5 ADD MSTORE PUSH1 0x60 DUP7 ADD MLOAD PUSH1 0xE0 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x47BF DUP2 DUP6 DUP8 PUSH2 0x4595 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND DUP2 MSTORE PUSH2 0xFFFF DUP6 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH5 0xFFFFFFFFFF DUP5 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x80 PUSH1 0x60 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x1DEF SWAP1 DUP4 ADD DUP5 DUP7 PUSH2 0x4595 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 DUP5 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP3 SWAP1 SWAP3 MSTORE SWAP1 SWAP2 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP4 SWAP1 SWAP4 MSTORE SWAP3 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0xFFFF SWAP1 SWAP2 AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP6 SWAP1 SWAP6 AND DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x40 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP4 ADD MSTORE PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xA0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 SWAP1 SWAP5 AND DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x155B985D5D1A1BDC9A5E9959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x4 SWAP1 DUP3 ADD MSTORE PUSH4 0x135A5B9D PUSH1 0xE2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xB SWAP1 DUP3 ADD MSTORE PUSH11 0x4554482042616C616E6365 PUSH1 0xA8 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x6 SWAP1 DUP3 ADD MSTORE PUSH6 0x52656465656D PUSH1 0xD0 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xD SWAP1 DUP3 ADD MSTORE PUSH13 0x92DCECC2D8D2C840D2DCC8CAF PUSH1 0x9B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x556E736F7274656420616374696F6E73 PUSH1 0x80 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x496E73756666696369656E7420746F6B656E2062616C616E6365000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xE SWAP1 DUP3 ADD MSTORE PUSH14 0x1499595B9D1C985B9D0818D85B1B PUSH1 0x92 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x8 SWAP1 DUP3 ADD MSTORE PUSH8 0x9CCACE4086C2E6D PUSH1 0xC3 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x496E76616C69642074726164657320666F72206163636F756E74000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xA SWAP1 DUP3 ADD MSTORE PUSH10 0x2732B390372A37B5B2B7 PUSH1 0xB1 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x92DCE6EACCCCD2C6D2CADCE840C6C2E6D PUSH1 0x7B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x14 SWAP1 DUP3 ADD MSTORE PUSH20 0x125B9CDD59999A58DA595B9D0819195C1BDCDA5D PUSH1 0x62 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH2 0xFFFF SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4AED JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 ADD DUP1 CALLDATALOAD SWAP2 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT ISZERO PUSH2 0x4B06 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 SWAP1 DUP2 ADD SWAP3 POP DUP2 MUL CALLDATASIZE SUB DUP3 SGT ISZERO PUSH2 0x40C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0xDE NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4B32 JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0x5E NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4B32 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP2 DUP2 ADD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x4B6C JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x4B82 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xFFFF DUP2 AND DUP2 EQ PUSH2 0x4B82 JUMPI PUSH1 0x0 DUP1 REVERT INVALID MSTORE8 PUSH2 0x6665 0x4D PUSH2 0x7468 GASPRICE KECCAK256 PUSH14 0x756C7469706C69636174696F6E20 PUSH16 0x766572666C6F77A26469706673582212 KECCAK256 ORIGIN DUP2 0x1F PUSH32 0x2DFAED6AE73F5EE82DDE37E34E8A29D87704373D06746E0114BF0EE664736F6C PUSH4 0x43000706 STOP CALLER ", - "pcMap": { - "0": { - "offset": [ - 591, - 24150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x80" - }, - "2": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "4": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "MSTORE", - "path": "29" - }, - "5": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "7": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "8": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "LT", - "path": "29" - }, - "9": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x7B" - }, - "12": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "13": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "15": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "CALLDATALOAD", - "path": "29" - }, - "16": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH1", - "path": "29", - "value": "0xE0" - }, - "18": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "SHR", - "path": "29" - }, - "19": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "20": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x6E6A32A6" - }, - "25": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "GT", - "path": "29" - }, - "26": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4E" - }, - "29": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "30": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "31": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x6E6A32A6" - }, - "36": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "37": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0xF3" - }, - "40": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "41": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "42": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x82463367" - }, - "47": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "48": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x106" - }, - "51": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "52": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "53": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x8DA5CB5B" - }, - "58": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "59": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x11B" - }, - "62": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "63": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "64": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0xC4C96DAE" - }, - "69": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "70": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x130" - }, - "73": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "74": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x7B" - }, - "77": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMP", - "path": "29" - }, - "78": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPDEST", - "path": "29" - }, - "79": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "80": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x276B64B" - }, - "85": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "86": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x80" - }, - "89": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "90": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "91": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x24A3D622" - }, - "96": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "97": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x95" - }, - "100": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "101": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "102": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x541F5270" - }, - "107": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "108": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0xC0" - }, - "111": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "112": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "113": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH4", - "path": "29", - "value": "0x5950D8E9" - }, - "118": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "EQ", - "path": "29" - }, - "119": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH2", - "path": "29", - "value": "0xE0" - }, - "122": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPI", - "path": "29" - }, - "123": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "JUMPDEST", - "path": "29" - }, - "124": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "126": { - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "DUP1", - "path": "29" - }, - "127": { - "first_revert": true, - "fn": null, - "offset": [ - 591, - 24150 - ], - "op": "REVERT", - "path": "29" - }, - "128": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "JUMPDEST", - "path": "29" - }, - "129": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "PUSH2", - "path": "29", - "value": "0x93" - }, - "132": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8E" - }, - "135": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "136": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "138": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "PUSH2", - "path": "29", - "value": "0x41F2" - }, - "141": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 3235, - 3674 - ], - "op": "JUMP", - "path": "29" - }, - "142": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "JUMPDEST", - "path": "29" - }, - "143": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "PUSH2", - "path": "29", - "value": "0x157" - }, - "146": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 3235, - 3674 - ], - "op": "JUMP", - "path": "29" - }, - "147": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "JUMPDEST", - "path": "29" - }, - "148": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "STOP", - "path": "29" - }, - "149": { - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "150": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "CALLVALUE", - "path": "63" - }, - "151": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "152": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "ISZERO", - "path": "63" - }, - "153": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0xA1" - }, - "156": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPI", - "path": "63" - }, - "157": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "159": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "160": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "REVERT", - "path": "63" - }, - "161": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "162": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "POP", - "path": "63" - }, - "163": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0xAA" - }, - "166": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x1E7" - }, - "169": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "170": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "171": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x40" - }, - "173": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "MLOAD", - "path": "63" - }, - "174": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0xB7" - }, - "177": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "SWAP2", - "path": "63" - }, - "178": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "SWAP1", - "path": "63" - }, - "179": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x4641" - }, - "182": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "183": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "184": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x40" - }, - "186": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "MLOAD", - "path": "63" - }, - "187": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "188": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "SWAP2", - "path": "63" - }, - "189": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "SUB", - "path": "63" - }, - "190": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "SWAP1", - "path": "63" - }, - "191": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "RETURN", - "path": "63" - }, - "192": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "JUMPDEST", - "path": "29" - }, - "193": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "CALLVALUE", - "path": "29" - }, - "194": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "DUP1", - "path": "29" - }, - "195": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "ISZERO", - "path": "29" - }, - "196": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH2", - "path": "29", - "value": "0xCC" - }, - "199": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "JUMPI", - "path": "29" - }, - "200": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "202": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "DUP1", - "path": "29" - }, - "203": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "REVERT", - "path": "29" - }, - "204": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "JUMPDEST", - "path": "29" - }, - "205": { - "op": "POP" - }, - "206": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH2", - "path": "29", - "value": "0x93" - }, - "209": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH2", - "path": "29", - "value": "0xDB" - }, - "212": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "213": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "215": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4366" - }, - "218": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 4487, - 9902 - ], - "op": "JUMP", - "path": "29" - }, - "219": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "JUMPDEST", - "path": "29" - }, - "220": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1F6" - }, - "223": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 4487, - 9902 - ], - "op": "JUMP", - "path": "29" - }, - "224": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "JUMPDEST", - "path": "29" - }, - "225": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "PUSH2", - "path": "29", - "value": "0x93" - }, - "228": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEE" - }, - "231": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "232": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "234": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4242" - }, - "237": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11159, - 12579 - ], - "op": "JUMP", - "path": "29" - }, - "238": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "JUMPDEST", - "path": "29" - }, - "239": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "PUSH2", - "path": "29", - "value": "0x53E" - }, - "242": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11159, - 12579 - ], - "op": "JUMP", - "path": "29" - }, - "243": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "JUMPDEST", - "path": "29" - }, - "244": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "PUSH2", - "path": "29", - "value": "0x93" - }, - "247": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "PUSH2", - "path": "29", - "value": "0x101" - }, - "250": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "251": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "253": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "PUSH2", - "path": "29", - "value": "0x42E6" - }, - "256": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1241, - 2768 - ], - "op": "JUMP", - "path": "29" - }, - "257": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "JUMPDEST", - "path": "29" - }, - "258": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "PUSH2", - "path": "29", - "value": "0x66E" - }, - "261": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1241, - 2768 - ], - "op": "JUMP", - "path": "29" - }, - "262": { - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "263": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "CALLVALUE", - "path": "63" - }, - "264": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "DUP1", - "path": "63" - }, - "265": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "ISZERO", - "path": "63" - }, - "266": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x112" - }, - "269": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "JUMPI", - "path": "63" - }, - "270": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "272": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "DUP1", - "path": "63" - }, - "273": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "REVERT", - "path": "63" - }, - "274": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "275": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "POP", - "path": "63" - }, - "276": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0xAA" - }, - "279": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x7F4" - }, - "282": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 920, - 946 - ], - "op": "JUMP", - "path": "63" - }, - "283": { - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "284": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "CALLVALUE", - "path": "63" - }, - "285": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "DUP1", - "path": "63" - }, - "286": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "ISZERO", - "path": "63" - }, - "287": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x127" - }, - "290": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "JUMPI", - "path": "63" - }, - "291": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "293": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "DUP1", - "path": "63" - }, - "294": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "REVERT", - "path": "63" - }, - "295": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "296": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "POP", - "path": "63" - }, - "297": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0xAA" - }, - "300": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x803" - }, - "303": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 811, - 831 - ], - "op": "JUMP", - "path": "63" - }, - "304": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "JUMPDEST", - "path": "29" - }, - "305": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "CALLVALUE", - "path": "29" - }, - "306": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "DUP1", - "path": "29" - }, - "307": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "ISZERO", - "path": "29" - }, - "308": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH2", - "path": "29", - "value": "0x13C" - }, - "311": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "JUMPI", - "path": "29" - }, - "312": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "314": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "DUP1", - "path": "29" - }, - "315": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "REVERT", - "path": "29" - }, - "316": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "JUMPDEST", - "path": "29" - }, - "317": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "POP", - "path": "29" - }, - "318": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH2", - "path": "29", - "value": "0x145" - }, - "321": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH2", - "path": "29", - "value": "0x81A" - }, - "324": { - "fn": "BatchAction.getLibInfo", - "jump": "i", - "offset": [ - 23767, - 24148 - ], - "op": "JUMP", - "path": "29" - }, - "325": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "JUMPDEST", - "path": "29" - }, - "326": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "328": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "MLOAD", - "path": "29" - }, - "329": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB7" - }, - "332": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP7", - "path": "29" - }, - "333": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP6", - "path": "29" - }, - "334": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP5", - "path": "29" - }, - "335": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP4", - "path": "29" - }, - "336": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP3", - "path": "29" - }, - "337": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP2", - "path": "29" - }, - "338": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP1", - "path": "29" - }, - "339": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "PUSH2", - "path": "29", - "value": "0x469E" - }, - "342": { - "fn": "BatchAction.getLibInfo", - "jump": "i", - "offset": [ - 23767, - 24148 - ], - "op": "JUMP", - "path": "29" - }, - "343": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3235, - 3674 - ], - "op": "JUMPDEST", - "path": "29" - }, - "344": { - "offset": [ - 319, - 320 - ], - "op": "PUSH1", - "path": "28", - "value": "0x2" - }, - "346": { - "offset": [ - 838, - 854 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "348": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 838, - 854 - ], - "op": "SLOAD", - "path": "28" - }, - "349": { - "offset": [ - 838, - 866 - ], - "op": "EQ", - "path": "28" - }, - "350": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 838, - 866 - ], - "op": "ISZERO", - "path": "28" - }, - "351": { - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x183" - }, - "354": { - "offset": [ - 830, - 885 - ], - "op": "JUMPI", - "path": "28" - }, - "355": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x40" - }, - "357": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "MLOAD", - "path": "28" - }, - "358": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "362": { - "op": "PUSH1", - "value": "0xE5" - }, - "364": { - "op": "SHL" - }, - "365": { - "offset": [ - 830, - 885 - ], - "op": "DUP2", - "path": "28" - }, - "366": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "MSTORE", - "path": "28" - }, - "367": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x4" - }, - "369": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "ADD", - "path": "28" - }, - "370": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x17A" - }, - "373": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "SWAP1", - "path": "28" - }, - "374": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x49C5" - }, - "377": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 830, - 885 - ], - "op": "JUMP", - "path": "28" - }, - "378": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "JUMPDEST", - "path": "28" - }, - "379": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x40" - }, - "381": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "MLOAD", - "path": "28" - }, - "382": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "DUP1", - "path": "28" - }, - "383": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "SWAP2", - "path": "28" - }, - "384": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "SUB", - "path": "28" - }, - "385": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "SWAP1", - "path": "28" - }, - "386": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "REVERT", - "path": "28" - }, - "387": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 830, - 885 - ], - "op": "JUMPDEST", - "path": "28" - }, - "388": { - "offset": [ - 319, - 320 - ], - "op": "PUSH1", - "path": "28", - "value": "0x2" - }, - "390": { - "offset": [ - 960, - 976 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "392": { - "offset": [ - 960, - 987 - ], - "op": "SSTORE", - "path": "28" - }, - "393": { - "op": "PUSH1", - "value": "0x1" - }, - "395": { - "op": "PUSH1", - "value": "0x1" - }, - "397": { - "op": "PUSH1", - "value": "0xA0" - }, - "399": { - "op": "SHL" - }, - "400": { - "op": "SUB" - }, - "401": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3429 - ], - "op": "DUP4", - "path": "29", - "statement": 0 - }, - "402": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3429 - ], - "op": "AND", - "path": "29" - }, - "403": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3419, - 3429 - ], - "op": "CALLER", - "path": "29" - }, - "404": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3429 - ], - "op": "EQ", - "path": "29" - }, - "405": { - "branch": 359, - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3429 - ], - "op": "DUP1", - "path": "29" - }, - "406": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3460 - ], - "op": "PUSH2", - "path": "29", - "value": "0x19E" - }, - "409": { - "branch": 359, - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3460 - ], - "op": "JUMPI", - "path": "29" - }, - "410": { - "op": "POP" - }, - "411": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3433, - 3443 - ], - "op": "CALLER", - "path": "29" - }, - "412": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3455, - 3459 - ], - "op": "ADDRESS", - "path": "29" - }, - "413": { - "branch": 360, - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3433, - 3460 - ], - "op": "EQ", - "path": "29" - }, - "414": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3408, - 3460 - ], - "op": "JUMPDEST", - "path": "29" - }, - "415": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1BA" - }, - "418": { - "branch": 360, - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "JUMPI", - "path": "29" - }, - "419": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "421": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "MLOAD", - "path": "29" - }, - "422": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "426": { - "op": "PUSH1", - "value": "0xE5" - }, - "428": { - "op": "SHL" - }, - "429": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "DUP2", - "path": "29" - }, - "430": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "MSTORE", - "path": "29" - }, - "431": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "433": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "ADD", - "path": "29" - }, - "434": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "437": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "SWAP1", - "path": "29" - }, - "438": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "PUSH2", - "path": "29", - "value": "0x48B4" - }, - "441": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 3400, - 3477 - ], - "op": "JUMP", - "path": "29" - }, - "442": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3400, - 3477 - ], - "op": "JUMPDEST", - "path": "29" - }, - "443": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3487, - 3515 - ], - "op": "PUSH2", - "path": "29", - "statement": 1, - "value": "0x1C3" - }, - "446": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3507, - 3514 - ], - "op": "DUP4", - "path": "29" - }, - "447": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3487, - 3506 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8A0" - }, - "450": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 3487, - 3515 - ], - "op": "JUMP", - "path": "29" - }, - "451": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3487, - 3515 - ], - "op": "JUMPDEST", - "path": "29" - }, - "452": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3525, - 3561 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "454": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3564, - 3609 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1D0" - }, - "457": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3592, - 3599 - ], - "op": "DUP5", - "path": "29" - }, - "458": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3601, - 3608 - ], - "op": "DUP5", - "path": "29" - }, - "459": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3601, - 3608 - ], - "op": "DUP5", - "path": "29" - }, - "460": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3564, - 3591 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8EF" - }, - "463": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 3564, - 3609 - ], - "op": "JUMP", - "path": "29" - }, - "464": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3564, - 3609 - ], - "op": "JUMPDEST", - "path": "29" - }, - "465": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3525, - 3609 - ], - "op": "SWAP1", - "path": "29" - }, - "466": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3525, - 3609 - ], - "op": "POP", - "path": "29" - }, - "467": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3619, - 3667 - ], - "op": "PUSH2", - "path": "29", - "statement": 2, - "value": "0x1DC" - }, - "470": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3643, - 3650 - ], - "op": "DUP5", - "path": "29" - }, - "471": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3652, - 3666 - ], - "op": "DUP3", - "path": "29" - }, - "472": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3619, - 3642 - ], - "op": "PUSH2", - "path": "29", - "value": "0xAAA" - }, - "475": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 3619, - 3667 - ], - "op": "JUMP", - "path": "29" - }, - "476": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 3619, - 3667 - ], - "op": "JUMPDEST", - "path": "29" - }, - "477": { - "op": "POP" - }, - "478": { - "op": "POP" - }, - "479": { - "offset": [ - 276, - 277 - ], - "op": "PUSH1", - "path": "28", - "value": "0x1" - }, - "481": { - "offset": [ - 1142, - 1158 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "483": { - "offset": [ - 1142, - 1173 - ], - "op": "SSTORE", - "path": "28" - }, - "484": { - "op": "POP" - }, - "485": { - "op": "POP" - }, - "486": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "o", - "offset": [ - 3235, - 3674 - ], - "op": "JUMP", - "path": "29" - }, - "487": { - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "488": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x2" - }, - "490": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "SLOAD", - "path": "63" - }, - "491": { - "op": "PUSH1", - "value": "0x1" - }, - "493": { - "op": "PUSH1", - "value": "0x1" - }, - "495": { - "op": "PUSH1", - "value": "0xA0" - }, - "497": { - "op": "SHL" - }, - "498": { - "op": "SUB" - }, - "499": { - "offset": [ - 1035, - 1063 - ], - "op": "AND", - "path": "63" - }, - "500": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "offset": [ - 1035, - 1063 - ], - "op": "DUP2", - "path": "63" - }, - "501": { - "fn": "BatchAction.batchBalanceAndTradeAction", - "jump": "o", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "502": { - "fn": "BatchAction.batchLend", - "offset": [ - 4487, - 9902 - ], - "op": "JUMPDEST", - "path": "29" - }, - "503": { - "offset": [ - 319, - 320 - ], - "op": "PUSH1", - "path": "28", - "value": "0x2" - }, - "505": { - "offset": [ - 838, - 854 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "507": { - "fn": "BatchAction.batchLend", - "offset": [ - 838, - 854 - ], - "op": "SLOAD", - "path": "28" - }, - "508": { - "offset": [ - 838, - 866 - ], - "op": "EQ", - "path": "28" - }, - "509": { - "fn": "BatchAction.batchLend", - "offset": [ - 838, - 866 - ], - "op": "ISZERO", - "path": "28" - }, - "510": { - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x219" - }, - "513": { - "offset": [ - 830, - 885 - ], - "op": "JUMPI", - "path": "28" - }, - "514": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x40" - }, - "516": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "MLOAD", - "path": "28" - }, - "517": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "521": { - "op": "PUSH1", - "value": "0xE5" - }, - "523": { - "op": "SHL" - }, - "524": { - "offset": [ - 830, - 885 - ], - "op": "DUP2", - "path": "28" - }, - "525": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "MSTORE", - "path": "28" - }, - "526": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x4" - }, - "528": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "ADD", - "path": "28" - }, - "529": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x17A" - }, - "532": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "SWAP1", - "path": "28" - }, - "533": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x49C5" - }, - "536": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 830, - 885 - ], - "op": "JUMP", - "path": "28" - }, - "537": { - "fn": "BatchAction.batchLend", - "offset": [ - 830, - 885 - ], - "op": "JUMPDEST", - "path": "28" - }, - "538": { - "offset": [ - 319, - 320 - ], - "op": "PUSH1", - "path": "28", - "value": "0x2" - }, - "540": { - "offset": [ - 960, - 976 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "542": { - "offset": [ - 960, - 987 - ], - "op": "SSTORE", - "path": "28" - }, - "543": { - "op": "PUSH1", - "value": "0x1" - }, - "545": { - "op": "PUSH1", - "value": "0x1" - }, - "547": { - "op": "PUSH1", - "value": "0xA0" - }, - "549": { - "op": "SHL" - }, - "550": { - "op": "SUB" - }, - "551": { - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4634 - ], - "op": "DUP4", - "path": "29", - "statement": 3 - }, - "552": { - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4634 - ], - "op": "AND", - "path": "29" - }, - "553": { - "fn": "BatchAction.batchLend", - "offset": [ - 4624, - 4634 - ], - "op": "CALLER", - "path": "29" - }, - "554": { - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4634 - ], - "op": "EQ", - "path": "29" - }, - "555": { - "branch": 361, - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4634 - ], - "op": "DUP1", - "path": "29" - }, - "556": { - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4665 - ], - "op": "PUSH2", - "path": "29", - "value": "0x234" - }, - "559": { - "branch": 361, - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4665 - ], - "op": "JUMPI", - "path": "29" - }, - "560": { - "op": "POP" - }, - "561": { - "fn": "BatchAction.batchLend", - "offset": [ - 4638, - 4648 - ], - "op": "CALLER", - "path": "29" - }, - "562": { - "fn": "BatchAction.batchLend", - "offset": [ - 4660, - 4664 - ], - "op": "ADDRESS", - "path": "29" - }, - "563": { - "branch": 362, - "fn": "BatchAction.batchLend", - "offset": [ - 4638, - 4665 - ], - "op": "EQ", - "path": "29" - }, - "564": { - "fn": "BatchAction.batchLend", - "offset": [ - 4613, - 4665 - ], - "op": "JUMPDEST", - "path": "29" - }, - "565": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "PUSH2", - "path": "29", - "value": "0x250" - }, - "568": { - "branch": 362, - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "JUMPI", - "path": "29" - }, - "569": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "571": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "MLOAD", - "path": "29" - }, - "572": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "576": { - "op": "PUSH1", - "value": "0xE5" - }, - "578": { - "op": "SHL" - }, - "579": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "DUP2", - "path": "29" - }, - "580": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "MSTORE", - "path": "29" - }, - "581": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "583": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "ADD", - "path": "29" - }, - "584": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "587": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "SWAP1", - "path": "29" - }, - "588": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "PUSH2", - "path": "29", - "value": "0x48B4" - }, - "591": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 4605, - 4682 - ], - "op": "JUMP", - "path": "29" - }, - "592": { - "fn": "BatchAction.batchLend", - "offset": [ - 4605, - 4682 - ], - "op": "JUMPDEST", - "path": "29" - }, - "593": { - "fn": "BatchAction.batchLend", - "offset": [ - 4692, - 4720 - ], - "op": "PUSH2", - "path": "29", - "statement": 4, - "value": "0x259" - }, - "596": { - "fn": "BatchAction.batchLend", - "offset": [ - 4712, - 4719 - ], - "op": "DUP4", - "path": "29" - }, - "597": { - "fn": "BatchAction.batchLend", - "offset": [ - 4692, - 4711 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8A0" - }, - "600": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 4692, - 4720 - ], - "op": "JUMP", - "path": "29" - }, - "601": { - "fn": "BatchAction.batchLend", - "offset": [ - 4692, - 4720 - ], - "op": "JUMPDEST", - "path": "29" - }, - "602": { - "fn": "BatchAction.batchLend", - "offset": [ - 4731, - 4767 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "604": { - "fn": "BatchAction.batchLend", - "offset": [ - 4770, - 4803 - ], - "op": "PUSH2", - "path": "29", - "value": "0x264" - }, - "607": { - "fn": "BatchAction.batchLend", - "offset": [ - 4795, - 4802 - ], - "op": "DUP5", - "path": "29" - }, - "608": { - "fn": "BatchAction.batchLend", - "offset": [ - 4770, - 4794 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB2B" - }, - "611": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 4770, - 4803 - ], - "op": "JUMP", - "path": "29" - }, - "612": { - "fn": "BatchAction.batchLend", - "offset": [ - 4770, - 4803 - ], - "op": "JUMPDEST", - "path": "29" - }, - "613": { - "fn": "BatchAction.batchLend", - "offset": [ - 4731, - 4803 - ], - "op": "SWAP1", - "path": "29" - }, - "614": { - "fn": "BatchAction.batchLend", - "offset": [ - 4731, - 4803 - ], - "op": "POP", - "path": "29" - }, - "615": { - "fn": "BatchAction.batchLend", - "offset": [ - 4980, - 5016 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "617": { - "fn": "BatchAction.batchLend", - "offset": [ - 5019, - 5146 - ], - "op": "PUSH2", - "path": "29", - "value": "0x278" - }, - "620": { - "fn": "BatchAction.batchLend", - "offset": [ - 5069, - 5076 - ], - "op": "DUP6", - "path": "29" - }, - "621": { - "fn": "BatchAction.batchLend", - "offset": [ - 5090, - 5104 - ], - "op": "DUP4", - "path": "29" - }, - "622": { - "fn": "BatchAction.batchLend", - "offset": [ - 5090, - 5121 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "624": { - "fn": "BatchAction.batchLend", - "offset": [ - 5090, - 5121 - ], - "op": "ADD", - "path": "29" - }, - "625": { - "fn": "BatchAction.batchLend", - "offset": [ - 5090, - 5121 - ], - "op": "MLOAD", - "path": "29" - }, - "626": { - "fn": "BatchAction.batchLend", - "offset": [ - 5135, - 5136 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "628": { - "fn": "BatchAction.batchLend", - "offset": [ - 5019, - 5055 - ], - "op": "PUSH2", - "path": "29", - "value": "0xBE7" - }, - "631": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5019, - 5146 - ], - "op": "JUMP", - "path": "29" - }, - "632": { - "fn": "BatchAction.batchLend", - "offset": [ - 5019, - 5146 - ], - "op": "JUMPDEST", - "path": "29" - }, - "633": { - "fn": "BatchAction.batchLend", - "offset": [ - 4980, - 5146 - ], - "op": "SWAP1", - "path": "29" - }, - "634": { - "fn": "BatchAction.batchLend", - "offset": [ - 4980, - 5146 - ], - "op": "POP", - "path": "29" - }, - "635": { - "fn": "BatchAction.batchLend", - "offset": [ - 5156, - 5188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x282" - }, - "638": { - "fn": "BatchAction.batchLend", - "offset": [ - 5156, - 5188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3F12" - }, - "641": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5156, - 5188 - ], - "op": "JUMP", - "path": "29" - }, - "642": { - "fn": "BatchAction.batchLend", - "offset": [ - 5156, - 5188 - ], - "op": "JUMPDEST", - "path": "29" - }, - "643": { - "fn": "BatchAction.batchLend", - "offset": [ - 5204, - 5213 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "645": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "JUMPDEST", - "path": "29" - }, - "646": { - "fn": "BatchAction.batchLend", - "offset": [ - 5219, - 5237 - ], - "op": "DUP5", - "path": "29" - }, - "647": { - "fn": "BatchAction.batchLend", - "offset": [ - 5219, - 5237 - ], - "op": "DUP2", - "path": "29" - }, - "648": { - "fn": "BatchAction.batchLend", - "offset": [ - 5219, - 5237 - ], - "op": "LT", - "path": "29" - }, - "649": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "ISZERO", - "path": "29" - }, - "650": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "PUSH2", - "path": "29", - "value": "0x50C" - }, - "653": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "JUMPI", - "path": "29" - }, - "654": { - "fn": "BatchAction.batchLend", - "offset": [ - 5258, - 5283 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "655": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5293 - ], - "op": "DUP7", - "path": "29" - }, - "656": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5293 - ], - "op": "DUP7", - "path": "29" - }, - "657": { - "fn": "BatchAction.batchLend", - "offset": [ - 5294, - 5295 - ], - "op": "DUP4", - "path": "29" - }, - "658": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "DUP2", - "path": "29" - }, - "659": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "DUP2", - "path": "29" - }, - "660": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "LT", - "path": "29" - }, - "661": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "PUSH2", - "path": "29", - "value": "0x29A" - }, - "664": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "JUMPI", - "path": "29" - }, - "665": { - "dev": "Index out of range", - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "INVALID", - "path": "29" - }, - "666": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "JUMPDEST", - "path": "29" - }, - "667": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "SWAP1", - "path": "29" - }, - "668": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "POP", - "path": "29" - }, - "669": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "671": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "MUL", - "path": "29" - }, - "672": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "DUP2", - "path": "29" - }, - "673": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "ADD", - "path": "29" - }, - "674": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "SWAP1", - "path": "29" - }, - "675": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2AC" - }, - "678": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "SWAP2", - "path": "29" - }, - "679": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "SWAP1", - "path": "29" - }, - "680": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4B3C" - }, - "683": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5286, - 5296 - ], - "op": "JUMP", - "path": "29" - }, - "684": { - "fn": "BatchAction.batchLend", - "offset": [ - 5286, - 5296 - ], - "op": "JUMPDEST", - "path": "29" - }, - "685": { - "fn": "BatchAction.batchLend", - "offset": [ - 5258, - 5296 - ], - "op": "SWAP1", - "path": "29" - }, - "686": { - "op": "POP" - }, - "687": { - "fn": "BatchAction.batchLend", - "offset": [ - 5509, - 5514 - ], - "op": "DUP2", - "path": "29" - }, - "688": { - "branch": 363, - "fn": "BatchAction.batchLend", - "offset": [ - 5509, - 5514 - ], - "op": "ISZERO", - "path": "29" - }, - "689": { - "fn": "BatchAction.batchLend", - "offset": [ - 5505, - 5623 - ], - "op": "PUSH2", - "path": "29", - "value": "0x315" - }, - "692": { - "branch": 363, - "fn": "BatchAction.batchLend", - "offset": [ - 5505, - 5623 - ], - "op": "JUMPI", - "path": "29" - }, - "693": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5569 - ], - "op": "DUP7", - "path": "29", - "statement": 5 - }, - "694": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5569 - ], - "op": "DUP7", - "path": "29" - }, - "695": { - "fn": "BatchAction.batchLend", - "offset": [ - 5574, - 5575 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1" - }, - "697": { - "fn": "BatchAction.batchLend", - "offset": [ - 5570, - 5571 - ], - "op": "DUP5", - "path": "29" - }, - "698": { - "fn": "BatchAction.batchLend", - "offset": [ - 5570, - 5575 - ], - "op": "SUB", - "path": "29" - }, - "699": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "DUP2", - "path": "29" - }, - "700": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "DUP2", - "path": "29" - }, - "701": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "LT", - "path": "29" - }, - "702": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2C3" - }, - "705": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "JUMPI", - "path": "29" - }, - "706": { - "dev": "Index out of range", - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "INVALID", - "path": "29" - }, - "707": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "JUMPDEST", - "path": "29" - }, - "708": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "SWAP1", - "path": "29" - }, - "709": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "POP", - "path": "29" - }, - "710": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "712": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "MUL", - "path": "29" - }, - "713": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "DUP2", - "path": "29" - }, - "714": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "ADD", - "path": "29" - }, - "715": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "SWAP1", - "path": "29" - }, - "716": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2D5" - }, - "719": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "SWAP2", - "path": "29" - }, - "720": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "SWAP1", - "path": "29" - }, - "721": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4B3C" - }, - "724": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5562, - 5576 - ], - "op": "JUMP", - "path": "29" - }, - "725": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5576 - ], - "op": "JUMPDEST", - "path": "29" - }, - "726": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2E3" - }, - "729": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "SWAP1", - "path": "29" - }, - "730": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "732": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "DUP2", - "path": "29" - }, - "733": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "ADD", - "path": "29" - }, - "734": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "SWAP1", - "path": "29" - }, - "735": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "738": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5562, - 5587 - ], - "op": "JUMP", - "path": "29" - }, - "739": { - "fn": "BatchAction.batchLend", - "offset": [ - 5562, - 5587 - ], - "op": "JUMPDEST", - "path": "29" - }, - "740": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5587 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "743": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5587 - ], - "op": "AND", - "path": "29" - }, - "744": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5559 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2F4" - }, - "747": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5559 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "749": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5559 - ], - "op": "DUP4", - "path": "29" - }, - "750": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5559 - ], - "op": "ADD", - "path": "29" - }, - "751": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5548 - ], - "op": "DUP4", - "path": "29" - }, - "752": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5559 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "755": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5542, - 5559 - ], - "op": "JUMP", - "path": "29" - }, - "756": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5559 - ], - "op": "JUMPDEST", - "path": "29" - }, - "757": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5587 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "760": { - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5587 - ], - "op": "AND", - "path": "29" - }, - "761": { - "branch": 364, - "fn": "BatchAction.batchLend", - "offset": [ - 5542, - 5587 - ], - "op": "GT", - "path": "29" - }, - "762": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "PUSH2", - "path": "29", - "value": "0x315" - }, - "765": { - "branch": 364, - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "JUMPI", - "path": "29" - }, - "766": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "768": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "MLOAD", - "path": "29" - }, - "769": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "773": { - "op": "PUSH1", - "value": "0xE5" - }, - "775": { - "op": "SHL" - }, - "776": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "DUP2", - "path": "29" - }, - "777": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "MSTORE", - "path": "29" - }, - "778": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "780": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "ADD", - "path": "29" - }, - "781": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "784": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "SWAP1", - "path": "29" - }, - "785": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4964" - }, - "788": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5534, - 5608 - ], - "op": "JUMP", - "path": "29" - }, - "789": { - "fn": "BatchAction.batchLend", - "offset": [ - 5534, - 5608 - ], - "op": "JUMPDEST", - "path": "29" - }, - "790": { - "fn": "BatchAction.batchLend", - "offset": [ - 5733, - 5750 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "792": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5766 - ], - "op": "PUSH2", - "path": "29", - "value": "0x324" - }, - "795": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5766 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "797": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5766 - ], - "op": "DUP4", - "path": "29" - }, - "798": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5766 - ], - "op": "ADD", - "path": "29" - }, - "799": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5759 - ], - "op": "DUP4", - "path": "29" - }, - "800": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5766 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AD7" - }, - "803": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5753, - 5766 - ], - "op": "JUMP", - "path": "29" - }, - "804": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5766 - ], - "op": "JUMPDEST", - "path": "29" - }, - "805": { - "fn": "BatchAction.batchLend", - "offset": [ - 5753, - 5773 - ], - "op": "SWAP2", - "path": "29" - }, - "806": { - "op": "POP" - }, - "807": { - "op": "POP" - }, - "808": { - "branch": 365, - "fn": "BatchAction.batchLend", - "offset": [ - 5795, - 5808 - ], - "op": "DUP1", - "path": "29", - "statement": 6 - }, - "809": { - "fn": "BatchAction.batchLend", - "offset": [ - 5787, - 5809 - ], - "op": "PUSH2", - "path": "29", - "value": "0x331" - }, - "812": { - "branch": 365, - "fn": "BatchAction.batchLend", - "offset": [ - 5787, - 5809 - ], - "op": "JUMPI", - "path": "29" - }, - "813": { - "fn": "BatchAction.batchLend", - "offset": [ - 5787, - 5809 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "815": { - "fn": "BatchAction.batchLend", - "offset": [ - 5787, - 5809 - ], - "op": "DUP1", - "path": "29" - }, - "816": { - "fn": "BatchAction.batchLend", - "offset": [ - 5787, - 5809 - ], - "op": "REVERT", - "path": "29" - }, - "817": { - "fn": "BatchAction.batchLend", - "offset": [ - 5787, - 5809 - ], - "op": "JUMPDEST", - "path": "29" - }, - "818": { - "fn": "BatchAction.batchLend", - "offset": [ - 5847, - 5856 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "820": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "JUMPDEST", - "path": "29" - }, - "821": { - "fn": "BatchAction.batchLend", - "offset": [ - 5866, - 5875 - ], - "op": "DUP2", - "path": "29" - }, - "822": { - "fn": "BatchAction.batchLend", - "offset": [ - 5862, - 5863 - ], - "op": "DUP2", - "path": "29" - }, - "823": { - "fn": "BatchAction.batchLend", - "offset": [ - 5862, - 5875 - ], - "op": "LT", - "path": "29" - }, - "824": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "ISZERO", - "path": "29" - }, - "825": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "PUSH2", - "path": "29", - "value": "0x374" - }, - "828": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "JUMPI", - "path": "29" - }, - "829": { - "fn": "BatchAction.batchLend", - "offset": [ - 5949, - 5969 - ], - "op": "PUSH1", - "path": "29", - "statement": 7, - "value": "0x0" - }, - "831": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "PUSH2", - "path": "29", - "value": "0x34B" - }, - "834": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "836": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "DUP6", - "path": "29" - }, - "837": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "ADD", - "path": "29" - }, - "838": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "DUP6", - "path": "29" - }, - "839": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AD7" - }, - "842": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 5921, - 5934 - ], - "op": "JUMP", - "path": "29" - }, - "843": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5934 - ], - "op": "JUMPDEST", - "path": "29" - }, - "844": { - "fn": "BatchAction.batchLend", - "offset": [ - 5935, - 5936 - ], - "op": "DUP4", - "path": "29" - }, - "845": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "DUP2", - "path": "29" - }, - "846": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "DUP2", - "path": "29" - }, - "847": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "LT", - "path": "29" - }, - "848": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "PUSH2", - "path": "29", - "value": "0x355" - }, - "851": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "JUMPI", - "path": "29" - }, - "852": { - "dev": "Index out of range", - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "INVALID", - "path": "29" - }, - "853": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "JUMPDEST", - "path": "29" - }, - "854": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "SWAP1", - "path": "29" - }, - "855": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "POP", - "path": "29" - }, - "856": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "858": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "MUL", - "path": "29" - }, - "859": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "ADD", - "path": "29" - }, - "860": { - "fn": "BatchAction.batchLend", - "offset": [ - 5921, - 5937 - ], - "op": "CALLDATALOAD", - "path": "29" - }, - "861": { - "fn": "BatchAction.batchLend", - "offset": [ - 5908, - 5939 - ], - "op": "PUSH1", - "path": "29", - "value": "0xF8" - }, - "863": { - "fn": "BatchAction.batchLend", - "offset": [ - 5908, - 5939 - ], - "op": "SHR", - "path": "29" - }, - "864": { - "fn": "BatchAction.batchLend", - "offset": [ - 5908, - 5970 - ], - "op": "PUSH1", - "path": "29", - "value": "0xFF" - }, - "866": { - "fn": "BatchAction.batchLend", - "offset": [ - 5908, - 5970 - ], - "op": "AND", - "path": "29" - }, - "867": { - "branch": 366, - "fn": "BatchAction.batchLend", - "offset": [ - 5908, - 5970 - ], - "op": "EQ", - "path": "29" - }, - "868": { - "fn": "BatchAction.batchLend", - "offset": [ - 5900, - 5971 - ], - "op": "PUSH2", - "path": "29", - "value": "0x36C" - }, - "871": { - "branch": 366, - "fn": "BatchAction.batchLend", - "offset": [ - 5900, - 5971 - ], - "op": "JUMPI", - "path": "29" - }, - "872": { - "fn": "BatchAction.batchLend", - "offset": [ - 5900, - 5971 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "874": { - "fn": "BatchAction.batchLend", - "offset": [ - 5900, - 5971 - ], - "op": "DUP1", - "path": "29" - }, - "875": { - "fn": "BatchAction.batchLend", - "offset": [ - 5900, - 5971 - ], - "op": "REVERT", - "path": "29" - }, - "876": { - "fn": "BatchAction.batchLend", - "offset": [ - 5900, - 5971 - ], - "op": "JUMPDEST", - "path": "29" - }, - "877": { - "fn": "BatchAction.batchLend", - "offset": [ - 5877, - 5880 - ], - "op": "PUSH1", - "path": "29", - "statement": 8, - "value": "0x1" - }, - "879": { - "fn": "BatchAction.batchLend", - "offset": [ - 5877, - 5880 - ], - "op": "ADD", - "path": "29" - }, - "880": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "PUSH2", - "path": "29", - "value": "0x334" - }, - "883": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "JUMP", - "path": "29" - }, - "884": { - "fn": "BatchAction.batchLend", - "offset": [ - 5842, - 6011 - ], - "op": "JUMPDEST", - "path": "29" - }, - "885": { - "op": "POP" - }, - "886": { - "fn": "BatchAction.batchLend", - "offset": [ - 6080, - 6153 - ], - "op": "PUSH2", - "path": "29", - "statement": 9, - "value": "0x38F" - }, - "889": { - "fn": "BatchAction.batchLend", - "offset": [ - 6110, - 6117 - ], - "op": "DUP10", - "path": "29" - }, - "890": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6136 - ], - "op": "PUSH2", - "path": "29", - "value": "0x386" - }, - "893": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6136 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "895": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6136 - ], - "op": "DUP6", - "path": "29" - }, - "896": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6136 - ], - "op": "ADD", - "path": "29" - }, - "897": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6125 - ], - "op": "DUP6", - "path": "29" - }, - "898": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6136 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "901": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 6119, - 6136 - ], - "op": "JUMP", - "path": "29" - }, - "902": { - "fn": "BatchAction.batchLend", - "offset": [ - 6119, - 6136 - ], - "op": "JUMPDEST", - "path": "29" - }, - "903": { - "fn": "BatchAction.batchLend", - "offset": [ - 6080, - 6092 - ], - "op": "DUP7", - "path": "29" - }, - "904": { - "fn": "BatchAction.batchLend", - "offset": [ - 6080, - 6092 - ], - "op": "SWAP2", - "path": "29" - }, - "905": { - "fn": "BatchAction.batchLend", - "offset": [ - 6080, - 6153 - ], - "op": "SWAP1", - "path": "29" - }, - "906": { - "fn": "BatchAction.batchLend", - "offset": [ - 6138, - 6152 - ], - "op": "DUP10", - "path": "29" - }, - "907": { - "fn": "BatchAction.batchLend", - "offset": [ - 6080, - 6109 - ], - "op": "PUSH2", - "path": "29", - "value": "0xC79" - }, - "910": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 6080, - 6153 - ], - "op": "JUMP", - "path": "29" - }, - "911": { - "fn": "BatchAction.batchLend", - "offset": [ - 6080, - 6153 - ], - "op": "JUMPDEST", - "path": "29" - }, - "912": { - "fn": "BatchAction.batchLend", - "offset": [ - 6214, - 6397 - ], - "op": "PUSH2", - "path": "29", - "statement": 10, - "value": "0x3B4" - }, - "915": { - "fn": "BatchAction.batchLend", - "offset": [ - 6246, - 6253 - ], - "op": "DUP10", - "path": "29" - }, - "916": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6288 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3A0" - }, - "919": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6288 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "921": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6288 - ], - "op": "DUP6", - "path": "29" - }, - "922": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6288 - ], - "op": "ADD", - "path": "29" - }, - "923": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6277 - ], - "op": "DUP6", - "path": "29" - }, - "924": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6288 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "927": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 6271, - 6288 - ], - "op": "JUMP", - "path": "29" - }, - "928": { - "fn": "BatchAction.batchLend", - "offset": [ - 6271, - 6288 - ], - "op": "JUMPDEST", - "path": "29" - }, - "929": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6319 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3AD" - }, - "932": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6319 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "934": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6319 - ], - "op": "DUP7", - "path": "29" - }, - "935": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6319 - ], - "op": "ADD", - "path": "29" - }, - "936": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6312 - ], - "op": "DUP7", - "path": "29" - }, - "937": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6319 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AD7" - }, - "940": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 6306, - 6319 - ], - "op": "JUMP", - "path": "29" - }, - "941": { - "fn": "BatchAction.batchLend", - "offset": [ - 6306, - 6319 - ], - "op": "JUMPDEST", - "path": "29" - }, - "942": { - "fn": "BatchAction.batchLend", - "offset": [ - 6337, - 6351 - ], - "op": "DUP11", - "path": "29" - }, - "943": { - "fn": "BatchAction.batchLend", - "offset": [ - 6369, - 6383 - ], - "op": "DUP11", - "path": "29" - }, - "944": { - "fn": "BatchAction.batchLend", - "offset": [ - 6214, - 6228 - ], - "op": "PUSH2", - "path": "29", - "value": "0xD1F" - }, - "947": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 6214, - 6397 - ], - "op": "JUMP", - "path": "29" - }, - "948": { - "fn": "BatchAction.batchLend", - "offset": [ - 6214, - 6397 - ], - "op": "JUMPDEST", - "path": "29" - }, - "949": { - "fn": "BatchAction.batchLend", - "offset": [ - 6168, - 6194 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "951": { - "fn": "BatchAction.batchLend", - "offset": [ - 6168, - 6194 - ], - "op": "DUP7", - "path": "29" - }, - "952": { - "fn": "BatchAction.batchLend", - "offset": [ - 6168, - 6194 - ], - "op": "ADD", - "path": "29" - }, - "953": { - "fn": "BatchAction.batchLend", - "offset": [ - 6167, - 6397 - ], - "op": "DUP3", - "path": "29" - }, - "954": { - "fn": "BatchAction.batchLend", - "offset": [ - 6167, - 6397 - ], - "op": "SWAP1", - "path": "29" - }, - "955": { - "fn": "BatchAction.batchLend", - "offset": [ - 6167, - 6397 - ], - "op": "MSTORE", - "path": "29" - }, - "956": { - "fn": "BatchAction.batchLend", - "offset": [ - 6167, - 6397 - ], - "op": "SWAP6", - "path": "29" - }, - "957": { - "op": "POP" - }, - "958": { - "fn": "BatchAction.batchLend", - "offset": [ - 6524, - 6525 - ], - "op": "PUSH1", - "path": "29", - "statement": 11, - "value": "0x0" - }, - "960": { - "op": "SLT" - }, - "961": { - "branch": 367, - "fn": "BatchAction.batchLend", - "offset": [ - 6494, - 6525 - ], - "op": "ISZERO", - "path": "29" - }, - "962": { - "fn": "BatchAction.batchLend", - "offset": [ - 6486, - 6526 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3CA" - }, - "965": { - "branch": 367, - "fn": "BatchAction.batchLend", - "offset": [ - 6486, - 6526 - ], - "op": "JUMPI", - "path": "29" - }, - "966": { - "fn": "BatchAction.batchLend", - "offset": [ - 6486, - 6526 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "968": { - "fn": "BatchAction.batchLend", - "offset": [ - 6486, - 6526 - ], - "op": "DUP1", - "path": "29" - }, - "969": { - "fn": "BatchAction.batchLend", - "offset": [ - 6486, - 6526 - ], - "op": "REVERT", - "path": "29" - }, - "970": { - "fn": "BatchAction.batchLend", - "offset": [ - 6486, - 6526 - ], - "op": "JUMPDEST", - "path": "29" - }, - "971": { - "fn": "BatchAction.batchLend", - "offset": [ - 6978, - 6997 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "973": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7068 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3EF" - }, - "976": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7062 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3EA" - }, - "979": { - "fn": "BatchAction.batchLend", - "offset": [ - 7035, - 7047 - ], - "op": "DUP7", - "path": "29" - }, - "980": { - "fn": "BatchAction.batchLend", - "offset": [ - 7035, - 7061 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "982": { - "fn": "BatchAction.batchLend", - "offset": [ - 7035, - 7061 - ], - "op": "ADD", - "path": "29" - }, - "983": { - "fn": "BatchAction.batchLend", - "offset": [ - 7035, - 7061 - ], - "op": "MLOAD", - "path": "29" - }, - "984": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7012 - ], - "op": "DUP8", - "path": "29" - }, - "985": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7030 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "987": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7030 - ], - "op": "ADD", - "path": "29" - }, - "988": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7030 - ], - "op": "MLOAD", - "path": "29" - }, - "989": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7034 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "992": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7034 - ], - "op": "SWAP1", - "path": "29" - }, - "993": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7062 - ], - "op": "SWAP2", - "path": "29" - }, - "994": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7062 - ], - "op": "SWAP1", - "path": "29" - }, - "995": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7062 - ], - "op": "PUSH4", - "path": "29", - "value": "0xFFFFFFFF" - }, - "1000": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7062 - ], - "op": "AND", - "path": "29" - }, - "1001": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7000, - 7062 - ], - "op": "JUMP", - "path": "29" - }, - "1002": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7062 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1003": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7066 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEE1" - }, - "1006": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7000, - 7068 - ], - "op": "JUMP", - "path": "29" - }, - "1007": { - "fn": "BatchAction.batchLend", - "offset": [ - 7000, - 7068 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1008": { - "fn": "BatchAction.batchLend", - "offset": [ - 6978, - 7068 - ], - "op": "SWAP1", - "path": "29" - }, - "1009": { - "fn": "BatchAction.batchLend", - "offset": [ - 6978, - 7068 - ], - "op": "POP", - "path": "29" - }, - "1010": { - "fn": "BatchAction.batchLend", - "offset": [ - 7101, - 7102 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1012": { - "fn": "BatchAction.batchLend", - "offset": [ - 7086, - 7098 - ], - "op": "DUP2", - "path": "29" - }, - "1013": { - "branch": 368, - "fn": "BatchAction.batchLend", - "offset": [ - 7086, - 7102 - ], - "op": "SGT", - "path": "29" - }, - "1014": { - "fn": "BatchAction.batchLend", - "offset": [ - 7082, - 9191 - ], - "op": "ISZERO", - "path": "29" - }, - "1015": { - "fn": "BatchAction.batchLend", - "offset": [ - 7082, - 9191 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4EF" - }, - "1018": { - "branch": 368, - "fn": "BatchAction.batchLend", - "offset": [ - 7082, - 9191 - ], - "op": "JUMPI", - "path": "29" - }, - "1019": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x40A" - }, - "1022": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1024": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "DUP5", - "path": "29" - }, - "1025": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "ADD", - "path": "29" - }, - "1026": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1028": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "DUP6", - "path": "29" - }, - "1029": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "ADD", - "path": "29" - }, - "1030": { - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "PUSH2", - "path": "29", - "value": "0x439D" - }, - "1033": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7126, - 7150 - ], - "op": "JUMP", - "path": "29" - }, - "1034": { - "branch": 369, - "fn": "BatchAction.batchLend", - "offset": [ - 7126, - 7150 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1035": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "ISZERO", - "path": "29" - }, - "1036": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4B7" - }, - "1039": { - "branch": 369, - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "JUMPI", - "path": "29" - }, - "1040": { - "fn": "BatchAction.batchLend", - "offset": [ - 7323, - 7352 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1042": { - "fn": "BatchAction.batchLend", - "offset": [ - 7355, - 7406 - ], - "op": "PUSH2", - "path": "29", - "value": "0x42A" - }, - "1045": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7405 - ], - "op": "PUSH2", - "path": "29", - "value": "0x421" - }, - "1048": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7405 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1050": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7405 - ], - "op": "DUP7", - "path": "29" - }, - "1051": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7405 - ], - "op": "ADD", - "path": "29" - }, - "1052": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7394 - ], - "op": "DUP7", - "path": "29" - }, - "1053": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7405 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "1056": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7388, - 7405 - ], - "op": "JUMP", - "path": "29" - }, - "1057": { - "fn": "BatchAction.batchLend", - "offset": [ - 7388, - 7405 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1058": { - "fn": "BatchAction.batchLend", - "offset": [ - 7355, - 7406 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "1061": { - "fn": "BatchAction.batchLend", - "offset": [ - 7355, - 7406 - ], - "op": "AND", - "path": "29" - }, - "1062": { - "fn": "BatchAction.batchLend", - "offset": [ - 7355, - 7387 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEEF" - }, - "1065": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7355, - 7406 - ], - "op": "JUMP", - "path": "29" - }, - "1066": { - "fn": "BatchAction.batchLend", - "offset": [ - 7355, - 7406 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1067": { - "fn": "BatchAction.batchLend", - "offset": [ - 7323, - 7406 - ], - "op": "SWAP1", - "path": "29" - }, - "1068": { - "op": "POP" - }, - "1069": { - "fn": "BatchAction.batchLend", - "offset": [ - 7428, - 7456 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1071": { - "fn": "BatchAction.batchLend", - "offset": [ - 7459, - 7509 - ], - "op": "PUSH2", - "path": "29", - "value": "0x447" - }, - "1074": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7508 - ], - "op": "PUSH2", - "path": "29", - "value": "0x43E" - }, - "1077": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7508 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1079": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7508 - ], - "op": "DUP8", - "path": "29" - }, - "1080": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7508 - ], - "op": "ADD", - "path": "29" - }, - "1081": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7497 - ], - "op": "DUP8", - "path": "29" - }, - "1082": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7508 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "1085": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7491, - 7508 - ], - "op": "JUMP", - "path": "29" - }, - "1086": { - "fn": "BatchAction.batchLend", - "offset": [ - 7491, - 7508 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1087": { - "fn": "BatchAction.batchLend", - "offset": [ - 7459, - 7509 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "1090": { - "fn": "BatchAction.batchLend", - "offset": [ - 7459, - 7509 - ], - "op": "AND", - "path": "29" - }, - "1091": { - "fn": "BatchAction.batchLend", - "offset": [ - 7459, - 7490 - ], - "op": "PUSH2", - "path": "29", - "value": "0xF3B" - }, - "1094": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7459, - 7509 - ], - "op": "JUMP", - "path": "29" - }, - "1095": { - "fn": "BatchAction.batchLend", - "offset": [ - 7459, - 7509 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1096": { - "fn": "BatchAction.batchLend", - "offset": [ - 7428, - 7509 - ], - "op": "SWAP1", - "path": "29" - }, - "1097": { - "op": "POP" - }, - "1098": { - "fn": "BatchAction.batchLend", - "offset": [ - 7531, - 7562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1100": { - "fn": "BatchAction.batchLend", - "offset": [ - 7565, - 7636 - ], - "op": "PUSH2", - "path": "29", - "value": "0x45F" - }, - "1103": { - "fn": "BatchAction.batchLend", - "offset": [ - 7599, - 7635 - ], - "op": "PUSH2", - "path": "29", - "value": "0x458" - }, - "1106": { - "fn": "BatchAction.batchLend", - "offset": [ - 7599, - 7601 - ], - "op": "DUP5", - "path": "29" - }, - "1107": { - "fn": "BatchAction.batchLend", - "offset": [ - 7622, - 7634 - ], - "op": "DUP7", - "path": "29" - }, - "1108": { - "fn": "BatchAction.batchLend", - "offset": [ - 7599, - 7621 - ], - "op": "PUSH2", - "path": "29", - "value": "0xF4E" - }, - "1111": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7599, - 7635 - ], - "op": "JUMP", - "path": "29" - }, - "1112": { - "fn": "BatchAction.batchLend", - "offset": [ - 7599, - 7635 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1113": { - "fn": "BatchAction.batchLend", - "offset": [ - 7565, - 7580 - ], - "op": "DUP4", - "path": "29" - }, - "1114": { - "fn": "BatchAction.batchLend", - "offset": [ - 7565, - 7580 - ], - "op": "SWAP1", - "path": "29" - }, - "1115": { - "fn": "BatchAction.batchLend", - "offset": [ - 7565, - 7598 - ], - "op": "PUSH2", - "path": "29", - "value": "0xF87" - }, - "1118": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 7565, - 7636 - ], - "op": "JUMP", - "path": "29" - }, - "1119": { - "fn": "BatchAction.batchLend", - "offset": [ - 7565, - 7636 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1120": { - "fn": "BatchAction.batchLend", - "offset": [ - 7531, - 7636 - ], - "op": "SWAP1", - "path": "29" - }, - "1121": { - "fn": "BatchAction.batchLend", - "offset": [ - 7531, - 7636 - ], - "op": "POP", - "path": "29" - }, - "1122": { - "offset": [ - 429, - 432 - ], - "op": "PUSH4", - "path": "60", - "value": "0x5F5E100" - }, - "1127": { - "fn": "BatchAction.batchLend", - "offset": [ - 7663, - 7678 - ], - "op": "DUP3", - "path": "29" - }, - "1128": { - "fn": "BatchAction.batchLend", - "offset": [ - 7663, - 7687 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1130": { - "fn": "BatchAction.batchLend", - "offset": [ - 7663, - 7687 - ], - "op": "ADD", - "path": "29" - }, - "1131": { - "fn": "BatchAction.batchLend", - "offset": [ - 7663, - 7687 - ], - "op": "MLOAD", - "path": "29" - }, - "1132": { - "branch": 370, - "fn": "BatchAction.batchLend", - "offset": [ - 7663, - 7724 - ], - "op": "SLT", - "path": "29" - }, - "1133": { - "fn": "BatchAction.batchLend", - "offset": [ - 7659, - 8195 - ], - "op": "ISZERO", - "path": "29" - }, - "1134": { - "fn": "BatchAction.batchLend", - "offset": [ - 7659, - 8195 - ], - "op": "PUSH2", - "path": "29", - "value": "0x47F" - }, - "1137": { - "branch": 370, - "fn": "BatchAction.batchLend", - "offset": [ - 7659, - 8195 - ], - "op": "JUMPI", - "path": "29" - }, - "1138": { - "fn": "BatchAction.batchLend", - "offset": [ - 8141, - 8172 - ], - "op": "PUSH2", - "path": "29", - "statement": 12, - "value": "0x47C" - }, - "1141": { - "fn": "BatchAction.batchLend", - "offset": [ - 8141, - 8165 - ], - "op": "DUP2", - "path": "29" - }, - "1142": { - "fn": "BatchAction.batchLend", - "offset": [ - 8170, - 8171 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1" - }, - "1144": { - "fn": "BatchAction.batchLend", - "offset": [ - 8141, - 8169 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "1147": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8141, - 8172 - ], - "op": "JUMP", - "path": "29" - }, - "1148": { - "fn": "BatchAction.batchLend", - "offset": [ - 8141, - 8172 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1149": { - "fn": "BatchAction.batchLend", - "offset": [ - 8114, - 8172 - ], - "op": "SWAP1", - "path": "29" - }, - "1150": { - "fn": "BatchAction.batchLend", - "offset": [ - 8114, - 8172 - ], - "op": "POP", - "path": "29" - }, - "1151": { - "fn": "BatchAction.batchLend", - "offset": [ - 7659, - 8195 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1152": { - "fn": "BatchAction.batchLend", - "offset": [ - 8387, - 8413 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1154": { - "fn": "BatchAction.batchLend", - "offset": [ - 8416, - 8486 - ], - "op": "PUSH2", - "path": "29", - "value": "0x48C" - }, - "1157": { - "fn": "BatchAction.batchLend", - "offset": [ - 8416, - 8428 - ], - "op": "DUP10", - "path": "29" - }, - "1158": { - "fn": "BatchAction.batchLend", - "offset": [ - 8452, - 8459 - ], - "op": "DUP16", - "path": "29" - }, - "1159": { - "fn": "BatchAction.batchLend", - "offset": [ - 8461, - 8485 - ], - "op": "DUP5", - "path": "29" - }, - "1160": { - "fn": "BatchAction.batchLend", - "offset": [ - 8416, - 8451 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFBF" - }, - "1163": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8416, - 8486 - ], - "op": "JUMP", - "path": "29" - }, - "1164": { - "fn": "BatchAction.batchLend", - "offset": [ - 8416, - 8486 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1165": { - "fn": "BatchAction.batchLend", - "offset": [ - 8387, - 8486 - ], - "op": "SWAP1", - "path": "29" - }, - "1166": { - "fn": "BatchAction.batchLend", - "offset": [ - 8387, - 8486 - ], - "op": "POP", - "path": "29" - }, - "1167": { - "fn": "BatchAction.batchLend", - "offset": [ - 8539, - 8551 - ], - "op": "DUP5", - "path": "29", - "statement": 13 - }, - "1168": { - "fn": "BatchAction.batchLend", - "offset": [ - 8516, - 8535 - ], - "op": "DUP2", - "path": "29" - }, - "1169": { - "fn": "BatchAction.batchLend", - "offset": [ - 8516, - 8551 - ], - "op": "SLT", - "path": "29" - }, - "1170": { - "branch": 371, - "fn": "BatchAction.batchLend", - "offset": [ - 8516, - 8551 - ], - "op": "ISZERO", - "path": "29" - }, - "1171": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AE" - }, - "1174": { - "branch": 371, - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "JUMPI", - "path": "29" - }, - "1175": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1177": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "MLOAD", - "path": "29" - }, - "1178": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "1182": { - "op": "PUSH1", - "value": "0xE5" - }, - "1184": { - "op": "SHL" - }, - "1185": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "DUP2", - "path": "29" - }, - "1186": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "MSTORE", - "path": "29" - }, - "1187": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "1189": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "ADD", - "path": "29" - }, - "1190": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "1193": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "SWAP1", - "path": "29" - }, - "1194": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4A95" - }, - "1197": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8508, - 8576 - ], - "op": "JUMP", - "path": "29" - }, - "1198": { - "fn": "BatchAction.batchLend", - "offset": [ - 8508, - 8576 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1199": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "POP", - "path": "29" - }, - "1200": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "POP", - "path": "29" - }, - "1201": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "POP", - "path": "29" - }, - "1202": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "POP", - "path": "29" - }, - "1203": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4EF" - }, - "1206": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "JUMP", - "path": "29" - }, - "1207": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1208": { - "fn": "BatchAction.batchLend", - "offset": [ - 8810, - 8833 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1210": { - "fn": "BatchAction.batchLend", - "offset": [ - 8836, - 8881 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4D2" - }, - "1213": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8880 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4C9" - }, - "1216": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8880 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1218": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8880 - ], - "op": "DUP7", - "path": "29" - }, - "1219": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8880 - ], - "op": "ADD", - "path": "29" - }, - "1220": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8869 - ], - "op": "DUP7", - "path": "29" - }, - "1221": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8880 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "1224": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8863, - 8880 - ], - "op": "JUMP", - "path": "29" - }, - "1225": { - "fn": "BatchAction.batchLend", - "offset": [ - 8863, - 8880 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1226": { - "fn": "BatchAction.batchLend", - "offset": [ - 8836, - 8881 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "1229": { - "fn": "BatchAction.batchLend", - "offset": [ - 8836, - 8881 - ], - "op": "AND", - "path": "29" - }, - "1230": { - "fn": "BatchAction.batchLend", - "offset": [ - 8836, - 8862 - ], - "op": "PUSH2", - "path": "29", - "value": "0x10A4" - }, - "1233": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8836, - 8881 - ], - "op": "JUMP", - "path": "29" - }, - "1234": { - "fn": "BatchAction.batchLend", - "offset": [ - 8836, - 8881 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1235": { - "fn": "BatchAction.batchLend", - "offset": [ - 8810, - 8881 - ], - "op": "SWAP1", - "path": "29" - }, - "1236": { - "op": "POP" - }, - "1237": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 9158 - ], - "op": "PUSH2", - "path": "29", - "statement": 14, - "value": "0x4EC" - }, - "1240": { - "fn": "BatchAction.batchLend", - "offset": [ - 8959, - 8966 - ], - "op": "DUP12", - "path": "29" - }, - "1241": { - "fn": "BatchAction.batchLend", - "offset": [ - 8992, - 9034 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4E2" - }, - "1244": { - "fn": "BatchAction.batchLend", - "offset": [ - 8810, - 8881 - ], - "op": "DUP4", - "path": "29" - }, - "1245": { - "fn": "BatchAction.batchLend", - "offset": [ - 9021, - 9033 - ], - "op": "DUP6", - "path": "29" - }, - "1246": { - "fn": "BatchAction.batchLend", - "offset": [ - 8992, - 9020 - ], - "op": "PUSH2", - "path": "29", - "value": "0xF87" - }, - "1249": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8992, - 9034 - ], - "op": "JUMP", - "path": "29" - }, - "1250": { - "fn": "BatchAction.batchLend", - "offset": [ - 8992, - 9034 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1251": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 8915 - ], - "op": "DUP9", - "path": "29" - }, - "1252": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 8915 - ], - "op": "SWAP2", - "path": "29" - }, - "1253": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 9158 - ], - "op": "SWAP1", - "path": "29" - }, - "1254": { - "fn": "BatchAction.batchLend", - "offset": [ - 9060, - 9065 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1256": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 8933 - ], - "op": "PUSH2", - "path": "29", - "value": "0x10B7" - }, - "1259": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 8903, - 9158 - ], - "op": "JUMP", - "path": "29" - }, - "1260": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 9158 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1261": { - "fn": "BatchAction.batchLend", - "offset": [ - 8903, - 9158 - ], - "op": "POP", - "path": "29" - }, - "1262": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "POP", - "path": "29" - }, - "1263": { - "fn": "BatchAction.batchLend", - "offset": [ - 7122, - 9177 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1264": { - "fn": "BatchAction.batchLend", - "offset": [ - 9305, - 9358 - ], - "op": "PUSH2", - "path": "29", - "statement": 15, - "value": "0x4FC" - }, - "1267": { - "fn": "BatchAction.batchLend", - "offset": [ - 9305, - 9317 - ], - "op": "DUP6", - "path": "29" - }, - "1268": { - "fn": "BatchAction.batchLend", - "offset": [ - 9327, - 9334 - ], - "op": "DUP12", - "path": "29" - }, - "1269": { - "fn": "BatchAction.batchLend", - "offset": [ - 9336, - 9350 - ], - "op": "DUP10", - "path": "29" - }, - "1270": { - "fn": "BatchAction.batchLend", - "offset": [ - 9352, - 9357 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1272": { - "fn": "BatchAction.batchLend", - "offset": [ - 9305, - 9326 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1191" - }, - "1275": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 9305, - 9358 - ], - "op": "JUMP", - "path": "29" - }, - "1276": { - "fn": "BatchAction.batchLend", - "offset": [ - 9305, - 9358 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1277": { - "op": "POP" - }, - "1278": { - "op": "POP" - }, - "1279": { - "fn": "BatchAction.batchLend", - "offset": [ - 5239, - 5242 - ], - "op": "PUSH1", - "path": "29", - "statement": 16, - "value": "0x1" - }, - "1281": { - "fn": "BatchAction.batchLend", - "offset": [ - 5239, - 5242 - ], - "op": "SWAP1", - "path": "29" - }, - "1282": { - "fn": "BatchAction.batchLend", - "offset": [ - 5239, - 5242 - ], - "op": "SWAP3", - "path": "29" - }, - "1283": { - "fn": "BatchAction.batchLend", - "offset": [ - 5239, - 5242 - ], - "op": "ADD", - "path": "29" - }, - "1284": { - "fn": "BatchAction.batchLend", - "offset": [ - 5239, - 5242 - ], - "op": "SWAP2", - "path": "29" - }, - "1285": { - "op": "POP" - }, - "1286": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "PUSH2", - "path": "29", - "value": "0x285" - }, - "1289": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "SWAP1", - "path": "29" - }, - "1290": { - "op": "POP" - }, - "1291": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "JUMP", - "path": "29" - }, - "1292": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1293": { - "fn": "BatchAction.batchLend", - "offset": [ - 5199, - 9369 - ], - "op": "POP", - "path": "29" - }, - "1294": { - "fn": "BatchAction.batchLend", - "offset": [ - 9549, - 9581 - ], - "op": "PUSH2", - "path": "29", - "value": "0x516" - }, - "1297": { - "fn": "BatchAction.batchLend", - "offset": [ - 9549, - 9563 - ], - "op": "DUP4", - "path": "29" - }, - "1298": { - "fn": "BatchAction.batchLend", - "offset": [ - 9549, - 9579 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1412" - }, - "1301": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 9549, - 9581 - ], - "op": "JUMP", - "path": "29" - }, - "1302": { - "branch": 372, - "fn": "BatchAction.batchLend", - "offset": [ - 9549, - 9581 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1303": { - "fn": "BatchAction.batchLend", - "offset": [ - 9544, - 9765 - ], - "op": "PUSH2", - "path": "29", - "value": "0x527" - }, - "1306": { - "branch": 372, - "fn": "BatchAction.batchLend", - "offset": [ - 9544, - 9765 - ], - "op": "JUMPI", - "path": "29" - }, - "1307": { - "fn": "BatchAction.batchLend", - "offset": [ - 9680, - 9754 - ], - "op": "PUSH2", - "path": "29", - "statement": 17, - "value": "0x527" - }, - "1310": { - "fn": "BatchAction.batchLend", - "offset": [ - 9680, - 9694 - ], - "op": "DUP4", - "path": "29" - }, - "1311": { - "fn": "BatchAction.batchLend", - "offset": [ - 9723, - 9730 - ], - "op": "DUP8", - "path": "29" - }, - "1312": { - "fn": "BatchAction.batchLend", - "offset": [ - 9732, - 9746 - ], - "op": "DUP5", - "path": "29" - }, - "1313": { - "fn": "BatchAction.batchLend", - "offset": [ - 9748, - 9753 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1315": { - "fn": "BatchAction.batchLend", - "offset": [ - 9680, - 9722 - ], - "op": "PUSH2", - "path": "29", - "value": "0x141F" - }, - "1318": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 9680, - 9754 - ], - "op": "JUMP", - "path": "29" - }, - "1319": { - "fn": "BatchAction.batchLend", - "offset": [ - 9680, - 9754 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1320": { - "fn": "BatchAction.batchLend", - "offset": [ - 9847, - 9895 - ], - "op": "PUSH2", - "path": "29", - "statement": 18, - "value": "0x531" - }, - "1323": { - "fn": "BatchAction.batchLend", - "offset": [ - 9871, - 9878 - ], - "op": "DUP7", - "path": "29" - }, - "1324": { - "fn": "BatchAction.batchLend", - "offset": [ - 9880, - 9894 - ], - "op": "DUP5", - "path": "29" - }, - "1325": { - "fn": "BatchAction.batchLend", - "offset": [ - 9847, - 9870 - ], - "op": "PUSH2", - "path": "29", - "value": "0xAAA" - }, - "1328": { - "fn": "BatchAction.batchLend", - "jump": "i", - "offset": [ - 9847, - 9895 - ], - "op": "JUMP", - "path": "29" - }, - "1329": { - "fn": "BatchAction.batchLend", - "offset": [ - 9847, - 9895 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1330": { - "op": "POP" - }, - "1331": { - "op": "POP" - }, - "1332": { - "offset": [ - 276, - 277 - ], - "op": "PUSH1", - "path": "28", - "value": "0x1" - }, - "1334": { - "offset": [ - 1142, - 1158 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "1336": { - "offset": [ - 1142, - 1173 - ], - "op": "SSTORE", - "path": "28" - }, - "1337": { - "op": "POP" - }, - "1338": { - "op": "POP" - }, - "1339": { - "op": "POP" - }, - "1340": { - "op": "POP" - }, - "1341": { - "fn": "BatchAction.batchLend", - "jump": "o", - "offset": [ - 4487, - 9902 - ], - "op": "JUMP", - "path": "29" - }, - "1342": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1343": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11464, - 11474 - ], - "op": "CALLER", - "path": "29", - "statement": 19 - }, - "1344": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1346": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "SWAP1", - "path": "29" - }, - "1347": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "DUP2", - "path": "29" - }, - "1348": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "MSTORE", - "path": "29" - }, - "1349": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11463 - ], - "op": "PUSH1", - "path": "29", - "value": "0x8" - }, - "1351": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1353": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "MSTORE", - "path": "29" - }, - "1354": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1356": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "SWAP1", - "path": "29" - }, - "1357": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "KECCAK256", - "path": "29" - }, - "1358": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "SLOAD", - "path": "29" - }, - "1359": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "PUSH1", - "path": "29", - "value": "0xFF" - }, - "1361": { - "branch": 373, - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11437, - 11475 - ], - "op": "AND", - "path": "29" - }, - "1362": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "PUSH2", - "path": "29", - "value": "0x56D" - }, - "1365": { - "branch": 373, - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "JUMPI", - "path": "29" - }, - "1366": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1368": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "MLOAD", - "path": "29" - }, - "1369": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "1373": { - "op": "PUSH1", - "value": "0xE5" - }, - "1375": { - "op": "SHL" - }, - "1376": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "DUP2", - "path": "29" - }, - "1377": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "MSTORE", - "path": "29" - }, - "1378": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "1380": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "ADD", - "path": "29" - }, - "1381": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "1384": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "SWAP1", - "path": "29" - }, - "1385": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "PUSH2", - "path": "29", - "value": "0x48B4" - }, - "1388": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11429, - 11492 - ], - "op": "JUMP", - "path": "29" - }, - "1389": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11429, - 11492 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1390": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11502, - 11530 - ], - "op": "PUSH2", - "path": "29", - "statement": 20, - "value": "0x576" - }, - "1393": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11522, - 11529 - ], - "op": "DUP6", - "path": "29" - }, - "1394": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11502, - 11521 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8A0" - }, - "1397": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11502, - 11530 - ], - "op": "JUMP", - "path": "29" - }, - "1398": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11502, - 11530 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1399": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11541, - 11577 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1401": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11580, - 11625 - ], - "op": "PUSH2", - "path": "29", - "value": "0x583" - }, - "1404": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11608, - 11615 - ], - "op": "DUP7", - "path": "29" - }, - "1405": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11617, - 11624 - ], - "op": "DUP7", - "path": "29" - }, - "1406": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11617, - 11624 - ], - "op": "DUP7", - "path": "29" - }, - "1407": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11580, - 11607 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8EF" - }, - "1410": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11580, - 11625 - ], - "op": "JUMP", - "path": "29" - }, - "1411": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11580, - 11625 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1412": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11541, - 11625 - ], - "op": "SWAP1", - "path": "29" - }, - "1413": { - "op": "POP" - }, - "1414": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11635, - 11676 - ], - "op": "PUSH2", - "path": "29", - "statement": 21, - "value": "0x58F" - }, - "1417": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11541, - 11625 - ], - "op": "DUP2", - "path": "29" - }, - "1418": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11668, - 11675 - ], - "op": "DUP8", - "path": "29" - }, - "1419": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11635, - 11667 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1501" - }, - "1422": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11635, - 11676 - ], - "op": "JUMP", - "path": "29" - }, - "1423": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11635, - 11676 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1424": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "statement": 22, - "value": "0x40" - }, - "1426": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "MLOAD", - "path": "29" - }, - "1427": { - "op": "PUSH4", - "value": "0x550D0657" - }, - "1432": { - "op": "PUSH1", - "value": "0xE1" - }, - "1434": { - "op": "SHL" - }, - "1435": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP2", - "path": "29" - }, - "1436": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "MSTORE", - "path": "29" - }, - "1437": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11972, - 11982 - ], - "op": "CALLER", - "path": "29" - }, - "1438": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11972, - 11982 - ], - "op": "SWAP1", - "path": "29" - }, - "1439": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12000 - ], - "op": "PUSH4", - "path": "29", - "value": "0xAA1A0CAE" - }, - "1444": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12000 - ], - "op": "SWAP1", - "path": "29" - }, - "1445": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH2", - "path": "29", - "value": "0x5B8" - }, - "1448": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "SWAP1", - "path": "29" - }, - "1449": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11972, - 11982 - ], - "op": "DUP4", - "path": "29" - }, - "1450": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11972, - 11982 - ], - "op": "SWAP1", - "path": "29" - }, - "1451": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12013, - 12020 - ], - "op": "DUP11", - "path": "29" - }, - "1452": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12013, - 12020 - ], - "op": "SWAP1", - "path": "29" - }, - "1453": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12022, - 12034 - ], - "op": "DUP9", - "path": "29" - }, - "1454": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12022, - 12034 - ], - "op": "SWAP1", - "path": "29" - }, - "1455": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12022, - 12034 - ], - "op": "DUP9", - "path": "29" - }, - "1456": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12022, - 12034 - ], - "op": "SWAP1", - "path": "29" - }, - "1457": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "1459": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "ADD", - "path": "29" - }, - "1460": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4655" - }, - "1463": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 11955, - 12035 - ], - "op": "JUMP", - "path": "29" - }, - "1464": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1465": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1467": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1469": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "MLOAD", - "path": "29" - }, - "1470": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP1", - "path": "29" - }, - "1471": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP4", - "path": "29" - }, - "1472": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "SUB", - "path": "29" - }, - "1473": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP2", - "path": "29" - }, - "1474": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1476": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP8", - "path": "29" - }, - "1477": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP1", - "path": "29" - }, - "1478": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "1479": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "ISZERO", - "path": "29" - }, - "1480": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP1", - "path": "29" - }, - "1481": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "ISZERO", - "path": "29" - }, - "1482": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH2", - "path": "29", - "value": "0x5D2" - }, - "1485": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "JUMPI", - "path": "29" - }, - "1486": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1488": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP1", - "path": "29" - }, - "1489": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "REVERT", - "path": "29" - }, - "1490": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1491": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "POP", - "path": "29" - }, - "1492": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "GAS", - "path": "29" - }, - "1493": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "CALL", - "path": "29" - }, - "1494": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "ISZERO", - "path": "29" - }, - "1495": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP1", - "path": "29" - }, - "1496": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "ISZERO", - "path": "29" - }, - "1497": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH2", - "path": "29", - "value": "0x5E6" - }, - "1500": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "JUMPI", - "path": "29" - }, - "1501": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "1502": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1504": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "DUP1", - "path": "29" - }, - "1505": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "1506": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "1507": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1509": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "REVERT", - "path": "29" - }, - "1510": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11955, - 12035 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1511": { - "op": "POP" - }, - "1512": { - "op": "POP" - }, - "1513": { - "op": "POP" - }, - "1514": { - "op": "POP" - }, - "1515": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12050, - 12072 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1517": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12050, - 12072 - ], - "op": "DUP2", - "path": "29" - }, - "1518": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12050, - 12072 - ], - "op": "ADD", - "path": "29" - }, - "1519": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12050, - 12072 - ], - "op": "MLOAD", - "path": "29" - }, - "1520": { - "op": "PUSH1", - "value": "0x1" - }, - "1522": { - "op": "PUSH1", - "value": "0x1" - }, - "1524": { - "op": "PUSH1", - "value": "0xF8" - }, - "1526": { - "op": "SHL" - }, - "1527": { - "op": "SUB" - }, - "1528": { - "op": "NOT" - }, - "1529": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12050, - 12080 - ], - "op": "AND", - "path": "29" - }, - "1530": { - "branch": 374, - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12050, - 12080 - ], - "op": "ISZERO", - "path": "29" - }, - "1531": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12046, - 12573 - ], - "op": "PUSH2", - "path": "29", - "value": "0x666" - }, - "1534": { - "branch": 374, - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12046, - 12573 - ], - "op": "JUMPI", - "path": "29" - }, - "1535": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "statement": 23, - "value": "0x40" - }, - "1537": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "MLOAD", - "path": "29" - }, - "1538": { - "op": "PUSH4", - "value": "0x6CCC642F" - }, - "1543": { - "op": "PUSH1", - "value": "0xE0" - }, - "1545": { - "op": "SHL" - }, - "1546": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP2", - "path": "29" - }, - "1547": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "MSTORE", - "path": "29" - }, - "1548": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12524 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "1569": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12524 - ], - "op": "SWAP1", - "path": "29" - }, - "1570": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12553 - ], - "op": "PUSH4", - "path": "29", - "value": "0x6CCC642F" - }, - "1575": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12553 - ], - "op": "SWAP1", - "path": "29" - }, - "1576": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH2", - "path": "29", - "value": "0x635" - }, - "1579": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "SWAP1", - "path": "29" - }, - "1580": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12554, - 12561 - ], - "op": "DUP10", - "path": "29" - }, - "1581": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12554, - 12561 - ], - "op": "SWAP1", - "path": "29" - }, - "1582": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "1584": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "ADD", - "path": "29" - }, - "1585": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4641" - }, - "1588": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "i", - "offset": [ - 12502, - 12562 - ], - "op": "JUMP", - "path": "29" - }, - "1589": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1590": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1592": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1594": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "MLOAD", - "path": "29" - }, - "1595": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP1", - "path": "29" - }, - "1596": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP4", - "path": "29" - }, - "1597": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "SUB", - "path": "29" - }, - "1598": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP2", - "path": "29" - }, - "1599": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP7", - "path": "29" - }, - "1600": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP1", - "path": "29" - }, - "1601": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "1602": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "ISZERO", - "path": "29" - }, - "1603": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP1", - "path": "29" - }, - "1604": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "ISZERO", - "path": "29" - }, - "1605": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH2", - "path": "29", - "value": "0x64D" - }, - "1608": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "JUMPI", - "path": "29" - }, - "1609": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1611": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP1", - "path": "29" - }, - "1612": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "REVERT", - "path": "29" - }, - "1613": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1614": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "POP", - "path": "29" - }, - "1615": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "GAS", - "path": "29" - }, - "1616": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "1617": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "ISZERO", - "path": "29" - }, - "1618": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP1", - "path": "29" - }, - "1619": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "ISZERO", - "path": "29" - }, - "1620": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH2", - "path": "29", - "value": "0x661" - }, - "1623": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "JUMPI", - "path": "29" - }, - "1624": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "1625": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1627": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "DUP1", - "path": "29" - }, - "1628": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "1629": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "1630": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1632": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "REVERT", - "path": "29" - }, - "1633": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1634": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "POP", - "path": "29" - }, - "1635": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "POP", - "path": "29" - }, - "1636": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "POP", - "path": "29" - }, - "1637": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12502, - 12562 - ], - "op": "POP", - "path": "29" - }, - "1638": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 12046, - 12573 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1639": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "POP", - "path": "29" - }, - "1640": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "POP", - "path": "29" - }, - "1641": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "POP", - "path": "29" - }, - "1642": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "POP", - "path": "29" - }, - "1643": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "POP", - "path": "29" - }, - "1644": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "offset": [ - 11159, - 12579 - ], - "op": "POP", - "path": "29" - }, - "1645": { - "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", - "jump": "o", - "offset": [ - 11159, - 12579 - ], - "op": "JUMP", - "path": "29" - }, - "1646": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1241, - 2768 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1647": { - "offset": [ - 319, - 320 - ], - "op": "PUSH1", - "path": "28", - "value": "0x2" - }, - "1649": { - "offset": [ - 838, - 854 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "1651": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 838, - 854 - ], - "op": "SLOAD", - "path": "28" - }, - "1652": { - "offset": [ - 838, - 866 - ], - "op": "EQ", - "path": "28" - }, - "1653": { - "branch": 438, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 838, - 866 - ], - "op": "ISZERO", - "path": "28" - }, - "1654": { - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x691" - }, - "1657": { - "branch": 438, - "offset": [ - 830, - 885 - ], - "op": "JUMPI", - "path": "28" - }, - "1658": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x40" - }, - "1660": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "MLOAD", - "path": "28" - }, - "1661": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "1665": { - "op": "PUSH1", - "value": "0xE5" - }, - "1667": { - "op": "SHL" - }, - "1668": { - "offset": [ - 830, - 885 - ], - "op": "DUP2", - "path": "28" - }, - "1669": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "MSTORE", - "path": "28" - }, - "1670": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH1", - "path": "28", - "value": "0x4" - }, - "1672": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "ADD", - "path": "28" - }, - "1673": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x17A" - }, - "1676": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "SWAP1", - "path": "28" - }, - "1677": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "PUSH2", - "path": "28", - "value": "0x49C5" - }, - "1680": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 830, - 885 - ], - "op": "JUMP", - "path": "28" - }, - "1681": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 830, - 885 - ], - "op": "JUMPDEST", - "path": "28" - }, - "1682": { - "offset": [ - 319, - 320 - ], - "op": "PUSH1", - "path": "28", - "value": "0x2" - }, - "1684": { - "offset": [ - 960, - 976 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "1686": { - "offset": [ - 960, - 987 - ], - "op": "SSTORE", - "path": "28" - }, - "1687": { - "op": "PUSH1", - "value": "0x1" - }, - "1689": { - "op": "PUSH1", - "value": "0x1" - }, - "1691": { - "op": "PUSH1", - "value": "0xA0" - }, - "1693": { - "op": "SHL" - }, - "1694": { - "op": "SUB" - }, - "1695": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1417 - ], - "op": "DUP4", - "path": "29", - "statement": 24 - }, - "1696": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1417 - ], - "op": "AND", - "path": "29" - }, - "1697": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1407, - 1417 - ], - "op": "CALLER", - "path": "29" - }, - "1698": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1417 - ], - "op": "EQ", - "path": "29" - }, - "1699": { - "branch": 375, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1417 - ], - "op": "DUP1", - "path": "29" - }, - "1700": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1448 - ], - "op": "PUSH2", - "path": "29", - "value": "0x6AC" - }, - "1703": { - "branch": 375, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1448 - ], - "op": "JUMPI", - "path": "29" - }, - "1704": { - "op": "POP" - }, - "1705": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1421, - 1431 - ], - "op": "CALLER", - "path": "29" - }, - "1706": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1443, - 1447 - ], - "op": "ADDRESS", - "path": "29" - }, - "1707": { - "branch": 376, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1421, - 1448 - ], - "op": "EQ", - "path": "29" - }, - "1708": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1396, - 1448 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1709": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "PUSH2", - "path": "29", - "value": "0x6C8" - }, - "1712": { - "branch": 376, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "JUMPI", - "path": "29" - }, - "1713": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1715": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "MLOAD", - "path": "29" - }, - "1716": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "1720": { - "op": "PUSH1", - "value": "0xE5" - }, - "1722": { - "op": "SHL" - }, - "1723": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "DUP2", - "path": "29" - }, - "1724": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "MSTORE", - "path": "29" - }, - "1725": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "1727": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "ADD", - "path": "29" - }, - "1728": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "1731": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "SWAP1", - "path": "29" - }, - "1732": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "PUSH2", - "path": "29", - "value": "0x48B4" - }, - "1735": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1388, - 1465 - ], - "op": "JUMP", - "path": "29" - }, - "1736": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1388, - 1465 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1737": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1475, - 1503 - ], - "op": "PUSH2", - "path": "29", - "statement": 25, - "value": "0x6D1" - }, - "1740": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1495, - 1502 - ], - "op": "DUP4", - "path": "29" - }, - "1741": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1475, - 1494 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8A0" - }, - "1744": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1475, - 1503 - ], - "op": "JUMP", - "path": "29" - }, - "1745": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1475, - 1503 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1746": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1514, - 1550 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1748": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1553, - 1586 - ], - "op": "PUSH2", - "path": "29", - "value": "0x6DC" - }, - "1751": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1578, - 1585 - ], - "op": "DUP5", - "path": "29" - }, - "1752": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1553, - 1577 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB2B" - }, - "1755": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1553, - 1586 - ], - "op": "JUMP", - "path": "29" - }, - "1756": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1553, - 1586 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1757": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1514, - 1586 - ], - "op": "SWAP1", - "path": "29" - }, - "1758": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1514, - 1586 - ], - "op": "POP", - "path": "29" - }, - "1759": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1596, - 1628 - ], - "op": "PUSH2", - "path": "29", - "value": "0x6E6" - }, - "1762": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1596, - 1628 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3F12" - }, - "1765": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1596, - 1628 - ], - "op": "JUMP", - "path": "29" - }, - "1766": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1596, - 1628 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1767": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1644, - 1653 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1769": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1770": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1659, - 1677 - ], - "op": "DUP4", - "path": "29" - }, - "1771": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1659, - 1677 - ], - "op": "DUP2", - "path": "29" - }, - "1772": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1659, - 1677 - ], - "op": "LT", - "path": "29" - }, - "1773": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "ISZERO", - "path": "29" - }, - "1774": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "PUSH2", - "path": "29", - "value": "0x7DD" - }, - "1777": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "JUMPI", - "path": "29" - }, - "1778": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1698, - 1727 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "1779": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1737 - ], - "op": "DUP6", - "path": "29" - }, - "1780": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1737 - ], - "op": "DUP6", - "path": "29" - }, - "1781": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1738, - 1739 - ], - "op": "DUP4", - "path": "29" - }, - "1782": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "DUP2", - "path": "29" - }, - "1783": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "DUP2", - "path": "29" - }, - "1784": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "LT", - "path": "29" - }, - "1785": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "PUSH2", - "path": "29", - "value": "0x6FE" - }, - "1788": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "JUMPI", - "path": "29" - }, - "1789": { - "dev": "Index out of range", - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "INVALID", - "path": "29" - }, - "1790": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1791": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "SWAP1", - "path": "29" - }, - "1792": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "POP", - "path": "29" - }, - "1793": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "1795": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "MUL", - "path": "29" - }, - "1796": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1730, - 1740 - ], - "op": "ADD", - "path": "29" - }, - "1797": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1698, - 1740 - ], - "op": "SWAP1", - "path": "29" - }, - "1798": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1698, - 1740 - ], - "op": "POP", - "path": "29" - }, - "1799": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1957, - 1958 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "1801": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1953, - 1954 - ], - "op": "DUP3", - "path": "29" - }, - "1802": { - "branch": 377, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1953, - 1958 - ], - "op": "GT", - "path": "29" - }, - "1803": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1949, - 2067 - ], - "op": "ISZERO", - "path": "29" - }, - "1804": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1949, - 2067 - ], - "op": "PUSH2", - "path": "29", - "value": "0x76B" - }, - "1807": { - "branch": 377, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1949, - 2067 - ], - "op": "JUMPI", - "path": "29" - }, - "1808": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2013 - ], - "op": "DUP6", - "path": "29", - "statement": 26 - }, - "1809": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2013 - ], - "op": "DUP6", - "path": "29" - }, - "1810": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2018, - 2019 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1" - }, - "1812": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2014, - 2015 - ], - "op": "DUP5", - "path": "29" - }, - "1813": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2014, - 2019 - ], - "op": "SUB", - "path": "29" - }, - "1814": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "DUP2", - "path": "29" - }, - "1815": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "DUP2", - "path": "29" - }, - "1816": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "LT", - "path": "29" - }, - "1817": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "PUSH2", - "path": "29", - "value": "0x71E" - }, - "1820": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "JUMPI", - "path": "29" - }, - "1821": { - "dev": "Index out of range", - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "INVALID", - "path": "29" - }, - "1822": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1823": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "SWAP1", - "path": "29" - }, - "1824": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "POP", - "path": "29" - }, - "1825": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "1827": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "MUL", - "path": "29" - }, - "1828": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2020 - ], - "op": "ADD", - "path": "29" - }, - "1829": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1831": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "ADD", - "path": "29" - }, - "1832": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1834": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "DUP2", - "path": "29" - }, - "1835": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "ADD", - "path": "29" - }, - "1836": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "SWAP1", - "path": "29" - }, - "1837": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "PUSH2", - "path": "29", - "value": "0x736" - }, - "1840": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "SWAP2", - "path": "29" - }, - "1841": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "SWAP1", - "path": "29" - }, - "1842": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "1845": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2006, - 2031 - ], - "op": "JUMP", - "path": "29" - }, - "1846": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2006, - 2031 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1847": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2031 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "1850": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2031 - ], - "op": "AND", - "path": "29" - }, - "1851": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "PUSH2", - "path": "29", - "value": "0x74A" - }, - "1854": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1856": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "DUP4", - "path": "29" - }, - "1857": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "ADD", - "path": "29" - }, - "1858": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1860": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "DUP5", - "path": "29" - }, - "1861": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "ADD", - "path": "29" - }, - "1862": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "1865": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1986, - 2003 - ], - "op": "JUMP", - "path": "29" - }, - "1866": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2003 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1867": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2031 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "1870": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2031 - ], - "op": "AND", - "path": "29" - }, - "1871": { - "branch": 378, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1986, - 2031 - ], - "op": "GT", - "path": "29" - }, - "1872": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "PUSH2", - "path": "29", - "value": "0x76B" - }, - "1875": { - "branch": 378, - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "JUMPI", - "path": "29" - }, - "1876": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1878": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "MLOAD", - "path": "29" - }, - "1879": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "1883": { - "op": "PUSH1", - "value": "0xE5" - }, - "1885": { - "op": "SHL" - }, - "1886": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "DUP2", - "path": "29" - }, - "1887": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "MSTORE", - "path": "29" - }, - "1888": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "1890": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "ADD", - "path": "29" - }, - "1891": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "1894": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "SWAP1", - "path": "29" - }, - "1895": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4964" - }, - "1898": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 1978, - 2052 - ], - "op": "JUMP", - "path": "29" - }, - "1899": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1978, - 2052 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1900": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2135, - 2208 - ], - "op": "PUSH2", - "path": "29", - "statement": 27, - "value": "0x788" - }, - "1903": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2165, - 2172 - ], - "op": "DUP8", - "path": "29" - }, - "1904": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "PUSH2", - "path": "29", - "value": "0x77F" - }, - "1907": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1909": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "DUP5", - "path": "29" - }, - "1910": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "ADD", - "path": "29" - }, - "1911": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1913": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "DUP6", - "path": "29" - }, - "1914": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "ADD", - "path": "29" - }, - "1915": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "1918": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2174, - 2191 - ], - "op": "JUMP", - "path": "29" - }, - "1919": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2174, - 2191 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1920": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2135, - 2147 - ], - "op": "DUP6", - "path": "29" - }, - "1921": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2135, - 2147 - ], - "op": "SWAP2", - "path": "29" - }, - "1922": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2135, - 2208 - ], - "op": "SWAP1", - "path": "29" - }, - "1923": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2193, - 2207 - ], - "op": "DUP8", - "path": "29" - }, - "1924": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2135, - 2164 - ], - "op": "PUSH2", - "path": "29", - "value": "0xC79" - }, - "1927": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2135, - 2208 - ], - "op": "JUMP", - "path": "29" - }, - "1928": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2135, - 2208 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1929": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2223, - 2392 - ], - "op": "PUSH2", - "path": "29", - "statement": 28, - "value": "0x7A4" - }, - "1932": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2262, - 2269 - ], - "op": "DUP8", - "path": "29" - }, - "1933": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2287, - 2299 - ], - "op": "DUP5", - "path": "29" - }, - "1934": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2334 - ], - "op": "PUSH2", - "path": "29", - "value": "0x79A" - }, - "1937": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2334 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "1939": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2334 - ], - "op": "DUP6", - "path": "29" - }, - "1940": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2334 - ], - "op": "ADD", - "path": "29" - }, - "1941": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2323 - ], - "op": "DUP6", - "path": "29" - }, - "1942": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2334 - ], - "op": "PUSH2", - "path": "29", - "value": "0x43B9" - }, - "1945": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2317, - 2334 - ], - "op": "JUMP", - "path": "29" - }, - "1946": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2317, - 2334 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1947": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2352, - 2358 - ], - "op": "DUP5", - "path": "29" - }, - "1948": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2352, - 2378 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "1950": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2352, - 2378 - ], - "op": "ADD", - "path": "29" - }, - "1951": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2352, - 2378 - ], - "op": "CALLDATALOAD", - "path": "29" - }, - "1952": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2223, - 2244 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1605" - }, - "1955": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2223, - 2392 - ], - "op": "JUMP", - "path": "29" - }, - "1956": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2223, - 2392 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1957": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2407, - 2692 - ], - "op": "PUSH2", - "path": "29", - "statement": 29, - "value": "0x7D4" - }, - "1960": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2460, - 2467 - ], - "op": "DUP8", - "path": "29" - }, - "1961": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2485, - 2499 - ], - "op": "DUP6", - "path": "29" - }, - "1962": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2517, - 2529 - ], - "op": "DUP6", - "path": "29" - }, - "1963": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2547, - 2585 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "1965": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2547, - 2585 - ], - "op": "DUP6", - "path": "29" - }, - "1966": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2547, - 2585 - ], - "op": "ADD", - "path": "29" - }, - "1967": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2547, - 2585 - ], - "op": "CALLDATALOAD", - "path": "29" - }, - "1968": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "PUSH2", - "path": "29", - "value": "0x7BF" - }, - "1971": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "PUSH1", - "path": "29", - "value": "0xA0" - }, - "1973": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "DUP8", - "path": "29" - }, - "1974": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "ADD", - "path": "29" - }, - "1975": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "PUSH1", - "path": "29", - "value": "0x80" - }, - "1977": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "DUP9", - "path": "29" - }, - "1978": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "ADD", - "path": "29" - }, - "1979": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "PUSH2", - "path": "29", - "value": "0x439D" - }, - "1982": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2603, - 2635 - ], - "op": "JUMP", - "path": "29" - }, - "1983": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2603, - 2635 - ], - "op": "JUMPDEST", - "path": "29" - }, - "1984": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "PUSH2", - "path": "29", - "value": "0x7CF" - }, - "1987": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "1989": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "DUP9", - "path": "29" - }, - "1990": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "ADD", - "path": "29" - }, - "1991": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "PUSH1", - "path": "29", - "value": "0xA0" - }, - "1993": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "DUP10", - "path": "29" - }, - "1994": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "ADD", - "path": "29" - }, - "1995": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "PUSH2", - "path": "29", - "value": "0x439D" - }, - "1998": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2653, - 2678 - ], - "op": "JUMP", - "path": "29" - }, - "1999": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2653, - 2678 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2000": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2407, - 2442 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16D8" - }, - "2003": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2407, - 2692 - ], - "op": "JUMP", - "path": "29" - }, - "2004": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2407, - 2692 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2005": { - "op": "POP" - }, - "2006": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1679, - 1682 - ], - "op": "PUSH1", - "path": "29", - "statement": 30, - "value": "0x1" - }, - "2008": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1679, - 1682 - ], - "op": "ADD", - "path": "29" - }, - "2009": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "PUSH2", - "path": "29", - "value": "0x6E9" - }, - "2012": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "JUMP", - "path": "29" - }, - "2013": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2014": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 1639, - 2703 - ], - "op": "POP", - "path": "29" - }, - "2015": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2713, - 2761 - ], - "op": "PUSH2", - "path": "29", - "statement": 31, - "value": "0x7E8" - }, - "2018": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2737, - 2744 - ], - "op": "DUP6", - "path": "29" - }, - "2019": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2746, - 2760 - ], - "op": "DUP4", - "path": "29" - }, - "2020": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2713, - 2736 - ], - "op": "PUSH2", - "path": "29", - "value": "0xAAA" - }, - "2023": { - "fn": "BatchAction.batchBalanceAction", - "jump": "i", - "offset": [ - 2713, - 2761 - ], - "op": "JUMP", - "path": "29" - }, - "2024": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 2713, - 2761 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2025": { - "op": "POP" - }, - "2026": { - "op": "POP" - }, - "2027": { - "offset": [ - 276, - 277 - ], - "op": "PUSH1", - "path": "28", - "value": "0x1" - }, - "2029": { - "offset": [ - 1142, - 1158 - ], - "op": "PUSH1", - "path": "28", - "value": "0xA" - }, - "2031": { - "offset": [ - 1142, - 1173 - ], - "op": "SSTORE", - "path": "28" - }, - "2032": { - "op": "POP" - }, - "2033": { - "op": "POP" - }, - "2034": { - "op": "POP" - }, - "2035": { - "fn": "BatchAction.batchBalanceAction", - "jump": "o", - "offset": [ - 1241, - 2768 - ], - "op": "JUMP", - "path": "29" - }, - "2036": { - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "2037": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "PUSH1", - "path": "63", - "value": "0x1" - }, - "2039": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "SLOAD", - "path": "63" - }, - "2040": { - "op": "PUSH1", - "value": "0x1" - }, - "2042": { - "op": "PUSH1", - "value": "0x1" - }, - "2044": { - "op": "PUSH1", - "value": "0xA0" - }, - "2046": { - "op": "SHL" - }, - "2047": { - "op": "SUB" - }, - "2048": { - "offset": [ - 920, - 946 - ], - "op": "AND", - "path": "63" - }, - "2049": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 920, - 946 - ], - "op": "DUP2", - "path": "63" - }, - "2050": { - "fn": "BatchAction.batchBalanceAction", - "jump": "o", - "offset": [ - 920, - 946 - ], - "op": "JUMP", - "path": "63" - }, - "2051": { - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "2052": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "2054": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "SLOAD", - "path": "63" - }, - "2055": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "PUSH5", - "path": "63", - "value": "0x100000000" - }, - "2061": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "SWAP1", - "path": "63" - }, - "2062": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "DIV", - "path": "63" - }, - "2063": { - "op": "PUSH1", - "value": "0x1" - }, - "2065": { - "op": "PUSH1", - "value": "0x1" - }, - "2067": { - "op": "PUSH1", - "value": "0xA0" - }, - "2069": { - "op": "SHL" - }, - "2070": { - "op": "SUB" - }, - "2071": { - "offset": [ - 811, - 831 - ], - "op": "AND", - "path": "63" - }, - "2072": { - "fn": "BatchAction.batchBalanceAction", - "offset": [ - 811, - 831 - ], - "op": "DUP2", - "path": "63" - }, - "2073": { - "fn": "BatchAction.batchBalanceAction", - "jump": "o", - "offset": [ - 811, - 831 - ], - "op": "JUMP", - "path": "63" - }, - "2074": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2075": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23897, - 23928 - ], - "op": "PUSH20", - "path": "29", - "statement": 32, - "value": "0x0" - }, - "2096": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23943, - 23969 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2117": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23984, - 24013 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2138": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 24028, - 24050 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2159": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 24064, - 24089 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2180": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 24104, - 24131 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2201": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP1", - "path": "29" - }, - "2202": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP2", - "path": "29" - }, - "2203": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP3", - "path": "29" - }, - "2204": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP4", - "path": "29" - }, - "2205": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP5", - "path": "29" - }, - "2206": { - "fn": "BatchAction.getLibInfo", - "offset": [ - 23767, - 24148 - ], - "op": "SWAP6", - "path": "29" - }, - "2207": { - "fn": "BatchAction.getLibInfo", - "jump": "o", - "offset": [ - 23767, - 24148 - ], - "op": "JUMP", - "path": "29" - }, - "2208": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1296, - 1762 - ], - "op": "JUMPDEST", - "path": "28" - }, - "2209": { - "op": "PUSH1", - "value": "0x1" - }, - "2211": { - "op": "PUSH1", - "value": "0x1" - }, - "2213": { - "op": "PUSH1", - "value": "0xA0" - }, - "2215": { - "op": "SHL" - }, - "2216": { - "op": "SUB" - }, - "2217": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1374, - 1402 - ], - "op": "DUP2", - "path": "28", - "statement": 33 - }, - "2218": { - "branch": 439, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1374, - 1402 - ], - "op": "AND", - "path": "28" - }, - "2219": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "PUSH2", - "path": "28", - "value": "0x8B3" - }, - "2222": { - "branch": 439, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "JUMPI", - "path": "28" - }, - "2223": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "2225": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "DUP1", - "path": "28" - }, - "2226": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "REVERT", - "path": "28" - }, - "2227": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "JUMPDEST", - "path": "28" - }, - "2228": { - "op": "PUSH1", - "value": "0x1" - }, - "2230": { - "op": "PUSH1", - "value": "0x1" - }, - "2232": { - "op": "PUSH1", - "value": "0xA0" - }, - "2234": { - "op": "SHL" - }, - "2235": { - "op": "SUB" - }, - "2236": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "DUP2", - "path": "28", - "statement": 34 - }, - "2237": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "AND", - "path": "28" - }, - "2238": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1473, - 1477 - ], - "op": "ADDRESS", - "path": "28" - }, - "2239": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "EQ", - "path": "28" - }, - "2240": { - "branch": 440, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "ISZERO", - "path": "28" - }, - "2241": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "PUSH2", - "path": "28", - "value": "0x8C9" - }, - "2244": { - "branch": 440, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "JUMPI", - "path": "28" - }, - "2245": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "2247": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "DUP1", - "path": "28" - }, - "2248": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "REVERT", - "path": "28" - }, - "2249": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "JUMPDEST", - "path": "28" - }, - "2250": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1503, - 1519 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "2252": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1684, - 1723 - ], - "op": "PUSH2", - "path": "28", - "value": "0x8D4" - }, - "2255": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1715, - 1722 - ], - "op": "DUP3", - "path": "28" - }, - "2256": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1684, - 1714 - ], - "op": "PUSH2", - "path": "28", - "value": "0x1755" - }, - "2259": { - "fn": "ActionGuards.requireValidAccount", - "jump": "i", - "offset": [ - 1684, - 1723 - ], - "op": "JUMP", - "path": "28" - }, - "2260": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1684, - 1723 - ], - "op": "JUMPDEST", - "path": "28" - }, - "2261": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "2262": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "2263": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "2264": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "2265": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "PUSH2", - "path": "28", - "value": "0xFFFF" - }, - "2268": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "AND", - "path": "28" - }, - "2269": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "SWAP1", - "path": "28" - }, - "2270": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "2271": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1741, - 1749 - ], - "op": "DUP1", - "path": "28", - "statement": 35 - }, - "2272": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1753, - 1754 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "2274": { - "branch": 441, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1741, - 1754 - ], - "op": "EQ", - "path": "28" - }, - "2275": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "PUSH2", - "path": "28", - "value": "0x8EB" - }, - "2278": { - "branch": 441, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "JUMPI", - "path": "28" - }, - "2279": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "2281": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "DUP1", - "path": "28" - }, - "2282": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "REVERT", - "path": "28" - }, - "2283": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "JUMPDEST", - "path": "28" - }, - "2284": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1296, - 1762 - ], - "op": "POP", - "path": "28" - }, - "2285": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1296, - 1762 - ], - "op": "POP", - "path": "28" - }, - "2286": { - "fn": "ActionGuards.requireValidAccount", - "jump": "o", - "offset": [ - 1296, - 1762 - ], - "op": "JUMP", - "path": "28" - }, - "2287": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2288": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12723, - 12744 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8F7" - }, - "2291": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12723, - 12744 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3F62" - }, - "2294": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 12723, - 12744 - ], - "op": "JUMP", - "path": "29" - }, - "2295": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12723, - 12744 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2296": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12756, - 12792 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2298": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12795, - 12828 - ], - "op": "PUSH2", - "path": "29", - "value": "0x902" - }, - "2301": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12820, - 12827 - ], - "op": "DUP6", - "path": "29" - }, - "2302": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12795, - 12819 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB2B" - }, - "2305": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 12795, - 12828 - ], - "op": "JUMP", - "path": "29" - }, - "2306": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12795, - 12828 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2307": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12756, - 12828 - ], - "op": "SWAP1", - "path": "29" - }, - "2308": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12756, - 12828 - ], - "op": "POP", - "path": "29" - }, - "2309": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12838, - 12870 - ], - "op": "PUSH2", - "path": "29", - "value": "0x90C" - }, - "2312": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12838, - 12870 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3F12" - }, - "2315": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 12838, - 12870 - ], - "op": "JUMP", - "path": "29" - }, - "2316": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12838, - 12870 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2317": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13047, - 13083 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2319": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13086, - 13213 - ], - "op": "PUSH2", - "path": "29", - "value": "0x91E" - }, - "2322": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13136, - 13143 - ], - "op": "DUP8", - "path": "29" - }, - "2323": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13157, - 13171 - ], - "op": "DUP5", - "path": "29" - }, - "2324": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13157, - 13188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2326": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13157, - 13188 - ], - "op": "ADD", - "path": "29" - }, - "2327": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13157, - 13188 - ], - "op": "MLOAD", - "path": "29" - }, - "2328": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13202, - 13203 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2330": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13086, - 13122 - ], - "op": "PUSH2", - "path": "29", - "value": "0xBE7" - }, - "2333": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13086, - 13213 - ], - "op": "JUMP", - "path": "29" - }, - "2334": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13086, - 13213 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2335": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13047, - 13213 - ], - "op": "SWAP1", - "path": "29" - }, - "2336": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13047, - 13213 - ], - "op": "POP", - "path": "29" - }, - "2337": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13229, - 13238 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2339": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2340": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13244, - 13262 - ], - "op": "DUP6", - "path": "29" - }, - "2341": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13244, - 13262 - ], - "op": "DUP2", - "path": "29" - }, - "2342": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13244, - 13262 - ], - "op": "LT", - "path": "29" - }, - "2343": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "ISZERO", - "path": "29" - }, - "2344": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA82" - }, - "2347": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "JUMPI", - "path": "29" - }, - "2348": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13283, - 13322 - ], - "op": "CALLDATASIZE", - "path": "29" - }, - "2349": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13332 - ], - "op": "DUP8", - "path": "29" - }, - "2350": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13332 - ], - "op": "DUP8", - "path": "29" - }, - "2351": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13333, - 13334 - ], - "op": "DUP4", - "path": "29" - }, - "2352": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "DUP2", - "path": "29" - }, - "2353": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "DUP2", - "path": "29" - }, - "2354": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "LT", - "path": "29" - }, - "2355": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "PUSH2", - "path": "29", - "value": "0x938" - }, - "2358": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "JUMPI", - "path": "29" - }, - "2359": { - "dev": "Index out of range", - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "INVALID", - "path": "29" - }, - "2360": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2361": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "SWAP1", - "path": "29" - }, - "2362": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "POP", - "path": "29" - }, - "2363": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2365": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "MUL", - "path": "29" - }, - "2366": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "DUP2", - "path": "29" - }, - "2367": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "ADD", - "path": "29" - }, - "2368": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "SWAP1", - "path": "29" - }, - "2369": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "PUSH2", - "path": "29", - "value": "0x94A" - }, - "2372": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "SWAP2", - "path": "29" - }, - "2373": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "SWAP1", - "path": "29" - }, - "2374": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4B1D" - }, - "2377": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13325, - 13335 - ], - "op": "JUMP", - "path": "29" - }, - "2378": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13325, - 13335 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2379": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13283, - 13335 - ], - "op": "SWAP1", - "path": "29" - }, - "2380": { - "op": "POP" - }, - "2381": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13548, - 13553 - ], - "op": "DUP2", - "path": "29" - }, - "2382": { - "branch": 379, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13548, - 13553 - ], - "op": "ISZERO", - "path": "29" - }, - "2383": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13544, - 13662 - ], - "op": "PUSH2", - "path": "29", - "value": "0x9B9" - }, - "2386": { - "branch": 379, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13544, - 13662 - ], - "op": "JUMPI", - "path": "29" - }, - "2387": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13608 - ], - "op": "DUP8", - "path": "29", - "statement": 36 - }, - "2388": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13608 - ], - "op": "DUP8", - "path": "29" - }, - "2389": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13613, - 13614 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1" - }, - "2391": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13609, - 13610 - ], - "op": "DUP5", - "path": "29" - }, - "2392": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13609, - 13614 - ], - "op": "SUB", - "path": "29" - }, - "2393": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "DUP2", - "path": "29" - }, - "2394": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "DUP2", - "path": "29" - }, - "2395": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "LT", - "path": "29" - }, - "2396": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "PUSH2", - "path": "29", - "value": "0x961" - }, - "2399": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "JUMPI", - "path": "29" - }, - "2400": { - "dev": "Index out of range", - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "INVALID", - "path": "29" - }, - "2401": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2402": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "SWAP1", - "path": "29" - }, - "2403": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "POP", - "path": "29" - }, - "2404": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2406": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "MUL", - "path": "29" - }, - "2407": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "DUP2", - "path": "29" - }, - "2408": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "ADD", - "path": "29" - }, - "2409": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "SWAP1", - "path": "29" - }, - "2410": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "PUSH2", - "path": "29", - "value": "0x973" - }, - "2413": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "SWAP2", - "path": "29" - }, - "2414": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "SWAP1", - "path": "29" - }, - "2415": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4B1D" - }, - "2418": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13601, - 13615 - ], - "op": "JUMP", - "path": "29" - }, - "2419": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13615 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2420": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "PUSH2", - "path": "29", - "value": "0x984" - }, - "2423": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "SWAP1", - "path": "29" - }, - "2424": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2426": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "DUP2", - "path": "29" - }, - "2427": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "ADD", - "path": "29" - }, - "2428": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "SWAP1", - "path": "29" - }, - "2429": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2431": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "ADD", - "path": "29" - }, - "2432": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "2435": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13601, - 13626 - ], - "op": "JUMP", - "path": "29" - }, - "2436": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13601, - 13626 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2437": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13626 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "2440": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13626 - ], - "op": "AND", - "path": "29" - }, - "2441": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "PUSH2", - "path": "29", - "value": "0x998" - }, - "2444": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2446": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "DUP4", - "path": "29" - }, - "2447": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "ADD", - "path": "29" - }, - "2448": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2450": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "DUP5", - "path": "29" - }, - "2451": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "ADD", - "path": "29" - }, - "2452": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "2455": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13581, - 13598 - ], - "op": "JUMP", - "path": "29" - }, - "2456": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13598 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2457": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13626 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "2460": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13626 - ], - "op": "AND", - "path": "29" - }, - "2461": { - "branch": 380, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13581, - 13626 - ], - "op": "GT", - "path": "29" - }, - "2462": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "PUSH2", - "path": "29", - "value": "0x9B9" - }, - "2465": { - "branch": 380, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "JUMPI", - "path": "29" - }, - "2466": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2468": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "MLOAD", - "path": "29" - }, - "2469": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "2473": { - "op": "PUSH1", - "value": "0xE5" - }, - "2475": { - "op": "SHL" - }, - "2476": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "DUP2", - "path": "29" - }, - "2477": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "MSTORE", - "path": "29" - }, - "2478": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "2480": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "ADD", - "path": "29" - }, - "2481": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "2484": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "SWAP1", - "path": "29" - }, - "2485": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4964" - }, - "2488": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13573, - 13647 - ], - "op": "JUMP", - "path": "29" - }, - "2489": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13573, - 13647 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2490": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13730, - 13803 - ], - "op": "PUSH2", - "path": "29", - "statement": 37, - "value": "0x9D6" - }, - "2493": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13760, - 13767 - ], - "op": "DUP10", - "path": "29" - }, - "2494": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "PUSH2", - "path": "29", - "value": "0x9CD" - }, - "2497": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2499": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "DUP5", - "path": "29" - }, - "2500": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "ADD", - "path": "29" - }, - "2501": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2503": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "DUP6", - "path": "29" - }, - "2504": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "ADD", - "path": "29" - }, - "2505": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "2508": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13769, - 13786 - ], - "op": "JUMP", - "path": "29" - }, - "2509": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13769, - 13786 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2510": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13730, - 13742 - ], - "op": "DUP7", - "path": "29" - }, - "2511": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13730, - 13742 - ], - "op": "SWAP2", - "path": "29" - }, - "2512": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13730, - 13803 - ], - "op": "SWAP1", - "path": "29" - }, - "2513": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13788, - 13802 - ], - "op": "DUP9", - "path": "29" - }, - "2514": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13730, - 13759 - ], - "op": "PUSH2", - "path": "29", - "value": "0xC79" - }, - "2517": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13730, - 13803 - ], - "op": "JUMP", - "path": "29" - }, - "2518": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13730, - 13803 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2519": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13905, - 14074 - ], - "op": "PUSH2", - "path": "29", - "statement": 38, - "value": "0x9E8" - }, - "2522": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13944, - 13951 - ], - "op": "DUP10", - "path": "29" - }, - "2523": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13969, - 13981 - ], - "op": "DUP6", - "path": "29" - }, - "2524": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13999, - 14016 - ], - "op": "PUSH2", - "path": "29", - "value": "0x79A" - }, - "2527": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13999, - 14016 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2529": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13999, - 14016 - ], - "op": "DUP6", - "path": "29" - }, - "2530": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13999, - 14016 - ], - "op": "ADD", - "path": "29" - }, - "2531": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13999, - 14005 - ], - "op": "DUP6", - "path": "29" - }, - "2532": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13999, - 14016 - ], - "op": "PUSH2", - "path": "29", - "value": "0x43B9" - }, - "2535": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 13999, - 14016 - ], - "op": "JUMP", - "path": "29" - }, - "2536": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13905, - 14074 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2537": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14116, - 14117 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2539": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14106 - ], - "op": "PUSH2", - "path": "29", - "value": "0x9F7" - }, - "2542": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14106 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "2544": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14106 - ], - "op": "DUP4", - "path": "29" - }, - "2545": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14106 - ], - "op": "ADD", - "path": "29" - }, - "2546": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14099 - ], - "op": "DUP4", - "path": "29" - }, - "2547": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14106 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AD7" - }, - "2550": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14093, - 14106 - ], - "op": "JUMP", - "path": "29" - }, - "2551": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14106 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2552": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14113 - ], - "op": "SWAP1", - "path": "29" - }, - "2553": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14113 - ], - "op": "POP", - "path": "29" - }, - "2554": { - "branch": 381, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14093, - 14117 - ], - "op": "GT", - "path": "29" - }, - "2555": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14089, - 14675 - ], - "op": "ISZERO", - "path": "29" - }, - "2556": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14089, - 14675 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA5E" - }, - "2559": { - "branch": 381, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14089, - 14675 - ], - "op": "JUMPI", - "path": "29" - }, - "2560": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14137, - 14151 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2562": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14197, - 14404 - ], - "op": "PUSH2", - "path": "29", - "statement": 39, - "value": "0xA29" - }, - "2565": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14233, - 14240 - ], - "op": "DUP11", - "path": "29" - }, - "2566": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA15" - }, - "2569": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2571": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "DUP6", - "path": "29" - }, - "2572": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "ADD", - "path": "29" - }, - "2573": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2575": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "DUP7", - "path": "29" - }, - "2576": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "ADD", - "path": "29" - }, - "2577": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4579" - }, - "2580": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14262, - 14279 - ], - "op": "JUMP", - "path": "29" - }, - "2581": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14262, - 14279 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2582": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14314 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA22" - }, - "2585": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14314 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "2587": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14314 - ], - "op": "DUP7", - "path": "29" - }, - "2588": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14314 - ], - "op": "ADD", - "path": "29" - }, - "2589": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14307 - ], - "op": "DUP7", - "path": "29" - }, - "2590": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14314 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AD7" - }, - "2593": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14301, - 14314 - ], - "op": "JUMP", - "path": "29" - }, - "2594": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14301, - 14314 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2595": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14336, - 14350 - ], - "op": "DUP11", - "path": "29" - }, - "2596": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14372, - 14386 - ], - "op": "DUP10", - "path": "29" - }, - "2597": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14197, - 14211 - ], - "op": "PUSH2", - "path": "29", - "value": "0xD1F" - }, - "2600": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14197, - 14404 - ], - "op": "JUMP", - "path": "29" - }, - "2601": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14197, - 14404 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2602": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14169, - 14404 - ], - "op": "SWAP5", - "path": "29" - }, - "2603": { - "op": "POP" - }, - "2604": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14169, - 14404 - ], - "op": "SWAP1", - "path": "29" - }, - "2605": { - "op": "POP" - }, - "2606": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14522, - 14523 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2608": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14512, - 14523 - ], - "op": "DUP2", - "path": "29" - }, - "2609": { - "branch": 382, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14512, - 14523 - ], - "op": "SLT", - "path": "29" - }, - "2610": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14508, - 14574 - ], - "op": "ISZERO", - "path": "29" - }, - "2611": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14508, - 14574 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA48" - }, - "2614": { - "branch": 382, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14508, - 14574 - ], - "op": "JUMPI", - "path": "29" - }, - "2615": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14525, - 14574 - ], - "op": "PUSH2", - "path": "29", - "statement": 40, - "value": "0xA48" - }, - "2618": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14546, - 14558 - ], - "op": "DUP6", - "path": "29" - }, - "2619": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14560, - 14573 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA43" - }, - "2622": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14560, - 14567 - ], - "op": "DUP4", - "path": "29" - }, - "2623": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14560, - 14571 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEE1" - }, - "2626": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14560, - 14573 - ], - "op": "JUMP", - "path": "29" - }, - "2627": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14560, - 14573 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2628": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14525, - 14545 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17BE" - }, - "2631": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14525, - 14574 - ], - "op": "JUMP", - "path": "29" - }, - "2632": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14525, - 14574 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2633": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14647 - ], - "op": "PUSH1", - "path": "29", - "statement": 41, - "value": "0x60" - }, - "2635": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14647 - ], - "op": "DUP6", - "path": "29" - }, - "2636": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14647 - ], - "op": "ADD", - "path": "29" - }, - "2637": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14647 - ], - "op": "MLOAD", - "path": "29" - }, - "2638": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14660 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA57" - }, - "2641": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14660 - ], - "op": "SWAP1", - "path": "29" - }, - "2642": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14652, - 14659 - ], - "op": "DUP3", - "path": "29" - }, - "2643": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14651 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "2646": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14621, - 14660 - ], - "op": "JUMP", - "path": "29" - }, - "2647": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14621, - 14660 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2648": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14592, - 14618 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "2650": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14592, - 14618 - ], - "op": "DUP7", - "path": "29" - }, - "2651": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14592, - 14618 - ], - "op": "ADD", - "path": "29" - }, - "2652": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14592, - 14660 - ], - "op": "MSTORE", - "path": "29" - }, - "2653": { - "op": "POP" - }, - "2654": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14089, - 14675 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2655": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14689, - 14974 - ], - "op": "PUSH2", - "path": "29", - "statement": 42, - "value": "0xA79" - }, - "2658": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14742, - 14749 - ], - "op": "DUP10", - "path": "29" - }, - "2659": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14767, - 14781 - ], - "op": "DUP7", - "path": "29" - }, - "2660": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14799, - 14811 - ], - "op": "DUP7", - "path": "29" - }, - "2661": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14829, - 14867 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "2663": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14829, - 14867 - ], - "op": "DUP6", - "path": "29" - }, - "2664": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14829, - 14867 - ], - "op": "ADD", - "path": "29" - }, - "2665": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14829, - 14867 - ], - "op": "CALLDATALOAD", - "path": "29" - }, - "2666": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "PUSH2", - "path": "29", - "value": "0x7BF" - }, - "2669": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "PUSH1", - "path": "29", - "value": "0xA0" - }, - "2671": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "DUP8", - "path": "29" - }, - "2672": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "ADD", - "path": "29" - }, - "2673": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "PUSH1", - "path": "29", - "value": "0x80" - }, - "2675": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "DUP9", - "path": "29" - }, - "2676": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "ADD", - "path": "29" - }, - "2677": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14885, - 14917 - ], - "op": "PUSH2", - "path": "29", - "value": "0x439D" - }, - "2680": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 14885, - 14917 - ], - "op": "JUMP", - "path": "29" - }, - "2681": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 14689, - 14974 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2682": { - "op": "POP" - }, - "2683": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13264, - 13267 - ], - "op": "PUSH1", - "path": "29", - "statement": 43, - "value": "0x1" - }, - "2685": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13264, - 13267 - ], - "op": "ADD", - "path": "29" - }, - "2686": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "PUSH2", - "path": "29", - "value": "0x923" - }, - "2689": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "JUMP", - "path": "29" - }, - "2690": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2691": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 13224, - 14985 - ], - "op": "POP", - "path": "29" - }, - "2692": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15165, - 15197 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA8C" - }, - "2695": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15165, - 15179 - ], - "op": "DUP4", - "path": "29" - }, - "2696": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15165, - 15195 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1412" - }, - "2699": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 15165, - 15197 - ], - "op": "JUMP", - "path": "29" - }, - "2700": { - "branch": 383, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15165, - 15197 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2701": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15160, - 15381 - ], - "op": "PUSH2", - "path": "29", - "value": "0xA9D" - }, - "2704": { - "branch": 383, - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15160, - 15381 - ], - "op": "JUMPI", - "path": "29" - }, - "2705": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15296, - 15370 - ], - "op": "PUSH2", - "path": "29", - "statement": 44, - "value": "0xA9D" - }, - "2708": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15296, - 15310 - ], - "op": "DUP4", - "path": "29" - }, - "2709": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15339, - 15346 - ], - "op": "DUP9", - "path": "29" - }, - "2710": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15348, - 15362 - ], - "op": "DUP4", - "path": "29" - }, - "2711": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15364, - 15369 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2713": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15296, - 15338 - ], - "op": "PUSH2", - "path": "29", - "value": "0x141F" - }, - "2716": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "i", - "offset": [ - 15296, - 15370 - ], - "op": "JUMP", - "path": "29" - }, - "2717": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15296, - 15370 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2718": { - "op": "POP" - }, - "2719": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15492, - 15506 - ], - "op": "SWAP1", - "path": "29", - "statement": 45 - }, - "2720": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 15492, - 15506 - ], - "op": "SWAP2", - "path": "29" - }, - "2721": { - "op": "POP" - }, - "2722": { - "op": "POP" - }, - "2723": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2724": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "SWAP4", - "path": "29" - }, - "2725": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "SWAP3", - "path": "29" - }, - "2726": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "POP", - "path": "29" - }, - "2727": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "POP", - "path": "29" - }, - "2728": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "offset": [ - 12585, - 15513 - ], - "op": "POP", - "path": "29" - }, - "2729": { - "fn": "BatchAction._batchBalanceAndTradeAction", - "jump": "o", - "offset": [ - 12585, - 15513 - ], - "op": "JUMP", - "path": "29" - }, - "2730": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 20741, - 21191 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2731": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21013, - 21054 - ], - "op": "PUSH2", - "path": "29", - "statement": 46, - "value": "0xAB4" - }, - "2734": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21013, - 21027 - ], - "op": "DUP2", - "path": "29" - }, - "2735": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21046, - 21053 - ], - "op": "DUP4", - "path": "29" - }, - "2736": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21013, - 21045 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1501" - }, - "2739": { - "fn": "BatchAction._finalizeAccountContext", - "jump": "i", - "offset": [ - 21013, - 21054 - ], - "op": "JUMP", - "path": "29" - }, - "2740": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21013, - 21054 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2741": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21068, - 21090 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "2743": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21068, - 21090 - ], - "op": "DUP2", - "path": "29" - }, - "2744": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21068, - 21090 - ], - "op": "ADD", - "path": "29" - }, - "2745": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21068, - 21090 - ], - "op": "MLOAD", - "path": "29" - }, - "2746": { - "op": "PUSH1", - "value": "0x1" - }, - "2748": { - "op": "PUSH1", - "value": "0x1" - }, - "2750": { - "op": "PUSH1", - "value": "0xF8" - }, - "2752": { - "op": "SHL" - }, - "2753": { - "op": "SUB" - }, - "2754": { - "op": "NOT" - }, - "2755": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21068, - 21098 - ], - "op": "AND", - "path": "29" - }, - "2756": { - "branch": 384, - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21068, - 21098 - ], - "op": "ISZERO", - "path": "29" - }, - "2757": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21064, - 21185 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8EB" - }, - "2760": { - "branch": 384, - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21064, - 21185 - ], - "op": "JUMPI", - "path": "29" - }, - "2761": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "statement": 47, - "value": "0x40" - }, - "2763": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "MLOAD", - "path": "29" - }, - "2764": { - "op": "PUSH4", - "value": "0x6CCC642F" - }, - "2769": { - "op": "PUSH1", - "value": "0xE0" - }, - "2771": { - "op": "SHL" - }, - "2772": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP2", - "path": "29" - }, - "2773": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "MSTORE", - "path": "29" - }, - "2774": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21136 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2795": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21136 - ], - "op": "SWAP1", - "path": "29" - }, - "2796": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21165 - ], - "op": "PUSH4", - "path": "29", - "value": "0x6CCC642F" - }, - "2801": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21165 - ], - "op": "SWAP1", - "path": "29" - }, - "2802": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH2", - "path": "29", - "value": "0xAFF" - }, - "2805": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "SWAP1", - "path": "29" - }, - "2806": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21166, - 21173 - ], - "op": "DUP6", - "path": "29" - }, - "2807": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21166, - 21173 - ], - "op": "SWAP1", - "path": "29" - }, - "2808": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "2810": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "ADD", - "path": "29" - }, - "2811": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4641" - }, - "2814": { - "fn": "BatchAction._finalizeAccountContext", - "jump": "i", - "offset": [ - 21114, - 21174 - ], - "op": "JUMP", - "path": "29" - }, - "2815": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2816": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2818": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2820": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "MLOAD", - "path": "29" - }, - "2821": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP1", - "path": "29" - }, - "2822": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP4", - "path": "29" - }, - "2823": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "SUB", - "path": "29" - }, - "2824": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP2", - "path": "29" - }, - "2825": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP7", - "path": "29" - }, - "2826": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP1", - "path": "29" - }, - "2827": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "2828": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "ISZERO", - "path": "29" - }, - "2829": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP1", - "path": "29" - }, - "2830": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "ISZERO", - "path": "29" - }, - "2831": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB17" - }, - "2834": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "JUMPI", - "path": "29" - }, - "2835": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2837": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP1", - "path": "29" - }, - "2838": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "REVERT", - "path": "29" - }, - "2839": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2840": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "POP", - "path": "29" - }, - "2841": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "GAS", - "path": "29" - }, - "2842": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "2843": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "ISZERO", - "path": "29" - }, - "2844": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP1", - "path": "29" - }, - "2845": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "ISZERO", - "path": "29" - }, - "2846": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH2", - "path": "29", - "value": "0x666" - }, - "2849": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "JUMPI", - "path": "29" - }, - "2850": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "2851": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2853": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "DUP1", - "path": "29" - }, - "2854": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "2855": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "2856": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2858": { - "fn": "BatchAction._finalizeAccountContext", - "offset": [ - 21114, - 21174 - ], - "op": "REVERT", - "path": "29" - }, - "2859": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23208, - 23679 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2860": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23292, - 23313 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB33" - }, - "2863": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23292, - 23313 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3F62" - }, - "2866": { - "fn": "BatchAction._settleAccountIfRequired", - "jump": "i", - "offset": [ - 23292, - 23313 - ], - "op": "JUMP", - "path": "29" - }, - "2867": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23292, - 23313 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2868": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23329, - 23365 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2870": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23368, - 23416 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB3E" - }, - "2873": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23408, - 23415 - ], - "op": "DUP4", - "path": "29" - }, - "2874": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23368, - 23407 - ], - "op": "PUSH2", - "path": "29", - "value": "0x180D" - }, - "2877": { - "fn": "BatchAction._settleAccountIfRequired", - "jump": "i", - "offset": [ - 23368, - 23416 - ], - "op": "JUMP", - "path": "29" - }, - "2878": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23368, - 23416 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2879": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23329, - 23416 - ], - "op": "SWAP1", - "path": "29" - }, - "2880": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23329, - 23416 - ], - "op": "POP", - "path": "29" - }, - "2881": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23430, - 23463 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB49" - }, - "2884": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23430, - 23444 - ], - "op": "DUP2", - "path": "29" - }, - "2885": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23430, - 23461 - ], - "op": "PUSH2", - "path": "29", - "value": "0x18AE" - }, - "2888": { - "fn": "BatchAction._settleAccountIfRequired", - "jump": "i", - "offset": [ - 23430, - 23463 - ], - "op": "JUMP", - "path": "29" - }, - "2889": { - "branch": 385, - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23430, - 23463 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2890": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23426, - 23673 - ], - "op": "ISZERO", - "path": "29" - }, - "2891": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23426, - 23673 - ], - "op": "PUSH2", - "path": "29", - "value": "0xBDF" - }, - "2894": { - "branch": 385, - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23426, - 23673 - ], - "op": "JUMPI", - "path": "29" - }, - "2895": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "statement": 48, - "value": "0x40" - }, - "2897": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "MLOAD", - "path": "29" - }, - "2898": { - "op": "PUSH4", - "value": "0x37B5FC21" - }, - "2903": { - "op": "PUSH1", - "value": "0xE1" - }, - "2905": { - "op": "SHL" - }, - "2906": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP2", - "path": "29" - }, - "2907": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "MSTORE", - "path": "29" - }, - "2908": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23571 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "2929": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23571 - ], - "op": "SWAP1", - "path": "29" - }, - "2930": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23585 - ], - "op": "PUSH4", - "path": "29", - "value": "0x6F6BF842" - }, - "2935": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23585 - ], - "op": "SWAP1", - "path": "29" - }, - "2936": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB87" - }, - "2939": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "SWAP1", - "path": "29" - }, - "2940": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23586, - 23593 - ], - "op": "DUP7", - "path": "29" - }, - "2941": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23586, - 23593 - ], - "op": "SWAP1", - "path": "29" - }, - "2942": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23595, - 23609 - ], - "op": "DUP6", - "path": "29" - }, - "2943": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23595, - 23609 - ], - "op": "SWAP1", - "path": "29" - }, - "2944": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "2946": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ADD", - "path": "29" - }, - "2947": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0x46D8" - }, - "2950": { - "fn": "BatchAction._settleAccountIfRequired", - "jump": "i", - "offset": [ - 23551, - 23610 - ], - "op": "JUMP", - "path": "29" - }, - "2951": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2952": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0xA0" - }, - "2954": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "2956": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "MLOAD", - "path": "29" - }, - "2957": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "2958": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP4", - "path": "29" - }, - "2959": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "SUB", - "path": "29" - }, - "2960": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP2", - "path": "29" - }, - "2961": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP7", - "path": "29" - }, - "2962": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "2963": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "2964": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ISZERO", - "path": "29" - }, - "2965": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "2966": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ISZERO", - "path": "29" - }, - "2967": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0xB9F" - }, - "2970": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "JUMPI", - "path": "29" - }, - "2971": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2973": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "2974": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "REVERT", - "path": "29" - }, - "2975": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2976": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "POP", - "path": "29" - }, - "2977": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "GAS", - "path": "29" - }, - "2978": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "2979": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ISZERO", - "path": "29" - }, - "2980": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "2981": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ISZERO", - "path": "29" - }, - "2982": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0xBB3" - }, - "2985": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "JUMPI", - "path": "29" - }, - "2986": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "2987": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2989": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "2990": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "2991": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "2992": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "2994": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "REVERT", - "path": "29" - }, - "2995": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "JUMPDEST", - "path": "29" - }, - "2996": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "POP", - "path": "29" - }, - "2997": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "POP", - "path": "29" - }, - "2998": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "POP", - "path": "29" - }, - "2999": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "POP", - "path": "29" - }, - "3000": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3002": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "MLOAD", - "path": "29" - }, - "3003": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3004": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "3006": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "NOT", - "path": "29" - }, - "3007": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "3009": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP3", - "path": "29" - }, - "3010": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ADD", - "path": "29" - }, - "3011": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "AND", - "path": "29" - }, - "3012": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP3", - "path": "29" - }, - "3013": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ADD", - "path": "29" - }, - "3014": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP1", - "path": "29" - }, - "3015": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3017": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "MSTORE", - "path": "29" - }, - "3018": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "POP", - "path": "29" - }, - "3019": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "DUP2", - "path": "29" - }, - "3020": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "ADD", - "path": "29" - }, - "3021": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "SWAP1", - "path": "29" - }, - "3022": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0xBD7" - }, - "3025": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "SWAP2", - "path": "29" - }, - "3026": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "SWAP1", - "path": "29" - }, - "3027": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0x441F" - }, - "3030": { - "fn": "BatchAction._settleAccountIfRequired", - "jump": "i", - "offset": [ - 23551, - 23610 - ], - "op": "JUMP", - "path": "29" - }, - "3031": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23551, - 23610 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3032": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23544, - 23610 - ], - "op": "SWAP2", - "path": "29" - }, - "3033": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23544, - 23610 - ], - "op": "POP", - "path": "29" - }, - "3034": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23544, - 23610 - ], - "op": "POP", - "path": "29" - }, - "3035": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23544, - 23610 - ], - "op": "PUSH2", - "path": "29", - "value": "0xBE2" - }, - "3038": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23544, - 23610 - ], - "op": "JUMP", - "path": "29" - }, - "3039": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23426, - 23673 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3040": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23648, - 23662 - ], - "op": "SWAP1", - "path": "29", - "statement": 49 - }, - "3041": { - "op": "POP" - }, - "3042": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23208, - 23679 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3043": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23208, - 23679 - ], - "op": "SWAP2", - "path": "29" - }, - "3044": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23208, - 23679 - ], - "op": "SWAP1", - "path": "29" - }, - "3045": { - "fn": "BatchAction._settleAccountIfRequired", - "offset": [ - 23208, - 23679 - ], - "op": "POP", - "path": "29" - }, - "3046": { - "fn": "BatchAction._settleAccountIfRequired", - "jump": "o", - "offset": [ - 23208, - 23679 - ], - "op": "JUMP", - "path": "29" - }, - "3047": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15438, - 15915 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3048": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15584, - 15605 - ], - "op": "PUSH2", - "path": "84", - "value": "0xBEF" - }, - "3051": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15584, - 15605 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3F90" - }, - "3054": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15584, - 15605 - ], - "op": "JUMP", - "path": "84" - }, - "3055": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15584, - 15605 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3056": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15617, - 15644 - ], - "op": "PUSH2", - "path": "84", - "value": "0xBF7" - }, - "3059": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15617, - 15644 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3F90" - }, - "3062": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15617, - 15644 - ], - "op": "JUMP", - "path": "84" - }, - "3063": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15617, - 15644 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3064": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15658, - 15679 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "3066": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15658, - 15679 - ], - "op": "DUP5", - "path": "84" - }, - "3067": { - "branch": 494, - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15658, - 15679 - ], - "op": "AND", - "path": "84" - }, - "3068": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15654, - 15693 - ], - "op": "PUSH2", - "path": "84", - "value": "0xC06" - }, - "3071": { - "branch": 494, - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15654, - 15693 - ], - "op": "JUMPI", - "path": "84" - }, - "3072": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15688, - 15693 - ], - "op": "SWAP1", - "path": "84", - "statement": 50 - }, - "3073": { - "op": "POP" - }, - "3074": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15681, - 15693 - ], - "op": "PUSH2", - "path": "84", - "value": "0xAA3" - }, - "3077": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15681, - 15693 - ], - "op": "JUMP", - "path": "84" - }, - "3078": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15654, - 15693 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3079": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15725, - 15770 - ], - "op": "PUSH2", - "path": "84", - "statement": 51, - "value": "0xC10" - }, - "3082": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15744, - 15751 - ], - "op": "DUP6", - "path": "84" - }, - "3083": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15753, - 15769 - ], - "op": "DUP6", - "path": "84" - }, - "3084": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15725, - 15743 - ], - "op": "PUSH2", - "path": "84", - "value": "0x18FF" - }, - "3087": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15725, - 15770 - ], - "op": "JUMP", - "path": "84" - }, - "3088": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15725, - 15770 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3089": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15704, - 15770 - ], - "op": "DUP2", - "path": "84" - }, - "3090": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15704, - 15770 - ], - "op": "MSTORE", - "path": "84" - }, - "3091": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "PUSH1", - "path": "84", - "statement": 52, - "value": "0xFF" - }, - "3093": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "DUP5", - "path": "84" - }, - "3094": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "AND", - "path": "84" - }, - "3095": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15803 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "3097": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15803 - ], - "op": "DUP3", - "path": "84" - }, - "3098": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15803 - ], - "op": "ADD", - "path": "84" - }, - "3099": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "MSTORE", - "path": "84" - }, - "3100": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15871, - 15884 - ], - "op": "DUP3", - "path": "84", - "statement": 53 - }, - "3101": { - "op": "PUSH1", - "value": "0x1" - }, - "3103": { - "op": "PUSH1", - "value": "0x1" - }, - "3105": { - "op": "PUSH1", - "value": "0x40" - }, - "3107": { - "op": "SHL" - }, - "3108": { - "op": "SUB" - }, - "3109": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "3110": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "GT", - "path": "84" - }, - "3111": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "3112": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ISZERO", - "path": "84" - }, - "3113": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0xC31" - }, - "3116": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPI", - "path": "84" - }, - "3117": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "3119": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "3120": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "REVERT", - "path": "84" - }, - "3121": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3122": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "POP", - "path": "84" - }, - "3123": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "3125": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MLOAD", - "path": "84" - }, - "3126": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "3127": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "3128": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP3", - "path": "84" - }, - "3129": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "3130": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "3131": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "3133": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MUL", - "path": "84" - }, - "3134": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "3136": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "3137": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP3", - "path": "84" - }, - "3138": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "3139": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "3141": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "3142": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "3143": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ISZERO", - "path": "84" - }, - "3144": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0xC6B" - }, - "3147": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPI", - "path": "84" - }, - "3148": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "3149": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "3151": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "3152": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3153": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0xC58" - }, - "3156": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3FB8" - }, - "3159": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15850, - 15885 - ], - "op": "JUMP", - "path": "84" - }, - "3160": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3161": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "3162": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "3163": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "3165": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "3166": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "3167": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "3169": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "3170": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SUB", - "path": "84" - }, - "3171": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "3172": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "3173": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0xC50" - }, - "3176": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPI", - "path": "84" - }, - "3177": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "3178": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "POP", - "path": "84" - }, - "3179": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "3180": { - "op": "POP" - }, - "3181": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "3183": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "DUP3", - "path": "84" - }, - "3184": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "ADD", - "path": "84" - }, - "3185": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "3186": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "SWAP5", - "path": "84" - }, - "3187": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15438, - 15915 - ], - "op": "SWAP4", - "path": "84" - }, - "3188": { - "op": "POP" - }, - "3189": { - "op": "POP" - }, - "3190": { - "op": "POP" - }, - "3191": { - "op": "POP" - }, - "3192": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "o", - "offset": [ - 15438, - 15915 - ], - "op": "JUMP", - "path": "84" - }, - "3193": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 21924, - 23003 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3194": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22132, - 22142 - ], - "op": "DUP2", - "path": "67", - "statement": 54 - }, - "3195": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22142 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "3198": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22142 - ], - "op": "AND", - "path": "67" - }, - "3199": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22129 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "3201": { - "branch": 446, - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22142 - ], - "op": "LT", - "path": "67" - }, - "3202": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22184 - ], - "op": "DUP1", - "path": "67" - }, - "3203": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22184 - ], - "op": "ISZERO", - "path": "67" - }, - "3204": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22184 - ], - "op": "PUSH2", - "path": "67", - "value": "0xC93" - }, - "3207": { - "branch": 446, - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22184 - ], - "op": "JUMPI", - "path": "67" - }, - "3208": { - "op": "POP" - }, - "3209": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "3212": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22146, - 22184 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "3215": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22146, - 22184 - ], - "op": "DUP4", - "path": "67" - }, - "3216": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22146, - 22184 - ], - "op": "AND", - "path": "67" - }, - "3217": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22146, - 22184 - ], - "op": "GT", - "path": "67" - }, - "3218": { - "branch": 447, - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22146, - 22184 - ], - "op": "ISZERO", - "path": "67" - }, - "3219": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22128, - 22184 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3220": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22120, - 22185 - ], - "op": "PUSH2", - "path": "67", - "value": "0xC9C" - }, - "3223": { - "branch": 447, - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22120, - 22185 - ], - "op": "JUMPI", - "path": "67" - }, - "3224": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22120, - 22185 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "3226": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22120, - 22185 - ], - "op": "DUP1", - "path": "67" - }, - "3227": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22120, - 22185 - ], - "op": "REVERT", - "path": "67" - }, - "3228": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22120, - 22185 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3229": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22223, - 22259 - ], - "op": "PUSH2", - "path": "67", - "statement": 55, - "value": "0xFFFF" - }, - "3232": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22223, - 22259 - ], - "op": "DUP3", - "path": "67" - }, - "3233": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22223, - 22259 - ], - "op": "AND", - "path": "67" - }, - "3234": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22223, - 22259 - ], - "op": "DUP1", - "path": "67" - }, - "3235": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22223, - 22259 - ], - "op": "DUP6", - "path": "67" - }, - "3236": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22223, - 22259 - ], - "op": "MSTORE", - "path": "67" - }, - "3237": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22274, - 22319 - ], - "op": "PUSH2", - "path": "67", - "value": "0xCAF" - }, - "3240": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22274, - 22319 - ], - "op": "SWAP1", - "path": "67" - }, - "3241": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22274, - 22288 - ], - "op": "DUP3", - "path": "67" - }, - "3242": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22274, - 22288 - ], - "op": "SWAP1", - "path": "67" - }, - "3243": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22274, - 22307 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1928" - }, - "3246": { - "fn": "BalanceHandler.loadBalanceState", - "jump": "i", - "offset": [ - 22274, - 22319 - ], - "op": "JUMP", - "path": "67" - }, - "3247": { - "branch": 448, - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22274, - 22319 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3248": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "ISZERO", - "path": "67" - }, - "3249": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "PUSH2", - "path": "67", - "value": "0xCDC" - }, - "3252": { - "branch": 448, - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "JUMPI", - "path": "67" - }, - "3253": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22545, - 22583 - ], - "op": "PUSH2", - "path": "67", - "statement": 56, - "value": "0xCC2" - }, - "3256": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22563, - 22570 - ], - "op": "DUP4", - "path": "67" - }, - "3257": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22572, - 22582 - ], - "op": "DUP4", - "path": "67" - }, - "3258": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22545, - 22583 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "3261": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22545, - 22583 - ], - "op": "AND", - "path": "67" - }, - "3262": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22545, - 22562 - ], - "op": "PUSH2", - "path": "67", - "value": "0x19B2" - }, - "3265": { - "fn": "BalanceHandler.loadBalanceState", - "jump": "i", - "offset": [ - 22545, - 22583 - ], - "op": "JUMP", - "path": "67" - }, - "3266": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22545, - 22583 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3267": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22495, - 22528 - ], - "op": "PUSH2", - "path": "67", - "value": "0x100" - }, - "3270": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22495, - 22528 - ], - "op": "DUP9", - "path": "67" - }, - "3271": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22495, - 22528 - ], - "op": "ADD", - "path": "67" - }, - "3272": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22335, - 22583 - ], - "op": "MSTORE", - "path": "67" - }, - "3273": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22451, - 22477 - ], - "op": "PUSH1", - "path": "67", - "value": "0xE0" - }, - "3275": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22451, - 22477 - ], - "op": "DUP8", - "path": "67" - }, - "3276": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22451, - 22477 - ], - "op": "ADD", - "path": "67" - }, - "3277": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22335, - 22583 - ], - "op": "MSTORE", - "path": "67" - }, - "3278": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22401, - 22433 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "3280": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22401, - 22433 - ], - "op": "DUP7", - "path": "67" - }, - "3281": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22401, - 22433 - ], - "op": "ADD", - "path": "67" - }, - "3282": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22335, - 22583 - ], - "op": "MSTORE", - "path": "67" - }, - "3283": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22353, - 22383 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "3285": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22353, - 22383 - ], - "op": "DUP6", - "path": "67" - }, - "3286": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22353, - 22383 - ], - "op": "ADD", - "path": "67" - }, - "3287": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22335, - 22583 - ], - "op": "MSTORE", - "path": "67" - }, - "3288": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "PUSH2", - "path": "67", - "value": "0xCFA" - }, - "3291": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "JUMP", - "path": "67" - }, - "3292": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3293": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22647, - 22648 - ], - "op": "PUSH1", - "path": "67", - "statement": 57, - "value": "0x0" - }, - "3295": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22614, - 22644 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "3297": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22614, - 22644 - ], - "op": "DUP6", - "path": "67" - }, - "3298": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22614, - 22644 - ], - "op": "ADD", - "path": "67" - }, - "3299": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22614, - 22648 - ], - "op": "DUP2", - "path": "67" - }, - "3300": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22614, - 22648 - ], - "op": "SWAP1", - "path": "67" - }, - "3301": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22614, - 22648 - ], - "op": "MSTORE", - "path": "67" - }, - "3302": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22662, - 22694 - ], - "op": "PUSH1", - "path": "67", - "statement": 58, - "value": "0x40" - }, - "3304": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22662, - 22694 - ], - "op": "DUP6", - "path": "67" - }, - "3305": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22662, - 22694 - ], - "op": "ADD", - "path": "67" - }, - "3306": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22662, - 22698 - ], - "op": "DUP2", - "path": "67" - }, - "3307": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22662, - 22698 - ], - "op": "SWAP1", - "path": "67" - }, - "3308": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22662, - 22698 - ], - "op": "MSTORE", - "path": "67" - }, - "3309": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22712, - 22738 - ], - "op": "PUSH1", - "path": "67", - "statement": 59, - "value": "0xE0" - }, - "3311": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22712, - 22738 - ], - "op": "DUP6", - "path": "67" - }, - "3312": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22712, - 22738 - ], - "op": "ADD", - "path": "67" - }, - "3313": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22712, - 22742 - ], - "op": "DUP2", - "path": "67" - }, - "3314": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22712, - 22742 - ], - "op": "SWAP1", - "path": "67" - }, - "3315": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22712, - 22742 - ], - "op": "MSTORE", - "path": "67" - }, - "3316": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22756, - 22789 - ], - "op": "PUSH2", - "path": "67", - "statement": 60, - "value": "0x100" - }, - "3319": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22756, - 22789 - ], - "op": "DUP6", - "path": "67" - }, - "3320": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22756, - 22789 - ], - "op": "ADD", - "path": "67" - }, - "3321": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22756, - 22793 - ], - "op": "MSTORE", - "path": "67" - }, - "3322": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22270, - 22804 - ], - "op": "JUMPDEST", - "path": "67" - }, - "3323": { - "op": "POP" - }, - "3324": { - "op": "POP" - }, - "3325": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22843, - 22844 - ], - "op": "PUSH1", - "path": "67", - "statement": 61, - "value": "0x0" - }, - "3327": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22814, - 22840 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "3329": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22814, - 22840 - ], - "op": "DUP4", - "path": "67" - }, - "3330": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22814, - 22840 - ], - "op": "ADD", - "path": "67" - }, - "3331": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22814, - 22844 - ], - "op": "DUP2", - "path": "67" - }, - "3332": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22814, - 22844 - ], - "op": "SWAP1", - "path": "67" - }, - "3333": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22814, - 22844 - ], - "op": "MSTORE", - "path": "67" - }, - "3334": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22854, - 22900 - ], - "op": "PUSH1", - "path": "67", - "statement": 62, - "value": "0x80" - }, - "3336": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22854, - 22900 - ], - "op": "DUP4", - "path": "67" - }, - "3337": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22854, - 22900 - ], - "op": "ADD", - "path": "67" - }, - "3338": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22854, - 22904 - ], - "op": "DUP2", - "path": "67" - }, - "3339": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22854, - 22904 - ], - "op": "SWAP1", - "path": "67" - }, - "3340": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22854, - 22904 - ], - "op": "MSTORE", - "path": "67" - }, - "3341": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22914, - 22944 - ], - "op": "PUSH1", - "path": "67", - "statement": 63, - "value": "0xA0" - }, - "3343": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22914, - 22944 - ], - "op": "DUP4", - "path": "67" - }, - "3344": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22914, - 22944 - ], - "op": "ADD", - "path": "67" - }, - "3345": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22914, - 22948 - ], - "op": "DUP2", - "path": "67" - }, - "3346": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22914, - 22948 - ], - "op": "SWAP1", - "path": "67" - }, - "3347": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22914, - 22948 - ], - "op": "MSTORE", - "path": "67" - }, - "3348": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22992 - ], - "op": "PUSH1", - "path": "67", - "statement": 64, - "value": "0xC0" - }, - "3350": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22992 - ], - "op": "SWAP1", - "path": "67" - }, - "3351": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22992 - ], - "op": "SWAP3", - "path": "67" - }, - "3352": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22992 - ], - "op": "ADD", - "path": "67" - }, - "3353": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22996 - ], - "op": "SWAP2", - "path": "67" - }, - "3354": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22996 - ], - "op": "SWAP1", - "path": "67" - }, - "3355": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22996 - ], - "op": "SWAP2", - "path": "67" - }, - "3356": { - "fn": "BalanceHandler.loadBalanceState", - "offset": [ - 22958, - 22996 - ], - "op": "MSTORE", - "path": "67" - }, - "3357": { - "op": "POP" - }, - "3358": { - "fn": "BalanceHandler.loadBalanceState", - "jump": "o", - "offset": [ - 21924, - 23003 - ], - "op": "JUMP", - "path": "67" - }, - "3359": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3360": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21423, - 21437 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3362": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21439, - 21475 - ], - "op": "PUSH2", - "path": "29", - "value": "0xD29" - }, - "3365": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21439, - 21475 - ], - "op": "PUSH2", - "path": "29", - "value": "0x3F90" - }, - "3368": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 21439, - 21475 - ], - "op": "JUMP", - "path": "29" - }, - "3369": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21439, - 21475 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3370": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21491, - 21523 - ], - "op": "PUSH2", - "path": "29", - "value": "0xD32" - }, - "3373": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21491, - 21505 - ], - "op": "DUP5", - "path": "29" - }, - "3374": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21491, - 21521 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1412" - }, - "3377": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 21491, - 21523 - ], - "op": "JUMP", - "path": "29" - }, - "3378": { - "branch": 386, - "fn": "BatchAction._executeTrades", - "offset": [ - 21491, - 21523 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3379": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "ISZERO", - "path": "29" - }, - "3380": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "PUSH2", - "path": "29", - "value": "0xE22" - }, - "3383": { - "branch": 386, - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "JUMPI", - "path": "29" - }, - "3384": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21599, - 21609 - ], - "op": "DUP7", - "path": "29", - "statement": 65 - }, - "3385": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21609 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "3388": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21609 - ], - "op": "AND", - "path": "29" - }, - "3389": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21578 - ], - "op": "DUP5", - "path": "29" - }, - "3390": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21595 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "3392": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21595 - ], - "op": "ADD", - "path": "29" - }, - "3393": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21595 - ], - "op": "MLOAD", - "path": "29" - }, - "3394": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21609 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFFFF" - }, - "3397": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21609 - ], - "op": "AND", - "path": "29" - }, - "3398": { - "branch": 387, - "fn": "BatchAction._executeTrades", - "offset": [ - 21564, - 21609 - ], - "op": "EQ", - "path": "29" - }, - "3399": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "PUSH2", - "path": "29", - "value": "0xD62" - }, - "3402": { - "branch": 387, - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "JUMPI", - "path": "29" - }, - "3403": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3405": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "MLOAD", - "path": "29" - }, - "3406": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "3410": { - "op": "PUSH1", - "value": "0xE5" - }, - "3412": { - "op": "SHL" - }, - "3413": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "DUP2", - "path": "29" - }, - "3414": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "MSTORE", - "path": "29" - }, - "3415": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "3417": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "ADD", - "path": "29" - }, - "3418": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "3421": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "SWAP1", - "path": "29" - }, - "3422": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4A0F" - }, - "3425": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 21539, - 21669 - ], - "op": "JUMP", - "path": "29" - }, - "3426": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21539, - 21669 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3427": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21821, - 21852 - ], - "op": "PUSH1", - "path": "29", - "statement": 66, - "value": "0x60" - }, - "3429": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21821, - 21852 - ], - "op": "DUP5", - "path": "29" - }, - "3430": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21821, - 21852 - ], - "op": "ADD", - "path": "29" - }, - "3431": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21821, - 21852 - ], - "op": "MLOAD", - "path": "29" - }, - "3432": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21870, - 21899 - ], - "op": "DUP5", - "path": "29" - }, - "3433": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21870, - 21899 - ], - "op": "MLOAD", - "path": "29" - }, - "3434": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3436": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "MLOAD", - "path": "29" - }, - "3437": { - "op": "PUSH4", - "value": "0x3643F39B" - }, - "3442": { - "op": "PUSH1", - "value": "0xE0" - }, - "3444": { - "op": "SHL" - }, - "3445": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP2", - "path": "29" - }, - "3446": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "MSTORE", - "path": "29" - }, - "3447": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21683, - 21700 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3449": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21683, - 21700 - ], - "op": "SWAP3", - "path": "29" - }, - "3450": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21753 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "3471": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21753 - ], - "op": "SWAP3", - "path": "29" - }, - "3472": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21778 - ], - "op": "PUSH4", - "path": "29", - "value": "0x3643F39B" - }, - "3477": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21778 - ], - "op": "SWAP3", - "path": "29" - }, - "3478": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH2", - "path": "29", - "value": "0xDA9" - }, - "3481": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "SWAP3", - "path": "29" - }, - "3482": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21796, - 21803 - ], - "op": "DUP15", - "path": "29" - }, - "3483": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21796, - 21803 - ], - "op": "SWAP3", - "path": "29" - }, - "3484": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21821, - 21852 - ], - "op": "SWAP1", - "path": "29" - }, - "3485": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21821, - 21852 - ], - "op": "SWAP2", - "path": "29" - }, - "3486": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21917, - 21923 - ], - "op": "DUP14", - "path": "29" - }, - "3487": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21917, - 21923 - ], - "op": "SWAP1", - "path": "29" - }, - "3488": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21917, - 21923 - ], - "op": "DUP14", - "path": "29" - }, - "3489": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21917, - 21923 - ], - "op": "SWAP1", - "path": "29" - }, - "3490": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "3492": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ADD", - "path": "29" - }, - "3493": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH2", - "path": "29", - "value": "0x47CB" - }, - "3496": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 21740, - 21937 - ], - "op": "JUMP", - "path": "29" - }, - "3497": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3498": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3500": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3501": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "MLOAD", - "path": "29" - }, - "3502": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3503": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP4", - "path": "29" - }, - "3504": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "SUB", - "path": "29" - }, - "3505": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP2", - "path": "29" - }, - "3506": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP7", - "path": "29" - }, - "3507": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3508": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "3509": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ISZERO", - "path": "29" - }, - "3510": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3511": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ISZERO", - "path": "29" - }, - "3512": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH2", - "path": "29", - "value": "0xDC0" - }, - "3515": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "JUMPI", - "path": "29" - }, - "3516": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3518": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3519": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "REVERT", - "path": "29" - }, - "3520": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3521": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "POP", - "path": "29" - }, - "3522": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "GAS", - "path": "29" - }, - "3523": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "3524": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ISZERO", - "path": "29" - }, - "3525": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3526": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ISZERO", - "path": "29" - }, - "3527": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH2", - "path": "29", - "value": "0xDD4" - }, - "3530": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "JUMPI", - "path": "29" - }, - "3531": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3532": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3534": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3535": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "3536": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3537": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3539": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "REVERT", - "path": "29" - }, - "3540": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3541": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "POP", - "path": "29" - }, - "3542": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "POP", - "path": "29" - }, - "3543": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "POP", - "path": "29" - }, - "3544": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "POP", - "path": "29" - }, - "3545": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3547": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "MLOAD", - "path": "29" - }, - "3548": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3549": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "3551": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "NOT", - "path": "29" - }, - "3552": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "3554": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP3", - "path": "29" - }, - "3555": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ADD", - "path": "29" - }, - "3556": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "AND", - "path": "29" - }, - "3557": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP3", - "path": "29" - }, - "3558": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ADD", - "path": "29" - }, - "3559": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP1", - "path": "29" - }, - "3560": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3562": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "MSTORE", - "path": "29" - }, - "3563": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "POP", - "path": "29" - }, - "3564": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "DUP2", - "path": "29" - }, - "3565": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "ADD", - "path": "29" - }, - "3566": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "SWAP1", - "path": "29" - }, - "3567": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH2", - "path": "29", - "value": "0xDF8" - }, - "3570": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "SWAP2", - "path": "29" - }, - "3571": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "SWAP1", - "path": "29" - }, - "3572": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "PUSH2", - "path": "29", - "value": "0x43F0" - }, - "3575": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 21740, - 21937 - ], - "op": "JUMP", - "path": "29" - }, - "3576": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21740, - 21937 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3577": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21714, - 21937 - ], - "op": "SWAP1", - "path": "29" - }, - "3578": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21714, - 21937 - ], - "op": "SWAP4", - "path": "29" - }, - "3579": { - "op": "POP" - }, - "3580": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21714, - 21937 - ], - "op": "SWAP1", - "path": "29" - }, - "3581": { - "op": "POP" - }, - "3582": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21951, - 22076 - ], - "op": "DUP1", - "path": "29" - }, - "3583": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21951, - 22076 - ], - "op": "ISZERO", - "path": "29" - }, - "3584": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21951, - 22076 - ], - "op": "PUSH2", - "path": "29", - "value": "0xE1C" - }, - "3587": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21951, - 22076 - ], - "op": "JUMPI", - "path": "29" - }, - "3588": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22039, - 22061 - ], - "op": "PUSH1", - "path": "29", - "statement": 67, - "value": "0x20" - }, - "3590": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22039, - 22061 - ], - "op": "DUP6", - "path": "29" - }, - "3591": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22039, - 22061 - ], - "op": "ADD", - "path": "29" - }, - "3592": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22039, - 22061 - ], - "op": "DUP1", - "path": "29" - }, - "3593": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22039, - 22061 - ], - "op": "MLOAD", - "path": "29" - }, - "3594": { - "op": "PUSH1", - "value": "0x1" - }, - "3596": { - "op": "PUSH1", - "value": "0xF8" - }, - "3598": { - "op": "SHL" - }, - "3599": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22012, - 22061 - ], - "op": "OR", - "path": "29" - }, - "3600": { - "op": "PUSH1", - "value": "0x1" - }, - "3602": { - "op": "PUSH1", - "value": "0x1" - }, - "3604": { - "op": "PUSH1", - "value": "0xF8" - }, - "3606": { - "op": "SHL" - }, - "3607": { - "op": "SUB" - }, - "3608": { - "op": "NOT" - }, - "3609": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21987, - 22061 - ], - "op": "AND", - "path": "29" - }, - "3610": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21987, - 22061 - ], - "op": "SWAP1", - "path": "29" - }, - "3611": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21987, - 22061 - ], - "op": "MSTORE", - "path": "29" - }, - "3612": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21951, - 22076 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3613": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "POP", - "path": "29" - }, - "3614": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEBA" - }, - "3617": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "JUMP", - "path": "29" - }, - "3618": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3619": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "statement": 68, - "value": "0x40" - }, - "3621": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "MLOAD", - "path": "29" - }, - "3622": { - "op": "PUSH4", - "value": "0xB58F83ED" - }, - "3627": { - "op": "PUSH1", - "value": "0xE0" - }, - "3629": { - "op": "SHL" - }, - "3630": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP2", - "path": "29" - }, - "3631": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "MSTORE", - "path": "29" - }, - "3632": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22344 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "3653": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22344 - ], - "op": "SWAP1", - "path": "29" - }, - "3654": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22368 - ], - "op": "PUSH4", - "path": "29", - "value": "0xB58F83ED" - }, - "3659": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22368 - ], - "op": "SWAP1", - "path": "29" - }, - "3660": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH2", - "path": "29", - "value": "0xE61" - }, - "3663": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "SWAP1", - "path": "29" - }, - "3664": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22386, - 22393 - ], - "op": "DUP12", - "path": "29" - }, - "3665": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22386, - 22393 - ], - "op": "SWAP1", - "path": "29" - }, - "3666": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22411, - 22421 - ], - "op": "DUP12", - "path": "29" - }, - "3667": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22411, - 22421 - ], - "op": "SWAP1", - "path": "29" - }, - "3668": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22439, - 22453 - ], - "op": "DUP9", - "path": "29" - }, - "3669": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22439, - 22453 - ], - "op": "SWAP1", - "path": "29" - }, - "3670": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22471, - 22477 - ], - "op": "DUP13", - "path": "29" - }, - "3671": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22471, - 22477 - ], - "op": "SWAP1", - "path": "29" - }, - "3672": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22471, - 22477 - ], - "op": "DUP13", - "path": "29" - }, - "3673": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22471, - 22477 - ], - "op": "SWAP1", - "path": "29" - }, - "3674": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "3676": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ADD", - "path": "29" - }, - "3677": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4744" - }, - "3680": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 22331, - 22491 - ], - "op": "JUMP", - "path": "29" - }, - "3681": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3682": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3684": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3686": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "MLOAD", - "path": "29" - }, - "3687": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP1", - "path": "29" - }, - "3688": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP4", - "path": "29" - }, - "3689": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "SUB", - "path": "29" - }, - "3690": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP2", - "path": "29" - }, - "3691": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP7", - "path": "29" - }, - "3692": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP1", - "path": "29" - }, - "3693": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "3694": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ISZERO", - "path": "29" - }, - "3695": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP1", - "path": "29" - }, - "3696": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ISZERO", - "path": "29" - }, - "3697": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH2", - "path": "29", - "value": "0xE79" - }, - "3700": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "JUMPI", - "path": "29" - }, - "3701": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3703": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP1", - "path": "29" - }, - "3704": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "REVERT", - "path": "29" - }, - "3705": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3706": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "POP", - "path": "29" - }, - "3707": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "GAS", - "path": "29" - }, - "3708": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "3709": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ISZERO", - "path": "29" - }, - "3710": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP1", - "path": "29" - }, - "3711": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ISZERO", - "path": "29" - }, - "3712": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH2", - "path": "29", - "value": "0xE8D" - }, - "3715": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "JUMPI", - "path": "29" - }, - "3716": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3717": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3719": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP1", - "path": "29" - }, - "3720": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "3721": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3722": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3724": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "REVERT", - "path": "29" - }, - "3725": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3726": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "POP", - "path": "29" - }, - "3727": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "POP", - "path": "29" - }, - "3728": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "POP", - "path": "29" - }, - "3729": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "POP", - "path": "29" - }, - "3730": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3732": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "MLOAD", - "path": "29" - }, - "3733": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3734": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "3736": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP3", - "path": "29" - }, - "3737": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "3738": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "3740": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "3741": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "SWAP1", - "path": "29" - }, - "3742": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP2", - "path": "29" - }, - "3743": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ADD", - "path": "29" - }, - "3744": { - "op": "PUSH1", - "value": "0x1F" - }, - "3746": { - "op": "NOT" - }, - "3747": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "AND", - "path": "29" - }, - "3748": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP3", - "path": "29" - }, - "3749": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ADD", - "path": "29" - }, - "3750": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "3752": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "MSTORE", - "path": "29" - }, - "3753": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEB5" - }, - "3756": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "SWAP2", - "path": "29" - }, - "3757": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "SWAP1", - "path": "29" - }, - "3758": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "DUP2", - "path": "29" - }, - "3759": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "ADD", - "path": "29" - }, - "3760": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "SWAP1", - "path": "29" - }, - "3761": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "PUSH2", - "path": "29", - "value": "0x44BE" - }, - "3764": { - "fn": "BatchAction._executeTrades", - "jump": "i", - "offset": [ - 22331, - 22491 - ], - "op": "JUMP", - "path": "29" - }, - "3765": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22331, - 22491 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3766": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22303, - 22491 - ], - "op": "SWAP3", - "path": "29" - }, - "3767": { - "op": "POP" - }, - "3768": { - "fn": "BatchAction._executeTrades", - "offset": [ - 22303, - 22491 - ], - "op": "SWAP1", - "path": "29" - }, - "3769": { - "op": "POP" - }, - "3770": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21487, - 22502 - ], - "op": "JUMPDEST", - "path": "29" - }, - "3771": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "SWAP7", - "path": "29" - }, - "3772": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "POP", - "path": "29" - }, - "3773": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "SWAP7", - "path": "29" - }, - "3774": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "SWAP5", - "path": "29" - }, - "3775": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "POP", - "path": "29" - }, - "3776": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "POP", - "path": "29" - }, - "3777": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "POP", - "path": "29" - }, - "3778": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "POP", - "path": "29" - }, - "3779": { - "fn": "BatchAction._executeTrades", - "offset": [ - 21197, - 22508 - ], - "op": "POP", - "path": "29" - }, - "3780": { - "fn": "BatchAction._executeTrades", - "jump": "o", - "offset": [ - 21197, - 22508 - ], - "op": "JUMP", - "path": "29" - }, - "3781": { - "fn": "SafeInt256.add", - "offset": [ - 1427, - 1547 - ], - "op": "JUMPDEST", - "path": "94" - }, - "3782": { - "fn": "SafeInt256.add", - "offset": [ - 1516, - 1521 - ], - "op": "DUP2", - "path": "94", - "statement": 69 - }, - "3783": { - "fn": "SafeInt256.add", - "offset": [ - 1516, - 1521 - ], - "op": "DUP2", - "path": "94" - }, - "3784": { - "fn": "SafeInt256.add", - "offset": [ - 1516, - 1521 - ], - "op": "ADD", - "path": "94" - }, - "3785": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "DUP3", - "path": "94" - }, - "3786": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "DUP2", - "path": "94" - }, - "3787": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "SLT", - "path": "94" - }, - "3788": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "ISZERO", - "path": "94" - }, - "3789": { - "fn": "SafeInt256.add", - "offset": [ - 1483, - 1491 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "3791": { - "fn": "SafeInt256.add", - "offset": [ - 1532, - 1538 - ], - "op": "DUP4", - "path": "94" - }, - "3792": { - "fn": "SafeInt256.add", - "offset": [ - 1532, - 1538 - ], - "op": "SLT", - "path": "94" - }, - "3793": { - "fn": "SafeInt256.add", - "offset": [ - 1532, - 1538 - ], - "op": "ISZERO", - "path": "94" - }, - "3794": { - "branch": 525, - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1539 - ], - "op": "EQ", - "path": "94" - }, - "3795": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "PUSH2", - "path": "94", - "value": "0xEDB" - }, - "3798": { - "branch": 525, - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "JUMPI", - "path": "94" - }, - "3799": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "3801": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "DUP1", - "path": "94" - }, - "3802": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "REVERT", - "path": "94" - }, - "3803": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "JUMPDEST", - "path": "94" - }, - "3804": { - "fn": "SafeInt256.add", - "offset": [ - 1427, - 1547 - ], - "op": "SWAP3", - "path": "94" - }, - "3805": { - "fn": "SafeInt256.add", - "offset": [ - 1427, - 1547 - ], - "op": "SWAP2", - "path": "94" - }, - "3806": { - "fn": "SafeInt256.add", - "offset": [ - 1427, - 1547 - ], - "op": "POP", - "path": "94" - }, - "3807": { - "fn": "SafeInt256.add", - "offset": [ - 1427, - 1547 - ], - "op": "POP", - "path": "94" - }, - "3808": { - "fn": "SafeInt256.add", - "jump": "o", - "offset": [ - 1427, - 1547 - ], - "op": "JUMP", - "path": "94" - }, - "3809": { - "fn": "SafeInt256.neg", - "offset": [ - 1553, - 1643 - ], - "op": "JUMPDEST", - "path": "94" - }, - "3810": { - "fn": "SafeInt256.neg", - "offset": [ - 1599, - 1607 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "3812": { - "fn": "SafeInt256.neg", - "offset": [ - 1626, - 1636 - ], - "op": "PUSH2", - "path": "94", - "statement": 70, - "value": "0xBDF" - }, - "3815": { - "op": "PUSH1", - "value": "0x0" - }, - "3817": { - "op": "NOT" - }, - "3818": { - "fn": "SafeInt256.neg", - "offset": [ - 1634, - 1635 - ], - "op": "DUP4", - "path": "94" - }, - "3819": { - "fn": "SafeInt256.neg", - "offset": [ - 1626, - 1629 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1A5E" - }, - "3822": { - "fn": "SafeInt256.neg", - "jump": "i", - "offset": [ - 1626, - 1636 - ], - "op": "JUMP", - "path": "94" - }, - "3823": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5904, - 6420 - ], - "op": "JUMPDEST", - "path": "76" - }, - "3824": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5990, - 6016 - ], - "op": "PUSH2", - "path": "76", - "value": "0xEF7" - }, - "3827": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5990, - 6016 - ], - "op": "PUSH2", - "path": "76", - "value": "0x3FF8" - }, - "3830": { - "fn": "AssetRate.buildAssetRateStateful", - "jump": "i", - "offset": [ - 5990, - 6016 - ], - "op": "JUMP", - "path": "76" - }, - "3831": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5990, - 6016 - ], - "op": "JUMPDEST", - "path": "76" - }, - "3832": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6033, - 6044 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "3834": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6046, - 6073 - ], - "op": "DUP1", - "path": "76" - }, - "3835": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6075, - 6104 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "3837": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6120, - 6153 - ], - "op": "PUSH2", - "path": "76", - "value": "0xF05" - }, - "3840": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6142, - 6152 - ], - "op": "DUP6", - "path": "76" - }, - "3841": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6120, - 6141 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1AAC" - }, - "3844": { - "fn": "AssetRate.buildAssetRateStateful", - "jump": "i", - "offset": [ - 6120, - 6153 - ], - "op": "JUMP", - "path": "76" - }, - "3845": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6120, - 6153 - ], - "op": "JUMPDEST", - "path": "76" - }, - "3846": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "PUSH1", - "path": "76", - "statement": 71, - "value": "0x40" - }, - "3848": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "DUP1", - "path": "76" - }, - "3849": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "MLOAD", - "path": "76" - }, - "3850": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "PUSH1", - "path": "76", - "value": "0x60" - }, - "3852": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "DUP2", - "path": "76" - }, - "3853": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "ADD", - "path": "76" - }, - "3854": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "DUP3", - "path": "76" - }, - "3855": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "MSTORE", - "path": "76" - }, - "3856": { - "op": "PUSH1", - "value": "0x1" - }, - "3858": { - "op": "PUSH1", - "value": "0x1" - }, - "3860": { - "op": "PUSH1", - "value": "0xA0" - }, - "3862": { - "op": "SHL" - }, - "3863": { - "op": "SUB" - }, - "3864": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP1", - "path": "76" - }, - "3865": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP4", - "path": "76" - }, - "3866": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "AND", - "path": "76" - }, - "3867": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "DUP4", - "path": "76" - }, - "3868": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "MSTORE", - "path": "76" - }, - "3869": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "PUSH1", - "path": "76", - "value": "0x20" - }, - "3871": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "DUP4", - "path": "76" - }, - "3872": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "ADD", - "path": "76" - }, - "3873": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP4", - "path": "76" - }, - "3874": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP1", - "path": "76" - }, - "3875": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP4", - "path": "76" - }, - "3876": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "MSTORE", - "path": "76" - }, - "3877": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6370, - 6397 - ], - "op": "PUSH1", - "path": "76", - "value": "0xFF" - }, - "3879": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6370, - 6397 - ], - "op": "AND", - "path": "76" - }, - "3880": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6370, - 6372 - ], - "op": "PUSH1", - "path": "76", - "value": "0xA" - }, - "3882": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6370, - 6397 - ], - "op": "EXP", - "path": "76" - }, - "3883": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP2", - "path": "76" - }, - "3884": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "DUP2", - "path": "76" - }, - "3885": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "ADD", - "path": "76" - }, - "3886": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP2", - "path": "76" - }, - "3887": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP1", - "path": "76" - }, - "3888": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP2", - "path": "76" - }, - "3889": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "MSTORE", - "path": "76" - }, - "3890": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 6183, - 6413 - ], - "op": "SWAP4", - "path": "76" - }, - "3891": { - "op": "POP" - }, - "3892": { - "op": "POP" - }, - "3893": { - "op": "POP" - }, - "3894": { - "op": "POP" - }, - "3895": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5904, - 6420 - ], - "op": "SWAP2", - "path": "76" - }, - "3896": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5904, - 6420 - ], - "op": "SWAP1", - "path": "76" - }, - "3897": { - "fn": "AssetRate.buildAssetRateStateful", - "offset": [ - 5904, - 6420 - ], - "op": "POP", - "path": "76" - }, - "3898": { - "fn": "AssetRate.buildAssetRateStateful", - "jump": "o", - "offset": [ - 5904, - 6420 - ], - "op": "JUMP", - "path": "76" - }, - "3899": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1133, - 1269 - ], - "op": "JUMPDEST", - "path": "69" - }, - "3900": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1204, - 1216 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF43" - }, - "3903": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1204, - 1216 - ], - "op": "PUSH2", - "path": "69", - "value": "0x4022" - }, - "3906": { - "fn": "TokenHandler.getUnderlyingToken", - "jump": "i", - "offset": [ - 1204, - 1216 - ], - "op": "JUMP", - "path": "69" - }, - "3907": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1204, - 1216 - ], - "op": "JUMPDEST", - "path": "69" - }, - "3908": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1235, - 1262 - ], - "op": "PUSH2", - "path": "69", - "statement": 72, - "value": "0xBDF" - }, - "3911": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1245, - 1255 - ], - "op": "DUP3", - "path": "69" - }, - "3912": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1257, - 1261 - ], - "op": "PUSH1", - "path": "69", - "value": "0x1" - }, - "3914": { - "fn": "TokenHandler.getUnderlyingToken", - "offset": [ - 1235, - 1244 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1B6F" - }, - "3917": { - "fn": "TokenHandler.getUnderlyingToken", - "jump": "i", - "offset": [ - 1235, - 1262 - ], - "op": "JUMP", - "path": "69" - }, - "3918": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 882, - 1350 - ], - "op": "JUMPDEST", - "path": "76" - }, - "3919": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1010, - 1016 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "3921": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1155, - 1179 - ], - "op": "DUP1", - "path": "76" - }, - "3922": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1308 - ], - "op": "PUSH2", - "path": "76", - "value": "0xF7F" - }, - "3925": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1286, - 1288 - ], - "op": "DUP5", - "path": "76" - }, - "3926": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1286, - 1307 - ], - "op": "PUSH1", - "path": "76", - "value": "0x40" - }, - "3928": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1286, - 1307 - ], - "op": "ADD", - "path": "76" - }, - "3929": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1286, - 1307 - ], - "op": "MLOAD", - "path": "76" - }, - "3930": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1268 - ], - "op": "PUSH2", - "path": "76", - "value": "0xF79" - }, - "3933": { - "offset": [ - 658, - 662 - ], - "op": "PUSH5", - "path": "76", - "value": "0x2540BE400" - }, - "3939": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1220 - ], - "op": "PUSH2", - "path": "76", - "value": "0xF79" - }, - "3942": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1207, - 1219 - ], - "op": "DUP8", - "path": "76" - }, - "3943": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1184 - ], - "op": "DUP10", - "path": "76" - }, - "3944": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1189 - ], - "op": "PUSH1", - "path": "76", - "value": "0x20" - }, - "3946": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1189 - ], - "op": "ADD", - "path": "76" - }, - "3947": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1189 - ], - "op": "MLOAD", - "path": "76" - }, - "3948": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1206 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1A5E" - }, - "3951": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1206 - ], - "op": "SWAP1", - "path": "76" - }, - "3952": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1220 - ], - "op": "SWAP2", - "path": "76" - }, - "3953": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1220 - ], - "op": "SWAP1", - "path": "76" - }, - "3954": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1220 - ], - "op": "PUSH4", - "path": "76", - "value": "0xFFFFFFFF" - }, - "3959": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1220 - ], - "op": "AND", - "path": "76" - }, - "3960": { - "fn": "AssetRate.convertToUnderlying", - "jump": "i", - "offset": [ - 1182, - 1220 - ], - "op": "JUMP", - "path": "76" - }, - "3961": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1220 - ], - "op": "JUMPDEST", - "path": "76" - }, - "3962": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1237 - ], - "op": "SWAP1", - "path": "76" - }, - "3963": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1237 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1C1D" - }, - "3966": { - "fn": "AssetRate.convertToUnderlying", - "jump": "i", - "offset": [ - 1182, - 1268 - ], - "op": "JUMP", - "path": "76" - }, - "3967": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1182, - 1308 - ], - "op": "JUMPDEST", - "path": "76" - }, - "3968": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 1155, - 1308 - ], - "op": "SWAP5", - "path": "76" - }, - "3969": { - "fn": "AssetRate.convertToUnderlying", - "offset": [ - 882, - 1350 - ], - "op": "SWAP4", - "path": "76" - }, - "3970": { - "op": "POP" - }, - "3971": { - "op": "POP" - }, - "3972": { - "op": "POP" - }, - "3973": { - "op": "POP" - }, - "3974": { - "fn": "AssetRate.convertToUnderlying", - "jump": "o", - "offset": [ - 882, - 1350 - ], - "op": "JUMP", - "path": "76" - }, - "3975": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13720, - 14509 - ], - "op": "JUMPDEST", - "path": "69" - }, - "3976": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13805, - 13811 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "3978": { - "offset": [ - 429, - 432 - ], - "op": "PUSH4", - "path": "60", - "value": "0x5F5E100" - }, - "3983": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13827, - 13832 - ], - "op": "DUP4", - "path": "69" - }, - "3984": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13827, - 13841 - ], - "op": "PUSH1", - "path": "69", - "value": "0x40" - }, - "3986": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13827, - 13841 - ], - "op": "ADD", - "path": "69" - }, - "3987": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13827, - 13841 - ], - "op": "MLOAD", - "path": "69" - }, - "3988": { - "branch": 542, - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13827, - 13879 - ], - "op": "EQ", - "path": "69" - }, - "3989": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13823, - 13894 - ], - "op": "ISZERO", - "path": "69" - }, - "3990": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13823, - 13894 - ], - "op": "PUSH2", - "path": "69", - "value": "0xFA0" - }, - "3993": { - "branch": 542, - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13823, - 13894 - ], - "op": "JUMPI", - "path": "69" - }, - "3994": { - "op": "POP" - }, - "3995": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13888, - 13894 - ], - "op": "DUP1", - "path": "69", - "statement": 73 - }, - "3996": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13881, - 13894 - ], - "op": "PUSH2", - "path": "69", - "value": "0xEDB" - }, - "3999": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13881, - 13894 - ], - "op": "JUMP", - "path": "69" - }, - "4000": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 13823, - 13894 - ], - "op": "JUMPDEST", - "path": "69" - }, - "4001": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14502 - ], - "op": "PUSH2", - "path": "69", - "statement": 74, - "value": "0xAA3" - }, - "4004": { - "offset": [ - 429, - 432 - ], - "op": "PUSH4", - "path": "60", - "value": "0x5F5E100" - }, - "4009": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14462 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF79" - }, - "4012": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14447, - 14452 - ], - "op": "DUP6", - "path": "69" - }, - "4013": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14447, - 14461 - ], - "op": "PUSH1", - "path": "69", - "value": "0x40" - }, - "4015": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14447, - 14461 - ], - "op": "ADD", - "path": "69" - }, - "4016": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14447, - 14461 - ], - "op": "MLOAD", - "path": "69" - }, - "4017": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14442 - ], - "op": "DUP6", - "path": "69" - }, - "4018": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14446 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1A5E" - }, - "4021": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14446 - ], - "op": "SWAP1", - "path": "69" - }, - "4022": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14462 - ], - "op": "SWAP2", - "path": "69" - }, - "4023": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14462 - ], - "op": "SWAP1", - "path": "69" - }, - "4024": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14462 - ], - "op": "PUSH4", - "path": "69", - "value": "0xFFFFFFFF" - }, - "4029": { - "fn": "TokenHandler.convertToExternal", - "offset": [ - 14436, - 14462 - ], - "op": "AND", - "path": "69" - }, - "4030": { - "fn": "TokenHandler.convertToExternal", - "jump": "i", - "offset": [ - 14436, - 14462 - ], - "op": "JUMP", - "path": "69" - }, - "4031": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4547, - 6241 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4032": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4711, - 4717 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4034": { - "branch": 449, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4733, - 4762 - ], - "op": "DUP2", - "path": "67" - }, - "4035": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4729, - 4772 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFCE" - }, - "4038": { - "branch": 449, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4729, - 4772 - ], - "op": "JUMPI", - "path": "67" - }, - "4039": { - "op": "POP" - }, - "4040": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4771, - 4772 - ], - "op": "PUSH1", - "path": "67", - "statement": 75, - "value": "0x0" - }, - "4042": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4764, - 4772 - ], - "op": "PUSH2", - "path": "67", - "value": "0xAA3" - }, - "4045": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4764, - 4772 - ], - "op": "JUMP", - "path": "67" - }, - "4046": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4729, - 4772 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4047": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4817, - 4818 - ], - "op": "PUSH1", - "path": "67", - "statement": 76, - "value": "0x0" - }, - "4049": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4790, - 4814 - ], - "op": "DUP3", - "path": "67" - }, - "4050": { - "branch": 450, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4790, - 4818 - ], - "op": "SGT", - "path": "67" - }, - "4051": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4782, - 4819 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFDB" - }, - "4054": { - "branch": 450, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4782, - 4819 - ], - "op": "JUMPI", - "path": "67" - }, - "4055": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4782, - 4819 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4057": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4782, - 4819 - ], - "op": "DUP1", - "path": "67" - }, - "4058": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4782, - 4819 - ], - "op": "REVERT", - "path": "67" - }, - "4059": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4782, - 4819 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4060": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4872, - 4900 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4062": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4903, - 4959 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFEE" - }, - "4065": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4935, - 4947 - ], - "op": "DUP6", - "path": "67" - }, - "4066": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4935, - 4958 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4068": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4935, - 4958 - ], - "op": "ADD", - "path": "67" - }, - "4069": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4935, - 4958 - ], - "op": "MLOAD", - "path": "67" - }, - "4070": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4903, - 4959 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4073": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4903, - 4959 - ], - "op": "AND", - "path": "67" - }, - "4074": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4903, - 4934 - ], - "op": "PUSH2", - "path": "67", - "value": "0xF3B" - }, - "4077": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 4903, - 4959 - ], - "op": "JUMP", - "path": "67" - }, - "4078": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4903, - 4959 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4079": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4872, - 4959 - ], - "op": "SWAP1", - "path": "67" - }, - "4080": { - "op": "POP" - }, - "4081": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5098, - 5113 - ], - "op": "PUSH1", - "path": "67", - "value": "0x3" - }, - "4083": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5084 - ], - "op": "DUP2", - "path": "67" - }, - "4084": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5094 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "4086": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5094 - ], - "op": "ADD", - "path": "67" - }, - "4087": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5094 - ], - "op": "MLOAD", - "path": "67" - }, - "4088": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "PUSH1", - "path": "67", - "value": "0x5" - }, - "4090": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "DUP2", - "path": "67" - }, - "4091": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "GT", - "path": "67" - }, - "4092": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "ISZERO", - "path": "67" - }, - "4093": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1002" - }, - "4096": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "JUMPI", - "path": "67" - }, - "4097": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "INVALID", - "path": "67" - }, - "4098": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4099": { - "branch": 451, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5069, - 5113 - ], - "op": "EQ", - "path": "67" - }, - "4100": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "ISZERO", - "path": "67" - }, - "4101": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "PUSH2", - "path": "67", - "value": "0x102C" - }, - "4104": { - "branch": 451, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "JUMPI", - "path": "67" - }, - "4105": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5213, - 5222 - ], - "op": "CALLVALUE", - "path": "67", - "statement": 77 - }, - "4106": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5184, - 5208 - ], - "op": "DUP4", - "path": "67" - }, - "4107": { - "branch": 452, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5176, - 5222 - ], - "op": "EQ", - "path": "67" - }, - "4108": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1027" - }, - "4111": { - "branch": 452, - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "JUMPI", - "path": "67" - }, - "4112": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4114": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "MLOAD", - "path": "67" - }, - "4115": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "4119": { - "op": "PUSH1", - "value": "0xE5" - }, - "4121": { - "op": "SHL" - }, - "4122": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "DUP2", - "path": "67" - }, - "4123": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "MSTORE", - "path": "67" - }, - "4124": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "PUSH1", - "path": "67", - "value": "0x4" - }, - "4126": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "ADD", - "path": "67" - }, - "4127": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "PUSH2", - "path": "67", - "value": "0x17A" - }, - "4130": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "SWAP1", - "path": "67" - }, - "4131": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "PUSH2", - "path": "67", - "value": "0x48F8" - }, - "4134": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 5168, - 5238 - ], - "op": "JUMP", - "path": "67" - }, - "4135": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5168, - 5238 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4136": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1043" - }, - "4139": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "JUMP", - "path": "67" - }, - "4140": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4141": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5330, - 5353 - ], - "op": "DUP5", - "path": "67", - "statement": 78 - }, - "4142": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5330, - 5353 - ], - "op": "MLOAD", - "path": "67" - }, - "4143": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5380 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1040" - }, - "4146": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5380 - ], - "op": "SWAP1", - "path": "67" - }, - "4147": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5311 - ], - "op": "DUP3", - "path": "67" - }, - "4148": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5311 - ], - "op": "SWAP1", - "path": "67" - }, - "4149": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5321, - 5328 - ], - "op": "DUP7", - "path": "67" - }, - "4150": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5321, - 5328 - ], - "op": "SWAP1", - "path": "67" - }, - "4151": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5380 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4154": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5380 - ], - "op": "AND", - "path": "67" - }, - "4155": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5355, - 5379 - ], - "op": "DUP7", - "path": "67" - }, - "4156": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5320 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1C4E" - }, - "4159": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 5296, - 5380 - ], - "op": "JUMP", - "path": "67" - }, - "4160": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5296, - 5380 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4161": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5269, - 5380 - ], - "op": "SWAP3", - "path": "67" - }, - "4162": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5269, - 5380 - ], - "op": "POP", - "path": "67" - }, - "4163": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5065, - 5391 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4164": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5401, - 5424 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4166": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5427, - 5478 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1056" - }, - "4169": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5454, - 5466 - ], - "op": "DUP7", - "path": "67" - }, - "4170": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5454, - 5477 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4172": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5454, - 5477 - ], - "op": "ADD", - "path": "67" - }, - "4173": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5454, - 5477 - ], - "op": "MLOAD", - "path": "67" - }, - "4174": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5427, - 5478 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4177": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5427, - 5478 - ], - "op": "AND", - "path": "67" - }, - "4178": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5427, - 5453 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10A4" - }, - "4181": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 5427, - 5478 - ], - "op": "JUMP", - "path": "67" - }, - "4182": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5427, - 5478 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4183": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5401, - 5478 - ], - "op": "SWAP1", - "path": "67" - }, - "4184": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5401, - 5478 - ], - "op": "POP", - "path": "67" - }, - "4185": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5488, - 5531 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4187": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5546, - 5631 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1073" - }, - "4190": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5562, - 5574 - ], - "op": "DUP8", - "path": "67" - }, - "4191": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5562, - 5585 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4193": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5562, - 5585 - ], - "op": "ADD", - "path": "67" - }, - "4194": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5562, - 5585 - ], - "op": "MLOAD", - "path": "67" - }, - "4195": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5587, - 5630 - ], - "op": "PUSH2", - "path": "67", - "value": "0x106B" - }, - "4198": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5605, - 5629 - ], - "op": "DUP8", - "path": "67" - }, - "4199": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5587, - 5604 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1CF6" - }, - "4202": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 5587, - 5630 - ], - "op": "JUMP", - "path": "67" - }, - "4203": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5587, - 5630 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4204": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5546, - 5556 - ], - "op": "DUP5", - "path": "67" - }, - "4205": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5546, - 5556 - ], - "op": "SWAP2", - "path": "67" - }, - "4206": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5546, - 5631 - ], - "op": "SWAP1", - "path": "67" - }, - "4207": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5546, - 5561 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1D09" - }, - "4210": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 5546, - 5631 - ], - "op": "JUMP", - "path": "67" - }, - "4211": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5546, - 5631 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4212": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5488, - 5631 - ], - "op": "SWAP1", - "path": "67" - }, - "4213": { - "op": "POP" - }, - "4214": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5932, - 5966 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4216": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5981, - 6047 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1081" - }, - "4219": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5981, - 5991 - ], - "op": "DUP4", - "path": "67" - }, - "4220": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5488, - 5631 - ], - "op": "DUP4", - "path": "67" - }, - "4221": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5981, - 6009 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1DFA" - }, - "4224": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 5981, - 6047 - ], - "op": "JUMP", - "path": "67" - }, - "4225": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5981, - 6047 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4226": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6156 - ], - "op": "PUSH1", - "path": "67", - "statement": 79, - "value": "0x60" - }, - "4228": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6156 - ], - "op": "DUP10", - "path": "67" - }, - "4229": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6156 - ], - "op": "ADD", - "path": "67" - }, - "4230": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6156 - ], - "op": "MLOAD", - "path": "67" - }, - "4231": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5932, - 6047 - ], - "op": "SWAP1", - "path": "67" - }, - "4232": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5932, - 6047 - ], - "op": "SWAP2", - "path": "67" - }, - "4233": { - "op": "POP" - }, - "4234": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6189 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1093" - }, - "4237": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6189 - ], - "op": "SWAP1", - "path": "67" - }, - "4238": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 5932, - 6047 - ], - "op": "DUP3", - "path": "67" - }, - "4239": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6160 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4242": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "i", - "offset": [ - 6130, - 6189 - ], - "op": "JUMP", - "path": "67" - }, - "4243": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6130, - 6189 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4244": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6101, - 6127 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "4246": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6101, - 6127 - ], - "op": "DUP10", - "path": "67" - }, - "4247": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6101, - 6127 - ], - "op": "ADD", - "path": "67" - }, - "4248": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6101, - 6189 - ], - "op": "MSTORE", - "path": "67" - }, - "4249": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 6207, - 6234 - ], - "op": "SWAP4", - "path": "67", - "statement": 80 - }, - "4250": { - "op": "POP" - }, - "4251": { - "op": "POP" - }, - "4252": { - "op": "POP" - }, - "4253": { - "op": "POP" - }, - "4254": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4547, - 6241 - ], - "op": "SWAP4", - "path": "67" - }, - "4255": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4547, - 6241 - ], - "op": "SWAP3", - "path": "67" - }, - "4256": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4547, - 6241 - ], - "op": "POP", - "path": "67" - }, - "4257": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4547, - 6241 - ], - "op": "POP", - "path": "67" - }, - "4258": { - "fn": "BalanceHandler.depositUnderlyingToken", - "offset": [ - 4547, - 6241 - ], - "op": "POP", - "path": "67" - }, - "4259": { - "fn": "BalanceHandler.depositUnderlyingToken", - "jump": "o", - "offset": [ - 4547, - 6241 - ], - "op": "JUMP", - "path": "67" - }, - "4260": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 995, - 1127 - ], - "op": "JUMPDEST", - "path": "69" - }, - "4261": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1061, - 1073 - ], - "op": "PUSH2", - "path": "69", - "value": "0x10AC" - }, - "4264": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1061, - 1073 - ], - "op": "PUSH2", - "path": "69", - "value": "0x4022" - }, - "4267": { - "fn": "TokenHandler.getAssetToken", - "jump": "i", - "offset": [ - 1061, - 1073 - ], - "op": "JUMP", - "path": "69" - }, - "4268": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1061, - 1073 - ], - "op": "JUMPDEST", - "path": "69" - }, - "4269": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1092, - 1120 - ], - "op": "PUSH2", - "path": "69", - "statement": 81, - "value": "0xBDF" - }, - "4272": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1102, - 1112 - ], - "op": "DUP3", - "path": "69" - }, - "4273": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1114, - 1119 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "4275": { - "fn": "TokenHandler.getAssetToken", - "offset": [ - 1092, - 1101 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1B6F" - }, - "4278": { - "fn": "TokenHandler.getAssetToken", - "jump": "i", - "offset": [ - 1092, - 1120 - ], - "op": "JUMP", - "path": "69" - }, - "4279": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4280": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2042, - 2068 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4282": { - "branch": 453, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2084, - 2108 - ], - "op": "DUP3", - "path": "67" - }, - "4283": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2080, - 2118 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10C6" - }, - "4286": { - "branch": 453, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2080, - 2118 - ], - "op": "JUMPI", - "path": "67" - }, - "4287": { - "op": "POP" - }, - "4288": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2117, - 2118 - ], - "op": "PUSH1", - "path": "67", - "statement": 82, - "value": "0x0" - }, - "4290": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2110, - 2118 - ], - "op": "PUSH2", - "path": "67", - "value": "0xF7F" - }, - "4293": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2110, - 2118 - ], - "op": "JUMP", - "path": "67" - }, - "4294": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2080, - 2118 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4295": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2158, - 2159 - ], - "op": "PUSH1", - "path": "67", - "statement": 83, - "value": "0x0" - }, - "4297": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2136, - 2155 - ], - "op": "DUP4", - "path": "67" - }, - "4298": { - "branch": 454, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2136, - 2159 - ], - "op": "SGT", - "path": "67" - }, - "4299": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2128, - 2160 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10D3" - }, - "4302": { - "branch": 454, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2128, - 2160 - ], - "op": "JUMPI", - "path": "67" - }, - "4303": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2128, - 2160 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4305": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2128, - 2160 - ], - "op": "DUP1", - "path": "67" - }, - "4306": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2128, - 2160 - ], - "op": "REVERT", - "path": "67" - }, - "4307": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2128, - 2160 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4308": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2214, - 2232 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4310": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2235, - 2286 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10E6" - }, - "4313": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2262, - 2274 - ], - "op": "DUP7", - "path": "67" - }, - "4314": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2262, - 2285 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4316": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2262, - 2285 - ], - "op": "ADD", - "path": "67" - }, - "4317": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2262, - 2285 - ], - "op": "MLOAD", - "path": "67" - }, - "4318": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2235, - 2286 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4321": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2235, - 2286 - ], - "op": "AND", - "path": "67" - }, - "4322": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2235, - 2261 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10A4" - }, - "4325": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 2235, - 2286 - ], - "op": "JUMP", - "path": "67" - }, - "4326": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2235, - 2286 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4327": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2214, - 2286 - ], - "op": "SWAP1", - "path": "67" - }, - "4328": { - "op": "POP" - }, - "4329": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2319, - 2335 - ], - "op": "PUSH1", - "path": "67", - "value": "0x5" - }, - "4331": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2305 - ], - "op": "DUP2", - "path": "67" - }, - "4332": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2315 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "4334": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2315 - ], - "op": "ADD", - "path": "67" - }, - "4335": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2315 - ], - "op": "MLOAD", - "path": "67" - }, - "4336": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "PUSH1", - "path": "67", - "value": "0x5" - }, - "4338": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "DUP2", - "path": "67" - }, - "4339": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "GT", - "path": "67" - }, - "4340": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "ISZERO", - "path": "67" - }, - "4341": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10FA" - }, - "4344": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "JUMPI", - "path": "67" - }, - "4345": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "INVALID", - "path": "67" - }, - "4346": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4347": { - "branch": 455, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2300, - 2335 - ], - "op": "EQ", - "path": "67" - }, - "4348": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2296, - 2585 - ], - "op": "ISZERO", - "path": "67" - }, - "4349": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2296, - 2585 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1113" - }, - "4352": { - "branch": 455, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2296, - 2585 - ], - "op": "JUMPI", - "path": "67" - }, - "4353": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2500, - 2523 - ], - "op": "DUP6", - "path": "67", - "statement": 84 - }, - "4354": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2500, - 2523 - ], - "op": "MLOAD", - "path": "67" - }, - "4355": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2440, - 2574 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1110" - }, - "4358": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2440, - 2574 - ], - "op": "SWAP1", - "path": "67" - }, - "4359": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2440, - 2574 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4362": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2440, - 2574 - ], - "op": "AND", - "path": "67" - }, - "4363": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2541, - 2560 - ], - "op": "DUP6", - "path": "67" - }, - "4364": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2440, - 2482 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1E2A" - }, - "4367": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 2440, - 2574 - ], - "op": "JUMP", - "path": "67" - }, - "4368": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2440, - 2574 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4369": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2418, - 2574 - ], - "op": "SWAP4", - "path": "67" - }, - "4370": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2418, - 2574 - ], - "op": "POP", - "path": "67" - }, - "4371": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2296, - 2585 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4372": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2688 - ], - "op": "DUP1", - "path": "67" - }, - "4373": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2703 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "4375": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2703 - ], - "op": "ADD", - "path": "67" - }, - "4376": { - "branch": 456, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2703 - ], - "op": "MLOAD", - "path": "67" - }, - "4377": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2720 - ], - "op": "DUP1", - "path": "67" - }, - "4378": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2720 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1120" - }, - "4381": { - "branch": 456, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2720 - ], - "op": "JUMPI", - "path": "67" - }, - "4382": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2720 - ], - "op": "POP", - "path": "67" - }, - "4383": { - "branch": 457, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2707, - 2720 - ], - "op": "DUP3", - "path": "67" - }, - "4384": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2683, - 2720 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4385": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2679, - 4302 - ], - "op": "ISZERO", - "path": "67" - }, - "4386": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2679, - 4302 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1167" - }, - "4389": { - "branch": 457, - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2679, - 4302 - ], - "op": "JUMPI", - "path": "67" - }, - "4390": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3080, - 3103 - ], - "op": "DUP6", - "path": "67" - }, - "4391": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3080, - 3103 - ], - "op": "MLOAD", - "path": "67" - }, - "4392": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3013, - 3053 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4394": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3013, - 3053 - ], - "op": "SWAP1", - "path": "67" - }, - "4395": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3125 - ], - "op": "PUSH2", - "path": "67", - "value": "0x113C" - }, - "4398": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3125 - ], - "op": "SWAP1", - "path": "67" - }, - "4399": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3061 - ], - "op": "DUP4", - "path": "67" - }, - "4400": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3061 - ], - "op": "SWAP1", - "path": "67" - }, - "4401": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3071, - 3078 - ], - "op": "DUP9", - "path": "67" - }, - "4402": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3071, - 3078 - ], - "op": "SWAP1", - "path": "67" - }, - "4403": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3125 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4406": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3125 - ], - "op": "AND", - "path": "67" - }, - "4407": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3105, - 3124 - ], - "op": "DUP9", - "path": "67" - }, - "4408": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3070 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1C4E" - }, - "4411": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 3056, - 3125 - ], - "op": "JUMP", - "path": "67" - }, - "4412": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3056, - 3125 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4413": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3013, - 3125 - ], - "op": "SWAP1", - "path": "67" - }, - "4414": { - "op": "POP" - }, - "4415": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3361, - 3419 - ], - "op": "PUSH2", - "path": "67", - "statement": 85, - "value": "0x1148" - }, - "4418": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3361, - 3366 - ], - "op": "DUP3", - "path": "67" - }, - "4419": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3013, - 3125 - ], - "op": "DUP3", - "path": "67" - }, - "4420": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3361, - 3384 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1DFA" - }, - "4423": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 3361, - 3419 - ], - "op": "JUMP", - "path": "67" - }, - "4424": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3361, - 3419 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4425": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3528 - ], - "op": "PUSH1", - "path": "67", - "statement": 86, - "value": "0x60" - }, - "4427": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3528 - ], - "op": "DUP9", - "path": "67" - }, - "4428": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3528 - ], - "op": "ADD", - "path": "67" - }, - "4429": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3528 - ], - "op": "MLOAD", - "path": "67" - }, - "4430": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3339, - 3419 - ], - "op": "SWAP1", - "path": "67" - }, - "4431": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3339, - 3419 - ], - "op": "SWAP4", - "path": "67" - }, - "4432": { - "op": "POP" - }, - "4433": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3553 - ], - "op": "PUSH2", - "path": "67", - "value": "0x115A" - }, - "4436": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3553 - ], - "op": "SWAP1", - "path": "67" - }, - "4437": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3339, - 3419 - ], - "op": "DUP5", - "path": "67" - }, - "4438": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3532 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4441": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 3502, - 3553 - ], - "op": "JUMP", - "path": "67" - }, - "4442": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3502, - 3553 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4443": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3473, - 3499 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "4445": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3473, - 3499 - ], - "op": "DUP9", - "path": "67" - }, - "4446": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3473, - 3499 - ], - "op": "ADD", - "path": "67" - }, - "4447": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3473, - 3553 - ], - "op": "MSTORE", - "path": "67" - }, - "4448": { - "op": "POP" - }, - "4449": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3568, - 3594 - ], - "op": "PUSH2", - "path": "67", - "statement": 87, - "value": "0xF7F" - }, - "4452": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3568, - 3594 - ], - "op": "SWAP1", - "path": "67" - }, - "4453": { - "op": "POP" - }, - "4454": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3568, - 3594 - ], - "op": "JUMP", - "path": "67" - }, - "4455": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 2679, - 4302 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4456": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3647, - 3691 - ], - "op": "PUSH2", - "path": "67", - "statement": 88, - "value": "0x1171" - }, - "4459": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3647, - 3652 - ], - "op": "DUP2", - "path": "67" - }, - "4460": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3671, - 3690 - ], - "op": "DUP6", - "path": "67" - }, - "4461": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3647, - 3670 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1DFA" - }, - "4464": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 3647, - 3691 - ], - "op": "JUMP", - "path": "67" - }, - "4465": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3647, - 3691 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4466": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4128 - ], - "op": "PUSH1", - "path": "67", - "statement": 89, - "value": "0x80" - }, - "4468": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4128 - ], - "op": "DUP8", - "path": "67" - }, - "4469": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4128 - ], - "op": "ADD", - "path": "67" - }, - "4470": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4128 - ], - "op": "MLOAD", - "path": "67" - }, - "4471": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3625, - 3691 - ], - "op": "SWAP1", - "path": "67" - }, - "4472": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3625, - 3691 - ], - "op": "SWAP3", - "path": "67" - }, - "4473": { - "op": "POP" - }, - "4474": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4170 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1183" - }, - "4477": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4170 - ], - "op": "SWAP1", - "path": "67" - }, - "4478": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 3625, - 3691 - ], - "op": "DUP4", - "path": "67" - }, - "4479": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4149 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4482": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "i", - "offset": [ - 4065, - 4170 - ], - "op": "JUMP", - "path": "67" - }, - "4483": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4065, - 4170 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4484": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4016, - 4062 - ], - "op": "PUSH1", - "path": "67", - "value": "0x80" - }, - "4486": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4016, - 4062 - ], - "op": "DUP8", - "path": "67" - }, - "4487": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4016, - 4062 - ], - "op": "ADD", - "path": "67" - }, - "4488": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 4016, - 4170 - ], - "op": "MSTORE", - "path": "67" - }, - "4489": { - "op": "POP" - }, - "4490": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "SWAP5", - "path": "67" - }, - "4491": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "SWAP4", - "path": "67" - }, - "4492": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "POP", - "path": "67" - }, - "4493": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "POP", - "path": "67" - }, - "4494": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "POP", - "path": "67" - }, - "4495": { - "fn": "BalanceHandler.depositAssetToken", - "offset": [ - 1860, - 4308 - ], - "op": "POP", - "path": "67" - }, - "4496": { - "fn": "BalanceHandler.depositAssetToken", - "jump": "o", - "offset": [ - 1860, - 4308 - ], - "op": "JUMP", - "path": "67" - }, - "4497": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4498": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6698, - 6727 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4500": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6739, - 6754 - ], - "op": "DUP1", - "path": "67" - }, - "4501": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6801, - 6802 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4503": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6768, - 6780 - ], - "op": "DUP7", - "path": "67" - }, - "4504": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6768, - 6798 - ], - "op": "PUSH1", - "path": "67", - "value": "0xA0" - }, - "4506": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6768, - 6798 - ], - "op": "ADD", - "path": "67" - }, - "4507": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6768, - 6798 - ], - "op": "MLOAD", - "path": "67" - }, - "4508": { - "branch": 458, - "fn": "BalanceHandler.finalize", - "offset": [ - 6768, - 6802 - ], - "op": "SLT", - "path": "67" - }, - "4509": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6764, - 7053 - ], - "op": "ISZERO", - "path": "67" - }, - "4510": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6764, - 7053 - ], - "op": "PUSH2", - "path": "67", - "value": "0x11EA" - }, - "4513": { - "branch": 458, - "fn": "BalanceHandler.finalize", - "offset": [ - 6764, - 7053 - ], - "op": "JUMPI", - "path": "67" - }, - "4514": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6997, - 6998 - ], - "op": "PUSH1", - "path": "67", - "statement": 90, - "value": "0x0" - }, - "4516": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6993 - ], - "op": "PUSH2", - "path": "67", - "value": "0x11CC" - }, - "4519": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6962, - 6974 - ], - "op": "DUP8", - "path": "67" - }, - "4520": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6962, - 6992 - ], - "op": "PUSH1", - "path": "67", - "value": "0xA0" - }, - "4522": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6962, - 6992 - ], - "op": "ADD", - "path": "67" - }, - "4523": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6962, - 6992 - ], - "op": "MLOAD", - "path": "67" - }, - "4524": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6936 - ], - "op": "PUSH2", - "path": "67", - "value": "0x11C6" - }, - "4527": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6901, - 6913 - ], - "op": "DUP10", - "path": "67" - }, - "4528": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6901, - 6935 - ], - "op": "PUSH1", - "path": "67", - "value": "0xC0" - }, - "4530": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6901, - 6935 - ], - "op": "ADD", - "path": "67" - }, - "4531": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6901, - 6935 - ], - "op": "MLOAD", - "path": "67" - }, - "4532": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6855 - ], - "op": "DUP11", - "path": "67" - }, - "4533": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6875 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4535": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6875 - ], - "op": "ADD", - "path": "67" - }, - "4536": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6875 - ], - "op": "MLOAD", - "path": "67" - }, - "4537": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6900 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4540": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6900 - ], - "op": "SWAP1", - "path": "67" - }, - "4541": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6936 - ], - "op": "SWAP2", - "path": "67" - }, - "4542": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6936 - ], - "op": "SWAP1", - "path": "67" - }, - "4543": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6936 - ], - "op": "PUSH4", - "path": "67", - "value": "0xFFFFFFFF" - }, - "4548": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6936 - ], - "op": "AND", - "path": "67" - }, - "4549": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 6843, - 6936 - ], - "op": "JUMP", - "path": "67" - }, - "4550": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6936 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4551": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6961 - ], - "op": "SWAP1", - "path": "67" - }, - "4552": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6961 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4555": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 6843, - 6993 - ], - "op": "JUMP", - "path": "67" - }, - "4556": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6993 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4557": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6998 - ], - "op": "SLT", - "path": "67" - }, - "4558": { - "branch": 459, - "fn": "BalanceHandler.finalize", - "offset": [ - 6843, - 6998 - ], - "op": "ISZERO", - "path": "67" - }, - "4559": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "PUSH2", - "path": "67", - "value": "0x11EA" - }, - "4562": { - "branch": 459, - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "JUMPI", - "path": "67" - }, - "4563": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4565": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "MLOAD", - "path": "67" - }, - "4566": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "4570": { - "op": "PUSH1", - "value": "0xE5" - }, - "4572": { - "op": "SHL" - }, - "4573": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "DUP2", - "path": "67" - }, - "4574": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "MSTORE", - "path": "67" - }, - "4575": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "PUSH1", - "path": "67", - "value": "0x4" - }, - "4577": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "ADD", - "path": "67" - }, - "4578": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "PUSH2", - "path": "67", - "value": "0x17A" - }, - "4581": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "SWAP1", - "path": "67" - }, - "4582": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "PUSH2", - "path": "67", - "value": "0x4A46" - }, - "4585": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 6818, - 7042 - ], - "op": "JUMP", - "path": "67" - }, - "4586": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6818, - 7042 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4587": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7116, - 7117 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4589": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7067, - 7079 - ], - "op": "DUP7", - "path": "67" - }, - "4590": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7067, - 7113 - ], - "op": "PUSH1", - "path": "67", - "value": "0x80" - }, - "4592": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7067, - 7113 - ], - "op": "ADD", - "path": "67" - }, - "4593": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7067, - 7113 - ], - "op": "MLOAD", - "path": "67" - }, - "4594": { - "branch": 460, - "fn": "BalanceHandler.finalize", - "offset": [ - 7067, - 7117 - ], - "op": "SLT", - "path": "67" - }, - "4595": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7063, - 7372 - ], - "op": "ISZERO", - "path": "67" - }, - "4596": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7063, - 7372 - ], - "op": "PUSH2", - "path": "67", - "value": "0x123A" - }, - "4599": { - "branch": 460, - "fn": "BalanceHandler.finalize", - "offset": [ - 7063, - 7372 - ], - "op": "JUMPI", - "path": "67" - }, - "4600": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7318, - 7319 - ], - "op": "PUSH1", - "path": "67", - "statement": 91, - "value": "0x0" - }, - "4602": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7314 - ], - "op": "PUSH2", - "path": "67", - "value": "0x121C" - }, - "4605": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7267, - 7279 - ], - "op": "DUP8", - "path": "67" - }, - "4606": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7267, - 7313 - ], - "op": "PUSH1", - "path": "67", - "value": "0x80" - }, - "4608": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7267, - 7313 - ], - "op": "ADD", - "path": "67" - }, - "4609": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7267, - 7313 - ], - "op": "MLOAD", - "path": "67" - }, - "4610": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7241 - ], - "op": "PUSH2", - "path": "67", - "value": "0x11C6" - }, - "4613": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7214, - 7226 - ], - "op": "DUP10", - "path": "67" - }, - "4614": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7214, - 7240 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "4616": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7214, - 7240 - ], - "op": "ADD", - "path": "67" - }, - "4617": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7214, - 7240 - ], - "op": "MLOAD", - "path": "67" - }, - "4618": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7170 - ], - "op": "DUP11", - "path": "67" - }, - "4619": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7188 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "4621": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7188 - ], - "op": "ADD", - "path": "67" - }, - "4622": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7188 - ], - "op": "MLOAD", - "path": "67" - }, - "4623": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7213 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4626": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7213 - ], - "op": "SWAP1", - "path": "67" - }, - "4627": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7241 - ], - "op": "SWAP2", - "path": "67" - }, - "4628": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7241 - ], - "op": "SWAP1", - "path": "67" - }, - "4629": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7241 - ], - "op": "PUSH4", - "path": "67", - "value": "0xFFFFFFFF" - }, - "4634": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7241 - ], - "op": "AND", - "path": "67" - }, - "4635": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 7158, - 7241 - ], - "op": "JUMP", - "path": "67" - }, - "4636": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7314 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4637": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7319 - ], - "op": "SLT", - "path": "67" - }, - "4638": { - "branch": 461, - "fn": "BalanceHandler.finalize", - "offset": [ - 7158, - 7319 - ], - "op": "ISZERO", - "path": "67" - }, - "4639": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "PUSH2", - "path": "67", - "value": "0x123A" - }, - "4642": { - "branch": 461, - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "JUMPI", - "path": "67" - }, - "4643": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4645": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "MLOAD", - "path": "67" - }, - "4646": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "4650": { - "op": "PUSH1", - "value": "0xE5" - }, - "4652": { - "op": "SHL" - }, - "4653": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "DUP2", - "path": "67" - }, - "4654": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "MSTORE", - "path": "67" - }, - "4655": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "PUSH1", - "path": "67", - "value": "0x4" - }, - "4657": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "ADD", - "path": "67" - }, - "4658": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "PUSH2", - "path": "67", - "value": "0x17A" - }, - "4661": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "SWAP1", - "path": "67" - }, - "4662": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "PUSH2", - "path": "67", - "value": "0x49ED" - }, - "4665": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 7133, - 7361 - ], - "op": "JUMP", - "path": "67" - }, - "4666": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7133, - 7361 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4667": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7693, - 7754 - ], - "op": "PUSH2", - "path": "67", - "statement": 92, - "value": "0x1245" - }, - "4670": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7712, - 7724 - ], - "op": "DUP7", - "path": "67" - }, - "4671": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7726, - 7733 - ], - "op": "DUP7", - "path": "67" - }, - "4672": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7735, - 7753 - ], - "op": "DUP6", - "path": "67" - }, - "4673": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7693, - 7711 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1EB1" - }, - "4676": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 7693, - 7754 - ], - "op": "JUMP", - "path": "67" - }, - "4677": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7693, - 7754 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4678": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7634, - 7680 - ], - "op": "PUSH1", - "path": "67", - "value": "0x80" - }, - "4680": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7634, - 7680 - ], - "op": "DUP9", - "path": "67" - }, - "4681": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7634, - 7680 - ], - "op": "ADD", - "path": "67" - }, - "4682": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7584, - 7754 - ], - "op": "DUP2", - "path": "67" - }, - "4683": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7584, - 7754 - ], - "op": "SWAP1", - "path": "67" - }, - "4684": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7584, - 7754 - ], - "op": "MSTORE", - "path": "67" - }, - "4685": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7868 - ], - "op": "PUSH1", - "path": "67", - "value": "0x60" - }, - "4687": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7868 - ], - "op": "DUP9", - "path": "67" - }, - "4688": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7868 - ], - "op": "ADD", - "path": "67" - }, - "4689": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7868 - ], - "op": "MLOAD", - "path": "67" - }, - "4690": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7584, - 7754 - ], - "op": "SWAP2", - "path": "67" - }, - "4691": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7584, - 7754 - ], - "op": "SWAP4", - "path": "67" - }, - "4692": { - "op": "POP" - }, - "4693": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7817, - 7839 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4695": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7817, - 7839 - ], - "op": "SWAP2", - "path": "67" - }, - "4696": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7920 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1260" - }, - "4699": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7920 - ], - "op": "SWAP2", - "path": "67" - }, - "4700": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7872 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4703": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 7842, - 7920 - ], - "op": "JUMP", - "path": "67" - }, - "4704": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7842, - 7920 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4705": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7817, - 7920 - ], - "op": "SWAP1", - "path": "67" - }, - "4706": { - "op": "POP" - }, - "4707": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7935, - 7955 - ], - "op": "DUP1", - "path": "67" - }, - "4708": { - "branch": 462, - "fn": "BalanceHandler.finalize", - "offset": [ - 7935, - 7955 - ], - "op": "ISZERO", - "path": "67" - }, - "4709": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7931, - 8255 - ], - "op": "PUSH2", - "path": "67", - "value": "0x12CD" - }, - "4712": { - "branch": 462, - "fn": "BalanceHandler.finalize", - "offset": [ - 7931, - 8255 - ], - "op": "JUMPI", - "path": "67" - }, - "4713": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8034 - ], - "op": "PUSH1", - "path": "67", - "statement": 93, - "value": "0x20" - }, - "4715": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8034 - ], - "op": "DUP8", - "path": "67" - }, - "4716": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8034 - ], - "op": "ADD", - "path": "67" - }, - "4717": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8034 - ], - "op": "MLOAD", - "path": "67" - }, - "4718": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8055 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1277" - }, - "4721": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8055 - ], - "op": "SWAP1", - "path": "67" - }, - "4722": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8039, - 8054 - ], - "op": "DUP3", - "path": "67" - }, - "4723": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8038 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4726": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 8004, - 8055 - ], - "op": "JUMP", - "path": "67" - }, - "4727": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8004, - 8055 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4728": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7971, - 8001 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "4730": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7971, - 8001 - ], - "op": "DUP9", - "path": "67" - }, - "4731": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7971, - 8001 - ], - "op": "ADD", - "path": "67" - }, - "4732": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7971, - 8055 - ], - "op": "MSTORE", - "path": "67" - }, - "4733": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8173, - 8196 - ], - "op": "DUP7", - "path": "67", - "statement": 94 - }, - "4734": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8173, - 8196 - ], - "op": "MLOAD", - "path": "67" - }, - "4735": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4737": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "MLOAD", - "path": "67" - }, - "4738": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8082, - 8086 - ], - "op": "PUSH1", - "path": "67", - "statement": 95, - "value": "0x1" - }, - "4740": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8082, - 8086 - ], - "op": "SWAP4", - "path": "67" - }, - "4741": { - "op": "POP" - }, - "4742": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4745": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP1", - "path": "67" - }, - "4746": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP2", - "path": "67" - }, - "4747": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "AND", - "path": "67" - }, - "4748": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP1", - "path": "67" - }, - "4749": { - "op": "PUSH1", - "value": "0x1" - }, - "4751": { - "op": "PUSH1", - "value": "0x1" - }, - "4753": { - "op": "PUSH1", - "value": "0xA0" - }, - "4755": { - "op": "SHL" - }, - "4756": { - "op": "SUB" - }, - "4757": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "DUP9", - "path": "67" - }, - "4758": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "AND", - "path": "67" - }, - "4759": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP1", - "path": "67" - }, - "4760": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "PUSH32", - "path": "67", - "value": "0x5441E4A5FAC93A951D782E6F1CDB82E95C8FC58561A013953D17E395C5E69B4B" - }, - "4793": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP1", - "path": "67" - }, - "4794": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "PUSH2", - "path": "67", - "value": "0x12C4" - }, - "4797": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP1", - "path": "67" - }, - "4798": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8215, - 8230 - ], - "op": "DUP6", - "path": "67" - }, - "4799": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8215, - 8230 - ], - "op": "SWAP1", - "path": "67" - }, - "4800": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "PUSH2", - "path": "67", - "value": "0x48AB" - }, - "4803": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 8106, - 8244 - ], - "op": "JUMP", - "path": "67" - }, - "4804": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4805": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4807": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "MLOAD", - "path": "67" - }, - "4808": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "DUP1", - "path": "67" - }, - "4809": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP2", - "path": "67" - }, - "4810": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SUB", - "path": "67" - }, - "4811": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "SWAP1", - "path": "67" - }, - "4812": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8106, - 8244 - ], - "op": "LOG3", - "path": "67" - }, - "4813": { - "fn": "BalanceHandler.finalize", - "offset": [ - 7931, - 8255 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4814": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8299 - ], - "op": "PUSH1", - "path": "67", - "value": "0xA0" - }, - "4816": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8299 - ], - "op": "DUP8", - "path": "67" - }, - "4817": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8299 - ], - "op": "ADD", - "path": "67" - }, - "4818": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8299 - ], - "op": "MLOAD", - "path": "67" - }, - "4819": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8304 - ], - "op": "ISZERO", - "path": "67" - }, - "4820": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8304 - ], - "op": "ISZERO", - "path": "67" - }, - "4821": { - "branch": 463, - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8304 - ], - "op": "DUP1", - "path": "67" - }, - "4822": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8347 - ], - "op": "PUSH2", - "path": "67", - "value": "0x12E2" - }, - "4825": { - "branch": 463, - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8347 - ], - "op": "JUMPI", - "path": "67" - }, - "4826": { - "op": "POP" - }, - "4827": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8308, - 8342 - ], - "op": "PUSH1", - "path": "67", - "value": "0xC0" - }, - "4829": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8308, - 8342 - ], - "op": "DUP8", - "path": "67" - }, - "4830": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8308, - 8342 - ], - "op": "ADD", - "path": "67" - }, - "4831": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8308, - 8342 - ], - "op": "MLOAD", - "path": "67" - }, - "4832": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8308, - 8347 - ], - "op": "ISZERO", - "path": "67" - }, - "4833": { - "branch": 464, - "fn": "BalanceHandler.finalize", - "offset": [ - 8308, - 8347 - ], - "op": "ISZERO", - "path": "67" - }, - "4834": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8269, - 8347 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4835": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8265, - 9185 - ], - "op": "ISZERO", - "path": "67" - }, - "4836": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8265, - 9185 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1388" - }, - "4839": { - "branch": 464, - "fn": "BalanceHandler.finalize", - "offset": [ - 8265, - 9185 - ], - "op": "JUMPI", - "path": "67" - }, - "4840": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8447, - 8472 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4842": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8617 - ], - "op": "PUSH2", - "path": "67", - "value": "0x130C" - }, - "4845": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8582, - 8594 - ], - "op": "DUP9", - "path": "67" - }, - "4846": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8582, - 8616 - ], - "op": "PUSH1", - "path": "67", - "value": "0xC0" - }, - "4848": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8582, - 8616 - ], - "op": "ADD", - "path": "67" - }, - "4849": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8582, - 8616 - ], - "op": "MLOAD", - "path": "67" - }, - "4850": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8560 - ], - "op": "PUSH2", - "path": "67", - "value": "0x11C6" - }, - "4853": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8529, - 8541 - ], - "op": "DUP11", - "path": "67" - }, - "4854": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8529, - 8559 - ], - "op": "PUSH1", - "path": "67", - "value": "0xA0" - }, - "4856": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8529, - 8559 - ], - "op": "ADD", - "path": "67" - }, - "4857": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8529, - 8559 - ], - "op": "MLOAD", - "path": "67" - }, - "4858": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8487 - ], - "op": "DUP12", - "path": "67" - }, - "4859": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8507 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4861": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8507 - ], - "op": "ADD", - "path": "67" - }, - "4862": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8507 - ], - "op": "MLOAD", - "path": "67" - }, - "4863": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8528 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEC5" - }, - "4866": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8528 - ], - "op": "SWAP1", - "path": "67" - }, - "4867": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8560 - ], - "op": "SWAP2", - "path": "67" - }, - "4868": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8560 - ], - "op": "SWAP1", - "path": "67" - }, - "4869": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8560 - ], - "op": "PUSH4", - "path": "67", - "value": "0xFFFFFFFF" - }, - "4874": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8560 - ], - "op": "AND", - "path": "67" - }, - "4875": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 8475, - 8560 - ], - "op": "JUMP", - "path": "67" - }, - "4876": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8475, - 8617 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4877": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8447, - 8617 - ], - "op": "SWAP1", - "path": "67" - }, - "4878": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8447, - 8617 - ], - "op": "POP", - "path": "67" - }, - "4879": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8725, - 8803 - ], - "op": "PUSH2", - "path": "67", - "statement": 96, - "value": "0x1321" - }, - "4882": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8752, - 8764 - ], - "op": "DUP9", - "path": "67" - }, - "4883": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8766, - 8773 - ], - "op": "DUP9", - "path": "67" - }, - "4884": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8775, - 8802 - ], - "op": "PUSH2", - "path": "67", - "value": "0x131C" - }, - "4887": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8775, - 8793 - ], - "op": "DUP5", - "path": "67" - }, - "4888": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8775, - 8800 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1CF6" - }, - "4891": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 8775, - 8802 - ], - "op": "JUMP", - "path": "67" - }, - "4892": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8775, - 8802 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4893": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8725, - 8751 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F67" - }, - "4896": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 8725, - 8803 - ], - "op": "JUMP", - "path": "67" - }, - "4897": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8725, - 8803 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4898": { - "op": "POP" - }, - "4899": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8818, - 8850 - ], - "op": "PUSH1", - "path": "67", - "statement": 97, - "value": "0x40" - }, - "4901": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8818, - 8850 - ], - "op": "DUP9", - "path": "67" - }, - "4902": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8818, - 8850 - ], - "op": "ADD", - "path": "67" - }, - "4903": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8818, - 8871 - ], - "op": "DUP2", - "path": "67" - }, - "4904": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8818, - 8871 - ], - "op": "SWAP1", - "path": "67" - }, - "4905": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8818, - 8871 - ], - "op": "MSTORE", - "path": "67" - }, - "4906": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8890, - 8924 - ], - "op": "PUSH1", - "path": "67", - "value": "0xC0" - }, - "4908": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8890, - 8924 - ], - "op": "DUP9", - "path": "67" - }, - "4909": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8890, - 8924 - ], - "op": "ADD", - "path": "67" - }, - "4910": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8890, - 8924 - ], - "op": "MLOAD", - "path": "67" - }, - "4911": { - "branch": 465, - "fn": "BalanceHandler.finalize", - "offset": [ - 8890, - 8929 - ], - "op": "ISZERO", - "path": "67" - }, - "4912": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8886, - 9143 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1382" - }, - "4915": { - "branch": 465, - "fn": "BalanceHandler.finalize", - "offset": [ - 8886, - 9143 - ], - "op": "JUMPI", - "path": "67" - }, - "4916": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9030, - 9042 - ], - "op": "DUP8", - "path": "67", - "statement": 98 - }, - "4917": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9030, - 9053 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "4919": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9030, - 9053 - ], - "op": "ADD", - "path": "67" - }, - "4920": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9030, - 9053 - ], - "op": "MLOAD", - "path": "67" - }, - "4921": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "4924": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "AND", - "path": "67" - }, - "4925": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8994, - 9001 - ], - "op": "DUP8", - "path": "67" - }, - "4926": { - "op": "PUSH1", - "value": "0x1" - }, - "4928": { - "op": "PUSH1", - "value": "0x1" - }, - "4930": { - "op": "PUSH1", - "value": "0xA0" - }, - "4932": { - "op": "SHL" - }, - "4933": { - "op": "SUB" - }, - "4934": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "AND", - "path": "67" - }, - "4935": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "PUSH32", - "path": "67", - "value": "0x412BC13D202A2EA5119E55FEC9C5E420DDDB18FAF186373AD9795AD4F4545AA9" - }, - "4968": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9076, - 9088 - ], - "op": "DUP11", - "path": "67" - }, - "4969": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9076, - 9110 - ], - "op": "PUSH1", - "path": "67", - "value": "0xC0" - }, - "4971": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9076, - 9110 - ], - "op": "ADD", - "path": "67" - }, - "4972": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9076, - 9110 - ], - "op": "MLOAD", - "path": "67" - }, - "4973": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4975": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "MLOAD", - "path": "67" - }, - "4976": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1379" - }, - "4979": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "SWAP2", - "path": "67" - }, - "4980": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "SWAP1", - "path": "67" - }, - "4981": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "PUSH2", - "path": "67", - "value": "0x48AB" - }, - "4984": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 8954, - 9128 - ], - "op": "JUMP", - "path": "67" - }, - "4985": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4986": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "4988": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "MLOAD", - "path": "67" - }, - "4989": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "DUP1", - "path": "67" - }, - "4990": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "SWAP2", - "path": "67" - }, - "4991": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "SUB", - "path": "67" - }, - "4992": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "SWAP1", - "path": "67" - }, - "4993": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8954, - 9128 - ], - "op": "LOG3", - "path": "67" - }, - "4994": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8886, - 9143 - ], - "op": "JUMPDEST", - "path": "67" - }, - "4995": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9170, - 9174 - ], - "op": "PUSH1", - "path": "67", - "statement": 99, - "value": "0x1" - }, - "4997": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9157, - 9174 - ], - "op": "SWAP3", - "path": "67" - }, - "4998": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9157, - 9174 - ], - "op": "POP", - "path": "67" - }, - "4999": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8265, - 9185 - ], - "op": "POP", - "path": "67" - }, - "5000": { - "fn": "BalanceHandler.finalize", - "offset": [ - 8265, - 9185 - ], - "op": "JUMPDEST", - "path": "67" - }, - "5001": { - "branch": 466, - "fn": "BalanceHandler.finalize", - "offset": [ - 9199, - 9209 - ], - "op": "DUP2", - "path": "67" - }, - "5002": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9195, - 9527 - ], - "op": "ISZERO", - "path": "67" - }, - "5003": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9195, - 9527 - ], - "op": "PUSH2", - "path": "67", - "value": "0x13B5" - }, - "5006": { - "branch": 466, - "fn": "BalanceHandler.finalize", - "offset": [ - 9195, - 9527 - ], - "op": "JUMPI", - "path": "67" - }, - "5007": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9225, - 9516 - ], - "op": "PUSH2", - "path": "67", - "statement": 100, - "value": "0x13B5" - }, - "5010": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9261, - 9268 - ], - "op": "DUP7", - "path": "67" - }, - "5011": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9286, - 9298 - ], - "op": "DUP9", - "path": "67" - }, - "5012": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9286, - 9309 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "5014": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9286, - 9309 - ], - "op": "ADD", - "path": "67" - }, - "5015": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9286, - 9309 - ], - "op": "MLOAD", - "path": "67" - }, - "5016": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9225, - 9516 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "5019": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9225, - 9516 - ], - "op": "AND", - "path": "67" - }, - "5020": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9327, - 9339 - ], - "op": "DUP10", - "path": "67" - }, - "5021": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9327, - 9357 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "5023": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9327, - 9357 - ], - "op": "ADD", - "path": "67" - }, - "5024": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9327, - 9357 - ], - "op": "MLOAD", - "path": "67" - }, - "5025": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9375, - 9387 - ], - "op": "DUP11", - "path": "67" - }, - "5026": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9375, - 9407 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "5028": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9375, - 9407 - ], - "op": "ADD", - "path": "67" - }, - "5029": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9375, - 9407 - ], - "op": "MLOAD", - "path": "67" - }, - "5030": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9425, - 9437 - ], - "op": "DUP12", - "path": "67" - }, - "5031": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9425, - 9451 - ], - "op": "PUSH1", - "path": "67", - "value": "0xE0" - }, - "5033": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9425, - 9451 - ], - "op": "ADD", - "path": "67" - }, - "5034": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9425, - 9451 - ], - "op": "MLOAD", - "path": "67" - }, - "5035": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9469, - 9481 - ], - "op": "DUP13", - "path": "67" - }, - "5036": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9469, - 9502 - ], - "op": "PUSH2", - "path": "67", - "value": "0x100" - }, - "5039": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9469, - 9502 - ], - "op": "ADD", - "path": "67" - }, - "5040": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9469, - 9502 - ], - "op": "MLOAD", - "path": "67" - }, - "5041": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9225, - 9243 - ], - "op": "PUSH2", - "path": "67", - "value": "0x204E" - }, - "5044": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 9225, - 9516 - ], - "op": "JUMP", - "path": "67" - }, - "5045": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9225, - 9516 - ], - "op": "JUMPDEST", - "path": "67" - }, - "5046": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9583, - 9606 - ], - "op": "DUP7", - "path": "67", - "statement": 101 - }, - "5047": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9583, - 9606 - ], - "op": "MLOAD", - "path": "67" - }, - "5048": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9723 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "5050": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9723 - ], - "op": "DUP9", - "path": "67" - }, - "5051": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9723 - ], - "op": "ADD", - "path": "67" - }, - "5052": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9723 - ], - "op": "MLOAD", - "path": "67" - }, - "5053": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "PUSH2", - "path": "67", - "value": "0x13E2" - }, - "5056": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "SWAP2", - "path": "67" - }, - "5057": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "5060": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "AND", - "path": "67" - }, - "5061": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "SWAP1", - "path": "67" - }, - "5062": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9728 - ], - "op": "ISZERO", - "path": "67" - }, - "5063": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9728 - ], - "op": "ISZERO", - "path": "67" - }, - "5064": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9728 - ], - "op": "DUP1", - "path": "67" - }, - "5065": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9769 - ], - "op": "PUSH2", - "path": "67", - "value": "0x13D5" - }, - "5068": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9769 - ], - "op": "JUMPI", - "path": "67" - }, - "5069": { - "op": "POP" - }, - "5070": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9732, - 9764 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "5072": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9732, - 9764 - ], - "op": "DUP10", - "path": "67" - }, - "5073": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9732, - 9764 - ], - "op": "ADD", - "path": "67" - }, - "5074": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9732, - 9764 - ], - "op": "MLOAD", - "path": "67" - }, - "5075": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9732, - 9769 - ], - "op": "ISZERO", - "path": "67" - }, - "5076": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9732, - 9769 - ], - "op": "ISZERO", - "path": "67" - }, - "5077": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9693, - 9769 - ], - "op": "JUMPDEST", - "path": "67" - }, - "5078": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9551 - ], - "op": "DUP8", - "path": "67" - }, - "5079": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9551 - ], - "op": "SWAP2", - "path": "67" - }, - "5080": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "SWAP1", - "path": "67" - }, - "5081": { - "op": "PUSH1", - "value": "0x1" - }, - "5083": { - "op": "PUSH1", - "value": "0xFE" - }, - "5085": { - "op": "SHL" - }, - "5086": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9569 - ], - "op": "PUSH2", - "path": "67", - "value": "0x2187" - }, - "5089": { - "fn": "BalanceHandler.finalize", - "jump": "i", - "offset": [ - 9537, - 9821 - ], - "op": "JUMP", - "path": "67" - }, - "5090": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9537, - 9821 - ], - "op": "JUMPDEST", - "path": "67" - }, - "5091": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9869, - 9870 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "5093": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9836, - 9848 - ], - "op": "DUP8", - "path": "67" - }, - "5094": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9836, - 9866 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "5096": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9836, - 9866 - ], - "op": "ADD", - "path": "67" - }, - "5097": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9836, - 9866 - ], - "op": "MLOAD", - "path": "67" - }, - "5098": { - "branch": 467, - "fn": "BalanceHandler.finalize", - "offset": [ - 9836, - 9870 - ], - "op": "SLT", - "path": "67" - }, - "5099": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9832, - 10109 - ], - "op": "ISZERO", - "path": "67" - }, - "5100": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9832, - 10109 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1408" - }, - "5103": { - "branch": 467, - "fn": "BalanceHandler.finalize", - "offset": [ - 9832, - 10109 - ], - "op": "JUMPI", - "path": "67" - }, - "5104": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10050, - 10072 - ], - "op": "PUSH1", - "path": "67", - "statement": 102, - "value": "0x20" - }, - "5106": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10050, - 10072 - ], - "op": "DUP6", - "path": "67" - }, - "5107": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10050, - 10072 - ], - "op": "ADD", - "path": "67" - }, - "5108": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10050, - 10072 - ], - "op": "DUP1", - "path": "67" - }, - "5109": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10050, - 10072 - ], - "op": "MLOAD", - "path": "67" - }, - "5110": { - "op": "PUSH1", - "value": "0x1" - }, - "5112": { - "op": "PUSH1", - "value": "0xF9" - }, - "5114": { - "op": "SHL" - }, - "5115": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10050, - 10098 - ], - "op": "OR", - "path": "67" - }, - "5116": { - "op": "PUSH1", - "value": "0x1" - }, - "5118": { - "op": "PUSH1", - "value": "0x1" - }, - "5120": { - "op": "PUSH1", - "value": "0xF8" - }, - "5122": { - "op": "SHL" - }, - "5123": { - "op": "SUB" - }, - "5124": { - "op": "NOT" - }, - "5125": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10025, - 10098 - ], - "op": "AND", - "path": "67" - }, - "5126": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10025, - 10098 - ], - "op": "SWAP1", - "path": "67" - }, - "5127": { - "fn": "BalanceHandler.finalize", - "offset": [ - 10025, - 10098 - ], - "op": "MSTORE", - "path": "67" - }, - "5128": { - "fn": "BalanceHandler.finalize", - "offset": [ - 9832, - 10109 - ], - "op": "JUMPDEST", - "path": "67" - }, - "5129": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "POP", - "path": "67" - }, - "5130": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "POP", - "path": "67" - }, - "5131": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "SWAP5", - "path": "67" - }, - "5132": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "SWAP4", - "path": "67" - }, - "5133": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "POP", - "path": "67" - }, - "5134": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "POP", - "path": "67" - }, - "5135": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "POP", - "path": "67" - }, - "5136": { - "fn": "BalanceHandler.finalize", - "offset": [ - 6510, - 10115 - ], - "op": "POP", - "path": "67" - }, - "5137": { - "fn": "BalanceHandler.finalize", - "jump": "o", - "offset": [ - 6510, - 10115 - ], - "op": "JUMP", - "path": "67" - }, - "5138": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1117, - 1269 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5139": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1257 - ], - "op": "PUSH1", - "path": "66", - "statement": 103, - "value": "0x60" - }, - "5141": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1257 - ], - "op": "ADD", - "path": "66" - }, - "5142": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1257 - ], - "op": "MLOAD", - "path": "66" - }, - "5143": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "5146": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "AND", - "path": "66" - }, - "5147": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "ISZERO", - "path": "66" - }, - "5148": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "ISZERO", - "path": "66" - }, - "5149": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "SWAP1", - "path": "66" - }, - "5150": { - "fn": "AccountContextHandler.isBitmapEnabled", - "jump": "o", - "offset": [ - 1117, - 1269 - ], - "op": "JUMP", - "path": "66" - }, - "5151": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5152": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5154": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "DUP1", - "path": "66" - }, - "5155": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "DUP1", - "path": "66" - }, - "5156": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "DUP1", - "path": "66" - }, - "5157": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10379 - ], - "op": "PUSH2", - "path": "66", - "value": "0x142E" - }, - "5160": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10358 - ], - "op": "DUP7", - "path": "66" - }, - "5161": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10371, - 10378 - ], - "op": "DUP9", - "path": "66" - }, - "5162": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10370 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2386" - }, - "5165": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 10344, - 10379 - ], - "op": "JUMP", - "path": "66" - }, - "5166": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10379 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5167": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "PUSH5", - "path": "66", - "statement": 104, - "value": "0xFFFFFFFFFF" - }, - "5173": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "DUP2", - "path": "66" - }, - "5174": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "AND", - "path": "66" - }, - "5175": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "DUP13", - "path": "66" - }, - "5176": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "MSTORE", - "path": "66" - }, - "5177": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP3", - "path": "66" - }, - "5178": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP7", - "path": "66" - }, - "5179": { - "op": "POP" - }, - "5180": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP1", - "path": "66" - }, - "5181": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP5", - "path": "66" - }, - "5182": { - "op": "POP" - }, - "5183": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP3", - "path": "66" - }, - "5184": { - "op": "POP" - }, - "5185": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP1", - "path": "66" - }, - "5186": { - "op": "POP" - }, - "5187": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10485 - ], - "op": "PUSH2", - "path": "66", - "statement": 105, - "value": "0x144B" - }, - "5190": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10403 - ], - "op": "DUP9", - "path": "66" - }, - "5191": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10469 - ], - "op": "PUSH2", - "path": "66", - "value": "0x18AE" - }, - "5194": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 10453, - 10485 - ], - "op": "JUMP", - "path": "66" - }, - "5195": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10485 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5196": { - "branch": 411, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10494 - ], - "op": "ISZERO", - "path": "66" - }, - "5197": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1455" - }, - "5200": { - "branch": 411, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "JUMPI", - "path": "66" - }, - "5201": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5203": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "DUP1", - "path": "66" - }, - "5204": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "REVERT", - "path": "66" - }, - "5205": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5206": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "PUSH1", - "path": "66", - "statement": 106, - "value": "0xFF" - }, - "5208": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "DUP3", - "path": "66" - }, - "5209": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "AND", - "path": "66" - }, - "5210": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10572 - ], - "op": "PUSH1", - "path": "66", - "value": "0x40" - }, - "5212": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10572 - ], - "op": "DUP10", - "path": "66" - }, - "5213": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10572 - ], - "op": "ADD", - "path": "66" - }, - "5214": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "MSTORE", - "path": "66" - }, - "5215": { - "branch": 412, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10772, - 10785 - ], - "op": "DUP5", - "path": "66" - }, - "5216": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10767, - 10908 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1474" - }, - "5219": { - "branch": 412, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10767, - 10908 - ], - "op": "JUMPI", - "path": "66" - }, - "5220": { - "offset": [ - 2023, - 2024 - ], - "op": "PUSH1", - "path": "60", - "value": "0x7" - }, - "5222": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "PUSH1", - "path": "66", - "statement": 107, - "value": "0xFF" - }, - "5224": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "DUP4", - "path": "66" - }, - "5225": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "AND", - "path": "66" - }, - "5226": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "GT", - "path": "66" - }, - "5227": { - "branch": 413, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "ISZERO", - "path": "66" - }, - "5228": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1474" - }, - "5231": { - "branch": 413, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "JUMPI", - "path": "66" - }, - "5232": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5234": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "DUP1", - "path": "66" - }, - "5235": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "REVERT", - "path": "66" - }, - "5236": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5237": { - "branch": 414, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11059, - 11066 - ], - "op": "DUP4", - "path": "66" - }, - "5238": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "ISZERO", - "path": "66" - }, - "5239": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1497" - }, - "5242": { - "branch": 414, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMPI", - "path": "66" - }, - "5243": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "PUSH1", - "path": "66", - "statement": 108, - "value": "0x20" - }, - "5245": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "DUP9", - "path": "66" - }, - "5246": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "ADD", - "path": "66" - }, - "5247": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "DUP1", - "path": "66" - }, - "5248": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "MLOAD", - "path": "66" - }, - "5249": { - "op": "PUSH1", - "value": "0x1" - }, - "5251": { - "op": "PUSH1", - "value": "0xF8" - }, - "5253": { - "op": "SHL" - }, - "5254": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11156 - ], - "op": "OR", - "path": "66" - }, - "5255": { - "op": "PUSH1", - "value": "0x1" - }, - "5257": { - "op": "PUSH1", - "value": "0x1" - }, - "5259": { - "op": "PUSH1", - "value": "0xF8" - }, - "5261": { - "op": "SHL" - }, - "5262": { - "op": "SUB" - }, - "5263": { - "op": "NOT" - }, - "5264": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11082, - 11156 - ], - "op": "AND", - "path": "66" - }, - "5265": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11082, - 11156 - ], - "op": "SWAP1", - "path": "66" - }, - "5266": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11082, - 11156 - ], - "op": "MSTORE", - "path": "66" - }, - "5267": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "PUSH2", - "path": "66", - "value": "0x14A6" - }, - "5270": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMP", - "path": "66" - }, - "5271": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5272": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "PUSH1", - "path": "66", - "statement": 109, - "value": "0x20" - }, - "5274": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "DUP9", - "path": "66" - }, - "5275": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "ADD", - "path": "66" - }, - "5276": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "DUP1", - "path": "66" - }, - "5277": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "MLOAD", - "path": "66" - }, - "5278": { - "op": "PUSH1", - "value": "0x7F" - }, - "5280": { - "op": "PUSH1", - "value": "0xF9" - }, - "5282": { - "op": "SHL" - }, - "5283": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11232, - 11307 - ], - "op": "AND", - "path": "66" - }, - "5284": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11232, - 11307 - ], - "op": "SWAP1", - "path": "66" - }, - "5285": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11232, - 11307 - ], - "op": "MSTORE", - "path": "66" - }, - "5286": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5287": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11460, - 11519 - ], - "op": "PUSH2", - "path": "66", - "statement": 110, - "value": "0x14B3" - }, - "5290": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11501 - ], - "op": "DUP9", - "path": "66" - }, - "5291": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11518 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "5293": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11518 - ], - "op": "ADD", - "path": "66" - }, - "5294": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11518 - ], - "op": "MLOAD", - "path": "66" - }, - "5295": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11460, - 11486 - ], - "op": "PUSH2", - "path": "66", - "value": "0x25C5" - }, - "5298": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 11460, - 11519 - ], - "op": "JUMP", - "path": "66" - }, - "5299": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11460, - 11519 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5300": { - "op": "PUSH1", - "value": "0x1" - }, - "5302": { - "op": "PUSH1", - "value": "0x1" - }, - "5304": { - "op": "PUSH1", - "value": "0x70" - }, - "5306": { - "op": "SHL" - }, - "5307": { - "op": "SUB" - }, - "5308": { - "op": "NOT" - }, - "5309": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11519 - ], - "op": "AND", - "path": "66" - }, - "5310": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11457 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "5312": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11457 - ], - "op": "DUP10", - "path": "66" - }, - "5313": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11457 - ], - "op": "ADD", - "path": "66" - }, - "5314": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11519 - ], - "op": "MSTORE", - "path": "66" - }, - "5315": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11530, - 11550 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5317": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5318": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11567, - 11591 - ], - "op": "DUP4", - "path": "66" - }, - "5319": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11567, - 11591 - ], - "op": "ISZERO", - "path": "66" - }, - "5320": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "PUSH2", - "path": "66", - "value": "0x14F6" - }, - "5323": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMPI", - "path": "66" - }, - "5324": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF0" - }, - "5326": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "DUP5", - "path": "66" - }, - "5327": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "SWAP1", - "path": "66" - }, - "5328": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "SHR", - "path": "66" - }, - "5329": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11955, - 11981 - ], - "op": "DUP2", - "path": "66" - }, - "5330": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11955, - 11981 - ], - "op": "DUP2", - "path": "66" - }, - "5331": { - "branch": 415, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11955, - 11981 - ], - "op": "EQ", - "path": "66" - }, - "5332": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11951, - 12098 - ], - "op": "PUSH2", - "path": "66", - "value": "0x14E8" - }, - "5335": { - "branch": 415, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11951, - 12098 - ], - "op": "JUMPI", - "path": "66" - }, - "5336": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12001, - 12083 - ], - "op": "PUSH2", - "path": "66", - "statement": 111, - "value": "0x14E8" - }, - "5339": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12019, - 12033 - ], - "op": "DUP11", - "path": "66" - }, - "5340": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12035, - 12045 - ], - "op": "DUP3", - "path": "66" - }, - "5341": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12047, - 12051 - ], - "op": "PUSH1", - "path": "66", - "value": "0x1" - }, - "5343": { - "op": "PUSH1", - "value": "0x1" - }, - "5345": { - "op": "PUSH1", - "value": "0xFF" - }, - "5347": { - "op": "SHL" - }, - "5348": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12001, - 12018 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2187" - }, - "5351": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 12001, - 12083 - ], - "op": "JUMP", - "path": "66" - }, - "5352": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12001, - 12083 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5353": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12196, - 12198 - ], - "op": "PUSH1", - "path": "66", - "statement": 112, - "value": "0x10" - }, - "5355": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP5", - "path": "66" - }, - "5356": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP1", - "path": "66" - }, - "5357": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP5", - "path": "66" - }, - "5358": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SHL", - "path": "66" - }, - "5359": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP4", - "path": "66" - }, - "5360": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12126, - 12136 - ], - "op": "SWAP1", - "path": "66", - "statement": 113 - }, - "5361": { - "op": "POP" - }, - "5362": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "PUSH2", - "path": "66", - "value": "0x14C5" - }, - "5365": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMP", - "path": "66" - }, - "5366": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5367": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5368": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5369": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5370": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5371": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5372": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5373": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5374": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5375": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "POP", - "path": "66" - }, - "5376": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "o", - "offset": [ - 9863, - 12215 - ], - "op": "JUMP", - "path": "66" - }, - "5377": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5378": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 938, - 986 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5380": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 989, - 1019 - ], - "op": "PUSH2", - "path": "66", - "value": "0x150B" - }, - "5383": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 989, - 1017 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2640" - }, - "5386": { - "fn": "AccountContextHandler.setAccountContext", - "jump": "i", - "offset": [ - 989, - 1019 - ], - "op": "JUMP", - "path": "66" - }, - "5387": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 989, - 1019 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5388": { - "op": "PUSH1", - "value": "0x1" - }, - "5390": { - "op": "PUSH1", - "value": "0x1" - }, - "5392": { - "op": "PUSH1", - "value": "0xA0" - }, - "5394": { - "op": "SHL" - }, - "5395": { - "op": "SUB" - }, - "5396": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP4", - "path": "66", - "statement": 114 - }, - "5397": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "AND", - "path": "66" - }, - "5398": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5400": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP2", - "path": "66" - }, - "5401": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP2", - "path": "66" - }, - "5402": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "MSTORE", - "path": "66" - }, - "5403": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "PUSH1", - "path": "66", - "value": "0x20" - }, - "5405": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP4", - "path": "66" - }, - "5406": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP2", - "path": "66" - }, - "5407": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "MSTORE", - "path": "66" - }, - "5408": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "PUSH1", - "path": "66", - "value": "0x40" - }, - "5410": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP1", - "path": "66" - }, - "5411": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP4", - "path": "66" - }, - "5412": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "KECCAK256", - "path": "66" - }, - "5413": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP9", - "path": "66" - }, - "5414": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "5415": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP2", - "path": "66" - }, - "5416": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SLOAD", - "path": "66" - }, - "5417": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "5418": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP11", - "path": "66" - }, - "5419": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "5420": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "5421": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP4", - "path": "66" - }, - "5422": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP12", - "path": "66" - }, - "5423": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "5424": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "5425": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "5427": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP13", - "path": "66" - }, - "5428": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "5429": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "5430": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "5432": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP14", - "path": "66" - }, - "5433": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "5434": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "5435": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0x70" - }, - "5437": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SHR", - "path": "66" - }, - "5438": { - "op": "PUSH1", - "value": "0x1" - }, - "5440": { - "op": "PUSH1", - "value": "0x48" - }, - "5442": { - "op": "SHL" - }, - "5443": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "5444": { - "op": "PUSH27", - "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000" - }, - "5472": { - "op": "NOT" - }, - "5473": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "5476": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5477": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP3", - "path": "66" - }, - "5478": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5479": { - "op": "PUSH1", - "value": "0x1" - }, - "5481": { - "op": "PUSH1", - "value": "0x38" - }, - "5483": { - "op": "SHL" - }, - "5484": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "5485": { - "op": "PUSH9", - "value": "0xFFFF00000000000000" - }, - "5495": { - "op": "NOT" - }, - "5496": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0xFF" - }, - "5498": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "5499": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5500": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "5501": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5502": { - "op": "PUSH1", - "value": "0x1" - }, - "5504": { - "op": "PUSH1", - "value": "0x30" - }, - "5506": { - "op": "SHL" - }, - "5507": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "5508": { - "op": "PUSH7", - "value": "0xFF000000000000" - }, - "5516": { - "op": "NOT" - }, - "5517": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF8" - }, - "5519": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "5520": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5521": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "5522": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SHR", - "path": "66" - }, - "5523": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH6", - "path": "66", - "value": "0x10000000000" - }, - "5530": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "5531": { - "op": "PUSH6", - "value": "0xFF0000000000" - }, - "5538": { - "op": "NOT" - }, - "5539": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "5545": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5546": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP9", - "path": "66" - }, - "5547": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5548": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "5554": { - "op": "NOT" - }, - "5555": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5556": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP12", - "path": "66" - }, - "5557": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5558": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP11", - "path": "66" - }, - "5559": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5560": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP11", - "path": "66" - }, - "5561": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "5562": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "5563": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5564": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "5565": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5566": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP9", - "path": "66" - }, - "5567": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5568": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP9", - "path": "66" - }, - "5569": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "5570": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "5571": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5572": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "5573": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5574": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "5575": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5576": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "5577": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "5578": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5579": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "5580": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5581": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "5582": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "5583": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "5584": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP3", - "path": "66" - }, - "5585": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5586": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP3", - "path": "66" - }, - "5587": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "5588": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "5589": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP2", - "path": "66" - }, - "5590": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SSTORE", - "path": "66" - }, - "5591": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "MLOAD", - "path": "66", - "statement": 115 - }, - "5592": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 938, - 1019 - ], - "op": "SWAP3", - "path": "66" - }, - "5593": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 938, - 1019 - ], - "op": "SWAP4", - "path": "66" - }, - "5594": { - "op": "POP" - }, - "5595": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "SWAP1", - "path": "66" - }, - "5596": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "SWAP2", - "path": "66" - }, - "5597": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "PUSH32", - "path": "66", - "value": "0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E" - }, - "5630": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "SWAP2", - "path": "66" - }, - "5631": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "SWAP1", - "path": "66" - }, - "5632": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "LOG2", - "path": "66" - }, - "5633": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "POP", - "path": "66" - }, - "5634": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "POP", - "path": "66" - }, - "5635": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "POP", - "path": "66" - }, - "5636": { - "fn": "AccountContextHandler.setAccountContext", - "jump": "o", - "offset": [ - 837, - 1111 - ], - "op": "JUMP", - "path": "66" - }, - "5637": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15550, - 17246 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5638": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15749, - 15775 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5640": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15778, - 15816 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1610" - }, - "5643": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15795, - 15815 - ], - "op": "DUP3", - "path": "29" - }, - "5644": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15778, - 15794 - ], - "op": "PUSH2", - "path": "29", - "value": "0x264D" - }, - "5647": { - "fn": "BatchAction._executeDepositAction", - "jump": "i", - "offset": [ - 15778, - 15816 - ], - "op": "JUMP", - "path": "29" - }, - "5648": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15778, - 15816 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5649": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15749, - 15816 - ], - "op": "SWAP1", - "path": "29" - }, - "5650": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15749, - 15816 - ], - "op": "POP", - "path": "29" - }, - "5651": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15826, - 15852 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5653": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15893, - 15894 - ], - "op": "DUP1", - "path": "29", - "statement": 116 - }, - "5654": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15870, - 15889 - ], - "op": "DUP3", - "path": "29" - }, - "5655": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15870, - 15894 - ], - "op": "SLT", - "path": "29" - }, - "5656": { - "branch": 388, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15870, - 15894 - ], - "op": "ISZERO", - "path": "29" - }, - "5657": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15862, - 15895 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1621" - }, - "5660": { - "branch": 388, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15862, - 15895 - ], - "op": "JUMPI", - "path": "29" - }, - "5661": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15862, - 15895 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5663": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15862, - 15895 - ], - "op": "DUP1", - "path": "29" - }, - "5664": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15862, - 15895 - ], - "op": "REVERT", - "path": "29" - }, - "5665": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15862, - 15895 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5666": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15925, - 15947 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5668": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15921 - ], - "op": "DUP5", - "path": "29" - }, - "5669": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5671": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "DUP2", - "path": "29" - }, - "5672": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "GT", - "path": "29" - }, - "5673": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "ISZERO", - "path": "29" - }, - "5674": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "PUSH2", - "path": "29", - "value": "0x162F" - }, - "5677": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "JUMPI", - "path": "29" - }, - "5678": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "INVALID", - "path": "29" - }, - "5679": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5680": { - "branch": 389, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15910, - 15947 - ], - "op": "EQ", - "path": "29" - }, - "5681": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15906, - 17082 - ], - "op": "ISZERO", - "path": "29" - }, - "5682": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15906, - 17082 - ], - "op": "PUSH2", - "path": "29", - "value": "0x163C" - }, - "5685": { - "branch": 389, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15906, - 17082 - ], - "op": "JUMPI", - "path": "29" - }, - "5686": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15963, - 15970 - ], - "op": "POP", - "path": "29", - "statement": 117 - }, - "5687": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15963, - 15970 - ], - "op": "POP", - "path": "29" - }, - "5688": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15963, - 15970 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16D2" - }, - "5691": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15963, - 15970 - ], - "op": "JUMP", - "path": "29" - }, - "5692": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15906, - 17082 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5693": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16018, - 16048 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1" - }, - "5695": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16014 - ], - "op": "DUP5", - "path": "29" - }, - "5696": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5698": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "DUP2", - "path": "29" - }, - "5699": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "GT", - "path": "29" - }, - "5700": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "ISZERO", - "path": "29" - }, - "5701": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "PUSH2", - "path": "29", - "value": "0x164A" - }, - "5704": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "JUMPI", - "path": "29" - }, - "5705": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "INVALID", - "path": "29" - }, - "5706": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5707": { - "branch": 390, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16048 - ], - "op": "EQ", - "path": "29" - }, - "5708": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16122 - ], - "op": "DUP1", - "path": "29" - }, - "5709": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16122 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1661" - }, - "5712": { - "branch": 390, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16122 - ], - "op": "JUMPI", - "path": "29" - }, - "5713": { - "op": "POP" - }, - "5714": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16079, - 16122 - ], - "op": "PUSH1", - "path": "29", - "value": "0x3" - }, - "5716": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16075 - ], - "op": "DUP5", - "path": "29" - }, - "5717": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5719": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "DUP2", - "path": "29" - }, - "5720": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "GT", - "path": "29" - }, - "5721": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "ISZERO", - "path": "29" - }, - "5722": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "PUSH2", - "path": "29", - "value": "0x165F" - }, - "5725": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "JUMPI", - "path": "29" - }, - "5726": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "INVALID", - "path": "29" - }, - "5727": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5728": { - "branch": 391, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16064, - 16122 - ], - "op": "EQ", - "path": "29" - }, - "5729": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16003, - 16122 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5730": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15986, - 17082 - ], - "op": "ISZERO", - "path": "29" - }, - "5731": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15986, - 17082 - ], - "op": "PUSH2", - "path": "29", - "value": "0x167A" - }, - "5734": { - "branch": 391, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15986, - 17082 - ], - "op": "JUMPI", - "path": "29" - }, - "5735": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16355, - 16505 - ], - "op": "PUSH2", - "path": "29", - "statement": 118, - "value": "0x1673" - }, - "5738": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16355, - 16367 - ], - "op": "DUP6", - "path": "29" - }, - "5739": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16403, - 16410 - ], - "op": "DUP8", - "path": "29" - }, - "5740": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16428, - 16447 - ], - "op": "DUP5", - "path": "29" - }, - "5741": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16465, - 16470 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5743": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16355, - 16385 - ], - "op": "PUSH2", - "path": "29", - "value": "0x10B7" - }, - "5746": { - "fn": "BatchAction._executeDepositAction", - "jump": "i", - "offset": [ - 16355, - 16505 - ], - "op": "JUMP", - "path": "29" - }, - "5747": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16355, - 16505 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5748": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16333, - 16505 - ], - "op": "SWAP1", - "path": "29" - }, - "5749": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16333, - 16505 - ], - "op": "POP", - "path": "29" - }, - "5750": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15986, - 17082 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16C6" - }, - "5753": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15986, - 17082 - ], - "op": "JUMP", - "path": "29" - }, - "5754": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15986, - 17082 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5755": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16554, - 16589 - ], - "op": "PUSH1", - "path": "29", - "value": "0x2" - }, - "5757": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16550 - ], - "op": "DUP5", - "path": "29" - }, - "5758": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5760": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "DUP2", - "path": "29" - }, - "5761": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "GT", - "path": "29" - }, - "5762": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "ISZERO", - "path": "29" - }, - "5763": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1688" - }, - "5766": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "JUMPI", - "path": "29" - }, - "5767": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "INVALID", - "path": "29" - }, - "5768": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5769": { - "branch": 392, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16589 - ], - "op": "EQ", - "path": "29" - }, - "5770": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16668 - ], - "op": "DUP1", - "path": "29" - }, - "5771": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16668 - ], - "op": "PUSH2", - "path": "29", - "value": "0x169F" - }, - "5774": { - "branch": 392, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16668 - ], - "op": "JUMPI", - "path": "29" - }, - "5775": { - "op": "POP" - }, - "5776": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16620, - 16668 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "5778": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16616 - ], - "op": "DUP5", - "path": "29" - }, - "5779": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5781": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "DUP2", - "path": "29" - }, - "5782": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "GT", - "path": "29" - }, - "5783": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "ISZERO", - "path": "29" - }, - "5784": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "PUSH2", - "path": "29", - "value": "0x169D" - }, - "5787": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "JUMPI", - "path": "29" - }, - "5788": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "INVALID", - "path": "29" - }, - "5789": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5790": { - "branch": 393, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16605, - 16668 - ], - "op": "EQ", - "path": "29" - }, - "5791": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16539, - 16668 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5792": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16522, - 17082 - ], - "op": "ISZERO", - "path": "29" - }, - "5793": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16522, - 17082 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16AF" - }, - "5796": { - "branch": 393, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16522, - 17082 - ], - "op": "JUMPI", - "path": "29" - }, - "5797": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16794, - 16859 - ], - "op": "PUSH2", - "path": "29", - "statement": 119, - "value": "0x1673" - }, - "5800": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16794, - 16806 - ], - "op": "DUP6", - "path": "29" - }, - "5801": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16830, - 16837 - ], - "op": "DUP8", - "path": "29" - }, - "5802": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16839, - 16858 - ], - "op": "DUP5", - "path": "29" - }, - "5803": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16794, - 16829 - ], - "op": "PUSH2", - "path": "29", - "value": "0xFBF" - }, - "5806": { - "fn": "BatchAction._executeDepositAction", - "jump": "i", - "offset": [ - 16794, - 16859 - ], - "op": "JUMP", - "path": "29" - }, - "5807": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16522, - 17082 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5808": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16895, - 16932 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5810": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16891 - ], - "op": "DUP5", - "path": "29" - }, - "5811": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "5813": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "DUP2", - "path": "29" - }, - "5814": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "GT", - "path": "29" - }, - "5815": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "ISZERO", - "path": "29" - }, - "5816": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16BD" - }, - "5819": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "JUMPI", - "path": "29" - }, - "5820": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "INVALID", - "path": "29" - }, - "5821": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5822": { - "branch": 394, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16880, - 16932 - ], - "op": "EQ", - "path": "29" - }, - "5823": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16876, - 17082 - ], - "op": "ISZERO", - "path": "29" - }, - "5824": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16876, - 17082 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16C6" - }, - "5827": { - "branch": 394, - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16876, - 17082 - ], - "op": "JUMPI", - "path": "29" - }, - "5828": { - "op": "POP" - }, - "5829": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17052, - 17071 - ], - "op": "DUP1", - "path": "29", - "statement": 120 - }, - "5830": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 16876, - 17082 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5831": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17092, - 17239 - ], - "op": "PUSH2", - "path": "29", - "statement": 121, - "value": "0x666" - }, - "5834": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17126, - 17138 - ], - "op": "DUP6", - "path": "29" - }, - "5835": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17152, - 17163 - ], - "op": "DUP6", - "path": "29" - }, - "5836": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17177, - 17196 - ], - "op": "DUP5", - "path": "29" - }, - "5837": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17210, - 17229 - ], - "op": "DUP5", - "path": "29" - }, - "5838": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 17092, - 17112 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2663" - }, - "5841": { - "fn": "BatchAction._executeDepositAction", - "jump": "i", - "offset": [ - 17092, - 17239 - ], - "op": "JUMP", - "path": "29" - }, - "5842": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15550, - 17246 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5843": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15550, - 17246 - ], - "op": "POP", - "path": "29" - }, - "5844": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15550, - 17246 - ], - "op": "POP", - "path": "29" - }, - "5845": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15550, - 17246 - ], - "op": "POP", - "path": "29" - }, - "5846": { - "fn": "BatchAction._executeDepositAction", - "offset": [ - 15550, - 17246 - ], - "op": "POP", - "path": "29" - }, - "5847": { - "fn": "BatchAction._executeDepositAction", - "jump": "o", - "offset": [ - 15550, - 17246 - ], - "op": "JUMP", - "path": "29" - }, - "5848": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5849": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19663, - 19684 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5851": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19687, - 19736 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16E3" - }, - "5854": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19704, - 19735 - ], - "op": "DUP5", - "path": "29" - }, - "5855": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19687, - 19703 - ], - "op": "PUSH2", - "path": "29", - "value": "0x264D" - }, - "5858": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "jump": "i", - "offset": [ - 19687, - 19736 - ], - "op": "JUMP", - "path": "29" - }, - "5859": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19687, - 19736 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5860": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19663, - 19736 - ], - "op": "SWAP1", - "path": "29" - }, - "5861": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19663, - 19736 - ], - "op": "POP", - "path": "29" - }, - "5862": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19772, - 19773 - ], - "op": "PUSH1", - "path": "29", - "statement": 122, - "value": "0x0" - }, - "5864": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19754, - 19768 - ], - "op": "DUP2", - "path": "29" - }, - "5865": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19754, - 19773 - ], - "op": "SLT", - "path": "29" - }, - "5866": { - "branch": 395, - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19754, - 19773 - ], - "op": "ISZERO", - "path": "29" - }, - "5867": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19746, - 19774 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16F3" - }, - "5870": { - "branch": 395, - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19746, - 19774 - ], - "op": "JUMPI", - "path": "29" - }, - "5871": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19746, - 19774 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5873": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19746, - 19774 - ], - "op": "DUP1", - "path": "29" - }, - "5874": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19746, - 19774 - ], - "op": "REVERT", - "path": "29" - }, - "5875": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19746, - 19774 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5876": { - "branch": 396, - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19934, - 19959 - ], - "op": "DUP3", - "path": "29" - }, - "5877": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19930, - 20473 - ], - "op": "ISZERO", - "path": "29" - }, - "5878": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19930, - 20473 - ], - "op": "PUSH2", - "path": "29", - "value": "0x172B" - }, - "5881": { - "branch": 396, - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19930, - 20473 - ], - "op": "JUMPI", - "path": "29" - }, - "5882": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20326 - ], - "op": "PUSH2", - "path": "29", - "statement": 123, - "value": "0x171C" - }, - "5885": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20279, - 20291 - ], - "op": "DUP6", - "path": "29" - }, - "5886": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20279, - 20325 - ], - "op": "PUSH1", - "path": "29", - "value": "0x80" - }, - "5888": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20279, - 20325 - ], - "op": "ADD", - "path": "29" - }, - "5889": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20279, - 20325 - ], - "op": "MLOAD", - "path": "29" - }, - "5890": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20257 - ], - "op": "PUSH2", - "path": "29", - "value": "0x11C6" - }, - "5893": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20230, - 20242 - ], - "op": "DUP8", - "path": "29" - }, - "5894": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20230, - 20256 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "5896": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20230, - 20256 - ], - "op": "ADD", - "path": "29" - }, - "5897": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20230, - 20256 - ], - "op": "MLOAD", - "path": "29" - }, - "5898": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20190 - ], - "op": "DUP9", - "path": "29" - }, - "5899": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20208 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "5901": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20208 - ], - "op": "ADD", - "path": "29" - }, - "5902": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20208 - ], - "op": "MLOAD", - "path": "29" - }, - "5903": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20229 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "5906": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20229 - ], - "op": "SWAP1", - "path": "29" - }, - "5907": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20257 - ], - "op": "SWAP2", - "path": "29" - }, - "5908": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20257 - ], - "op": "SWAP1", - "path": "29" - }, - "5909": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20257 - ], - "op": "PUSH4", - "path": "29", - "value": "0xFFFFFFFF" - }, - "5914": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20257 - ], - "op": "AND", - "path": "29" - }, - "5915": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "jump": "i", - "offset": [ - 20178, - 20257 - ], - "op": "JUMP", - "path": "29" - }, - "5916": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20178, - 20326 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5917": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20161, - 20326 - ], - "op": "SWAP1", - "path": "29" - }, - "5918": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20161, - 20326 - ], - "op": "POP", - "path": "29" - }, - "5919": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20441, - 20442 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "5921": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20424, - 20438 - ], - "op": "DUP2", - "path": "29" - }, - "5922": { - "branch": 397, - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20424, - 20442 - ], - "op": "SLT", - "path": "29" - }, - "5923": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20420, - 20462 - ], - "op": "ISZERO", - "path": "29" - }, - "5924": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20420, - 20462 - ], - "op": "PUSH2", - "path": "29", - "value": "0x172B" - }, - "5927": { - "branch": 397, - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20420, - 20462 - ], - "op": "JUMPI", - "path": "29" - }, - "5928": { - "op": "POP" - }, - "5929": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20461, - 20462 - ], - "op": "PUSH1", - "path": "29", - "statement": 124, - "value": "0x0" - }, - "5931": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20420, - 20462 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5932": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20618 - ], - "op": "PUSH1", - "path": "29", - "statement": 125, - "value": "0x80" - }, - "5934": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20618 - ], - "op": "DUP6", - "path": "29" - }, - "5935": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20618 - ], - "op": "ADD", - "path": "29" - }, - "5936": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20618 - ], - "op": "MLOAD", - "path": "29" - }, - "5937": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20651 - ], - "op": "PUSH2", - "path": "29", - "value": "0x173A" - }, - "5940": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20651 - ], - "op": "SWAP1", - "path": "29" - }, - "5941": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20636, - 20650 - ], - "op": "DUP3", - "path": "29" - }, - "5942": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20635 - ], - "op": "PUSH2", - "path": "29", - "value": "0x287E" - }, - "5945": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "jump": "i", - "offset": [ - 20559, - 20651 - ], - "op": "JUMP", - "path": "29" - }, - "5946": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20559, - 20651 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5947": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20510, - 20556 - ], - "op": "PUSH1", - "path": "29", - "value": "0x80" - }, - "5949": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20510, - 20556 - ], - "op": "DUP7", - "path": "29" - }, - "5950": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20510, - 20556 - ], - "op": "ADD", - "path": "29" - }, - "5951": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20510, - 20651 - ], - "op": "MSTORE", - "path": "29" - }, - "5952": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20662, - 20728 - ], - "op": "PUSH2", - "path": "29", - "statement": 126, - "value": "0x174B" - }, - "5955": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20510, - 20522 - ], - "op": "DUP6", - "path": "29" - }, - "5956": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20684, - 20691 - ], - "op": "DUP9", - "path": "29" - }, - "5957": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20693, - 20707 - ], - "op": "DUP9", - "path": "29" - }, - "5958": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20709, - 20727 - ], - "op": "DUP6", - "path": "29" - }, - "5959": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20662, - 20683 - ], - "op": "PUSH2", - "path": "29", - "value": "0x1191" - }, - "5962": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "jump": "i", - "offset": [ - 20662, - 20728 - ], - "op": "JUMP", - "path": "29" - }, - "5963": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20662, - 20728 - ], - "op": "JUMPDEST", - "path": "29" - }, - "5964": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 20662, - 20728 - ], - "op": "POP", - "path": "29" - }, - "5965": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5966": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5967": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5968": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5969": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5970": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5971": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "offset": [ - 19359, - 20735 - ], - "op": "POP", - "path": "29" - }, - "5972": { - "fn": "BatchAction._calculateWithdrawActionAndFinalize", - "jump": "o", - "offset": [ - 19359, - 20735 - ], - "op": "JUMP", - "path": "29" - }, - "5973": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 728, - 1465 - ], - "op": "JUMPDEST", - "path": "81" - }, - "5974": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 836, - 853 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "5976": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 867, - 902 - ], - "op": "DUP1", - "path": "81" - }, - "5977": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 916, - 943 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "5979": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 957, - 979 - ], - "op": "DUP1", - "path": "81" - }, - "5980": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 993, - 1010 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "5982": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1035, - 1082 - ], - "op": "DUP1", - "path": "81" - }, - "5983": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1085, - 1121 - ], - "op": "PUSH2", - "path": "81", - "value": "0x1766" - }, - "5986": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1085, - 1119 - ], - "op": "PUSH2", - "path": "81", - "value": "0x2894" - }, - "5989": { - "fn": "nTokenHandler.getNTokenContext", - "jump": "i", - "offset": [ - 1085, - 1121 - ], - "op": "JUMP", - "path": "81" - }, - "5990": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1085, - 1121 - ], - "op": "JUMPDEST", - "path": "81" - }, - "5991": { - "op": "PUSH1", - "value": "0x1" - }, - "5993": { - "op": "PUSH1", - "value": "0x1" - }, - "5995": { - "op": "PUSH1", - "value": "0xA0" - }, - "5997": { - "op": "SHL" - }, - "5998": { - "op": "SUB" - }, - "5999": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6000": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP8", - "path": "81" - }, - "6001": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "AND", - "path": "81" - }, - "6002": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1131, - 1160 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "6004": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6005": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "DUP2", - "path": "81" - }, - "6006": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "MSTORE", - "path": "81" - }, - "6007": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "PUSH1", - "path": "81", - "value": "0x20" - }, - "6009": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP8", - "path": "81" - }, - "6010": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6011": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP8", - "path": "81" - }, - "6012": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "MSTORE", - "path": "81" - }, - "6013": { - "op": "POP" - }, - "6014": { - "op": "POP" - }, - "6015": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "PUSH1", - "path": "81", - "value": "0x40" - }, - "6017": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6018": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP5", - "path": "81" - }, - "6019": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "KECCAK256", - "path": "81" - }, - "6020": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "SLOAD", - "path": "81", - "statement": 127 - }, - "6021": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "PUSH2", - "path": "81", - "value": "0xFFFF" - }, - "6024": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "DUP2", - "path": "81" - }, - "6025": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "AND", - "path": "81" - }, - "6026": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "SWAP6", - "path": "81" - }, - "6027": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "PUSH4", - "path": "81", - "statement": 128, - "value": "0xFFFFFFFF" - }, - "6032": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "PUSH3", - "path": "81", - "value": "0x10000" - }, - "6036": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "DUP4", - "path": "81" - }, - "6037": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "DIV", - "path": "81" - }, - "6038": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "DUP2", - "path": "81" - }, - "6039": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "AND", - "path": "81" - }, - "6040": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "SWAP7", - "path": "81" - }, - "6041": { - "op": "POP" - }, - "6042": { - "op": "PUSH1", - "value": "0x1" - }, - "6044": { - "op": "PUSH1", - "value": "0x30" - }, - "6046": { - "op": "SHL" - }, - "6047": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "DUP4", - "path": "81", - "statement": 129 - }, - "6048": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "DIV", - "path": "81" - }, - "6049": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "AND", - "path": "81" - }, - "6050": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "SWAP5", - "path": "81" - }, - "6051": { - "op": "POP" - }, - "6052": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "PUSH1", - "path": "81", - "statement": 130, - "value": "0xFF" - }, - "6054": { - "op": "PUSH1", - "value": "0x1" - }, - "6056": { - "op": "PUSH1", - "value": "0x50" - }, - "6058": { - "op": "SHL" - }, - "6059": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "DUP4", - "path": "81" - }, - "6060": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "DIV", - "path": "81" - }, - "6061": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "AND", - "path": "81" - }, - "6062": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "SWAP4", - "path": "81" - }, - "6063": { - "op": "POP" - }, - "6064": { - "op": "PUSH1", - "value": "0x1" - }, - "6066": { - "op": "PUSH1", - "value": "0x58" - }, - "6068": { - "op": "SHL" - }, - "6069": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SWAP1", - "path": "81", - "statement": 131 - }, - "6070": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SWAP2", - "path": "81" - }, - "6071": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "DIV", - "path": "81" - }, - "6072": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "PUSH1", - "path": "81", - "value": "0xD8" - }, - "6074": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SHL", - "path": "81" - }, - "6075": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SWAP2", - "path": "81" - }, - "6076": { - "op": "POP" - }, - "6077": { - "fn": "nTokenHandler.getNTokenContext", - "jump": "o", - "offset": [ - 728, - 1465 - ], - "op": "JUMP", - "path": "81" - }, - "6078": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22646, - 23202 - ], - "op": "JUMPDEST", - "path": "29" - }, - "6079": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22956, - 22957 - ], - "op": "PUSH1", - "path": "29", - "statement": 132, - "value": "0x0" - }, - "6081": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 22952 - ], - "op": "DUP2", - "path": "29" - }, - "6082": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 22957 - ], - "op": "SLT", - "path": "29" - }, - "6083": { - "branch": 398, - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 22957 - ], - "op": "ISZERO", - "path": "29" - }, - "6084": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 23152 - ], - "op": "DUP1", - "path": "29" - }, - "6085": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 23152 - ], - "op": "ISZERO", - "path": "29" - }, - "6086": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 23152 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17F1" - }, - "6089": { - "branch": 398, - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 23152 - ], - "op": "JUMPI", - "path": "29" - }, - "6090": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 23152 - ], - "op": "POP", - "path": "29" - }, - "6091": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23129, - 23152 - ], - "op": "DUP1", - "path": "29" - }, - "6092": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23125 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17EE" - }, - "6095": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23078, - 23090 - ], - "op": "DUP4", - "path": "29" - }, - "6096": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23078, - 23124 - ], - "op": "PUSH1", - "path": "29", - "value": "0x80" - }, - "6098": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23078, - 23124 - ], - "op": "ADD", - "path": "29" - }, - "6099": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23078, - 23124 - ], - "op": "MLOAD", - "path": "29" - }, - "6100": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23056 - ], - "op": "PUSH2", - "path": "29", - "value": "0x11C6" - }, - "6103": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23029, - 23041 - ], - "op": "DUP6", - "path": "29" - }, - "6104": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23029, - 23055 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "6106": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23029, - 23055 - ], - "op": "ADD", - "path": "29" - }, - "6107": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 23029, - 23055 - ], - "op": "MLOAD", - "path": "29" - }, - "6108": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 22989 - ], - "op": "DUP7", - "path": "29" - }, - "6109": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23007 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "6111": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23007 - ], - "op": "ADD", - "path": "29" - }, - "6112": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23007 - ], - "op": "MLOAD", - "path": "29" - }, - "6113": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23028 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "6116": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23028 - ], - "op": "SWAP1", - "path": "29" - }, - "6117": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23056 - ], - "op": "SWAP2", - "path": "29" - }, - "6118": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23056 - ], - "op": "SWAP1", - "path": "29" - }, - "6119": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23056 - ], - "op": "PUSH4", - "path": "29", - "value": "0xFFFFFFFF" - }, - "6124": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23056 - ], - "op": "AND", - "path": "29" - }, - "6125": { - "fn": "BatchAction._checkSufficientCash", - "jump": "i", - "offset": [ - 22977, - 23056 - ], - "op": "JUMP", - "path": "29" - }, - "6126": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23125 - ], - "op": "JUMPDEST", - "path": "29" - }, - "6127": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23152 - ], - "op": "SLT", - "path": "29" - }, - "6128": { - "branch": 399, - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22977, - 23152 - ], - "op": "ISZERO", - "path": "29" - }, - "6129": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22929, - 23152 - ], - "op": "JUMPDEST", - "path": "29" - }, - "6130": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "PUSH2", - "path": "29", - "value": "0x8EB" - }, - "6133": { - "branch": 399, - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "JUMPI", - "path": "29" - }, - "6134": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "6136": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "MLOAD", - "path": "29" - }, - "6137": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "6141": { - "op": "PUSH1", - "value": "0xE5" - }, - "6143": { - "op": "SHL" - }, - "6144": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "DUP2", - "path": "29" - }, - "6145": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "MSTORE", - "path": "29" - }, - "6146": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "6148": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "ADD", - "path": "29" - }, - "6149": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "6152": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "SWAP1", - "path": "29" - }, - "6153": { - "fn": "BatchAction._checkSufficientCash", - "offset": [ - 22908, - 23195 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4A6A" - }, - "6156": { - "fn": "BatchAction._checkSufficientCash", - "jump": "i", - "offset": [ - 22908, - 23195 - ], - "op": "JUMP", - "path": "29" - }, - "6157": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 552, - 771 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6158": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 619, - 640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1815" - }, - "6161": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 619, - 640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x3F62" - }, - "6164": { - "fn": "AccountContextHandler.getAccountContext", - "jump": "i", - "offset": [ - 619, - 640 - ], - "op": "JUMP", - "path": "66" - }, - "6165": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 619, - 640 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6166": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 652, - 700 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "6168": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 703, - 733 - ], - "op": "PUSH2", - "path": "66", - "value": "0x181F" - }, - "6171": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 703, - 731 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2640" - }, - "6174": { - "fn": "AccountContextHandler.getAccountContext", - "jump": "i", - "offset": [ - 703, - 733 - ], - "op": "JUMP", - "path": "66" - }, - "6175": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 703, - 733 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6176": { - "op": "PUSH1", - "value": "0x1" - }, - "6178": { - "op": "PUSH1", - "value": "0x1" - }, - "6180": { - "op": "PUSH1", - "value": "0xA0" - }, - "6182": { - "op": "SHL" - }, - "6183": { - "op": "SUB" - }, - "6184": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP4", - "path": "66", - "statement": 133 - }, - "6185": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6186": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP4", - "path": "66" - }, - "6187": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "AND", - "path": "66" - }, - "6188": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "6190": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6191": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6192": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6193": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x20" - }, - "6195": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP4", - "path": "66" - }, - "6196": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "DUP5", - "path": "66" - }, - "6197": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6198": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x40" - }, - "6200": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6201": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6202": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6203": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "KECCAK256", - "path": "66" - }, - "6204": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6205": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MLOAD", - "path": "66" - }, - "6206": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0xA0" - }, - "6208": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6209": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "6210": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP4", - "path": "66" - }, - "6211": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6212": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6213": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SLOAD", - "path": "66" - }, - "6214": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "6220": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6221": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "6222": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP3", - "path": "66" - }, - "6223": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6224": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH6", - "path": "66", - "value": "0x10000000000" - }, - "6231": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6232": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "6233": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF8" - }, - "6235": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SHL", - "path": "66" - }, - "6236": { - "op": "PUSH1", - "value": "0x1" - }, - "6238": { - "op": "PUSH1", - "value": "0x1" - }, - "6240": { - "op": "PUSH1", - "value": "0xF8" - }, - "6242": { - "op": "SHL" - }, - "6243": { - "op": "SUB" - }, - "6244": { - "op": "NOT" - }, - "6245": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "6246": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP6", - "path": "66" - }, - "6247": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP3", - "path": "66" - }, - "6248": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "6249": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP6", - "path": "66" - }, - "6250": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6251": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP6", - "path": "66" - }, - "6252": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6253": { - "op": "PUSH1", - "value": "0x1" - }, - "6255": { - "op": "PUSH1", - "value": "0x30" - }, - "6257": { - "op": "SHL" - }, - "6258": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP6", - "path": "66" - }, - "6259": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "6260": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0xFF" - }, - "6262": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "6263": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "6264": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "6265": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "6266": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "6267": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6268": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "6269": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6270": { - "op": "PUSH1", - "value": "0x1" - }, - "6272": { - "op": "PUSH1", - "value": "0x38" - }, - "6274": { - "op": "SHL" - }, - "6275": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP5", - "path": "66" - }, - "6276": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "6277": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "6280": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "6281": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "6283": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP3", - "path": "66" - }, - "6284": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "6285": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6286": { - "op": "PUSH1", - "value": "0x1" - }, - "6288": { - "op": "PUSH1", - "value": "0x48" - }, - "6290": { - "op": "SHL" - }, - "6291": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6292": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP4", - "path": "66" - }, - "6293": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "6294": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x70" - }, - "6296": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SHL", - "path": "66" - }, - "6297": { - "op": "PUSH1", - "value": "0x1" - }, - "6299": { - "op": "PUSH1", - "value": "0x1" - }, - "6301": { - "op": "PUSH1", - "value": "0x70" - }, - "6303": { - "op": "SHL" - }, - "6304": { - "op": "SUB" - }, - "6305": { - "op": "NOT" - }, - "6306": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "6307": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "6309": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP5", - "path": "66" - }, - "6310": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "6311": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "6312": { - "op": "POP" - }, - "6313": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "6314": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "6315": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 552, - 771 - ], - "op": "SWAP1", - "path": "66" - }, - "6316": { - "op": "POP" - }, - "6317": { - "fn": "AccountContextHandler.getAccountContext", - "jump": "o", - "offset": [ - 552, - 771 - ], - "op": "JUMP", - "path": "66" - }, - "6318": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3020, - 3752 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6319": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3107, - 3111 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "6321": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3143, - 3158 - ], - "op": "TIMESTAMP", - "path": "66" - }, - "6322": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3173, - 3204 - ], - "op": "PUSH2", - "path": "66", - "value": "0x18BA" - }, - "6325": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3189, - 3203 - ], - "op": "DUP4", - "path": "66" - }, - "6326": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3173, - 3188 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1412" - }, - "6329": { - "fn": "AccountContextHandler.mustSettleAssets", - "jump": "i", - "offset": [ - 3173, - 3204 - ], - "op": "JUMP", - "path": "66" - }, - "6330": { - "branch": 416, - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3173, - 3204 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6331": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "ISZERO", - "path": "66" - }, - "6332": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "PUSH2", - "path": "66", - "value": "0x18DB" - }, - "6335": { - "branch": 416, - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "JUMPI", - "path": "66" - }, - "6336": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3389, - 3420 - ], - "op": "PUSH2", - "path": "66", - "statement": 134, - "value": "0x18C8" - }, - "6339": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3410, - 3419 - ], - "op": "DUP2", - "path": "66" - }, - "6340": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3389, - 3409 - ], - "op": "PUSH2", - "path": "66", - "value": "0x28A1" - }, - "6343": { - "fn": "AccountContextHandler.mustSettleAssets", - "jump": "i", - "offset": [ - 3389, - 3420 - ], - "op": "JUMP", - "path": "66" - }, - "6344": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3389, - 3420 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6345": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3386 - ], - "op": "DUP4", - "path": "66" - }, - "6346": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3386 - ], - "op": "MLOAD", - "path": "66" - }, - "6347": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "6353": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "AND", - "path": "66" - }, - "6354": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "LT", - "path": "66" - }, - "6355": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "SWAP2", - "path": "66" - }, - "6356": { - "op": "POP" - }, - "6357": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3350, - 3420 - ], - "op": "PUSH2", - "path": "66", - "value": "0xBE2" - }, - "6360": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3350, - 3420 - ], - "op": "SWAP1", - "path": "66" - }, - "6361": { - "op": "POP" - }, - "6362": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3350, - 3420 - ], - "op": "JUMP", - "path": "66" - }, - "6363": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6364": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3660, - 3689 - ], - "op": "DUP3", - "path": "66", - "statement": 135 - }, - "6365": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3660, - 3689 - ], - "op": "MLOAD", - "path": "66" - }, - "6366": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "6372": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "AND", - "path": "66" - }, - "6373": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "ISZERO", - "path": "66" - }, - "6374": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "DUP1", - "path": "66" - }, - "6375": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "ISZERO", - "path": "66" - }, - "6376": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "SWAP1", - "path": "66" - }, - "6377": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3735 - ], - "op": "PUSH2", - "path": "66", - "value": "0xBD7" - }, - "6380": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3735 - ], - "op": "JUMPI", - "path": "66" - }, - "6381": { - "op": "POP" - }, - "6382": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3722 - ], - "op": "DUP3", - "path": "66" - }, - "6383": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3722 - ], - "op": "MLOAD", - "path": "66" - }, - "6384": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "6390": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "AND", - "path": "66" - }, - "6391": { - "op": "GT" - }, - "6392": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "ISZERO", - "path": "66" - }, - "6393": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "SWAP1", - "path": "66" - }, - "6394": { - "op": "POP" - }, - "6395": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "PUSH2", - "path": "66", - "value": "0xBE2" - }, - "6398": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "JUMP", - "path": "66" - }, - "6399": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14791, - 15176 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6400": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14907, - 14930 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "6402": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14946, - 14976 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "6404": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14979, - 15021 - ], - "op": "PUSH2", - "path": "84", - "value": "0x190D" - }, - "6407": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14995, - 15002 - ], - "op": "DUP5", - "path": "84" - }, - "6408": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15004, - 15020 - ], - "op": "DUP5", - "path": "84" - }, - "6409": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14979, - 14994 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28BF" - }, - "6412": { - "fn": "PortfolioHandler.getSortedPortfolio", - "jump": "i", - "offset": [ - 14979, - 15021 - ], - "op": "JUMP", - "path": "84" - }, - "6413": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14979, - 15021 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6414": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14946, - 15021 - ], - "op": "SWAP1", - "path": "84" - }, - "6415": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14946, - 15021 - ], - "op": "POP", - "path": "84" - }, - "6416": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15099, - 15100 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "6418": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15082, - 15088 - ], - "op": "DUP2", - "path": "84" - }, - "6419": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15082, - 15095 - ], - "op": "MLOAD", - "path": "84" - }, - "6420": { - "branch": 495, - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15082, - 15100 - ], - "op": "GT", - "path": "84" - }, - "6421": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15078, - 15115 - ], - "op": "PUSH2", - "path": "84", - "value": "0x191F" - }, - "6424": { - "branch": 495, - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15078, - 15115 - ], - "op": "JUMPI", - "path": "84" - }, - "6425": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15109, - 15115 - ], - "op": "SWAP1", - "path": "84", - "statement": 136 - }, - "6426": { - "op": "POP" - }, - "6427": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15102, - 15115 - ], - "op": "PUSH2", - "path": "84", - "value": "0xEDB" - }, - "6430": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15102, - 15115 - ], - "op": "JUMP", - "path": "84" - }, - "6431": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15078, - 15115 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6432": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15126, - 15146 - ], - "op": "PUSH2", - "path": "84", - "statement": 137, - "value": "0xAA3" - }, - "6435": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15139, - 15145 - ], - "op": "DUP2", - "path": "84" - }, - "6436": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15126, - 15138 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29E0" - }, - "6439": { - "fn": "PortfolioHandler.getSortedPortfolio", - "jump": "i", - "offset": [ - 15126, - 15146 - ], - "op": "JUMP", - "path": "84" - }, - "6440": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 3996, - 4813 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6441": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4129, - 4133 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "6443": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4172 - ], - "op": "DUP2", - "path": "66", - "statement": 138 - }, - "6444": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4172 - ], - "op": "ISZERO", - "path": "66" - }, - "6445": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4172 - ], - "op": "DUP1", - "path": "66" - }, - "6446": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4172 - ], - "op": "ISZERO", - "path": "66" - }, - "6447": { - "branch": 417, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4172 - ], - "op": "SWAP1", - "path": "66" - }, - "6448": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4214 - ], - "op": "PUSH2", - "path": "66", - "value": "0x193B" - }, - "6451": { - "branch": 417, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4214 - ], - "op": "JUMPI", - "path": "66" - }, - "6452": { - "op": "POP" - }, - "6453": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "6456": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4176, - 4214 - ], - "op": "DUP3", - "path": "66" - }, - "6457": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4176, - 4214 - ], - "op": "GT", - "path": "66" - }, - "6458": { - "branch": 418, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4176, - 4214 - ], - "op": "ISZERO", - "path": "66" - }, - "6459": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4157, - 4214 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6460": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4149, - 4215 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1944" - }, - "6463": { - "branch": 418, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4149, - 4215 - ], - "op": "JUMPI", - "path": "66" - }, - "6464": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4149, - 4215 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "6466": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4149, - 4215 - ], - "op": "DUP1", - "path": "66" - }, - "6467": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4149, - 4215 - ], - "op": "REVERT", - "path": "66" - }, - "6468": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4149, - 4215 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6469": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4274, - 4305 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "6471": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4274, - 4305 - ], - "op": "DUP4", - "path": "66" - }, - "6472": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4274, - 4305 - ], - "op": "ADD", - "path": "66" - }, - "6473": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4274, - 4305 - ], - "op": "MLOAD", - "path": "66" - }, - "6474": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4351 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "6476": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4351 - ], - "op": "DUP5", - "path": "66" - }, - "6477": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4351 - ], - "op": "ADD", - "path": "66" - }, - "6478": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4351 - ], - "op": "MLOAD", - "path": "66" - }, - "6479": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4365 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "6482": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4365 - ], - "op": "AND", - "path": "66" - }, - "6483": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4365 - ], - "op": "DUP4", - "path": "66" - }, - "6484": { - "branch": 419, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4320, - 4365 - ], - "op": "EQ", - "path": "66" - }, - "6485": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4316, - 4378 - ], - "op": "ISZERO", - "path": "66" - }, - "6486": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4316, - 4378 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1963" - }, - "6489": { - "branch": 419, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4316, - 4378 - ], - "op": "JUMPI", - "path": "66" - }, - "6490": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4374, - 4378 - ], - "op": "PUSH1", - "path": "66", - "statement": 139, - "value": "0x1" - }, - "6492": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4367, - 4378 - ], - "op": "SWAP2", - "path": "66" - }, - "6493": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4367, - 4378 - ], - "op": "POP", - "path": "66" - }, - "6494": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4367, - 4378 - ], - "op": "POP", - "path": "66" - }, - "6495": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4367, - 4378 - ], - "op": "PUSH2", - "path": "66", - "value": "0xEDB" - }, - "6498": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4367, - 4378 - ], - "op": "JUMP", - "path": "66" - }, - "6499": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4316, - 4378 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6500": { - "op": "PUSH1", - "value": "0x1" - }, - "6502": { - "op": "PUSH1", - "value": "0x1" - }, - "6504": { - "op": "PUSH1", - "value": "0x70" - }, - "6506": { - "op": "SHL" - }, - "6507": { - "op": "SUB" - }, - "6508": { - "op": "NOT" - }, - "6509": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4396, - 4414 - ], - "op": "DUP2", - "path": "66" - }, - "6510": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4396, - 4414 - ], - "op": "AND", - "path": "66" - }, - "6511": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4396, - 4414 - ], - "op": "ISZERO", - "path": "66" - }, - "6512": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4389, - 4784 - ], - "op": "PUSH2", - "path": "66", - "value": "0x19A8" - }, - "6515": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4389, - 4784 - ], - "op": "JUMPI", - "path": "66" - }, - "6516": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4472, - 4494 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF0" - }, - "6518": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4444, - 4495 - ], - "op": "DUP2", - "path": "66" - }, - "6519": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4444, - 4495 - ], - "op": "SWAP1", - "path": "66" - }, - "6520": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4444, - 4495 - ], - "op": "SHR", - "path": "66" - }, - "6521": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "6524": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4444, - 4495 - ], - "op": "AND", - "path": "66" - }, - "6525": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4513, - 4530 - ], - "op": "DUP4", - "path": "66" - }, - "6526": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4513, - 4530 - ], - "op": "DUP2", - "path": "66" - }, - "6527": { - "branch": 420, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4513, - 4530 - ], - "op": "EQ", - "path": "66" - }, - "6528": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4509, - 4730 - ], - "op": "ISZERO", - "path": "66" - }, - "6529": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4509, - 4730 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1995" - }, - "6532": { - "branch": 420, - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4509, - 4730 - ], - "op": "JUMPI", - "path": "66" - }, - "6533": { - "op": "POP" - }, - "6534": { - "op": "PUSH1", - "value": "0x1" - }, - "6536": { - "op": "PUSH1", - "value": "0xFE" - }, - "6538": { - "op": "SHL" - }, - "6539": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4634, - 4683 - ], - "op": "SWAP1", - "path": "66", - "statement": 140 - }, - "6540": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4634, - 4683 - ], - "op": "DUP2", - "path": "66" - }, - "6541": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4634, - 4683 - ], - "op": "AND", - "path": "66" - }, - "6542": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4634, - 4715 - ], - "op": "EQ", - "path": "66" - }, - "6543": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4634, - 4715 - ], - "op": "SWAP1", - "path": "66" - }, - "6544": { - "op": "POP" - }, - "6545": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4627, - 4715 - ], - "op": "PUSH2", - "path": "66", - "value": "0xEDB" - }, - "6548": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4627, - 4715 - ], - "op": "JUMP", - "path": "66" - }, - "6549": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4509, - 4730 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6550": { - "op": "POP" - }, - "6551": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4771, - 4773 - ], - "op": "PUSH1", - "path": "66", - "statement": 141, - "value": "0x10" - }, - "6553": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4757, - 4773 - ], - "op": "SHL", - "path": "66" - }, - "6554": { - "op": "PUSH1", - "value": "0x1" - }, - "6556": { - "op": "PUSH1", - "value": "0x1" - }, - "6558": { - "op": "PUSH1", - "value": "0x80" - }, - "6560": { - "op": "SHL" - }, - "6561": { - "op": "SUB" - }, - "6562": { - "op": "NOT" - }, - "6563": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4757, - 4773 - ], - "op": "AND", - "path": "66" - }, - "6564": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4389, - 4784 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1963" - }, - "6567": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4389, - 4784 - ], - "op": "JUMP", - "path": "66" - }, - "6568": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4389, - 4784 - ], - "op": "JUMPDEST", - "path": "66" - }, - "6569": { - "op": "POP" - }, - "6570": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4801, - 4806 - ], - "op": "PUSH1", - "path": "66", - "statement": 142, - "value": "0x0" - }, - "6572": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 4801, - 4806 - ], - "op": "SWAP4", - "path": "66" - }, - "6573": { - "fn": "AccountContextHandler.isActiveInBalances", - "offset": [ - 3996, - 4813 - ], - "op": "SWAP3", - "path": "66" - }, - "6574": { - "op": "POP" - }, - "6575": { - "op": "POP" - }, - "6576": { - "op": "POP" - }, - "6577": { - "fn": "AccountContextHandler.isActiveInBalances", - "jump": "o", - "offset": [ - 3996, - 4813 - ], - "op": "JUMP", - "path": "66" - }, - "6578": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20724, - 21742 - ], - "op": "JUMPDEST", - "path": "67" - }, - "6579": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20848, - 20866 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "6581": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20880, - 20900 - ], - "op": "DUP1", - "path": "67" - }, - "6582": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20914, - 20935 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "6584": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20949, - 20977 - ], - "op": "DUP1", - "path": "67" - }, - "6585": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21002, - 21070 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "6587": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21073, - 21103 - ], - "op": "PUSH2", - "path": "67", - "value": "0x19C2" - }, - "6590": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21073, - 21101 - ], - "op": "PUSH2", - "path": "67", - "value": "0x2B98" - }, - "6593": { - "fn": "BalanceHandler.getBalanceStorage", - "jump": "i", - "offset": [ - 21073, - 21103 - ], - "op": "JUMP", - "path": "67" - }, - "6594": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21073, - 21103 - ], - "op": "JUMPDEST", - "path": "67" - }, - "6595": { - "op": "PUSH1", - "value": "0x1" - }, - "6597": { - "op": "PUSH1", - "value": "0x1" - }, - "6599": { - "op": "PUSH1", - "value": "0xA0" - }, - "6601": { - "op": "SHL" - }, - "6602": { - "op": "SUB" - }, - "6603": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "DUP9", - "path": "67" - }, - "6604": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "AND", - "path": "67" - }, - "6605": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21113, - 21150 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "6607": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "SWAP1", - "path": "67" - }, - "6608": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "DUP2", - "path": "67" - }, - "6609": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "MSTORE", - "path": "67" - }, - "6610": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "6612": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "DUP3", - "path": "67" - }, - "6613": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "DUP2", - "path": "67" - }, - "6614": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "MSTORE", - "path": "67" - }, - "6615": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "6617": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "DUP1", - "path": "67" - }, - "6618": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "DUP4", - "path": "67" - }, - "6619": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "KECCAK256", - "path": "67" - }, - "6620": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "DUP11", - "path": "67" - }, - "6621": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "DUP5", - "path": "67" - }, - "6622": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "MSTORE", - "path": "67" - }, - "6623": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "SWAP1", - "path": "67" - }, - "6624": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "SWAP2", - "path": "67" - }, - "6625": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "MSTORE", - "path": "67" - }, - "6626": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "SWAP1", - "path": "67" - }, - "6627": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21179 - ], - "op": "KECCAK256", - "path": "67" - }, - "6628": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21206, - 21234 - ], - "op": "DUP1", - "path": "67", - "statement": 143 - }, - "6629": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21206, - 21234 - ], - "op": "SLOAD", - "path": "67" - }, - "6630": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21206, - 21234 - ], - "op": "PUSH10", - "path": "67", - "value": "0xFFFFFFFFFFFFFFFFFFFF" - }, - "6641": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21206, - 21234 - ], - "op": "DUP2", - "path": "67" - }, - "6642": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21206, - 21234 - ], - "op": "AND", - "path": "67" - }, - "6643": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21206, - 21234 - ], - "op": "SWAP7", - "path": "67" - }, - "6644": { - "op": "POP" - }, - "6645": { - "op": "PUSH1", - "value": "0x1" - }, - "6647": { - "op": "PUSH1", - "value": "0x50" - }, - "6649": { - "op": "SHL" - }, - "6650": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21260, - 21288 - ], - "op": "SWAP1", - "path": "67", - "statement": 144 - }, - "6651": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21260, - 21288 - ], - "op": "DIV", - "path": "67" - }, - "6652": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21260, - 21288 - ], - "op": "PUSH4", - "path": "67", - "value": "0xFFFFFFFF" - }, - "6657": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21260, - 21288 - ], - "op": "AND", - "path": "67" - }, - "6658": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21260, - 21288 - ], - "op": "SWAP5", - "path": "67" - }, - "6659": { - "op": "POP" - }, - "6660": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "SWAP1", - "path": "67" - }, - "6661": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21153, - 21167 - ], - "op": "SWAP2", - "path": "67" - }, - "6662": { - "op": "POP" - }, - "6663": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21302, - 21319 - ], - "op": "DUP4", - "path": "67" - }, - "6664": { - "branch": 468, - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21302, - 21319 - ], - "op": "ISZERO", - "path": "67" - }, - "6665": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21298, - 21686 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1A2E" - }, - "6668": { - "branch": 468, - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21298, - 21686 - ], - "op": "JUMPI", - "path": "67" - }, - "6669": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21550, - 21585 - ], - "op": "DUP1", - "path": "67", - "statement": 145 - }, - "6670": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21550, - 21585 - ], - "op": "SLOAD", - "path": "67" - }, - "6671": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21517, - 21586 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1A27" - }, - "6674": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21517, - 21586 - ], - "op": "SWAP1", - "path": "67" - }, - "6675": { - "op": "PUSH1", - "value": "0x1" - }, - "6677": { - "op": "PUSH1", - "value": "0x70" - }, - "6679": { - "op": "SHL" - }, - "6680": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21550, - 21585 - ], - "op": "SWAP1", - "path": "67" - }, - "6681": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21550, - 21585 - ], - "op": "DIV", - "path": "67" - }, - "6682": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21550, - 21585 - ], - "op": "PUSH7", - "path": "67", - "value": "0xFFFFFFFFFFFFFF" - }, - "6690": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21550, - 21585 - ], - "op": "AND", - "path": "67" - }, - "6691": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21517, - 21549 - ], - "op": "PUSH2", - "path": "67", - "value": "0x2BA5" - }, - "6694": { - "fn": "BalanceHandler.getBalanceStorage", - "jump": "i", - "offset": [ - 21517, - 21586 - ], - "op": "JUMP", - "path": "67" - }, - "6695": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21517, - 21586 - ], - "op": "JUMPDEST", - "path": "67" - }, - "6696": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21494, - 21586 - ], - "op": "SWAP3", - "path": "67" - }, - "6697": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21494, - 21586 - ], - "op": "POP", - "path": "67" - }, - "6698": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21298, - 21686 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1A43" - }, - "6701": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21298, - 21686 - ], - "op": "JUMP", - "path": "67" - }, - "6702": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21298, - 21686 - ], - "op": "JUMPDEST", - "path": "67" - }, - "6703": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "DUP1", - "path": "67", - "statement": 146 - }, - "6704": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "SLOAD", - "path": "67" - }, - "6705": { - "op": "PUSH1", - "value": "0x1" - }, - "6707": { - "op": "PUSH1", - "value": "0x70" - }, - "6709": { - "op": "SHL" - }, - "6710": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "SWAP1", - "path": "67" - }, - "6711": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "DIV", - "path": "67" - }, - "6712": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "PUSH7", - "path": "67", - "value": "0xFFFFFFFFFFFFFF" - }, - "6720": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "AND", - "path": "67" - }, - "6721": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21640, - 21675 - ], - "op": "SWAP3", - "path": "67" - }, - "6722": { - "op": "POP" - }, - "6723": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21298, - 21686 - ], - "op": "JUMPDEST", - "path": "67" - }, - "6724": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "SLOAD", - "path": "67", - "statement": 147 - }, - "6725": { - "op": "PUSH1", - "value": "0x1" - }, - "6727": { - "op": "PUSH1", - "value": "0xA8" - }, - "6729": { - "op": "SHL" - }, - "6730": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "SWAP1", - "path": "67" - }, - "6731": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "DIV", - "path": "67" - }, - "6732": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "PUSH1", - "path": "67", - "value": "0xA" - }, - "6734": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "SWAP1", - "path": "67" - }, - "6735": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "DUP2", - "path": "67" - }, - "6736": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21709, - 21735 - ], - "op": "SIGNEXTEND", - "path": "67" - }, - "6737": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21695, - 21735 - ], - "op": "SWAP1", - "path": "67" - }, - "6738": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21695, - 21735 - ], - "op": "SIGNEXTEND", - "path": "67" - }, - "6739": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 21695, - 21735 - ], - "op": "SWAP8", - "path": "67" - }, - "6740": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20724, - 21742 - ], - "op": "SWAP4", - "path": "67" - }, - "6741": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20724, - 21742 - ], - "op": "SWAP7", - "path": "67" - }, - "6742": { - "op": "POP" - }, - "6743": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20724, - 21742 - ], - "op": "SWAP2", - "path": "67" - }, - "6744": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20724, - 21742 - ], - "op": "SWAP5", - "path": "67" - }, - "6745": { - "op": "POP" - }, - "6746": { - "fn": "BalanceHandler.getBalanceStorage", - "offset": [ - 20724, - 21742 - ], - "op": "SWAP3", - "path": "67" - }, - "6747": { - "op": "POP" - }, - "6748": { - "op": "POP" - }, - "6749": { - "fn": "BalanceHandler.getBalanceStorage", - "jump": "o", - "offset": [ - 20724, - 21742 - ], - "op": "JUMP", - "path": "67" - }, - "6750": { - "fn": "SafeInt256.mul", - "offset": [ - 398, - 588 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6751": { - "fn": "SafeInt256.mul", - "offset": [ - 478, - 483 - ], - "op": "DUP2", - "path": "94", - "statement": 148 - }, - "6752": { - "fn": "SafeInt256.mul", - "offset": [ - 478, - 483 - ], - "op": "DUP2", - "path": "94" - }, - "6753": { - "fn": "SafeInt256.mul", - "offset": [ - 478, - 483 - ], - "op": "MUL", - "path": "94" - }, - "6754": { - "op": "PUSH1", - "value": "0x0" - }, - "6756": { - "op": "NOT" - }, - "6757": { - "fn": "SafeInt256.mul", - "offset": [ - 497, - 504 - ], - "op": "DUP4", - "path": "94" - }, - "6758": { - "branch": 526, - "fn": "SafeInt256.mul", - "offset": [ - 497, - 504 - ], - "op": "EQ", - "path": "94" - }, - "6759": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "ISZERO", - "path": "94" - }, - "6760": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1A8E" - }, - "6763": { - "branch": 526, - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "JUMPI", - "path": "94" - }, - "6764": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 521 - ], - "op": "DUP2", - "path": "94", - "statement": 149 - }, - "6765": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 521 - ], - "op": "ISZERO", - "path": "94" - }, - "6766": { - "branch": 527, - "fn": "SafeInt256.mul", - "offset": [ - 515, - 521 - ], - "op": "DUP1", - "path": "94" - }, - "6767": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1A80" - }, - "6770": { - "branch": 527, - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "JUMPI", - "path": "94" - }, - "6771": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "POP", - "path": "94" - }, - "6772": { - "fn": "SafeInt256.mul", - "offset": [ - 534, - 535 - ], - "op": "DUP3", - "path": "94" - }, - "6773": { - "fn": "SafeInt256.mul", - "offset": [ - 529, - 530 - ], - "op": "DUP3", - "path": "94" - }, - "6774": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 526 - ], - "op": "DUP3", - "path": "94" - }, - "6775": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "DUP2", - "path": "94" - }, - "6776": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1A7D" - }, - "6779": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "JUMPI", - "path": "94" - }, - "6780": { - "dev": "Division by zero", - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "INVALID", - "path": "94" - }, - "6781": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6782": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "SDIV", - "path": "94" - }, - "6783": { - "branch": 528, - "fn": "SafeInt256.mul", - "offset": [ - 525, - 535 - ], - "op": "EQ", - "path": "94" - }, - "6784": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6785": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1A89" - }, - "6788": { - "branch": 528, - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "JUMPI", - "path": "94" - }, - "6789": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "6791": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "DUP1", - "path": "94" - }, - "6792": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "REVERT", - "path": "94" - }, - "6793": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6794": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "PUSH2", - "path": "94", - "value": "0xEDB" - }, - "6797": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "JUMP", - "path": "94" - }, - "6798": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6799": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 566 - ], - "op": "DUP3", - "path": "94", - "statement": 150 - }, - "6800": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 566 - ], - "op": "ISZERO", - "path": "94" - }, - "6801": { - "branch": 529, - "fn": "SafeInt256.mul", - "offset": [ - 560, - 566 - ], - "op": "DUP1", - "path": "94" - }, - "6802": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1AA3" - }, - "6805": { - "branch": 529, - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "JUMPI", - "path": "94" - }, - "6806": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "POP", - "path": "94" - }, - "6807": { - "fn": "SafeInt256.mul", - "offset": [ - 579, - 580 - ], - "op": "DUP2", - "path": "94" - }, - "6808": { - "fn": "SafeInt256.mul", - "offset": [ - 574, - 575 - ], - "op": "DUP4", - "path": "94" - }, - "6809": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 571 - ], - "op": "DUP3", - "path": "94" - }, - "6810": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "DUP2", - "path": "94" - }, - "6811": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1AA0" - }, - "6814": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "JUMPI", - "path": "94" - }, - "6815": { - "dev": "Division by zero", - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "INVALID", - "path": "94" - }, - "6816": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6817": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "SDIV", - "path": "94" - }, - "6818": { - "branch": 530, - "fn": "SafeInt256.mul", - "offset": [ - 570, - 580 - ], - "op": "EQ", - "path": "94" - }, - "6819": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "JUMPDEST", - "path": "94" - }, - "6820": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "PUSH2", - "path": "94", - "value": "0xEDB" - }, - "6823": { - "branch": 530, - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "JUMPI", - "path": "94" - }, - "6824": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "6826": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "DUP1", - "path": "94" - }, - "6827": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "REVERT", - "path": "94" - }, - "6828": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4424, - 5233 - ], - "op": "JUMPDEST", - "path": "76" - }, - "6829": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4521, - 4527 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6831": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4541, - 4557 - ], - "op": "DUP1", - "path": "76" - }, - "6832": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4571, - 4576 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6834": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4602, - 4629 - ], - "op": "DUP1", - "path": "76" - }, - "6835": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4631, - 4660 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6837": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4664, - 4696 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1ABD" - }, - "6840": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4685, - 4695 - ], - "op": "DUP7", - "path": "76" - }, - "6841": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4664, - 4684 - ], - "op": "PUSH2", - "path": "76", - "value": "0x2BB3" - }, - "6844": { - "fn": "AssetRate._getAssetRateStateful", - "jump": "i", - "offset": [ - 4664, - 4696 - ], - "op": "JUMP", - "path": "76" - }, - "6845": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4664, - 4696 - ], - "op": "JUMPDEST", - "path": "76" - }, - "6846": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4601, - 4696 - ], - "op": "SWAP1", - "path": "76" - }, - "6847": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4601, - 4696 - ], - "op": "SWAP3", - "path": "76" - }, - "6848": { - "op": "POP" - }, - "6849": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4601, - 4696 - ], - "op": "SWAP1", - "path": "76" - }, - "6850": { - "op": "POP" - }, - "6851": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4707, - 4718 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6853": { - "op": "PUSH1", - "value": "0x1" - }, - "6855": { - "op": "PUSH1", - "value": "0x1" - }, - "6857": { - "op": "PUSH1", - "value": "0xA0" - }, - "6859": { - "op": "SHL" - }, - "6860": { - "op": "SUB" - }, - "6861": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4732, - 4765 - ], - "op": "DUP4", - "path": "76" - }, - "6862": { - "branch": 444, - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4732, - 4765 - ], - "op": "AND", - "path": "76" - }, - "6863": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4728, - 5166 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1AE2" - }, - "6866": { - "branch": 444, - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4728, - 5166 - ], - "op": "JUMPI", - "path": "76" - }, - "6867": { - "op": "POP" - }, - "6868": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5019, - 5020 - ], - "op": "PUSH1", - "path": "76", - "statement": 151, - "value": "0x0" - }, - "6870": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5019, - 5020 - ], - "op": "SWAP1", - "path": "76" - }, - "6871": { - "op": "POP" - }, - "6872": { - "offset": [ - 658, - 662 - ], - "op": "PUSH5", - "path": "76", - "value": "0x2540BE400" - }, - "6878": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4728, - 5166 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1B64" - }, - "6881": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4728, - 5166 - ], - "op": "JUMP", - "path": "76" - }, - "6882": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4728, - 5166 - ], - "op": "JUMPDEST", - "path": "76" - }, - "6883": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5068 - ], - "op": "DUP3", - "path": "76", - "statement": 152 - }, - "6884": { - "op": "PUSH1", - "value": "0x1" - }, - "6886": { - "op": "PUSH1", - "value": "0x1" - }, - "6888": { - "op": "PUSH1", - "value": "0xA0" - }, - "6890": { - "op": "SHL" - }, - "6891": { - "op": "SUB" - }, - "6892": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5092 - ], - "op": "AND", - "path": "76" - }, - "6893": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5092 - ], - "op": "PUSH4", - "path": "76", - "value": "0x1EE10833" - }, - "6898": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x40" - }, - "6900": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "MLOAD", - "path": "76" - }, - "6901": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP2", - "path": "76" - }, - "6902": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH4", - "path": "76", - "value": "0xFFFFFFFF" - }, - "6907": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "AND", - "path": "76" - }, - "6908": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0xE0" - }, - "6910": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "SHL", - "path": "76" - }, - "6911": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP2", - "path": "76" - }, - "6912": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "MSTORE", - "path": "76" - }, - "6913": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x4" - }, - "6915": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ADD", - "path": "76" - }, - "6916": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x20" - }, - "6918": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x40" - }, - "6920": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "MLOAD", - "path": "76" - }, - "6921": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6922": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP4", - "path": "76" - }, - "6923": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "SUB", - "path": "76" - }, - "6924": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP2", - "path": "76" - }, - "6925": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6927": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP8", - "path": "76" - }, - "6928": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6929": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "EXTCODESIZE", - "path": "76" - }, - "6930": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ISZERO", - "path": "76" - }, - "6931": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6932": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ISZERO", - "path": "76" - }, - "6933": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1B1D" - }, - "6936": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "JUMPI", - "path": "76" - }, - "6937": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6939": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6940": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "REVERT", - "path": "76" - }, - "6941": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "JUMPDEST", - "path": "76" - }, - "6942": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "POP", - "path": "76" - }, - "6943": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "GAS", - "path": "76" - }, - "6944": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "CALL", - "path": "76" - }, - "6945": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ISZERO", - "path": "76" - }, - "6946": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6947": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ISZERO", - "path": "76" - }, - "6948": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1B31" - }, - "6951": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "JUMPI", - "path": "76" - }, - "6952": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "RETURNDATASIZE", - "path": "76" - }, - "6953": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6955": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6956": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "RETURNDATACOPY", - "path": "76" - }, - "6957": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "RETURNDATASIZE", - "path": "76" - }, - "6958": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "6960": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "REVERT", - "path": "76" - }, - "6961": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "JUMPDEST", - "path": "76" - }, - "6962": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "POP", - "path": "76" - }, - "6963": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "POP", - "path": "76" - }, - "6964": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "POP", - "path": "76" - }, - "6965": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "POP", - "path": "76" - }, - "6966": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x40" - }, - "6968": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "MLOAD", - "path": "76" - }, - "6969": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "RETURNDATASIZE", - "path": "76" - }, - "6970": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x1F" - }, - "6972": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "NOT", - "path": "76" - }, - "6973": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x1F" - }, - "6975": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP3", - "path": "76" - }, - "6976": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ADD", - "path": "76" - }, - "6977": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "AND", - "path": "76" - }, - "6978": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP3", - "path": "76" - }, - "6979": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ADD", - "path": "76" - }, - "6980": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP1", - "path": "76" - }, - "6981": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH1", - "path": "76", - "value": "0x40" - }, - "6983": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "MSTORE", - "path": "76" - }, - "6984": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "POP", - "path": "76" - }, - "6985": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "DUP2", - "path": "76" - }, - "6986": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "ADD", - "path": "76" - }, - "6987": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "SWAP1", - "path": "76" - }, - "6988": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1B55" - }, - "6991": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "SWAP2", - "path": "76" - }, - "6992": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "SWAP1", - "path": "76" - }, - "6993": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "PUSH2", - "path": "76", - "value": "0x43D8" - }, - "6996": { - "fn": "AssetRate._getAssetRateStateful", - "jump": "i", - "offset": [ - 5058, - 5094 - ], - "op": "JUMP", - "path": "76" - }, - "6997": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5058, - 5094 - ], - "op": "JUMPDEST", - "path": "76" - }, - "6998": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5051, - 5094 - ], - "op": "SWAP1", - "path": "76" - }, - "6999": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5051, - 5094 - ], - "op": "POP", - "path": "76" - }, - "7000": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5123, - 5124 - ], - "op": "PUSH1", - "path": "76", - "statement": 153, - "value": "0x0" - }, - "7002": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5116, - 5120 - ], - "op": "DUP2", - "path": "76" - }, - "7003": { - "branch": 445, - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5116, - 5124 - ], - "op": "SGT", - "path": "76" - }, - "7004": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5108, - 5125 - ], - "op": "PUSH2", - "path": "76", - "value": "0x1B64" - }, - "7007": { - "branch": 445, - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5108, - 5125 - ], - "op": "JUMPI", - "path": "76" - }, - "7008": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5108, - 5125 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "7010": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5108, - 5125 - ], - "op": "DUP1", - "path": "76" - }, - "7011": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5108, - 5125 - ], - "op": "REVERT", - "path": "76" - }, - "7012": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5108, - 5125 - ], - "op": "JUMPDEST", - "path": "76" - }, - "7013": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5184, - 5188 - ], - "op": "SWAP7", - "path": "76", - "statement": 154 - }, - "7014": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5190, - 5200 - ], - "op": "SWAP2", - "path": "76" - }, - "7015": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5190, - 5200 - ], - "op": "SWAP6", - "path": "76" - }, - "7016": { - "op": "POP" - }, - "7017": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 5190, - 5200 - ], - "op": "SWAP4", - "path": "76" - }, - "7018": { - "op": "POP" - }, - "7019": { - "fn": "AssetRate._getAssetRateStateful", - "offset": [ - 4424, - 5233 - ], - "op": "SWAP2", - "path": "76" - }, - "7020": { - "op": "POP" - }, - "7021": { - "op": "POP" - }, - "7022": { - "fn": "AssetRate._getAssetRateStateful", - "jump": "o", - "offset": [ - 4424, - 5233 - ], - "op": "JUMP", - "path": "76" - }, - "7023": { - "fn": "TokenHandler._getToken", - "offset": [ - 1438, - 2129 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7024": { - "fn": "TokenHandler._getToken", - "offset": [ - 1516, - 1528 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1B77" - }, - "7027": { - "fn": "TokenHandler._getToken", - "offset": [ - 1516, - 1528 - ], - "op": "PUSH2", - "path": "69", - "value": "0x4022" - }, - "7030": { - "fn": "TokenHandler._getToken", - "jump": "i", - "offset": [ - 1516, - 1528 - ], - "op": "JUMP", - "path": "69" - }, - "7031": { - "fn": "TokenHandler._getToken", - "offset": [ - 1516, - 1528 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7032": { - "fn": "TokenHandler._getToken", - "offset": [ - 1540, - 1603 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7034": { - "fn": "TokenHandler._getToken", - "offset": [ - 1606, - 1634 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1B81" - }, - "7037": { - "fn": "TokenHandler._getToken", - "offset": [ - 1606, - 1632 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2BEA" - }, - "7040": { - "fn": "TokenHandler._getToken", - "jump": "i", - "offset": [ - 1606, - 1634 - ], - "op": "JUMP", - "path": "69" - }, - "7041": { - "fn": "TokenHandler._getToken", - "offset": [ - 1606, - 1634 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7042": { - "fn": "TokenHandler._getToken", - "offset": [ - 1644, - 1677 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7044": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "DUP6", - "path": "69" - }, - "7045": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "DUP2", - "path": "69" - }, - "7046": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "MSTORE", - "path": "69" - }, - "7047": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "PUSH1", - "path": "69", - "value": "0x20" - }, - "7049": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "DUP3", - "path": "69" - }, - "7050": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "DUP2", - "path": "69" - }, - "7051": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "MSTORE", - "path": "69" - }, - "7052": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "PUSH1", - "path": "69", - "value": "0x40" - }, - "7054": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "DUP1", - "path": "69" - }, - "7055": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "DUP4", - "path": "69" - }, - "7056": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1697 - ], - "op": "KECCAK256", - "path": "69" - }, - "7057": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "DUP8", - "path": "69" - }, - "7058": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "ISZERO", - "path": "69" - }, - "7059": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "ISZERO", - "path": "69" - }, - "7060": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "DUP5", - "path": "69" - }, - "7061": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "MSTORE", - "path": "69" - }, - "7062": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "DUP3", - "path": "69" - }, - "7063": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "MSTORE", - "path": "69" - }, - "7064": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "SWAP2", - "path": "69" - }, - "7065": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "DUP3", - "path": "69" - }, - "7066": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "SWAP1", - "path": "69" - }, - "7067": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "KECCAK256", - "path": "69" - }, - "7068": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP3", - "path": "69", - "statement": 155 - }, - "7069": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MLOAD", - "path": "69" - }, - "7070": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "PUSH1", - "path": "69", - "value": "0xA0" - }, - "7072": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP2", - "path": "69" - }, - "7073": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ADD", - "path": "69" - }, - "7074": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP5", - "path": "69" - }, - "7075": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MSTORE", - "path": "69" - }, - "7076": { - "fn": "TokenHandler._getToken", - "offset": [ - 1777, - 1802 - ], - "op": "DUP2", - "path": "69" - }, - "7077": { - "fn": "TokenHandler._getToken", - "offset": [ - 1777, - 1802 - ], - "op": "SLOAD", - "path": "69" - }, - "7078": { - "op": "PUSH1", - "value": "0x1" - }, - "7080": { - "op": "PUSH1", - "value": "0x1" - }, - "7082": { - "op": "PUSH1", - "value": "0xA0" - }, - "7084": { - "op": "SHL" - }, - "7085": { - "op": "SUB" - }, - "7086": { - "fn": "TokenHandler._getToken", - "offset": [ - 1777, - 1802 - ], - "op": "DUP2", - "path": "69" - }, - "7087": { - "fn": "TokenHandler._getToken", - "offset": [ - 1777, - 1802 - ], - "op": "AND", - "path": "69" - }, - "7088": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP3", - "path": "69" - }, - "7089": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MSTORE", - "path": "69" - }, - "7090": { - "fn": "TokenHandler._getToken", - "offset": [ - 1836, - 1863 - ], - "op": "PUSH1", - "path": "69", - "value": "0xFF" - }, - "7092": { - "op": "PUSH1", - "value": "0x1" - }, - "7094": { - "op": "PUSH1", - "value": "0xA0" - }, - "7096": { - "op": "SHL" - }, - "7097": { - "fn": "TokenHandler._getToken", - "offset": [ - 1836, - 1863 - ], - "op": "DUP3", - "path": "69" - }, - "7098": { - "fn": "TokenHandler._getToken", - "offset": [ - 1836, - 1863 - ], - "op": "DIV", - "path": "69" - }, - "7099": { - "fn": "TokenHandler._getToken", - "offset": [ - 1836, - 1863 - ], - "op": "DUP2", - "path": "69" - }, - "7100": { - "fn": "TokenHandler._getToken", - "offset": [ - 1836, - 1863 - ], - "op": "AND", - "path": "69" - }, - "7101": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ISZERO", - "path": "69" - }, - "7102": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ISZERO", - "path": "69" - }, - "7103": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7104": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP4", - "path": "69" - }, - "7105": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ADD", - "path": "69" - }, - "7106": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7107": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP1", - "path": "69" - }, - "7108": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7109": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MSTORE", - "path": "69" - }, - "7110": { - "op": "PUSH1", - "value": "0x1" - }, - "7112": { - "op": "PUSH1", - "value": "0xB0" - }, - "7114": { - "op": "SHL" - }, - "7115": { - "fn": "TokenHandler._getToken", - "offset": [ - 1956, - 1982 - ], - "op": "DUP2", - "path": "69" - }, - "7116": { - "fn": "TokenHandler._getToken", - "offset": [ - 1956, - 1982 - ], - "op": "DIV", - "path": "69" - }, - "7117": { - "fn": "TokenHandler._getToken", - "offset": [ - 1956, - 1982 - ], - "op": "DUP5", - "path": "69" - }, - "7118": { - "fn": "TokenHandler._getToken", - "offset": [ - 1956, - 1982 - ], - "op": "AND", - "path": "69" - }, - "7119": { - "fn": "TokenHandler._getToken", - "offset": [ - 1952, - 1954 - ], - "op": "PUSH1", - "path": "69", - "value": "0xA" - }, - "7121": { - "fn": "TokenHandler._getToken", - "offset": [ - 1952, - 1982 - ], - "op": "EXP", - "path": "69" - }, - "7122": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7123": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP3", - "path": "69" - }, - "7124": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ADD", - "path": "69" - }, - "7125": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7126": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP1", - "path": "69" - }, - "7127": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7128": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MSTORE", - "path": "69" - }, - "7129": { - "fn": "TokenHandler._getToken", - "offset": [ - 1540, - 1634 - ], - "op": "SWAP4", - "path": "69" - }, - "7130": { - "fn": "TokenHandler._getToken", - "offset": [ - 1540, - 1634 - ], - "op": "SWAP5", - "path": "69" - }, - "7131": { - "op": "POP" - }, - "7132": { - "fn": "TokenHandler._getToken", - "offset": [ - 1680, - 1709 - ], - "op": "SWAP3", - "path": "69" - }, - "7133": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP2", - "path": "69" - }, - "7134": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7136": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP4", - "path": "69" - }, - "7137": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ADD", - "path": "69" - }, - "7138": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP2", - "path": "69" - }, - "7139": { - "op": "PUSH1", - "value": "0x1" - }, - "7141": { - "op": "PUSH1", - "value": "0xA8" - }, - "7143": { - "op": "SHL" - }, - "7144": { - "fn": "TokenHandler._getToken", - "offset": [ - 2012, - 2034 - ], - "op": "SWAP1", - "path": "69" - }, - "7145": { - "fn": "TokenHandler._getToken", - "offset": [ - 2012, - 2034 - ], - "op": "SWAP2", - "path": "69" - }, - "7146": { - "fn": "TokenHandler._getToken", - "offset": [ - 2012, - 2034 - ], - "op": "DIV", - "path": "69" - }, - "7147": { - "fn": "TokenHandler._getToken", - "offset": [ - 2012, - 2034 - ], - "op": "AND", - "path": "69" - }, - "7148": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7150": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP2", - "path": "69" - }, - "7151": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "GT", - "path": "69" - }, - "7152": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ISZERO", - "path": "69" - }, - "7153": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1BF6" - }, - "7156": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "JUMPI", - "path": "69" - }, - "7157": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "INVALID", - "path": "69" - }, - "7158": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7159": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "DUP2", - "path": "69" - }, - "7160": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MSTORE", - "path": "69" - }, - "7161": { - "fn": "TokenHandler._getToken", - "offset": [ - 2074, - 2107 - ], - "op": "SWAP2", - "path": "69" - }, - "7162": { - "fn": "TokenHandler._getToken", - "offset": [ - 2074, - 2107 - ], - "op": "SLOAD", - "path": "69" - }, - "7163": { - "op": "PUSH1", - "value": "0x1" - }, - "7165": { - "op": "PUSH1", - "value": "0xB8" - }, - "7167": { - "op": "SHL" - }, - "7168": { - "fn": "TokenHandler._getToken", - "offset": [ - 2074, - 2107 - ], - "op": "SWAP1", - "path": "69" - }, - "7169": { - "fn": "TokenHandler._getToken", - "offset": [ - 2074, - 2107 - ], - "op": "DIV", - "path": "69" - }, - "7170": { - "fn": "TokenHandler._getToken", - "offset": [ - 2074, - 2107 - ], - "op": "PUSH9", - "path": "69", - "value": "0xFFFFFFFFFFFFFFFFFF" - }, - "7180": { - "fn": "TokenHandler._getToken", - "offset": [ - 2074, - 2107 - ], - "op": "AND", - "path": "69" - }, - "7181": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "PUSH1", - "path": "69", - "value": "0x20" - }, - "7183": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP1", - "path": "69" - }, - "7184": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP3", - "path": "69" - }, - "7185": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "ADD", - "path": "69" - }, - "7186": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP2", - "path": "69" - }, - "7187": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP1", - "path": "69" - }, - "7188": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP2", - "path": "69" - }, - "7189": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "MSTORE", - "path": "69" - }, - "7190": { - "fn": "TokenHandler._getToken", - "offset": [ - 1739, - 2122 - ], - "op": "SWAP5", - "path": "69" - }, - "7191": { - "fn": "TokenHandler._getToken", - "offset": [ - 1438, - 2129 - ], - "op": "SWAP4", - "path": "69" - }, - "7192": { - "op": "POP" - }, - "7193": { - "op": "POP" - }, - "7194": { - "op": "POP" - }, - "7195": { - "op": "POP" - }, - "7196": { - "fn": "TokenHandler._getToken", - "jump": "o", - "offset": [ - 1438, - 2129 - ], - "op": "JUMP", - "path": "69" - }, - "7197": { - "fn": "SafeInt256.div", - "offset": [ - 1022, - 1261 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7198": { - "fn": "SafeInt256.div", - "offset": [ - 1078, - 1086 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "7200": { - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1109 - ], - "op": "DUP2", - "path": "94", - "statement": 156 - }, - "7201": { - "op": "PUSH1", - "value": "0x0" - }, - "7203": { - "op": "NOT" - }, - "7204": { - "branch": 531, - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1115 - ], - "op": "EQ", - "path": "94" - }, - "7205": { - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1135 - ], - "op": "DUP1", - "path": "94" - }, - "7206": { - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1135 - ], - "op": "ISZERO", - "path": "94" - }, - "7207": { - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1135 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1C33" - }, - "7210": { - "branch": 531, - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1135 - ], - "op": "JUMPI", - "path": "94" - }, - "7211": { - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1135 - ], - "op": "POP", - "path": "94" - }, - "7212": { - "op": "PUSH1", - "value": "0x1" - }, - "7214": { - "op": "PUSH1", - "value": "0xFF" - }, - "7216": { - "op": "SHL" - }, - "7217": { - "fn": "SafeInt256.div", - "offset": [ - 1119, - 1120 - ], - "op": "DUP4", - "path": "94" - }, - "7218": { - "branch": 532, - "fn": "SafeInt256.div", - "offset": [ - 1119, - 1135 - ], - "op": "EQ", - "path": "94" - }, - "7219": { - "fn": "SafeInt256.div", - "offset": [ - 1108, - 1135 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7220": { - "fn": "SafeInt256.div", - "offset": [ - 1106, - 1136 - ], - "op": "ISZERO", - "path": "94" - }, - "7221": { - "fn": "SafeInt256.div", - "offset": [ - 1098, - 1137 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1C3D" - }, - "7224": { - "branch": 532, - "fn": "SafeInt256.div", - "offset": [ - 1098, - 1137 - ], - "op": "JUMPI", - "path": "94" - }, - "7225": { - "fn": "SafeInt256.div", - "offset": [ - 1098, - 1137 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "7227": { - "fn": "SafeInt256.div", - "offset": [ - 1098, - 1137 - ], - "op": "DUP1", - "path": "94" - }, - "7228": { - "fn": "SafeInt256.div", - "offset": [ - 1098, - 1137 - ], - "op": "REVERT", - "path": "94" - }, - "7229": { - "fn": "SafeInt256.div", - "offset": [ - 1098, - 1137 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7230": { - "fn": "SafeInt256.div", - "offset": [ - 1253, - 1254 - ], - "op": "DUP2", - "path": "94", - "statement": 157 - }, - "7231": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1250 - ], - "op": "DUP4", - "path": "94" - }, - "7232": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "DUP2", - "path": "94" - }, - "7233": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1C46" - }, - "7236": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "JUMPI", - "path": "94" - }, - "7237": { - "dev": "Division by zero", - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "INVALID", - "path": "94" - }, - "7238": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7239": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "SDIV", - "path": "94" - }, - "7240": { - "fn": "SafeInt256.div", - "offset": [ - 1249, - 1254 - ], - "op": "SWAP4", - "path": "94" - }, - "7241": { - "fn": "SafeInt256.div", - "offset": [ - 1022, - 1261 - ], - "op": "SWAP3", - "path": "94" - }, - "7242": { - "op": "POP" - }, - "7243": { - "op": "POP" - }, - "7244": { - "op": "POP" - }, - "7245": { - "fn": "SafeInt256.div", - "jump": "o", - "offset": [ - 1022, - 1261 - ], - "op": "JUMP", - "path": "94" - }, - "7246": { - "fn": "TokenHandler.transfer", - "offset": [ - 9098, - 10939 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7247": { - "fn": "TokenHandler.transfer", - "offset": [ - 9524, - 9543 - ], - "op": "DUP1", - "path": "69", - "statement": 158 - }, - "7248": { - "fn": "TokenHandler.transfer", - "offset": [ - 9577, - 9593 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7250": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9563 - ], - "op": "DUP6", - "path": "69" - }, - "7251": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9573 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7253": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9573 - ], - "op": "ADD", - "path": "69" - }, - "7254": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9573 - ], - "op": "MLOAD", - "path": "69" - }, - "7255": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7257": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "DUP2", - "path": "69" - }, - "7258": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "GT", - "path": "69" - }, - "7259": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "ISZERO", - "path": "69" - }, - "7260": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1C61" - }, - "7263": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "JUMPI", - "path": "69" - }, - "7264": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "INVALID", - "path": "69" - }, - "7265": { - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7266": { - "branch": 543, - "fn": "TokenHandler.transfer", - "offset": [ - 9558, - 9593 - ], - "op": "EQ", - "path": "69" - }, - "7267": { - "fn": "TokenHandler.transfer", - "offset": [ - 9554, - 10038 - ], - "op": "ISZERO", - "path": "69" - }, - "7268": { - "fn": "TokenHandler.transfer", - "offset": [ - 9554, - 10038 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1C86" - }, - "7271": { - "branch": 543, - "fn": "TokenHandler.transfer", - "offset": [ - 9554, - 10038 - ], - "op": "JUMPI", - "path": "69" - }, - "7272": { - "fn": "TokenHandler.transfer", - "offset": [ - 9609, - 9637 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7274": { - "fn": "TokenHandler.transfer", - "offset": [ - 9640, - 9670 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1C72" - }, - "7277": { - "fn": "TokenHandler.transfer", - "offset": [ - 9659, - 9669 - ], - "op": "DUP5", - "path": "69" - }, - "7278": { - "fn": "TokenHandler.transfer", - "offset": [ - 9640, - 9658 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF3B" - }, - "7281": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 9640, - 9670 - ], - "op": "JUMP", - "path": "69" - }, - "7282": { - "fn": "TokenHandler.transfer", - "offset": [ - 9640, - 9670 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7283": { - "fn": "TokenHandler.transfer", - "offset": [ - 9609, - 9670 - ], - "op": "SWAP1", - "path": "69" - }, - "7284": { - "fn": "TokenHandler.transfer", - "offset": [ - 9609, - 9670 - ], - "op": "POP", - "path": "69" - }, - "7285": { - "fn": "TokenHandler.transfer", - "offset": [ - 9886, - 10027 - ], - "op": "PUSH2", - "path": "69", - "statement": 159, - "value": "0x1C82" - }, - "7288": { - "fn": "TokenHandler.transfer", - "offset": [ - 9948, - 9963 - ], - "op": "DUP2", - "path": "69" - }, - "7289": { - "fn": "TokenHandler.transfer", - "offset": [ - 9948, - 9976 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7291": { - "fn": "TokenHandler.transfer", - "offset": [ - 9948, - 9976 - ], - "op": "ADD", - "path": "69" - }, - "7292": { - "fn": "TokenHandler.transfer", - "offset": [ - 9948, - 9976 - ], - "op": "MLOAD", - "path": "69" - }, - "7293": { - "fn": "TokenHandler.transfer", - "offset": [ - 9994, - 10013 - ], - "op": "DUP5", - "path": "69" - }, - "7294": { - "fn": "TokenHandler.transfer", - "offset": [ - 9886, - 9930 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2BF7" - }, - "7297": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 9886, - 10027 - ], - "op": "JUMP", - "path": "69" - }, - "7298": { - "fn": "TokenHandler.transfer", - "offset": [ - 9886, - 10027 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7299": { - "fn": "TokenHandler.transfer", - "offset": [ - 9864, - 10027 - ], - "op": "SWAP3", - "path": "69" - }, - "7300": { - "fn": "TokenHandler.transfer", - "offset": [ - 9864, - 10027 - ], - "op": "POP", - "path": "69" - }, - "7301": { - "fn": "TokenHandler.transfer", - "offset": [ - 9554, - 10038 - ], - "op": "POP", - "path": "69" - }, - "7302": { - "fn": "TokenHandler.transfer", - "offset": [ - 9554, - 10038 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7303": { - "fn": "TokenHandler.transfer", - "offset": [ - 10074, - 10075 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7305": { - "fn": "TokenHandler.transfer", - "offset": [ - 10052, - 10071 - ], - "op": "DUP3", - "path": "69" - }, - "7306": { - "branch": 544, - "fn": "TokenHandler.transfer", - "offset": [ - 10052, - 10075 - ], - "op": "SGT", - "path": "69" - }, - "7307": { - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "ISZERO", - "path": "69" - }, - "7308": { - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1CB2" - }, - "7311": { - "branch": 544, - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "JUMPI", - "path": "69" - }, - "7312": { - "fn": "TokenHandler.transfer", - "offset": [ - 10147, - 10164 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7314": { - "fn": "TokenHandler.transfer", - "offset": [ - 10167, - 10221 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1C9C" - }, - "7317": { - "fn": "TokenHandler.transfer", - "offset": [ - 10176, - 10181 - ], - "op": "DUP7", - "path": "69" - }, - "7318": { - "fn": "TokenHandler.transfer", - "offset": [ - 10183, - 10190 - ], - "op": "DUP7", - "path": "69" - }, - "7319": { - "fn": "TokenHandler.transfer", - "offset": [ - 10200, - 10219 - ], - "op": "DUP6", - "path": "69" - }, - "7320": { - "fn": "TokenHandler.transfer", - "offset": [ - 10167, - 10175 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2C89" - }, - "7323": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 10167, - 10221 - ], - "op": "JUMP", - "path": "69" - }, - "7324": { - "fn": "TokenHandler.transfer", - "offset": [ - 10167, - 10221 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7325": { - "fn": "TokenHandler.transfer", - "offset": [ - 10147, - 10221 - ], - "op": "SWAP1", - "path": "69" - }, - "7326": { - "fn": "TokenHandler.transfer", - "offset": [ - 10147, - 10221 - ], - "op": "POP", - "path": "69" - }, - "7327": { - "fn": "TokenHandler.transfer", - "offset": [ - 10386, - 10391 - ], - "op": "DUP6", - "path": "69" - }, - "7328": { - "fn": "TokenHandler.transfer", - "offset": [ - 10386, - 10406 - ], - "op": "PUSH1", - "path": "69", - "value": "0x20" - }, - "7330": { - "fn": "TokenHandler.transfer", - "offset": [ - 10386, - 10406 - ], - "op": "ADD", - "path": "69" - }, - "7331": { - "branch": 545, - "fn": "TokenHandler.transfer", - "offset": [ - 10386, - 10406 - ], - "op": "MLOAD", - "path": "69" - }, - "7332": { - "fn": "TokenHandler.transfer", - "offset": [ - 10382, - 10443 - ], - "op": "ISZERO", - "path": "69" - }, - "7333": { - "fn": "TokenHandler.transfer", - "offset": [ - 10382, - 10443 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1CAC" - }, - "7336": { - "branch": 545, - "fn": "TokenHandler.transfer", - "offset": [ - 10382, - 10443 - ], - "op": "JUMPI", - "path": "69" - }, - "7337": { - "fn": "TokenHandler.transfer", - "offset": [ - 10433, - 10443 - ], - "op": "DUP1", - "path": "69", - "statement": 160 - }, - "7338": { - "fn": "TokenHandler.transfer", - "offset": [ - 10408, - 10443 - ], - "op": "SWAP2", - "path": "69" - }, - "7339": { - "fn": "TokenHandler.transfer", - "offset": [ - 10408, - 10443 - ], - "op": "POP", - "path": "69" - }, - "7340": { - "fn": "TokenHandler.transfer", - "offset": [ - 10382, - 10443 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7341": { - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "POP", - "path": "69" - }, - "7342": { - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF7F" - }, - "7345": { - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "JUMP", - "path": "69" - }, - "7346": { - "fn": "TokenHandler.transfer", - "offset": [ - 10048, - 10933 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7347": { - "fn": "TokenHandler.transfer", - "offset": [ - 10483, - 10498 - ], - "op": "PUSH1", - "path": "69", - "value": "0x3" - }, - "7349": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10469 - ], - "op": "DUP6", - "path": "69" - }, - "7350": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10479 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7352": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10479 - ], - "op": "ADD", - "path": "69" - }, - "7353": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10479 - ], - "op": "MLOAD", - "path": "69" - }, - "7354": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7356": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "DUP2", - "path": "69" - }, - "7357": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "GT", - "path": "69" - }, - "7358": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "ISZERO", - "path": "69" - }, - "7359": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1CC4" - }, - "7362": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "JUMPI", - "path": "69" - }, - "7363": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "INVALID", - "path": "69" - }, - "7364": { - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7365": { - "branch": 546, - "fn": "TokenHandler.transfer", - "offset": [ - 10464, - 10498 - ], - "op": "EQ", - "path": "69" - }, - "7366": { - "fn": "TokenHandler.transfer", - "offset": [ - 10460, - 10933 - ], - "op": "ISZERO", - "path": "69" - }, - "7367": { - "fn": "TokenHandler.transfer", - "offset": [ - 10460, - 10933 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1CE1" - }, - "7370": { - "branch": 546, - "fn": "TokenHandler.transfer", - "offset": [ - 10460, - 10933 - ], - "op": "JUMPI", - "path": "69" - }, - "7371": { - "fn": "TokenHandler.transfer", - "offset": [ - 10592, - 10672 - ], - "op": "PUSH2", - "path": "69", - "statement": 161, - "value": "0x1CDC" - }, - "7374": { - "fn": "TokenHandler.transfer", - "offset": [ - 10628, - 10635 - ], - "op": "DUP5", - "path": "69" - }, - "7375": { - "fn": "TokenHandler.transfer", - "offset": [ - 10645, - 10670 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1CD7" - }, - "7378": { - "fn": "TokenHandler.transfer", - "offset": [ - 10645, - 10664 - ], - "op": "DUP5", - "path": "69" - }, - "7379": { - "fn": "TokenHandler.transfer", - "offset": [ - 10645, - 10668 - ], - "op": "PUSH2", - "path": "69", - "value": "0xEE1" - }, - "7382": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 10645, - 10670 - ], - "op": "JUMP", - "path": "69" - }, - "7383": { - "fn": "TokenHandler.transfer", - "offset": [ - 10645, - 10670 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7384": { - "fn": "TokenHandler.transfer", - "offset": [ - 10592, - 10627 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D7C" - }, - "7387": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 10592, - 10672 - ], - "op": "JUMP", - "path": "69" - }, - "7388": { - "fn": "TokenHandler.transfer", - "offset": [ - 10592, - 10672 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7389": { - "fn": "TokenHandler.transfer", - "offset": [ - 10460, - 10933 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF7F" - }, - "7392": { - "fn": "TokenHandler.transfer", - "offset": [ - 10460, - 10933 - ], - "op": "JUMP", - "path": "69" - }, - "7393": { - "fn": "TokenHandler.transfer", - "offset": [ - 10460, - 10933 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7394": { - "fn": "TokenHandler.transfer", - "offset": [ - 10749, - 10767 - ], - "op": "DUP5", - "path": "69", - "statement": 162 - }, - "7395": { - "fn": "TokenHandler.transfer", - "offset": [ - 10749, - 10767 - ], - "op": "MLOAD", - "path": "69" - }, - "7396": { - "fn": "TokenHandler.transfer", - "offset": [ - 10703, - 10922 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF7F" - }, - "7399": { - "fn": "TokenHandler.transfer", - "offset": [ - 10703, - 10922 - ], - "op": "SWAP1", - "path": "69" - }, - "7400": { - "fn": "TokenHandler.transfer", - "offset": [ - 10785, - 10792 - ], - "op": "DUP6", - "path": "69" - }, - "7401": { - "fn": "TokenHandler.transfer", - "offset": [ - 10882, - 10907 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1CF1" - }, - "7404": { - "fn": "TokenHandler.transfer", - "offset": [ - 10882, - 10901 - ], - "op": "DUP6", - "path": "69" - }, - "7405": { - "fn": "TokenHandler.transfer", - "offset": [ - 10882, - 10905 - ], - "op": "PUSH2", - "path": "69", - "value": "0xEE1" - }, - "7408": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 10882, - 10907 - ], - "op": "JUMP", - "path": "69" - }, - "7409": { - "fn": "TokenHandler.transfer", - "offset": [ - 10882, - 10907 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7410": { - "fn": "TokenHandler.transfer", - "offset": [ - 10703, - 10731 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2DB7" - }, - "7413": { - "fn": "TokenHandler.transfer", - "jump": "i", - "offset": [ - 10703, - 10922 - ], - "op": "JUMP", - "path": "69" - }, - "7414": { - "fn": "SafeInt256.toUint", - "offset": [ - 2397, - 2514 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7415": { - "fn": "SafeInt256.toUint", - "offset": [ - 2446, - 2453 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "7417": { - "fn": "SafeInt256.toUint", - "offset": [ - 2478, - 2479 - ], - "op": "DUP1", - "path": "94", - "statement": 163 - }, - "7418": { - "fn": "SafeInt256.toUint", - "offset": [ - 2473, - 2474 - ], - "op": "DUP3", - "path": "94" - }, - "7419": { - "fn": "SafeInt256.toUint", - "offset": [ - 2473, - 2479 - ], - "op": "SLT", - "path": "94" - }, - "7420": { - "branch": 533, - "fn": "SafeInt256.toUint", - "offset": [ - 2473, - 2479 - ], - "op": "ISZERO", - "path": "94" - }, - "7421": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1D05" - }, - "7424": { - "branch": 533, - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "JUMPI", - "path": "94" - }, - "7425": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "7427": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "DUP1", - "path": "94" - }, - "7428": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "REVERT", - "path": "94" - }, - "7429": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7430": { - "op": "POP" - }, - "7431": { - "fn": "SafeInt256.toUint", - "offset": [ - 2505, - 2506 - ], - "op": "SWAP1", - "path": "94", - "statement": 164 - }, - "7432": { - "fn": "SafeInt256.toUint", - "jump": "o", - "offset": [ - 2397, - 2514 - ], - "op": "JUMP", - "path": "94" - }, - "7433": { - "fn": "TokenHandler.mint", - "offset": [ - 5788, - 7337 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7434": { - "fn": "TokenHandler.mint", - "offset": [ - 5898, - 5904 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7436": { - "fn": "TokenHandler.mint", - "offset": [ - 5898, - 5904 - ], - "op": "DUP1", - "path": "69" - }, - "7437": { - "fn": "TokenHandler.mint", - "offset": [ - 6273, - 6289 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7439": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6259 - ], - "op": "DUP6", - "path": "69" - }, - "7440": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6269 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7442": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6269 - ], - "op": "ADD", - "path": "69" - }, - "7443": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6269 - ], - "op": "MLOAD", - "path": "69" - }, - "7444": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7446": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "DUP2", - "path": "69" - }, - "7447": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "GT", - "path": "69" - }, - "7448": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "ISZERO", - "path": "69" - }, - "7449": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D1E" - }, - "7452": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "JUMPI", - "path": "69" - }, - "7453": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "INVALID", - "path": "69" - }, - "7454": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7455": { - "branch": 547, - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6289 - ], - "op": "EQ", - "path": "69" - }, - "7456": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6391 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D30" - }, - "7459": { - "branch": 547, - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6391 - ], - "op": "JUMPI", - "path": "69" - }, - "7460": { - "op": "PUSH4", - "value": "0x70A08231" - }, - "7465": { - "op": "PUSH1", - "value": "0xE0" - }, - "7467": { - "op": "SHL" - }, - "7468": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6391 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D39" - }, - "7471": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6391 - ], - "op": "JUMP", - "path": "69" - }, - "7472": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6391 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7473": { - "op": "PUSH4", - "value": "0xED1279F" - }, - "7478": { - "op": "PUSH1", - "value": "0xE1" - }, - "7480": { - "op": "SHL" - }, - "7481": { - "fn": "TokenHandler.mint", - "offset": [ - 6249, - 6391 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7482": { - "fn": "TokenHandler.mint", - "offset": [ - 6222, - 6391 - ], - "op": "SWAP1", - "path": "69" - }, - "7483": { - "fn": "TokenHandler.mint", - "offset": [ - 6222, - 6391 - ], - "op": "POP", - "path": "69" - }, - "7484": { - "fn": "TokenHandler.mint", - "offset": [ - 6410, - 6433 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7486": { - "fn": "TokenHandler.mint", - "offset": [ - 6436, - 6531 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D4C" - }, - "7489": { - "fn": "TokenHandler.mint", - "offset": [ - 6473, - 6483 - ], - "op": "DUP7", - "path": "69" - }, - "7490": { - "fn": "TokenHandler.mint", - "offset": [ - 6473, - 6496 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7492": { - "fn": "TokenHandler.mint", - "offset": [ - 6473, - 6496 - ], - "op": "ADD", - "path": "69" - }, - "7493": { - "fn": "TokenHandler.mint", - "offset": [ - 6473, - 6496 - ], - "op": "MLOAD", - "path": "69" - }, - "7494": { - "fn": "TokenHandler.mint", - "offset": [ - 6506, - 6510 - ], - "op": "ADDRESS", - "path": "69" - }, - "7495": { - "fn": "TokenHandler.mint", - "offset": [ - 6513, - 6530 - ], - "op": "DUP5", - "path": "69" - }, - "7496": { - "fn": "TokenHandler.mint", - "offset": [ - 6436, - 6472 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2E2E" - }, - "7499": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 6436, - 6531 - ], - "op": "JUMP", - "path": "69" - }, - "7500": { - "fn": "TokenHandler.mint", - "offset": [ - 6436, - 6531 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7501": { - "fn": "TokenHandler.mint", - "offset": [ - 6410, - 6531 - ], - "op": "SWAP1", - "path": "69" - }, - "7502": { - "op": "POP" - }, - "7503": { - "fn": "TokenHandler.mint", - "offset": [ - 6570, - 6586 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7505": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6556 - ], - "op": "DUP7", - "path": "69" - }, - "7506": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6566 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7508": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6566 - ], - "op": "ADD", - "path": "69" - }, - "7509": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6566 - ], - "op": "MLOAD", - "path": "69" - }, - "7510": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7512": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "DUP2", - "path": "69" - }, - "7513": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "GT", - "path": "69" - }, - "7514": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "ISZERO", - "path": "69" - }, - "7515": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D60" - }, - "7518": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "JUMPI", - "path": "69" - }, - "7519": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "INVALID", - "path": "69" - }, - "7520": { - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7521": { - "branch": 548, - "fn": "TokenHandler.mint", - "offset": [ - 6546, - 6586 - ], - "op": "EQ", - "path": "69" - }, - "7522": { - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "ISZERO", - "path": "69" - }, - "7523": { - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D87" - }, - "7526": { - "branch": 548, - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "JUMPI", - "path": "69" - }, - "7527": { - "fn": "TokenHandler.mint", - "offset": [ - 6602, - 6630 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7529": { - "fn": "TokenHandler.mint", - "offset": [ - 6633, - 6663 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D75" - }, - "7532": { - "fn": "TokenHandler.mint", - "offset": [ - 6652, - 6662 - ], - "op": "DUP7", - "path": "69" - }, - "7533": { - "fn": "TokenHandler.mint", - "offset": [ - 6633, - 6663 - ], - "op": "PUSH2", - "path": "69", - "value": "0xFFFF" - }, - "7536": { - "fn": "TokenHandler.mint", - "offset": [ - 6633, - 6663 - ], - "op": "AND", - "path": "69" - }, - "7537": { - "fn": "TokenHandler.mint", - "offset": [ - 6633, - 6651 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF3B" - }, - "7540": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 6633, - 6663 - ], - "op": "JUMP", - "path": "69" - }, - "7541": { - "fn": "TokenHandler.mint", - "offset": [ - 6633, - 6663 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7542": { - "fn": "TokenHandler.mint", - "offset": [ - 6602, - 6663 - ], - "op": "SWAP1", - "path": "69" - }, - "7543": { - "fn": "TokenHandler.mint", - "offset": [ - 6602, - 6663 - ], - "op": "POP", - "path": "69" - }, - "7544": { - "fn": "TokenHandler.mint", - "offset": [ - 6677, - 6736 - ], - "op": "PUSH2", - "path": "69", - "statement": 165, - "value": "0x1D81" - }, - "7547": { - "fn": "TokenHandler.mint", - "offset": [ - 6694, - 6709 - ], - "op": "DUP2", - "path": "69" - }, - "7548": { - "fn": "TokenHandler.mint", - "offset": [ - 6711, - 6735 - ], - "op": "DUP7", - "path": "69" - }, - "7549": { - "fn": "TokenHandler.mint", - "offset": [ - 6677, - 6693 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2F40" - }, - "7552": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 6677, - 6736 - ], - "op": "JUMP", - "path": "69" - }, - "7553": { - "fn": "TokenHandler.mint", - "offset": [ - 6677, - 6736 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7554": { - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "POP", - "path": "69" - }, - "7555": { - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DCA" - }, - "7558": { - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "JUMP", - "path": "69" - }, - "7559": { - "fn": "TokenHandler.mint", - "offset": [ - 6542, - 7059 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7560": { - "fn": "TokenHandler.mint", - "offset": [ - 6781, - 6797 - ], - "op": "PUSH1", - "path": "69", - "value": "0x1" - }, - "7562": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6767 - ], - "op": "DUP7", - "path": "69" - }, - "7563": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6777 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7565": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6777 - ], - "op": "ADD", - "path": "69" - }, - "7566": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6777 - ], - "op": "MLOAD", - "path": "69" - }, - "7567": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7569": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "DUP2", - "path": "69" - }, - "7570": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "GT", - "path": "69" - }, - "7571": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "ISZERO", - "path": "69" - }, - "7572": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1D99" - }, - "7575": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "JUMPI", - "path": "69" - }, - "7576": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "INVALID", - "path": "69" - }, - "7577": { - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7578": { - "branch": 549, - "fn": "TokenHandler.mint", - "offset": [ - 6757, - 6797 - ], - "op": "EQ", - "path": "69" - }, - "7579": { - "fn": "TokenHandler.mint", - "offset": [ - 6753, - 7059 - ], - "op": "ISZERO", - "path": "69" - }, - "7580": { - "fn": "TokenHandler.mint", - "offset": [ - 6753, - 7059 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DA9" - }, - "7583": { - "branch": 549, - "fn": "TokenHandler.mint", - "offset": [ - 6753, - 7059 - ], - "op": "JUMPI", - "path": "69" - }, - "7584": { - "fn": "TokenHandler.mint", - "offset": [ - 6813, - 6871 - ], - "op": "PUSH2", - "path": "69", - "statement": 166, - "value": "0x1D81" - }, - "7587": { - "fn": "TokenHandler.mint", - "offset": [ - 6834, - 6844 - ], - "op": "DUP7", - "path": "69" - }, - "7588": { - "fn": "TokenHandler.mint", - "offset": [ - 6846, - 6870 - ], - "op": "DUP6", - "path": "69" - }, - "7589": { - "fn": "TokenHandler.mint", - "offset": [ - 6813, - 6833 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2FAB" - }, - "7592": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 6813, - 6871 - ], - "op": "JUMP", - "path": "69" - }, - "7593": { - "fn": "TokenHandler.mint", - "offset": [ - 6753, - 7059 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7594": { - "fn": "TokenHandler.mint", - "offset": [ - 6916, - 6930 - ], - "op": "PUSH1", - "path": "69", - "value": "0x2" - }, - "7596": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6902 - ], - "op": "DUP7", - "path": "69" - }, - "7597": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6912 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "7599": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6912 - ], - "op": "ADD", - "path": "69" - }, - "7600": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6912 - ], - "op": "MLOAD", - "path": "69" - }, - "7601": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "7603": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "DUP2", - "path": "69" - }, - "7604": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "GT", - "path": "69" - }, - "7605": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "ISZERO", - "path": "69" - }, - "7606": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DBB" - }, - "7609": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "JUMPI", - "path": "69" - }, - "7610": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "INVALID", - "path": "69" - }, - "7611": { - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7612": { - "branch": 550, - "fn": "TokenHandler.mint", - "offset": [ - 6892, - 6930 - ], - "op": "EQ", - "path": "69" - }, - "7613": { - "fn": "TokenHandler.mint", - "offset": [ - 6888, - 7059 - ], - "op": "ISZERO", - "path": "69" - }, - "7614": { - "fn": "TokenHandler.mint", - "offset": [ - 6888, - 7059 - ], - "op": "PUSH2", - "path": "69", - "value": "0x7B" - }, - "7617": { - "branch": 550, - "fn": "TokenHandler.mint", - "jump_revert": true, - "offset": [ - 7013, - 7021 - ], - "op": "JUMPI", - "path": "69" - }, - "7618": { - "fn": "TokenHandler.mint", - "offset": [ - 6946, - 6982 - ], - "op": "PUSH2", - "path": "69", - "statement": 167, - "value": "0x1DCA" - }, - "7621": { - "fn": "TokenHandler.mint", - "offset": [ - 6971, - 6981 - ], - "op": "DUP7", - "path": "69" - }, - "7622": { - "fn": "TokenHandler.mint", - "offset": [ - 6946, - 6970 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3057" - }, - "7625": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 6946, - 6982 - ], - "op": "JUMP", - "path": "69" - }, - "7626": { - "fn": "TokenHandler.mint", - "offset": [ - 6946, - 6982 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7627": { - "fn": "TokenHandler.mint", - "offset": [ - 7069, - 7090 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7629": { - "fn": "TokenHandler.mint", - "offset": [ - 7093, - 7188 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DDB" - }, - "7632": { - "fn": "TokenHandler.mint", - "offset": [ - 7130, - 7140 - ], - "op": "DUP8", - "path": "69" - }, - "7633": { - "fn": "TokenHandler.mint", - "offset": [ - 7130, - 7153 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7635": { - "fn": "TokenHandler.mint", - "offset": [ - 7130, - 7153 - ], - "op": "ADD", - "path": "69" - }, - "7636": { - "fn": "TokenHandler.mint", - "offset": [ - 7130, - 7153 - ], - "op": "MLOAD", - "path": "69" - }, - "7637": { - "fn": "TokenHandler.mint", - "offset": [ - 7163, - 7167 - ], - "op": "ADDRESS", - "path": "69" - }, - "7638": { - "fn": "TokenHandler.mint", - "offset": [ - 7170, - 7187 - ], - "op": "DUP6", - "path": "69" - }, - "7639": { - "fn": "TokenHandler.mint", - "offset": [ - 7093, - 7129 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2E2E" - }, - "7642": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 7093, - 7188 - ], - "op": "JUMP", - "path": "69" - }, - "7643": { - "fn": "TokenHandler.mint", - "offset": [ - 7093, - 7188 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7644": { - "fn": "TokenHandler.mint", - "offset": [ - 7069, - 7188 - ], - "op": "SWAP1", - "path": "69" - }, - "7645": { - "op": "POP" - }, - "7646": { - "fn": "TokenHandler.mint", - "offset": [ - 7278, - 7330 - ], - "op": "PUSH2", - "path": "69", - "statement": 168, - "value": "0x1DEF" - }, - "7649": { - "fn": "TokenHandler.mint", - "offset": [ - 7295, - 7329 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DEA" - }, - "7652": { - "fn": "TokenHandler.mint", - "offset": [ - 7069, - 7188 - ], - "op": "DUP3", - "path": "69" - }, - "7653": { - "fn": "TokenHandler.mint", - "offset": [ - 7313, - 7328 - ], - "op": "DUP5", - "path": "69" - }, - "7654": { - "fn": "TokenHandler.mint", - "offset": [ - 7295, - 7312 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3096" - }, - "7657": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 7295, - 7329 - ], - "op": "JUMP", - "path": "69" - }, - "7658": { - "fn": "TokenHandler.mint", - "offset": [ - 7295, - 7329 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7659": { - "fn": "TokenHandler.mint", - "offset": [ - 7278, - 7294 - ], - "op": "PUSH2", - "path": "69", - "value": "0x264D" - }, - "7662": { - "fn": "TokenHandler.mint", - "jump": "i", - "offset": [ - 7278, - 7330 - ], - "op": "JUMP", - "path": "69" - }, - "7663": { - "fn": "TokenHandler.mint", - "offset": [ - 7278, - 7330 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7664": { - "fn": "TokenHandler.mint", - "offset": [ - 7271, - 7330 - ], - "op": "SWAP8", - "path": "69" - }, - "7665": { - "fn": "TokenHandler.mint", - "offset": [ - 5788, - 7337 - ], - "op": "SWAP7", - "path": "69" - }, - "7666": { - "op": "POP" - }, - "7667": { - "op": "POP" - }, - "7668": { - "op": "POP" - }, - "7669": { - "op": "POP" - }, - "7670": { - "op": "POP" - }, - "7671": { - "op": "POP" - }, - "7672": { - "op": "POP" - }, - "7673": { - "fn": "TokenHandler.mint", - "jump": "o", - "offset": [ - 5788, - 7337 - ], - "op": "JUMP", - "path": "69" - }, - "7674": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 12920, - 13714 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7675": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13005, - 13011 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "7677": { - "offset": [ - 429, - 432 - ], - "op": "PUSH4", - "path": "60", - "value": "0x5F5E100" - }, - "7682": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13557, - 13562 - ], - "op": "DUP4", - "path": "69" - }, - "7683": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13557, - 13571 - ], - "op": "PUSH1", - "path": "69", - "value": "0x40" - }, - "7685": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13557, - 13571 - ], - "op": "ADD", - "path": "69" - }, - "7686": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13557, - 13571 - ], - "op": "MLOAD", - "path": "69" - }, - "7687": { - "branch": 551, - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13557, - 13609 - ], - "op": "EQ", - "path": "69" - }, - "7688": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13553, - 13624 - ], - "op": "ISZERO", - "path": "69" - }, - "7689": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13553, - 13624 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1E13" - }, - "7692": { - "branch": 551, - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13553, - 13624 - ], - "op": "JUMPI", - "path": "69" - }, - "7693": { - "op": "POP" - }, - "7694": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13618, - 13624 - ], - "op": "DUP1", - "path": "69", - "statement": 169 - }, - "7695": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13611, - 13624 - ], - "op": "PUSH2", - "path": "69", - "value": "0xEDB" - }, - "7698": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13611, - 13624 - ], - "op": "JUMP", - "path": "69" - }, - "7699": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13553, - 13624 - ], - "op": "JUMPDEST", - "path": "69" - }, - "7700": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13692, - 13706 - ], - "op": "PUSH1", - "path": "69", - "statement": 170, - "value": "0x40" - }, - "7702": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13692, - 13706 - ], - "op": "DUP4", - "path": "69" - }, - "7703": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13692, - 13706 - ], - "op": "ADD", - "path": "69" - }, - "7704": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13692, - 13706 - ], - "op": "MLOAD", - "path": "69" - }, - "7705": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13641, - 13707 - ], - "op": "PUSH2", - "path": "69", - "value": "0xAA3" - }, - "7708": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13641, - 13707 - ], - "op": "SWAP1", - "path": "69" - }, - "7709": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13641, - 13687 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF79" - }, - "7712": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13641, - 13647 - ], - "op": "DUP5", - "path": "69" - }, - "7713": { - "offset": [ - 429, - 432 - ], - "op": "PUSH4", - "path": "60", - "value": "0x5F5E100" - }, - "7718": { - "fn": "TokenHandler.convertToInternal", - "offset": [ - 13641, - 13651 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1A5E" - }, - "7721": { - "fn": "TokenHandler.convertToInternal", - "jump": "i", - "offset": [ - 13641, - 13687 - ], - "op": "JUMP", - "path": "69" - }, - "7722": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3253, - 4074 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7723": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3364, - 3370 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "7725": { - "branch": 405, - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3386, - 3410 - ], - "op": "DUP2", - "path": "70" - }, - "7726": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3382, - 3420 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1E39" - }, - "7729": { - "branch": 405, - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3382, - 3420 - ], - "op": "JUMPI", - "path": "70" - }, - "7730": { - "op": "POP" - }, - "7731": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3419, - 3420 - ], - "op": "PUSH1", - "path": "70", - "statement": 171, - "value": "0x0" - }, - "7733": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3412, - 3420 - ], - "op": "PUSH2", - "path": "70", - "value": "0xEDB" - }, - "7736": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3412, - 3420 - ], - "op": "JUMP", - "path": "70" - }, - "7737": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3382, - 3420 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7738": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3460, - 3461 - ], - "op": "PUSH1", - "path": "70", - "statement": 172, - "value": "0x0" - }, - "7740": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3438, - 3457 - ], - "op": "DUP3", - "path": "70" - }, - "7741": { - "branch": 406, - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3438, - 3461 - ], - "op": "SGT", - "path": "70" - }, - "7742": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3430, - 3462 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1E46" - }, - "7745": { - "branch": 406, - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3430, - 3462 - ], - "op": "JUMPI", - "path": "70" - }, - "7746": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3430, - 3462 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "7748": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3430, - 3462 - ], - "op": "DUP1", - "path": "70" - }, - "7749": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3430, - 3462 - ], - "op": "REVERT", - "path": "70" - }, - "7750": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3430, - 3462 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7751": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3473, - 3501 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "7753": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3504, - 3547 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1E51" - }, - "7756": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3536, - 3546 - ], - "op": "DUP5", - "path": "70" - }, - "7757": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3504, - 3535 - ], - "op": "PUSH2", - "path": "70", - "value": "0xF3B" - }, - "7760": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "jump": "i", - "offset": [ - 3504, - 3547 - ], - "op": "JUMP", - "path": "70" - }, - "7761": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3504, - 3547 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7762": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3473, - 3547 - ], - "op": "SWAP1", - "path": "70" - }, - "7763": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3473, - 3547 - ], - "op": "POP", - "path": "70" - }, - "7764": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3609, - 3621 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "7766": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3624, - 3681 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1E62" - }, - "7769": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3652, - 3667 - ], - "op": "DUP3", - "path": "70" - }, - "7770": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3652, - 3680 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "7772": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3652, - 3680 - ], - "op": "ADD", - "path": "70" - }, - "7773": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3652, - 3680 - ], - "op": "MLOAD", - "path": "70" - }, - "7774": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3624, - 3651 - ], - "op": "PUSH2", - "path": "70", - "value": "0x30F3" - }, - "7777": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "jump": "i", - "offset": [ - 3624, - 3681 - ], - "op": "JUMP", - "path": "70" - }, - "7778": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3624, - 3681 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7779": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3609, - 3681 - ], - "op": "SWAP1", - "path": "70" - }, - "7780": { - "op": "POP" - }, - "7781": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3800, - 3801 - ], - "op": "PUSH1", - "path": "70", - "value": "0x2" - }, - "7783": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3792, - 3801 - ], - "op": "DUP2", - "path": "70" - }, - "7784": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3792, - 3801 - ], - "op": "SDIV", - "path": "70" - }, - "7785": { - "offset": [ - 457, - 461 - ], - "op": "PUSH12", - "path": "70", - "value": "0x33B2E3C9FD0803CE8000000" - }, - "7798": { - "op": "PUSH1", - "value": "0x1" - }, - "7800": { - "op": "PUSH1", - "value": "0x1" - }, - "7802": { - "op": "PUSH1", - "value": "0xFF" - }, - "7804": { - "op": "SHL" - }, - "7805": { - "op": "SUB" - }, - "7806": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3916, - 3944 - ], - "op": "DUP3", - "path": "70", - "statement": 173 - }, - "7807": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3916, - 3944 - ], - "op": "SWAP1", - "path": "70" - }, - "7808": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3916, - 3944 - ], - "op": "SUB", - "path": "70" - }, - "7809": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3915, - 3951 - ], - "op": "SDIV", - "path": "70" - }, - "7810": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3892, - 3911 - ], - "op": "DUP6", - "path": "70" - }, - "7811": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3892, - 3951 - ], - "op": "SGT", - "path": "70" - }, - "7812": { - "branch": 407, - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3892, - 3951 - ], - "op": "ISZERO", - "path": "70" - }, - "7813": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3884, - 3952 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1E8D" - }, - "7816": { - "branch": 407, - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3884, - 3952 - ], - "op": "JUMPI", - "path": "70" - }, - "7817": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3884, - 3952 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "7819": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3884, - 3952 - ], - "op": "DUP1", - "path": "70" - }, - "7820": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3884, - 3952 - ], - "op": "REVERT", - "path": "70" - }, - "7821": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3884, - 3952 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7822": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4062, - 4067 - ], - "op": "DUP2", - "path": "70", - "statement": 174 - }, - "7823": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4049, - 4058 - ], - "op": "DUP2", - "path": "70" - }, - "7824": { - "offset": [ - 457, - 461 - ], - "op": "PUSH12", - "path": "70", - "value": "0x33B2E3C9FD0803CE8000000" - }, - "7837": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4021, - 4040 - ], - "op": "DUP8", - "path": "70" - }, - "7838": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4021, - 4046 - ], - "op": "MUL", - "path": "70" - }, - "7839": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4021, - 4058 - ], - "op": "ADD", - "path": "70" - }, - "7840": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "DUP2", - "path": "70" - }, - "7841": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1EA6" - }, - "7844": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "JUMPI", - "path": "70" - }, - "7845": { - "dev": "Division by zero", - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "INVALID", - "path": "70" - }, - "7846": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "JUMPDEST", - "path": "70" - }, - "7847": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "SDIV", - "path": "70" - }, - "7848": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 4020, - 4067 - ], - "op": "SWAP7", - "path": "70" - }, - "7849": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "offset": [ - 3253, - 4074 - ], - "op": "SWAP6", - "path": "70" - }, - "7850": { - "op": "POP" - }, - "7851": { - "op": "POP" - }, - "7852": { - "op": "POP" - }, - "7853": { - "op": "POP" - }, - "7854": { - "op": "POP" - }, - "7855": { - "op": "POP" - }, - "7856": { - "fn": "AaveHandler.convertToScaledBalanceExternal", - "jump": "o", - "offset": [ - 3253, - 4074 - ], - "op": "JUMP", - "path": "70" - }, - "7857": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7858": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10405, - 10440 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "7860": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10442, - 10476 - ], - "op": "DUP1", - "path": "67" - }, - "7861": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10488, - 10511 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "7863": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10514, - 10565 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1EC7" - }, - "7866": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10541, - 10553 - ], - "op": "DUP7", - "path": "67" - }, - "7867": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10541, - 10564 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "7869": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10541, - 10564 - ], - "op": "ADD", - "path": "67" - }, - "7870": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10541, - 10564 - ], - "op": "MLOAD", - "path": "67" - }, - "7871": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10514, - 10565 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "7874": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10514, - 10565 - ], - "op": "AND", - "path": "67" - }, - "7875": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10514, - 10540 - ], - "op": "PUSH2", - "path": "67", - "value": "0x10A4" - }, - "7878": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 10514, - 10565 - ], - "op": "JUMP", - "path": "67" - }, - "7879": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10514, - 10565 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7880": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10488, - 10565 - ], - "op": "SWAP1", - "path": "67" - }, - "7881": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10488, - 10565 - ], - "op": "POP", - "path": "67" - }, - "7882": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10785, - 10819 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "7884": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10910 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1EE2" - }, - "7887": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10863, - 10875 - ], - "op": "DUP8", - "path": "67" - }, - "7888": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10863, - 10909 - ], - "op": "PUSH1", - "path": "67", - "value": "0x80" - }, - "7890": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10863, - 10909 - ], - "op": "ADD", - "path": "67" - }, - "7891": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10863, - 10909 - ], - "op": "MLOAD", - "path": "67" - }, - "7892": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10844 - ], - "op": "DUP4", - "path": "67" - }, - "7893": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10862 - ], - "op": "PUSH2", - "path": "67", - "value": "0xF87" - }, - "7896": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10862 - ], - "op": "SWAP1", - "path": "67" - }, - "7897": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10910 - ], - "op": "SWAP2", - "path": "67" - }, - "7898": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10910 - ], - "op": "SWAP1", - "path": "67" - }, - "7899": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10910 - ], - "op": "PUSH4", - "path": "67", - "value": "0xFFFFFFFF" - }, - "7904": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10910 - ], - "op": "AND", - "path": "67" - }, - "7905": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 10834, - 10910 - ], - "op": "JUMP", - "path": "67" - }, - "7906": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10834, - 10910 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7907": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10785, - 10910 - ], - "op": "SWAP1", - "path": "67" - }, - "7908": { - "op": "POP" - }, - "7909": { - "branch": 469, - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10925, - 10957 - ], - "op": "DUP1", - "path": "67" - }, - "7910": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10921, - 12631 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1EF7" - }, - "7913": { - "branch": 469, - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10921, - 12631 - ], - "op": "JUMPI", - "path": "67" - }, - "7914": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10981, - 10982 - ], - "op": "PUSH1", - "path": "67", - "statement": 175, - "value": "0x0" - }, - "7916": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10984, - 10985 - ], - "op": "DUP1", - "path": "67" - }, - "7917": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "SWAP4", - "path": "67" - }, - "7918": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "POP", - "path": "67" - }, - "7919": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "SWAP4", - "path": "67" - }, - "7920": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "POP", - "path": "67" - }, - "7921": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "POP", - "path": "67" - }, - "7922": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "POP", - "path": "67" - }, - "7923": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F5F" - }, - "7926": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10973, - 10986 - ], - "op": "JUMP", - "path": "67" - }, - "7927": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10921, - 12631 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7928": { - "branch": 470, - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11025 - ], - "op": "DUP5", - "path": "67" - }, - "7929": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11060 - ], - "op": "DUP1", - "path": "67" - }, - "7930": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11060 - ], - "op": "ISZERO", - "path": "67" - }, - "7931": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11060 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F04" - }, - "7934": { - "branch": 470, - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11060 - ], - "op": "JUMPI", - "path": "67" - }, - "7935": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11060 - ], - "op": "POP", - "path": "67" - }, - "7936": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11059, - 11060 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "7938": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11029, - 11056 - ], - "op": "DUP2", - "path": "67" - }, - "7939": { - "branch": 471, - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11029, - 11060 - ], - "op": "SLT", - "path": "67" - }, - "7940": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11007, - 11060 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7941": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "ISZERO", - "path": "67" - }, - "7942": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F39" - }, - "7945": { - "branch": 471, - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "JUMPI", - "path": "67" - }, - "7946": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11694, - 11717 - ], - "op": "DUP7", - "path": "67", - "statement": 176 - }, - "7947": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11694, - 11717 - ], - "op": "MLOAD", - "path": "67" - }, - "7948": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F26" - }, - "7951": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "SWAP1", - "path": "67" - }, - "7952": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "7955": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "AND", - "path": "67" - }, - "7956": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11735, - 11742 - ], - "op": "DUP8", - "path": "67" - }, - "7957": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11814, - 11847 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F1D" - }, - "7960": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11814, - 11841 - ], - "op": "DUP5", - "path": "67" - }, - "7961": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11814, - 11845 - ], - "op": "PUSH2", - "path": "67", - "value": "0xEE1" - }, - "7964": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 11814, - 11847 - ], - "op": "JUMP", - "path": "67" - }, - "7965": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11814, - 11847 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7966": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11669 - ], - "op": "DUP6", - "path": "67" - }, - "7967": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11669 - ], - "op": "SWAP3", - "path": "67" - }, - "7968": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "SWAP2", - "path": "67" - }, - "7969": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "SWAP1", - "path": "67" - }, - "7970": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11676 - ], - "op": "PUSH2", - "path": "67", - "value": "0x317E" - }, - "7973": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 11659, - 11862 - ], - "op": "JUMP", - "path": "67" - }, - "7974": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11659, - 11862 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7975": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11628, - 11862 - ], - "op": "SWAP4", - "path": "67" - }, - "7976": { - "op": "POP" - }, - "7977": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12068, - 12125 - ], - "op": "PUSH2", - "path": "67", - "statement": 177, - "value": "0x1F32" - }, - "7980": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12068, - 12078 - ], - "op": "DUP3", - "path": "67" - }, - "7981": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12097, - 12124 - ], - "op": "DUP3", - "path": "67" - }, - "7982": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12068, - 12096 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1DFA" - }, - "7985": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 12068, - 12125 - ], - "op": "JUMP", - "path": "67" - }, - "7986": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12068, - 12125 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7987": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12038, - 12125 - ], - "op": "SWAP3", - "path": "67" - }, - "7988": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12038, - 12125 - ], - "op": "POP", - "path": "67" - }, - "7989": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F5C" - }, - "7992": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "JUMP", - "path": "67" - }, - "7993": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "JUMPDEST", - "path": "67" - }, - "7994": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12412, - 12435 - ], - "op": "DUP7", - "path": "67", - "statement": 178 - }, - "7995": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12412, - 12435 - ], - "op": "MLOAD", - "path": "67" - }, - "7996": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12465 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1F4D" - }, - "7999": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12465 - ], - "op": "SWAP1", - "path": "67" - }, - "8000": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12393 - ], - "op": "DUP4", - "path": "67" - }, - "8001": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12393 - ], - "op": "SWAP1", - "path": "67" - }, - "8002": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12403, - 12410 - ], - "op": "DUP9", - "path": "67" - }, - "8003": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12403, - 12410 - ], - "op": "SWAP1", - "path": "67" - }, - "8004": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12465 - ], - "op": "PUSH2", - "path": "67", - "value": "0xFFFF" - }, - "8007": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12465 - ], - "op": "AND", - "path": "67" - }, - "8008": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12437, - 12464 - ], - "op": "DUP5", - "path": "67" - }, - "8009": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12402 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1C4E" - }, - "8012": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 12383, - 12465 - ], - "op": "JUMP", - "path": "67" - }, - "8013": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12383, - 12465 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8014": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12352, - 12465 - ], - "op": "SWAP4", - "path": "67" - }, - "8015": { - "op": "POP" - }, - "8016": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12562, - 12620 - ], - "op": "PUSH2", - "path": "67", - "statement": 179, - "value": "0x1F59" - }, - "8019": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12562, - 12572 - ], - "op": "DUP3", - "path": "67" - }, - "8020": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12352, - 12465 - ], - "op": "DUP6", - "path": "67" - }, - "8021": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12562, - 12590 - ], - "op": "PUSH2", - "path": "67", - "value": "0x1DFA" - }, - "8024": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "i", - "offset": [ - 12562, - 12620 - ], - "op": "JUMP", - "path": "67" - }, - "8025": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12562, - 12620 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8026": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12532, - 12620 - ], - "op": "SWAP3", - "path": "67" - }, - "8027": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 12532, - 12620 - ], - "op": "POP", - "path": "67" - }, - "8028": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 11003, - 12631 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8029": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "POP", - "path": "67" - }, - "8030": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "POP", - "path": "67" - }, - "8031": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8032": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "SWAP4", - "path": "67" - }, - "8033": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "POP", - "path": "67" - }, - "8034": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "SWAP4", - "path": "67" - }, - "8035": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "SWAP2", - "path": "67" - }, - "8036": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "POP", - "path": "67" - }, - "8037": { - "fn": "BalanceHandler._finalizeTransfers", - "offset": [ - 10254, - 12637 - ], - "op": "POP", - "path": "67" - }, - "8038": { - "fn": "BalanceHandler._finalizeTransfers", - "jump": "o", - "offset": [ - 10254, - 12637 - ], - "op": "JUMP", - "path": "67" - }, - "8039": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8040": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4603, - 4626 - ], - "op": "DUP3", - "path": "68" - }, - "8041": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4603, - 4626 - ], - "op": "MLOAD", - "path": "68" - }, - "8042": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4470, - 4495 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8044": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4470, - 4495 - ], - "op": "SWAP1", - "path": "68" - }, - "8045": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4527, - 4542 - ], - "op": "TIMESTAMP", - "path": "68" - }, - "8046": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4527, - 4542 - ], - "op": "SWAP1", - "path": "68" - }, - "8047": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4470, - 4495 - ], - "op": "DUP3", - "path": "68" - }, - "8048": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4470, - 4495 - ], - "op": "SWAP1", - "path": "68" - }, - "8049": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4575, - 4627 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1F7D" - }, - "8052": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4575, - 4627 - ], - "op": "SWAP1", - "path": "68" - }, - "8053": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4575, - 4627 - ], - "op": "PUSH2", - "path": "68", - "value": "0xFFFF" - }, - "8056": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4575, - 4627 - ], - "op": "AND", - "path": "68" - }, - "8057": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4575, - 4602 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3214" - }, - "8060": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 4575, - 4627 - ], - "op": "JUMP", - "path": "68" - }, - "8061": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4575, - 4627 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8062": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4552, - 4627 - ], - "op": "SWAP1", - "path": "68" - }, - "8063": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4552, - 4627 - ], - "op": "POP", - "path": "68" - }, - "8064": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4795, - 4827 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8066": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4830, - 4968 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1F90" - }, - "8069": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4875, - 4887 - ], - "op": "DUP3", - "path": "68" - }, - "8070": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4901, - 4913 - ], - "op": "DUP9", - "path": "68" - }, - "8071": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4901, - 4935 - ], - "op": "PUSH1", - "path": "68", - "value": "0xC0" - }, - "8073": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4901, - 4935 - ], - "op": "ADD", - "path": "68" - }, - "8074": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4901, - 4935 - ], - "op": "MLOAD", - "path": "68" - }, - "8075": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4949, - 4958 - ], - "op": "DUP6", - "path": "68" - }, - "8076": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4830, - 4861 - ], - "op": "PUSH2", - "path": "68", - "value": "0x323A" - }, - "8079": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 4830, - 4968 - ], - "op": "JUMP", - "path": "68" - }, - "8080": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4830, - 4968 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8081": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4795, - 4968 - ], - "op": "SWAP1", - "path": "68" - }, - "8082": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4795, - 4968 - ], - "op": "POP", - "path": "68" - }, - "8083": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4999, - 5157 - ], - "op": "PUSH2", - "path": "68", - "statement": 180, - "value": "0x1F9E" - }, - "8086": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5039, - 5051 - ], - "op": "DUP8", - "path": "68" - }, - "8087": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5065, - 5077 - ], - "op": "DUP4", - "path": "68" - }, - "8088": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5091, - 5115 - ], - "op": "DUP4", - "path": "68" - }, - "8089": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5129, - 5147 - ], - "op": "DUP9", - "path": "68" - }, - "8090": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4999, - 5025 - ], - "op": "PUSH2", - "path": "68", - "value": "0x331D" - }, - "8093": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 4999, - 5157 - ], - "op": "JUMP", - "path": "68" - }, - "8094": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4999, - 5157 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8095": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4979, - 5157 - ], - "op": "SWAP4", - "path": "68" - }, - "8096": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4979, - 5157 - ], - "op": "POP", - "path": "68" - }, - "8097": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5234, - 5252 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8099": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5255, - 5303 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1FAB" - }, - "8102": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5290, - 5302 - ], - "op": "DUP4", - "path": "68" - }, - "8103": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5255, - 5289 - ], - "op": "PUSH2", - "path": "68", - "value": "0x344A" - }, - "8106": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 5255, - 5303 - ], - "op": "JUMP", - "path": "68" - }, - "8107": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5255, - 5303 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8108": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5234, - 5303 - ], - "op": "SWAP1", - "path": "68" - }, - "8109": { - "op": "POP" - }, - "8110": { - "op": "PUSH1", - "value": "0x1" - }, - "8112": { - "op": "PUSH1", - "value": "0x1" - }, - "8114": { - "op": "PUSH1", - "value": "0xA0" - }, - "8116": { - "op": "SHL" - }, - "8117": { - "op": "SUB" - }, - "8118": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5317, - 5348 - ], - "op": "DUP2", - "path": "68" - }, - "8119": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5317, - 5348 - ], - "op": "AND", - "path": "68" - }, - "8120": { - "branch": 491, - "fn": "Incentives.claimIncentives", - "offset": [ - 5317, - 5348 - ], - "op": "ISZERO", - "path": "68" - }, - "8121": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5313, - 6068 - ], - "op": "PUSH2", - "path": "68", - "value": "0x2033" - }, - "8124": { - "branch": 491, - "fn": "Incentives.claimIncentives", - "offset": [ - 5313, - 6068 - ], - "op": "JUMPI", - "path": "68" - }, - "8125": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 5372 - ], - "op": "DUP1", - "path": "68", - "statement": 181 - }, - "8126": { - "op": "PUSH1", - "value": "0x1" - }, - "8128": { - "op": "PUSH1", - "value": "0x1" - }, - "8130": { - "op": "PUSH1", - "value": "0xA0" - }, - "8132": { - "op": "SHL" - }, - "8133": { - "op": "SUB" - }, - "8134": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 5385 - ], - "op": "AND", - "path": "68" - }, - "8135": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 5385 - ], - "op": "PUSH4", - "path": "68", - "value": "0x9FC27B92" - }, - "8140": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5403, - 5410 - ], - "op": "DUP9", - "path": "68" - }, - "8141": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5662 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1FD9" - }, - "8144": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5633 - ], - "op": "DUP12", - "path": "68" - }, - "8145": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5653 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "8147": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5653 - ], - "op": "ADD", - "path": "68" - }, - "8148": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5653 - ], - "op": "MLOAD", - "path": "68" - }, - "8149": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5660 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1CF6" - }, - "8152": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 5621, - 5662 - ], - "op": "JUMP", - "path": "68" - }, - "8153": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5621, - 5662 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8154": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5680, - 5698 - ], - "op": "DUP10", - "path": "68" - }, - "8155": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5974, - 5986 - ], - "op": "DUP13", - "path": "68" - }, - "8156": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5974, - 6008 - ], - "op": "PUSH1", - "path": "68", - "value": "0xC0" - }, - "8158": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5974, - 6008 - ], - "op": "ADD", - "path": "68" - }, - "8159": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5974, - 6008 - ], - "op": "MLOAD", - "path": "68" - }, - "8160": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6026, - 6043 - ], - "op": "DUP11", - "path": "68" - }, - "8161": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "8163": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "MLOAD", - "path": "68" - }, - "8164": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP7", - "path": "68" - }, - "8165": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH4", - "path": "68", - "value": "0xFFFFFFFF" - }, - "8170": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "AND", - "path": "68" - }, - "8171": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0xE0" - }, - "8173": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SHL", - "path": "68" - }, - "8174": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP2", - "path": "68" - }, - "8175": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "MSTORE", - "path": "68" - }, - "8176": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x4" - }, - "8178": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "ADD", - "path": "68" - }, - "8179": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH2", - "path": "68", - "value": "0x2000" - }, - "8182": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SWAP6", - "path": "68" - }, - "8183": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SWAP5", - "path": "68" - }, - "8184": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SWAP4", - "path": "68" - }, - "8185": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SWAP3", - "path": "68" - }, - "8186": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SWAP2", - "path": "68" - }, - "8187": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SWAP1", - "path": "68" - }, - "8188": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH2", - "path": "68", - "value": "0x4857" - }, - "8191": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 5364, - 6057 - ], - "op": "JUMP", - "path": "68" - }, - "8192": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8193": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8195": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "8197": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "MLOAD", - "path": "68" - }, - "8198": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP1", - "path": "68" - }, - "8199": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP4", - "path": "68" - }, - "8200": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "SUB", - "path": "68" - }, - "8201": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP2", - "path": "68" - }, - "8202": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8204": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP8", - "path": "68" - }, - "8205": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP1", - "path": "68" - }, - "8206": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "EXTCODESIZE", - "path": "68" - }, - "8207": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "ISZERO", - "path": "68" - }, - "8208": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP1", - "path": "68" - }, - "8209": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "ISZERO", - "path": "68" - }, - "8210": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH2", - "path": "68", - "value": "0x201A" - }, - "8213": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "JUMPI", - "path": "68" - }, - "8214": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8216": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP1", - "path": "68" - }, - "8217": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "REVERT", - "path": "68" - }, - "8218": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8219": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "POP", - "path": "68" - }, - "8220": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "GAS", - "path": "68" - }, - "8221": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "CALL", - "path": "68" - }, - "8222": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "ISZERO", - "path": "68" - }, - "8223": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP1", - "path": "68" - }, - "8224": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "ISZERO", - "path": "68" - }, - "8225": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH2", - "path": "68", - "value": "0x202E" - }, - "8228": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "JUMPI", - "path": "68" - }, - "8229": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "RETURNDATASIZE", - "path": "68" - }, - "8230": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8232": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "DUP1", - "path": "68" - }, - "8233": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "RETURNDATACOPY", - "path": "68" - }, - "8234": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "RETURNDATASIZE", - "path": "68" - }, - "8235": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "8237": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "REVERT", - "path": "68" - }, - "8238": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8239": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "POP", - "path": "68" - }, - "8240": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "POP", - "path": "68" - }, - "8241": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "POP", - "path": "68" - }, - "8242": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5364, - 6057 - ], - "op": "POP", - "path": "68" - }, - "8243": { - "fn": "Incentives.claimIncentives", - "offset": [ - 5313, - 6068 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8244": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6082, - 6103 - ], - "op": "DUP5", - "path": "68" - }, - "8245": { - "branch": 492, - "fn": "Incentives.claimIncentives", - "offset": [ - 6082, - 6103 - ], - "op": "ISZERO", - "path": "68" - }, - "8246": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6078, - 6163 - ], - "op": "PUSH2", - "path": "68", - "value": "0x2043" - }, - "8249": { - "branch": 492, - "fn": "Incentives.claimIncentives", - "offset": [ - 6078, - 6163 - ], - "op": "JUMPI", - "path": "68" - }, - "8250": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6105, - 6163 - ], - "op": "PUSH2", - "path": "68", - "statement": 182, - "value": "0x2043" - }, - "8253": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6136, - 6143 - ], - "op": "DUP8", - "path": "68" - }, - "8254": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6145, - 6162 - ], - "op": "DUP7", - "path": "68" - }, - "8255": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6105, - 6135 - ], - "op": "PUSH2", - "path": "68", - "value": "0x34BC" - }, - "8258": { - "fn": "Incentives.claimIncentives", - "jump": "i", - "offset": [ - 6105, - 6163 - ], - "op": "JUMP", - "path": "68" - }, - "8259": { - "fn": "Incentives.claimIncentives", - "offset": [ - 6105, - 6163 - ], - "op": "JUMPDEST", - "path": "68" - }, - "8260": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8261": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8262": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8263": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8264": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "SWAP4", - "path": "68" - }, - "8265": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "SWAP3", - "path": "68" - }, - "8266": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8267": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8268": { - "fn": "Incentives.claimIncentives", - "offset": [ - 4318, - 6170 - ], - "op": "POP", - "path": "68" - }, - "8269": { - "fn": "Incentives.claimIncentives", - "jump": "o", - "offset": [ - 4318, - 6170 - ], - "op": "JUMP", - "path": "68" - }, - "8270": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19219, - 20628 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8271": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19451, - 19519 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "8273": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19522, - 19552 - ], - "op": "PUSH2", - "path": "67", - "value": "0x2058" - }, - "8276": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19522, - 19550 - ], - "op": "PUSH2", - "path": "67", - "value": "0x2B98" - }, - "8279": { - "fn": "BalanceHandler._setBalanceStorage", - "jump": "i", - "offset": [ - 19522, - 19552 - ], - "op": "JUMP", - "path": "67" - }, - "8280": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19522, - 19552 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8281": { - "op": "PUSH1", - "value": "0x1" - }, - "8283": { - "op": "PUSH1", - "value": "0x1" - }, - "8285": { - "op": "PUSH1", - "value": "0xA0" - }, - "8287": { - "op": "SHL" - }, - "8288": { - "op": "SUB" - }, - "8289": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "DUP9", - "path": "67" - }, - "8290": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "AND", - "path": "67" - }, - "8291": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19562, - 19599 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "8293": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "SWAP1", - "path": "67" - }, - "8294": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "DUP2", - "path": "67" - }, - "8295": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "MSTORE", - "path": "67" - }, - "8296": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "PUSH1", - "path": "67", - "value": "0x20" - }, - "8298": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "DUP3", - "path": "67" - }, - "8299": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "DUP2", - "path": "67" - }, - "8300": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "MSTORE", - "path": "67" - }, - "8301": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "PUSH1", - "path": "67", - "value": "0x40" - }, - "8303": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "DUP1", - "path": "67" - }, - "8304": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "DUP4", - "path": "67" - }, - "8305": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19616 - ], - "op": "KECCAK256", - "path": "67" - }, - "8306": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "DUP11", - "path": "67" - }, - "8307": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "DUP5", - "path": "67" - }, - "8308": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "MSTORE", - "path": "67" - }, - "8309": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "SWAP1", - "path": "67" - }, - "8310": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "SWAP2", - "path": "67" - }, - "8311": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "MSTORE", - "path": "67" - }, - "8312": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "SWAP1", - "path": "67" - }, - "8313": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19602, - 19628 - ], - "op": "KECCAK256", - "path": "67" - }, - "8314": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19451, - 19552 - ], - "op": "SWAP1", - "path": "67" - }, - "8315": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19451, - 19552 - ], - "op": "SWAP2", - "path": "67" - }, - "8316": { - "op": "POP" - }, - "8317": { - "op": "PUSH11", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "8329": { - "op": "NOT" - }, - "8330": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19677 - ], - "op": "DUP7", - "path": "67", - "statement": 183 - }, - "8331": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19677 - ], - "op": "SLT", - "path": "67" - }, - "8332": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19677 - ], - "op": "DUP1", - "path": "67" - }, - "8333": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19677 - ], - "op": "ISZERO", - "path": "67" - }, - "8334": { - "branch": 472, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19677 - ], - "op": "SWAP1", - "path": "67" - }, - "8335": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19711 - ], - "op": "PUSH2", - "path": "67", - "value": "0x20A3" - }, - "8338": { - "branch": 472, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19711 - ], - "op": "JUMPI", - "path": "67" - }, - "8339": { - "op": "POP" - }, - "8340": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19696, - 19711 - ], - "op": "PUSH11", - "path": "67", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "8352": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19681, - 19711 - ], - "op": "DUP7", - "path": "67" - }, - "8353": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19681, - 19711 - ], - "op": "SGT", - "path": "67" - }, - "8354": { - "branch": 473, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19681, - 19711 - ], - "op": "ISZERO", - "path": "67" - }, - "8355": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19647, - 19711 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8356": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19639, - 19712 - ], - "op": "PUSH2", - "path": "67", - "value": "0x20AC" - }, - "8359": { - "branch": 473, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19639, - 19712 - ], - "op": "JUMPI", - "path": "67" - }, - "8360": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19639, - 19712 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "8362": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19639, - 19712 - ], - "op": "DUP1", - "path": "67" - }, - "8363": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19639, - 19712 - ], - "op": "REVERT", - "path": "67" - }, - "8364": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19639, - 19712 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8365": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19868, - 19869 - ], - "op": "PUSH1", - "path": "67", - "statement": 184, - "value": "0x0" - }, - "8367": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19864 - ], - "op": "DUP6", - "path": "67" - }, - "8368": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19869 - ], - "op": "SLT", - "path": "67" - }, - "8369": { - "branch": 474, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19869 - ], - "op": "ISZERO", - "path": "67" - }, - "8370": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19906 - ], - "op": "DUP1", - "path": "67" - }, - "8371": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19906 - ], - "op": "ISZERO", - "path": "67" - }, - "8372": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19906 - ], - "op": "PUSH2", - "path": "67", - "value": "0x20C7" - }, - "8375": { - "branch": 474, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19906 - ], - "op": "JUMPI", - "path": "67" - }, - "8376": { - "op": "POP" - }, - "8377": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19890, - 19906 - ], - "op": "PUSH10", - "path": "67", - "value": "0xFFFFFFFFFFFFFFFFFFFF" - }, - "8388": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19873, - 19906 - ], - "op": "DUP6", - "path": "67" - }, - "8389": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19873, - 19906 - ], - "op": "SGT", - "path": "67" - }, - "8390": { - "branch": 475, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19873, - 19906 - ], - "op": "ISZERO", - "path": "67" - }, - "8391": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19851, - 19906 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8392": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19843, - 19907 - ], - "op": "PUSH2", - "path": "67", - "value": "0x20D0" - }, - "8395": { - "branch": 475, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19843, - 19907 - ], - "op": "JUMPI", - "path": "67" - }, - "8396": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19843, - 19907 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "8398": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19843, - 19907 - ], - "op": "DUP1", - "path": "67" - }, - "8399": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19843, - 19907 - ], - "op": "REVERT", - "path": "67" - }, - "8400": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 19843, - 19907 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8401": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20044, - 20062 - ], - "op": "DUP4", - "path": "67", - "statement": 185 - }, - "8402": { - "branch": 476, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20044, - 20062 - ], - "op": "ISZERO", - "path": "67" - }, - "8403": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20036, - 20063 - ], - "op": "PUSH2", - "path": "67", - "value": "0x20DB" - }, - "8406": { - "branch": 476, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20036, - 20063 - ], - "op": "JUMPI", - "path": "67" - }, - "8407": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20036, - 20063 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "8409": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20036, - 20063 - ], - "op": "DUP1", - "path": "67" - }, - "8410": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20036, - 20063 - ], - "op": "REVERT", - "path": "67" - }, - "8411": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20036, - 20063 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8412": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20302, - 20318 - ], - "op": "PUSH7", - "path": "67", - "statement": 186, - "value": "0xFFFFFFFFFFFFFF" - }, - "8420": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20278, - 20318 - ], - "op": "DUP4", - "path": "67" - }, - "8421": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20278, - 20318 - ], - "op": "GT", - "path": "67" - }, - "8422": { - "branch": 477, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20278, - 20318 - ], - "op": "ISZERO", - "path": "67" - }, - "8423": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20270, - 20319 - ], - "op": "PUSH2", - "path": "67", - "value": "0x20EF" - }, - "8426": { - "branch": 477, - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20270, - 20319 - ], - "op": "JUMPI", - "path": "67" - }, - "8427": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20270, - 20319 - ], - "op": "PUSH1", - "path": "67", - "value": "0x0" - }, - "8429": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20270, - 20319 - ], - "op": "DUP1", - "path": "67" - }, - "8430": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20270, - 20319 - ], - "op": "REVERT", - "path": "67" - }, - "8431": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20270, - 20319 - ], - "op": "JUMPDEST", - "path": "67" - }, - "8432": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "DUP1", - "path": "67", - "statement": 187 - }, - "8433": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SLOAD", - "path": "67" - }, - "8434": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "PUSH7", - "path": "67", - "statement": 188, - "value": "0xFFFFFFFFFFFFFF" - }, - "8442": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP1", - "path": "67" - }, - "8443": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP4", - "path": "67" - }, - "8444": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "AND", - "path": "67" - }, - "8445": { - "op": "PUSH1", - "value": "0x1" - }, - "8447": { - "op": "PUSH1", - "value": "0x70" - }, - "8449": { - "op": "SHL" - }, - "8450": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "MUL", - "path": "67" - }, - "8451": { - "op": "PUSH7", - "value": "0xFFFFFFFFFFFFFF" - }, - "8459": { - "op": "PUSH1", - "value": "0x70" - }, - "8461": { - "op": "SHL" - }, - "8462": { - "op": "NOT" - }, - "8463": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20464 - ], - "op": "PUSH1", - "path": "67", - "statement": 189, - "value": "0xA" - }, - "8465": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP8", - "path": "67", - "statement": 190 - }, - "8466": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP1", - "path": "67" - }, - "8467": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP8", - "path": "67" - }, - "8468": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SIGNEXTEND", - "path": "67" - }, - "8469": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "PUSH11", - "path": "67", - "value": "0xFFFFFFFFFFFFFFFFFFFFFF" - }, - "8481": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "AND", - "path": "67" - }, - "8482": { - "op": "PUSH1", - "value": "0x1" - }, - "8484": { - "op": "PUSH1", - "value": "0xA8" - }, - "8486": { - "op": "SHL" - }, - "8487": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "MUL", - "path": "67" - }, - "8488": { - "op": "PUSH1", - "value": "0x1" - }, - "8490": { - "op": "PUSH1", - "value": "0x1" - }, - "8492": { - "op": "PUSH1", - "value": "0xA8" - }, - "8494": { - "op": "SHL" - }, - "8495": { - "op": "SUB" - }, - "8496": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "PUSH4", - "path": "67", - "value": "0xFFFFFFFF" - }, - "8501": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP1", - "path": "67" - }, - "8502": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP7", - "path": "67" - }, - "8503": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "AND", - "path": "67" - }, - "8504": { - "op": "PUSH1", - "value": "0x1" - }, - "8506": { - "op": "PUSH1", - "value": "0x50" - }, - "8508": { - "op": "SHL" - }, - "8509": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "MUL", - "path": "67" - }, - "8510": { - "op": "PUSH4", - "value": "0xFFFFFFFF" - }, - "8515": { - "op": "PUSH1", - "value": "0x50" - }, - "8517": { - "op": "SHL" - }, - "8518": { - "op": "NOT" - }, - "8519": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "PUSH10", - "path": "67", - "value": "0xFFFFFFFFFFFFFFFFFFFF" - }, - "8530": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP1", - "path": "67" - }, - "8531": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP9", - "path": "67" - }, - "8532": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "AND", - "path": "67" - }, - "8533": { - "op": "PUSH10", - "value": "0xFFFFFFFFFFFFFFFFFFFF" - }, - "8544": { - "op": "NOT" - }, - "8545": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP1", - "path": "67" - }, - "8546": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP7", - "path": "67" - }, - "8547": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "AND", - "path": "67" - }, - "8548": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP6", - "path": "67" - }, - "8549": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP1", - "path": "67" - }, - "8550": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "SWAP6", - "path": "67" - }, - "8551": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20374, - 20426 - ], - "op": "OR", - "path": "67" - }, - "8552": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP7", - "path": "67" - }, - "8553": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP1", - "path": "67" - }, - "8554": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP7", - "path": "67" - }, - "8555": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "AND", - "path": "67" - }, - "8556": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP4", - "path": "67" - }, - "8557": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP1", - "path": "67" - }, - "8558": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "SWAP4", - "path": "67" - }, - "8559": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20436, - 20488 - ], - "op": "OR", - "path": "67" - }, - "8560": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP4", - "path": "67" - }, - "8561": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP1", - "path": "67" - }, - "8562": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP4", - "path": "67" - }, - "8563": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "AND", - "path": "67" - }, - "8564": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP4", - "path": "67" - }, - "8565": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP1", - "path": "67" - }, - "8566": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "SWAP4", - "path": "67" - }, - "8567": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20498, - 20545 - ], - "op": "OR", - "path": "67" - }, - "8568": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP4", - "path": "67" - }, - "8569": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP1", - "path": "67" - }, - "8570": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP4", - "path": "67" - }, - "8571": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "AND", - "path": "67" - }, - "8572": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP3", - "path": "67" - }, - "8573": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP1", - "path": "67" - }, - "8574": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP3", - "path": "67" - }, - "8575": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "OR", - "path": "67" - }, - "8576": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP1", - "path": "67" - }, - "8577": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SWAP2", - "path": "67" - }, - "8578": { - "fn": "BalanceHandler._setBalanceStorage", - "offset": [ - 20555, - 20621 - ], - "op": "SSTORE", - "path": "67" - }, - "8579": { - "op": "POP" - }, - "8580": { - "op": "POP" - }, - "8581": { - "op": "POP" - }, - "8582": { - "fn": "BalanceHandler._setBalanceStorage", - "jump": "o", - "offset": [ - 19219, - 20628 - ], - "op": "JUMP", - "path": "67" - }, - "8583": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8584": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5435, - 5445 - ], - "op": "DUP3", - "path": "66", - "statement": 191 - }, - "8585": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5432 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "8587": { - "branch": 421, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5445 - ], - "op": "LT", - "path": "66" - }, - "8588": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "DUP1", - "path": "66" - }, - "8589": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "ISZERO", - "path": "66" - }, - "8590": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2199" - }, - "8593": { - "branch": 421, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "JUMPI", - "path": "66" - }, - "8594": { - "op": "POP" - }, - "8595": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "8598": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5449, - 5487 - ], - "op": "DUP4", - "path": "66" - }, - "8599": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5449, - 5487 - ], - "op": "GT", - "path": "66" - }, - "8600": { - "branch": 422, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5449, - 5487 - ], - "op": "ISZERO", - "path": "66" - }, - "8601": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8602": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "PUSH2", - "path": "66", - "value": "0x21A2" - }, - "8605": { - "branch": 422, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "JUMPI", - "path": "66" - }, - "8606": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "8608": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "DUP1", - "path": "66" - }, - "8609": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "REVERT", - "path": "66" - }, - "8610": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8611": { - "branch": 423, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5715 - ], - "op": "DUP2", - "path": "66" - }, - "8612": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "DUP1", - "path": "66" - }, - "8613": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "ISZERO", - "path": "66" - }, - "8614": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "PUSH2", - "path": "66", - "value": "0x21B6" - }, - "8617": { - "branch": 423, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "JUMPI", - "path": "66" - }, - "8618": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "POP", - "path": "66" - }, - "8619": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5754, - 5764 - ], - "op": "DUP3", - "path": "66" - }, - "8620": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5733 - ], - "op": "DUP5", - "path": "66" - }, - "8621": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5750 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "8623": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5750 - ], - "op": "ADD", - "path": "66" - }, - "8624": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5750 - ], - "op": "MLOAD", - "path": "66" - }, - "8625": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5764 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "8628": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5764 - ], - "op": "AND", - "path": "66" - }, - "8629": { - "branch": 424, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5764 - ], - "op": "EQ", - "path": "66" - }, - "8630": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8631": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "ISZERO", - "path": "66" - }, - "8632": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "PUSH2", - "path": "66", - "value": "0x21C0" - }, - "8635": { - "branch": 424, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "JUMPI", - "path": "66" - }, - "8636": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5766, - 5773 - ], - "op": "PUSH2", - "path": "66", - "statement": 192, - "value": "0x16D2" - }, - "8639": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5766, - 5773 - ], - "op": "JUMP", - "path": "66" - }, - "8640": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8641": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "8643": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "DUP5", - "path": "66" - }, - "8644": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "ADD", - "path": "66" - }, - "8645": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "MLOAD", - "path": "66" - }, - "8646": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5783, - 5797 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "8648": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5783, - 5797 - ], - "op": "SWAP1", - "path": "66" - }, - "8649": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5783, - 5797 - ], - "op": "DUP2", - "path": "66" - }, - "8650": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8651": { - "op": "PUSH1", - "value": "0x1" - }, - "8653": { - "op": "PUSH1", - "value": "0x1" - }, - "8655": { - "op": "PUSH1", - "value": "0x70" - }, - "8657": { - "op": "SHL" - }, - "8658": { - "op": "SUB" - }, - "8659": { - "op": "NOT" - }, - "8660": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6691, - 6705 - ], - "op": "DUP3", - "path": "66" - }, - "8661": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6691, - 6705 - ], - "op": "AND", - "path": "66" - }, - "8662": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6691, - 6705 - ], - "op": "ISZERO", - "path": "66" - }, - "8663": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "PUSH2", - "path": "66", - "value": "0x233B" - }, - "8666": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMPI", - "path": "66" - }, - "8667": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6767, - 6789 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF0" - }, - "8669": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "DUP3", - "path": "66" - }, - "8670": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "SWAP1", - "path": "66" - }, - "8671": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "SHR", - "path": "66" - }, - "8672": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "8675": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "AND", - "path": "66" - }, - "8676": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6894 - ], - "op": "DUP7", - "path": "66" - }, - "8677": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6894 - ], - "op": "DUP2", - "path": "66" - }, - "8678": { - "branch": 425, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6894 - ], - "op": "EQ", - "path": "66" - }, - "8679": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "DUP1", - "path": "66" - }, - "8680": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "ISZERO", - "path": "66" - }, - "8681": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "PUSH2", - "path": "66", - "value": "0x21EF" - }, - "8684": { - "branch": 425, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "JUMPI", - "path": "66" - }, - "8685": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "POP", - "path": "66" - }, - "8686": { - "branch": 426, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6898, - 6906 - ], - "op": "DUP6", - "path": "66" - }, - "8687": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8688": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "ISZERO", - "path": "66" - }, - "8689": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2227" - }, - "8692": { - "branch": 426, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "JUMPI", - "path": "66" - }, - "8693": { - "op": "POP" - }, - "8694": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "PUSH1", - "path": "66", - "statement": 193, - "value": "0x80" - }, - "8696": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "DUP8", - "path": "66" - }, - "8697": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "ADD", - "path": "66" - }, - "8698": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "DUP1", - "path": "66" - }, - "8699": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "MLOAD", - "path": "66" - }, - "8700": { - "op": "PUSH1", - "value": "0x1" - }, - "8702": { - "op": "PUSH1", - "value": "0x1" - }, - "8704": { - "op": "PUSH1", - "value": "0xF0" - }, - "8706": { - "op": "SHL" - }, - "8707": { - "op": "SUB" - }, - "8708": { - "op": "NOT" - }, - "8709": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7088 - ], - "op": "DUP7", - "path": "66" - }, - "8710": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7088 - ], - "op": "AND", - "path": "66" - }, - "8711": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7102, - 7104 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "8713": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7093, - 7104 - ], - "op": "SWAP1", - "path": "66" - }, - "8714": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7093, - 7104 - ], - "op": "SWAP4", - "path": "66" - }, - "8715": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7093, - 7104 - ], - "op": "MUL", - "path": "66" - }, - "8716": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SWAP3", - "path": "66" - }, - "8717": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SWAP1", - "path": "66" - }, - "8718": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SWAP3", - "path": "66" - }, - "8719": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SHR", - "path": "66" - }, - "8720": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "SWAP2", - "path": "66" - }, - "8721": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "SWAP1", - "path": "66" - }, - "8722": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "SWAP2", - "path": "66" - }, - "8723": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "OR", - "path": "66" - }, - "8724": { - "op": "PUSH1", - "value": "0x1" - }, - "8726": { - "op": "PUSH1", - "value": "0x1" - }, - "8728": { - "op": "PUSH1", - "value": "0x70" - }, - "8730": { - "op": "SHL" - }, - "8731": { - "op": "SUB" - }, - "8732": { - "op": "NOT" - }, - "8733": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6965, - 7106 - ], - "op": "AND", - "path": "66" - }, - "8734": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6965, - 7106 - ], - "op": "SWAP1", - "path": "66" - }, - "8735": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6965, - 7106 - ], - "op": "MSTORE", - "path": "66" - }, - "8736": { - "op": "POP" - }, - "8737": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7124, - 7131 - ], - "op": "PUSH2", - "path": "66", - "statement": 194, - "value": "0x16D2" - }, - "8740": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7124, - 7131 - ], - "op": "SWAP1", - "path": "66" - }, - "8741": { - "op": "POP" - }, - "8742": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7124, - 7131 - ], - "op": "JUMP", - "path": "66" - }, - "8743": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8744": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7239, - 7249 - ], - "op": "DUP7", - "path": "66" - }, - "8745": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7235 - ], - "op": "DUP2", - "path": "66" - }, - "8746": { - "branch": 427, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7249 - ], - "op": "EQ", - "path": "66" - }, - "8747": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "DUP1", - "path": "66" - }, - "8748": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "ISZERO", - "path": "66" - }, - "8749": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2234" - }, - "8752": { - "branch": 427, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "JUMPI", - "path": "66" - }, - "8753": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "POP", - "path": "66" - }, - "8754": { - "branch": 428, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7254, - 7262 - ], - "op": "DUP6", - "path": "66" - }, - "8755": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7253, - 7262 - ], - "op": "ISZERO", - "path": "66" - }, - "8756": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8757": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "ISZERO", - "path": "66" - }, - "8758": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2289" - }, - "8761": { - "branch": 428, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "JUMPI", - "path": "66" - }, - "8762": { - "op": "PUSH1", - "value": "0x1" - }, - "8764": { - "op": "PUSH1", - "value": "0x1" - }, - "8766": { - "op": "PUSH1", - "value": "0xF0" - }, - "8768": { - "op": "SHL" - }, - "8769": { - "op": "SUB" - }, - "8770": { - "op": "NOT" - }, - "8771": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7369, - 7383 - ], - "op": "DUP6", - "path": "66", - "statement": 195 - }, - "8772": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7369, - 7383 - ], - "op": "AND", - "path": "66" - }, - "8773": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7368, - 7383 - ], - "op": "NOT", - "path": "66" - }, - "8774": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP3", - "path": "66" - }, - "8775": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP1", - "path": "66" - }, - "8776": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP3", - "path": "66" - }, - "8777": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "AND", - "path": "66" - }, - "8778": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP2", - "path": "66" - }, - "8779": { - "op": "PUSH1", - "value": "0x3" - }, - "8781": { - "op": "PUSH1", - "value": "0xFE" - }, - "8783": { - "op": "SHL" - }, - "8784": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7405, - 7455 - ], - "op": "DUP4", - "path": "66" - }, - "8785": { - "branch": 429, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7405, - 7455 - ], - "op": "AND", - "path": "66" - }, - "8786": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7401, - 7478 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2267" - }, - "8789": { - "branch": 429, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7401, - 7478 - ], - "op": "JUMPI", - "path": "66" - }, - "8790": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7476, - 7478 - ], - "op": "PUSH1", - "path": "66", - "statement": 196, - "value": "0x10" - }, - "8792": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7472 - ], - "op": "DUP4", - "path": "66" - }, - "8793": { - "op": "PUSH1", - "value": "0x1" - }, - "8795": { - "op": "PUSH1", - "value": "0x1" - }, - "8797": { - "op": "PUSH1", - "value": "0x70" - }, - "8799": { - "op": "SHL" - }, - "8800": { - "op": "SUB" - }, - "8801": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "NOT", - "path": "66" - }, - "8802": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "AND", - "path": "66" - }, - "8803": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "SWAP1", - "path": "66" - }, - "8804": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "SHL", - "path": "66" - }, - "8805": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7457, - 7478 - ], - "op": "SWAP3", - "path": "66" - }, - "8806": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7457, - 7478 - ], - "op": "POP", - "path": "66" - }, - "8807": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7401, - 7478 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8808": { - "op": "POP" - }, - "8809": { - "op": "PUSH1", - "value": "0x1" - }, - "8811": { - "op": "PUSH1", - "value": "0x1" - }, - "8813": { - "op": "PUSH1", - "value": "0x70" - }, - "8815": { - "op": "SHL" - }, - "8816": { - "op": "SUB" - }, - "8817": { - "op": "NOT" - }, - "8818": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "SWAP2", - "path": "66", - "statement": 197 - }, - "8819": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "DUP3", - "path": "66" - }, - "8820": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "AND", - "path": "66" - }, - "8821": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7560, - 7562 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "8823": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7551, - 7562 - ], - "op": "SWAP1", - "path": "66" - }, - "8824": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7551, - 7562 - ], - "op": "SWAP2", - "path": "66" - }, - "8825": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7551, - 7562 - ], - "op": "MUL", - "path": "66" - }, - "8826": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "SHR", - "path": "66" - }, - "8827": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "SWAP2", - "path": "66" - }, - "8828": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "SWAP1", - "path": "66" - }, - "8829": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "SWAP2", - "path": "66" - }, - "8830": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "OR", - "path": "66" - }, - "8831": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7564 - ], - "op": "AND", - "path": "66" - }, - "8832": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7527 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "8834": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7527 - ], - "op": "DUP6", - "path": "66" - }, - "8835": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7527 - ], - "op": "ADD", - "path": "66" - }, - "8836": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7564 - ], - "op": "MSTORE", - "path": "66" - }, - "8837": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7582, - 7589 - ], - "op": "PUSH2", - "path": "66", - "statement": 198, - "value": "0x16D2" - }, - "8840": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7582, - 7589 - ], - "op": "JUMP", - "path": "66" - }, - "8841": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8842": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7695, - 7705 - ], - "op": "DUP7", - "path": "66" - }, - "8843": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7692 - ], - "op": "DUP2", - "path": "66" - }, - "8844": { - "branch": 430, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7705 - ], - "op": "GT", - "path": "66" - }, - "8845": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "DUP1", - "path": "66" - }, - "8846": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "ISZERO", - "path": "66" - }, - "8847": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2295" - }, - "8850": { - "branch": 430, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "JUMPI", - "path": "66" - }, - "8851": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "POP", - "path": "66" - }, - "8852": { - "branch": 431, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7709, - 7717 - ], - "op": "DUP6", - "path": "66" - }, - "8853": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8854": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "ISZERO", - "path": "66" - }, - "8855": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "PUSH2", - "path": "66", - "value": "0x22EF" - }, - "8858": { - "branch": 431, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "JUMPI", - "path": "66" - }, - "8859": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8046, - 8049 - ], - "op": "PUSH1", - "path": "66", - "statement": 199, - "value": "0x80" - }, - "8861": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "DUP9", - "path": "66" - }, - "8862": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "DUP2", - "path": "66" - }, - "8863": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "ADD", - "path": "66" - }, - "8864": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "MLOAD", - "path": "66" - }, - "8865": { - "op": "PUSH1", - "value": "0x1" - }, - "8867": { - "op": "PUSH1", - "value": "0x1" - }, - "8869": { - "op": "PUSH1", - "value": "0xF0" - }, - "8871": { - "op": "SHL" - }, - "8872": { - "op": "SUB" - }, - "8873": { - "op": "NOT" - }, - "8874": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "PUSH1", - "path": "66", - "statement": 200, - "value": "0xF0" - }, - "8876": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "DUP11", - "path": "66" - }, - "8877": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "SWAP1", - "path": "66" - }, - "8878": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "SHL", - "path": "66" - }, - "8879": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7798 - ], - "op": "DUP9", - "path": "66" - }, - "8880": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7798 - ], - "op": "OR", - "path": "66" - }, - "8881": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7756, - 7799 - ], - "op": "DUP2", - "path": "66" - }, - "8882": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7756, - 7799 - ], - "op": "AND", - "path": "66" - }, - "8883": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7813, - 7815 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "8885": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7804, - 7815 - ], - "op": "DUP7", - "path": "66" - }, - "8886": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7804, - 7815 - ], - "op": "MUL", - "path": "66" - }, - "8887": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7756, - 7816 - ], - "op": "SHR", - "path": "66" - }, - "8888": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP7", - "path": "66" - }, - "8889": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP1", - "path": "66" - }, - "8890": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP7", - "path": "66" - }, - "8891": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "OR", - "path": "66" - }, - "8892": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP6", - "path": "66" - }, - "8893": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8049 - ], - "op": "SWAP2", - "path": "66" - }, - "8894": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8049 - ], - "op": "SHL", - "path": "66" - }, - "8895": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8049 - ], - "op": "AND", - "path": "66" - }, - "8896": { - "branch": 432, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8010, - 8058 - ], - "op": "ISZERO", - "path": "66" - }, - "8897": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "PUSH2", - "path": "66", - "value": "0x22C9" - }, - "8900": { - "branch": 432, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "JUMPI", - "path": "66" - }, - "8901": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "8903": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "DUP1", - "path": "66" - }, - "8904": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "REVERT", - "path": "66" - }, - "8905": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8906": { - "op": "POP" - }, - "8907": { - "op": "PUSH1", - "value": "0x1" - }, - "8909": { - "op": "PUSH1", - "value": "0x1" - }, - "8911": { - "op": "PUSH1", - "value": "0x70" - }, - "8913": { - "op": "SHL" - }, - "8914": { - "op": "SUB" - }, - "8915": { - "op": "NOT" - }, - "8916": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "SWAP2", - "path": "66", - "statement": 201 - }, - "8917": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "DUP3", - "path": "66" - }, - "8918": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "AND", - "path": "66" - }, - "8919": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8212, - 8213 - ], - "op": "PUSH1", - "path": "66", - "value": "0x1" - }, - "8921": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "SWAP2", - "path": "66" - }, - "8922": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "SWAP1", - "path": "66" - }, - "8923": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "SWAP2", - "path": "66" - }, - "8924": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "ADD", - "path": "66" - }, - "8925": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8217, - 8219 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "8927": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8202, - 8219 - ], - "op": "MUL", - "path": "66" - }, - "8928": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "SHR", - "path": "66" - }, - "8929": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "SWAP2", - "path": "66" - }, - "8930": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "SWAP1", - "path": "66" - }, - "8931": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "SWAP2", - "path": "66" - }, - "8932": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "OR", - "path": "66" - }, - "8933": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8221 - ], - "op": "AND", - "path": "66" - }, - "8934": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8178 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "8936": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8178 - ], - "op": "DUP6", - "path": "66" - }, - "8937": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8178 - ], - "op": "ADD", - "path": "66" - }, - "8938": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8221 - ], - "op": "MSTORE", - "path": "66" - }, - "8939": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8239, - 8246 - ], - "op": "PUSH2", - "path": "66", - "statement": 202, - "value": "0x16D2" - }, - "8942": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8239, - 8246 - ], - "op": "JUMP", - "path": "66" - }, - "8943": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8944": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8364, - 8374 - ], - "op": "DUP7", - "path": "66" - }, - "8945": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8361 - ], - "op": "DUP2", - "path": "66" - }, - "8946": { - "branch": 433, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8374 - ], - "op": "GT", - "path": "66" - }, - "8947": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "DUP1", - "path": "66" - }, - "8948": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "ISZERO", - "path": "66" - }, - "8949": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "PUSH2", - "path": "66", - "value": "0x22FC" - }, - "8952": { - "branch": 433, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "JUMPI", - "path": "66" - }, - "8953": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "POP", - "path": "66" - }, - "8954": { - "branch": 434, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8379, - 8387 - ], - "op": "DUP6", - "path": "66" - }, - "8955": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8378, - 8387 - ], - "op": "ISZERO", - "path": "66" - }, - "8956": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8957": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "ISZERO", - "path": "66" - }, - "8958": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "PUSH2", - "path": "66", - "value": "0x230A" - }, - "8961": { - "branch": 434, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "JUMPI", - "path": "66" - }, - "8962": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66", - "statement": 203 - }, - "8963": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66" - }, - "8964": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66" - }, - "8965": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66" - }, - "8966": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "PUSH2", - "path": "66", - "value": "0x16D2" - }, - "8969": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "JUMP", - "path": "66" - }, - "8970": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "JUMPDEST", - "path": "66" - }, - "8971": { - "op": "POP" - }, - "8972": { - "op": "PUSH1", - "value": "0x1" - }, - "8974": { - "op": "PUSH1", - "value": "0x1" - }, - "8976": { - "op": "PUSH1", - "value": "0xF0" - }, - "8978": { - "op": "SHL" - }, - "8979": { - "op": "SUB" - }, - "8980": { - "op": "NOT" - }, - "8981": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8452 - ], - "op": "DUP3", - "path": "66", - "statement": 204 - }, - "8982": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8452 - ], - "op": "AND", - "path": "66" - }, - "8983": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8466, - 8468 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "8985": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8457, - 8468 - ], - "op": "DUP3", - "path": "66" - }, - "8986": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8457, - 8468 - ], - "op": "DUP2", - "path": "66" - }, - "8987": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8457, - 8468 - ], - "op": "MUL", - "path": "66" - }, - "8988": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SWAP2", - "path": "66" - }, - "8989": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SWAP1", - "path": "66" - }, - "8990": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SWAP2", - "path": "66" - }, - "8991": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SHR", - "path": "66" - }, - "8992": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP4", - "path": "66" - }, - "8993": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP1", - "path": "66" - }, - "8994": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP4", - "path": "66" - }, - "8995": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "OR", - "path": "66" - }, - "8996": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP3", - "path": "66" - }, - "8997": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP2", - "path": "66", - "statement": 205 - }, - "8998": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP1", - "path": "66" - }, - "8999": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP2", - "path": "66" - }, - "9000": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SHL", - "path": "66" - }, - "9001": { - "op": "PUSH1", - "value": "0x1" - }, - "9003": { - "op": "PUSH1", - "value": "0x1" - }, - "9005": { - "op": "PUSH1", - "value": "0x80" - }, - "9007": { - "op": "SHL" - }, - "9008": { - "op": "SUB" - }, - "9009": { - "op": "NOT" - }, - "9010": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "AND", - "path": "66" - }, - "9011": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP1", - "path": "66" - }, - "9012": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8529, - 8530 - ], - "op": "PUSH1", - "path": "66", - "statement": 206, - "value": "0x1" - }, - "9014": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8519, - 8530 - ], - "op": "ADD", - "path": "66" - }, - "9015": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "PUSH2", - "path": "66", - "value": "0x21CA" - }, - "9018": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMP", - "path": "66" - }, - "9019": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9020": { - "branch": 435, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8616, - 8624 - ], - "op": "DUP5", - "path": "66" - }, - "9021": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8611, - 8633 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2348" - }, - "9024": { - "branch": 435, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8611, - 8633 - ], - "op": "JUMPI", - "path": "66" - }, - "9025": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "POP", - "path": "66", - "statement": 207 - }, - "9026": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "POP", - "path": "66" - }, - "9027": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "POP", - "path": "66" - }, - "9028": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "PUSH2", - "path": "66", - "value": "0x16D2" - }, - "9031": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "JUMP", - "path": "66" - }, - "9032": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8611, - 8633 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9033": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8733, - 8734 - ], - "op": "PUSH1", - "path": "66", - "statement": 208, - "value": "0x9" - }, - "9035": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8724, - 8730 - ], - "op": "DUP2", - "path": "66" - }, - "9036": { - "branch": 436, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8724, - 8734 - ], - "op": "LT", - "path": "66" - }, - "9037": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2355" - }, - "9040": { - "branch": 436, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "JUMPI", - "path": "66" - }, - "9041": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9043": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "DUP1", - "path": "66" - }, - "9044": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "REVERT", - "path": "66" - }, - "9045": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9046": { - "op": "PUSH1", - "value": "0x1" - }, - "9048": { - "op": "PUSH1", - "value": "0x1" - }, - "9050": { - "op": "PUSH1", - "value": "0xF0" - }, - "9052": { - "op": "SHL" - }, - "9053": { - "op": "SUB" - }, - "9054": { - "op": "NOT" - }, - "9055": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "PUSH1", - "path": "66", - "statement": 209, - "value": "0xF0" - }, - "9057": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "DUP8", - "path": "66" - }, - "9058": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "SWAP1", - "path": "66" - }, - "9059": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "SHL", - "path": "66" - }, - "9060": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8887 - ], - "op": "DUP6", - "path": "66" - }, - "9061": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8887 - ], - "op": "OR", - "path": "66" - }, - "9062": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8845, - 8888 - ], - "op": "AND", - "path": "66" - }, - "9063": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8902, - 8904 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9065": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8893, - 8904 - ], - "op": "SWAP1", - "path": "66" - }, - "9066": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8893, - 8904 - ], - "op": "SWAP2", - "path": "66" - }, - "9067": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8893, - 8904 - ], - "op": "MUL", - "path": "66" - }, - "9068": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8845, - 8905 - ], - "op": "SHR", - "path": "66" - }, - "9069": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "SWAP2", - "path": "66" - }, - "9070": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "SWAP1", - "path": "66" - }, - "9071": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "SWAP2", - "path": "66" - }, - "9072": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "OR", - "path": "66" - }, - "9073": { - "op": "PUSH1", - "value": "0x1" - }, - "9075": { - "op": "PUSH1", - "value": "0x1" - }, - "9077": { - "op": "PUSH1", - "value": "0x70" - }, - "9079": { - "op": "SHL" - }, - "9080": { - "op": "SUB" - }, - "9081": { - "op": "NOT" - }, - "9082": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8906 - ], - "op": "AND", - "path": "66" - }, - "9083": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8808 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "9085": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8808 - ], - "op": "DUP7", - "path": "66" - }, - "9086": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8808 - ], - "op": "ADD", - "path": "66" - }, - "9087": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8906 - ], - "op": "MSTORE", - "path": "66" - }, - "9088": { - "op": "POP" - }, - "9089": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9090": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9091": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9092": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9093": { - "fn": "AccountContextHandler.setActiveCurrency", - "jump": "o", - "offset": [ - 5247, - 8913 - ], - "op": "JUMP", - "path": "66" - }, - "9094": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6460, - 10583 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9095": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9097": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9098": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9099": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9100": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9101": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9102": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9103": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "9104": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9105": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7219, - 7246 - ], - "op": "DUP10", - "path": "84" - }, - "9106": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7219, - 7246 - ], - "op": "MLOAD", - "path": "84" - }, - "9107": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7219, - 7253 - ], - "op": "MLOAD", - "path": "84" - }, - "9108": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7215, - 7253 - ], - "op": "DUP2", - "path": "84" - }, - "9109": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7215, - 7253 - ], - "op": "LT", - "path": "84" - }, - "9110": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "ISZERO", - "path": "84" - }, - "9111": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2417" - }, - "9114": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMPI", - "path": "84" - }, - "9115": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7274, - 7301 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9117": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7318 - ], - "op": "DUP11", - "path": "84" - }, - "9118": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7331 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9120": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7331 - ], - "op": "ADD", - "path": "84" - }, - "9121": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7331 - ], - "op": "MLOAD", - "path": "84" - }, - "9122": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7332, - 7333 - ], - "op": "DUP3", - "path": "84" - }, - "9123": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "DUP2", - "path": "84" - }, - "9124": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "MLOAD", - "path": "84" - }, - "9125": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "DUP2", - "path": "84" - }, - "9126": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "LT", - "path": "84" - }, - "9127": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23AC" - }, - "9130": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "JUMPI", - "path": "84" - }, - "9131": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "INVALID", - "path": "84" - }, - "9132": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9133": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9135": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "MUL", - "path": "84" - }, - "9136": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9138": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "ADD", - "path": "84" - }, - "9139": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "ADD", - "path": "84" - }, - "9140": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "MLOAD", - "path": "84" - }, - "9141": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7274, - 7334 - ], - "op": "SWAP1", - "path": "84" - }, - "9142": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7274, - 7334 - ], - "op": "POP", - "path": "84" - }, - "9143": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7517, - 7549 - ], - "op": "PUSH1", - "path": "84", - "statement": 210, - "value": "0x3" - }, - "9145": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "DUP1", - "path": "84" - }, - "9146": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "DUP2", - "path": "84" - }, - "9147": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "GT", - "path": "84" - }, - "9148": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "ISZERO", - "path": "84" - }, - "9149": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23C2" - }, - "9152": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPI", - "path": "84" - }, - "9153": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "INVALID", - "path": "84" - }, - "9154": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9155": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7500 - ], - "op": "DUP2", - "path": "84" - }, - "9156": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7513 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9158": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7513 - ], - "op": "ADD", - "path": "84" - }, - "9159": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7513 - ], - "op": "MLOAD", - "path": "84" - }, - "9160": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9162": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "DUP2", - "path": "84" - }, - "9163": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "GT", - "path": "84" - }, - "9164": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "ISZERO", - "path": "84" - }, - "9165": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23D2" - }, - "9168": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPI", - "path": "84" - }, - "9169": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "INVALID", - "path": "84" - }, - "9170": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9171": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "EQ", - "path": "84" - }, - "9172": { - "branch": 496, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "ISZERO", - "path": "84" - }, - "9173": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23DD" - }, - "9176": { - "branch": 496, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "JUMPI", - "path": "84" - }, - "9177": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9179": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "DUP1", - "path": "84" - }, - "9180": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "REVERT", - "path": "84" - }, - "9181": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9182": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7647, - 7671 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "9184": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7630 - ], - "op": "DUP2", - "path": "84" - }, - "9185": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7643 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9187": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7643 - ], - "op": "ADD", - "path": "84" - }, - "9188": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7643 - ], - "op": "MLOAD", - "path": "84" - }, - "9189": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9191": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "DUP2", - "path": "84" - }, - "9192": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "GT", - "path": "84" - }, - "9193": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "ISZERO", - "path": "84" - }, - "9194": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23EF" - }, - "9197": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "JUMPI", - "path": "84" - }, - "9198": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "INVALID", - "path": "84" - }, - "9199": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9200": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "EQ", - "path": "84" - }, - "9201": { - "branch": 497, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "ISZERO", - "path": "84" - }, - "9202": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "DUP1", - "path": "84" - }, - "9203": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "ISZERO", - "path": "84" - }, - "9204": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23FF" - }, - "9207": { - "branch": 497, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "JUMPI", - "path": "84" - }, - "9208": { - "op": "POP" - }, - "9209": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "9211": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "DUP2", - "path": "84" - }, - "9212": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "ADD", - "path": "84" - }, - "9213": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "MLOAD", - "path": "84" - }, - "9214": { - "branch": 498, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7694 - ], - "op": "ISZERO", - "path": "84" - }, - "9215": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9216": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7621, - 7759 - ], - "op": "ISZERO", - "path": "84" - }, - "9217": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7621, - 7759 - ], - "op": "PUSH2", - "path": "84", - "value": "0x240E" - }, - "9220": { - "branch": 498, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7621, - 7759 - ], - "op": "JUMPI", - "path": "84" - }, - "9221": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7714, - 7744 - ], - "op": "PUSH2", - "path": "84", - "statement": 211, - "value": "0x240E" - }, - "9224": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7726, - 7740 - ], - "op": "DUP12", - "path": "84" - }, - "9225": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7742, - 7743 - ], - "op": "DUP4", - "path": "84" - }, - "9226": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7714, - 7725 - ], - "op": "PUSH2", - "path": "84", - "value": "0x34DB" - }, - "9229": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 7714, - 7744 - ], - "op": "JUMP", - "path": "84" - }, - "9230": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7714, - 7744 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9231": { - "op": "POP" - }, - "9232": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7255, - 7258 - ], - "op": "PUSH1", - "path": "84", - "statement": 212, - "value": "0x1" - }, - "9234": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7255, - 7258 - ], - "op": "ADD", - "path": "84" - }, - "9235": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2390" - }, - "9238": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMP", - "path": "84" - }, - "9239": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9240": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "POP", - "path": "84" - }, - "9241": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7868, - 7877 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9243": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9244": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7887, - 7914 - ], - "op": "DUP10", - "path": "84" - }, - "9245": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7887, - 7914 - ], - "op": "MLOAD", - "path": "84" - }, - "9246": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7887, - 7921 - ], - "op": "MLOAD", - "path": "84" - }, - "9247": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7883, - 7921 - ], - "op": "DUP2", - "path": "84" - }, - "9248": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7883, - 7921 - ], - "op": "LT", - "path": "84" - }, - "9249": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "ISZERO", - "path": "84" - }, - "9250": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "PUSH2", - "path": "84", - "value": "0x24BA" - }, - "9253": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMPI", - "path": "84" - }, - "9254": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7942, - 7969 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9256": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7986 - ], - "op": "DUP11", - "path": "84" - }, - "9257": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7999 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9259": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7999 - ], - "op": "ADD", - "path": "84" - }, - "9260": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7999 - ], - "op": "MLOAD", - "path": "84" - }, - "9261": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8000, - 8001 - ], - "op": "DUP3", - "path": "84" - }, - "9262": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "DUP2", - "path": "84" - }, - "9263": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "MLOAD", - "path": "84" - }, - "9264": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "DUP2", - "path": "84" - }, - "9265": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "LT", - "path": "84" - }, - "9266": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2437" - }, - "9269": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "JUMPI", - "path": "84" - }, - "9270": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "INVALID", - "path": "84" - }, - "9271": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9272": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9274": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "MUL", - "path": "84" - }, - "9275": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9277": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "ADD", - "path": "84" - }, - "9278": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "ADD", - "path": "84" - }, - "9279": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "MLOAD", - "path": "84" - }, - "9280": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7942, - 8002 - ], - "op": "SWAP1", - "path": "84" - }, - "9281": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7942, - 8002 - ], - "op": "POP", - "path": "84" - }, - "9282": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8043, - 8067 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "9284": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9286": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "DUP2", - "path": "84" - }, - "9287": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "GT", - "path": "84" - }, - "9288": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "ISZERO", - "path": "84" - }, - "9289": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH2", - "path": "84", - "value": "0x244E" - }, - "9292": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPI", - "path": "84" - }, - "9293": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "INVALID", - "path": "84" - }, - "9294": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9295": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8026 - ], - "op": "DUP2", - "path": "84" - }, - "9296": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8039 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9298": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8039 - ], - "op": "ADD", - "path": "84" - }, - "9299": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8039 - ], - "op": "MLOAD", - "path": "84" - }, - "9300": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9302": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "DUP2", - "path": "84" - }, - "9303": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "GT", - "path": "84" - }, - "9304": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "ISZERO", - "path": "84" - }, - "9305": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH2", - "path": "84", - "value": "0x245E" - }, - "9308": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPI", - "path": "84" - }, - "9309": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "INVALID", - "path": "84" - }, - "9310": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9311": { - "branch": 499, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "EQ", - "path": "84" - }, - "9312": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "ISZERO", - "path": "84" - }, - "9313": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2472" - }, - "9316": { - "branch": 499, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "JUMPI", - "path": "84" - }, - "9317": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "9319": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "DUP2", - "path": "84" - }, - "9320": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "ADD", - "path": "84" - }, - "9321": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "MLOAD", - "path": "84" - }, - "9322": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8132, - 8151 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9324": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8220, - 8245 - ], - "op": "SWAP1", - "path": "84" - }, - "9325": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8220, - 8245 - ], - "op": "SSTORE", - "path": "84" - }, - "9326": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8198, - 8263 - ], - "op": "PUSH2", - "path": "84", - "value": "0x24B1" - }, - "9329": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8198, - 8263 - ], - "op": "JUMP", - "path": "84" - }, - "9330": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8198, - 8263 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9331": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8327, - 8351 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "9333": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8310 - ], - "op": "DUP2", - "path": "84" - }, - "9334": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8323 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9336": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8323 - ], - "op": "ADD", - "path": "84" - }, - "9337": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8323 - ], - "op": "MLOAD", - "path": "84" - }, - "9338": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9340": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "DUP2", - "path": "84" - }, - "9341": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "GT", - "path": "84" - }, - "9342": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "ISZERO", - "path": "84" - }, - "9343": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2484" - }, - "9346": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "JUMPI", - "path": "84" - }, - "9347": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "INVALID", - "path": "84" - }, - "9348": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9349": { - "branch": 500, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "EQ", - "path": "84" - }, - "9350": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "ISZERO", - "path": "84" - }, - "9351": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "PUSH2", - "path": "84", - "value": "0x249D" - }, - "9354": { - "branch": 500, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "JUMPI", - "path": "84" - }, - "9355": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "9357": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "DUP2", - "path": "84" - }, - "9358": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "ADD", - "path": "84" - }, - "9359": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "MLOAD", - "path": "84" - }, - "9360": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "DUP1", - "path": "84" - }, - "9361": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8611, - 8643 - ], - "op": "PUSH2", - "path": "84", - "statement": 213, - "value": "0x249A" - }, - "9364": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8466 - ], - "op": "DUP4", - "path": "84" - }, - "9365": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "DUP3", - "path": "84" - }, - "9366": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8611, - 8622 - ], - "op": "PUSH2", - "path": "84", - "value": "0x362A" - }, - "9369": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 8611, - 8643 - ], - "op": "JUMP", - "path": "84" - }, - "9370": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8611, - 8643 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9371": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "POP", - "path": "84" - }, - "9372": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "POP", - "path": "84" - }, - "9373": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9374": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8875, - 9055 - ], - "op": "PUSH2", - "path": "84", - "statement": 214, - "value": "0x24A9" - }, - "9377": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8920, - 8925 - ], - "op": "DUP2", - "path": "84" - }, - "9378": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8947, - 8954 - ], - "op": "DUP7", - "path": "84" - }, - "9379": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8976, - 9001 - ], - "op": "DUP7", - "path": "84" - }, - "9380": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9023, - 9037 - ], - "op": "DUP7", - "path": "84" - }, - "9381": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8875, - 8898 - ], - "op": "PUSH2", - "path": "84", - "value": "0x375B" - }, - "9384": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 8875, - 9055 - ], - "op": "JUMP", - "path": "84" - }, - "9385": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8875, - 9055 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9386": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP2", - "path": "84" - }, - "9387": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP7", - "path": "84" - }, - "9388": { - "op": "POP" - }, - "9389": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP5", - "path": "84" - }, - "9390": { - "op": "POP" - }, - "9391": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP3", - "path": "84" - }, - "9392": { - "op": "POP" - }, - "9393": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9394": { - "op": "POP" - }, - "9395": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7923, - 7926 - ], - "op": "PUSH1", - "path": "84", - "statement": 215, - "value": "0x1" - }, - "9397": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7923, - 7926 - ], - "op": "ADD", - "path": "84" - }, - "9398": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "PUSH2", - "path": "84", - "value": "0x241B" - }, - "9401": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMP", - "path": "84" - }, - "9402": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9403": { - "op": "POP" - }, - "9404": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "9406": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "DUP10", - "path": "84" - }, - "9407": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "ADD", - "path": "84" - }, - "9408": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "MLOAD", - "path": "84" - }, - "9409": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9116, - 9142 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9411": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9280, - 9317 - ], - "op": "PUSH2", - "path": "84", - "value": "0x24CA" - }, - "9414": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9280, - 9315 - ], - "op": "PUSH2", - "path": "84", - "value": "0x37BE" - }, - "9417": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 9280, - 9317 - ], - "op": "JUMP", - "path": "84" - }, - "9418": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9280, - 9317 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9419": { - "op": "PUSH1", - "value": "0x1" - }, - "9421": { - "op": "PUSH1", - "value": "0x1" - }, - "9423": { - "op": "PUSH1", - "value": "0xA0" - }, - "9425": { - "op": "SHL" - }, - "9426": { - "op": "SUB" - }, - "9427": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP12", - "path": "84" - }, - "9428": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "AND", - "path": "84" - }, - "9429": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9327, - 9391 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9431": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "SWAP1", - "path": "84" - }, - "9432": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP2", - "path": "84" - }, - "9433": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "MSTORE", - "path": "84" - }, - "9434": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9436": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP3", - "path": "84" - }, - "9437": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "SWAP1", - "path": "84" - }, - "9438": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "MSTORE", - "path": "84" - }, - "9439": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "9441": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP2", - "path": "84" - }, - "9442": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "KECCAK256", - "path": "84" - }, - "9443": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9187, - 9317 - ], - "op": "SWAP2", - "path": "84" - }, - "9444": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9187, - 9317 - ], - "op": "SWAP3", - "path": "84" - }, - "9445": { - "op": "POP" - }, - "9446": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9447": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9456 - ], - "op": "DUP13", - "path": "84" - }, - "9448": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9466 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9450": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9466 - ], - "op": "ADD", - "path": "84" - }, - "9451": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9466 - ], - "op": "MLOAD", - "path": "84" - }, - "9452": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9473 - ], - "op": "MLOAD", - "path": "84" - }, - "9453": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9438, - 9439 - ], - "op": "DUP2", - "path": "84" - }, - "9454": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9438, - 9473 - ], - "op": "LT", - "path": "84" - }, - "9455": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "ISZERO", - "path": "84" - }, - "9456": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2594" - }, - "9459": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPI", - "path": "84" - }, - "9460": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9494, - 9521 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9462": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9538 - ], - "op": "DUP14", - "path": "84" - }, - "9463": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9548 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9465": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9548 - ], - "op": "ADD", - "path": "84" - }, - "9466": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9548 - ], - "op": "MLOAD", - "path": "84" - }, - "9467": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9549, - 9550 - ], - "op": "DUP3", - "path": "84" - }, - "9468": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "DUP2", - "path": "84" - }, - "9469": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "MLOAD", - "path": "84" - }, - "9470": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "DUP2", - "path": "84" - }, - "9471": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "LT", - "path": "84" - }, - "9472": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2505" - }, - "9475": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "JUMPI", - "path": "84" - }, - "9476": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "INVALID", - "path": "84" - }, - "9477": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9478": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9480": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "MUL", - "path": "84" - }, - "9481": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "9483": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "ADD", - "path": "84" - }, - "9484": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "ADD", - "path": "84" - }, - "9485": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "MLOAD", - "path": "84" - }, - "9486": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9494, - 9551 - ], - "op": "SWAP1", - "path": "84" - }, - "9487": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9494, - 9551 - ], - "op": "POP", - "path": "84" - }, - "9488": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9574 - ], - "op": "DUP1", - "path": "84" - }, - "9489": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9583 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "9491": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9583 - ], - "op": "ADD", - "path": "84" - }, - "9492": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9583 - ], - "op": "MLOAD", - "path": "84" - }, - "9493": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9587, - 9588 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9495": { - "branch": 501, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9588 - ], - "op": "EQ", - "path": "84" - }, - "9496": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "ISZERO", - "path": "84" - }, - "9497": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2522" - }, - "9500": { - "branch": 501, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "JUMPI", - "path": "84" - }, - "9501": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9590, - 9598 - ], - "op": "POP", - "path": "84", - "statement": 216 - }, - "9502": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9590, - 9598 - ], - "op": "PUSH2", - "path": "84", - "value": "0x258C" - }, - "9505": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9590, - 9598 - ], - "op": "JUMP", - "path": "84" - }, - "9506": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9507": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9659, - 9683 - ], - "op": "PUSH1", - "path": "84", - "statement": 217, - "value": "0x2" - }, - "9509": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9642 - ], - "op": "DUP2", - "path": "84" - }, - "9510": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9655 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9512": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9655 - ], - "op": "ADD", - "path": "84" - }, - "9513": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9655 - ], - "op": "MLOAD", - "path": "84" - }, - "9514": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9516": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "DUP2", - "path": "84" - }, - "9517": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "GT", - "path": "84" - }, - "9518": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "ISZERO", - "path": "84" - }, - "9519": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2534" - }, - "9522": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "JUMPI", - "path": "84" - }, - "9523": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "INVALID", - "path": "84" - }, - "9524": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9525": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "EQ", - "path": "84" - }, - "9526": { - "branch": 502, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "ISZERO", - "path": "84" - }, - "9527": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "DUP1", - "path": "84" - }, - "9528": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "ISZERO", - "path": "84" - }, - "9529": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2552" - }, - "9532": { - "branch": 502, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "JUMPI", - "path": "84" - }, - "9533": { - "op": "POP" - }, - "9534": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9725, - 9757 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9536": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9708 - ], - "op": "DUP2", - "path": "84" - }, - "9537": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9721 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9539": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9721 - ], - "op": "ADD", - "path": "84" - }, - "9540": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9721 - ], - "op": "MLOAD", - "path": "84" - }, - "9541": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9543": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "DUP2", - "path": "84" - }, - "9544": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "GT", - "path": "84" - }, - "9545": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "ISZERO", - "path": "84" - }, - "9546": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "PUSH2", - "path": "84", - "value": "0x254F" - }, - "9549": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "JUMPI", - "path": "84" - }, - "9550": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "INVALID", - "path": "84" - }, - "9551": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9552": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "EQ", - "path": "84" - }, - "9553": { - "branch": 503, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "ISZERO", - "path": "84" - }, - "9554": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9555": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "PUSH2", - "path": "84", - "value": "0x255B" - }, - "9558": { - "branch": 503, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "JUMPI", - "path": "84" - }, - "9559": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9561": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "DUP1", - "path": "84" - }, - "9562": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "REVERT", - "path": "84" - }, - "9563": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9564": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9878, - 10038 - ], - "op": "PUSH2", - "path": "84", - "statement": 218, - "value": "0x2567" - }, - "9567": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9919, - 9924 - ], - "op": "DUP2", - "path": "84" - }, - "9568": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9942, - 9949 - ], - "op": "DUP10", - "path": "84" - }, - "9569": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9967, - 9992 - ], - "op": "DUP10", - "path": "84" - }, - "9570": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10010, - 10024 - ], - "op": "DUP10", - "path": "84" - }, - "9571": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9878, - 9901 - ], - "op": "PUSH2", - "path": "84", - "value": "0x375B" - }, - "9574": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 9878, - 10038 - ], - "op": "JUMP", - "path": "84" - }, - "9575": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9878, - 10038 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9576": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP2", - "path": "84" - }, - "9577": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP10", - "path": "84" - }, - "9578": { - "op": "POP" - }, - "9579": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP8", - "path": "84" - }, - "9580": { - "op": "POP" - }, - "9581": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP6", - "path": "84" - }, - "9582": { - "op": "POP" - }, - "9583": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10053, - 10105 - ], - "op": "PUSH2", - "path": "84", - "statement": 219, - "value": "0x2584" - }, - "9586": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10065, - 10070 - ], - "op": "DUP2", - "path": "84" - }, - "9587": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10084 - ], - "op": "DUP5", - "path": "84" - }, - "9588": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10085, - 10103 - ], - "op": "DUP8", - "path": "84" - }, - "9589": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "9591": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "DUP2", - "path": "84" - }, - "9592": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "LT", - "path": "84" - }, - "9593": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "PUSH2", - "path": "84", - "value": "0x257E" - }, - "9596": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "JUMPI", - "path": "84" - }, - "9597": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "INVALID", - "path": "84" - }, - "9598": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9599": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "ADD", - "path": "84" - }, - "9600": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10053, - 10064 - ], - "op": "PUSH2", - "path": "84", - "value": "0x362A" - }, - "9603": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 10053, - 10105 - ], - "op": "JUMP", - "path": "84" - }, - "9604": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10053, - 10105 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9605": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10141, - 10142 - ], - "op": "PUSH1", - "path": "84", - "statement": 220, - "value": "0x1" - }, - "9607": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "DUP6", - "path": "84" - }, - "9608": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "ADD", - "path": "84" - }, - "9609": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "SWAP5", - "path": "84" - }, - "9610": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "POP", - "path": "84" - }, - "9611": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "POP", - "path": "84" - }, - "9612": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9613": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9475, - 9478 - ], - "op": "PUSH1", - "path": "84", - "statement": 221, - "value": "0x1" - }, - "9615": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9475, - 9478 - ], - "op": "ADD", - "path": "84" - }, - "9616": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "PUSH2", - "path": "84", - "value": "0x24E6" - }, - "9619": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMP", - "path": "84" - }, - "9620": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9621": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "POP", - "path": "84" - }, - "9622": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10333, - 10335 - ], - "op": "PUSH1", - "path": "84", - "statement": 222, - "value": "0x10" - }, - "9624": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10329 - ], - "op": "DUP4", - "path": "84" - }, - "9625": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10335 - ], - "op": "GT", - "path": "84" - }, - "9626": { - "branch": 504, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10335 - ], - "op": "ISZERO", - "path": "84" - }, - "9627": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "DUP1", - "path": "84" - }, - "9628": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "ISZERO", - "path": "84" - }, - "9629": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "PUSH2", - "path": "84", - "value": "0x25AB" - }, - "9632": { - "branch": 504, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "JUMPI", - "path": "84" - }, - "9633": { - "op": "POP" - }, - "9634": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10357, - 10373 - ], - "op": "PUSH5", - "path": "84", - "value": "0xFFFFFFFFFF" - }, - "9640": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10339, - 10373 - ], - "op": "DUP5", - "path": "84" - }, - "9641": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10339, - 10373 - ], - "op": "GT", - "path": "84" - }, - "9642": { - "branch": 505, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10339, - 10373 - ], - "op": "ISZERO", - "path": "84" - }, - "9643": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9644": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "PUSH2", - "path": "84", - "value": "0x25B4" - }, - "9647": { - "branch": 505, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "JUMPI", - "path": "84" - }, - "9648": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9650": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "DUP1", - "path": "84" - }, - "9651": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "REVERT", - "path": "84" - }, - "9652": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9653": { - "op": "POP" - }, - "9654": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10445, - 10452 - ], - "op": "SWAP4", - "path": "84", - "statement": 223 - }, - "9655": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10445, - 10452 - ], - "op": "SWAP11", - "path": "84" - }, - "9656": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10466, - 10491 - ], - "op": "SWAP3", - "path": "84" - }, - "9657": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10466, - 10491 - ], - "op": "SWAP10", - "path": "84" - }, - "9658": { - "op": "POP" - }, - "9659": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10466, - 10491 - ], - "op": "SWAP8", - "path": "84" - }, - "9660": { - "op": "POP" - }, - "9661": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10511, - 10529 - ], - "op": "SWAP6", - "path": "84" - }, - "9662": { - "op": "POP" - }, - "9663": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6460, - 10583 - ], - "op": "SWAP4", - "path": "84" - }, - "9664": { - "op": "POP" - }, - "9665": { - "op": "POP" - }, - "9666": { - "op": "POP" - }, - "9667": { - "op": "POP" - }, - "9668": { - "fn": "PortfolioHandler.storeAssets", - "jump": "o", - "offset": [ - 6460, - 10583 - ], - "op": "JUMP", - "path": "84" - }, - "9669": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 8919, - 9670 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9670": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9004, - 9011 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9672": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9004, - 9011 - ], - "op": "DUP1", - "path": "66" - }, - "9673": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9150, - 9174 - ], - "op": "PUSH32", - "path": "66", - "value": "0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000" - }, - "9706": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9131, - 9174 - ], - "op": "DUP4", - "path": "66" - }, - "9707": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9131, - 9174 - ], - "op": "AND", - "path": "66" - }, - "9708": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9004, - 9011 - ], - "op": "DUP2", - "path": "66" - }, - "9709": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9710": { - "op": "PUSH1", - "value": "0x1" - }, - "9712": { - "op": "PUSH1", - "value": "0x1" - }, - "9714": { - "op": "PUSH1", - "value": "0x70" - }, - "9716": { - "op": "SHL" - }, - "9717": { - "op": "SUB" - }, - "9718": { - "op": "NOT" - }, - "9719": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9309, - 9323 - ], - "op": "DUP3", - "path": "66" - }, - "9720": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9309, - 9323 - ], - "op": "AND", - "path": "66" - }, - "9721": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9309, - 9323 - ], - "op": "ISZERO", - "path": "66" - }, - "9722": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2637" - }, - "9725": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMPI", - "path": "66" - }, - "9726": { - "op": "PUSH1", - "value": "0x1" - }, - "9728": { - "op": "PUSH1", - "value": "0xFE" - }, - "9730": { - "op": "SHL" - }, - "9731": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9388 - ], - "op": "DUP3", - "path": "66" - }, - "9732": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9388 - ], - "op": "DUP2", - "path": "66" - }, - "9733": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9388 - ], - "op": "AND", - "path": "66" - }, - "9734": { - "branch": 437, - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9420 - ], - "op": "EQ", - "path": "66" - }, - "9735": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "ISZERO", - "path": "66" - }, - "9736": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2621" - }, - "9739": { - "branch": 437, - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "JUMPI", - "path": "66" - }, - "9740": { - "op": "PUSH1", - "value": "0x1" - }, - "9742": { - "op": "PUSH1", - "value": "0x1" - }, - "9744": { - "op": "PUSH1", - "value": "0xF0" - }, - "9746": { - "op": "SHL" - }, - "9747": { - "op": "SUB" - }, - "9748": { - "op": "NOT" - }, - "9749": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9539 - ], - "op": "DUP3", - "path": "66", - "statement": 224 - }, - "9750": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9539 - ], - "op": "AND", - "path": "66" - }, - "9751": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9549 - ], - "op": "DUP2", - "path": "66" - }, - "9752": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9549 - ], - "op": "SHR", - "path": "66" - }, - "9753": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP3", - "path": "66" - }, - "9754": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP1", - "path": "66" - }, - "9755": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP3", - "path": "66" - }, - "9756": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "OR", - "path": "66" - }, - "9757": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP2", - "path": "66" - }, - "9758": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9578, - 9580 - ], - "op": "PUSH1", - "path": "66", - "statement": 225, - "value": "0x10" - }, - "9760": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9568, - 9580 - ], - "op": "ADD", - "path": "66" - }, - "9761": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9762": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9627, - 9629 - ], - "op": "PUSH1", - "path": "66", - "statement": 226, - "value": "0x10" - }, - "9764": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9623 - ], - "op": "DUP3", - "path": "66" - }, - "9765": { - "op": "PUSH1", - "value": "0x1" - }, - "9767": { - "op": "PUSH1", - "value": "0x1" - }, - "9769": { - "op": "PUSH1", - "value": "0x70" - }, - "9771": { - "op": "SHL" - }, - "9772": { - "op": "SUB" - }, - "9773": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "NOT", - "path": "66" - }, - "9774": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "AND", - "path": "66" - }, - "9775": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "SWAP1", - "path": "66" - }, - "9776": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "SHL", - "path": "66" - }, - "9777": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9608, - 9629 - ], - "op": "SWAP2", - "path": "66" - }, - "9778": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9608, - 9629 - ], - "op": "POP", - "path": "66" - }, - "9779": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x25ED" - }, - "9782": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMP", - "path": "66" - }, - "9783": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9784": { - "op": "POP" - }, - "9785": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9657, - 9663 - ], - "op": "SWAP1", - "path": "66", - "statement": 227 - }, - "9786": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9657, - 9663 - ], - "op": "SWAP4", - "path": "66" - }, - "9787": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 8919, - 9670 - ], - "op": "SWAP3", - "path": "66" - }, - "9788": { - "op": "POP" - }, - "9789": { - "op": "POP" - }, - "9790": { - "op": "POP" - }, - "9791": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "jump": "o", - "offset": [ - 8919, - 9670 - ], - "op": "JUMP", - "path": "66" - }, - "9792": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 1879, - 2108 - ], - "op": "JUMPDEST", - "path": "62" - }, - "9793": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 1940, - 1988 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "9795": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2005, - 2017 - ], - "op": "DUP1", - "path": "62" - }, - "9796": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2020, - 2061 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "9799": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2036, - 2060 - ], - "op": "PUSH1", - "path": "62", - "value": "0x1" - }, - "9801": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2020, - 2035 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "9804": { - "fn": "LibStorage.getAccountStorage", - "jump": "i", - "offset": [ - 2020, - 2061 - ], - "op": "JUMP", - "path": "62" - }, - "9805": { - "fn": "SafeInt256.toInt", - "offset": [ - 2520, - 2683 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9806": { - "fn": "SafeInt256.toInt", - "offset": [ - 2569, - 2575 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "9808": { - "op": "PUSH1", - "value": "0x1" - }, - "9810": { - "op": "PUSH1", - "value": "0x1" - }, - "9812": { - "op": "PUSH1", - "value": "0xFF" - }, - "9814": { - "op": "SHL" - }, - "9815": { - "op": "SUB" - }, - "9816": { - "fn": "SafeInt256.toInt", - "offset": [ - 2596, - 2597 - ], - "op": "DUP3", - "path": "94", - "statement": 228 - }, - "9817": { - "fn": "SafeInt256.toInt", - "offset": [ - 2596, - 2626 - ], - "op": "GT", - "path": "94" - }, - "9818": { - "branch": 534, - "fn": "SafeInt256.toInt", - "offset": [ - 2596, - 2626 - ], - "op": "ISZERO", - "path": "94" - }, - "9819": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "PUSH2", - "path": "94", - "value": "0x1D05" - }, - "9822": { - "branch": 534, - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "JUMPI", - "path": "94" - }, - "9823": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "9825": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "DUP1", - "path": "94" - }, - "9826": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "REVERT", - "path": "94" - }, - "9827": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17289, - 19290 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9828": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17601, - 17644 - ], - "op": "PUSH1", - "path": "29", - "value": "0x3" - }, - "9830": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17597 - ], - "op": "DUP4", - "path": "29" - }, - "9831": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "9833": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "DUP2", - "path": "29" - }, - "9834": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "GT", - "path": "29" - }, - "9835": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "ISZERO", - "path": "29" - }, - "9836": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2671" - }, - "9839": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "JUMPI", - "path": "29" - }, - "9840": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "INVALID", - "path": "29" - }, - "9841": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9842": { - "branch": 400, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17644 - ], - "op": "EQ", - "path": "29" - }, - "9843": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17723 - ], - "op": "DUP1", - "path": "29" - }, - "9844": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17723 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2688" - }, - "9847": { - "branch": 400, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17723 - ], - "op": "JUMPI", - "path": "29" - }, - "9848": { - "op": "POP" - }, - "9849": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17675, - 17723 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "9851": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17671 - ], - "op": "DUP4", - "path": "29" - }, - "9852": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "9854": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "DUP2", - "path": "29" - }, - "9855": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "GT", - "path": "29" - }, - "9856": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "ISZERO", - "path": "29" - }, - "9857": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2686" - }, - "9860": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "JUMPI", - "path": "29" - }, - "9861": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "INVALID", - "path": "29" - }, - "9862": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9863": { - "branch": 401, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17660, - 17723 - ], - "op": "EQ", - "path": "29" - }, - "9864": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17723 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9865": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17791 - ], - "op": "DUP1", - "path": "29" - }, - "9866": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17791 - ], - "op": "PUSH2", - "path": "29", - "value": "0x269E" - }, - "9869": { - "branch": 401, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17791 - ], - "op": "JUMPI", - "path": "29" - }, - "9870": { - "op": "POP" - }, - "9871": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17754, - 17791 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "9873": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17750 - ], - "op": "DUP4", - "path": "29" - }, - "9874": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "9876": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "DUP2", - "path": "29" - }, - "9877": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "GT", - "path": "29" - }, - "9878": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "ISZERO", - "path": "29" - }, - "9879": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "PUSH2", - "path": "29", - "value": "0x269C" - }, - "9882": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "JUMPI", - "path": "29" - }, - "9883": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "INVALID", - "path": "29" - }, - "9884": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9885": { - "branch": 402, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17739, - 17791 - ], - "op": "EQ", - "path": "29" - }, - "9886": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17586, - 17791 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9887": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17569, - 19284 - ], - "op": "ISZERO", - "path": "29" - }, - "9888": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17569, - 19284 - ], - "op": "PUSH2", - "path": "29", - "value": "0x276A" - }, - "9891": { - "branch": 402, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17569, - 19284 - ], - "op": "JUMPI", - "path": "29" - }, - "9892": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17908, - 17963 - ], - "op": "PUSH2", - "path": "29", - "statement": 229, - "value": "0x26AD" - }, - "9895": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17929, - 17941 - ], - "op": "DUP5", - "path": "29" - }, - "9896": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17943, - 17962 - ], - "op": "DUP3", - "path": "29" - }, - "9897": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17908, - 17928 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17BE" - }, - "9900": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 17908, - 17963 - ], - "op": "JUMP", - "path": "29" - }, - "9901": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17908, - 17963 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9902": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18032 - ], - "op": "PUSH1", - "path": "29", - "statement": 230, - "value": "0x60" - }, - "9904": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18032 - ], - "op": "DUP5", - "path": "29" - }, - "9905": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18032 - ], - "op": "ADD", - "path": "29" - }, - "9906": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18032 - ], - "op": "MLOAD", - "path": "29" - }, - "9907": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18057 - ], - "op": "PUSH2", - "path": "29", - "value": "0x26BC" - }, - "9910": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18057 - ], - "op": "SWAP1", - "path": "29" - }, - "9911": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18037, - 18056 - ], - "op": "DUP3", - "path": "29" - }, - "9912": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18036 - ], - "op": "PUSH2", - "path": "29", - "value": "0x287E" - }, - "9915": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18006, - 18057 - ], - "op": "JUMP", - "path": "29" - }, - "9916": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18006, - 18057 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9917": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17977, - 18003 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "9919": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17977, - 18003 - ], - "op": "DUP6", - "path": "29" - }, - "9920": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17977, - 18003 - ], - "op": "ADD", - "path": "29" - }, - "9921": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17977, - 18057 - ], - "op": "MSTORE", - "path": "29" - }, - "9922": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18235, - 18258 - ], - "op": "DUP4", - "path": "29" - }, - "9923": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18235, - 18258 - ], - "op": "MLOAD", - "path": "29" - }, - "9924": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "9926": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "MLOAD", - "path": "29" - }, - "9927": { - "op": "PUSH4", - "value": "0x21285613" - }, - "9932": { - "op": "PUSH1", - "value": "0xE1" - }, - "9934": { - "op": "SHL" - }, - "9935": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP2", - "path": "29" - }, - "9936": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "MSTORE", - "path": "29" - }, - "9937": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18168, - 18187 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "9939": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18168, - 18187 - ], - "op": "SWAP2", - "path": "29" - }, - "9940": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18206 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "9961": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18206 - ], - "op": "SWAP2", - "path": "29" - }, - "9962": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18217 - ], - "op": "PUSH4", - "path": "29", - "value": "0x4250AC26" - }, - "9967": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18217 - ], - "op": "SWAP2", - "path": "29" - }, - "9968": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH2", - "path": "29", - "value": "0x26FD" - }, - "9971": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "SWAP2", - "path": "29" - }, - "9972": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18276, - 18295 - ], - "op": "DUP7", - "path": "29" - }, - "9973": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18276, - 18295 - ], - "op": "SWAP1", - "path": "29" - }, - "9974": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "9976": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ADD", - "path": "29" - }, - "9977": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AC3" - }, - "9980": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18190, - 18309 - ], - "op": "JUMP", - "path": "29" - }, - "9981": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "JUMPDEST", - "path": "29" - }, - "9982": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "9984": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "9986": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "MLOAD", - "path": "29" - }, - "9987": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "9988": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP4", - "path": "29" - }, - "9989": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "SUB", - "path": "29" - }, - "9990": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP2", - "path": "29" - }, - "9991": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP7", - "path": "29" - }, - "9992": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "9993": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "9994": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ISZERO", - "path": "29" - }, - "9995": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "9996": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ISZERO", - "path": "29" - }, - "9997": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2715" - }, - "10000": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "JUMPI", - "path": "29" - }, - "10001": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10003": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "10004": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "REVERT", - "path": "29" - }, - "10005": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10006": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "POP", - "path": "29" - }, - "10007": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "GAS", - "path": "29" - }, - "10008": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "10009": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ISZERO", - "path": "29" - }, - "10010": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "10011": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ISZERO", - "path": "29" - }, - "10012": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2729" - }, - "10015": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "JUMPI", - "path": "29" - }, - "10016": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "10017": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10019": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "10020": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "10021": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "10022": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10024": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "REVERT", - "path": "29" - }, - "10025": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10026": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "POP", - "path": "29" - }, - "10027": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "POP", - "path": "29" - }, - "10028": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "POP", - "path": "29" - }, - "10029": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "POP", - "path": "29" - }, - "10030": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10032": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "MLOAD", - "path": "29" - }, - "10033": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "10034": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "10036": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "NOT", - "path": "29" - }, - "10037": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "10039": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP3", - "path": "29" - }, - "10040": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ADD", - "path": "29" - }, - "10041": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "AND", - "path": "29" - }, - "10042": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP3", - "path": "29" - }, - "10043": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ADD", - "path": "29" - }, - "10044": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP1", - "path": "29" - }, - "10045": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10047": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "MSTORE", - "path": "29" - }, - "10048": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "POP", - "path": "29" - }, - "10049": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "DUP2", - "path": "29" - }, - "10050": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "ADD", - "path": "29" - }, - "10051": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "SWAP1", - "path": "29" - }, - "10052": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH2", - "path": "29", - "value": "0x274D" - }, - "10055": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "SWAP2", - "path": "29" - }, - "10056": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "SWAP1", - "path": "29" - }, - "10057": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "PUSH2", - "path": "29", - "value": "0x43D8" - }, - "10060": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18190, - 18309 - ], - "op": "JUMP", - "path": "29" - }, - "10061": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18190, - 18309 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10062": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18395 - ], - "op": "PUSH1", - "path": "29", - "statement": 231, - "value": "0xC0" - }, - "10064": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18395 - ], - "op": "DUP7", - "path": "29" - }, - "10065": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18395 - ], - "op": "ADD", - "path": "29" - }, - "10066": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18395 - ], - "op": "MLOAD", - "path": "29" - }, - "10067": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18168, - 18309 - ], - "op": "SWAP1", - "path": "29" - }, - "10068": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18168, - 18309 - ], - "op": "SWAP2", - "path": "29" - }, - "10069": { - "op": "POP" - }, - "10070": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18443 - ], - "op": "PUSH2", - "path": "29", - "value": "0x275F" - }, - "10073": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18443 - ], - "op": "SWAP1", - "path": "29" - }, - "10074": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18168, - 18309 - ], - "op": "DUP3", - "path": "29" - }, - "10075": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18399 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "10078": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18361, - 18443 - ], - "op": "JUMP", - "path": "29" - }, - "10079": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18361, - 18443 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10080": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18324, - 18358 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "10082": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18324, - 18358 - ], - "op": "DUP7", - "path": "29" - }, - "10083": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18324, - 18358 - ], - "op": "ADD", - "path": "29" - }, - "10084": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18324, - 18443 - ], - "op": "MSTORE", - "path": "29" - }, - "10085": { - "op": "POP" - }, - "10086": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17569, - 19284 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16D2" - }, - "10089": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17569, - 19284 - ], - "op": "JUMP", - "path": "29" - }, - "10090": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17569, - 19284 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10091": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18479, - 18509 - ], - "op": "PUSH1", - "path": "29", - "value": "0x5" - }, - "10093": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18475 - ], - "op": "DUP4", - "path": "29" - }, - "10094": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "PUSH1", - "path": "29", - "value": "0x6" - }, - "10096": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "DUP2", - "path": "29" - }, - "10097": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "GT", - "path": "29" - }, - "10098": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "ISZERO", - "path": "29" - }, - "10099": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2778" - }, - "10102": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "JUMPI", - "path": "29" - }, - "10103": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "INVALID", - "path": "29" - }, - "10104": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10105": { - "branch": 403, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18464, - 18509 - ], - "op": "EQ", - "path": "29" - }, - "10106": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18460, - 19284 - ], - "op": "ISZERO", - "path": "29" - }, - "10107": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18460, - 19284 - ], - "op": "PUSH2", - "path": "29", - "value": "0x16D2" - }, - "10110": { - "branch": 403, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18460, - 19284 - ], - "op": "JUMPI", - "path": "29" - }, - "10111": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18803, - 18822 - ], - "op": "DUP2", - "path": "29", - "statement": 232 - }, - "10112": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18799 - ], - "op": "PUSH2", - "path": "29", - "value": "0x27A2" - }, - "10115": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18764, - 18776 - ], - "op": "DUP6", - "path": "29" - }, - "10116": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18764, - 18798 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "10118": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18764, - 18798 - ], - "op": "ADD", - "path": "29" - }, - "10119": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18764, - 18798 - ], - "op": "MLOAD", - "path": "29" - }, - "10120": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18695 - ], - "op": "PUSH2", - "path": "29", - "value": "0x11C6" - }, - "10123": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18664, - 18676 - ], - "op": "DUP8", - "path": "29" - }, - "10124": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18664, - 18694 - ], - "op": "PUSH1", - "path": "29", - "value": "0xA0" - }, - "10126": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18664, - 18694 - ], - "op": "ADD", - "path": "29" - }, - "10127": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18664, - 18694 - ], - "op": "MLOAD", - "path": "29" - }, - "10128": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18597 - ], - "op": "DUP9", - "path": "29" - }, - "10129": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18638 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10131": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18638 - ], - "op": "ADD", - "path": "29" - }, - "10132": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18638 - ], - "op": "MLOAD", - "path": "29" - }, - "10133": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18663 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "10136": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18663 - ], - "op": "SWAP1", - "path": "29" - }, - "10137": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18695 - ], - "op": "SWAP2", - "path": "29" - }, - "10138": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18695 - ], - "op": "SWAP1", - "path": "29" - }, - "10139": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18695 - ], - "op": "PUSH4", - "path": "29", - "value": "0xFFFFFFFF" - }, - "10144": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18695 - ], - "op": "AND", - "path": "29" - }, - "10145": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18585, - 18695 - ], - "op": "JUMP", - "path": "29" - }, - "10146": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18799 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10147": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18822 - ], - "op": "SLT", - "path": "29" - }, - "10148": { - "branch": 404, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18585, - 18822 - ], - "op": "ISZERO", - "path": "29" - }, - "10149": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "PUSH2", - "path": "29", - "value": "0x27C0" - }, - "10152": { - "branch": 404, - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "JUMPI", - "path": "29" - }, - "10153": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10155": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "MLOAD", - "path": "29" - }, - "10156": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "10160": { - "op": "PUSH1", - "value": "0xE5" - }, - "10162": { - "op": "SHL" - }, - "10163": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "DUP2", - "path": "29" - }, - "10164": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "MSTORE", - "path": "29" - }, - "10165": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "10167": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "ADD", - "path": "29" - }, - "10168": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "PUSH2", - "path": "29", - "value": "0x17A" - }, - "10171": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "SWAP1", - "path": "29" - }, - "10172": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "PUSH2", - "path": "29", - "value": "0x498E" - }, - "10175": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18525, - 18882 - ], - "op": "JUMP", - "path": "29" - }, - "10176": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18525, - 18882 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10177": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 18968 - ], - "op": "PUSH1", - "path": "29", - "statement": 233, - "value": "0xC0" - }, - "10179": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 18968 - ], - "op": "DUP5", - "path": "29" - }, - "10180": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 18968 - ], - "op": "ADD", - "path": "29" - }, - "10181": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 18968 - ], - "op": "MLOAD", - "path": "29" - }, - "10182": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 19023 - ], - "op": "PUSH2", - "path": "29", - "value": "0x27CF" - }, - "10185": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 19023 - ], - "op": "SWAP1", - "path": "29" - }, - "10186": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18990, - 19009 - ], - "op": "DUP4", - "path": "29" - }, - "10187": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 18972 - ], - "op": "PUSH2", - "path": "29", - "value": "0x287E" - }, - "10190": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 18934, - 19023 - ], - "op": "JUMP", - "path": "29" - }, - "10191": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18934, - 19023 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10192": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18897, - 18931 - ], - "op": "PUSH1", - "path": "29", - "value": "0xC0" - }, - "10194": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18897, - 18931 - ], - "op": "DUP6", - "path": "29" - }, - "10195": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18897, - 18931 - ], - "op": "ADD", - "path": "29" - }, - "10196": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 18897, - 19023 - ], - "op": "MSTORE", - "path": "29" - }, - "10197": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19114, - 19137 - ], - "op": "DUP4", - "path": "29" - }, - "10198": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19114, - 19137 - ], - "op": "MLOAD", - "path": "29" - }, - "10199": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10201": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "MLOAD", - "path": "29" - }, - "10202": { - "op": "PUSH4", - "value": "0x52E73F77" - }, - "10207": { - "op": "PUSH1", - "value": "0xE0" - }, - "10209": { - "op": "SHL" - }, - "10210": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP2", - "path": "29" - }, - "10211": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "MSTORE", - "path": "29" - }, - "10212": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19038, - 19054 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10214": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19038, - 19054 - ], - "op": "SWAP2", - "path": "29" - }, - "10215": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19075 - ], - "op": "PUSH20", - "path": "29", - "value": "0x0" - }, - "10236": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19075 - ], - "op": "SWAP2", - "path": "29" - }, - "10237": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19096 - ], - "op": "PUSH4", - "path": "29", - "value": "0x52E73F77" - }, - "10242": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19096 - ], - "op": "SWAP2", - "path": "29" - }, - "10243": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2810" - }, - "10246": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "SWAP2", - "path": "29" - }, - "10247": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19155, - 19174 - ], - "op": "DUP8", - "path": "29" - }, - "10248": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19155, - 19174 - ], - "op": "SWAP1", - "path": "29" - }, - "10249": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x4" - }, - "10251": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ADD", - "path": "29" - }, - "10252": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x4AC3" - }, - "10255": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 19057, - 19188 - ], - "op": "JUMP", - "path": "29" - }, - "10256": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10257": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x20" - }, - "10259": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10261": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "MLOAD", - "path": "29" - }, - "10262": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10263": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP4", - "path": "29" - }, - "10264": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "SUB", - "path": "29" - }, - "10265": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP2", - "path": "29" - }, - "10266": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP7", - "path": "29" - }, - "10267": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10268": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "EXTCODESIZE", - "path": "29" - }, - "10269": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ISZERO", - "path": "29" - }, - "10270": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10271": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ISZERO", - "path": "29" - }, - "10272": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2828" - }, - "10275": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "JUMPI", - "path": "29" - }, - "10276": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10278": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10279": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "REVERT", - "path": "29" - }, - "10280": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10281": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "POP", - "path": "29" - }, - "10282": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "GAS", - "path": "29" - }, - "10283": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DELEGATECALL", - "path": "29" - }, - "10284": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ISZERO", - "path": "29" - }, - "10285": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10286": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ISZERO", - "path": "29" - }, - "10287": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x283C" - }, - "10290": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "JUMPI", - "path": "29" - }, - "10291": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "10292": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10294": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10295": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "RETURNDATACOPY", - "path": "29" - }, - "10296": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "10297": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x0" - }, - "10299": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "REVERT", - "path": "29" - }, - "10300": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10301": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "POP", - "path": "29" - }, - "10302": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "POP", - "path": "29" - }, - "10303": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "POP", - "path": "29" - }, - "10304": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "POP", - "path": "29" - }, - "10305": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10307": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "MLOAD", - "path": "29" - }, - "10308": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "RETURNDATASIZE", - "path": "29" - }, - "10309": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "10311": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "NOT", - "path": "29" - }, - "10312": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x1F" - }, - "10314": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP3", - "path": "29" - }, - "10315": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ADD", - "path": "29" - }, - "10316": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "AND", - "path": "29" - }, - "10317": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP3", - "path": "29" - }, - "10318": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ADD", - "path": "29" - }, - "10319": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP1", - "path": "29" - }, - "10320": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH1", - "path": "29", - "value": "0x40" - }, - "10322": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "MSTORE", - "path": "29" - }, - "10323": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "POP", - "path": "29" - }, - "10324": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "DUP2", - "path": "29" - }, - "10325": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "ADD", - "path": "29" - }, - "10326": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "SWAP1", - "path": "29" - }, - "10327": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2860" - }, - "10330": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "SWAP2", - "path": "29" - }, - "10331": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "SWAP1", - "path": "29" - }, - "10332": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "PUSH2", - "path": "29", - "value": "0x43D8" - }, - "10335": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 19057, - 19188 - ], - "op": "JUMP", - "path": "29" - }, - "10336": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19057, - 19188 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10337": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19258 - ], - "op": "PUSH1", - "path": "29", - "statement": 234, - "value": "0x60" - }, - "10339": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19258 - ], - "op": "DUP7", - "path": "29" - }, - "10340": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19258 - ], - "op": "ADD", - "path": "29" - }, - "10341": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19258 - ], - "op": "MLOAD", - "path": "29" - }, - "10342": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19038, - 19188 - ], - "op": "SWAP1", - "path": "29" - }, - "10343": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19038, - 19188 - ], - "op": "SWAP2", - "path": "29" - }, - "10344": { - "op": "POP" - }, - "10345": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19273 - ], - "op": "PUSH2", - "path": "29", - "value": "0x2872" - }, - "10348": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19273 - ], - "op": "SWAP1", - "path": "29" - }, - "10349": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19038, - 19188 - ], - "op": "DUP3", - "path": "29" - }, - "10350": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19262 - ], - "op": "PUSH2", - "path": "29", - "value": "0xEC5" - }, - "10353": { - "fn": "BatchAction._executeNTokenAction", - "jump": "i", - "offset": [ - 19232, - 19273 - ], - "op": "JUMP", - "path": "29" - }, - "10354": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19232, - 19273 - ], - "op": "JUMPDEST", - "path": "29" - }, - "10355": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19203, - 19229 - ], - "op": "PUSH1", - "path": "29", - "value": "0x60" - }, - "10357": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19203, - 19229 - ], - "op": "DUP7", - "path": "29" - }, - "10358": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19203, - 19229 - ], - "op": "ADD", - "path": "29" - }, - "10359": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 19203, - 19273 - ], - "op": "MSTORE", - "path": "29" - }, - "10360": { - "op": "POP" - }, - "10361": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17289, - 19290 - ], - "op": "POP", - "path": "29" - }, - "10362": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17289, - 19290 - ], - "op": "POP", - "path": "29" - }, - "10363": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17289, - 19290 - ], - "op": "POP", - "path": "29" - }, - "10364": { - "fn": "BatchAction._executeNTokenAction", - "offset": [ - 17289, - 19290 - ], - "op": "POP", - "path": "29" - }, - "10365": { - "fn": "BatchAction._executeNTokenAction", - "jump": "o", - "offset": [ - 17289, - 19290 - ], - "op": "JUMP", - "path": "29" - }, - "10366": { - "fn": "SafeInt256.sub", - "offset": [ - 1267, - 1421 - ], - "op": "JUMPDEST", - "path": "94" - }, - "10367": { - "fn": "SafeInt256.sub", - "offset": [ - 1390, - 1395 - ], - "op": "DUP1", - "path": "94", - "statement": 235 - }, - "10368": { - "fn": "SafeInt256.sub", - "offset": [ - 1390, - 1395 - ], - "op": "DUP3", - "path": "94" - }, - "10369": { - "fn": "SafeInt256.sub", - "offset": [ - 1390, - 1395 - ], - "op": "SUB", - "path": "94" - }, - "10370": { - "fn": "SafeInt256.sub", - "offset": [ - 1385, - 1401 - ], - "op": "DUP3", - "path": "94" - }, - "10371": { - "fn": "SafeInt256.sub", - "offset": [ - 1385, - 1401 - ], - "op": "DUP2", - "path": "94" - }, - "10372": { - "fn": "SafeInt256.sub", - "offset": [ - 1385, - 1401 - ], - "op": "SGT", - "path": "94" - }, - "10373": { - "fn": "SafeInt256.sub", - "offset": [ - 1385, - 1401 - ], - "op": "ISZERO", - "path": "94" - }, - "10374": { - "fn": "SafeInt256.sub", - "offset": [ - 1323, - 1331 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "10376": { - "fn": "SafeInt256.sub", - "offset": [ - 1406, - 1412 - ], - "op": "DUP4", - "path": "94" - }, - "10377": { - "fn": "SafeInt256.sub", - "offset": [ - 1406, - 1412 - ], - "op": "SLT", - "path": "94" - }, - "10378": { - "fn": "SafeInt256.sub", - "offset": [ - 1406, - 1412 - ], - "op": "ISZERO", - "path": "94" - }, - "10379": { - "branch": 535, - "fn": "SafeInt256.sub", - "offset": [ - 1385, - 1413 - ], - "op": "EQ", - "path": "94" - }, - "10380": { - "fn": "SafeInt256.sub", - "offset": [ - 1377, - 1414 - ], - "op": "PUSH2", - "path": "94", - "value": "0xEDB" - }, - "10383": { - "branch": 535, - "fn": "SafeInt256.sub", - "offset": [ - 1377, - 1414 - ], - "op": "JUMPI", - "path": "94" - }, - "10384": { - "fn": "SafeInt256.sub", - "offset": [ - 1377, - 1414 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "10386": { - "fn": "SafeInt256.sub", - "offset": [ - 1377, - 1414 - ], - "op": "DUP1", - "path": "94" - }, - "10387": { - "fn": "SafeInt256.sub", - "offset": [ - 1377, - 1414 - ], - "op": "REVERT", - "path": "94" - }, - "10388": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2175, - 2407 - ], - "op": "JUMPDEST", - "path": "62" - }, - "10389": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2241, - 2288 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "10391": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2305, - 2317 - ], - "op": "DUP1", - "path": "62" - }, - "10392": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2320, - 2360 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "10395": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2336, - 2359 - ], - "op": "PUSH1", - "path": "62", - "value": "0x2" - }, - "10397": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2320, - 2335 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "10400": { - "fn": "LibStorage.getNTokenContextStorage", - "jump": "i", - "offset": [ - 2320, - 2360 - ], - "op": "JUMP", - "path": "62" - }, - "10401": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 583, - 743 - ], - "op": "JUMPDEST", - "path": "78" - }, - "10402": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 641, - 648 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "10404": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "10408": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 668, - 672 - ], - "op": "DUP3", - "path": "78", - "statement": 236 - }, - "10409": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 668, - 689 - ], - "op": "LT", - "path": "78" - }, - "10410": { - "branch": 481, - "fn": "DateTime.getTimeUTC0", - "offset": [ - 668, - 689 - ], - "op": "ISZERO", - "path": "78" - }, - "10411": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "PUSH2", - "path": "78", - "value": "0x28B3" - }, - "10414": { - "branch": 481, - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "JUMPI", - "path": "78" - }, - "10415": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "10417": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "DUP1", - "path": "78" - }, - "10418": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "REVERT", - "path": "78" - }, - "10419": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "JUMPDEST", - "path": "78" - }, - "10420": { - "op": "POP" - }, - "10421": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "10425": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 715, - 735 - ], - "op": "DUP2", - "path": "78", - "statement": 237 - }, - "10426": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 715, - 735 - ], - "op": "MOD", - "path": "78" - }, - "10427": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SWAP1", - "path": "78" - }, - "10428": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SUB", - "path": "78" - }, - "10429": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SWAP1", - "path": "78" - }, - "10430": { - "fn": "DateTime.getTimeUTC0", - "jump": "o", - "offset": [ - 583, - 743 - ], - "op": "JUMP", - "path": "78" - }, - "10431": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16756, - 17863 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10432": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16858, - 16881 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "10434": { - "offset": [ - 588, - 590 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "10436": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16961 - ], - "op": "DUP3", - "path": "84", - "statement": 238 - }, - "10437": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "10439": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "AND", - "path": "84" - }, - "10440": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "GT", - "path": "84" - }, - "10441": { - "branch": 506, - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "ISZERO", - "path": "84" - }, - "10442": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28D2" - }, - "10445": { - "branch": 506, - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "JUMPI", - "path": "84" - }, - "10446": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10448": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "DUP1", - "path": "84" - }, - "10449": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "REVERT", - "path": "84" - }, - "10450": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10451": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16997, - 17087 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10453": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17090, - 17127 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28DC" - }, - "10456": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17090, - 17125 - ], - "op": "PUSH2", - "path": "84", - "value": "0x37BE" - }, - "10459": { - "fn": "PortfolioHandler._loadAssetArray", - "jump": "i", - "offset": [ - 17090, - 17127 - ], - "op": "JUMP", - "path": "84" - }, - "10460": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17090, - 17127 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10461": { - "op": "PUSH1", - "value": "0x1" - }, - "10463": { - "op": "PUSH1", - "value": "0x1" - }, - "10465": { - "op": "PUSH1", - "value": "0xA0" - }, - "10467": { - "op": "SHL" - }, - "10468": { - "op": "SUB" - }, - "10469": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP6", - "path": "84" - }, - "10470": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "AND", - "path": "84" - }, - "10471": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17137, - 17201 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10473": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "SWAP1", - "path": "84" - }, - "10474": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP2", - "path": "84" - }, - "10475": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "MSTORE", - "path": "84" - }, - "10476": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10478": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP3", - "path": "84" - }, - "10479": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "SWAP1", - "path": "84" - }, - "10480": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "MSTORE", - "path": "84" - }, - "10481": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10483": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP2", - "path": "84" - }, - "10484": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "KECCAK256", - "path": "84" - }, - "10485": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16997, - 17127 - ], - "op": "SWAP2", - "path": "84" - }, - "10486": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16997, - 17127 - ], - "op": "SWAP3", - "path": "84" - }, - "10487": { - "op": "POP" - }, - "10488": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "10490": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP6", - "path": "84" - }, - "10491": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "AND", - "path": "84" - }, - "10492": { - "op": "PUSH1", - "value": "0x1" - }, - "10494": { - "op": "PUSH1", - "value": "0x1" - }, - "10496": { - "op": "PUSH1", - "value": "0x40" - }, - "10498": { - "op": "SHL" - }, - "10499": { - "op": "SUB" - }, - "10500": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "10501": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "GT", - "path": "84" - }, - "10502": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "10503": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ISZERO", - "path": "84" - }, - "10504": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2910" - }, - "10507": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPI", - "path": "84" - }, - "10508": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10510": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "10511": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "REVERT", - "path": "84" - }, - "10512": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10513": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "POP", - "path": "84" - }, - "10514": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10516": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MLOAD", - "path": "84" - }, - "10517": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "10518": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "10519": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP3", - "path": "84" - }, - "10520": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MSTORE", - "path": "84" - }, - "10521": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "10522": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10524": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MUL", - "path": "84" - }, - "10525": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10527": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "10528": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP3", - "path": "84" - }, - "10529": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "10530": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10532": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MSTORE", - "path": "84" - }, - "10533": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "10534": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ISZERO", - "path": "84" - }, - "10535": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x294A" - }, - "10538": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPI", - "path": "84" - }, - "10539": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "10540": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10542": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "10543": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10544": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2937" - }, - "10547": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3FB8" - }, - "10550": { - "fn": "PortfolioHandler._loadAssetArray", - "jump": "i", - "offset": [ - 17261, - 17289 - ], - "op": "JUMP", - "path": "84" - }, - "10551": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10552": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "10553": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MSTORE", - "path": "84" - }, - "10554": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10556": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "10557": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "10558": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10560": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "10561": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SUB", - "path": "84" - }, - "10562": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "10563": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "10564": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x292F" - }, - "10567": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPI", - "path": "84" - }, - "10568": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "10569": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "POP", - "path": "84" - }, - "10570": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10571": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "POP", - "path": "84" - }, - "10572": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17228, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "10573": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17228, - 17289 - ], - "op": "POP", - "path": "84" - }, - "10574": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17305, - 17314 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10576": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10577": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17324, - 17330 - ], - "op": "DUP6", - "path": "84" - }, - "10578": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17330 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "10580": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17330 - ], - "op": "AND", - "path": "84" - }, - "10581": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17321 - ], - "op": "DUP2", - "path": "84" - }, - "10582": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17330 - ], - "op": "LT", - "path": "84" - }, - "10583": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "ISZERO", - "path": "84" - }, - "10584": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29D6" - }, - "10587": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMPI", - "path": "84" - }, - "10588": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17351, - 17393 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10590": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17408 - ], - "op": "DUP4", - "path": "84" - }, - "10591": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17409, - 17410 - ], - "op": "DUP3", - "path": "84" - }, - "10592": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "10594": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "DUP2", - "path": "84" - }, - "10595": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "LT", - "path": "84" - }, - "10596": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2969" - }, - "10599": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "JUMPI", - "path": "84" - }, - "10600": { - "dev": "Index out of range", - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "INVALID", - "path": "84" - }, - "10601": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10602": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "ADD", - "path": "84" - }, - "10603": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17351, - 17411 - ], - "op": "SWAP1", - "path": "84" - }, - "10604": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17351, - 17411 - ], - "op": "POP", - "path": "84" - }, - "10605": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17425, - 17452 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10607": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17461 - ], - "op": "DUP4", - "path": "84" - }, - "10608": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17462, - 17463 - ], - "op": "DUP4", - "path": "84" - }, - "10609": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "10610": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "MLOAD", - "path": "84" - }, - "10611": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "10612": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "LT", - "path": "84" - }, - "10613": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "PUSH2", - "path": "84", - "value": "0x297A" - }, - "10616": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "JUMPI", - "path": "84" - }, - "10617": { - "dev": "Index out of range", - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "INVALID", - "path": "84" - }, - "10618": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10619": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10621": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP1", - "path": "84" - }, - "10622": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "10623": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "MUL", - "path": "84" - }, - "10624": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP2", - "path": "84" - }, - "10625": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP1", - "path": "84" - }, - "10626": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP2", - "path": "84" - }, - "10627": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "ADD", - "path": "84" - }, - "10628": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "10629": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "ADD", - "path": "84" - }, - "10630": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "MLOAD", - "path": "84" - }, - "10631": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "DUP4", - "path": "84", - "statement": 239 - }, - "10632": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "SLOAD", - "path": "84" - }, - "10633": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "PUSH2", - "path": "84", - "value": "0xFFFF" - }, - "10636": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "DUP2", - "path": "84" - }, - "10637": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "AND", - "path": "84" - }, - "10638": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17584, - 17626 - ], - "op": "DUP3", - "path": "84" - }, - "10639": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17584, - 17626 - ], - "op": "MSTORE", - "path": "84" - }, - "10640": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "PUSH5", - "path": "84", - "statement": 240, - "value": "0xFFFFFFFFFF" - }, - "10646": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "PUSH3", - "path": "84", - "value": "0x10000" - }, - "10650": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "DUP3", - "path": "84" - }, - "10651": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "DIV", - "path": "84" - }, - "10652": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "AND", - "path": "84" - }, - "10653": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17654 - ], - "op": "SWAP3", - "path": "84" - }, - "10654": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17654 - ], - "op": "DUP3", - "path": "84" - }, - "10655": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17654 - ], - "op": "ADD", - "path": "84" - }, - "10656": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "SWAP3", - "path": "84" - }, - "10657": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "SWAP1", - "path": "84" - }, - "10658": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "SWAP3", - "path": "84" - }, - "10659": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "MSTORE", - "path": "84" - }, - "10660": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "PUSH1", - "path": "84", - "statement": 241, - "value": "0xFF" - }, - "10662": { - "op": "PUSH1", - "value": "0x1" - }, - "10664": { - "op": "PUSH1", - "value": "0x38" - }, - "10666": { - "op": "SHL" - }, - "10667": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "DUP4", - "path": "84" - }, - "10668": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "DIV", - "path": "84" - }, - "10669": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "AND", - "path": "84" - }, - "10670": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17707 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10672": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17707 - ], - "op": "DUP3", - "path": "84" - }, - "10673": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17707 - ], - "op": "ADD", - "path": "84" - }, - "10674": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17732 - ], - "op": "MSTORE", - "path": "84" - }, - "10675": { - "op": "PUSH1", - "value": "0x1" - }, - "10677": { - "op": "PUSH1", - "value": "0x40" - }, - "10679": { - "op": "SHL" - }, - "10680": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SWAP1", - "path": "84", - "statement": 242 - }, - "10681": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SWAP2", - "path": "84" - }, - "10682": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "DIV", - "path": "84" - }, - "10683": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA" - }, - "10685": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SWAP1", - "path": "84" - }, - "10686": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "DUP2", - "path": "84" - }, - "10687": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SIGNEXTEND", - "path": "84" - }, - "10688": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17784 - ], - "op": "SWAP1", - "path": "84" - }, - "10689": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17784 - ], - "op": "SIGNEXTEND", - "path": "84" - }, - "10690": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17760 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "10692": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17760 - ], - "op": "DUP3", - "path": "84" - }, - "10693": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17760 - ], - "op": "ADD", - "path": "84" - }, - "10694": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17784 - ], - "op": "MSTORE", - "path": "84" - }, - "10695": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17815 - ], - "op": "PUSH1", - "path": "84", - "statement": 243, - "value": "0x80" - }, - "10697": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17815 - ], - "op": "ADD", - "path": "84" - }, - "10698": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "SWAP2", - "path": "84" - }, - "10699": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "SWAP1", - "path": "84" - }, - "10700": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "SWAP2", - "path": "84" - }, - "10701": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "MSTORE", - "path": "84" - }, - "10702": { - "op": "POP" - }, - "10703": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10705": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17332, - 17335 - ], - "op": "ADD", - "path": "84", - "statement": 244 - }, - "10706": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2950" - }, - "10709": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMP", - "path": "84" - }, - "10710": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10711": { - "op": "POP" - }, - "10712": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17850, - 17856 - ], - "op": "SWAP6", - "path": "84", - "statement": 245 - }, - "10713": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16756, - 17863 - ], - "op": "SWAP5", - "path": "84" - }, - "10714": { - "op": "POP" - }, - "10715": { - "op": "POP" - }, - "10716": { - "op": "POP" - }, - "10717": { - "op": "POP" - }, - "10718": { - "op": "POP" - }, - "10719": { - "fn": "PortfolioHandler._loadAssetArray", - "jump": "o", - "offset": [ - 16756, - 17863 - ], - "op": "JUMP", - "path": "84" - }, - "10720": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15921, - 16750 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10721": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16015, - 16028 - ], - "op": "DUP1", - "path": "84" - }, - "10722": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16015, - 16028 - ], - "op": "MLOAD", - "path": "84" - }, - "10723": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15998, - 16012 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10725": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16015, - 16028 - ], - "op": "DUP2", - "path": "84" - }, - "10726": { - "op": "PUSH1", - "value": "0x1" - }, - "10728": { - "op": "PUSH1", - "value": "0x1" - }, - "10730": { - "op": "PUSH1", - "value": "0x40" - }, - "10732": { - "op": "SHL" - }, - "10733": { - "op": "SUB" - }, - "10734": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP2", - "path": "84" - }, - "10735": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "GT", - "path": "84" - }, - "10736": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "10737": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ISZERO", - "path": "84" - }, - "10738": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29FA" - }, - "10741": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPI", - "path": "84" - }, - "10742": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10744": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "10745": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "REVERT", - "path": "84" - }, - "10746": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10747": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "POP", - "path": "84" - }, - "10748": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10750": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MLOAD", - "path": "84" - }, - "10751": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "SWAP1", - "path": "84" - }, - "10752": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "10753": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP3", - "path": "84" - }, - "10754": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MSTORE", - "path": "84" - }, - "10755": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "10756": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10758": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MUL", - "path": "84" - }, - "10759": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10761": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "10762": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP3", - "path": "84" - }, - "10763": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "10764": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10766": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MSTORE", - "path": "84" - }, - "10767": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "10768": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ISZERO", - "path": "84" - }, - "10769": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A24" - }, - "10772": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPI", - "path": "84" - }, - "10773": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP2", - "path": "84" - }, - "10774": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10776": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "10777": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10779": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP3", - "path": "84" - }, - "10780": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MUL", - "path": "84" - }, - "10781": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "10782": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "CALLDATASIZE", - "path": "84" - }, - "10783": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP4", - "path": "84" - }, - "10784": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "CALLDATACOPY", - "path": "84" - }, - "10785": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "10786": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "SWAP1", - "path": "84" - }, - "10787": { - "op": "POP" - }, - "10788": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10789": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "POP", - "path": "84" - }, - "10790": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16038, - 16082 - ], - "op": "SWAP1", - "path": "84" - }, - "10791": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16038, - 16082 - ], - "op": "POP", - "path": "84" - }, - "10792": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16097, - 16106 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10794": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10795": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16112, - 16118 - ], - "op": "DUP3", - "path": "84" - }, - "10796": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16108, - 16109 - ], - "op": "DUP2", - "path": "84" - }, - "10797": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16108, - 16118 - ], - "op": "LT", - "path": "84" - }, - "10798": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "ISZERO", - "path": "84" - }, - "10799": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A81" - }, - "10802": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMPI", - "path": "84" - }, - "10803": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16139, - 16166 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10805": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16175 - ], - "op": "DUP5", - "path": "84" - }, - "10806": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16176, - 16177 - ], - "op": "DUP3", - "path": "84" - }, - "10807": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "DUP2", - "path": "84" - }, - "10808": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "MLOAD", - "path": "84" - }, - "10809": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "DUP2", - "path": "84" - }, - "10810": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "LT", - "path": "84" - }, - "10811": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A40" - }, - "10814": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "JUMPI", - "path": "84" - }, - "10815": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "INVALID", - "path": "84" - }, - "10816": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10817": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10819": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "MUL", - "path": "84" - }, - "10820": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10822": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "ADD", - "path": "84" - }, - "10823": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "ADD", - "path": "84" - }, - "10824": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "MLOAD", - "path": "84" - }, - "10825": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16139, - 16178 - ], - "op": "SWAP1", - "path": "84" - }, - "10826": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16139, - 16178 - ], - "op": "POP", - "path": "84" - }, - "10827": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16259, - 16338 - ], - "op": "PUSH2", - "path": "84", - "statement": 246, - "value": "0x2A61" - }, - "10830": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16293 - ], - "op": "DUP2", - "path": "84" - }, - "10831": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16304 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10833": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16304 - ], - "op": "ADD", - "path": "84" - }, - "10834": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16304 - ], - "op": "MLOAD", - "path": "84" - }, - "10835": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16311 - ], - "op": "DUP3", - "path": "84" - }, - "10836": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16320 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10838": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16320 - ], - "op": "ADD", - "path": "84" - }, - "10839": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16320 - ], - "op": "MLOAD", - "path": "84" - }, - "10840": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16327 - ], - "op": "DUP4", - "path": "84" - }, - "10841": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16337 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10843": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16337 - ], - "op": "ADD", - "path": "84" - }, - "10844": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16337 - ], - "op": "MLOAD", - "path": "84" - }, - "10845": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16259, - 16287 - ], - "op": "PUSH2", - "path": "84", - "value": "0x37E0" - }, - "10848": { - "fn": "PortfolioHandler._sortInPlace", - "jump": "i", - "offset": [ - 16259, - 16338 - ], - "op": "JUMP", - "path": "84" - }, - "10849": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16259, - 16338 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10850": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16253 - ], - "op": "DUP4", - "path": "84" - }, - "10851": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16254, - 16255 - ], - "op": "DUP4", - "path": "84" - }, - "10852": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "DUP2", - "path": "84" - }, - "10853": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "MLOAD", - "path": "84" - }, - "10854": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "DUP2", - "path": "84" - }, - "10855": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "LT", - "path": "84" - }, - "10856": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A6D" - }, - "10859": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "JUMPI", - "path": "84" - }, - "10860": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "INVALID", - "path": "84" - }, - "10861": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10862": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10864": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP1", - "path": "84" - }, - "10865": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "DUP2", - "path": "84" - }, - "10866": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "MUL", - "path": "84" - }, - "10867": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP2", - "path": "84" - }, - "10868": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP1", - "path": "84" - }, - "10869": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP2", - "path": "84" - }, - "10870": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "ADD", - "path": "84" - }, - "10871": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "ADD", - "path": "84" - }, - "10872": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16338 - ], - "op": "MSTORE", - "path": "84" - }, - "10873": { - "op": "POP" - }, - "10874": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16120, - 16123 - ], - "op": "PUSH1", - "path": "84", - "statement": 247, - "value": "0x1" - }, - "10876": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16120, - 16123 - ], - "op": "ADD", - "path": "84" - }, - "10877": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A2A" - }, - "10880": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMP", - "path": "84" - }, - "10881": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10882": { - "op": "POP" - }, - "10883": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16403, - 16404 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10885": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10886": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16425, - 16431 - ], - "op": "DUP3", - "path": "84" - }, - "10887": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16421, - 16422 - ], - "op": "DUP2", - "path": "84" - }, - "10888": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16421, - 16431 - ], - "op": "LT", - "path": "84" - }, - "10889": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "ISZERO", - "path": "84" - }, - "10890": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "PUSH2", - "path": "84", - "value": "0x16D2" - }, - "10893": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMPI", - "path": "84" - }, - "10894": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16459, - 16460 - ], - "op": "DUP1", - "path": "84" - }, - "10895": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10896": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16485, - 16486 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10898": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16482 - ], - "op": "DUP2", - "path": "84" - }, - "10899": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16486 - ], - "op": "GT", - "path": "84" - }, - "10900": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "DUP1", - "path": "84" - }, - "10901": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "ISZERO", - "path": "84" - }, - "10902": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AC7" - }, - "10905": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "JUMPI", - "path": "84" - }, - "10906": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "POP", - "path": "84" - }, - "10907": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16506 - ], - "op": "DUP3", - "path": "84" - }, - "10908": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16507, - 16508 - ], - "op": "DUP2", - "path": "84" - }, - "10909": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "DUP2", - "path": "84" - }, - "10910": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "MLOAD", - "path": "84" - }, - "10911": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "DUP2", - "path": "84" - }, - "10912": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "LT", - "path": "84" - }, - "10913": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AA6" - }, - "10916": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "JUMPI", - "path": "84" - }, - "10917": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "INVALID", - "path": "84" - }, - "10918": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10919": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10921": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "MUL", - "path": "84" - }, - "10922": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10924": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "ADD", - "path": "84" - }, - "10925": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "ADD", - "path": "84" - }, - "10926": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "MLOAD", - "path": "84" - }, - "10927": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16493 - ], - "op": "DUP4", - "path": "84" - }, - "10928": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16498, - 16499 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10930": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16494, - 16495 - ], - "op": "DUP4", - "path": "84" - }, - "10931": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16494, - 16499 - ], - "op": "SUB", - "path": "84" - }, - "10932": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "DUP2", - "path": "84" - }, - "10933": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "MLOAD", - "path": "84" - }, - "10934": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "DUP2", - "path": "84" - }, - "10935": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "LT", - "path": "84" - }, - "10936": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2ABD" - }, - "10939": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "JUMPI", - "path": "84" - }, - "10940": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "INVALID", - "path": "84" - }, - "10941": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10942": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10944": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "MUL", - "path": "84" - }, - "10945": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10947": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "ADD", - "path": "84" - }, - "10948": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "ADD", - "path": "84" - }, - "10949": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "MLOAD", - "path": "84" - }, - "10950": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16509 - ], - "op": "GT", - "path": "84" - }, - "10951": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10952": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "ISZERO", - "path": "84" - }, - "10953": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B8F" - }, - "10956": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMPI", - "path": "84" - }, - "10957": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16592 - ], - "op": "DUP3", - "path": "84", - "statement": 248 - }, - "10958": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16593, - 16594 - ], - "op": "DUP2", - "path": "84" - }, - "10959": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "DUP2", - "path": "84" - }, - "10960": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "MLOAD", - "path": "84" - }, - "10961": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "DUP2", - "path": "84" - }, - "10962": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "LT", - "path": "84" - }, - "10963": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AD8" - }, - "10966": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "JUMPI", - "path": "84" - }, - "10967": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "INVALID", - "path": "84" - }, - "10968": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10969": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10971": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "MUL", - "path": "84" - }, - "10972": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10974": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "ADD", - "path": "84" - }, - "10975": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "ADD", - "path": "84" - }, - "10976": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "MLOAD", - "path": "84" - }, - "10977": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16600 - ], - "op": "DUP4", - "path": "84" - }, - "10978": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16605, - 16606 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10980": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16601, - 16602 - ], - "op": "DUP4", - "path": "84" - }, - "10981": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16601, - 16606 - ], - "op": "SUB", - "path": "84" - }, - "10982": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "DUP2", - "path": "84" - }, - "10983": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "MLOAD", - "path": "84" - }, - "10984": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "DUP2", - "path": "84" - }, - "10985": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "LT", - "path": "84" - }, - "10986": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AEF" - }, - "10989": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "JUMPI", - "path": "84" - }, - "10990": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "INVALID", - "path": "84" - }, - "10991": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10992": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10994": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "MUL", - "path": "84" - }, - "10995": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10997": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "ADD", - "path": "84" - }, - "10998": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "ADD", - "path": "84" - }, - "10999": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "MLOAD", - "path": "84" - }, - "11000": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16569 - ], - "op": "DUP5", - "path": "84" - }, - "11001": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16574, - 16575 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "11003": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16570, - 16571 - ], - "op": "DUP5", - "path": "84" - }, - "11004": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16570, - 16575 - ], - "op": "SUB", - "path": "84" - }, - "11005": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "DUP2", - "path": "84" - }, - "11006": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "MLOAD", - "path": "84" - }, - "11007": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "DUP2", - "path": "84" - }, - "11008": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "LT", - "path": "84" - }, - "11009": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B06" - }, - "11012": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "JUMPI", - "path": "84" - }, - "11013": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "INVALID", - "path": "84" - }, - "11014": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11015": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11017": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "MUL", - "path": "84" - }, - "11018": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11020": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "ADD", - "path": "84" - }, - "11021": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "ADD", - "path": "84" - }, - "11022": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16581 - ], - "op": "DUP6", - "path": "84" - }, - "11023": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16582, - 16583 - ], - "op": "DUP5", - "path": "84" - }, - "11024": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "DUP2", - "path": "84" - }, - "11025": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "MLOAD", - "path": "84" - }, - "11026": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "DUP2", - "path": "84" - }, - "11027": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "LT", - "path": "84" - }, - "11028": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B19" - }, - "11031": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "JUMPI", - "path": "84" - }, - "11032": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "INVALID", - "path": "84" - }, - "11033": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11034": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11036": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "MUL", - "path": "84" - }, - "11037": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11039": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "ADD", - "path": "84" - }, - "11040": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "ADD", - "path": "84" - }, - "11041": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP3", - "path": "84" - }, - "11042": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP2", - "path": "84" - }, - "11043": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "MSTORE", - "path": "84" - }, - "11044": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "11045": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP3", - "path": "84" - }, - "11046": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP2", - "path": "84" - }, - "11047": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "MSTORE", - "path": "84" - }, - "11048": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "11049": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "11050": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "11051": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16662 - ], - "op": "DUP5", - "path": "84", - "statement": 249 - }, - "11052": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16663, - 16664 - ], - "op": "DUP2", - "path": "84" - }, - "11053": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "DUP2", - "path": "84" - }, - "11054": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "MLOAD", - "path": "84" - }, - "11055": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "DUP2", - "path": "84" - }, - "11056": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "LT", - "path": "84" - }, - "11057": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B36" - }, - "11060": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "JUMPI", - "path": "84" - }, - "11061": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "INVALID", - "path": "84" - }, - "11062": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11063": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11065": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "MUL", - "path": "84" - }, - "11066": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11068": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "ADD", - "path": "84" - }, - "11069": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "ADD", - "path": "84" - }, - "11070": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "MLOAD", - "path": "84" - }, - "11071": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16673 - ], - "op": "DUP6", - "path": "84" - }, - "11072": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16678, - 16679 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "11074": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16674, - 16675 - ], - "op": "DUP4", - "path": "84" - }, - "11075": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16674, - 16679 - ], - "op": "SUB", - "path": "84" - }, - "11076": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "DUP2", - "path": "84" - }, - "11077": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "MLOAD", - "path": "84" - }, - "11078": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "DUP2", - "path": "84" - }, - "11079": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "LT", - "path": "84" - }, - "11080": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B4D" - }, - "11083": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "JUMPI", - "path": "84" - }, - "11084": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "INVALID", - "path": "84" - }, - "11085": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11086": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11088": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "MUL", - "path": "84" - }, - "11089": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11091": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "ADD", - "path": "84" - }, - "11092": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "ADD", - "path": "84" - }, - "11093": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "MLOAD", - "path": "84" - }, - "11094": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16633 - ], - "op": "DUP7", - "path": "84" - }, - "11095": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16638, - 16639 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "11097": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16634, - 16635 - ], - "op": "DUP5", - "path": "84" - }, - "11098": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16634, - 16639 - ], - "op": "SUB", - "path": "84" - }, - "11099": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "DUP2", - "path": "84" - }, - "11100": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "MLOAD", - "path": "84" - }, - "11101": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "DUP2", - "path": "84" - }, - "11102": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "LT", - "path": "84" - }, - "11103": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B64" - }, - "11106": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "JUMPI", - "path": "84" - }, - "11107": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "INVALID", - "path": "84" - }, - "11108": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11109": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11111": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "MUL", - "path": "84" - }, - "11112": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11114": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "ADD", - "path": "84" - }, - "11115": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "ADD", - "path": "84" - }, - "11116": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16648 - ], - "op": "DUP8", - "path": "84" - }, - "11117": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16649, - 16650 - ], - "op": "DUP5", - "path": "84" - }, - "11118": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "DUP2", - "path": "84" - }, - "11119": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "MLOAD", - "path": "84" - }, - "11120": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "DUP2", - "path": "84" - }, - "11121": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "LT", - "path": "84" - }, - "11122": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B77" - }, - "11125": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "JUMPI", - "path": "84" - }, - "11126": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "INVALID", - "path": "84" - }, - "11127": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11128": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11130": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP1", - "path": "84" - }, - "11131": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "DUP2", - "path": "84" - }, - "11132": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "MUL", - "path": "84" - }, - "11133": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP2", - "path": "84" - }, - "11134": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP1", - "path": "84" - }, - "11135": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP2", - "path": "84" - }, - "11136": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "ADD", - "path": "84" - }, - "11137": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "ADD", - "path": "84" - }, - "11138": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "SWAP2", - "path": "84" - }, - "11139": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "SWAP1", - "path": "84" - }, - "11140": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "SWAP2", - "path": "84" - }, - "11141": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "MSTORE", - "path": "84" - }, - "11142": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "MSTORE", - "path": "84" - }, - "11143": { - "op": "PUSH1", - "value": "0x0" - }, - "11145": { - "op": "NOT" - }, - "11146": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16699, - 16702 - ], - "op": "ADD", - "path": "84", - "statement": 250 - }, - "11147": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A8F" - }, - "11150": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMP", - "path": "84" - }, - "11151": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11152": { - "op": "POP" - }, - "11153": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16730, - 16733 - ], - "op": "PUSH1", - "path": "84", - "statement": 251, - "value": "0x1" - }, - "11155": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16730, - 16733 - ], - "op": "ADD", - "path": "84" - }, - "11156": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A85" - }, - "11159": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMP", - "path": "84" - }, - "11160": { - "fn": "LibStorage.getBalanceStorage", - "offset": [ - 3638, - 3878 - ], - "op": "JUMPDEST", - "path": "62" - }, - "11161": { - "fn": "LibStorage.getBalanceStorage", - "offset": [ - 3698, - 3766 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "11163": { - "fn": "LibStorage.getBalanceStorage", - "offset": [ - 3782, - 3794 - ], - "op": "DUP1", - "path": "62" - }, - "11164": { - "fn": "LibStorage.getBalanceStorage", - "offset": [ - 3797, - 3831 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "11167": { - "fn": "LibStorage.getBalanceStorage", - "offset": [ - 3813, - 3830 - ], - "op": "PUSH1", - "path": "62", - "value": "0x6" - }, - "11169": { - "fn": "LibStorage.getBalanceStorage", - "offset": [ - 3797, - 3812 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "11172": { - "fn": "LibStorage.getBalanceStorage", - "jump": "i", - "offset": [ - 3797, - 3831 - ], - "op": "JUMP", - "path": "62" - }, - "11173": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1180, - 1425 - ], - "op": "JUMPDEST", - "path": "93" - }, - "11174": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1403, - 1404 - ], - "op": "PUSH1", - "path": "93", - "statement": 252, - "value": "0x8" - }, - "11176": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1394, - 1404 - ], - "op": "DUP2", - "path": "93" - }, - "11177": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1394, - 1404 - ], - "op": "SWAP1", - "path": "93" - }, - "11178": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1394, - 1404 - ], - "op": "SHR", - "path": "93" - }, - "11179": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1354, - 1375 - ], - "op": "PUSH1", - "path": "93", - "value": "0xFF" - }, - "11181": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1354, - 1375 - ], - "op": "SWAP1", - "path": "93" - }, - "11182": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1354, - 1375 - ], - "op": "SWAP2", - "path": "93" - }, - "11183": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1354, - 1375 - ], - "op": "AND", - "path": "93" - }, - "11184": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1393, - 1417 - ], - "op": "SHL", - "path": "93" - }, - "11185": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "offset": [ - 1393, - 1417 - ], - "op": "SWAP1", - "path": "93" - }, - "11186": { - "fn": "FloatingPoint56.unpackFrom56Bits", - "jump": "o", - "offset": [ - 1180, - 1425 - ], - "op": "JUMP", - "path": "93" - }, - "11187": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 2832, - 3267 - ], - "op": "JUMPDEST", - "path": "76" - }, - "11188": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 2928, - 2955 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "11190": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 2957, - 2986 - ], - "op": "DUP1", - "path": "76" - }, - "11191": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3002, - 3052 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "11193": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3055, - 3087 - ], - "op": "PUSH2", - "path": "76", - "value": "0x2BC0" - }, - "11196": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3055, - 3085 - ], - "op": "PUSH2", - "path": "76", - "value": "0x383B" - }, - "11199": { - "fn": "AssetRate._getAssetRateStorage", - "jump": "i", - "offset": [ - 3055, - 3087 - ], - "op": "JUMP", - "path": "76" - }, - "11200": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3055, - 3087 - ], - "op": "JUMPDEST", - "path": "76" - }, - "11201": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3097, - 3124 - ], - "op": "PUSH1", - "path": "76", - "value": "0x0" - }, - "11203": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "SWAP5", - "path": "76" - }, - "11204": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "DUP6", - "path": "76" - }, - "11205": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "MSTORE", - "path": "76" - }, - "11206": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "PUSH1", - "path": "76", - "value": "0x20" - }, - "11208": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "MSTORE", - "path": "76" - }, - "11209": { - "op": "POP" - }, - "11210": { - "op": "POP" - }, - "11211": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "PUSH1", - "path": "76", - "value": "0x40" - }, - "11213": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "SWAP1", - "path": "76" - }, - "11214": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "SWAP2", - "path": "76" - }, - "11215": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3127, - 3144 - ], - "op": "KECCAK256", - "path": "76" - }, - "11216": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3184, - 3197 - ], - "op": "SLOAD", - "path": "76", - "statement": 253 - }, - "11217": { - "op": "PUSH1", - "value": "0x1" - }, - "11219": { - "op": "PUSH1", - "value": "0x1" - }, - "11221": { - "op": "PUSH1", - "value": "0xA0" - }, - "11223": { - "op": "SHL" - }, - "11224": { - "op": "SUB" - }, - "11225": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3184, - 3197 - ], - "op": "DUP2", - "path": "76" - }, - "11226": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3184, - 3197 - ], - "op": "AND", - "path": "76" - }, - "11227": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3184, - 3197 - ], - "op": "SWAP3", - "path": "76" - }, - "11228": { - "op": "PUSH1", - "value": "0x1" - }, - "11230": { - "op": "PUSH1", - "value": "0xA0" - }, - "11232": { - "op": "SHL" - }, - "11233": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3234, - 3260 - ], - "op": "SWAP1", - "path": "76", - "statement": 254 - }, - "11234": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3234, - 3260 - ], - "op": "SWAP2", - "path": "76" - }, - "11235": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3234, - 3260 - ], - "op": "DIV", - "path": "76" - }, - "11236": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3234, - 3260 - ], - "op": "PUSH1", - "path": "76", - "value": "0xFF" - }, - "11238": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3234, - 3260 - ], - "op": "AND", - "path": "76" - }, - "11239": { - "fn": "AssetRate._getAssetRateStorage", - "offset": [ - 3234, - 3260 - ], - "op": "SWAP2", - "path": "76" - }, - "11240": { - "op": "POP" - }, - "11241": { - "fn": "AssetRate._getAssetRateStorage", - "jump": "o", - "offset": [ - 2832, - 3267 - ], - "op": "JUMP", - "path": "76" - }, - "11242": { - "fn": "LibStorage.getTokenStorage", - "offset": [ - 3993, - 4224 - ], - "op": "JUMPDEST", - "path": "62" - }, - "11243": { - "fn": "LibStorage.getTokenStorage", - "offset": [ - 4051, - 4114 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "11245": { - "fn": "LibStorage.getTokenStorage", - "offset": [ - 4130, - 4142 - ], - "op": "DUP1", - "path": "62" - }, - "11246": { - "fn": "LibStorage.getTokenStorage", - "offset": [ - 4145, - 4177 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "11249": { - "fn": "LibStorage.getTokenStorage", - "offset": [ - 4161, - 4176 - ], - "op": "PUSH1", - "path": "62", - "value": "0x7" - }, - "11251": { - "fn": "LibStorage.getTokenStorage", - "offset": [ - 4145, - 4160 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "11254": { - "fn": "LibStorage.getTokenStorage", - "jump": "i", - "offset": [ - 4145, - 4177 - ], - "op": "JUMP", - "path": "62" - }, - "11255": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 4999, - 5988 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11256": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5122, - 5147 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "11258": { - "branch": 408, - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5163, - 5192 - ], - "op": "DUP2", - "path": "70" - }, - "11259": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5159, - 5202 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C06" - }, - "11262": { - "branch": 408, - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5159, - 5202 - ], - "op": "JUMPI", - "path": "70" - }, - "11263": { - "op": "POP" - }, - "11264": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5201, - 5202 - ], - "op": "PUSH1", - "path": "70", - "statement": 255, - "value": "0x0" - }, - "11266": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5194, - 5202 - ], - "op": "PUSH2", - "path": "70", - "value": "0xEDB" - }, - "11269": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5194, - 5202 - ], - "op": "JUMP", - "path": "70" - }, - "11270": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5159, - 5202 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11271": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5265, - 5277 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "11273": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5280, - 5324 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C11" - }, - "11276": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5308, - 5323 - ], - "op": "DUP5", - "path": "70" - }, - "11277": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5280, - 5307 - ], - "op": "PUSH2", - "path": "70", - "value": "0x30F3" - }, - "11280": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "jump": "i", - "offset": [ - 5280, - 5324 - ], - "op": "JUMP", - "path": "70" - }, - "11281": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5280, - 5324 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11282": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5265, - 5324 - ], - "op": "SWAP1", - "path": "70" - }, - "11283": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5265, - 5324 - ], - "op": "POP", - "path": "70" - }, - "11284": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5443, - 5453 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "11286": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5456, - 5486 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C1E" - }, - "11289": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5456, - 5480 - ], - "op": "DUP5", - "path": "70" - }, - "11290": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5456, - 5484 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3848" - }, - "11293": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "jump": "i", - "offset": [ - 5456, - 5486 - ], - "op": "JUMP", - "path": "70" - }, - "11294": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5456, - 5486 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11295": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5443, - 5486 - ], - "op": "SWAP1", - "path": "70" - }, - "11296": { - "op": "POP" - }, - "11297": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5841, - 5846 - ], - "op": "DUP2", - "path": "70", - "statement": 256 - }, - "11298": { - "op": "PUSH12", - "value": "0x19D971E4FE8401E74000001" - }, - "11311": { - "op": "PUSH1", - "value": "0x1" - }, - "11313": { - "op": "PUSH1", - "value": "0xFF" - }, - "11315": { - "op": "SHL" - }, - "11316": { - "op": "SUB" - }, - "11317": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5841, - 5846 - ], - "op": "DUP2", - "path": "70" - }, - "11318": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5810, - 5846 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C3B" - }, - "11321": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5810, - 5846 - ], - "op": "JUMPI", - "path": "70" - }, - "11322": { - "dev": "Division by zero", - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5810, - 5846 - ], - "op": "INVALID", - "path": "70" - }, - "11323": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5810, - 5846 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11324": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5810, - 5846 - ], - "op": "SDIV", - "path": "70" - }, - "11325": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5803, - 5806 - ], - "op": "DUP2", - "path": "70" - }, - "11326": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5803, - 5846 - ], - "op": "SGT", - "path": "70" - }, - "11327": { - "branch": 409, - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5803, - 5846 - ], - "op": "ISZERO", - "path": "70" - }, - "11328": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5795, - 5847 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C48" - }, - "11331": { - "branch": 409, - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5795, - 5847 - ], - "op": "JUMPI", - "path": "70" - }, - "11332": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5795, - 5847 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "11334": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5795, - 5847 - ], - "op": "DUP1", - "path": "70" - }, - "11335": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5795, - 5847 - ], - "op": "REVERT", - "path": "70" - }, - "11336": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5795, - 5847 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11337": { - "offset": [ - 457, - 461 - ], - "op": "PUSH12", - "path": "70", - "value": "0x33B2E3C9FD0803CE8000000" - }, - "11350": { - "offset": [ - 502, - 509 - ], - "op": "PUSH12", - "path": "70", - "value": "0x19D971E4FE8401E74000000" - }, - "11363": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5877, - 5888 - ], - "op": "DUP4", - "path": "70" - }, - "11364": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5877, - 5888 - ], - "op": "DUP4", - "path": "70" - }, - "11365": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5877, - 5888 - ], - "op": "MUL", - "path": "70" - }, - "11366": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5877, - 5898 - ], - "op": "ADD", - "path": "70" - }, - "11367": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5876, - 5905 - ], - "op": "SDIV", - "path": "70" - }, - "11368": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5857, - 5873 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "11370": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5951 - ], - "op": "DUP6", - "path": "70", - "statement": 257 - }, - "11371": { - "branch": 410, - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5951 - ], - "op": "SGT", - "path": "70" - }, - "11372": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5981 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C7D" - }, - "11375": { - "branch": 410, - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5981 - ], - "op": "JUMPI", - "path": "70" - }, - "11376": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5966, - 5981 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C78" - }, - "11379": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5966, - 5975 - ], - "op": "DUP2", - "path": "70" - }, - "11380": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5966, - 5979 - ], - "op": "PUSH2", - "path": "70", - "value": "0xEE1" - }, - "11383": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "jump": "i", - "offset": [ - 5966, - 5981 - ], - "op": "JUMP", - "path": "70" - }, - "11384": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5966, - 5981 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11385": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5981 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2C7F" - }, - "11388": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5981 - ], - "op": "JUMP", - "path": "70" - }, - "11389": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5981 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11390": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5954, - 5963 - ], - "op": "DUP1", - "path": "70" - }, - "11391": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5923, - 5981 - ], - "op": "JUMPDEST", - "path": "70" - }, - "11392": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 5916, - 5981 - ], - "op": "SWAP7", - "path": "70" - }, - "11393": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "offset": [ - 4999, - 5988 - ], - "op": "SWAP6", - "path": "70" - }, - "11394": { - "op": "POP" - }, - "11395": { - "op": "POP" - }, - "11396": { - "op": "POP" - }, - "11397": { - "op": "POP" - }, - "11398": { - "op": "POP" - }, - "11399": { - "op": "POP" - }, - "11400": { - "fn": "AaveHandler.convertFromScaledBalanceExternal", - "jump": "o", - "offset": [ - 4999, - 5988 - ], - "op": "JUMP", - "path": "70" - }, - "11401": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11402": { - "fn": "TokenHandler._deposit", - "offset": [ - 11277, - 11283 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "11404": { - "fn": "TokenHandler._deposit", - "offset": [ - 11277, - 11283 - ], - "op": "DUP1", - "path": "69" - }, - "11405": { - "fn": "TokenHandler._deposit", - "offset": [ - 11277, - 11283 - ], - "op": "DUP1", - "path": "69" - }, - "11406": { - "fn": "TokenHandler._deposit", - "offset": [ - 11277, - 11283 - ], - "op": "DUP1", - "path": "69" - }, - "11407": { - "fn": "TokenHandler._deposit", - "offset": [ - 11405, - 11421 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "11409": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11391 - ], - "op": "DUP8", - "path": "69" - }, - "11410": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11401 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "11412": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11401 - ], - "op": "ADD", - "path": "69" - }, - "11413": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11401 - ], - "op": "MLOAD", - "path": "69" - }, - "11414": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "11416": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "DUP2", - "path": "69" - }, - "11417": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "GT", - "path": "69" - }, - "11418": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "ISZERO", - "path": "69" - }, - "11419": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CA0" - }, - "11422": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "JUMPI", - "path": "69" - }, - "11423": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "INVALID", - "path": "69" - }, - "11424": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11425": { - "branch": 552, - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11421 - ], - "op": "EQ", - "path": "69" - }, - "11426": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11523 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CB2" - }, - "11429": { - "branch": 552, - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11523 - ], - "op": "JUMPI", - "path": "69" - }, - "11430": { - "op": "PUSH4", - "value": "0x70A08231" - }, - "11435": { - "op": "PUSH1", - "value": "0xE0" - }, - "11437": { - "op": "SHL" - }, - "11438": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11523 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CBB" - }, - "11441": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11523 - ], - "op": "JUMP", - "path": "69" - }, - "11442": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11523 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11443": { - "op": "PUSH4", - "value": "0xED1279F" - }, - "11448": { - "op": "PUSH1", - "value": "0xE1" - }, - "11450": { - "op": "SHL" - }, - "11451": { - "fn": "TokenHandler._deposit", - "offset": [ - 11386, - 11523 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11452": { - "fn": "TokenHandler._deposit", - "offset": [ - 11359, - 11523 - ], - "op": "SWAP1", - "path": "69" - }, - "11453": { - "fn": "TokenHandler._deposit", - "offset": [ - 11359, - 11523 - ], - "op": "POP", - "path": "69" - }, - "11454": { - "fn": "TokenHandler._deposit", - "offset": [ - 11538, - 11543 - ], - "op": "DUP7", - "path": "69" - }, - "11455": { - "fn": "TokenHandler._deposit", - "offset": [ - 11538, - 11558 - ], - "op": "PUSH1", - "path": "69", - "value": "0x20" - }, - "11457": { - "fn": "TokenHandler._deposit", - "offset": [ - 11538, - 11558 - ], - "op": "ADD", - "path": "69" - }, - "11458": { - "branch": 553, - "fn": "TokenHandler._deposit", - "offset": [ - 11538, - 11558 - ], - "op": "MLOAD", - "path": "69" - }, - "11459": { - "fn": "TokenHandler._deposit", - "offset": [ - 11534, - 11693 - ], - "op": "ISZERO", - "path": "69" - }, - "11460": { - "fn": "TokenHandler._deposit", - "offset": [ - 11534, - 11693 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CD7" - }, - "11463": { - "branch": 553, - "fn": "TokenHandler._deposit", - "offset": [ - 11534, - 11693 - ], - "op": "JUMPI", - "path": "69" - }, - "11464": { - "fn": "TokenHandler._deposit", - "offset": [ - 11629, - 11647 - ], - "op": "DUP7", - "path": "69", - "statement": 258 - }, - "11465": { - "fn": "TokenHandler._deposit", - "offset": [ - 11629, - 11647 - ], - "op": "MLOAD", - "path": "69" - }, - "11466": { - "fn": "TokenHandler._deposit", - "offset": [ - 11592, - 11682 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CD4" - }, - "11469": { - "fn": "TokenHandler._deposit", - "offset": [ - 11592, - 11682 - ], - "op": "SWAP1", - "path": "69" - }, - "11470": { - "fn": "TokenHandler._deposit", - "offset": [ - 11657, - 11661 - ], - "op": "ADDRESS", - "path": "69" - }, - "11471": { - "fn": "TokenHandler._deposit", - "offset": [ - 11664, - 11681 - ], - "op": "DUP4", - "path": "69" - }, - "11472": { - "fn": "TokenHandler._deposit", - "offset": [ - 11592, - 11628 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2E2E" - }, - "11475": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 11592, - 11682 - ], - "op": "JUMP", - "path": "69" - }, - "11476": { - "fn": "TokenHandler._deposit", - "offset": [ - 11592, - 11682 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11477": { - "fn": "TokenHandler._deposit", - "offset": [ - 11574, - 11682 - ], - "op": "SWAP3", - "path": "69" - }, - "11478": { - "fn": "TokenHandler._deposit", - "offset": [ - 11574, - 11682 - ], - "op": "POP", - "path": "69" - }, - "11479": { - "fn": "TokenHandler._deposit", - "offset": [ - 11534, - 11693 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11480": { - "fn": "TokenHandler._deposit", - "offset": [ - 11731, - 11749 - ], - "op": "DUP7", - "path": "69", - "statement": 259 - }, - "11481": { - "fn": "TokenHandler._deposit", - "offset": [ - 11731, - 11749 - ], - "op": "MLOAD", - "path": "69" - }, - "11482": { - "fn": "TokenHandler._deposit", - "offset": [ - 11703, - 11767 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CE4" - }, - "11485": { - "fn": "TokenHandler._deposit", - "offset": [ - 11703, - 11767 - ], - "op": "SWAP1", - "path": "69" - }, - "11486": { - "fn": "TokenHandler._deposit", - "offset": [ - 11751, - 11758 - ], - "op": "DUP8", - "path": "69" - }, - "11487": { - "fn": "TokenHandler._deposit", - "offset": [ - 11760, - 11766 - ], - "op": "DUP8", - "path": "69" - }, - "11488": { - "fn": "TokenHandler._deposit", - "offset": [ - 11703, - 11730 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3869" - }, - "11491": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 11703, - 11767 - ], - "op": "JUMP", - "path": "69" - }, - "11492": { - "fn": "TokenHandler._deposit", - "offset": [ - 11703, - 11767 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11493": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11787 - ], - "op": "DUP7", - "path": "69" - }, - "11494": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11802 - ], - "op": "PUSH1", - "path": "69", - "value": "0x20" - }, - "11496": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11802 - ], - "op": "ADD", - "path": "69" - }, - "11497": { - "branch": 554, - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11802 - ], - "op": "MLOAD", - "path": "69" - }, - "11498": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11836 - ], - "op": "DUP1", - "path": "69" - }, - "11499": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11836 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2CF8" - }, - "11502": { - "branch": 554, - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11836 - ], - "op": "JUMPI", - "path": "69" - }, - "11503": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11836 - ], - "op": "POP", - "path": "69" - }, - "11504": { - "fn": "TokenHandler._deposit", - "offset": [ - 11835, - 11836 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "11506": { - "fn": "TokenHandler._deposit", - "offset": [ - 11806, - 11811 - ], - "op": "DUP8", - "path": "69" - }, - "11507": { - "fn": "TokenHandler._deposit", - "offset": [ - 11806, - 11832 - ], - "op": "PUSH1", - "path": "69", - "value": "0x80" - }, - "11509": { - "fn": "TokenHandler._deposit", - "offset": [ - 11806, - 11832 - ], - "op": "ADD", - "path": "69" - }, - "11510": { - "fn": "TokenHandler._deposit", - "offset": [ - 11806, - 11832 - ], - "op": "MLOAD", - "path": "69" - }, - "11511": { - "branch": 555, - "fn": "TokenHandler._deposit", - "offset": [ - 11806, - 11836 - ], - "op": "GT", - "path": "69" - }, - "11512": { - "fn": "TokenHandler._deposit", - "offset": [ - 11782, - 11836 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11513": { - "fn": "TokenHandler._deposit", - "offset": [ - 11778, - 12278 - ], - "op": "ISZERO", - "path": "69" - }, - "11514": { - "fn": "TokenHandler._deposit", - "offset": [ - 11778, - 12278 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D0D" - }, - "11517": { - "branch": 555, - "fn": "TokenHandler._deposit", - "offset": [ - 11778, - 12278 - ], - "op": "JUMPI", - "path": "69" - }, - "11518": { - "fn": "TokenHandler._deposit", - "offset": [ - 12214, - 12232 - ], - "op": "DUP7", - "path": "69", - "statement": 260 - }, - "11519": { - "fn": "TokenHandler._deposit", - "offset": [ - 12214, - 12232 - ], - "op": "MLOAD", - "path": "69" - }, - "11520": { - "fn": "TokenHandler._deposit", - "offset": [ - 12177, - 12267 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D0A" - }, - "11523": { - "fn": "TokenHandler._deposit", - "offset": [ - 12177, - 12267 - ], - "op": "SWAP1", - "path": "69" - }, - "11524": { - "fn": "TokenHandler._deposit", - "offset": [ - 12242, - 12246 - ], - "op": "ADDRESS", - "path": "69" - }, - "11525": { - "fn": "TokenHandler._deposit", - "offset": [ - 12249, - 12266 - ], - "op": "DUP4", - "path": "69" - }, - "11526": { - "fn": "TokenHandler._deposit", - "offset": [ - 12177, - 12213 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2E2E" - }, - "11529": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 12177, - 12267 - ], - "op": "JUMP", - "path": "69" - }, - "11530": { - "fn": "TokenHandler._deposit", - "offset": [ - 12177, - 12267 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11531": { - "fn": "TokenHandler._deposit", - "offset": [ - 12161, - 12267 - ], - "op": "SWAP2", - "path": "69" - }, - "11532": { - "fn": "TokenHandler._deposit", - "offset": [ - 12161, - 12267 - ], - "op": "POP", - "path": "69" - }, - "11533": { - "fn": "TokenHandler._deposit", - "offset": [ - 11778, - 12278 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11534": { - "fn": "TokenHandler._deposit", - "offset": [ - 12292, - 12318 - ], - "op": "PUSH1", - "path": "69", - "value": "0x80" - }, - "11536": { - "fn": "TokenHandler._deposit", - "offset": [ - 12292, - 12318 - ], - "op": "DUP8", - "path": "69" - }, - "11537": { - "fn": "TokenHandler._deposit", - "offset": [ - 12292, - 12318 - ], - "op": "ADD", - "path": "69" - }, - "11538": { - "fn": "TokenHandler._deposit", - "offset": [ - 12292, - 12318 - ], - "op": "MLOAD", - "path": "69" - }, - "11539": { - "branch": 556, - "fn": "TokenHandler._deposit", - "offset": [ - 12292, - 12322 - ], - "op": "ISZERO", - "path": "69" - }, - "11540": { - "fn": "TokenHandler._deposit", - "offset": [ - 12288, - 12642 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D48" - }, - "11543": { - "branch": 556, - "fn": "TokenHandler._deposit", - "offset": [ - 12288, - 12642 - ], - "op": "JUMPI", - "path": "69" - }, - "11544": { - "fn": "TokenHandler._deposit", - "offset": [ - 12338, - 12369 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "11546": { - "fn": "TokenHandler._deposit", - "offset": [ - 12372, - 12429 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D2B" - }, - "11549": { - "fn": "TokenHandler._deposit", - "offset": [ - 12390, - 12395 - ], - "op": "DUP9", - "path": "69" - }, - "11550": { - "fn": "TokenHandler._deposit", - "offset": [ - 12397, - 12428 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D26" - }, - "11553": { - "fn": "TokenHandler._deposit", - "offset": [ - 12414, - 12427 - ], - "op": "DUP6", - "path": "69" - }, - "11554": { - "fn": "TokenHandler._deposit", - "offset": [ - 12397, - 12413 - ], - "op": "PUSH2", - "path": "69", - "value": "0x264D" - }, - "11557": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 12397, - 12428 - ], - "op": "JUMP", - "path": "69" - }, - "11558": { - "fn": "TokenHandler._deposit", - "offset": [ - 12397, - 12428 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11559": { - "fn": "TokenHandler._deposit", - "offset": [ - 12372, - 12389 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DFA" - }, - "11562": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 12372, - 12429 - ], - "op": "JUMP", - "path": "69" - }, - "11563": { - "fn": "TokenHandler._deposit", - "offset": [ - 12372, - 12429 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11564": { - "fn": "TokenHandler._deposit", - "offset": [ - 12338, - 12429 - ], - "op": "SWAP1", - "path": "69" - }, - "11565": { - "fn": "TokenHandler._deposit", - "offset": [ - 12338, - 12429 - ], - "op": "POP", - "path": "69" - }, - "11566": { - "fn": "TokenHandler._deposit", - "offset": [ - 12550, - 12594 - ], - "op": "PUSH2", - "path": "69", - "statement": 261, - "value": "0x2D3A" - }, - "11569": { - "fn": "TokenHandler._deposit", - "offset": [ - 12567, - 12572 - ], - "op": "DUP9", - "path": "69" - }, - "11570": { - "fn": "TokenHandler._deposit", - "offset": [ - 12567, - 12593 - ], - "op": "PUSH1", - "path": "69", - "value": "0x80" - }, - "11572": { - "fn": "TokenHandler._deposit", - "offset": [ - 12567, - 12593 - ], - "op": "ADD", - "path": "69" - }, - "11573": { - "fn": "TokenHandler._deposit", - "offset": [ - 12567, - 12593 - ], - "op": "MLOAD", - "path": "69" - }, - "11574": { - "fn": "TokenHandler._deposit", - "offset": [ - 12550, - 12566 - ], - "op": "PUSH2", - "path": "69", - "value": "0x264D" - }, - "11577": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 12550, - 12594 - ], - "op": "JUMP", - "path": "69" - }, - "11578": { - "fn": "TokenHandler._deposit", - "offset": [ - 12550, - 12594 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11579": { - "fn": "TokenHandler._deposit", - "offset": [ - 12522, - 12546 - ], - "op": "DUP2", - "path": "69" - }, - "11580": { - "fn": "TokenHandler._deposit", - "offset": [ - 12522, - 12594 - ], - "op": "SGT", - "path": "69" - }, - "11581": { - "branch": 557, - "fn": "TokenHandler._deposit", - "offset": [ - 12522, - 12594 - ], - "op": "ISZERO", - "path": "69" - }, - "11582": { - "fn": "TokenHandler._deposit", - "offset": [ - 12514, - 12595 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D46" - }, - "11585": { - "branch": 557, - "fn": "TokenHandler._deposit", - "offset": [ - 12514, - 12595 - ], - "op": "JUMPI", - "path": "69" - }, - "11586": { - "fn": "TokenHandler._deposit", - "offset": [ - 12514, - 12595 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "11588": { - "fn": "TokenHandler._deposit", - "offset": [ - 12514, - 12595 - ], - "op": "DUP1", - "path": "69" - }, - "11589": { - "fn": "TokenHandler._deposit", - "offset": [ - 12514, - 12595 - ], - "op": "REVERT", - "path": "69" - }, - "11590": { - "fn": "TokenHandler._deposit", - "offset": [ - 12514, - 12595 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11591": { - "fn": "TokenHandler._deposit", - "offset": [ - 12288, - 12642 - ], - "op": "POP", - "path": "69" - }, - "11592": { - "fn": "TokenHandler._deposit", - "offset": [ - 12288, - 12642 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11593": { - "fn": "TokenHandler._deposit", - "offset": [ - 12740, - 12745 - ], - "op": "DUP7", - "path": "69" - }, - "11594": { - "fn": "TokenHandler._deposit", - "offset": [ - 12740, - 12760 - ], - "op": "PUSH1", - "path": "69", - "value": "0x20" - }, - "11596": { - "fn": "TokenHandler._deposit", - "offset": [ - 12740, - 12760 - ], - "op": "ADD", - "path": "69" - }, - "11597": { - "branch": 558, - "fn": "TokenHandler._deposit", - "offset": [ - 12740, - 12760 - ], - "op": "MLOAD", - "path": "69" - }, - "11598": { - "fn": "TokenHandler._deposit", - "offset": [ - 12736, - 12908 - ], - "op": "ISZERO", - "path": "69" - }, - "11599": { - "fn": "TokenHandler._deposit", - "offset": [ - 12736, - 12908 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2D69" - }, - "11602": { - "branch": 558, - "fn": "TokenHandler._deposit", - "offset": [ - 12736, - 12908 - ], - "op": "JUMPI", - "path": "69" - }, - "11603": { - "fn": "TokenHandler._deposit", - "offset": [ - 12783, - 12835 - ], - "op": "PUSH2", - "path": "69", - "statement": 262, - "value": "0x2D5F" - }, - "11606": { - "fn": "TokenHandler._deposit", - "offset": [ - 12800, - 12834 - ], - "op": "PUSH2", - "path": "69", - "value": "0x1DEA" - }, - "11609": { - "fn": "TokenHandler._deposit", - "offset": [ - 12800, - 12813 - ], - "op": "DUP4", - "path": "69" - }, - "11610": { - "fn": "TokenHandler._deposit", - "offset": [ - 12818, - 12833 - ], - "op": "DUP6", - "path": "69" - }, - "11611": { - "fn": "TokenHandler._deposit", - "offset": [ - 12800, - 12817 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3096" - }, - "11614": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 12800, - 12834 - ], - "op": "JUMP", - "path": "69" - }, - "11615": { - "fn": "TokenHandler._deposit", - "offset": [ - 12783, - 12835 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11616": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "SWAP4", - "path": "69" - }, - "11617": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "POP", - "path": "69" - }, - "11618": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "POP", - "path": "69" - }, - "11619": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "POP", - "path": "69" - }, - "11620": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "POP", - "path": "69" - }, - "11621": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "PUSH2", - "path": "69", - "value": "0xAA3" - }, - "11624": { - "fn": "TokenHandler._deposit", - "offset": [ - 12776, - 12835 - ], - "op": "JUMP", - "path": "69" - }, - "11625": { - "fn": "TokenHandler._deposit", - "offset": [ - 12736, - 12908 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11626": { - "fn": "TokenHandler._deposit", - "offset": [ - 12873, - 12897 - ], - "op": "PUSH2", - "path": "69", - "statement": 263, - "value": "0x2D5F" - }, - "11629": { - "fn": "TokenHandler._deposit", - "offset": [ - 12890, - 12896 - ], - "op": "DUP6", - "path": "69" - }, - "11630": { - "fn": "TokenHandler._deposit", - "offset": [ - 12873, - 12889 - ], - "op": "PUSH2", - "path": "69", - "value": "0x264D" - }, - "11633": { - "fn": "TokenHandler._deposit", - "jump": "i", - "offset": [ - 12873, - 12897 - ], - "op": "JUMP", - "path": "69" - }, - "11634": { - "fn": "TokenHandler._deposit", - "offset": [ - 12736, - 12908 - ], - "op": "JUMPDEST", - "path": "69" - }, - "11635": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "POP", - "path": "69" - }, - "11636": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "POP", - "path": "69" - }, - "11637": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "POP", - "path": "69" - }, - "11638": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "SWAP4", - "path": "69" - }, - "11639": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "SWAP3", - "path": "69" - }, - "11640": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "POP", - "path": "69" - }, - "11641": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "POP", - "path": "69" - }, - "11642": { - "fn": "TokenHandler._deposit", - "offset": [ - 11159, - 12914 - ], - "op": "POP", - "path": "69" - }, - "11643": { - "fn": "TokenHandler._deposit", - "jump": "o", - "offset": [ - 11159, - 12914 - ], - "op": "JUMP", - "path": "69" - }, - "11644": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 824, - 1167 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11645": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "PUSH1", - "path": "72", - "statement": 264, - "value": "0x40" - }, - "11647": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "MLOAD", - "path": "72" - }, - "11648": { - "op": "PUSH1", - "value": "0x1" - }, - "11650": { - "op": "PUSH1", - "value": "0x1" - }, - "11652": { - "op": "PUSH1", - "value": "0xA0" - }, - "11654": { - "op": "SHL" - }, - "11655": { - "op": "SUB" - }, - "11656": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1152 - ], - "op": "DUP4", - "path": "72" - }, - "11657": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1152 - ], - "op": "AND", - "path": "72" - }, - "11658": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1152 - ], - "op": "SWAP1", - "path": "72" - }, - "11659": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP3", - "path": "72" - }, - "11660": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "ISZERO", - "path": "72" - }, - "11661": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "PUSH2", - "path": "72", - "value": "0x8FC" - }, - "11664": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "MUL", - "path": "72" - }, - "11665": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "SWAP1", - "path": "72" - }, - "11666": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1153, - 1159 - ], - "op": "DUP4", - "path": "72" - }, - "11667": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1153, - 1159 - ], - "op": "SWAP1", - "path": "72" - }, - "11668": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11670": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP2", - "path": "72" - }, - "11671": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP2", - "path": "72" - }, - "11672": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP2", - "path": "72" - }, - "11673": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1153, - 1159 - ], - "op": "DUP6", - "path": "72" - }, - "11674": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1152 - ], - "op": "DUP9", - "path": "72" - }, - "11675": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP9", - "path": "72" - }, - "11676": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "CALL", - "path": "72" - }, - "11677": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "SWAP4", - "path": "72" - }, - "11678": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "POP", - "path": "72" - }, - "11679": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "POP", - "path": "72" - }, - "11680": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "POP", - "path": "72" - }, - "11681": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "POP", - "path": "72" - }, - "11682": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "ISZERO", - "path": "72" - }, - "11683": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP1", - "path": "72" - }, - "11684": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "ISZERO", - "path": "72" - }, - "11685": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2DB2" - }, - "11688": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "JUMPI", - "path": "72" - }, - "11689": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "11690": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11692": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "DUP1", - "path": "72" - }, - "11693": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "RETURNDATACOPY", - "path": "72" - }, - "11694": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "11695": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11697": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "REVERT", - "path": "72" - }, - "11698": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11699": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 1127, - 1160 - ], - "op": "POP", - "path": "72" - }, - "11700": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 824, - 1167 - ], - "op": "POP", - "path": "72" - }, - "11701": { - "fn": "GenericToken.transferNativeTokenOut", - "offset": [ - 824, - 1167 - ], - "op": "POP", - "path": "72" - }, - "11702": { - "fn": "GenericToken.transferNativeTokenOut", - "jump": "o", - "offset": [ - 824, - 1167 - ], - "op": "JUMP", - "path": "72" - }, - "11703": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1173, - 1379 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11704": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1313, - 1318 - ], - "op": "DUP3", - "path": "72", - "statement": 265 - }, - "11705": { - "op": "PUSH1", - "value": "0x1" - }, - "11707": { - "op": "PUSH1", - "value": "0x1" - }, - "11709": { - "op": "PUSH1", - "value": "0xA0" - }, - "11711": { - "op": "SHL" - }, - "11712": { - "op": "SUB" - }, - "11713": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1328 - ], - "op": "AND", - "path": "72" - }, - "11714": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1328 - ], - "op": "PUSH4", - "path": "72", - "value": "0xA9059CBB" - }, - "11719": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1329, - 1336 - ], - "op": "DUP4", - "path": "72" - }, - "11720": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1338, - 1344 - ], - "op": "DUP4", - "path": "72" - }, - "11721": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "11723": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "MLOAD", - "path": "72" - }, - "11724": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP4", - "path": "72" - }, - "11725": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH4", - "path": "72", - "value": "0xFFFFFFFF" - }, - "11730": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "AND", - "path": "72" - }, - "11731": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0xE0" - }, - "11733": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "SHL", - "path": "72" - }, - "11734": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP2", - "path": "72" - }, - "11735": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "MSTORE", - "path": "72" - }, - "11736": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x4" - }, - "11738": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ADD", - "path": "72" - }, - "11739": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11740": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP4", - "path": "72" - }, - "11741": { - "op": "PUSH1", - "value": "0x1" - }, - "11743": { - "op": "PUSH1", - "value": "0x1" - }, - "11745": { - "op": "PUSH1", - "value": "0xA0" - }, - "11747": { - "op": "SHL" - }, - "11748": { - "op": "SUB" - }, - "11749": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "AND", - "path": "72" - }, - "11750": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP2", - "path": "72" - }, - "11751": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "MSTORE", - "path": "72" - }, - "11752": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "11754": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ADD", - "path": "72" - }, - "11755": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP3", - "path": "72" - }, - "11756": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP2", - "path": "72" - }, - "11757": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "MSTORE", - "path": "72" - }, - "11758": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "11760": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ADD", - "path": "72" - }, - "11761": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "SWAP3", - "path": "72" - }, - "11762": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11763": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11764": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11765": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11767": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "11769": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "MLOAD", - "path": "72" - }, - "11770": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11771": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP4", - "path": "72" - }, - "11772": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "SUB", - "path": "72" - }, - "11773": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP2", - "path": "72" - }, - "11774": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11776": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP8", - "path": "72" - }, - "11777": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11778": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "EXTCODESIZE", - "path": "72" - }, - "11779": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ISZERO", - "path": "72" - }, - "11780": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11781": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ISZERO", - "path": "72" - }, - "11782": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2E0E" - }, - "11785": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "JUMPI", - "path": "72" - }, - "11786": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11788": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11789": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "REVERT", - "path": "72" - }, - "11790": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11791": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11792": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "GAS", - "path": "72" - }, - "11793": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "CALL", - "path": "72" - }, - "11794": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ISZERO", - "path": "72" - }, - "11795": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11796": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "ISZERO", - "path": "72" - }, - "11797": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2E22" - }, - "11800": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "JUMPI", - "path": "72" - }, - "11801": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "11802": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11804": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "DUP1", - "path": "72" - }, - "11805": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "RETURNDATACOPY", - "path": "72" - }, - "11806": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "11807": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11809": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "REVERT", - "path": "72" - }, - "11810": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11811": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11812": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11813": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11814": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1295, - 1345 - ], - "op": "POP", - "path": "72" - }, - "11815": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1355, - 1372 - ], - "op": "PUSH2", - "path": "72", - "statement": 266, - "value": "0x2DB2" - }, - "11818": { - "fn": "GenericToken.safeTransferOut", - "offset": [ - 1355, - 1370 - ], - "op": "PUSH2", - "path": "72", - "value": "0x38C1" - }, - "11821": { - "fn": "GenericToken.safeTransferOut", - "jump": "i", - "offset": [ - 1355, - 1372 - ], - "op": "JUMP", - "path": "72" - }, - "11822": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 454, - 818 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11823": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "11825": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP1", - "path": "72" - }, - "11826": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MLOAD", - "path": "72" - }, - "11827": { - "op": "PUSH1", - "value": "0x1" - }, - "11829": { - "op": "PUSH1", - "value": "0x1" - }, - "11831": { - "op": "PUSH1", - "value": "0xA0" - }, - "11833": { - "op": "SHL" - }, - "11834": { - "op": "SUB" - }, - "11835": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP5", - "path": "72" - }, - "11836": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP2", - "path": "72" - }, - "11837": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "AND", - "path": "72" - }, - "11838": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "PUSH1", - "path": "72", - "value": "0x24" - }, - "11840": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP1", - "path": "72" - }, - "11841": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP5", - "path": "72" - }, - "11842": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "ADD", - "path": "72" - }, - "11843": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP2", - "path": "72" - }, - "11844": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP1", - "path": "72" - }, - "11845": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP2", - "path": "72" - }, - "11846": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MSTORE", - "path": "72" - }, - "11847": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP4", - "path": "72" - }, - "11848": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MLOAD", - "path": "72" - }, - "11849": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP1", - "path": "72" - }, - "11850": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP5", - "path": "72" - }, - "11851": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SUB", - "path": "72" - }, - "11852": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP1", - "path": "72" - }, - "11853": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP2", - "path": "72" - }, - "11854": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "ADD", - "path": "72" - }, - "11855": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP2", - "path": "72" - }, - "11856": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MSTORE", - "path": "72" - }, - "11857": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "PUSH1", - "path": "72", - "value": "0x44" - }, - "11859": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP1", - "path": "72" - }, - "11860": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP3", - "path": "72" - }, - "11861": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "ADD", - "path": "72" - }, - "11862": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP4", - "path": "72" - }, - "11863": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MSTORE", - "path": "72" - }, - "11864": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "11866": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP3", - "path": "72" - }, - "11867": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "ADD", - "path": "72" - }, - "11868": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP1", - "path": "72" - }, - "11869": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MLOAD", - "path": "72" - }, - "11870": { - "op": "PUSH1", - "value": "0x1" - }, - "11872": { - "op": "PUSH1", - "value": "0x1" - }, - "11874": { - "op": "PUSH1", - "value": "0xE0" - }, - "11876": { - "op": "SHL" - }, - "11877": { - "op": "SUB" - }, - "11878": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "AND", - "path": "72" - }, - "11879": { - "op": "PUSH1", - "value": "0x1" - }, - "11881": { - "op": "PUSH1", - "value": "0x1" - }, - "11883": { - "op": "PUSH1", - "value": "0xE0" - }, - "11885": { - "op": "SHL" - }, - "11886": { - "op": "SUB" - }, - "11887": { - "op": "NOT" - }, - "11888": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP7", - "path": "72" - }, - "11889": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "AND", - "path": "72" - }, - "11890": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "OR", - "path": "72" - }, - "11891": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP2", - "path": "72" - }, - "11892": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "MSTORE", - "path": "72" - }, - "11893": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP3", - "path": "72" - }, - "11894": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "11895": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "11896": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "11897": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 593, - 608 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11899": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 593, - 608 - ], - "op": "SWAP5", - "path": "72" - }, - "11900": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 593, - 608 - ], - "op": "DUP6", - "path": "72" - }, - "11901": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 593, - 608 - ], - "op": "SWAP5", - "path": "72" - }, - "11902": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 593, - 608 - ], - "op": "DUP6", - "path": "72" - }, - "11903": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 593, - 608 - ], - "op": "SWAP5", - "path": "72" - }, - "11904": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 678 - ], - "op": "DUP11", - "path": "72" - }, - "11905": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 678 - ], - "op": "AND", - "path": "72" - }, - "11906": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 678 - ], - "op": "SWAP4", - "path": "72" - }, - "11907": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP1", - "path": "72" - }, - "11908": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "SWAP3", - "path": "72" - }, - "11909": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP1", - "path": "72" - }, - "11910": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11911": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "11912": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11913": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP1", - "path": "72" - }, - "11914": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP4", - "path": "72" - }, - "11915": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 679, - 729 - ], - "op": "DUP4", - "path": "72" - }, - "11916": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11917": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "11919": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP4", - "path": "72" - }, - "11920": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "LT", - "path": "72" - }, - "11921": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2EAB" - }, - "11924": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMPI", - "path": "72" - }, - "11925": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP1", - "path": "72" - }, - "11926": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "11927": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "11928": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MSTORE", - "path": "72" - }, - "11929": { - "op": "PUSH1", - "value": "0x1F" - }, - "11931": { - "op": "NOT" - }, - "11932": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP1", - "path": "72" - }, - "11933": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP3", - "path": "72" - }, - "11934": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "11935": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11936": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "11938": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11939": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "11940": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "11941": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11942": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "11943": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2E8C" - }, - "11946": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMP", - "path": "72" - }, - "11947": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMPDEST", - "path": "72" - }, - "11948": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x1" - }, - "11950": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP4", - "path": "72" - }, - "11951": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "11953": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SUB", - "path": "72" - }, - "11954": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH2", - "path": "72", - "value": "0x100" - }, - "11957": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "EXP", - "path": "72" - }, - "11958": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SUB", - "path": "72" - }, - "11959": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP1", - "path": "72" - }, - "11960": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "NOT", - "path": "72" - }, - "11961": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "11962": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "11963": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "AND", - "path": "72" - }, - "11964": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP2", - "path": "72" - }, - "11965": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP5", - "path": "72" - }, - "11966": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "11967": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "AND", - "path": "72" - }, - "11968": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP1", - "path": "72" - }, - "11969": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "11970": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "OR", - "path": "72" - }, - "11971": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP6", - "path": "72" - }, - "11972": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MSTORE", - "path": "72" - }, - "11973": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11974": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11975": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11976": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11977": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11978": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11979": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP1", - "path": "72" - }, - "11980": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11981": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "11982": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11983": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11984": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11985": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "11987": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "11989": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "11990": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP1", - "path": "72" - }, - "11991": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP4", - "path": "72" - }, - "11992": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SUB", - "path": "72" - }, - "11993": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP2", - "path": "72" - }, - "11994": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP6", - "path": "72" - }, - "11995": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "GAS", - "path": "72" - }, - "11996": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "STATICCALL", - "path": "72" - }, - "11997": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "11998": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "11999": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "12000": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "12001": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP1", - "path": "72" - }, - "12002": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "12004": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP2", - "path": "72" - }, - "12005": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "EQ", - "path": "72" - }, - "12006": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2F0B" - }, - "12009": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMPI", - "path": "72" - }, - "12010": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "12012": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MLOAD", - "path": "72" - }, - "12013": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "12014": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "12015": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x1F" - }, - "12017": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "NOT", - "path": "72" - }, - "12018": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x3F" - }, - "12020": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "12021": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "12022": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "AND", - "path": "72" - }, - "12023": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "12024": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "12025": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "12027": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MSTORE", - "path": "72" - }, - "12028": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "12029": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP3", - "path": "72" - }, - "12030": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "MSTORE", - "path": "72" - }, - "12031": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "12032": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "12034": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "12036": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "DUP5", - "path": "72" - }, - "12037": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "ADD", - "path": "72" - }, - "12038": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "RETURNDATACOPY", - "path": "72" - }, - "12039": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2F10" - }, - "12042": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMP", - "path": "72" - }, - "12043": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMPDEST", - "path": "72" - }, - "12044": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "PUSH1", - "path": "72", - "value": "0x60" - }, - "12046": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "12047": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "12048": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "JUMPDEST", - "path": "72" - }, - "12049": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 662, - 730 - ], - "op": "POP", - "path": "72" - }, - "12050": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 620, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "12051": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 620, - 730 - ], - "op": "POP", - "path": "72" - }, - "12052": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 620, - 730 - ], - "op": "SWAP2", - "path": "72" - }, - "12053": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 620, - 730 - ], - "op": "POP", - "path": "72" - }, - "12054": { - "branch": 489, - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 748, - 755 - ], - "op": "DUP2", - "path": "72", - "statement": 267 - }, - "12055": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 740, - 756 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2F1F" - }, - "12058": { - "branch": 489, - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 740, - 756 - ], - "op": "JUMPI", - "path": "72" - }, - "12059": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 740, - 756 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "12061": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 740, - 756 - ], - "op": "DUP1", - "path": "72" - }, - "12062": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 740, - 756 - ], - "op": "REVERT", - "path": "72" - }, - "12063": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 740, - 756 - ], - "op": "JUMPDEST", - "path": "72" - }, - "12064": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 789, - 799 - ], - "op": "DUP1", - "path": "72", - "statement": 268 - }, - "12065": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "DUP1", - "path": "72" - }, - "12066": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "12068": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "ADD", - "path": "72" - }, - "12069": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "SWAP1", - "path": "72" - }, - "12070": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "MLOAD", - "path": "72" - }, - "12071": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "12073": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "DUP2", - "path": "72" - }, - "12074": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "LT", - "path": "72" - }, - "12075": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "ISZERO", - "path": "72" - }, - "12076": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2F34" - }, - "12079": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "JUMPI", - "path": "72" - }, - "12080": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "12082": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "DUP1", - "path": "72" - }, - "12083": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "REVERT", - "path": "72" - }, - "12084": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "JUMPDEST", - "path": "72" - }, - "12085": { - "op": "POP" - }, - "12086": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "MLOAD", - "path": "72" - }, - "12087": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 778, - 811 - ], - "op": "SWAP7", - "path": "72" - }, - "12088": { - "fn": "GenericToken.checkBalanceViaSelector", - "offset": [ - 454, - 818 - ], - "op": "SWAP6", - "path": "72" - }, - "12089": { - "op": "POP" - }, - "12090": { - "op": "POP" - }, - "12091": { - "op": "POP" - }, - "12092": { - "op": "POP" - }, - "12093": { - "op": "POP" - }, - "12094": { - "op": "POP" - }, - "12095": { - "fn": "GenericToken.checkBalanceViaSelector", - "jump": "o", - "offset": [ - 454, - 818 - ], - "op": "JUMP", - "path": "72" - }, - "12096": { - "fn": "AaveHandler.mint", - "offset": [ - 873, - 1457 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12097": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1298 - ], - "op": "PUSH2", - "path": "70", - "statement": 269, - "value": "0x2F48" - }, - "12100": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1296 - ], - "op": "PUSH2", - "path": "70", - "value": "0x392E" - }, - "12103": { - "fn": "AaveHandler.mint", - "jump": "i", - "offset": [ - 1271, - 1298 - ], - "op": "JUMP", - "path": "70" - }, - "12104": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1298 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12105": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "SLOAD", - "path": "70" - }, - "12106": { - "fn": "AaveHandler.mint", - "offset": [ - 1332, - 1360 - ], - "op": "DUP3", - "path": "70" - }, - "12107": { - "fn": "AaveHandler.mint", - "offset": [ - 1332, - 1360 - ], - "op": "MLOAD", - "path": "70" - }, - "12108": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "12110": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "MLOAD", - "path": "70" - }, - "12111": { - "op": "PUSH4", - "value": "0xE8EDA9DF" - }, - "12116": { - "op": "PUSH1", - "value": "0xE0" - }, - "12118": { - "op": "SHL" - }, - "12119": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP2", - "path": "70" - }, - "12120": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "MSTORE", - "path": "70" - }, - "12121": { - "op": "PUSH1", - "value": "0x1" - }, - "12123": { - "op": "PUSH1", - "value": "0x1" - }, - "12125": { - "op": "PUSH1", - "value": "0xA0" - }, - "12127": { - "op": "SHL" - }, - "12128": { - "op": "SUB" - }, - "12129": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "SWAP1", - "path": "70" - }, - "12130": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "SWAP3", - "path": "70" - }, - "12131": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "AND", - "path": "70" - }, - "12132": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "SWAP2", - "path": "70" - }, - "12133": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1318 - ], - "op": "PUSH4", - "path": "70", - "value": "0xE8EDA9DF" - }, - "12138": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1318 - ], - "op": "SWAP2", - "path": "70" - }, - "12139": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2F7D" - }, - "12142": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "SWAP2", - "path": "70" - }, - "12143": { - "fn": "AaveHandler.mint", - "offset": [ - 1374, - 1398 - ], - "op": "DUP6", - "path": "70" - }, - "12144": { - "fn": "AaveHandler.mint", - "offset": [ - 1374, - 1398 - ], - "op": "SWAP1", - "path": "70" - }, - "12145": { - "fn": "AaveHandler.mint", - "offset": [ - 1420, - 1424 - ], - "op": "ADDRESS", - "path": "70" - }, - "12146": { - "fn": "AaveHandler.mint", - "offset": [ - 1420, - 1424 - ], - "op": "SWAP1", - "path": "70" - }, - "12147": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12149": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1310 - ], - "op": "SWAP1", - "path": "70" - }, - "12150": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x4" - }, - "12152": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "ADD", - "path": "70" - }, - "12153": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH2", - "path": "70", - "value": "0x482A" - }, - "12156": { - "fn": "AaveHandler.mint", - "jump": "i", - "offset": [ - 1271, - 1450 - ], - "op": "JUMP", - "path": "70" - }, - "12157": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12158": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12160": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "12162": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "MLOAD", - "path": "70" - }, - "12163": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP1", - "path": "70" - }, - "12164": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP4", - "path": "70" - }, - "12165": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "SUB", - "path": "70" - }, - "12166": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP2", - "path": "70" - }, - "12167": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12169": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP8", - "path": "70" - }, - "12170": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP1", - "path": "70" - }, - "12171": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "EXTCODESIZE", - "path": "70" - }, - "12172": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "ISZERO", - "path": "70" - }, - "12173": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP1", - "path": "70" - }, - "12174": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "ISZERO", - "path": "70" - }, - "12175": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2F97" - }, - "12178": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "JUMPI", - "path": "70" - }, - "12179": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12181": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP1", - "path": "70" - }, - "12182": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "REVERT", - "path": "70" - }, - "12183": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12184": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "POP", - "path": "70" - }, - "12185": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "GAS", - "path": "70" - }, - "12186": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "CALL", - "path": "70" - }, - "12187": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "ISZERO", - "path": "70" - }, - "12188": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP1", - "path": "70" - }, - "12189": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "ISZERO", - "path": "70" - }, - "12190": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH2", - "path": "70", - "value": "0x666" - }, - "12193": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "JUMPI", - "path": "70" - }, - "12194": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "12195": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12197": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "DUP1", - "path": "70" - }, - "12198": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "RETURNDATACOPY", - "path": "70" - }, - "12199": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "12200": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12202": { - "fn": "AaveHandler.mint", - "offset": [ - 1271, - 1450 - ], - "op": "REVERT", - "path": "70" - }, - "12203": { - "fn": "CompoundHandler.mint", - "offset": [ - 671, - 933 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12204": { - "fn": "CompoundHandler.mint", - "offset": [ - 757, - 763 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12206": { - "fn": "CompoundHandler.mint", - "offset": [ - 775, - 790 - ], - "op": "DUP1", - "path": "71" - }, - "12207": { - "fn": "CompoundHandler.mint", - "offset": [ - 809, - 814 - ], - "op": "DUP4", - "path": "71" - }, - "12208": { - "fn": "CompoundHandler.mint", - "offset": [ - 809, - 827 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12210": { - "fn": "CompoundHandler.mint", - "offset": [ - 809, - 827 - ], - "op": "ADD", - "path": "71" - }, - "12211": { - "fn": "CompoundHandler.mint", - "offset": [ - 809, - 827 - ], - "op": "MLOAD", - "path": "71" - }, - "12212": { - "op": "PUSH1", - "value": "0x1" - }, - "12214": { - "op": "PUSH1", - "value": "0x1" - }, - "12216": { - "op": "PUSH1", - "value": "0xA0" - }, - "12218": { - "op": "SHL" - }, - "12219": { - "op": "SUB" - }, - "12220": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 833 - ], - "op": "AND", - "path": "71" - }, - "12221": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 833 - ], - "op": "PUSH4", - "path": "71", - "value": "0xA0712D68" - }, - "12226": { - "fn": "CompoundHandler.mint", - "offset": [ - 834, - 858 - ], - "op": "DUP5", - "path": "71" - }, - "12227": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12229": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "MLOAD", - "path": "71" - }, - "12230": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP3", - "path": "71" - }, - "12231": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH4", - "path": "71", - "value": "0xFFFFFFFF" - }, - "12236": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "AND", - "path": "71" - }, - "12237": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0xE0" - }, - "12239": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SHL", - "path": "71" - }, - "12240": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP2", - "path": "71" - }, - "12241": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "MSTORE", - "path": "71" - }, - "12242": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "12244": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ADD", - "path": "71" - }, - "12245": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2FDE" - }, - "12248": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SWAP2", - "path": "71" - }, - "12249": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SWAP1", - "path": "71" - }, - "12250": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH2", - "path": "71", - "value": "0x48AB" - }, - "12253": { - "fn": "CompoundHandler.mint", - "jump": "i", - "offset": [ - 793, - 859 - ], - "op": "JUMP", - "path": "71" - }, - "12254": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12255": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x20" - }, - "12257": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12259": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "MLOAD", - "path": "71" - }, - "12260": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12261": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP4", - "path": "71" - }, - "12262": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SUB", - "path": "71" - }, - "12263": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP2", - "path": "71" - }, - "12264": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12266": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP8", - "path": "71" - }, - "12267": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12268": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "EXTCODESIZE", - "path": "71" - }, - "12269": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ISZERO", - "path": "71" - }, - "12270": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12271": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ISZERO", - "path": "71" - }, - "12272": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2FF8" - }, - "12275": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "JUMPI", - "path": "71" - }, - "12276": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12278": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12279": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "REVERT", - "path": "71" - }, - "12280": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12281": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "POP", - "path": "71" - }, - "12282": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "GAS", - "path": "71" - }, - "12283": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "CALL", - "path": "71" - }, - "12284": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ISZERO", - "path": "71" - }, - "12285": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12286": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ISZERO", - "path": "71" - }, - "12287": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH2", - "path": "71", - "value": "0x300C" - }, - "12290": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "JUMPI", - "path": "71" - }, - "12291": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "12292": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12294": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12295": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "RETURNDATACOPY", - "path": "71" - }, - "12296": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "12297": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12299": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "REVERT", - "path": "71" - }, - "12300": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12301": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "POP", - "path": "71" - }, - "12302": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "POP", - "path": "71" - }, - "12303": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "POP", - "path": "71" - }, - "12304": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "POP", - "path": "71" - }, - "12305": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12307": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "MLOAD", - "path": "71" - }, - "12308": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "12309": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x1F" - }, - "12311": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "NOT", - "path": "71" - }, - "12312": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x1F" - }, - "12314": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP3", - "path": "71" - }, - "12315": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ADD", - "path": "71" - }, - "12316": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "AND", - "path": "71" - }, - "12317": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP3", - "path": "71" - }, - "12318": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ADD", - "path": "71" - }, - "12319": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP1", - "path": "71" - }, - "12320": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12322": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "MSTORE", - "path": "71" - }, - "12323": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "POP", - "path": "71" - }, - "12324": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "DUP2", - "path": "71" - }, - "12325": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "ADD", - "path": "71" - }, - "12326": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SWAP1", - "path": "71" - }, - "12327": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3030" - }, - "12330": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SWAP2", - "path": "71" - }, - "12331": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "SWAP1", - "path": "71" - }, - "12332": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "PUSH2", - "path": "71", - "value": "0x43D8" - }, - "12335": { - "fn": "CompoundHandler.mint", - "jump": "i", - "offset": [ - 793, - 859 - ], - "op": "JUMP", - "path": "71" - }, - "12336": { - "fn": "CompoundHandler.mint", - "offset": [ - 793, - 859 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12337": { - "fn": "CompoundHandler.mint", - "offset": [ - 775, - 859 - ], - "op": "SWAP1", - "path": "71" - }, - "12338": { - "op": "POP" - }, - "12339": { - "fn": "CompoundHandler.mint", - "offset": [ - 877, - 917 - ], - "op": "DUP1", - "path": "71", - "statement": 270 - }, - "12340": { - "branch": 478, - "fn": "CompoundHandler.mint", - "offset": [ - 877, - 917 - ], - "op": "ISZERO", - "path": "71" - }, - "12341": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3050" - }, - "12344": { - "branch": 478, - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "JUMPI", - "path": "71" - }, - "12345": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12347": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "MLOAD", - "path": "71" - }, - "12348": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "12352": { - "op": "PUSH1", - "value": "0xE5" - }, - "12354": { - "op": "SHL" - }, - "12355": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "DUP2", - "path": "71" - }, - "12356": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "MSTORE", - "path": "71" - }, - "12357": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "12359": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "ADD", - "path": "71" - }, - "12360": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "PUSH2", - "path": "71", - "value": "0x17A" - }, - "12363": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "SWAP1", - "path": "71" - }, - "12364": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "PUSH2", - "path": "71", - "value": "0x48DA" - }, - "12367": { - "fn": "CompoundHandler.mint", - "jump": "i", - "offset": [ - 869, - 926 - ], - "op": "JUMP", - "path": "71" - }, - "12368": { - "fn": "CompoundHandler.mint", - "offset": [ - 869, - 926 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12369": { - "fn": "CompoundHandler.mint", - "offset": [ - 671, - 933 - ], - "op": "POP", - "path": "71" - }, - "12370": { - "fn": "CompoundHandler.mint", - "offset": [ - 671, - 933 - ], - "op": "SWAP3", - "path": "71" - }, - "12371": { - "fn": "CompoundHandler.mint", - "offset": [ - 671, - 933 - ], - "op": "SWAP2", - "path": "71" - }, - "12372": { - "fn": "CompoundHandler.mint", - "offset": [ - 671, - 933 - ], - "op": "POP", - "path": "71" - }, - "12373": { - "fn": "CompoundHandler.mint", - "offset": [ - 671, - 933 - ], - "op": "POP", - "path": "71" - }, - "12374": { - "fn": "CompoundHandler.mint", - "jump": "o", - "offset": [ - 671, - 933 - ], - "op": "JUMP", - "path": "71" - }, - "12375": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 513, - 665 - ], - "op": "JUMPDEST", - "path": "71" - }, - "12376": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 614, - 619 - ], - "op": "DUP1", - "path": "71", - "statement": 271 - }, - "12377": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 614, - 632 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12379": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 614, - 632 - ], - "op": "ADD", - "path": "71" - }, - "12380": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 614, - 632 - ], - "op": "MLOAD", - "path": "71" - }, - "12381": { - "op": "PUSH1", - "value": "0x1" - }, - "12383": { - "op": "PUSH1", - "value": "0x1" - }, - "12385": { - "op": "PUSH1", - "value": "0xA0" - }, - "12387": { - "op": "SHL" - }, - "12388": { - "op": "SUB" - }, - "12389": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 638 - ], - "op": "AND", - "path": "71" - }, - "12390": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 638 - ], - "op": "PUSH4", - "path": "71", - "value": "0x1249C58B" - }, - "12395": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 646, - 655 - ], - "op": "CALLVALUE", - "path": "71" - }, - "12396": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12398": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "MLOAD", - "path": "71" - }, - "12399": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP3", - "path": "71" - }, - "12400": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH4", - "path": "71", - "value": "0xFFFFFFFF" - }, - "12405": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "AND", - "path": "71" - }, - "12406": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH1", - "path": "71", - "value": "0xE0" - }, - "12408": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "SHL", - "path": "71" - }, - "12409": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP2", - "path": "71" - }, - "12410": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "MSTORE", - "path": "71" - }, - "12411": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "12413": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "ADD", - "path": "71" - }, - "12414": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12416": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "12418": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "MLOAD", - "path": "71" - }, - "12419": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP1", - "path": "71" - }, - "12420": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP4", - "path": "71" - }, - "12421": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "SUB", - "path": "71" - }, - "12422": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP2", - "path": "71" - }, - "12423": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP6", - "path": "71" - }, - "12424": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP9", - "path": "71" - }, - "12425": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP1", - "path": "71" - }, - "12426": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "EXTCODESIZE", - "path": "71" - }, - "12427": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "ISZERO", - "path": "71" - }, - "12428": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP1", - "path": "71" - }, - "12429": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "ISZERO", - "path": "71" - }, - "12430": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2F97" - }, - "12433": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "JUMPI", - "path": "71" - }, - "12434": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "12436": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "DUP1", - "path": "71" - }, - "12437": { - "fn": "CompoundHandler.mintCETH", - "offset": [ - 598, - 658 - ], - "op": "REVERT", - "path": "71" - }, - "12438": { - "fn": "SafeMath.sub", - "offset": [ - 3128, - 3283 - ], - "op": "JUMPDEST", - "path": "6" - }, - "12439": { - "fn": "SafeMath.sub", - "offset": [ - 3186, - 3193 - ], - "op": "PUSH1", - "path": "6", - "value": "0x0" - }, - "12441": { - "fn": "SafeMath.sub", - "offset": [ - 3218, - 3219 - ], - "op": "DUP3", - "path": "6", - "statement": 272 - }, - "12442": { - "fn": "SafeMath.sub", - "offset": [ - 3213, - 3214 - ], - "op": "DUP3", - "path": "6" - }, - "12443": { - "fn": "SafeMath.sub", - "offset": [ - 3213, - 3219 - ], - "op": "GT", - "path": "6" - }, - "12444": { - "branch": 537, - "fn": "SafeMath.sub", - "offset": [ - 3213, - 3219 - ], - "op": "ISZERO", - "path": "6" - }, - "12445": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH2", - "path": "6", - "value": "0x30ED" - }, - "12448": { - "branch": 537, - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "JUMPI", - "path": "6" - }, - "12449": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "12451": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP1", - "path": "6" - }, - "12452": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MLOAD", - "path": "6" - }, - "12453": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "12457": { - "op": "PUSH1", - "value": "0xE5" - }, - "12459": { - "op": "SHL" - }, - "12460": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP2", - "path": "6" - }, - "12461": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "12462": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "12464": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x4" - }, - "12466": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP3", - "path": "6" - }, - "12467": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "12468": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "12469": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x1E" - }, - "12471": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x24" - }, - "12473": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP3", - "path": "6" - }, - "12474": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "12475": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "12476": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH32", - "path": "6", - "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000" - }, - "12509": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x44" - }, - "12511": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP3", - "path": "6" - }, - "12512": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "12513": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "12514": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "12515": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MLOAD", - "path": "6" - }, - "12516": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "12517": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP2", - "path": "6" - }, - "12518": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "12519": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SUB", - "path": "6" - }, - "12520": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x64" - }, - "12522": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "12523": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "12524": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "REVERT", - "path": "6" - }, - "12525": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "JUMPDEST", - "path": "6" - }, - "12526": { - "op": "POP" - }, - "12527": { - "fn": "SafeMath.sub", - "offset": [ - 3271, - 3276 - ], - "op": "SWAP1", - "path": "6", - "statement": 273 - }, - "12528": { - "fn": "SafeMath.sub", - "offset": [ - 3271, - 3276 - ], - "op": "SUB", - "path": "6" - }, - "12529": { - "fn": "SafeMath.sub", - "offset": [ - 3271, - 3276 - ], - "op": "SWAP1", - "path": "6" - }, - "12530": { - "fn": "SafeMath.sub", - "jump": "o", - "offset": [ - 3128, - 3283 - ], - "op": "JUMP", - "path": "6" - }, - "12531": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6164, - 6423 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12532": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6248, - 6254 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12534": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6285, - 6416 - ], - "op": "PUSH2", - "path": "70", - "statement": 274, - "value": "0xBDF" - }, - "12537": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6346 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3100" - }, - "12540": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6344 - ], - "op": "PUSH2", - "path": "70", - "value": "0x392E" - }, - "12543": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "jump": "i", - "offset": [ - 6319, - 6346 - ], - "op": "JUMP", - "path": "70" - }, - "12544": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6346 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12545": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6358 - ], - "op": "SLOAD", - "path": "70" - }, - "12546": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "12548": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "MLOAD", - "path": "70" - }, - "12549": { - "op": "PUSH4", - "value": "0xD15E0053" - }, - "12554": { - "op": "PUSH1", - "value": "0xE0" - }, - "12556": { - "op": "SHL" - }, - "12557": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP2", - "path": "70" - }, - "12558": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "MSTORE", - "path": "70" - }, - "12559": { - "op": "PUSH1", - "value": "0x1" - }, - "12561": { - "op": "PUSH1", - "value": "0x1" - }, - "12563": { - "op": "PUSH1", - "value": "0xA0" - }, - "12565": { - "op": "SHL" - }, - "12566": { - "op": "SUB" - }, - "12567": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6358 - ], - "op": "SWAP1", - "path": "70" - }, - "12568": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6358 - ], - "op": "SWAP2", - "path": "70" - }, - "12569": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6358 - ], - "op": "AND", - "path": "70" - }, - "12570": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6358 - ], - "op": "SWAP1", - "path": "70" - }, - "12571": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6385 - ], - "op": "PUSH4", - "path": "70", - "value": "0xD15E0053" - }, - "12576": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6385 - ], - "op": "SWAP1", - "path": "70" - }, - "12577": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH2", - "path": "70", - "value": "0x312E" - }, - "12580": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "SWAP1", - "path": "70" - }, - "12581": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6386, - 6401 - ], - "op": "DUP7", - "path": "70" - }, - "12582": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6386, - 6401 - ], - "op": "SWAP1", - "path": "70" - }, - "12583": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x4" - }, - "12585": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ADD", - "path": "70" - }, - "12586": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH2", - "path": "70", - "value": "0x4641" - }, - "12589": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "jump": "i", - "offset": [ - 6319, - 6402 - ], - "op": "JUMP", - "path": "70" - }, - "12590": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12591": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x20" - }, - "12593": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "12595": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "MLOAD", - "path": "70" - }, - "12596": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12597": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP4", - "path": "70" - }, - "12598": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "SUB", - "path": "70" - }, - "12599": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP2", - "path": "70" - }, - "12600": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP7", - "path": "70" - }, - "12601": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12602": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "EXTCODESIZE", - "path": "70" - }, - "12603": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ISZERO", - "path": "70" - }, - "12604": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12605": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ISZERO", - "path": "70" - }, - "12606": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3146" - }, - "12609": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "JUMPI", - "path": "70" - }, - "12610": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12612": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12613": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "REVERT", - "path": "70" - }, - "12614": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12615": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "POP", - "path": "70" - }, - "12616": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "GAS", - "path": "70" - }, - "12617": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "STATICCALL", - "path": "70" - }, - "12618": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ISZERO", - "path": "70" - }, - "12619": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12620": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ISZERO", - "path": "70" - }, - "12621": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH2", - "path": "70", - "value": "0x315A" - }, - "12624": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "JUMPI", - "path": "70" - }, - "12625": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "12626": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12628": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12629": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "RETURNDATACOPY", - "path": "70" - }, - "12630": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "12631": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "12633": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "REVERT", - "path": "70" - }, - "12634": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "JUMPDEST", - "path": "70" - }, - "12635": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "POP", - "path": "70" - }, - "12636": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "POP", - "path": "70" - }, - "12637": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "POP", - "path": "70" - }, - "12638": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "POP", - "path": "70" - }, - "12639": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "12641": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "MLOAD", - "path": "70" - }, - "12642": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "12643": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x1F" - }, - "12645": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "NOT", - "path": "70" - }, - "12646": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x1F" - }, - "12648": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP3", - "path": "70" - }, - "12649": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ADD", - "path": "70" - }, - "12650": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "AND", - "path": "70" - }, - "12651": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP3", - "path": "70" - }, - "12652": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ADD", - "path": "70" - }, - "12653": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP1", - "path": "70" - }, - "12654": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "12656": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "MSTORE", - "path": "70" - }, - "12657": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "POP", - "path": "70" - }, - "12658": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "DUP2", - "path": "70" - }, - "12659": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "ADD", - "path": "70" - }, - "12660": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "SWAP1", - "path": "70" - }, - "12661": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1DEA" - }, - "12664": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "SWAP2", - "path": "70" - }, - "12665": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "SWAP1", - "path": "70" - }, - "12666": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "offset": [ - 6319, - 6402 - ], - "op": "PUSH2", - "path": "70", - "value": "0x43D8" - }, - "12669": { - "fn": "AaveHandler._getReserveNormalizedIncome", - "jump": "i", - "offset": [ - 6319, - 6402 - ], - "op": "JUMP", - "path": "70" - }, - "12670": { - "fn": "TokenHandler.redeem", - "offset": [ - 7923, - 8970 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12671": { - "fn": "TokenHandler.redeem", - "offset": [ - 8086, - 8092 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "12673": { - "fn": "TokenHandler.redeem", - "offset": [ - 8086, - 8092 - ], - "op": "DUP1", - "path": "69" - }, - "12674": { - "fn": "TokenHandler.redeem", - "offset": [ - 8164, - 8178 - ], - "op": "PUSH1", - "path": "69", - "value": "0x2" - }, - "12676": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8150 - ], - "op": "DUP7", - "path": "69" - }, - "12677": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8160 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "12679": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8160 - ], - "op": "ADD", - "path": "69" - }, - "12680": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8160 - ], - "op": "MLOAD", - "path": "69" - }, - "12681": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "12683": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "DUP2", - "path": "69" - }, - "12684": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "GT", - "path": "69" - }, - "12685": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "ISZERO", - "path": "69" - }, - "12686": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3193" - }, - "12689": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "JUMPI", - "path": "69" - }, - "12690": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "INVALID", - "path": "69" - }, - "12691": { - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12692": { - "branch": 559, - "fn": "TokenHandler.redeem", - "offset": [ - 8140, - 8178 - ], - "op": "EQ", - "path": "69" - }, - "12693": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "ISZERO", - "path": "69" - }, - "12694": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "PUSH2", - "path": "69", - "value": "0x31AB" - }, - "12697": { - "branch": 559, - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "JUMPI", - "path": "69" - }, - "12698": { - "fn": "TokenHandler.redeem", - "offset": [ - 8211, - 8279 - ], - "op": "PUSH2", - "path": "69", - "statement": 275, - "value": "0x31A4" - }, - "12701": { - "fn": "TokenHandler.redeem", - "offset": [ - 8238, - 8248 - ], - "op": "DUP7", - "path": "69" - }, - "12702": { - "fn": "TokenHandler.redeem", - "offset": [ - 8250, - 8257 - ], - "op": "DUP6", - "path": "69" - }, - "12703": { - "fn": "TokenHandler.redeem", - "offset": [ - 8259, - 8278 - ], - "op": "DUP6", - "path": "69" - }, - "12704": { - "fn": "TokenHandler.redeem", - "offset": [ - 8211, - 8237 - ], - "op": "PUSH2", - "path": "69", - "value": "0x393B" - }, - "12707": { - "fn": "TokenHandler.redeem", - "jump": "i", - "offset": [ - 8211, - 8279 - ], - "op": "JUMP", - "path": "69" - }, - "12708": { - "fn": "TokenHandler.redeem", - "offset": [ - 8211, - 8279 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12709": { - "fn": "TokenHandler.redeem", - "offset": [ - 8194, - 8279 - ], - "op": "SWAP1", - "path": "69" - }, - "12710": { - "fn": "TokenHandler.redeem", - "offset": [ - 8194, - 8279 - ], - "op": "POP", - "path": "69" - }, - "12711": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3208" - }, - "12714": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "JUMP", - "path": "69" - }, - "12715": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12716": { - "fn": "TokenHandler.redeem", - "offset": [ - 8310, - 8338 - ], - "op": "PUSH1", - "path": "69", - "value": "0x0" - }, - "12718": { - "fn": "TokenHandler.redeem", - "offset": [ - 8341, - 8371 - ], - "op": "PUSH2", - "path": "69", - "value": "0x31B6" - }, - "12721": { - "fn": "TokenHandler.redeem", - "offset": [ - 8360, - 8370 - ], - "op": "DUP7", - "path": "69" - }, - "12722": { - "fn": "TokenHandler.redeem", - "offset": [ - 8341, - 8359 - ], - "op": "PUSH2", - "path": "69", - "value": "0xF3B" - }, - "12725": { - "fn": "TokenHandler.redeem", - "jump": "i", - "offset": [ - 8341, - 8371 - ], - "op": "JUMP", - "path": "69" - }, - "12726": { - "fn": "TokenHandler.redeem", - "offset": [ - 8341, - 8371 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12727": { - "fn": "TokenHandler.redeem", - "offset": [ - 8310, - 8371 - ], - "op": "SWAP1", - "path": "69" - }, - "12728": { - "op": "POP" - }, - "12729": { - "fn": "TokenHandler.redeem", - "offset": [ - 8413, - 8429 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "12731": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8399 - ], - "op": "DUP8", - "path": "69" - }, - "12732": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8409 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "12734": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8409 - ], - "op": "ADD", - "path": "69" - }, - "12735": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8409 - ], - "op": "MLOAD", - "path": "69" - }, - "12736": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "12738": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "DUP2", - "path": "69" - }, - "12739": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "GT", - "path": "69" - }, - "12740": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "ISZERO", - "path": "69" - }, - "12741": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "PUSH2", - "path": "69", - "value": "0x31CA" - }, - "12744": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "JUMPI", - "path": "69" - }, - "12745": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "INVALID", - "path": "69" - }, - "12746": { - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12747": { - "branch": 560, - "fn": "TokenHandler.redeem", - "offset": [ - 8389, - 8429 - ], - "op": "EQ", - "path": "69" - }, - "12748": { - "fn": "TokenHandler.redeem", - "offset": [ - 8385, - 8805 - ], - "op": "ISZERO", - "path": "69" - }, - "12749": { - "fn": "TokenHandler.redeem", - "offset": [ - 8385, - 8805 - ], - "op": "PUSH2", - "path": "69", - "value": "0x31E2" - }, - "12752": { - "branch": 560, - "fn": "TokenHandler.redeem", - "offset": [ - 8385, - 8805 - ], - "op": "JUMPI", - "path": "69" - }, - "12753": { - "fn": "TokenHandler.redeem", - "offset": [ - 8466, - 8531 - ], - "op": "PUSH2", - "path": "69", - "statement": 276, - "value": "0x31DB" - }, - "12756": { - "fn": "TokenHandler.redeem", - "offset": [ - 8485, - 8500 - ], - "op": "DUP2", - "path": "69" - }, - "12757": { - "fn": "TokenHandler.redeem", - "offset": [ - 8502, - 8509 - ], - "op": "DUP7", - "path": "69" - }, - "12758": { - "fn": "TokenHandler.redeem", - "offset": [ - 8511, - 8530 - ], - "op": "DUP7", - "path": "69" - }, - "12759": { - "fn": "TokenHandler.redeem", - "offset": [ - 8466, - 8484 - ], - "op": "PUSH2", - "path": "69", - "value": "0x39F8" - }, - "12762": { - "fn": "TokenHandler.redeem", - "jump": "i", - "offset": [ - 8466, - 8531 - ], - "op": "JUMP", - "path": "69" - }, - "12763": { - "fn": "TokenHandler.redeem", - "offset": [ - 8466, - 8531 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12764": { - "fn": "TokenHandler.redeem", - "offset": [ - 8449, - 8531 - ], - "op": "SWAP2", - "path": "69" - }, - "12765": { - "fn": "TokenHandler.redeem", - "offset": [ - 8449, - 8531 - ], - "op": "POP", - "path": "69" - }, - "12766": { - "fn": "TokenHandler.redeem", - "offset": [ - 8385, - 8805 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3206" - }, - "12769": { - "fn": "TokenHandler.redeem", - "offset": [ - 8385, - 8805 - ], - "op": "JUMP", - "path": "69" - }, - "12770": { - "fn": "TokenHandler.redeem", - "offset": [ - 8385, - 8805 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12771": { - "fn": "TokenHandler.redeem", - "offset": [ - 8580, - 8596 - ], - "op": "PUSH1", - "path": "69", - "value": "0x1" - }, - "12773": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8566 - ], - "op": "DUP8", - "path": "69" - }, - "12774": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8576 - ], - "op": "PUSH1", - "path": "69", - "value": "0x60" - }, - "12776": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8576 - ], - "op": "ADD", - "path": "69" - }, - "12777": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8576 - ], - "op": "MLOAD", - "path": "69" - }, - "12778": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "PUSH1", - "path": "69", - "value": "0x5" - }, - "12780": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "DUP2", - "path": "69" - }, - "12781": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "GT", - "path": "69" - }, - "12782": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "ISZERO", - "path": "69" - }, - "12783": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "PUSH2", - "path": "69", - "value": "0x31F4" - }, - "12786": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "JUMPI", - "path": "69" - }, - "12787": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "INVALID", - "path": "69" - }, - "12788": { - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12789": { - "branch": 561, - "fn": "TokenHandler.redeem", - "offset": [ - 8556, - 8596 - ], - "op": "EQ", - "path": "69" - }, - "12790": { - "fn": "TokenHandler.redeem", - "offset": [ - 8552, - 8805 - ], - "op": "ISZERO", - "path": "69" - }, - "12791": { - "fn": "TokenHandler.redeem", - "offset": [ - 8552, - 8805 - ], - "op": "PUSH2", - "path": "69", - "value": "0x7B" - }, - "12794": { - "branch": 561, - "fn": "TokenHandler.redeem", - "jump_revert": true, - "offset": [ - 8753, - 8761 - ], - "op": "JUMPI", - "path": "69" - }, - "12795": { - "fn": "TokenHandler.redeem", - "offset": [ - 8633, - 8714 - ], - "op": "PUSH2", - "path": "69", - "statement": 277, - "value": "0x31DB" - }, - "12798": { - "fn": "TokenHandler.redeem", - "offset": [ - 8656, - 8666 - ], - "op": "DUP8", - "path": "69" - }, - "12799": { - "fn": "TokenHandler.redeem", - "offset": [ - 8668, - 8683 - ], - "op": "DUP3", - "path": "69" - }, - "12800": { - "fn": "TokenHandler.redeem", - "offset": [ - 8685, - 8692 - ], - "op": "DUP8", - "path": "69" - }, - "12801": { - "fn": "TokenHandler.redeem", - "offset": [ - 8694, - 8713 - ], - "op": "DUP8", - "path": "69" - }, - "12802": { - "fn": "TokenHandler.redeem", - "offset": [ - 8633, - 8655 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3AAE" - }, - "12805": { - "fn": "TokenHandler.redeem", - "jump": "i", - "offset": [ - 8633, - 8714 - ], - "op": "JUMP", - "path": "69" - }, - "12806": { - "fn": "TokenHandler.redeem", - "offset": [ - 8552, - 8805 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12807": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "POP", - "path": "69" - }, - "12808": { - "fn": "TokenHandler.redeem", - "offset": [ - 8136, - 8815 - ], - "op": "JUMPDEST", - "path": "69" - }, - "12809": { - "fn": "TokenHandler.redeem", - "offset": [ - 8925, - 8963 - ], - "op": "PUSH2", - "path": "69", - "statement": 278, - "value": "0x2C7F" - }, - "12812": { - "fn": "TokenHandler.redeem", - "offset": [ - 8925, - 8957 - ], - "op": "PUSH2", - "path": "69", - "value": "0x3EA" - }, - "12815": { - "fn": "TokenHandler.redeem", - "offset": [ - 8942, - 8956 - ], - "op": "DUP3", - "path": "69" - }, - "12816": { - "fn": "TokenHandler.redeem", - "offset": [ - 8925, - 8941 - ], - "op": "PUSH2", - "path": "69", - "value": "0x264D" - }, - "12819": { - "fn": "TokenHandler.redeem", - "jump": "i", - "offset": [ - 8925, - 8957 - ], - "op": "JUMP", - "path": "69" - }, - "12820": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1541, - 1760 - ], - "op": "JUMPDEST", - "path": "81" - }, - "12821": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1607, - 1627 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "12823": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1639, - 1680 - ], - "op": "DUP1", - "path": "81" - }, - "12824": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1683, - 1719 - ], - "op": "PUSH2", - "path": "81", - "value": "0x321F" - }, - "12827": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1683, - 1717 - ], - "op": "PUSH2", - "path": "81", - "value": "0x3BAC" - }, - "12830": { - "fn": "nTokenHandler.nTokenAddress", - "jump": "i", - "offset": [ - 1683, - 1719 - ], - "op": "JUMP", - "path": "81" - }, - "12831": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1683, - 1719 - ], - "op": "JUMPDEST", - "path": "81" - }, - "12832": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "PUSH1", - "path": "81", - "statement": 279, - "value": "0x0" - }, - "12834": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "SWAP4", - "path": "81" - }, - "12835": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "DUP5", - "path": "81" - }, - "12836": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "MSTORE", - "path": "81" - }, - "12837": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "PUSH1", - "path": "81", - "value": "0x20" - }, - "12839": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "MSTORE", - "path": "81" - }, - "12840": { - "op": "POP" - }, - "12841": { - "op": "POP" - }, - "12842": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "PUSH1", - "path": "81", - "value": "0x40" - }, - "12844": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "SWAP1", - "path": "81" - }, - "12845": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "KECCAK256", - "path": "81" - }, - "12846": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "SLOAD", - "path": "81" - }, - "12847": { - "op": "PUSH1", - "value": "0x1" - }, - "12849": { - "op": "PUSH1", - "value": "0x1" - }, - "12851": { - "op": "PUSH1", - "value": "0xA0" - }, - "12853": { - "op": "SHL" - }, - "12854": { - "op": "SUB" - }, - "12855": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "AND", - "path": "81" - }, - "12856": { - "fn": "nTokenHandler.nTokenAddress", - "offset": [ - 1736, - 1753 - ], - "op": "SWAP1", - "path": "81" - }, - "12857": { - "fn": "nTokenHandler.nTokenAddress", - "jump": "o", - "offset": [ - 1541, - 1760 - ], - "op": "JUMP", - "path": "81" - }, - "12858": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4730, - 6221 - ], - "op": "JUMPDEST", - "path": "82" - }, - "12859": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4865, - 4872 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "12861": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4898, - 4917 - ], - "op": "DUP1", - "path": "82" - }, - "12862": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4931, - 4963 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "12864": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5023, - 5082 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3249" - }, - "12867": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5058, - 5070 - ], - "op": "DUP7", - "path": "82" - }, - "12868": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5072, - 5081 - ], - "op": "DUP6", - "path": "82" - }, - "12869": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5023, - 5057 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3BB9" - }, - "12872": { - "fn": "nTokenSupply.changeNTokenSupply", - "jump": "i", - "offset": [ - 5023, - 5082 - ], - "op": "JUMP", - "path": "82" - }, - "12873": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5023, - 5082 - ], - "op": "JUMPDEST", - "path": "82" - }, - "12874": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4884, - 5082 - ], - "op": "POP", - "path": "82" - }, - "12875": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4884, - 5082 - ], - "op": "SWAP2", - "path": "82" - }, - "12876": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4884, - 5082 - ], - "op": "POP", - "path": "82" - }, - "12877": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4884, - 5082 - ], - "op": "SWAP2", - "path": "82" - }, - "12878": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4884, - 5082 - ], - "op": "POP", - "path": "82" - }, - "12879": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5129, - 5187 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "12881": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5190, - 5230 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3258" - }, - "12884": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5190, - 5228 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C4F" - }, - "12887": { - "fn": "nTokenSupply.changeNTokenSupply", - "jump": "i", - "offset": [ - 5190, - 5230 - ], - "op": "JUMP", - "path": "82" - }, - "12888": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5190, - 5230 - ], - "op": "JUMPDEST", - "path": "82" - }, - "12889": { - "op": "PUSH1", - "value": "0x1" - }, - "12891": { - "op": "PUSH1", - "value": "0x1" - }, - "12893": { - "op": "PUSH1", - "value": "0xA0" - }, - "12895": { - "op": "SHL" - }, - "12896": { - "op": "SUB" - }, - "12897": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "DUP9", - "path": "82" - }, - "12898": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "AND", - "path": "82" - }, - "12899": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5240, - 5286 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "12901": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "SWAP1", - "path": "82" - }, - "12902": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "DUP2", - "path": "82" - }, - "12903": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "MSTORE", - "path": "82" - }, - "12904": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "PUSH1", - "path": "82", - "value": "0x20" - }, - "12906": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "DUP3", - "path": "82" - }, - "12907": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "SWAP1", - "path": "82" - }, - "12908": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "MSTORE", - "path": "82" - }, - "12909": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "PUSH1", - "path": "82", - "value": "0x40" - }, - "12911": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "DUP2", - "path": "82" - }, - "12912": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5289, - 5308 - ], - "op": "KECCAK256", - "path": "82" - }, - "12913": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5129, - 5230 - ], - "op": "SWAP2", - "path": "82" - }, - "12914": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5129, - 5230 - ], - "op": "SWAP3", - "path": "82" - }, - "12915": { - "op": "POP" - }, - "12916": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5343, - 5377 - ], - "op": "PUSH2", - "path": "82", - "value": "0x327D" - }, - "12919": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5350, - 5361 - ], - "op": "DUP6", - "path": "82" - }, - "12920": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5367, - 5376 - ], - "op": "DUP10", - "path": "82" - }, - "12921": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5343, - 5366 - ], - "op": "PUSH2", - "path": "82", - "value": "0xEC5" - }, - "12924": { - "fn": "nTokenSupply.changeNTokenSupply", - "jump": "i", - "offset": [ - 5343, - 5377 - ], - "op": "JUMP", - "path": "82" - }, - "12925": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5343, - 5377 - ], - "op": "JUMPDEST", - "path": "82" - }, - "12926": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5319, - 5377 - ], - "op": "SWAP1", - "path": "82" - }, - "12927": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5319, - 5377 - ], - "op": "POP", - "path": "82" - }, - "12928": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5625, - 5639 - ], - "op": "DUP1", - "path": "82", - "statement": 280 - }, - "12929": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5621 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "12931": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5639 - ], - "op": "SGT", - "path": "82" - }, - "12932": { - "branch": 566, - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5639 - ], - "op": "ISZERO", - "path": "82" - }, - "12933": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5685 - ], - "op": "DUP1", - "path": "82" - }, - "12934": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5685 - ], - "op": "ISZERO", - "path": "82" - }, - "12935": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5685 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3296" - }, - "12938": { - "branch": 566, - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5685 - ], - "op": "JUMPI", - "path": "82" - }, - "12939": { - "op": "POP" - }, - "12940": { - "op": "PUSH1", - "value": "0x1" - }, - "12942": { - "op": "PUSH1", - "value": "0x1" - }, - "12944": { - "op": "PUSH1", - "value": "0x60" - }, - "12946": { - "op": "SHL" - }, - "12947": { - "op": "SUB" - }, - "12948": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5643, - 5685 - ], - "op": "DUP2", - "path": "82" - }, - "12949": { - "branch": 567, - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5643, - 5685 - ], - "op": "LT", - "path": "82" - }, - "12950": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5620, - 5685 - ], - "op": "JUMPDEST", - "path": "82" - }, - "12951": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5612, - 5686 - ], - "op": "PUSH2", - "path": "82", - "value": "0x329F" - }, - "12954": { - "branch": 567, - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5612, - 5686 - ], - "op": "JUMPI", - "path": "82" - }, - "12955": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5612, - 5686 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "12957": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5612, - 5686 - ], - "op": "DUP1", - "path": "82" - }, - "12958": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5612, - 5686 - ], - "op": "REVERT", - "path": "82" - }, - "12959": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5612, - 5686 - ], - "op": "JUMPDEST", - "path": "82" - }, - "12960": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5728, - 5778 - ], - "op": "DUP2", - "path": "82", - "statement": 281 - }, - "12961": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5728, - 5778 - ], - "op": "SLOAD", - "path": "82" - }, - "12962": { - "op": "PUSH12", - "value": "0xFFFFFFFFFFFFFFFFFFFFFFFF" - }, - "12975": { - "op": "NOT" - }, - "12976": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5728, - 5778 - ], - "op": "AND", - "path": "82" - }, - "12977": { - "op": "PUSH1", - "value": "0x1" - }, - "12979": { - "op": "PUSH1", - "value": "0x1" - }, - "12981": { - "op": "PUSH1", - "value": "0x60" - }, - "12983": { - "op": "SHL" - }, - "12984": { - "op": "SUB" - }, - "12985": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5728, - 5778 - ], - "op": "DUP3", - "path": "82" - }, - "12986": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5728, - 5778 - ], - "op": "AND", - "path": "82" - }, - "12987": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5728, - 5778 - ], - "op": "OR", - "path": "82" - }, - "12988": { - "op": "PUSH16", - "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" - }, - "13005": { - "op": "PUSH1", - "value": "0x60" - }, - "13007": { - "op": "SHL" - }, - "13008": { - "op": "NOT" - }, - "13009": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "AND", - "path": "82", - "statement": 282 - }, - "13010": { - "op": "PUSH1", - "value": "0x1" - }, - "13012": { - "op": "PUSH1", - "value": "0x60" - }, - "13014": { - "op": "SHL" - }, - "13015": { - "op": "PUSH1", - "value": "0x1" - }, - "13017": { - "op": "PUSH1", - "value": "0x1" - }, - "13019": { - "op": "PUSH1", - "value": "0x80" - }, - "13021": { - "op": "SHL" - }, - "13022": { - "op": "SUB" - }, - "13023": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "DUP7", - "path": "82" - }, - "13024": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "AND", - "path": "82" - }, - "13025": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "MUL", - "path": "82" - }, - "13026": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "OR", - "path": "82" - }, - "13027": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "DUP3", - "path": "82" - }, - "13028": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 5959, - 6033 - ], - "op": "SSTORE", - "path": "82" - }, - "13029": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6064, - 6080 - ], - "op": "PUSH4", - "path": "82", - "statement": 283, - "value": "0xFFFFFFFF" - }, - "13034": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6052, - 6080 - ], - "op": "DUP8", - "path": "82" - }, - "13035": { - "branch": 568, - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6052, - 6080 - ], - "op": "LT", - "path": "82" - }, - "13036": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6044, - 6081 - ], - "op": "PUSH2", - "path": "82", - "value": "0x32F4" - }, - "13039": { - "branch": 568, - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6044, - 6081 - ], - "op": "JUMPI", - "path": "82" - }, - "13040": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6044, - 6081 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "13042": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6044, - 6081 - ], - "op": "DUP1", - "path": "82" - }, - "13043": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6044, - 6081 - ], - "op": "REVERT", - "path": "82" - }, - "13044": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6044, - 6081 - ], - "op": "JUMPDEST", - "path": "82" - }, - "13045": { - "op": "POP" - }, - "13046": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "DUP1", - "path": "82", - "statement": 284 - }, - "13047": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "SLOAD", - "path": "82" - }, - "13048": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "PUSH4", - "path": "82", - "value": "0xFFFFFFFF" - }, - "13053": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "DUP8", - "path": "82" - }, - "13054": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "AND", - "path": "82" - }, - "13055": { - "op": "PUSH1", - "value": "0x1" - }, - "13057": { - "op": "PUSH1", - "value": "0xE0" - }, - "13059": { - "op": "SHL" - }, - "13060": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "MUL", - "path": "82" - }, - "13061": { - "op": "PUSH1", - "value": "0x1" - }, - "13063": { - "op": "PUSH1", - "value": "0x1" - }, - "13065": { - "op": "PUSH1", - "value": "0xE0" - }, - "13067": { - "op": "SHL" - }, - "13068": { - "op": "SUB" - }, - "13069": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "SWAP1", - "path": "82" - }, - "13070": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "SWAP2", - "path": "82" - }, - "13071": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "AND", - "path": "82" - }, - "13072": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "OR", - "path": "82" - }, - "13073": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "SWAP1", - "path": "82" - }, - "13074": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6119, - 6172 - ], - "op": "SSTORE", - "path": "82" - }, - "13075": { - "op": "POP" - }, - "13076": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 6190, - 6214 - ], - "op": "SWAP2", - "path": "82", - "statement": 285 - }, - "13077": { - "op": "POP" - }, - "13078": { - "op": "POP" - }, - "13079": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4730, - 6221 - ], - "op": "SWAP4", - "path": "82" - }, - "13080": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4730, - 6221 - ], - "op": "SWAP3", - "path": "82" - }, - "13081": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4730, - 6221 - ], - "op": "POP", - "path": "82" - }, - "13082": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4730, - 6221 - ], - "op": "POP", - "path": "82" - }, - "13083": { - "fn": "nTokenSupply.changeNTokenSupply", - "offset": [ - 4730, - 6221 - ], - "op": "POP", - "path": "82" - }, - "13084": { - "fn": "nTokenSupply.changeNTokenSupply", - "jump": "o", - "offset": [ - 4730, - 6221 - ], - "op": "JUMP", - "path": "82" - }, - "13085": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13086": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 958, - 984 - ], - "op": "PUSH1", - "path": "68", - "value": "0xE0" - }, - "13088": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 958, - 984 - ], - "op": "DUP5", - "path": "68" - }, - "13089": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 958, - 984 - ], - "op": "ADD", - "path": "68" - }, - "13090": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 958, - 984 - ], - "op": "MLOAD", - "path": "68" - }, - "13091": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 917, - 942 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "13093": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 917, - 942 - ], - "op": "SWAP1", - "path": "68" - }, - "13094": { - "branch": 493, - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 958, - 988 - ], - "op": "ISZERO", - "path": "68" - }, - "13095": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 954, - 1975 - ], - "op": "PUSH2", - "path": "68", - "value": "0x33DE" - }, - "13098": { - "branch": 493, - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 954, - 1975 - ], - "op": "JUMPI", - "path": "68" - }, - "13099": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1256 - ], - "op": "PUSH20", - "path": "68", - "statement": 286, - "value": "0x0" - }, - "13120": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1294 - ], - "op": "PUSH4", - "path": "68", - "value": "0xE0C01A72" - }, - "13125": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1312, - 1324 - ], - "op": "DUP6", - "path": "68" - }, - "13126": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1383 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3352" - }, - "13129": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1354 - ], - "op": "DUP9", - "path": "68" - }, - "13130": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1374 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "13132": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1374 - ], - "op": "ADD", - "path": "68" - }, - "13133": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1374 - ], - "op": "MLOAD", - "path": "68" - }, - "13134": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1381 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1CF6" - }, - "13137": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 1342, - 1383 - ], - "op": "JUMP", - "path": "68" - }, - "13138": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1342, - 1383 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13139": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1401, - 1413 - ], - "op": "DUP9", - "path": "68" - }, - "13140": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1401, - 1427 - ], - "op": "PUSH1", - "path": "68", - "value": "0xE0" - }, - "13142": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1401, - 1427 - ], - "op": "ADD", - "path": "68" - }, - "13143": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1401, - 1427 - ], - "op": "MLOAD", - "path": "68" - }, - "13144": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1584, - 1596 - ], - "op": "DUP10", - "path": "68" - }, - "13145": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1584, - 1617 - ], - "op": "PUSH2", - "path": "68", - "value": "0x100" - }, - "13148": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1584, - 1617 - ], - "op": "ADD", - "path": "68" - }, - "13149": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1584, - 1617 - ], - "op": "MLOAD", - "path": "68" - }, - "13150": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "13152": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "MLOAD", - "path": "68" - }, - "13153": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP6", - "path": "68" - }, - "13154": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH4", - "path": "68", - "value": "0xFFFFFFFF" - }, - "13159": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "AND", - "path": "68" - }, - "13160": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0xE0" - }, - "13162": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SHL", - "path": "68" - }, - "13163": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP2", - "path": "68" - }, - "13164": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "MSTORE", - "path": "68" - }, - "13165": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x4" - }, - "13167": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ADD", - "path": "68" - }, - "13168": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH2", - "path": "68", - "value": "0x337C" - }, - "13171": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP5", - "path": "68" - }, - "13172": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP4", - "path": "68" - }, - "13173": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP3", - "path": "68" - }, - "13174": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP2", - "path": "68" - }, - "13175": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP1", - "path": "68" - }, - "13176": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH2", - "path": "68", - "value": "0x4885" - }, - "13179": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 1239, - 1631 - ], - "op": "JUMP", - "path": "68" - }, - "13180": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13181": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x20" - }, - "13183": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "13185": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "MLOAD", - "path": "68" - }, - "13186": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13187": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP4", - "path": "68" - }, - "13188": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SUB", - "path": "68" - }, - "13189": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP2", - "path": "68" - }, - "13190": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP7", - "path": "68" - }, - "13191": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13192": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "EXTCODESIZE", - "path": "68" - }, - "13193": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ISZERO", - "path": "68" - }, - "13194": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13195": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ISZERO", - "path": "68" - }, - "13196": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3394" - }, - "13199": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "JUMPI", - "path": "68" - }, - "13200": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "13202": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13203": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "REVERT", - "path": "68" - }, - "13204": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13205": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "POP", - "path": "68" - }, - "13206": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "GAS", - "path": "68" - }, - "13207": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DELEGATECALL", - "path": "68" - }, - "13208": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ISZERO", - "path": "68" - }, - "13209": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13210": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ISZERO", - "path": "68" - }, - "13211": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH2", - "path": "68", - "value": "0x33A8" - }, - "13214": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "JUMPI", - "path": "68" - }, - "13215": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "RETURNDATASIZE", - "path": "68" - }, - "13216": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "13218": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13219": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "RETURNDATACOPY", - "path": "68" - }, - "13220": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "RETURNDATASIZE", - "path": "68" - }, - "13221": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x0" - }, - "13223": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "REVERT", - "path": "68" - }, - "13224": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13225": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "POP", - "path": "68" - }, - "13226": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "POP", - "path": "68" - }, - "13227": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "POP", - "path": "68" - }, - "13228": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "POP", - "path": "68" - }, - "13229": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "13231": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "MLOAD", - "path": "68" - }, - "13232": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "RETURNDATASIZE", - "path": "68" - }, - "13233": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x1F" - }, - "13235": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "NOT", - "path": "68" - }, - "13236": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x1F" - }, - "13238": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP3", - "path": "68" - }, - "13239": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ADD", - "path": "68" - }, - "13240": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "AND", - "path": "68" - }, - "13241": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP3", - "path": "68" - }, - "13242": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ADD", - "path": "68" - }, - "13243": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP1", - "path": "68" - }, - "13244": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "13246": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "MSTORE", - "path": "68" - }, - "13247": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "POP", - "path": "68" - }, - "13248": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "DUP2", - "path": "68" - }, - "13249": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "ADD", - "path": "68" - }, - "13250": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP1", - "path": "68" - }, - "13251": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH2", - "path": "68", - "value": "0x33CC" - }, - "13254": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP2", - "path": "68" - }, - "13255": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "SWAP1", - "path": "68" - }, - "13256": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "PUSH2", - "path": "68", - "value": "0x43D8" - }, - "13259": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 1239, - 1631 - ], - "op": "JUMP", - "path": "68" - }, - "13260": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1239, - 1631 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13261": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1766, - 1767 - ], - "op": "PUSH1", - "path": "68", - "statement": 287, - "value": "0x0" - }, - "13263": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1737, - 1763 - ], - "op": "PUSH1", - "path": "68", - "value": "0xE0" - }, - "13265": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1737, - 1763 - ], - "op": "DUP8", - "path": "68" - }, - "13266": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1737, - 1763 - ], - "op": "ADD", - "path": "68" - }, - "13267": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1737, - 1767 - ], - "op": "DUP2", - "path": "68" - }, - "13268": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1737, - 1767 - ], - "op": "SWAP1", - "path": "68" - }, - "13269": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1737, - 1767 - ], - "op": "MSTORE", - "path": "68" - }, - "13270": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1927, - 1960 - ], - "op": "PUSH2", - "path": "68", - "statement": 288, - "value": "0x100" - }, - "13273": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1927, - 1960 - ], - "op": "DUP8", - "path": "68" - }, - "13274": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1927, - 1960 - ], - "op": "ADD", - "path": "68" - }, - "13275": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1927, - 1964 - ], - "op": "MSTORE", - "path": "68" - }, - "13276": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 1219, - 1631 - ], - "op": "SWAP1", - "path": "68" - }, - "13277": { - "op": "POP" - }, - "13278": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 954, - 1975 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13279": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2947, - 3201 - ], - "op": "PUSH2", - "path": "68", - "statement": 289, - "value": "0x3420" - }, - "13282": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3191 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3419" - }, - "13285": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3157, - 3169 - ], - "op": "DUP7", - "path": "68" - }, - "13286": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3157, - 3190 - ], - "op": "PUSH2", - "path": "68", - "value": "0x100" - }, - "13289": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3157, - 3190 - ], - "op": "ADD", - "path": "68" - }, - "13290": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3157, - 3190 - ], - "op": "MLOAD", - "path": "68" - }, - "13291": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3135 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3413" - }, - "13294": { - "offset": [ - 499, - 503 - ], - "op": "PUSH8", - "path": "60", - "value": "0xDE0B6B3A7640000" - }, - "13303": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3070 - ], - "op": "PUSH2", - "path": "68", - "value": "0x340D" - }, - "13306": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3045, - 3069 - ], - "op": "DUP9", - "path": "68" - }, - "13307": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3023 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3407" - }, - "13310": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 2994 - ], - "op": "DUP13", - "path": "68" - }, - "13311": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3014 - ], - "op": "PUSH1", - "path": "68", - "value": "0x40" - }, - "13313": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3014 - ], - "op": "ADD", - "path": "68" - }, - "13314": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3014 - ], - "op": "MLOAD", - "path": "68" - }, - "13315": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3021 - ], - "op": "PUSH2", - "path": "68", - "value": "0x1CF6" - }, - "13318": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 2982, - 3023 - ], - "op": "JUMP", - "path": "68" - }, - "13319": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3023 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13320": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3044 - ], - "op": "SWAP1", - "path": "68" - }, - "13321": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3044 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3C5C" - }, - "13324": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 2982, - 3070 - ], - "op": "JUMP", - "path": "68" - }, - "13325": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3070 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13326": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3091 - ], - "op": "SWAP1", - "path": "68" - }, - "13327": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3091 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3CB5" - }, - "13330": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 2982, - 3135 - ], - "op": "JUMP", - "path": "68" - }, - "13331": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3135 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13332": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3156 - ], - "op": "SWAP1", - "path": "68" - }, - "13333": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3156 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3096" - }, - "13336": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 2982, - 3191 - ], - "op": "JUMP", - "path": "68" - }, - "13337": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2982, - 3191 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13338": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2947, - 2964 - ], - "op": "DUP3", - "path": "68" - }, - "13339": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2947, - 2964 - ], - "op": "SWAP1", - "path": "68" - }, - "13340": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2947, - 2968 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3D1C" - }, - "13343": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 2947, - 3201 - ], - "op": "JUMP", - "path": "68" - }, - "13344": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2947, - 3201 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13345": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 2927, - 3201 - ], - "op": "SWAP1", - "path": "68" - }, - "13346": { - "op": "POP" - }, - "13347": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 4033, - 4155 - ], - "op": "PUSH2", - "path": "68", - "statement": 290, - "value": "0x3438" - }, - "13350": { - "offset": [ - 499, - 503 - ], - "op": "PUSH8", - "path": "60", - "value": "0xDE0B6B3A7640000" - }, - "13359": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 4033, - 4094 - ], - "op": "PUSH2", - "path": "68", - "value": "0x340D" - }, - "13362": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 4033, - 4051 - ], - "op": "DUP5", - "path": "68" - }, - "13363": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 4069, - 4093 - ], - "op": "DUP7", - "path": "68" - }, - "13364": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 4033, - 4068 - ], - "op": "PUSH2", - "path": "68", - "value": "0x3C5C" - }, - "13367": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "i", - "offset": [ - 4033, - 4094 - ], - "op": "JUMP", - "path": "68" - }, - "13368": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 4033, - 4155 - ], - "op": "JUMPDEST", - "path": "68" - }, - "13369": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4009 - ], - "op": "DUP6", - "path": "68" - }, - "13370": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4030 - ], - "op": "PUSH2", - "path": "68", - "value": "0x100" - }, - "13373": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4030 - ], - "op": "ADD", - "path": "68" - }, - "13374": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4155 - ], - "op": "DUP2", - "path": "68" - }, - "13375": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4155 - ], - "op": "DUP2", - "path": "68" - }, - "13376": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4155 - ], - "op": "MSTORE", - "path": "68" - }, - "13377": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4155 - ], - "op": "POP", - "path": "68" - }, - "13378": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 3997, - 4155 - ], - "op": "POP", - "path": "68" - }, - "13379": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "SWAP5", - "path": "68" - }, - "13380": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "SWAP4", - "path": "68" - }, - "13381": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "POP", - "path": "68" - }, - "13382": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "POP", - "path": "68" - }, - "13383": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "POP", - "path": "68" - }, - "13384": { - "fn": "Incentives.calculateIncentivesToClaim", - "offset": [ - 702, - 4162 - ], - "op": "POP", - "path": "68" - }, - "13385": { - "fn": "Incentives.calculateIncentivesToClaim", - "jump": "o", - "offset": [ - 702, - 4162 - ], - "op": "JUMP", - "path": "68" - }, - "13386": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5133, - 5582 - ], - "op": "JUMPDEST", - "path": "81" - }, - "13387": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5208, - 5217 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "13389": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5229, - 5276 - ], - "op": "DUP1", - "path": "81" - }, - "13390": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5279, - 5315 - ], - "op": "PUSH2", - "path": "81", - "value": "0x3455" - }, - "13393": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5279, - 5313 - ], - "op": "PUSH2", - "path": "81", - "value": "0x2894" - }, - "13396": { - "fn": "nTokenHandler.getSecondaryRewarder", - "jump": "i", - "offset": [ - 5279, - 5315 - ], - "op": "JUMP", - "path": "81" - }, - "13397": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5279, - 5315 - ], - "op": "JUMPDEST", - "path": "81" - }, - "13398": { - "op": "PUSH1", - "value": "0x1" - }, - "13400": { - "op": "PUSH1", - "value": "0x1" - }, - "13402": { - "op": "PUSH1", - "value": "0xA0" - }, - "13404": { - "op": "SHL" - }, - "13405": { - "op": "SUB" - }, - "13406": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "DUP5", - "path": "81" - }, - "13407": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "AND", - "path": "81" - }, - "13408": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5325, - 5354 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "13410": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "SWAP1", - "path": "81" - }, - "13411": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "DUP2", - "path": "81" - }, - "13412": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "MSTORE", - "path": "81" - }, - "13413": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "PUSH1", - "path": "81", - "value": "0x20" - }, - "13415": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "DUP3", - "path": "81" - }, - "13416": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "SWAP1", - "path": "81" - }, - "13417": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "MSTORE", - "path": "81" - }, - "13418": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "PUSH1", - "path": "81", - "value": "0x40" - }, - "13420": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "SWAP1", - "path": "81" - }, - "13421": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "KECCAK256", - "path": "81" - }, - "13422": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5399, - 5427 - ], - "op": "DUP1", - "path": "81" - }, - "13423": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5399, - 5427 - ], - "op": "SLOAD", - "path": "81" - }, - "13424": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "SWAP2", - "path": "81" - }, - "13425": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "SWAP3", - "path": "81" - }, - "13426": { - "op": "POP" - }, - "13427": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5357, - 5376 - ], - "op": "SWAP1", - "path": "81" - }, - "13428": { - "op": "PUSH1", - "value": "0x1" - }, - "13430": { - "op": "PUSH1", - "value": "0xF8" - }, - "13432": { - "op": "SHL" - }, - "13433": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5399, - 5427 - ], - "op": "SWAP1", - "path": "81" - }, - "13434": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5399, - 5427 - ], - "op": "DIV", - "path": "81" - }, - "13435": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5399, - 5427 - ], - "op": "PUSH1", - "path": "81", - "value": "0xFF" - }, - "13437": { - "branch": 565, - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5399, - 5427 - ], - "op": "AND", - "path": "81" - }, - "13438": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5395, - 5576 - ], - "op": "ISZERO", - "path": "81" - }, - "13439": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5395, - 5576 - ], - "op": "PUSH2", - "path": "81", - "value": "0x34B1" - }, - "13442": { - "branch": 565, - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5395, - 5576 - ], - "op": "JUMPI", - "path": "81" - }, - "13443": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5492 - ], - "op": "PUSH2", - "path": "81", - "statement": 291, - "value": "0x348A" - }, - "13446": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5490 - ], - "op": "PUSH2", - "path": "81", - "value": "0x3D76" - }, - "13449": { - "fn": "nTokenHandler.getSecondaryRewarder", - "jump": "i", - "offset": [ - 5450, - 5492 - ], - "op": "JUMP", - "path": "81" - }, - "13450": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5492 - ], - "op": "JUMPDEST", - "path": "81" - }, - "13451": { - "op": "PUSH1", - "value": "0x1" - }, - "13453": { - "op": "PUSH1", - "value": "0x1" - }, - "13455": { - "op": "PUSH1", - "value": "0xA0" - }, - "13457": { - "op": "SHL" - }, - "13458": { - "op": "SUB" - }, - "13459": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "DUP1", - "path": "81" - }, - "13460": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "DUP7", - "path": "81" - }, - "13461": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "AND", - "path": "81" - }, - "13462": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "13464": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP1", - "path": "81" - }, - "13465": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "DUP2", - "path": "81" - }, - "13466": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "MSTORE", - "path": "81" - }, - "13467": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "PUSH1", - "path": "81", - "value": "0x20" - }, - "13469": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP3", - "path": "81" - }, - "13470": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP1", - "path": "81" - }, - "13471": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP3", - "path": "81" - }, - "13472": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "MSTORE", - "path": "81" - }, - "13473": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "PUSH1", - "path": "81", - "value": "0x40" - }, - "13475": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP1", - "path": "81" - }, - "13476": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP2", - "path": "81" - }, - "13477": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "KECCAK256", - "path": "81" - }, - "13478": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SLOAD", - "path": "81" - }, - "13479": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "AND", - "path": "81" - }, - "13480": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5450, - 5506 - ], - "op": "SWAP3", - "path": "81" - }, - "13481": { - "op": "POP" - }, - "13482": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5443, - 5506 - ], - "op": "PUSH2", - "path": "81", - "value": "0xBE2" - }, - "13485": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5443, - 5506 - ], - "op": "SWAP2", - "path": "81" - }, - "13486": { - "op": "POP" - }, - "13487": { - "op": "POP" - }, - "13488": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5443, - 5506 - ], - "op": "JUMP", - "path": "81" - }, - "13489": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5395, - 5576 - ], - "op": "JUMPDEST", - "path": "81" - }, - "13490": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5562, - 5563 - ], - "op": "PUSH1", - "path": "81", - "statement": 292, - "value": "0x0" - }, - "13492": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5537, - 5565 - ], - "op": "SWAP3", - "path": "81" - }, - "13493": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5537, - 5565 - ], - "op": "POP", - "path": "81" - }, - "13494": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5537, - 5565 - ], - "op": "POP", - "path": "81" - }, - "13495": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5537, - 5565 - ], - "op": "POP", - "path": "81" - }, - "13496": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5537, - 5565 - ], - "op": "PUSH2", - "path": "81", - "value": "0xBE2" - }, - "13499": { - "fn": "nTokenHandler.getSecondaryRewarder", - "offset": [ - 5537, - 5565 - ], - "op": "JUMP", - "path": "81" - }, - "13500": { - "fn": "TokenHandler.transferIncentive", - "offset": [ - 14515, - 14698 - ], - "op": "JUMPDEST", - "path": "69" - }, - "13501": { - "fn": "TokenHandler.transferIncentive", - "offset": [ - 14604, - 14691 - ], - "op": "PUSH2", - "path": "69", - "statement": 293, - "value": "0x8EB" - }, - "13504": { - "offset": [ - 336, - 378 - ], - "op": "PUSH20", - "path": "61", - "value": "0xCFEAEAD4947F0705A14EC42AC3D44129E1EF3ED5" - }, - "13525": { - "fn": "TokenHandler.transferIncentive", - "offset": [ - 14665, - 14672 - ], - "op": "DUP4", - "path": "69" - }, - "13526": { - "fn": "TokenHandler.transferIncentive", - "offset": [ - 14674, - 14690 - ], - "op": "DUP4", - "path": "69" - }, - "13527": { - "fn": "TokenHandler.transferIncentive", - "offset": [ - 14604, - 14632 - ], - "op": "PUSH2", - "path": "69", - "value": "0x2DB7" - }, - "13530": { - "fn": "TokenHandler.transferIncentive", - "jump": "i", - "offset": [ - 14604, - 14691 - ], - "op": "JUMP", - "path": "69" - }, - "13531": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12689, - 14727 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13532": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12803, - 12830 - ], - "op": "DUP2", - "path": "84", - "statement": 294 - }, - "13533": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12803, - 12830 - ], - "op": "MLOAD", - "path": "84" - }, - "13534": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12803, - 12837 - ], - "op": "MLOAD", - "path": "84" - }, - "13535": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12795, - 12837 - ], - "op": "DUP2", - "path": "84" - }, - "13536": { - "branch": 507, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12795, - 12837 - ], - "op": "LT", - "path": "84" - }, - "13537": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "PUSH2", - "path": "84", - "value": "0x34E9" - }, - "13540": { - "branch": 507, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "JUMPI", - "path": "84" - }, - "13541": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13543": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "DUP1", - "path": "84" - }, - "13544": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "REVERT", - "path": "84" - }, - "13545": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13546": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12920, - 12921 - ], - "op": "PUSH1", - "path": "84", - "statement": 295, - "value": "0x0" - }, - "13548": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12899 - ], - "op": "DUP3", - "path": "84" - }, - "13549": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12917 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "13551": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12917 - ], - "op": "ADD", - "path": "84" - }, - "13552": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12917 - ], - "op": "MLOAD", - "path": "84" - }, - "13553": { - "branch": 508, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12921 - ], - "op": "GT", - "path": "84" - }, - "13554": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "PUSH2", - "path": "84", - "value": "0x34FA" - }, - "13557": { - "branch": 508, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "JUMPI", - "path": "84" - }, - "13558": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13560": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "DUP1", - "path": "84" - }, - "13561": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "REVERT", - "path": "84" - }, - "13562": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13563": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12969, - 13004 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13565": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13021 - ], - "op": "DUP3", - "path": "84" - }, - "13566": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13034 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13568": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13034 - ], - "op": "ADD", - "path": "84" - }, - "13569": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13034 - ], - "op": "MLOAD", - "path": "84" - }, - "13570": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13035, - 13040 - ], - "op": "DUP3", - "path": "84" - }, - "13571": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "DUP2", - "path": "84" - }, - "13572": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "MLOAD", - "path": "84" - }, - "13573": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "DUP2", - "path": "84" - }, - "13574": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "LT", - "path": "84" - }, - "13575": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "PUSH2", - "path": "84", - "value": "0x350C" - }, - "13578": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "JUMPI", - "path": "84" - }, - "13579": { - "dev": "Index out of range", - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "INVALID", - "path": "84" - }, - "13580": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13581": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13583": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "MUL", - "path": "84" - }, - "13584": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13586": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "ADD", - "path": "84" - }, - "13587": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "ADD", - "path": "84" - }, - "13588": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "MLOAD", - "path": "84" - }, - "13589": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12969, - 13041 - ], - "op": "SWAP1", - "path": "84" - }, - "13590": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12969, - 13041 - ], - "op": "POP", - "path": "84" - }, - "13591": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13102, - 13126 - ], - "op": "PUSH1", - "path": "84", - "statement": 296, - "value": "0x2" - }, - "13593": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "13595": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "DUP2", - "path": "84" - }, - "13596": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "GT", - "path": "84" - }, - "13597": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "ISZERO", - "path": "84" - }, - "13598": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3523" - }, - "13601": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPI", - "path": "84" - }, - "13602": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "INVALID", - "path": "84" - }, - "13603": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13604": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13085 - ], - "op": "DUP2", - "path": "84" - }, - "13605": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13098 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "13607": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13098 - ], - "op": "ADD", - "path": "84" - }, - "13608": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13098 - ], - "op": "MLOAD", - "path": "84" - }, - "13609": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "13611": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "DUP2", - "path": "84" - }, - "13612": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "GT", - "path": "84" - }, - "13613": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "ISZERO", - "path": "84" - }, - "13614": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3533" - }, - "13617": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPI", - "path": "84" - }, - "13618": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "INVALID", - "path": "84" - }, - "13619": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13620": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "EQ", - "path": "84" - }, - "13621": { - "branch": 509, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "ISZERO", - "path": "84" - }, - "13622": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "DUP1", - "path": "84" - }, - "13623": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "ISZERO", - "path": "84" - }, - "13624": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3551" - }, - "13627": { - "branch": 509, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "JUMPI", - "path": "84" - }, - "13628": { - "op": "POP" - }, - "13629": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13172, - 13204 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "13631": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13155 - ], - "op": "DUP2", - "path": "84" - }, - "13632": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13168 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "13634": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13168 - ], - "op": "ADD", - "path": "84" - }, - "13635": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13168 - ], - "op": "MLOAD", - "path": "84" - }, - "13636": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "13638": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "DUP2", - "path": "84" - }, - "13639": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "GT", - "path": "84" - }, - "13640": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "ISZERO", - "path": "84" - }, - "13641": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "PUSH2", - "path": "84", - "value": "0x354E" - }, - "13644": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "JUMPI", - "path": "84" - }, - "13645": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "INVALID", - "path": "84" - }, - "13646": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13647": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "EQ", - "path": "84" - }, - "13648": { - "branch": 510, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "ISZERO", - "path": "84" - }, - "13649": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13650": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "PUSH2", - "path": "84", - "value": "0x355A" - }, - "13653": { - "branch": 510, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "JUMPI", - "path": "84" - }, - "13654": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13656": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "DUP1", - "path": "84" - }, - "13657": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "REVERT", - "path": "84" - }, - "13658": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13659": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13285 - ], - "op": "PUSH1", - "path": "84", - "statement": 297, - "value": "0x60" - }, - "13661": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13285 - ], - "op": "DUP4", - "path": "84" - }, - "13662": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13285 - ], - "op": "ADD", - "path": "84" - }, - "13663": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "DUP1", - "path": "84" - }, - "13664": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "MLOAD", - "path": "84" - }, - "13665": { - "op": "PUSH1", - "value": "0x0" - }, - "13667": { - "op": "NOT" - }, - "13668": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "ADD", - "path": "84" - }, - "13669": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "SWAP1", - "path": "84" - }, - "13670": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "MSTORE", - "path": "84" - }, - "13671": { - "op": "PUSH1", - "value": "0x0" - }, - "13673": { - "op": "DUP1" - }, - "13674": { - "op": "DUP1" - }, - "13675": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13676": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13551, - 13578 - ], - "op": "DUP6", - "path": "84" - }, - "13677": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13551, - 13578 - ], - "op": "MLOAD", - "path": "84" - }, - "13678": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13551, - 13585 - ], - "op": "MLOAD", - "path": "84" - }, - "13679": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13547, - 13585 - ], - "op": "DUP2", - "path": "84" - }, - "13680": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13547, - 13585 - ], - "op": "LT", - "path": "84" - }, - "13681": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "ISZERO", - "path": "84" - }, - "13682": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "PUSH2", - "path": "84", - "value": "0x35CD" - }, - "13685": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMPI", - "path": "84" - }, - "13686": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13606, - 13629 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13688": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13646 - ], - "op": "DUP7", - "path": "84" - }, - "13689": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13659 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13691": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13659 - ], - "op": "ADD", - "path": "84" - }, - "13692": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13659 - ], - "op": "MLOAD", - "path": "84" - }, - "13693": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13660, - 13661 - ], - "op": "DUP3", - "path": "84" - }, - "13694": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "DUP2", - "path": "84" - }, - "13695": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "MLOAD", - "path": "84" - }, - "13696": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "DUP2", - "path": "84" - }, - "13697": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "LT", - "path": "84" - }, - "13698": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3587" - }, - "13701": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "JUMPI", - "path": "84" - }, - "13702": { - "dev": "Index out of range", - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "INVALID", - "path": "84" - }, - "13703": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13704": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13706": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "MUL", - "path": "84" - }, - "13707": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13709": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "ADD", - "path": "84" - }, - "13710": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "ADD", - "path": "84" - }, - "13711": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "MLOAD", - "path": "84" - }, - "13712": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13606, - 13662 - ], - "op": "SWAP1", - "path": "84" - }, - "13713": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13606, - 13662 - ], - "op": "POP", - "path": "84" - }, - "13714": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13696, - 13709 - ], - "op": "DUP3", - "path": "84" - }, - "13715": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13681 - ], - "op": "DUP2", - "path": "84" - }, - "13716": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13693 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "13718": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13693 - ], - "op": "ADD", - "path": "84" - }, - "13719": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13693 - ], - "op": "MLOAD", - "path": "84" - }, - "13720": { - "branch": 511, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13709 - ], - "op": "GT", - "path": "84" - }, - "13721": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "DUP1", - "path": "84" - }, - "13722": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "ISZERO", - "path": "84" - }, - "13723": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "PUSH2", - "path": "84", - "value": "0x35B4" - }, - "13726": { - "branch": 511, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "JUMPI", - "path": "84" - }, - "13727": { - "op": "POP" - }, - "13728": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13731, - 13755 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "13730": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13714 - ], - "op": "DUP2", - "path": "84" - }, - "13731": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13727 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "13733": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13727 - ], - "op": "ADD", - "path": "84" - }, - "13734": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13727 - ], - "op": "MLOAD", - "path": "84" - }, - "13735": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "13737": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "DUP2", - "path": "84" - }, - "13738": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "GT", - "path": "84" - }, - "13739": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "ISZERO", - "path": "84" - }, - "13740": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "PUSH2", - "path": "84", - "value": "0x35B1" - }, - "13743": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "JUMPI", - "path": "84" - }, - "13744": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "INVALID", - "path": "84" - }, - "13745": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13746": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "EQ", - "path": "84" - }, - "13747": { - "branch": 512, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "ISZERO", - "path": "84" - }, - "13748": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13749": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "ISZERO", - "path": "84" - }, - "13750": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "PUSH2", - "path": "84", - "value": "0x35C4" - }, - "13753": { - "branch": 512, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "JUMPI", - "path": "84" - }, - "13754": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13792 - ], - "op": "DUP1", - "path": "84", - "statement": 298 - }, - "13755": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13804 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "13757": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13804 - ], - "op": "ADD", - "path": "84" - }, - "13758": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13804 - ], - "op": "MLOAD", - "path": "84" - }, - "13759": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13775, - 13804 - ], - "op": "SWAP3", - "path": "84" - }, - "13760": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13775, - 13804 - ], - "op": "POP", - "path": "84" - }, - "13761": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13843, - 13844 - ], - "op": "DUP2", - "path": "84", - "statement": 299 - }, - "13762": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13822, - 13844 - ], - "op": "SWAP4", - "path": "84" - }, - "13763": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13822, - 13844 - ], - "op": "POP", - "path": "84" - }, - "13764": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13765": { - "op": "POP" - }, - "13766": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13587, - 13590 - ], - "op": "PUSH1", - "path": "84", - "statement": 300, - "value": "0x1" - }, - "13768": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13587, - 13590 - ], - "op": "ADD", - "path": "84" - }, - "13769": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "PUSH2", - "path": "84", - "value": "0x356B" - }, - "13772": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMP", - "path": "84" - }, - "13773": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13774": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "POP", - "path": "84" - }, - "13775": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13892, - 13910 - ], - "op": "DUP2", - "path": "84" - }, - "13776": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13883, - 13888 - ], - "op": "DUP5", - "path": "84" - }, - "13777": { - "branch": 513, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13883, - 13910 - ], - "op": "EQ", - "path": "84" - }, - "13778": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "ISZERO", - "path": "84" - }, - "13779": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "PUSH2", - "path": "84", - "value": "0x35E6" - }, - "13782": { - "branch": 513, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "JUMPI", - "path": "84" - }, - "13783": { - "op": "POP" - }, - "13784": { - "op": "POP" - }, - "13785": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14060, - 14084 - ], - "op": "PUSH1", - "path": "84", - "statement": 301, - "value": "0x2" - }, - "13787": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "13789": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "SWAP2", - "path": "84" - }, - "13790": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "SWAP1", - "path": "84" - }, - "13791": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "SWAP2", - "path": "84" - }, - "13792": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "ADD", - "path": "84" - }, - "13793": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14084 - ], - "op": "MSTORE", - "path": "84" - }, - "13794": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14098, - 14105 - ], - "op": "PUSH2", - "path": "84", - "statement": 302, - "value": "0x8EB" - }, - "13797": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14098, - 14105 - ], - "op": "JUMP", - "path": "84" - }, - "13798": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13799": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14328, - 14361 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13801": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14378 - ], - "op": "DUP6", - "path": "84" - }, - "13802": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14391 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13804": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14391 - ], - "op": "ADD", - "path": "84" - }, - "13805": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14391 - ], - "op": "MLOAD", - "path": "84" - }, - "13806": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14392, - 14410 - ], - "op": "DUP4", - "path": "84" - }, - "13807": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "DUP2", - "path": "84" - }, - "13808": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "MLOAD", - "path": "84" - }, - "13809": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "DUP2", - "path": "84" - }, - "13810": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "LT", - "path": "84" - }, - "13811": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "PUSH2", - "path": "84", - "value": "0x35F8" - }, - "13814": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "JUMPI", - "path": "84" - }, - "13815": { - "dev": "Index out of range", - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "INVALID", - "path": "84" - }, - "13816": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13817": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13819": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP1", - "path": "84" - }, - "13820": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "DUP2", - "path": "84" - }, - "13821": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "MUL", - "path": "84" - }, - "13822": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP2", - "path": "84" - }, - "13823": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP1", - "path": "84" - }, - "13824": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP2", - "path": "84" - }, - "13825": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "ADD", - "path": "84" - }, - "13826": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "ADD", - "path": "84" - }, - "13827": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "MLOAD", - "path": "84" - }, - "13828": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "PUSH1", - "path": "84", - "statement": 303, - "value": "0x80" - }, - "13830": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "DUP6", - "path": "84" - }, - "13831": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "DUP2", - "path": "84" - }, - "13832": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "ADD", - "path": "84" - }, - "13833": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "DUP1", - "path": "84" - }, - "13834": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "MLOAD", - "path": "84" - }, - "13835": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "SWAP2", - "path": "84" - }, - "13836": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "DUP4", - "path": "84" - }, - "13837": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "ADD", - "path": "84" - }, - "13838": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "DUP1", - "path": "84" - }, - "13839": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "MLOAD", - "path": "84" - }, - "13840": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "SWAP1", - "path": "84" - }, - "13841": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "SWAP2", - "path": "84" - }, - "13842": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "MSTORE", - "path": "84" - }, - "13843": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "MSTORE", - "path": "84" - }, - "13844": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14633, - 14657 - ], - "op": "PUSH1", - "path": "84", - "statement": 304, - "value": "0x1" - }, - "13846": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "13848": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "SWAP2", - "path": "84" - }, - "13849": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "DUP3", - "path": "84" - }, - "13850": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "ADD", - "path": "84" - }, - "13851": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14657 - ], - "op": "MSTORE", - "path": "84" - }, - "13852": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14696, - 14720 - ], - "op": "PUSH1", - "path": "84", - "statement": 305, - "value": "0x2" - }, - "13854": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14693 - ], - "op": "SWAP5", - "path": "84" - }, - "13855": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14693 - ], - "op": "ADD", - "path": "84" - }, - "13856": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "SWAP4", - "path": "84" - }, - "13857": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "SWAP1", - "path": "84" - }, - "13858": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "SWAP4", - "path": "84" - }, - "13859": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "MSTORE", - "path": "84" - }, - "13860": { - "op": "POP" - }, - "13861": { - "op": "POP" - }, - "13862": { - "op": "POP" - }, - "13863": { - "op": "POP" - }, - "13864": { - "op": "POP" - }, - "13865": { - "fn": "PortfolioHandler.deleteAsset", - "jump": "o", - "offset": [ - 12689, - 14727 - ], - "op": "JUMP", - "path": "84" - }, - "13866": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11592, - 12454 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13867": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11739, - 11755 - ], - "op": "DUP2", - "path": "84", - "statement": 306 - }, - "13868": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11739, - 11755 - ], - "op": "MLOAD", - "path": "84" - }, - "13869": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "ISZERO", - "path": "84" - }, - "13870": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "DUP1", - "path": "84" - }, - "13871": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "ISZERO", - "path": "84" - }, - "13872": { - "branch": 514, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "SWAP1", - "path": "84" - }, - "13873": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11803 - ], - "op": "PUSH2", - "path": "84", - "value": "0x363D" - }, - "13876": { - "branch": 514, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11803 - ], - "op": "JUMPI", - "path": "84" - }, - "13877": { - "op": "POP" - }, - "13878": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11759, - 11775 - ], - "op": "DUP2", - "path": "84" - }, - "13879": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11759, - 11775 - ], - "op": "MLOAD", - "path": "84" - }, - "13880": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "13883": { - "op": "LT" - }, - "13884": { - "branch": 515, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11759, - 11803 - ], - "op": "ISZERO", - "path": "84" - }, - "13885": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11803 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13886": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3646" - }, - "13889": { - "branch": 515, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "JUMPI", - "path": "84" - }, - "13890": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13892": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "DUP1", - "path": "84" - }, - "13893": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "REVERT", - "path": "84" - }, - "13894": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13895": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11873 - ], - "op": "DUP2", - "path": "84", - "statement": 307 - }, - "13896": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11882 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13898": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11882 - ], - "op": "ADD", - "path": "84" - }, - "13899": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11882 - ], - "op": "MLOAD", - "path": "84" - }, - "13900": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11865 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13902": { - "branch": 516, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11882 - ], - "op": "LT", - "path": "84" - }, - "13903": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "DUP1", - "path": "84" - }, - "13904": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "ISZERO", - "path": "84" - }, - "13905": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3663" - }, - "13908": { - "branch": 516, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "JUMPI", - "path": "84" - }, - "13909": { - "op": "POP" - }, - "13910": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "13912": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "DUP3", - "path": "84" - }, - "13913": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "ADD", - "path": "84" - }, - "13914": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "MLOAD", - "path": "84" - }, - "13915": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11904, - 11920 - ], - "op": "PUSH5", - "path": "84", - "value": "0xFFFFFFFFFF" - }, - "13921": { - "op": "LT" - }, - "13922": { - "branch": 517, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11920 - ], - "op": "ISZERO", - "path": "84" - }, - "13923": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13924": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "PUSH2", - "path": "84", - "value": "0x366C" - }, - "13927": { - "branch": 517, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "JUMPI", - "path": "84" - }, - "13928": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13930": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "DUP1", - "path": "84" - }, - "13931": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "REVERT", - "path": "84" - }, - "13932": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13933": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11987 - ], - "op": "DUP2", - "path": "84", - "statement": 308 - }, - "13934": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11997 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "13936": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11997 - ], - "op": "ADD", - "path": "84" - }, - "13937": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11997 - ], - "op": "MLOAD", - "path": "84" - }, - "13938": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 11979 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13940": { - "branch": 518, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 11997 - ], - "op": "LT", - "path": "84" - }, - "13941": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "DUP1", - "path": "84" - }, - "13942": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "ISZERO", - "path": "84" - }, - "13943": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3685" - }, - "13946": { - "branch": 518, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "JUMPI", - "path": "84" - }, - "13947": { - "op": "POP" - }, - "13948": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "13950": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "DUP3", - "path": "84" - }, - "13951": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "ADD", - "path": "84" - }, - "13952": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "MLOAD", - "path": "84" - }, - "13953": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "13955": { - "op": "LT" - }, - "13956": { - "branch": 519, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12055 - ], - "op": "ISZERO", - "path": "84" - }, - "13957": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13958": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "PUSH2", - "path": "84", - "value": "0x368E" - }, - "13961": { - "branch": 519, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "JUMPI", - "path": "84" - }, - "13962": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "13964": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "DUP1", - "path": "84" - }, - "13965": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "REVERT", - "path": "84" - }, - "13966": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "JUMPDEST", - "path": "84" - }, - "13967": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "PUSH1", - "path": "84", - "statement": 309, - "value": "0x60" - }, - "13969": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "DUP3", - "path": "84" - }, - "13970": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "ADD", - "path": "84" - }, - "13971": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "MLOAD", - "path": "84" - }, - "13972": { - "op": "PUSH11", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "13984": { - "op": "NOT" - }, - "13985": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "SGT", - "path": "84" - }, - "13986": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "DUP1", - "path": "84" - }, - "13987": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "ISZERO", - "path": "84" - }, - "13988": { - "branch": 520, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "SWAP1", - "path": "84" - }, - "13989": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12178 - ], - "op": "PUSH2", - "path": "84", - "value": "0x36BD" - }, - "13992": { - "branch": 520, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12178 - ], - "op": "JUMPI", - "path": "84" - }, - "13993": { - "op": "POP" - }, - "13994": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "13996": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "DUP3", - "path": "84" - }, - "13997": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "ADD", - "path": "84" - }, - "13998": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "MLOAD", - "path": "84" - }, - "13999": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12163, - 12178 - ], - "op": "PUSH11", - "path": "84", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "14011": { - "op": "SLT" - }, - "14012": { - "branch": 521, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12178 - ], - "op": "ISZERO", - "path": "84" - }, - "14013": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12178 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14014": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "PUSH2", - "path": "84", - "value": "0x36C6" - }, - "14017": { - "branch": 521, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "JUMPI", - "path": "84" - }, - "14018": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "14020": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "DUP1", - "path": "84" - }, - "14021": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "REVERT", - "path": "84" - }, - "14022": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14023": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12262, - 12278 - ], - "op": "DUP2", - "path": "84", - "statement": 310 - }, - "14024": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12262, - 12278 - ], - "op": "MLOAD", - "path": "84" - }, - "14025": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "DUP2", - "path": "84" - }, - "14026": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SLOAD", - "path": "84" - }, - "14027": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "PUSH1", - "path": "84", - "statement": 311, - "value": "0x20" - }, - "14029": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "DUP5", - "path": "84" - }, - "14030": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "ADD", - "path": "84" - }, - "14031": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "MLOAD", - "path": "84" - }, - "14032": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "PUSH1", - "path": "84", - "statement": 312, - "value": "0x40" - }, - "14034": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "DUP6", - "path": "84" - }, - "14035": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "ADD", - "path": "84" - }, - "14036": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "MLOAD", - "path": "84" - }, - "14037": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "PUSH1", - "path": "84", - "statement": 313, - "value": "0x60" - }, - "14039": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "SWAP1", - "path": "84" - }, - "14040": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "SWAP6", - "path": "84" - }, - "14041": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "ADD", - "path": "84" - }, - "14042": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "MLOAD", - "path": "84" - }, - "14043": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA" - }, - "14045": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SIGNEXTEND", - "path": "84" - }, - "14046": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "PUSH11", - "path": "84", - "value": "0xFFFFFFFFFFFFFFFFFFFFFF" - }, - "14058": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "AND", - "path": "84" - }, - "14059": { - "op": "PUSH1", - "value": "0x1" - }, - "14061": { - "op": "PUSH1", - "value": "0x40" - }, - "14063": { - "op": "SHL" - }, - "14064": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "MUL", - "path": "84" - }, - "14065": { - "op": "PUSH19", - "value": "0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000" - }, - "14085": { - "op": "NOT" - }, - "14086": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "14088": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP1", - "path": "84" - }, - "14089": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP7", - "path": "84" - }, - "14090": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "AND", - "path": "84" - }, - "14091": { - "op": "PUSH1", - "value": "0x1" - }, - "14093": { - "op": "PUSH1", - "value": "0x38" - }, - "14095": { - "op": "SHL" - }, - "14096": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "MUL", - "path": "84" - }, - "14097": { - "op": "PUSH8", - "value": "0xFF00000000000000" - }, - "14106": { - "op": "NOT" - }, - "14107": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "PUSH5", - "path": "84", - "value": "0xFFFFFFFFFF" - }, - "14113": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP1", - "path": "84" - }, - "14114": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP4", - "path": "84" - }, - "14115": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "AND", - "path": "84" - }, - "14116": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "PUSH3", - "path": "84", - "value": "0x10000" - }, - "14120": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "MUL", - "path": "84" - }, - "14121": { - "op": "PUSH7", - "value": "0xFFFFFFFFFF0000" - }, - "14129": { - "op": "NOT" - }, - "14130": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "PUSH2", - "path": "84", - "value": "0xFFFF" - }, - "14133": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP1", - "path": "84" - }, - "14134": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP7", - "path": "84" - }, - "14135": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "AND", - "path": "84" - }, - "14136": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "14139": { - "op": "NOT" - }, - "14140": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP1", - "path": "84" - }, - "14141": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP6", - "path": "84" - }, - "14142": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "AND", - "path": "84" - }, - "14143": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP5", - "path": "84" - }, - "14144": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP1", - "path": "84" - }, - "14145": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP5", - "path": "84" - }, - "14146": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "OR", - "path": "84" - }, - "14147": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP5", - "path": "84" - }, - "14148": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP1", - "path": "84" - }, - "14149": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP5", - "path": "84" - }, - "14150": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "AND", - "path": "84" - }, - "14151": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP3", - "path": "84" - }, - "14152": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP1", - "path": "84" - }, - "14153": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP3", - "path": "84" - }, - "14154": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "OR", - "path": "84" - }, - "14155": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "AND", - "path": "84" - }, - "14156": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP2", - "path": "84" - }, - "14157": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP1", - "path": "84" - }, - "14158": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP2", - "path": "84" - }, - "14159": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "OR", - "path": "84" - }, - "14160": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP3", - "path": "84" - }, - "14161": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP1", - "path": "84" - }, - "14162": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP3", - "path": "84" - }, - "14163": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "AND", - "path": "84" - }, - "14164": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP2", - "path": "84" - }, - "14165": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP1", - "path": "84" - }, - "14166": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP2", - "path": "84" - }, - "14167": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "OR", - "path": "84" - }, - "14168": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP1", - "path": "84" - }, - "14169": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SSTORE", - "path": "84" - }, - "14170": { - "fn": "PortfolioHandler._storeAsset", - "jump": "o", - "offset": [ - 11592, - 12454 - ], - "op": "JUMP", - "path": "84" - }, - "14171": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10664, - 11546 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14172": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10896, - 10900 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "14174": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10914, - 10921 - ], - "op": "DUP1", - "path": "84" - }, - "14175": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10935, - 10942 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "14177": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10967, - 10989 - ], - "op": "DUP1", - "path": "84" - }, - "14178": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 11017 - ], - "op": "PUSH2", - "path": "84", - "value": "0x376A" - }, - "14181": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 10997 - ], - "op": "DUP9", - "path": "84" - }, - "14182": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 11015 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3D83" - }, - "14185": { - "fn": "PortfolioHandler._updatePortfolioContext", - "jump": "i", - "offset": [ - 10992, - 11017 - ], - "op": "JUMP", - "path": "84" - }, - "14186": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 11017 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14187": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10967, - 11017 - ], - "op": "SWAP1", - "path": "84" - }, - "14188": { - "op": "POP" - }, - "14189": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11108 - ], - "op": "DUP5", - "path": "84" - }, - "14190": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11108 - ], - "op": "ISZERO", - "path": "84" - }, - "14191": { - "branch": 522, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11108 - ], - "op": "DUP1", - "path": "84" - }, - "14192": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3778" - }, - "14195": { - "branch": 522, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "JUMPI", - "path": "84" - }, - "14196": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "POP", - "path": "84" - }, - "14197": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11129, - 11143 - ], - "op": "DUP1", - "path": "84" - }, - "14198": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11112, - 11126 - ], - "op": "DUP6", - "path": "84" - }, - "14199": { - "branch": 523, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11112, - 11143 - ], - "op": "GT", - "path": "84" - }, - "14200": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14201": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "ISZERO", - "path": "84" - }, - "14202": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3781" - }, - "14205": { - "branch": 523, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "JUMPI", - "path": "84" - }, - "14206": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11176, - 11190 - ], - "op": "DUP1", - "path": "84", - "statement": 314 - }, - "14207": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11159, - 11190 - ], - "op": "SWAP5", - "path": "84" - }, - "14208": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11159, - 11190 - ], - "op": "POP", - "path": "84" - }, - "14209": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14210": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11227 - ], - "op": "DUP7", - "path": "84", - "statement": 315 - }, - "14211": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "DUP1", - "path": "84" - }, - "14212": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "PUSH2", - "path": "84", - "value": "0x3791" - }, - "14215": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "JUMPI", - "path": "84" - }, - "14216": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "POP", - "path": "84" - }, - "14217": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11248, - 11249 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "14219": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11236 - ], - "op": "DUP9", - "path": "84" - }, - "14220": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11245 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "14222": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11245 - ], - "op": "ADD", - "path": "84" - }, - "14223": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11245 - ], - "op": "MLOAD", - "path": "84" - }, - "14224": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11249 - ], - "op": "SLT", - "path": "84" - }, - "14225": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14226": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11210, - 11249 - ], - "op": "SWAP7", - "path": "84" - }, - "14227": { - "op": "POP" - }, - "14228": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "PUSH2", - "path": "84", - "statement": 316, - "value": "0xFFFF" - }, - "14231": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "DUP7", - "path": "84" - }, - "14232": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "AND", - "path": "84" - }, - "14233": { - "branch": 524, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "ISZERO", - "path": "84" - }, - "14234": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "PUSH2", - "path": "84", - "value": "0x37A2" - }, - "14237": { - "branch": 524, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "JUMPI", - "path": "84" - }, - "14238": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "14240": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "DUP1", - "path": "84" - }, - "14241": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "REVERT", - "path": "84" - }, - "14242": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "JUMPDEST", - "path": "84" - }, - "14243": { - "op": "POP" - }, - "14244": { - "op": "POP" - }, - "14245": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11444, - 11460 - ], - "op": "SWAP5", - "path": "84", - "statement": 317 - }, - "14246": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11444, - 11460 - ], - "op": "MLOAD", - "path": "84" - }, - "14247": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11488, - 11495 - ], - "op": "SWAP4", - "path": "84", - "statement": 318 - }, - "14248": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11488, - 11495 - ], - "op": "SWAP6", - "path": "84" - }, - "14249": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11429, - 11431 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "14251": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SWAP4", - "path": "84" - }, - "14252": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SWAP1", - "path": "84" - }, - "14253": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SWAP4", - "path": "84" - }, - "14254": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SHR", - "path": "84" - }, - "14255": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11465, - 11468 - ], - "op": "PUSH1", - "path": "84", - "value": "0xF0" - }, - "14257": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SWAP5", - "path": "84" - }, - "14258": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SWAP1", - "path": "84" - }, - "14259": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SWAP5", - "path": "84" - }, - "14260": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SHL", - "path": "84" - }, - "14261": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP4", - "path": "84" - }, - "14262": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP1", - "path": "84" - }, - "14263": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP4", - "path": "84" - }, - "14264": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "OR", - "path": "84" - }, - "14265": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP4", - "path": "84" - }, - "14266": { - "op": "POP" - }, - "14267": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11524, - 11538 - ], - "op": "SWAP2", - "path": "84" - }, - "14268": { - "op": "POP" - }, - "14269": { - "fn": "PortfolioHandler._updatePortfolioContext", - "jump": "o", - "offset": [ - 10664, - 11546 - ], - "op": "JUMP", - "path": "84" - }, - "14270": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6020, - 6283 - ], - "op": "JUMPDEST", - "path": "62" - }, - "14271": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6087, - 6164 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "14273": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6180, - 6192 - ], - "op": "DUP1", - "path": "62" - }, - "14274": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6195, - 6236 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "14277": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6211, - 6235 - ], - "op": "PUSH1", - "path": "62", - "value": "0xD" - }, - "14279": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8450, - 8779 - ], - "op": "JUMPDEST", - "path": "62" - }, - "14280": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8542, - 8554 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "14282": { - "offset": [ - 494, - 501 - ], - "op": "PUSH3", - "path": "62", - "value": "0xF4240" - }, - "14286": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8742, - 8751 - ], - "op": "DUP3", - "path": "62", - "statement": 319 - }, - "14287": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "PUSH1", - "path": "62", - "value": "0x13" - }, - "14289": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "DUP2", - "path": "62" - }, - "14290": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "GT", - "path": "62" - }, - "14291": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "ISZERO", - "path": "62" - }, - "14292": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37D9" - }, - "14295": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "JUMPI", - "path": "62" - }, - "14296": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "INVALID", - "path": "62" - }, - "14297": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "JUMPDEST", - "path": "62" - }, - "14298": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8772 - ], - "op": "ADD", - "path": "62" - }, - "14299": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8772 - ], - "op": "SWAP3", - "path": "62" - }, - "14300": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8450, - 8779 - ], - "op": "SWAP2", - "path": "62" - }, - "14301": { - "op": "POP" - }, - "14302": { - "op": "POP" - }, - "14303": { - "fn": "LibStorage._getStorageSlot", - "jump": "o", - "offset": [ - 8450, - 8779 - ], - "op": "JUMP", - "path": "62" - }, - "14304": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "JUMPDEST", - "path": "85" - }, - "14305": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1016, - 1023 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "14307": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "14310": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1043, - 1081 - ], - "op": "DUP5", - "path": "85", - "statement": 320 - }, - "14311": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1043, - 1081 - ], - "op": "GT", - "path": "85" - }, - "14312": { - "branch": 562, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1043, - 1081 - ], - "op": "ISZERO", - "path": "85" - }, - "14313": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "PUSH2", - "path": "85", - "value": "0x37F1" - }, - "14316": { - "branch": 562, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "JUMPI", - "path": "85" - }, - "14317": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "14319": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "DUP1", - "path": "85" - }, - "14320": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "REVERT", - "path": "85" - }, - "14321": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "JUMPDEST", - "path": "85" - }, - "14322": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1112, - 1128 - ], - "op": "PUSH5", - "path": "85", - "statement": 321, - "value": "0xFFFFFFFFFF" - }, - "14328": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1100, - 1128 - ], - "op": "DUP4", - "path": "85" - }, - "14329": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1100, - 1128 - ], - "op": "GT", - "path": "85" - }, - "14330": { - "branch": 563, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1100, - 1128 - ], - "op": "ISZERO", - "path": "85" - }, - "14331": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "PUSH2", - "path": "85", - "value": "0x3803" - }, - "14334": { - "branch": 563, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "JUMPI", - "path": "85" - }, - "14335": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "14337": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "DUP1", - "path": "85" - }, - "14338": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "REVERT", - "path": "85" - }, - "14339": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "JUMPDEST", - "path": "85" - }, - "14340": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "14342": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1147, - 1195 - ], - "op": "DUP3", - "path": "85", - "statement": 322 - }, - "14343": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1147, - 1195 - ], - "op": "GT", - "path": "85" - }, - "14344": { - "branch": 564, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1147, - 1195 - ], - "op": "ISZERO", - "path": "85" - }, - "14345": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "PUSH2", - "path": "85", - "value": "0x3811" - }, - "14348": { - "branch": 564, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "JUMPI", - "path": "85" - }, - "14349": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "14351": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "DUP1", - "path": "85" - }, - "14352": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "REVERT", - "path": "85" - }, - "14353": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "JUMPDEST", - "path": "85" - }, - "14354": { - "op": "POP" - }, - "14355": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH8", - "path": "85", - "statement": 323, - "value": "0xFFFF000000000000" - }, - "14364": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1292, - 1294 - ], - "op": "PUSH1", - "path": "85", - "value": "0x30" - }, - "14366": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "DUP5", - "path": "85" - }, - "14367": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "SWAP1", - "path": "85" - }, - "14368": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "SHL", - "path": "85" - }, - "14369": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "AND", - "path": "85" - }, - "14370": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "PUSH6", - "path": "85", - "value": "0xFFFFFFFFFF00" - }, - "14377": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1357, - 1358 - ], - "op": "PUSH1", - "path": "85", - "value": "0x8" - }, - "14379": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "DUP5", - "path": "85" - }, - "14380": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "SWAP1", - "path": "85" - }, - "14381": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "SHL", - "path": "85" - }, - "14382": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "AND", - "path": "85" - }, - "14383": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1251, - 1359 - ], - "op": "OR", - "path": "85" - }, - "14384": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1390, - 1415 - ], - "op": "PUSH1", - "path": "85", - "value": "0xFF" - }, - "14386": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1390, - 1415 - ], - "op": "DUP3", - "path": "85" - }, - "14387": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1390, - 1415 - ], - "op": "AND", - "path": "85" - }, - "14388": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1251, - 1416 - ], - "op": "OR", - "path": "85" - }, - "14389": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "SWAP4", - "path": "85" - }, - "14390": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "SWAP3", - "path": "85" - }, - "14391": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "POP", - "path": "85" - }, - "14392": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "POP", - "path": "85" - }, - "14393": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "POP", - "path": "85" - }, - "14394": { - "fn": "TransferAssets.encodeAssetId", - "jump": "o", - "offset": [ - 883, - 1437 - ], - "op": "JUMP", - "path": "85" - }, - "14395": { - "fn": "LibStorage.getAssetRateStorage", - "offset": [ - 7074, - 7300 - ], - "op": "JUMPDEST", - "path": "62" - }, - "14396": { - "fn": "LibStorage.getAssetRateStorage", - "offset": [ - 7136, - 7186 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "14398": { - "fn": "LibStorage.getAssetRateStorage", - "offset": [ - 7202, - 7214 - ], - "op": "DUP1", - "path": "62" - }, - "14399": { - "fn": "LibStorage.getAssetRateStorage", - "offset": [ - 7217, - 7253 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "14402": { - "fn": "LibStorage.getAssetRateStorage", - "offset": [ - 7233, - 7252 - ], - "op": "PUSH1", - "path": "62", - "value": "0xF" - }, - "14404": { - "fn": "LibStorage.getAssetRateStorage", - "offset": [ - 7217, - 7232 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "14407": { - "fn": "LibStorage.getAssetRateStorage", - "jump": "i", - "offset": [ - 7217, - 7253 - ], - "op": "JUMP", - "path": "62" - }, - "14408": { - "fn": "SafeInt256.abs", - "offset": [ - 1649, - 1767 - ], - "op": "JUMPDEST", - "path": "94" - }, - "14409": { - "fn": "SafeInt256.abs", - "offset": [ - 1695, - 1701 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "14411": { - "fn": "SafeInt256.abs", - "offset": [ - 1721, - 1722 - ], - "op": "DUP1", - "path": "94" - }, - "14412": { - "fn": "SafeInt256.abs", - "offset": [ - 1717, - 1718 - ], - "op": "DUP3", - "path": "94" - }, - "14413": { - "branch": 536, - "fn": "SafeInt256.abs", - "offset": [ - 1717, - 1722 - ], - "op": "SLT", - "path": "94" - }, - "14414": { - "fn": "SafeInt256.abs", - "offset": [ - 1713, - 1760 - ], - "op": "ISZERO", - "path": "94" - }, - "14415": { - "fn": "SafeInt256.abs", - "offset": [ - 1713, - 1760 - ], - "op": "PUSH2", - "path": "94", - "value": "0x3862" - }, - "14418": { - "branch": 536, - "fn": "SafeInt256.abs", - "offset": [ - 1713, - 1760 - ], - "op": "JUMPI", - "path": "94" - }, - "14419": { - "fn": "SafeInt256.abs", - "offset": [ - 1731, - 1737 - ], - "op": "PUSH2", - "path": "94", - "statement": 324, - "value": "0x385B" - }, - "14422": { - "fn": "SafeInt256.abs", - "offset": [ - 1735, - 1736 - ], - "op": "DUP3", - "path": "94" - }, - "14423": { - "fn": "SafeInt256.abs", - "offset": [ - 1731, - 1734 - ], - "op": "PUSH2", - "path": "94", - "value": "0xEE1" - }, - "14426": { - "fn": "SafeInt256.abs", - "jump": "i", - "offset": [ - 1731, - 1737 - ], - "op": "JUMP", - "path": "94" - }, - "14427": { - "fn": "SafeInt256.abs", - "offset": [ - 1731, - 1737 - ], - "op": "JUMPDEST", - "path": "94" - }, - "14428": { - "fn": "SafeInt256.abs", - "offset": [ - 1724, - 1737 - ], - "op": "SWAP1", - "path": "94" - }, - "14429": { - "fn": "SafeInt256.abs", - "offset": [ - 1724, - 1737 - ], - "op": "POP", - "path": "94" - }, - "14430": { - "fn": "SafeInt256.abs", - "offset": [ - 1724, - 1737 - ], - "op": "PUSH2", - "path": "94", - "value": "0xBE2" - }, - "14433": { - "fn": "SafeInt256.abs", - "offset": [ - 1724, - 1737 - ], - "op": "JUMP", - "path": "94" - }, - "14434": { - "fn": "SafeInt256.abs", - "offset": [ - 1713, - 1760 - ], - "op": "JUMPDEST", - "path": "94" - }, - "14435": { - "op": "POP" - }, - "14436": { - "fn": "SafeInt256.abs", - "offset": [ - 1759, - 1760 - ], - "op": "DUP1", - "path": "94", - "statement": 325 - }, - "14437": { - "fn": "SafeInt256.abs", - "offset": [ - 1752, - 1760 - ], - "op": "PUSH2", - "path": "94", - "value": "0xBE2" - }, - "14440": { - "fn": "SafeInt256.abs", - "offset": [ - 1752, - 1760 - ], - "op": "JUMP", - "path": "94" - }, - "14441": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1385, - 1609 - ], - "op": "JUMPDEST", - "path": "72" - }, - "14442": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH1", - "path": "72", - "statement": 326, - "value": "0x40" - }, - "14444": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP1", - "path": "72" - }, - "14445": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "MLOAD", - "path": "72" - }, - "14446": { - "op": "PUSH4", - "value": "0x23B872DD" - }, - "14451": { - "op": "PUSH1", - "value": "0xE0" - }, - "14453": { - "op": "SHL" - }, - "14454": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP2", - "path": "72" - }, - "14455": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "MSTORE", - "path": "72" - }, - "14456": { - "op": "PUSH1", - "value": "0x1" - }, - "14458": { - "op": "PUSH1", - "value": "0x1" - }, - "14460": { - "op": "PUSH1", - "value": "0xA0" - }, - "14462": { - "op": "SHL" - }, - "14463": { - "op": "SUB" - }, - "14464": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP5", - "path": "72" - }, - "14465": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP2", - "path": "72" - }, - "14466": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "AND", - "path": "72" - }, - "14467": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH1", - "path": "72", - "value": "0x4" - }, - "14469": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP4", - "path": "72" - }, - "14470": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ADD", - "path": "72" - }, - "14471": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "MSTORE", - "path": "72" - }, - "14472": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1561, - 1565 - ], - "op": "ADDRESS", - "path": "72" - }, - "14473": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH1", - "path": "72", - "value": "0x24" - }, - "14475": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP4", - "path": "72" - }, - "14476": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ADD", - "path": "72" - }, - "14477": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "MSTORE", - "path": "72" - }, - "14478": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH1", - "path": "72", - "value": "0x44" - }, - "14480": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP3", - "path": "72" - }, - "14481": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ADD", - "path": "72" - }, - "14482": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP5", - "path": "72" - }, - "14483": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP1", - "path": "72" - }, - "14484": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "MSTORE", - "path": "72" - }, - "14485": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP2", - "path": "72" - }, - "14486": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "MLOAD", - "path": "72" - }, - "14487": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "SWAP2", - "path": "72" - }, - "14488": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "DUP6", - "path": "72" - }, - "14489": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "AND", - "path": "72" - }, - "14490": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "SWAP2", - "path": "72" - }, - "14491": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "PUSH4", - "path": "72", - "value": "0x23B872DD" - }, - "14496": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "SWAP2", - "path": "72" - }, - "14497": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH1", - "path": "72", - "value": "0x64" - }, - "14499": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP1", - "path": "72" - }, - "14500": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP3", - "path": "72" - }, - "14501": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ADD", - "path": "72" - }, - "14502": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP3", - "path": "72" - }, - "14503": { - "op": "PUSH1", - "value": "0x0" - }, - "14505": { - "op": "SWAP3" - }, - "14506": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP1", - "path": "72" - }, - "14507": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP2", - "path": "72" - }, - "14508": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP1", - "path": "72" - }, - "14509": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP3", - "path": "72" - }, - "14510": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SWAP1", - "path": "72" - }, - "14511": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "SUB", - "path": "72" - }, - "14512": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ADD", - "path": "72" - }, - "14513": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP2", - "path": "72" - }, - "14514": { - "op": "DUP4" - }, - "14515": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1543 - ], - "op": "DUP8", - "path": "72" - }, - "14516": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP1", - "path": "72" - }, - "14517": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "EXTCODESIZE", - "path": "72" - }, - "14518": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ISZERO", - "path": "72" - }, - "14519": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP1", - "path": "72" - }, - "14520": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "ISZERO", - "path": "72" - }, - "14521": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH2", - "path": "72", - "value": "0x2E0E" - }, - "14524": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "JUMPI", - "path": "72" - }, - "14525": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "14527": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "DUP1", - "path": "72" - }, - "14528": { - "fn": "GenericToken.safeTransferIn", - "offset": [ - 1506, - 1575 - ], - "op": "REVERT", - "path": "72" - }, - "14529": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1615, - 2361 - ], - "op": "JUMPDEST", - "path": "72" - }, - "14530": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1666, - 1678 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "14532": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1688, - 1712 - ], - "op": "PUSH2", - "path": "72", - "value": "0x38CB" - }, - "14535": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1688, - 1712 - ], - "op": "PUSH2", - "path": "72", - "value": "0x4051" - }, - "14538": { - "fn": "GenericToken.checkReturnCode", - "jump": "i", - "offset": [ - 1688, - 1712 - ], - "op": "JUMP", - "path": "72" - }, - "14539": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1688, - 1712 - ], - "op": "JUMPDEST", - "path": "72" - }, - "14540": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1752, - 1768 - ], - "op": "RETURNDATASIZE", - "path": "72" - }, - "14541": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "DUP1", - "path": "72" - }, - "14542": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "ISZERO", - "path": "72" - }, - "14543": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "PUSH2", - "path": "72", - "value": "0x38DF" - }, - "14546": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "JUMPI", - "path": "72" - }, - "14547": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1942, - 1944 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "14549": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1937, - 2156 - ], - "op": "DUP2", - "path": "72" - }, - "14550": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1937, - 2156 - ], - "op": "EQ", - "path": "72" - }, - "14551": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1937, - 2156 - ], - "op": "PUSH2", - "path": "72", - "value": "0x38E8" - }, - "14554": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1937, - 2156 - ], - "op": "JUMPI", - "path": "72" - }, - "14555": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2289, - 2290 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "14557": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2286, - 2287 - ], - "op": "DUP1", - "path": "72" - }, - "14558": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2279, - 2291 - ], - "op": "REVERT", - "path": "72" - }, - "14559": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "JUMPDEST", - "path": "72" - }, - "14560": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1878, - 1879 - ], - "op": "PUSH1", - "path": "72", - "value": "0x1" - }, - "14562": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1867, - 1879 - ], - "op": "SWAP3", - "path": "72" - }, - "14563": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1867, - 1879 - ], - "op": "POP", - "path": "72" - }, - "14564": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "PUSH2", - "path": "72", - "value": "0x38F3" - }, - "14567": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1785, - 1920 - ], - "op": "JUMP", - "path": "72" - }, - "14568": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1937, - 2156 - ], - "op": "JUMPDEST", - "path": "72" - }, - "14569": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2043, - 2045 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "14571": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2040, - 2041 - ], - "op": "PUSH1", - "path": "72", - "value": "0x0" - }, - "14573": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2032, - 2038 - ], - "op": "DUP4", - "path": "72" - }, - "14574": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2017, - 2046 - ], - "op": "RETURNDATACOPY", - "path": "72" - }, - "14575": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2084, - 2090 - ], - "op": "DUP2", - "path": "72" - }, - "14576": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2078, - 2091 - ], - "op": "MLOAD", - "path": "72" - }, - "14577": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2067, - 2091 - ], - "op": "SWAP3", - "path": "72" - }, - "14578": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2067, - 2091 - ], - "op": "POP", - "path": "72" - }, - "14579": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1745, - 2309 - ], - "op": "JUMPDEST", - "path": "72" - }, - "14580": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 1745, - 2309 - ], - "op": "POP", - "path": "72" - }, - "14581": { - "branch": 490, - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2337, - 2344 - ], - "op": "DUP2", - "path": "72", - "statement": 327 - }, - "14582": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH2", - "path": "72", - "value": "0x8EB" - }, - "14585": { - "branch": 490, - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "JUMPI", - "path": "72" - }, - "14586": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x40" - }, - "14588": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "DUP1", - "path": "72" - }, - "14589": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "MLOAD", - "path": "72" - }, - "14590": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "14594": { - "op": "PUSH1", - "value": "0xE5" - }, - "14596": { - "op": "SHL" - }, - "14597": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "DUP2", - "path": "72" - }, - "14598": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "MSTORE", - "path": "72" - }, - "14599": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x20" - }, - "14601": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x4" - }, - "14603": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "DUP3", - "path": "72" - }, - "14604": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "ADD", - "path": "72" - }, - "14605": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "MSTORE", - "path": "72" - }, - "14606": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x5" - }, - "14608": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x24" - }, - "14610": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "DUP3", - "path": "72" - }, - "14611": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "ADD", - "path": "72" - }, - "14612": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "MSTORE", - "path": "72" - }, - "14613": { - "op": "PUSH5", - "value": "0x455243323" - }, - "14619": { - "op": "PUSH1", - "value": "0xDC" - }, - "14621": { - "op": "SHL" - }, - "14622": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x44" - }, - "14624": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "DUP3", - "path": "72" - }, - "14625": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "ADD", - "path": "72" - }, - "14626": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "MSTORE", - "path": "72" - }, - "14627": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "SWAP1", - "path": "72" - }, - "14628": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "MLOAD", - "path": "72" - }, - "14629": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "SWAP1", - "path": "72" - }, - "14630": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "DUP2", - "path": "72" - }, - "14631": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "SWAP1", - "path": "72" - }, - "14632": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "SUB", - "path": "72" - }, - "14633": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "PUSH1", - "path": "72", - "value": "0x64" - }, - "14635": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "ADD", - "path": "72" - }, - "14636": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "SWAP1", - "path": "72" - }, - "14637": { - "fn": "GenericToken.checkReturnCode", - "offset": [ - 2329, - 2354 - ], - "op": "REVERT", - "path": "72" - }, - "14638": { - "fn": "LibStorage.getLendingPool", - "offset": [ - 8109, - 8302 - ], - "op": "JUMPDEST", - "path": "62" - }, - "14639": { - "fn": "LibStorage.getLendingPool", - "offset": [ - 8158, - 8190 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "14641": { - "fn": "LibStorage.getLendingPool", - "offset": [ - 8202, - 8214 - ], - "op": "DUP1", - "path": "62" - }, - "14642": { - "fn": "LibStorage.getLendingPool", - "offset": [ - 8217, - 8255 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "14645": { - "fn": "LibStorage.getLendingPool", - "offset": [ - 8233, - 8254 - ], - "op": "PUSH1", - "path": "62", - "value": "0x13" - }, - "14647": { - "fn": "LibStorage.getLendingPool", - "offset": [ - 8217, - 8232 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "14650": { - "fn": "LibStorage.getLendingPool", - "jump": "i", - "offset": [ - 8217, - 8255 - ], - "op": "JUMP", - "path": "62" - }, - "14651": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 939, - 1913 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14652": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1502, - 1525 - ], - "op": "DUP3", - "path": "71" - }, - "14653": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1502, - 1525 - ], - "op": "MLOAD", - "path": "71" - }, - "14654": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "14656": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "MLOAD", - "path": "71" - }, - "14657": { - "op": "PUSH4", - "value": "0xDB006A75" - }, - "14662": { - "op": "PUSH1", - "value": "0xE0" - }, - "14664": { - "op": "SHL" - }, - "14665": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP2", - "path": "71" - }, - "14666": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "MSTORE", - "path": "71" - }, - "14667": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1078, - 1110 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "14669": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1078, - 1110 - ], - "op": "SWAP2", - "path": "71" - }, - "14670": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1436, - 1457 - ], - "op": "SELFBALANCE", - "path": "71" - }, - "14671": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1436, - 1457 - ], - "op": "SWAP2", - "path": "71" - }, - "14672": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1078, - 1110 - ], - "op": "DUP4", - "path": "71" - }, - "14673": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1078, - 1110 - ], - "op": "SWAP2", - "path": "71" - }, - "14674": { - "op": "PUSH1", - "value": "0x1" - }, - "14676": { - "op": "PUSH1", - "value": "0x1" - }, - "14678": { - "op": "PUSH1", - "value": "0xA0" - }, - "14680": { - "op": "SHL" - }, - "14681": { - "op": "SUB" - }, - "14682": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1533 - ], - "op": "AND", - "path": "71" - }, - "14683": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1533 - ], - "op": "SWAP1", - "path": "71" - }, - "14684": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1533 - ], - "op": "PUSH4", - "path": "71", - "value": "0xDB006A75" - }, - "14689": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1533 - ], - "op": "SWAP1", - "path": "71" - }, - "14690": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH2", - "path": "71", - "value": "0x396F" - }, - "14693": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "SWAP1", - "path": "71" - }, - "14694": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1534, - 1553 - ], - "op": "DUP8", - "path": "71" - }, - "14695": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1534, - 1553 - ], - "op": "SWAP1", - "path": "71" - }, - "14696": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "14698": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ADD", - "path": "71" - }, - "14699": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH2", - "path": "71", - "value": "0x48AB" - }, - "14702": { - "fn": "CompoundHandler.redeemCETH", - "jump": "i", - "offset": [ - 1486, - 1554 - ], - "op": "JUMP", - "path": "71" - }, - "14703": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14704": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x20" - }, - "14706": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "14708": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "MLOAD", - "path": "71" - }, - "14709": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14710": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP4", - "path": "71" - }, - "14711": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "SUB", - "path": "71" - }, - "14712": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP2", - "path": "71" - }, - "14713": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "14715": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP8", - "path": "71" - }, - "14716": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14717": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "EXTCODESIZE", - "path": "71" - }, - "14718": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ISZERO", - "path": "71" - }, - "14719": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14720": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ISZERO", - "path": "71" - }, - "14721": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3989" - }, - "14724": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "JUMPI", - "path": "71" - }, - "14725": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "14727": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14728": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "REVERT", - "path": "71" - }, - "14729": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14730": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "POP", - "path": "71" - }, - "14731": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "GAS", - "path": "71" - }, - "14732": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "CALL", - "path": "71" - }, - "14733": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ISZERO", - "path": "71" - }, - "14734": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14735": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ISZERO", - "path": "71" - }, - "14736": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH2", - "path": "71", - "value": "0x399D" - }, - "14739": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "JUMPI", - "path": "71" - }, - "14740": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "14741": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "14743": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14744": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "RETURNDATACOPY", - "path": "71" - }, - "14745": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "14746": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "14748": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "REVERT", - "path": "71" - }, - "14749": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14750": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "POP", - "path": "71" - }, - "14751": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "POP", - "path": "71" - }, - "14752": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "POP", - "path": "71" - }, - "14753": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "POP", - "path": "71" - }, - "14754": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "14756": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "MLOAD", - "path": "71" - }, - "14757": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "14758": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x1F" - }, - "14760": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "NOT", - "path": "71" - }, - "14761": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x1F" - }, - "14763": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP3", - "path": "71" - }, - "14764": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ADD", - "path": "71" - }, - "14765": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "AND", - "path": "71" - }, - "14766": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP3", - "path": "71" - }, - "14767": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ADD", - "path": "71" - }, - "14768": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP1", - "path": "71" - }, - "14769": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "14771": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "MSTORE", - "path": "71" - }, - "14772": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "POP", - "path": "71" - }, - "14773": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "DUP2", - "path": "71" - }, - "14774": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "ADD", - "path": "71" - }, - "14775": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "SWAP1", - "path": "71" - }, - "14776": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH2", - "path": "71", - "value": "0x39C1" - }, - "14779": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "SWAP2", - "path": "71" - }, - "14780": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "SWAP1", - "path": "71" - }, - "14781": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "PUSH2", - "path": "71", - "value": "0x43D8" - }, - "14784": { - "fn": "CompoundHandler.redeemCETH", - "jump": "i", - "offset": [ - 1486, - 1554 - ], - "op": "JUMP", - "path": "71" - }, - "14785": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1486, - 1554 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14786": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1468, - 1554 - ], - "op": "SWAP1", - "path": "71" - }, - "14787": { - "op": "POP" - }, - "14788": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1572, - 1612 - ], - "op": "DUP1", - "path": "71", - "statement": 328 - }, - "14789": { - "branch": 479, - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1572, - 1612 - ], - "op": "ISZERO", - "path": "71" - }, - "14790": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "PUSH2", - "path": "71", - "value": "0x39E1" - }, - "14793": { - "branch": 479, - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "JUMPI", - "path": "71" - }, - "14794": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "14796": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "MLOAD", - "path": "71" - }, - "14797": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "14801": { - "op": "PUSH1", - "value": "0xE5" - }, - "14803": { - "op": "SHL" - }, - "14804": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "DUP2", - "path": "71" - }, - "14805": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "MSTORE", - "path": "71" - }, - "14806": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "14808": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "ADD", - "path": "71" - }, - "14809": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "PUSH2", - "path": "71", - "value": "0x17A" - }, - "14812": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "SWAP1", - "path": "71" - }, - "14813": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "PUSH2", - "path": "71", - "value": "0x491D" - }, - "14816": { - "fn": "CompoundHandler.redeemCETH", - "jump": "i", - "offset": [ - 1564, - 1623 - ], - "op": "JUMP", - "path": "71" - }, - "14817": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1564, - 1623 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14818": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1658, - 1679 - ], - "op": "SELFBALANCE", - "path": "71" - }, - "14819": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1717, - 1751 - ], - "op": "PUSH2", - "path": "71", - "statement": 329, - "value": "0x39EC" - }, - "14822": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1658, - 1679 - ], - "op": "DUP2", - "path": "71" - }, - "14823": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1735, - 1750 - ], - "op": "DUP5", - "path": "71" - }, - "14824": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1717, - 1734 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3096" - }, - "14827": { - "fn": "CompoundHandler.redeemCETH", - "jump": "i", - "offset": [ - 1717, - 1751 - ], - "op": "JUMP", - "path": "71" - }, - "14828": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1717, - 1751 - ], - "op": "JUMPDEST", - "path": "71" - }, - "14829": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1690, - 1751 - ], - "op": "SWAP4", - "path": "71" - }, - "14830": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1690, - 1751 - ], - "op": "POP", - "path": "71" - }, - "14831": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1836, - 1906 - ], - "op": "PUSH2", - "path": "71", - "statement": 330, - "value": "0x2D72" - }, - "14834": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1872, - 1879 - ], - "op": "DUP7", - "path": "71" - }, - "14835": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1881, - 1905 - ], - "op": "DUP6", - "path": "71" - }, - "14836": { - "fn": "CompoundHandler.redeemCETH", - "offset": [ - 1836, - 1871 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2D7C" - }, - "14839": { - "fn": "CompoundHandler.redeemCETH", - "jump": "i", - "offset": [ - 1836, - 1906 - ], - "op": "JUMP", - "path": "71" - }, - "14840": { - "fn": "AaveHandler.redeem", - "offset": [ - 1769, - 2300 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14841": { - "fn": "AaveHandler.redeem", - "offset": [ - 1909, - 1941 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "14843": { - "fn": "AaveHandler.redeem", - "offset": [ - 1980, - 2124 - ], - "op": "PUSH2", - "path": "70", - "statement": 331, - "value": "0x3A18" - }, - "14846": { - "fn": "AaveHandler.redeem", - "offset": [ - 1980, - 2115 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3A13" - }, - "14849": { - "fn": "AaveHandler.redeem", - "offset": [ - 2026, - 2041 - ], - "op": "DUP6", - "path": "70" - }, - "14850": { - "fn": "AaveHandler.redeem", - "offset": [ - 2026, - 2054 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "14852": { - "fn": "AaveHandler.redeem", - "offset": [ - 2026, - 2054 - ], - "op": "ADD", - "path": "70" - }, - "14853": { - "fn": "AaveHandler.redeem", - "offset": [ - 2026, - 2054 - ], - "op": "MLOAD", - "path": "70" - }, - "14854": { - "fn": "AaveHandler.redeem", - "offset": [ - 2068, - 2105 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3A0E" - }, - "14857": { - "fn": "AaveHandler.redeem", - "offset": [ - 2085, - 2104 - ], - "op": "DUP6", - "path": "70" - }, - "14858": { - "fn": "AaveHandler.redeem", - "offset": [ - 2068, - 2084 - ], - "op": "PUSH2", - "path": "70", - "value": "0x264D" - }, - "14861": { - "fn": "AaveHandler.redeem", - "jump": "i", - "offset": [ - 2068, - 2105 - ], - "op": "JUMP", - "path": "70" - }, - "14862": { - "fn": "AaveHandler.redeem", - "offset": [ - 2068, - 2105 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14863": { - "fn": "AaveHandler.redeem", - "offset": [ - 1980, - 2012 - ], - "op": "PUSH2", - "path": "70", - "value": "0x2BF7" - }, - "14866": { - "fn": "AaveHandler.redeem", - "jump": "i", - "offset": [ - 1980, - 2115 - ], - "op": "JUMP", - "path": "70" - }, - "14867": { - "fn": "AaveHandler.redeem", - "offset": [ - 1980, - 2115 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14868": { - "fn": "AaveHandler.redeem", - "offset": [ - 1980, - 2122 - ], - "op": "PUSH2", - "path": "70", - "value": "0x1CF6" - }, - "14871": { - "fn": "AaveHandler.redeem", - "jump": "i", - "offset": [ - 1980, - 2124 - ], - "op": "JUMP", - "path": "70" - }, - "14872": { - "fn": "AaveHandler.redeem", - "offset": [ - 1980, - 2124 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14873": { - "fn": "AaveHandler.redeem", - "offset": [ - 1953, - 2124 - ], - "op": "SWAP1", - "path": "70" - }, - "14874": { - "fn": "AaveHandler.redeem", - "offset": [ - 1953, - 2124 - ], - "op": "POP", - "path": "70" - }, - "14875": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2161 - ], - "op": "PUSH2", - "path": "70", - "statement": 332, - "value": "0x3A22" - }, - "14878": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2159 - ], - "op": "PUSH2", - "path": "70", - "value": "0x392E" - }, - "14881": { - "fn": "AaveHandler.redeem", - "jump": "i", - "offset": [ - 2134, - 2161 - ], - "op": "JUMP", - "path": "70" - }, - "14882": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2161 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14883": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2173 - ], - "op": "SLOAD", - "path": "70" - }, - "14884": { - "fn": "AaveHandler.redeem", - "offset": [ - 2196, - 2224 - ], - "op": "DUP5", - "path": "70" - }, - "14885": { - "fn": "AaveHandler.redeem", - "offset": [ - 2196, - 2224 - ], - "op": "MLOAD", - "path": "70" - }, - "14886": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "14888": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "MLOAD", - "path": "70" - }, - "14889": { - "op": "PUSH4", - "value": "0x1A4CA37B" - }, - "14894": { - "op": "PUSH1", - "value": "0xE2" - }, - "14896": { - "op": "SHL" - }, - "14897": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP2", - "path": "70" - }, - "14898": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "MSTORE", - "path": "70" - }, - "14899": { - "op": "PUSH1", - "value": "0x1" - }, - "14901": { - "op": "PUSH1", - "value": "0x1" - }, - "14903": { - "op": "PUSH1", - "value": "0xA0" - }, - "14905": { - "op": "SHL" - }, - "14906": { - "op": "SUB" - }, - "14907": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2173 - ], - "op": "SWAP1", - "path": "70" - }, - "14908": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2173 - ], - "op": "SWAP3", - "path": "70" - }, - "14909": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2173 - ], - "op": "AND", - "path": "70" - }, - "14910": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2173 - ], - "op": "SWAP2", - "path": "70" - }, - "14911": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2182 - ], - "op": "PUSH4", - "path": "70", - "value": "0x69328DEC" - }, - "14916": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2182 - ], - "op": "SWAP2", - "path": "70" - }, - "14917": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3A54" - }, - "14920": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "SWAP2", - "path": "70" - }, - "14921": { - "fn": "AaveHandler.redeem", - "offset": [ - 2238, - 2262 - ], - "op": "DUP6", - "path": "70" - }, - "14922": { - "fn": "AaveHandler.redeem", - "offset": [ - 2238, - 2262 - ], - "op": "SWAP1", - "path": "70" - }, - "14923": { - "fn": "AaveHandler.redeem", - "offset": [ - 2276, - 2283 - ], - "op": "DUP9", - "path": "70" - }, - "14924": { - "fn": "AaveHandler.redeem", - "offset": [ - 2276, - 2283 - ], - "op": "SWAP1", - "path": "70" - }, - "14925": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x4" - }, - "14927": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ADD", - "path": "70" - }, - "14928": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH2", - "path": "70", - "value": "0x4807" - }, - "14931": { - "fn": "AaveHandler.redeem", - "jump": "i", - "offset": [ - 2134, - 2293 - ], - "op": "JUMP", - "path": "70" - }, - "14932": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14933": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x20" - }, - "14935": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "14937": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "MLOAD", - "path": "70" - }, - "14938": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14939": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP4", - "path": "70" - }, - "14940": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "SUB", - "path": "70" - }, - "14941": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP2", - "path": "70" - }, - "14942": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "14944": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP8", - "path": "70" - }, - "14945": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14946": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "EXTCODESIZE", - "path": "70" - }, - "14947": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ISZERO", - "path": "70" - }, - "14948": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14949": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ISZERO", - "path": "70" - }, - "14950": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3A6E" - }, - "14953": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "JUMPI", - "path": "70" - }, - "14954": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "14956": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14957": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "REVERT", - "path": "70" - }, - "14958": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14959": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "14960": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "GAS", - "path": "70" - }, - "14961": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "CALL", - "path": "70" - }, - "14962": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ISZERO", - "path": "70" - }, - "14963": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14964": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ISZERO", - "path": "70" - }, - "14965": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3A82" - }, - "14968": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "JUMPI", - "path": "70" - }, - "14969": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "14970": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "14972": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14973": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "RETURNDATACOPY", - "path": "70" - }, - "14974": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "14975": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x0" - }, - "14977": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "REVERT", - "path": "70" - }, - "14978": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "JUMPDEST", - "path": "70" - }, - "14979": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "14980": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "14981": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "14982": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "14983": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "14985": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "MLOAD", - "path": "70" - }, - "14986": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "RETURNDATASIZE", - "path": "70" - }, - "14987": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x1F" - }, - "14989": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "NOT", - "path": "70" - }, - "14990": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x1F" - }, - "14992": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP3", - "path": "70" - }, - "14993": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ADD", - "path": "70" - }, - "14994": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "AND", - "path": "70" - }, - "14995": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP3", - "path": "70" - }, - "14996": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ADD", - "path": "70" - }, - "14997": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP1", - "path": "70" - }, - "14998": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH1", - "path": "70", - "value": "0x40" - }, - "15000": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "MSTORE", - "path": "70" - }, - "15001": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "15002": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "DUP2", - "path": "70" - }, - "15003": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "ADD", - "path": "70" - }, - "15004": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "SWAP1", - "path": "70" - }, - "15005": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH2", - "path": "70", - "value": "0x3AA6" - }, - "15008": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "SWAP2", - "path": "70" - }, - "15009": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "SWAP1", - "path": "70" - }, - "15010": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "PUSH2", - "path": "70", - "value": "0x43D8" - }, - "15013": { - "fn": "AaveHandler.redeem", - "jump": "i", - "offset": [ - 2134, - 2293 - ], - "op": "JUMP", - "path": "70" - }, - "15014": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "JUMPDEST", - "path": "70" - }, - "15015": { - "fn": "AaveHandler.redeem", - "offset": [ - 2134, - 2293 - ], - "op": "POP", - "path": "70" - }, - "15016": { - "fn": "AaveHandler.redeem", - "offset": [ - 1769, - 2300 - ], - "op": "SWAP4", - "path": "70" - }, - "15017": { - "fn": "AaveHandler.redeem", - "offset": [ - 1769, - 2300 - ], - "op": "SWAP3", - "path": "70" - }, - "15018": { - "fn": "AaveHandler.redeem", - "offset": [ - 1769, - 2300 - ], - "op": "POP", - "path": "70" - }, - "15019": { - "fn": "AaveHandler.redeem", - "offset": [ - 1769, - 2300 - ], - "op": "POP", - "path": "70" - }, - "15020": { - "fn": "AaveHandler.redeem", - "offset": [ - 1769, - 2300 - ], - "op": "POP", - "path": "70" - }, - "15021": { - "fn": "AaveHandler.redeem", - "jump": "o", - "offset": [ - 1769, - 2300 - ], - "op": "JUMP", - "path": "70" - }, - "15022": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15023": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2487, - 2515 - ], - "op": "DUP3", - "path": "71" - }, - "15024": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2487, - 2515 - ], - "op": "MLOAD", - "path": "71" - }, - "15025": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2092, - 2124 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15027": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2092, - 2124 - ], - "op": "SWAP1", - "path": "71" - }, - "15028": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2092, - 2124 - ], - "op": "DUP2", - "path": "71" - }, - "15029": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2092, - 2124 - ], - "op": "SWAP1", - "path": "71" - }, - "15030": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2450, - 2570 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3AC7" - }, - "15033": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2450, - 2570 - ], - "op": "SWAP1", - "path": "71" - }, - "15034": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2525, - 2529 - ], - "op": "ADDRESS", - "path": "71" - }, - "15035": { - "op": "PUSH4", - "value": "0x70A08231" - }, - "15040": { - "op": "PUSH1", - "value": "0xE0" - }, - "15042": { - "op": "SHL" - }, - "15043": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2450, - 2486 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2E2E" - }, - "15046": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 2450, - 2570 - ], - "op": "JUMP", - "path": "71" - }, - "15047": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2450, - 2570 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15048": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2424, - 2570 - ], - "op": "SWAP1", - "path": "71" - }, - "15049": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2424, - 2570 - ], - "op": "POP", - "path": "71" - }, - "15050": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2581, - 2596 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15052": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2615, - 2625 - ], - "op": "DUP7", - "path": "71" - }, - "15053": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2615, - 2638 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15055": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2615, - 2638 - ], - "op": "ADD", - "path": "71" - }, - "15056": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2615, - 2638 - ], - "op": "MLOAD", - "path": "71" - }, - "15057": { - "op": "PUSH1", - "value": "0x1" - }, - "15059": { - "op": "PUSH1", - "value": "0x1" - }, - "15061": { - "op": "PUSH1", - "value": "0xA0" - }, - "15063": { - "op": "SHL" - }, - "15064": { - "op": "SUB" - }, - "15065": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2646 - ], - "op": "AND", - "path": "71" - }, - "15066": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2646 - ], - "op": "PUSH4", - "path": "71", - "value": "0xDB006A75" - }, - "15071": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2647, - 2666 - ], - "op": "DUP6", - "path": "71" - }, - "15072": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "15074": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "MLOAD", - "path": "71" - }, - "15075": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP3", - "path": "71" - }, - "15076": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH4", - "path": "71", - "value": "0xFFFFFFFF" - }, - "15081": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "AND", - "path": "71" - }, - "15082": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0xE0" - }, - "15084": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SHL", - "path": "71" - }, - "15085": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP2", - "path": "71" - }, - "15086": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "MSTORE", - "path": "71" - }, - "15087": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "15089": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ADD", - "path": "71" - }, - "15090": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3AFB" - }, - "15093": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SWAP2", - "path": "71" - }, - "15094": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SWAP1", - "path": "71" - }, - "15095": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH2", - "path": "71", - "value": "0x48AB" - }, - "15098": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 2599, - 2667 - ], - "op": "JUMP", - "path": "71" - }, - "15099": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15100": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x20" - }, - "15102": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "15104": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "MLOAD", - "path": "71" - }, - "15105": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15106": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP4", - "path": "71" - }, - "15107": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SUB", - "path": "71" - }, - "15108": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP2", - "path": "71" - }, - "15109": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15111": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP8", - "path": "71" - }, - "15112": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15113": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "EXTCODESIZE", - "path": "71" - }, - "15114": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ISZERO", - "path": "71" - }, - "15115": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15116": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ISZERO", - "path": "71" - }, - "15117": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3B15" - }, - "15120": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "JUMPI", - "path": "71" - }, - "15121": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15123": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15124": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "REVERT", - "path": "71" - }, - "15125": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15126": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "POP", - "path": "71" - }, - "15127": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "GAS", - "path": "71" - }, - "15128": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "CALL", - "path": "71" - }, - "15129": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ISZERO", - "path": "71" - }, - "15130": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15131": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ISZERO", - "path": "71" - }, - "15132": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3B29" - }, - "15135": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "JUMPI", - "path": "71" - }, - "15136": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "15137": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15139": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15140": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "RETURNDATACOPY", - "path": "71" - }, - "15141": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "15142": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15144": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "REVERT", - "path": "71" - }, - "15145": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15146": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "POP", - "path": "71" - }, - "15147": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "POP", - "path": "71" - }, - "15148": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "POP", - "path": "71" - }, - "15149": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "POP", - "path": "71" - }, - "15150": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "15152": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "MLOAD", - "path": "71" - }, - "15153": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "RETURNDATASIZE", - "path": "71" - }, - "15154": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x1F" - }, - "15156": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "NOT", - "path": "71" - }, - "15157": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x1F" - }, - "15159": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP3", - "path": "71" - }, - "15160": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ADD", - "path": "71" - }, - "15161": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "AND", - "path": "71" - }, - "15162": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP3", - "path": "71" - }, - "15163": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ADD", - "path": "71" - }, - "15164": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP1", - "path": "71" - }, - "15165": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "15167": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "MSTORE", - "path": "71" - }, - "15168": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "POP", - "path": "71" - }, - "15169": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "DUP2", - "path": "71" - }, - "15170": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "ADD", - "path": "71" - }, - "15171": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SWAP1", - "path": "71" - }, - "15172": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3B4D" - }, - "15175": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SWAP2", - "path": "71" - }, - "15176": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "SWAP1", - "path": "71" - }, - "15177": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "PUSH2", - "path": "71", - "value": "0x43D8" - }, - "15180": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 2599, - 2667 - ], - "op": "JUMP", - "path": "71" - }, - "15181": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2599, - 2667 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15182": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2581, - 2667 - ], - "op": "SWAP1", - "path": "71" - }, - "15183": { - "op": "POP" - }, - "15184": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2685, - 2725 - ], - "op": "DUP1", - "path": "71", - "statement": 333 - }, - "15185": { - "branch": 480, - "fn": "CompoundHandler.redeem", - "offset": [ - 2685, - 2725 - ], - "op": "ISZERO", - "path": "71" - }, - "15186": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3B6D" - }, - "15189": { - "branch": 480, - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "JUMPI", - "path": "71" - }, - "15190": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "PUSH1", - "path": "71", - "value": "0x40" - }, - "15192": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "MLOAD", - "path": "71" - }, - "15193": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "15197": { - "op": "PUSH1", - "value": "0xE5" - }, - "15199": { - "op": "SHL" - }, - "15200": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "DUP2", - "path": "71" - }, - "15201": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "MSTORE", - "path": "71" - }, - "15202": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "PUSH1", - "path": "71", - "value": "0x4" - }, - "15204": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "ADD", - "path": "71" - }, - "15205": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "PUSH2", - "path": "71", - "value": "0x17A" - }, - "15208": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "SWAP1", - "path": "71" - }, - "15209": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "PUSH2", - "path": "71", - "value": "0x491D" - }, - "15212": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 2677, - 2736 - ], - "op": "JUMP", - "path": "71" - }, - "15213": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2677, - 2736 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15214": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2808, - 2836 - ], - "op": "DUP6", - "path": "71" - }, - "15215": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2808, - 2836 - ], - "op": "MLOAD", - "path": "71" - }, - "15216": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2747, - 2768 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15218": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2747, - 2768 - ], - "op": "SWAP1", - "path": "71" - }, - "15219": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2771, - 2891 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3B84" - }, - "15222": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2771, - 2891 - ], - "op": "SWAP1", - "path": "71" - }, - "15223": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2846, - 2850 - ], - "op": "ADDRESS", - "path": "71" - }, - "15224": { - "op": "PUSH4", - "value": "0x70A08231" - }, - "15229": { - "op": "PUSH1", - "value": "0xE0" - }, - "15231": { - "op": "SHL" - }, - "15232": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2771, - 2807 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2E2E" - }, - "15235": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 2771, - 2891 - ], - "op": "JUMP", - "path": "71" - }, - "15236": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2771, - 2891 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15237": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2747, - 2891 - ], - "op": "SWAP1", - "path": "71" - }, - "15238": { - "op": "POP" - }, - "15239": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2929, - 2963 - ], - "op": "PUSH2", - "path": "71", - "statement": 334, - "value": "0x3B90" - }, - "15242": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2747, - 2891 - ], - "op": "DUP2", - "path": "71" - }, - "15243": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2947, - 2962 - ], - "op": "DUP5", - "path": "71" - }, - "15244": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2929, - 2946 - ], - "op": "PUSH2", - "path": "71", - "value": "0x3096" - }, - "15247": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 2929, - 2963 - ], - "op": "JUMP", - "path": "71" - }, - "15248": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2929, - 2963 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15249": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2902, - 2963 - ], - "op": "SWAP4", - "path": "71" - }, - "15250": { - "fn": "CompoundHandler.redeem", - "offset": [ - 2902, - 2963 - ], - "op": "POP", - "path": "71" - }, - "15251": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3048, - 3141 - ], - "op": "PUSH2", - "path": "71", - "statement": 335, - "value": "0x3BA1" - }, - "15254": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3077, - 3092 - ], - "op": "DUP8", - "path": "71" - }, - "15255": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3077, - 3105 - ], - "op": "PUSH1", - "path": "71", - "value": "0x0" - }, - "15257": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3077, - 3105 - ], - "op": "ADD", - "path": "71" - }, - "15258": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3077, - 3105 - ], - "op": "MLOAD", - "path": "71" - }, - "15259": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3107, - 3114 - ], - "op": "DUP8", - "path": "71" - }, - "15260": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3116, - 3140 - ], - "op": "DUP7", - "path": "71" - }, - "15261": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3048, - 3076 - ], - "op": "PUSH2", - "path": "71", - "value": "0x2DB7" - }, - "15264": { - "fn": "CompoundHandler.redeem", - "jump": "i", - "offset": [ - 3048, - 3141 - ], - "op": "JUMP", - "path": "71" - }, - "15265": { - "fn": "CompoundHandler.redeem", - "offset": [ - 3048, - 3141 - ], - "op": "JUMPDEST", - "path": "71" - }, - "15266": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15267": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15268": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15269": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "SWAP5", - "path": "71" - }, - "15270": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "SWAP4", - "path": "71" - }, - "15271": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15272": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15273": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15274": { - "fn": "CompoundHandler.redeem", - "offset": [ - 1919, - 3148 - ], - "op": "POP", - "path": "71" - }, - "15275": { - "fn": "CompoundHandler.redeem", - "jump": "o", - "offset": [ - 1919, - 3148 - ], - "op": "JUMP", - "path": "71" - }, - "15276": { - "fn": "LibStorage.getNTokenAddressStorage", - "offset": [ - 2468, - 2693 - ], - "op": "JUMPDEST", - "path": "62" - }, - "15277": { - "fn": "LibStorage.getNTokenAddressStorage", - "offset": [ - 2534, - 2575 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "15279": { - "fn": "LibStorage.getNTokenAddressStorage", - "offset": [ - 2591, - 2603 - ], - "op": "DUP1", - "path": "62" - }, - "15280": { - "fn": "LibStorage.getNTokenAddressStorage", - "offset": [ - 2606, - 2646 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "15283": { - "fn": "LibStorage.getNTokenAddressStorage", - "offset": [ - 2622, - 2645 - ], - "op": "PUSH1", - "path": "62", - "value": "0x3" - }, - "15285": { - "fn": "LibStorage.getNTokenAddressStorage", - "offset": [ - 2606, - 2621 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "15288": { - "fn": "LibStorage.getNTokenAddressStorage", - "jump": "i", - "offset": [ - 2606, - 2646 - ], - "op": "JUMP", - "path": "62" - }, - "15289": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1452, - 3183 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15290": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1589, - 1608 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15292": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1622, - 1654 - ], - "op": "DUP1", - "path": "82" - }, - "15293": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1668, - 1695 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15295": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1829, - 1871 - ], - "op": "PUSH2", - "path": "82", - "statement": 336, - "value": "0x3BC7" - }, - "15298": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1858, - 1870 - ], - "op": "DUP6", - "path": "82" - }, - "15299": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1829, - 1857 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3DF0" - }, - "15302": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "jump": "i", - "offset": [ - 1829, - 1871 - ], - "op": "JUMP", - "path": "82" - }, - "15303": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1829, - 1871 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15304": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1720, - 1871 - ], - "op": "SWAP2", - "path": "82" - }, - "15305": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1720, - 1871 - ], - "op": "SWAP5", - "path": "82" - }, - "15306": { - "op": "POP" - }, - "15307": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1720, - 1871 - ], - "op": "SWAP3", - "path": "82" - }, - "15308": { - "op": "POP" - }, - "15309": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1720, - 1871 - ], - "op": "SWAP1", - "path": "82" - }, - "15310": { - "op": "POP" - }, - "15311": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2186 - ], - "op": "DUP1", - "path": "82" - }, - "15312": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2186 - ], - "op": "DUP5", - "path": "82" - }, - "15313": { - "branch": 569, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2186 - ], - "op": "GT", - "path": "82" - }, - "15314": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2213 - ], - "op": "DUP1", - "path": "82" - }, - "15315": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2213 - ], - "op": "ISZERO", - "path": "82" - }, - "15316": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2213 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3BDD" - }, - "15319": { - "branch": 569, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2213 - ], - "op": "JUMPI", - "path": "82" - }, - "15320": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2213 - ], - "op": "POP", - "path": "82" - }, - "15321": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2212, - 2213 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15323": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2190, - 2209 - ], - "op": "DUP2", - "path": "82" - }, - "15324": { - "branch": 570, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2190, - 2213 - ], - "op": "GT", - "path": "82" - }, - "15325": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2213 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15326": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2232 - ], - "op": "DUP1", - "path": "82" - }, - "15327": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2232 - ], - "op": "ISZERO", - "path": "82" - }, - "15328": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2232 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3BE9" - }, - "15331": { - "branch": 570, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2232 - ], - "op": "JUMPI", - "path": "82" - }, - "15332": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2232 - ], - "op": "POP", - "path": "82" - }, - "15333": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2231, - 2232 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15335": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2217, - 2228 - ], - "op": "DUP4", - "path": "82" - }, - "15336": { - "branch": 571, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2217, - 2232 - ], - "op": "GT", - "path": "82" - }, - "15337": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2155, - 2232 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15338": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2151, - 3177 - ], - "op": "ISZERO", - "path": "82" - }, - "15339": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2151, - 3177 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C48" - }, - "15342": { - "branch": 571, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2151, - 3177 - ], - "op": "JUMPI", - "path": "82" - }, - "15343": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2331, - 2358 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15345": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2488, - 2532 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3BF9" - }, - "15348": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2519, - 2531 - ], - "op": "DUP7", - "path": "82" - }, - "15349": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2488, - 2518 - ], - "op": "PUSH2", - "path": "82", - "value": "0x1755" - }, - "15352": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "jump": "i", - "offset": [ - 2488, - 2532 - ], - "op": "JUMP", - "path": "82" - }, - "15353": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2488, - 2532 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15354": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2279, - 2532 - ], - "op": "POP", - "path": "82" - }, - "15355": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2279, - 2532 - ], - "op": "POP", - "path": "82" - }, - "15356": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2279, - 2532 - ], - "op": "POP", - "path": "82" - }, - "15357": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2279, - 2532 - ], - "op": "SWAP2", - "path": "82" - }, - "15358": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2279, - 2532 - ], - "op": "POP", - "path": "82" - }, - "15359": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2279, - 2532 - ], - "op": "POP", - "path": "82" - }, - "15360": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2547, - 2589 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15362": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2592, - 2959 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C24" - }, - "15365": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2794 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C1B" - }, - "15368": { - "offset": [ - 429, - 432 - ], - "op": "PUSH4", - "path": "60", - "value": "0x5F5E100" - }, - "15373": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2745 - ], - "op": "DUP5", - "path": "82" - }, - "15374": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2749 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C5C" - }, - "15377": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2749 - ], - "op": "SWAP1", - "path": "82" - }, - "15378": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2794 - ], - "op": "SWAP2", - "path": "82" - }, - "15379": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2794 - ], - "op": "SWAP1", - "path": "82" - }, - "15380": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2794 - ], - "op": "PUSH4", - "path": "82", - "value": "0xFFFFFFFF" - }, - "15385": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2794 - ], - "op": "AND", - "path": "82" - }, - "15386": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "jump": "i", - "offset": [ - 2726, - 2794 - ], - "op": "JUMP", - "path": "82" - }, - "15387": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2726, - 2794 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15388": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2897, - 2916 - ], - "op": "DUP5", - "path": "82" - }, - "15389": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2885, - 2894 - ], - "op": "DUP9", - "path": "82" - }, - "15390": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2885, - 2916 - ], - "op": "SUB", - "path": "82" - }, - "15391": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2934, - 2945 - ], - "op": "DUP8", - "path": "82" - }, - "15392": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2592, - 2616 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3E4C" - }, - "15395": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "jump": "i", - "offset": [ - 2592, - 2959 - ], - "op": "JUMP", - "path": "82" - }, - "15396": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2592, - 2959 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15397": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2547, - 2959 - ], - "op": "SWAP1", - "path": "82" - }, - "15398": { - "op": "POP" - }, - "15399": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3001, - 3065 - ], - "op": "PUSH2", - "path": "82", - "statement": 337, - "value": "0x3C30" - }, - "15402": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3001, - 3025 - ], - "op": "DUP5", - "path": "82" - }, - "15403": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2547, - 2959 - ], - "op": "DUP3", - "path": "82" - }, - "15404": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3001, - 3029 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3D1C" - }, - "15407": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "jump": "i", - "offset": [ - 3001, - 3065 - ], - "op": "JUMP", - "path": "82" - }, - "15408": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3001, - 3065 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15409": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2974, - 3065 - ], - "op": "SWAP4", - "path": "82" - }, - "15410": { - "op": "POP" - }, - "15411": { - "op": "PUSH1", - "value": "0x1" - }, - "15413": { - "op": "PUSH1", - "value": "0x1" - }, - "15415": { - "op": "PUSH1", - "value": "0x80" - }, - "15417": { - "op": "SHL" - }, - "15418": { - "op": "SUB" - }, - "15419": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3087, - 3131 - ], - "op": "DUP5", - "path": "82", - "statement": 338 - }, - "15420": { - "branch": 572, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3087, - 3131 - ], - "op": "LT", - "path": "82" - }, - "15421": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3079, - 3132 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C45" - }, - "15424": { - "branch": 572, - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3079, - 3132 - ], - "op": "JUMPI", - "path": "82" - }, - "15425": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3079, - 3132 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15427": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3079, - 3132 - ], - "op": "DUP1", - "path": "82" - }, - "15428": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3079, - 3132 - ], - "op": "REVERT", - "path": "82" - }, - "15429": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 3079, - 3132 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15430": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2151, - 3177 - ], - "op": "POP", - "path": "82" - }, - "15431": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2151, - 3177 - ], - "op": "POP", - "path": "82" - }, - "15432": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 2151, - 3177 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15433": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1452, - 3183 - ], - "op": "SWAP3", - "path": "82" - }, - "15434": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1452, - 3183 - ], - "op": "POP", - "path": "82" - }, - "15435": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1452, - 3183 - ], - "op": "SWAP3", - "path": "82" - }, - "15436": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1452, - 3183 - ], - "op": "POP", - "path": "82" - }, - "15437": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "offset": [ - 1452, - 3183 - ], - "op": "SWAP3", - "path": "82" - }, - "15438": { - "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", - "jump": "o", - "offset": [ - 1452, - 3183 - ], - "op": "JUMP", - "path": "82" - }, - "15439": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "offset": [ - 6645, - 6895 - ], - "op": "JUMPDEST", - "path": "62" - }, - "15440": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "offset": [ - 6715, - 6773 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "15442": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "offset": [ - 6789, - 6801 - ], - "op": "DUP1", - "path": "62" - }, - "15443": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "offset": [ - 6804, - 6848 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "15446": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "offset": [ - 6820, - 6847 - ], - "op": "PUSH1", - "path": "62", - "value": "0x11" - }, - "15448": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "offset": [ - 6804, - 6819 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "15451": { - "fn": "LibStorage.getNTokenTotalSupplyStorage", - "jump": "i", - "offset": [ - 6804, - 6848 - ], - "op": "JUMP", - "path": "62" - }, - "15452": { - "fn": "SafeMath.mul", - "offset": [ - 3530, - 3745 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15453": { - "fn": "SafeMath.mul", - "offset": [ - 3588, - 3595 - ], - "op": "PUSH1", - "path": "6", - "value": "0x0" - }, - "15455": { - "branch": 538, - "fn": "SafeMath.mul", - "offset": [ - 3611, - 3617 - ], - "op": "DUP3", - "path": "6" - }, - "15456": { - "fn": "SafeMath.mul", - "offset": [ - 3607, - 3627 - ], - "op": "PUSH2", - "path": "6", - "value": "0x3C6B" - }, - "15459": { - "branch": 538, - "fn": "SafeMath.mul", - "offset": [ - 3607, - 3627 - ], - "op": "JUMPI", - "path": "6" - }, - "15460": { - "op": "POP" - }, - "15461": { - "fn": "SafeMath.mul", - "offset": [ - 3626, - 3627 - ], - "op": "PUSH1", - "path": "6", - "statement": 339, - "value": "0x0" - }, - "15463": { - "fn": "SafeMath.mul", - "offset": [ - 3619, - 3627 - ], - "op": "PUSH2", - "path": "6", - "value": "0xEDB" - }, - "15466": { - "fn": "SafeMath.mul", - "offset": [ - 3619, - 3627 - ], - "op": "JUMP", - "path": "6" - }, - "15467": { - "fn": "SafeMath.mul", - "offset": [ - 3607, - 3627 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15468": { - "fn": "SafeMath.mul", - "offset": [ - 3649, - 3654 - ], - "op": "DUP3", - "path": "6" - }, - "15469": { - "fn": "SafeMath.mul", - "offset": [ - 3649, - 3654 - ], - "op": "DUP3", - "path": "6" - }, - "15470": { - "fn": "SafeMath.mul", - "offset": [ - 3649, - 3654 - ], - "op": "MUL", - "path": "6" - }, - "15471": { - "fn": "SafeMath.mul", - "offset": [ - 3653, - 3654 - ], - "op": "DUP3", - "path": "6" - }, - "15472": { - "fn": "SafeMath.mul", - "offset": [ - 3649, - 3650 - ], - "op": "DUP5", - "path": "6" - }, - "15473": { - "fn": "SafeMath.mul", - "offset": [ - 3649, - 3654 - ], - "op": "DUP3", - "path": "6" - }, - "15474": { - "fn": "SafeMath.mul", - "offset": [ - 3649, - 3650 - ], - "op": "DUP2", - "path": "6" - }, - "15475": { - "fn": "SafeMath.mul", - "offset": [ - 3672, - 3677 - ], - "op": "PUSH2", - "path": "6", - "statement": 340, - "value": "0x3C78" - }, - "15478": { - "fn": "SafeMath.mul", - "offset": [ - 3672, - 3677 - ], - "op": "JUMPI", - "path": "6" - }, - "15479": { - "dev": "Division by zero", - "fn": "SafeMath.mul", - "offset": [ - 3672, - 3677 - ], - "op": "INVALID", - "path": "6" - }, - "15480": { - "fn": "SafeMath.mul", - "offset": [ - 3672, - 3677 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15481": { - "fn": "SafeMath.mul", - "offset": [ - 3672, - 3677 - ], - "op": "DIV", - "path": "6" - }, - "15482": { - "branch": 539, - "fn": "SafeMath.mul", - "offset": [ - 3672, - 3682 - ], - "op": "EQ", - "path": "6" - }, - "15483": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH2", - "path": "6", - "value": "0xAA3" - }, - "15486": { - "branch": 539, - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "JUMPI", - "path": "6" - }, - "15487": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "15489": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "MLOAD", - "path": "6" - }, - "15490": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "15494": { - "op": "PUSH1", - "value": "0xE5" - }, - "15496": { - "op": "SHL" - }, - "15497": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP2", - "path": "6" - }, - "15498": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "MSTORE", - "path": "6" - }, - "15499": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x4" - }, - "15501": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "ADD", - "path": "6" - }, - "15502": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP1", - "path": "6" - }, - "15503": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP1", - "path": "6" - }, - "15504": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "15506": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "ADD", - "path": "6" - }, - "15507": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP3", - "path": "6" - }, - "15508": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP2", - "path": "6" - }, - "15509": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "SUB", - "path": "6" - }, - "15510": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP3", - "path": "6" - }, - "15511": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "MSTORE", - "path": "6" - }, - "15512": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x21" - }, - "15514": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP2", - "path": "6" - }, - "15515": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "MSTORE", - "path": "6" - }, - "15516": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "15518": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "ADD", - "path": "6" - }, - "15519": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP1", - "path": "6" - }, - "15520": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH2", - "path": "6", - "value": "0x4B96" - }, - "15523": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x21" - }, - "15525": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "SWAP2", - "path": "6" - }, - "15526": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "CODECOPY", - "path": "6" - }, - "15527": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "15529": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "ADD", - "path": "6" - }, - "15530": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "SWAP2", - "path": "6" - }, - "15531": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "POP", - "path": "6" - }, - "15532": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "POP", - "path": "6" - }, - "15533": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "15535": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "MLOAD", - "path": "6" - }, - "15536": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "DUP1", - "path": "6" - }, - "15537": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "SWAP2", - "path": "6" - }, - "15538": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "SUB", - "path": "6" - }, - "15539": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "SWAP1", - "path": "6" - }, - "15540": { - "fn": "SafeMath.mul", - "offset": [ - 3664, - 3720 - ], - "op": "REVERT", - "path": "6" - }, - "15541": { - "fn": "SafeMath.div", - "offset": [ - 4209, - 4359 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15542": { - "fn": "SafeMath.div", - "offset": [ - 4267, - 4274 - ], - "op": "PUSH1", - "path": "6", - "value": "0x0" - }, - "15544": { - "fn": "SafeMath.div", - "offset": [ - 4298, - 4299 - ], - "op": "DUP1", - "path": "6", - "statement": 341 - }, - "15545": { - "fn": "SafeMath.div", - "offset": [ - 4294, - 4295 - ], - "op": "DUP3", - "path": "6" - }, - "15546": { - "branch": 540, - "fn": "SafeMath.div", - "offset": [ - 4294, - 4299 - ], - "op": "GT", - "path": "6" - }, - "15547": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH2", - "path": "6", - "value": "0x3D0B" - }, - "15550": { - "branch": 540, - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "JUMPI", - "path": "6" - }, - "15551": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "15553": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "DUP1", - "path": "6" - }, - "15554": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "MLOAD", - "path": "6" - }, - "15555": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "15559": { - "op": "PUSH1", - "value": "0xE5" - }, - "15561": { - "op": "SHL" - }, - "15562": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "DUP2", - "path": "6" - }, - "15563": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "MSTORE", - "path": "6" - }, - "15564": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "15566": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x4" - }, - "15568": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "DUP3", - "path": "6" - }, - "15569": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "ADD", - "path": "6" - }, - "15570": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "MSTORE", - "path": "6" - }, - "15571": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x1A" - }, - "15573": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x24" - }, - "15575": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "DUP3", - "path": "6" - }, - "15576": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "ADD", - "path": "6" - }, - "15577": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "MSTORE", - "path": "6" - }, - "15578": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH32", - "path": "6", - "value": "0x536166654D6174683A206469766973696F6E206279207A65726F000000000000" - }, - "15611": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x44" - }, - "15613": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "DUP3", - "path": "6" - }, - "15614": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "ADD", - "path": "6" - }, - "15615": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "MSTORE", - "path": "6" - }, - "15616": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "SWAP1", - "path": "6" - }, - "15617": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "MLOAD", - "path": "6" - }, - "15618": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "SWAP1", - "path": "6" - }, - "15619": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "DUP2", - "path": "6" - }, - "15620": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "SWAP1", - "path": "6" - }, - "15621": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "SUB", - "path": "6" - }, - "15622": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "PUSH1", - "path": "6", - "value": "0x64" - }, - "15624": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "ADD", - "path": "6" - }, - "15625": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "SWAP1", - "path": "6" - }, - "15626": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "REVERT", - "path": "6" - }, - "15627": { - "fn": "SafeMath.div", - "offset": [ - 4286, - 4330 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15628": { - "fn": "SafeMath.div", - "offset": [ - 4351, - 4352 - ], - "op": "DUP2", - "path": "6", - "statement": 342 - }, - "15629": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4348 - ], - "op": "DUP4", - "path": "6" - }, - "15630": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "DUP2", - "path": "6" - }, - "15631": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "PUSH2", - "path": "6", - "value": "0x3D14" - }, - "15634": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "JUMPI", - "path": "6" - }, - "15635": { - "dev": "Division by zero", - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "INVALID", - "path": "6" - }, - "15636": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15637": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "DIV", - "path": "6" - }, - "15638": { - "fn": "SafeMath.div", - "offset": [ - 4347, - 4352 - ], - "op": "SWAP4", - "path": "6" - }, - "15639": { - "fn": "SafeMath.div", - "offset": [ - 4209, - 4359 - ], - "op": "SWAP3", - "path": "6" - }, - "15640": { - "op": "POP" - }, - "15641": { - "op": "POP" - }, - "15642": { - "op": "POP" - }, - "15643": { - "fn": "SafeMath.div", - "jump": "o", - "offset": [ - 4209, - 4359 - ], - "op": "JUMP", - "path": "6" - }, - "15644": { - "fn": "SafeMath.add", - "offset": [ - 2682, - 2857 - ], - "op": "JUMPDEST", - "path": "6" - }, - "15645": { - "fn": "SafeMath.add", - "offset": [ - 2740, - 2747 - ], - "op": "PUSH1", - "path": "6", - "value": "0x0" - }, - "15647": { - "fn": "SafeMath.add", - "offset": [ - 2771, - 2776 - ], - "op": "DUP3", - "path": "6" - }, - "15648": { - "fn": "SafeMath.add", - "offset": [ - 2771, - 2776 - ], - "op": "DUP3", - "path": "6" - }, - "15649": { - "fn": "SafeMath.add", - "offset": [ - 2771, - 2776 - ], - "op": "ADD", - "path": "6" - }, - "15650": { - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "DUP4", - "path": "6", - "statement": 343 - }, - "15651": { - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "DUP2", - "path": "6" - }, - "15652": { - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "LT", - "path": "6" - }, - "15653": { - "branch": 541, - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "ISZERO", - "path": "6" - }, - "15654": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH2", - "path": "6", - "value": "0xAA3" - }, - "15657": { - "branch": 541, - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "JUMPI", - "path": "6" - }, - "15658": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "15660": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP1", - "path": "6" - }, - "15661": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MLOAD", - "path": "6" - }, - "15662": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "15666": { - "op": "PUSH1", - "value": "0xE5" - }, - "15668": { - "op": "SHL" - }, - "15669": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP2", - "path": "6" - }, - "15670": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "15671": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "15673": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x4" - }, - "15675": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP3", - "path": "6" - }, - "15676": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "15677": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "15678": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x1B" - }, - "15680": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x24" - }, - "15682": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP3", - "path": "6" - }, - "15683": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "15684": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "15685": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH32", - "path": "6", - "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000" - }, - "15718": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x44" - }, - "15720": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP3", - "path": "6" - }, - "15721": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "15722": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "15723": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "15724": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MLOAD", - "path": "6" - }, - "15725": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "15726": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP2", - "path": "6" - }, - "15727": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "15728": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SUB", - "path": "6" - }, - "15729": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x64" - }, - "15731": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "15732": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "15733": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "REVERT", - "path": "6" - }, - "15734": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "offset": [ - 7804, - 8050 - ], - "op": "JUMPDEST", - "path": "62" - }, - "15735": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "offset": [ - 7876, - 7919 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "15737": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "offset": [ - 7935, - 7947 - ], - "op": "DUP1", - "path": "62" - }, - "15738": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "offset": [ - 7950, - 8003 - ], - "op": "PUSH2", - "path": "62", - "value": "0xEDB" - }, - "15741": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "offset": [ - 7966, - 8002 - ], - "op": "PUSH1", - "path": "62", - "value": "0x12" - }, - "15743": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "offset": [ - 7950, - 7965 - ], - "op": "PUSH2", - "path": "62", - "value": "0x37C7" - }, - "15746": { - "fn": "LibStorage.getSecondaryIncentiveRewarder", - "jump": "i", - "offset": [ - 7950, - 8003 - ], - "op": "JUMP", - "path": "62" - }, - "15747": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1006, - 1758 - ], - "op": "JUMPDEST", - "path": "88" - }, - "15748": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1085, - 1092 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "15750": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1130, - 1131 - ], - "op": "DUP1", - "path": "88", - "statement": 344 - }, - "15751": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1117 - ], - "op": "DUP3", - "path": "88" - }, - "15752": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1127 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "15754": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1127 - ], - "op": "ADD", - "path": "88" - }, - "15755": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1127 - ], - "op": "MLOAD", - "path": "88" - }, - "15756": { - "branch": 442, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1131 - ], - "op": "GT", - "path": "88" - }, - "15757": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "DUP1", - "path": "88" - }, - "15758": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "ISZERO", - "path": "88" - }, - "15759": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3D9D" - }, - "15762": { - "branch": 442, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "JUMPI", - "path": "88" - }, - "15763": { - "op": "POP" - }, - "15764": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "15766": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "DUP3", - "path": "88" - }, - "15767": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "ADD", - "path": "88" - }, - "15768": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "MLOAD", - "path": "88" - }, - "15769": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "15771": { - "op": "LT" - }, - "15772": { - "branch": 443, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1189 - ], - "op": "ISZERO", - "path": "88" - }, - "15773": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "JUMPDEST", - "path": "88" - }, - "15774": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3DA6" - }, - "15777": { - "branch": 443, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "JUMPI", - "path": "88" - }, - "15778": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "15780": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "DUP1", - "path": "88" - }, - "15781": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "REVERT", - "path": "88" - }, - "15782": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "JUMPDEST", - "path": "88" - }, - "15783": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "15785": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "DUP3", - "path": "88" - }, - "15786": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "ADD", - "path": "88" - }, - "15787": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "MLOAD", - "path": "88" - }, - "15788": { - "offset": [ - 4847, - 4848 - ], - "op": "PUSH1", - "path": "60", - "value": "0x2" - }, - "15790": { - "op": "LT" - }, - "15791": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1305, - 1386 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3DBD" - }, - "15794": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1305, - 1386 - ], - "op": "JUMPI", - "path": "88" - }, - "15795": { - "op": "POP" - }, - "15796": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "PUSH1", - "path": "88", - "statement": 345, - "value": "0x20" - }, - "15798": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "DUP2", - "path": "88" - }, - "15799": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "ADD", - "path": "88" - }, - "15800": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "MLOAD", - "path": "88" - }, - "15801": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1365, - 1386 - ], - "op": "PUSH2", - "path": "88", - "value": "0xBE2" - }, - "15804": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1365, - 1386 - ], - "op": "JUMP", - "path": "88" - }, - "15805": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1305, - 1386 - ], - "op": "JUMPDEST", - "path": "88" - }, - "15806": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1417 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "15808": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1420, - 1465 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3DCF" - }, - "15811": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1463, - 1464 - ], - "op": "PUSH1", - "path": "88", - "value": "0x1" - }, - "15813": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1450 - ], - "op": "DUP5", - "path": "88" - }, - "15814": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1460 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "15816": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1460 - ], - "op": "ADD", - "path": "88" - }, - "15817": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1460 - ], - "op": "MLOAD", - "path": "88" - }, - "15818": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1464 - ], - "op": "SUB", - "path": "88" - }, - "15819": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1420, - 1444 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3E6E" - }, - "15822": { - "fn": "AssetHandler.getSettlementDate", - "jump": "i", - "offset": [ - 1420, - 1465 - ], - "op": "JUMP", - "path": "88" - }, - "15823": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1420, - 1465 - ], - "op": "JUMPDEST", - "path": "88" - }, - "15824": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "PUSH1", - "path": "88", - "statement": 346, - "value": "0x20" - }, - "15826": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "DUP5", - "path": "88" - }, - "15827": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "ADD", - "path": "88" - }, - "15828": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "MLOAD", - "path": "88" - }, - "15829": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1465 - ], - "op": "SWAP1", - "path": "88" - }, - "15830": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1465 - ], - "op": "SWAP2", - "path": "88" - }, - "15831": { - "op": "POP" - }, - "15832": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1751 - ], - "op": "PUSH2", - "path": "88", - "value": "0xAA3" - }, - "15835": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1751 - ], - "op": "SWAP1", - "path": "88" - }, - "15836": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "15840": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 2617, - 2626 - ], - "op": "SWAP1", - "path": "60" - }, - "15841": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1728 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3DEA" - }, - "15844": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1728 - ], - "op": "SWAP1", - "path": "88" - }, - "15845": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1465 - ], - "op": "DUP5", - "path": "88" - }, - "15846": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1714 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3096" - }, - "15849": { - "fn": "AssetHandler.getSettlementDate", - "jump": "i", - "offset": [ - 1696, - 1728 - ], - "op": "JUMP", - "path": "88" - }, - "15850": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1728 - ], - "op": "JUMPDEST", - "path": "88" - }, - "15851": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1732 - ], - "op": "SWAP1", - "path": "88" - }, - "15852": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1732 - ], - "op": "PUSH2", - "path": "88", - "value": "0x3D1C" - }, - "15855": { - "fn": "AssetHandler.getSettlementDate", - "jump": "i", - "offset": [ - 1696, - 1751 - ], - "op": "JUMP", - "path": "88" - }, - "15856": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 526, - 1355 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15857": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 646, - 665 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15859": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 679, - 711 - ], - "op": "DUP1", - "path": "82" - }, - "15860": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 725, - 752 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15862": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 777, - 835 - ], - "op": "DUP1", - "path": "82" - }, - "15863": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 838, - 878 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3DFE" - }, - "15866": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 838, - 876 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C4F" - }, - "15869": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "jump": "i", - "offset": [ - 838, - 878 - ], - "op": "JUMP", - "path": "82" - }, - "15870": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 838, - 878 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15871": { - "op": "PUSH1", - "value": "0x1" - }, - "15873": { - "op": "PUSH1", - "value": "0x1" - }, - "15875": { - "op": "PUSH1", - "value": "0xA0" - }, - "15877": { - "op": "SHL" - }, - "15878": { - "op": "SUB" - }, - "15879": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP6", - "path": "82" - }, - "15880": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP1", - "path": "82" - }, - "15881": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP6", - "path": "82" - }, - "15882": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "AND", - "path": "82" - }, - "15883": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 888, - 934 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15885": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP1", - "path": "82" - }, - "15886": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "DUP2", - "path": "82" - }, - "15887": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "MSTORE", - "path": "82" - }, - "15888": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "PUSH1", - "path": "82", - "value": "0x20" - }, - "15890": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP6", - "path": "82" - }, - "15891": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP1", - "path": "82" - }, - "15892": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP6", - "path": "82" - }, - "15893": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "MSTORE", - "path": "82" - }, - "15894": { - "op": "POP" - }, - "15895": { - "op": "POP" - }, - "15896": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "PUSH1", - "path": "82", - "value": "0x40" - }, - "15898": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP1", - "path": "82" - }, - "15899": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "SWAP3", - "path": "82" - }, - "15900": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 937, - 956 - ], - "op": "KECCAK256", - "path": "82" - }, - "15901": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 980, - 1005 - ], - "op": "SLOAD", - "path": "82", - "statement": 347 - }, - "15902": { - "op": "PUSH1", - "value": "0x1" - }, - "15904": { - "op": "PUSH1", - "value": "0x1" - }, - "15906": { - "op": "PUSH1", - "value": "0x60" - }, - "15908": { - "op": "SHL" - }, - "15909": { - "op": "SUB" - }, - "15910": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 980, - 1005 - ], - "op": "DUP2", - "path": "82" - }, - "15911": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 980, - 1005 - ], - "op": "AND", - "path": "82" - }, - "15912": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 980, - 1005 - ], - "op": "SWAP4", - "path": "82" - }, - "15913": { - "op": "PUSH1", - "value": "0x1" - }, - "15915": { - "op": "PUSH1", - "value": "0x60" - }, - "15917": { - "op": "SHL" - }, - "15918": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1245, - 1283 - ], - "op": "DUP3", - "path": "82", - "statement": 348 - }, - "15919": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1245, - 1283 - ], - "op": "DIV", - "path": "82" - }, - "15920": { - "op": "PUSH1", - "value": "0x1" - }, - "15922": { - "op": "PUSH1", - "value": "0x1" - }, - "15924": { - "op": "PUSH1", - "value": "0x80" - }, - "15926": { - "op": "SHL" - }, - "15927": { - "op": "SUB" - }, - "15928": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1245, - 1283 - ], - "op": "AND", - "path": "82" - }, - "15929": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1245, - 1283 - ], - "op": "SWAP4", - "path": "82" - }, - "15930": { - "op": "POP" - }, - "15931": { - "op": "PUSH1", - "value": "0x1" - }, - "15933": { - "op": "PUSH1", - "value": "0xE0" - }, - "15935": { - "op": "SHL" - }, - "15936": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1315, - 1348 - ], - "op": "SWAP1", - "path": "82", - "statement": 349 - }, - "15937": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1315, - 1348 - ], - "op": "SWAP2", - "path": "82" - }, - "15938": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1315, - 1348 - ], - "op": "DIV", - "path": "82" - }, - "15939": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1315, - 1348 - ], - "op": "PUSH4", - "path": "82", - "value": "0xFFFFFFFF" - }, - "15944": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1315, - 1348 - ], - "op": "AND", - "path": "82" - }, - "15945": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "offset": [ - 1315, - 1348 - ], - "op": "SWAP2", - "path": "82" - }, - "15946": { - "op": "POP" - }, - "15947": { - "fn": "nTokenSupply.getStoredNTokenSupplyFactors", - "jump": "o", - "offset": [ - 526, - 1355 - ], - "op": "JUMP", - "path": "82" - }, - "15948": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 3288, - 4395 - ], - "op": "JUMPDEST", - "path": "82" - }, - "15949": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 3483, - 3490 - ], - "op": "PUSH1", - "path": "82", - "value": "0x0" - }, - "15951": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4135, - 4388 - ], - "op": "PUSH2", - "path": "82", - "statement": 350, - "value": "0xF7F" - }, - "15954": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4376, - 4387 - ], - "op": "DUP3", - "path": "82" - }, - "15955": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4135, - 4292 - ], - "op": "PUSH2", - "path": "82", - "value": "0x340D" - }, - "15958": { - "offset": [ - 2665, - 2676 - ], - "op": "PUSH4", - "path": "60", - "value": "0x1DA9C00" - }, - "15963": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4135, - 4292 - ], - "op": "DUP2", - "path": "82" - }, - "15964": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4239, - 4258 - ], - "op": "DUP9", - "path": "82" - }, - "15965": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4135, - 4221 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3407" - }, - "15968": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4135, - 4160 - ], - "op": "DUP10", - "path": "82" - }, - "15969": { - "offset": [ - 499, - 503 - ], - "op": "PUSH8", - "path": "60", - "value": "0xDE0B6B3A7640000" - }, - "15978": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "offset": [ - 4135, - 4177 - ], - "op": "PUSH2", - "path": "82", - "value": "0x3C5C" - }, - "15981": { - "fn": "nTokenSupply._calculateAdditionalNOTE", - "jump": "i", - "offset": [ - 4135, - 4221 - ], - "op": "JUMP", - "path": "82" - }, - "15982": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 928, - 1398 - ], - "op": "JUMPDEST", - "path": "78" - }, - "15983": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 991, - 998 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "15985": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1014, - 1019 - ], - "op": "DUP2", - "path": "78" - }, - "15986": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1023, - 1024 - ], - "op": "PUSH1", - "path": "78", - "value": "0x1" - }, - "15988": { - "branch": 482, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1014, - 1024 - ], - "op": "EQ", - "path": "78" - }, - "15989": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "ISZERO", - "path": "78" - }, - "15990": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3E83" - }, - "15993": { - "branch": 482, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "JUMPI", - "path": "78" - }, - "15994": { - "op": "POP" - }, - "15995": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "15999": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1026, - 1050 - ], - "op": "PUSH2", - "path": "78", - "statement": 351, - "value": "0xBE2" - }, - "16002": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1026, - 1050 - ], - "op": "JUMP", - "path": "78" - }, - "16003": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16004": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1064, - 1069 - ], - "op": "DUP2", - "path": "78" - }, - "16005": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1073, - 1074 - ], - "op": "PUSH1", - "path": "78", - "value": "0x2" - }, - "16007": { - "branch": 483, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1064, - 1074 - ], - "op": "EQ", - "path": "78" - }, - "16008": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "ISZERO", - "path": "78" - }, - "16009": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3E96" - }, - "16012": { - "branch": 483, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "JUMPI", - "path": "78" - }, - "16013": { - "op": "POP" - }, - "16014": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1083, - 1104 - ], - "op": "PUSH3", - "path": "78", - "statement": 352, - "value": "0xED4E00" - }, - "16018": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1076, - 1104 - ], - "op": "PUSH2", - "path": "78", - "value": "0xBE2" - }, - "16021": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1076, - 1104 - ], - "op": "JUMP", - "path": "78" - }, - "16022": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16023": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1118, - 1123 - ], - "op": "DUP2", - "path": "78" - }, - "16024": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1127, - 1128 - ], - "op": "PUSH1", - "path": "78", - "value": "0x3" - }, - "16026": { - "branch": 484, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1118, - 1128 - ], - "op": "EQ", - "path": "78" - }, - "16027": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "ISZERO", - "path": "78" - }, - "16028": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3EAA" - }, - "16031": { - "branch": 484, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "JUMPI", - "path": "78" - }, - "16032": { - "op": "POP" - }, - "16033": { - "offset": [ - 2665, - 2676 - ], - "op": "PUSH4", - "path": "60", - "value": "0x1DA9C00" - }, - "16038": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1130, - 1151 - ], - "op": "PUSH2", - "path": "78", - "statement": 353, - "value": "0xBE2" - }, - "16041": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1130, - 1151 - ], - "op": "JUMP", - "path": "78" - }, - "16042": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16043": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1165, - 1170 - ], - "op": "DUP2", - "path": "78" - }, - "16044": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1174, - 1175 - ], - "op": "PUSH1", - "path": "78", - "value": "0x4" - }, - "16046": { - "branch": 485, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1165, - 1175 - ], - "op": "EQ", - "path": "78" - }, - "16047": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "ISZERO", - "path": "78" - }, - "16048": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3EBE" - }, - "16051": { - "branch": 485, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "JUMPI", - "path": "78" - }, - "16052": { - "op": "POP" - }, - "16053": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1184, - 1202 - ], - "op": "PUSH4", - "path": "78", - "statement": 354, - "value": "0x3B53800" - }, - "16058": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1177, - 1202 - ], - "op": "PUSH2", - "path": "78", - "value": "0xBE2" - }, - "16061": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1177, - 1202 - ], - "op": "JUMP", - "path": "78" - }, - "16062": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16063": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1216, - 1221 - ], - "op": "DUP2", - "path": "78" - }, - "16064": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1225, - 1226 - ], - "op": "PUSH1", - "path": "78", - "value": "0x5" - }, - "16066": { - "branch": 486, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1216, - 1226 - ], - "op": "EQ", - "path": "78" - }, - "16067": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "ISZERO", - "path": "78" - }, - "16068": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3ED2" - }, - "16071": { - "branch": 486, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "JUMPI", - "path": "78" - }, - "16072": { - "op": "POP" - }, - "16073": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1235, - 1253 - ], - "op": "PUSH4", - "path": "78", - "statement": 355, - "value": "0x9450C00" - }, - "16078": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1228, - 1253 - ], - "op": "PUSH2", - "path": "78", - "value": "0xBE2" - }, - "16081": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1228, - 1253 - ], - "op": "JUMP", - "path": "78" - }, - "16082": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16083": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1267, - 1272 - ], - "op": "DUP2", - "path": "78" - }, - "16084": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1276, - 1277 - ], - "op": "PUSH1", - "path": "78", - "value": "0x6" - }, - "16086": { - "branch": 487, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1267, - 1277 - ], - "op": "EQ", - "path": "78" - }, - "16087": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "ISZERO", - "path": "78" - }, - "16088": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3EE6" - }, - "16091": { - "branch": 487, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "JUMPI", - "path": "78" - }, - "16092": { - "op": "POP" - }, - "16093": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1286, - 1305 - ], - "op": "PUSH4", - "path": "78", - "statement": 356, - "value": "0x128A1800" - }, - "16098": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1279, - 1305 - ], - "op": "PUSH2", - "path": "78", - "value": "0xBE2" - }, - "16101": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1279, - 1305 - ], - "op": "JUMP", - "path": "78" - }, - "16102": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16103": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1319, - 1324 - ], - "op": "DUP2", - "path": "78" - }, - "16104": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1328, - 1329 - ], - "op": "PUSH1", - "path": "78", - "value": "0x7" - }, - "16106": { - "branch": 488, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1319, - 1329 - ], - "op": "EQ", - "path": "78" - }, - "16107": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "ISZERO", - "path": "78" - }, - "16108": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3EFA" - }, - "16111": { - "branch": 488, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "JUMPI", - "path": "78" - }, - "16112": { - "op": "POP" - }, - "16113": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1338, - 1357 - ], - "op": "PUSH4", - "path": "78", - "statement": 357, - "value": "0x25143000" - }, - "16118": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1331, - 1357 - ], - "op": "PUSH2", - "path": "78", - "value": "0xBE2" - }, - "16121": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1331, - 1357 - ], - "op": "JUMP", - "path": "78" - }, - "16122": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "JUMPDEST", - "path": "78" - }, - "16123": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH1", - "path": "78", - "statement": 358, - "value": "0x40" - }, - "16125": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "MLOAD", - "path": "78" - }, - "16126": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "16130": { - "op": "PUSH1", - "value": "0xE5" - }, - "16132": { - "op": "SHL" - }, - "16133": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "DUP2", - "path": "78" - }, - "16134": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "MSTORE", - "path": "78" - }, - "16135": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH1", - "path": "78", - "value": "0x4" - }, - "16137": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "ADD", - "path": "78" - }, - "16138": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH2", - "path": "78", - "value": "0x17A" - }, - "16141": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "SWAP1", - "path": "78" - }, - "16142": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH2", - "path": "78", - "value": "0x493D" - }, - "16145": { - "fn": "DateTime.getTradedMarket", - "jump": "i", - "offset": [ - 1368, - 1391 - ], - "op": "JUMP", - "path": "78" - }, - "16146": { - "op": "JUMPDEST" - }, - "16147": { - "op": "PUSH1", - "value": "0x40" - }, - "16149": { - "op": "MLOAD" - }, - "16150": { - "op": "DUP1" - }, - "16151": { - "op": "PUSH2", - "value": "0x120" - }, - "16154": { - "op": "ADD" - }, - "16155": { - "op": "PUSH1", - "value": "0x40" - }, - "16157": { - "op": "MSTORE" - }, - "16158": { - "op": "DUP1" - }, - "16159": { - "op": "PUSH1", - "value": "0x0" - }, - "16161": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "16164": { - "op": "AND" - }, - "16165": { - "op": "DUP2" - }, - "16166": { - "op": "MSTORE" - }, - "16167": { - "op": "PUSH1", - "value": "0x20" - }, - "16169": { - "op": "ADD" - }, - "16170": { - "op": "PUSH1", - "value": "0x0" - }, - "16172": { - "op": "DUP2" - }, - "16173": { - "op": "MSTORE" - }, - "16174": { - "op": "PUSH1", - "value": "0x20" - }, - "16176": { - "op": "ADD" - }, - "16177": { - "op": "PUSH1", - "value": "0x0" - }, - "16179": { - "op": "DUP2" - }, - "16180": { - "op": "MSTORE" - }, - "16181": { - "op": "PUSH1", - "value": "0x20" - }, - "16183": { - "op": "ADD" - }, - "16184": { - "op": "PUSH1", - "value": "0x0" - }, - "16186": { - "op": "DUP2" - }, - "16187": { - "op": "MSTORE" - }, - "16188": { - "op": "PUSH1", - "value": "0x20" - }, - "16190": { - "op": "ADD" - }, - "16191": { - "op": "PUSH1", - "value": "0x0" - }, - "16193": { - "op": "DUP2" - }, - "16194": { - "op": "MSTORE" - }, - "16195": { - "op": "PUSH1", - "value": "0x20" - }, - "16197": { - "op": "ADD" - }, - "16198": { - "op": "PUSH1", - "value": "0x0" - }, - "16200": { - "op": "DUP2" - }, - "16201": { - "op": "MSTORE" - }, - "16202": { - "op": "PUSH1", - "value": "0x20" - }, - "16204": { - "op": "ADD" - }, - "16205": { - "op": "PUSH1", - "value": "0x0" - }, - "16207": { - "op": "DUP2" - }, - "16208": { - "op": "MSTORE" - }, - "16209": { - "op": "PUSH1", - "value": "0x20" - }, - "16211": { - "op": "ADD" - }, - "16212": { - "op": "PUSH1", - "value": "0x0" - }, - "16214": { - "op": "DUP2" - }, - "16215": { - "op": "MSTORE" - }, - "16216": { - "op": "PUSH1", - "value": "0x20" - }, - "16218": { - "op": "ADD" - }, - "16219": { - "op": "PUSH1", - "value": "0x0" - }, - "16221": { - "op": "DUP2" - }, - "16222": { - "op": "MSTORE" - }, - "16223": { - "op": "POP" - }, - "16224": { - "op": "SWAP1" - }, - "16225": { - "jump": "o", - "op": "JUMP" - }, - "16226": { - "op": "JUMPDEST" - }, - "16227": { - "op": "PUSH1", - "value": "0x40" - }, - "16229": { - "op": "DUP1" - }, - "16230": { - "op": "MLOAD" - }, - "16231": { - "op": "PUSH1", - "value": "0xA0" - }, - "16233": { - "op": "DUP2" - }, - "16234": { - "op": "ADD" - }, - "16235": { - "op": "DUP3" - }, - "16236": { - "op": "MSTORE" - }, - "16237": { - "op": "PUSH1", - "value": "0x0" - }, - "16239": { - "op": "DUP1" - }, - "16240": { - "op": "DUP3" - }, - "16241": { - "op": "MSTORE" - }, - "16242": { - "op": "PUSH1", - "value": "0x20" - }, - "16244": { - "op": "DUP3" - }, - "16245": { - "op": "ADD" - }, - "16246": { - "op": "DUP2" - }, - "16247": { - "op": "SWAP1" - }, - "16248": { - "op": "MSTORE" - }, - "16249": { - "op": "SWAP2" - }, - "16250": { - "op": "DUP2" - }, - "16251": { - "op": "ADD" - }, - "16252": { - "op": "DUP3" - }, - "16253": { - "op": "SWAP1" - }, - "16254": { - "op": "MSTORE" - }, - "16255": { - "op": "PUSH1", - "value": "0x60" - }, - "16257": { - "op": "DUP2" - }, - "16258": { - "op": "ADD" - }, - "16259": { - "op": "DUP3" - }, - "16260": { - "op": "SWAP1" - }, - "16261": { - "op": "MSTORE" - }, - "16262": { - "op": "PUSH1", - "value": "0x80" - }, - "16264": { - "op": "DUP2" - }, - "16265": { - "op": "ADD" - }, - "16266": { - "op": "SWAP2" - }, - "16267": { - "op": "SWAP1" - }, - "16268": { - "op": "SWAP2" - }, - "16269": { - "op": "MSTORE" - }, - "16270": { - "op": "SWAP1" - }, - "16271": { - "jump": "o", - "op": "JUMP" - }, - "16272": { - "op": "JUMPDEST" - }, - "16273": { - "op": "PUSH1", - "value": "0x40" - }, - "16275": { - "op": "MLOAD" - }, - "16276": { - "op": "DUP1" - }, - "16277": { - "op": "PUSH1", - "value": "0x80" - }, - "16279": { - "op": "ADD" - }, - "16280": { - "op": "PUSH1", - "value": "0x40" - }, - "16282": { - "op": "MSTORE" - }, - "16283": { - "op": "DUP1" - }, - "16284": { - "op": "PUSH1", - "value": "0x60" - }, - "16286": { - "op": "DUP2" - }, - "16287": { - "op": "MSTORE" - }, - "16288": { - "op": "PUSH1", - "value": "0x20" - }, - "16290": { - "op": "ADD" - }, - "16291": { - "op": "PUSH1", - "value": "0x60" - }, - "16293": { - "op": "DUP2" - }, - "16294": { - "op": "MSTORE" - }, - "16295": { - "op": "PUSH1", - "value": "0x20" - }, - "16297": { - "op": "ADD" - }, - "16298": { - "op": "PUSH1", - "value": "0x0" - }, - "16300": { - "op": "DUP2" - }, - "16301": { - "op": "MSTORE" - }, - "16302": { - "op": "PUSH1", - "value": "0x20" - }, - "16304": { - "op": "ADD" - }, - "16305": { - "op": "PUSH1", - "value": "0x0" - }, - "16307": { - "op": "DUP2" - }, - "16308": { - "op": "MSTORE" - }, - "16309": { - "op": "POP" - }, - "16310": { - "op": "SWAP1" - }, - "16311": { - "jump": "o", - "op": "JUMP" - }, - "16312": { - "op": "JUMPDEST" - }, - "16313": { - "op": "PUSH1", - "value": "0x40" - }, - "16315": { - "op": "MLOAD" - }, - "16316": { - "op": "DUP1" - }, - "16317": { - "op": "PUSH1", - "value": "0xC0" - }, - "16319": { - "op": "ADD" - }, - "16320": { - "op": "PUSH1", - "value": "0x40" - }, - "16322": { - "op": "MSTORE" - }, - "16323": { - "op": "DUP1" - }, - "16324": { - "op": "PUSH1", - "value": "0x0" - }, - "16326": { - "op": "DUP2" - }, - "16327": { - "op": "MSTORE" - }, - "16328": { - "op": "PUSH1", - "value": "0x20" - }, - "16330": { - "op": "ADD" - }, - "16331": { - "op": "PUSH1", - "value": "0x0" - }, - "16333": { - "op": "DUP2" - }, - "16334": { - "op": "MSTORE" - }, - "16335": { - "op": "PUSH1", - "value": "0x20" - }, - "16337": { - "op": "ADD" - }, - "16338": { - "op": "PUSH1", - "value": "0x0" - }, - "16340": { - "op": "DUP2" - }, - "16341": { - "op": "MSTORE" - }, - "16342": { - "op": "PUSH1", - "value": "0x20" - }, - "16344": { - "op": "ADD" - }, - "16345": { - "op": "PUSH1", - "value": "0x0" - }, - "16347": { - "op": "DUP2" - }, - "16348": { - "op": "MSTORE" - }, - "16349": { - "op": "PUSH1", - "value": "0x20" - }, - "16351": { - "op": "ADD" - }, - "16352": { - "op": "PUSH1", - "value": "0x0" - }, - "16354": { - "op": "DUP2" - }, - "16355": { - "op": "MSTORE" - }, - "16356": { - "op": "PUSH1", - "value": "0x20" - }, - "16358": { - "op": "ADD" - }, - "16359": { - "op": "PUSH1", - "value": "0x0" - }, - "16361": { - "op": "PUSH1", - "value": "0x3" - }, - "16363": { - "op": "DUP2" - }, - "16364": { - "op": "GT" - }, - "16365": { - "op": "ISZERO" - }, - "16366": { - "op": "PUSH2", - "value": "0x3FF3" - }, - "16369": { - "op": "JUMPI" - }, - "16370": { - "op": "INVALID" - }, - "16371": { - "op": "JUMPDEST" - }, - "16372": { - "op": "SWAP1" - }, - "16373": { - "op": "MSTORE" - }, - "16374": { - "op": "SWAP1" - }, - "16375": { - "jump": "o", - "op": "JUMP" - }, - "16376": { - "op": "JUMPDEST" - }, - "16377": { - "op": "PUSH1", - "value": "0x40" - }, - "16379": { - "op": "MLOAD" - }, - "16380": { - "op": "DUP1" - }, - "16381": { - "op": "PUSH1", - "value": "0x60" - }, - "16383": { - "op": "ADD" - }, - "16384": { - "op": "PUSH1", - "value": "0x40" - }, - "16386": { - "op": "MSTORE" - }, - "16387": { - "op": "DUP1" - }, - "16388": { - "op": "PUSH1", - "value": "0x0" - }, - "16390": { - "op": "PUSH1", - "value": "0x1" - }, - "16392": { - "op": "PUSH1", - "value": "0x1" - }, - "16394": { - "op": "PUSH1", - "value": "0xA0" - }, - "16396": { - "op": "SHL" - }, - "16397": { - "op": "SUB" - }, - "16398": { - "op": "AND" - }, - "16399": { - "op": "DUP2" - }, - "16400": { - "op": "MSTORE" - }, - "16401": { - "op": "PUSH1", - "value": "0x20" - }, - "16403": { - "op": "ADD" - }, - "16404": { - "op": "PUSH1", - "value": "0x0" - }, - "16406": { - "op": "DUP2" - }, - "16407": { - "op": "MSTORE" - }, - "16408": { - "op": "PUSH1", - "value": "0x20" - }, - "16410": { - "op": "ADD" - }, - "16411": { - "op": "PUSH1", - "value": "0x0" - }, - "16413": { - "op": "DUP2" - }, - "16414": { - "op": "MSTORE" - }, - "16415": { - "op": "POP" - }, - "16416": { - "op": "SWAP1" - }, - "16417": { - "jump": "o", - "op": "JUMP" - }, - "16418": { - "op": "JUMPDEST" - }, - "16419": { - "op": "PUSH1", - "value": "0x40" - }, - "16421": { - "op": "DUP1" - }, - "16422": { - "op": "MLOAD" - }, - "16423": { - "op": "PUSH1", - "value": "0xA0" - }, - "16425": { - "op": "DUP2" - }, - "16426": { - "op": "ADD" - }, - "16427": { - "op": "DUP3" - }, - "16428": { - "op": "MSTORE" - }, - "16429": { - "op": "PUSH1", - "value": "0x0" - }, - "16431": { - "op": "DUP1" - }, - "16432": { - "op": "DUP3" - }, - "16433": { - "op": "MSTORE" - }, - "16434": { - "op": "PUSH1", - "value": "0x20" - }, - "16436": { - "op": "DUP3" - }, - "16437": { - "op": "ADD" - }, - "16438": { - "op": "DUP2" - }, - "16439": { - "op": "SWAP1" - }, - "16440": { - "op": "MSTORE" - }, - "16441": { - "op": "SWAP2" - }, - "16442": { - "op": "DUP2" - }, - "16443": { - "op": "ADD" - }, - "16444": { - "op": "DUP3" - }, - "16445": { - "op": "SWAP1" - }, - "16446": { - "op": "MSTORE" - }, - "16447": { - "op": "SWAP1" - }, - "16448": { - "op": "PUSH1", - "value": "0x60" - }, - "16450": { - "op": "DUP3" - }, - "16451": { - "op": "ADD" - }, - "16452": { - "op": "SWAP1" - }, - "16453": { - "op": "DUP2" - }, - "16454": { - "op": "MSTORE" - }, - "16455": { - "op": "PUSH1", - "value": "0x20" - }, - "16457": { - "op": "ADD" - }, - "16458": { - "op": "PUSH1", - "value": "0x0" - }, - "16460": { - "op": "DUP2" - }, - "16461": { - "op": "MSTORE" - }, - "16462": { - "op": "POP" - }, - "16463": { - "op": "SWAP1" - }, - "16464": { - "jump": "o", - "op": "JUMP" - }, - "16465": { - "op": "JUMPDEST" - }, - "16466": { - "op": "PUSH1", - "value": "0x40" - }, - "16468": { - "op": "MLOAD" - }, - "16469": { - "op": "DUP1" - }, - "16470": { - "op": "PUSH1", - "value": "0x20" - }, - "16472": { - "op": "ADD" - }, - "16473": { - "op": "PUSH1", - "value": "0x40" - }, - "16475": { - "op": "MSTORE" - }, - "16476": { - "op": "DUP1" - }, - "16477": { - "op": "PUSH1", - "value": "0x1" - }, - "16479": { - "op": "SWAP1" - }, - "16480": { - "op": "PUSH1", - "value": "0x20" - }, - "16482": { - "op": "DUP3" - }, - "16483": { - "op": "MUL" - }, - "16484": { - "op": "DUP1" - }, - "16485": { - "op": "CALLDATASIZE" - }, - "16486": { - "op": "DUP4" - }, - "16487": { - "op": "CALLDATACOPY" - }, - "16488": { - "op": "POP" - }, - "16489": { - "op": "SWAP2" - }, - "16490": { - "op": "SWAP3" - }, - "16491": { - "op": "SWAP2" - }, - "16492": { - "op": "POP" - }, - "16493": { - "op": "POP" - }, - "16494": { - "jump": "o", - "op": "JUMP" - }, - "16495": { - "op": "JUMPDEST" - }, - "16496": { - "op": "DUP1" - }, - "16497": { - "op": "CALLDATALOAD" - }, - "16498": { - "op": "PUSH1", - "value": "0x1" - }, - "16500": { - "op": "PUSH1", - "value": "0x1" - }, - "16502": { - "op": "PUSH1", - "value": "0xA0" - }, - "16504": { - "op": "SHL" - }, - "16505": { - "op": "SUB" - }, - "16506": { - "op": "DUP2" - }, - "16507": { - "op": "AND" - }, - "16508": { - "op": "DUP2" - }, - "16509": { - "op": "EQ" - }, - "16510": { - "op": "PUSH2", - "value": "0xBE2" - }, - "16513": { - "op": "JUMPI" - }, - "16514": { - "op": "PUSH1", - "value": "0x0" - }, - "16516": { - "op": "DUP1" - }, - "16517": { - "op": "REVERT" - }, - "16518": { - "op": "JUMPDEST" - }, - "16519": { - "op": "PUSH1", - "value": "0x0" - }, - "16521": { - "op": "DUP1" - }, - "16522": { - "op": "DUP4" - }, - "16523": { - "op": "PUSH1", - "value": "0x1F" - }, - "16525": { - "op": "DUP5" - }, - "16526": { - "op": "ADD" - }, - "16527": { - "op": "SLT" - }, - "16528": { - "op": "PUSH2", - "value": "0x4097" - }, - "16531": { - "op": "JUMPI" - }, - "16532": { - "op": "DUP1" - }, - "16533": { - "op": "DUP2" - }, - "16534": { - "op": "REVERT" - }, - "16535": { - "op": "JUMPDEST" - }, - "16536": { - "op": "POP" - }, - "16537": { - "op": "DUP2" - }, - "16538": { - "op": "CALLDATALOAD" - }, - "16539": { - "op": "PUSH1", - "value": "0x1" - }, - "16541": { - "op": "PUSH1", - "value": "0x1" - }, - "16543": { - "op": "PUSH1", - "value": "0x40" - }, - "16545": { - "op": "SHL" - }, - "16546": { - "op": "SUB" - }, - "16547": { - "op": "DUP2" - }, - "16548": { - "op": "GT" - }, - "16549": { - "op": "ISZERO" - }, - "16550": { - "op": "PUSH2", - "value": "0x40AD" - }, - "16553": { - "op": "JUMPI" - }, - "16554": { - "op": "DUP2" - }, - "16555": { - "op": "DUP3" - }, - "16556": { - "op": "REVERT" - }, - "16557": { - "op": "JUMPDEST" - }, - "16558": { - "op": "PUSH1", - "value": "0x20" - }, - "16560": { - "op": "DUP4" - }, - "16561": { - "op": "ADD" - }, - "16562": { - "op": "SWAP2" - }, - "16563": { - "op": "POP" - }, - "16564": { - "op": "DUP4" - }, - "16565": { - "op": "PUSH1", - "value": "0x20" - }, - "16567": { - "op": "DUP1" - }, - "16568": { - "op": "DUP4" - }, - "16569": { - "op": "MUL" - }, - "16570": { - "op": "DUP6" - }, - "16571": { - "op": "ADD" - }, - "16572": { - "op": "ADD" - }, - "16573": { - "op": "GT" - }, - "16574": { - "op": "ISZERO" - }, - "16575": { - "op": "PUSH2", - "value": "0x40C7" - }, - "16578": { - "op": "JUMPI" - }, - "16579": { - "op": "PUSH1", - "value": "0x0" - }, - "16581": { - "op": "DUP1" - }, - "16582": { - "op": "REVERT" - }, - "16583": { - "op": "JUMPDEST" - }, - "16584": { - "op": "SWAP3" - }, - "16585": { - "op": "POP" - }, - "16586": { - "op": "SWAP3" - }, - "16587": { - "op": "SWAP1" - }, - "16588": { - "op": "POP" - }, - "16589": { - "jump": "o", - "op": "JUMP" - }, - "16590": { - "op": "JUMPDEST" - }, - "16591": { - "op": "PUSH1", - "value": "0x0" - }, - "16593": { - "op": "DUP3" - }, - "16594": { - "op": "PUSH1", - "value": "0x1F" - }, - "16596": { - "op": "DUP4" - }, - "16597": { - "op": "ADD" - }, - "16598": { - "op": "SLT" - }, - "16599": { - "op": "PUSH2", - "value": "0x40DE" - }, - "16602": { - "op": "JUMPI" - }, - "16603": { - "op": "DUP1" - }, - "16604": { - "op": "DUP2" - }, - "16605": { - "op": "REVERT" - }, - "16606": { - "op": "JUMPDEST" - }, - "16607": { - "op": "DUP2" - }, - "16608": { - "op": "MLOAD" - }, - "16609": { - "op": "PUSH1", - "value": "0x20" - }, - "16611": { - "op": "PUSH1", - "value": "0x1" - }, - "16613": { - "op": "PUSH1", - "value": "0x1" - }, - "16615": { - "op": "PUSH1", - "value": "0x40" - }, - "16617": { - "op": "SHL" - }, - "16618": { - "op": "SUB" - }, - "16619": { - "op": "DUP1" - }, - "16620": { - "op": "DUP4" - }, - "16621": { - "op": "GT" - }, - "16622": { - "op": "ISZERO" - }, - "16623": { - "op": "PUSH2", - "value": "0x40F4" - }, - "16626": { - "op": "JUMPI" - }, - "16627": { - "op": "INVALID" - }, - "16628": { - "op": "JUMPDEST" - }, - "16629": { - "op": "PUSH2", - "value": "0x4101" - }, - "16632": { - "op": "DUP3" - }, - "16633": { - "op": "DUP4" - }, - "16634": { - "op": "DUP6" - }, - "16635": { - "op": "MUL" - }, - "16636": { - "op": "ADD" - }, - "16637": { - "op": "PUSH2", - "value": "0x4B51" - }, - "16640": { - "jump": "i", - "op": "JUMP" - }, - "16641": { - "op": "JUMPDEST" - }, - "16642": { - "op": "DUP4" - }, - "16643": { - "op": "DUP2" - }, - "16644": { - "op": "MSTORE" - }, - "16645": { - "op": "DUP3" - }, - "16646": { - "op": "DUP2" - }, - "16647": { - "op": "ADD" - }, - "16648": { - "op": "SWAP1" - }, - "16649": { - "op": "DUP7" - }, - "16650": { - "op": "DUP5" - }, - "16651": { - "op": "ADD" - }, - "16652": { - "op": "PUSH1", - "value": "0xC0" - }, - "16654": { - "op": "DUP1" - }, - "16655": { - "op": "DUP8" - }, - "16656": { - "op": "MUL" - }, - "16657": { - "op": "DUP10" - }, - "16658": { - "op": "ADD" - }, - "16659": { - "op": "DUP7" - }, - "16660": { - "op": "ADD" - }, - "16661": { - "op": "DUP11" - }, - "16662": { - "op": "LT" - }, - "16663": { - "op": "ISZERO" - }, - "16664": { - "op": "PUSH2", - "value": "0x411F" - }, - "16667": { - "op": "JUMPI" - }, - "16668": { - "op": "DUP8" - }, - "16669": { - "op": "DUP9" - }, - "16670": { - "op": "REVERT" - }, - "16671": { - "op": "JUMPDEST" - }, - "16672": { - "op": "DUP8" - }, - "16673": { - "op": "JUMPDEST" - }, - "16674": { - "op": "DUP8" - }, - "16675": { - "op": "DUP2" - }, - "16676": { - "op": "LT" - }, - "16677": { - "op": "ISZERO" - }, - "16678": { - "op": "PUSH2", - "value": "0x41A0" - }, - "16681": { - "op": "JUMPI" - }, - "16682": { - "op": "DUP2" - }, - "16683": { - "op": "DUP4" - }, - "16684": { - "op": "DUP13" - }, - "16685": { - "op": "SUB" - }, - "16686": { - "op": "SLT" - }, - "16687": { - "op": "ISZERO" - }, - "16688": { - "op": "PUSH2", - "value": "0x4137" - }, - "16691": { - "op": "JUMPI" - }, - "16692": { - "op": "DUP9" - }, - "16693": { - "op": "DUP10" - }, - "16694": { - "op": "REVERT" - }, - "16695": { - "op": "JUMPDEST" - }, - "16696": { - "op": "PUSH1", - "value": "0x40" - }, - "16698": { - "op": "DUP1" - }, - "16699": { - "op": "MLOAD" - }, - "16700": { - "op": "DUP4" - }, - "16701": { - "op": "DUP2" - }, - "16702": { - "op": "ADD" - }, - "16703": { - "op": "DUP2" - }, - "16704": { - "op": "DUP2" - }, - "16705": { - "op": "LT" - }, - "16706": { - "op": "DUP10" - }, - "16707": { - "op": "DUP3" - }, - "16708": { - "op": "GT" - }, - "16709": { - "op": "OR" - }, - "16710": { - "op": "ISZERO" - }, - "16711": { - "op": "PUSH2", - "value": "0x414C" - }, - "16714": { - "op": "JUMPI" - }, - "16715": { - "op": "INVALID" - }, - "16716": { - "op": "JUMPDEST" - }, - "16717": { - "op": "DUP3" - }, - "16718": { - "op": "MSTORE" - }, - "16719": { - "op": "DUP5" - }, - "16720": { - "op": "MLOAD" - }, - "16721": { - "op": "DUP2" - }, - "16722": { - "op": "MSTORE" - }, - "16723": { - "op": "DUP9" - }, - "16724": { - "op": "DUP6" - }, - "16725": { - "op": "ADD" - }, - "16726": { - "op": "MLOAD" - }, - "16727": { - "op": "DUP10" - }, - "16728": { - "op": "DUP3" - }, - "16729": { - "op": "ADD" - }, - "16730": { - "op": "MSTORE" - }, - "16731": { - "op": "DUP5" - }, - "16732": { - "op": "DUP3" - }, - "16733": { - "op": "ADD" - }, - "16734": { - "op": "MLOAD" - }, - "16735": { - "op": "SWAP2" - }, - "16736": { - "op": "DUP2" - }, - "16737": { - "op": "ADD" - }, - "16738": { - "op": "SWAP2" - }, - "16739": { - "op": "SWAP1" - }, - "16740": { - "op": "SWAP2" - }, - "16741": { - "op": "MSTORE" - }, - "16742": { - "op": "PUSH1", - "value": "0x60" - }, - "16744": { - "op": "DUP1" - }, - "16745": { - "op": "DUP6" - }, - "16746": { - "op": "ADD" - }, - "16747": { - "op": "MLOAD" - }, - "16748": { - "op": "SWAP1" - }, - "16749": { - "op": "DUP3" - }, - "16750": { - "op": "ADD" - }, - "16751": { - "op": "MSTORE" - }, - "16752": { - "op": "PUSH1", - "value": "0x80" - }, - "16754": { - "op": "DUP1" - }, - "16755": { - "op": "DUP6" - }, - "16756": { - "op": "ADD" - }, - "16757": { - "op": "MLOAD" - }, - "16758": { - "op": "SWAP1" - }, - "16759": { - "op": "DUP3" - }, - "16760": { - "op": "ADD" - }, - "16761": { - "op": "MSTORE" - }, - "16762": { - "op": "PUSH1", - "value": "0xA0" - }, - "16764": { - "op": "SWAP1" - }, - "16765": { - "op": "PUSH2", - "value": "0x4187" - }, - "16768": { - "op": "DUP3" - }, - "16769": { - "op": "DUP7" - }, - "16770": { - "op": "ADD" - }, - "16771": { - "op": "PUSH2", - "value": "0x41C7" - }, - "16774": { - "jump": "i", - "op": "JUMP" - }, - "16775": { - "op": "JUMPDEST" - }, - "16776": { - "op": "SWAP2" - }, - "16777": { - "op": "DUP2" - }, - "16778": { - "op": "ADD" - }, - "16779": { - "op": "SWAP2" - }, - "16780": { - "op": "SWAP1" - }, - "16781": { - "op": "SWAP2" - }, - "16782": { - "op": "MSTORE" - }, - "16783": { - "op": "DUP6" - }, - "16784": { - "op": "MSTORE" - }, - "16785": { - "op": "SWAP4" - }, - "16786": { - "op": "DUP7" - }, - "16787": { - "op": "ADD" - }, - "16788": { - "op": "SWAP4" - }, - "16789": { - "op": "SWAP2" - }, - "16790": { - "op": "DUP2" - }, - "16791": { - "op": "ADD" - }, - "16792": { - "op": "SWAP2" - }, - "16793": { - "op": "PUSH1", - "value": "0x1" - }, - "16795": { - "op": "ADD" - }, - "16796": { - "op": "PUSH2", - "value": "0x4121" - }, - "16799": { - "op": "JUMP" - }, - "16800": { - "op": "JUMPDEST" - }, - "16801": { - "op": "POP" - }, - "16802": { - "op": "SWAP2" - }, - "16803": { - "op": "SWAP10" - }, - "16804": { - "op": "SWAP9" - }, - "16805": { - "op": "POP" - }, - "16806": { - "op": "POP" - }, - "16807": { - "op": "POP" - }, - "16808": { - "op": "POP" - }, - "16809": { - "op": "POP" - }, - "16810": { - "op": "POP" - }, - "16811": { - "op": "POP" - }, - "16812": { - "op": "POP" - }, - "16813": { - "op": "POP" - }, - "16814": { - "jump": "o", - "op": "JUMP" - }, - "16815": { - "op": "JUMPDEST" - }, - "16816": { - "op": "DUP1" - }, - "16817": { - "op": "MLOAD" - }, - "16818": { - "op": "PUSH1", - "value": "0x1" - }, - "16820": { - "op": "PUSH1", - "value": "0x1" - }, - "16822": { - "op": "PUSH1", - "value": "0x70" - }, - "16824": { - "op": "SHL" - }, - "16825": { - "op": "SUB" - }, - "16826": { - "op": "NOT" - }, - "16827": { - "op": "DUP2" - }, - "16828": { - "op": "AND" - }, - "16829": { - "op": "DUP2" - }, - "16830": { - "op": "EQ" - }, - "16831": { - "op": "PUSH2", - "value": "0xBE2" - }, - "16834": { - "op": "JUMPI" - }, - "16835": { - "op": "PUSH1", - "value": "0x0" - }, - "16837": { - "op": "DUP1" - }, - "16838": { - "op": "REVERT" - }, - "16839": { - "op": "JUMPDEST" - }, - "16840": { - "op": "DUP1" - }, - "16841": { - "op": "MLOAD" - }, - "16842": { - "op": "PUSH1", - "value": "0x4" - }, - "16844": { - "op": "DUP2" - }, - "16845": { - "op": "LT" - }, - "16846": { - "op": "PUSH2", - "value": "0xBE2" - }, - "16849": { - "op": "JUMPI" - }, - "16850": { - "op": "PUSH1", - "value": "0x0" - }, - "16852": { - "op": "DUP1" - }, - "16853": { - "op": "REVERT" - }, - "16854": { - "op": "JUMPDEST" - }, - "16855": { - "op": "DUP1" - }, - "16856": { - "op": "MLOAD" - }, - "16857": { - "op": "PUSH2", - "value": "0xBE2" - }, - "16860": { - "op": "DUP2" - }, - "16861": { - "op": "PUSH2", - "value": "0x4B85" - }, - "16864": { - "jump": "i", - "op": "JUMP" - }, - "16865": { - "op": "JUMPDEST" - }, - "16866": { - "op": "DUP1" - }, - "16867": { - "op": "MLOAD" - }, - "16868": { - "op": "PUSH1", - "value": "0xFF" - }, - "16870": { - "op": "DUP2" - }, - "16871": { - "op": "AND" - }, - "16872": { - "op": "DUP2" - }, - "16873": { - "op": "EQ" - }, - "16874": { - "op": "PUSH2", - "value": "0xBE2" - }, - "16877": { - "op": "JUMPI" - }, - "16878": { - "op": "PUSH1", - "value": "0x0" - }, - "16880": { - "op": "DUP1" - }, - "16881": { - "op": "REVERT" - }, - "16882": { - "op": "JUMPDEST" - }, - "16883": { - "op": "PUSH1", - "value": "0x0" - }, - "16885": { - "op": "DUP1" - }, - "16886": { - "op": "PUSH1", - "value": "0x0" - }, - "16888": { - "op": "PUSH1", - "value": "0x40" - }, - "16890": { - "op": "DUP5" - }, - "16891": { - "op": "DUP7" - }, - "16892": { - "op": "SUB" - }, - "16893": { - "op": "SLT" - }, - "16894": { - "op": "ISZERO" - }, - "16895": { - "op": "PUSH2", - "value": "0x4206" - }, - "16898": { - "op": "JUMPI" - }, - "16899": { - "op": "DUP3" - }, - "16900": { - "op": "DUP4" - }, - "16901": { - "op": "REVERT" - }, - "16902": { - "op": "JUMPDEST" - }, - "16903": { - "op": "PUSH2", - "value": "0x420F" - }, - "16906": { - "op": "DUP5" - }, - "16907": { - "op": "PUSH2", - "value": "0x406F" - }, - "16910": { - "jump": "i", - "op": "JUMP" - }, - "16911": { - "op": "JUMPDEST" - }, - "16912": { - "op": "SWAP3" - }, - "16913": { - "op": "POP" - }, - "16914": { - "op": "PUSH1", - "value": "0x20" - }, - "16916": { - "op": "DUP5" - }, - "16917": { - "op": "ADD" - }, - "16918": { - "op": "CALLDATALOAD" - }, - "16919": { - "op": "PUSH1", - "value": "0x1" - }, - "16921": { - "op": "PUSH1", - "value": "0x1" - }, - "16923": { - "op": "PUSH1", - "value": "0x40" - }, - "16925": { - "op": "SHL" - }, - "16926": { - "op": "SUB" - }, - "16927": { - "op": "DUP2" - }, - "16928": { - "op": "GT" - }, - "16929": { - "op": "ISZERO" - }, - "16930": { - "op": "PUSH2", - "value": "0x4229" - }, - "16933": { - "op": "JUMPI" - }, - "16934": { - "op": "DUP3" - }, - "16935": { - "op": "DUP4" - }, - "16936": { - "op": "REVERT" - }, - "16937": { - "op": "JUMPDEST" - }, - "16938": { - "op": "PUSH2", - "value": "0x4235" - }, - "16941": { - "op": "DUP7" - }, - "16942": { - "op": "DUP3" - }, - "16943": { - "op": "DUP8" - }, - "16944": { - "op": "ADD" - }, - "16945": { - "op": "PUSH2", - "value": "0x4086" - }, - "16948": { - "jump": "i", - "op": "JUMP" - }, - "16949": { - "op": "JUMPDEST" - }, - "16950": { - "op": "SWAP5" - }, - "16951": { - "op": "SWAP8" - }, - "16952": { - "op": "SWAP1" - }, - "16953": { - "op": "SWAP7" - }, - "16954": { - "op": "POP" - }, - "16955": { - "op": "SWAP4" - }, - "16956": { - "op": "SWAP5" - }, - "16957": { - "op": "POP" - }, - "16958": { - "op": "POP" - }, - "16959": { - "op": "POP" - }, - "16960": { - "op": "POP" - }, - "16961": { - "jump": "o", - "op": "JUMP" - }, - "16962": { - "op": "JUMPDEST" - }, - "16963": { - "op": "PUSH1", - "value": "0x0" - }, - "16965": { - "op": "DUP1" - }, - "16966": { - "op": "PUSH1", - "value": "0x0" - }, - "16968": { - "op": "DUP1" - }, - "16969": { - "op": "PUSH1", - "value": "0x0" - }, - "16971": { - "op": "PUSH1", - "value": "0x60" - }, - "16973": { - "op": "DUP7" - }, - "16974": { - "op": "DUP9" - }, - "16975": { - "op": "SUB" - }, - "16976": { - "op": "SLT" - }, - "16977": { - "op": "ISZERO" - }, - "16978": { - "op": "PUSH2", - "value": "0x4259" - }, - "16981": { - "op": "JUMPI" - }, - "16982": { - "op": "DUP1" - }, - "16983": { - "op": "DUP2" - }, - "16984": { - "op": "REVERT" - }, - "16985": { - "op": "JUMPDEST" - }, - "16986": { - "op": "PUSH2", - "value": "0x4262" - }, - "16989": { - "op": "DUP7" - }, - "16990": { - "op": "PUSH2", - "value": "0x406F" - }, - "16993": { - "jump": "i", - "op": "JUMP" - }, - "16994": { - "op": "JUMPDEST" - }, - "16995": { - "op": "SWAP5" - }, - "16996": { - "op": "POP" - }, - "16997": { - "op": "PUSH1", - "value": "0x20" - }, - "16999": { - "op": "DUP7" - }, - "17000": { - "op": "ADD" - }, - "17001": { - "op": "CALLDATALOAD" - }, - "17002": { - "op": "PUSH1", - "value": "0x1" - }, - "17004": { - "op": "PUSH1", - "value": "0x1" - }, - "17006": { - "op": "PUSH1", - "value": "0x40" - }, - "17008": { - "op": "SHL" - }, - "17009": { - "op": "SUB" - }, - "17010": { - "op": "DUP1" - }, - "17011": { - "op": "DUP3" - }, - "17012": { - "op": "GT" - }, - "17013": { - "op": "ISZERO" - }, - "17014": { - "op": "PUSH2", - "value": "0x427D" - }, - "17017": { - "op": "JUMPI" - }, - "17018": { - "op": "DUP3" - }, - "17019": { - "op": "DUP4" - }, - "17020": { - "op": "REVERT" - }, - "17021": { - "op": "JUMPDEST" - }, - "17022": { - "op": "PUSH2", - "value": "0x4289" - }, - "17025": { - "op": "DUP10" - }, - "17026": { - "op": "DUP4" - }, - "17027": { - "op": "DUP11" - }, - "17028": { - "op": "ADD" - }, - "17029": { - "op": "PUSH2", - "value": "0x4086" - }, - "17032": { - "jump": "i", - "op": "JUMP" - }, - "17033": { - "op": "JUMPDEST" - }, - "17034": { - "op": "SWAP1" - }, - "17035": { - "op": "SWAP7" - }, - "17036": { - "op": "POP" - }, - "17037": { - "op": "SWAP5" - }, - "17038": { - "op": "POP" - }, - "17039": { - "op": "PUSH1", - "value": "0x40" - }, - "17041": { - "op": "DUP9" - }, - "17042": { - "op": "ADD" - }, - "17043": { - "op": "CALLDATALOAD" - }, - "17044": { - "op": "SWAP2" - }, - "17045": { - "op": "POP" - }, - "17046": { - "op": "DUP1" - }, - "17047": { - "op": "DUP3" - }, - "17048": { - "op": "GT" - }, - "17049": { - "op": "ISZERO" - }, - "17050": { - "op": "PUSH2", - "value": "0x42A1" - }, - "17053": { - "op": "JUMPI" - }, - "17054": { - "op": "DUP3" - }, - "17055": { - "op": "DUP4" - }, - "17056": { - "op": "REVERT" - }, - "17057": { - "op": "JUMPDEST" - }, - "17058": { - "op": "DUP2" - }, - "17059": { - "op": "DUP9" - }, - "17060": { - "op": "ADD" - }, - "17061": { - "op": "SWAP2" - }, - "17062": { - "op": "POP" - }, - "17063": { - "op": "DUP9" - }, - "17064": { - "op": "PUSH1", - "value": "0x1F" - }, - "17066": { - "op": "DUP4" - }, - "17067": { - "op": "ADD" - }, - "17068": { - "op": "SLT" - }, - "17069": { - "op": "PUSH2", - "value": "0x42B4" - }, - "17072": { - "op": "JUMPI" - }, - "17073": { - "op": "DUP3" - }, - "17074": { - "op": "DUP4" - }, - "17075": { - "op": "REVERT" - }, - "17076": { - "op": "JUMPDEST" - }, - "17077": { - "op": "DUP2" - }, - "17078": { - "op": "CALLDATALOAD" - }, - "17079": { - "op": "DUP2" - }, - "17080": { - "op": "DUP2" - }, - "17081": { - "op": "GT" - }, - "17082": { - "op": "ISZERO" - }, - "17083": { - "op": "PUSH2", - "value": "0x42C2" - }, - "17086": { - "op": "JUMPI" - }, - "17087": { - "op": "DUP4" - }, - "17088": { - "op": "DUP5" - }, - "17089": { - "op": "REVERT" - }, - "17090": { - "op": "JUMPDEST" - }, - "17091": { - "op": "DUP10" - }, - "17092": { - "op": "PUSH1", - "value": "0x20" - }, - "17094": { - "op": "DUP3" - }, - "17095": { - "op": "DUP6" - }, - "17096": { - "op": "ADD" - }, - "17097": { - "op": "ADD" - }, - "17098": { - "op": "GT" - }, - "17099": { - "op": "ISZERO" - }, - "17100": { - "op": "PUSH2", - "value": "0x42D3" - }, - "17103": { - "op": "JUMPI" - }, - "17104": { - "op": "DUP4" - }, - "17105": { - "op": "DUP5" - }, - "17106": { - "op": "REVERT" - }, - "17107": { - "op": "JUMPDEST" - }, - "17108": { - "op": "SWAP7" - }, - "17109": { - "op": "SWAP10" - }, - "17110": { - "op": "SWAP6" - }, - "17111": { - "op": "SWAP9" - }, - "17112": { - "op": "POP" - }, - "17113": { - "op": "SWAP4" - }, - "17114": { - "op": "SWAP7" - }, - "17115": { - "op": "POP" - }, - "17116": { - "op": "PUSH1", - "value": "0x20" - }, - "17118": { - "op": "ADD" - }, - "17119": { - "op": "SWAP5" - }, - "17120": { - "op": "SWAP4" - }, - "17121": { - "op": "SWAP3" - }, - "17122": { - "op": "POP" - }, - "17123": { - "op": "POP" - }, - "17124": { - "op": "POP" - }, - "17125": { - "jump": "o", - "op": "JUMP" - }, - "17126": { - "op": "JUMPDEST" - }, - "17127": { - "op": "PUSH1", - "value": "0x0" - }, - "17129": { - "op": "DUP1" - }, - "17130": { - "op": "PUSH1", - "value": "0x0" - }, - "17132": { - "op": "PUSH1", - "value": "0x40" - }, - "17134": { - "op": "DUP5" - }, - "17135": { - "op": "DUP7" - }, - "17136": { - "op": "SUB" - }, - "17137": { - "op": "SLT" - }, - "17138": { - "op": "ISZERO" - }, - "17139": { - "op": "PUSH2", - "value": "0x42FA" - }, - "17142": { - "op": "JUMPI" - }, - "17143": { - "op": "DUP3" - }, - "17144": { - "op": "DUP4" - }, - "17145": { - "op": "REVERT" - }, - "17146": { - "op": "JUMPDEST" - }, - "17147": { - "op": "PUSH2", - "value": "0x4303" - }, - "17150": { - "op": "DUP5" - }, - "17151": { - "op": "PUSH2", - "value": "0x406F" - }, - "17154": { - "jump": "i", - "op": "JUMP" - }, - "17155": { - "op": "JUMPDEST" - }, - "17156": { - "op": "SWAP3" - }, - "17157": { - "op": "POP" - }, - "17158": { - "op": "PUSH1", - "value": "0x20" - }, - "17160": { - "op": "DUP5" - }, - "17161": { - "op": "ADD" - }, - "17162": { - "op": "CALLDATALOAD" - }, - "17163": { - "op": "PUSH1", - "value": "0x1" - }, - "17165": { - "op": "PUSH1", - "value": "0x1" - }, - "17167": { - "op": "PUSH1", - "value": "0x40" - }, - "17169": { - "op": "SHL" - }, - "17170": { - "op": "SUB" - }, - "17171": { - "op": "DUP1" - }, - "17172": { - "op": "DUP3" - }, - "17173": { - "op": "GT" - }, - "17174": { - "op": "ISZERO" - }, - "17175": { - "op": "PUSH2", - "value": "0x431E" - }, - "17178": { - "op": "JUMPI" - }, - "17179": { - "op": "DUP4" - }, - "17180": { - "op": "DUP5" - }, - "17181": { - "op": "REVERT" - }, - "17182": { - "op": "JUMPDEST" - }, - "17183": { - "op": "DUP2" - }, - "17184": { - "op": "DUP7" - }, - "17185": { - "op": "ADD" - }, - "17186": { - "op": "SWAP2" - }, - "17187": { - "op": "POP" - }, - "17188": { - "op": "DUP7" - }, - "17189": { - "op": "PUSH1", - "value": "0x1F" - }, - "17191": { - "op": "DUP4" - }, - "17192": { - "op": "ADD" - }, - "17193": { - "op": "SLT" - }, - "17194": { - "op": "PUSH2", - "value": "0x4331" - }, - "17197": { - "op": "JUMPI" - }, - "17198": { - "op": "DUP4" - }, - "17199": { - "op": "DUP5" - }, - "17200": { - "op": "REVERT" - }, - "17201": { - "op": "JUMPDEST" - }, - "17202": { - "op": "DUP2" - }, - "17203": { - "op": "CALLDATALOAD" - }, - "17204": { - "op": "DUP2" - }, - "17205": { - "op": "DUP2" - }, - "17206": { - "op": "GT" - }, - "17207": { - "op": "ISZERO" - }, - "17208": { - "op": "PUSH2", - "value": "0x433F" - }, - "17211": { - "op": "JUMPI" - }, - "17212": { - "op": "DUP5" - }, - "17213": { - "op": "DUP6" - }, - "17214": { - "op": "REVERT" - }, - "17215": { - "op": "JUMPDEST" - }, - "17216": { - "op": "DUP8" - }, - "17217": { - "op": "PUSH1", - "value": "0x20" - }, - "17219": { - "op": "PUSH1", - "value": "0xC0" - }, - "17221": { - "op": "DUP4" - }, - "17222": { - "op": "MUL" - }, - "17223": { - "op": "DUP6" - }, - "17224": { - "op": "ADD" - }, - "17225": { - "op": "ADD" - }, - "17226": { - "op": "GT" - }, - "17227": { - "op": "ISZERO" - }, - "17228": { - "op": "PUSH2", - "value": "0x4353" - }, - "17231": { - "op": "JUMPI" - }, - "17232": { - "op": "DUP5" - }, - "17233": { - "op": "DUP6" - }, - "17234": { - "op": "REVERT" - }, - "17235": { - "op": "JUMPDEST" - }, - "17236": { - "op": "PUSH1", - "value": "0x20" - }, - "17238": { - "op": "DUP4" - }, - "17239": { - "op": "ADD" - }, - "17240": { - "op": "SWAP5" - }, - "17241": { - "op": "POP" - }, - "17242": { - "op": "DUP1" - }, - "17243": { - "op": "SWAP4" - }, - "17244": { - "op": "POP" - }, - "17245": { - "op": "POP" - }, - "17246": { - "op": "POP" - }, - "17247": { - "op": "POP" - }, - "17248": { - "op": "SWAP3" - }, - "17249": { - "op": "POP" - }, - "17250": { - "op": "SWAP3" - }, - "17251": { - "op": "POP" - }, - "17252": { - "op": "SWAP3" - }, - "17253": { - "jump": "o", - "op": "JUMP" - }, - "17254": { - "op": "JUMPDEST" - }, - "17255": { - "op": "PUSH1", - "value": "0x0" - }, - "17257": { - "op": "DUP1" - }, - "17258": { - "op": "PUSH1", - "value": "0x0" - }, - "17260": { - "op": "PUSH1", - "value": "0x40" - }, - "17262": { - "op": "DUP5" - }, - "17263": { - "op": "DUP7" - }, - "17264": { - "op": "SUB" - }, - "17265": { - "op": "SLT" - }, - "17266": { - "op": "ISZERO" - }, - "17267": { - "op": "PUSH2", - "value": "0x437A" - }, - "17270": { - "op": "JUMPI" - }, - "17271": { - "op": "DUP1" - }, - "17272": { - "op": "DUP2" - }, - "17273": { - "op": "REVERT" - }, - "17274": { - "op": "JUMPDEST" - }, - "17275": { - "op": "PUSH2", - "value": "0x4383" - }, - "17278": { - "op": "DUP5" - }, - "17279": { - "op": "PUSH2", - "value": "0x406F" - }, - "17282": { - "jump": "i", - "op": "JUMP" - }, - "17283": { - "op": "JUMPDEST" - }, - "17284": { - "op": "SWAP3" - }, - "17285": { - "op": "POP" - }, - "17286": { - "op": "PUSH1", - "value": "0x20" - }, - "17288": { - "op": "DUP5" - }, - "17289": { - "op": "ADD" - }, - "17290": { - "op": "CALLDATALOAD" - }, - "17291": { - "op": "PUSH1", - "value": "0x1" - }, - "17293": { - "op": "PUSH1", - "value": "0x1" - }, - "17295": { - "op": "PUSH1", - "value": "0x40" - }, - "17297": { - "op": "SHL" - }, - "17298": { - "op": "SUB" - }, - "17299": { - "op": "DUP2" - }, - "17300": { - "op": "GT" - }, - "17301": { - "op": "ISZERO" - }, - "17302": { - "op": "PUSH2", - "value": "0x4229" - }, - "17305": { - "op": "JUMPI" - }, - "17306": { - "op": "DUP2" - }, - "17307": { - "op": "DUP3" - }, - "17308": { - "op": "REVERT" - }, - "17309": { - "op": "JUMPDEST" - }, - "17310": { - "op": "PUSH1", - "value": "0x0" - }, - "17312": { - "op": "PUSH1", - "value": "0x20" - }, - "17314": { - "op": "DUP3" - }, - "17315": { - "op": "DUP5" - }, - "17316": { - "op": "SUB" - }, - "17317": { - "op": "SLT" - }, - "17318": { - "op": "ISZERO" - }, - "17319": { - "op": "PUSH2", - "value": "0x43AE" - }, - "17322": { - "op": "JUMPI" - }, - "17323": { - "op": "DUP1" - }, - "17324": { - "op": "DUP2" - }, - "17325": { - "op": "REVERT" - }, - "17326": { - "op": "JUMPDEST" - }, - "17327": { - "op": "DUP2" - }, - "17328": { - "op": "CALLDATALOAD" - }, - "17329": { - "op": "PUSH2", - "value": "0xAA3" - }, - "17332": { - "op": "DUP2" - }, - "17333": { - "op": "PUSH2", - "value": "0x4B74" - }, - "17336": { - "jump": "i", - "op": "JUMP" - }, - "17337": { - "op": "JUMPDEST" - }, - "17338": { - "op": "PUSH1", - "value": "0x0" - }, - "17340": { - "op": "PUSH1", - "value": "0x20" - }, - "17342": { - "op": "DUP3" - }, - "17343": { - "op": "DUP5" - }, - "17344": { - "op": "SUB" - }, - "17345": { - "op": "SLT" - }, - "17346": { - "op": "ISZERO" - }, - "17347": { - "op": "PUSH2", - "value": "0x43CA" - }, - "17350": { - "op": "JUMPI" - }, - "17351": { - "op": "DUP1" - }, - "17352": { - "op": "DUP2" - }, - "17353": { - "op": "REVERT" - }, - "17354": { - "op": "JUMPDEST" - }, - "17355": { - "op": "DUP2" - }, - "17356": { - "op": "CALLDATALOAD" - }, - "17357": { - "op": "PUSH1", - "value": "0x7" - }, - "17359": { - "op": "DUP2" - }, - "17360": { - "op": "LT" - }, - "17361": { - "op": "PUSH2", - "value": "0xAA3" - }, - "17364": { - "op": "JUMPI" - }, - "17365": { - "op": "DUP2" - }, - "17366": { - "op": "DUP3" - }, - "17367": { - "op": "REVERT" - }, - "17368": { - "op": "JUMPDEST" - }, - "17369": { - "op": "PUSH1", - "value": "0x0" - }, - "17371": { - "op": "PUSH1", - "value": "0x20" - }, - "17373": { - "op": "DUP3" - }, - "17374": { - "op": "DUP5" - }, - "17375": { - "op": "SUB" - }, - "17376": { - "op": "SLT" - }, - "17377": { - "op": "ISZERO" - }, - "17378": { - "op": "PUSH2", - "value": "0x43E9" - }, - "17381": { - "op": "JUMPI" - }, - "17382": { - "op": "DUP1" - }, - "17383": { - "op": "DUP2" - }, - "17384": { - "op": "REVERT" - }, - "17385": { - "op": "JUMPDEST" - }, - "17386": { - "op": "POP" - }, - "17387": { - "op": "MLOAD" - }, - "17388": { - "op": "SWAP2" - }, - "17389": { - "op": "SWAP1" - }, - "17390": { - "op": "POP" - }, - "17391": { - "jump": "o", - "op": "JUMP" - }, - "17392": { - "op": "JUMPDEST" - }, - "17393": { - "op": "PUSH1", - "value": "0x0" - }, - "17395": { - "op": "DUP1" - }, - "17396": { - "op": "PUSH1", - "value": "0x40" - }, - "17398": { - "op": "DUP4" - }, - "17399": { - "op": "DUP6" - }, - "17400": { - "op": "SUB" - }, - "17401": { - "op": "SLT" - }, - "17402": { - "op": "ISZERO" - }, - "17403": { - "op": "PUSH2", - "value": "0x4402" - }, - "17406": { - "op": "JUMPI" - }, - "17407": { - "op": "DUP2" - }, - "17408": { - "op": "DUP3" - }, - "17409": { - "op": "REVERT" - }, - "17410": { - "op": "JUMPDEST" - }, - "17411": { - "op": "DUP3" - }, - "17412": { - "op": "MLOAD" - }, - "17413": { - "op": "SWAP2" - }, - "17414": { - "op": "POP" - }, - "17415": { - "op": "PUSH1", - "value": "0x20" - }, - "17417": { - "op": "DUP4" - }, - "17418": { - "op": "ADD" - }, - "17419": { - "op": "MLOAD" - }, - "17420": { - "op": "PUSH2", - "value": "0x4414" - }, - "17423": { - "op": "DUP2" - }, - "17424": { - "op": "PUSH2", - "value": "0x4B74" - }, - "17427": { - "jump": "i", - "op": "JUMP" - }, - "17428": { - "op": "JUMPDEST" - }, - "17429": { - "op": "DUP1" - }, - "17430": { - "op": "SWAP2" - }, - "17431": { - "op": "POP" - }, - "17432": { - "op": "POP" - }, - "17433": { - "op": "SWAP3" - }, - "17434": { - "op": "POP" - }, - "17435": { - "op": "SWAP3" - }, - "17436": { - "op": "SWAP1" - }, - "17437": { - "op": "POP" - }, - "17438": { - "jump": "o", - "op": "JUMP" - }, - "17439": { - "op": "JUMPDEST" - }, - "17440": { - "op": "PUSH1", - "value": "0x0" - }, - "17442": { - "op": "PUSH1", - "value": "0xA0" - }, - "17444": { - "op": "DUP3" - }, - "17445": { - "op": "DUP5" - }, - "17446": { - "op": "SUB" - }, - "17447": { - "op": "SLT" - }, - "17448": { - "op": "ISZERO" - }, - "17449": { - "op": "PUSH2", - "value": "0x4430" - }, - "17452": { - "op": "JUMPI" - }, - "17453": { - "op": "DUP1" - }, - "17454": { - "op": "DUP2" - }, - "17455": { - "op": "REVERT" - }, - "17456": { - "op": "JUMPDEST" - }, - "17457": { - "op": "PUSH1", - "value": "0x40" - }, - "17459": { - "op": "MLOAD" - }, - "17460": { - "op": "PUSH1", - "value": "0xA0" - }, - "17462": { - "op": "DUP2" - }, - "17463": { - "op": "ADD" - }, - "17464": { - "op": "DUP2" - }, - "17465": { - "op": "DUP2" - }, - "17466": { - "op": "LT" - }, - "17467": { - "op": "PUSH1", - "value": "0x1" - }, - "17469": { - "op": "PUSH1", - "value": "0x1" - }, - "17471": { - "op": "PUSH1", - "value": "0x40" - }, - "17473": { - "op": "SHL" - }, - "17474": { - "op": "SUB" - }, - "17475": { - "op": "DUP3" - }, - "17476": { - "op": "GT" - }, - "17477": { - "op": "OR" - }, - "17478": { - "op": "ISZERO" - }, - "17479": { - "op": "PUSH2", - "value": "0x444C" - }, - "17482": { - "op": "JUMPI" - }, - "17483": { - "op": "INVALID" - }, - "17484": { - "op": "JUMPDEST" - }, - "17485": { - "op": "PUSH1", - "value": "0x40" - }, - "17487": { - "op": "MSTORE" - }, - "17488": { - "op": "DUP3" - }, - "17489": { - "op": "MLOAD" - }, - "17490": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "17496": { - "op": "DUP2" - }, - "17497": { - "op": "AND" - }, - "17498": { - "op": "DUP2" - }, - "17499": { - "op": "EQ" - }, - "17500": { - "op": "PUSH2", - "value": "0x4463" - }, - "17503": { - "op": "JUMPI" - }, - "17504": { - "op": "DUP3" - }, - "17505": { - "op": "DUP4" - }, - "17506": { - "op": "REVERT" - }, - "17507": { - "op": "JUMPDEST" - }, - "17508": { - "op": "DUP2" - }, - "17509": { - "op": "MSTORE" - }, - "17510": { - "op": "PUSH1", - "value": "0x20" - }, - "17512": { - "op": "DUP4" - }, - "17513": { - "op": "ADD" - }, - "17514": { - "op": "MLOAD" - }, - "17515": { - "op": "PUSH1", - "value": "0x1" - }, - "17517": { - "op": "PUSH1", - "value": "0x1" - }, - "17519": { - "op": "PUSH1", - "value": "0xF8" - }, - "17521": { - "op": "SHL" - }, - "17522": { - "op": "SUB" - }, - "17523": { - "op": "NOT" - }, - "17524": { - "op": "DUP2" - }, - "17525": { - "op": "AND" - }, - "17526": { - "op": "DUP2" - }, - "17527": { - "op": "EQ" - }, - "17528": { - "op": "PUSH2", - "value": "0x447F" - }, - "17531": { - "op": "JUMPI" - }, - "17532": { - "op": "DUP3" - }, - "17533": { - "op": "DUP4" - }, - "17534": { - "op": "REVERT" - }, - "17535": { - "op": "JUMPDEST" - }, - "17536": { - "op": "PUSH1", - "value": "0x20" - }, - "17538": { - "op": "DUP3" - }, - "17539": { - "op": "ADD" - }, - "17540": { - "op": "MSTORE" - }, - "17541": { - "op": "PUSH2", - "value": "0x4490" - }, - "17544": { - "op": "PUSH1", - "value": "0x40" - }, - "17546": { - "op": "DUP5" - }, - "17547": { - "op": "ADD" - }, - "17548": { - "op": "PUSH2", - "value": "0x41E1" - }, - "17551": { - "jump": "i", - "op": "JUMP" - }, - "17552": { - "op": "JUMPDEST" - }, - "17553": { - "op": "PUSH1", - "value": "0x40" - }, - "17555": { - "op": "DUP3" - }, - "17556": { - "op": "ADD" - }, - "17557": { - "op": "MSTORE" - }, - "17558": { - "op": "PUSH2", - "value": "0x44A1" - }, - "17561": { - "op": "PUSH1", - "value": "0x60" - }, - "17563": { - "op": "DUP5" - }, - "17564": { - "op": "ADD" - }, - "17565": { - "op": "PUSH2", - "value": "0x41D6" - }, - "17568": { - "jump": "i", - "op": "JUMP" - }, - "17569": { - "op": "JUMPDEST" - }, - "17570": { - "op": "PUSH1", - "value": "0x60" - }, - "17572": { - "op": "DUP3" - }, - "17573": { - "op": "ADD" - }, - "17574": { - "op": "MSTORE" - }, - "17575": { - "op": "PUSH2", - "value": "0x44B2" - }, - "17578": { - "op": "PUSH1", - "value": "0x80" - }, - "17580": { - "op": "DUP5" - }, - "17581": { - "op": "ADD" - }, - "17582": { - "op": "PUSH2", - "value": "0x41AF" - }, - "17585": { - "jump": "i", - "op": "JUMP" - }, - "17586": { - "op": "JUMPDEST" - }, - "17587": { - "op": "PUSH1", - "value": "0x80" - }, - "17589": { - "op": "DUP3" - }, - "17590": { - "op": "ADD" - }, - "17591": { - "op": "MSTORE" - }, - "17592": { - "op": "SWAP4" - }, - "17593": { - "op": "SWAP3" - }, - "17594": { - "op": "POP" - }, - "17595": { - "op": "POP" - }, - "17596": { - "op": "POP" - }, - "17597": { - "jump": "o", - "op": "JUMP" - }, - "17598": { - "op": "JUMPDEST" - }, - "17599": { - "op": "PUSH1", - "value": "0x0" - }, - "17601": { - "op": "DUP1" - }, - "17602": { - "op": "PUSH1", - "value": "0x40" - }, - "17604": { - "op": "DUP4" - }, - "17605": { - "op": "DUP6" - }, - "17606": { - "op": "SUB" - }, - "17607": { - "op": "SLT" - }, - "17608": { - "op": "ISZERO" - }, - "17609": { - "op": "PUSH2", - "value": "0x44D0" - }, - "17612": { - "op": "JUMPI" - }, - "17613": { - "op": "DUP2" - }, - "17614": { - "op": "DUP3" - }, - "17615": { - "op": "REVERT" - }, - "17616": { - "op": "JUMPDEST" - }, - "17617": { - "op": "DUP3" - }, - "17618": { - "op": "MLOAD" - }, - "17619": { - "op": "PUSH1", - "value": "0x1" - }, - "17621": { - "op": "PUSH1", - "value": "0x1" - }, - "17623": { - "op": "PUSH1", - "value": "0x40" - }, - "17625": { - "op": "SHL" - }, - "17626": { - "op": "SUB" - }, - "17627": { - "op": "DUP1" - }, - "17628": { - "op": "DUP3" - }, - "17629": { - "op": "GT" - }, - "17630": { - "op": "ISZERO" - }, - "17631": { - "op": "PUSH2", - "value": "0x44E6" - }, - "17634": { - "op": "JUMPI" - }, - "17635": { - "op": "DUP4" - }, - "17636": { - "op": "DUP5" - }, - "17637": { - "op": "REVERT" - }, - "17638": { - "op": "JUMPDEST" - }, - "17639": { - "op": "SWAP1" - }, - "17640": { - "op": "DUP5" - }, - "17641": { - "op": "ADD" - }, - "17642": { - "op": "SWAP1" - }, - "17643": { - "op": "PUSH1", - "value": "0x80" - }, - "17645": { - "op": "DUP3" - }, - "17646": { - "op": "DUP8" - }, - "17647": { - "op": "SUB" - }, - "17648": { - "op": "SLT" - }, - "17649": { - "op": "ISZERO" - }, - "17650": { - "op": "PUSH2", - "value": "0x44F9" - }, - "17653": { - "op": "JUMPI" - }, - "17654": { - "op": "DUP4" - }, - "17655": { - "op": "DUP5" - }, - "17656": { - "op": "REVERT" - }, - "17657": { - "op": "JUMPDEST" - }, - "17658": { - "op": "PUSH1", - "value": "0x40" - }, - "17660": { - "op": "MLOAD" - }, - "17661": { - "op": "PUSH1", - "value": "0x80" - }, - "17663": { - "op": "DUP2" - }, - "17664": { - "op": "ADD" - }, - "17665": { - "op": "DUP2" - }, - "17666": { - "op": "DUP2" - }, - "17667": { - "op": "LT" - }, - "17668": { - "op": "DUP4" - }, - "17669": { - "op": "DUP3" - }, - "17670": { - "op": "GT" - }, - "17671": { - "op": "OR" - }, - "17672": { - "op": "ISZERO" - }, - "17673": { - "op": "PUSH2", - "value": "0x450E" - }, - "17676": { - "op": "JUMPI" - }, - "17677": { - "op": "INVALID" - }, - "17678": { - "op": "JUMPDEST" - }, - "17679": { - "op": "PUSH1", - "value": "0x40" - }, - "17681": { - "op": "MSTORE" - }, - "17682": { - "op": "DUP3" - }, - "17683": { - "op": "MLOAD" - }, - "17684": { - "op": "DUP3" - }, - "17685": { - "op": "DUP2" - }, - "17686": { - "op": "GT" - }, - "17687": { - "op": "ISZERO" - }, - "17688": { - "op": "PUSH2", - "value": "0x451F" - }, - "17691": { - "op": "JUMPI" - }, - "17692": { - "op": "DUP6" - }, - "17693": { - "op": "DUP7" - }, - "17694": { - "op": "REVERT" - }, - "17695": { - "op": "JUMPDEST" - }, - "17696": { - "op": "PUSH2", - "value": "0x452B" - }, - "17699": { - "op": "DUP9" - }, - "17700": { - "op": "DUP3" - }, - "17701": { - "op": "DUP7" - }, - "17702": { - "op": "ADD" - }, - "17703": { - "op": "PUSH2", - "value": "0x40CE" - }, - "17706": { - "jump": "i", - "op": "JUMP" - }, - "17707": { - "op": "JUMPDEST" - }, - "17708": { - "op": "DUP3" - }, - "17709": { - "op": "MSTORE" - }, - "17710": { - "op": "POP" - }, - "17711": { - "op": "PUSH1", - "value": "0x20" - }, - "17713": { - "op": "DUP4" - }, - "17714": { - "op": "ADD" - }, - "17715": { - "op": "MLOAD" - }, - "17716": { - "op": "DUP3" - }, - "17717": { - "op": "DUP2" - }, - "17718": { - "op": "GT" - }, - "17719": { - "op": "ISZERO" - }, - "17720": { - "op": "PUSH2", - "value": "0x453F" - }, - "17723": { - "op": "JUMPI" - }, - "17724": { - "op": "DUP6" - }, - "17725": { - "op": "DUP7" - }, - "17726": { - "op": "REVERT" - }, - "17727": { - "op": "JUMPDEST" - }, - "17728": { - "op": "PUSH2", - "value": "0x454B" - }, - "17731": { - "op": "DUP9" - }, - "17732": { - "op": "DUP3" - }, - "17733": { - "op": "DUP7" - }, - "17734": { - "op": "ADD" - }, - "17735": { - "op": "PUSH2", - "value": "0x40CE" - }, - "17738": { - "jump": "i", - "op": "JUMP" - }, - "17739": { - "op": "JUMPDEST" - }, - "17740": { - "op": "PUSH1", - "value": "0x20" - }, - "17742": { - "op": "DUP4" - }, - "17743": { - "op": "ADD" - }, - "17744": { - "op": "MSTORE" - }, - "17745": { - "op": "POP" - }, - "17746": { - "op": "PUSH1", - "value": "0x40" - }, - "17748": { - "op": "DUP4" - }, - "17749": { - "op": "ADD" - }, - "17750": { - "op": "MLOAD" - }, - "17751": { - "op": "PUSH1", - "value": "0x40" - }, - "17753": { - "op": "DUP3" - }, - "17754": { - "op": "ADD" - }, - "17755": { - "op": "MSTORE" - }, - "17756": { - "op": "PUSH1", - "value": "0x60" - }, - "17758": { - "op": "DUP4" - }, - "17759": { - "op": "ADD" - }, - "17760": { - "op": "MLOAD" - }, - "17761": { - "op": "PUSH1", - "value": "0x60" - }, - "17763": { - "op": "DUP3" - }, - "17764": { - "op": "ADD" - }, - "17765": { - "op": "MSTORE" - }, - "17766": { - "op": "DUP1" - }, - "17767": { - "op": "SWAP5" - }, - "17768": { - "op": "POP" - }, - "17769": { - "op": "POP" - }, - "17770": { - "op": "POP" - }, - "17771": { - "op": "POP" - }, - "17772": { - "op": "PUSH1", - "value": "0x20" - }, - "17774": { - "op": "DUP4" - }, - "17775": { - "op": "ADD" - }, - "17776": { - "op": "MLOAD" - }, - "17777": { - "op": "SWAP1" - }, - "17778": { - "op": "POP" - }, - "17779": { - "op": "SWAP3" - }, - "17780": { - "op": "POP" - }, - "17781": { - "op": "SWAP3" - }, - "17782": { - "op": "SWAP1" - }, - "17783": { - "op": "POP" - }, - "17784": { - "jump": "o", - "op": "JUMP" - }, - "17785": { - "op": "JUMPDEST" - }, - "17786": { - "op": "PUSH1", - "value": "0x0" - }, - "17788": { - "op": "PUSH1", - "value": "0x20" - }, - "17790": { - "op": "DUP3" - }, - "17791": { - "op": "DUP5" - }, - "17792": { - "op": "SUB" - }, - "17793": { - "op": "SLT" - }, - "17794": { - "op": "ISZERO" - }, - "17795": { - "op": "PUSH2", - "value": "0x458A" - }, - "17798": { - "op": "JUMPI" - }, - "17799": { - "op": "DUP1" - }, - "17800": { - "op": "DUP2" - }, - "17801": { - "op": "REVERT" - }, - "17802": { - "op": "JUMPDEST" - }, - "17803": { - "op": "DUP2" - }, - "17804": { - "op": "CALLDATALOAD" - }, - "17805": { - "op": "PUSH2", - "value": "0xAA3" - }, - "17808": { - "op": "DUP2" - }, - "17809": { - "op": "PUSH2", - "value": "0x4B85" - }, - "17812": { - "jump": "i", - "op": "JUMP" - }, - "17813": { - "op": "JUMPDEST" - }, - "17814": { - "op": "DUP2" - }, - "17815": { - "op": "DUP4" - }, - "17816": { - "op": "MSTORE" - }, - "17817": { - "op": "PUSH1", - "value": "0x0" - }, - "17819": { - "op": "PUSH1", - "value": "0x1" - }, - "17821": { - "op": "PUSH1", - "value": "0x1" - }, - "17823": { - "op": "PUSH1", - "value": "0xFB" - }, - "17825": { - "op": "SHL" - }, - "17826": { - "op": "SUB" - }, - "17827": { - "op": "DUP4" - }, - "17828": { - "op": "GT" - }, - "17829": { - "op": "ISZERO" - }, - "17830": { - "op": "PUSH2", - "value": "0x45AD" - }, - "17833": { - "op": "JUMPI" - }, - "17834": { - "op": "DUP1" - }, - "17835": { - "op": "DUP2" - }, - "17836": { - "op": "REVERT" - }, - "17837": { - "op": "JUMPDEST" - }, - "17838": { - "op": "PUSH1", - "value": "0x20" - }, - "17840": { - "op": "DUP4" - }, - "17841": { - "op": "MUL" - }, - "17842": { - "op": "DUP1" - }, - "17843": { - "op": "DUP4" - }, - "17844": { - "op": "PUSH1", - "value": "0x20" - }, - "17846": { - "op": "DUP8" - }, - "17847": { - "op": "ADD" - }, - "17848": { - "op": "CALLDATACOPY" - }, - "17849": { - "op": "SWAP4" - }, - "17850": { - "op": "SWAP1" - }, - "17851": { - "op": "SWAP4" - }, - "17852": { - "op": "ADD" - }, - "17853": { - "op": "PUSH1", - "value": "0x20" - }, - "17855": { - "op": "ADD" - }, - "17856": { - "op": "SWAP3" - }, - "17857": { - "op": "DUP4" - }, - "17858": { - "op": "MSTORE" - }, - "17859": { - "op": "POP" - }, - "17860": { - "op": "SWAP1" - }, - "17861": { - "op": "SWAP2" - }, - "17862": { - "op": "SWAP1" - }, - "17863": { - "op": "POP" - }, - "17864": { - "jump": "o", - "op": "JUMP" - }, - "17865": { - "op": "JUMPDEST" - }, - "17866": { - "op": "PUSH1", - "value": "0x0" - }, - "17868": { - "op": "DUP2" - }, - "17869": { - "op": "MLOAD" - }, - "17870": { - "op": "DUP1" - }, - "17871": { - "op": "DUP5" - }, - "17872": { - "op": "MSTORE" - }, - "17873": { - "op": "PUSH1", - "value": "0x20" - }, - "17875": { - "op": "DUP1" - }, - "17876": { - "op": "DUP6" - }, - "17877": { - "op": "ADD" - }, - "17878": { - "op": "SWAP5" - }, - "17879": { - "op": "POP" - }, - "17880": { - "op": "DUP1" - }, - "17881": { - "op": "DUP5" - }, - "17882": { - "op": "ADD" - }, - "17883": { - "op": "DUP4" - }, - "17884": { - "op": "JUMPDEST" - }, - "17885": { - "op": "DUP4" - }, - "17886": { - "op": "DUP2" - }, - "17887": { - "op": "LT" - }, - "17888": { - "op": "ISZERO" - }, - "17889": { - "op": "PUSH2", - "value": "0x4636" - }, - "17892": { - "op": "JUMPI" - }, - "17893": { - "op": "DUP2" - }, - "17894": { - "op": "MLOAD" - }, - "17895": { - "op": "DUP1" - }, - "17896": { - "op": "MLOAD" - }, - "17897": { - "op": "DUP9" - }, - "17898": { - "op": "MSTORE" - }, - "17899": { - "op": "DUP4" - }, - "17900": { - "op": "DUP2" - }, - "17901": { - "op": "ADD" - }, - "17902": { - "op": "MLOAD" - }, - "17903": { - "op": "DUP5" - }, - "17904": { - "op": "DUP10" - }, - "17905": { - "op": "ADD" - }, - "17906": { - "op": "MSTORE" - }, - "17907": { - "op": "PUSH1", - "value": "0x40" - }, - "17909": { - "op": "DUP1" - }, - "17910": { - "op": "DUP3" - }, - "17911": { - "op": "ADD" - }, - "17912": { - "op": "MLOAD" - }, - "17913": { - "op": "SWAP1" - }, - "17914": { - "op": "DUP10" - }, - "17915": { - "op": "ADD" - }, - "17916": { - "op": "MSTORE" - }, - "17917": { - "op": "PUSH1", - "value": "0x60" - }, - "17919": { - "op": "DUP1" - }, - "17920": { - "op": "DUP3" - }, - "17921": { - "op": "ADD" - }, - "17922": { - "op": "MLOAD" - }, - "17923": { - "op": "SWAP1" - }, - "17924": { - "op": "DUP10" - }, - "17925": { - "op": "ADD" - }, - "17926": { - "op": "MSTORE" - }, - "17927": { - "op": "PUSH1", - "value": "0x80" - }, - "17929": { - "op": "DUP1" - }, - "17930": { - "op": "DUP3" - }, - "17931": { - "op": "ADD" - }, - "17932": { - "op": "MLOAD" - }, - "17933": { - "op": "SWAP1" - }, - "17934": { - "op": "DUP10" - }, - "17935": { - "op": "ADD" - }, - "17936": { - "op": "MSTORE" - }, - "17937": { - "op": "PUSH1", - "value": "0xA0" - }, - "17939": { - "op": "SWAP1" - }, - "17940": { - "op": "DUP2" - }, - "17941": { - "op": "ADD" - }, - "17942": { - "op": "MLOAD" - }, - "17943": { - "op": "SWAP1" - }, - "17944": { - "op": "PUSH1", - "value": "0x4" - }, - "17946": { - "op": "DUP3" - }, - "17947": { - "op": "LT" - }, - "17948": { - "op": "PUSH2", - "value": "0x4621" - }, - "17951": { - "op": "JUMPI" - }, - "17952": { - "op": "INVALID" - }, - "17953": { - "op": "JUMPDEST" - }, - "17954": { - "op": "DUP9" - }, - "17955": { - "op": "ADD" - }, - "17956": { - "op": "MSTORE" - }, - "17957": { - "op": "PUSH1", - "value": "0xC0" - }, - "17959": { - "op": "SWAP1" - }, - "17960": { - "op": "SWAP7" - }, - "17961": { - "op": "ADD" - }, - "17962": { - "op": "SWAP6" - }, - "17963": { - "op": "SWAP1" - }, - "17964": { - "op": "DUP3" - }, - "17965": { - "op": "ADD" - }, - "17966": { - "op": "SWAP1" - }, - "17967": { - "op": "PUSH1", - "value": "0x1" - }, - "17969": { - "op": "ADD" - }, - "17970": { - "op": "PUSH2", - "value": "0x45DC" - }, - "17973": { - "op": "JUMP" - }, - "17974": { - "op": "JUMPDEST" - }, - "17975": { - "op": "POP" - }, - "17976": { - "op": "SWAP5" - }, - "17977": { - "op": "SWAP6" - }, - "17978": { - "op": "SWAP5" - }, - "17979": { - "op": "POP" - }, - "17980": { - "op": "POP" - }, - "17981": { - "op": "POP" - }, - "17982": { - "op": "POP" - }, - "17983": { - "op": "POP" - }, - "17984": { - "jump": "o", - "op": "JUMP" - }, - "17985": { - "op": "JUMPDEST" - }, - "17986": { - "op": "PUSH1", - "value": "0x1" - }, - "17988": { - "op": "PUSH1", - "value": "0x1" - }, - "17990": { - "op": "PUSH1", - "value": "0xA0" - }, - "17992": { - "op": "SHL" - }, - "17993": { - "op": "SUB" - }, - "17994": { - "op": "SWAP2" - }, - "17995": { - "op": "SWAP1" - }, - "17996": { - "op": "SWAP2" - }, - "17997": { - "op": "AND" - }, - "17998": { - "op": "DUP2" - }, - "17999": { - "op": "MSTORE" - }, - "18000": { - "op": "PUSH1", - "value": "0x20" - }, - "18002": { - "op": "ADD" - }, - "18003": { - "op": "SWAP1" - }, - "18004": { - "jump": "o", - "op": "JUMP" - }, - "18005": { - "op": "JUMPDEST" - }, - "18006": { - "op": "PUSH1", - "value": "0x1" - }, - "18008": { - "op": "PUSH1", - "value": "0x1" - }, - "18010": { - "op": "PUSH1", - "value": "0xA0" - }, - "18012": { - "op": "SHL" - }, - "18013": { - "op": "SUB" - }, - "18014": { - "op": "DUP6" - }, - "18015": { - "op": "DUP2" - }, - "18016": { - "op": "AND" - }, - "18017": { - "op": "DUP3" - }, - "18018": { - "op": "MSTORE" - }, - "18019": { - "op": "DUP5" - }, - "18020": { - "op": "AND" - }, - "18021": { - "op": "PUSH1", - "value": "0x20" - }, - "18023": { - "op": "DUP3" - }, - "18024": { - "op": "ADD" - }, - "18025": { - "op": "MSTORE" - }, - "18026": { - "op": "PUSH1", - "value": "0x60" - }, - "18028": { - "op": "PUSH1", - "value": "0x40" - }, - "18030": { - "op": "DUP3" - }, - "18031": { - "op": "ADD" - }, - "18032": { - "op": "DUP2" - }, - "18033": { - "op": "SWAP1" - }, - "18034": { - "op": "MSTORE" - }, - "18035": { - "op": "DUP2" - }, - "18036": { - "op": "ADD" - }, - "18037": { - "op": "DUP3" - }, - "18038": { - "op": "SWAP1" - }, - "18039": { - "op": "MSTORE" - }, - "18040": { - "op": "PUSH1", - "value": "0x0" - }, - "18042": { - "op": "DUP3" - }, - "18043": { - "op": "DUP5" - }, - "18044": { - "op": "PUSH1", - "value": "0x80" - }, - "18046": { - "op": "DUP5" - }, - "18047": { - "op": "ADD" - }, - "18048": { - "op": "CALLDATACOPY" - }, - "18049": { - "op": "DUP2" - }, - "18050": { - "op": "DUP4" - }, - "18051": { - "op": "ADD" - }, - "18052": { - "op": "PUSH1", - "value": "0x80" - }, - "18054": { - "op": "SWAP1" - }, - "18055": { - "op": "DUP2" - }, - "18056": { - "op": "ADD" - }, - "18057": { - "op": "SWAP2" - }, - "18058": { - "op": "SWAP1" - }, - "18059": { - "op": "SWAP2" - }, - "18060": { - "op": "MSTORE" - }, - "18061": { - "op": "PUSH1", - "value": "0x1F" - }, - "18063": { - "op": "SWAP1" - }, - "18064": { - "op": "SWAP3" - }, - "18065": { - "op": "ADD" - }, - "18066": { - "op": "PUSH1", - "value": "0x1F" - }, - "18068": { - "op": "NOT" - }, - "18069": { - "op": "AND" - }, - "18070": { - "op": "ADD" - }, - "18071": { - "op": "ADD" - }, - "18072": { - "op": "SWAP4" - }, - "18073": { - "op": "SWAP3" - }, - "18074": { - "op": "POP" - }, - "18075": { - "op": "POP" - }, - "18076": { - "op": "POP" - }, - "18077": { - "jump": "o", - "op": "JUMP" - }, - "18078": { - "op": "JUMPDEST" - }, - "18079": { - "op": "PUSH1", - "value": "0x1" - }, - "18081": { - "op": "PUSH1", - "value": "0x1" - }, - "18083": { - "op": "PUSH1", - "value": "0xA0" - }, - "18085": { - "op": "SHL" - }, - "18086": { - "op": "SUB" - }, - "18087": { - "op": "SWAP7" - }, - "18088": { - "op": "DUP8" - }, - "18089": { - "op": "AND" - }, - "18090": { - "op": "DUP2" - }, - "18091": { - "op": "MSTORE" - }, - "18092": { - "op": "SWAP5" - }, - "18093": { - "op": "DUP7" - }, - "18094": { - "op": "AND" - }, - "18095": { - "op": "PUSH1", - "value": "0x20" - }, - "18097": { - "op": "DUP7" - }, - "18098": { - "op": "ADD" - }, - "18099": { - "op": "MSTORE" - }, - "18100": { - "op": "SWAP3" - }, - "18101": { - "op": "DUP6" - }, - "18102": { - "op": "AND" - }, - "18103": { - "op": "PUSH1", - "value": "0x40" - }, - "18105": { - "op": "DUP6" - }, - "18106": { - "op": "ADD" - }, - "18107": { - "op": "MSTORE" - }, - "18108": { - "op": "SWAP1" - }, - "18109": { - "op": "DUP5" - }, - "18110": { - "op": "AND" - }, - "18111": { - "op": "PUSH1", - "value": "0x60" - }, - "18113": { - "op": "DUP5" - }, - "18114": { - "op": "ADD" - }, - "18115": { - "op": "MSTORE" - }, - "18116": { - "op": "DUP4" - }, - "18117": { - "op": "AND" - }, - "18118": { - "op": "PUSH1", - "value": "0x80" - }, - "18120": { - "op": "DUP4" - }, - "18121": { - "op": "ADD" - }, - "18122": { - "op": "MSTORE" - }, - "18123": { - "op": "SWAP1" - }, - "18124": { - "op": "SWAP2" - }, - "18125": { - "op": "AND" - }, - "18126": { - "op": "PUSH1", - "value": "0xA0" - }, - "18128": { - "op": "DUP3" - }, - "18129": { - "op": "ADD" - }, - "18130": { - "op": "MSTORE" - }, - "18131": { - "op": "PUSH1", - "value": "0xC0" - }, - "18133": { - "op": "ADD" - }, - "18134": { - "op": "SWAP1" - }, - "18135": { - "jump": "o", - "op": "JUMP" - }, - "18136": { - "op": "JUMPDEST" - }, - "18137": { - "op": "PUSH1", - "value": "0x1" - }, - "18139": { - "op": "PUSH1", - "value": "0x1" - }, - "18141": { - "op": "PUSH1", - "value": "0xA0" - }, - "18143": { - "op": "SHL" - }, - "18144": { - "op": "SUB" - }, - "18145": { - "op": "SWAP3" - }, - "18146": { - "op": "SWAP1" - }, - "18147": { - "op": "SWAP3" - }, - "18148": { - "op": "AND" - }, - "18149": { - "op": "DUP3" - }, - "18150": { - "op": "MSTORE" - }, - "18151": { - "op": "DUP1" - }, - "18152": { - "op": "MLOAD" - }, - "18153": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "18159": { - "op": "AND" - }, - "18160": { - "op": "PUSH1", - "value": "0x20" - }, - "18162": { - "op": "DUP1" - }, - "18163": { - "op": "DUP5" - }, - "18164": { - "op": "ADD" - }, - "18165": { - "op": "SWAP2" - }, - "18166": { - "op": "SWAP1" - }, - "18167": { - "op": "SWAP2" - }, - "18168": { - "op": "MSTORE" - }, - "18169": { - "op": "DUP2" - }, - "18170": { - "op": "ADD" - }, - "18171": { - "op": "MLOAD" - }, - "18172": { - "op": "PUSH1", - "value": "0x1" - }, - "18174": { - "op": "PUSH1", - "value": "0x1" - }, - "18176": { - "op": "PUSH1", - "value": "0xF8" - }, - "18178": { - "op": "SHL" - }, - "18179": { - "op": "SUB" - }, - "18180": { - "op": "NOT" - }, - "18181": { - "op": "AND" - }, - "18182": { - "op": "PUSH1", - "value": "0x40" - }, - "18184": { - "op": "DUP1" - }, - "18185": { - "op": "DUP5" - }, - "18186": { - "op": "ADD" - }, - "18187": { - "op": "SWAP2" - }, - "18188": { - "op": "SWAP1" - }, - "18189": { - "op": "SWAP2" - }, - "18190": { - "op": "MSTORE" - }, - "18191": { - "op": "DUP2" - }, - "18192": { - "op": "ADD" - }, - "18193": { - "op": "MLOAD" - }, - "18194": { - "op": "PUSH1", - "value": "0xFF" - }, - "18196": { - "op": "AND" - }, - "18197": { - "op": "PUSH1", - "value": "0x60" - }, - "18199": { - "op": "DUP1" - }, - "18200": { - "op": "DUP5" - }, - "18201": { - "op": "ADD" - }, - "18202": { - "op": "SWAP2" - }, - "18203": { - "op": "SWAP1" - }, - "18204": { - "op": "SWAP2" - }, - "18205": { - "op": "MSTORE" - }, - "18206": { - "op": "DUP2" - }, - "18207": { - "op": "ADD" - }, - "18208": { - "op": "MLOAD" - }, - "18209": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "18212": { - "op": "AND" - }, - "18213": { - "op": "PUSH1", - "value": "0x80" - }, - "18215": { - "op": "DUP1" - }, - "18216": { - "op": "DUP5" - }, - "18217": { - "op": "ADD" - }, - "18218": { - "op": "SWAP2" - }, - "18219": { - "op": "SWAP1" - }, - "18220": { - "op": "SWAP2" - }, - "18221": { - "op": "MSTORE" - }, - "18222": { - "op": "ADD" - }, - "18223": { - "op": "MLOAD" - }, - "18224": { - "op": "PUSH1", - "value": "0x1" - }, - "18226": { - "op": "PUSH1", - "value": "0x1" - }, - "18228": { - "op": "PUSH1", - "value": "0x70" - }, - "18230": { - "op": "SHL" - }, - "18231": { - "op": "SUB" - }, - "18232": { - "op": "NOT" - }, - "18233": { - "op": "AND" - }, - "18234": { - "op": "PUSH1", - "value": "0xA0" - }, - "18236": { - "op": "DUP3" - }, - "18237": { - "op": "ADD" - }, - "18238": { - "op": "MSTORE" - }, - "18239": { - "op": "PUSH1", - "value": "0xC0" - }, - "18241": { - "op": "ADD" - }, - "18242": { - "op": "SWAP1" - }, - "18243": { - "jump": "o", - "op": "JUMP" - }, - "18244": { - "op": "JUMPDEST" - }, - "18245": { - "op": "PUSH1", - "value": "0x0" - }, - "18247": { - "op": "PUSH1", - "value": "0x1" - }, - "18249": { - "op": "DUP1" - }, - "18250": { - "op": "PUSH1", - "value": "0xA0" - }, - "18252": { - "op": "SHL" - }, - "18253": { - "op": "SUB" - }, - "18254": { - "op": "DUP8" - }, - "18255": { - "op": "AND" - }, - "18256": { - "op": "DUP3" - }, - "18257": { - "op": "MSTORE" - }, - "18258": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "18261": { - "op": "DUP7" - }, - "18262": { - "op": "AND" - }, - "18263": { - "op": "PUSH1", - "value": "0x20" - }, - "18265": { - "op": "DUP4" - }, - "18266": { - "op": "ADD" - }, - "18267": { - "op": "MSTORE" - }, - "18268": { - "op": "PUSH1", - "value": "0x80" - }, - "18270": { - "op": "PUSH1", - "value": "0x40" - }, - "18272": { - "op": "DUP4" - }, - "18273": { - "op": "ADD" - }, - "18274": { - "op": "MSTORE" - }, - "18275": { - "op": "DUP5" - }, - "18276": { - "op": "MLOAD" - }, - "18277": { - "op": "PUSH1", - "value": "0x80" - }, - "18279": { - "op": "DUP1" - }, - "18280": { - "op": "DUP5" - }, - "18281": { - "op": "ADD" - }, - "18282": { - "op": "MSTORE" - }, - "18283": { - "op": "PUSH2", - "value": "0x4778" - }, - "18286": { - "op": "PUSH2", - "value": "0x100" - }, - "18289": { - "op": "DUP5" - }, - "18290": { - "op": "ADD" - }, - "18291": { - "op": "DUP3" - }, - "18292": { - "op": "PUSH2", - "value": "0x45C9" - }, - "18295": { - "jump": "i", - "op": "JUMP" - }, - "18296": { - "op": "JUMPDEST" - }, - "18297": { - "op": "SWAP1" - }, - "18298": { - "op": "POP" - }, - "18299": { - "op": "PUSH1", - "value": "0x20" - }, - "18301": { - "op": "DUP7" - }, - "18302": { - "op": "ADD" - }, - "18303": { - "op": "MLOAD" - }, - "18304": { - "op": "PUSH1", - "value": "0x7F" - }, - "18306": { - "op": "NOT" - }, - "18307": { - "op": "DUP5" - }, - "18308": { - "op": "DUP4" - }, - "18309": { - "op": "SUB" - }, - "18310": { - "op": "ADD" - }, - "18311": { - "op": "PUSH1", - "value": "0xA0" - }, - "18313": { - "op": "DUP6" - }, - "18314": { - "op": "ADD" - }, - "18315": { - "op": "MSTORE" - }, - "18316": { - "op": "PUSH2", - "value": "0x4795" - }, - "18319": { - "op": "DUP3" - }, - "18320": { - "op": "DUP3" - }, - "18321": { - "op": "PUSH2", - "value": "0x45C9" - }, - "18324": { - "jump": "i", - "op": "JUMP" - }, - "18325": { - "op": "JUMPDEST" - }, - "18326": { - "op": "SWAP2" - }, - "18327": { - "op": "POP" - }, - "18328": { - "op": "POP" - }, - "18329": { - "op": "PUSH1", - "value": "0x40" - }, - "18331": { - "op": "DUP7" - }, - "18332": { - "op": "ADD" - }, - "18333": { - "op": "MLOAD" - }, - "18334": { - "op": "PUSH1", - "value": "0xC0" - }, - "18336": { - "op": "DUP5" - }, - "18337": { - "op": "ADD" - }, - "18338": { - "op": "MSTORE" - }, - "18339": { - "op": "PUSH1", - "value": "0x60" - }, - "18341": { - "op": "DUP7" - }, - "18342": { - "op": "ADD" - }, - "18343": { - "op": "MLOAD" - }, - "18344": { - "op": "PUSH1", - "value": "0xE0" - }, - "18346": { - "op": "DUP5" - }, - "18347": { - "op": "ADD" - }, - "18348": { - "op": "MSTORE" - }, - "18349": { - "op": "DUP3" - }, - "18350": { - "op": "DUP2" - }, - "18351": { - "op": "SUB" - }, - "18352": { - "op": "PUSH1", - "value": "0x60" - }, - "18354": { - "op": "DUP5" - }, - "18355": { - "op": "ADD" - }, - "18356": { - "op": "MSTORE" - }, - "18357": { - "op": "PUSH2", - "value": "0x47BF" - }, - "18360": { - "op": "DUP2" - }, - "18361": { - "op": "DUP6" - }, - "18362": { - "op": "DUP8" - }, - "18363": { - "op": "PUSH2", - "value": "0x4595" - }, - "18366": { - "jump": "i", - "op": "JUMP" - }, - "18367": { - "op": "JUMPDEST" - }, - "18368": { - "op": "SWAP9" - }, - "18369": { - "op": "SWAP8" - }, - "18370": { - "op": "POP" - }, - "18371": { - "op": "POP" - }, - "18372": { - "op": "POP" - }, - "18373": { - "op": "POP" - }, - "18374": { - "op": "POP" - }, - "18375": { - "op": "POP" - }, - "18376": { - "op": "POP" - }, - "18377": { - "op": "POP" - }, - "18378": { - "jump": "o", - "op": "JUMP" - }, - "18379": { - "op": "JUMPDEST" - }, - "18380": { - "op": "PUSH1", - "value": "0x1" - }, - "18382": { - "op": "PUSH1", - "value": "0x1" - }, - "18384": { - "op": "PUSH1", - "value": "0xA0" - }, - "18386": { - "op": "SHL" - }, - "18387": { - "op": "SUB" - }, - "18388": { - "op": "DUP7" - }, - "18389": { - "op": "AND" - }, - "18390": { - "op": "DUP2" - }, - "18391": { - "op": "MSTORE" - }, - "18392": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "18395": { - "op": "DUP6" - }, - "18396": { - "op": "AND" - }, - "18397": { - "op": "PUSH1", - "value": "0x20" - }, - "18399": { - "op": "DUP3" - }, - "18400": { - "op": "ADD" - }, - "18401": { - "op": "MSTORE" - }, - "18402": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "18408": { - "op": "DUP5" - }, - "18409": { - "op": "AND" - }, - "18410": { - "op": "PUSH1", - "value": "0x40" - }, - "18412": { - "op": "DUP3" - }, - "18413": { - "op": "ADD" - }, - "18414": { - "op": "MSTORE" - }, - "18415": { - "op": "PUSH1", - "value": "0x80" - }, - "18417": { - "op": "PUSH1", - "value": "0x60" - }, - "18419": { - "op": "DUP3" - }, - "18420": { - "op": "ADD" - }, - "18421": { - "op": "DUP2" - }, - "18422": { - "op": "SWAP1" - }, - "18423": { - "op": "MSTORE" - }, - "18424": { - "op": "PUSH1", - "value": "0x0" - }, - "18426": { - "op": "SWAP1" - }, - "18427": { - "op": "PUSH2", - "value": "0x1DEF" - }, - "18430": { - "op": "SWAP1" - }, - "18431": { - "op": "DUP4" - }, - "18432": { - "op": "ADD" - }, - "18433": { - "op": "DUP5" - }, - "18434": { - "op": "DUP7" - }, - "18435": { - "op": "PUSH2", - "value": "0x4595" - }, - "18438": { - "jump": "i", - "op": "JUMP" - }, - "18439": { - "op": "JUMPDEST" - }, - "18440": { - "op": "PUSH1", - "value": "0x1" - }, - "18442": { - "op": "PUSH1", - "value": "0x1" - }, - "18444": { - "op": "PUSH1", - "value": "0xA0" - }, - "18446": { - "op": "SHL" - }, - "18447": { - "op": "SUB" - }, - "18448": { - "op": "SWAP4" - }, - "18449": { - "op": "DUP5" - }, - "18450": { - "op": "AND" - }, - "18451": { - "op": "DUP2" - }, - "18452": { - "op": "MSTORE" - }, - "18453": { - "op": "PUSH1", - "value": "0x20" - }, - "18455": { - "op": "DUP2" - }, - "18456": { - "op": "ADD" - }, - "18457": { - "op": "SWAP3" - }, - "18458": { - "op": "SWAP1" - }, - "18459": { - "op": "SWAP3" - }, - "18460": { - "op": "MSTORE" - }, - "18461": { - "op": "SWAP1" - }, - "18462": { - "op": "SWAP2" - }, - "18463": { - "op": "AND" - }, - "18464": { - "op": "PUSH1", - "value": "0x40" - }, - "18466": { - "op": "DUP3" - }, - "18467": { - "op": "ADD" - }, - "18468": { - "op": "MSTORE" - }, - "18469": { - "op": "PUSH1", - "value": "0x60" - }, - "18471": { - "op": "ADD" - }, - "18472": { - "op": "SWAP1" - }, - "18473": { - "jump": "o", - "op": "JUMP" - }, - "18474": { - "op": "JUMPDEST" - }, - "18475": { - "op": "PUSH1", - "value": "0x1" - }, - "18477": { - "op": "PUSH1", - "value": "0x1" - }, - "18479": { - "op": "PUSH1", - "value": "0xA0" - }, - "18481": { - "op": "SHL" - }, - "18482": { - "op": "SUB" - }, - "18483": { - "op": "SWAP5" - }, - "18484": { - "op": "DUP6" - }, - "18485": { - "op": "AND" - }, - "18486": { - "op": "DUP2" - }, - "18487": { - "op": "MSTORE" - }, - "18488": { - "op": "PUSH1", - "value": "0x20" - }, - "18490": { - "op": "DUP2" - }, - "18491": { - "op": "ADD" - }, - "18492": { - "op": "SWAP4" - }, - "18493": { - "op": "SWAP1" - }, - "18494": { - "op": "SWAP4" - }, - "18495": { - "op": "MSTORE" - }, - "18496": { - "op": "SWAP3" - }, - "18497": { - "op": "AND" - }, - "18498": { - "op": "PUSH1", - "value": "0x40" - }, - "18500": { - "op": "DUP3" - }, - "18501": { - "op": "ADD" - }, - "18502": { - "op": "MSTORE" - }, - "18503": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "18506": { - "op": "SWAP1" - }, - "18507": { - "op": "SWAP2" - }, - "18508": { - "op": "AND" - }, - "18509": { - "op": "PUSH1", - "value": "0x60" - }, - "18511": { - "op": "DUP3" - }, - "18512": { - "op": "ADD" - }, - "18513": { - "op": "MSTORE" - }, - "18514": { - "op": "PUSH1", - "value": "0x80" - }, - "18516": { - "op": "ADD" - }, - "18517": { - "op": "SWAP1" - }, - "18518": { - "jump": "o", - "op": "JUMP" - }, - "18519": { - "op": "JUMPDEST" - }, - "18520": { - "op": "PUSH1", - "value": "0x1" - }, - "18522": { - "op": "PUSH1", - "value": "0x1" - }, - "18524": { - "op": "PUSH1", - "value": "0xA0" - }, - "18526": { - "op": "SHL" - }, - "18527": { - "op": "SUB" - }, - "18528": { - "op": "SWAP6" - }, - "18529": { - "op": "SWAP1" - }, - "18530": { - "op": "SWAP6" - }, - "18531": { - "op": "AND" - }, - "18532": { - "op": "DUP6" - }, - "18533": { - "op": "MSTORE" - }, - "18534": { - "op": "PUSH1", - "value": "0x20" - }, - "18536": { - "op": "DUP6" - }, - "18537": { - "op": "ADD" - }, - "18538": { - "op": "SWAP4" - }, - "18539": { - "op": "SWAP1" - }, - "18540": { - "op": "SWAP4" - }, - "18541": { - "op": "MSTORE" - }, - "18542": { - "op": "PUSH1", - "value": "0x40" - }, - "18544": { - "op": "DUP5" - }, - "18545": { - "op": "ADD" - }, - "18546": { - "op": "SWAP2" - }, - "18547": { - "op": "SWAP1" - }, - "18548": { - "op": "SWAP2" - }, - "18549": { - "op": "MSTORE" - }, - "18550": { - "op": "PUSH1", - "value": "0x60" - }, - "18552": { - "op": "DUP4" - }, - "18553": { - "op": "ADD" - }, - "18554": { - "op": "MSTORE" - }, - "18555": { - "op": "PUSH1", - "value": "0x80" - }, - "18557": { - "op": "DUP3" - }, - "18558": { - "op": "ADD" - }, - "18559": { - "op": "MSTORE" - }, - "18560": { - "op": "PUSH1", - "value": "0xA0" - }, - "18562": { - "op": "ADD" - }, - "18563": { - "op": "SWAP1" - }, - "18564": { - "jump": "o", - "op": "JUMP" - }, - "18565": { - "op": "JUMPDEST" - }, - "18566": { - "op": "PUSH1", - "value": "0x1" - }, - "18568": { - "op": "PUSH1", - "value": "0x1" - }, - "18570": { - "op": "PUSH1", - "value": "0xA0" - }, - "18572": { - "op": "SHL" - }, - "18573": { - "op": "SUB" - }, - "18574": { - "op": "SWAP5" - }, - "18575": { - "op": "SWAP1" - }, - "18576": { - "op": "SWAP5" - }, - "18577": { - "op": "AND" - }, - "18578": { - "op": "DUP5" - }, - "18579": { - "op": "MSTORE" - }, - "18580": { - "op": "PUSH1", - "value": "0x20" - }, - "18582": { - "op": "DUP5" - }, - "18583": { - "op": "ADD" - }, - "18584": { - "op": "SWAP3" - }, - "18585": { - "op": "SWAP1" - }, - "18586": { - "op": "SWAP3" - }, - "18587": { - "op": "MSTORE" - }, - "18588": { - "op": "PUSH1", - "value": "0x40" - }, - "18590": { - "op": "DUP4" - }, - "18591": { - "op": "ADD" - }, - "18592": { - "op": "MSTORE" - }, - "18593": { - "op": "PUSH1", - "value": "0x60" - }, - "18595": { - "op": "DUP3" - }, - "18596": { - "op": "ADD" - }, - "18597": { - "op": "MSTORE" - }, - "18598": { - "op": "PUSH1", - "value": "0x80" - }, - "18600": { - "op": "ADD" - }, - "18601": { - "op": "SWAP1" - }, - "18602": { - "jump": "o", - "op": "JUMP" - }, - "18603": { - "op": "JUMPDEST" - }, - "18604": { - "op": "SWAP1" - }, - "18605": { - "op": "DUP2" - }, - "18606": { - "op": "MSTORE" - }, - "18607": { - "op": "PUSH1", - "value": "0x20" - }, - "18609": { - "op": "ADD" - }, - "18610": { - "op": "SWAP1" - }, - "18611": { - "jump": "o", - "op": "JUMP" - }, - "18612": { - "op": "JUMPDEST" - }, - "18613": { - "op": "PUSH1", - "value": "0x20" - }, - "18615": { - "op": "DUP1" - }, - "18616": { - "op": "DUP3" - }, - "18617": { - "op": "MSTORE" - }, - "18618": { - "op": "PUSH1", - "value": "0xC" - }, - "18620": { - "op": "SWAP1" - }, - "18621": { - "op": "DUP3" - }, - "18622": { - "op": "ADD" - }, - "18623": { - "op": "MSTORE" - }, - "18624": { - "op": "PUSH12", - "value": "0x155B985D5D1A1BDC9A5E9959" - }, - "18637": { - "op": "PUSH1", - "value": "0xA2" - }, - "18639": { - "op": "SHL" - }, - "18640": { - "op": "PUSH1", - "value": "0x40" - }, - "18642": { - "op": "DUP3" - }, - "18643": { - "op": "ADD" - }, - "18644": { - "op": "MSTORE" - }, - "18645": { - "op": "PUSH1", - "value": "0x60" - }, - "18647": { - "op": "ADD" - }, - "18648": { - "op": "SWAP1" - }, - "18649": { - "jump": "o", - "op": "JUMP" - }, - "18650": { - "op": "JUMPDEST" - }, - "18651": { - "op": "PUSH1", - "value": "0x20" - }, - "18653": { - "op": "DUP1" - }, - "18654": { - "op": "DUP3" - }, - "18655": { - "op": "MSTORE" - }, - "18656": { - "op": "PUSH1", - "value": "0x4" - }, - "18658": { - "op": "SWAP1" - }, - "18659": { - "op": "DUP3" - }, - "18660": { - "op": "ADD" - }, - "18661": { - "op": "MSTORE" - }, - "18662": { - "op": "PUSH4", - "value": "0x135A5B9D" - }, - "18667": { - "op": "PUSH1", - "value": "0xE2" - }, - "18669": { - "op": "SHL" - }, - "18670": { - "op": "PUSH1", - "value": "0x40" - }, - "18672": { - "op": "DUP3" - }, - "18673": { - "op": "ADD" - }, - "18674": { - "op": "MSTORE" - }, - "18675": { - "op": "PUSH1", - "value": "0x60" - }, - "18677": { - "op": "ADD" - }, - "18678": { - "op": "SWAP1" - }, - "18679": { - "jump": "o", - "op": "JUMP" - }, - "18680": { - "op": "JUMPDEST" - }, - "18681": { - "op": "PUSH1", - "value": "0x20" - }, - "18683": { - "op": "DUP1" - }, - "18684": { - "op": "DUP3" - }, - "18685": { - "op": "MSTORE" - }, - "18686": { - "op": "PUSH1", - "value": "0xB" - }, - "18688": { - "op": "SWAP1" - }, - "18689": { - "op": "DUP3" - }, - "18690": { - "op": "ADD" - }, - "18691": { - "op": "MSTORE" - }, - "18692": { - "op": "PUSH11", - "value": "0x4554482042616C616E6365" - }, - "18704": { - "op": "PUSH1", - "value": "0xA8" - }, - "18706": { - "op": "SHL" - }, - "18707": { - "op": "PUSH1", - "value": "0x40" - }, - "18709": { - "op": "DUP3" - }, - "18710": { - "op": "ADD" - }, - "18711": { - "op": "MSTORE" - }, - "18712": { - "op": "PUSH1", - "value": "0x60" - }, - "18714": { - "op": "ADD" - }, - "18715": { - "op": "SWAP1" - }, - "18716": { - "jump": "o", - "op": "JUMP" - }, - "18717": { - "op": "JUMPDEST" - }, - "18718": { - "op": "PUSH1", - "value": "0x20" - }, - "18720": { - "op": "DUP1" - }, - "18721": { - "op": "DUP3" - }, - "18722": { - "op": "MSTORE" - }, - "18723": { - "op": "PUSH1", - "value": "0x6" - }, - "18725": { - "op": "SWAP1" - }, - "18726": { - "op": "DUP3" - }, - "18727": { - "op": "ADD" - }, - "18728": { - "op": "MSTORE" - }, - "18729": { - "op": "PUSH6", - "value": "0x52656465656D" - }, - "18736": { - "op": "PUSH1", - "value": "0xD0" - }, - "18738": { - "op": "SHL" - }, - "18739": { - "op": "PUSH1", - "value": "0x40" - }, - "18741": { - "op": "DUP3" - }, - "18742": { - "op": "ADD" - }, - "18743": { - "op": "MSTORE" - }, - "18744": { - "op": "PUSH1", - "value": "0x60" - }, - "18746": { - "op": "ADD" - }, - "18747": { - "op": "SWAP1" - }, - "18748": { - "jump": "o", - "op": "JUMP" - }, - "18749": { - "op": "JUMPDEST" - }, - "18750": { - "op": "PUSH1", - "value": "0x20" - }, - "18752": { - "op": "DUP1" - }, - "18753": { - "op": "DUP3" - }, - "18754": { - "op": "MSTORE" - }, - "18755": { - "op": "PUSH1", - "value": "0xD" - }, - "18757": { - "op": "SWAP1" - }, - "18758": { - "op": "DUP3" - }, - "18759": { - "op": "ADD" - }, - "18760": { - "op": "MSTORE" - }, - "18761": { - "op": "PUSH13", - "value": "0x92DCECC2D8D2C840D2DCC8CAF" - }, - "18775": { - "op": "PUSH1", - "value": "0x9B" - }, - "18777": { - "op": "SHL" - }, - "18778": { - "op": "PUSH1", - "value": "0x40" - }, - "18780": { - "op": "DUP3" - }, - "18781": { - "op": "ADD" - }, - "18782": { - "op": "MSTORE" - }, - "18783": { - "op": "PUSH1", - "value": "0x60" - }, - "18785": { - "op": "ADD" - }, - "18786": { - "op": "SWAP1" - }, - "18787": { - "jump": "o", - "op": "JUMP" - }, - "18788": { - "op": "JUMPDEST" - }, - "18789": { - "op": "PUSH1", - "value": "0x20" - }, - "18791": { - "op": "DUP1" - }, - "18792": { - "op": "DUP3" - }, - "18793": { - "op": "MSTORE" - }, - "18794": { - "op": "PUSH1", - "value": "0x10" - }, - "18796": { - "op": "SWAP1" - }, - "18797": { - "op": "DUP3" - }, - "18798": { - "op": "ADD" - }, - "18799": { - "op": "MSTORE" - }, - "18800": { - "op": "PUSH16", - "value": "0x556E736F7274656420616374696F6E73" - }, - "18817": { - "op": "PUSH1", - "value": "0x80" - }, - "18819": { - "op": "SHL" - }, - "18820": { - "op": "PUSH1", - "value": "0x40" - }, - "18822": { - "op": "DUP3" - }, - "18823": { - "op": "ADD" - }, - "18824": { - "op": "MSTORE" - }, - "18825": { - "op": "PUSH1", - "value": "0x60" - }, - "18827": { - "op": "ADD" - }, - "18828": { - "op": "SWAP1" - }, - "18829": { - "jump": "o", - "op": "JUMP" - }, - "18830": { - "op": "JUMPDEST" - }, - "18831": { - "op": "PUSH1", - "value": "0x20" - }, - "18833": { - "op": "DUP1" - }, - "18834": { - "op": "DUP3" - }, - "18835": { - "op": "MSTORE" - }, - "18836": { - "op": "PUSH1", - "value": "0x1A" - }, - "18838": { - "op": "SWAP1" - }, - "18839": { - "op": "DUP3" - }, - "18840": { - "op": "ADD" - }, - "18841": { - "op": "MSTORE" - }, - "18842": { - "op": "PUSH32", - "value": "0x496E73756666696369656E7420746F6B656E2062616C616E6365000000000000" - }, - "18875": { - "op": "PUSH1", - "value": "0x40" - }, - "18877": { - "op": "DUP3" - }, - "18878": { - "op": "ADD" - }, - "18879": { - "op": "MSTORE" - }, - "18880": { - "op": "PUSH1", - "value": "0x60" - }, - "18882": { - "op": "ADD" - }, - "18883": { - "op": "SWAP1" - }, - "18884": { - "jump": "o", - "op": "JUMP" - }, - "18885": { - "op": "JUMPDEST" - }, - "18886": { - "op": "PUSH1", - "value": "0x20" - }, - "18888": { - "op": "DUP1" - }, - "18889": { - "op": "DUP3" - }, - "18890": { - "op": "MSTORE" - }, - "18891": { - "op": "PUSH1", - "value": "0xE" - }, - "18893": { - "op": "SWAP1" - }, - "18894": { - "op": "DUP3" - }, - "18895": { - "op": "ADD" - }, - "18896": { - "op": "MSTORE" - }, - "18897": { - "op": "PUSH14", - "value": "0x1499595B9D1C985B9D0818D85B1B" - }, - "18912": { - "op": "PUSH1", - "value": "0x92" - }, - "18914": { - "op": "SHL" - }, - "18915": { - "op": "PUSH1", - "value": "0x40" - }, - "18917": { - "op": "DUP3" - }, - "18918": { - "op": "ADD" - }, - "18919": { - "op": "MSTORE" - }, - "18920": { - "op": "PUSH1", - "value": "0x60" - }, - "18922": { - "op": "ADD" - }, - "18923": { - "op": "SWAP1" - }, - "18924": { - "jump": "o", - "op": "JUMP" - }, - "18925": { - "op": "JUMPDEST" - }, - "18926": { - "op": "PUSH1", - "value": "0x20" - }, - "18928": { - "op": "DUP1" - }, - "18929": { - "op": "DUP3" - }, - "18930": { - "op": "MSTORE" - }, - "18931": { - "op": "PUSH1", - "value": "0x8" - }, - "18933": { - "op": "SWAP1" - }, - "18934": { - "op": "DUP3" - }, - "18935": { - "op": "ADD" - }, - "18936": { - "op": "MSTORE" - }, - "18937": { - "op": "PUSH8", - "value": "0x9CCACE4086C2E6D" - }, - "18946": { - "op": "PUSH1", - "value": "0xC3" - }, - "18948": { - "op": "SHL" - }, - "18949": { - "op": "PUSH1", - "value": "0x40" - }, - "18951": { - "op": "DUP3" - }, - "18952": { - "op": "ADD" - }, - "18953": { - "op": "MSTORE" - }, - "18954": { - "op": "PUSH1", - "value": "0x60" - }, - "18956": { - "op": "ADD" - }, - "18957": { - "op": "SWAP1" - }, - "18958": { - "jump": "o", - "op": "JUMP" - }, - "18959": { - "op": "JUMPDEST" - }, - "18960": { - "op": "PUSH1", - "value": "0x20" - }, - "18962": { - "op": "DUP1" - }, - "18963": { - "op": "DUP3" - }, - "18964": { - "op": "MSTORE" - }, - "18965": { - "op": "PUSH1", - "value": "0x1A" - }, - "18967": { - "op": "SWAP1" - }, - "18968": { - "op": "DUP3" - }, - "18969": { - "op": "ADD" - }, - "18970": { - "op": "MSTORE" - }, - "18971": { - "op": "PUSH32", - "value": "0x496E76616C69642074726164657320666F72206163636F756E74000000000000" - }, - "19004": { - "op": "PUSH1", - "value": "0x40" - }, - "19006": { - "op": "DUP3" - }, - "19007": { - "op": "ADD" - }, - "19008": { - "op": "MSTORE" - }, - "19009": { - "op": "PUSH1", - "value": "0x60" - }, - "19011": { - "op": "ADD" - }, - "19012": { - "op": "SWAP1" - }, - "19013": { - "jump": "o", - "op": "JUMP" - }, - "19014": { - "op": "JUMPDEST" - }, - "19015": { - "op": "PUSH1", - "value": "0x20" - }, - "19017": { - "op": "DUP1" - }, - "19018": { - "op": "DUP3" - }, - "19019": { - "op": "MSTORE" - }, - "19020": { - "op": "PUSH1", - "value": "0xA" - }, - "19022": { - "op": "SWAP1" - }, - "19023": { - "op": "DUP3" - }, - "19024": { - "op": "ADD" - }, - "19025": { - "op": "MSTORE" - }, - "19026": { - "op": "PUSH10", - "value": "0x2732B390372A37B5B2B7" - }, - "19037": { - "op": "PUSH1", - "value": "0xB1" - }, - "19039": { - "op": "SHL" - }, - "19040": { - "op": "PUSH1", - "value": "0x40" - }, - "19042": { - "op": "DUP3" - }, - "19043": { - "op": "ADD" - }, - "19044": { - "op": "MSTORE" - }, - "19045": { - "op": "PUSH1", - "value": "0x60" - }, - "19047": { - "op": "ADD" - }, - "19048": { - "op": "SWAP1" - }, - "19049": { - "jump": "o", - "op": "JUMP" - }, - "19050": { - "op": "JUMPDEST" - }, - "19051": { - "op": "PUSH1", - "value": "0x20" - }, - "19053": { - "op": "DUP1" - }, - "19054": { - "op": "DUP3" - }, - "19055": { - "op": "MSTORE" - }, - "19056": { - "op": "PUSH1", - "value": "0x11" - }, - "19058": { - "op": "SWAP1" - }, - "19059": { - "op": "DUP3" - }, - "19060": { - "op": "ADD" - }, - "19061": { - "op": "MSTORE" - }, - "19062": { - "op": "PUSH17", - "value": "0x92DCE6EACCCCD2C6D2CADCE840C6C2E6D" - }, - "19080": { - "op": "PUSH1", - "value": "0x7B" - }, - "19082": { - "op": "SHL" - }, - "19083": { - "op": "PUSH1", - "value": "0x40" - }, - "19085": { - "op": "DUP3" - }, - "19086": { - "op": "ADD" - }, - "19087": { - "op": "MSTORE" - }, - "19088": { - "op": "PUSH1", - "value": "0x60" - }, - "19090": { - "op": "ADD" - }, - "19091": { - "op": "SWAP1" - }, - "19092": { - "jump": "o", - "op": "JUMP" - }, - "19093": { - "op": "JUMPDEST" - }, - "19094": { - "op": "PUSH1", - "value": "0x20" - }, - "19096": { - "op": "DUP1" - }, - "19097": { - "op": "DUP3" - }, - "19098": { - "op": "MSTORE" - }, - "19099": { - "op": "PUSH1", - "value": "0x14" - }, - "19101": { - "op": "SWAP1" - }, - "19102": { - "op": "DUP3" - }, - "19103": { - "op": "ADD" - }, - "19104": { - "op": "MSTORE" - }, - "19105": { - "op": "PUSH20", - "value": "0x125B9CDD59999A58DA595B9D0819195C1BDCDA5D" - }, - "19126": { - "op": "PUSH1", - "value": "0x62" - }, - "19128": { - "op": "SHL" - }, - "19129": { - "op": "PUSH1", - "value": "0x40" - }, - "19131": { - "op": "DUP3" - }, - "19132": { - "op": "ADD" - }, - "19133": { - "op": "MSTORE" - }, - "19134": { - "op": "PUSH1", - "value": "0x60" - }, - "19136": { - "op": "ADD" - }, - "19137": { - "op": "SWAP1" - }, - "19138": { - "jump": "o", - "op": "JUMP" - }, - "19139": { - "op": "JUMPDEST" - }, - "19140": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "19143": { - "op": "SWAP3" - }, - "19144": { - "op": "SWAP1" - }, - "19145": { - "op": "SWAP3" - }, - "19146": { - "op": "AND" - }, - "19147": { - "op": "DUP3" - }, - "19148": { - "op": "MSTORE" - }, - "19149": { - "op": "PUSH1", - "value": "0x20" - }, - "19151": { - "op": "DUP3" - }, - "19152": { - "op": "ADD" - }, - "19153": { - "op": "MSTORE" - }, - "19154": { - "op": "PUSH1", - "value": "0x40" - }, - "19156": { - "op": "ADD" - }, - "19157": { - "op": "SWAP1" - }, - "19158": { - "jump": "o", - "op": "JUMP" - }, - "19159": { - "op": "JUMPDEST" - }, - "19160": { - "op": "PUSH1", - "value": "0x0" - }, - "19162": { - "op": "DUP1" - }, - "19163": { - "op": "DUP4" - }, - "19164": { - "op": "CALLDATALOAD" - }, - "19165": { - "op": "PUSH1", - "value": "0x1E" - }, - "19167": { - "op": "NOT" - }, - "19168": { - "op": "DUP5" - }, - "19169": { - "op": "CALLDATASIZE" - }, - "19170": { - "op": "SUB" - }, - "19171": { - "op": "ADD" - }, - "19172": { - "op": "DUP2" - }, - "19173": { - "op": "SLT" - }, - "19174": { - "op": "PUSH2", - "value": "0x4AED" - }, - "19177": { - "op": "JUMPI" - }, - "19178": { - "op": "DUP3" - }, - "19179": { - "op": "DUP4" - }, - "19180": { - "op": "REVERT" - }, - "19181": { - "op": "JUMPDEST" - }, - "19182": { - "op": "DUP4" - }, - "19183": { - "op": "ADD" - }, - "19184": { - "op": "DUP1" - }, - "19185": { - "op": "CALLDATALOAD" - }, - "19186": { - "op": "SWAP2" - }, - "19187": { - "op": "POP" - }, - "19188": { - "op": "PUSH1", - "value": "0x1" - }, - "19190": { - "op": "PUSH1", - "value": "0x1" - }, - "19192": { - "op": "PUSH1", - "value": "0x40" - }, - "19194": { - "op": "SHL" - }, - "19195": { - "op": "SUB" - }, - "19196": { - "op": "DUP3" - }, - "19197": { - "op": "GT" - }, - "19198": { - "op": "ISZERO" - }, - "19199": { - "op": "PUSH2", - "value": "0x4B06" - }, - "19202": { - "op": "JUMPI" - }, - "19203": { - "op": "DUP3" - }, - "19204": { - "op": "DUP4" - }, - "19205": { - "op": "REVERT" - }, - "19206": { - "op": "JUMPDEST" - }, - "19207": { - "op": "PUSH1", - "value": "0x20" - }, - "19209": { - "op": "SWAP1" - }, - "19210": { - "op": "DUP2" - }, - "19211": { - "op": "ADD" - }, - "19212": { - "op": "SWAP3" - }, - "19213": { - "op": "POP" - }, - "19214": { - "op": "DUP2" - }, - "19215": { - "op": "MUL" - }, - "19216": { - "op": "CALLDATASIZE" - }, - "19217": { - "op": "SUB" - }, - "19218": { - "op": "DUP3" - }, - "19219": { - "op": "SGT" - }, - "19220": { - "op": "ISZERO" - }, - "19221": { - "op": "PUSH2", - "value": "0x40C7" - }, - "19224": { - "op": "JUMPI" - }, - "19225": { - "op": "PUSH1", - "value": "0x0" - }, - "19227": { - "op": "DUP1" - }, - "19228": { - "op": "REVERT" - }, - "19229": { - "op": "JUMPDEST" - }, - "19230": { - "op": "PUSH1", - "value": "0x0" - }, - "19232": { - "op": "DUP3" - }, - "19233": { - "op": "CALLDATALOAD" - }, - "19234": { - "op": "PUSH1", - "value": "0xDE" - }, - "19236": { - "op": "NOT" - }, - "19237": { - "op": "DUP4" - }, - "19238": { - "op": "CALLDATASIZE" - }, - "19239": { - "op": "SUB" - }, - "19240": { - "op": "ADD" - }, - "19241": { - "op": "DUP2" - }, - "19242": { - "op": "SLT" - }, - "19243": { - "op": "PUSH2", - "value": "0x4B32" - }, - "19246": { - "op": "JUMPI" - }, - "19247": { - "op": "DUP2" - }, - "19248": { - "op": "DUP3" - }, - "19249": { - "op": "REVERT" - }, - "19250": { - "op": "JUMPDEST" - }, - "19251": { - "op": "SWAP2" - }, - "19252": { - "op": "SWAP1" - }, - "19253": { - "op": "SWAP2" - }, - "19254": { - "op": "ADD" - }, - "19255": { - "op": "SWAP3" - }, - "19256": { - "op": "SWAP2" - }, - "19257": { - "op": "POP" - }, - "19258": { - "op": "POP" - }, - "19259": { - "jump": "o", - "op": "JUMP" - }, - "19260": { - "op": "JUMPDEST" - }, - "19261": { - "op": "PUSH1", - "value": "0x0" - }, - "19263": { - "op": "DUP3" - }, - "19264": { - "op": "CALLDATALOAD" - }, - "19265": { - "op": "PUSH1", - "value": "0x5E" - }, - "19267": { - "op": "NOT" - }, - "19268": { - "op": "DUP4" - }, - "19269": { - "op": "CALLDATASIZE" - }, - "19270": { - "op": "SUB" - }, - "19271": { - "op": "ADD" - }, - "19272": { - "op": "DUP2" - }, - "19273": { - "op": "SLT" - }, - "19274": { - "op": "PUSH2", - "value": "0x4B32" - }, - "19277": { - "op": "JUMPI" - }, - "19278": { - "op": "DUP2" - }, - "19279": { - "op": "DUP3" - }, - "19280": { - "op": "REVERT" - }, - "19281": { - "op": "JUMPDEST" - }, - "19282": { - "op": "PUSH1", - "value": "0x40" - }, - "19284": { - "op": "MLOAD" - }, - "19285": { - "op": "DUP2" - }, - "19286": { - "op": "DUP2" - }, - "19287": { - "op": "ADD" - }, - "19288": { - "op": "PUSH1", - "value": "0x1" - }, - "19290": { - "op": "PUSH1", - "value": "0x1" - }, - "19292": { - "op": "PUSH1", - "value": "0x40" - }, - "19294": { - "op": "SHL" - }, - "19295": { - "op": "SUB" - }, - "19296": { - "op": "DUP2" - }, - "19297": { - "op": "GT" - }, - "19298": { - "op": "DUP3" - }, - "19299": { - "op": "DUP3" - }, - "19300": { - "op": "LT" - }, - "19301": { - "op": "OR" - }, - "19302": { - "op": "ISZERO" - }, - "19303": { - "op": "PUSH2", - "value": "0x4B6C" - }, - "19306": { - "op": "JUMPI" - }, - "19307": { - "op": "INVALID" - }, - "19308": { - "op": "JUMPDEST" - }, - "19309": { - "op": "PUSH1", - "value": "0x40" - }, - "19311": { - "op": "MSTORE" - }, - "19312": { - "op": "SWAP2" - }, - "19313": { - "op": "SWAP1" - }, - "19314": { - "op": "POP" - }, - "19315": { - "jump": "o", - "op": "JUMP" - }, - "19316": { - "op": "JUMPDEST" - }, - "19317": { - "op": "DUP1" - }, - "19318": { - "op": "ISZERO" - }, - "19319": { - "op": "ISZERO" - }, - "19320": { - "op": "DUP2" - }, - "19321": { - "op": "EQ" - }, - "19322": { - "op": "PUSH2", - "value": "0x4B82" - }, - "19325": { - "op": "JUMPI" - }, - "19326": { - "op": "PUSH1", - "value": "0x0" - }, - "19328": { - "op": "DUP1" - }, - "19329": { - "op": "REVERT" - }, - "19330": { - "op": "JUMPDEST" - }, - "19331": { - "op": "POP" - }, - "19332": { - "jump": "o", - "op": "JUMP" - }, - "19333": { - "op": "JUMPDEST" - }, - "19334": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "19337": { - "op": "DUP2" - }, - "19338": { - "op": "AND" - }, - "19339": { - "op": "DUP2" - }, - "19340": { - "op": "EQ" - }, - "19341": { - "op": "PUSH2", - "value": "0x4B82" - }, - "19344": { - "op": "JUMPI" - }, - "19345": { - "op": "PUSH1", - "value": "0x0" - }, - "19347": { - "op": "DUP1" - }, - "19348": { - "op": "REVERT" - } - }, - "sha1": "6f2bae8e08cdffbb9523a8af153338729873fb66", - "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./TradingAction.sol\";\nimport \"./ActionGuards.sol\";\nimport \"./nTokenMintAction.sol\";\nimport \"./nTokenRedeemAction.sol\";\nimport \"../SettleAssetsExternal.sol\";\nimport \"../FreeCollateralExternal.sol\";\nimport \"../../math/SafeInt256.sol\";\nimport \"../../global/StorageLayoutV1.sol\";\nimport \"../../internal/balances/BalanceHandler.sol\";\nimport \"../../internal/portfolio/PortfolioHandler.sol\";\nimport \"../../internal/AccountContextHandler.sol\";\nimport \"../../../interfaces/notional/NotionalCallback.sol\";\n\ncontract BatchAction is StorageLayoutV1, ActionGuards {\n using BalanceHandler for BalanceState;\n using PortfolioHandler for PortfolioState;\n using AccountContextHandler for AccountContext;\n using AssetRate for AssetRateParameters;\n using TokenHandler for Token;\n using SafeInt256 for int256;\n\n /// @notice Executes a batch of balance transfers including minting and redeeming nTokens.\n /// @param account the account for the action\n /// @param actions array of balance actions to take, must be sorted by currency id\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange\n /// @dev auth:msg.sender auth:ERC1155\n function batchBalanceAction(address account, BalanceAction[] calldata actions)\n external\n payable\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n BalanceState memory balanceState;\n\n for (uint256 i = 0; i < actions.length; i++) {\n BalanceAction calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n\n _executeDepositAction(\n account,\n balanceState,\n action.actionType,\n action.depositActionAmount\n );\n\n _calculateWithdrawActionAndFinalize(\n account,\n accountContext,\n balanceState,\n action.withdrawAmountInternalPrecision,\n action.withdrawEntireCashBalance,\n action.redeemToUnderlying\n );\n }\n\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of balance transfers and trading actions\n /// @param account the account for the action\n /// @param actions array of balance actions with trades to take, must be sorted by currency id\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n /// @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n /// @dev auth:msg.sender auth:ERC1155\n function batchBalanceAndTradeAction(address account, BalanceActionWithTrades[] calldata actions)\n external\n payable\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n AccountContext memory accountContext = _batchBalanceAndTradeAction(account, actions);\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of lending actions. This is different from batchBalanceAndTrade because\n /// it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces\n /// the gas costs for lending because there is no second token transfer where residual balances are sent\n /// back to the account.\n /// @dev Note that this method does not work with native ETH because it requires the ability to pull payment\n /// from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.\n /// @param account the account for the action\n /// @param actions array of batch lending actions\n /// @dev emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebt\n /// @dev auth:msg.sender auth:ERC1155\n function batchLend(address account, BatchLend[] calldata actions)\n external\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n // NOTE: loading the portfolio state must happen after settle account to get the\n // correct portfolio, it will have changed if the account is settled.\n PortfolioState memory portfolioState = PortfolioHandler.buildPortfolioState(\n account,\n accountContext.assetArrayLength,\n 0\n );\n BalanceState memory balanceState;\n\n for (uint256 i = 0; i < actions.length; i++) {\n BatchLend calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n\n // Require that each action have at least 1 trade and all trades are lending trades\n uint256 numTrades = action.trades.length;\n require(numTrades > 0); // dev: no actions\n for (uint256 j = 0; j < numTrades; j++) {\n require(uint8(bytes1(action.trades[j])) == uint8(TradeActionType.Lend)); // dev: only lend trades\n }\n\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n (balanceState.netCashChange, portfolioState) = _executeTrades(\n account,\n action.currencyId,\n action.trades,\n accountContext,\n portfolioState\n );\n // This must be negative as a result of requiring only lending\n require(balanceState.netCashChange <= 0);\n\n // Deposit sufficient cash to get the balance up to zero. If required cash is negative (i.e. there\n // is sufficient cash) then we don't need to do anything. The account's cash balance will be net off\n // and there will be no token transfer.\n // NOTE: it is possible that free collateral decreases as a result of lending a cash balance, will\n // check FC at the end of the method.\n int256 requiredCash = balanceState.storedCashBalance.add(balanceState.netCashChange).neg();\n if (requiredCash > 0) {\n if (action.depositUnderlying) {\n // If depositing underlying, get the current asset rate and convert the required cash\n // back to underlying.\n AssetRateParameters memory ar = AssetRate.buildAssetRateStateful(action.currencyId);\n Token memory underlyingToken = TokenHandler.getUnderlyingToken(action.currencyId);\n int256 underlyingExternalAmount = underlyingToken.convertToExternal(ar.convertToUnderlying(requiredCash));\n\n if (underlyingToken.decimals < Constants.INTERNAL_TOKEN_PRECISION) {\n // If external < 8, we could truncate down and cause an off by one error, for example we need\n // 1.00000011 cash and we deposit only 1.000000, missing 11 units. Therefore, we add a unit here\n // to account for potential rounding issues when tokens are less than 8 decimals (primarily USDC).\n underlyingExternalAmount = underlyingExternalAmount.add(1);\n }\n\n // This returns the cToken / aToken amount as a result of transfer and mint. It must be sufficient to\n // cover the required cash.\n int256 assetAmountInternal = balanceState.depositUnderlyingToken(account, underlyingExternalAmount);\n require(assetAmountInternal >= requiredCash, \"Insufficient deposit\");\n } else {\n // If depositing asset tokens, then we just convert to the external precision. Need to\n // use the depositAssetToken here to handle aToken balances\n Token memory assetToken = TokenHandler.getAssetToken(action.currencyId);\n balanceState.depositAssetToken(\n account,\n assetToken.convertToExternal(requiredCash),\n false // Do not force a transfer here, will be done in finalize if required.\n );\n }\n }\n\n // Will write all the balance changes to storage and transfer asset tokens if required.\n balanceState.finalize(account, accountContext, false);\n }\n\n // Update the portfolio state if bitmap is not enabled. If bitmap is already enabled\n // then all the assets have already been updated in in storage.\n if (!accountContext.isBitmapEnabled()) {\n // NOTE: account context is updated in memory inside this method call.\n accountContext.storeAssetsAndUpdateContext(account, portfolioState, false);\n }\n\n // This will save the account context and check free collateral\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of balance transfers and trading actions via an authorized callback contract. This\n /// can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform\n /// other actions on behalf of the user.\n /// Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract\n /// needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM\n /// will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting\n /// and will mainly be used for contracts that make migrating assets a better user experience.\n /// @param account the account that will take all the actions\n /// @param actions array of balance actions with trades to take, must be sorted by currency id\n /// @param callbackData arbitrary bytes to be passed backed to the caller in the callback\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n /// @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n /// @dev auth:authorizedCallbackContract\n function batchBalanceAndTradeActionWithCallback(\n address account,\n BalanceActionWithTrades[] calldata actions,\n bytes calldata callbackData\n ) external payable {\n // NOTE: Re-entrancy is allowed for authorized callback functions.\n require(authorizedCallbackContract[msg.sender], \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _batchBalanceAndTradeAction(account, actions);\n accountContext.setAccountContext(account);\n\n // Be sure to set the account context before initiating the callback, all stateful updates\n // have been finalized at this point so we are safe to issue a callback. This callback may\n // re-enter Notional safely to deposit or take other actions.\n NotionalCallback(msg.sender).notionalCallback(msg.sender, account, callbackData);\n\n if (accountContext.hasDebt != 0x00) {\n // NOTE: this method may update the account context to turn off the hasDebt flag, this\n // is ok because the worst case would be causing an extra free collateral check when it\n // is not required. This check will be entered if the account hasDebt prior to the callback\n // being triggered above, so it will happen regardless of what the callback function does.\n FreeCollateralExternal.checkFreeCollateralAndRevert(account);\n }\n }\n\n function _batchBalanceAndTradeAction(\n address account,\n BalanceActionWithTrades[] calldata actions\n ) internal returns (AccountContext memory) {\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n BalanceState memory balanceState;\n // NOTE: loading the portfolio state must happen after settle account to get the\n // correct portfolio, it will have changed if the account is settled.\n PortfolioState memory portfolioState = PortfolioHandler.buildPortfolioState(\n account,\n accountContext.assetArrayLength,\n 0\n );\n\n for (uint256 i = 0; i < actions.length; i++) {\n BalanceActionWithTrades calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n\n // Does not revert on invalid action types here, they also have no effect.\n _executeDepositAction(\n account,\n balanceState,\n action.actionType,\n action.depositActionAmount\n );\n\n if (action.trades.length > 0) {\n int256 netCash;\n (netCash, portfolioState) = _executeTrades(\n account,\n action.currencyId,\n action.trades,\n accountContext,\n portfolioState\n );\n\n // If the account owes cash after trading, ensure that it has enough\n if (netCash < 0) _checkSufficientCash(balanceState, netCash.neg());\n balanceState.netCashChange = balanceState.netCashChange.add(netCash);\n }\n\n _calculateWithdrawActionAndFinalize(\n account,\n accountContext,\n balanceState,\n action.withdrawAmountInternalPrecision,\n action.withdrawEntireCashBalance,\n action.redeemToUnderlying\n );\n }\n\n // Update the portfolio state if bitmap is not enabled. If bitmap is already enabled\n // then all the assets have already been updated in in storage.\n if (!accountContext.isBitmapEnabled()) {\n // NOTE: account context is updated in memory inside this method call.\n accountContext.storeAssetsAndUpdateContext(account, portfolioState, false);\n }\n\n // NOTE: free collateral and account context will be set outside of this method call.\n return accountContext;\n }\n\n /// @dev Executes deposits\n function _executeDepositAction(\n address account,\n BalanceState memory balanceState,\n DepositActionType depositType,\n uint256 depositActionAmount_\n ) private {\n int256 depositActionAmount = SafeInt256.toInt(depositActionAmount_);\n int256 assetInternalAmount;\n require(depositActionAmount >= 0);\n\n if (depositType == DepositActionType.None) {\n return;\n } else if (\n depositType == DepositActionType.DepositAsset ||\n depositType == DepositActionType.DepositAssetAndMintNToken\n ) {\n // NOTE: this deposit will NOT revert on a failed transfer unless there is a\n // transfer fee. The actual transfer will take effect later in balanceState.finalize\n assetInternalAmount = balanceState.depositAssetToken(\n account,\n depositActionAmount,\n false // no force transfer\n );\n } else if (\n depositType == DepositActionType.DepositUnderlying ||\n depositType == DepositActionType.DepositUnderlyingAndMintNToken\n ) {\n // NOTE: this deposit will revert on a failed transfer immediately\n assetInternalAmount = balanceState.depositUnderlyingToken(account, depositActionAmount);\n } else if (depositType == DepositActionType.ConvertCashToNToken) {\n // _executeNTokenAction will check if the account has sufficient cash\n assetInternalAmount = depositActionAmount;\n }\n\n _executeNTokenAction(\n balanceState,\n depositType,\n depositActionAmount,\n assetInternalAmount\n );\n }\n\n /// @dev Executes nToken actions\n function _executeNTokenAction(\n BalanceState memory balanceState,\n DepositActionType depositType,\n int256 depositActionAmount,\n int256 assetInternalAmount\n ) private {\n // After deposits have occurred, check if we are minting nTokens\n if (\n depositType == DepositActionType.DepositAssetAndMintNToken ||\n depositType == DepositActionType.DepositUnderlyingAndMintNToken ||\n depositType == DepositActionType.ConvertCashToNToken\n ) {\n // Will revert if trying to mint ntokens and results in a negative cash balance\n _checkSufficientCash(balanceState, assetInternalAmount);\n balanceState.netCashChange = balanceState.netCashChange.sub(assetInternalAmount);\n\n // Converts a given amount of cash (denominated in internal precision) into nTokens\n int256 tokensMinted = nTokenMintAction.nTokenMint(\n balanceState.currencyId,\n assetInternalAmount\n );\n\n balanceState.netNTokenSupplyChange = balanceState.netNTokenSupplyChange.add(\n tokensMinted\n );\n } else if (depositType == DepositActionType.RedeemNToken) {\n require(\n // prettier-ignore\n balanceState\n .storedNTokenBalance\n .add(balanceState.netNTokenTransfer) // transfers would not occur at this point\n .add(balanceState.netNTokenSupplyChange) >= depositActionAmount,\n \"Insufficient token balance\"\n );\n\n balanceState.netNTokenSupplyChange = balanceState.netNTokenSupplyChange.sub(\n depositActionAmount\n );\n\n int256 assetCash = nTokenRedeemAction.nTokenRedeemViaBatch(\n balanceState.currencyId,\n depositActionAmount\n );\n\n balanceState.netCashChange = balanceState.netCashChange.add(assetCash);\n }\n }\n\n /// @dev Calculations any withdraws and finalizes balances\n function _calculateWithdrawActionAndFinalize(\n address account,\n AccountContext memory accountContext,\n BalanceState memory balanceState,\n uint256 withdrawAmountInternalPrecision,\n bool withdrawEntireCashBalance,\n bool redeemToUnderlying\n ) private {\n int256 withdrawAmount = SafeInt256.toInt(withdrawAmountInternalPrecision);\n require(withdrawAmount >= 0); // dev: withdraw action overflow\n\n // NOTE: if withdrawEntireCashBalance is set it will override the withdrawAmountInternalPrecision input\n if (withdrawEntireCashBalance) {\n // This option is here so that accounts do not end up with dust after lending since we generally\n // cannot calculate exact cash amounts from the liquidity curve.\n withdrawAmount = balanceState.storedCashBalance\n .add(balanceState.netCashChange)\n .add(balanceState.netAssetTransferInternalPrecision);\n\n // If the account has a negative cash balance then cannot withdraw\n if (withdrawAmount < 0) withdrawAmount = 0;\n }\n\n // prettier-ignore\n balanceState.netAssetTransferInternalPrecision = balanceState\n .netAssetTransferInternalPrecision\n .sub(withdrawAmount);\n\n balanceState.finalize(account, accountContext, redeemToUnderlying);\n }\n\n function _finalizeAccountContext(address account, AccountContext memory accountContext)\n private\n {\n // At this point all balances, market states and portfolio states should be finalized. Just need to check free\n // collateral if required.\n accountContext.setAccountContext(account);\n if (accountContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(account);\n }\n }\n\n function _executeTrades(\n address account,\n uint16 currencyId,\n bytes32[] calldata trades,\n AccountContext memory accountContext,\n PortfolioState memory portfolioState\n ) private returns (int256 netCash, PortfolioState memory postTradeState) {\n if (accountContext.isBitmapEnabled()) {\n require(\n accountContext.bitmapCurrencyId == currencyId,\n \"Invalid trades for account\"\n );\n bool didIncurDebt;\n (netCash, didIncurDebt) = TradingAction.executeTradesBitmapBatch(\n account,\n accountContext.bitmapCurrencyId,\n accountContext.nextSettleTime,\n trades\n );\n if (didIncurDebt) {\n accountContext.hasDebt = Constants.HAS_ASSET_DEBT | accountContext.hasDebt;\n }\n } else {\n // NOTE: we return portfolio state here instead of setting it inside executeTradesArrayBatch\n // because we want to only write to storage once after all trades are completed\n (postTradeState, netCash) = TradingAction.executeTradesArrayBatch(\n account,\n currencyId,\n portfolioState,\n trades\n );\n }\n }\n\n /// @notice When lending, adding liquidity or minting nTokens the account must have a sufficient cash balance\n /// to do so.\n function _checkSufficientCash(BalanceState memory balanceState, int256 amountInternalPrecision)\n private\n pure\n {\n // The total cash position at this point is: storedCashBalance + netCashChange + netAssetTransferInternalPrecision\n require(\n amountInternalPrecision >= 0 &&\n balanceState.storedCashBalance\n .add(balanceState.netCashChange)\n .add(balanceState.netAssetTransferInternalPrecision) >= amountInternalPrecision,\n \"Insufficient cash\"\n );\n }\n\n function _settleAccountIfRequired(address account)\n private\n returns (AccountContext memory)\n {\n AccountContext memory accountContext = AccountContextHandler.getAccountContext(account);\n if (accountContext.mustSettleAssets()) {\n // Returns a new memory reference to account context\n return SettleAssetsExternal.settleAccount(account, accountContext);\n } else {\n return accountContext;\n }\n }\n\n /// @notice Get a list of deployed library addresses (sorted by library name)\n function getLibInfo() external view returns (address, address, address, address, address, address) {\n return (\n address(FreeCollateralExternal), \n address(MigrateIncentives), \n address(SettleAssetsExternal), \n address(TradingAction),\n address(nTokenMintAction), \n address(nTokenRedeemAction)\n );\n }\n}\n", - "sourceMap": "591:23559:29:-:0;;;;;;;;;;;;;;;;;;;", - "sourcePath": "contracts/external/actions/BatchAction.sol", - "type": "contract" -} +{ "abi": [ { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "components": [ { "internalType": "enum DepositActionType", "name": "actionType", "type": "uint8" }, { "internalType": "uint16", "name": "currencyId", "type": "uint16" }, { "internalType": "uint256", "name": "depositActionAmount", "type": "uint256" }, { "internalType": "uint256", "name": "withdrawAmountInternalPrecision", "type": "uint256" }, { "internalType": "bool", "name": "withdrawEntireCashBalance", "type": "bool" }, { "internalType": "bool", "name": "redeemToUnderlying", "type": "bool" } ], "internalType": "struct BalanceAction[]", "name": "actions", "type": "tuple[]" } ], "name": "batchBalanceAction", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "components": [ { "internalType": "enum DepositActionType", "name": "actionType", "type": "uint8" }, { "internalType": "uint16", "name": "currencyId", "type": "uint16" }, { "internalType": "uint256", "name": "depositActionAmount", "type": "uint256" }, { "internalType": "uint256", "name": "withdrawAmountInternalPrecision", "type": "uint256" }, { "internalType": "bool", "name": "withdrawEntireCashBalance", "type": "bool" }, { "internalType": "bool", "name": "redeemToUnderlying", "type": "bool" }, { "internalType": "bytes32[]", "name": "trades", "type": "bytes32[]" } ], "internalType": "struct BalanceActionWithTrades[]", "name": "actions", "type": "tuple[]" } ], "name": "batchBalanceAndTradeAction", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "components": [ { "internalType": "enum DepositActionType", "name": "actionType", "type": "uint8" }, { "internalType": "uint16", "name": "currencyId", "type": "uint16" }, { "internalType": "uint256", "name": "depositActionAmount", "type": "uint256" }, { "internalType": "uint256", "name": "withdrawAmountInternalPrecision", "type": "uint256" }, { "internalType": "bool", "name": "withdrawEntireCashBalance", "type": "bool" }, { "internalType": "bool", "name": "redeemToUnderlying", "type": "bool" }, { "internalType": "bytes32[]", "name": "trades", "type": "bytes32[]" } ], "internalType": "struct BalanceActionWithTrades[]", "name": "actions", "type": "tuple[]" }, { "internalType": "bytes", "name": "callbackData", "type": "bytes" } ], "name": "batchBalanceAndTradeActionWithCallback", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "components": [ { "internalType": "uint16", "name": "currencyId", "type": "uint16" }, { "internalType": "bool", "name": "depositUnderlying", "type": "bool" }, { "internalType": "bytes32[]", "name": "trades", "type": "bytes32[]" } ], "internalType": "struct BatchLend[]", "name": "actions", "type": "tuple[]" } ], "name": "batchLend", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getLibInfo", "outputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseGuardian", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseRouter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ], "allSourcePaths": { "141": "interfaces/IEIP20NonStandard.sol", "147": "interfaces/aave/ILendingPool.sol", "151": "interfaces/compound/CErc20Interface.sol", "152": "interfaces/compound/CEtherInterface.sol", "153": "interfaces/compound/CTokenInterface.sol", "155": "interfaces/notional/AssetRateAdapter.sol", "157": "interfaces/notional/IRewarder.sol", "159": "interfaces/notional/NotionalCallback.sol", "21": "contracts/external/FreeCollateralExternal.sol", "22": "contracts/external/MigrateIncentives.sol", "25": "contracts/external/SettleAssetsExternal.sol", "28": "contracts/external/actions/ActionGuards.sol", "29": "contracts/external/actions/BatchAction.sol", "35": "contracts/external/actions/TradingAction.sol", "38": "contracts/external/actions/nTokenMintAction.sol", "39": "contracts/external/actions/nTokenRedeemAction.sol", "6": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/math/SafeMath.sol", "60": "contracts/global/Constants.sol", "61": "contracts/global/Deployments.sol", "62": "contracts/global/LibStorage.sol", "63": "contracts/global/StorageLayoutV1.sol", "65": "contracts/global/Types.sol", "66": "contracts/internal/AccountContextHandler.sol", "67": "contracts/internal/balances/BalanceHandler.sol", "68": "contracts/internal/balances/Incentives.sol", "69": "contracts/internal/balances/TokenHandler.sol", "70": "contracts/internal/balances/protocols/AaveHandler.sol", "71": "contracts/internal/balances/protocols/CompoundHandler.sol", "72": "contracts/internal/balances/protocols/GenericToken.sol", "76": "contracts/internal/markets/AssetRate.sol", "77": "contracts/internal/markets/CashGroup.sol", "78": "contracts/internal/markets/DateTime.sol", "79": "contracts/internal/markets/Market.sol", "80": "contracts/internal/nToken/nTokenCalculations.sol", "81": "contracts/internal/nToken/nTokenHandler.sol", "82": "contracts/internal/nToken/nTokenSupply.sol", "83": "contracts/internal/portfolio/BitmapAssetsHandler.sol", "84": "contracts/internal/portfolio/PortfolioHandler.sol", "85": "contracts/internal/portfolio/TransferAssets.sol", "86": "contracts/internal/settlement/SettleBitmapAssets.sol", "87": "contracts/internal/settlement/SettlePortfolioAssets.sol", "88": "contracts/internal/valuation/AssetHandler.sol", "89": "contracts/internal/valuation/ExchangeRate.sol", "90": "contracts/internal/valuation/FreeCollateral.sol", "91": "contracts/math/ABDKMath64x64.sol", "92": "contracts/math/Bitmap.sol", "93": "contracts/math/FloatingPoint56.sol", "94": "contracts/math/SafeInt256.sol" }, "ast": { "absolutePath": "contracts/external/actions/BatchAction.sol", "exportedSymbols": { "ABDKMath64x64": [ 44430 ], "AaveHandler": [ 26669 ], "AccountBalance": [ 57824 ], "AccountContext": [ 57743 ], "AccountContextHandler": [ 24055 ], "ActionGuards": [ 3662 ], "AggregatorInterface": [ 62384 ], "AggregatorV2V3Interface": [ 58997 ], "AggregatorV3Interface": [ 62430 ], "AssetHandler": [ 40067 ], "AssetRate": [ 30677 ], "AssetRateAdapter": [ 59041 ], "AssetRateParameters": [ 57639 ], "AssetRateStorage": [ 57707 ], "AssetStorageState": [ 57500 ], "BalanceAction": [ 57521 ], "BalanceActionWithTrades": [ 57537 ], "BalanceHandler": [ 25398 ], "BalanceState": [ 57632 ], "BalanceStorage": [ 57767 ], "BatchAction": [ 4840 ], "BatchLend": [ 57508 ], "Bitmap": [ 44771 ], "BitmapAssetsHandler": [ 37096 ], "CErc20Interface": [ 59445 ], "CEtherInterface": [ 59757 ], "CTokenInterface": [ 59740 ], "CashGroup": [ 31956 ], "CashGroupParameters": [ 57648 ], "CashGroupSettings": [ 57732 ], "CompoundHandler": [ 26861 ], "Constants": [ 22832 ], "Context": [ 62453 ], "DateTime": [ 32595 ], "Deployments": [ 22839 ], "DepositActionType": [ 57495 ], "ERC20": [ 60749 ], "ETHRate": [ 57613 ], "ETHRateStorage": [ 57702 ], "ExchangeRate": [ 40263 ], "FloatingPoint56": [ 44847 ], "FreeCollateral": [ 41676 ], "FreeCollateralExternal": [ 618 ], "GenericToken": [ 26993 ], "IAToken": [ 60771 ], "IATokenFull": [ 60806 ], "IEIP20NonStandard": [ 61875 ], "IERC20": [ 59607 ], "ILendingPool": [ 60888 ], "IRewarder": [ 59057 ], "IScaledBalanceToken": [ 60796 ], "Incentives": [ 25585 ], "LendingPoolStorage": [ 60812 ], "LibStorage": [ 23238 ], "LiquidationFactors": [ 57591 ], "Market": [ 34509 ], "MarketParameters": [ 57678 ], "MarketStorage": [ 57787 ], "MigrateIncentives": [ 775 ], "NotionalCallback": [ 58532 ], "PortfolioAsset": [ 57661 ], "PortfolioAssetStorage": [ 57799 ], "PortfolioHandler": [ 38387 ], "PortfolioState": [ 57602 ], "SafeInt256": [ 45162 ], "SafeMath": [ 56637 ], "SettleAmount": [ 57542 ], "SettleAssetsExternal": [ 1878 ], "SettleBitmapAssets": [ 38867 ], "SettlePortfolioAssets": [ 39292 ], "SettlementRateStorage": [ 57774 ], "StorageLayoutV1": [ 23292 ], "Token": [ 57553 ], "TokenHandler": [ 26426 ], "TokenStorage": [ 57689 ], "TokenType": [ 57480 ], "TradeActionType": [ 57487 ], "TradingAction": [ 11085 ], "TransferAssets": [ 38618 ], "ifCashStorage": [ 57790 ], "nTokenCalculations": [ 35079 ], "nTokenContext": [ 57758 ], "nTokenHandler": [ 36105 ], "nTokenMintAction": [ 12854 ], "nTokenPortfolio": [ 57568 ], "nTokenRedeemAction": [ 13836 ], "nTokenSupply": [ 36407 ], "nTokenTotalSupplyStorage": [ 57813 ], "nTokenTotalSupplyStorage_deprecated": [ 57806 ] }, "id": 4841, "license": "GPL-3.0-only", "nodeType": "SourceUnit", "nodes": [ { "id": 3664, "literals": [ "solidity", "^", "0.7", ".0" ], "nodeType": "PragmaDirective", "src": "41:23:29" }, { "id": 3665, "literals": [ "abicoder", "v2" ], "nodeType": "PragmaDirective", "src": "65:19:29" }, { "absolutePath": "contracts/external/actions/TradingAction.sol", "file": "./TradingAction.sol", "id": 3666, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 11086, "src": "86:29:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/actions/ActionGuards.sol", "file": "./ActionGuards.sol", "id": 3667, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 3663, "src": "116:28:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/actions/nTokenMintAction.sol", "file": "./nTokenMintAction.sol", "id": 3668, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 12855, "src": "145:32:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/actions/nTokenRedeemAction.sol", "file": "./nTokenRedeemAction.sol", "id": 3669, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 13837, "src": "178:34:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/SettleAssetsExternal.sol", "file": "../SettleAssetsExternal.sol", "id": 3670, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 1879, "src": "213:37:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/FreeCollateralExternal.sol", "file": "../FreeCollateralExternal.sol", "id": 3671, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 619, "src": "251:39:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/math/SafeInt256.sol", "file": "../../math/SafeInt256.sol", "id": 3672, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 45163, "src": "291:35:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/global/StorageLayoutV1.sol", "file": "../../global/StorageLayoutV1.sol", "id": 3673, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 23293, "src": "327:42:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/internal/balances/BalanceHandler.sol", "file": "../../internal/balances/BalanceHandler.sol", "id": 3674, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 25399, "src": "370:52:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/internal/portfolio/PortfolioHandler.sol", "file": "../../internal/portfolio/PortfolioHandler.sol", "id": 3675, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 38388, "src": "423:55:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/internal/AccountContextHandler.sol", "file": "../../internal/AccountContextHandler.sol", "id": 3676, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 24056, "src": "479:50:29", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/NotionalCallback.sol", "file": "../../../interfaces/notional/NotionalCallback.sol", "id": 3677, "nodeType": "ImportDirective", "scope": 4841, "sourceUnit": 58533, "src": "530:59:29", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 3678, "name": "StorageLayoutV1", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 23292, "src": "615:15:29", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageLayoutV1_$23292", "typeString": "contract StorageLayoutV1" } }, "id": 3679, "nodeType": "InheritanceSpecifier", "src": "615:15:29" }, { "baseName": { "id": 3680, "name": "ActionGuards", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3662, "src": "632:12:29", "typeDescriptions": { "typeIdentifier": "t_contract$_ActionGuards_$3662", "typeString": "contract ActionGuards" } }, "id": 3681, "nodeType": "InheritanceSpecifier", "src": "632:12:29" } ], "contractDependencies": [ 3662, 23292 ], "contractKind": "contract", "fullyImplemented": true, "id": 4840, "linearizedBaseContracts": [ 4840, 3662, 23292 ], "name": "BatchAction", "nodeType": "ContractDefinition", "nodes": [ { "id": 3684, "libraryName": { "id": 3682, "name": "BalanceHandler", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 25398, "src": "657:14:29", "typeDescriptions": { "typeIdentifier": "t_contract$_BalanceHandler_$25398", "typeString": "library BalanceHandler" } }, "nodeType": "UsingForDirective", "src": "651:38:29", "typeName": { "id": 3683, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "676:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } } }, { "id": 3687, "libraryName": { "id": 3685, "name": "PortfolioHandler", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 38387, "src": "700:16:29", "typeDescriptions": { "typeIdentifier": "t_contract$_PortfolioHandler_$38387", "typeString": "library PortfolioHandler" } }, "nodeType": "UsingForDirective", "src": "694:42:29", "typeName": { "id": 3686, "name": "PortfolioState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57602, "src": "721:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", "typeString": "struct PortfolioState" } } }, { "id": 3690, "libraryName": { "id": 3688, "name": "AccountContextHandler", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 24055, "src": "747:21:29", "typeDescriptions": { "typeIdentifier": "t_contract$_AccountContextHandler_$24055", "typeString": "library AccountContextHandler" } }, "nodeType": "UsingForDirective", "src": "741:47:29", "typeName": { "id": 3689, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "773:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } } }, { "id": 3693, "libraryName": { "id": 3691, "name": "AssetRate", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 30677, "src": "799:9:29", "typeDescriptions": { "typeIdentifier": "t_contract$_AssetRate_$30677", "typeString": "library AssetRate" } }, "nodeType": "UsingForDirective", "src": "793:40:29", "typeName": { "id": 3692, "name": "AssetRateParameters", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57639, "src": "813:19:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AssetRateParameters_$57639_storage_ptr", "typeString": "struct AssetRateParameters" } } }, { "id": 3696, "libraryName": { "id": 3694, "name": "TokenHandler", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 26426, "src": "844:12:29", "typeDescriptions": { "typeIdentifier": "t_contract$_TokenHandler_$26426", "typeString": "library TokenHandler" } }, "nodeType": "UsingForDirective", "src": "838:29:29", "typeName": { "id": 3695, "name": "Token", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57553, "src": "861:5:29", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", "typeString": "struct Token" } } }, { "id": 3699, "libraryName": { "id": 3697, "name": "SafeInt256", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 45162, "src": "878:10:29", "typeDescriptions": { "typeIdentifier": "t_contract$_SafeInt256_$45162", "typeString": "library SafeInt256" } }, "nodeType": "UsingForDirective", "src": "872:28:29", "typeName": { "id": 3698, "name": "int256", "nodeType": "ElementaryTypeName", "src": "893:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } }, { "body": { "id": 3811, "nodeType": "Block", "src": "1378:1390:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 3722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 3714, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3711, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "1396:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 3712, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "1407:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 3713, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "1407:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "1396:21:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 3721, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 3715, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "1421:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 3716, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "1421:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "arguments": [ { "id": 3719, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "1443:4:29", "typeDescriptions": { "typeIdentifier": "t_contract$_BatchAction_$4840", "typeString": "contract BatchAction" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_BatchAction_$4840", "typeString": "contract BatchAction" } ], "id": 3718, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1435:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 3717, "name": "address", "nodeType": "ElementaryTypeName", "src": "1435:7:29", "typeDescriptions": {} } }, "id": 3720, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1435:13:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "1421:27:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "1396:52:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a6564", "id": 3723, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1450:14:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" }, "value": "Unauthorized" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" } ], "id": 3710, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "1388:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 3724, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1388:77:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3725, "nodeType": "ExpressionStatement", "src": "1388:77:29" }, { "expression": { "arguments": [ { "id": 3727, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "1495:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 3726, "name": "requireValidAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3661, "src": "1475:19:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", "typeString": "function (address) view" } }, "id": 3728, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1475:28:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3729, "nodeType": "ExpressionStatement", "src": "1475:28:29" }, { "assignments": [ 3731 ], "declarations": [ { "constant": false, "id": 3731, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 3811, "src": "1514:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 3730, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "1514:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 3735, "initialValue": { "arguments": [ { "id": 3733, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "1578:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 3732, "name": "_settleAccountIfRequired", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, "src": "1553:24:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) returns (struct AccountContext memory)" } }, "id": 3734, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1553:33:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "1514:72:29" }, { "assignments": [ 3737 ], "declarations": [ { "constant": false, "id": 3737, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 3811, "src": "1596:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 3736, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "1596:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" } ], "id": 3738, "nodeType": "VariableDeclarationStatement", "src": "1596:32:29" }, { "body": { "id": 3804, "nodeType": "Block", "src": "1684:1019:29", "statements": [ { "assignments": [ 3751 ], "declarations": [ { "constant": false, "id": 3751, "mutability": "mutable", "name": "action", "nodeType": "VariableDeclaration", "scope": 3804, "src": "1698:29:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction" }, "typeName": { "id": 3750, "name": "BalanceAction", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57521, "src": "1698:13:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_storage_ptr", "typeString": "struct BalanceAction" } }, "visibility": "internal" } ], "id": 3755, "initialValue": { "baseExpression": { "id": 3752, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3705, "src": "1730:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceAction calldata[] calldata" } }, "id": 3754, "indexExpression": { "id": 3753, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3740, "src": "1738:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "1730:10:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "nodeType": "VariableDeclarationStatement", "src": "1698:42:29" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3758, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3756, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3740, "src": "1953:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 3757, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1957:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1953:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 3773, "nodeType": "IfStatement", "src": "1949:118:29", "trueBody": { "id": 3772, "nodeType": "Block", "src": "1960:107:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint16", "typeString": "uint16" }, "id": 3768, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 3760, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "1986:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57512, "src": "1986:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "expression": { "baseExpression": { "id": 3762, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3705, "src": "2006:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceAction calldata[] calldata" } }, "id": 3766, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3765, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3763, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3740, "src": "2014:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "31", "id": 3764, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2018:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "2014:5:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "2006:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3767, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57512, "src": "2006:25:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "src": "1986:45:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e736f7274656420616374696f6e73", "id": 3769, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "2033:18:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", "typeString": "literal_string \"Unsorted actions\"" }, "value": "Unsorted actions" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", "typeString": "literal_string \"Unsorted actions\"" } ], "id": 3759, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "1978:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 3770, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1978:74:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3771, "nodeType": "ExpressionStatement", "src": "1978:74:29" } ] } }, { "expression": { "arguments": [ { "id": 3777, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "2165:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 3778, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "2174:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3779, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57512, "src": "2174:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 3780, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3731, "src": "2193:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "expression": { "id": 3774, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3737, "src": "2135:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 3776, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "loadBalanceState", "nodeType": "MemberAccess", "referencedDeclaration": 25360, "src": "2135:29:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" } }, "id": 3781, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2135:73:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3782, "nodeType": "ExpressionStatement", "src": "2135:73:29" }, { "expression": { "arguments": [ { "id": 3784, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "2262:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 3785, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3737, "src": "2287:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "expression": { "id": 3786, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "2317:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "actionType", "nodeType": "MemberAccess", "referencedDeclaration": 57510, "src": "2317:17:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, { "expression": { "id": 3788, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "2352:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3789, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "depositActionAmount", "nodeType": "MemberAccess", "referencedDeclaration": 57514, "src": "2352:26:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 3783, "name": "_executeDepositAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4451, "src": "2223:21:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_uint256_$returns$__$", "typeString": "function (address,struct BalanceState memory,enum DepositActionType,uint256)" } }, "id": 3790, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2223:169:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3791, "nodeType": "ExpressionStatement", "src": "2223:169:29" }, { "expression": { "arguments": [ { "id": 3793, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "2460:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 3794, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3731, "src": "2485:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 3795, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3737, "src": "2517:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "expression": { "id": 3796, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "2547:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "withdrawAmountInternalPrecision", "nodeType": "MemberAccess", "referencedDeclaration": 57516, "src": "2547:38:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 3798, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "2603:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "withdrawEntireCashBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57518, "src": "2603:32:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "expression": { "id": 3800, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3751, "src": "2653:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_calldata_ptr", "typeString": "struct BalanceAction calldata" } }, "id": 3801, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "redeemToUnderlying", "nodeType": "MemberAccess", "referencedDeclaration": 57520, "src": "2653:25:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 3792, "name": "_calculateWithdrawActionAndFinalize", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4637, "src": "2407:35:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_uint256_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,struct AccountContext memory,struct BalanceState memory,uint256,bool,bool)" } }, "id": 3802, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2407:285:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3803, "nodeType": "ExpressionStatement", "src": "2407:285:29" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3746, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3743, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3740, "src": "1659:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 3744, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3705, "src": "1663:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceAction calldata[] calldata" } }, "id": 3745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "1663:14:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "1659:18:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 3805, "initializationExpression": { "assignments": [ 3740 ], "declarations": [ { "constant": false, "id": 3740, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 3805, "src": "1644:9:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3739, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1644:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 3742, "initialValue": { "hexValue": "30", "id": 3741, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1656:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "1644:13:29" }, "loopExpression": { "expression": { "id": 3748, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "1679:3:29", "subExpression": { "id": 3747, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3740, "src": "1679:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 3749, "nodeType": "ExpressionStatement", "src": "1679:3:29" }, "nodeType": "ForStatement", "src": "1639:1064:29" }, { "expression": { "arguments": [ { "id": 3807, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3702, "src": "2737:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 3808, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3731, "src": "2746:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "id": 3806, "name": "_finalizeAccountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4663, "src": "2713:23:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", "typeString": "function (address,struct AccountContext memory)" } }, "id": 3809, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2713:48:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3810, "nodeType": "ExpressionStatement", "src": "2713:48:29" } ] }, "documentation": { "id": 3700, "nodeType": "StructuredDocumentation", "src": "906:330:29", "text": "@notice Executes a batch of balance transfers including minting and redeeming nTokens.\n @param account the account for the action\n @param actions array of balance actions to take, must be sorted by currency id\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange\n @dev auth:msg.sender auth:ERC1155" }, "functionSelector": "6e6a32a6", "id": 3812, "implemented": true, "kind": "function", "modifiers": [ { "id": 3708, "modifierName": { "id": 3707, "name": "nonReentrant", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3626, "src": "1361:12:29", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "1361:12:29" } ], "name": "batchBalanceAction", "nodeType": "FunctionDefinition", "parameters": { "id": 3706, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3702, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 3812, "src": "1269:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3701, "name": "address", "nodeType": "ElementaryTypeName", "src": "1269:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3705, "mutability": "mutable", "name": "actions", "nodeType": "VariableDeclaration", "scope": 3812, "src": "1286:32:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceAction[]" }, "typeName": { "baseType": { "id": 3703, "name": "BalanceAction", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57521, "src": "1286:13:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceAction_$57521_storage_ptr", "typeString": "struct BalanceAction" } }, "id": 3704, "nodeType": "ArrayTypeName", "src": "1286:15:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceAction_$57521_storage_$dyn_storage_ptr", "typeString": "struct BalanceAction[]" } }, "visibility": "internal" } ], "src": "1268:51:29" }, "returnParameters": { "id": 3709, "nodeType": "ParameterList", "parameters": [], "src": "1378:0:29" }, "scope": 4840, "src": "1241:1527:29", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { "id": 3855, "nodeType": "Block", "src": "3390:284:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 3835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 3827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3824, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3815, "src": "3408:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 3825, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "3419:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 3826, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "3419:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "3408:21:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 3834, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 3828, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "3433:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 3829, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "3433:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "arguments": [ { "id": 3832, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "3455:4:29", "typeDescriptions": { "typeIdentifier": "t_contract$_BatchAction_$4840", "typeString": "contract BatchAction" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_BatchAction_$4840", "typeString": "contract BatchAction" } ], "id": 3831, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3447:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 3830, "name": "address", "nodeType": "ElementaryTypeName", "src": "3447:7:29", "typeDescriptions": {} } }, "id": 3833, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3447:13:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "3433:27:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "3408:52:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a6564", "id": 3836, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3462:14:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" }, "value": "Unauthorized" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" } ], "id": 3823, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "3400:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 3837, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3400:77:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3838, "nodeType": "ExpressionStatement", "src": "3400:77:29" }, { "expression": { "arguments": [ { "id": 3840, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3815, "src": "3507:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 3839, "name": "requireValidAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3661, "src": "3487:19:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", "typeString": "function (address) view" } }, "id": 3841, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3487:28:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3842, "nodeType": "ExpressionStatement", "src": "3487:28:29" }, { "assignments": [ 3844 ], "declarations": [ { "constant": false, "id": 3844, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 3855, "src": "3525:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 3843, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "3525:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 3849, "initialValue": { "arguments": [ { "id": 3846, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3815, "src": "3592:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 3847, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3818, "src": "3601:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } ], "id": 3845, "name": "_batchBalanceAndTradeAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4359, "src": "3564:27:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct BalanceActionWithTrades calldata[] calldata) returns (struct AccountContext memory)" } }, "id": 3848, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3564:45:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "3525:84:29" }, { "expression": { "arguments": [ { "id": 3851, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3815, "src": "3643:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 3852, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3844, "src": "3652:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "id": 3850, "name": "_finalizeAccountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4663, "src": "3619:23:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", "typeString": "function (address,struct AccountContext memory)" } }, "id": 3853, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3619:48:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3854, "nodeType": "ExpressionStatement", "src": "3619:48:29" } ] }, "documentation": { "id": 3813, "nodeType": "StructuredDocumentation", "src": "2774:456:29", "text": "@notice Executes a batch of balance transfers and trading actions\n @param account the account for the action\n @param actions array of balance actions with trades to take, must be sorted by currency id\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n @dev auth:msg.sender auth:ERC1155" }, "functionSelector": "0276b64b", "id": 3856, "implemented": true, "kind": "function", "modifiers": [ { "id": 3821, "modifierName": { "id": 3820, "name": "nonReentrant", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3626, "src": "3373:12:29", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "3373:12:29" } ], "name": "batchBalanceAndTradeAction", "nodeType": "FunctionDefinition", "parameters": { "id": 3819, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3815, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 3856, "src": "3271:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3814, "name": "address", "nodeType": "ElementaryTypeName", "src": "3271:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3818, "mutability": "mutable", "name": "actions", "nodeType": "VariableDeclaration", "scope": 3856, "src": "3288:42:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades[]" }, "typeName": { "baseType": { "id": 3816, "name": "BalanceActionWithTrades", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57537, "src": "3288:23:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", "typeString": "struct BalanceActionWithTrades" } }, "id": 3817, "nodeType": "ArrayTypeName", "src": "3288:25:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", "typeString": "struct BalanceActionWithTrades[]" } }, "visibility": "internal" } ], "src": "3270:61:29" }, "returnParameters": { "id": 3822, "nodeType": "ParameterList", "parameters": [], "src": "3390:0:29" }, "scope": 4840, "src": "3235:439:29", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { "id": 4140, "nodeType": "Block", "src": "4595:5307:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 3879, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 3871, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3868, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "4613:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 3869, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "4624:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 3870, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "4624:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "4613:21:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 3878, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 3872, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "4638:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 3873, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "4638:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "arguments": [ { "id": 3876, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "4660:4:29", "typeDescriptions": { "typeIdentifier": "t_contract$_BatchAction_$4840", "typeString": "contract BatchAction" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_BatchAction_$4840", "typeString": "contract BatchAction" } ], "id": 3875, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "4652:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 3874, "name": "address", "nodeType": "ElementaryTypeName", "src": "4652:7:29", "typeDescriptions": {} } }, "id": 3877, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4652:13:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "4638:27:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4613:52:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a6564", "id": 3880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4667:14:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" }, "value": "Unauthorized" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" } ], "id": 3867, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "4605:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 3881, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4605:77:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3882, "nodeType": "ExpressionStatement", "src": "4605:77:29" }, { "expression": { "arguments": [ { "id": 3884, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "4712:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 3883, "name": "requireValidAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3661, "src": "4692:19:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", "typeString": "function (address) view" } }, "id": 3885, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4692:28:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3886, "nodeType": "ExpressionStatement", "src": "4692:28:29" }, { "assignments": [ 3888 ], "declarations": [ { "constant": false, "id": 3888, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4140, "src": "4731:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 3887, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "4731:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 3892, "initialValue": { "arguments": [ { "id": 3890, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "4795:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 3889, "name": "_settleAccountIfRequired", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, "src": "4770:24:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) returns (struct AccountContext memory)" } }, "id": 3891, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4770:33:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "4731:72:29" }, { "assignments": [ 3894 ], "declarations": [ { "constant": false, "id": 3894, "mutability": "mutable", "name": "portfolioState", "nodeType": "VariableDeclaration", "scope": 4140, "src": "4980:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState" }, "typeName": { "id": 3893, "name": "PortfolioState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57602, "src": "4980:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", "typeString": "struct PortfolioState" } }, "visibility": "internal" } ], "id": 3902, "initialValue": { "arguments": [ { "id": 3897, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "5069:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 3898, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "5090:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 3899, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "assetArrayLength", "nodeType": "MemberAccess", "referencedDeclaration": 57738, "src": "5090:31:29", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, { "hexValue": "30", "id": 3900, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5135:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint8", "typeString": "uint8" }, { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "expression": { "id": 3895, "name": "PortfolioHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38387, "src": "5019:16:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", "typeString": "type(library PortfolioHandler)" } }, "id": 3896, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "buildPortfolioState", "nodeType": "MemberAccess", "referencedDeclaration": 38148, "src": "5019:36:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$_t_uint256_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "function (address,uint8,uint256) view returns (struct PortfolioState memory)" } }, "id": 3901, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5019:127:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } }, "nodeType": "VariableDeclarationStatement", "src": "4980:166:29" }, { "assignments": [ 3904 ], "declarations": [ { "constant": false, "id": 3904, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 4140, "src": "5156:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 3903, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "5156:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" } ], "id": 3905, "nodeType": "VariableDeclarationStatement", "src": "5156:32:29" }, { "body": { "id": 4119, "nodeType": "Block", "src": "5244:4125:29", "statements": [ { "assignments": [ 3918 ], "declarations": [ { "constant": false, "id": 3918, "mutability": "mutable", "name": "action", "nodeType": "VariableDeclaration", "scope": 4119, "src": "5258:25:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend" }, "typeName": { "id": 3917, "name": "BatchLend", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57508, "src": "5258:9:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_storage_ptr", "typeString": "struct BatchLend" } }, "visibility": "internal" } ], "id": 3922, "initialValue": { "baseExpression": { "id": 3919, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3862, "src": "5286:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BatchLend calldata[] calldata" } }, "id": 3921, "indexExpression": { "id": 3920, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3907, "src": "5294:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "5286:10:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "nodeType": "VariableDeclarationStatement", "src": "5258:38:29" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3925, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3923, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3907, "src": "5509:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 3924, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5513:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "5509:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 3940, "nodeType": "IfStatement", "src": "5505:118:29", "trueBody": { "id": 3939, "nodeType": "Block", "src": "5516:107:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint16", "typeString": "uint16" }, "id": 3935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 3927, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "5542:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 3928, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "5542:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "expression": { "baseExpression": { "id": 3929, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3862, "src": "5562:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BatchLend calldata[] calldata" } }, "id": 3933, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3932, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3930, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3907, "src": "5570:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "31", "id": 3931, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5574:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "5570:5:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "5562:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 3934, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "5562:25:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "src": "5542:45:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e736f7274656420616374696f6e73", "id": 3936, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5589:18:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", "typeString": "literal_string \"Unsorted actions\"" }, "value": "Unsorted actions" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", "typeString": "literal_string \"Unsorted actions\"" } ], "id": 3926, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "5534:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 3937, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5534:74:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3938, "nodeType": "ExpressionStatement", "src": "5534:74:29" } ] } }, { "assignments": [ 3942 ], "declarations": [ { "constant": false, "id": 3942, "mutability": "mutable", "name": "numTrades", "nodeType": "VariableDeclaration", "scope": 4119, "src": "5733:17:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3941, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5733:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 3946, "initialValue": { "expression": { "expression": { "id": 3943, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "5753:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 3944, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "trades", "nodeType": "MemberAccess", "referencedDeclaration": 57507, "src": "5753:13:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } }, "id": 3945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "5753:20:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "5733:40:29" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3950, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3948, "name": "numTrades", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3942, "src": "5795:9:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 3949, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5807:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "5795:13:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 3947, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "5787:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 3951, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5787:22:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3952, "nodeType": "ExpressionStatement", "src": "5787:22:29" }, { "body": { "id": 3982, "nodeType": "Block", "src": "5882:129:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, "id": 3979, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "arguments": [ { "baseExpression": { "expression": { "id": 3968, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "5921:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 3969, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "trades", "nodeType": "MemberAccess", "referencedDeclaration": 57507, "src": "5921:13:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } }, "id": 3971, "indexExpression": { "id": 3970, "name": "j", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3954, "src": "5935:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "5921:16:29", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 3967, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "5914:6:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes1_$", "typeString": "type(bytes1)" }, "typeName": { "id": 3966, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "5914:6:29", "typeDescriptions": {} } }, "id": 3972, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5914:24:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } ], "id": 3965, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "5908:5:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { "id": 3964, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "5908:5:29", "typeDescriptions": {} } }, "id": 3973, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5908:31:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "arguments": [ { "expression": { "id": 3976, "name": "TradeActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57487, "src": "5949:15:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_TradeActionType_$57487_$", "typeString": "type(enum TradeActionType)" } }, "id": 3977, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "Lend", "nodeType": "MemberAccess", "src": "5949:20:29", "typeDescriptions": { "typeIdentifier": "t_enum$_TradeActionType_$57487", "typeString": "enum TradeActionType" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_enum$_TradeActionType_$57487", "typeString": "enum TradeActionType" } ], "id": 3975, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "5943:5:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { "id": 3974, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "5943:5:29", "typeDescriptions": {} } }, "id": 3978, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5943:27:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "src": "5908:62:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 3963, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "5900:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 3980, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5900:71:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3981, "nodeType": "ExpressionStatement", "src": "5900:71:29" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3957, "name": "j", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3954, "src": "5862:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 3958, "name": "numTrades", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3942, "src": "5866:9:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5862:13:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 3983, "initializationExpression": { "assignments": [ 3954 ], "declarations": [ { "constant": false, "id": 3954, "mutability": "mutable", "name": "j", "nodeType": "VariableDeclaration", "scope": 3983, "src": "5847:9:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3953, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5847:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 3956, "initialValue": { "hexValue": "30", "id": 3955, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5859:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "5847:13:29" }, "loopExpression": { "expression": { "id": 3961, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "5877:3:29", "subExpression": { "id": 3960, "name": "j", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3954, "src": "5877:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 3962, "nodeType": "ExpressionStatement", "src": "5877:3:29" }, "nodeType": "ForStatement", "src": "5842:169:29" }, { "expression": { "arguments": [ { "id": 3987, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "6110:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 3988, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "6119:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 3989, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "6119:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 3990, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "6138:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "expression": { "id": 3984, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "6080:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 3986, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "loadBalanceState", "nodeType": "MemberAccess", "referencedDeclaration": 25360, "src": "6080:29:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" } }, "id": 3991, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "6080:73:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 3992, "nodeType": "ExpressionStatement", "src": "6080:73:29" }, { "expression": { "id": 4007, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "expression": { "id": 3993, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "6168:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 3995, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "6168:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 3996, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3894, "src": "6196:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } } ], "id": 3997, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "6167:44:29", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "tuple(int256,struct PortfolioState memory)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 3999, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "6246:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4000, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "6271:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 4001, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "6271:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "expression": { "id": 4002, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "6306:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 4003, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "trades", "nodeType": "MemberAccess", "referencedDeclaration": 57507, "src": "6306:13:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } }, { "id": 4004, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "6337:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 4005, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3894, "src": "6369:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } ], "id": 3998, "name": "_executeTrades", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4738, "src": "6214:14:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint16_$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_PortfolioState_$57602_memory_ptr_$returns$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "function (address,uint16,bytes32[] calldata,struct AccountContext memory,struct PortfolioState memory) returns (int256,struct PortfolioState memory)" } }, "id": 4006, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "6214:183:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "tuple(int256,struct PortfolioState memory)" } }, "src": "6167:230:29", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4008, "nodeType": "ExpressionStatement", "src": "6167:230:29" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4013, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4010, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "6494:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4011, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "6494:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "hexValue": "30", "id": 4012, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "6524:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "6494:31:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 4009, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "6486:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 4014, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "6486:40:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4015, "nodeType": "ExpressionStatement", "src": "6486:40:29" }, { "assignments": [ 4017 ], "declarations": [ { "constant": false, "id": 4017, "mutability": "mutable", "name": "requiredCash", "nodeType": "VariableDeclaration", "scope": 4119, "src": "6978:19:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4016, "name": "int256", "nodeType": "ElementaryTypeName", "src": "6978:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4026, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "arguments": [ { "expression": { "id": 4021, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "7035:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4022, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "7035:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4018, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "7000:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4019, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "storedCashBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57617, "src": "7000:30:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4020, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "7000:34:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4023, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7000:62:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "neg", "nodeType": "MemberAccess", "referencedDeclaration": 44999, "src": "7000:66:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256) pure returns (int256)" } }, "id": 4025, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7000:68:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "6978:90:29" }, { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4027, "name": "requiredCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4017, "src": "7086:12:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 4028, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "7101:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "7086:16:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4110, "nodeType": "IfStatement", "src": "7082:2109:29", "trueBody": { "id": 4109, "nodeType": "Block", "src": "7104:2087:29", "statements": [ { "condition": { "expression": { "id": 4030, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "7126:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 4031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "depositUnderlying", "nodeType": "MemberAccess", "referencedDeclaration": 57504, "src": "7126:24:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 4107, "nodeType": "Block", "src": "8601:576:29", "statements": [ { "assignments": [ 4089 ], "declarations": [ { "constant": false, "id": 4089, "mutability": "mutable", "name": "assetToken", "nodeType": "VariableDeclaration", "scope": 4107, "src": "8810:23:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token" }, "typeName": { "id": 4088, "name": "Token", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57553, "src": "8810:5:29", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", "typeString": "struct Token" } }, "visibility": "internal" } ], "id": 4095, "initialValue": { "arguments": [ { "expression": { "id": 4092, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "8863:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 4093, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "8863:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint16", "typeString": "uint16" } ], "expression": { "id": 4090, "name": "TokenHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 26426, "src": "8836:12:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TokenHandler_$26426_$", "typeString": "type(library TokenHandler)" } }, "id": 4091, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getAssetToken", "nodeType": "MemberAccess", "referencedDeclaration": 25650, "src": "8836:26:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_struct$_Token_$57553_memory_ptr_$", "typeString": "function (uint256) view returns (struct Token memory)" } }, "id": 4094, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "8836:45:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token memory" } }, "nodeType": "VariableDeclarationStatement", "src": "8810:71:29" }, { "expression": { "arguments": [ { "id": 4099, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "8959:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 4102, "name": "requiredCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4017, "src": "9021:12:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4100, "name": "assetToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4089, "src": "8992:10:29", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token memory" } }, "id": 4101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "convertToExternal", "nodeType": "MemberAccess", "referencedDeclaration": 26408, "src": "8992:28:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_Token_$57553_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_Token_$57553_memory_ptr_$", "typeString": "function (struct Token memory,int256) pure returns (int256)" } }, "id": 4103, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "8992:42:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "hexValue": "66616c7365", "id": 4104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "9060:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 4096, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "8903:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4098, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "depositAssetToken", "nodeType": "MemberAccess", "referencedDeclaration": 24222, "src": "8903:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,int256,bool) returns (int256)" } }, "id": 4105, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "8903:255:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4106, "nodeType": "ExpressionStatement", "src": "8903:255:29" } ] }, "id": 4108, "nodeType": "IfStatement", "src": "7122:2055:29", "trueBody": { "id": 4087, "nodeType": "Block", "src": "7152:1443:29", "statements": [ { "assignments": [ 4033 ], "declarations": [ { "constant": false, "id": 4033, "mutability": "mutable", "name": "ar", "nodeType": "VariableDeclaration", "scope": 4087, "src": "7323:29:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", "typeString": "struct AssetRateParameters" }, "typeName": { "id": 4032, "name": "AssetRateParameters", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57639, "src": "7323:19:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AssetRateParameters_$57639_storage_ptr", "typeString": "struct AssetRateParameters" } }, "visibility": "internal" } ], "id": 4039, "initialValue": { "arguments": [ { "expression": { "id": 4036, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "7388:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 4037, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "7388:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint16", "typeString": "uint16" } ], "expression": { "id": 4034, "name": "AssetRate", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 30677, "src": "7355:9:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_AssetRate_$30677_$", "typeString": "type(library AssetRate)" } }, "id": 4035, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "buildAssetRateStateful", "nodeType": "MemberAccess", "referencedDeclaration": 30437, "src": "7355:32:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$_t_struct$_AssetRateParameters_$57639_memory_ptr_$", "typeString": "function (uint256) returns (struct AssetRateParameters memory)" } }, "id": 4038, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7355:51:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", "typeString": "struct AssetRateParameters memory" } }, "nodeType": "VariableDeclarationStatement", "src": "7323:83:29" }, { "assignments": [ 4041 ], "declarations": [ { "constant": false, "id": 4041, "mutability": "mutable", "name": "underlyingToken", "nodeType": "VariableDeclaration", "scope": 4087, "src": "7428:28:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token" }, "typeName": { "id": 4040, "name": "Token", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57553, "src": "7428:5:29", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_storage_ptr", "typeString": "struct Token" } }, "visibility": "internal" } ], "id": 4047, "initialValue": { "arguments": [ { "expression": { "id": 4044, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3918, "src": "7491:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_calldata_ptr", "typeString": "struct BatchLend calldata" } }, "id": 4045, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57502, "src": "7491:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint16", "typeString": "uint16" } ], "expression": { "id": 4042, "name": "TokenHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 26426, "src": "7459:12:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TokenHandler_$26426_$", "typeString": "type(library TokenHandler)" } }, "id": 4043, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getUnderlyingToken", "nodeType": "MemberAccess", "referencedDeclaration": 25663, "src": "7459:31:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_struct$_Token_$57553_memory_ptr_$", "typeString": "function (uint256) view returns (struct Token memory)" } }, "id": 4046, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7459:50:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token memory" } }, "nodeType": "VariableDeclarationStatement", "src": "7428:81:29" }, { "assignments": [ 4049 ], "declarations": [ { "constant": false, "id": 4049, "mutability": "mutable", "name": "underlyingExternalAmount", "nodeType": "VariableDeclaration", "scope": 4087, "src": "7531:31:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4048, "name": "int256", "nodeType": "ElementaryTypeName", "src": "7531:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4057, "initialValue": { "arguments": [ { "arguments": [ { "id": 4054, "name": "requiredCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4017, "src": "7622:12:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4052, "name": "ar", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4033, "src": "7599:2:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AssetRateParameters_$57639_memory_ptr", "typeString": "struct AssetRateParameters memory" } }, "id": 4053, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "convertToUnderlying", "nodeType": "MemberAccess", "referencedDeclaration": 30154, "src": "7599:22:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_AssetRateParameters_$57639_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_AssetRateParameters_$57639_memory_ptr_$", "typeString": "function (struct AssetRateParameters memory,int256) pure returns (int256)" } }, "id": 4055, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7599:36:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4050, "name": "underlyingToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4041, "src": "7565:15:29", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token memory" } }, "id": 4051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "convertToExternal", "nodeType": "MemberAccess", "referencedDeclaration": 26408, "src": "7565:33:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_Token_$57553_memory_ptr_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_Token_$57553_memory_ptr_$", "typeString": "function (struct Token memory,int256) pure returns (int256)" } }, "id": 4056, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7565:71:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "7531:105:29" }, { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4062, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4058, "name": "underlyingToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4041, "src": "7663:15:29", "typeDescriptions": { "typeIdentifier": "t_struct$_Token_$57553_memory_ptr", "typeString": "struct Token memory" } }, "id": 4059, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "decimals", "nodeType": "MemberAccess", "referencedDeclaration": 57548, "src": "7663:24:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 4060, "name": "Constants", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 22832, "src": "7690:9:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", "typeString": "type(library Constants)" } }, "id": 4061, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "INTERNAL_TOKEN_PRECISION", "nodeType": "MemberAccess", "referencedDeclaration": 22575, "src": "7690:34:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "7663:61:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4071, "nodeType": "IfStatement", "src": "7659:536:29", "trueBody": { "id": 4070, "nodeType": "Block", "src": "7726:469:29", "statements": [ { "expression": { "id": 4068, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4063, "name": "underlyingExternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4049, "src": "8114:24:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "hexValue": "31", "id": 4066, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "8170:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" } ], "expression": { "id": 4064, "name": "underlyingExternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4049, "src": "8141:24:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4065, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "8141:28:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4067, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "8141:31:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "8114:58:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4069, "nodeType": "ExpressionStatement", "src": "8114:58:29" } ] } }, { "assignments": [ 4073 ], "declarations": [ { "constant": false, "id": 4073, "mutability": "mutable", "name": "assetAmountInternal", "nodeType": "VariableDeclaration", "scope": 4087, "src": "8387:26:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4072, "name": "int256", "nodeType": "ElementaryTypeName", "src": "8387:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4079, "initialValue": { "arguments": [ { "id": 4076, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "8452:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4077, "name": "underlyingExternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4049, "src": "8461:24:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4074, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "8416:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4075, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "depositUnderlyingToken", "nodeType": "MemberAccess", "referencedDeclaration": 24323, "src": "8416:35:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,int256) returns (int256)" } }, "id": 4078, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "8416:70:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "8387:99:29" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4083, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4081, "name": "assetAmountInternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4073, "src": "8516:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 4082, "name": "requiredCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4017, "src": "8539:12:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "8516:35:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "496e73756666696369656e74206465706f736974", "id": 4084, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8553:22:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_f8fcaef683f0d1614f3145343efc9a3d2cb7c83cead426db44ecb090c666d824", "typeString": "literal_string \"Insufficient deposit\"" }, "value": "Insufficient deposit" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_f8fcaef683f0d1614f3145343efc9a3d2cb7c83cead426db44ecb090c666d824", "typeString": "literal_string \"Insufficient deposit\"" } ], "id": 4080, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "8508:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4085, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "8508:68:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4086, "nodeType": "ExpressionStatement", "src": "8508:68:29" } ] } } ] } }, { "expression": { "arguments": [ { "id": 4114, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "9327:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4115, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "9336:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "hexValue": "66616c7365", "id": 4116, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "9352:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 4111, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3904, "src": "9305:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4113, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "finalize", "nodeType": "MemberAccess", "referencedDeclaration": 24546, "src": "9305:21:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,struct AccountContext memory,bool) returns (int256)" } }, "id": 4117, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9305:53:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4118, "nodeType": "ExpressionStatement", "src": "9305:53:29" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 3913, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 3910, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3907, "src": "5219:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 3911, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3862, "src": "5223:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BatchLend calldata[] calldata" } }, "id": 3912, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "5223:14:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5219:18:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4120, "initializationExpression": { "assignments": [ 3907 ], "declarations": [ { "constant": false, "id": 3907, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 4120, "src": "5204:9:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3906, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5204:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 3909, "initialValue": { "hexValue": "30", "id": 3908, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5216:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "5204:13:29" }, "loopExpression": { "expression": { "id": 3915, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "5239:3:29", "subExpression": { "id": 3914, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3907, "src": "5239:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 3916, "nodeType": "ExpressionStatement", "src": "5239:3:29" }, "nodeType": "ForStatement", "src": "5199:4170:29" }, { "condition": { "id": 4124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "9548:33:29", "subExpression": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4121, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "9549:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "isBitmapEnabled", "nodeType": "MemberAccess", "referencedDeclaration": 23385, "src": "9549:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) pure returns (bool)" } }, "id": 4123, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9549:32:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4134, "nodeType": "IfStatement", "src": "9544:221:29", "trueBody": { "id": 4133, "nodeType": "Block", "src": "9583:182:29", "statements": [ { "expression": { "arguments": [ { "id": 4128, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "9723:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4129, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3894, "src": "9732:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } }, { "hexValue": "66616c7365", "id": 4130, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "9748:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 4125, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "9680:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4127, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "storeAssetsAndUpdateContext", "nodeType": "MemberAccess", "referencedDeclaration": 24054, "src": "9680:42:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_bool_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory,address,struct PortfolioState memory,bool)" } }, "id": 4131, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9680:74:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4132, "nodeType": "ExpressionStatement", "src": "9680:74:29" } ] } }, { "expression": { "arguments": [ { "id": 4136, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3859, "src": "9871:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4137, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3888, "src": "9880:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "id": 4135, "name": "_finalizeAccountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4663, "src": "9847:23:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$", "typeString": "function (address,struct AccountContext memory)" } }, "id": 4138, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9847:48:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4139, "nodeType": "ExpressionStatement", "src": "9847:48:29" } ] }, "documentation": { "id": 3857, "nodeType": "StructuredDocumentation", "src": "3680:802:29", "text": "@notice Executes a batch of lending actions. This is different from batchBalanceAndTrade because\n it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces\n the gas costs for lending because there is no second token transfer where residual balances are sent\n back to the account.\n @dev Note that this method does not work with native ETH because it requires the ability to pull payment\n from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.\n @param account the account for the action\n @param actions array of batch lending actions\n @dev emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebt\n @dev auth:msg.sender auth:ERC1155" }, "functionSelector": "541f5270", "id": 4141, "implemented": true, "kind": "function", "modifiers": [ { "id": 3865, "modifierName": { "id": 3864, "name": "nonReentrant", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3626, "src": "4578:12:29", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", "src": "4578:12:29" } ], "name": "batchLend", "nodeType": "FunctionDefinition", "parameters": { "id": 3863, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3859, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4141, "src": "4506:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3858, "name": "address", "nodeType": "ElementaryTypeName", "src": "4506:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3862, "mutability": "mutable", "name": "actions", "nodeType": "VariableDeclaration", "scope": 4141, "src": "4523:28:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BatchLend[]" }, "typeName": { "baseType": { "id": 3860, "name": "BatchLend", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57508, "src": "4523:9:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BatchLend_$57508_storage_ptr", "typeString": "struct BatchLend" } }, "id": 3861, "nodeType": "ArrayTypeName", "src": "4523:11:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BatchLend_$57508_storage_$dyn_storage_ptr", "typeString": "struct BatchLend[]" } }, "visibility": "internal" } ], "src": "4505:47:29" }, "returnParameters": { "id": 3866, "nodeType": "ParameterList", "parameters": [], "src": "4595:0:29" }, "scope": 4840, "src": "4487:5415:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { "id": 4200, "nodeType": "Block", "src": "11344:1235:29", "statements": [ { "expression": { "arguments": [ { "baseExpression": { "id": 4153, "name": "authorizedCallbackContract", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23285, "src": "11437:26:29", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, "id": 4156, "indexExpression": { "expression": { "id": 4154, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "11464:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 4155, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "11464:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "11437:38:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a6564", "id": 4157, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11477:14:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" }, "value": "Unauthorized" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" } ], "id": 4152, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "11429:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4158, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11429:63:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4159, "nodeType": "ExpressionStatement", "src": "11429:63:29" }, { "expression": { "arguments": [ { "id": 4161, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4144, "src": "11522:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 4160, "name": "requireValidAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3661, "src": "11502:19:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", "typeString": "function (address) view" } }, "id": 4162, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11502:28:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4163, "nodeType": "ExpressionStatement", "src": "11502:28:29" }, { "assignments": [ 4165 ], "declarations": [ { "constant": false, "id": 4165, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4200, "src": "11541:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4164, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "11541:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 4170, "initialValue": { "arguments": [ { "id": 4167, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4144, "src": "11608:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4168, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4147, "src": "11617:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } ], "id": 4166, "name": "_batchBalanceAndTradeAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4359, "src": "11580:27:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct BalanceActionWithTrades calldata[] calldata) returns (struct AccountContext memory)" } }, "id": 4169, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11580:45:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "11541:84:29" }, { "expression": { "arguments": [ { "id": 4174, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4144, "src": "11668:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 4171, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4165, "src": "11635:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4173, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23372, "src": "11635:32:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory,address)" } }, "id": 4175, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11635:41:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4176, "nodeType": "ExpressionStatement", "src": "11635:41:29" }, { "expression": { "arguments": [ { "expression": { "id": 4182, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "12001:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 4183, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "12001:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "id": 4184, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4144, "src": "12013:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4185, "name": "callbackData", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4149, "src": "12022:12:29", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } ], "expression": { "arguments": [ { "expression": { "id": 4178, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "11972:3:29", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 4179, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "11972:10:29", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" } ], "id": 4177, "name": "NotionalCallback", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58532, "src": "11955:16:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalCallback_$58532_$", "typeString": "type(contract NotionalCallback)" } }, "id": 4180, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11955:28:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_contract$_NotionalCallback_$58532", "typeString": "contract NotionalCallback" } }, "id": 4181, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "notionalCallback", "nodeType": "MemberAccess", "referencedDeclaration": 58531, "src": "11955:45:29", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (address,address,bytes memory) external" } }, "id": 4186, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11955:80:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4187, "nodeType": "ExpressionStatement", "src": "11955:80:29" }, { "condition": { "commonType": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, "id": 4191, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4188, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4165, "src": "12050:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4189, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "hasDebt", "nodeType": "MemberAccess", "referencedDeclaration": 57736, "src": "12050:22:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30783030", "id": 4190, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "12076:4:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0x00" }, "src": "12050:30:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4199, "nodeType": "IfStatement", "src": "12046:527:29", "trueBody": { "id": 4198, "nodeType": "Block", "src": "12082:491:29", "statements": [ { "expression": { "arguments": [ { "id": 4195, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4144, "src": "12554:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 4192, "name": "FreeCollateralExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 618, "src": "12502:22:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } }, "id": 4194, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "checkFreeCollateralAndRevert", "nodeType": "MemberAccess", "referencedDeclaration": 553, "src": "12502:51:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, "id": 4196, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "12502:60:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4197, "nodeType": "ExpressionStatement", "src": "12502:60:29" } ] } } ] }, "documentation": { "id": 4142, "nodeType": "StructuredDocumentation", "src": "9908:1246:29", "text": "@notice Executes a batch of balance transfers and trading actions via an authorized callback contract. This\n can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform\n other actions on behalf of the user.\n Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract\n needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM\n will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting\n and will mainly be used for contracts that make migrating assets a better user experience.\n @param account the account that will take all the actions\n @param actions array of balance actions with trades to take, must be sorted by currency id\n @param callbackData arbitrary bytes to be passed backed to the caller in the callback\n @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n @dev auth:authorizedCallbackContract" }, "functionSelector": "5950d8e9", "id": 4201, "implemented": true, "kind": "function", "modifiers": [], "name": "batchBalanceAndTradeActionWithCallback", "nodeType": "FunctionDefinition", "parameters": { "id": 4150, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4144, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4201, "src": "11216:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4143, "name": "address", "nodeType": "ElementaryTypeName", "src": "11216:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4147, "mutability": "mutable", "name": "actions", "nodeType": "VariableDeclaration", "scope": 4201, "src": "11241:42:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades[]" }, "typeName": { "baseType": { "id": 4145, "name": "BalanceActionWithTrades", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57537, "src": "11241:23:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", "typeString": "struct BalanceActionWithTrades" } }, "id": 4146, "nodeType": "ArrayTypeName", "src": "11241:25:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", "typeString": "struct BalanceActionWithTrades[]" } }, "visibility": "internal" }, { "constant": false, "id": 4149, "mutability": "mutable", "name": "callbackData", "nodeType": "VariableDeclaration", "scope": 4201, "src": "11293:27:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { "id": 4148, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "11293:5:29", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "11206:120:29" }, "returnParameters": { "id": 4151, "nodeType": "ParameterList", "parameters": [], "src": "11344:0:29" }, "scope": 4840, "src": "11159:1420:29", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { "id": 4358, "nodeType": "Block", "src": "12746:2767:29", "statements": [ { "assignments": [ 4212 ], "declarations": [ { "constant": false, "id": 4212, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4358, "src": "12756:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4211, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "12756:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 4216, "initialValue": { "arguments": [ { "id": 4214, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "12820:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 4213, "name": "_settleAccountIfRequired", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4796, "src": "12795:24:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) returns (struct AccountContext memory)" } }, "id": 4215, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "12795:33:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "12756:72:29" }, { "assignments": [ 4218 ], "declarations": [ { "constant": false, "id": 4218, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 4358, "src": "12838:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 4217, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "12838:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" } ], "id": 4219, "nodeType": "VariableDeclarationStatement", "src": "12838:32:29" }, { "assignments": [ 4221 ], "declarations": [ { "constant": false, "id": 4221, "mutability": "mutable", "name": "portfolioState", "nodeType": "VariableDeclaration", "scope": 4358, "src": "13047:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState" }, "typeName": { "id": 4220, "name": "PortfolioState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57602, "src": "13047:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", "typeString": "struct PortfolioState" } }, "visibility": "internal" } ], "id": 4229, "initialValue": { "arguments": [ { "id": 4224, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "13136:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4225, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "13157:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4226, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "assetArrayLength", "nodeType": "MemberAccess", "referencedDeclaration": 57738, "src": "13157:31:29", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, { "hexValue": "30", "id": 4227, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "13202:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint8", "typeString": "uint8" }, { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "expression": { "id": 4222, "name": "PortfolioHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38387, "src": "13086:16:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", "typeString": "type(library PortfolioHandler)" } }, "id": 4223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "buildPortfolioState", "nodeType": "MemberAccess", "referencedDeclaration": 38148, "src": "13086:36:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$_t_uint256_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "function (address,uint8,uint256) view returns (struct PortfolioState memory)" } }, "id": 4228, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13086:127:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } }, "nodeType": "VariableDeclarationStatement", "src": "13047:166:29" }, { "body": { "id": 4340, "nodeType": "Block", "src": "13269:1716:29", "statements": [ { "assignments": [ 4242 ], "declarations": [ { "constant": false, "id": 4242, "mutability": "mutable", "name": "action", "nodeType": "VariableDeclaration", "scope": 4340, "src": "13283:39:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades" }, "typeName": { "id": 4241, "name": "BalanceActionWithTrades", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57537, "src": "13283:23:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", "typeString": "struct BalanceActionWithTrades" } }, "visibility": "internal" } ], "id": 4246, "initialValue": { "baseExpression": { "id": 4243, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4206, "src": "13325:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } }, "id": 4245, "indexExpression": { "id": 4244, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4231, "src": "13333:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "13325:10:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "nodeType": "VariableDeclarationStatement", "src": "13283:52:29" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 4249, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4247, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4231, "src": "13548:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 4248, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "13552:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "13548:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4264, "nodeType": "IfStatement", "src": "13544:118:29", "trueBody": { "id": 4263, "nodeType": "Block", "src": "13555:107:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint16", "typeString": "uint16" }, "id": 4259, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4251, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "13581:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4252, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57525, "src": "13581:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "expression": { "baseExpression": { "id": 4253, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4206, "src": "13601:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } }, "id": 4257, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 4256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4254, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4231, "src": "13609:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "31", "id": 4255, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "13613:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "13609:5:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "13601:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4258, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57525, "src": "13601:25:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "src": "13581:45:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e736f7274656420616374696f6e73", "id": 4260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13628:18:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", "typeString": "literal_string \"Unsorted actions\"" }, "value": "Unsorted actions" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_82bbdf24fcdc64a6f7fba4c16a48cc773d69edf61177c55d5a8abedfb2b7281f", "typeString": "literal_string \"Unsorted actions\"" } ], "id": 4250, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "13573:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4261, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13573:74:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4262, "nodeType": "ExpressionStatement", "src": "13573:74:29" } ] } }, { "expression": { "arguments": [ { "id": 4268, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "13760:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4269, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "13769:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4270, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57525, "src": "13769:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 4271, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "13788:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "expression": { "id": 4265, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4218, "src": "13730:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4267, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "loadBalanceState", "nodeType": "MemberAccess", "referencedDeclaration": 25360, "src": "13730:29:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_uint16_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$__$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,uint16,struct AccountContext memory) view" } }, "id": 4272, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13730:73:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4273, "nodeType": "ExpressionStatement", "src": "13730:73:29" }, { "expression": { "arguments": [ { "id": 4275, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "13944:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4276, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4218, "src": "13969:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "expression": { "id": 4277, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "13999:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "actionType", "nodeType": "MemberAccess", "referencedDeclaration": 57523, "src": "13999:17:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, { "expression": { "id": 4279, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14034:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4280, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "depositActionAmount", "nodeType": "MemberAccess", "referencedDeclaration": 57527, "src": "14034:26:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 4274, "name": "_executeDepositAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4451, "src": "13905:21:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_uint256_$returns$__$", "typeString": "function (address,struct BalanceState memory,enum DepositActionType,uint256)" } }, "id": 4281, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13905:169:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4282, "nodeType": "ExpressionStatement", "src": "13905:169:29" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 4287, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "expression": { "id": 4283, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14093:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4284, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "trades", "nodeType": "MemberAccess", "referencedDeclaration": 57536, "src": "14093:13:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } }, "id": 4285, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "14093:20:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 4286, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "14116:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "14093:24:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4327, "nodeType": "IfStatement", "src": "14089:586:29", "trueBody": { "id": 4326, "nodeType": "Block", "src": "14119:556:29", "statements": [ { "assignments": [ 4289 ], "declarations": [ { "constant": false, "id": 4289, "mutability": "mutable", "name": "netCash", "nodeType": "VariableDeclaration", "scope": 4326, "src": "14137:14:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4288, "name": "int256", "nodeType": "ElementaryTypeName", "src": "14137:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4290, "nodeType": "VariableDeclarationStatement", "src": "14137:14:29" }, { "expression": { "id": 4303, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "id": 4291, "name": "netCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4289, "src": "14170:7:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 4292, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4221, "src": "14179:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } } ], "id": 4293, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "14169:25:29", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "tuple(int256,struct PortfolioState memory)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4295, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "14233:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4296, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14262:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4297, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57525, "src": "14262:17:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "expression": { "id": 4298, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14301:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "trades", "nodeType": "MemberAccess", "referencedDeclaration": 57536, "src": "14301:13:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } }, { "id": 4300, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "14336:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 4301, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4221, "src": "14372:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } ], "id": 4294, "name": "_executeTrades", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4738, "src": "14197:14:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint16_$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_PortfolioState_$57602_memory_ptr_$returns$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "function (address,uint16,bytes32[] calldata,struct AccountContext memory,struct PortfolioState memory) returns (int256,struct PortfolioState memory)" } }, "id": 4302, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14197:207:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_int256_$_t_struct$_PortfolioState_$57602_memory_ptr_$", "typeString": "tuple(int256,struct PortfolioState memory)" } }, "src": "14169:235:29", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4304, "nodeType": "ExpressionStatement", "src": "14169:235:29" }, { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4305, "name": "netCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4289, "src": "14512:7:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "hexValue": "30", "id": 4306, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "14522:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "14512:11:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4315, "nodeType": "IfStatement", "src": "14508:66:29", "trueBody": { "expression": { "arguments": [ { "id": 4309, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4218, "src": "14546:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4310, "name": "netCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4289, "src": "14560:7:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4311, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "neg", "nodeType": "MemberAccess", "referencedDeclaration": 44999, "src": "14560:11:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256) pure returns (int256)" } }, "id": 4312, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14560:13:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 4308, "name": "_checkSufficientCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4767, "src": "14525:20:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_BalanceState_$57632_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (struct BalanceState memory,int256) pure" } }, "id": 4313, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14525:49:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4314, "nodeType": "ExpressionStatement", "src": "14525:49:29" } }, { "expression": { "id": 4324, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4316, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4218, "src": "14592:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4318, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "14592:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4322, "name": "netCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4289, "src": "14652:7:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4319, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4218, "src": "14621:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4320, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "14621:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4321, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "14621:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4323, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14621:39:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "14592:68:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4325, "nodeType": "ExpressionStatement", "src": "14592:68:29" } ] } }, { "expression": { "arguments": [ { "id": 4329, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "14742:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4330, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "14767:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 4331, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4218, "src": "14799:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "expression": { "id": 4332, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14829:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4333, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "withdrawAmountInternalPrecision", "nodeType": "MemberAccess", "referencedDeclaration": 57529, "src": "14829:38:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 4334, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14885:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4335, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "withdrawEntireCashBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57531, "src": "14885:32:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "expression": { "id": 4336, "name": "action", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4242, "src": "14935:6:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata" } }, "id": 4337, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "redeemToUnderlying", "nodeType": "MemberAccess", "referencedDeclaration": 57533, "src": "14935:25:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 4328, "name": "_calculateWithdrawActionAndFinalize", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4637, "src": "14689:35:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_BalanceState_$57632_memory_ptr_$_t_uint256_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,struct AccountContext memory,struct BalanceState memory,uint256,bool,bool)" } }, "id": 4338, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14689:285:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4339, "nodeType": "ExpressionStatement", "src": "14689:285:29" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 4237, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4234, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4231, "src": "13244:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 4235, "name": "actions", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4206, "src": "13248:7:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades calldata[] calldata" } }, "id": 4236, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "13248:14:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "13244:18:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4341, "initializationExpression": { "assignments": [ 4231 ], "declarations": [ { "constant": false, "id": 4231, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 4341, "src": "13229:9:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4230, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13229:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 4233, "initialValue": { "hexValue": "30", "id": 4232, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "13241:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "13229:13:29" }, "loopExpression": { "expression": { "id": 4239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "13264:3:29", "subExpression": { "id": 4238, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4231, "src": "13264:1:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 4240, "nodeType": "ExpressionStatement", "src": "13264:3:29" }, "nodeType": "ForStatement", "src": "13224:1761:29" }, { "condition": { "id": 4345, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "15164:33:29", "subExpression": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4342, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "15165:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4343, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "isBitmapEnabled", "nodeType": "MemberAccess", "referencedDeclaration": 23385, "src": "15165:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) pure returns (bool)" } }, "id": 4344, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15165:32:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4355, "nodeType": "IfStatement", "src": "15160:221:29", "trueBody": { "id": 4354, "nodeType": "Block", "src": "15199:182:29", "statements": [ { "expression": { "arguments": [ { "id": 4349, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4203, "src": "15339:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4350, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4221, "src": "15348:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } }, { "hexValue": "66616c7365", "id": 4351, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "15364:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 4346, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "15296:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4348, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "storeAssetsAndUpdateContext", "nodeType": "MemberAccess", "referencedDeclaration": 24054, "src": "15296:42:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_bool_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory,address,struct PortfolioState memory,bool)" } }, "id": 4352, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15296:74:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4353, "nodeType": "ExpressionStatement", "src": "15296:74:29" } ] } }, { "expression": { "id": 4356, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4212, "src": "15492:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "functionReturnParameters": 4210, "id": 4357, "nodeType": "Return", "src": "15485:21:29" } ] }, "id": 4359, "implemented": true, "kind": "function", "modifiers": [], "name": "_batchBalanceAndTradeAction", "nodeType": "FunctionDefinition", "parameters": { "id": 4207, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4203, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4359, "src": "12631:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4202, "name": "address", "nodeType": "ElementaryTypeName", "src": "12631:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4206, "mutability": "mutable", "name": "actions", "nodeType": "VariableDeclaration", "scope": 4359, "src": "12656:42:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr", "typeString": "struct BalanceActionWithTrades[]" }, "typeName": { "baseType": { "id": 4204, "name": "BalanceActionWithTrades", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57537, "src": "12656:23:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceActionWithTrades_$57537_storage_ptr", "typeString": "struct BalanceActionWithTrades" } }, "id": 4205, "nodeType": "ArrayTypeName", "src": "12656:25:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_BalanceActionWithTrades_$57537_storage_$dyn_storage_ptr", "typeString": "struct BalanceActionWithTrades[]" } }, "visibility": "internal" } ], "src": "12621:83:29" }, "returnParameters": { "id": 4210, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4209, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4359, "src": "12723:21:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4208, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "12723:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "src": "12722:23:29" }, "scope": 4840, "src": "12585:2928:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "body": { "id": 4450, "nodeType": "Block", "src": "15739:1507:29", "statements": [ { "assignments": [ 4372 ], "declarations": [ { "constant": false, "id": 4372, "mutability": "mutable", "name": "depositActionAmount", "nodeType": "VariableDeclaration", "scope": 4450, "src": "15749:26:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4371, "name": "int256", "nodeType": "ElementaryTypeName", "src": "15749:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4377, "initialValue": { "arguments": [ { "id": 4375, "name": "depositActionAmount_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4368, "src": "15795:20:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 4373, "name": "SafeInt256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45162, "src": "15778:10:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", "typeString": "type(library SafeInt256)" } }, "id": 4374, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toInt", "nodeType": "MemberAccess", "referencedDeclaration": 45127, "src": "15778:16:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", "typeString": "function (uint256) pure returns (int256)" } }, "id": 4376, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15778:38:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "15749:67:29" }, { "assignments": [ 4379 ], "declarations": [ { "constant": false, "id": 4379, "mutability": "mutable", "name": "assetInternalAmount", "nodeType": "VariableDeclaration", "scope": 4450, "src": "15826:26:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4378, "name": "int256", "nodeType": "ElementaryTypeName", "src": "15826:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4380, "nodeType": "VariableDeclarationStatement", "src": "15826:26:29" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4384, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4382, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4372, "src": "15870:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "hexValue": "30", "id": 4383, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "15893:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "15870:24:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 4381, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "15862:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 4385, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15862:33:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4386, "nodeType": "ExpressionStatement", "src": "15862:33:29" }, { "condition": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4387, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "15910:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4388, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "15925:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4389, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "None", "nodeType": "MemberAccess", "src": "15925:22:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "15910:37:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 4401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4396, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4393, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "16003:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4394, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "16018:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4395, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "DepositAsset", "nodeType": "MemberAccess", "src": "16018:30:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "16003:45:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4400, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4397, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "16064:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4398, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "16079:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4399, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "DepositAssetAndMintNToken", "nodeType": "MemberAccess", "src": "16079:43:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "16064:58:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "16003:119:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 4420, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4415, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4412, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "16539:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4413, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "16554:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4414, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "DepositUnderlying", "nodeType": "MemberAccess", "src": "16554:35:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "16539:50:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4419, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4416, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "16605:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4417, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "16620:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4418, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "DepositUnderlyingAndMintNToken", "nodeType": "MemberAccess", "src": "16620:48:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "16605:63:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "16539:129:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4433, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4430, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "16880:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4431, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "16895:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4432, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "ConvertCashToNToken", "nodeType": "MemberAccess", "src": "16895:37:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "16880:52:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4439, "nodeType": "IfStatement", "src": "16876:206:29", "trueBody": { "id": 4438, "nodeType": "Block", "src": "16934:148:29", "statements": [ { "expression": { "id": 4436, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4434, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4379, "src": "17030:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 4435, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4372, "src": "17052:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "17030:41:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4437, "nodeType": "ExpressionStatement", "src": "17030:41:29" } ] } }, "id": 4440, "nodeType": "IfStatement", "src": "16522:560:29", "trueBody": { "id": 4429, "nodeType": "Block", "src": "16679:191:29", "statements": [ { "expression": { "id": 4427, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4421, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4379, "src": "16772:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4424, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4362, "src": "16830:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4425, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4372, "src": "16839:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4422, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4364, "src": "16794:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4423, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "depositUnderlyingToken", "nodeType": "MemberAccess", "referencedDeclaration": 24323, "src": "16794:35:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,int256) returns (int256)" } }, "id": 4426, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "16794:65:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "16772:87:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4428, "nodeType": "ExpressionStatement", "src": "16772:87:29" } ] } }, "id": 4441, "nodeType": "IfStatement", "src": "15986:1096:29", "trueBody": { "id": 4411, "nodeType": "Block", "src": "16133:383:29", "statements": [ { "expression": { "id": 4409, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4402, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4379, "src": "16333:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4405, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4362, "src": "16403:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4406, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4372, "src": "16428:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "hexValue": "66616c7365", "id": 4407, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "16465:5:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 4403, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4364, "src": "16355:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4404, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "depositAssetToken", "nodeType": "MemberAccess", "referencedDeclaration": 24222, "src": "16355:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_int256_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,int256,bool) returns (int256)" } }, "id": 4408, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "16355:150:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "16333:172:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4410, "nodeType": "ExpressionStatement", "src": "16333:172:29" } ] } }, "id": 4442, "nodeType": "IfStatement", "src": "15906:1176:29", "trueBody": { "id": 4392, "nodeType": "Block", "src": "15949:31:29", "statements": [ { "functionReturnParameters": 4370, "id": 4391, "nodeType": "Return", "src": "15963:7:29" } ] } }, { "expression": { "arguments": [ { "id": 4444, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4364, "src": "17126:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "id": 4445, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4366, "src": "17152:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, { "id": 4446, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4372, "src": "17177:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 4447, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4379, "src": "17210:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 4443, "name": "_executeNTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4565, "src": "17092:20:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_enum$_DepositActionType_$57495_$_t_int256_$_t_int256_$returns$__$", "typeString": "function (struct BalanceState memory,enum DepositActionType,int256,int256)" } }, "id": 4448, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17092:147:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4449, "nodeType": "ExpressionStatement", "src": "17092:147:29" } ] }, "documentation": { "id": 4360, "nodeType": "StructuredDocumentation", "src": "15519:26:29", "text": "@dev Executes deposits" }, "id": 4451, "implemented": true, "kind": "function", "modifiers": [], "name": "_executeDepositAction", "nodeType": "FunctionDefinition", "parameters": { "id": 4369, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4362, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4451, "src": "15590:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4361, "name": "address", "nodeType": "ElementaryTypeName", "src": "15590:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4364, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 4451, "src": "15615:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 4363, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "15615:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" }, { "constant": false, "id": 4366, "mutability": "mutable", "name": "depositType", "nodeType": "VariableDeclaration", "scope": 4451, "src": "15657:29:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "typeName": { "id": 4365, "name": "DepositActionType", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57495, "src": "15657:17:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "visibility": "internal" }, { "constant": false, "id": 4368, "mutability": "mutable", "name": "depositActionAmount_", "nodeType": "VariableDeclaration", "scope": 4451, "src": "15696:28:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4367, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "15696:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "15580:150:29" }, "returnParameters": { "id": 4370, "nodeType": "ParameterList", "parameters": [], "src": "15739:0:29" }, "scope": 4840, "src": "15550:1696:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 4564, "nodeType": "Block", "src": "17486:1804:29", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 4476, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 4471, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4466, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4463, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4456, "src": "17586:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4464, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "17601:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4465, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "DepositAssetAndMintNToken", "nodeType": "MemberAccess", "src": "17601:43:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "17586:58:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4470, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4467, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4456, "src": "17660:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4468, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "17675:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4469, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "DepositUnderlyingAndMintNToken", "nodeType": "MemberAccess", "src": "17675:48:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "17660:63:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "17586:137:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4475, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4472, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4456, "src": "17739:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4473, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "17754:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4474, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "ConvertCashToNToken", "nodeType": "MemberAccess", "src": "17754:37:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "17739:52:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "17586:205:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "id": 4515, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4512, "name": "depositType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4456, "src": "18464:11:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4513, "name": "DepositActionType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57495, "src": "18479:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_DepositActionType_$57495_$", "typeString": "type(enum DepositActionType)" } }, "id": 4514, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "RedeemNToken", "nodeType": "MemberAccess", "src": "18479:30:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "src": "18464:45:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4562, "nodeType": "IfStatement", "src": "18460:824:29", "trueBody": { "id": 4561, "nodeType": "Block", "src": "18511:773:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4528, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "expression": { "id": 4524, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18764:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4525, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netNTokenSupplyChange", "nodeType": "MemberAccess", "referencedDeclaration": 57627, "src": "18764:34:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "arguments": [ { "expression": { "id": 4520, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18664:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4521, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netNTokenTransfer", "nodeType": "MemberAccess", "referencedDeclaration": 57625, "src": "18664:30:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4517, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18585:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4518, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "storedNTokenBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57619, "src": "18585:53:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4519, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "18585:78:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4522, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18585:110:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4523, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "18585:178:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4526, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18585:214:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 4527, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4458, "src": "18803:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "18585:237:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "496e73756666696369656e7420746f6b656e2062616c616e6365", "id": 4529, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "18840:28:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a7e5e4d46ea524835ea36125140e247d59a2bce707f2094f88605dba8157d192", "typeString": "literal_string \"Insufficient token balance\"" }, "value": "Insufficient token balance" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_a7e5e4d46ea524835ea36125140e247d59a2bce707f2094f88605dba8157d192", "typeString": "literal_string \"Insufficient token balance\"" } ], "id": 4516, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "18525:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4530, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18525:357:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4531, "nodeType": "ExpressionStatement", "src": "18525:357:29" }, { "expression": { "id": 4540, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4532, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18897:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4534, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netNTokenSupplyChange", "nodeType": "MemberAccess", "referencedDeclaration": 57627, "src": "18897:34:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4538, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4458, "src": "18990:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4535, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18934:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4536, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netNTokenSupplyChange", "nodeType": "MemberAccess", "referencedDeclaration": 57627, "src": "18934:34:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4537, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", "referencedDeclaration": 44959, "src": "18934:38:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4539, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18934:89:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "18897:126:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4541, "nodeType": "ExpressionStatement", "src": "18897:126:29" }, { "assignments": [ 4543 ], "declarations": [ { "constant": false, "id": 4543, "mutability": "mutable", "name": "assetCash", "nodeType": "VariableDeclaration", "scope": 4561, "src": "19038:16:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4542, "name": "int256", "nodeType": "ElementaryTypeName", "src": "19038:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4550, "initialValue": { "arguments": [ { "expression": { "id": 4546, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "19114:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4547, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57615, "src": "19114:23:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 4548, "name": "depositActionAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4458, "src": "19155:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4544, "name": "nTokenRedeemAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 13836, "src": "19057:18:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", "typeString": "type(library nTokenRedeemAction)" } }, "id": 4545, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "nTokenRedeemViaBatch", "nodeType": "MemberAccess", "referencedDeclaration": 12926, "src": "19057:39:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_uint16_$_t_int256_$returns$_t_int256_$", "typeString": "function (uint16,int256) returns (int256)" } }, "id": 4549, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "19057:131:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "19038:150:29" }, { "expression": { "id": 4559, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4551, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "19203:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4553, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "19203:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4557, "name": "assetCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4543, "src": "19263:9:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4554, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "19232:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "19232:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4556, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "19232:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4558, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "19232:41:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "19203:70:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4560, "nodeType": "ExpressionStatement", "src": "19203:70:29" } ] } }, "id": 4563, "nodeType": "IfStatement", "src": "17569:1715:29", "trueBody": { "id": 4511, "nodeType": "Block", "src": "17802:652:29", "statements": [ { "expression": { "arguments": [ { "id": 4478, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "17929:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, { "id": 4479, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4460, "src": "17943:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 4477, "name": "_checkSufficientCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4767, "src": "17908:20:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_BalanceState_$57632_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (struct BalanceState memory,int256) pure" } }, "id": 4480, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17908:55:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4481, "nodeType": "ExpressionStatement", "src": "17908:55:29" }, { "expression": { "id": 4490, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4482, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "17977:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4484, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "17977:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4488, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4460, "src": "18037:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4485, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18006:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4486, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "18006:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4487, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", "referencedDeclaration": 44959, "src": "18006:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4489, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18006:51:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "17977:80:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4491, "nodeType": "ExpressionStatement", "src": "17977:80:29" }, { "assignments": [ 4493 ], "declarations": [ { "constant": false, "id": 4493, "mutability": "mutable", "name": "tokensMinted", "nodeType": "VariableDeclaration", "scope": 4511, "src": "18168:19:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4492, "name": "int256", "nodeType": "ElementaryTypeName", "src": "18168:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4500, "initialValue": { "arguments": [ { "expression": { "id": 4496, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18235:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4497, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57615, "src": "18235:23:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 4498, "name": "assetInternalAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4460, "src": "18276:19:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 4494, "name": "nTokenMintAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12854, "src": "18190:16:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", "typeString": "type(library nTokenMintAction)" } }, "id": 4495, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "nTokenMint", "nodeType": "MemberAccess", "referencedDeclaration": 12310, "src": "18190:27:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_uint16_$_t_int256_$returns$_t_int256_$", "typeString": "function (uint16,int256) returns (int256)" } }, "id": 4499, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18190:119:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "18168:141:29" }, { "expression": { "id": 4509, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4501, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18324:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4503, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netNTokenSupplyChange", "nodeType": "MemberAccess", "referencedDeclaration": 57627, "src": "18324:34:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4507, "name": "tokensMinted", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4493, "src": "18417:12:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4504, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4454, "src": "18361:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4505, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netNTokenSupplyChange", "nodeType": "MemberAccess", "referencedDeclaration": 57627, "src": "18361:34:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4506, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "18361:38:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4508, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18361:82:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "18324:119:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4510, "nodeType": "ExpressionStatement", "src": "18324:119:29" } ] } } ] }, "documentation": { "id": 4452, "nodeType": "StructuredDocumentation", "src": "17252:32:29", "text": "@dev Executes nToken actions" }, "id": 4565, "implemented": true, "kind": "function", "modifiers": [], "name": "_executeNTokenAction", "nodeType": "FunctionDefinition", "parameters": { "id": 4461, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4454, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 4565, "src": "17328:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 4453, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "17328:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" }, { "constant": false, "id": 4456, "mutability": "mutable", "name": "depositType", "nodeType": "VariableDeclaration", "scope": 4565, "src": "17370:29:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" }, "typeName": { "id": 4455, "name": "DepositActionType", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57495, "src": "17370:17:29", "typeDescriptions": { "typeIdentifier": "t_enum$_DepositActionType_$57495", "typeString": "enum DepositActionType" } }, "visibility": "internal" }, { "constant": false, "id": 4458, "mutability": "mutable", "name": "depositActionAmount", "nodeType": "VariableDeclaration", "scope": 4565, "src": "17409:26:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4457, "name": "int256", "nodeType": "ElementaryTypeName", "src": "17409:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 4460, "mutability": "mutable", "name": "assetInternalAmount", "nodeType": "VariableDeclaration", "scope": 4565, "src": "17445:26:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4459, "name": "int256", "nodeType": "ElementaryTypeName", "src": "17445:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "17318:159:29" }, "returnParameters": { "id": 4462, "nodeType": "ParameterList", "parameters": [], "src": "17486:0:29" }, "scope": 4840, "src": "17289:2001:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 4636, "nodeType": "Block", "src": "19653:1082:29", "statements": [ { "assignments": [ 4582 ], "declarations": [ { "constant": false, "id": 4582, "mutability": "mutable", "name": "withdrawAmount", "nodeType": "VariableDeclaration", "scope": 4636, "src": "19663:21:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4581, "name": "int256", "nodeType": "ElementaryTypeName", "src": "19663:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4587, "initialValue": { "arguments": [ { "id": 4585, "name": "withdrawAmountInternalPrecision", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4574, "src": "19704:31:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 4583, "name": "SafeInt256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45162, "src": "19687:10:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", "typeString": "type(library SafeInt256)" } }, "id": 4584, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toInt", "nodeType": "MemberAccess", "referencedDeclaration": 45127, "src": "19687:16:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", "typeString": "function (uint256) pure returns (int256)" } }, "id": 4586, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "19687:49:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "19663:73:29" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4591, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4589, "name": "withdrawAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4582, "src": "19754:14:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "hexValue": "30", "id": 4590, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "19772:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "19754:19:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 4588, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "19746:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 4592, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "19746:28:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4593, "nodeType": "ExpressionStatement", "src": "19746:28:29" }, { "condition": { "id": 4594, "name": "withdrawEntireCashBalance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4576, "src": "19934:25:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4617, "nodeType": "IfStatement", "src": "19930:543:29", "trueBody": { "id": 4616, "nodeType": "Block", "src": "19961:512:29", "statements": [ { "expression": { "id": 4606, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4595, "name": "withdrawAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4582, "src": "20161:14:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "expression": { "id": 4603, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4572, "src": "20279:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4604, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netAssetTransferInternalPrecision", "nodeType": "MemberAccess", "referencedDeclaration": 57623, "src": "20279:46:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "arguments": [ { "expression": { "id": 4599, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4572, "src": "20230:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4600, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "20230:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4596, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4572, "src": "20178:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4597, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "storedCashBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57617, "src": "20178:30:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4598, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "20178:51:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4601, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "20178:79:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4602, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "20178:100:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4605, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "20178:148:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "20161:165:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4607, "nodeType": "ExpressionStatement", "src": "20161:165:29" }, { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4610, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4608, "name": "withdrawAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4582, "src": "20424:14:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "hexValue": "30", "id": 4609, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "20441:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "20424:18:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4615, "nodeType": "IfStatement", "src": "20420:42:29", "trueBody": { "expression": { "id": 4613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4611, "name": "withdrawAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4582, "src": "20444:14:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "30", "id": 4612, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "20461:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "20444:18:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4614, "nodeType": "ExpressionStatement", "src": "20444:18:29" } } ] } }, { "expression": { "id": 4626, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4618, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4572, "src": "20510:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4620, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "netAssetTransferInternalPrecision", "nodeType": "MemberAccess", "referencedDeclaration": 57623, "src": "20510:46:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4624, "name": "withdrawAmount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4582, "src": "20636:14:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4621, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4572, "src": "20559:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4622, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netAssetTransferInternalPrecision", "nodeType": "MemberAccess", "referencedDeclaration": 57623, "src": "20559:59:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4623, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", "referencedDeclaration": 44959, "src": "20559:76:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4625, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "20559:92:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "20510:141:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4627, "nodeType": "ExpressionStatement", "src": "20510:141:29" }, { "expression": { "arguments": [ { "id": 4631, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4568, "src": "20684:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4632, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4570, "src": "20693:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 4633, "name": "redeemToUnderlying", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4578, "src": "20709:18:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 4628, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4572, "src": "20662:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4630, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "finalize", "nodeType": "MemberAccess", "referencedDeclaration": 24546, "src": "20662:21:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_BalanceState_$57632_memory_ptr_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bool_$returns$_t_int256_$bound_to$_t_struct$_BalanceState_$57632_memory_ptr_$", "typeString": "function (struct BalanceState memory,address,struct AccountContext memory,bool) returns (int256)" } }, "id": 4634, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "20662:66:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4635, "nodeType": "ExpressionStatement", "src": "20662:66:29" } ] }, "documentation": { "id": 4566, "nodeType": "StructuredDocumentation", "src": "19296:58:29", "text": "@dev Calculations any withdraws and finalizes balances" }, "id": 4637, "implemented": true, "kind": "function", "modifiers": [], "name": "_calculateWithdrawActionAndFinalize", "nodeType": "FunctionDefinition", "parameters": { "id": 4579, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4568, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4637, "src": "19413:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4567, "name": "address", "nodeType": "ElementaryTypeName", "src": "19413:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4570, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4637, "src": "19438:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4569, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "19438:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" }, { "constant": false, "id": 4572, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 4637, "src": "19484:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 4571, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "19484:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" }, { "constant": false, "id": 4574, "mutability": "mutable", "name": "withdrawAmountInternalPrecision", "nodeType": "VariableDeclaration", "scope": 4637, "src": "19526:39:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4573, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "19526:7:29", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 4576, "mutability": "mutable", "name": "withdrawEntireCashBalance", "nodeType": "VariableDeclaration", "scope": 4637, "src": "19575:30:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 4575, "name": "bool", "nodeType": "ElementaryTypeName", "src": "19575:4:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, { "constant": false, "id": 4578, "mutability": "mutable", "name": "redeemToUnderlying", "nodeType": "VariableDeclaration", "scope": 4637, "src": "19615:23:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 4577, "name": "bool", "nodeType": "ElementaryTypeName", "src": "19615:4:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "19403:241:29" }, "returnParameters": { "id": 4580, "nodeType": "ParameterList", "parameters": [], "src": "19653:0:29" }, "scope": 4840, "src": "19359:1376:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 4662, "nodeType": "Block", "src": "20849:342:29", "statements": [ { "expression": { "arguments": [ { "id": 4647, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4639, "src": "21046:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 4644, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4641, "src": "21013:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4646, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23372, "src": "21013:32:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory,address)" } }, "id": 4648, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "21013:41:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4649, "nodeType": "ExpressionStatement", "src": "21013:41:29" }, { "condition": { "commonType": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, "id": 4653, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4650, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4641, "src": "21068:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4651, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "hasDebt", "nodeType": "MemberAccess", "referencedDeclaration": 57736, "src": "21068:22:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30783030", "id": 4652, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "21094:4:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0x00" }, "src": "21068:30:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4661, "nodeType": "IfStatement", "src": "21064:121:29", "trueBody": { "id": 4660, "nodeType": "Block", "src": "21100:85:29", "statements": [ { "expression": { "arguments": [ { "id": 4657, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4639, "src": "21166:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 4654, "name": "FreeCollateralExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 618, "src": "21114:22:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } }, "id": 4656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "checkFreeCollateralAndRevert", "nodeType": "MemberAccess", "referencedDeclaration": 553, "src": "21114:51:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, "id": 4658, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "21114:60:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4659, "nodeType": "ExpressionStatement", "src": "21114:60:29" } ] } } ] }, "id": 4663, "implemented": true, "kind": "function", "modifiers": [], "name": "_finalizeAccountContext", "nodeType": "FunctionDefinition", "parameters": { "id": 4642, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4639, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4663, "src": "20774:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4638, "name": "address", "nodeType": "ElementaryTypeName", "src": "20774:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4641, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4663, "src": "20791:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4640, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "20791:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "src": "20773:55:29" }, "returnParameters": { "id": 4643, "nodeType": "ParameterList", "parameters": [], "src": "20849:0:29" }, "scope": 4840, "src": "20741:450:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 4737, "nodeType": "Block", "src": "21477:1031:29", "statements": [ { "condition": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4681, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4672, "src": "21491:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4682, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "isBitmapEnabled", "nodeType": "MemberAccess", "referencedDeclaration": 23385, "src": "21491:30:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) pure returns (bool)" } }, "id": 4683, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "21491:32:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 4735, "nodeType": "Block", "src": "22092:410:29", "statements": [ { "expression": { "id": 4733, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "id": 4723, "name": "postTradeState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4679, "src": "22304:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } }, { "id": 4724, "name": "netCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4677, "src": "22320:7:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "id": 4725, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "22303:25:29", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", "typeString": "tuple(struct PortfolioState memory,int256)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4728, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4665, "src": "22386:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4729, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4667, "src": "22411:10:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 4730, "name": "portfolioState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4674, "src": "22439:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" } }, { "id": 4731, "name": "trades", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4670, "src": "22471:6:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState memory" }, { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } ], "expression": { "id": 4726, "name": "TradingAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 11085, "src": "22331:13:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", "typeString": "type(library TradingAction)" } }, "id": 4727, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "executeTradesArrayBatch", "nodeType": "MemberAccess", "referencedDeclaration": 10018, "src": "22331:37:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_uint16_$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", "typeString": "function (address,uint16,struct PortfolioState memory,bytes32[] memory) returns (struct PortfolioState memory,int256)" } }, "id": 4732, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "22331:160:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_struct$_PortfolioState_$57602_memory_ptr_$_t_int256_$", "typeString": "tuple(struct PortfolioState memory,int256)" } }, "src": "22303:188:29", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4734, "nodeType": "ExpressionStatement", "src": "22303:188:29" } ] }, "id": 4736, "nodeType": "IfStatement", "src": "21487:1015:29", "trueBody": { "id": 4722, "nodeType": "Block", "src": "21525:561:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint16", "typeString": "uint16" }, "id": 4688, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4685, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4672, "src": "21564:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4686, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "bitmapCurrencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57740, "src": "21564:31:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 4687, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4667, "src": "21599:10:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "src": "21564:45:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "496e76616c69642074726164657320666f72206163636f756e74", "id": 4689, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "21627:28:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c3935fddfd35e5ed413bf683e8d0d0c7f8f93a5fcd3635d6f34d5796738ae68f", "typeString": "literal_string \"Invalid trades for account\"" }, "value": "Invalid trades for account" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_c3935fddfd35e5ed413bf683e8d0d0c7f8f93a5fcd3635d6f34d5796738ae68f", "typeString": "literal_string \"Invalid trades for account\"" } ], "id": 4684, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "21539:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4690, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "21539:130:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4691, "nodeType": "ExpressionStatement", "src": "21539:130:29" }, { "assignments": [ 4693 ], "declarations": [ { "constant": false, "id": 4693, "mutability": "mutable", "name": "didIncurDebt", "nodeType": "VariableDeclaration", "scope": 4722, "src": "21683:17:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 4692, "name": "bool", "nodeType": "ElementaryTypeName", "src": "21683:4:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "id": 4694, "nodeType": "VariableDeclarationStatement", "src": "21683:17:29" }, { "expression": { "id": 4707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "id": 4695, "name": "netCash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4677, "src": "21715:7:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 4696, "name": "didIncurDebt", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4693, "src": "21724:12:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "id": 4697, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "21714:23:29", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_int256_$_t_bool_$", "typeString": "tuple(int256,bool)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4700, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4665, "src": "21796:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4701, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4672, "src": "21821:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4702, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "bitmapCurrencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57740, "src": "21821:31:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "expression": { "id": 4703, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4672, "src": "21870:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4704, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "nextSettleTime", "nodeType": "MemberAccess", "referencedDeclaration": 57734, "src": "21870:29:29", "typeDescriptions": { "typeIdentifier": "t_uint40", "typeString": "uint40" } }, { "id": 4705, "name": "trades", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4670, "src": "21917:6:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_uint40", "typeString": "uint40" }, { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[] calldata" } ], "expression": { "id": 4698, "name": "TradingAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 11085, "src": "21740:13:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", "typeString": "type(library TradingAction)" } }, "id": 4699, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "executeTradesBitmapBatch", "nodeType": "MemberAccess", "referencedDeclaration": 9886, "src": "21740:38:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_uint16_$_t_uint40_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$_t_bool_$", "typeString": "function (address,uint16,uint40,bytes32[] memory) returns (int256,bool)" } }, "id": 4706, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "21740:197:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_int256_$_t_bool_$", "typeString": "tuple(int256,bool)" } }, "src": "21714:223:29", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4708, "nodeType": "ExpressionStatement", "src": "21714:223:29" }, { "condition": { "id": 4709, "name": "didIncurDebt", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4693, "src": "21955:12:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 4721, "nodeType": "IfStatement", "src": "21951:125:29", "trueBody": { "id": 4720, "nodeType": "Block", "src": "21969:107:29", "statements": [ { "expression": { "id": 4718, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 4710, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4672, "src": "21987:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4712, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "hasDebt", "nodeType": "MemberAccess", "referencedDeclaration": 57736, "src": "21987:22:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, "id": 4717, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4713, "name": "Constants", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 22832, "src": "22012:9:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", "typeString": "type(library Constants)" } }, "id": 4714, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "HAS_ASSET_DEBT", "nodeType": "MemberAccess", "referencedDeclaration": 22777, "src": "22012:24:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "BinaryOperation", "operator": "|", "rightExpression": { "expression": { "id": 4715, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4672, "src": "22039:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4716, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "hasDebt", "nodeType": "MemberAccess", "referencedDeclaration": 57736, "src": "22039:22:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "src": "22012:49:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "src": "21987:74:29", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "id": 4719, "nodeType": "ExpressionStatement", "src": "21987:74:29" } ] } } ] } } ] }, "id": 4738, "implemented": true, "kind": "function", "modifiers": [], "name": "_executeTrades", "nodeType": "FunctionDefinition", "parameters": { "id": 4675, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4665, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21230:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4664, "name": "address", "nodeType": "ElementaryTypeName", "src": "21230:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4667, "mutability": "mutable", "name": "currencyId", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21255:17:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" }, "typeName": { "id": 4666, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "21255:6:29", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "visibility": "internal" }, { "constant": false, "id": 4670, "mutability": "mutable", "name": "trades", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21282:25:29", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", "typeString": "bytes32[]" }, "typeName": { "baseType": { "id": 4668, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "21282:7:29", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "id": 4669, "nodeType": "ArrayTypeName", "src": "21282:9:29", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", "typeString": "bytes32[]" } }, "visibility": "internal" }, { "constant": false, "id": 4672, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21317:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4671, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "21317:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" }, { "constant": false, "id": 4674, "mutability": "mutable", "name": "portfolioState", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21363:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState" }, "typeName": { "id": 4673, "name": "PortfolioState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57602, "src": "21363:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", "typeString": "struct PortfolioState" } }, "visibility": "internal" } ], "src": "21220:185:29" }, "returnParameters": { "id": 4680, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4677, "mutability": "mutable", "name": "netCash", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21423:14:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4676, "name": "int256", "nodeType": "ElementaryTypeName", "src": "21423:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 4679, "mutability": "mutable", "name": "postTradeState", "nodeType": "VariableDeclaration", "scope": 4738, "src": "21439:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_memory_ptr", "typeString": "struct PortfolioState" }, "typeName": { "id": 4678, "name": "PortfolioState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57602, "src": "21439:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioState_$57602_storage_ptr", "typeString": "struct PortfolioState" } }, "visibility": "internal" } ], "src": "21422:54:29" }, "scope": 4840, "src": "21197:1311:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 4766, "nodeType": "Block", "src": "22775:427:29", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 4762, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4749, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4747, "name": "amountInternalPrecision", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4743, "src": "22929:23:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "hexValue": "30", "id": 4748, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "22956:1:29", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "22929:28:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "expression": { "id": 4757, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4741, "src": "23078:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4758, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netAssetTransferInternalPrecision", "nodeType": "MemberAccess", "referencedDeclaration": 57623, "src": "23078:46:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "arguments": [ { "expression": { "id": 4753, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4741, "src": "23029:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "netCashChange", "nodeType": "MemberAccess", "referencedDeclaration": 57621, "src": "23029:26:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "expression": { "id": 4750, "name": "balanceState", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4741, "src": "22977:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState memory" } }, "id": 4751, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "storedCashBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57617, "src": "22977:30:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4752, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "22977:51:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4755, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "22977:79:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4756, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", "referencedDeclaration": 44985, "src": "22977:100:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_int256_$bound_to$_t_int256_$", "typeString": "function (int256,int256) pure returns (int256)" } }, "id": 4759, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "22977:148:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 4760, "name": "amountInternalPrecision", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4743, "src": "23129:23:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "22977:175:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "22929:223:29", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "496e73756666696369656e742063617368", "id": 4763, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "23166:19:29", "typeDescriptions": { "typeIdentifier": "t_stringliteral_dc004f7ed1a482e42015716a7d78c2cffca4ace23a8603c3b541c93e3ee37d90", "typeString": "literal_string \"Insufficient cash\"" }, "value": "Insufficient cash" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_dc004f7ed1a482e42015716a7d78c2cffca4ace23a8603c3b541c93e3ee37d90", "typeString": "literal_string \"Insufficient cash\"" } ], "id": 4746, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "22908:7:29", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 4764, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "22908:287:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4765, "nodeType": "ExpressionStatement", "src": "22908:287:29" } ] }, "documentation": { "id": 4739, "nodeType": "StructuredDocumentation", "src": "22514:127:29", "text": "@notice When lending, adding liquidity or minting nTokens the account must have a sufficient cash balance\n to do so." }, "id": 4767, "implemented": true, "kind": "function", "modifiers": [], "name": "_checkSufficientCash", "nodeType": "FunctionDefinition", "parameters": { "id": 4744, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4741, "mutability": "mutable", "name": "balanceState", "nodeType": "VariableDeclaration", "scope": 4767, "src": "22676:32:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_memory_ptr", "typeString": "struct BalanceState" }, "typeName": { "id": 4740, "name": "BalanceState", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57632, "src": "22676:12:29", "typeDescriptions": { "typeIdentifier": "t_struct$_BalanceState_$57632_storage_ptr", "typeString": "struct BalanceState" } }, "visibility": "internal" }, { "constant": false, "id": 4743, "mutability": "mutable", "name": "amountInternalPrecision", "nodeType": "VariableDeclaration", "scope": 4767, "src": "22710:30:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4742, "name": "int256", "nodeType": "ElementaryTypeName", "src": "22710:6:29", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "22675:66:29" }, "returnParameters": { "id": 4745, "nodeType": "ParameterList", "parameters": [], "src": "22775:0:29" }, "scope": 4840, "src": "22646:556:29", "stateMutability": "pure", "virtual": false, "visibility": "private" }, { "body": { "id": 4795, "nodeType": "Block", "src": "23319:360:29", "statements": [ { "assignments": [ 4775 ], "declarations": [ { "constant": false, "id": 4775, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4795, "src": "23329:36:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4774, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "23329:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 4780, "initialValue": { "arguments": [ { "id": 4778, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4769, "src": "23408:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 4776, "name": "AccountContextHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24055, "src": "23368:21:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", "typeString": "type(library AccountContextHandler)" } }, "id": 4777, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23345, "src": "23368:39:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) view returns (struct AccountContext memory)" } }, "id": 4779, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "23368:48:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "23329:87:29" }, { "condition": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4781, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4775, "src": "23430:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4782, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "mustSettleAssets", "nodeType": "MemberAccess", "referencedDeclaration": 23510, "src": "23430:31:29", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) view returns (bool)" } }, "id": 4783, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "23430:33:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 4793, "nodeType": "Block", "src": "23627:46:29", "statements": [ { "expression": { "id": 4791, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4775, "src": "23648:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "functionReturnParameters": 4773, "id": 4792, "nodeType": "Return", "src": "23641:21:29" } ] }, "id": 4794, "nodeType": "IfStatement", "src": "23426:247:29", "trueBody": { "id": 4790, "nodeType": "Block", "src": "23465:156:29", "statements": [ { "expression": { "arguments": [ { "id": 4786, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4769, "src": "23586:7:29", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4787, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4775, "src": "23595:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "expression": { "id": 4784, "name": "SettleAssetsExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1878, "src": "23551:20:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } }, "id": 4785, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "settleAccount", "nodeType": "MemberAccess", "referencedDeclaration": 1877, "src": "23551:34:29", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" } }, "id": 4788, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "23551:59:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "functionReturnParameters": 4773, "id": 4789, "nodeType": "Return", "src": "23544:66:29" } ] } } ] }, "id": 4796, "implemented": true, "kind": "function", "modifiers": [], "name": "_settleAccountIfRequired", "nodeType": "FunctionDefinition", "parameters": { "id": 4770, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4769, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4796, "src": "23242:15:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4768, "name": "address", "nodeType": "ElementaryTypeName", "src": "23242:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "23241:17:29" }, "returnParameters": { "id": 4773, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4772, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4796, "src": "23292:21:29", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4771, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "23292:14:29", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "src": "23291:23:29" }, "scope": 4840, "src": "23208:471:29", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 4838, "nodeType": "Block", "src": "23866:282:29", "statements": [ { "expression": { "components": [ { "arguments": [ { "id": 4814, "name": "FreeCollateralExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 618, "src": "23905:22:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } ], "id": 4813, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "23897:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4812, "name": "address", "nodeType": "ElementaryTypeName", "src": "23897:7:29", "typeDescriptions": {} } }, "id": 4815, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "23897:31:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 4818, "name": "MigrateIncentives", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 775, "src": "23951:17:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_MigrateIncentives_$775_$", "typeString": "type(library MigrateIncentives)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_MigrateIncentives_$775_$", "typeString": "type(library MigrateIncentives)" } ], "id": 4817, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "23943:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4816, "name": "address", "nodeType": "ElementaryTypeName", "src": "23943:7:29", "typeDescriptions": {} } }, "id": 4819, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "23943:26:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 4822, "name": "SettleAssetsExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1878, "src": "23992:20:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } ], "id": 4821, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "23984:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4820, "name": "address", "nodeType": "ElementaryTypeName", "src": "23984:7:29", "typeDescriptions": {} } }, "id": 4823, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "23984:29:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 4826, "name": "TradingAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 11085, "src": "24036:13:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", "typeString": "type(library TradingAction)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_TradingAction_$11085_$", "typeString": "type(library TradingAction)" } ], "id": 4825, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "24028:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4824, "name": "address", "nodeType": "ElementaryTypeName", "src": "24028:7:29", "typeDescriptions": {} } }, "id": 4827, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "24028:22:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 4830, "name": "nTokenMintAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12854, "src": "24072:16:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", "typeString": "type(library nTokenMintAction)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_nTokenMintAction_$12854_$", "typeString": "type(library nTokenMintAction)" } ], "id": 4829, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "24064:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4828, "name": "address", "nodeType": "ElementaryTypeName", "src": "24064:7:29", "typeDescriptions": {} } }, "id": 4831, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "24064:25:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 4834, "name": "nTokenRedeemAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 13836, "src": "24112:18:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", "typeString": "type(library nTokenRedeemAction)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_nTokenRedeemAction_$13836_$", "typeString": "type(library nTokenRedeemAction)" } ], "id": 4833, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "24104:7:29", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 4832, "name": "address", "nodeType": "ElementaryTypeName", "src": "24104:7:29", "typeDescriptions": {} } }, "id": 4835, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "24104:27:29", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "id": 4836, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "23883:258:29", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_address_$_t_address_$_t_address_$_t_address_$_t_address_$_t_address_$", "typeString": "tuple(address,address,address,address,address,address)" } }, "functionReturnParameters": 4811, "id": 4837, "nodeType": "Return", "src": "23876:265:29" } ] }, "documentation": { "id": 4797, "nodeType": "StructuredDocumentation", "src": "23685:77:29", "text": "@notice Get a list of deployed library addresses (sorted by library name)" }, "functionSelector": "c4c96dae", "id": 4839, "implemented": true, "kind": "function", "modifiers": [], "name": "getLibInfo", "nodeType": "FunctionDefinition", "parameters": { "id": 4798, "nodeType": "ParameterList", "parameters": [], "src": "23786:2:29" }, "returnParameters": { "id": 4811, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4800, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4839, "src": "23812:7:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4799, "name": "address", "nodeType": "ElementaryTypeName", "src": "23812:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4802, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4839, "src": "23821:7:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4801, "name": "address", "nodeType": "ElementaryTypeName", "src": "23821:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4804, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4839, "src": "23830:7:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4803, "name": "address", "nodeType": "ElementaryTypeName", "src": "23830:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4806, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4839, "src": "23839:7:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4805, "name": "address", "nodeType": "ElementaryTypeName", "src": "23839:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4808, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4839, "src": "23848:7:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4807, "name": "address", "nodeType": "ElementaryTypeName", "src": "23848:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4810, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4839, "src": "23857:7:29", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4809, "name": "address", "nodeType": "ElementaryTypeName", "src": "23857:7:29", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "23811:54:29" }, "scope": 4840, "src": "23767:381:29", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 4841, "src": "591:23559:29" } ], "src": "41:24110:29" }, "bytecode": "608060405234801561001057600080fd5b50614c35806100206000396000f3fe60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e366004614232565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b79190614681565b60405180910390f35b3480156100cc57600080fd5b506100936100db3660046143a6565b6101f6565b6100936100ee366004614282565b610567565b610093610101366004614326565b610697565b34801561011257600080fd5b506100aa61081d565b34801561012757600080fd5b506100aa61082c565b34801561013c57600080fd5b50610145610843565b6040516100b7969594939291906146de565b6002600a5414156101835760405162461bcd60e51b815260040161017a90614a0e565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148fd565b6101c3836108c9565b60006101d0848484610918565b90506101dc8482610ad3565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a90614a0e565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148fd565b610259836108c9565b600061026484610b54565b905060006102788583604001516000610c10565b9050610282613f52565b60005b84811015610535573686868381811061029a57fe5b90506020028101906102ac9190614b85565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b85565b6102e39060208101906145b9565b61ffff166102f460208301836145b9565b61ffff16116103155760405162461bcd60e51b815260040161017a906149ad565b60006103246040830183614b20565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614b20565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f8961038660208501856145b9565b86919089610ca2565b6103b4896103a060208501856145b9565b6103ad6040860186614b20565b8a8a610d48565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610eee90919063ffffffff16565b610f0a565b905060008113156105185761040a60408401602085016143dd565b156104e057600061042a61042160208601866145b9565b61ffff16610f18565b9050600061044761043e60208701876145b9565b61ffff16610f64565b905060006104558385610f77565b905060006305f5e100836040015112156104855761047e60016104788585610fb0565b90610eee565b905061049d565b61049a610493836001610eee565b8490610fb0565b90505b60006104b48f838c610fe89092919063ffffffff16565b9050858112156104d65760405162461bcd60e51b815260040161017a90614ade565b5050505050610518565b60006104fb6104f260208601866145b9565b61ffff166110cd565b90506105158b61050b8385610fb0565b88919060006110e0565b50505b610525858b8960006111ba565b5050600190920191506102859050565b5061053f83611435565b610550576105508387846000611442565b61055a8684610ad3565b50506001600a5550505050565b3360009081526008602052604090205460ff166105965760405162461bcd60e51b815260040161017a906148fd565b61059f856108c9565b60006105ac868686610918565b90506105b88187611524565b60405163550d065760e11b8152339063aa1a0cae906105e19083908a9088908890600401614695565b600060405180830381600087803b1580156105fb57600080fd5b505af115801561060f573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561068f57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061065e908990600401614681565b60006040518083038186803b15801561067657600080fd5b505af415801561068a573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106ba5760405162461bcd60e51b815260040161017a90614a0e565b6002600a556001600160a01b0383163314806106d557503330145b6106f15760405162461bcd60e51b815260040161017a906148fd565b6106fa836108c9565b600061070584610b54565b905061070f613f52565b60005b83811015610806573685858381811061072757fe5b905060c00201905060008211156107945785856001840381811061074757fe5b905060c00201602001602081019061075f91906145b9565b61ffff1661077360408301602084016145b9565b61ffff16116107945760405162461bcd60e51b815260040161017a906149ad565b6107b1876107a860408401602085016145b9565b85919087610ca2565b6107cd87846107c360208501856143f9565b8460400135611628565b6107fd87858560608501356107e860a08701608088016143dd565b6107f860c0880160a089016143dd565b6116fb565b50600101610712565b506108118583610ad3565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b734763672dEa3bF087929d5537B6BAfeB8e6938F4673244321a0C5eE55DF1F4D31c71570Cbe0236c18647301713633a1b85a4a3d2f9430C68Bd4392c4a90eA734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F16735d0Df02534ab3c805c59f9cC98E282DC929821e173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0909192939495565b6001600160a01b0381166108dc57600080fd5b6001600160a01b0381163014156108f257600080fd5b60006108fd82611778565b5050505061ffff1690508060001461091457600080fd5b5050565b610920613fa2565b600061092b85610b54565b9050610935613f52565b60006109478784604001516000610c10565b905060005b85811015610aab573687878381811061096157fe5b90506020028101906109739190614b66565b905081156109e25787876001840381811061098a57fe5b905060200281019061099c9190614b66565b6109ad9060408101906020016145b9565b61ffff166109c160408301602084016145b9565b61ffff16116109e25760405162461bcd60e51b815260040161017a906149ad565b6109ff896109f660408401602085016145b9565b86919088610ca2565b610a1189856107c360208501856143f9565b6000610a2060c0830183614b20565b90501115610a87576000610a528a610a3e60408501602086016145b9565b610a4b60c0860186614b20565b8a89610d48565b945090506000811215610a7157610a7185610a6c83610f0a565b6117e1565b6060850151610a809082610eee565b6060860152505b610aa289868660608501356107e860a08701608088016143dd565b5060010161094c565b50610ab583611435565b610ac657610ac68388836000611442565b50909150505b9392505050565b610add8183611524565b60208101516001600160f81b0319161561091457604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90610b28908590600401614681565b60006040518083038186803b158015610b4057600080fd5b505af415801561068f573d6000803e3d6000fd5b610b5c613fa2565b6000610b6783611830565b9050610b72816118d1565b15610c08576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610bb09086908590600401614718565b60a06040518083038186803b158015610bc857600080fd5b505af4158015610bdc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c00919061445f565b915050610c0b565b90505b919050565b610c18613fd0565b610c20613fd0565b60ff8416610c2f579050610acc565b610c398585611922565b815260ff84166060820152826001600160401b0381118015610c5a57600080fd5b50604051908082528060200260200182016040528015610c9457816020015b610c81613ff8565b815260200190600190039081610c795790505b506020820152949350505050565b8161ffff166000108015610cbc5750613fff61ffff831611155b610cc557600080fd5b61ffff8216808552610cd890829061194b565b15610d0557610ceb838361ffff166119d5565b61010088015260e087015260408601526020850152610d23565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d52613fd0565b610d5b84611435565b15610e4b578661ffff16846060015161ffff1614610d8b5760405162461bcd60e51b815260040161017a90614a58565b60608401518451604051633643f39b60e01b8152600092734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F1692633643f39b92610dd2928e9290918d908d90600401614842565b604080518083038186803b158015610de957600080fd5b505af4158015610dfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e219190614430565b90935090508015610e4557602085018051600160f81b176001600160f81b03191690525b50610ee3565b60405163b58f83ed60e01b8152734b167f50F4EDe5d4CC6cAAACac19263f9f9F5F169063b58f83ed90610e8a908b908b9088908c908c90600401614784565b60006040518083038186803b158015610ea257600080fd5b505af4158015610eb6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ede91908101906144fe565b925090505b965096945050505050565b81810182811215600083121514610f0457600080fd5b92915050565b6000610c0860001983611a81565b610f20614038565b6000806000610f2e85611acf565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f6c614062565b610c08826001611b92565b600080610fa88460400151610fa26402540be400610fa2878960200151611a8190919063ffffffff16565b90611c40565b949350505050565b60006305f5e10083604001511415610fc9575080610f04565b610acc6305f5e100610fa2856040015185611a8190919063ffffffff16565b600081610ff757506000610acc565b6000821361100457600080fd5b6000611017856000015161ffff16610f64565b905060038160600151600581111561102b57fe5b1415611055573483146110505760405162461bcd60e51b815260040161017a90614941565b61106c565b8451611069908290869061ffff1686611c71565b92505b600061107f866000015161ffff166110cd565b9050600061109c876000015161109487611d19565b849190611d2c565b905060006110aa8383611e1d565b60608901519091506110bc9082610eee565b606089015293505050509392505050565b6110d5614062565b610c08826000611b92565b6000826110ef57506000610fa8565b600083136110fc57600080fd5b600061110f866000015161ffff166110cd565b905060058160600151600581111561112357fe5b141561113c5785516111399061ffff1685611e4d565b93505b8060200151806111495750825b15611190578551600090611165908390889061ffff1688611c71565b90506111718282611e1d565b60608801519093506111839084610eee565b606088015250610fa89050565b61119a8185611e1d565b60808701519092506111ac9083610eee565b608087015250949350505050565b60008060008660a00151121561120d5760006111ef8760a001516104788960c001518a60400151610eee90919063ffffffff16565b121561120d5760405162461bcd60e51b815260040161017a90614a8f565b60008660800151121561125d57600061123f876080015161047889606001518a60200151610eee90919063ffffffff16565b121561125d5760405162461bcd60e51b815260040161017a90614a36565b611268868685611ed4565b60808801819052606088015191935060009161128391610eee565b905080156112f057602087015161129a9082610eee565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112e79085906148f4565b60405180910390a35b60a0870151151580611305575060c087015115155b156113ab57600061132f8860c001516104788a60a001518b60400151610eee90919063ffffffff16565b9050611344888861133f84611d19565b611f8a565b506040880181905260c0880151156113a557876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161139c91906148f4565b60405180910390a35b60019250505b81156113d8576113d886886000015161ffff1689602001518a604001518b60e001518c6101000151612077565b865160208801516114059161ffff16901515806113f85750604089015115155b879190600160fe1b6121c7565b60008760200151121561142b57602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061145186886123c6565b64ffffffffff81168c529296509094509250905061146e886118d1565b1561147857600080fd5b60ff821660408901528461149757600760ff8316111561149757600080fd5b83156114ba57602088018051600160f81b176001600160f81b03191690526114c9565b602088018051607f60f91b1690525b6114d68860800151612605565b6001600160701b031916608089015260005b83156115195760f084901c81811461150b5761150b8a826001600160ff1b6121c7565b60109490941b9390506114e8565b505050505050505050565b600061152e612680565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116338261268d565b905060008082121561164457600080fd5b600084600681111561165257fe5b141561165f5750506116f5565b600184600681111561166d57fe5b14806116845750600384600681111561168257fe5b145b1561169d5761169685878460006110e0565b90506116e9565b60028460068111156116ab57fe5b14806116c2575060048460068111156116c057fe5b145b156116d257611696858784610fe8565b60068460068111156116e057fe5b14156116e95750805b61068f858584846126a3565b50505050565b60006117068461268d565b9050600081121561171657600080fd5b821561174e5761173f856080015161047887606001518860200151610eee90919063ffffffff16565b9050600081121561174e575060005b608085015161175d90826128be565b608086015261176e858888856111ba565b5050505050505050565b6000806000806000806117896128d4565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b60008112158015611814575080611811836080015161047885606001518660200151610eee90919063ffffffff16565b12155b6109145760405162461bcd60e51b815260040161017a90614ab3565b611838613fa2565b6000611842612680565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118dd83611435565b156118fe576118eb816128e1565b835164ffffffffff16109150610c0b9050565b825164ffffffffff1615801590610c005750825164ffffffffff1611159050610c0b565b6060600061193084846128ff565b90506001815111611942579050610f04565b610acc81612a20565b6000811580159061195e5750613fff8211155b61196757600080fd5b6080830151606084015161ffff16831415611986576001915050610f04565b6001600160701b03198116156119cb5760f081901c613fff16838114156119b85750600160fe1b908116149050610f04565b5060101b6001600160801b031916611986565b5060009392505050565b60008060008060006119e5612bd8565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a51578054611a4a90600160701b900466ffffffffffffff16612be5565b9250611a66565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611ab157811580611aa3575082828281611aa057fe5b05145b611aac57600080fd5b610f04565b821580611ac6575081838281611ac357fe5b05145b610f0457600080fd5b6000806000806000611ae086612bf3565b909250905060006001600160a01b038316611b055750600090506402540be400611b87565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b4057600080fd5b505af1158015611b54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b789190614418565b905060008113611b8757600080fd5b969195509350915050565b611b9a614062565b6000611ba4612c2a565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611c1957fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c565750600160ff1b83145b15611c6057600080fd5b818381611c6957fe5b059392505050565b80600585606001516005811115611c8457fe5b1415611ca9576000611c9584610f64565b9050611ca5816000015184612c37565b9250505b6000821315611cd5576000611cbf868685612cc9565b9050856020015115611ccf578091505b50610fa8565b600385606001516005811115611ce757fe5b1415611d0457611cff84611cfa84610f0a565b612dbc565b610fa8565b8451610fa89085611d1485610f0a565b612df7565b600080821215611d2857600080fd5b5090565b600080600585606001516005811115611d4157fe5b14611d53576370a0823160e01b611d5c565b630ed1279f60e11b5b90506000611d6f86600001513084612e6e565b9050600586606001516005811115611d8357fe5b1415611daa576000611d988661ffff16610f64565b9050611da48186612f80565b50611ded565b600186606001516005811115611dbc57fe5b1415611dcc57611da48685612feb565b600286606001516005811115611dde57fe5b141561007b57611ded86613097565b6000611dfe87600001513085612e6e565b9050611e12611e0d82846130d6565b61268d565b979650505050505050565b60006305f5e10083604001511415611e36575080610f04565b6040830151610acc90610fa2846305f5e100611a81565b600081611e5c57506000610f04565b60008213611e6957600080fd5b6000611e7484610f64565b90506000611e858260000151613133565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611eb057600080fd5b81816b033b2e3c9fd0803ce800000087020181611ec957fe5b059695505050505050565b6000806000611eea866000015161ffff166110cd565b90506000611f05876080015183610fb090919063ffffffff16565b905080611f1a57600080935093505050611f82565b848015611f275750600081125b15611f5c578651611f499061ffff1687611f4084610f0a565b859291906131be565b9350611f558282611e1d565b9250611f7f565b8651611f70908390889061ffff1684611c71565b9350611f7c8285611e1d565b92505b50505b935093915050565b825160009042908290611fa09061ffff16613254565b90506000611fb3828860c001518561327a565b9050611fc18783838861335d565b93506000611fce8361348a565b90506001600160a01b0381161561205c57806001600160a01b0316631d684dd2888a600001516120018c60400151611d19565b8a8d60c001518b6040518763ffffffff1660e01b81526004016120299695949392919061480b565b600060405180830381600087803b15801561204357600080fd5b505af1158015612057573d6000803e3d6000fd5b505050505b841561206c5761206c87866134fc565b505050509392505050565b6000612081612bd8565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120cc57506a7fffffffffffffffffffff8613155b6120d557600080fd5b600085121580156120f0575069ffffffffffffffffffff8513155b6120f957600080fd5b836121395766ffffffffffffff83111561211257600080fd5b805466ffffffffffffff60701b1916600160701b66ffffffffffffff851602178155612153565b8054600160501b900463ffffffff16841461215357600080fd5b8054600a9690960b6affffffffffffffffffffff16600160a81b026001600160a81b0369ffffffffffffffffffff90961669ffffffffffffffffffff1963ffffffff909616600160501b0263ffffffff60501b19909816979097179490941695909517939093169190911790925550505050565b8260001080156121d95750613fff8311155b6121e257600080fd5b8180156121f6575082846060015161ffff16145b15612200576116f5565b6080840151600090815b6001600160701b031982161561237b5760f082901c613fff16868114801561222f5750855b1561226757506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116f59050565b8681148015612274575085155b156122c9576001600160f01b03198516199290921691600360fe1b83166122a7576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116f5565b86811180156122d55750855b1561232f576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561230957600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116f5565b868111801561233c575085155b1561234a57505050506116f5565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b0319169060010161220a565b84612388575050506116f5565b6009811061239557600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124575760008a6000015182815181106123ec57fe5b6020026020010151905060038081111561240257fe5b8160a00151600381111561241257fe5b141561241d57600080fd5b60028160a00151600381111561242f57fe5b1415801561243f57506060810151155b1561244e5761244e8b8361351b565b506001016123d0565b5060005b8951518110156124fa5760008a60000151828151811061247757fe5b602002602001015190506002600381111561248e57fe5b8160a00151600381111561249e57fe5b14156124b2576080810151600090556124f1565b60018160a0015160038111156124c457fe5b14156124dd576080810151806124da838261366a565b50505b6124e98186868661379b565b919650945092505b5060010161245b565b506060890151600061250a6137fe565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125d45760008d60200151828151811061254557fe5b6020026020010151905080606001516000141561256257506125cc565b60028160a00151600381111561257457fe5b14158015612592575060038160a00151600381111561258f57fe5b14155b61259b57600080fd5b6125a78189898961379b565b919950975095506125c4818487601081106125be57fe5b0161366a565b600185019450505b600101612526565b50601083111580156125eb575064ffffffffff8411155b6125f457600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561267757600160fe1b8281161415612661576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b915061262d565b50909392505050565b600080610f046001613807565b60006001600160ff1b03821115611d2857600080fd5b60038360068111156126b157fe5b14806126c8575060048360068111156126c657fe5b145b806126de575060068360068111156126dc57fe5b145b156127aa576126ed84826117e1565b60608401516126fc90826128be565b60608501528351604051632128561360e11b8152600091735d0Df02534ab3c805c59f9cC98E282DC929821e191634250ac269161273d918690600401614b0c565b60206040518083038186803b15801561275557600080fd5b505af4158015612769573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061278d9190614418565b60c086015190915061279f9082610eee565b60c0860152506116f5565b60058360068111156127b857fe5b14156116f557816127e28560c001516104788760a001518860400151610eee90919063ffffffff16565b12156128005760405162461bcd60e51b815260040161017a906149d7565b60c084015161280f90836128be565b60c085015283516040516352e73f7760e01b815260009173EaeEe76b4c060d90062610bF7F8b4b465F1b01e0916352e73f7791612850918790600401614b0c565b60206040518083038186803b15801561286857600080fd5b505af415801561287c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a09190614418565b60608601519091506128b29082610eee565b60608601525050505050565b80820382811315600083121514610f0457600080fd5b600080610f046002613807565b6000620151808210156128f357600080fd5b50620151808106900390565b606060108260ff16111561291257600080fd5b600061291c6137fe565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561295057600080fd5b5060405190808252806020026020018201604052801561298a57816020015b612977613ff8565b81526020019060019003908161296f5790505b50905060005b8560ff16811015612a165760008382601081106129a957fe5b01905060008383815181106129ba57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b60608201526080019190915250600101612990565b5095945050505050565b80516000816001600160401b0381118015612a3a57600080fd5b50604051908082528060200260200182016040528015612a64578160200160208202803683370190505b50905060005b82811015612ac1576000848281518110612a8057fe5b60200260200101519050612aa1816000015182602001518360400151613820565b838381518110612aad57fe5b602090810291909101015250600101612a6a565b5060015b828110156116f557805b600081118015612b075750828181518110612ae657fe5b6020026020010151836001830381518110612afd57fe5b6020026020010151115b15612bcf57828181518110612b1857fe5b6020026020010151836001830381518110612b2f57fe5b6020026020010151846001840381518110612b4657fe5b60200260200101858481518110612b5957fe5b6020026020010182815250828152505050848181518110612b7657fe5b6020026020010151856001830381518110612b8d57fe5b6020026020010151866001840381518110612ba457fe5b60200260200101878481518110612bb757fe5b60209081029190910101919091525260001901612acf565b50600101612ac5565b600080610f046006613807565b600881901c60ff9091161b90565b6000806000612c0061387b565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610f046007613807565b600081612c4657506000610f04565b6000612c5184613133565b90506000612c5e84613888565b9050816b019d971e4fe8401e74000001600160ff1b0381612c7b57fe5b05811315612c8857600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612cbd57612cb881610f0a565b612cbf565b805b9695505050505050565b6000808080600587606001516005811115612ce057fe5b14612cf2576370a0823160e01b612cfb565b630ed1279f60e11b5b9050866020015115612d17578651612d14903083612e6e565b92505b8651612d249087876138a9565b866020015180612d38575060008760800151115b15612d4d578651612d4a903083612e6e565b91505b608087015115612d88576000612d6b88612d668561268d565b611e1d565b9050612d7a886080015161268d565b811315612d8657600080fd5b505b866020015115612da957612d9f611e0d83856130d6565b9350505050610acc565b612d9f8561268d565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612df2573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e4e57600080fd5b505af1158015612e62573d6000803e3d6000fd5b50505050612df2613901565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612eeb5780518252601f199092019160209182019101612ecc565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f4b576040519150601f19603f3d011682016040523d82523d6000602084013e612f50565b606091505b509150915081612f5f57600080fd5b808060200190516020811015612f7457600080fd5b50519695505050505050565b612f8861396e565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612fbd91859030906000906004016148a1565b600060405180830381600087803b158015612fd757600080fd5b505af115801561068f573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b815260040161301e91906148f4565b602060405180830381600087803b15801561303857600080fd5b505af115801561304c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130709190614418565b905080156130905760405162461bcd60e51b815260040161017a90614923565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612fd757600080fd5b60008282111561312d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610c0861314061396e565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061316e908690600401614681565b60206040518083038186803b15801561318657600080fd5b505afa15801561319a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0d9190614418565b6000806002866060015160058111156131d357fe5b14156131eb576131e486858561397b565b9050613248565b60006131f686610f64565b905060058760600151600581111561320a57fe5b14156132225761321b818686613a38565b9150613246565b60018760600151600581111561323457fe5b141561007b5761321b87828787613aee565b505b612cbf6103ea8261268d565b60008061325f613bec565b6000938452602052505060409020546001600160a01b031690565b60008060006132898685613bf9565b50915091506000613298613c8f565b6001600160a01b03881660009081526020829052604081209192506132bd8589610eee565b9050806000131580156132d657506001600160601b0381105b6132df57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff871061333457600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e08401516000901561341e5773244321a0C5eE55DF1F4D31c71570Cbe0236c186463e0c01a72856133928860400151611d19565b8860e001518961010001516040518563ffffffff1660e01b81526004016133bc94939291906148ce565b60206040518083038186803b1580156133d457600080fd5b505af41580156133e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061340c9190614418565b600060e0870181905261010087015290505b613460613459866101000151613453670de0b6b3a764000061344d886134478c60400151611d19565b90613c9c565b90613cf5565b906130d6565b8290613d5c565b9050613478670de0b6b3a764000061344d8486613c9c565b85610100018181525050949350505050565b6000806134956128d4565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134f1576134ca613db6565b6001600160a01b038086166000908152602092909252604090912054169250610c0b915050565b600092505050610c0b565b61091473cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612df7565b815151811061352957600080fd5b600082606001511161353a57600080fd5b60008260000151828151811061354c57fe5b602002602001015190506002600381111561356357fe5b8160a00151600381111561357357fe5b14158015613591575060038160a00151600381111561358e57fe5b14155b61359a57600080fd5b606083018051600019019052600080805b85515181101561360d576000866000015182815181106135c757fe5b602002602001015190508281608001511180156135f4575060028160a0015160038111156135f157fe5b14155b1561360457806080015192508193505b506001016135ab565b5081841415613626575050600260a09190910152610914565b60008560000151838151811061363857fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061367d57508151613fff10155b61368657600080fd5b816020015160001080156136a35750602082015164ffffffffff10155b6136ac57600080fd5b816040015160001080156136c557506040820151600810155b6136ce57600080fd5b60608201516a7fffffffffffffffffffff19138015906136fd575060608201516a7fffffffffffffffffffff12155b61370657600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b6000806000806137aa88613dc3565b90508415806137b857508085115b156137c1578094505b86806137d1575060008860600151125b965061ffff8616156137e257600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610f04600d5b6000620f424082601381111561381957fe5b0192915050565b6000613fff84111561383157600080fd5b64ffffffffff83111561384357600080fd5b600882111561385157600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610f04600f613807565b6000808212156138a25761389b82610f0a565b9050610c0b565b5080610c0b565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e4e57600080fd5b600061390b614091565b3d801561391f576020811461392857600080fd5b60019250613933565b60206000833e815192505b5081610914576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610f046013613807565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a75906139af9087906004016148f4565b602060405180830381600087803b1580156139c957600080fd5b505af11580156139dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a019190614418565b90508015613a215760405162461bcd60e51b815260040161017a90614966565b47613a2c81846130d6565b9350612db28685612dbc565b6000613a58613a538560000151613a4e8561268d565b612c37565b611d19565b9050613a6261396e565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a94918590889060040161487e565b602060405180830381600087803b158015613aae57600080fd5b505af1158015613ac2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ae69190614418565b509392505050565b82516000908190613b0790306370a0823160e01b612e6e565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613b3b91906148f4565b602060405180830381600087803b158015613b5557600080fd5b505af1158015613b69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b8d9190614418565b90508015613bad5760405162461bcd60e51b815260040161017a90614966565b8551600090613bc490306370a0823160e01b612e6e565b9050613bd081846130d6565b9350613be187600001518786612df7565b505050949350505050565b600080610f046003613807565b6000806000613c0785613e30565b919450925090508084118015613c1d5750600081115b8015613c295750600083115b15613c88576000613c3986611778565b5050509150506000613c64613c5b6305f5e10084613c9c90919063ffffffff16565b84880387613e8c565b9050613c708482613d5c565b93506001600160801b038410613c8557600080fd5b50505b9250925092565b600080610f046011613807565b600082613cab57506000610f04565b82820282848281613cb857fe5b0414610acc5760405162461bcd60e51b8152600401808060200182810382526021815260200180614bdf6021913960400191505060405180910390fd5b6000808211613d4b576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d5457fe5b049392505050565b600082820183811015610acc576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610f046012613807565b6000808260400151118015613ddd57506040820151600810155b613de657600080fd5b6040820151600210613dfd57506020810151610c0b565b6000613e0f6001846040015103613eae565b6020840151909150610acc906276a70090613e2a90846130d6565b90613d5c565b600080600080613e3e613c8f565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610fa88261344d6301da9c00818861344789670de0b6b3a7640000613c9c565b60008160011415613ec357506276a700610c0b565b8160021415613ed6575062ed4e00610c0b565b8160031415613eea57506301da9c00610c0b565b8160041415613efe57506303b53800610c0b565b8160051415613f1257506309450c00610c0b565b8160061415613f26575063128a1800610c0b565b8160071415613f3a57506325143000610c0b565b60405162461bcd60e51b815260040161017a90614986565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c0016040528060008152602001600081526020016000815260200160008152602001600081526020016000600381111561403357fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610c0b57600080fd5b60008083601f8401126140d7578081fd5b5081356001600160401b038111156140ed578182fd5b602083019150836020808302850101111561410757600080fd5b9250929050565b600082601f83011261411e578081fd5b815160206001600160401b038083111561413457fe5b6141418283850201614b9a565b8381528281019086840160c0808702890186018a101561415f578788fd5b875b878110156141e05781838c031215614177578889fd5b60408051838101818110898211171561418c57fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141c7828601614207565b9181019190915285529386019391810191600101614161565b50919998505050505050505050565b80516001600160701b031981168114610c0b57600080fd5b805160048110610c0b57600080fd5b8051610c0b81614bce565b805160ff81168114610c0b57600080fd5b600080600060408486031215614246578283fd5b61424f846140af565b925060208401356001600160401b03811115614269578283fd5b614275868287016140c6565b9497909650939450505050565b600080600080600060608688031215614299578081fd5b6142a2866140af565b945060208601356001600160401b03808211156142bd578283fd5b6142c989838a016140c6565b909650945060408801359150808211156142e1578283fd5b818801915088601f8301126142f4578283fd5b813581811115614302578384fd5b896020828501011115614313578384fd5b9699959850939650602001949392505050565b60008060006040848603121561433a578283fd5b614343846140af565b925060208401356001600160401b038082111561435e578384fd5b818601915086601f830112614371578384fd5b81358181111561437f578485fd5b87602060c083028501011115614393578485fd5b6020830194508093505050509250925092565b6000806000604084860312156143ba578081fd5b6143c3846140af565b925060208401356001600160401b03811115614269578182fd5b6000602082840312156143ee578081fd5b8135610acc81614bbd565b60006020828403121561440a578081fd5b813560078110610acc578182fd5b600060208284031215614429578081fd5b5051919050565b60008060408385031215614442578182fd5b82519150602083015161445481614bbd565b809150509250929050565b600060a08284031215614470578081fd5b60405160a081018181106001600160401b038211171561448c57fe5b604052825164ffffffffff811681146144a3578283fd5b815260208301516001600160f81b0319811681146144bf578283fd5b60208201526144d060408401614221565b60408201526144e160608401614216565b60608201526144f2608084016141ef565b60808201529392505050565b60008060408385031215614510578182fd5b82516001600160401b0380821115614526578384fd5b9084019060808287031215614539578384fd5b60405160808101818110838211171561454e57fe5b60405282518281111561455f578586fd5b61456b8882860161410e565b82525060208301518281111561457f578586fd5b61458b8882860161410e565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b6000602082840312156145ca578081fd5b8135610acc81614bce565b81835260006001600160fb1b038311156145ed578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561467657815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061466157fe5b88015260c0909601959082019060010161461c565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147b8610100840182614609565b90506020860151607f198483030160a08501526147d58282614609565b915050604086015160c0840152606086015160e084015282810360608401526147ff8185876145d5565b98975050505050505050565b6001600160a01b0396909616865261ffff94909416602086015260408501929092526060840152608083015260a082015260c00190565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611e1290830184866145d5565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614b36578283fd5b8301803591506001600160401b03821115614b4f578283fd5b602090810192508102360382131561410757600080fd5b6000823560de19833603018112614b7b578182fd5b9190910192915050565b60008235605e19833603018112614b7b578182fd5b6040518181016001600160401b0381118282101715614bb557fe5b604052919050565b8015158114614bcb57600080fd5b50565b61ffff81168114614bcb57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212209bd29b5891303174061353c8aa58b2b4e4610e9c4816784b642d9bd89aae5aca64736f6c63430007060033", "bytecodeSha1": "d5eb9853740b24e7c8aa2301d5ef74e768ee2bb1", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.7.6+commit.7338295f" }, "contractName": "BatchAction", "coverageMap": { "branches": { "141": {}, "147": {}, "151": {}, "152": {}, "153": {}, "155": {}, "157": {}, "159": {}, "21": {}, "22": {}, "25": {}, "28": { "ActionGuards.requireValidAccount": { "439": [ 1374, 1402, true ], "440": [ 1454, 1478, true ], "441": [ 1741, 1754, true ] }, "BatchAction.batchBalanceAction": { "438": [ 838, 866, true ] } }, "29": { "BatchAction._batchBalanceAndTradeAction": { "379": [ 13548, 13553, false ], "380": [ 13581, 13626, true ], "381": [ 14093, 14117, false ], "382": [ 14512, 14523, false ], "383": [ 15165, 15197, false ] }, "BatchAction._calculateWithdrawActionAndFinalize": { "395": [ 19754, 19773, true ], "396": [ 19934, 19959, false ], "397": [ 20424, 20442, false ] }, "BatchAction._checkSufficientCash": { "398": [ 22929, 22957, false ], "399": [ 22977, 23152, true ] }, "BatchAction._executeDepositAction": { "388": [ 15870, 15894, true ], "389": [ 15910, 15947, false ], "390": [ 16003, 16048, true ], "391": [ 16064, 16122, false ], "392": [ 16539, 16589, true ], "393": [ 16605, 16668, false ], "394": [ 16880, 16932, false ] }, "BatchAction._executeNTokenAction": { "400": [ 17586, 17644, true ], "401": [ 17660, 17723, true ], "402": [ 17739, 17791, false ], "403": [ 18464, 18509, false ], "404": [ 18585, 18822, true ] }, "BatchAction._executeTrades": { "386": [ 21491, 21523, false ], "387": [ 21564, 21609, true ] }, "BatchAction._finalizeAccountContext": { "384": [ 21068, 21098, false ] }, "BatchAction._settleAccountIfRequired": { "385": [ 23430, 23463, false ] }, "BatchAction.batchBalanceAction": { "375": [ 1396, 1417, true ], "376": [ 1421, 1448, true ], "377": [ 1953, 1958, false ], "378": [ 1986, 2031, true ] }, "BatchAction.batchBalanceAndTradeAction": { "359": [ 3408, 3429, true ], "360": [ 3433, 3460, true ] }, "BatchAction.batchBalanceAndTradeActionWithCallback": { "373": [ 11437, 11475, true ], "374": [ 12050, 12080, false ] }, "BatchAction.batchLend": { "361": [ 4613, 4634, true ], "362": [ 4638, 4665, true ], "363": [ 5509, 5514, false ], "364": [ 5542, 5587, true ], "365": [ 5795, 5808, true ], "366": [ 5908, 5970, true ], "367": [ 6494, 6525, true ], "368": [ 7086, 7102, false ], "369": [ 7126, 7150, false ], "370": [ 7663, 7724, false ], "371": [ 8516, 8551, true ], "372": [ 9549, 9581, false ] } }, "35": {}, "38": {}, "39": {}, "6": { "SafeMath.add": { "541": [ 2794, 2800, true ] }, "SafeMath.div": { "540": [ 4294, 4299, true ] }, "SafeMath.mul": { "538": [ 3611, 3617, false ], "539": [ 3672, 3682, true ] }, "SafeMath.sub": { "537": [ 3213, 3219, true ] } }, "60": {}, "61": {}, "62": {}, "63": {}, "65": {}, "66": { "AccountContextHandler._clearPortfolioActiveFlags": { "437": [ 9343, 9420, false ] }, "AccountContextHandler.isActiveInBalances": { "417": [ 4157, 4172, false ], "418": [ 4176, 4214, true ], "419": [ 4320, 4365, false ], "420": [ 4513, 4530, false ] }, "AccountContextHandler.mustSettleAssets": { "416": [ 3173, 3204, false ] }, "AccountContextHandler.setActiveCurrency": { "421": [ 5431, 5445, false ], "422": [ 5449, 5487, true ], "423": [ 5707, 5715, false ], "424": [ 5719, 5764, false ], "425": [ 6877, 6894, false ], "426": [ 6898, 6906, false ], "427": [ 7232, 7249, false ], "428": [ 7254, 7262, false ], "429": [ 7405, 7455, false ], "430": [ 7689, 7705, false ], "431": [ 7709, 7717, false ], "432": [ 8010, 8058, true ], "433": [ 8358, 8374, false ], "434": [ 8379, 8387, false ], "435": [ 8616, 8624, false ], "436": [ 8724, 8734, true ] }, "AccountContextHandler.storeAssetsAndUpdateContext": { "411": [ 10453, 10494, true ], "412": [ 10772, 10785, false ], "413": [ 10809, 10869, true ], "414": [ 11059, 11066, false ], "415": [ 11955, 11981, false ] } }, "67": { "BalanceHandler._finalizeTransfers": { "469": [ 10925, 10957, false ], "470": [ 11007, 11025, false ], "471": [ 11029, 11060, false ] }, "BalanceHandler._setBalanceStorage": { "472": [ 19647, 19677, false ], "473": [ 19681, 19711, true ], "474": [ 19851, 19869, false ], "475": [ 19873, 19906, true ], "476": [ 20044, 20062, true ], "477": [ 20278, 20318, true ] }, "BalanceHandler.depositAssetToken": { "453": [ 2084, 2108, false ], "454": [ 2136, 2159, true ], "455": [ 2300, 2335, false ], "456": [ 2683, 2703, true ], "457": [ 2707, 2720, false ] }, "BalanceHandler.depositUnderlyingToken": { "449": [ 4733, 4762, false ], "450": [ 4790, 4818, true ], "451": [ 5069, 5113, false ], "452": [ 5176, 5222, true ] }, "BalanceHandler.finalize": { "458": [ 6768, 6802, false ], "459": [ 6843, 6998, true ], "460": [ 7067, 7117, false ], "461": [ 7158, 7319, true ], "462": [ 7935, 7955, false ], "463": [ 8269, 8304, true ], "464": [ 8308, 8347, false ], "465": [ 8890, 8929, false ], "466": [ 9199, 9209, false ], "467": [ 9836, 9870, false ] }, "BalanceHandler.getBalanceStorage": { "468": [ 21302, 21319, false ] }, "BalanceHandler.loadBalanceState": { "446": [ 22128, 22142, false ], "447": [ 22146, 22184, true ], "448": [ 22274, 22319, false ] } }, "68": { "Incentives.calculateIncentivesToClaim": { "493": [ 958, 988, false ] }, "Incentives.claimIncentives": { "491": [ 5317, 5348, false ], "492": [ 6082, 6103, false ] } }, "69": { "TokenHandler._deposit": { "552": [ 11386, 11421, true ], "553": [ 11538, 11558, false ], "554": [ 11782, 11802, true ], "555": [ 11806, 11836, false ], "556": [ 12292, 12322, false ], "557": [ 12522, 12594, true ], "558": [ 12740, 12760, false ] }, "TokenHandler.convertToExternal": { "542": [ 13827, 13879, false ] }, "TokenHandler.convertToInternal": { "551": [ 13557, 13609, false ] }, "TokenHandler.mint": { "547": [ 6249, 6289, true ], "548": [ 6546, 6586, false ], "549": [ 6757, 6797, false ], "550": [ 6892, 6930, false ] }, "TokenHandler.redeem": { "559": [ 8140, 8178, false ], "560": [ 8389, 8429, false ], "561": [ 8556, 8596, false ] }, "TokenHandler.transfer": { "543": [ 9558, 9593, false ], "544": [ 10052, 10075, false ], "545": [ 10386, 10406, false ], "546": [ 10464, 10498, false ] } }, "70": { "AaveHandler.convertFromScaledBalanceExternal": { "408": [ 5163, 5192, false ], "409": [ 5803, 5846, true ], "410": [ 5923, 5951, true ] }, "AaveHandler.convertToScaledBalanceExternal": { "405": [ 3386, 3410, false ], "406": [ 3438, 3461, true ], "407": [ 3892, 3951, true ] } }, "71": { "CompoundHandler.mint": { "478": [ 877, 917, true ] }, "CompoundHandler.redeem": { "480": [ 2685, 2725, true ] }, "CompoundHandler.redeemCETH": { "479": [ 1572, 1612, true ] } }, "72": { "GenericToken.checkBalanceViaSelector": { "489": [ 748, 755, true ] }, "GenericToken.checkReturnCode": { "490": [ 2337, 2344, true ] } }, "76": { "AssetRate._getAssetRateStateful": { "444": [ 4732, 4765, false ], "445": [ 5116, 5124, true ] } }, "77": {}, "78": { "DateTime.getTimeUTC0": { "481": [ 668, 689, true ] }, "DateTime.getTradedMarket": { "482": [ 1014, 1024, false ], "483": [ 1064, 1074, false ], "484": [ 1118, 1128, false ], "485": [ 1165, 1175, false ], "486": [ 1216, 1226, false ], "487": [ 1267, 1277, false ], "488": [ 1319, 1329, false ] } }, "79": {}, "80": {}, "81": { "nTokenHandler.getSecondaryRewarder": { "565": [ 5399, 5427, false ] } }, "82": { "nTokenSupply.changeNTokenSupply": { "566": [ 5620, 5639, false ], "567": [ 5643, 5685, true ], "568": [ 6052, 6080, true ] }, "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken": { "569": [ 2155, 2186, false ], "570": [ 2190, 2213, false ], "571": [ 2217, 2232, false ], "572": [ 3087, 3131, true ] } }, "83": {}, "84": { "PortfolioHandler._loadAssetArray": { "506": [ 16955, 16985, true ] }, "PortfolioHandler._storeAsset": { "514": [ 11735, 11755, false ], "515": [ 11759, 11803, true ], "516": [ 11864, 11882, false ], "517": [ 11886, 11920, true ], "518": [ 11978, 11997, false ], "519": [ 12001, 12055, true ], "520": [ 12108, 12141, false ], "521": [ 12145, 12178, true ] }, "PortfolioHandler._updatePortfolioContext": { "522": [ 11089, 11108, true ], "523": [ 11112, 11143, false ], "524": [ 11268, 11315, true ] }, "PortfolioHandler.buildPortfolioState": { "494": [ 15658, 15679, false ] }, "PortfolioHandler.deleteAsset": { "507": [ 12795, 12837, true ], "508": [ 12885, 12921, true ], "509": [ 13072, 13126, false ], "510": [ 13142, 13204, true ], "511": [ 13680, 13709, false ], "512": [ 13713, 13755, false ], "513": [ 13883, 13910, false ] }, "PortfolioHandler.getSortedPortfolio": { "495": [ 15082, 15100, false ] }, "PortfolioHandler.storeAssets": { "496": [ 7495, 7549, true ], "497": [ 7625, 7671, false ], "498": [ 7675, 7694, false ], "499": [ 8021, 8067, false ], "500": [ 8305, 8351, false ], "501": [ 9569, 9588, false ], "502": [ 9637, 9683, false ], "503": [ 9703, 9757, true ], "504": [ 10311, 10335, false ], "505": [ 10339, 10373, true ] } }, "85": { "TransferAssets.encodeAssetId": { "562": [ 1043, 1081, true ], "563": [ 1100, 1128, true ], "564": [ 1147, 1195, true ] } }, "86": {}, "87": {}, "88": { "AssetHandler.getSettlementDate": { "442": [ 1112, 1131, false ], "443": [ 1135, 1189, true ] } }, "89": {}, "90": {}, "91": {}, "92": {}, "93": {}, "94": { "SafeInt256.abs": { "536": [ 1717, 1722, false ] }, "SafeInt256.add": { "525": [ 1511, 1539, true ] }, "SafeInt256.div": { "531": [ 1108, 1115, false ], "532": [ 1119, 1135, true ] }, "SafeInt256.mul": { "526": [ 497, 504, false ], "527": [ 515, 521, true ], "528": [ 525, 535, true ], "529": [ 560, 566, true ], "530": [ 570, 580, true ] }, "SafeInt256.sub": { "535": [ 1385, 1413, true ] }, "SafeInt256.toInt": { "534": [ 2596, 2626, true ] }, "SafeInt256.toUint": { "533": [ 2473, 2479, true ] } } }, "statements": { "141": {}, "147": {}, "151": {}, "152": {}, "153": {}, "155": {}, "157": {}, "159": {}, "21": {}, "22": {}, "25": {}, "28": { "ActionGuards.requireValidAccount": { "33": [ 1366, 1403 ], "34": [ 1446, 1479 ], "35": [ 1733, 1755 ] } }, "29": { "BatchAction._batchBalanceAndTradeAction": { "36": [ 13573, 13647 ], "37": [ 13730, 13803 ], "38": [ 13905, 14074 ], "39": [ 14169, 14404 ], "40": [ 14525, 14574 ], "41": [ 14592, 14660 ], "42": [ 14689, 14974 ], "43": [ 13264, 13267 ], "44": [ 15296, 15370 ], "45": [ 15485, 15506 ] }, "BatchAction._calculateWithdrawActionAndFinalize": { "122": [ 19746, 19774 ], "123": [ 20161, 20326 ], "124": [ 20444, 20462 ], "125": [ 20510, 20651 ], "126": [ 20662, 20728 ] }, "BatchAction._checkSufficientCash": { "132": [ 22908, 23195 ] }, "BatchAction._executeDepositAction": { "116": [ 15862, 15895 ], "117": [ 15963, 15970 ], "118": [ 16333, 16505 ], "119": [ 16772, 16859 ], "120": [ 17030, 17071 ], "121": [ 17092, 17239 ] }, "BatchAction._executeNTokenAction": { "229": [ 17908, 17963 ], "230": [ 17977, 18057 ], "231": [ 18324, 18443 ], "232": [ 18525, 18882 ], "233": [ 18897, 19023 ], "234": [ 19203, 19273 ] }, "BatchAction._executeTrades": { "65": [ 21539, 21669 ], "66": [ 21714, 21937 ], "67": [ 21987, 22061 ], "68": [ 22303, 22491 ] }, "BatchAction._finalizeAccountContext": { "46": [ 21013, 21054 ], "47": [ 21114, 21174 ] }, "BatchAction._settleAccountIfRequired": { "48": [ 23544, 23610 ], "49": [ 23641, 23662 ] }, "BatchAction.batchBalanceAction": { "24": [ 1388, 1465 ], "25": [ 1475, 1503 ], "26": [ 1978, 2052 ], "27": [ 2135, 2208 ], "28": [ 2223, 2392 ], "29": [ 2407, 2692 ], "30": [ 1679, 1682 ], "31": [ 2713, 2761 ] }, "BatchAction.batchBalanceAndTradeAction": { "0": [ 3400, 3477 ], "1": [ 3487, 3515 ], "2": [ 3619, 3667 ] }, "BatchAction.batchBalanceAndTradeActionWithCallback": { "19": [ 11429, 11492 ], "20": [ 11502, 11530 ], "21": [ 11635, 11676 ], "22": [ 11955, 12035 ], "23": [ 12502, 12562 ] }, "BatchAction.batchLend": { "3": [ 4605, 4682 ], "4": [ 4692, 4720 ], "5": [ 5534, 5608 ], "6": [ 5787, 5809 ], "7": [ 5900, 5971 ], "8": [ 5877, 5880 ], "9": [ 6080, 6153 ], "10": [ 6167, 6397 ], "11": [ 6486, 6526 ], "12": [ 8114, 8172 ], "13": [ 8508, 8576 ], "14": [ 8903, 9158 ], "15": [ 9305, 9358 ], "16": [ 5239, 5242 ], "17": [ 9680, 9754 ], "18": [ 9847, 9895 ] }, "BatchAction.getLibInfo": { "32": [ 23876, 24141 ] } }, "35": {}, "38": {}, "39": {}, "6": { "SafeMath.add": { "343": [ 2786, 2832 ] }, "SafeMath.div": { "341": [ 4286, 4330 ], "342": [ 4340, 4352 ] }, "SafeMath.mul": { "339": [ 3619, 3627 ], "340": [ 3664, 3720 ] }, "SafeMath.sub": { "272": [ 3205, 3254 ], "273": [ 3264, 3276 ] } }, "60": {}, "61": {}, "62": { "LibStorage._getStorageSlot": { "319": [ 8727, 8772 ] } }, "63": {}, "65": {}, "66": { "AccountContextHandler._clearPortfolioActiveFlags": { "224": [ 9497, 9550 ], "225": [ 9568, 9580 ], "226": [ 9608, 9629 ], "227": [ 9650, 9663 ] }, "AccountContextHandler.getAccountContext": { "133": [ 743, 764 ] }, "AccountContextHandler.isActiveInBalances": { "138": [ 4149, 4215 ], "139": [ 4367, 4378 ], "140": [ 4627, 4715 ], "141": [ 4744, 4773 ], "142": [ 4794, 4806 ] }, "AccountContextHandler.isBitmapEnabled": { "103": [ 1219, 1262 ] }, "AccountContextHandler.mustSettleAssets": { "134": [ 3350, 3420 ], "135": [ 3649, 3735 ] }, "AccountContextHandler.setAccountContext": { "114": [ 1029, 1060 ], "115": [ 1070, 1104 ] }, "AccountContextHandler.setActiveCurrency": { "191": [ 5423, 5488 ], "192": [ 5766, 5773 ], "193": [ 6965, 7106 ], "194": [ 7124, 7131 ], "195": [ 7350, 7383 ], "196": [ 7457, 7478 ], "197": [ 7496, 7564 ], "198": [ 7582, 7589 ], "199": [ 8002, 8059 ], "200": [ 7737, 7817 ], "201": [ 8147, 8221 ], "202": [ 8239, 8246 ], "203": [ 8389, 8396 ], "204": [ 8410, 8470 ], "205": [ 8484, 8505 ], "206": [ 8519, 8530 ], "207": [ 8626, 8633 ], "208": [ 8716, 8735 ], "209": [ 8777, 8906 ] }, "AccountContextHandler.storeAssetsAndUpdateContext": { "104": [ 10389, 10435 ], "105": [ 10445, 10495 ], "106": [ 10541, 10591 ], "107": [ 10801, 10870 ], "108": [ 11082, 11156 ], "109": [ 11232, 11307 ], "110": [ 11426, 11519 ], "111": [ 12001, 12083 ], "112": [ 12151, 12198 ], "113": [ 12111, 12136 ] } }, "67": { "BalanceHandler._finalizeTransfers": { "175": [ 10973, 10986 ], "176": [ 11628, 11862 ], "177": [ 12038, 12125 ], "178": [ 12352, 12465 ], "179": [ 12532, 12620 ] }, "BalanceHandler._setBalanceStorage": { "183": [ 19639, 19712 ], "184": [ 19843, 19907 ], "185": [ 20036, 20063 ], "186": [ 20270, 20319 ], "187": [ 20374, 20426 ], "188": [ 20555, 20621 ], "189": [ 20436, 20488 ], "190": [ 20498, 20545 ] }, "BalanceHandler.depositAssetToken": { "82": [ 2110, 2118 ], "83": [ 2128, 2160 ], "84": [ 2418, 2574 ], "85": [ 3339, 3419 ], "86": [ 3473, 3553 ], "87": [ 3568, 3594 ], "88": [ 3625, 3691 ], "89": [ 4016, 4170 ] }, "BalanceHandler.depositUnderlyingToken": { "75": [ 4764, 4772 ], "76": [ 4782, 4819 ], "77": [ 5168, 5238 ], "78": [ 5269, 5380 ], "79": [ 6101, 6189 ], "80": [ 6200, 6234 ] }, "BalanceHandler.finalize": { "90": [ 6818, 7042 ], "91": [ 7133, 7361 ], "92": [ 7584, 7754 ], "93": [ 7971, 8055 ], "94": [ 8101, 8244 ], "95": [ 8069, 8086 ], "96": [ 8725, 8803 ], "97": [ 8818, 8871 ], "98": [ 8949, 9128 ], "99": [ 9157, 9174 ], "100": [ 9225, 9516 ], "101": [ 9537, 9821 ], "102": [ 10025, 10098 ] }, "BalanceHandler.getBalanceStorage": { "143": [ 21190, 21234 ], "144": [ 21244, 21288 ], "145": [ 21494, 21586 ], "146": [ 21617, 21675 ], "147": [ 21695, 21735 ] }, "BalanceHandler.loadBalanceState": { "54": [ 22120, 22185 ], "55": [ 22223, 22259 ], "56": [ 22335, 22583 ], "57": [ 22614, 22648 ], "58": [ 22662, 22698 ], "59": [ 22712, 22742 ], "60": [ 22756, 22793 ], "61": [ 22814, 22844 ], "62": [ 22854, 22904 ], "63": [ 22914, 22948 ], "64": [ 22958, 22996 ] } }, "68": { "Incentives.calculateIncentivesToClaim": { "286": [ 1219, 1631 ], "287": [ 1737, 1767 ], "288": [ 1927, 1964 ], "289": [ 2927, 3201 ], "290": [ 3997, 4155 ] }, "Incentives.claimIncentives": { "180": [ 4979, 5157 ], "181": [ 5364, 6057 ], "182": [ 6105, 6163 ] } }, "69": { "TokenHandler._deposit": { "258": [ 11574, 11682 ], "259": [ 11703, 11767 ], "260": [ 12161, 12267 ], "261": [ 12514, 12595 ], "262": [ 12776, 12835 ], "263": [ 12866, 12897 ] }, "TokenHandler._getToken": { "155": [ 1720, 2122 ] }, "TokenHandler.convertToExternal": { "73": [ 13881, 13894 ], "74": [ 14429, 14502 ] }, "TokenHandler.convertToInternal": { "169": [ 13611, 13624 ], "170": [ 13634, 13707 ] }, "TokenHandler.getAssetToken": { "81": [ 1085, 1120 ] }, "TokenHandler.getUnderlyingToken": { "72": [ 1228, 1262 ] }, "TokenHandler.mint": { "165": [ 6677, 6736 ], "166": [ 6813, 6871 ], "167": [ 6946, 6982 ], "168": [ 7271, 7330 ] }, "TokenHandler.redeem": { "275": [ 8194, 8279 ], "276": [ 8449, 8531 ], "277": [ 8616, 8714 ], "278": [ 8918, 8963 ] }, "TokenHandler.transfer": { "158": [ 9499, 9543 ], "159": [ 9864, 10027 ], "160": [ 10408, 10443 ], "161": [ 10592, 10672 ], "162": [ 10703, 10922 ] }, "TokenHandler.transferIncentive": { "293": [ 14604, 14691 ] } }, "70": { "AaveHandler._getReserveNormalizedIncome": { "274": [ 6266, 6416 ] }, "AaveHandler.convertFromScaledBalanceExternal": { "255": [ 5194, 5202 ], "256": [ 5795, 5847 ], "257": [ 5916, 5981 ] }, "AaveHandler.convertToScaledBalanceExternal": { "171": [ 3412, 3420 ], "172": [ 3430, 3462 ], "173": [ 3884, 3952 ], "174": [ 4013, 4067 ] }, "AaveHandler.mint": { "269": [ 1271, 1450 ] }, "AaveHandler.redeem": { "331": [ 1953, 2124 ], "332": [ 2134, 2293 ] } }, "71": { "CompoundHandler.mint": { "270": [ 869, 926 ] }, "CompoundHandler.mintCETH": { "271": [ 598, 658 ] }, "CompoundHandler.redeem": { "333": [ 2677, 2736 ], "334": [ 2902, 2963 ], "335": [ 3048, 3141 ] }, "CompoundHandler.redeemCETH": { "328": [ 1564, 1623 ], "329": [ 1690, 1751 ], "330": [ 1836, 1906 ] } }, "72": { "GenericToken.checkBalanceViaSelector": { "267": [ 740, 756 ], "268": [ 766, 811 ] }, "GenericToken.checkReturnCode": { "327": [ 2329, 2354 ] }, "GenericToken.safeTransferIn": { "326": [ 1506, 1575 ] }, "GenericToken.safeTransferOut": { "265": [ 1295, 1345 ], "266": [ 1355, 1372 ] }, "GenericToken.transferNativeTokenOut": { "264": [ 1127, 1160 ] } }, "76": { "AssetRate._getAssetRateStateful": { "151": [ 4993, 5020 ], "152": [ 5051, 5094 ], "153": [ 5108, 5125 ], "154": [ 5176, 5226 ] }, "AssetRate._getAssetRateStorage": { "253": [ 3154, 3198 ], "254": [ 3208, 3260 ] }, "AssetRate.buildAssetRateStateful": { "71": [ 6164, 6413 ] } }, "77": {}, "78": { "DateTime.getTimeUTC0": { "236": [ 660, 690 ], "237": [ 700, 736 ] }, "DateTime.getTradedMarket": { "351": [ 1026, 1050 ], "352": [ 1076, 1104 ], "353": [ 1130, 1151 ], "354": [ 1177, 1202 ], "355": [ 1228, 1253 ], "356": [ 1279, 1305 ], "357": [ 1331, 1357 ], "358": [ 1368, 1391 ] } }, "79": {}, "80": {}, "81": { "nTokenHandler.getNTokenContext": { "127": [ 1193, 1224 ], "128": [ 1234, 1299 ], "129": [ 1309, 1358 ], "130": [ 1368, 1411 ], "131": [ 1421, 1458 ] }, "nTokenHandler.getSecondaryRewarder": { "291": [ 5443, 5506 ], "292": [ 5537, 5565 ] }, "nTokenHandler.nTokenAddress": { "279": [ 1729, 1753 ] } }, "82": { "nTokenSupply._calculateAdditionalNOTE": { "350": [ 4128, 4388 ] }, "nTokenSupply.changeNTokenSupply": { "280": [ 5612, 5686 ], "281": [ 5728, 5778 ], "282": [ 5959, 6033 ], "283": [ 6044, 6081 ], "284": [ 6119, 6172 ], "285": [ 6183, 6214 ] }, "nTokenSupply.getStoredNTokenSupplyFactors": { "347": [ 966, 1005 ], "348": [ 1218, 1283 ], "349": [ 1293, 1348 ] }, "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken": { "336": [ 1720, 1871 ], "337": [ 2974, 3065 ], "338": [ 3079, 3132 ] } }, "83": {}, "84": { "PortfolioHandler._loadAssetArray": { "238": [ 16947, 16986 ], "239": [ 17584, 17626 ], "240": [ 17640, 17678 ], "241": [ 17692, 17732 ], "242": [ 17746, 17784 ], "243": [ 17798, 17822 ], "244": [ 17332, 17335 ], "245": [ 17843, 17856 ] }, "PortfolioHandler._sortInPlace": { "246": [ 16250, 16338 ], "247": [ 16120, 16123 ], "248": [ 16565, 16608 ], "249": [ 16626, 16681 ], "250": [ 16699, 16702 ], "251": [ 16730, 16733 ] }, "PortfolioHandler._storeAsset": { "306": [ 11727, 11804 ], "307": [ 11856, 11921 ], "308": [ 11970, 12056 ], "309": [ 12100, 12179 ], "310": [ 12229, 12279 ], "311": [ 12289, 12335 ], "312": [ 12345, 12392 ], "313": [ 12402, 12447 ] }, "PortfolioHandler._updatePortfolioContext": { "314": [ 11159, 11190 ], "315": [ 11210, 11249 ], "316": [ 11260, 11316 ], "317": [ 11371, 11469 ], "318": [ 11480, 11539 ] }, "PortfolioHandler.buildPortfolioState": { "50": [ 15681, 15693 ], "51": [ 15704, 15770 ], "52": [ 15780, 15822 ], "53": [ 15832, 15885 ] }, "PortfolioHandler.deleteAsset": { "294": [ 12787, 12838 ], "295": [ 12877, 12922 ], "296": [ 13051, 13214 ], "297": [ 13253, 13290 ], "298": [ 13775, 13804 ], "299": [ 13822, 13844 ], "300": [ 13587, 13590 ], "301": [ 14031, 14084 ], "302": [ 14098, 14105 ], "303": [ 14421, 14596 ], "304": [ 14606, 14657 ], "305": [ 14667, 14720 ] }, "PortfolioHandler.getSortedPortfolio": { "136": [ 15102, 15115 ], "137": [ 15126, 15146 ] }, "PortfolioHandler.storeAssets": { "210": [ 7487, 7550 ], "211": [ 7714, 7744 ], "212": [ 7255, 7258 ], "213": [ 8611, 8643 ], "214": [ 8820, 9055 ], "215": [ 7923, 7926 ], "216": [ 9590, 9598 ], "217": [ 9612, 9771 ], "218": [ 9823, 10038 ], "219": [ 10053, 10105 ], "220": [ 10119, 10142 ], "221": [ 9475, 9478 ], "222": [ 10303, 10374 ], "223": [ 10424, 10576 ] } }, "85": { "TransferAssets.encodeAssetId": { "320": [ 1035, 1082 ], "321": [ 1092, 1129 ], "322": [ 1139, 1196 ], "323": [ 1207, 1430 ] } }, "86": {}, "87": {}, "88": { "AssetHandler.getSettlementDate": { "344": [ 1104, 1190 ], "345": [ 1365, 1386 ], "346": [ 1689, 1751 ] } }, "89": {}, "90": {}, "91": {}, "92": {}, "93": { "FloatingPoint56.unpackFrom56Bits": { "252": [ 1385, 1418 ] } }, "94": { "SafeInt256.abs": { "324": [ 1724, 1737 ], "325": [ 1752, 1760 ] }, "SafeInt256.add": { "69": [ 1503, 1540 ] }, "SafeInt256.div": { "156": [ 1098, 1137 ], "157": [ 1245, 1254 ] }, "SafeInt256.mul": { "148": [ 474, 483 ], "149": [ 506, 536 ], "150": [ 551, 581 ] }, "SafeInt256.neg": { "70": [ 1619, 1636 ] }, "SafeInt256.sub": { "235": [ 1377, 1414 ] }, "SafeInt256.toInt": { "228": [ 2587, 2627 ] }, "SafeInt256.toUint": { "163": [ 2465, 2480 ], "164": [ 2490, 2507 ] } } } }, "dependencies": [ "ABDKMath64x64", "AaveHandler", "AccountContextHandler", "ActionGuards", "AssetHandler", "AssetRate", "AssetRateAdapter", "BalanceHandler", "Bitmap", "BitmapAssetsHandler", "CErc20Interface", "CEtherInterface", "CTokenInterface", "CashGroup", "CompoundHandler", "Constants", "DateTime", "Deployments", "ExchangeRate", "FloatingPoint56", "FreeCollateral", "FreeCollateralExternal", "GenericToken", "IEIP20NonStandard", "IRewarder", "Incentives", "LibStorage", "Market", "MigrateIncentives", "NotionalCallback", "PortfolioHandler", "SafeInt256", "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/SafeMath", "SettleAssetsExternal", "SettleBitmapAssets", "SettlePortfolioAssets", "StorageLayoutV1", "TokenHandler", "TradingAction", "TransferAssets", "nTokenCalculations", "nTokenHandler", "nTokenMintAction", "nTokenRedeemAction", "nTokenSupply" ], "deployedBytecode": "60806040526004361061007b5760003560e01c80636e6a32a61161004e5780636e6a32a6146100f357806382463367146101065780638da5cb5b1461011b578063c4c96dae146101305761007b565b80630276b64b1461008057806324a3d62214610095578063541f5270146100c05780635950d8e9146100e0575b600080fd5b61009361008e3660046141f2565b610157565b005b3480156100a157600080fd5b506100aa6101e7565b6040516100b79190614641565b60405180910390f35b3480156100cc57600080fd5b506100936100db366004614366565b6101f6565b6100936100ee366004614242565b61053e565b6100936101013660046142e6565b61066e565b34801561011257600080fd5b506100aa6107f4565b34801561012757600080fd5b506100aa610803565b34801561013c57600080fd5b5061014561081a565b6040516100b79695949392919061469e565b6002600a5414156101835760405162461bcd60e51b815260040161017a906149c5565b60405180910390fd5b6002600a556001600160a01b03831633148061019e57503330145b6101ba5760405162461bcd60e51b815260040161017a906148b4565b6101c3836108a0565b60006101d08484846108ef565b90506101dc8482610aaa565b50506001600a555050565b6002546001600160a01b031681565b6002600a5414156102195760405162461bcd60e51b815260040161017a906149c5565b6002600a556001600160a01b03831633148061023457503330145b6102505760405162461bcd60e51b815260040161017a906148b4565b610259836108a0565b600061026484610b2b565b905060006102788583604001516000610be7565b9050610282613f12565b60005b8481101561050c573686868381811061029a57fe5b90506020028101906102ac9190614b3c565b90508115610315578686600184038181106102c357fe5b90506020028101906102d59190614b3c565b6102e3906020810190614579565b61ffff166102f46020830183614579565b61ffff16116103155760405162461bcd60e51b815260040161017a90614964565b60006103246040830183614ad7565b9150508061033157600080fd5b60005b8181101561037457600061034b6040850185614ad7565b8381811061035557fe5b9050602002013560f81c60ff161461036c57600080fd5b600101610334565b5061038f896103866020850185614579565b86919089610c79565b6103b4896103a06020850185614579565b6103ad6040860186614ad7565b8a8a610d1f565b606086018290529550600012156103ca57600080fd5b60006103ef6103ea86606001518760200151610ec590919063ffffffff16565b610ee1565b905060008113156104ef5761040a604084016020850161439d565b156104b757600061042a6104216020860186614579565b61ffff16610eef565b9050600061044761043e6020870187614579565b61ffff16610f3b565b9050600061045f6104588486610f4e565b8390610f87565b90506305f5e1008260400151121561047f5761047c816001610ec5565b90505b600061048c898f84610fbf565b9050848112156104ae5760405162461bcd60e51b815260040161017a90614a95565b505050506104ef565b60006104d26104c96020860186614579565b61ffff166110a4565b90506104ec8b6104e28385610f87565b88919060006110b7565b50505b6104fc858b896000611191565b5050600190920191506102859050565b5061051683611412565b61052757610527838784600061141f565b6105318684610aaa565b50506001600a5550505050565b3360009081526008602052604090205460ff1661056d5760405162461bcd60e51b815260040161017a906148b4565b610576856108a0565b60006105838686866108ef565b905061058f8187611501565b60405163550d065760e11b8152339063aa1a0cae906105b89083908a9088908890600401614655565b600060405180830381600087803b1580156105d257600080fd5b505af11580156105e6573d6000803e3d6000fd5b5050505060208101516001600160f81b0319161561066657604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90610635908990600401614641565b60006040518083038186803b15801561064d57600080fd5b505af4158015610661573d6000803e3d6000fd5b505050505b505050505050565b6002600a5414156106915760405162461bcd60e51b815260040161017a906149c5565b6002600a556001600160a01b0383163314806106ac57503330145b6106c85760405162461bcd60e51b815260040161017a906148b4565b6106d1836108a0565b60006106dc84610b2b565b90506106e6613f12565b60005b838110156107dd57368585838181106106fe57fe5b905060c002019050600082111561076b5785856001840381811061071e57fe5b905060c0020160200160208101906107369190614579565b61ffff1661074a6040830160208401614579565b61ffff161161076b5760405162461bcd60e51b815260040161017a90614964565b6107888761077f6040840160208501614579565b85919087610c79565b6107a4878461079a60208501856143b9565b8460400135611605565b6107d487858560608501356107bf60a087016080880161439d565b6107cf60c0880160a0890161439d565b6116d8565b506001016106e9565b506107e88583610aaa565b50506001600a55505050565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b73__$841fddfe32830bb6dbc3a02d7f16c53722$__73__$b21a4dc043b77aa57922ad9143a3cb040e$__73__$f6541b0d362a0c7d99a2a29cd3d373d61b$__73__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__73__$892f367d396be2b92d3b049e6e62920984$__73__$43fd92ea4ea9b72ca0014644dbfd757564$__909192939495565b6001600160a01b0381166108b357600080fd5b6001600160a01b0381163014156108c957600080fd5b60006108d482611755565b5050505061ffff169050806000146108eb57600080fd5b5050565b6108f7613f62565b600061090285610b2b565b905061090c613f12565b600061091e8784604001516000610be7565b905060005b85811015610a82573687878381811061093857fe5b905060200281019061094a9190614b1d565b905081156109b95787876001840381811061096157fe5b90506020028101906109739190614b1d565b610984906040810190602001614579565b61ffff166109986040830160208401614579565b61ffff16116109b95760405162461bcd60e51b815260040161017a90614964565b6109d6896109cd6040840160208501614579565b86919088610c79565b6109e8898561079a60208501856143b9565b60006109f760c0830183614ad7565b90501115610a5e576000610a298a610a156040850160208601614579565b610a2260c0860186614ad7565b8a89610d1f565b945090506000811215610a4857610a4885610a4383610ee1565b6117be565b6060850151610a579082610ec5565b6060860152505b610a7989868660608501356107bf60a087016080880161439d565b50600101610923565b50610a8c83611412565b610a9d57610a9d838883600061141f565b50909150505b9392505050565b610ab48183611501565b60208101516001600160f81b031916156108eb57604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90610aff908590600401614641565b60006040518083038186803b158015610b1757600080fd5b505af4158015610666573d6000803e3d6000fd5b610b33613f62565b6000610b3e8361180d565b9050610b49816118ae565b15610bdf576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610b8790869085906004016146d8565b60a06040518083038186803b158015610b9f57600080fd5b505af4158015610bb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd7919061441f565b915050610be2565b90505b919050565b610bef613f90565b610bf7613f90565b60ff8416610c06579050610aa3565b610c1085856118ff565b815260ff84166060820152826001600160401b0381118015610c3157600080fd5b50604051908082528060200260200182016040528015610c6b57816020015b610c58613fb8565b815260200190600190039081610c505790505b506020820152949350505050565b8161ffff166000108015610c935750613fff61ffff831611155b610c9c57600080fd5b61ffff8216808552610caf908290611928565b15610cdc57610cc2838361ffff166119b2565b61010088015260e087015260408601526020850152610cfa565b6000602085018190526040850181905260e085018190526101008501525b50506000606083018190526080830181905260a0830181905260c09092019190915250565b6000610d29613f90565b610d3284611412565b15610e22578661ffff16846060015161ffff1614610d625760405162461bcd60e51b815260040161017a90614a0f565b60608401518451604051633643f39b60e01b815260009273__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__92633643f39b92610da9928e9290918d908d906004016147cb565b604080518083038186803b158015610dc057600080fd5b505af4158015610dd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df891906143f0565b90935090508015610e1c57602085018051600160f81b176001600160f81b03191690525b50610eba565b60405163b58f83ed60e01b815273__$7ac922d04bd7a1b42c7f6e5f1dd89a70af$__9063b58f83ed90610e61908b908b9088908c908c90600401614744565b60006040518083038186803b158015610e7957600080fd5b505af4158015610e8d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610eb591908101906144be565b925090505b965096945050505050565b81810182811215600083121514610edb57600080fd5b92915050565b6000610bdf60001983611a5e565b610ef7613ff8565b6000806000610f0585611aac565b604080516060810182526001600160a01b039093168352602083019390935260ff16600a0a918101919091529350505050919050565b610f43614022565b610bdf826001611b6f565b600080610f7f8460400151610f796402540be400610f79878960200151611a5e90919063ffffffff16565b90611c1d565b949350505050565b60006305f5e10083604001511415610fa0575080610edb565b610aa36305f5e100610f79856040015185611a5e90919063ffffffff16565b600081610fce57506000610aa3565b60008213610fdb57600080fd5b6000610fee856000015161ffff16610f3b565b905060038160600151600581111561100257fe5b141561102c573483146110275760405162461bcd60e51b815260040161017a906148f8565b611043565b8451611040908290869061ffff1686611c4e565b92505b6000611056866000015161ffff166110a4565b90506000611073876000015161106b87611cf6565b849190611d09565b905060006110818383611dfa565b60608901519091506110939082610ec5565b606089015293505050509392505050565b6110ac614022565b610bdf826000611b6f565b6000826110c657506000610f7f565b600083136110d357600080fd5b60006110e6866000015161ffff166110a4565b90506005816060015160058111156110fa57fe5b14156111135785516111109061ffff1685611e2a565b93505b8060200151806111205750825b1561116757855160009061113c908390889061ffff1688611c4e565b90506111488282611dfa565b606088015190935061115a9084610ec5565b606088015250610f7f9050565b6111718185611dfa565b60808701519092506111839083610ec5565b608087015250949350505050565b60008060008660a0015112156111ea5760006111cc8760a001516111c68960c001518a60400151610ec590919063ffffffff16565b90610ec5565b12156111ea5760405162461bcd60e51b815260040161017a90614a46565b60008660800151121561123a57600061121c87608001516111c689606001518a60200151610ec590919063ffffffff16565b121561123a5760405162461bcd60e51b815260040161017a906149ed565b611245868685611eb1565b60808801819052606088015191935060009161126091610ec5565b905080156112cd5760208701516112779082610ec5565b602088015286516040516001935061ffff909116906001600160a01b038816907f5441e4a5fac93a951d782e6f1cdb82e95c8fc58561a013953d17e395c5e69b4b906112c49085906148ab565b60405180910390a35b60a08701511515806112e2575060c087015115155b1561138857600061130c8860c001516111c68a60a001518b60400151610ec590919063ffffffff16565b9050611321888861131c84611cf6565b611f67565b506040880181905260c08801511561138257876000015161ffff16876001600160a01b03167f412bc13d202a2ea5119e55fec9c5e420dddb18faf186373ad9795ad4f4545aa98a60c0015160405161137991906148ab565b60405180910390a35b60019250505b81156113b5576113b586886000015161ffff1689602001518a604001518b60e001518c610100015161204e565b865160208801516113e29161ffff16901515806113d55750604089015115155b879190600160fe1b612187565b60008760200151121561140857602085018051600160f91b176001600160f81b03191690525b5050949350505050565b6060015161ffff16151590565b600080808061142e8688612386565b64ffffffffff81168c529296509094509250905061144b886118ae565b1561145557600080fd5b60ff821660408901528461147457600760ff8316111561147457600080fd5b831561149757602088018051600160f81b176001600160f81b03191690526114a6565b602088018051607f60f91b1690525b6114b388608001516125c5565b6001600160701b031916608089015260005b83156114f65760f084901c8181146114e8576114e88a826001600160ff1b612187565b60109490941b9390506114c5565b505050505050505050565b600061150b612640565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60006116108261264d565b905060008082121561162157600080fd5b600084600681111561162f57fe5b141561163c5750506116d2565b600184600681111561164a57fe5b14806116615750600384600681111561165f57fe5b145b1561167a5761167385878460006110b7565b90506116c6565b600284600681111561168857fe5b148061169f5750600484600681111561169d57fe5b145b156116af57611673858784610fbf565b60068460068111156116bd57fe5b14156116c65750805b61066685858484612663565b50505050565b60006116e38461264d565b905060008112156116f357600080fd5b821561172b5761171c85608001516111c687606001518860200151610ec590919063ffffffff16565b9050600081121561172b575060005b608085015161173a908261287e565b608086015261174b85888885611191565b5050505050505050565b600080600080600080611766612894565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600081121580156117f15750806117ee83608001516111c685606001518660200151610ec590919063ffffffff16565b12155b6108eb5760405162461bcd60e51b815260040161017a90614a6a565b611815613f62565b600061181f612640565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6000426118ba83611412565b156118db576118c8816128a1565b835164ffffffffff16109150610be29050565b825164ffffffffff1615801590610bd75750825164ffffffffff1611159050610be2565b6060600061190d84846128bf565b9050600181511161191f579050610edb565b610aa3816129e0565b6000811580159061193b5750613fff8211155b61194457600080fd5b6080830151606084015161ffff16831415611963576001915050610edb565b6001600160701b03198116156119a85760f081901c613fff16838114156119955750600160fe1b908116149050610edb565b5060101b6001600160801b031916611963565b5060009392505050565b60008060008060006119c2612b98565b6001600160a01b0388166000908152602082815260408083208a84529091529020805469ffffffffffffffffffff81169650600160501b900463ffffffff1694509091508315611a2e578054611a2790600160701b900466ffffffffffffff16612ba5565b9250611a43565b8054600160701b900466ffffffffffffff1692505b54600160a81b9004600a90810b900b97939650919450925050565b818102600019831415611a8e57811580611a80575082828281611a7d57fe5b05145b611a8957600080fd5b610edb565b821580611aa3575081838281611aa057fe5b05145b610edb57600080fd5b6000806000806000611abd86612bb3565b909250905060006001600160a01b038316611ae25750600090506402540be400611b64565b826001600160a01b0316631ee108336040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611b1d57600080fd5b505af1158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5591906143d8565b905060008113611b6457600080fd5b969195509350915050565b611b77614022565b6000611b81612bea565b6000858152602082815260408083208715158452825291829020825160a08101845281546001600160a01b038116825260ff600160a01b82048116151594830194909452600160b01b81048416600a0a9482019490945293945092916060830191600160a81b909104166005811115611bf657fe5b81529154600160b81b900468ffffffffffffffffff16602090920191909152949350505050565b600081600019148015611c335750600160ff1b83145b15611c3d57600080fd5b818381611c4657fe5b059392505050565b80600585606001516005811115611c6157fe5b1415611c86576000611c7284610f3b565b9050611c82816000015184612bf7565b9250505b6000821315611cb2576000611c9c868685612c89565b9050856020015115611cac578091505b50610f7f565b600385606001516005811115611cc457fe5b1415611ce157611cdc84611cd784610ee1565b612d7c565b610f7f565b8451610f7f9085611cf185610ee1565b612db7565b600080821215611d0557600080fd5b5090565b600080600585606001516005811115611d1e57fe5b14611d30576370a0823160e01b611d39565b630ed1279f60e11b5b90506000611d4c86600001513084612e2e565b9050600586606001516005811115611d6057fe5b1415611d87576000611d758661ffff16610f3b565b9050611d818186612f40565b50611dca565b600186606001516005811115611d9957fe5b1415611da957611d818685612fab565b600286606001516005811115611dbb57fe5b141561007b57611dca86613057565b6000611ddb87600001513085612e2e565b9050611def611dea8284613096565b61264d565b979650505050505050565b60006305f5e10083604001511415611e13575080610edb565b6040830151610aa390610f79846305f5e100611a5e565b600081611e3957506000610edb565b60008213611e4657600080fd5b6000611e5184610f3b565b90506000611e6282600001516130f3565b9050600281056b033b2e3c9fd0803ce80000006001600160ff1b0382900305851315611e8d57600080fd5b81816b033b2e3c9fd0803ce800000087020181611ea657fe5b059695505050505050565b6000806000611ec7866000015161ffff166110a4565b90506000611ee2876080015183610f8790919063ffffffff16565b905080611ef757600080935093505050611f5f565b848015611f045750600081125b15611f39578651611f269061ffff1687611f1d84610ee1565b8592919061317e565b9350611f328282611dfa565b9250611f5c565b8651611f4d908390889061ffff1684611c4e565b9350611f598285611dfa565b92505b50505b935093915050565b825160009042908290611f7d9061ffff16613214565b90506000611f90828860c001518561323a565b9050611f9e8783838861331d565b93506000611fab8361344a565b90506001600160a01b0381161561203357806001600160a01b0316639fc27b9288611fd98b60400151611cf6565b898c60c001518a6040518663ffffffff1660e01b8152600401612000959493929190614857565b600060405180830381600087803b15801561201a57600080fd5b505af115801561202e573d6000803e3d6000fd5b505050505b84156120435761204387866134bc565b505050509392505050565b6000612058612b98565b6001600160a01b0388166000908152602082815260408083208a845290915290209091506a7fffffffffffffffffffff1986128015906120a357506a7fffffffffffffffffffff8613155b6120ac57600080fd5b600085121580156120c7575069ffffffffffffffffffff8513155b6120d057600080fd5b83156120db57600080fd5b66ffffffffffffff8311156120ef57600080fd5b805466ffffffffffffff909316600160701b0266ffffffffffffff60701b19600a9790970b6affffffffffffffffffffff16600160a81b026001600160a81b0363ffffffff909616600160501b0263ffffffff60501b1969ffffffffffffffffffff90981669ffffffffffffffffffff1990961695909517969096169390931793909316939093179390931692909217909155505050565b8260001080156121995750613fff8311155b6121a257600080fd5b8180156121b6575082846060015161ffff16145b156121c0576116d2565b6080840151600090815b6001600160701b031982161561233b5760f082901c613fff1686811480156121ef5750855b1561222757506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116d29050565b8681148015612234575085155b15612289576001600160f01b03198516199290921691600360fe1b8316612267576010836001600160701b031916901b92505b506001600160701b031991821660109091021c919091171660808501526116d2565b86811180156122955750855b156122ef576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b16156122c957600080fd5b506001600160701b03199182166001919091016010021c919091171660808501526116d2565b86811180156122fc575085155b1561230a57505050506116d2565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b031916906001016121ca565b84612348575050506116d2565b6009811061235557600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b6000808080808080805b8951518110156124175760008a6000015182815181106123ac57fe5b602002602001015190506003808111156123c257fe5b8160a0015160038111156123d257fe5b14156123dd57600080fd5b60028160a0015160038111156123ef57fe5b141580156123ff57506060810151155b1561240e5761240e8b836134db565b50600101612390565b5060005b8951518110156124ba5760008a60000151828151811061243757fe5b602002602001015190506002600381111561244e57fe5b8160a00151600381111561245e57fe5b1415612472576080810151600090556124b1565b60018160a00151600381111561248457fe5b141561249d5760808101518061249a838261362a565b50505b6124a98186868661375b565b919650945092505b5060010161241b565b50606089015160006124ca6137be565b6001600160a01b038b1660009081526020829052604081209192505b8c60200151518110156125945760008d60200151828151811061250557fe5b60200260200101519050806060015160001415612522575061258c565b60028160a00151600381111561253457fe5b14158015612552575060038160a00151600381111561254f57fe5b14155b61255b57600080fd5b6125678189898961375b565b919950975095506125848184876010811061257e57fe5b0161362a565b600185019450505b6001016124e6565b50601083111580156125ab575064ffffffffff8411155b6125b457600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561263757600160fe1b8281161415612621576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506125ed565b50909392505050565b600080610edb60016137c7565b60006001600160ff1b03821115611d0557600080fd5b600383600681111561267157fe5b14806126885750600483600681111561268657fe5b145b8061269e5750600683600681111561269c57fe5b145b1561276a576126ad84826117be565b60608401516126bc908261287e565b60608501528351604051632128561360e11b815260009173__$892f367d396be2b92d3b049e6e62920984$__91634250ac26916126fd918690600401614ac3565b60206040518083038186803b15801561271557600080fd5b505af4158015612729573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274d91906143d8565b60c086015190915061275f9082610ec5565b60c0860152506116d2565b600583600681111561277857fe5b14156116d257816127a28560c001516111c68760a001518860400151610ec590919063ffffffff16565b12156127c05760405162461bcd60e51b815260040161017a9061498e565b60c08401516127cf908361287e565b60c085015283516040516352e73f7760e01b815260009173__$43fd92ea4ea9b72ca0014644dbfd757564$__916352e73f7791612810918790600401614ac3565b60206040518083038186803b15801561282857600080fd5b505af415801561283c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061286091906143d8565b60608601519091506128729082610ec5565b60608601525050505050565b80820382811315600083121514610edb57600080fd5b600080610edb60026137c7565b6000620151808210156128b357600080fd5b50620151808106900390565b606060108260ff1611156128d257600080fd5b60006128dc6137be565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b038111801561291057600080fd5b5060405190808252806020026020018201604052801561294a57816020015b612937613fb8565b81526020019060019003908161292f5790505b50905060005b8560ff168110156129d657600083826010811061296957fe5b019050600083838151811061297a57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b60608201526080019190915250600101612950565b5095945050505050565b80516000816001600160401b03811180156129fa57600080fd5b50604051908082528060200260200182016040528015612a24578160200160208202803683370190505b50905060005b82811015612a81576000848281518110612a4057fe5b60200260200101519050612a618160000151826020015183604001516137e0565b838381518110612a6d57fe5b602090810291909101015250600101612a2a565b5060015b828110156116d257805b600081118015612ac75750828181518110612aa657fe5b6020026020010151836001830381518110612abd57fe5b6020026020010151115b15612b8f57828181518110612ad857fe5b6020026020010151836001830381518110612aef57fe5b6020026020010151846001840381518110612b0657fe5b60200260200101858481518110612b1957fe5b6020026020010182815250828152505050848181518110612b3657fe5b6020026020010151856001830381518110612b4d57fe5b6020026020010151866001840381518110612b6457fe5b60200260200101878481518110612b7757fe5b60209081029190910101919091525260001901612a8f565b50600101612a85565b600080610edb60066137c7565b600881901c60ff9091161b90565b6000806000612bc061383b565b600094855260205250506040909120546001600160a01b03811692600160a01b90910460ff169150565b600080610edb60076137c7565b600081612c0657506000610edb565b6000612c11846130f3565b90506000612c1e84613848565b9050816b019d971e4fe8401e74000001600160ff1b0381612c3b57fe5b05811315612c4857600080fd5b6b033b2e3c9fd0803ce80000006b019d971e4fe8401e74000000838302010560008513612c7d57612c7881610ee1565b612c7f565b805b9695505050505050565b6000808080600587606001516005811115612ca057fe5b14612cb2576370a0823160e01b612cbb565b630ed1279f60e11b5b9050866020015115612cd7578651612cd4903083612e2e565b92505b8651612ce4908787613869565b866020015180612cf8575060008760800151115b15612d0d578651612d0a903083612e2e565b91505b608087015115612d48576000612d2b88612d268561264d565b611dfa565b9050612d3a886080015161264d565b811315612d4657600080fd5b505b866020015115612d6957612d5f611dea8385613096565b9350505050610aa3565b612d5f8561264d565b5050509392505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612db2573d6000803e3d6000fd5b505050565b826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612e0e57600080fd5b505af1158015612e22573d6000803e3d6000fd5b50505050612db26138c1565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166001600160e01b0319861617815292518251600094859485948a16939092909182918083835b60208310612eab5780518252601f199092019160209182019101612e8c565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d8060008114612f0b576040519150601f19603f3d011682016040523d82523d6000602084013e612f10565b606091505b509150915081612f1f57600080fd5b808060200190516020811015612f3457600080fd5b50519695505050505050565b612f4861392e565b54825160405163e8eda9df60e01b81526001600160a01b039092169163e8eda9df91612f7d918590309060009060040161482a565b600060405180830381600087803b158015612f9757600080fd5b505af1158015610666573d6000803e3d6000fd5b60008083600001516001600160a01b031663a0712d68846040518263ffffffff1660e01b8152600401612fde91906148ab565b602060405180830381600087803b158015612ff857600080fd5b505af115801561300c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061303091906143d8565b905080156130505760405162461bcd60e51b815260040161017a906148da565b5092915050565b80600001516001600160a01b0316631249c58b346040518263ffffffff1660e01b81526004016000604051808303818588803b158015612f9757600080fd5b6000828211156130ed576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000610bdf61310061392e565b5460405163d15e005360e01b81526001600160a01b039091169063d15e00539061312e908690600401614641565b60206040518083038186803b15801561314657600080fd5b505afa15801561315a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dea91906143d8565b60008060028660600151600581111561319357fe5b14156131ab576131a486858561393b565b9050613208565b60006131b686610f3b565b90506005876060015160058111156131ca57fe5b14156131e2576131db8186866139f8565b9150613206565b6001876060015160058111156131f457fe5b141561007b576131db87828787613aae565b505b612c7f6103ea8261264d565b60008061321f613bac565b6000938452602052505060409020546001600160a01b031690565b60008060006132498685613bb9565b50915091506000613258613c4f565b6001600160a01b038816600090815260208290526040812091925061327d8589610ec5565b90508060001315801561329657506001600160601b0381105b61329f57600080fd5b81546bffffffffffffffffffffffff19166001600160601b038216176fffffffffffffffffffffffffffffffff60601b1916600160601b6001600160801b0386160217825563ffffffff87106132f457600080fd5b50805463ffffffff8716600160e01b026001600160e01b03909116179055509150509392505050565b60e0840151600090156133de5773__$b21a4dc043b77aa57922ad9143a3cb040e$__63e0c01a72856133528860400151611cf6565b8860e001518961010001516040518563ffffffff1660e01b815260040161337c9493929190614885565b60206040518083038186803b15801561339457600080fd5b505af41580156133a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133cc91906143d8565b600060e0870181905261010087015290505b613420613419866101000151613413670de0b6b3a764000061340d886134078c60400151611cf6565b90613c5c565b90613cb5565b90613096565b8290613d1c565b9050613438670de0b6b3a764000061340d8486613c5c565b85610100018181525050949350505050565b600080613455612894565b6001600160a01b0384166000908152602082905260409020805491925090600160f81b900460ff16156134b15761348a613d76565b6001600160a01b038086166000908152602092909252604090912054169250610be2915050565b600092505050610be2565b6108eb73cfeaead4947f0705a14ec42ac3d44129e1ef3ed58383612db7565b81515181106134e957600080fd5b60008260600151116134fa57600080fd5b60008260000151828151811061350c57fe5b602002602001015190506002600381111561352357fe5b8160a00151600381111561353357fe5b14158015613551575060038160a00151600381111561354e57fe5b14155b61355a57600080fd5b606083018051600019019052600080805b8551518110156135cd5760008660000151828151811061358757fe5b602002602001015190508281608001511180156135b4575060028160a0015160038111156135b157fe5b14155b156135c457806080015192508193505b5060010161356b565b50818414156135e6575050600260a091909101526108eb565b6000856000015183815181106135f857fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b81511580159061363d57508151613fff10155b61364657600080fd5b816020015160001080156136635750602082015164ffffffffff10155b61366c57600080fd5b8160400151600010801561368557506040820151600810155b61368e57600080fd5b60608201516a7fffffffffffffffffffff19138015906136bd575060608201516a7fffffffffffffffffffff12155b6136c657600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b60008060008061376a88613d83565b905084158061377857508085115b15613781578094505b8680613791575060008860600151125b965061ffff8616156137a257600080fd5b50509451939560109390931c60f09490941b9390931793509150565b600080610edb600d5b6000620f42408260138111156137d957fe5b0192915050565b6000613fff8411156137f157600080fd5b64ffffffffff83111561380357600080fd5b600882111561381157600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b600080610edb600f6137c7565b6000808212156138625761385b82610ee1565b9050610be2565b5080610be2565b604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd9160648082019260009290919082900301818387803b158015612e0e57600080fd5b60006138cb614051565b3d80156138df57602081146138e857600080fd5b600192506138f3565b60206000833e815192505b50816108eb576040805162461bcd60e51b8152602060048201526005602482015264045524332360dc1b604482015290519081900360640190fd5b600080610edb60136137c7565b825160405163db006a7560e01b8152600091479183916001600160a01b03169063db006a759061396f9087906004016148ab565b602060405180830381600087803b15801561398957600080fd5b505af115801561399d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139c191906143d8565b905080156139e15760405162461bcd60e51b815260040161017a9061491d565b476139ec8184613096565b9350612d728685612d7c565b6000613a18613a138560000151613a0e8561264d565b612bf7565b611cf6565b9050613a2261392e565b548451604051631a4ca37b60e21b81526001600160a01b03909216916369328dec91613a549185908890600401614807565b602060405180830381600087803b158015613a6e57600080fd5b505af1158015613a82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aa691906143d8565b509392505050565b82516000908190613ac790306370a0823160e01b612e2e565b9050600086600001516001600160a01b031663db006a75856040518263ffffffff1660e01b8152600401613afb91906148ab565b602060405180830381600087803b158015613b1557600080fd5b505af1158015613b29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b4d91906143d8565b90508015613b6d5760405162461bcd60e51b815260040161017a9061491d565b8551600090613b8490306370a0823160e01b612e2e565b9050613b908184613096565b9350613ba187600001518786612db7565b505050949350505050565b600080610edb60036137c7565b6000806000613bc785613df0565b919450925090508084118015613bdd5750600081115b8015613be95750600083115b15613c48576000613bf986611755565b5050509150506000613c24613c1b6305f5e10084613c5c90919063ffffffff16565b84880387613e4c565b9050613c308482613d1c565b93506001600160801b038410613c4557600080fd5b50505b9250925092565b600080610edb60116137c7565b600082613c6b57506000610edb565b82820282848281613c7857fe5b0414610aa35760405162461bcd60e51b8152600401808060200182810382526021815260200180614b966021913960400191505060405180910390fd5b6000808211613d0b576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613d1457fe5b049392505050565b600082820183811015610aa3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080610edb60126137c7565b6000808260400151118015613d9d57506040820151600810155b613da657600080fd5b6040820151600210613dbd57506020810151610be2565b6000613dcf6001846040015103613e6e565b6020840151909150610aa3906276a70090613dea9084613096565b90613d1c565b600080600080613dfe613c4f565b6001600160a01b0395909516600090815260209590955250506040909220546001600160601b03811693600160601b82046001600160801b03169350600160e01b90910463ffffffff169150565b6000610f7f8261340d6301da9c00818861340789670de0b6b3a7640000613c5c565b60008160011415613e8357506276a700610be2565b8160021415613e96575062ed4e00610be2565b8160031415613eaa57506301da9c00610be2565b8160041415613ebe57506303b53800610be2565b8160051415613ed257506309450c00610be2565b8160061415613ee6575063128a1800610be2565b8160071415613efa57506325143000610be2565b60405162461bcd60e51b815260040161017a9061493d565b604051806101200160405280600061ffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115613ff357fe5b905290565b604051806060016040528060006001600160a01b0316815260200160008152602001600081525090565b6040805160a0810182526000808252602082018190529181018290529060608201908152602001600081525090565b60405180602001604052806001906020820280368337509192915050565b80356001600160a01b0381168114610be257600080fd5b60008083601f840112614097578081fd5b5081356001600160401b038111156140ad578182fd5b60208301915083602080830285010111156140c757600080fd5b9250929050565b600082601f8301126140de578081fd5b815160206001600160401b03808311156140f457fe5b6141018283850201614b51565b8381528281019086840160c0808702890186018a101561411f578788fd5b875b878110156141a05781838c031215614137578889fd5b60408051838101818110898211171561414c57fe5b82528451815288850151898201528482015191810191909152606080850151908201526080808501519082015260a0906141878286016141c7565b9181019190915285529386019391810191600101614121565b50919998505050505050505050565b80516001600160701b031981168114610be257600080fd5b805160048110610be257600080fd5b8051610be281614b85565b805160ff81168114610be257600080fd5b600080600060408486031215614206578283fd5b61420f8461406f565b925060208401356001600160401b03811115614229578283fd5b61423586828701614086565b9497909650939450505050565b600080600080600060608688031215614259578081fd5b6142628661406f565b945060208601356001600160401b038082111561427d578283fd5b61428989838a01614086565b909650945060408801359150808211156142a1578283fd5b818801915088601f8301126142b4578283fd5b8135818111156142c2578384fd5b8960208285010111156142d3578384fd5b9699959850939650602001949392505050565b6000806000604084860312156142fa578283fd5b6143038461406f565b925060208401356001600160401b038082111561431e578384fd5b818601915086601f830112614331578384fd5b81358181111561433f578485fd5b87602060c083028501011115614353578485fd5b6020830194508093505050509250925092565b60008060006040848603121561437a578081fd5b6143838461406f565b925060208401356001600160401b03811115614229578182fd5b6000602082840312156143ae578081fd5b8135610aa381614b74565b6000602082840312156143ca578081fd5b813560078110610aa3578182fd5b6000602082840312156143e9578081fd5b5051919050565b60008060408385031215614402578182fd5b82519150602083015161441481614b74565b809150509250929050565b600060a08284031215614430578081fd5b60405160a081018181106001600160401b038211171561444c57fe5b604052825164ffffffffff81168114614463578283fd5b815260208301516001600160f81b03198116811461447f578283fd5b6020820152614490604084016141e1565b60408201526144a1606084016141d6565b60608201526144b2608084016141af565b60808201529392505050565b600080604083850312156144d0578182fd5b82516001600160401b03808211156144e6578384fd5b90840190608082870312156144f9578384fd5b60405160808101818110838211171561450e57fe5b60405282518281111561451f578586fd5b61452b888286016140ce565b82525060208301518281111561453f578586fd5b61454b888286016140ce565b6020830152506040830151604082015260608301516060820152809450505050602083015190509250929050565b60006020828403121561458a578081fd5b8135610aa381614b85565b81835260006001600160fb1b038311156145ad578081fd5b6020830280836020870137939093016020019283525090919050565b6000815180845260208085019450808401835b8381101561463657815180518852838101518489015260408082015190890152606080820151908901526080808201519089015260a090810151906004821061462157fe5b88015260c090960195908201906001016145dc565b509495945050505050565b6001600160a01b0391909116815260200190565b6001600160a01b038581168252841660208201526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b6001600160a01b0396871681529486166020860152928516604085015290841660608401528316608083015290911660a082015260c00190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b600060018060a01b038716825261ffff861660208301526080604083015284516080808401526147786101008401826145c9565b90506020860151607f198483030160a085015261479582826145c9565b915050604086015160c0840152606086015160e084015282810360608401526147bf818587614595565b98975050505050505050565b6001600160a01b038616815261ffff8516602082015264ffffffffff84166040820152608060608201819052600090611def9083018486614595565b6001600160a01b0393841681526020810192909252909116604082015260600190565b6001600160a01b03948516815260208101939093529216604082015261ffff909116606082015260800190565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b90815260200190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b602080825260049082015263135a5b9d60e21b604082015260600190565b6020808252600b908201526a4554482042616c616e636560a81b604082015260600190565b60208082526006908201526552656465656d60d01b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b60208082526010908201526f556e736f7274656420616374696f6e7360801b604082015260600190565b6020808252601a908201527f496e73756666696369656e7420746f6b656e2062616c616e6365000000000000604082015260600190565b6020808252600e908201526d1499595b9d1c985b9d0818d85b1b60921b604082015260600190565b60208082526008908201526709ccace4086c2e6d60c31b604082015260600190565b6020808252601a908201527f496e76616c69642074726164657320666f72206163636f756e74000000000000604082015260600190565b6020808252600a90820152692732b390372a37b5b2b760b11b604082015260600190565b602080825260119082015270092dce6eaccccd2c6d2cadce840c6c2e6d607b1b604082015260600190565b602080825260149082015273125b9cdd59999a58da595b9d0819195c1bdcda5d60621b604082015260600190565b61ffff929092168252602082015260400190565b6000808335601e19843603018112614aed578283fd5b8301803591506001600160401b03821115614b06578283fd5b60209081019250810236038213156140c757600080fd5b6000823560de19833603018112614b32578182fd5b9190910192915050565b60008235605e19833603018112614b32578182fd5b6040518181016001600160401b0381118282101715614b6c57fe5b604052919050565b8015158114614b8257600080fd5b50565b61ffff81168114614b8257600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122032811f7f2dfaed6ae73f5ee82dde37e34e8a29d87704373d06746e0114bf0ee664736f6c63430007060033", "deployedSourceMap": "591:23559:29:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3235:439;;;;;;:::i;:::-;;:::i;:::-;;1035:28:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4487:5415:29;;;;;;;;;;-1:-1:-1;4487:5415:29;;;;;:::i;:::-;;:::i;11159:1420::-;;;;;;:::i;:::-;;:::i;1241:1527::-;;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;23767:381:29:-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;3235:439::-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;;;;;;;;;319:1;960:16;:27;-1:-1:-1;;;;;3408:21:29;::::1;3419:10;3408:21;::::0;:52:::1;;-1:-1:-1::0;3433:10:29::1;3455:4;3433:27;3408:52;3400:77;;;;-1:-1:-1::0;;;3400:77:29::1;;;;;;;:::i;:::-;3487:28;3507:7;3487:19;:28::i;:::-;3525:36;3564:45;3592:7;3601;;3564:27;:45::i;:::-;3525:84;;3619:48;3643:7;3652:14;3619:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;3235:439:29:o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;4487:5415:29:-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;319:1;960:16;:27;-1:-1:-1;;;;;4613:21:29;::::1;4624:10;4613:21;::::0;:52:::1;;-1:-1:-1::0;4638:10:29::1;4660:4;4638:27;4613:52;4605:77;;;;-1:-1:-1::0;;;4605:77:29::1;;;;;;;:::i;:::-;4692:28;4712:7;4692:19;:28::i;:::-;4731:36;4770:33;4795:7;4770:24;:33::i;:::-;4731:72;;4980:36;5019:127;5069:7;5090:14;:31;;;5135:1;5019:36;:127::i;:::-;4980:166;;5156:32;;:::i;:::-;5204:9;5199:4170;5219:18:::0;;::::1;5199:4170;;;5258:25;5286:7;;5294:1;5286:10;;;;;;;;;;;;;;;;;;:::i;:::-;5258:38:::0;-1:-1:-1;5509:5:29;;5505:118:::1;;5562:7;;5574:1;5570;:5;5562:14;;;;;;;;;;;;;;;;;;:::i;:::-;:25;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;5542:45;;:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;:45;;;5534:74;;;;-1:-1:-1::0;;;5534:74:29::1;;;;;;;:::i;:::-;5733:17;5753:13;;::::0;::::1;:6:::0;:13:::1;:::i;:::-;:20:::0;-1:-1:-1;;5795:13:29;5787:22:::1;;;::::0;::::1;;5847:9;5842:169;5866:9;5862:1;:13;5842:169;;;5949:20;5921:13;;::::0;::::1;::::0;::::1;:::i;:::-;5935:1;5921:16;;;;;;;;;;;;;5908:31;;:62;;;5900:71;;;::::0;::::1;;5877:3;;5842:169;;;-1:-1:-1::0;6080:73:29::1;6110:7:::0;6119:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;6080:12:::0;;:73;6138:14;6080:29:::1;:73::i;:::-;6214:183;6246:7:::0;6271:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;6306:13;;::::0;::::1;:6:::0;:13:::1;:::i;:::-;6337:14;6369;6214;:183::i;:::-;6168:26;::::0;::::1;6167:230:::0;;;;-1:-1:-1;6524:1:29::1;-1:-1:-1::0;6494:31:29::1;6486:40;;;::::0;::::1;;6978:19;7000:68;:62;7035:12;:26;;;7000:12;:30;;;:34;;:62;;;;:::i;:::-;:66;:68::i;:::-;6978:90;;7101:1;7086:12;:16;7082:2109;;;7126:24;::::0;;;::::1;::::0;::::1;;:::i;:::-;7122:2055;;;7323:29;7355:51;7388:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;7355:51;;:32;:51::i;:::-;7323:83:::0;-1:-1:-1;7428:28:29::1;7459:50;7491:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;7459:50;;:31;:50::i;:::-;7428:81:::0;-1:-1:-1;7531:31:29::1;7565:71;7599:36;:2:::0;7622:12;7599:22:::1;:36::i;:::-;7565:15:::0;;:33:::1;:71::i;:::-;7531:105;;429:3:60;7663:15:29;:24;;;:61;7659:536;;;8141:31;:24:::0;8170:1:::1;8141:28;:31::i;:::-;8114:58;;7659:536;8387:26;8416:70;:12:::0;8452:7;8461:24;8416:35:::1;:70::i;:::-;8387:99;;8539:12;8516:19;:35;;8508:68;;;;-1:-1:-1::0;;;8508:68:29::1;;;;;;;:::i;:::-;7122:2055;;;;;;;8810:23;8836:45;8863:17;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;8836:45;;:26;:45::i;:::-;8810:71:::0;-1:-1:-1;8903:255:29::1;8959:7:::0;8992:42:::1;8810:71:::0;9021:12;8992:28:::1;:42::i;:::-;8903:12:::0;;:255;9060:5:::1;8903:30;:255::i;:::-;;7122:2055;;9305:53;:12:::0;9327:7;9336:14;9352:5:::1;9305:21;:53::i;:::-;-1:-1:-1::0;;5239:3:29::1;::::0;;::::1;::::0;-1:-1:-1;5199:4170:29::1;::::0;-1:-1:-1;5199:4170:29::1;;;9549:32;:14;:30;:32::i;:::-;9544:221;;9680:74;:14:::0;9723:7;9732:14;9748:5:::1;9680:42;:74::i;:::-;9847:48;9871:7;9880:14;9847:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;;;4487:5415:29:o;11159:1420::-;11464:10;11437:38;;;;:26;:38;;;;;;;;11429:63;;;;-1:-1:-1;;;11429:63:29;;;;;;;:::i;:::-;11502:28;11522:7;11502:19;:28::i;:::-;11541:36;11580:45;11608:7;11617;;11580:27;:45::i;:::-;11541:84;-1:-1:-1;11635:41:29;11541:84;11668:7;11635:32;:41::i;:::-;11955:80;;-1:-1:-1;;;11955:80:29;;11972:10;;11955:45;;:80;;11972:10;;12013:7;;12022:12;;;;11955:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;12050:22:29;;;;-1:-1:-1;;;;;;12050:30:29;;12046:527;;12502:60;;-1:-1:-1;;;12502:60:29;;:22;;:51;;:60;;12554:7;;12502:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12046:527;11159:1420;;;;;;:::o;1241:1527::-;319:1:28;838:16;;:28;;830:55;;;;-1:-1:-1;;;830:55:28;;;;;;;:::i;:::-;319:1;960:16;:27;-1:-1:-1;;;;;1396:21:29;::::1;1407:10;1396:21;::::0;:52:::1;;-1:-1:-1::0;1421:10:29::1;1443:4;1421:27;1396:52;1388:77;;;;-1:-1:-1::0;;;1388:77:29::1;;;;;;;:::i;:::-;1475:28;1495:7;1475:19;:28::i;:::-;1514:36;1553:33;1578:7;1553:24;:33::i;:::-;1514:72;;1596:32;;:::i;:::-;1644:9;1639:1064;1659:18:::0;;::::1;1639:1064;;;1698:29;1730:7;;1738:1;1730:10;;;;;;;;;;;;1698:42;;1957:1;1953;:5;1949:118;;;2006:7;;2018:1;2014;:5;2006:14;;;;;;;;;;;;:25;;;;;;;;;;:::i;:::-;1986:45;;:17;::::0;;;::::1;::::0;::::1;;:::i;:::-;:45;;;1978:74;;;;-1:-1:-1::0;;;1978:74:29::1;;;;;;;:::i;:::-;2135:73;2165:7:::0;2174:17:::1;::::0;;;::::1;::::0;::::1;;:::i;:::-;2135:12:::0;;:73;2193:14;2135:29:::1;:73::i;:::-;2223:169;2262:7:::0;2287:12;2317:17:::1;;::::0;::::1;:6:::0;:17:::1;:::i;:::-;2352:6;:26;;;2223:21;:169::i;:::-;2407:285;2460:7:::0;2485:14;2517:12;2547:38:::1;::::0;::::1;;2603:32;::::0;;;::::1;::::0;::::1;;:::i;:::-;2653:25;::::0;;;::::1;::::0;::::1;;:::i;:::-;2407:35;:285::i;:::-;-1:-1:-1::0;1679:3:29::1;;1639:1064;;;;2713:48;2737:7;2746:14;2713:23;:48::i;:::-;-1:-1:-1::0;;276:1:28;1142:16;:31;-1:-1:-1;;;1241:1527:29:o;920:26:63:-;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;23767:381:29:-;23897:31;23943:26;23984:29;24028:22;24064:25;24104:27;23767:381;;;;;;:::o;1296:466:28:-;-1:-1:-1;;;;;1374:28:28;;1366:37;;;;;;-1:-1:-1;;;;;1454:24:28;;1473:4;1454:24;;1446:33;;;;;;1503:16;1684:39;1715:7;1684:30;:39::i;:::-;1489:234;;;;;;;;1741:8;1753:1;1741:13;1733:22;;;;;;1296:466;;:::o;12585:2928:29:-;12723:21;;:::i;:::-;12756:36;12795:33;12820:7;12795:24;:33::i;:::-;12756:72;;12838:32;;:::i;:::-;13047:36;13086:127;13136:7;13157:14;:31;;;13202:1;13086:36;:127::i;:::-;13047:166;;13229:9;13224:1761;13244:18;;;13224:1761;;;13283:39;13325:7;;13333:1;13325:10;;;;;;;;;;;;;;;;;;:::i;:::-;13283:52;-1:-1:-1;13548:5:29;;13544:118;;13601:7;;13613:1;13609;:5;13601:14;;;;;;;;;;;;;;;;;;:::i;:::-;:25;;;;;;;;;:::i;:::-;13581:45;;:17;;;;;;;;:::i;:::-;:45;;;13573:74;;;;-1:-1:-1;;;13573:74:29;;;;;;;:::i;:::-;13730:73;13760:7;13769:17;;;;;;;;:::i;:::-;13730:12;;:73;13788:14;13730:29;:73::i;:::-;13905:169;13944:7;13969:12;13999:17;;;;:6;:17;:::i;13905:169::-;14116:1;14093:13;;;;:6;:13;:::i;:::-;:20;;:24;14089:586;;;14137:14;14197:207;14233:7;14262:17;;;;;;;;:::i;:::-;14301:13;;;;:6;:13;:::i;:::-;14336:14;14372;14197;:207::i;:::-;14169:235;-1:-1:-1;14169:235:29;-1:-1:-1;14522:1:29;14512:11;;14508:66;;;14525:49;14546:12;14560:13;:7;:11;:13::i;:::-;14525:20;:49::i;:::-;14621:26;;;;:39;;14652:7;14621:30;:39::i;:::-;14592:26;;;:68;-1:-1:-1;14089:586:29;14689:285;14742:7;14767:14;14799:12;14829:38;;;;14885:32;;;;;;;;:::i;14689:285::-;-1:-1:-1;13264:3:29;;13224:1761;;;;15165:32;:14;:30;:32::i;:::-;15160:221;;15296:74;:14;15339:7;15348:14;15364:5;15296:42;:74::i;:::-;-1:-1:-1;15492:14:29;;-1:-1:-1;;12585:2928:29;;;;;;:::o;20741:450::-;21013:41;:14;21046:7;21013:32;:41::i;:::-;21068:22;;;;-1:-1:-1;;;;;;21068:30:29;;21064:121;;21114:60;;-1:-1:-1;;;21114:60:29;;:22;;:51;;:60;;21166:7;;21114:60;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23208:471;23292:21;;:::i;:::-;23329:36;23368:48;23408:7;23368:39;:48::i;:::-;23329:87;;23430:33;:14;:31;:33::i;:::-;23426:247;;;23551:59;;-1:-1:-1;;;23551:59:29;;:20;;:34;;:59;;23586:7;;23595:14;;23551:59;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23544:66;;;;;23426:247;23648:14;-1:-1:-1;23208:471:29;;;;:::o;15438:477:84:-;15584:21;;:::i;:::-;15617:27;;:::i;:::-;15658:21;;;15654:39;;15688:5;-1:-1:-1;15681:12:84;;15654:39;15725:45;15744:7;15753:16;15725:18;:45::i;:::-;15704:66;;15780:42;;;:23;;;:42;15871:13;-1:-1:-1;;;;;15850:35:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;15832:15:84;;;:53;:15;15438:477;-1:-1:-1;;;;15438:477:84:o;21924:1079:67:-;22132:10;22128:14;;:1;:14;:56;;;;-1:-1:-1;5408:6:60;22146:38:67;;;;;22128:56;22120:65;;;;;;22223:36;;;;;;22274:45;;:14;;:33;:45::i;:::-;22270:534;;;22545:38;22563:7;22572:10;22545:38;;:17;:38::i;:::-;22495:33;;;22335:248;22451:26;;;22335:248;22401:32;;;22335:248;22353:30;;;22335:248;22270:534;;;22647:1;22614:30;;;:34;;;22662:32;;;:36;;;22712:26;;;:30;;;22756:33;;;:37;22270:534;-1:-1:-1;;22843:1:67;22814:26;;;:30;;;22854:46;;;:50;;;22914:30;;;:34;;;22958;;;;:38;;;;-1:-1:-1;21924:1079:67:o;21197:1311:29:-;21423:14;21439:36;;:::i;:::-;21491:32;:14;:30;:32::i;:::-;21487:1015;;;21599:10;21564:45;;:14;:31;;;:45;;;21539:130;;;;-1:-1:-1;;;21539:130:29;;;;;;;:::i;:::-;21821:31;;;;21870:29;;21740:197;;-1:-1:-1;;;21740:197:29;;21683:17;;21740:13;;:38;;:197;;21796:7;;21821:31;;21917:6;;;;21740:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21714:223;;-1:-1:-1;21714:223:29;-1:-1:-1;21951:125:29;;;;22039:22;;;;;-1:-1:-1;;;22012:49:29;-1:-1:-1;;;;;;21987:74:29;;;21951:125;21487:1015;;;;22331:160;;-1:-1:-1;;;22331:160:29;;:13;;:37;;:160;;22386:7;;22411:10;;22439:14;;22471:6;;;;22331:160;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22331:160:29;;;;;;;;;;;;:::i;:::-;22303:188;-1:-1:-1;22303:188:29;-1:-1:-1;21487:1015:29;21197:1311;;;;;;;;;:::o;1427:120:94:-;1516:5;;;1511:16;;;;1483:8;1532:6;;;1511:28;1503:37;;;;;;1427:120;;;;:::o;1553:90::-;1599:8;1626:10;-1:-1:-1;;1634:1:94;1626:3;:10::i;5904:516:76:-;5990:26;;:::i;:::-;6033:11;6046:27;6075:29;6120:33;6142:10;6120:21;:33::i;:::-;6183:230;;;;;;;;-1:-1:-1;;;;;6183:230:76;;;;;;;;;;;;6370:27;;:2;:27;6183:230;;;;;;;;-1:-1:-1;;;;5904:516:76;;;:::o;1133:136:69:-;1204:12;;:::i;:::-;1235:27;1245:10;1257:4;1235:9;:27::i;882:468:76:-;1010:6;1155:24;1182:126;1286:2;:21;;;1182:86;658:4;1182:38;1207:12;1182:2;:7;;;:24;;:38;;;;:::i;:::-;:55;;:86::i;:126::-;1155:153;882:468;-1:-1:-1;;;;882:468:76:o;13720:789:69:-;13805:6;429:3:60;13827:5:69;:14;;;:52;13823:71;;;-1:-1:-1;13888:6:69;13881:13;;13823:71;14436:66;429:3:60;14436:26:69;14447:5;:14;;;14436:6;:10;;:26;;;;:::i;4547:1694:67:-;4711:6;4733:29;4729:43;;-1:-1:-1;4771:1:67;4764:8;;4729:43;4817:1;4790:24;:28;4782:37;;;;;;4872:28;4903:56;4935:12;:23;;;4903:56;;:31;:56::i;:::-;4872:87;-1:-1:-1;5098:15:67;5069;:25;;;:44;;;;;;;;;5065:326;;;5213:9;5184:24;5176:46;5168:70;;;;-1:-1:-1;;;5168:70:67;;;;;;;:::i;:::-;5065:326;;;5330:23;;5296:84;;:15;;5321:7;;5296:84;;5355:24;5296;:84::i;:::-;5269:111;;5065:326;5401:23;5427:51;5454:12;:23;;;5427:51;;:26;:51::i;:::-;5401:77;;5488:43;5546:85;5562:12;:23;;;5587:43;5605:24;5587:17;:43::i;:::-;5546:10;;:85;:15;:85::i;:::-;5488:143;-1:-1:-1;5932:34:67;5981:66;:10;5488:143;5981:28;:66::i;:::-;6130:26;;;;5932:115;;-1:-1:-1;6130:59:67;;5932:115;6130:30;:59::i;:::-;6101:26;;;:88;6207:27;-1:-1:-1;;;;4547:1694:67;;;;;:::o;995:132:69:-;1061:12;;:::i;:::-;1092:28;1102:10;1114:5;1092:9;:28::i;1860:2448:67:-;2042:26;2084:24;2080:38;;-1:-1:-1;2117:1:67;2110:8;;2080:38;2158:1;2136:19;:23;2128:32;;;;;;2214:18;2235:51;2262:12;:23;;;2235:51;;:26;:51::i;:::-;2214:72;-1:-1:-1;2319:16:67;2300:5;:15;;;:35;;;;;;;;;2296:289;;;2500:23;;2440:134;;;;2541:19;2440:42;:134::i;:::-;2418:156;;2296:289;2683:5;:20;;;:37;;;;2707:13;2683:37;2679:1623;;;3080:23;;3013:40;;3056:69;;:5;;3071:7;;3056:69;;3105:19;3056:14;:69::i;:::-;3013:112;-1:-1:-1;3361:58:67;:5;3013:112;3361:23;:58::i;:::-;3502:26;;;;3339:80;;-1:-1:-1;3502:51:67;;3339:80;3502:30;:51::i;:::-;3473:26;;;:80;-1:-1:-1;3568:26:67;;-1:-1:-1;3568:26:67;2679:1623;3647:44;:5;3671:19;3647:23;:44::i;:::-;4065:63;;;;3625:66;;-1:-1:-1;4065:105:67;;3625:66;4065:84;:105::i;:::-;4016:46;;;:154;-1:-1:-1;1860:2448:67;;;;;;:::o;6510:3605::-;6698:29;6739:15;6801:1;6768:12;:30;;;:34;6764:289;;;6997:1;6843:150;6962:12;:30;;;6843:93;6901:12;:34;;;6843:12;:32;;;:57;;:93;;;;:::i;:::-;:118;;:150::i;:::-;:155;;6818:224;;;;-1:-1:-1;;;6818:224:67;;;;;;;:::i;:::-;7116:1;7067:12;:46;;;:50;7063:309;;;7318:1;7158:156;7267:12;:46;;;7158:83;7214:12;:26;;;7158:12;:30;;;:55;;:83;;;;:::i;:156::-;:161;;7133:228;;;;-1:-1:-1;;;7133:228:67;;;;;;;:::i;:::-;7693:61;7712:12;7726:7;7735:18;7693;:61::i;:::-;7634:46;;;7584:170;;;7842:26;;;;7584:170;;-1:-1:-1;7817:22:67;;7842:78;;:30;:78::i;:::-;7817:103;-1:-1:-1;7935:20:67;;7931:324;;8004:30;;;;:51;;8039:15;8004:34;:51::i;:::-;7971:30;;;:84;8173:23;;8106:138;;8082:4;;-1:-1:-1;8106:138:67;;;;;-1:-1:-1;;;;;8106:138:67;;;;;;;8215:15;;8106:138;:::i;:::-;;;;;;;;7931:324;8269:30;;;;:35;;;:78;;-1:-1:-1;8308:34:67;;;;:39;;8269:78;8265:920;;;8447:25;8475:142;8582:12;:34;;;8475:85;8529:12;:30;;;8475:12;:32;;;:53;;:85;;;;:::i;:142::-;8447:170;;8725:78;8752:12;8766:7;8775:27;:18;:25;:27::i;:::-;8725:26;:78::i;:::-;-1:-1:-1;8818:32:67;;;:53;;;8890:34;;;;:39;8886:257;;9030:12;:23;;;8954:174;;8994:7;-1:-1:-1;;;;;8954:174:67;;9076:12;:34;;;8954:174;;;;;;:::i;:::-;;;;;;;;8886:257;9170:4;9157:17;;8265:920;;9199:10;9195:332;;;9225:291;9261:7;9286:12;:23;;;9225:291;;9327:12;:30;;;9375:12;:32;;;9425:12;:26;;;9469:12;:33;;;9225:18;:291::i;:::-;9583:23;;9693:30;;;;9537:284;;;;;9693:35;;;:76;;-1:-1:-1;9732:32:67;;;;:37;;9693:76;9537:14;;:284;-1:-1:-1;;;9537:32:67;:284::i;:::-;9869:1;9836:12;:30;;;:34;9832:277;;;10050:22;;;;;-1:-1:-1;;;10050:48:67;-1:-1:-1;;;;;;10025:73:67;;;9832:277;6510:3605;;;;;;;;:::o;1117:152:66:-;1226:31;;;:36;;;;;1117:152::o;9863:2352::-;10240:12;;;;10344:35;:14;10371:7;10344:26;:35::i;:::-;10389:46;;;;;10239:140;;-1:-1:-1;10239:140:66;;-1:-1:-1;10239:140:66;-1:-1:-1;10239:140:66;-1:-1:-1;10453:32:66;10389:14;10453:16;:32::i;:::-;:41;10445:50;;;;;;10541;;;:31;;;:50;10772:13;10767:141;;2023:1:60;10809:60:66;;;;;10801:69;;;;;;11059:7;11055:263;;;11107:22;;;;;-1:-1:-1;;;11107:49:66;-1:-1:-1;;;;;;11082:74:66;;;11055:263;;;11257:22;;;;;-1:-1:-1;;;11232:75:66;;;11055:263;11460:59;11487:14;:31;;;11460:26;:59::i;:::-;-1:-1:-1;;;;;;11426:93:66;:31;;;:93;11530:20;11560:649;11567:24;;11560:649;;11902:35;;;;11955:26;;;11951:147;;12001:82;12019:14;12035:10;12047:4;-1:-1:-1;;;12001:17:66;:82::i;:::-;12196:2;12173:25;;;;;12126:10;-1:-1:-1;11560:649:66;;;9863:2352;;;;;;;;;:::o;837:274::-;938:48;989:30;:28;:30::i;:::-;-1:-1:-1;;;;;1029:14:66;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;;;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;1029:31:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:29;938:81;;-1:-1:-1;1029:14:66;;1075:29;;1029:14;1075:29;837:274;;;:::o;15550:1696:29:-;15749:26;15778:38;15795:20;15778:16;:38::i;:::-;15749:67;;15826:26;15893:1;15870:19;:24;;15862:33;;;;;;15925:22;15910:11;:37;;;;;;;;;15906:1176;;;15963:7;;;;15906:1176;16018:30;16003:11;:45;;;;;;;;;:119;;;-1:-1:-1;16079:43:29;16064:11;:58;;;;;;;;;16003:119;15986:1096;;;16355:150;:12;16403:7;16428:19;16465:5;16355:30;:150::i;:::-;16333:172;;15986:1096;;;16554:35;16539:11;:50;;;;;;;;;:129;;;-1:-1:-1;16620:48:29;16605:11;:63;;;;;;;;;16539:129;16522:560;;;16794:65;:12;16830:7;16839:19;16794:35;:65::i;16522:560::-;16895:37;16880:11;:52;;;;;;;;;16876:206;;;-1:-1:-1;17052:19:29;16876:206;17092:147;17126:12;17152:11;17177:19;17210;17092:20;:147::i;15550:1696::-;;;;;:::o;19359:1376::-;19663:21;19687:49;19704:31;19687:16;:49::i;:::-;19663:73;;19772:1;19754:14;:19;;19746:28;;;;;;19934:25;19930:543;;;20178:148;20279:12;:46;;;20178:79;20230:12;:26;;;20178:12;:30;;;:51;;:79;;;;:::i;:148::-;20161:165;;20441:1;20424:14;:18;20420:42;;;-1:-1:-1;20461:1:29;20420:42;20559:59;;;;:92;;20636:14;20559:76;:92::i;:::-;20510:46;;;:141;20662:66;20510:12;20684:7;20693:14;20709:18;20662:21;:66::i;:::-;;19359:1376;;;;;;;:::o;728:737:81:-;836:17;867:35;916:27;957:22;993:17;1035:47;1085:36;:34;:36::i;:::-;-1:-1:-1;;;;;1163:19:81;;;1131:29;1163:19;;;;;;;;-1:-1:-1;;1163:19:81;;;;1206:18;;;;;1264:35;;;;;;;-1:-1:-1;;;;1331:27:81;;;;-1:-1:-1;1387:24:81;-1:-1:-1;;;1387:24:81;;;;-1:-1:-1;;;;1434:24:81;;;;;;-1:-1:-1;728:737:81:o;22646:556:29:-;22956:1;22929:23;:28;;:223;;;;;23129:23;22977:148;23078:12;:46;;;22977:79;23029:12;:26;;;22977:12;:30;;;:51;;:79;;;;:::i;:148::-;:175;;22929:223;22908:287;;;;-1:-1:-1;;;22908:287:29;;;;;;;:::i;552:219:66:-;619:21;;:::i;:::-;652:48;703:30;:28;:30::i;:::-;-1:-1:-1;;;;;750:14:66;;;;;;;;;;;;;;;;;743:21;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;-1:-1:-1;;;;;;743:21:66;;;;;-1:-1:-1;743:21:66;;552:219;-1:-1:-1;552:219:66:o;3020:732::-;3107:4;3143:15;3173:31;3189:14;3173:15;:31::i;:::-;3169:577;;;3389:31;3410:9;3389:20;:31::i;:::-;3357:29;;:63;;;;-1:-1:-1;3350:70:66;;-1:-1:-1;3350:70:66;3169:577;3660:29;;3656:33;;;;;;:79;;-1:-1:-1;3693:29:66;;:42;;-1:-1:-1;3693:42:66;;-1:-1:-1;3649:86:66;;14791:385:84;14907:23;14946:30;14979:42;14995:7;15004:16;14979:15;:42::i;:::-;14946:75;;15099:1;15082:6;:13;:18;15078:37;;15109:6;-1:-1:-1;15102:13:84;;15078:37;15126:20;15139:6;15126:12;:20::i;3996:817:66:-;4129:4;4157:15;;;;;:57;;-1:-1:-1;5408:6:60;4176:38:66;;;4157:57;4149:66;;;;;;4274:31;;;;4320;;;;:45;;;;4316:62;;;4374:4;4367:11;;;;;4316:62;-1:-1:-1;;;;;;4396:18:66;;;4389:395;;4472:22;4444:51;;;5408:6:60;4444:51:66;4513:17;;;4509:221;;;-1:-1:-1;;;;4634:49:66;;;:81;;-1:-1:-1;4627:88:66;;4509:221;-1:-1:-1;4771:2:66;4757:16;-1:-1:-1;;;;;;4757:16:66;4389:395;;;-1:-1:-1;4801:5:66;;3996:817;-1:-1:-1;;;3996:817:66:o;20724:1018:67:-;20848:18;20880:20;20914:21;20949:28;21002:68;21073:30;:28;:30::i;:::-;-1:-1:-1;;;;;21153:14:67;;21113:37;21153:14;;;;;;;;;;;:26;;;;;;;;21206:28;;;;;;-1:-1:-1;;;;21260:28:67;;;;;-1:-1:-1;21153:14:67;;-1:-1:-1;21302:17:67;;21298:388;;21550:35;;21517:69;;-1:-1:-1;;;21550:35:67;;;;21517:32;:69::i;:::-;21494:92;;21298:388;;;21640:35;;-1:-1:-1;;;21640:35:67;;;;;-1:-1:-1;21298:388:67;21709:26;-1:-1:-1;;;21709:26:67;;;;;;21695:40;;;20724:1018;;-1:-1:-1;20724:1018:67;;-1:-1:-1;20724:1018:67;-1:-1:-1;;20724:1018:67:o;398:190:94:-;478:5;;;-1:-1:-1;;497:7:94;;493:88;;;515:6;;;:20;;;534:1;529;525;:5;;;;;;:10;515:20;506:30;;;;;;493:88;;;560:6;;;:20;;;579:1;574;570;:5;;;;;;:10;560:20;551:30;;;;;4424:809:76;4521:6;4541:16;4571:5;4602:27;4631:29;4664:32;4685:10;4664:20;:32::i;:::-;4601:95;;-1:-1:-1;4601:95:76;-1:-1:-1;4707:11:76;-1:-1:-1;;;;;4732:33:76;;4728:438;;-1:-1:-1;5019:1:76;;-1:-1:-1;658:4:76;4728:438;;;5058:10;-1:-1:-1;;;;;5058:34:76;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5051:43;;5123:1;5116:4;:8;5108:17;;;;;;5184:4;5190:10;;-1:-1:-1;5190:10:76;-1:-1:-1;4424:809:76;-1:-1:-1;;4424:809:76:o;1438:691:69:-;1516:12;;:::i;:::-;1540:63;1606:28;:26;:28::i;:::-;1644:33;1680:17;;;;;;;;;;;:29;;;;;;;;;;;1739:383;;;;;;;1777:25;;-1:-1:-1;;;;;1777:25:69;;1739:383;;1836:27;-1:-1:-1;;;1836:27:69;;;;1739:383;;;;;;;;;-1:-1:-1;;;1956:26:69;;;;1952:2;:30;1739:383;;;;;;;1540:94;;-1:-1:-1;1680:29:69;1739:383;;;;;-1:-1:-1;;;2012:22:69;;;;1739:383;;;;;;;;;;2074:33;;-1:-1:-1;;;2074:33:69;;;;1739:383;;;;;;;;;1438:691;-1:-1:-1;;;;1438:691:69:o;1022:239:94:-;1078:8;1108:1;-1:-1:-1;;1108:7:94;:27;;;;;-1:-1:-1;;;1119:1:94;:16;1108:27;1106:30;1098:39;;;;;;1253:1;1249;:5;;;;;;;1022:239;-1:-1:-1;;;1022:239:94:o;9098:1841:69:-;9524:19;9577:16;9558:5;:15;;;:35;;;;;;;;;9554:484;;;9609:28;9640:30;9659:10;9640:18;:30::i;:::-;9609:61;;9886:141;9948:15;:28;;;9994:19;9886:44;:141::i;:::-;9864:163;;9554:484;;10074:1;10052:19;:23;10048:885;;;10147:17;10167:54;10176:5;10183:7;10200:19;10167:8;:54::i;:::-;10147:74;;10386:5;:20;;;10382:61;;;10433:10;10408:35;;10382:61;10048:885;;;;10483:15;10464:5;:15;;;:34;;;;;;;;;10460:473;;;10592:80;10628:7;10645:25;:19;:23;:25::i;:::-;10592:35;:80::i;:::-;10460:473;;;10749:18;;10703:219;;10785:7;10882:25;:19;:23;:25::i;:::-;10703:28;:219::i;2397:117:94:-;2446:7;2478:1;2473;:6;;2465:15;;;;;;-1:-1:-1;2505:1:94;2397:117::o;5788:1549:69:-;5898:6;;6273:16;6249:10;:20;;;:40;;;;;;;;;:142;;-1:-1:-1;;;6249:142:69;;;-1:-1:-1;;;6249:142:69;6222:169;;6410:23;6436:95;6473:10;:23;;;6506:4;6513:17;6436:36;:95::i;:::-;6410:121;-1:-1:-1;6570:16:69;6546:10;:20;;;:40;;;;;;;;;6542:517;;;6602:28;6633:30;6652:10;6633:30;;:18;:30::i;:::-;6602:61;;6677:59;6694:15;6711:24;6677:16;:59::i;:::-;6542:517;;;;6781:16;6757:10;:20;;;:40;;;;;;;;;6753:306;;;6813:58;6834:10;6846:24;6813:20;:58::i;6753:306::-;6916:14;6892:10;:20;;;:38;;;;;;;;;6888:171;;;6946:36;6971:10;6946:24;:36::i;:::-;7069:21;7093:95;7130:10;:23;;;7163:4;7170:17;7093:36;:95::i;:::-;7069:119;-1:-1:-1;7278:52:69;7295:34;7069:119;7313:15;7295:17;:34::i;:::-;7278:16;:52::i;:::-;7271:59;5788:1549;-1:-1:-1;;;;;;;5788:1549:69:o;12920:794::-;13005:6;429:3:60;13557:5:69;:14;;;:52;13553:71;;;-1:-1:-1;13618:6:69;13611:13;;13553:71;13692:14;;;;13641:66;;:46;:6;429:3:60;13641:10:69;:46::i;3253:821:70:-;3364:6;3386:24;3382:38;;-1:-1:-1;3419:1:70;3412:8;;3382:38;3460:1;3438:19;:23;3430:32;;;;;;3473:28;3504:43;3536:10;3504:31;:43::i;:::-;3473:74;;3609:12;3624:57;3652:15;:28;;;3624:27;:57::i;:::-;3609:72;-1:-1:-1;3800:1:70;3792:9;;457:4;-1:-1:-1;;;;;3916:28:70;;;3915:36;3892:19;:59;;3884:68;;;;;;4062:5;4049:9;457:4;4021:19;:25;:37;4020:47;;;;;;;3253:821;-1:-1:-1;;;;;;3253:821:70:o;10254:2383:67:-;10405:35;10442:34;10488:23;10514:51;10541:12;:23;;;10514:51;;:26;:51::i;:::-;10488:77;;10785:34;10834:76;10863:12;:46;;;10834:10;:28;;:76;;;;:::i;:::-;10785:125;-1:-1:-1;10925:32:67;10921:1710;;10981:1;10984;10973:13;;;;;;;;10921:1710;11007:18;:53;;;;;11059:1;11029:27;:31;11007:53;11003:1628;;;11694:23;;11659:203;;;;11735:7;11814:33;:27;:31;:33::i;:::-;11659:10;;:203;;:17;:203::i;:::-;11628:234;-1:-1:-1;12068:57:67;:10;12097:27;12068:28;:57::i;:::-;12038:87;;11003:1628;;;12412:23;;12383:82;;:10;;12403:7;;12383:82;;12437:27;12383:19;:82::i;:::-;12352:113;-1:-1:-1;12562:58:67;:10;12352:113;12562:28;:58::i;:::-;12532:88;;11003:1628;10254:2383;;;;;;;;;:::o;4318:1852:68:-;4603:23;;4470:25;;4527:15;;4470:25;;4575:52;;;;:27;:52::i;:::-;4552:75;;4795:32;4830:138;4875:12;4901;:34;;;4949:9;4830:31;:138::i;:::-;4795:173;;4999:158;5039:12;5065;5091:24;5129:18;4999:26;:158::i;:::-;4979:178;;5234:18;5255:48;5290:12;5255:34;:48::i;:::-;5234:69;-1:-1:-1;;;;;;5317:31:68;;;5313:755;;5364:8;-1:-1:-1;;;;;5364:21:68;;5403:7;5621:41;:12;:32;;;:39;:41::i;:::-;5680:18;5974:12;:34;;;6026:17;5364:693;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5313:755;6082:21;;6078:85;;6105:58;6136:7;6145:17;6105:30;:58::i;:::-;4318:1852;;;;;;;;;:::o;19219:1409:67:-;19451:68;19522:30;:28;:30::i;:::-;-1:-1:-1;;;;;19602:14:67;;19562:37;19602:14;;;;;;;;;;;:26;;;;;;;;19451:101;;-1:-1:-1;;;19647:30:67;;;;;:64;;-1:-1:-1;19696:15:67;19681:30;;;19647:64;19639:73;;;;;;19868:1;19851:13;:18;;:55;;;;-1:-1:-1;19890:16:67;19873:33;;;19851:55;19843:64;;;;;;20044:18;;20036:27;;;;;;20302:16;20278:40;;;20270:49;;;;;;20374:52;;20555:66;;;;-1:-1:-1;;;20555:66:67;-1:-1:-1;;;;20436:28:67;20498:47;;;;;;-1:-1:-1;;;20498:47:67;-1:-1:-1;;;;;20436:52:67;;;;-1:-1:-1;;;20436:52:67;-1:-1:-1;;;;20374:52:67;;;;-1:-1:-1;;20374:52:67;;;;;;;20436;;;;;;;;20498:47;;;;;;;;20555:66;;;;;;;;;;;-1:-1:-1;;;19219:1409:67:o;5247:3666:66:-;5435:10;5431:1;:14;:56;;;;-1:-1:-1;5408:6:60;5449:38:66;;;5431:56;5423:65;;;;;;5707:8;:57;;;;;5754:10;5719:14;:31;;;:45;;;5707:57;5703:70;;;5766:7;;5703:70;5824:31;;;;5783:14;;;6684:1857;-1:-1:-1;;;;;;6691:14:66;;;6684:1857;;6767:22;6743:47;;;5408:6:60;6743:47:66;6877:17;;;:29;;;;;6898:8;6877:29;6873:272;;;-1:-1:-1;7019:31:66;;;;;-1:-1:-1;;;;;;7074:14:66;;7102:2;7093:11;;;7074:31;;;;7019:87;;;;-1:-1:-1;;;;;;6965:141:66;;;-1:-1:-1;7124:7:66;;-1:-1:-1;7124:7:66;6873:272;7239:10;7232:3;:17;:30;;;;;7254:8;7253:9;7232:30;7228:375;;;-1:-1:-1;;;;;;7369:14:66;;7368:15;7359:24;;;;;-1:-1:-1;;;7405:50:66;;7401:77;;7476:2;7466:6;-1:-1:-1;;;;;7466:12:66;;;;7457:21;;7401:77;-1:-1:-1;;;;;;;7540:23:66;;;7560:2;7551:11;;;7540:23;7530:34;;;;7496:68;:31;;;:68;7582:7;;7228:375;7695:10;7689:3;:16;:28;;;;;7709:8;7689:28;7685:575;;;8046:3;8011:31;;;;-1:-1:-1;;;;;;7764:26:66;;;;:34;;7756:43;;7813:2;7804:11;;7756:60;7746:71;;;;;8011:38;;;8010:48;8002:57;;;;;;-1:-1:-1;;;;;;;8191:29:66;;;8212:1;8203:10;;;;8217:2;8202:17;8191:29;8181:40;;;;8147:74;:31;;;:74;8239:7;;7685:575;8364:10;8358:3;:16;:29;;;;;8379:8;8378:9;8358:29;8354:42;;;8389:7;;;;;;8354:42;-1:-1:-1;;;;;;;8429:23:66;;8466:2;8457:11;;;8429:40;;;;8419:51;;;;;8493:12;;;;-1:-1:-1;;;;;;8493:12:66;;8529:1;8519:11;6684:1857;;;8616:8;8611:22;;8626:7;;;;;8611:22;8733:1;8724:6;:10;8716:19;;;;;;-1:-1:-1;;;;;;8853:26:66;;;;:34;;8845:43;8902:2;8893:11;;;8845:60;8823:83;;;;-1:-1:-1;;;;;;8777:129:66;:31;;;:129;-1:-1:-1;5247:3666:66;;;;:::o;6460:4123:84:-;6583:4;;;;;;;;7195:574;7219:27;;:34;7215:38;;7195:574;;;7274:27;7304:14;:27;;;7332:1;7304:30;;;;;;;;;;;;;;7274:60;;7517:32;7495:54;;;;;;;;:5;:18;;;:54;;;;;;;;;;7487:63;;;;;;7647:24;7625:5;:18;;;:46;;;;;;;;;;:69;;;;-1:-1:-1;7675:14:84;;;;:19;7625:69;7621:138;;;7714:30;7726:14;7742:1;7714:11;:30::i;:::-;-1:-1:-1;7255:3:84;;7195:574;;;;7868:9;7863:1217;7887:27;;:34;7883:38;;7863:1217;;;7942:27;7972:14;:27;;;8000:1;7972:30;;;;;;;;;;;;;;7942:60;;8043:24;8021:46;;;;;;;;:5;:18;;;:46;;;;;;;;;8017:1053;;;8154:17;;;;8132:19;8220:25;;8198:65;;;8327:24;8305:5;:18;;;:46;;;;;;;;;8301:361;;;8461:17;;;;;8611:32;8461:5;:17;8611:11;:32::i;:::-;8301:361;;;8875:180;8920:5;8947:7;8976:25;9023:14;8875:23;:180::i;:::-;8820:235;;-1:-1:-1;8820:235:84;-1:-1:-1;8820:235:84;-1:-1:-1;8017:1053:84;-1:-1:-1;7923:3:84;;7863:1217;;;-1:-1:-1;9145:32:84;;;;9116:26;9280:37;:35;:37::i;:::-;-1:-1:-1;;;;;9394:14:84;;9327:64;9394:14;;;;;;;;;;9187:130;;-1:-1:-1;9418:735:84;9442:14;:24;;;:31;9438:1;:35;9418:735;;;9494:27;9524:14;:24;;;9549:1;9524:27;;;;;;;;;;;;;;9494:57;;9569:5;:14;;;9587:1;9569:19;9565:33;;;9590:8;;;9565:33;9659:24;9637:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;9725:32:84;9703:5;:18;;;:54;;;;;;;;;;9637:120;9612:159;;;;;;9878:160;9919:5;9942:7;9967:25;10010:14;9878:23;:160::i;:::-;9823:215;;-1:-1:-1;9823:215:84;-1:-1:-1;9823:215:84;-1:-1:-1;10053:52:84;10065:5;10072:12;10085:18;10072:32;;;;;;;;10053:11;:52::i;:::-;10141:1;10119:23;;;;9418:735;;9475:3;;9418:735;;;;10333:2;10311:18;:24;;:62;;;;-1:-1:-1;10357:16:84;10339:34;;;10311:62;10303:71;;;;;;-1:-1:-1;10445:7:84;;10466:25;;-1:-1:-1;10466:25:84;-1:-1:-1;10511:18:84;-1:-1:-1;6460:4123:84;-1:-1:-1;;;;6460:4123:84:o;8919:751:66:-;9004:7;;9150:24;9131:43;;9004:7;9302:338;-1:-1:-1;;;;;;9309:14:66;;;9302:338;;-1:-1:-1;;;9343:45:66;;;:77;9339:256;;;-1:-1:-1;;;;;;9516:23:66;;:33;;9506:44;;;;;9578:2;9568:12;9339:256;9627:2;9617:6;-1:-1:-1;;;;;9617:12:66;;;;9608:21;;9302:338;;;-1:-1:-1;9657:6:66;;8919:751;-1:-1:-1;;;8919:751:66:o;1879:229:62:-;1940:48;2005:12;2020:41;2036:24;2020:15;:41::i;2520:163:94:-;2569:6;-1:-1:-1;;;;;2596:1:94;:30;;2587:40;;;;;17289:2001:29;17601:43;17586:11;:58;;;;;;;;;:137;;;-1:-1:-1;17675:48:29;17660:11;:63;;;;;;;;;17586:137;:205;;;-1:-1:-1;17754:37:29;17739:11;:52;;;;;;;;;17586:205;17569:1715;;;17908:55;17929:12;17943:19;17908:20;:55::i;:::-;18006:26;;;;:51;;18037:19;18006:30;:51::i;:::-;17977:26;;;:80;18235:23;;18190:119;;-1:-1:-1;;;18190:119:29;;18168:19;;18190:16;;:27;;:119;;18276:19;;18190:119;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18361:34;;;;18168:141;;-1:-1:-1;18361:82:29;;18168:141;18361:38;:82::i;:::-;18324:34;;;:119;-1:-1:-1;17569:1715:29;;;18479:30;18464:11;:45;;;;;;;;;18460:824;;;18803:19;18585:214;18764:12;:34;;;18585:110;18664:12;:30;;;18585:12;:53;;;:78;;:110;;;;:::i;:214::-;:237;;18525:357;;;;-1:-1:-1;;;18525:357:29;;;;;;;:::i;:::-;18934:34;;;;:89;;18990:19;18934:38;:89::i;:::-;18897:34;;;:126;19114:23;;19057:131;;-1:-1:-1;;;19057:131:29;;19038:16;;19057:18;;:39;;:131;;19155:19;;19057:131;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19232:26;;;;19038:150;;-1:-1:-1;19232:41:29;;19038:150;19232:30;:41::i;:::-;19203:26;;;:70;-1:-1:-1;17289:2001:29;;;;:::o;1267:154:94:-;1390:5;;;1385:16;;;;1323:8;1406:6;;;1385:28;1377:37;;;;;2175:232:62;2241:47;2305:12;2320:40;2336:23;2320:15;:40::i;583:160:78:-;641:7;2399:5:60;668:4:78;:21;;660:30;;;;;;-1:-1:-1;2399:5:60;715:20:78;;707:29;;;583:160::o;16756:1107:84:-;16858:23;588:2;16955:6;:30;;;;16947:39;;;;;;16997:90;17090:37;:35;:37::i;:::-;-1:-1:-1;;;;;17204:14:84;;17137:64;17204:14;;;;;;;;;;16997:130;;-1:-1:-1;17261:28:84;;;-1:-1:-1;;;;;17261:28:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;17228:61;;17305:9;17300:533;17324:6;17320:10;;:1;:10;17300:533;;;17351:42;17396:12;17409:1;17396:15;;;;;;;;17351:60;;17425:27;17455:6;17462:1;17455:9;;;;;;;;;;;;;;;;;;;17603:23;;;;;17584:42;;17657:21;;;;;17640:14;;;:38;;;;17710:22;-1:-1:-1;;;17710:22:84;;;17692:15;;;:40;-1:-1:-1;;;17763:21:84;;;;;;;17746:38;;:14;;;:38;17798:17;;:24;;;;-1:-1:-1;17603:23:84;17332:3;17300:533;;;-1:-1:-1;17850:6:84;16756:1107;-1:-1:-1;;;;;16756:1107:84:o;15921:829::-;16015:13;;15998:14;16015:13;-1:-1:-1;;;;;16061:21:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16061:21:84;;16038:44;;16097:9;16092:257;16112:6;16108:1;:10;16092:257;;;16139:27;16169:6;16176:1;16169:9;;;;;;;;;;;;;;16139:39;;16259:79;16288:5;:16;;;16306:5;:14;;;16322:5;:15;;;16259:28;:79::i;:::-;16250:3;16254:1;16250:6;;;;;;;;;;;;;;;;;:88;-1:-1:-1;16120:3:84;;16092:257;;;-1:-1:-1;16403:1:84;16414:330;16425:6;16421:1;:10;16414:330;;;16459:1;16474:243;16485:1;16481;:5;:28;;;;;16503:3;16507:1;16503:6;;;;;;;;;;;;;;16490:3;16498:1;16494;:5;16490:10;;;;;;;;;;;;;;:19;16481:28;16474:243;;;16589:3;16593:1;16589:6;;;;;;;;;;;;;;16597:3;16605:1;16601;:5;16597:10;;;;;;;;;;;;;;16566:3;16574:1;16570;:5;16566:10;;;;;;;;;;;;;16578:3;16582:1;16578:6;;;;;;;;;;;;;16565:43;;;;;;;;;;16656:6;16663:1;16656:9;;;;;;;;;;;;;;16667:6;16678:1;16674;:5;16667:13;;;;;;;;;;;;;;16627:6;16638:1;16634;:5;16627:13;;;;;;;;;;;;;16642:6;16649:1;16642:9;;;;;;;;;;;;;;;;;16626:55;;;;;-1:-1:-1;;16699:3:84;16474:243;;;-1:-1:-1;16730:3:84;;16414:330;;3638:240:62;3698:68;3782:12;3797:34;3813:17;3797:15;:34::i;1180:245:93:-;1403:1;1394:10;;;1354:21;;;;1393:24;;1180:245::o;2832:435:76:-;2928:27;2957:29;3002:50;3055:32;:30;:32::i;:::-;3097:27;3127:17;;;;;-1:-1:-1;;3127:17:76;;;;3184:13;-1:-1:-1;;;;;3184:13:76;;;-1:-1:-1;;;3234:26:76;;;;;;-1:-1:-1;2832:435:76:o;3993:231:62:-;4051:63;4130:12;4145:32;4161:15;4145;:32::i;4999:989:70:-;5122:25;5163:29;5159:43;;-1:-1:-1;5201:1:70;5194:8;;5159:43;5265:12;5280:44;5308:15;5280:27;:44::i;:::-;5265:59;;5443:10;5456:30;:24;:28;:30::i;:::-;5443:43;-1:-1:-1;5841:5:70;-1:-1:-1;;;;;5841:5:70;5810:36;;;;;5803:3;:43;;5795:52;;;;;;457:4;502:7;5877:11;;;:21;5876:29;5857:16;5923:28;;:58;;5966:15;:9;:13;:15::i;:::-;5923:58;;;5954:9;5923:58;5916:65;4999:989;-1:-1:-1;;;;;;4999:989:70:o;11159:1755:69:-;11277:6;;;;11405:16;11386:5;:15;;;:35;;;;;;;;;:137;;-1:-1:-1;;;11386:137:69;;;-1:-1:-1;;;11386:137:69;11359:164;;11538:5;:20;;;11534:159;;;11629:18;;11592:90;;11657:4;11664:17;11592:36;:90::i;:::-;11574:108;;11534:159;11731:18;;11703:64;;11751:7;11760:6;11703:27;:64::i;:::-;11782:5;:20;;;:54;;;;11835:1;11806:5;:26;;;:30;11782:54;11778:500;;;12214:18;;12177:90;;12242:4;12249:17;12177:36;:90::i;:::-;12161:106;;11778:500;12292:26;;;;:30;12288:354;;12338:31;12372:57;12390:5;12397:31;12414:13;12397:16;:31::i;:::-;12372:17;:57::i;:::-;12338:91;;12550:44;12567:5;:26;;;12550:16;:44::i;:::-;12522:24;:72;;12514:81;;;;;;12288:354;;12740:5;:20;;;12736:172;;;12783:52;12800:34;:13;12818:15;12800:17;:34::i;12783:52::-;12776:59;;;;;;;12736:172;12873:24;12890:6;12873:16;:24::i;12736:172::-;11159:1755;;;;;;;;:::o;824:343:72:-;1127:33;;-1:-1:-1;;;;;1127:25:72;;;:33;;;;;1153:6;;1127:33;;;;1153:6;1127:25;:33;;;;;;;;;;;;;;;;;;;;;824:343;;:::o;1173:206::-;1313:5;-1:-1:-1;;;;;1295:33:72;;1329:7;1338:6;1295:50;;;;;;;;;;;;;-1:-1:-1;;;;;1295:50:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1355:17;:15;:17::i;454:364::-;679:50;;;-1:-1:-1;;;;;679:50:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;679:50:72;-1:-1:-1;;;;;;679:50:72;;;;;662:68;;;;593:15;;;;;;662:16;;;679:50;;662:68;;;;;;679:50;662:68;;;;;;;;;;-1:-1:-1;;662:68:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;620:110;;;;748:7;740:16;;;;;;789:10;778:33;;;;;;;;;;;;;;;-1:-1:-1;778:33:72;;454:364;-1:-1:-1;;;;;;454:364:72:o;873:584:70:-;1271:27;:25;:27::i;:::-;:39;1332:28;;1271:179;;-1:-1:-1;;;1271:179:70;;-1:-1:-1;;;;;1271:39:70;;;;:47;;:179;;1374:24;;1420:4;;1271:39;;:179;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;671:262:71;757:6;775:15;809:5;:18;;;-1:-1:-1;;;;;793:40:71;;834:24;793:66;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;775:84;-1:-1:-1;877:40:71;;869:57;;;;-1:-1:-1;;;869:57:71;;;;;;;:::i;:::-;671:262;;;;;:::o;513:152::-;614:5;:18;;;-1:-1:-1;;;;;598:40:71;;646:9;598:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3128:155:6;3186:7;3218:1;3213;:6;;3205:49;;;;;-1:-1:-1;;;3205:49:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3271:5:6;;;3128:155::o;6164:259:70:-;6248:6;6285:131;6319:27;:25;:27::i;:::-;:39;:83;;-1:-1:-1;;;6319:83:70;;-1:-1:-1;;;;;6319:39:70;;;;:66;;:83;;6386:15;;6319:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7923:1047:69:-;8086:6;;8164:14;8140:10;:20;;;:38;;;;;;;;;8136:679;;;8211:68;8238:10;8250:7;8259:19;8211:26;:68::i;:::-;8194:85;;8136:679;;;8310:28;8341:30;8360:10;8341:18;:30::i;:::-;8310:61;-1:-1:-1;8413:16:69;8389:10;:20;;;:40;;;;;;;;;8385:420;;;8466:65;8485:15;8502:7;8511:19;8466:18;:65::i;:::-;8449:82;;8385:420;;;8580:16;8556:10;:20;;;:40;;;;;;;;;8552:253;;;8633:81;8656:10;8668:15;8685:7;8694:19;8633:22;:81::i;8552:253::-;8136:679;;8925:38;:32;8942:14;8925:16;:32::i;1541:219:81:-;1607:20;1639:41;1683:36;:34;:36::i;:::-;1736:17;;;;;;-1:-1:-1;;1736:17:81;;;;-1:-1:-1;;;;;1736:17:81;;1541:219::o;4730:1491:82:-;4865:7;4898:19;4931:32;5023:59;5058:12;5072:9;5023:34;:59::i;:::-;4884:198;;;;;5129:58;5190:40;:38;:40::i;:::-;-1:-1:-1;;;;;5289:19:82;;5240:46;5289:19;;;;;;;;;;5129:101;;-1:-1:-1;5343:34:82;5350:11;5367:9;5343:23;:34::i;:::-;5319:58;;5625:14;5620:1;:19;;:65;;;;-1:-1:-1;;;;;;5643:42:82;;5620:65;5612:74;;;;;;5728:50;;-1:-1:-1;;5728:50:82;-1:-1:-1;;;;;5728:50:82;;;-1:-1:-1;;;;5959:74:82;-1:-1:-1;;;;;;;;5959:74:82;;;;;;6064:16;6052:28;;6044:37;;;;;;-1:-1:-1;6119:53:82;;;;;-1:-1:-1;;;6119:53:82;-1:-1:-1;;;;;6119:53:82;;;;;;-1:-1:-1;6190:24:82;-1:-1:-1;;4730:1491:82;;;;;:::o;702:3460:68:-;958:26;;;;917:25;;958:30;954:1021;;1239:17;:55;1312:12;1342:41;:12;:32;;;:39;:41::i;:::-;1401:12;:26;;;1584:12;:33;;;1239:392;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1766:1;1737:26;;;:30;;;1927:33;;;:37;1219:412;-1:-1:-1;954:1021:68;2947:254;2982:209;3157:12;:33;;;2982:153;499:4:60;2982:88:68;3045:24;2982:41;:12;:32;;;:39;:41::i;:::-;:62;;:88::i;:::-;:109;;:153::i;:::-;:174;;:209::i;:::-;2947:17;;:21;:254::i;:::-;2927:274;-1:-1:-1;4033:122:68;499:4:60;4033:61:68;:18;4069:24;4033:35;:61::i;:122::-;3997:12;:33;;:158;;;;;702:3460;;;;;;:::o;5133:449:81:-;5208:9;5229:47;5279:36;:34;:36::i;:::-;-1:-1:-1;;;;;5357:19:81;;5325:29;5357:19;;;;;;;;;;5399:28;;5357:19;;-1:-1:-1;5357:19:81;-1:-1:-1;;;5399:28:81;;;;5395:181;;;5450:42;:40;:42::i;:::-;-1:-1:-1;;;;;5450:56:81;;;;;;;;;;;;;;;;;;;-1:-1:-1;5443:63:81;;-1:-1:-1;;5443:63:81;5395:181;5562:1;5537:28;;;;;;14515:183:69;14604:87;336:42:61;14665:7:69;14674:16;14604:28;:87::i;12689:2038:84:-;12803:27;;:34;12795:42;;12787:51;;;;;;12920:1;12885:14;:32;;;:36;12877:45;;;;;;12969:35;13007:14;:27;;;13035:5;13007:34;;;;;;;;;;;;;;12969:72;;13102:24;13072:54;;;;;;;;:13;:26;;;:54;;;;;;;;;;:132;;;;-1:-1:-1;13172:32:84;13142:13;:26;;;:62;;;;;;;;;;13072:132;13051:163;;;;;;13253:32;;;:37;;-1:-1:-1;;13253:37:84;;;-1:-1:-1;;;13531:338:84;13551:27;;:34;13547:38;;13531:338;;;13606:23;13632:14;:27;;;13660:1;13632:30;;;;;;;;;;;;;;13606:56;;13696:13;13680:1;:13;;;:29;:75;;;;-1:-1:-1;13731:24:84;13713:1;:14;;;:42;;;;;;;;;;13680:75;13676:183;;;13791:1;:13;;;13775:29;;13843:1;13822:22;;13676:183;-1:-1:-1;13587:3:84;;13531:338;;;;13892:18;13883:5;:27;13879:236;;;-1:-1:-1;;14060:24:84;14031:26;;;;;:53;14098:7;;13879:236;14328:33;14364:14;:27;;;14392:18;14364:47;;;;;;;;;;;;;;;;;;14524:25;;;;;;14563:23;;;;;14421:175;;;;14633:24;14606;;;;:51;14696:24;14667:26;;:53;;;;-1:-1:-1;;;;;12689:2038:84:o;11592:862::-;11739:16;;11735:20;;;;:68;;-1:-1:-1;11759:16:84;;5408:6:60;-1:-1:-1;11759:44:84;11735:68;11727:77;;;;;;11868:5;:14;;;11864:1;:18;:56;;;;-1:-1:-1;11886:14:84;;;;11904:16;-1:-1:-1;11886:34:84;11864:56;11856:65;;;;;;11982:5;:15;;;11978:1;:19;:77;;;;-1:-1:-1;12001:15:84;;;;4906:1:60;-1:-1:-1;12001:54:84;11978:77;11970:86;;;;;;12127:14;;;;-1:-1:-1;;12108:33:84;;;;:70;;-1:-1:-1;12145:14:84;;;;12163:15;-1:-1:-1;12145:33:84;12108:70;12100:79;;;;;;12262:16;;12229:50;;12320:14;;;;12376:15;;;;12432:14;;;;;12402:45;;;;-1:-1:-1;;;12402:45:84;-1:-1:-1;;12345:47:84;;;;-1:-1:-1;;;12345:47:84;-1:-1:-1;;12289:46:84;;;;;;-1:-1:-1;;12229:50:84;;;;-1:-1:-1;;12229:50:84;;;;;;;12289:46;;;;;;;;12345:47;;;;;12402:45;;;;;;;;;;11592:862::o;10664:882::-;10896:4;10914:7;10935;10967:22;10992:25;:5;:23;:25::i;:::-;10967:50;-1:-1:-1;11089:19:84;;;:54;;;11129:14;11112;:31;11089:54;11085:116;;;11176:14;11159:31;;11085:116;11220:7;:29;;;;11248:1;11231:5;:14;;;:18;11220:29;11210:39;-1:-1:-1;11268:47:84;;;;11260:56;;;;;;-1:-1:-1;;11444:16:84;;11488:7;;11429:2;11400:31;;;;11465:3;11436:32;;;;11399:70;;;;;-1:-1:-1;11524:14:84;-1:-1:-1;10664:882:84:o;6020:263:62:-;6087:77;6180:12;6195:41;6211:24;8450:329;8542:12;494:7;8742:9;8734:18;;;;;;;;:38;;8450:329;-1:-1:-1;;8450:329:62:o;883:554:85:-;1016:7;5408:6:60;1043:38:85;;;1035:47;;;;;;1112:16;1100:28;;;1092:37;;;;;;4906:1:60;1147:48:85;;;1139:57;;;;;;-1:-1:-1;1252:42:85;1292:2;1252:42;;;;1319:39;1357:1;1319:39;;;;1251:108;1390:25;;;1251:165;883:554;;;;;:::o;7074:226:62:-;7136:50;7202:12;7217:36;7233:19;7217:15;:36::i;1649:118:94:-;1695:6;1721:1;1717;:5;1713:47;;;1731:6;1735:1;1731:3;:6::i;:::-;1724:13;;;;1713:47;-1:-1:-1;1759:1:94;1752:8;;1385:224:72;1506:69;;;-1:-1:-1;;;1506:69:72;;-1:-1:-1;;;;;1506:69:72;;;;;;;1561:4;1506:69;;;;;;;;;;;;:37;;;;;;:69;;;;;-1:-1:-1;;1506:69:72;;;;;;;;-1:-1:-1;1506:37:72;:69;;;;;;;;;;1615:746;1666:12;1688:24;;:::i;:::-;1752:16;1785:135;;;;1942:2;1937:219;;;;2289:1;2286;2279:12;1785:135;1878:1;1867:12;;1785:135;;1937:219;2043:2;2040:1;2032:6;2017:29;2084:6;2078:13;2067:24;;1745:564;;2337:7;2329:25;;;;;-1:-1:-1;;;2329:25:72;;;;;;;;;;;;-1:-1:-1;;;2329:25:72;;;;;;;;;;;;;;8109:193:62;8158:32;8202:12;8217:38;8233:21;8217:15;:38::i;939:974:71:-;1502:23;;1486:68;;-1:-1:-1;;;1486:68:71;;1078:32;;1436:21;;1078:32;;-1:-1:-1;;;;;1486:47:71;;;;:68;;1534:19;;1486:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1468:86;-1:-1:-1;1572:40:71;;1564:59;;;;-1:-1:-1;;;1564:59:71;;;;;;;:::i;:::-;1658:21;1717:34;1658:21;1735:15;1717:17;:34::i;:::-;1690:61;;1836:70;1872:7;1881:24;1836:35;:70::i;1769:531:70:-;1909:32;1980:144;:135;2026:15;:28;;;2068:37;2085:19;2068:16;:37::i;:::-;1980:32;:135::i;:::-;:142;:144::i;:::-;1953:171;;2134:27;:25;:27::i;:::-;:39;2196:28;;2134:159;;-1:-1:-1;;;2134:159:70;;-1:-1:-1;;;;;2134:39:70;;;;:48;;:159;;2238:24;;2276:7;;2134:159;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1769:531;;;;;:::o;1919:1229:71:-;2487:28;;2092:32;;;;2450:120;;2525:4;-1:-1:-1;;;2450:36:71;:120::i;:::-;2424:146;;2581:15;2615:10;:23;;;-1:-1:-1;;;;;2599:47:71;;2647:19;2599:68;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2581:86;-1:-1:-1;2685:40:71;;2677:59;;;;-1:-1:-1;;;2677:59:71;;;;;;;:::i;:::-;2808:28;;2747:21;;2771:120;;2846:4;-1:-1:-1;;;2771:36:71;:120::i;:::-;2747:144;-1:-1:-1;2929:34:71;2747:144;2947:15;2929:17;:34::i;:::-;2902:61;;3048:93;3077:15;:28;;;3107:7;3116:24;3048:28;:93::i;:::-;1919:1229;;;;;;;;;:::o;2468:225:62:-;2534:41;2591:12;2606:40;2622:23;2606:15;:40::i;1452:1731:82:-;1589:19;1622:32;1668:27;1829:42;1858:12;1829:28;:42::i;:::-;1720:151;;-1:-1:-1;1720:151:82;-1:-1:-1;1720:151:82;-1:-1:-1;2155:31:82;;;:58;;;;;2212:1;2190:19;:23;2155:58;:77;;;;;2231:1;2217:11;:15;2155:77;2151:1026;;;2331:27;2488:44;2519:12;2488:30;:44::i;:::-;2279:253;;;;;;2547:42;2592:367;2726:68;429:3:60;2726:19:82;:23;;:68;;;;:::i;:::-;2897:19;2885:9;:31;2934:11;2592:24;:367::i;:::-;2547:412;-1:-1:-1;3001:64:82;:24;2547:412;3001:28;:64::i;:::-;2974:91;-1:-1:-1;;;;;;3087:44:82;;3079:53;;;;;;2151:1026;;;1452:1731;;;;;:::o;6645:250:62:-;6715:58;6789:12;6804:44;6820:27;6804:15;:44::i;3530:215:6:-;3588:7;3611:6;3607:20;;-1:-1:-1;3626:1:6;3619:8;;3607:20;3649:5;;;3653:1;3649;:5;:1;3672:5;;;;;:10;3664:56;;;;-1:-1:-1;;;3664:56:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4209:150;4267:7;4298:1;4294;:5;4286:44;;;;;-1:-1:-1;;;4286:44:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;4351:1;4347;:5;;;;;;;4209:150;-1:-1:-1;;;4209:150:6:o;2682:175::-;2740:7;2771:5;;;2794:6;;;;2786:46;;;;;-1:-1:-1;;;2786:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;7804:246:62;7876:43;7935:12;7950:53;7966:36;7950:15;:53::i;1006:752:88:-;1085:7;1130:1;1112:5;:15;;;:19;:77;;;;-1:-1:-1;1135:15:88;;;;4906:1:60;-1:-1:-1;1135:54:88;1112:77;1104:86;;;;;;1309:15;;;;4847:1:60;-1:-1:-1;1305:81:88;;-1:-1:-1;1372:14:88;;;;1365:21;;1305:81;1397:20;1420:45;1463:1;1445:5;:15;;;:19;1420:24;:45::i;:::-;1696:14;;;;1397:68;;-1:-1:-1;1696:55:88;;2617:9:60;;1696:32:88;;1397:68;1696:18;:32::i;:::-;:36;;:55::i;526:829:82:-;646:19;679:32;725:27;777:58;838:40;:38;:40::i;:::-;-1:-1:-1;;;;;937:19:82;;;;888:46;937:19;;;;;;;;-1:-1:-1;;937:19:82;;;;980:25;-1:-1:-1;;;;;980:25:82;;;-1:-1:-1;;;1245:38:82;;-1:-1:-1;;;;;1245:38:82;;-1:-1:-1;;;;1315:33:82;;;;;;-1:-1:-1;526:829:82:o;3288:1107::-;3483:7;4135:253;4376:11;4135:157;2665:11:60;4135:157:82;4239:19;4135:86;:25;499:4:60;4135:42:82;:86::i;928:470:78:-;991:7;1014:5;1023:1;1014:10;1010:40;;;-1:-1:-1;2617:9:60;1026:24:78;;1010:40;1064:5;1073:1;1064:10;1060:44;;;-1:-1:-1;1083:21:78;1076:28;;1060:44;1118:5;1127:1;1118:10;1114:37;;;-1:-1:-1;2665:11:60;1130:21:78;;1114:37;1165:5;1174:1;1165:10;1161:41;;;-1:-1:-1;1184:18:78;1177:25;;1161:41;1216:5;1225:1;1216:10;1212:41;;;-1:-1:-1;1235:18:78;1228:25;;1212:41;1267:5;1276:1;1267:10;1263:42;;;-1:-1:-1;1286:19:78;1279:26;;1263:42;1319:5;1328:1;1319:10;1315:42;;;-1:-1:-1;1338:19:78;1331:26;;1315:42;1368:23;;-1:-1:-1;;;1368:23:78;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:175:168:-;84:20;;-1:-1:-1;;;;;133:31:168;;123:42;;113:2;;179:1;176;169:12;194:433;;;360:3;353:4;345:6;341:17;337:27;327:2;;383:6;375;368:22;327:2;-1:-1:-1;411:20:168;;-1:-1:-1;;;;;443:30:168;;440:2;;;493:8;483;476:26;440:2;537:4;529:6;525:17;513:29;;600:3;593:4;585;577:6;573:17;565:6;561:30;557:41;554:50;551:2;;;617:1;614;607:12;551:2;317:310;;;;;:::o;632:1504::-;;771:3;764:4;756:6;752:17;748:27;738:2;;793:5;786;779:20;738:2;826:6;820:13;852:4;-1:-1:-1;;;;;912:2:168;908;905:10;902:2;;;918:9;902:2;949:36;981:2;976;972;968:11;964:20;949:36;:::i;:::-;1019:15;;;1050:12;;;;1082:15;;;1116:4;1151:11;;;1139:24;;1135:33;;1132:42;-1:-1:-1;1129:2:168;;;1191:5;1184;1177:20;1129:2;1217:5;1231:876;1245:2;1242:1;1239:9;1231:876;;;1312:2;1306:3;1301;1297:13;1293:22;1290:2;;;1332:5;1325;1318:20;1290:2;1363;1398;1392:9;1444:2;1436:6;1432:15;1501:6;1489:10;1486:22;1481:2;1469:10;1466:18;1463:46;1460:2;;;1512:9;1460:2;1536:22;;1586:10;;1571:26;;1640:12;;;1634:19;1617:15;;;1610:44;1697:12;;;1691:19;1674:15;;;1667:44;;;;1734:2;1779:12;;;1773:19;1756:15;;;1749:44;1816:3;1862:12;;;1856:19;1839:15;;;1832:44;1899:3;;1939:61;1987:12;;;1939:61;:::i;:::-;1922:15;;;1915:86;;;;2014:19;;2053:12;;;;2085;;;;1263:1;1256:9;1231:876;;;-1:-1:-1;2125:5:168;;728:1408;-1:-1:-1;;;;;;;;;728:1408:168:o;2141:195::-;2222:13;;-1:-1:-1;;;;;;2264:47:168;;2254:58;;2244:2;;2326:1;2323;2316:12;2341:165;2438:13;;2480:1;2470:12;;2460:2;;2496:1;2493;2486:12;2511:140;2591:13;;2613:32;2591:13;2613:32;:::i;2656:162::-;2735:13;;2788:4;2777:16;;2767:27;;2757:2;;2808:1;2805;2798:12;2823:616;;;;3031:2;3019:9;3010:7;3006:23;3002:32;2999:2;;;3052:6;3044;3037:22;2999:2;3080:31;3101:9;3080:31;:::i;:::-;3070:41;;3162:2;3151:9;3147:18;3134:32;-1:-1:-1;;;;;3181:6:168;3178:30;3175:2;;;3226:6;3218;3211:22;3175:2;3270:109;3371:7;3362:6;3351:9;3347:22;3270:109;:::i;:::-;2989:450;;3398:8;;-1:-1:-1;3244:135:168;;-1:-1:-1;;;;2989:450:168:o;3444:1125::-;;;;;;3688:2;3676:9;3667:7;3663:23;3659:32;3656:2;;;3709:6;3701;3694:22;3656:2;3737:31;3758:9;3737:31;:::i;:::-;3727:41;;3819:2;3808:9;3804:18;3791:32;-1:-1:-1;;;;;3883:2:168;3875:6;3872:14;3869:2;;;3904:6;3896;3889:22;3869:2;3948:109;4049:7;4040:6;4029:9;4025:22;3948:109;:::i;:::-;4076:8;;-1:-1:-1;3922:135:168;-1:-1:-1;4164:2:168;4149:18;;4136:32;;-1:-1:-1;4180:16:168;;;4177:2;;;4214:6;4206;4199:22;4177:2;4257:8;4246:9;4242:24;4232:34;;4304:7;4297:4;4293:2;4289:13;4285:27;4275:2;;4331:6;4323;4316:22;4275:2;4376;4363:16;4402:2;4394:6;4391:14;4388:2;;;4423:6;4415;4408:22;4388:2;4473:7;4468:2;4459:6;4455:2;4451:15;4447:24;4444:37;4441:2;;;4499:6;4491;4484:22;4441:2;3646:923;;;;-1:-1:-1;3646:923:168;;-1:-1:-1;4535:2:168;4527:11;;4557:6;3646:923;-1:-1:-1;;;3646:923:168:o;4574:778::-;;;;4772:2;4760:9;4751:7;4747:23;4743:32;4740:2;;;4793:6;4785;4778:22;4740:2;4821:31;4842:9;4821:31;:::i;:::-;4811:41;;4903:2;4892:9;4888:18;4875:32;-1:-1:-1;;;;;4967:2:168;4959:6;4956:14;4953:2;;;4988:6;4980;4973:22;4953:2;5031:6;5020:9;5016:22;5006:32;;5076:7;5069:4;5065:2;5061:13;5057:27;5047:2;;5103:6;5095;5088:22;5047:2;5148;5135:16;5174:2;5166:6;5163:14;5160:2;;;5195:6;5187;5180:22;5160:2;5256:7;5251:2;5243:4;5235:6;5231:17;5227:2;5223:26;5219:35;5216:48;5213:2;;;5282:6;5274;5267:22;5213:2;5318;5314;5310:11;5300:21;;5340:6;5330:16;;;;;4730:622;;;;;:::o;5357:602::-;;;;5551:2;5539:9;5530:7;5526:23;5522:32;5519:2;;;5572:6;5564;5557:22;5519:2;5600:31;5621:9;5600:31;:::i;:::-;5590:41;;5682:2;5671:9;5667:18;5654:32;-1:-1:-1;;;;;5701:6:168;5698:30;5695:2;;;5746:6;5738;5731:22;5964:253;;6073:2;6061:9;6052:7;6048:23;6044:32;6041:2;;;6094:6;6086;6079:22;6041:2;6138:9;6125:23;6157:30;6181:5;6157:30;:::i;6222:299::-;;6357:2;6345:9;6336:7;6332:23;6328:32;6325:2;;;6378:6;6370;6363:22;6325:2;6422:9;6409:23;6461:1;6454:5;6451:12;6441:2;;6482:6;6474;6467:22;6526:193;;6648:2;6636:9;6627:7;6623:23;6619:32;6616:2;;;6669:6;6661;6654:22;6616:2;-1:-1:-1;6697:16:168;;6606:113;-1:-1:-1;6606:113:168:o;6724:317::-;;;6860:2;6848:9;6839:7;6835:23;6831:32;6828:2;;;6881:6;6873;6866:22;6828:2;6915:9;6909:16;6899:26;;6968:2;6957:9;6953:18;6947:25;6981:30;7005:5;6981:30;:::i;:::-;7030:5;7020:15;;;6818:223;;;;;:::o;7046:993::-;;7202:3;7190:9;7181:7;7177:23;7173:33;7170:2;;;7224:6;7216;7209:22;7170:2;7262;7256:9;7304:3;7296:6;7292:16;7374:6;7362:10;7359:22;-1:-1:-1;;;;;7326:10:168;7323:34;7320:62;7317:2;;;7385:9;7317:2;7412;7405:22;7449:16;;7505:12;7494:24;;7484:35;;7474:2;;7538:6;7530;7523:22;7474:2;7556:21;;7622:2;7607:18;;7601:25;-1:-1:-1;;;;;;7657:27:168;;7645:40;;7635:2;;7704:6;7696;7689:22;7635:2;7741;7729:15;;7722:32;7787:49;7832:2;7817:18;;7787:49;:::i;:::-;7782:2;7774:6;7770:15;7763:74;7870:50;7916:2;7905:9;7901:18;7870:50;:::i;:::-;7865:2;7857:6;7853:15;7846:75;7955:52;8002:3;7991:9;7987:19;7955:52;:::i;:::-;7949:3;7937:16;;7930:78;7941:6;7160:879;-1:-1:-1;;;7160:879:168:o;8044:1218::-;;;8216:2;8204:9;8195:7;8191:23;8187:32;8184:2;;;8237:6;8229;8222:22;8184:2;8275:9;8269:16;-1:-1:-1;;;;;8345:2:168;8337:6;8334:14;8331:2;;;8366:6;8358;8351:22;8331:2;8394:22;;;;8450:4;8432:16;;;8428:27;8425:2;;;8473:6;8465;8458:22;8425:2;8511;8505:9;8553:4;8545:6;8541:17;8608:6;8596:10;8593:22;8588:2;8576:10;8573:18;8570:46;8567:2;;;8619:9;8567:2;8646;8639:22;8686:9;;8707:16;;;8704:2;;;8741:6;8733;8726:22;8704:2;8774:88;8854:7;8843:8;8839:2;8835:17;8774:88;:::i;:::-;8766:6;8759:104;;8902:2;8898;8894:11;8888:18;8931:2;8921:8;8918:16;8915:2;;;8952:6;8944;8937:22;8915:2;8994:88;9074:7;9063:8;9059:2;9055:17;8994:88;:::i;:::-;8989:2;8981:6;8977:15;8970:113;;9130:2;9126;9122:11;9116:18;9111:2;9103:6;9099:15;9092:43;9182:2;9178;9174:11;9168:18;9163:2;9155:6;9151:15;9144:43;9206:6;9196:16;;;;;9252:2;9241:9;9237:18;9231:25;9221:35;;8174:1088;;;;;:::o;9267:257::-;;9378:2;9366:9;9357:7;9353:23;9349:32;9346:2;;;9399:6;9391;9384:22;9346:2;9443:9;9430:23;9462:32;9488:5;9462:32;:::i;9728:369::-;9822:19;;;9728:369;-1:-1:-1;;;;;9853:31:168;;9850:2;;;9899:3;9894;9887:16;9850:2;9942:4;9934:6;9930:17;9992:8;9985:5;9978:4;9973:3;9969:14;9956:45;10024:18;;;;10044:4;10020:29;10058:15;;;-1:-1:-1;10020:29:168;;9812:285;-1:-1:-1;9812:285:168:o;10102:967::-;;10214:5;10208:12;10241:6;10236:3;10229:19;10267:4;10296:2;10291:3;10287:12;10280:19;;10333:2;10326:5;10322:14;10354:3;10366:678;10380:6;10377:1;10374:13;10366:678;;;10439:13;;10477:9;;10465:22;;10527:11;;;10521:18;10507:12;;;10500:40;10563:4;10607:11;;;10601:18;10587:12;;;10580:40;10643:4;10687:11;;;10681:18;10667:12;;;10660:40;10723:4;10767:11;;;10761:18;10747:12;;;10740:40;10803:4;10846:11;;;10840:18;;10898:1;10881:19;;10871:2;;10904:9;10871:2;10935:12;;10928:34;10991:4;10982:14;;;;11019:15;;;;10402:1;10395:9;10366:678;;;-1:-1:-1;11060:3:168;;10184:885;-1:-1:-1;;;;;10184:885:168:o;11074:211::-;-1:-1:-1;;;;;11246:32:168;;;;11228:51;;11216:2;11201:18;;11183:102::o;11498:600::-;-1:-1:-1;;;;;11757:15:168;;;11739:34;;11809:15;;11804:2;11789:18;;11782:43;11861:2;11856;11841:18;;11834:30;;;11880:18;;11873:34;;;11498:600;11900:6;11950;11944:3;11929:19;;11916:49;11985:22;;;12009:3;11981:32;;;11974:46;;;;12081:2;12060:15;;;-1:-1:-1;;12056:29:168;12041:45;12037:55;;11691:407;-1:-1:-1;;;11691:407:168:o;12103:627::-;-1:-1:-1;;;;;12446:15:168;;;12428:34;;12498:15;;;12493:2;12478:18;;12471:43;12550:15;;;12545:2;12530:18;;12523:43;12602:15;;;12597:2;12582:18;;12575:43;12655:15;;12649:3;12634:19;;12627:44;12708:15;;;12408:3;12687:19;;12680:44;12377:3;12362:19;;12344:386::o;12735:700::-;-1:-1:-1;;;;;13002:32:168;;;;12984:51;;13075:13;;13090:12;13071:32;13066:2;13051:18;;;13044:60;;;;13150:15;;13144:22;-1:-1:-1;;;;;;13140:42:168;13135:2;13120:18;;;13113:70;;;;13229:15;;13223:22;13177:3;13219:33;13214:2;13199:18;;;13192:61;;;;13300:15;;13294:22;13318:6;13290:35;13284:3;13269:19;;;13262:64;;;;13373:16;13367:23;-1:-1:-1;;;;;;13363:65:168;13022:3;13342:19;;13335:94;12971:3;12956:19;;12938:497::o;13440:1161::-;;13814:1;13810;13805:3;13801:11;13797:19;13789:6;13785:32;13774:9;13767:51;13866:6;13858;13854:19;13849:2;13838:9;13834:18;13827:47;13910:3;13905:2;13894:9;13890:18;13883:31;13949:6;13943:13;13993:3;13987;13976:9;13972:19;13965:32;14020:84;14099:3;14088:9;14084:19;14070:12;14020:84;:::i;:::-;14006:98;;14153:2;14145:6;14141:15;14135:22;14226:3;14222:8;14210:9;14202:6;14198:22;14194:37;14188:3;14177:9;14173:19;14166:66;14255:73;14321:6;14305:14;14255:73;:::i;:::-;14241:87;;;14383:2;14375:6;14371:15;14365:22;14359:3;14348:9;14344:19;14337:51;14443:4;14435:6;14431:17;14425:24;14419:3;14408:9;14404:19;14397:53;14500:9;14492:6;14488:22;14481:4;14470:9;14466:20;14459:52;14528:67;14588:6;14580;14572;14528:67;:::i;:::-;14520:75;13757:844;-1:-1:-1;;;;;;;;13757:844:168:o;14606:571::-;-1:-1:-1;;;;;14883:32:168;;14865:51;;14964:6;14952:19;;14947:2;14932:18;;14925:47;15020:12;15008:25;;15003:2;14988:18;;14981:53;15070:3;15065:2;15050:18;;15043:31;;;14606:571;;15091:80;;15151:19;;15143:6;15135;15091:80;:::i;15182:375::-;-1:-1:-1;;;;;15440:15:168;;;15422:34;;15487:2;15472:18;;15465:34;;;;15535:15;;;15530:2;15515:18;;15508:43;15372:2;15357:18;;15339:218::o;15562:467::-;-1:-1:-1;;;;;15856:15:168;;;15838:34;;15903:2;15888:18;;15881:34;;;;15951:15;;15946:2;15931:18;;15924:43;16015:6;16003:19;;;15998:2;15983:18;;15976:47;15787:3;15772:19;;15754:275::o;16034:487::-;-1:-1:-1;;;;;16309:32:168;;;;16291:51;;16373:2;16358:18;;16351:34;;;;16416:2;16401:18;;16394:34;;;;16459:2;16444:18;;16437:34;16502:3;16487:19;;16480:35;16278:3;16263:19;;16245:276::o;16526:425::-;-1:-1:-1;;;;;16783:32:168;;;;16765:51;;16847:2;16832:18;;16825:34;;;;16890:2;16875:18;;16868:34;16933:2;16918:18;;16911:34;16752:3;16737:19;;16719:232::o;16956:175::-;17100:25;;;17088:2;17073:18;;17055:76::o;17136:336::-;17338:2;17320:21;;;17377:2;17357:18;;;17350:30;-1:-1:-1;;;17411:2:168;17396:18;;17389:42;17463:2;17448:18;;17310:162::o;17477:327::-;17679:2;17661:21;;;17718:1;17698:18;;;17691:29;-1:-1:-1;;;17751:2:168;17736:18;;17729:34;17795:2;17780:18;;17651:153::o;17809:335::-;18011:2;17993:21;;;18050:2;18030:18;;;18023:30;-1:-1:-1;;;18084:2:168;18069:18;;18062:41;18135:2;18120:18;;17983:161::o;18149:329::-;18351:2;18333:21;;;18390:1;18370:18;;;18363:29;-1:-1:-1;;;18423:2:168;18408:18;;18401:36;18469:2;18454:18;;18323:155::o;18483:337::-;18685:2;18667:21;;;18724:2;18704:18;;;18697:30;-1:-1:-1;;;18758:2:168;18743:18;;18736:43;18811:2;18796:18;;18657:163::o;18825:340::-;19027:2;19009:21;;;19066:2;19046:18;;;19039:30;-1:-1:-1;;;19100:2:168;19085:18;;19078:46;19156:2;19141:18;;18999:166::o;19170:350::-;19372:2;19354:21;;;19411:2;19391:18;;;19384:30;19450:28;19445:2;19430:18;;19423:56;19511:2;19496:18;;19344:176::o;19525:338::-;19727:2;19709:21;;;19766:2;19746:18;;;19739:30;-1:-1:-1;;;19800:2:168;19785:18;;19778:44;19854:2;19839:18;;19699:164::o;19868:331::-;20070:2;20052:21;;;20109:1;20089:18;;;20082:29;-1:-1:-1;;;20142:2:168;20127:18;;20120:38;20190:2;20175:18;;20042:157::o;20204:350::-;20406:2;20388:21;;;20445:2;20425:18;;;20418:30;20484:28;20479:2;20464:18;;20457:56;20545:2;20530:18;;20378:176::o;20559:334::-;20761:2;20743:21;;;20800:2;20780:18;;;20773:30;-1:-1:-1;;;20834:2:168;20819:18;;20812:40;20884:2;20869:18;;20733:160::o;20898:341::-;21100:2;21082:21;;;21139:2;21119:18;;;21112:30;-1:-1:-1;;;21173:2:168;21158:18;;21151:47;21230:2;21215:18;;21072:167::o;21244:344::-;21446:2;21428:21;;;21485:2;21465:18;;;21458:30;-1:-1:-1;;;21519:2:168;21504:18;;21497:50;21579:2;21564:18;;21418:170::o;21593:265::-;21801:6;21789:19;;;;21771:38;;21840:2;21825:18;;21818:34;21759:2;21744:18;;21726:132::o;22045:560::-;;;22204:11;22191:25;22298:2;22294:7;22283:8;22267:14;22263:29;22259:43;22239:18;22235:68;22225:2;;22320:4;22314;22307:18;22225:2;22350:33;;22402:20;;;-1:-1:-1;;;;;;22434:30:168;;22431:2;;;22480:4;22474;22467:18;22431:2;22516:4;22504:17;;;;-1:-1:-1;22563:17:168;;22547:14;22543:38;22533:49;;22530:2;;;22595:1;22592;22585:12;22610:348;;22778:11;22765:25;22872:3;22868:8;22857;22841:14;22837:29;22833:44;22813:18;22809:69;22799:2;;22895:4;22889;22882:18;22799:2;22919:33;;;;;22729:229;-1:-1:-1;;22729:229:168:o;22963:333::-;;23117:11;23104:25;23211:2;23207:7;23196:8;23180:14;23176:29;23172:43;23152:18;23148:68;23138:2;;23233:4;23227;23220:18;23301:242;23371:2;23365:9;23401:17;;;-1:-1:-1;;;;;23433:34:168;;23469:22;;;23430:62;23427:2;;;23495:9;23427:2;23522;23515:22;23345:198;;-1:-1:-1;23345:198:168:o;23548:120::-;23636:5;23629:13;23622:21;23615:5;23612:32;23602:2;;23658:1;23655;23648:12;23602:2;23592:76;:::o;23673:119::-;23760:6;23753:5;23749:18;23742:5;23739:29;23729:2;;23782:1;23779;23772:12", "language": "Solidity", "natspec": { "kind": "dev", "methods": { "batchBalanceAction(address,(uint8,uint16,uint256,uint256,bool,bool)[])": { "details": "emit:CashBalanceChange, emit:nTokenSupplyChangeauth:msg.sender auth:ERC1155", "notice": "Executes a batch of balance transfers including minting and redeeming nTokens.", "params": { "account": "the account for the action", "actions": "array of balance actions to take, must be sorted by currency id" } }, "batchBalanceAndTradeAction(address,(uint8,uint16,uint256,uint256,bool,bool,bytes32[])[])": { "details": "emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccruedauth:msg.sender auth:ERC1155", "notice": "Executes a batch of balance transfers and trading actions", "params": { "account": "the account for the action", "actions": "array of balance actions with trades to take, must be sorted by currency id" } }, "batchBalanceAndTradeActionWithCallback(address,(uint8,uint16,uint256,uint256,bool,bool,bytes32[])[],bytes)": { "details": "emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccruedauth:authorizedCallbackContract", "notice": "Executes a batch of balance transfers and trading actions via an authorized callback contract. This can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform other actions on behalf of the user. Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting and will mainly be used for contracts that make migrating assets a better user experience.", "params": { "account": "the account that will take all the actions", "actions": "array of balance actions with trades to take, must be sorted by currency id", "callbackData": "arbitrary bytes to be passed backed to the caller in the callback" } }, "batchLend(address,(uint16,bool,bytes32[])[])": { "details": "Note that this method does not work with native ETH because it requires the ability to pull payment from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebtauth:msg.sender auth:ERC1155", "notice": "Executes a batch of lending actions. This is different from batchBalanceAndTrade because it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces the gas costs for lending because there is no second token transfer where residual balances are sent back to the account.", "params": { "account": "the account for the action", "actions": "array of batch lending actions" } }, "getLibInfo()": { "notice": "Get a list of deployed library addresses (sorted by library name)" } }, "version": 1 }, "offset": [ 591, 24150 ], "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x7B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6E6A32A6 GT PUSH2 0x4E JUMPI DUP1 PUSH4 0x6E6A32A6 EQ PUSH2 0xF3 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x106 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0xC4C96DAE EQ PUSH2 0x130 JUMPI PUSH2 0x7B JUMP JUMPDEST DUP1 PUSH4 0x276B64B EQ PUSH2 0x80 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x95 JUMPI DUP1 PUSH4 0x541F5270 EQ PUSH2 0xC0 JUMPI DUP1 PUSH4 0x5950D8E9 EQ PUSH2 0xE0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x93 PUSH2 0x8E CALLDATASIZE PUSH1 0x4 PUSH2 0x41F2 JUMP JUMPDEST PUSH2 0x157 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x1E7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x93 PUSH2 0xDB CALLDATASIZE PUSH1 0x4 PUSH2 0x4366 JUMP JUMPDEST PUSH2 0x1F6 JUMP JUMPDEST PUSH2 0x93 PUSH2 0xEE CALLDATASIZE PUSH1 0x4 PUSH2 0x4242 JUMP JUMPDEST PUSH2 0x53E JUMP JUMPDEST PUSH2 0x93 PUSH2 0x101 CALLDATASIZE PUSH1 0x4 PUSH2 0x42E6 JUMP JUMPDEST PUSH2 0x66E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x112 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x7F4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x127 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAA PUSH2 0x803 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x13C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x145 PUSH2 0x81A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB7 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x469E JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x183 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x19E JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x1BA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x1C3 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D0 DUP5 DUP5 DUP5 PUSH2 0x8EF JUMP JUMPDEST SWAP1 POP PUSH2 0x1DC DUP5 DUP3 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x219 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x234 JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x250 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x259 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x264 DUP5 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x278 DUP6 DUP4 PUSH1 0x40 ADD MLOAD PUSH1 0x0 PUSH2 0xBE7 JUMP JUMPDEST SWAP1 POP PUSH2 0x282 PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP5 DUP2 LT ISZERO PUSH2 0x50C JUMPI CALLDATASIZE DUP7 DUP7 DUP4 DUP2 DUP2 LT PUSH2 0x29A JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2AC SWAP2 SWAP1 PUSH2 0x4B3C JUMP JUMPDEST SWAP1 POP DUP2 ISZERO PUSH2 0x315 JUMPI DUP7 DUP7 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x2C3 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x2D5 SWAP2 SWAP1 PUSH2 0x4B3C JUMP JUMPDEST PUSH2 0x2E3 SWAP1 PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x2F4 PUSH1 0x20 DUP4 ADD DUP4 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x315 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x324 PUSH1 0x40 DUP4 ADD DUP4 PUSH2 0x4AD7 JUMP JUMPDEST SWAP2 POP POP DUP1 PUSH2 0x331 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x374 JUMPI PUSH1 0x0 PUSH2 0x34B PUSH1 0x40 DUP6 ADD DUP6 PUSH2 0x4AD7 JUMP JUMPDEST DUP4 DUP2 DUP2 LT PUSH2 0x355 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH1 0xF8 SHR PUSH1 0xFF AND EQ PUSH2 0x36C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 ADD PUSH2 0x334 JUMP JUMPDEST POP PUSH2 0x38F DUP10 PUSH2 0x386 PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x4579 JUMP JUMPDEST DUP7 SWAP2 SWAP1 DUP10 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x3B4 DUP10 PUSH2 0x3A0 PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0x3AD PUSH1 0x40 DUP7 ADD DUP7 PUSH2 0x4AD7 JUMP JUMPDEST DUP11 DUP11 PUSH2 0xD1F JUMP JUMPDEST PUSH1 0x60 DUP7 ADD DUP3 SWAP1 MSTORE SWAP6 POP PUSH1 0x0 SLT ISZERO PUSH2 0x3CA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x3EF PUSH2 0x3EA DUP7 PUSH1 0x60 ADD MLOAD DUP8 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH2 0xEE1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SGT ISZERO PUSH2 0x4EF JUMPI PUSH2 0x40A PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x439D JUMP JUMPDEST ISZERO PUSH2 0x4B7 JUMPI PUSH1 0x0 PUSH2 0x42A PUSH2 0x421 PUSH1 0x20 DUP7 ADD DUP7 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0xEEF JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x447 PUSH2 0x43E PUSH1 0x20 DUP8 ADD DUP8 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x45F PUSH2 0x458 DUP5 DUP7 PUSH2 0xF4E JUMP JUMPDEST DUP4 SWAP1 PUSH2 0xF87 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP3 PUSH1 0x40 ADD MLOAD SLT ISZERO PUSH2 0x47F JUMPI PUSH2 0x47C DUP2 PUSH1 0x1 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH1 0x0 PUSH2 0x48C DUP10 DUP16 DUP5 PUSH2 0xFBF JUMP JUMPDEST SWAP1 POP DUP5 DUP2 SLT ISZERO PUSH2 0x4AE JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A95 JUMP JUMPDEST POP POP POP POP PUSH2 0x4EF JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4D2 PUSH2 0x4C9 PUSH1 0x20 DUP7 ADD DUP7 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH2 0x4EC DUP12 PUSH2 0x4E2 DUP4 DUP6 PUSH2 0xF87 JUMP JUMPDEST DUP9 SWAP2 SWAP1 PUSH1 0x0 PUSH2 0x10B7 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x4FC DUP6 DUP12 DUP10 PUSH1 0x0 PUSH2 0x1191 JUMP JUMPDEST POP POP PUSH1 0x1 SWAP1 SWAP3 ADD SWAP2 POP PUSH2 0x285 SWAP1 POP JUMP JUMPDEST POP PUSH2 0x516 DUP4 PUSH2 0x1412 JUMP JUMPDEST PUSH2 0x527 JUMPI PUSH2 0x527 DUP4 DUP8 DUP5 PUSH1 0x0 PUSH2 0x141F JUMP JUMPDEST PUSH2 0x531 DUP7 DUP5 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP POP POP JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x8 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH2 0x56D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x576 DUP6 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x583 DUP7 DUP7 DUP7 PUSH2 0x8EF JUMP JUMPDEST SWAP1 POP PUSH2 0x58F DUP2 DUP8 PUSH2 0x1501 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0x550D0657 PUSH1 0xE1 SHL DUP2 MSTORE CALLER SWAP1 PUSH4 0xAA1A0CAE SWAP1 PUSH2 0x5B8 SWAP1 DUP4 SWAP1 DUP11 SWAP1 DUP9 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x4655 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x5D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x5E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x20 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO PUSH2 0x666 JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x635 SWAP1 DUP10 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x64D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x661 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SLOAD EQ ISZERO PUSH2 0x691 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49C5 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xA SSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND CALLER EQ DUP1 PUSH2 0x6AC JUMPI POP CALLER ADDRESS EQ JUMPDEST PUSH2 0x6C8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48B4 JUMP JUMPDEST PUSH2 0x6D1 DUP4 PUSH2 0x8A0 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6DC DUP5 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH2 0x6E6 PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7DD JUMPI CALLDATASIZE DUP6 DUP6 DUP4 DUP2 DUP2 LT PUSH2 0x6FE JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0xC0 MUL ADD SWAP1 POP PUSH1 0x0 DUP3 GT ISZERO PUSH2 0x76B JUMPI DUP6 DUP6 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x71E JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0xC0 MUL ADD PUSH1 0x20 ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x736 SWAP2 SWAP1 PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x74A PUSH1 0x40 DUP4 ADD PUSH1 0x20 DUP5 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x76B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH2 0x788 DUP8 PUSH2 0x77F PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x4579 JUMP JUMPDEST DUP6 SWAP2 SWAP1 DUP8 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x7A4 DUP8 DUP5 PUSH2 0x79A PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x43B9 JUMP JUMPDEST DUP5 PUSH1 0x40 ADD CALLDATALOAD PUSH2 0x1605 JUMP JUMPDEST PUSH2 0x7D4 DUP8 DUP6 DUP6 PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH2 0x7BF PUSH1 0xA0 DUP8 ADD PUSH1 0x80 DUP9 ADD PUSH2 0x439D JUMP JUMPDEST PUSH2 0x7CF PUSH1 0xC0 DUP9 ADD PUSH1 0xA0 DUP10 ADD PUSH2 0x439D JUMP JUMPDEST PUSH2 0x16D8 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x6E9 JUMP JUMPDEST POP PUSH2 0x7E8 DUP6 DUP4 PUSH2 0xAAA JUMP JUMPDEST POP POP PUSH1 0x1 PUSH1 0xA SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 PUSH20 0x0 SWAP1 SWAP2 SWAP3 SWAP4 SWAP5 SWAP6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x8B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO PUSH2 0x8C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8D4 DUP3 PUSH2 0x1755 JUMP JUMPDEST POP POP POP POP PUSH2 0xFFFF AND SWAP1 POP DUP1 PUSH1 0x0 EQ PUSH2 0x8EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x8F7 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x902 DUP6 PUSH2 0xB2B JUMP JUMPDEST SWAP1 POP PUSH2 0x90C PUSH2 0x3F12 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x91E DUP8 DUP5 PUSH1 0x40 ADD MLOAD PUSH1 0x0 PUSH2 0xBE7 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0xA82 JUMPI CALLDATASIZE DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x938 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x94A SWAP2 SWAP1 PUSH2 0x4B1D JUMP JUMPDEST SWAP1 POP DUP2 ISZERO PUSH2 0x9B9 JUMPI DUP8 DUP8 PUSH1 0x1 DUP5 SUB DUP2 DUP2 LT PUSH2 0x961 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0x973 SWAP2 SWAP1 PUSH2 0x4B1D JUMP JUMPDEST PUSH2 0x984 SWAP1 PUSH1 0x40 DUP2 ADD SWAP1 PUSH1 0x20 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND PUSH2 0x998 PUSH1 0x40 DUP4 ADD PUSH1 0x20 DUP5 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xFFFF AND GT PUSH2 0x9B9 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4964 JUMP JUMPDEST PUSH2 0x9D6 DUP10 PUSH2 0x9CD PUSH1 0x40 DUP5 ADD PUSH1 0x20 DUP6 ADD PUSH2 0x4579 JUMP JUMPDEST DUP7 SWAP2 SWAP1 DUP9 PUSH2 0xC79 JUMP JUMPDEST PUSH2 0x9E8 DUP10 DUP6 PUSH2 0x79A PUSH1 0x20 DUP6 ADD DUP6 PUSH2 0x43B9 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9F7 PUSH1 0xC0 DUP4 ADD DUP4 PUSH2 0x4AD7 JUMP JUMPDEST SWAP1 POP GT ISZERO PUSH2 0xA5E JUMPI PUSH1 0x0 PUSH2 0xA29 DUP11 PUSH2 0xA15 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP7 ADD PUSH2 0x4579 JUMP JUMPDEST PUSH2 0xA22 PUSH1 0xC0 DUP7 ADD DUP7 PUSH2 0x4AD7 JUMP JUMPDEST DUP11 DUP10 PUSH2 0xD1F JUMP JUMPDEST SWAP5 POP SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0xA48 JUMPI PUSH2 0xA48 DUP6 PUSH2 0xA43 DUP4 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x17BE JUMP JUMPDEST PUSH1 0x60 DUP6 ADD MLOAD PUSH2 0xA57 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MSTORE POP JUMPDEST PUSH2 0xA79 DUP10 DUP7 DUP7 PUSH1 0x60 DUP6 ADD CALLDATALOAD PUSH2 0x7BF PUSH1 0xA0 DUP8 ADD PUSH1 0x80 DUP9 ADD PUSH2 0x439D JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x923 JUMP JUMPDEST POP PUSH2 0xA8C DUP4 PUSH2 0x1412 JUMP JUMPDEST PUSH2 0xA9D JUMPI PUSH2 0xA9D DUP4 DUP9 DUP4 PUSH1 0x0 PUSH2 0x141F JUMP JUMPDEST POP SWAP1 SWAP2 POP POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xAB4 DUP2 DUP4 PUSH2 0x1501 JUMP JUMPDEST PUSH1 0x20 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO PUSH2 0x8EB JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0xAFF SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB17 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x666 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH2 0xB33 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP4 PUSH2 0x180D JUMP JUMPDEST SWAP1 POP PUSH2 0xB49 DUP2 PUSH2 0x18AE JUMP JUMPDEST ISZERO PUSH2 0xBDF JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xB87 SWAP1 DUP7 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x46D8 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB9F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xBB3 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xBD7 SWAP2 SWAP1 PUSH2 0x441F JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBE2 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xBEF PUSH2 0x3F90 JUMP JUMPDEST PUSH2 0xBF7 PUSH2 0x3F90 JUMP JUMPDEST PUSH1 0xFF DUP5 AND PUSH2 0xC06 JUMPI SWAP1 POP PUSH2 0xAA3 JUMP JUMPDEST PUSH2 0xC10 DUP6 DUP6 PUSH2 0x18FF JUMP JUMPDEST DUP2 MSTORE PUSH1 0xFF DUP5 AND PUSH1 0x60 DUP3 ADD MSTORE DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0xC31 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xC6B JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xC58 PUSH2 0x3FB8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xC50 JUMPI SWAP1 POP JUMPDEST POP PUSH1 0x20 DUP3 ADD MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST DUP2 PUSH2 0xFFFF AND PUSH1 0x0 LT DUP1 ISZERO PUSH2 0xC93 JUMPI POP PUSH2 0x3FFF PUSH2 0xFFFF DUP4 AND GT ISZERO JUMPDEST PUSH2 0xC9C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP3 AND DUP1 DUP6 MSTORE PUSH2 0xCAF SWAP1 DUP3 SWAP1 PUSH2 0x1928 JUMP JUMPDEST ISZERO PUSH2 0xCDC JUMPI PUSH2 0xCC2 DUP4 DUP4 PUSH2 0xFFFF AND PUSH2 0x19B2 JUMP JUMPDEST PUSH2 0x100 DUP9 ADD MSTORE PUSH1 0xE0 DUP8 ADD MSTORE PUSH1 0x40 DUP7 ADD MSTORE PUSH1 0x20 DUP6 ADD MSTORE PUSH2 0xCFA JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP6 ADD DUP2 SWAP1 MSTORE PUSH1 0x40 DUP6 ADD DUP2 SWAP1 MSTORE PUSH1 0xE0 DUP6 ADD DUP2 SWAP1 MSTORE PUSH2 0x100 DUP6 ADD MSTORE JUMPDEST POP POP PUSH1 0x0 PUSH1 0x60 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0x80 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0xA0 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0xC0 SWAP1 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xD29 PUSH2 0x3F90 JUMP JUMPDEST PUSH2 0xD32 DUP5 PUSH2 0x1412 JUMP JUMPDEST ISZERO PUSH2 0xE22 JUMPI DUP7 PUSH2 0xFFFF AND DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ PUSH2 0xD62 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A0F JUMP JUMPDEST PUSH1 0x60 DUP5 ADD MLOAD DUP5 MLOAD PUSH1 0x40 MLOAD PUSH4 0x3643F39B PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP3 PUSH20 0x0 SWAP3 PUSH4 0x3643F39B SWAP3 PUSH2 0xDA9 SWAP3 DUP15 SWAP3 SWAP1 SWAP2 DUP14 SWAP1 DUP14 SWAP1 PUSH1 0x4 ADD PUSH2 0x47CB JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xDC0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xDD4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xDF8 SWAP2 SWAP1 PUSH2 0x43F0 JUMP JUMPDEST SWAP1 SWAP4 POP SWAP1 POP DUP1 ISZERO PUSH2 0xE1C JUMPI PUSH1 0x20 DUP6 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP PUSH2 0xEBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH4 0xB58F83ED PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0xB58F83ED SWAP1 PUSH2 0xE61 SWAP1 DUP12 SWAP1 DUP12 SWAP1 DUP9 SWAP1 DUP13 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x4744 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE79 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE8D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x0 DUP3 RETURNDATACOPY PUSH1 0x1F RETURNDATASIZE SWAP1 DUP2 ADD PUSH1 0x1F NOT AND DUP3 ADD PUSH1 0x40 MSTORE PUSH2 0xEB5 SWAP2 SWAP1 DUP2 ADD SWAP1 PUSH2 0x44BE JUMP JUMPDEST SWAP3 POP SWAP1 POP JUMPDEST SWAP7 POP SWAP7 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 ADD DUP3 DUP2 SLT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH1 0x0 NOT DUP4 PUSH2 0x1A5E JUMP JUMPDEST PUSH2 0xEF7 PUSH2 0x3FF8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0xF05 DUP6 PUSH2 0x1AAC JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x60 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP4 AND DUP4 MSTORE PUSH1 0x20 DUP4 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0xFF AND PUSH1 0xA EXP SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xF43 PUSH2 0x4022 JUMP JUMPDEST PUSH2 0xBDF DUP3 PUSH1 0x1 PUSH2 0x1B6F JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xF7F DUP5 PUSH1 0x40 ADD MLOAD PUSH2 0xF79 PUSH5 0x2540BE400 PUSH2 0xF79 DUP8 DUP10 PUSH1 0x20 ADD MLOAD PUSH2 0x1A5E SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 PUSH2 0x1C1D JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0x5F5E100 DUP4 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0xFA0 JUMPI POP DUP1 PUSH2 0xEDB JUMP JUMPDEST PUSH2 0xAA3 PUSH4 0x5F5E100 PUSH2 0xF79 DUP6 PUSH1 0x40 ADD MLOAD DUP6 PUSH2 0x1A5E SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0xFCE JUMPI POP PUSH1 0x0 PUSH2 0xAA3 JUMP JUMPDEST PUSH1 0x0 DUP3 SGT PUSH2 0xFDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xFEE DUP6 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x3 DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1002 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x102C JUMPI CALLVALUE DUP4 EQ PUSH2 0x1027 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48F8 JUMP JUMPDEST PUSH2 0x1043 JUMP JUMPDEST DUP5 MLOAD PUSH2 0x1040 SWAP1 DUP3 SWAP1 DUP7 SWAP1 PUSH2 0xFFFF AND DUP7 PUSH2 0x1C4E JUMP JUMPDEST SWAP3 POP JUMPDEST PUSH1 0x0 PUSH2 0x1056 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1073 DUP8 PUSH1 0x0 ADD MLOAD PUSH2 0x106B DUP8 PUSH2 0x1CF6 JUMP JUMPDEST DUP5 SWAP2 SWAP1 PUSH2 0x1D09 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1081 DUP4 DUP4 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x60 DUP10 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x1093 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP10 ADD MSTORE SWAP4 POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0x10AC PUSH2 0x4022 JUMP JUMPDEST PUSH2 0xBDF DUP3 PUSH1 0x0 PUSH2 0x1B6F JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x10C6 JUMPI POP PUSH1 0x0 PUSH2 0xF7F JUMP JUMPDEST PUSH1 0x0 DUP4 SGT PUSH2 0x10D3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x10E6 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP2 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x10FA JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1113 JUMPI DUP6 MLOAD PUSH2 0x1110 SWAP1 PUSH2 0xFFFF AND DUP6 PUSH2 0x1E2A JUMP JUMPDEST SWAP4 POP JUMPDEST DUP1 PUSH1 0x20 ADD MLOAD DUP1 PUSH2 0x1120 JUMPI POP DUP3 JUMPDEST ISZERO PUSH2 0x1167 JUMPI DUP6 MLOAD PUSH1 0x0 SWAP1 PUSH2 0x113C SWAP1 DUP4 SWAP1 DUP9 SWAP1 PUSH2 0xFFFF AND DUP9 PUSH2 0x1C4E JUMP JUMPDEST SWAP1 POP PUSH2 0x1148 DUP3 DUP3 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x60 DUP9 ADD MLOAD SWAP1 SWAP4 POP PUSH2 0x115A SWAP1 DUP5 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP9 ADD MSTORE POP PUSH2 0xF7F SWAP1 POP JUMP JUMPDEST PUSH2 0x1171 DUP2 DUP6 PUSH2 0x1DFA JUMP JUMPDEST PUSH1 0x80 DUP8 ADD MLOAD SWAP1 SWAP3 POP PUSH2 0x1183 SWAP1 DUP4 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x80 DUP8 ADD MSTORE POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH1 0xA0 ADD MLOAD SLT ISZERO PUSH2 0x11EA JUMPI PUSH1 0x0 PUSH2 0x11CC DUP8 PUSH1 0xA0 ADD MLOAD PUSH2 0x11C6 DUP10 PUSH1 0xC0 ADD MLOAD DUP11 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 PUSH2 0xEC5 JUMP JUMPDEST SLT ISZERO PUSH2 0x11EA JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A46 JUMP JUMPDEST PUSH1 0x0 DUP7 PUSH1 0x80 ADD MLOAD SLT ISZERO PUSH2 0x123A JUMPI PUSH1 0x0 PUSH2 0x121C DUP8 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP10 PUSH1 0x60 ADD MLOAD DUP11 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO PUSH2 0x123A JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x49ED JUMP JUMPDEST PUSH2 0x1245 DUP7 DUP7 DUP6 PUSH2 0x1EB1 JUMP JUMPDEST PUSH1 0x80 DUP9 ADD DUP2 SWAP1 MSTORE PUSH1 0x60 DUP9 ADD MLOAD SWAP2 SWAP4 POP PUSH1 0x0 SWAP2 PUSH2 0x1260 SWAP2 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x12CD JUMPI PUSH1 0x20 DUP8 ADD MLOAD PUSH2 0x1277 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x20 DUP9 ADD MSTORE DUP7 MLOAD PUSH1 0x40 MLOAD PUSH1 0x1 SWAP4 POP PUSH2 0xFFFF SWAP1 SWAP2 AND SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND SWAP1 PUSH32 0x5441E4A5FAC93A951D782E6F1CDB82E95C8FC58561A013953D17E395C5E69B4B SWAP1 PUSH2 0x12C4 SWAP1 DUP6 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST PUSH1 0xA0 DUP8 ADD MLOAD ISZERO ISZERO DUP1 PUSH2 0x12E2 JUMPI POP PUSH1 0xC0 DUP8 ADD MLOAD ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1388 JUMPI PUSH1 0x0 PUSH2 0x130C DUP9 PUSH1 0xC0 ADD MLOAD PUSH2 0x11C6 DUP11 PUSH1 0xA0 ADD MLOAD DUP12 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH2 0x1321 DUP9 DUP9 PUSH2 0x131C DUP5 PUSH2 0x1CF6 JUMP JUMPDEST PUSH2 0x1F67 JUMP JUMPDEST POP PUSH1 0x40 DUP9 ADD DUP2 SWAP1 MSTORE PUSH1 0xC0 DUP9 ADD MLOAD ISZERO PUSH2 0x1382 JUMPI DUP8 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0x412BC13D202A2EA5119E55FEC9C5E420DDDB18FAF186373AD9795AD4F4545AA9 DUP11 PUSH1 0xC0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x1379 SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST PUSH1 0x1 SWAP3 POP POP JUMPDEST DUP2 ISZERO PUSH2 0x13B5 JUMPI PUSH2 0x13B5 DUP7 DUP9 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND DUP10 PUSH1 0x20 ADD MLOAD DUP11 PUSH1 0x40 ADD MLOAD DUP12 PUSH1 0xE0 ADD MLOAD DUP13 PUSH2 0x100 ADD MLOAD PUSH2 0x204E JUMP JUMPDEST DUP7 MLOAD PUSH1 0x20 DUP9 ADD MLOAD PUSH2 0x13E2 SWAP2 PUSH2 0xFFFF AND SWAP1 ISZERO ISZERO DUP1 PUSH2 0x13D5 JUMPI POP PUSH1 0x40 DUP10 ADD MLOAD ISZERO ISZERO JUMPDEST DUP8 SWAP2 SWAP1 PUSH1 0x1 PUSH1 0xFE SHL PUSH2 0x2187 JUMP JUMPDEST PUSH1 0x0 DUP8 PUSH1 0x20 ADD MLOAD SLT ISZERO PUSH2 0x1408 JUMPI PUSH1 0x20 DUP6 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF9 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH2 0x142E DUP7 DUP9 PUSH2 0x2386 JUMP JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP13 MSTORE SWAP3 SWAP7 POP SWAP1 SWAP5 POP SWAP3 POP SWAP1 POP PUSH2 0x144B DUP9 PUSH2 0x18AE JUMP JUMPDEST ISZERO PUSH2 0x1455 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP3 AND PUSH1 0x40 DUP10 ADD MSTORE DUP5 PUSH2 0x1474 JUMPI PUSH1 0x7 PUSH1 0xFF DUP4 AND GT ISZERO PUSH2 0x1474 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x1497 JUMPI PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE PUSH2 0x14A6 JUMP JUMPDEST PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x7F PUSH1 0xF9 SHL AND SWAP1 MSTORE JUMPDEST PUSH2 0x14B3 DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x25C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP10 ADD MSTORE PUSH1 0x0 JUMPDEST DUP4 ISZERO PUSH2 0x14F6 JUMPI PUSH1 0xF0 DUP5 SWAP1 SHR DUP2 DUP2 EQ PUSH2 0x14E8 JUMPI PUSH2 0x14E8 DUP11 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL PUSH2 0x2187 JUMP JUMPDEST PUSH1 0x10 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 POP PUSH2 0x14C5 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150B PUSH2 0x2640 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP4 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP9 MLOAD DUP2 SLOAD SWAP4 DUP11 ADD MLOAD DUP4 DUP12 ADD MLOAD PUSH1 0x60 DUP13 ADD MLOAD PUSH1 0x80 DUP14 ADD MLOAD PUSH1 0x70 SHR PUSH1 0x1 PUSH1 0x48 SHL MUL PUSH27 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000 NOT PUSH2 0xFFFF SWAP1 SWAP3 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH9 0xFFFF00000000000000 NOT PUSH1 0xFF SWAP5 SWAP1 SWAP5 AND PUSH1 0x1 PUSH1 0x30 SHL MUL PUSH7 0xFF000000000000 NOT PUSH1 0xF8 SWAP7 SWAP1 SWAP7 SHR PUSH6 0x10000000000 MUL PUSH6 0xFF0000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP9 AND PUSH5 0xFFFFFFFFFF NOT SWAP1 SWAP12 AND SWAP11 SWAP1 SWAP11 OR SWAP7 SWAP1 SWAP7 AND SWAP9 SWAP1 SWAP9 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR AND SWAP5 SWAP1 SWAP5 OR AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE MLOAD SWAP3 SWAP4 POP SWAP1 SWAP2 PUSH32 0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E SWAP2 SWAP1 LOG2 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1610 DUP3 PUSH2 0x264D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x1621 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x162F JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x163C JUMPI POP POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x1 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x164A JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x1661 JUMPI POP PUSH1 0x3 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x165F JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x167A JUMPI PUSH2 0x1673 DUP6 DUP8 DUP5 PUSH1 0x0 PUSH2 0x10B7 JUMP JUMPDEST SWAP1 POP PUSH2 0x16C6 JUMP JUMPDEST PUSH1 0x2 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x1688 JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x169F JUMPI POP PUSH1 0x4 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x169D JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x16AF JUMPI PUSH2 0x1673 DUP6 DUP8 DUP5 PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x6 DUP5 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x16BD JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x16C6 JUMPI POP DUP1 JUMPDEST PUSH2 0x666 DUP6 DUP6 DUP5 DUP5 PUSH2 0x2663 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16E3 DUP5 PUSH2 0x264D JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x16F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 ISZERO PUSH2 0x172B JUMPI PUSH2 0x171C DUP6 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP8 PUSH1 0x60 ADD MLOAD DUP9 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x172B JUMPI POP PUSH1 0x0 JUMPDEST PUSH1 0x80 DUP6 ADD MLOAD PUSH2 0x173A SWAP1 DUP3 PUSH2 0x287E JUMP JUMPDEST PUSH1 0x80 DUP7 ADD MSTORE PUSH2 0x174B DUP6 DUP9 DUP9 DUP6 PUSH2 0x1191 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x1766 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP8 SWAP1 SWAP8 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP5 KECCAK256 SLOAD PUSH2 0xFFFF DUP2 AND SWAP6 PUSH4 0xFFFFFFFF PUSH3 0x10000 DUP4 DIV DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x30 SHL DUP4 DIV AND SWAP5 POP PUSH1 0xFF PUSH1 0x1 PUSH1 0x50 SHL DUP4 DIV AND SWAP4 POP PUSH1 0x1 PUSH1 0x58 SHL SWAP1 SWAP2 DIV PUSH1 0xD8 SHL SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLT ISZERO DUP1 ISZERO PUSH2 0x17F1 JUMPI POP DUP1 PUSH2 0x17EE DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x11C6 DUP6 PUSH1 0x60 ADD MLOAD DUP7 PUSH1 0x20 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO JUMPDEST PUSH2 0x8EB JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x4A6A JUMP JUMPDEST PUSH2 0x1815 PUSH2 0x3F62 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x181F PUSH2 0x2640 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP4 DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP2 MLOAD PUSH1 0xA0 DUP2 ADD DUP4 MSTORE SWAP1 SLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP3 MSTORE PUSH6 0x10000000000 DUP2 DIV PUSH1 0xF8 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP6 DUP3 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x1 PUSH1 0x30 SHL DUP6 DIV PUSH1 0xFF AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1 PUSH1 0x38 SHL DUP5 DIV PUSH2 0xFFFF AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x48 SHL SWAP1 SWAP4 DIV PUSH1 0x70 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 TIMESTAMP PUSH2 0x18BA DUP4 PUSH2 0x1412 JUMP JUMPDEST ISZERO PUSH2 0x18DB JUMPI PUSH2 0x18C8 DUP2 PUSH2 0x28A1 JUMP JUMPDEST DUP4 MLOAD PUSH5 0xFFFFFFFFFF AND LT SWAP2 POP PUSH2 0xBE2 SWAP1 POP JUMP JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND ISZERO DUP1 ISZERO SWAP1 PUSH2 0xBD7 JUMPI POP DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND GT ISZERO SWAP1 POP PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x190D DUP5 DUP5 PUSH2 0x28BF JUMP JUMPDEST SWAP1 POP PUSH1 0x1 DUP2 MLOAD GT PUSH2 0x191F JUMPI SWAP1 POP PUSH2 0xEDB JUMP JUMPDEST PUSH2 0xAA3 DUP2 PUSH2 0x29E0 JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO DUP1 ISZERO SWAP1 PUSH2 0x193B JUMPI POP PUSH2 0x3FFF DUP3 GT ISZERO JUMPDEST PUSH2 0x1944 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x80 DUP4 ADD MLOAD PUSH1 0x60 DUP5 ADD MLOAD PUSH2 0xFFFF AND DUP4 EQ ISZERO PUSH2 0x1963 JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND ISZERO PUSH2 0x19A8 JUMPI PUSH1 0xF0 DUP2 SWAP1 SHR PUSH2 0x3FFF AND DUP4 DUP2 EQ ISZERO PUSH2 0x1995 JUMPI POP PUSH1 0x1 PUSH1 0xFE SHL SWAP1 DUP2 AND EQ SWAP1 POP PUSH2 0xEDB JUMP JUMPDEST POP PUSH1 0x10 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH2 0x1963 JUMP JUMPDEST POP PUSH1 0x0 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x19C2 PUSH2 0x2B98 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x50 SHL SWAP1 DIV PUSH4 0xFFFFFFFF AND SWAP5 POP SWAP1 SWAP2 POP DUP4 ISZERO PUSH2 0x1A2E JUMPI DUP1 SLOAD PUSH2 0x1A27 SWAP1 PUSH1 0x1 PUSH1 0x70 SHL SWAP1 DIV PUSH7 0xFFFFFFFFFFFFFF AND PUSH2 0x2BA5 JUMP JUMPDEST SWAP3 POP PUSH2 0x1A43 JUMP JUMPDEST DUP1 SLOAD PUSH1 0x1 PUSH1 0x70 SHL SWAP1 DIV PUSH7 0xFFFFFFFFFFFFFF AND SWAP3 POP JUMPDEST SLOAD PUSH1 0x1 PUSH1 0xA8 SHL SWAP1 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND SWAP8 SWAP4 SWAP7 POP SWAP2 SWAP5 POP SWAP3 POP POP JUMP JUMPDEST DUP2 DUP2 MUL PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x1A8E JUMPI DUP2 ISZERO DUP1 PUSH2 0x1A80 JUMPI POP DUP3 DUP3 DUP3 DUP2 PUSH2 0x1A7D JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x1A89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xEDB JUMP JUMPDEST DUP3 ISZERO DUP1 PUSH2 0x1AA3 JUMPI POP DUP2 DUP4 DUP3 DUP2 PUSH2 0x1AA0 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1ABD DUP7 PUSH2 0x2BB3 JUMP JUMPDEST SWAP1 SWAP3 POP SWAP1 POP PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH2 0x1AE2 JUMPI POP PUSH1 0x0 SWAP1 POP PUSH5 0x2540BE400 PUSH2 0x1B64 JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1EE10833 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1B1D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1B31 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1B55 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SGT PUSH2 0x1B64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP7 SWAP2 SWAP6 POP SWAP4 POP SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1B77 PUSH2 0x4022 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B81 PUSH2 0x2BEA JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP8 ISZERO ISZERO DUP5 MSTORE DUP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP3 MLOAD PUSH1 0xA0 DUP2 ADD DUP5 MSTORE DUP2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0xA0 SHL DUP3 DIV DUP2 AND ISZERO ISZERO SWAP5 DUP4 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH1 0x1 PUSH1 0xB0 SHL DUP2 DIV DUP5 AND PUSH1 0xA EXP SWAP5 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE SWAP4 SWAP5 POP SWAP3 SWAP2 PUSH1 0x60 DUP4 ADD SWAP2 PUSH1 0x1 PUSH1 0xA8 SHL SWAP1 SWAP2 DIV AND PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1BF6 JUMPI INVALID JUMPDEST DUP2 MSTORE SWAP2 SLOAD PUSH1 0x1 PUSH1 0xB8 SHL SWAP1 DIV PUSH9 0xFFFFFFFFFFFFFFFFFF AND PUSH1 0x20 SWAP1 SWAP3 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 NOT EQ DUP1 ISZERO PUSH2 0x1C33 JUMPI POP PUSH1 0x1 PUSH1 0xFF SHL DUP4 EQ JUMPDEST ISZERO PUSH2 0x1C3D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x1C46 JUMPI INVALID JUMPDEST SDIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x5 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1C61 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1C86 JUMPI PUSH1 0x0 PUSH2 0x1C72 DUP5 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH2 0x1C82 DUP2 PUSH1 0x0 ADD MLOAD DUP5 PUSH2 0x2BF7 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH1 0x0 DUP3 SGT ISZERO PUSH2 0x1CB2 JUMPI PUSH1 0x0 PUSH2 0x1C9C DUP7 DUP7 DUP6 PUSH2 0x2C89 JUMP JUMPDEST SWAP1 POP DUP6 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x1CAC JUMPI DUP1 SWAP2 POP JUMPDEST POP PUSH2 0xF7F JUMP JUMPDEST PUSH1 0x3 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1CC4 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1CE1 JUMPI PUSH2 0x1CDC DUP5 PUSH2 0x1CD7 DUP5 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2D7C JUMP JUMPDEST PUSH2 0xF7F JUMP JUMPDEST DUP5 MLOAD PUSH2 0xF7F SWAP1 DUP6 PUSH2 0x1CF1 DUP6 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2DB7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x1D05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x5 DUP6 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D1E JUMPI INVALID JUMPDEST EQ PUSH2 0x1D30 JUMPI PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x1D39 JUMP JUMPDEST PUSH4 0xED1279F PUSH1 0xE1 SHL JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1D4C DUP7 PUSH1 0x0 ADD MLOAD ADDRESS DUP5 PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D60 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1D87 JUMPI PUSH1 0x0 PUSH2 0x1D75 DUP7 PUSH2 0xFFFF AND PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH2 0x1D81 DUP2 DUP7 PUSH2 0x2F40 JUMP JUMPDEST POP PUSH2 0x1DCA JUMP JUMPDEST PUSH1 0x1 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1D99 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x1DA9 JUMPI PUSH2 0x1D81 DUP7 DUP6 PUSH2 0x2FAB JUMP JUMPDEST PUSH1 0x2 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x1DBB JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x7B JUMPI PUSH2 0x1DCA DUP7 PUSH2 0x3057 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DDB DUP8 PUSH1 0x0 ADD MLOAD ADDRESS DUP6 PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH2 0x1DEF PUSH2 0x1DEA DUP3 DUP5 PUSH2 0x3096 JUMP JUMPDEST PUSH2 0x264D JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0x5F5E100 DUP4 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x1E13 JUMPI POP DUP1 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0xAA3 SWAP1 PUSH2 0xF79 DUP5 PUSH4 0x5F5E100 PUSH2 0x1A5E JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x1E39 JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x0 DUP3 SGT PUSH2 0x1E46 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1E51 DUP5 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E62 DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x30F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x2 DUP2 SDIV PUSH12 0x33B2E3C9FD0803CE8000000 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 SWAP1 SUB SDIV DUP6 SGT ISZERO PUSH2 0x1E8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP2 PUSH12 0x33B2E3C9FD0803CE8000000 DUP8 MUL ADD DUP2 PUSH2 0x1EA6 JUMPI INVALID JUMPDEST SDIV SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1EC7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0xFFFF AND PUSH2 0x10A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1EE2 DUP8 PUSH1 0x80 ADD MLOAD DUP4 PUSH2 0xF87 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP DUP1 PUSH2 0x1EF7 JUMPI PUSH1 0x0 DUP1 SWAP4 POP SWAP4 POP POP POP PUSH2 0x1F5F JUMP JUMPDEST DUP5 DUP1 ISZERO PUSH2 0x1F04 JUMPI POP PUSH1 0x0 DUP2 SLT JUMPDEST ISZERO PUSH2 0x1F39 JUMPI DUP7 MLOAD PUSH2 0x1F26 SWAP1 PUSH2 0xFFFF AND DUP8 PUSH2 0x1F1D DUP5 PUSH2 0xEE1 JUMP JUMPDEST DUP6 SWAP3 SWAP2 SWAP1 PUSH2 0x317E JUMP JUMPDEST SWAP4 POP PUSH2 0x1F32 DUP3 DUP3 PUSH2 0x1DFA JUMP JUMPDEST SWAP3 POP PUSH2 0x1F5C JUMP JUMPDEST DUP7 MLOAD PUSH2 0x1F4D SWAP1 DUP4 SWAP1 DUP9 SWAP1 PUSH2 0xFFFF AND DUP5 PUSH2 0x1C4E JUMP JUMPDEST SWAP4 POP PUSH2 0x1F59 DUP3 DUP6 PUSH2 0x1DFA JUMP JUMPDEST SWAP3 POP JUMPDEST POP POP JUMPDEST SWAP4 POP SWAP4 SWAP2 POP POP JUMP JUMPDEST DUP3 MLOAD PUSH1 0x0 SWAP1 TIMESTAMP SWAP1 DUP3 SWAP1 PUSH2 0x1F7D SWAP1 PUSH2 0xFFFF AND PUSH2 0x3214 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F90 DUP3 DUP9 PUSH1 0xC0 ADD MLOAD DUP6 PUSH2 0x323A JUMP JUMPDEST SWAP1 POP PUSH2 0x1F9E DUP8 DUP4 DUP4 DUP9 PUSH2 0x331D JUMP JUMPDEST SWAP4 POP PUSH1 0x0 PUSH2 0x1FAB DUP4 PUSH2 0x344A JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ISZERO PUSH2 0x2033 JUMPI DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x9FC27B92 DUP9 PUSH2 0x1FD9 DUP12 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST DUP10 DUP13 PUSH1 0xC0 ADD MLOAD DUP11 PUSH1 0x40 MLOAD DUP7 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2000 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4857 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x201A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x202E JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP5 ISZERO PUSH2 0x2043 JUMPI PUSH2 0x2043 DUP8 DUP7 PUSH2 0x34BC JUMP JUMPDEST POP POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2058 PUSH2 0x2B98 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SWAP1 SWAP2 POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP7 SLT DUP1 ISZERO SWAP1 PUSH2 0x20A3 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP7 SGT ISZERO JUMPDEST PUSH2 0x20AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP6 SLT ISZERO DUP1 ISZERO PUSH2 0x20C7 JUMPI POP PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP6 SGT ISZERO JUMPDEST PUSH2 0x20D0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x20DB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH7 0xFFFFFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x20EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 SLOAD PUSH7 0xFFFFFFFFFFFFFF SWAP1 SWAP4 AND PUSH1 0x1 PUSH1 0x70 SHL MUL PUSH7 0xFFFFFFFFFFFFFF PUSH1 0x70 SHL NOT PUSH1 0xA SWAP8 SWAP1 SWAP8 SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0xA8 SHL MUL PUSH1 0x1 PUSH1 0x1 PUSH1 0xA8 SHL SUB PUSH4 0xFFFFFFFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x50 SHL MUL PUSH4 0xFFFFFFFF PUSH1 0x50 SHL NOT PUSH10 0xFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP9 AND PUSH10 0xFFFFFFFFFFFFFFFFFFFF NOT SWAP1 SWAP7 AND SWAP6 SWAP1 SWAP6 OR SWAP7 SWAP1 SWAP7 AND SWAP4 SWAP1 SWAP4 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR SWAP4 SWAP1 SWAP4 AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2199 JUMPI POP PUSH2 0x3FFF DUP4 GT ISZERO JUMPDEST PUSH2 0x21A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP1 ISZERO PUSH2 0x21B6 JUMPI POP DUP3 DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ JUMPDEST ISZERO PUSH2 0x21C0 JUMPI PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x80 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x233B JUMPI PUSH1 0xF0 DUP3 SWAP1 SHR PUSH2 0x3FFF AND DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x21EF JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x2227 JUMPI POP PUSH1 0x80 DUP8 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP7 AND PUSH1 0x10 SWAP1 SWAP4 MUL SWAP3 SWAP1 SWAP3 SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 MSTORE POP PUSH2 0x16D2 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x2234 JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x2289 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP6 AND NOT SWAP3 SWAP1 SWAP3 AND SWAP2 PUSH1 0x3 PUSH1 0xFE SHL DUP4 AND PUSH2 0x2267 JUMPI PUSH1 0x10 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP3 POP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x16D2 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x2295 JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x22EF JUMPI PUSH1 0x80 DUP9 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP11 SWAP1 SHL DUP9 OR DUP2 AND PUSH1 0x10 DUP7 MUL SHR SWAP7 SWAP1 SWAP7 OR SWAP6 SWAP2 SHL AND ISZERO PUSH2 0x22C9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x1 SWAP2 SWAP1 SWAP2 ADD PUSH1 0x10 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x16D2 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x22FC JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x230A JUMPI POP POP POP POP PUSH2 0x16D2 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND PUSH1 0x10 DUP3 DUP2 MUL SWAP2 SWAP1 SWAP2 SHR SWAP4 SWAP1 SWAP4 OR SWAP3 SWAP2 SWAP1 SWAP2 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND SWAP1 PUSH1 0x1 ADD PUSH2 0x21CA JUMP JUMPDEST DUP5 PUSH2 0x2348 JUMPI POP POP POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x9 DUP2 LT PUSH2 0x2355 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP8 SWAP1 SHL DUP6 OR AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2417 JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x23AC JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x23C2 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23D2 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x23DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23EF JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x23FF JUMPI POP PUSH1 0x60 DUP2 ADD MLOAD ISZERO JUMPDEST ISZERO PUSH2 0x240E JUMPI PUSH2 0x240E DUP12 DUP4 PUSH2 0x34DB JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2390 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x24BA JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2437 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x244E JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x245E JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x2472 JUMPI PUSH1 0x80 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 SSTORE PUSH2 0x24B1 JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2484 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x249D JUMPI PUSH1 0x80 DUP2 ADD MLOAD DUP1 PUSH2 0x249A DUP4 DUP3 PUSH2 0x362A JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x24A9 DUP2 DUP7 DUP7 DUP7 PUSH2 0x375B JUMP JUMPDEST SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x241B JUMP JUMPDEST POP PUSH1 0x60 DUP10 ADD MLOAD PUSH1 0x0 PUSH2 0x24CA PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP12 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP JUMPDEST DUP13 PUSH1 0x20 ADD MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2594 JUMPI PUSH1 0x0 DUP14 PUSH1 0x20 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2505 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x2522 JUMPI POP PUSH2 0x258C JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2534 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2552 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x254F JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x255B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2567 DUP2 DUP10 DUP10 DUP10 PUSH2 0x375B JUMP JUMPDEST SWAP2 SWAP10 POP SWAP8 POP SWAP6 POP PUSH2 0x2584 DUP2 DUP5 DUP8 PUSH1 0x10 DUP2 LT PUSH2 0x257E JUMPI INVALID JUMPDEST ADD PUSH2 0x362A JUMP JUMPDEST PUSH1 0x1 DUP6 ADD SWAP5 POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x24E6 JUMP JUMPDEST POP PUSH1 0x10 DUP4 GT ISZERO DUP1 ISZERO PUSH2 0x25AB JUMPI POP PUSH5 0xFFFFFFFFFF DUP5 GT ISZERO JUMPDEST PUSH2 0x25B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP4 SWAP11 SWAP3 SWAP10 POP SWAP8 POP SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000 DUP4 AND DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x2637 JUMPI PUSH1 0x1 PUSH1 0xFE SHL DUP3 DUP2 AND EQ ISZERO PUSH2 0x2621 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND DUP2 SHR SWAP3 SWAP1 SWAP3 OR SWAP2 PUSH1 0x10 ADD JUMPDEST PUSH1 0x10 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP2 POP PUSH2 0x25ED JUMP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x1 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 GT ISZERO PUSH2 0x1D05 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2671 JUMPI INVALID JUMPDEST EQ DUP1 PUSH2 0x2688 JUMPI POP PUSH1 0x4 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2686 JUMPI INVALID JUMPDEST EQ JUMPDEST DUP1 PUSH2 0x269E JUMPI POP PUSH1 0x6 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x269C JUMPI INVALID JUMPDEST EQ JUMPDEST ISZERO PUSH2 0x276A JUMPI PUSH2 0x26AD DUP5 DUP3 PUSH2 0x17BE JUMP JUMPDEST PUSH1 0x60 DUP5 ADD MLOAD PUSH2 0x26BC SWAP1 DUP3 PUSH2 0x287E JUMP JUMPDEST PUSH1 0x60 DUP6 ADD MSTORE DUP4 MLOAD PUSH1 0x40 MLOAD PUSH4 0x21285613 PUSH1 0xE1 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 PUSH20 0x0 SWAP2 PUSH4 0x4250AC26 SWAP2 PUSH2 0x26FD SWAP2 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x4AC3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2715 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2729 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x274D SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0xC0 DUP7 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x275F SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0xC0 DUP7 ADD MSTORE POP PUSH2 0x16D2 JUMP JUMPDEST PUSH1 0x5 DUP4 PUSH1 0x6 DUP2 GT ISZERO PUSH2 0x2778 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x16D2 JUMPI DUP2 PUSH2 0x27A2 DUP6 PUSH1 0xC0 ADD MLOAD PUSH2 0x11C6 DUP8 PUSH1 0xA0 ADD MLOAD DUP9 PUSH1 0x40 ADD MLOAD PUSH2 0xEC5 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SLT ISZERO PUSH2 0x27C0 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x498E JUMP JUMPDEST PUSH1 0xC0 DUP5 ADD MLOAD PUSH2 0x27CF SWAP1 DUP4 PUSH2 0x287E JUMP JUMPDEST PUSH1 0xC0 DUP6 ADD MSTORE DUP4 MLOAD PUSH1 0x40 MLOAD PUSH4 0x52E73F77 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 PUSH20 0x0 SWAP2 PUSH4 0x52E73F77 SWAP2 PUSH2 0x2810 SWAP2 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x4AC3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2828 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x283C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2860 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x2872 SWAP1 DUP3 PUSH2 0xEC5 JUMP JUMPDEST PUSH1 0x60 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST DUP1 DUP3 SUB DUP3 DUP2 SGT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0xEDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x2 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x15180 DUP3 LT ISZERO PUSH2 0x28B3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x15180 DUP2 MOD SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x10 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x28D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x28DC PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH1 0xFF DUP6 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x2910 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x294A JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x2937 PUSH2 0x3FB8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x292F JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x29D6 JUMPI PUSH1 0x0 DUP4 DUP3 PUSH1 0x10 DUP2 LT PUSH2 0x2969 JUMPI INVALID JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x297A JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD DUP4 SLOAD PUSH2 0xFFFF DUP2 AND DUP3 MSTORE PUSH5 0xFFFFFFFFFF PUSH3 0x10000 DUP3 DIV AND SWAP3 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0x38 SHL DUP4 DIV AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x40 SHL SWAP1 SWAP2 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH1 0x1 ADD PUSH2 0x2950 JUMP JUMPDEST POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x29FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x2A24 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x2A81 JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2A40 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x2A61 DUP2 PUSH1 0x0 ADD MLOAD DUP3 PUSH1 0x20 ADD MLOAD DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0x37E0 JUMP JUMPDEST DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2A6D JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE POP PUSH1 0x1 ADD PUSH2 0x2A2A JUMP JUMPDEST POP PUSH1 0x1 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x16D2 JUMPI DUP1 JUMPDEST PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x2AC7 JUMPI POP DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2AA6 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2ABD JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2B8F JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2AD8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2AEF JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B06 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2B19 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP3 DUP2 MSTORE POP DUP3 DUP2 MSTORE POP POP POP DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2B36 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B4D JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP7 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x2B64 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP8 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x2B77 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD SWAP2 SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x0 NOT ADD PUSH2 0x2A8F JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2A85 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x6 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x8 DUP2 SWAP1 SHR PUSH1 0xFF SWAP1 SWAP2 AND SHL SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x2BC0 PUSH2 0x383B JUMP JUMPDEST PUSH1 0x0 SWAP5 DUP6 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP2 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND SWAP3 PUSH1 0x1 PUSH1 0xA0 SHL SWAP1 SWAP2 DIV PUSH1 0xFF AND SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x7 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x2C06 JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C11 DUP5 PUSH2 0x30F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2C1E DUP5 PUSH2 0x3848 JUMP JUMPDEST SWAP1 POP DUP2 PUSH12 0x19D971E4FE8401E74000001 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP2 PUSH2 0x2C3B JUMPI INVALID JUMPDEST SDIV DUP2 SGT ISZERO PUSH2 0x2C48 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH12 0x33B2E3C9FD0803CE8000000 PUSH12 0x19D971E4FE8401E74000000 DUP4 DUP4 MUL ADD SDIV PUSH1 0x0 DUP6 SGT PUSH2 0x2C7D JUMPI PUSH2 0x2C78 DUP2 PUSH2 0xEE1 JUMP JUMPDEST PUSH2 0x2C7F JUMP JUMPDEST DUP1 JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH1 0x5 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x2CA0 JUMPI INVALID JUMPDEST EQ PUSH2 0x2CB2 JUMPI PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2CBB JUMP JUMPDEST PUSH4 0xED1279F PUSH1 0xE1 SHL JUMPDEST SWAP1 POP DUP7 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x2CD7 JUMPI DUP7 MLOAD PUSH2 0x2CD4 SWAP1 ADDRESS DUP4 PUSH2 0x2E2E JUMP JUMPDEST SWAP3 POP JUMPDEST DUP7 MLOAD PUSH2 0x2CE4 SWAP1 DUP8 DUP8 PUSH2 0x3869 JUMP JUMPDEST DUP7 PUSH1 0x20 ADD MLOAD DUP1 PUSH2 0x2CF8 JUMPI POP PUSH1 0x0 DUP8 PUSH1 0x80 ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2D0D JUMPI DUP7 MLOAD PUSH2 0x2D0A SWAP1 ADDRESS DUP4 PUSH2 0x2E2E JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x80 DUP8 ADD MLOAD ISZERO PUSH2 0x2D48 JUMPI PUSH1 0x0 PUSH2 0x2D2B DUP9 PUSH2 0x2D26 DUP6 PUSH2 0x264D JUMP JUMPDEST PUSH2 0x1DFA JUMP JUMPDEST SWAP1 POP PUSH2 0x2D3A DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x264D JUMP JUMPDEST DUP2 SGT ISZERO PUSH2 0x2D46 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMPDEST DUP7 PUSH1 0x20 ADD MLOAD ISZERO PUSH2 0x2D69 JUMPI PUSH2 0x2D5F PUSH2 0x1DEA DUP4 DUP6 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP POP POP POP PUSH2 0xAA3 JUMP JUMPDEST PUSH2 0x2D5F DUP6 PUSH2 0x264D JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND SWAP1 DUP3 ISZERO PUSH2 0x8FC MUL SWAP1 DUP4 SWAP1 PUSH1 0x0 DUP2 DUP2 DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x2DB2 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2E22 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH2 0x2DB2 PUSH2 0x38C1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 DUP2 AND PUSH1 0x24 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP4 MLOAD DUP1 DUP5 SUB SWAP1 SWAP2 ADD DUP2 MSTORE PUSH1 0x44 SWAP1 SWAP3 ADD DUP4 MSTORE PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP7 AND OR DUP2 MSTORE SWAP3 MLOAD DUP3 MLOAD PUSH1 0x0 SWAP5 DUP6 SWAP5 DUP6 SWAP5 DUP11 AND SWAP4 SWAP1 SWAP3 SWAP1 SWAP2 DUP3 SWAP2 DUP1 DUP4 DUP4 JUMPDEST PUSH1 0x20 DUP4 LT PUSH2 0x2EAB JUMPI DUP1 MLOAD DUP3 MSTORE PUSH1 0x1F NOT SWAP1 SWAP3 ADD SWAP2 PUSH1 0x20 SWAP2 DUP3 ADD SWAP2 ADD PUSH2 0x2E8C JUMP JUMPDEST PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB DUP1 NOT DUP3 MLOAD AND DUP2 DUP5 MLOAD AND DUP1 DUP3 OR DUP6 MSTORE POP POP POP POP POP POP SWAP1 POP ADD SWAP2 POP POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x2F0B JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x2F10 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x2F1F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x2F34 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x2F48 PUSH2 0x392E JUMP JUMPDEST SLOAD DUP3 MLOAD PUSH1 0x40 MLOAD PUSH4 0xE8EDA9DF PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 PUSH4 0xE8EDA9DF SWAP2 PUSH2 0x2F7D SWAP2 DUP6 SWAP1 ADDRESS SWAP1 PUSH1 0x0 SWAP1 PUSH1 0x4 ADD PUSH2 0x482A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2F97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x666 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xA0712D68 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2FDE SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2FF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x300C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3030 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x3050 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x48DA JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0x1249C58B CALLVALUE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2F97 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x30ED JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH2 0x3100 PUSH2 0x392E JUMP JUMPDEST SLOAD PUSH1 0x40 MLOAD PUSH4 0xD15E0053 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND SWAP1 PUSH4 0xD15E0053 SWAP1 PUSH2 0x312E SWAP1 DUP7 SWAP1 PUSH1 0x4 ADD PUSH2 0x4641 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3146 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x315A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x1DEA SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 DUP7 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x3193 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x31AB JUMPI PUSH2 0x31A4 DUP7 DUP6 DUP6 PUSH2 0x393B JUMP JUMPDEST SWAP1 POP PUSH2 0x3208 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31B6 DUP7 PUSH2 0xF3B JUMP JUMPDEST SWAP1 POP PUSH1 0x5 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x31CA JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x31E2 JUMPI PUSH2 0x31DB DUP2 DUP7 DUP7 PUSH2 0x39F8 JUMP JUMPDEST SWAP2 POP PUSH2 0x3206 JUMP JUMPDEST PUSH1 0x1 DUP8 PUSH1 0x60 ADD MLOAD PUSH1 0x5 DUP2 GT ISZERO PUSH2 0x31F4 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x7B JUMPI PUSH2 0x31DB DUP8 DUP3 DUP8 DUP8 PUSH2 0x3AAE JUMP JUMPDEST POP JUMPDEST PUSH2 0x2C7F PUSH2 0x3EA DUP3 PUSH2 0x264D JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x321F PUSH2 0x3BAC JUMP JUMPDEST PUSH1 0x0 SWAP4 DUP5 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3249 DUP7 DUP6 PUSH2 0x3BB9 JUMP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH1 0x0 PUSH2 0x3258 PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP9 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH2 0x327D DUP6 DUP10 PUSH2 0xEC5 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x0 SGT ISZERO DUP1 ISZERO PUSH2 0x3296 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP2 LT JUMPDEST PUSH2 0x329F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 SLOAD PUSH12 0xFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP3 AND OR PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH1 0x60 SHL NOT AND PUSH1 0x1 PUSH1 0x60 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP7 AND MUL OR DUP3 SSTORE PUSH4 0xFFFFFFFF DUP8 LT PUSH2 0x32F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 SLOAD PUSH4 0xFFFFFFFF DUP8 AND PUSH1 0x1 PUSH1 0xE0 SHL MUL PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB SWAP1 SWAP2 AND OR SWAP1 SSTORE POP SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0xE0 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 ISZERO PUSH2 0x33DE JUMPI PUSH20 0x0 PUSH4 0xE0C01A72 DUP6 PUSH2 0x3352 DUP9 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST DUP9 PUSH1 0xE0 ADD MLOAD DUP10 PUSH2 0x100 ADD MLOAD PUSH1 0x40 MLOAD DUP6 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x337C SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x4885 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3394 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x33A8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x33CC SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP8 ADD DUP2 SWAP1 MSTORE PUSH2 0x100 DUP8 ADD MSTORE SWAP1 POP JUMPDEST PUSH2 0x3420 PUSH2 0x3419 DUP7 PUSH2 0x100 ADD MLOAD PUSH2 0x3413 PUSH8 0xDE0B6B3A7640000 PUSH2 0x340D DUP9 PUSH2 0x3407 DUP13 PUSH1 0x40 ADD MLOAD PUSH2 0x1CF6 JUMP JUMPDEST SWAP1 PUSH2 0x3C5C JUMP JUMPDEST SWAP1 PUSH2 0x3CB5 JUMP JUMPDEST SWAP1 PUSH2 0x3096 JUMP JUMPDEST DUP3 SWAP1 PUSH2 0x3D1C JUMP JUMPDEST SWAP1 POP PUSH2 0x3438 PUSH8 0xDE0B6B3A7640000 PUSH2 0x340D DUP5 DUP7 PUSH2 0x3C5C JUMP JUMPDEST DUP6 PUSH2 0x100 ADD DUP2 DUP2 MSTORE POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3455 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD SWAP2 SWAP3 POP SWAP1 PUSH1 0x1 PUSH1 0xF8 SHL SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x34B1 JUMPI PUSH2 0x348A PUSH2 0x3D76 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 SLOAD AND SWAP3 POP PUSH2 0xBE2 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 SWAP3 POP POP POP PUSH2 0xBE2 JUMP JUMPDEST PUSH2 0x8EB PUSH20 0xCFEAEAD4947F0705A14EC42AC3D44129E1EF3ED5 DUP4 DUP4 PUSH2 0x2DB7 JUMP JUMPDEST DUP2 MLOAD MLOAD DUP2 LT PUSH2 0x34E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x60 ADD MLOAD GT PUSH2 0x34FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x350C JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3523 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3533 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x3551 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x354E JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x355A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ADD DUP1 MLOAD PUSH1 0x0 NOT ADD SWAP1 MSTORE PUSH1 0x0 DUP1 DUP1 JUMPDEST DUP6 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x35CD JUMPI PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3587 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP3 DUP2 PUSH1 0x80 ADD MLOAD GT DUP1 ISZERO PUSH2 0x35B4 JUMPI POP PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x35B1 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST ISZERO PUSH2 0x35C4 JUMPI DUP1 PUSH1 0x80 ADD MLOAD SWAP3 POP DUP2 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x356B JUMP JUMPDEST POP DUP2 DUP5 EQ ISZERO PUSH2 0x35E6 JUMPI POP POP PUSH1 0x2 PUSH1 0xA0 SWAP2 SWAP1 SWAP2 ADD MSTORE PUSH2 0x8EB JUMP JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x0 ADD MLOAD DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x35F8 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x80 DUP6 DUP2 ADD DUP1 MLOAD SWAP2 DUP4 ADD DUP1 MLOAD SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP2 DUP3 ADD MSTORE PUSH1 0x2 SWAP5 ADD SWAP4 SWAP1 SWAP4 MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x363D JUMPI POP DUP2 MLOAD PUSH2 0x3FFF LT ISZERO JUMPDEST PUSH2 0x3646 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x3663 JUMPI POP PUSH1 0x20 DUP3 ADD MLOAD PUSH5 0xFFFFFFFFFF LT ISZERO JUMPDEST PUSH2 0x366C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x3685 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x368E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT SGT DUP1 ISZERO SWAP1 PUSH2 0x36BD JUMPI POP PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF SLT ISZERO JUMPDEST PUSH2 0x36C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 DUP5 ADD MLOAD PUSH1 0x40 DUP6 ADD MLOAD PUSH1 0x60 SWAP1 SWAP6 ADD MLOAD PUSH1 0xA SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 SHL MUL PUSH19 0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000 NOT PUSH1 0xFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH8 0xFF00000000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP4 AND PUSH3 0x10000 MUL PUSH7 0xFFFFFFFFFF0000 NOT PUSH2 0xFFFF SWAP1 SWAP7 AND PUSH2 0xFFFF NOT SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 OR SWAP5 SWAP1 SWAP5 AND SWAP3 SWAP1 SWAP3 OR AND SWAP2 SWAP1 SWAP2 OR SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x376A DUP9 PUSH2 0x3D83 JUMP JUMPDEST SWAP1 POP DUP5 ISZERO DUP1 PUSH2 0x3778 JUMPI POP DUP1 DUP6 GT JUMPDEST ISZERO PUSH2 0x3781 JUMPI DUP1 SWAP5 POP JUMPDEST DUP7 DUP1 PUSH2 0x3791 JUMPI POP PUSH1 0x0 DUP9 PUSH1 0x60 ADD MLOAD SLT JUMPDEST SWAP7 POP PUSH2 0xFFFF DUP7 AND ISZERO PUSH2 0x37A2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP SWAP5 MLOAD SWAP4 SWAP6 PUSH1 0x10 SWAP4 SWAP1 SWAP4 SHR PUSH1 0xF0 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 SWAP4 OR SWAP4 POP SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0xD JUMPDEST PUSH1 0x0 PUSH3 0xF4240 DUP3 PUSH1 0x13 DUP2 GT ISZERO PUSH2 0x37D9 JUMPI INVALID JUMPDEST ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFF DUP5 GT ISZERO PUSH2 0x37F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x3803 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 DUP3 GT ISZERO PUSH2 0x3811 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH8 0xFFFF000000000000 PUSH1 0x30 DUP5 SWAP1 SHL AND PUSH6 0xFFFFFFFFFF00 PUSH1 0x8 DUP5 SWAP1 SHL AND OR PUSH1 0xFF DUP3 AND OR SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0xF PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0x3862 JUMPI PUSH2 0x385B DUP3 PUSH2 0xEE1 JUMP JUMPDEST SWAP1 POP PUSH2 0xBE2 JUMP JUMPDEST POP DUP1 PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH4 0x23B872DD PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 DUP2 AND PUSH1 0x4 DUP4 ADD MSTORE ADDRESS PUSH1 0x24 DUP4 ADD MSTORE PUSH1 0x44 DUP3 ADD DUP5 SWAP1 MSTORE SWAP2 MLOAD SWAP2 DUP6 AND SWAP2 PUSH4 0x23B872DD SWAP2 PUSH1 0x64 DUP1 DUP3 ADD SWAP3 PUSH1 0x0 SWAP3 SWAP1 SWAP2 SWAP1 DUP3 SWAP1 SUB ADD DUP2 DUP4 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x38CB PUSH2 0x4051 JUMP JUMPDEST RETURNDATASIZE DUP1 ISZERO PUSH2 0x38DF JUMPI PUSH1 0x20 DUP2 EQ PUSH2 0x38E8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 SWAP3 POP PUSH2 0x38F3 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x0 DUP4 RETURNDATACOPY DUP2 MLOAD SWAP3 POP JUMPDEST POP DUP2 PUSH2 0x8EB JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x5 PUSH1 0x24 DUP3 ADD MSTORE PUSH5 0x455243323 PUSH1 0xDC SHL PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x13 PUSH2 0x37C7 JUMP JUMPDEST DUP3 MLOAD PUSH1 0x40 MLOAD PUSH4 0xDB006A75 PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x0 SWAP2 SELFBALANCE SWAP2 DUP4 SWAP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 PUSH4 0xDB006A75 SWAP1 PUSH2 0x396F SWAP1 DUP8 SWAP1 PUSH1 0x4 ADD PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3989 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x399D JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x39C1 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x39E1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x491D JUMP JUMPDEST SELFBALANCE PUSH2 0x39EC DUP2 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP PUSH2 0x2D72 DUP7 DUP6 PUSH2 0x2D7C JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A18 PUSH2 0x3A13 DUP6 PUSH1 0x0 ADD MLOAD PUSH2 0x3A0E DUP6 PUSH2 0x264D JUMP JUMPDEST PUSH2 0x2BF7 JUMP JUMPDEST PUSH2 0x1CF6 JUMP JUMPDEST SWAP1 POP PUSH2 0x3A22 PUSH2 0x392E JUMP JUMPDEST SLOAD DUP5 MLOAD PUSH1 0x40 MLOAD PUSH4 0x1A4CA37B PUSH1 0xE2 SHL DUP2 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 PUSH4 0x69328DEC SWAP2 PUSH2 0x3A54 SWAP2 DUP6 SWAP1 DUP9 SWAP1 PUSH1 0x4 ADD PUSH2 0x4807 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A6E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3A82 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3AA6 SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 MLOAD PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0x3AC7 SWAP1 ADDRESS PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xDB006A75 DUP6 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3AFB SWAP2 SWAP1 PUSH2 0x48AB JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3B15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3B29 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x3B4D SWAP2 SWAP1 PUSH2 0x43D8 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x3B6D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x491D JUMP JUMPDEST DUP6 MLOAD PUSH1 0x0 SWAP1 PUSH2 0x3B84 SWAP1 ADDRESS PUSH4 0x70A08231 PUSH1 0xE0 SHL PUSH2 0x2E2E JUMP JUMPDEST SWAP1 POP PUSH2 0x3B90 DUP2 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP4 POP PUSH2 0x3BA1 DUP8 PUSH1 0x0 ADD MLOAD DUP8 DUP7 PUSH2 0x2DB7 JUMP JUMPDEST POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x3 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x3BC7 DUP6 PUSH2 0x3DF0 JUMP JUMPDEST SWAP2 SWAP5 POP SWAP3 POP SWAP1 POP DUP1 DUP5 GT DUP1 ISZERO PUSH2 0x3BDD JUMPI POP PUSH1 0x0 DUP2 GT JUMPDEST DUP1 ISZERO PUSH2 0x3BE9 JUMPI POP PUSH1 0x0 DUP4 GT JUMPDEST ISZERO PUSH2 0x3C48 JUMPI PUSH1 0x0 PUSH2 0x3BF9 DUP7 PUSH2 0x1755 JUMP JUMPDEST POP POP POP SWAP2 POP POP PUSH1 0x0 PUSH2 0x3C24 PUSH2 0x3C1B PUSH4 0x5F5E100 DUP5 PUSH2 0x3C5C SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST DUP5 DUP9 SUB DUP8 PUSH2 0x3E4C JUMP JUMPDEST SWAP1 POP PUSH2 0x3C30 DUP5 DUP3 PUSH2 0x3D1C JUMP JUMPDEST SWAP4 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB DUP5 LT PUSH2 0x3C45 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x11 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x3C6B JUMPI POP PUSH1 0x0 PUSH2 0xEDB JUMP JUMPDEST DUP3 DUP3 MUL DUP3 DUP5 DUP3 DUP2 PUSH2 0x3C78 JUMPI INVALID JUMPDEST DIV EQ PUSH2 0xAA3 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE PUSH1 0x21 DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH2 0x4B96 PUSH1 0x21 SWAP2 CODECOPY PUSH1 0x40 ADD SWAP2 POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x3D0B JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1A PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206469766973696F6E206279207A65726F000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x3D14 JUMPI INVALID JUMPDEST DIV SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0xAA3 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xEDB PUSH1 0x12 PUSH2 0x37C7 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD GT DUP1 ISZERO PUSH2 0x3D9D JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x3DA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x2 LT PUSH2 0x3DBD JUMPI POP PUSH1 0x20 DUP2 ADD MLOAD PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DCF PUSH1 0x1 DUP5 PUSH1 0x40 ADD MLOAD SUB PUSH2 0x3E6E JUMP JUMPDEST PUSH1 0x20 DUP5 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0xAA3 SWAP1 PUSH3 0x76A700 SWAP1 PUSH2 0x3DEA SWAP1 DUP5 PUSH2 0x3096 JUMP JUMPDEST SWAP1 PUSH2 0x3D1C JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x3DFE PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP6 SWAP1 SWAP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP6 SWAP1 SWAP6 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP3 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB DUP2 AND SWAP4 PUSH1 0x1 PUSH1 0x60 SHL DUP3 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB AND SWAP4 POP PUSH1 0x1 PUSH1 0xE0 SHL SWAP1 SWAP2 DIV PUSH4 0xFFFFFFFF AND SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xF7F DUP3 PUSH2 0x340D PUSH4 0x1DA9C00 DUP2 DUP9 PUSH2 0x3407 DUP10 PUSH8 0xDE0B6B3A7640000 PUSH2 0x3C5C JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 EQ ISZERO PUSH2 0x3E83 JUMPI POP PUSH3 0x76A700 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x2 EQ ISZERO PUSH2 0x3E96 JUMPI POP PUSH3 0xED4E00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x3 EQ ISZERO PUSH2 0x3EAA JUMPI POP PUSH4 0x1DA9C00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x4 EQ ISZERO PUSH2 0x3EBE JUMPI POP PUSH4 0x3B53800 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x5 EQ ISZERO PUSH2 0x3ED2 JUMPI POP PUSH4 0x9450C00 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x6 EQ ISZERO PUSH2 0x3EE6 JUMPI POP PUSH4 0x128A1800 PUSH2 0xBE2 JUMP JUMPDEST DUP2 PUSH1 0x7 EQ ISZERO PUSH2 0x3EFA JUMPI POP PUSH4 0x25143000 PUSH2 0xBE2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17A SWAP1 PUSH2 0x493D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH2 0xFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3FF3 JUMPI INVALID JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE SWAP1 PUSH1 0x60 DUP3 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1 SWAP1 PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY POP SWAP2 SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x4097 JUMPI DUP1 DUP2 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x40AD JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x40C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x40DE JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x20 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP4 GT ISZERO PUSH2 0x40F4 JUMPI INVALID JUMPDEST PUSH2 0x4101 DUP3 DUP4 DUP6 MUL ADD PUSH2 0x4B51 JUMP JUMPDEST DUP4 DUP2 MSTORE DUP3 DUP2 ADD SWAP1 DUP7 DUP5 ADD PUSH1 0xC0 DUP1 DUP8 MUL DUP10 ADD DUP7 ADD DUP11 LT ISZERO PUSH2 0x411F JUMPI DUP8 DUP9 REVERT JUMPDEST DUP8 JUMPDEST DUP8 DUP2 LT ISZERO PUSH2 0x41A0 JUMPI DUP2 DUP4 DUP13 SUB SLT ISZERO PUSH2 0x4137 JUMPI DUP9 DUP10 REVERT JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP4 DUP2 ADD DUP2 DUP2 LT DUP10 DUP3 GT OR ISZERO PUSH2 0x414C JUMPI INVALID JUMPDEST DUP3 MSTORE DUP5 MLOAD DUP2 MSTORE DUP9 DUP6 ADD MLOAD DUP10 DUP3 ADD MSTORE DUP5 DUP3 ADD MLOAD SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP1 DUP6 ADD MLOAD SWAP1 DUP3 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP3 ADD MSTORE PUSH1 0xA0 SWAP1 PUSH2 0x4187 DUP3 DUP7 ADD PUSH2 0x41C7 JUMP JUMPDEST SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MSTORE SWAP4 DUP7 ADD SWAP4 SWAP2 DUP2 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x4121 JUMP JUMPDEST POP SWAP2 SWAP10 SWAP9 POP POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0x4 DUP2 LT PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH2 0xBE2 DUP2 PUSH2 0x4B85 JUMP JUMPDEST DUP1 MLOAD PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0xBE2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x4206 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x420F DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x4229 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4235 DUP7 DUP3 DUP8 ADD PUSH2 0x4086 JUMP JUMPDEST SWAP5 SWAP8 SWAP1 SWAP7 POP SWAP4 SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4259 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x4262 DUP7 PUSH2 0x406F JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x427D JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4289 DUP10 DUP4 DUP11 ADD PUSH2 0x4086 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x42A1 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP9 ADD SWAP2 POP DUP9 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x42B4 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x42C2 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP10 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x42D3 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP7 SWAP10 SWAP6 SWAP9 POP SWAP4 SWAP7 POP PUSH1 0x20 ADD SWAP5 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x42FA JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x4303 DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x431E JUMPI DUP4 DUP5 REVERT JUMPDEST DUP2 DUP7 ADD SWAP2 POP DUP7 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4331 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP2 CALLDATALOAD DUP2 DUP2 GT ISZERO PUSH2 0x433F JUMPI DUP5 DUP6 REVERT JUMPDEST DUP8 PUSH1 0x20 PUSH1 0xC0 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x4353 JUMPI DUP5 DUP6 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP5 POP DUP1 SWAP4 POP POP POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x40 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x437A JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH2 0x4383 DUP5 PUSH2 0x406F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x4229 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43AE JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0xAA3 DUP2 PUSH2 0x4B74 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43CA JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x7 DUP2 LT PUSH2 0xAA3 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x43E9 JUMPI DUP1 DUP2 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x4402 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD SWAP2 POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x4414 DUP2 PUSH2 0x4B74 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4430 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xA0 DUP2 ADD DUP2 DUP2 LT PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT OR ISZERO PUSH2 0x444C JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x4463 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x447F JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x4490 PUSH1 0x40 DUP5 ADD PUSH2 0x41E1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x44A1 PUSH1 0x60 DUP5 ADD PUSH2 0x41D6 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x44B2 PUSH1 0x80 DUP5 ADD PUSH2 0x41AF JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x44D0 JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x44E6 JUMPI DUP4 DUP5 REVERT JUMPDEST SWAP1 DUP5 ADD SWAP1 PUSH1 0x80 DUP3 DUP8 SUB SLT ISZERO PUSH2 0x44F9 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x80 DUP2 ADD DUP2 DUP2 LT DUP4 DUP3 GT OR ISZERO PUSH2 0x450E JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD DUP3 DUP2 GT ISZERO PUSH2 0x451F JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x452B DUP9 DUP3 DUP7 ADD PUSH2 0x40CE JUMP JUMPDEST DUP3 MSTORE POP PUSH1 0x20 DUP4 ADD MLOAD DUP3 DUP2 GT ISZERO PUSH2 0x453F JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x454B DUP9 DUP3 DUP7 ADD PUSH2 0x40CE JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 DUP4 ADD MLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 DUP4 ADD MLOAD PUSH1 0x60 DUP3 ADD MSTORE DUP1 SWAP5 POP POP POP POP PUSH1 0x20 DUP4 ADD MLOAD SWAP1 POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x458A JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0xAA3 DUP2 PUSH2 0x4B85 JUMP JUMPDEST DUP2 DUP4 MSTORE PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFB SHL SUB DUP4 GT ISZERO PUSH2 0x45AD JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x20 DUP4 MUL DUP1 DUP4 PUSH1 0x20 DUP8 ADD CALLDATACOPY SWAP4 SWAP1 SWAP4 ADD PUSH1 0x20 ADD SWAP3 DUP4 MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x20 DUP1 DUP6 ADD SWAP5 POP DUP1 DUP5 ADD DUP4 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4636 JUMPI DUP2 MLOAD DUP1 MLOAD DUP9 MSTORE DUP4 DUP2 ADD MLOAD DUP5 DUP10 ADD MSTORE PUSH1 0x40 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0x60 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0x80 DUP1 DUP3 ADD MLOAD SWAP1 DUP10 ADD MSTORE PUSH1 0xA0 SWAP1 DUP2 ADD MLOAD SWAP1 PUSH1 0x4 DUP3 LT PUSH2 0x4621 JUMPI INVALID JUMPDEST DUP9 ADD MSTORE PUSH1 0xC0 SWAP1 SWAP7 ADD SWAP6 SWAP1 DUP3 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x45DC JUMP JUMPDEST POP SWAP5 SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 DUP2 AND DUP3 MSTORE DUP5 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x60 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x0 DUP3 DUP5 PUSH1 0x80 DUP5 ADD CALLDATACOPY DUP2 DUP4 ADD PUSH1 0x80 SWAP1 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1F SWAP1 SWAP3 ADD PUSH1 0x1F NOT AND ADD ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP7 DUP8 AND DUP2 MSTORE SWAP5 DUP7 AND PUSH1 0x20 DUP7 ADD MSTORE SWAP3 DUP6 AND PUSH1 0x40 DUP6 ADD MSTORE SWAP1 DUP5 AND PUSH1 0x60 DUP5 ADD MSTORE DUP4 AND PUSH1 0x80 DUP4 ADD MSTORE SWAP1 SWAP2 AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND PUSH1 0x20 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND PUSH1 0x40 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0xFF AND PUSH1 0x60 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP1 PUSH1 0xA0 SHL SUB DUP8 AND DUP3 MSTORE PUSH2 0xFFFF DUP7 AND PUSH1 0x20 DUP4 ADD MSTORE PUSH1 0x80 PUSH1 0x40 DUP4 ADD MSTORE DUP5 MLOAD PUSH1 0x80 DUP1 DUP5 ADD MSTORE PUSH2 0x4778 PUSH2 0x100 DUP5 ADD DUP3 PUSH2 0x45C9 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP7 ADD MLOAD PUSH1 0x7F NOT DUP5 DUP4 SUB ADD PUSH1 0xA0 DUP6 ADD MSTORE PUSH2 0x4795 DUP3 DUP3 PUSH2 0x45C9 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP7 ADD MLOAD PUSH1 0xC0 DUP5 ADD MSTORE PUSH1 0x60 DUP7 ADD MLOAD PUSH1 0xE0 DUP5 ADD MSTORE DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x47BF DUP2 DUP6 DUP8 PUSH2 0x4595 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND DUP2 MSTORE PUSH2 0xFFFF DUP6 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH5 0xFFFFFFFFFF DUP5 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x80 PUSH1 0x60 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x1DEF SWAP1 DUP4 ADD DUP5 DUP7 PUSH2 0x4595 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 DUP5 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP3 SWAP1 SWAP3 MSTORE SWAP1 SWAP2 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND DUP2 MSTORE PUSH1 0x20 DUP2 ADD SWAP4 SWAP1 SWAP4 MSTORE SWAP3 AND PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0xFFFF SWAP1 SWAP2 AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP6 SWAP1 SWAP6 AND DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x40 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x60 DUP4 ADD MSTORE PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xA0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 SWAP1 SWAP5 AND DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x155B985D5D1A1BDC9A5E9959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x4 SWAP1 DUP3 ADD MSTORE PUSH4 0x135A5B9D PUSH1 0xE2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xB SWAP1 DUP3 ADD MSTORE PUSH11 0x4554482042616C616E6365 PUSH1 0xA8 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x6 SWAP1 DUP3 ADD MSTORE PUSH6 0x52656465656D PUSH1 0xD0 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xD SWAP1 DUP3 ADD MSTORE PUSH13 0x92DCECC2D8D2C840D2DCC8CAF PUSH1 0x9B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x556E736F7274656420616374696F6E73 PUSH1 0x80 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x496E73756666696369656E7420746F6B656E2062616C616E6365000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xE SWAP1 DUP3 ADD MSTORE PUSH14 0x1499595B9D1C985B9D0818D85B1B PUSH1 0x92 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x8 SWAP1 DUP3 ADD MSTORE PUSH8 0x9CCACE4086C2E6D PUSH1 0xC3 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x1A SWAP1 DUP3 ADD MSTORE PUSH32 0x496E76616C69642074726164657320666F72206163636F756E74000000000000 PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xA SWAP1 DUP3 ADD MSTORE PUSH10 0x2732B390372A37B5B2B7 PUSH1 0xB1 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x92DCE6EACCCCD2C6D2CADCE840C6C2E6D PUSH1 0x7B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x14 SWAP1 DUP3 ADD MSTORE PUSH20 0x125B9CDD59999A58DA595B9D0819195C1BDCDA5D PUSH1 0x62 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH2 0xFFFF SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1E NOT DUP5 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4AED JUMPI DUP3 DUP4 REVERT JUMPDEST DUP4 ADD DUP1 CALLDATALOAD SWAP2 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT ISZERO PUSH2 0x4B06 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 SWAP1 DUP2 ADD SWAP3 POP DUP2 MUL CALLDATASIZE SUB DUP3 SGT ISZERO PUSH2 0x40C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0xDE NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4B32 JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 CALLDATALOAD PUSH1 0x5E NOT DUP4 CALLDATASIZE SUB ADD DUP2 SLT PUSH2 0x4B32 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP2 DUP2 ADD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x4B6C JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x4B82 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xFFFF DUP2 AND DUP2 EQ PUSH2 0x4B82 JUMPI PUSH1 0x0 DUP1 REVERT INVALID MSTORE8 PUSH2 0x6665 0x4D PUSH2 0x7468 GASPRICE KECCAK256 PUSH14 0x756C7469706C69636174696F6E20 PUSH16 0x766572666C6F77A26469706673582212 KECCAK256 ORIGIN DUP2 0x1F PUSH32 0x2DFAED6AE73F5EE82DDE37E34E8A29D87704373D06746E0114BF0EE664736F6C PUSH4 0x43000706 STOP CALLER ", "pcMap": { "0": { "offset": [ 591, 24150 ], "op": "PUSH1", "path": "29", "value": "0x80" }, "2": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "4": { "fn": null, "offset": [ 591, 24150 ], "op": "MSTORE", "path": "29" }, "5": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "7": { "fn": null, "offset": [ 591, 24150 ], "op": "CALLDATASIZE", "path": "29" }, "8": { "fn": null, "offset": [ 591, 24150 ], "op": "LT", "path": "29" }, "9": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x7B" }, "12": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "13": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "15": { "fn": null, "offset": [ 591, 24150 ], "op": "CALLDATALOAD", "path": "29" }, "16": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH1", "path": "29", "value": "0xE0" }, "18": { "fn": null, "offset": [ 591, 24150 ], "op": "SHR", "path": "29" }, "19": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "20": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x6E6A32A6" }, "25": { "fn": null, "offset": [ 591, 24150 ], "op": "GT", "path": "29" }, "26": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x4E" }, "29": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "30": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "31": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x6E6A32A6" }, "36": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "37": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0xF3" }, "40": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "41": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "42": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x82463367" }, "47": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "48": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x106" }, "51": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "52": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "53": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x8DA5CB5B" }, "58": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "59": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x11B" }, "62": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "63": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "64": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0xC4C96DAE" }, "69": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "70": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x130" }, "73": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "74": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x7B" }, "77": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMP", "path": "29" }, "78": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPDEST", "path": "29" }, "79": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "80": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x276B64B" }, "85": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "86": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x80" }, "89": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "90": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "91": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x24A3D622" }, "96": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "97": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0x95" }, "100": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "101": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "102": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x541F5270" }, "107": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "108": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0xC0" }, "111": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "112": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "113": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH4", "path": "29", "value": "0x5950D8E9" }, "118": { "fn": null, "offset": [ 591, 24150 ], "op": "EQ", "path": "29" }, "119": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH2", "path": "29", "value": "0xE0" }, "122": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPI", "path": "29" }, "123": { "fn": null, "offset": [ 591, 24150 ], "op": "JUMPDEST", "path": "29" }, "124": { "fn": null, "offset": [ 591, 24150 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "126": { "fn": null, "offset": [ 591, 24150 ], "op": "DUP1", "path": "29" }, "127": { "first_revert": true, "fn": null, "offset": [ 591, 24150 ], "op": "REVERT", "path": "29" }, "128": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "JUMPDEST", "path": "29" }, "129": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "PUSH2", "path": "29", "value": "0x93" }, "132": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "PUSH2", "path": "29", "value": "0x8E" }, "135": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "CALLDATASIZE", "path": "29" }, "136": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "138": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "PUSH2", "path": "29", "value": "0x41F2" }, "141": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 3235, 3674 ], "op": "JUMP", "path": "29" }, "142": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "JUMPDEST", "path": "29" }, "143": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "PUSH2", "path": "29", "value": "0x157" }, "146": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 3235, 3674 ], "op": "JUMP", "path": "29" }, "147": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "JUMPDEST", "path": "29" }, "148": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "STOP", "path": "29" }, "149": { "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "150": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "CALLVALUE", "path": "63" }, "151": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "152": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "ISZERO", "path": "63" }, "153": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0xA1" }, "156": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "JUMPI", "path": "63" }, "157": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "159": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "160": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "REVERT", "path": "63" }, "161": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "162": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "POP", "path": "63" }, "163": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0xAA" }, "166": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x1E7" }, "169": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "170": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "171": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x40" }, "173": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "MLOAD", "path": "63" }, "174": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0xB7" }, "177": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "SWAP2", "path": "63" }, "178": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "SWAP1", "path": "63" }, "179": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x4641" }, "182": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "183": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "184": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x40" }, "186": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "MLOAD", "path": "63" }, "187": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "188": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "SWAP2", "path": "63" }, "189": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "SUB", "path": "63" }, "190": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "SWAP1", "path": "63" }, "191": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "RETURN", "path": "63" }, "192": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "JUMPDEST", "path": "29" }, "193": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "CALLVALUE", "path": "29" }, "194": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "DUP1", "path": "29" }, "195": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "ISZERO", "path": "29" }, "196": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH2", "path": "29", "value": "0xCC" }, "199": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "JUMPI", "path": "29" }, "200": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "202": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "DUP1", "path": "29" }, "203": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "REVERT", "path": "29" }, "204": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "JUMPDEST", "path": "29" }, "205": { "op": "POP" }, "206": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH2", "path": "29", "value": "0x93" }, "209": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH2", "path": "29", "value": "0xDB" }, "212": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "CALLDATASIZE", "path": "29" }, "213": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "215": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH2", "path": "29", "value": "0x4366" }, "218": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 4487, 9902 ], "op": "JUMP", "path": "29" }, "219": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "JUMPDEST", "path": "29" }, "220": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "PUSH2", "path": "29", "value": "0x1F6" }, "223": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 4487, 9902 ], "op": "JUMP", "path": "29" }, "224": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "JUMPDEST", "path": "29" }, "225": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "PUSH2", "path": "29", "value": "0x93" }, "228": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "PUSH2", "path": "29", "value": "0xEE" }, "231": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "CALLDATASIZE", "path": "29" }, "232": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "234": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "PUSH2", "path": "29", "value": "0x4242" }, "237": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11159, 12579 ], "op": "JUMP", "path": "29" }, "238": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "JUMPDEST", "path": "29" }, "239": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "PUSH2", "path": "29", "value": "0x53E" }, "242": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11159, 12579 ], "op": "JUMP", "path": "29" }, "243": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "JUMPDEST", "path": "29" }, "244": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "PUSH2", "path": "29", "value": "0x93" }, "247": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "PUSH2", "path": "29", "value": "0x101" }, "250": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "CALLDATASIZE", "path": "29" }, "251": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "253": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "PUSH2", "path": "29", "value": "0x42E6" }, "256": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1241, 2768 ], "op": "JUMP", "path": "29" }, "257": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "JUMPDEST", "path": "29" }, "258": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "PUSH2", "path": "29", "value": "0x66E" }, "261": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1241, 2768 ], "op": "JUMP", "path": "29" }, "262": { "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "263": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "CALLVALUE", "path": "63" }, "264": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "DUP1", "path": "63" }, "265": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "ISZERO", "path": "63" }, "266": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x112" }, "269": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "JUMPI", "path": "63" }, "270": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "272": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "DUP1", "path": "63" }, "273": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "REVERT", "path": "63" }, "274": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "275": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "POP", "path": "63" }, "276": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0xAA" }, "279": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x7F4" }, "282": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 920, 946 ], "op": "JUMP", "path": "63" }, "283": { "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "284": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "CALLVALUE", "path": "63" }, "285": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "DUP1", "path": "63" }, "286": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "ISZERO", "path": "63" }, "287": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x127" }, "290": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "JUMPI", "path": "63" }, "291": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "293": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "DUP1", "path": "63" }, "294": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "REVERT", "path": "63" }, "295": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "296": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "POP", "path": "63" }, "297": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0xAA" }, "300": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x803" }, "303": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 811, 831 ], "op": "JUMP", "path": "63" }, "304": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "JUMPDEST", "path": "29" }, "305": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "CALLVALUE", "path": "29" }, "306": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "DUP1", "path": "29" }, "307": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "ISZERO", "path": "29" }, "308": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH2", "path": "29", "value": "0x13C" }, "311": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "JUMPI", "path": "29" }, "312": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "314": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "DUP1", "path": "29" }, "315": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "REVERT", "path": "29" }, "316": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "JUMPDEST", "path": "29" }, "317": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "POP", "path": "29" }, "318": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH2", "path": "29", "value": "0x145" }, "321": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH2", "path": "29", "value": "0x81A" }, "324": { "fn": "BatchAction.getLibInfo", "jump": "i", "offset": [ 23767, 24148 ], "op": "JUMP", "path": "29" }, "325": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "JUMPDEST", "path": "29" }, "326": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "328": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "MLOAD", "path": "29" }, "329": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH2", "path": "29", "value": "0xB7" }, "332": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP7", "path": "29" }, "333": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP6", "path": "29" }, "334": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP5", "path": "29" }, "335": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP4", "path": "29" }, "336": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP3", "path": "29" }, "337": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP2", "path": "29" }, "338": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP1", "path": "29" }, "339": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "PUSH2", "path": "29", "value": "0x469E" }, "342": { "fn": "BatchAction.getLibInfo", "jump": "i", "offset": [ 23767, 24148 ], "op": "JUMP", "path": "29" }, "343": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3235, 3674 ], "op": "JUMPDEST", "path": "29" }, "344": { "offset": [ 319, 320 ], "op": "PUSH1", "path": "28", "value": "0x2" }, "346": { "offset": [ 838, 854 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "348": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 838, 854 ], "op": "SLOAD", "path": "28" }, "349": { "offset": [ 838, 866 ], "op": "EQ", "path": "28" }, "350": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 838, 866 ], "op": "ISZERO", "path": "28" }, "351": { "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x183" }, "354": { "offset": [ 830, 885 ], "op": "JUMPI", "path": "28" }, "355": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x40" }, "357": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "MLOAD", "path": "28" }, "358": { "op": "PUSH3", "value": "0x461BCD" }, "362": { "op": "PUSH1", "value": "0xE5" }, "364": { "op": "SHL" }, "365": { "offset": [ 830, 885 ], "op": "DUP2", "path": "28" }, "366": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "MSTORE", "path": "28" }, "367": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x4" }, "369": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "ADD", "path": "28" }, "370": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x17A" }, "373": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "SWAP1", "path": "28" }, "374": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x49C5" }, "377": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 830, 885 ], "op": "JUMP", "path": "28" }, "378": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "JUMPDEST", "path": "28" }, "379": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x40" }, "381": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "MLOAD", "path": "28" }, "382": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "DUP1", "path": "28" }, "383": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "SWAP2", "path": "28" }, "384": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "SUB", "path": "28" }, "385": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "SWAP1", "path": "28" }, "386": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "REVERT", "path": "28" }, "387": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 830, 885 ], "op": "JUMPDEST", "path": "28" }, "388": { "offset": [ 319, 320 ], "op": "PUSH1", "path": "28", "value": "0x2" }, "390": { "offset": [ 960, 976 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "392": { "offset": [ 960, 987 ], "op": "SSTORE", "path": "28" }, "393": { "op": "PUSH1", "value": "0x1" }, "395": { "op": "PUSH1", "value": "0x1" }, "397": { "op": "PUSH1", "value": "0xA0" }, "399": { "op": "SHL" }, "400": { "op": "SUB" }, "401": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3429 ], "op": "DUP4", "path": "29", "statement": 0 }, "402": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3429 ], "op": "AND", "path": "29" }, "403": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3419, 3429 ], "op": "CALLER", "path": "29" }, "404": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3429 ], "op": "EQ", "path": "29" }, "405": { "branch": 359, "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3429 ], "op": "DUP1", "path": "29" }, "406": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3460 ], "op": "PUSH2", "path": "29", "value": "0x19E" }, "409": { "branch": 359, "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3460 ], "op": "JUMPI", "path": "29" }, "410": { "op": "POP" }, "411": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3433, 3443 ], "op": "CALLER", "path": "29" }, "412": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3455, 3459 ], "op": "ADDRESS", "path": "29" }, "413": { "branch": 360, "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3433, 3460 ], "op": "EQ", "path": "29" }, "414": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3408, 3460 ], "op": "JUMPDEST", "path": "29" }, "415": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "PUSH2", "path": "29", "value": "0x1BA" }, "418": { "branch": 360, "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "JUMPI", "path": "29" }, "419": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "421": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "MLOAD", "path": "29" }, "422": { "op": "PUSH3", "value": "0x461BCD" }, "426": { "op": "PUSH1", "value": "0xE5" }, "428": { "op": "SHL" }, "429": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "DUP2", "path": "29" }, "430": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "MSTORE", "path": "29" }, "431": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "433": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "ADD", "path": "29" }, "434": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "437": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "SWAP1", "path": "29" }, "438": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "PUSH2", "path": "29", "value": "0x48B4" }, "441": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 3400, 3477 ], "op": "JUMP", "path": "29" }, "442": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3400, 3477 ], "op": "JUMPDEST", "path": "29" }, "443": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3487, 3515 ], "op": "PUSH2", "path": "29", "statement": 1, "value": "0x1C3" }, "446": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3507, 3514 ], "op": "DUP4", "path": "29" }, "447": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3487, 3506 ], "op": "PUSH2", "path": "29", "value": "0x8A0" }, "450": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 3487, 3515 ], "op": "JUMP", "path": "29" }, "451": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3487, 3515 ], "op": "JUMPDEST", "path": "29" }, "452": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3525, 3561 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "454": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3564, 3609 ], "op": "PUSH2", "path": "29", "value": "0x1D0" }, "457": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3592, 3599 ], "op": "DUP5", "path": "29" }, "458": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3601, 3608 ], "op": "DUP5", "path": "29" }, "459": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3601, 3608 ], "op": "DUP5", "path": "29" }, "460": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3564, 3591 ], "op": "PUSH2", "path": "29", "value": "0x8EF" }, "463": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 3564, 3609 ], "op": "JUMP", "path": "29" }, "464": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3564, 3609 ], "op": "JUMPDEST", "path": "29" }, "465": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3525, 3609 ], "op": "SWAP1", "path": "29" }, "466": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3525, 3609 ], "op": "POP", "path": "29" }, "467": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3619, 3667 ], "op": "PUSH2", "path": "29", "statement": 2, "value": "0x1DC" }, "470": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3643, 3650 ], "op": "DUP5", "path": "29" }, "471": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3652, 3666 ], "op": "DUP3", "path": "29" }, "472": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3619, 3642 ], "op": "PUSH2", "path": "29", "value": "0xAAA" }, "475": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "i", "offset": [ 3619, 3667 ], "op": "JUMP", "path": "29" }, "476": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 3619, 3667 ], "op": "JUMPDEST", "path": "29" }, "477": { "op": "POP" }, "478": { "op": "POP" }, "479": { "offset": [ 276, 277 ], "op": "PUSH1", "path": "28", "value": "0x1" }, "481": { "offset": [ 1142, 1158 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "483": { "offset": [ 1142, 1173 ], "op": "SSTORE", "path": "28" }, "484": { "op": "POP" }, "485": { "op": "POP" }, "486": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "o", "offset": [ 3235, 3674 ], "op": "JUMP", "path": "29" }, "487": { "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "488": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x2" }, "490": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "SLOAD", "path": "63" }, "491": { "op": "PUSH1", "value": "0x1" }, "493": { "op": "PUSH1", "value": "0x1" }, "495": { "op": "PUSH1", "value": "0xA0" }, "497": { "op": "SHL" }, "498": { "op": "SUB" }, "499": { "offset": [ 1035, 1063 ], "op": "AND", "path": "63" }, "500": { "fn": "BatchAction.batchBalanceAndTradeAction", "offset": [ 1035, 1063 ], "op": "DUP2", "path": "63" }, "501": { "fn": "BatchAction.batchBalanceAndTradeAction", "jump": "o", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "502": { "fn": "BatchAction.batchLend", "offset": [ 4487, 9902 ], "op": "JUMPDEST", "path": "29" }, "503": { "offset": [ 319, 320 ], "op": "PUSH1", "path": "28", "value": "0x2" }, "505": { "offset": [ 838, 854 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "507": { "fn": "BatchAction.batchLend", "offset": [ 838, 854 ], "op": "SLOAD", "path": "28" }, "508": { "offset": [ 838, 866 ], "op": "EQ", "path": "28" }, "509": { "fn": "BatchAction.batchLend", "offset": [ 838, 866 ], "op": "ISZERO", "path": "28" }, "510": { "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x219" }, "513": { "offset": [ 830, 885 ], "op": "JUMPI", "path": "28" }, "514": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x40" }, "516": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "MLOAD", "path": "28" }, "517": { "op": "PUSH3", "value": "0x461BCD" }, "521": { "op": "PUSH1", "value": "0xE5" }, "523": { "op": "SHL" }, "524": { "offset": [ 830, 885 ], "op": "DUP2", "path": "28" }, "525": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "MSTORE", "path": "28" }, "526": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x4" }, "528": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "ADD", "path": "28" }, "529": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x17A" }, "532": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "SWAP1", "path": "28" }, "533": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x49C5" }, "536": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 830, 885 ], "op": "JUMP", "path": "28" }, "537": { "fn": "BatchAction.batchLend", "offset": [ 830, 885 ], "op": "JUMPDEST", "path": "28" }, "538": { "offset": [ 319, 320 ], "op": "PUSH1", "path": "28", "value": "0x2" }, "540": { "offset": [ 960, 976 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "542": { "offset": [ 960, 987 ], "op": "SSTORE", "path": "28" }, "543": { "op": "PUSH1", "value": "0x1" }, "545": { "op": "PUSH1", "value": "0x1" }, "547": { "op": "PUSH1", "value": "0xA0" }, "549": { "op": "SHL" }, "550": { "op": "SUB" }, "551": { "fn": "BatchAction.batchLend", "offset": [ 4613, 4634 ], "op": "DUP4", "path": "29", "statement": 3 }, "552": { "fn": "BatchAction.batchLend", "offset": [ 4613, 4634 ], "op": "AND", "path": "29" }, "553": { "fn": "BatchAction.batchLend", "offset": [ 4624, 4634 ], "op": "CALLER", "path": "29" }, "554": { "fn": "BatchAction.batchLend", "offset": [ 4613, 4634 ], "op": "EQ", "path": "29" }, "555": { "branch": 361, "fn": "BatchAction.batchLend", "offset": [ 4613, 4634 ], "op": "DUP1", "path": "29" }, "556": { "fn": "BatchAction.batchLend", "offset": [ 4613, 4665 ], "op": "PUSH2", "path": "29", "value": "0x234" }, "559": { "branch": 361, "fn": "BatchAction.batchLend", "offset": [ 4613, 4665 ], "op": "JUMPI", "path": "29" }, "560": { "op": "POP" }, "561": { "fn": "BatchAction.batchLend", "offset": [ 4638, 4648 ], "op": "CALLER", "path": "29" }, "562": { "fn": "BatchAction.batchLend", "offset": [ 4660, 4664 ], "op": "ADDRESS", "path": "29" }, "563": { "branch": 362, "fn": "BatchAction.batchLend", "offset": [ 4638, 4665 ], "op": "EQ", "path": "29" }, "564": { "fn": "BatchAction.batchLend", "offset": [ 4613, 4665 ], "op": "JUMPDEST", "path": "29" }, "565": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "PUSH2", "path": "29", "value": "0x250" }, "568": { "branch": 362, "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "JUMPI", "path": "29" }, "569": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "571": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "MLOAD", "path": "29" }, "572": { "op": "PUSH3", "value": "0x461BCD" }, "576": { "op": "PUSH1", "value": "0xE5" }, "578": { "op": "SHL" }, "579": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "DUP2", "path": "29" }, "580": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "MSTORE", "path": "29" }, "581": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "583": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "ADD", "path": "29" }, "584": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "587": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "SWAP1", "path": "29" }, "588": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "PUSH2", "path": "29", "value": "0x48B4" }, "591": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 4605, 4682 ], "op": "JUMP", "path": "29" }, "592": { "fn": "BatchAction.batchLend", "offset": [ 4605, 4682 ], "op": "JUMPDEST", "path": "29" }, "593": { "fn": "BatchAction.batchLend", "offset": [ 4692, 4720 ], "op": "PUSH2", "path": "29", "statement": 4, "value": "0x259" }, "596": { "fn": "BatchAction.batchLend", "offset": [ 4712, 4719 ], "op": "DUP4", "path": "29" }, "597": { "fn": "BatchAction.batchLend", "offset": [ 4692, 4711 ], "op": "PUSH2", "path": "29", "value": "0x8A0" }, "600": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 4692, 4720 ], "op": "JUMP", "path": "29" }, "601": { "fn": "BatchAction.batchLend", "offset": [ 4692, 4720 ], "op": "JUMPDEST", "path": "29" }, "602": { "fn": "BatchAction.batchLend", "offset": [ 4731, 4767 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "604": { "fn": "BatchAction.batchLend", "offset": [ 4770, 4803 ], "op": "PUSH2", "path": "29", "value": "0x264" }, "607": { "fn": "BatchAction.batchLend", "offset": [ 4795, 4802 ], "op": "DUP5", "path": "29" }, "608": { "fn": "BatchAction.batchLend", "offset": [ 4770, 4794 ], "op": "PUSH2", "path": "29", "value": "0xB2B" }, "611": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 4770, 4803 ], "op": "JUMP", "path": "29" }, "612": { "fn": "BatchAction.batchLend", "offset": [ 4770, 4803 ], "op": "JUMPDEST", "path": "29" }, "613": { "fn": "BatchAction.batchLend", "offset": [ 4731, 4803 ], "op": "SWAP1", "path": "29" }, "614": { "fn": "BatchAction.batchLend", "offset": [ 4731, 4803 ], "op": "POP", "path": "29" }, "615": { "fn": "BatchAction.batchLend", "offset": [ 4980, 5016 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "617": { "fn": "BatchAction.batchLend", "offset": [ 5019, 5146 ], "op": "PUSH2", "path": "29", "value": "0x278" }, "620": { "fn": "BatchAction.batchLend", "offset": [ 5069, 5076 ], "op": "DUP6", "path": "29" }, "621": { "fn": "BatchAction.batchLend", "offset": [ 5090, 5104 ], "op": "DUP4", "path": "29" }, "622": { "fn": "BatchAction.batchLend", "offset": [ 5090, 5121 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "624": { "fn": "BatchAction.batchLend", "offset": [ 5090, 5121 ], "op": "ADD", "path": "29" }, "625": { "fn": "BatchAction.batchLend", "offset": [ 5090, 5121 ], "op": "MLOAD", "path": "29" }, "626": { "fn": "BatchAction.batchLend", "offset": [ 5135, 5136 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "628": { "fn": "BatchAction.batchLend", "offset": [ 5019, 5055 ], "op": "PUSH2", "path": "29", "value": "0xBE7" }, "631": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5019, 5146 ], "op": "JUMP", "path": "29" }, "632": { "fn": "BatchAction.batchLend", "offset": [ 5019, 5146 ], "op": "JUMPDEST", "path": "29" }, "633": { "fn": "BatchAction.batchLend", "offset": [ 4980, 5146 ], "op": "SWAP1", "path": "29" }, "634": { "fn": "BatchAction.batchLend", "offset": [ 4980, 5146 ], "op": "POP", "path": "29" }, "635": { "fn": "BatchAction.batchLend", "offset": [ 5156, 5188 ], "op": "PUSH2", "path": "29", "value": "0x282" }, "638": { "fn": "BatchAction.batchLend", "offset": [ 5156, 5188 ], "op": "PUSH2", "path": "29", "value": "0x3F12" }, "641": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5156, 5188 ], "op": "JUMP", "path": "29" }, "642": { "fn": "BatchAction.batchLend", "offset": [ 5156, 5188 ], "op": "JUMPDEST", "path": "29" }, "643": { "fn": "BatchAction.batchLend", "offset": [ 5204, 5213 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "645": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "JUMPDEST", "path": "29" }, "646": { "fn": "BatchAction.batchLend", "offset": [ 5219, 5237 ], "op": "DUP5", "path": "29" }, "647": { "fn": "BatchAction.batchLend", "offset": [ 5219, 5237 ], "op": "DUP2", "path": "29" }, "648": { "fn": "BatchAction.batchLend", "offset": [ 5219, 5237 ], "op": "LT", "path": "29" }, "649": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "ISZERO", "path": "29" }, "650": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "PUSH2", "path": "29", "value": "0x50C" }, "653": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "JUMPI", "path": "29" }, "654": { "fn": "BatchAction.batchLend", "offset": [ 5258, 5283 ], "op": "CALLDATASIZE", "path": "29" }, "655": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5293 ], "op": "DUP7", "path": "29" }, "656": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5293 ], "op": "DUP7", "path": "29" }, "657": { "fn": "BatchAction.batchLend", "offset": [ 5294, 5295 ], "op": "DUP4", "path": "29" }, "658": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "DUP2", "path": "29" }, "659": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "DUP2", "path": "29" }, "660": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "LT", "path": "29" }, "661": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "PUSH2", "path": "29", "value": "0x29A" }, "664": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "JUMPI", "path": "29" }, "665": { "dev": "Index out of range", "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "INVALID", "path": "29" }, "666": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "JUMPDEST", "path": "29" }, "667": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "SWAP1", "path": "29" }, "668": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "POP", "path": "29" }, "669": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "671": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "MUL", "path": "29" }, "672": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "DUP2", "path": "29" }, "673": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "ADD", "path": "29" }, "674": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "SWAP1", "path": "29" }, "675": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "PUSH2", "path": "29", "value": "0x2AC" }, "678": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "SWAP2", "path": "29" }, "679": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "SWAP1", "path": "29" }, "680": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "PUSH2", "path": "29", "value": "0x4B3C" }, "683": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5286, 5296 ], "op": "JUMP", "path": "29" }, "684": { "fn": "BatchAction.batchLend", "offset": [ 5286, 5296 ], "op": "JUMPDEST", "path": "29" }, "685": { "fn": "BatchAction.batchLend", "offset": [ 5258, 5296 ], "op": "SWAP1", "path": "29" }, "686": { "op": "POP" }, "687": { "fn": "BatchAction.batchLend", "offset": [ 5509, 5514 ], "op": "DUP2", "path": "29" }, "688": { "branch": 363, "fn": "BatchAction.batchLend", "offset": [ 5509, 5514 ], "op": "ISZERO", "path": "29" }, "689": { "fn": "BatchAction.batchLend", "offset": [ 5505, 5623 ], "op": "PUSH2", "path": "29", "value": "0x315" }, "692": { "branch": 363, "fn": "BatchAction.batchLend", "offset": [ 5505, 5623 ], "op": "JUMPI", "path": "29" }, "693": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5569 ], "op": "DUP7", "path": "29", "statement": 5 }, "694": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5569 ], "op": "DUP7", "path": "29" }, "695": { "fn": "BatchAction.batchLend", "offset": [ 5574, 5575 ], "op": "PUSH1", "path": "29", "value": "0x1" }, "697": { "fn": "BatchAction.batchLend", "offset": [ 5570, 5571 ], "op": "DUP5", "path": "29" }, "698": { "fn": "BatchAction.batchLend", "offset": [ 5570, 5575 ], "op": "SUB", "path": "29" }, "699": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "DUP2", "path": "29" }, "700": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "DUP2", "path": "29" }, "701": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "LT", "path": "29" }, "702": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "PUSH2", "path": "29", "value": "0x2C3" }, "705": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "JUMPI", "path": "29" }, "706": { "dev": "Index out of range", "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "INVALID", "path": "29" }, "707": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "JUMPDEST", "path": "29" }, "708": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "SWAP1", "path": "29" }, "709": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "POP", "path": "29" }, "710": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "712": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "MUL", "path": "29" }, "713": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "DUP2", "path": "29" }, "714": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "ADD", "path": "29" }, "715": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "SWAP1", "path": "29" }, "716": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "PUSH2", "path": "29", "value": "0x2D5" }, "719": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "SWAP2", "path": "29" }, "720": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "SWAP1", "path": "29" }, "721": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "PUSH2", "path": "29", "value": "0x4B3C" }, "724": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5562, 5576 ], "op": "JUMP", "path": "29" }, "725": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5576 ], "op": "JUMPDEST", "path": "29" }, "726": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "PUSH2", "path": "29", "value": "0x2E3" }, "729": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "SWAP1", "path": "29" }, "730": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "732": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "DUP2", "path": "29" }, "733": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "ADD", "path": "29" }, "734": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "SWAP1", "path": "29" }, "735": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "738": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5562, 5587 ], "op": "JUMP", "path": "29" }, "739": { "fn": "BatchAction.batchLend", "offset": [ 5562, 5587 ], "op": "JUMPDEST", "path": "29" }, "740": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5587 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "743": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5587 ], "op": "AND", "path": "29" }, "744": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5559 ], "op": "PUSH2", "path": "29", "value": "0x2F4" }, "747": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5559 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "749": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5559 ], "op": "DUP4", "path": "29" }, "750": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5559 ], "op": "ADD", "path": "29" }, "751": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5548 ], "op": "DUP4", "path": "29" }, "752": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5559 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "755": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5542, 5559 ], "op": "JUMP", "path": "29" }, "756": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5559 ], "op": "JUMPDEST", "path": "29" }, "757": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5587 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "760": { "fn": "BatchAction.batchLend", "offset": [ 5542, 5587 ], "op": "AND", "path": "29" }, "761": { "branch": 364, "fn": "BatchAction.batchLend", "offset": [ 5542, 5587 ], "op": "GT", "path": "29" }, "762": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "PUSH2", "path": "29", "value": "0x315" }, "765": { "branch": 364, "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "JUMPI", "path": "29" }, "766": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "768": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "MLOAD", "path": "29" }, "769": { "op": "PUSH3", "value": "0x461BCD" }, "773": { "op": "PUSH1", "value": "0xE5" }, "775": { "op": "SHL" }, "776": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "DUP2", "path": "29" }, "777": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "MSTORE", "path": "29" }, "778": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "780": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "ADD", "path": "29" }, "781": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "784": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "SWAP1", "path": "29" }, "785": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "PUSH2", "path": "29", "value": "0x4964" }, "788": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5534, 5608 ], "op": "JUMP", "path": "29" }, "789": { "fn": "BatchAction.batchLend", "offset": [ 5534, 5608 ], "op": "JUMPDEST", "path": "29" }, "790": { "fn": "BatchAction.batchLend", "offset": [ 5733, 5750 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "792": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5766 ], "op": "PUSH2", "path": "29", "value": "0x324" }, "795": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5766 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "797": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5766 ], "op": "DUP4", "path": "29" }, "798": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5766 ], "op": "ADD", "path": "29" }, "799": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5759 ], "op": "DUP4", "path": "29" }, "800": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5766 ], "op": "PUSH2", "path": "29", "value": "0x4AD7" }, "803": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5753, 5766 ], "op": "JUMP", "path": "29" }, "804": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5766 ], "op": "JUMPDEST", "path": "29" }, "805": { "fn": "BatchAction.batchLend", "offset": [ 5753, 5773 ], "op": "SWAP2", "path": "29" }, "806": { "op": "POP" }, "807": { "op": "POP" }, "808": { "branch": 365, "fn": "BatchAction.batchLend", "offset": [ 5795, 5808 ], "op": "DUP1", "path": "29", "statement": 6 }, "809": { "fn": "BatchAction.batchLend", "offset": [ 5787, 5809 ], "op": "PUSH2", "path": "29", "value": "0x331" }, "812": { "branch": 365, "fn": "BatchAction.batchLend", "offset": [ 5787, 5809 ], "op": "JUMPI", "path": "29" }, "813": { "fn": "BatchAction.batchLend", "offset": [ 5787, 5809 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "815": { "fn": "BatchAction.batchLend", "offset": [ 5787, 5809 ], "op": "DUP1", "path": "29" }, "816": { "fn": "BatchAction.batchLend", "offset": [ 5787, 5809 ], "op": "REVERT", "path": "29" }, "817": { "fn": "BatchAction.batchLend", "offset": [ 5787, 5809 ], "op": "JUMPDEST", "path": "29" }, "818": { "fn": "BatchAction.batchLend", "offset": [ 5847, 5856 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "820": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "JUMPDEST", "path": "29" }, "821": { "fn": "BatchAction.batchLend", "offset": [ 5866, 5875 ], "op": "DUP2", "path": "29" }, "822": { "fn": "BatchAction.batchLend", "offset": [ 5862, 5863 ], "op": "DUP2", "path": "29" }, "823": { "fn": "BatchAction.batchLend", "offset": [ 5862, 5875 ], "op": "LT", "path": "29" }, "824": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "ISZERO", "path": "29" }, "825": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "PUSH2", "path": "29", "value": "0x374" }, "828": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "JUMPI", "path": "29" }, "829": { "fn": "BatchAction.batchLend", "offset": [ 5949, 5969 ], "op": "PUSH1", "path": "29", "statement": 7, "value": "0x0" }, "831": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "PUSH2", "path": "29", "value": "0x34B" }, "834": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "836": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "DUP6", "path": "29" }, "837": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "ADD", "path": "29" }, "838": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "DUP6", "path": "29" }, "839": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "PUSH2", "path": "29", "value": "0x4AD7" }, "842": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 5921, 5934 ], "op": "JUMP", "path": "29" }, "843": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5934 ], "op": "JUMPDEST", "path": "29" }, "844": { "fn": "BatchAction.batchLend", "offset": [ 5935, 5936 ], "op": "DUP4", "path": "29" }, "845": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "DUP2", "path": "29" }, "846": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "DUP2", "path": "29" }, "847": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "LT", "path": "29" }, "848": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "PUSH2", "path": "29", "value": "0x355" }, "851": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "JUMPI", "path": "29" }, "852": { "dev": "Index out of range", "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "INVALID", "path": "29" }, "853": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "JUMPDEST", "path": "29" }, "854": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "SWAP1", "path": "29" }, "855": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "POP", "path": "29" }, "856": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "858": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "MUL", "path": "29" }, "859": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "ADD", "path": "29" }, "860": { "fn": "BatchAction.batchLend", "offset": [ 5921, 5937 ], "op": "CALLDATALOAD", "path": "29" }, "861": { "fn": "BatchAction.batchLend", "offset": [ 5908, 5939 ], "op": "PUSH1", "path": "29", "value": "0xF8" }, "863": { "fn": "BatchAction.batchLend", "offset": [ 5908, 5939 ], "op": "SHR", "path": "29" }, "864": { "fn": "BatchAction.batchLend", "offset": [ 5908, 5970 ], "op": "PUSH1", "path": "29", "value": "0xFF" }, "866": { "fn": "BatchAction.batchLend", "offset": [ 5908, 5970 ], "op": "AND", "path": "29" }, "867": { "branch": 366, "fn": "BatchAction.batchLend", "offset": [ 5908, 5970 ], "op": "EQ", "path": "29" }, "868": { "fn": "BatchAction.batchLend", "offset": [ 5900, 5971 ], "op": "PUSH2", "path": "29", "value": "0x36C" }, "871": { "branch": 366, "fn": "BatchAction.batchLend", "offset": [ 5900, 5971 ], "op": "JUMPI", "path": "29" }, "872": { "fn": "BatchAction.batchLend", "offset": [ 5900, 5971 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "874": { "fn": "BatchAction.batchLend", "offset": [ 5900, 5971 ], "op": "DUP1", "path": "29" }, "875": { "fn": "BatchAction.batchLend", "offset": [ 5900, 5971 ], "op": "REVERT", "path": "29" }, "876": { "fn": "BatchAction.batchLend", "offset": [ 5900, 5971 ], "op": "JUMPDEST", "path": "29" }, "877": { "fn": "BatchAction.batchLend", "offset": [ 5877, 5880 ], "op": "PUSH1", "path": "29", "statement": 8, "value": "0x1" }, "879": { "fn": "BatchAction.batchLend", "offset": [ 5877, 5880 ], "op": "ADD", "path": "29" }, "880": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "PUSH2", "path": "29", "value": "0x334" }, "883": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "JUMP", "path": "29" }, "884": { "fn": "BatchAction.batchLend", "offset": [ 5842, 6011 ], "op": "JUMPDEST", "path": "29" }, "885": { "op": "POP" }, "886": { "fn": "BatchAction.batchLend", "offset": [ 6080, 6153 ], "op": "PUSH2", "path": "29", "statement": 9, "value": "0x38F" }, "889": { "fn": "BatchAction.batchLend", "offset": [ 6110, 6117 ], "op": "DUP10", "path": "29" }, "890": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6136 ], "op": "PUSH2", "path": "29", "value": "0x386" }, "893": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6136 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "895": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6136 ], "op": "DUP6", "path": "29" }, "896": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6136 ], "op": "ADD", "path": "29" }, "897": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6125 ], "op": "DUP6", "path": "29" }, "898": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6136 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "901": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 6119, 6136 ], "op": "JUMP", "path": "29" }, "902": { "fn": "BatchAction.batchLend", "offset": [ 6119, 6136 ], "op": "JUMPDEST", "path": "29" }, "903": { "fn": "BatchAction.batchLend", "offset": [ 6080, 6092 ], "op": "DUP7", "path": "29" }, "904": { "fn": "BatchAction.batchLend", "offset": [ 6080, 6092 ], "op": "SWAP2", "path": "29" }, "905": { "fn": "BatchAction.batchLend", "offset": [ 6080, 6153 ], "op": "SWAP1", "path": "29" }, "906": { "fn": "BatchAction.batchLend", "offset": [ 6138, 6152 ], "op": "DUP10", "path": "29" }, "907": { "fn": "BatchAction.batchLend", "offset": [ 6080, 6109 ], "op": "PUSH2", "path": "29", "value": "0xC79" }, "910": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 6080, 6153 ], "op": "JUMP", "path": "29" }, "911": { "fn": "BatchAction.batchLend", "offset": [ 6080, 6153 ], "op": "JUMPDEST", "path": "29" }, "912": { "fn": "BatchAction.batchLend", "offset": [ 6214, 6397 ], "op": "PUSH2", "path": "29", "statement": 10, "value": "0x3B4" }, "915": { "fn": "BatchAction.batchLend", "offset": [ 6246, 6253 ], "op": "DUP10", "path": "29" }, "916": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6288 ], "op": "PUSH2", "path": "29", "value": "0x3A0" }, "919": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6288 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "921": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6288 ], "op": "DUP6", "path": "29" }, "922": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6288 ], "op": "ADD", "path": "29" }, "923": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6277 ], "op": "DUP6", "path": "29" }, "924": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6288 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "927": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 6271, 6288 ], "op": "JUMP", "path": "29" }, "928": { "fn": "BatchAction.batchLend", "offset": [ 6271, 6288 ], "op": "JUMPDEST", "path": "29" }, "929": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6319 ], "op": "PUSH2", "path": "29", "value": "0x3AD" }, "932": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6319 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "934": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6319 ], "op": "DUP7", "path": "29" }, "935": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6319 ], "op": "ADD", "path": "29" }, "936": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6312 ], "op": "DUP7", "path": "29" }, "937": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6319 ], "op": "PUSH2", "path": "29", "value": "0x4AD7" }, "940": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 6306, 6319 ], "op": "JUMP", "path": "29" }, "941": { "fn": "BatchAction.batchLend", "offset": [ 6306, 6319 ], "op": "JUMPDEST", "path": "29" }, "942": { "fn": "BatchAction.batchLend", "offset": [ 6337, 6351 ], "op": "DUP11", "path": "29" }, "943": { "fn": "BatchAction.batchLend", "offset": [ 6369, 6383 ], "op": "DUP11", "path": "29" }, "944": { "fn": "BatchAction.batchLend", "offset": [ 6214, 6228 ], "op": "PUSH2", "path": "29", "value": "0xD1F" }, "947": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 6214, 6397 ], "op": "JUMP", "path": "29" }, "948": { "fn": "BatchAction.batchLend", "offset": [ 6214, 6397 ], "op": "JUMPDEST", "path": "29" }, "949": { "fn": "BatchAction.batchLend", "offset": [ 6168, 6194 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "951": { "fn": "BatchAction.batchLend", "offset": [ 6168, 6194 ], "op": "DUP7", "path": "29" }, "952": { "fn": "BatchAction.batchLend", "offset": [ 6168, 6194 ], "op": "ADD", "path": "29" }, "953": { "fn": "BatchAction.batchLend", "offset": [ 6167, 6397 ], "op": "DUP3", "path": "29" }, "954": { "fn": "BatchAction.batchLend", "offset": [ 6167, 6397 ], "op": "SWAP1", "path": "29" }, "955": { "fn": "BatchAction.batchLend", "offset": [ 6167, 6397 ], "op": "MSTORE", "path": "29" }, "956": { "fn": "BatchAction.batchLend", "offset": [ 6167, 6397 ], "op": "SWAP6", "path": "29" }, "957": { "op": "POP" }, "958": { "fn": "BatchAction.batchLend", "offset": [ 6524, 6525 ], "op": "PUSH1", "path": "29", "statement": 11, "value": "0x0" }, "960": { "op": "SLT" }, "961": { "branch": 367, "fn": "BatchAction.batchLend", "offset": [ 6494, 6525 ], "op": "ISZERO", "path": "29" }, "962": { "fn": "BatchAction.batchLend", "offset": [ 6486, 6526 ], "op": "PUSH2", "path": "29", "value": "0x3CA" }, "965": { "branch": 367, "fn": "BatchAction.batchLend", "offset": [ 6486, 6526 ], "op": "JUMPI", "path": "29" }, "966": { "fn": "BatchAction.batchLend", "offset": [ 6486, 6526 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "968": { "fn": "BatchAction.batchLend", "offset": [ 6486, 6526 ], "op": "DUP1", "path": "29" }, "969": { "fn": "BatchAction.batchLend", "offset": [ 6486, 6526 ], "op": "REVERT", "path": "29" }, "970": { "fn": "BatchAction.batchLend", "offset": [ 6486, 6526 ], "op": "JUMPDEST", "path": "29" }, "971": { "fn": "BatchAction.batchLend", "offset": [ 6978, 6997 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "973": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7068 ], "op": "PUSH2", "path": "29", "value": "0x3EF" }, "976": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7062 ], "op": "PUSH2", "path": "29", "value": "0x3EA" }, "979": { "fn": "BatchAction.batchLend", "offset": [ 7035, 7047 ], "op": "DUP7", "path": "29" }, "980": { "fn": "BatchAction.batchLend", "offset": [ 7035, 7061 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "982": { "fn": "BatchAction.batchLend", "offset": [ 7035, 7061 ], "op": "ADD", "path": "29" }, "983": { "fn": "BatchAction.batchLend", "offset": [ 7035, 7061 ], "op": "MLOAD", "path": "29" }, "984": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7012 ], "op": "DUP8", "path": "29" }, "985": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7030 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "987": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7030 ], "op": "ADD", "path": "29" }, "988": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7030 ], "op": "MLOAD", "path": "29" }, "989": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7034 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "992": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7034 ], "op": "SWAP1", "path": "29" }, "993": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7062 ], "op": "SWAP2", "path": "29" }, "994": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7062 ], "op": "SWAP1", "path": "29" }, "995": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7062 ], "op": "PUSH4", "path": "29", "value": "0xFFFFFFFF" }, "1000": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7062 ], "op": "AND", "path": "29" }, "1001": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7000, 7062 ], "op": "JUMP", "path": "29" }, "1002": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7062 ], "op": "JUMPDEST", "path": "29" }, "1003": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7066 ], "op": "PUSH2", "path": "29", "value": "0xEE1" }, "1006": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7000, 7068 ], "op": "JUMP", "path": "29" }, "1007": { "fn": "BatchAction.batchLend", "offset": [ 7000, 7068 ], "op": "JUMPDEST", "path": "29" }, "1008": { "fn": "BatchAction.batchLend", "offset": [ 6978, 7068 ], "op": "SWAP1", "path": "29" }, "1009": { "fn": "BatchAction.batchLend", "offset": [ 6978, 7068 ], "op": "POP", "path": "29" }, "1010": { "fn": "BatchAction.batchLend", "offset": [ 7101, 7102 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1012": { "fn": "BatchAction.batchLend", "offset": [ 7086, 7098 ], "op": "DUP2", "path": "29" }, "1013": { "branch": 368, "fn": "BatchAction.batchLend", "offset": [ 7086, 7102 ], "op": "SGT", "path": "29" }, "1014": { "fn": "BatchAction.batchLend", "offset": [ 7082, 9191 ], "op": "ISZERO", "path": "29" }, "1015": { "fn": "BatchAction.batchLend", "offset": [ 7082, 9191 ], "op": "PUSH2", "path": "29", "value": "0x4EF" }, "1018": { "branch": 368, "fn": "BatchAction.batchLend", "offset": [ 7082, 9191 ], "op": "JUMPI", "path": "29" }, "1019": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "PUSH2", "path": "29", "value": "0x40A" }, "1022": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1024": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "DUP5", "path": "29" }, "1025": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "ADD", "path": "29" }, "1026": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1028": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "DUP6", "path": "29" }, "1029": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "ADD", "path": "29" }, "1030": { "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "PUSH2", "path": "29", "value": "0x439D" }, "1033": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7126, 7150 ], "op": "JUMP", "path": "29" }, "1034": { "branch": 369, "fn": "BatchAction.batchLend", "offset": [ 7126, 7150 ], "op": "JUMPDEST", "path": "29" }, "1035": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "ISZERO", "path": "29" }, "1036": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "PUSH2", "path": "29", "value": "0x4B7" }, "1039": { "branch": 369, "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "JUMPI", "path": "29" }, "1040": { "fn": "BatchAction.batchLend", "offset": [ 7323, 7352 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1042": { "fn": "BatchAction.batchLend", "offset": [ 7355, 7406 ], "op": "PUSH2", "path": "29", "value": "0x42A" }, "1045": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7405 ], "op": "PUSH2", "path": "29", "value": "0x421" }, "1048": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7405 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1050": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7405 ], "op": "DUP7", "path": "29" }, "1051": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7405 ], "op": "ADD", "path": "29" }, "1052": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7394 ], "op": "DUP7", "path": "29" }, "1053": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7405 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "1056": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7388, 7405 ], "op": "JUMP", "path": "29" }, "1057": { "fn": "BatchAction.batchLend", "offset": [ 7388, 7405 ], "op": "JUMPDEST", "path": "29" }, "1058": { "fn": "BatchAction.batchLend", "offset": [ 7355, 7406 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "1061": { "fn": "BatchAction.batchLend", "offset": [ 7355, 7406 ], "op": "AND", "path": "29" }, "1062": { "fn": "BatchAction.batchLend", "offset": [ 7355, 7387 ], "op": "PUSH2", "path": "29", "value": "0xEEF" }, "1065": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7355, 7406 ], "op": "JUMP", "path": "29" }, "1066": { "fn": "BatchAction.batchLend", "offset": [ 7355, 7406 ], "op": "JUMPDEST", "path": "29" }, "1067": { "fn": "BatchAction.batchLend", "offset": [ 7323, 7406 ], "op": "SWAP1", "path": "29" }, "1068": { "op": "POP" }, "1069": { "fn": "BatchAction.batchLend", "offset": [ 7428, 7456 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1071": { "fn": "BatchAction.batchLend", "offset": [ 7459, 7509 ], "op": "PUSH2", "path": "29", "value": "0x447" }, "1074": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7508 ], "op": "PUSH2", "path": "29", "value": "0x43E" }, "1077": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7508 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1079": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7508 ], "op": "DUP8", "path": "29" }, "1080": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7508 ], "op": "ADD", "path": "29" }, "1081": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7497 ], "op": "DUP8", "path": "29" }, "1082": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7508 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "1085": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7491, 7508 ], "op": "JUMP", "path": "29" }, "1086": { "fn": "BatchAction.batchLend", "offset": [ 7491, 7508 ], "op": "JUMPDEST", "path": "29" }, "1087": { "fn": "BatchAction.batchLend", "offset": [ 7459, 7509 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "1090": { "fn": "BatchAction.batchLend", "offset": [ 7459, 7509 ], "op": "AND", "path": "29" }, "1091": { "fn": "BatchAction.batchLend", "offset": [ 7459, 7490 ], "op": "PUSH2", "path": "29", "value": "0xF3B" }, "1094": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7459, 7509 ], "op": "JUMP", "path": "29" }, "1095": { "fn": "BatchAction.batchLend", "offset": [ 7459, 7509 ], "op": "JUMPDEST", "path": "29" }, "1096": { "fn": "BatchAction.batchLend", "offset": [ 7428, 7509 ], "op": "SWAP1", "path": "29" }, "1097": { "op": "POP" }, "1098": { "fn": "BatchAction.batchLend", "offset": [ 7531, 7562 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1100": { "fn": "BatchAction.batchLend", "offset": [ 7565, 7636 ], "op": "PUSH2", "path": "29", "value": "0x45F" }, "1103": { "fn": "BatchAction.batchLend", "offset": [ 7599, 7635 ], "op": "PUSH2", "path": "29", "value": "0x458" }, "1106": { "fn": "BatchAction.batchLend", "offset": [ 7599, 7601 ], "op": "DUP5", "path": "29" }, "1107": { "fn": "BatchAction.batchLend", "offset": [ 7622, 7634 ], "op": "DUP7", "path": "29" }, "1108": { "fn": "BatchAction.batchLend", "offset": [ 7599, 7621 ], "op": "PUSH2", "path": "29", "value": "0xF4E" }, "1111": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7599, 7635 ], "op": "JUMP", "path": "29" }, "1112": { "fn": "BatchAction.batchLend", "offset": [ 7599, 7635 ], "op": "JUMPDEST", "path": "29" }, "1113": { "fn": "BatchAction.batchLend", "offset": [ 7565, 7580 ], "op": "DUP4", "path": "29" }, "1114": { "fn": "BatchAction.batchLend", "offset": [ 7565, 7580 ], "op": "SWAP1", "path": "29" }, "1115": { "fn": "BatchAction.batchLend", "offset": [ 7565, 7598 ], "op": "PUSH2", "path": "29", "value": "0xF87" }, "1118": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 7565, 7636 ], "op": "JUMP", "path": "29" }, "1119": { "fn": "BatchAction.batchLend", "offset": [ 7565, 7636 ], "op": "JUMPDEST", "path": "29" }, "1120": { "fn": "BatchAction.batchLend", "offset": [ 7531, 7636 ], "op": "SWAP1", "path": "29" }, "1121": { "fn": "BatchAction.batchLend", "offset": [ 7531, 7636 ], "op": "POP", "path": "29" }, "1122": { "offset": [ 429, 432 ], "op": "PUSH4", "path": "60", "value": "0x5F5E100" }, "1127": { "fn": "BatchAction.batchLend", "offset": [ 7663, 7678 ], "op": "DUP3", "path": "29" }, "1128": { "fn": "BatchAction.batchLend", "offset": [ 7663, 7687 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1130": { "fn": "BatchAction.batchLend", "offset": [ 7663, 7687 ], "op": "ADD", "path": "29" }, "1131": { "fn": "BatchAction.batchLend", "offset": [ 7663, 7687 ], "op": "MLOAD", "path": "29" }, "1132": { "branch": 370, "fn": "BatchAction.batchLend", "offset": [ 7663, 7724 ], "op": "SLT", "path": "29" }, "1133": { "fn": "BatchAction.batchLend", "offset": [ 7659, 8195 ], "op": "ISZERO", "path": "29" }, "1134": { "fn": "BatchAction.batchLend", "offset": [ 7659, 8195 ], "op": "PUSH2", "path": "29", "value": "0x47F" }, "1137": { "branch": 370, "fn": "BatchAction.batchLend", "offset": [ 7659, 8195 ], "op": "JUMPI", "path": "29" }, "1138": { "fn": "BatchAction.batchLend", "offset": [ 8141, 8172 ], "op": "PUSH2", "path": "29", "statement": 12, "value": "0x47C" }, "1141": { "fn": "BatchAction.batchLend", "offset": [ 8141, 8165 ], "op": "DUP2", "path": "29" }, "1142": { "fn": "BatchAction.batchLend", "offset": [ 8170, 8171 ], "op": "PUSH1", "path": "29", "value": "0x1" }, "1144": { "fn": "BatchAction.batchLend", "offset": [ 8141, 8169 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "1147": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8141, 8172 ], "op": "JUMP", "path": "29" }, "1148": { "fn": "BatchAction.batchLend", "offset": [ 8141, 8172 ], "op": "JUMPDEST", "path": "29" }, "1149": { "fn": "BatchAction.batchLend", "offset": [ 8114, 8172 ], "op": "SWAP1", "path": "29" }, "1150": { "fn": "BatchAction.batchLend", "offset": [ 8114, 8172 ], "op": "POP", "path": "29" }, "1151": { "fn": "BatchAction.batchLend", "offset": [ 7659, 8195 ], "op": "JUMPDEST", "path": "29" }, "1152": { "fn": "BatchAction.batchLend", "offset": [ 8387, 8413 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1154": { "fn": "BatchAction.batchLend", "offset": [ 8416, 8486 ], "op": "PUSH2", "path": "29", "value": "0x48C" }, "1157": { "fn": "BatchAction.batchLend", "offset": [ 8416, 8428 ], "op": "DUP10", "path": "29" }, "1158": { "fn": "BatchAction.batchLend", "offset": [ 8452, 8459 ], "op": "DUP16", "path": "29" }, "1159": { "fn": "BatchAction.batchLend", "offset": [ 8461, 8485 ], "op": "DUP5", "path": "29" }, "1160": { "fn": "BatchAction.batchLend", "offset": [ 8416, 8451 ], "op": "PUSH2", "path": "29", "value": "0xFBF" }, "1163": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8416, 8486 ], "op": "JUMP", "path": "29" }, "1164": { "fn": "BatchAction.batchLend", "offset": [ 8416, 8486 ], "op": "JUMPDEST", "path": "29" }, "1165": { "fn": "BatchAction.batchLend", "offset": [ 8387, 8486 ], "op": "SWAP1", "path": "29" }, "1166": { "fn": "BatchAction.batchLend", "offset": [ 8387, 8486 ], "op": "POP", "path": "29" }, "1167": { "fn": "BatchAction.batchLend", "offset": [ 8539, 8551 ], "op": "DUP5", "path": "29", "statement": 13 }, "1168": { "fn": "BatchAction.batchLend", "offset": [ 8516, 8535 ], "op": "DUP2", "path": "29" }, "1169": { "fn": "BatchAction.batchLend", "offset": [ 8516, 8551 ], "op": "SLT", "path": "29" }, "1170": { "branch": 371, "fn": "BatchAction.batchLend", "offset": [ 8516, 8551 ], "op": "ISZERO", "path": "29" }, "1171": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "PUSH2", "path": "29", "value": "0x4AE" }, "1174": { "branch": 371, "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "JUMPI", "path": "29" }, "1175": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1177": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "MLOAD", "path": "29" }, "1178": { "op": "PUSH3", "value": "0x461BCD" }, "1182": { "op": "PUSH1", "value": "0xE5" }, "1184": { "op": "SHL" }, "1185": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "DUP2", "path": "29" }, "1186": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "MSTORE", "path": "29" }, "1187": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "1189": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "ADD", "path": "29" }, "1190": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "1193": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "SWAP1", "path": "29" }, "1194": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "PUSH2", "path": "29", "value": "0x4A95" }, "1197": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8508, 8576 ], "op": "JUMP", "path": "29" }, "1198": { "fn": "BatchAction.batchLend", "offset": [ 8508, 8576 ], "op": "JUMPDEST", "path": "29" }, "1199": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "POP", "path": "29" }, "1200": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "POP", "path": "29" }, "1201": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "POP", "path": "29" }, "1202": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "POP", "path": "29" }, "1203": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "PUSH2", "path": "29", "value": "0x4EF" }, "1206": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "JUMP", "path": "29" }, "1207": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "JUMPDEST", "path": "29" }, "1208": { "fn": "BatchAction.batchLend", "offset": [ 8810, 8833 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1210": { "fn": "BatchAction.batchLend", "offset": [ 8836, 8881 ], "op": "PUSH2", "path": "29", "value": "0x4D2" }, "1213": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8880 ], "op": "PUSH2", "path": "29", "value": "0x4C9" }, "1216": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8880 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1218": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8880 ], "op": "DUP7", "path": "29" }, "1219": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8880 ], "op": "ADD", "path": "29" }, "1220": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8869 ], "op": "DUP7", "path": "29" }, "1221": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8880 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "1224": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8863, 8880 ], "op": "JUMP", "path": "29" }, "1225": { "fn": "BatchAction.batchLend", "offset": [ 8863, 8880 ], "op": "JUMPDEST", "path": "29" }, "1226": { "fn": "BatchAction.batchLend", "offset": [ 8836, 8881 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "1229": { "fn": "BatchAction.batchLend", "offset": [ 8836, 8881 ], "op": "AND", "path": "29" }, "1230": { "fn": "BatchAction.batchLend", "offset": [ 8836, 8862 ], "op": "PUSH2", "path": "29", "value": "0x10A4" }, "1233": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8836, 8881 ], "op": "JUMP", "path": "29" }, "1234": { "fn": "BatchAction.batchLend", "offset": [ 8836, 8881 ], "op": "JUMPDEST", "path": "29" }, "1235": { "fn": "BatchAction.batchLend", "offset": [ 8810, 8881 ], "op": "SWAP1", "path": "29" }, "1236": { "op": "POP" }, "1237": { "fn": "BatchAction.batchLend", "offset": [ 8903, 9158 ], "op": "PUSH2", "path": "29", "statement": 14, "value": "0x4EC" }, "1240": { "fn": "BatchAction.batchLend", "offset": [ 8959, 8966 ], "op": "DUP12", "path": "29" }, "1241": { "fn": "BatchAction.batchLend", "offset": [ 8992, 9034 ], "op": "PUSH2", "path": "29", "value": "0x4E2" }, "1244": { "fn": "BatchAction.batchLend", "offset": [ 8810, 8881 ], "op": "DUP4", "path": "29" }, "1245": { "fn": "BatchAction.batchLend", "offset": [ 9021, 9033 ], "op": "DUP6", "path": "29" }, "1246": { "fn": "BatchAction.batchLend", "offset": [ 8992, 9020 ], "op": "PUSH2", "path": "29", "value": "0xF87" }, "1249": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8992, 9034 ], "op": "JUMP", "path": "29" }, "1250": { "fn": "BatchAction.batchLend", "offset": [ 8992, 9034 ], "op": "JUMPDEST", "path": "29" }, "1251": { "fn": "BatchAction.batchLend", "offset": [ 8903, 8915 ], "op": "DUP9", "path": "29" }, "1252": { "fn": "BatchAction.batchLend", "offset": [ 8903, 8915 ], "op": "SWAP2", "path": "29" }, "1253": { "fn": "BatchAction.batchLend", "offset": [ 8903, 9158 ], "op": "SWAP1", "path": "29" }, "1254": { "fn": "BatchAction.batchLend", "offset": [ 9060, 9065 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1256": { "fn": "BatchAction.batchLend", "offset": [ 8903, 8933 ], "op": "PUSH2", "path": "29", "value": "0x10B7" }, "1259": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 8903, 9158 ], "op": "JUMP", "path": "29" }, "1260": { "fn": "BatchAction.batchLend", "offset": [ 8903, 9158 ], "op": "JUMPDEST", "path": "29" }, "1261": { "fn": "BatchAction.batchLend", "offset": [ 8903, 9158 ], "op": "POP", "path": "29" }, "1262": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "POP", "path": "29" }, "1263": { "fn": "BatchAction.batchLend", "offset": [ 7122, 9177 ], "op": "JUMPDEST", "path": "29" }, "1264": { "fn": "BatchAction.batchLend", "offset": [ 9305, 9358 ], "op": "PUSH2", "path": "29", "statement": 15, "value": "0x4FC" }, "1267": { "fn": "BatchAction.batchLend", "offset": [ 9305, 9317 ], "op": "DUP6", "path": "29" }, "1268": { "fn": "BatchAction.batchLend", "offset": [ 9327, 9334 ], "op": "DUP12", "path": "29" }, "1269": { "fn": "BatchAction.batchLend", "offset": [ 9336, 9350 ], "op": "DUP10", "path": "29" }, "1270": { "fn": "BatchAction.batchLend", "offset": [ 9352, 9357 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1272": { "fn": "BatchAction.batchLend", "offset": [ 9305, 9326 ], "op": "PUSH2", "path": "29", "value": "0x1191" }, "1275": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 9305, 9358 ], "op": "JUMP", "path": "29" }, "1276": { "fn": "BatchAction.batchLend", "offset": [ 9305, 9358 ], "op": "JUMPDEST", "path": "29" }, "1277": { "op": "POP" }, "1278": { "op": "POP" }, "1279": { "fn": "BatchAction.batchLend", "offset": [ 5239, 5242 ], "op": "PUSH1", "path": "29", "statement": 16, "value": "0x1" }, "1281": { "fn": "BatchAction.batchLend", "offset": [ 5239, 5242 ], "op": "SWAP1", "path": "29" }, "1282": { "fn": "BatchAction.batchLend", "offset": [ 5239, 5242 ], "op": "SWAP3", "path": "29" }, "1283": { "fn": "BatchAction.batchLend", "offset": [ 5239, 5242 ], "op": "ADD", "path": "29" }, "1284": { "fn": "BatchAction.batchLend", "offset": [ 5239, 5242 ], "op": "SWAP2", "path": "29" }, "1285": { "op": "POP" }, "1286": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "PUSH2", "path": "29", "value": "0x285" }, "1289": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "SWAP1", "path": "29" }, "1290": { "op": "POP" }, "1291": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "JUMP", "path": "29" }, "1292": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "JUMPDEST", "path": "29" }, "1293": { "fn": "BatchAction.batchLend", "offset": [ 5199, 9369 ], "op": "POP", "path": "29" }, "1294": { "fn": "BatchAction.batchLend", "offset": [ 9549, 9581 ], "op": "PUSH2", "path": "29", "value": "0x516" }, "1297": { "fn": "BatchAction.batchLend", "offset": [ 9549, 9563 ], "op": "DUP4", "path": "29" }, "1298": { "fn": "BatchAction.batchLend", "offset": [ 9549, 9579 ], "op": "PUSH2", "path": "29", "value": "0x1412" }, "1301": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 9549, 9581 ], "op": "JUMP", "path": "29" }, "1302": { "branch": 372, "fn": "BatchAction.batchLend", "offset": [ 9549, 9581 ], "op": "JUMPDEST", "path": "29" }, "1303": { "fn": "BatchAction.batchLend", "offset": [ 9544, 9765 ], "op": "PUSH2", "path": "29", "value": "0x527" }, "1306": { "branch": 372, "fn": "BatchAction.batchLend", "offset": [ 9544, 9765 ], "op": "JUMPI", "path": "29" }, "1307": { "fn": "BatchAction.batchLend", "offset": [ 9680, 9754 ], "op": "PUSH2", "path": "29", "statement": 17, "value": "0x527" }, "1310": { "fn": "BatchAction.batchLend", "offset": [ 9680, 9694 ], "op": "DUP4", "path": "29" }, "1311": { "fn": "BatchAction.batchLend", "offset": [ 9723, 9730 ], "op": "DUP8", "path": "29" }, "1312": { "fn": "BatchAction.batchLend", "offset": [ 9732, 9746 ], "op": "DUP5", "path": "29" }, "1313": { "fn": "BatchAction.batchLend", "offset": [ 9748, 9753 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1315": { "fn": "BatchAction.batchLend", "offset": [ 9680, 9722 ], "op": "PUSH2", "path": "29", "value": "0x141F" }, "1318": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 9680, 9754 ], "op": "JUMP", "path": "29" }, "1319": { "fn": "BatchAction.batchLend", "offset": [ 9680, 9754 ], "op": "JUMPDEST", "path": "29" }, "1320": { "fn": "BatchAction.batchLend", "offset": [ 9847, 9895 ], "op": "PUSH2", "path": "29", "statement": 18, "value": "0x531" }, "1323": { "fn": "BatchAction.batchLend", "offset": [ 9871, 9878 ], "op": "DUP7", "path": "29" }, "1324": { "fn": "BatchAction.batchLend", "offset": [ 9880, 9894 ], "op": "DUP5", "path": "29" }, "1325": { "fn": "BatchAction.batchLend", "offset": [ 9847, 9870 ], "op": "PUSH2", "path": "29", "value": "0xAAA" }, "1328": { "fn": "BatchAction.batchLend", "jump": "i", "offset": [ 9847, 9895 ], "op": "JUMP", "path": "29" }, "1329": { "fn": "BatchAction.batchLend", "offset": [ 9847, 9895 ], "op": "JUMPDEST", "path": "29" }, "1330": { "op": "POP" }, "1331": { "op": "POP" }, "1332": { "offset": [ 276, 277 ], "op": "PUSH1", "path": "28", "value": "0x1" }, "1334": { "offset": [ 1142, 1158 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "1336": { "offset": [ 1142, 1173 ], "op": "SSTORE", "path": "28" }, "1337": { "op": "POP" }, "1338": { "op": "POP" }, "1339": { "op": "POP" }, "1340": { "op": "POP" }, "1341": { "fn": "BatchAction.batchLend", "jump": "o", "offset": [ 4487, 9902 ], "op": "JUMP", "path": "29" }, "1342": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "JUMPDEST", "path": "29" }, "1343": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11464, 11474 ], "op": "CALLER", "path": "29", "statement": 19 }, "1344": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1346": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "SWAP1", "path": "29" }, "1347": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "DUP2", "path": "29" }, "1348": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "MSTORE", "path": "29" }, "1349": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11463 ], "op": "PUSH1", "path": "29", "value": "0x8" }, "1351": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1353": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "MSTORE", "path": "29" }, "1354": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1356": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "SWAP1", "path": "29" }, "1357": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "KECCAK256", "path": "29" }, "1358": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "SLOAD", "path": "29" }, "1359": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "PUSH1", "path": "29", "value": "0xFF" }, "1361": { "branch": 373, "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11437, 11475 ], "op": "AND", "path": "29" }, "1362": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "PUSH2", "path": "29", "value": "0x56D" }, "1365": { "branch": 373, "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "JUMPI", "path": "29" }, "1366": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1368": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "MLOAD", "path": "29" }, "1369": { "op": "PUSH3", "value": "0x461BCD" }, "1373": { "op": "PUSH1", "value": "0xE5" }, "1375": { "op": "SHL" }, "1376": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "DUP2", "path": "29" }, "1377": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "MSTORE", "path": "29" }, "1378": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "1380": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "ADD", "path": "29" }, "1381": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "1384": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "SWAP1", "path": "29" }, "1385": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "PUSH2", "path": "29", "value": "0x48B4" }, "1388": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11429, 11492 ], "op": "JUMP", "path": "29" }, "1389": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11429, 11492 ], "op": "JUMPDEST", "path": "29" }, "1390": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11502, 11530 ], "op": "PUSH2", "path": "29", "statement": 20, "value": "0x576" }, "1393": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11522, 11529 ], "op": "DUP6", "path": "29" }, "1394": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11502, 11521 ], "op": "PUSH2", "path": "29", "value": "0x8A0" }, "1397": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11502, 11530 ], "op": "JUMP", "path": "29" }, "1398": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11502, 11530 ], "op": "JUMPDEST", "path": "29" }, "1399": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11541, 11577 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1401": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11580, 11625 ], "op": "PUSH2", "path": "29", "value": "0x583" }, "1404": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11608, 11615 ], "op": "DUP7", "path": "29" }, "1405": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11617, 11624 ], "op": "DUP7", "path": "29" }, "1406": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11617, 11624 ], "op": "DUP7", "path": "29" }, "1407": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11580, 11607 ], "op": "PUSH2", "path": "29", "value": "0x8EF" }, "1410": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11580, 11625 ], "op": "JUMP", "path": "29" }, "1411": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11580, 11625 ], "op": "JUMPDEST", "path": "29" }, "1412": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11541, 11625 ], "op": "SWAP1", "path": "29" }, "1413": { "op": "POP" }, "1414": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11635, 11676 ], "op": "PUSH2", "path": "29", "statement": 21, "value": "0x58F" }, "1417": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11541, 11625 ], "op": "DUP2", "path": "29" }, "1418": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11668, 11675 ], "op": "DUP8", "path": "29" }, "1419": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11635, 11667 ], "op": "PUSH2", "path": "29", "value": "0x1501" }, "1422": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11635, 11676 ], "op": "JUMP", "path": "29" }, "1423": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11635, 11676 ], "op": "JUMPDEST", "path": "29" }, "1424": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "statement": 22, "value": "0x40" }, "1426": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "MLOAD", "path": "29" }, "1427": { "op": "PUSH4", "value": "0x550D0657" }, "1432": { "op": "PUSH1", "value": "0xE1" }, "1434": { "op": "SHL" }, "1435": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP2", "path": "29" }, "1436": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "MSTORE", "path": "29" }, "1437": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11972, 11982 ], "op": "CALLER", "path": "29" }, "1438": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11972, 11982 ], "op": "SWAP1", "path": "29" }, "1439": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12000 ], "op": "PUSH4", "path": "29", "value": "0xAA1A0CAE" }, "1444": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12000 ], "op": "SWAP1", "path": "29" }, "1445": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH2", "path": "29", "value": "0x5B8" }, "1448": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "SWAP1", "path": "29" }, "1449": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11972, 11982 ], "op": "DUP4", "path": "29" }, "1450": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11972, 11982 ], "op": "SWAP1", "path": "29" }, "1451": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12013, 12020 ], "op": "DUP11", "path": "29" }, "1452": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12013, 12020 ], "op": "SWAP1", "path": "29" }, "1453": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12022, 12034 ], "op": "DUP9", "path": "29" }, "1454": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12022, 12034 ], "op": "SWAP1", "path": "29" }, "1455": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12022, 12034 ], "op": "DUP9", "path": "29" }, "1456": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12022, 12034 ], "op": "SWAP1", "path": "29" }, "1457": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "1459": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "ADD", "path": "29" }, "1460": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH2", "path": "29", "value": "0x4655" }, "1463": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 11955, 12035 ], "op": "JUMP", "path": "29" }, "1464": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "JUMPDEST", "path": "29" }, "1465": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1467": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1469": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "MLOAD", "path": "29" }, "1470": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP1", "path": "29" }, "1471": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP4", "path": "29" }, "1472": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "SUB", "path": "29" }, "1473": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP2", "path": "29" }, "1474": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1476": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP8", "path": "29" }, "1477": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP1", "path": "29" }, "1478": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "EXTCODESIZE", "path": "29" }, "1479": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "ISZERO", "path": "29" }, "1480": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP1", "path": "29" }, "1481": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "ISZERO", "path": "29" }, "1482": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH2", "path": "29", "value": "0x5D2" }, "1485": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "JUMPI", "path": "29" }, "1486": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1488": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP1", "path": "29" }, "1489": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "REVERT", "path": "29" }, "1490": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "JUMPDEST", "path": "29" }, "1491": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "POP", "path": "29" }, "1492": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "GAS", "path": "29" }, "1493": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "CALL", "path": "29" }, "1494": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "ISZERO", "path": "29" }, "1495": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP1", "path": "29" }, "1496": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "ISZERO", "path": "29" }, "1497": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH2", "path": "29", "value": "0x5E6" }, "1500": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "JUMPI", "path": "29" }, "1501": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "RETURNDATASIZE", "path": "29" }, "1502": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1504": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "DUP1", "path": "29" }, "1505": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "RETURNDATACOPY", "path": "29" }, "1506": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "RETURNDATASIZE", "path": "29" }, "1507": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1509": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "REVERT", "path": "29" }, "1510": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11955, 12035 ], "op": "JUMPDEST", "path": "29" }, "1511": { "op": "POP" }, "1512": { "op": "POP" }, "1513": { "op": "POP" }, "1514": { "op": "POP" }, "1515": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12050, 12072 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1517": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12050, 12072 ], "op": "DUP2", "path": "29" }, "1518": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12050, 12072 ], "op": "ADD", "path": "29" }, "1519": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12050, 12072 ], "op": "MLOAD", "path": "29" }, "1520": { "op": "PUSH1", "value": "0x1" }, "1522": { "op": "PUSH1", "value": "0x1" }, "1524": { "op": "PUSH1", "value": "0xF8" }, "1526": { "op": "SHL" }, "1527": { "op": "SUB" }, "1528": { "op": "NOT" }, "1529": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12050, 12080 ], "op": "AND", "path": "29" }, "1530": { "branch": 374, "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12050, 12080 ], "op": "ISZERO", "path": "29" }, "1531": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12046, 12573 ], "op": "PUSH2", "path": "29", "value": "0x666" }, "1534": { "branch": 374, "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12046, 12573 ], "op": "JUMPI", "path": "29" }, "1535": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "statement": 23, "value": "0x40" }, "1537": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "MLOAD", "path": "29" }, "1538": { "op": "PUSH4", "value": "0x6CCC642F" }, "1543": { "op": "PUSH1", "value": "0xE0" }, "1545": { "op": "SHL" }, "1546": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP2", "path": "29" }, "1547": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "MSTORE", "path": "29" }, "1548": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12524 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "1569": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12524 ], "op": "SWAP1", "path": "29" }, "1570": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12553 ], "op": "PUSH4", "path": "29", "value": "0x6CCC642F" }, "1575": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12553 ], "op": "SWAP1", "path": "29" }, "1576": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH2", "path": "29", "value": "0x635" }, "1579": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "SWAP1", "path": "29" }, "1580": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12554, 12561 ], "op": "DUP10", "path": "29" }, "1581": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12554, 12561 ], "op": "SWAP1", "path": "29" }, "1582": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "1584": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "ADD", "path": "29" }, "1585": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH2", "path": "29", "value": "0x4641" }, "1588": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "i", "offset": [ 12502, 12562 ], "op": "JUMP", "path": "29" }, "1589": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "JUMPDEST", "path": "29" }, "1590": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1592": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1594": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "MLOAD", "path": "29" }, "1595": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP1", "path": "29" }, "1596": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP4", "path": "29" }, "1597": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "SUB", "path": "29" }, "1598": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP2", "path": "29" }, "1599": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP7", "path": "29" }, "1600": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP1", "path": "29" }, "1601": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "EXTCODESIZE", "path": "29" }, "1602": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "ISZERO", "path": "29" }, "1603": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP1", "path": "29" }, "1604": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "ISZERO", "path": "29" }, "1605": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH2", "path": "29", "value": "0x64D" }, "1608": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "JUMPI", "path": "29" }, "1609": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1611": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP1", "path": "29" }, "1612": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "REVERT", "path": "29" }, "1613": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "JUMPDEST", "path": "29" }, "1614": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "POP", "path": "29" }, "1615": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "GAS", "path": "29" }, "1616": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DELEGATECALL", "path": "29" }, "1617": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "ISZERO", "path": "29" }, "1618": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP1", "path": "29" }, "1619": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "ISZERO", "path": "29" }, "1620": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH2", "path": "29", "value": "0x661" }, "1623": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "JUMPI", "path": "29" }, "1624": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "RETURNDATASIZE", "path": "29" }, "1625": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1627": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "DUP1", "path": "29" }, "1628": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "RETURNDATACOPY", "path": "29" }, "1629": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "RETURNDATASIZE", "path": "29" }, "1630": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1632": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "REVERT", "path": "29" }, "1633": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "JUMPDEST", "path": "29" }, "1634": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "POP", "path": "29" }, "1635": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "POP", "path": "29" }, "1636": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "POP", "path": "29" }, "1637": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12502, 12562 ], "op": "POP", "path": "29" }, "1638": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 12046, 12573 ], "op": "JUMPDEST", "path": "29" }, "1639": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "POP", "path": "29" }, "1640": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "POP", "path": "29" }, "1641": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "POP", "path": "29" }, "1642": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "POP", "path": "29" }, "1643": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "POP", "path": "29" }, "1644": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "offset": [ 11159, 12579 ], "op": "POP", "path": "29" }, "1645": { "fn": "BatchAction.batchBalanceAndTradeActionWithCallback", "jump": "o", "offset": [ 11159, 12579 ], "op": "JUMP", "path": "29" }, "1646": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1241, 2768 ], "op": "JUMPDEST", "path": "29" }, "1647": { "offset": [ 319, 320 ], "op": "PUSH1", "path": "28", "value": "0x2" }, "1649": { "offset": [ 838, 854 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "1651": { "fn": "BatchAction.batchBalanceAction", "offset": [ 838, 854 ], "op": "SLOAD", "path": "28" }, "1652": { "offset": [ 838, 866 ], "op": "EQ", "path": "28" }, "1653": { "branch": 438, "fn": "BatchAction.batchBalanceAction", "offset": [ 838, 866 ], "op": "ISZERO", "path": "28" }, "1654": { "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x691" }, "1657": { "branch": 438, "offset": [ 830, 885 ], "op": "JUMPI", "path": "28" }, "1658": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x40" }, "1660": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "MLOAD", "path": "28" }, "1661": { "op": "PUSH3", "value": "0x461BCD" }, "1665": { "op": "PUSH1", "value": "0xE5" }, "1667": { "op": "SHL" }, "1668": { "offset": [ 830, 885 ], "op": "DUP2", "path": "28" }, "1669": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "MSTORE", "path": "28" }, "1670": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "PUSH1", "path": "28", "value": "0x4" }, "1672": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "ADD", "path": "28" }, "1673": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x17A" }, "1676": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "SWAP1", "path": "28" }, "1677": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "PUSH2", "path": "28", "value": "0x49C5" }, "1680": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 830, 885 ], "op": "JUMP", "path": "28" }, "1681": { "fn": "BatchAction.batchBalanceAction", "offset": [ 830, 885 ], "op": "JUMPDEST", "path": "28" }, "1682": { "offset": [ 319, 320 ], "op": "PUSH1", "path": "28", "value": "0x2" }, "1684": { "offset": [ 960, 976 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "1686": { "offset": [ 960, 987 ], "op": "SSTORE", "path": "28" }, "1687": { "op": "PUSH1", "value": "0x1" }, "1689": { "op": "PUSH1", "value": "0x1" }, "1691": { "op": "PUSH1", "value": "0xA0" }, "1693": { "op": "SHL" }, "1694": { "op": "SUB" }, "1695": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1417 ], "op": "DUP4", "path": "29", "statement": 24 }, "1696": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1417 ], "op": "AND", "path": "29" }, "1697": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1407, 1417 ], "op": "CALLER", "path": "29" }, "1698": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1417 ], "op": "EQ", "path": "29" }, "1699": { "branch": 375, "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1417 ], "op": "DUP1", "path": "29" }, "1700": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1448 ], "op": "PUSH2", "path": "29", "value": "0x6AC" }, "1703": { "branch": 375, "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1448 ], "op": "JUMPI", "path": "29" }, "1704": { "op": "POP" }, "1705": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1421, 1431 ], "op": "CALLER", "path": "29" }, "1706": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1443, 1447 ], "op": "ADDRESS", "path": "29" }, "1707": { "branch": 376, "fn": "BatchAction.batchBalanceAction", "offset": [ 1421, 1448 ], "op": "EQ", "path": "29" }, "1708": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1396, 1448 ], "op": "JUMPDEST", "path": "29" }, "1709": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "PUSH2", "path": "29", "value": "0x6C8" }, "1712": { "branch": 376, "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "JUMPI", "path": "29" }, "1713": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1715": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "MLOAD", "path": "29" }, "1716": { "op": "PUSH3", "value": "0x461BCD" }, "1720": { "op": "PUSH1", "value": "0xE5" }, "1722": { "op": "SHL" }, "1723": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "DUP2", "path": "29" }, "1724": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "MSTORE", "path": "29" }, "1725": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "1727": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "ADD", "path": "29" }, "1728": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "1731": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "SWAP1", "path": "29" }, "1732": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "PUSH2", "path": "29", "value": "0x48B4" }, "1735": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1388, 1465 ], "op": "JUMP", "path": "29" }, "1736": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1388, 1465 ], "op": "JUMPDEST", "path": "29" }, "1737": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1475, 1503 ], "op": "PUSH2", "path": "29", "statement": 25, "value": "0x6D1" }, "1740": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1495, 1502 ], "op": "DUP4", "path": "29" }, "1741": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1475, 1494 ], "op": "PUSH2", "path": "29", "value": "0x8A0" }, "1744": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1475, 1503 ], "op": "JUMP", "path": "29" }, "1745": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1475, 1503 ], "op": "JUMPDEST", "path": "29" }, "1746": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1514, 1550 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1748": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1553, 1586 ], "op": "PUSH2", "path": "29", "value": "0x6DC" }, "1751": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1578, 1585 ], "op": "DUP5", "path": "29" }, "1752": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1553, 1577 ], "op": "PUSH2", "path": "29", "value": "0xB2B" }, "1755": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1553, 1586 ], "op": "JUMP", "path": "29" }, "1756": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1553, 1586 ], "op": "JUMPDEST", "path": "29" }, "1757": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1514, 1586 ], "op": "SWAP1", "path": "29" }, "1758": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1514, 1586 ], "op": "POP", "path": "29" }, "1759": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1596, 1628 ], "op": "PUSH2", "path": "29", "value": "0x6E6" }, "1762": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1596, 1628 ], "op": "PUSH2", "path": "29", "value": "0x3F12" }, "1765": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1596, 1628 ], "op": "JUMP", "path": "29" }, "1766": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1596, 1628 ], "op": "JUMPDEST", "path": "29" }, "1767": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1644, 1653 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1769": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "JUMPDEST", "path": "29" }, "1770": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1659, 1677 ], "op": "DUP4", "path": "29" }, "1771": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1659, 1677 ], "op": "DUP2", "path": "29" }, "1772": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1659, 1677 ], "op": "LT", "path": "29" }, "1773": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "ISZERO", "path": "29" }, "1774": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "PUSH2", "path": "29", "value": "0x7DD" }, "1777": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "JUMPI", "path": "29" }, "1778": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1698, 1727 ], "op": "CALLDATASIZE", "path": "29" }, "1779": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1737 ], "op": "DUP6", "path": "29" }, "1780": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1737 ], "op": "DUP6", "path": "29" }, "1781": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1738, 1739 ], "op": "DUP4", "path": "29" }, "1782": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "DUP2", "path": "29" }, "1783": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "DUP2", "path": "29" }, "1784": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "LT", "path": "29" }, "1785": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "PUSH2", "path": "29", "value": "0x6FE" }, "1788": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "JUMPI", "path": "29" }, "1789": { "dev": "Index out of range", "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "INVALID", "path": "29" }, "1790": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "JUMPDEST", "path": "29" }, "1791": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "SWAP1", "path": "29" }, "1792": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "POP", "path": "29" }, "1793": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "1795": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "MUL", "path": "29" }, "1796": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1730, 1740 ], "op": "ADD", "path": "29" }, "1797": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1698, 1740 ], "op": "SWAP1", "path": "29" }, "1798": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1698, 1740 ], "op": "POP", "path": "29" }, "1799": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1957, 1958 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "1801": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1953, 1954 ], "op": "DUP3", "path": "29" }, "1802": { "branch": 377, "fn": "BatchAction.batchBalanceAction", "offset": [ 1953, 1958 ], "op": "GT", "path": "29" }, "1803": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1949, 2067 ], "op": "ISZERO", "path": "29" }, "1804": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1949, 2067 ], "op": "PUSH2", "path": "29", "value": "0x76B" }, "1807": { "branch": 377, "fn": "BatchAction.batchBalanceAction", "offset": [ 1949, 2067 ], "op": "JUMPI", "path": "29" }, "1808": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2013 ], "op": "DUP6", "path": "29", "statement": 26 }, "1809": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2013 ], "op": "DUP6", "path": "29" }, "1810": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2018, 2019 ], "op": "PUSH1", "path": "29", "value": "0x1" }, "1812": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2014, 2015 ], "op": "DUP5", "path": "29" }, "1813": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2014, 2019 ], "op": "SUB", "path": "29" }, "1814": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "DUP2", "path": "29" }, "1815": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "DUP2", "path": "29" }, "1816": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "LT", "path": "29" }, "1817": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "PUSH2", "path": "29", "value": "0x71E" }, "1820": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "JUMPI", "path": "29" }, "1821": { "dev": "Index out of range", "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "INVALID", "path": "29" }, "1822": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "JUMPDEST", "path": "29" }, "1823": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "SWAP1", "path": "29" }, "1824": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "POP", "path": "29" }, "1825": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "1827": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "MUL", "path": "29" }, "1828": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2020 ], "op": "ADD", "path": "29" }, "1829": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1831": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "ADD", "path": "29" }, "1832": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1834": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "DUP2", "path": "29" }, "1835": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "ADD", "path": "29" }, "1836": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "SWAP1", "path": "29" }, "1837": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "PUSH2", "path": "29", "value": "0x736" }, "1840": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "SWAP2", "path": "29" }, "1841": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "SWAP1", "path": "29" }, "1842": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "1845": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2006, 2031 ], "op": "JUMP", "path": "29" }, "1846": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2006, 2031 ], "op": "JUMPDEST", "path": "29" }, "1847": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2031 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "1850": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2031 ], "op": "AND", "path": "29" }, "1851": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "PUSH2", "path": "29", "value": "0x74A" }, "1854": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1856": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "DUP4", "path": "29" }, "1857": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "ADD", "path": "29" }, "1858": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1860": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "DUP5", "path": "29" }, "1861": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "ADD", "path": "29" }, "1862": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "1865": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1986, 2003 ], "op": "JUMP", "path": "29" }, "1866": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2003 ], "op": "JUMPDEST", "path": "29" }, "1867": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2031 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "1870": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2031 ], "op": "AND", "path": "29" }, "1871": { "branch": 378, "fn": "BatchAction.batchBalanceAction", "offset": [ 1986, 2031 ], "op": "GT", "path": "29" }, "1872": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "PUSH2", "path": "29", "value": "0x76B" }, "1875": { "branch": 378, "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "JUMPI", "path": "29" }, "1876": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1878": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "MLOAD", "path": "29" }, "1879": { "op": "PUSH3", "value": "0x461BCD" }, "1883": { "op": "PUSH1", "value": "0xE5" }, "1885": { "op": "SHL" }, "1886": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "DUP2", "path": "29" }, "1887": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "MSTORE", "path": "29" }, "1888": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "1890": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "ADD", "path": "29" }, "1891": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "1894": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "SWAP1", "path": "29" }, "1895": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "PUSH2", "path": "29", "value": "0x4964" }, "1898": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 1978, 2052 ], "op": "JUMP", "path": "29" }, "1899": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1978, 2052 ], "op": "JUMPDEST", "path": "29" }, "1900": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2135, 2208 ], "op": "PUSH2", "path": "29", "statement": 27, "value": "0x788" }, "1903": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2165, 2172 ], "op": "DUP8", "path": "29" }, "1904": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "PUSH2", "path": "29", "value": "0x77F" }, "1907": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1909": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "DUP5", "path": "29" }, "1910": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "ADD", "path": "29" }, "1911": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1913": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "DUP6", "path": "29" }, "1914": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "ADD", "path": "29" }, "1915": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "1918": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2174, 2191 ], "op": "JUMP", "path": "29" }, "1919": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2174, 2191 ], "op": "JUMPDEST", "path": "29" }, "1920": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2135, 2147 ], "op": "DUP6", "path": "29" }, "1921": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2135, 2147 ], "op": "SWAP2", "path": "29" }, "1922": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2135, 2208 ], "op": "SWAP1", "path": "29" }, "1923": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2193, 2207 ], "op": "DUP8", "path": "29" }, "1924": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2135, 2164 ], "op": "PUSH2", "path": "29", "value": "0xC79" }, "1927": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2135, 2208 ], "op": "JUMP", "path": "29" }, "1928": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2135, 2208 ], "op": "JUMPDEST", "path": "29" }, "1929": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2223, 2392 ], "op": "PUSH2", "path": "29", "statement": 28, "value": "0x7A4" }, "1932": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2262, 2269 ], "op": "DUP8", "path": "29" }, "1933": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2287, 2299 ], "op": "DUP5", "path": "29" }, "1934": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2334 ], "op": "PUSH2", "path": "29", "value": "0x79A" }, "1937": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2334 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "1939": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2334 ], "op": "DUP6", "path": "29" }, "1940": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2334 ], "op": "ADD", "path": "29" }, "1941": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2323 ], "op": "DUP6", "path": "29" }, "1942": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2334 ], "op": "PUSH2", "path": "29", "value": "0x43B9" }, "1945": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2317, 2334 ], "op": "JUMP", "path": "29" }, "1946": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2317, 2334 ], "op": "JUMPDEST", "path": "29" }, "1947": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2352, 2358 ], "op": "DUP5", "path": "29" }, "1948": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2352, 2378 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "1950": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2352, 2378 ], "op": "ADD", "path": "29" }, "1951": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2352, 2378 ], "op": "CALLDATALOAD", "path": "29" }, "1952": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2223, 2244 ], "op": "PUSH2", "path": "29", "value": "0x1605" }, "1955": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2223, 2392 ], "op": "JUMP", "path": "29" }, "1956": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2223, 2392 ], "op": "JUMPDEST", "path": "29" }, "1957": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2407, 2692 ], "op": "PUSH2", "path": "29", "statement": 29, "value": "0x7D4" }, "1960": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2460, 2467 ], "op": "DUP8", "path": "29" }, "1961": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2485, 2499 ], "op": "DUP6", "path": "29" }, "1962": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2517, 2529 ], "op": "DUP6", "path": "29" }, "1963": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2547, 2585 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "1965": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2547, 2585 ], "op": "DUP6", "path": "29" }, "1966": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2547, 2585 ], "op": "ADD", "path": "29" }, "1967": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2547, 2585 ], "op": "CALLDATALOAD", "path": "29" }, "1968": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "PUSH2", "path": "29", "value": "0x7BF" }, "1971": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "PUSH1", "path": "29", "value": "0xA0" }, "1973": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "DUP8", "path": "29" }, "1974": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "ADD", "path": "29" }, "1975": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "PUSH1", "path": "29", "value": "0x80" }, "1977": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "DUP9", "path": "29" }, "1978": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "ADD", "path": "29" }, "1979": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "PUSH2", "path": "29", "value": "0x439D" }, "1982": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2603, 2635 ], "op": "JUMP", "path": "29" }, "1983": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2603, 2635 ], "op": "JUMPDEST", "path": "29" }, "1984": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "PUSH2", "path": "29", "value": "0x7CF" }, "1987": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "1989": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "DUP9", "path": "29" }, "1990": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "ADD", "path": "29" }, "1991": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "PUSH1", "path": "29", "value": "0xA0" }, "1993": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "DUP10", "path": "29" }, "1994": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "ADD", "path": "29" }, "1995": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "PUSH2", "path": "29", "value": "0x439D" }, "1998": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2653, 2678 ], "op": "JUMP", "path": "29" }, "1999": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2653, 2678 ], "op": "JUMPDEST", "path": "29" }, "2000": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2407, 2442 ], "op": "PUSH2", "path": "29", "value": "0x16D8" }, "2003": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2407, 2692 ], "op": "JUMP", "path": "29" }, "2004": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2407, 2692 ], "op": "JUMPDEST", "path": "29" }, "2005": { "op": "POP" }, "2006": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1679, 1682 ], "op": "PUSH1", "path": "29", "statement": 30, "value": "0x1" }, "2008": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1679, 1682 ], "op": "ADD", "path": "29" }, "2009": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "PUSH2", "path": "29", "value": "0x6E9" }, "2012": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "JUMP", "path": "29" }, "2013": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "JUMPDEST", "path": "29" }, "2014": { "fn": "BatchAction.batchBalanceAction", "offset": [ 1639, 2703 ], "op": "POP", "path": "29" }, "2015": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2713, 2761 ], "op": "PUSH2", "path": "29", "statement": 31, "value": "0x7E8" }, "2018": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2737, 2744 ], "op": "DUP6", "path": "29" }, "2019": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2746, 2760 ], "op": "DUP4", "path": "29" }, "2020": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2713, 2736 ], "op": "PUSH2", "path": "29", "value": "0xAAA" }, "2023": { "fn": "BatchAction.batchBalanceAction", "jump": "i", "offset": [ 2713, 2761 ], "op": "JUMP", "path": "29" }, "2024": { "fn": "BatchAction.batchBalanceAction", "offset": [ 2713, 2761 ], "op": "JUMPDEST", "path": "29" }, "2025": { "op": "POP" }, "2026": { "op": "POP" }, "2027": { "offset": [ 276, 277 ], "op": "PUSH1", "path": "28", "value": "0x1" }, "2029": { "offset": [ 1142, 1158 ], "op": "PUSH1", "path": "28", "value": "0xA" }, "2031": { "offset": [ 1142, 1173 ], "op": "SSTORE", "path": "28" }, "2032": { "op": "POP" }, "2033": { "op": "POP" }, "2034": { "op": "POP" }, "2035": { "fn": "BatchAction.batchBalanceAction", "jump": "o", "offset": [ 1241, 2768 ], "op": "JUMP", "path": "29" }, "2036": { "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "2037": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "PUSH1", "path": "63", "value": "0x1" }, "2039": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "SLOAD", "path": "63" }, "2040": { "op": "PUSH1", "value": "0x1" }, "2042": { "op": "PUSH1", "value": "0x1" }, "2044": { "op": "PUSH1", "value": "0xA0" }, "2046": { "op": "SHL" }, "2047": { "op": "SUB" }, "2048": { "offset": [ 920, 946 ], "op": "AND", "path": "63" }, "2049": { "fn": "BatchAction.batchBalanceAction", "offset": [ 920, 946 ], "op": "DUP2", "path": "63" }, "2050": { "fn": "BatchAction.batchBalanceAction", "jump": "o", "offset": [ 920, 946 ], "op": "JUMP", "path": "63" }, "2051": { "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "2052": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "2054": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "SLOAD", "path": "63" }, "2055": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "PUSH5", "path": "63", "value": "0x100000000" }, "2061": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "SWAP1", "path": "63" }, "2062": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "DIV", "path": "63" }, "2063": { "op": "PUSH1", "value": "0x1" }, "2065": { "op": "PUSH1", "value": "0x1" }, "2067": { "op": "PUSH1", "value": "0xA0" }, "2069": { "op": "SHL" }, "2070": { "op": "SUB" }, "2071": { "offset": [ 811, 831 ], "op": "AND", "path": "63" }, "2072": { "fn": "BatchAction.batchBalanceAction", "offset": [ 811, 831 ], "op": "DUP2", "path": "63" }, "2073": { "fn": "BatchAction.batchBalanceAction", "jump": "o", "offset": [ 811, 831 ], "op": "JUMP", "path": "63" }, "2074": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "JUMPDEST", "path": "29" }, "2075": { "fn": "BatchAction.getLibInfo", "offset": [ 23897, 23928 ], "op": "PUSH20", "path": "29", "statement": 32, "value": "0x0" }, "2096": { "fn": "BatchAction.getLibInfo", "offset": [ 23943, 23969 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2117": { "fn": "BatchAction.getLibInfo", "offset": [ 23984, 24013 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2138": { "fn": "BatchAction.getLibInfo", "offset": [ 24028, 24050 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2159": { "fn": "BatchAction.getLibInfo", "offset": [ 24064, 24089 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2180": { "fn": "BatchAction.getLibInfo", "offset": [ 24104, 24131 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2201": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP1", "path": "29" }, "2202": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP2", "path": "29" }, "2203": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP3", "path": "29" }, "2204": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP4", "path": "29" }, "2205": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP5", "path": "29" }, "2206": { "fn": "BatchAction.getLibInfo", "offset": [ 23767, 24148 ], "op": "SWAP6", "path": "29" }, "2207": { "fn": "BatchAction.getLibInfo", "jump": "o", "offset": [ 23767, 24148 ], "op": "JUMP", "path": "29" }, "2208": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1296, 1762 ], "op": "JUMPDEST", "path": "28" }, "2209": { "op": "PUSH1", "value": "0x1" }, "2211": { "op": "PUSH1", "value": "0x1" }, "2213": { "op": "PUSH1", "value": "0xA0" }, "2215": { "op": "SHL" }, "2216": { "op": "SUB" }, "2217": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1374, 1402 ], "op": "DUP2", "path": "28", "statement": 33 }, "2218": { "branch": 439, "fn": "ActionGuards.requireValidAccount", "offset": [ 1374, 1402 ], "op": "AND", "path": "28" }, "2219": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "PUSH2", "path": "28", "value": "0x8B3" }, "2222": { "branch": 439, "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "JUMPI", "path": "28" }, "2223": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "2225": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "DUP1", "path": "28" }, "2226": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "REVERT", "path": "28" }, "2227": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "JUMPDEST", "path": "28" }, "2228": { "op": "PUSH1", "value": "0x1" }, "2230": { "op": "PUSH1", "value": "0x1" }, "2232": { "op": "PUSH1", "value": "0xA0" }, "2234": { "op": "SHL" }, "2235": { "op": "SUB" }, "2236": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "DUP2", "path": "28", "statement": 34 }, "2237": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "AND", "path": "28" }, "2238": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1473, 1477 ], "op": "ADDRESS", "path": "28" }, "2239": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "EQ", "path": "28" }, "2240": { "branch": 440, "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "ISZERO", "path": "28" }, "2241": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "PUSH2", "path": "28", "value": "0x8C9" }, "2244": { "branch": 440, "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "JUMPI", "path": "28" }, "2245": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "2247": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "DUP1", "path": "28" }, "2248": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "REVERT", "path": "28" }, "2249": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "JUMPDEST", "path": "28" }, "2250": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1503, 1519 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "2252": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1684, 1723 ], "op": "PUSH2", "path": "28", "value": "0x8D4" }, "2255": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1715, 1722 ], "op": "DUP3", "path": "28" }, "2256": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1684, 1714 ], "op": "PUSH2", "path": "28", "value": "0x1755" }, "2259": { "fn": "ActionGuards.requireValidAccount", "jump": "i", "offset": [ 1684, 1723 ], "op": "JUMP", "path": "28" }, "2260": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1684, 1723 ], "op": "JUMPDEST", "path": "28" }, "2261": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "2262": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "2263": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "2264": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "2265": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "PUSH2", "path": "28", "value": "0xFFFF" }, "2268": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "AND", "path": "28" }, "2269": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "SWAP1", "path": "28" }, "2270": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "2271": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1741, 1749 ], "op": "DUP1", "path": "28", "statement": 35 }, "2272": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1753, 1754 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "2274": { "branch": 441, "fn": "ActionGuards.requireValidAccount", "offset": [ 1741, 1754 ], "op": "EQ", "path": "28" }, "2275": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "PUSH2", "path": "28", "value": "0x8EB" }, "2278": { "branch": 441, "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "JUMPI", "path": "28" }, "2279": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "2281": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "DUP1", "path": "28" }, "2282": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "REVERT", "path": "28" }, "2283": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "JUMPDEST", "path": "28" }, "2284": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1296, 1762 ], "op": "POP", "path": "28" }, "2285": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1296, 1762 ], "op": "POP", "path": "28" }, "2286": { "fn": "ActionGuards.requireValidAccount", "jump": "o", "offset": [ 1296, 1762 ], "op": "JUMP", "path": "28" }, "2287": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "JUMPDEST", "path": "29" }, "2288": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12723, 12744 ], "op": "PUSH2", "path": "29", "value": "0x8F7" }, "2291": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12723, 12744 ], "op": "PUSH2", "path": "29", "value": "0x3F62" }, "2294": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 12723, 12744 ], "op": "JUMP", "path": "29" }, "2295": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12723, 12744 ], "op": "JUMPDEST", "path": "29" }, "2296": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12756, 12792 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2298": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12795, 12828 ], "op": "PUSH2", "path": "29", "value": "0x902" }, "2301": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12820, 12827 ], "op": "DUP6", "path": "29" }, "2302": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12795, 12819 ], "op": "PUSH2", "path": "29", "value": "0xB2B" }, "2305": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 12795, 12828 ], "op": "JUMP", "path": "29" }, "2306": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12795, 12828 ], "op": "JUMPDEST", "path": "29" }, "2307": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12756, 12828 ], "op": "SWAP1", "path": "29" }, "2308": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12756, 12828 ], "op": "POP", "path": "29" }, "2309": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12838, 12870 ], "op": "PUSH2", "path": "29", "value": "0x90C" }, "2312": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12838, 12870 ], "op": "PUSH2", "path": "29", "value": "0x3F12" }, "2315": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 12838, 12870 ], "op": "JUMP", "path": "29" }, "2316": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12838, 12870 ], "op": "JUMPDEST", "path": "29" }, "2317": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13047, 13083 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2319": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13086, 13213 ], "op": "PUSH2", "path": "29", "value": "0x91E" }, "2322": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13136, 13143 ], "op": "DUP8", "path": "29" }, "2323": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13157, 13171 ], "op": "DUP5", "path": "29" }, "2324": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13157, 13188 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2326": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13157, 13188 ], "op": "ADD", "path": "29" }, "2327": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13157, 13188 ], "op": "MLOAD", "path": "29" }, "2328": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13202, 13203 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2330": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13086, 13122 ], "op": "PUSH2", "path": "29", "value": "0xBE7" }, "2333": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13086, 13213 ], "op": "JUMP", "path": "29" }, "2334": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13086, 13213 ], "op": "JUMPDEST", "path": "29" }, "2335": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13047, 13213 ], "op": "SWAP1", "path": "29" }, "2336": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13047, 13213 ], "op": "POP", "path": "29" }, "2337": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13229, 13238 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2339": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "JUMPDEST", "path": "29" }, "2340": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13244, 13262 ], "op": "DUP6", "path": "29" }, "2341": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13244, 13262 ], "op": "DUP2", "path": "29" }, "2342": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13244, 13262 ], "op": "LT", "path": "29" }, "2343": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "ISZERO", "path": "29" }, "2344": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "PUSH2", "path": "29", "value": "0xA82" }, "2347": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "JUMPI", "path": "29" }, "2348": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13283, 13322 ], "op": "CALLDATASIZE", "path": "29" }, "2349": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13332 ], "op": "DUP8", "path": "29" }, "2350": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13332 ], "op": "DUP8", "path": "29" }, "2351": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13333, 13334 ], "op": "DUP4", "path": "29" }, "2352": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "DUP2", "path": "29" }, "2353": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "DUP2", "path": "29" }, "2354": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "LT", "path": "29" }, "2355": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "PUSH2", "path": "29", "value": "0x938" }, "2358": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "JUMPI", "path": "29" }, "2359": { "dev": "Index out of range", "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "INVALID", "path": "29" }, "2360": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "JUMPDEST", "path": "29" }, "2361": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "SWAP1", "path": "29" }, "2362": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "POP", "path": "29" }, "2363": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2365": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "MUL", "path": "29" }, "2366": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "DUP2", "path": "29" }, "2367": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "ADD", "path": "29" }, "2368": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "SWAP1", "path": "29" }, "2369": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "PUSH2", "path": "29", "value": "0x94A" }, "2372": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "SWAP2", "path": "29" }, "2373": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "SWAP1", "path": "29" }, "2374": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "PUSH2", "path": "29", "value": "0x4B1D" }, "2377": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13325, 13335 ], "op": "JUMP", "path": "29" }, "2378": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13325, 13335 ], "op": "JUMPDEST", "path": "29" }, "2379": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13283, 13335 ], "op": "SWAP1", "path": "29" }, "2380": { "op": "POP" }, "2381": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13548, 13553 ], "op": "DUP2", "path": "29" }, "2382": { "branch": 379, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13548, 13553 ], "op": "ISZERO", "path": "29" }, "2383": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13544, 13662 ], "op": "PUSH2", "path": "29", "value": "0x9B9" }, "2386": { "branch": 379, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13544, 13662 ], "op": "JUMPI", "path": "29" }, "2387": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13608 ], "op": "DUP8", "path": "29", "statement": 36 }, "2388": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13608 ], "op": "DUP8", "path": "29" }, "2389": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13613, 13614 ], "op": "PUSH1", "path": "29", "value": "0x1" }, "2391": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13609, 13610 ], "op": "DUP5", "path": "29" }, "2392": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13609, 13614 ], "op": "SUB", "path": "29" }, "2393": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "DUP2", "path": "29" }, "2394": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "DUP2", "path": "29" }, "2395": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "LT", "path": "29" }, "2396": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "PUSH2", "path": "29", "value": "0x961" }, "2399": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "JUMPI", "path": "29" }, "2400": { "dev": "Index out of range", "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "INVALID", "path": "29" }, "2401": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "JUMPDEST", "path": "29" }, "2402": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "SWAP1", "path": "29" }, "2403": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "POP", "path": "29" }, "2404": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2406": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "MUL", "path": "29" }, "2407": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "DUP2", "path": "29" }, "2408": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "ADD", "path": "29" }, "2409": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "SWAP1", "path": "29" }, "2410": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "PUSH2", "path": "29", "value": "0x973" }, "2413": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "SWAP2", "path": "29" }, "2414": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "SWAP1", "path": "29" }, "2415": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "PUSH2", "path": "29", "value": "0x4B1D" }, "2418": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13601, 13615 ], "op": "JUMP", "path": "29" }, "2419": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13615 ], "op": "JUMPDEST", "path": "29" }, "2420": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "PUSH2", "path": "29", "value": "0x984" }, "2423": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "SWAP1", "path": "29" }, "2424": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2426": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "DUP2", "path": "29" }, "2427": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "ADD", "path": "29" }, "2428": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "SWAP1", "path": "29" }, "2429": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2431": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "ADD", "path": "29" }, "2432": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "2435": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13601, 13626 ], "op": "JUMP", "path": "29" }, "2436": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13601, 13626 ], "op": "JUMPDEST", "path": "29" }, "2437": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13626 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "2440": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13626 ], "op": "AND", "path": "29" }, "2441": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "PUSH2", "path": "29", "value": "0x998" }, "2444": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2446": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "DUP4", "path": "29" }, "2447": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "ADD", "path": "29" }, "2448": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2450": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "DUP5", "path": "29" }, "2451": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "ADD", "path": "29" }, "2452": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "2455": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13581, 13598 ], "op": "JUMP", "path": "29" }, "2456": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13598 ], "op": "JUMPDEST", "path": "29" }, "2457": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13626 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "2460": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13626 ], "op": "AND", "path": "29" }, "2461": { "branch": 380, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13581, 13626 ], "op": "GT", "path": "29" }, "2462": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "PUSH2", "path": "29", "value": "0x9B9" }, "2465": { "branch": 380, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "JUMPI", "path": "29" }, "2466": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2468": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "MLOAD", "path": "29" }, "2469": { "op": "PUSH3", "value": "0x461BCD" }, "2473": { "op": "PUSH1", "value": "0xE5" }, "2475": { "op": "SHL" }, "2476": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "DUP2", "path": "29" }, "2477": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "MSTORE", "path": "29" }, "2478": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "2480": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "ADD", "path": "29" }, "2481": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "2484": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "SWAP1", "path": "29" }, "2485": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "PUSH2", "path": "29", "value": "0x4964" }, "2488": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13573, 13647 ], "op": "JUMP", "path": "29" }, "2489": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13573, 13647 ], "op": "JUMPDEST", "path": "29" }, "2490": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13730, 13803 ], "op": "PUSH2", "path": "29", "statement": 37, "value": "0x9D6" }, "2493": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13760, 13767 ], "op": "DUP10", "path": "29" }, "2494": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "PUSH2", "path": "29", "value": "0x9CD" }, "2497": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2499": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "DUP5", "path": "29" }, "2500": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "ADD", "path": "29" }, "2501": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2503": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "DUP6", "path": "29" }, "2504": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "ADD", "path": "29" }, "2505": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "2508": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13769, 13786 ], "op": "JUMP", "path": "29" }, "2509": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13769, 13786 ], "op": "JUMPDEST", "path": "29" }, "2510": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13730, 13742 ], "op": "DUP7", "path": "29" }, "2511": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13730, 13742 ], "op": "SWAP2", "path": "29" }, "2512": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13730, 13803 ], "op": "SWAP1", "path": "29" }, "2513": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13788, 13802 ], "op": "DUP9", "path": "29" }, "2514": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13730, 13759 ], "op": "PUSH2", "path": "29", "value": "0xC79" }, "2517": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13730, 13803 ], "op": "JUMP", "path": "29" }, "2518": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13730, 13803 ], "op": "JUMPDEST", "path": "29" }, "2519": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13905, 14074 ], "op": "PUSH2", "path": "29", "statement": 38, "value": "0x9E8" }, "2522": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13944, 13951 ], "op": "DUP10", "path": "29" }, "2523": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13969, 13981 ], "op": "DUP6", "path": "29" }, "2524": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13999, 14016 ], "op": "PUSH2", "path": "29", "value": "0x79A" }, "2527": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13999, 14016 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2529": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13999, 14016 ], "op": "DUP6", "path": "29" }, "2530": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13999, 14016 ], "op": "ADD", "path": "29" }, "2531": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13999, 14005 ], "op": "DUP6", "path": "29" }, "2532": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13999, 14016 ], "op": "PUSH2", "path": "29", "value": "0x43B9" }, "2535": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 13999, 14016 ], "op": "JUMP", "path": "29" }, "2536": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13905, 14074 ], "op": "JUMPDEST", "path": "29" }, "2537": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14116, 14117 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2539": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14106 ], "op": "PUSH2", "path": "29", "value": "0x9F7" }, "2542": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14106 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "2544": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14106 ], "op": "DUP4", "path": "29" }, "2545": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14106 ], "op": "ADD", "path": "29" }, "2546": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14099 ], "op": "DUP4", "path": "29" }, "2547": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14106 ], "op": "PUSH2", "path": "29", "value": "0x4AD7" }, "2550": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14093, 14106 ], "op": "JUMP", "path": "29" }, "2551": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14106 ], "op": "JUMPDEST", "path": "29" }, "2552": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14113 ], "op": "SWAP1", "path": "29" }, "2553": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14113 ], "op": "POP", "path": "29" }, "2554": { "branch": 381, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14093, 14117 ], "op": "GT", "path": "29" }, "2555": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14089, 14675 ], "op": "ISZERO", "path": "29" }, "2556": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14089, 14675 ], "op": "PUSH2", "path": "29", "value": "0xA5E" }, "2559": { "branch": 381, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14089, 14675 ], "op": "JUMPI", "path": "29" }, "2560": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14137, 14151 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2562": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14197, 14404 ], "op": "PUSH2", "path": "29", "statement": 39, "value": "0xA29" }, "2565": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14233, 14240 ], "op": "DUP11", "path": "29" }, "2566": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "PUSH2", "path": "29", "value": "0xA15" }, "2569": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2571": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "DUP6", "path": "29" }, "2572": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "ADD", "path": "29" }, "2573": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2575": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "DUP7", "path": "29" }, "2576": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "ADD", "path": "29" }, "2577": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "PUSH2", "path": "29", "value": "0x4579" }, "2580": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14262, 14279 ], "op": "JUMP", "path": "29" }, "2581": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14262, 14279 ], "op": "JUMPDEST", "path": "29" }, "2582": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14314 ], "op": "PUSH2", "path": "29", "value": "0xA22" }, "2585": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14314 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "2587": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14314 ], "op": "DUP7", "path": "29" }, "2588": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14314 ], "op": "ADD", "path": "29" }, "2589": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14307 ], "op": "DUP7", "path": "29" }, "2590": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14314 ], "op": "PUSH2", "path": "29", "value": "0x4AD7" }, "2593": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14301, 14314 ], "op": "JUMP", "path": "29" }, "2594": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14301, 14314 ], "op": "JUMPDEST", "path": "29" }, "2595": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14336, 14350 ], "op": "DUP11", "path": "29" }, "2596": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14372, 14386 ], "op": "DUP10", "path": "29" }, "2597": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14197, 14211 ], "op": "PUSH2", "path": "29", "value": "0xD1F" }, "2600": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14197, 14404 ], "op": "JUMP", "path": "29" }, "2601": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14197, 14404 ], "op": "JUMPDEST", "path": "29" }, "2602": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14169, 14404 ], "op": "SWAP5", "path": "29" }, "2603": { "op": "POP" }, "2604": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14169, 14404 ], "op": "SWAP1", "path": "29" }, "2605": { "op": "POP" }, "2606": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14522, 14523 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2608": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14512, 14523 ], "op": "DUP2", "path": "29" }, "2609": { "branch": 382, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14512, 14523 ], "op": "SLT", "path": "29" }, "2610": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14508, 14574 ], "op": "ISZERO", "path": "29" }, "2611": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14508, 14574 ], "op": "PUSH2", "path": "29", "value": "0xA48" }, "2614": { "branch": 382, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14508, 14574 ], "op": "JUMPI", "path": "29" }, "2615": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14525, 14574 ], "op": "PUSH2", "path": "29", "statement": 40, "value": "0xA48" }, "2618": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14546, 14558 ], "op": "DUP6", "path": "29" }, "2619": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14560, 14573 ], "op": "PUSH2", "path": "29", "value": "0xA43" }, "2622": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14560, 14567 ], "op": "DUP4", "path": "29" }, "2623": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14560, 14571 ], "op": "PUSH2", "path": "29", "value": "0xEE1" }, "2626": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14560, 14573 ], "op": "JUMP", "path": "29" }, "2627": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14560, 14573 ], "op": "JUMPDEST", "path": "29" }, "2628": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14525, 14545 ], "op": "PUSH2", "path": "29", "value": "0x17BE" }, "2631": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14525, 14574 ], "op": "JUMP", "path": "29" }, "2632": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14525, 14574 ], "op": "JUMPDEST", "path": "29" }, "2633": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14647 ], "op": "PUSH1", "path": "29", "statement": 41, "value": "0x60" }, "2635": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14647 ], "op": "DUP6", "path": "29" }, "2636": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14647 ], "op": "ADD", "path": "29" }, "2637": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14647 ], "op": "MLOAD", "path": "29" }, "2638": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14660 ], "op": "PUSH2", "path": "29", "value": "0xA57" }, "2641": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14660 ], "op": "SWAP1", "path": "29" }, "2642": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14652, 14659 ], "op": "DUP3", "path": "29" }, "2643": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14651 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "2646": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14621, 14660 ], "op": "JUMP", "path": "29" }, "2647": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14621, 14660 ], "op": "JUMPDEST", "path": "29" }, "2648": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14592, 14618 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "2650": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14592, 14618 ], "op": "DUP7", "path": "29" }, "2651": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14592, 14618 ], "op": "ADD", "path": "29" }, "2652": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14592, 14660 ], "op": "MSTORE", "path": "29" }, "2653": { "op": "POP" }, "2654": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14089, 14675 ], "op": "JUMPDEST", "path": "29" }, "2655": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14689, 14974 ], "op": "PUSH2", "path": "29", "statement": 42, "value": "0xA79" }, "2658": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14742, 14749 ], "op": "DUP10", "path": "29" }, "2659": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14767, 14781 ], "op": "DUP7", "path": "29" }, "2660": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14799, 14811 ], "op": "DUP7", "path": "29" }, "2661": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14829, 14867 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "2663": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14829, 14867 ], "op": "DUP6", "path": "29" }, "2664": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14829, 14867 ], "op": "ADD", "path": "29" }, "2665": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14829, 14867 ], "op": "CALLDATALOAD", "path": "29" }, "2666": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "PUSH2", "path": "29", "value": "0x7BF" }, "2669": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "PUSH1", "path": "29", "value": "0xA0" }, "2671": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "DUP8", "path": "29" }, "2672": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "ADD", "path": "29" }, "2673": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "PUSH1", "path": "29", "value": "0x80" }, "2675": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "DUP9", "path": "29" }, "2676": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "ADD", "path": "29" }, "2677": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14885, 14917 ], "op": "PUSH2", "path": "29", "value": "0x439D" }, "2680": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 14885, 14917 ], "op": "JUMP", "path": "29" }, "2681": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 14689, 14974 ], "op": "JUMPDEST", "path": "29" }, "2682": { "op": "POP" }, "2683": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13264, 13267 ], "op": "PUSH1", "path": "29", "statement": 43, "value": "0x1" }, "2685": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13264, 13267 ], "op": "ADD", "path": "29" }, "2686": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "PUSH2", "path": "29", "value": "0x923" }, "2689": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "JUMP", "path": "29" }, "2690": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "JUMPDEST", "path": "29" }, "2691": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 13224, 14985 ], "op": "POP", "path": "29" }, "2692": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15165, 15197 ], "op": "PUSH2", "path": "29", "value": "0xA8C" }, "2695": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15165, 15179 ], "op": "DUP4", "path": "29" }, "2696": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15165, 15195 ], "op": "PUSH2", "path": "29", "value": "0x1412" }, "2699": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 15165, 15197 ], "op": "JUMP", "path": "29" }, "2700": { "branch": 383, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15165, 15197 ], "op": "JUMPDEST", "path": "29" }, "2701": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15160, 15381 ], "op": "PUSH2", "path": "29", "value": "0xA9D" }, "2704": { "branch": 383, "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15160, 15381 ], "op": "JUMPI", "path": "29" }, "2705": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15296, 15370 ], "op": "PUSH2", "path": "29", "statement": 44, "value": "0xA9D" }, "2708": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15296, 15310 ], "op": "DUP4", "path": "29" }, "2709": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15339, 15346 ], "op": "DUP9", "path": "29" }, "2710": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15348, 15362 ], "op": "DUP4", "path": "29" }, "2711": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15364, 15369 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2713": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15296, 15338 ], "op": "PUSH2", "path": "29", "value": "0x141F" }, "2716": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "i", "offset": [ 15296, 15370 ], "op": "JUMP", "path": "29" }, "2717": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15296, 15370 ], "op": "JUMPDEST", "path": "29" }, "2718": { "op": "POP" }, "2719": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15492, 15506 ], "op": "SWAP1", "path": "29", "statement": 45 }, "2720": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 15492, 15506 ], "op": "SWAP2", "path": "29" }, "2721": { "op": "POP" }, "2722": { "op": "POP" }, "2723": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "JUMPDEST", "path": "29" }, "2724": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "SWAP4", "path": "29" }, "2725": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "SWAP3", "path": "29" }, "2726": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "POP", "path": "29" }, "2727": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "POP", "path": "29" }, "2728": { "fn": "BatchAction._batchBalanceAndTradeAction", "offset": [ 12585, 15513 ], "op": "POP", "path": "29" }, "2729": { "fn": "BatchAction._batchBalanceAndTradeAction", "jump": "o", "offset": [ 12585, 15513 ], "op": "JUMP", "path": "29" }, "2730": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 20741, 21191 ], "op": "JUMPDEST", "path": "29" }, "2731": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21013, 21054 ], "op": "PUSH2", "path": "29", "statement": 46, "value": "0xAB4" }, "2734": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21013, 21027 ], "op": "DUP2", "path": "29" }, "2735": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21046, 21053 ], "op": "DUP4", "path": "29" }, "2736": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21013, 21045 ], "op": "PUSH2", "path": "29", "value": "0x1501" }, "2739": { "fn": "BatchAction._finalizeAccountContext", "jump": "i", "offset": [ 21013, 21054 ], "op": "JUMP", "path": "29" }, "2740": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21013, 21054 ], "op": "JUMPDEST", "path": "29" }, "2741": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21068, 21090 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "2743": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21068, 21090 ], "op": "DUP2", "path": "29" }, "2744": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21068, 21090 ], "op": "ADD", "path": "29" }, "2745": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21068, 21090 ], "op": "MLOAD", "path": "29" }, "2746": { "op": "PUSH1", "value": "0x1" }, "2748": { "op": "PUSH1", "value": "0x1" }, "2750": { "op": "PUSH1", "value": "0xF8" }, "2752": { "op": "SHL" }, "2753": { "op": "SUB" }, "2754": { "op": "NOT" }, "2755": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21068, 21098 ], "op": "AND", "path": "29" }, "2756": { "branch": 384, "fn": "BatchAction._finalizeAccountContext", "offset": [ 21068, 21098 ], "op": "ISZERO", "path": "29" }, "2757": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21064, 21185 ], "op": "PUSH2", "path": "29", "value": "0x8EB" }, "2760": { "branch": 384, "fn": "BatchAction._finalizeAccountContext", "offset": [ 21064, 21185 ], "op": "JUMPI", "path": "29" }, "2761": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "statement": 47, "value": "0x40" }, "2763": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "MLOAD", "path": "29" }, "2764": { "op": "PUSH4", "value": "0x6CCC642F" }, "2769": { "op": "PUSH1", "value": "0xE0" }, "2771": { "op": "SHL" }, "2772": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP2", "path": "29" }, "2773": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "MSTORE", "path": "29" }, "2774": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21136 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2795": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21136 ], "op": "SWAP1", "path": "29" }, "2796": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21165 ], "op": "PUSH4", "path": "29", "value": "0x6CCC642F" }, "2801": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21165 ], "op": "SWAP1", "path": "29" }, "2802": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH2", "path": "29", "value": "0xAFF" }, "2805": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "SWAP1", "path": "29" }, "2806": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21166, 21173 ], "op": "DUP6", "path": "29" }, "2807": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21166, 21173 ], "op": "SWAP1", "path": "29" }, "2808": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "2810": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "ADD", "path": "29" }, "2811": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH2", "path": "29", "value": "0x4641" }, "2814": { "fn": "BatchAction._finalizeAccountContext", "jump": "i", "offset": [ 21114, 21174 ], "op": "JUMP", "path": "29" }, "2815": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "JUMPDEST", "path": "29" }, "2816": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2818": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2820": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "MLOAD", "path": "29" }, "2821": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP1", "path": "29" }, "2822": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP4", "path": "29" }, "2823": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "SUB", "path": "29" }, "2824": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP2", "path": "29" }, "2825": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP7", "path": "29" }, "2826": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP1", "path": "29" }, "2827": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "EXTCODESIZE", "path": "29" }, "2828": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "ISZERO", "path": "29" }, "2829": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP1", "path": "29" }, "2830": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "ISZERO", "path": "29" }, "2831": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH2", "path": "29", "value": "0xB17" }, "2834": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "JUMPI", "path": "29" }, "2835": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2837": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP1", "path": "29" }, "2838": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "REVERT", "path": "29" }, "2839": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "JUMPDEST", "path": "29" }, "2840": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "POP", "path": "29" }, "2841": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "GAS", "path": "29" }, "2842": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DELEGATECALL", "path": "29" }, "2843": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "ISZERO", "path": "29" }, "2844": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP1", "path": "29" }, "2845": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "ISZERO", "path": "29" }, "2846": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH2", "path": "29", "value": "0x666" }, "2849": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "JUMPI", "path": "29" }, "2850": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "RETURNDATASIZE", "path": "29" }, "2851": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2853": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "DUP1", "path": "29" }, "2854": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "RETURNDATACOPY", "path": "29" }, "2855": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "RETURNDATASIZE", "path": "29" }, "2856": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2858": { "fn": "BatchAction._finalizeAccountContext", "offset": [ 21114, 21174 ], "op": "REVERT", "path": "29" }, "2859": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23208, 23679 ], "op": "JUMPDEST", "path": "29" }, "2860": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23292, 23313 ], "op": "PUSH2", "path": "29", "value": "0xB33" }, "2863": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23292, 23313 ], "op": "PUSH2", "path": "29", "value": "0x3F62" }, "2866": { "fn": "BatchAction._settleAccountIfRequired", "jump": "i", "offset": [ 23292, 23313 ], "op": "JUMP", "path": "29" }, "2867": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23292, 23313 ], "op": "JUMPDEST", "path": "29" }, "2868": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23329, 23365 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2870": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23368, 23416 ], "op": "PUSH2", "path": "29", "value": "0xB3E" }, "2873": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23408, 23415 ], "op": "DUP4", "path": "29" }, "2874": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23368, 23407 ], "op": "PUSH2", "path": "29", "value": "0x180D" }, "2877": { "fn": "BatchAction._settleAccountIfRequired", "jump": "i", "offset": [ 23368, 23416 ], "op": "JUMP", "path": "29" }, "2878": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23368, 23416 ], "op": "JUMPDEST", "path": "29" }, "2879": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23329, 23416 ], "op": "SWAP1", "path": "29" }, "2880": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23329, 23416 ], "op": "POP", "path": "29" }, "2881": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23430, 23463 ], "op": "PUSH2", "path": "29", "value": "0xB49" }, "2884": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23430, 23444 ], "op": "DUP2", "path": "29" }, "2885": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23430, 23461 ], "op": "PUSH2", "path": "29", "value": "0x18AE" }, "2888": { "fn": "BatchAction._settleAccountIfRequired", "jump": "i", "offset": [ 23430, 23463 ], "op": "JUMP", "path": "29" }, "2889": { "branch": 385, "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23430, 23463 ], "op": "JUMPDEST", "path": "29" }, "2890": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23426, 23673 ], "op": "ISZERO", "path": "29" }, "2891": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23426, 23673 ], "op": "PUSH2", "path": "29", "value": "0xBDF" }, "2894": { "branch": 385, "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23426, 23673 ], "op": "JUMPI", "path": "29" }, "2895": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "statement": 48, "value": "0x40" }, "2897": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "MLOAD", "path": "29" }, "2898": { "op": "PUSH4", "value": "0x37B5FC21" }, "2903": { "op": "PUSH1", "value": "0xE1" }, "2905": { "op": "SHL" }, "2906": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP2", "path": "29" }, "2907": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "MSTORE", "path": "29" }, "2908": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23571 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "2929": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23571 ], "op": "SWAP1", "path": "29" }, "2930": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23585 ], "op": "PUSH4", "path": "29", "value": "0x6F6BF842" }, "2935": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23585 ], "op": "SWAP1", "path": "29" }, "2936": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH2", "path": "29", "value": "0xB87" }, "2939": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "SWAP1", "path": "29" }, "2940": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23586, 23593 ], "op": "DUP7", "path": "29" }, "2941": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23586, 23593 ], "op": "SWAP1", "path": "29" }, "2942": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23595, 23609 ], "op": "DUP6", "path": "29" }, "2943": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23595, 23609 ], "op": "SWAP1", "path": "29" }, "2944": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "2946": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ADD", "path": "29" }, "2947": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH2", "path": "29", "value": "0x46D8" }, "2950": { "fn": "BatchAction._settleAccountIfRequired", "jump": "i", "offset": [ 23551, 23610 ], "op": "JUMP", "path": "29" }, "2951": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "JUMPDEST", "path": "29" }, "2952": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0xA0" }, "2954": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "2956": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "MLOAD", "path": "29" }, "2957": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "2958": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP4", "path": "29" }, "2959": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "SUB", "path": "29" }, "2960": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP2", "path": "29" }, "2961": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP7", "path": "29" }, "2962": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "2963": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "EXTCODESIZE", "path": "29" }, "2964": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ISZERO", "path": "29" }, "2965": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "2966": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ISZERO", "path": "29" }, "2967": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH2", "path": "29", "value": "0xB9F" }, "2970": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "JUMPI", "path": "29" }, "2971": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2973": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "2974": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "REVERT", "path": "29" }, "2975": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "JUMPDEST", "path": "29" }, "2976": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "POP", "path": "29" }, "2977": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "GAS", "path": "29" }, "2978": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DELEGATECALL", "path": "29" }, "2979": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ISZERO", "path": "29" }, "2980": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "2981": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ISZERO", "path": "29" }, "2982": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH2", "path": "29", "value": "0xBB3" }, "2985": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "JUMPI", "path": "29" }, "2986": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "RETURNDATASIZE", "path": "29" }, "2987": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2989": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "2990": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "RETURNDATACOPY", "path": "29" }, "2991": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "RETURNDATASIZE", "path": "29" }, "2992": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "2994": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "REVERT", "path": "29" }, "2995": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "JUMPDEST", "path": "29" }, "2996": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "POP", "path": "29" }, "2997": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "POP", "path": "29" }, "2998": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "POP", "path": "29" }, "2999": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "POP", "path": "29" }, "3000": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3002": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "MLOAD", "path": "29" }, "3003": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "RETURNDATASIZE", "path": "29" }, "3004": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "3006": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "NOT", "path": "29" }, "3007": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "3009": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP3", "path": "29" }, "3010": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ADD", "path": "29" }, "3011": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "AND", "path": "29" }, "3012": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP3", "path": "29" }, "3013": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ADD", "path": "29" }, "3014": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP1", "path": "29" }, "3015": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3017": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "MSTORE", "path": "29" }, "3018": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "POP", "path": "29" }, "3019": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "DUP2", "path": "29" }, "3020": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "ADD", "path": "29" }, "3021": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "SWAP1", "path": "29" }, "3022": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH2", "path": "29", "value": "0xBD7" }, "3025": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "SWAP2", "path": "29" }, "3026": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "SWAP1", "path": "29" }, "3027": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "PUSH2", "path": "29", "value": "0x441F" }, "3030": { "fn": "BatchAction._settleAccountIfRequired", "jump": "i", "offset": [ 23551, 23610 ], "op": "JUMP", "path": "29" }, "3031": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23551, 23610 ], "op": "JUMPDEST", "path": "29" }, "3032": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23544, 23610 ], "op": "SWAP2", "path": "29" }, "3033": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23544, 23610 ], "op": "POP", "path": "29" }, "3034": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23544, 23610 ], "op": "POP", "path": "29" }, "3035": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23544, 23610 ], "op": "PUSH2", "path": "29", "value": "0xBE2" }, "3038": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23544, 23610 ], "op": "JUMP", "path": "29" }, "3039": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23426, 23673 ], "op": "JUMPDEST", "path": "29" }, "3040": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23648, 23662 ], "op": "SWAP1", "path": "29", "statement": 49 }, "3041": { "op": "POP" }, "3042": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23208, 23679 ], "op": "JUMPDEST", "path": "29" }, "3043": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23208, 23679 ], "op": "SWAP2", "path": "29" }, "3044": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23208, 23679 ], "op": "SWAP1", "path": "29" }, "3045": { "fn": "BatchAction._settleAccountIfRequired", "offset": [ 23208, 23679 ], "op": "POP", "path": "29" }, "3046": { "fn": "BatchAction._settleAccountIfRequired", "jump": "o", "offset": [ 23208, 23679 ], "op": "JUMP", "path": "29" }, "3047": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15438, 15915 ], "op": "JUMPDEST", "path": "84" }, "3048": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15584, 15605 ], "op": "PUSH2", "path": "84", "value": "0xBEF" }, "3051": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15584, 15605 ], "op": "PUSH2", "path": "84", "value": "0x3F90" }, "3054": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15584, 15605 ], "op": "JUMP", "path": "84" }, "3055": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15584, 15605 ], "op": "JUMPDEST", "path": "84" }, "3056": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15617, 15644 ], "op": "PUSH2", "path": "84", "value": "0xBF7" }, "3059": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15617, 15644 ], "op": "PUSH2", "path": "84", "value": "0x3F90" }, "3062": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15617, 15644 ], "op": "JUMP", "path": "84" }, "3063": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15617, 15644 ], "op": "JUMPDEST", "path": "84" }, "3064": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15658, 15679 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "3066": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15658, 15679 ], "op": "DUP5", "path": "84" }, "3067": { "branch": 494, "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15658, 15679 ], "op": "AND", "path": "84" }, "3068": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15654, 15693 ], "op": "PUSH2", "path": "84", "value": "0xC06" }, "3071": { "branch": 494, "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15654, 15693 ], "op": "JUMPI", "path": "84" }, "3072": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15688, 15693 ], "op": "SWAP1", "path": "84", "statement": 50 }, "3073": { "op": "POP" }, "3074": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15681, 15693 ], "op": "PUSH2", "path": "84", "value": "0xAA3" }, "3077": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15681, 15693 ], "op": "JUMP", "path": "84" }, "3078": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15654, 15693 ], "op": "JUMPDEST", "path": "84" }, "3079": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15725, 15770 ], "op": "PUSH2", "path": "84", "statement": 51, "value": "0xC10" }, "3082": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15744, 15751 ], "op": "DUP6", "path": "84" }, "3083": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15753, 15769 ], "op": "DUP6", "path": "84" }, "3084": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15725, 15743 ], "op": "PUSH2", "path": "84", "value": "0x18FF" }, "3087": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15725, 15770 ], "op": "JUMP", "path": "84" }, "3088": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15725, 15770 ], "op": "JUMPDEST", "path": "84" }, "3089": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15704, 15770 ], "op": "DUP2", "path": "84" }, "3090": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15704, 15770 ], "op": "MSTORE", "path": "84" }, "3091": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "PUSH1", "path": "84", "statement": 52, "value": "0xFF" }, "3093": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "DUP5", "path": "84" }, "3094": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "AND", "path": "84" }, "3095": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15803 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "3097": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15803 ], "op": "DUP3", "path": "84" }, "3098": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15803 ], "op": "ADD", "path": "84" }, "3099": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "MSTORE", "path": "84" }, "3100": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15871, 15884 ], "op": "DUP3", "path": "84", "statement": 53 }, "3101": { "op": "PUSH1", "value": "0x1" }, "3103": { "op": "PUSH1", "value": "0x1" }, "3105": { "op": "PUSH1", "value": "0x40" }, "3107": { "op": "SHL" }, "3108": { "op": "SUB" }, "3109": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "3110": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "GT", "path": "84" }, "3111": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "3112": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ISZERO", "path": "84" }, "3113": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0xC31" }, "3116": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPI", "path": "84" }, "3117": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "3119": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "3120": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "REVERT", "path": "84" }, "3121": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "3122": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "POP", "path": "84" }, "3123": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "3125": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MLOAD", "path": "84" }, "3126": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "3127": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "3128": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP3", "path": "84" }, "3129": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MSTORE", "path": "84" }, "3130": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "3131": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "3133": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MUL", "path": "84" }, "3134": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "3136": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "3137": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP3", "path": "84" }, "3138": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "3139": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "3141": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MSTORE", "path": "84" }, "3142": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "3143": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ISZERO", "path": "84" }, "3144": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0xC6B" }, "3147": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPI", "path": "84" }, "3148": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "3149": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "3151": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "3152": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "3153": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0xC58" }, "3156": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0x3FB8" }, "3159": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15850, 15885 ], "op": "JUMP", "path": "84" }, "3160": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "3161": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "3162": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MSTORE", "path": "84" }, "3163": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "3165": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "3166": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "3167": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "3169": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "3170": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SUB", "path": "84" }, "3171": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "3172": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "3173": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0xC50" }, "3176": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPI", "path": "84" }, "3177": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "3178": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "POP", "path": "84" }, "3179": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "3180": { "op": "POP" }, "3181": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "3183": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "DUP3", "path": "84" }, "3184": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "ADD", "path": "84" }, "3185": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15885 ], "op": "MSTORE", "path": "84" }, "3186": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "SWAP5", "path": "84" }, "3187": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15438, 15915 ], "op": "SWAP4", "path": "84" }, "3188": { "op": "POP" }, "3189": { "op": "POP" }, "3190": { "op": "POP" }, "3191": { "op": "POP" }, "3192": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "o", "offset": [ 15438, 15915 ], "op": "JUMP", "path": "84" }, "3193": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 21924, 23003 ], "op": "JUMPDEST", "path": "67" }, "3194": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22132, 22142 ], "op": "DUP2", "path": "67", "statement": 54 }, "3195": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22142 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "3198": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22142 ], "op": "AND", "path": "67" }, "3199": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22129 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "3201": { "branch": 446, "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22142 ], "op": "LT", "path": "67" }, "3202": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22184 ], "op": "DUP1", "path": "67" }, "3203": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22184 ], "op": "ISZERO", "path": "67" }, "3204": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22184 ], "op": "PUSH2", "path": "67", "value": "0xC93" }, "3207": { "branch": 446, "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22184 ], "op": "JUMPI", "path": "67" }, "3208": { "op": "POP" }, "3209": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "3212": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22146, 22184 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "3215": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22146, 22184 ], "op": "DUP4", "path": "67" }, "3216": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22146, 22184 ], "op": "AND", "path": "67" }, "3217": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22146, 22184 ], "op": "GT", "path": "67" }, "3218": { "branch": 447, "fn": "BalanceHandler.loadBalanceState", "offset": [ 22146, 22184 ], "op": "ISZERO", "path": "67" }, "3219": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22128, 22184 ], "op": "JUMPDEST", "path": "67" }, "3220": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22120, 22185 ], "op": "PUSH2", "path": "67", "value": "0xC9C" }, "3223": { "branch": 447, "fn": "BalanceHandler.loadBalanceState", "offset": [ 22120, 22185 ], "op": "JUMPI", "path": "67" }, "3224": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22120, 22185 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "3226": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22120, 22185 ], "op": "DUP1", "path": "67" }, "3227": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22120, 22185 ], "op": "REVERT", "path": "67" }, "3228": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22120, 22185 ], "op": "JUMPDEST", "path": "67" }, "3229": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22223, 22259 ], "op": "PUSH2", "path": "67", "statement": 55, "value": "0xFFFF" }, "3232": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22223, 22259 ], "op": "DUP3", "path": "67" }, "3233": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22223, 22259 ], "op": "AND", "path": "67" }, "3234": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22223, 22259 ], "op": "DUP1", "path": "67" }, "3235": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22223, 22259 ], "op": "DUP6", "path": "67" }, "3236": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22223, 22259 ], "op": "MSTORE", "path": "67" }, "3237": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22274, 22319 ], "op": "PUSH2", "path": "67", "value": "0xCAF" }, "3240": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22274, 22319 ], "op": "SWAP1", "path": "67" }, "3241": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22274, 22288 ], "op": "DUP3", "path": "67" }, "3242": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22274, 22288 ], "op": "SWAP1", "path": "67" }, "3243": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22274, 22307 ], "op": "PUSH2", "path": "67", "value": "0x1928" }, "3246": { "fn": "BalanceHandler.loadBalanceState", "jump": "i", "offset": [ 22274, 22319 ], "op": "JUMP", "path": "67" }, "3247": { "branch": 448, "fn": "BalanceHandler.loadBalanceState", "offset": [ 22274, 22319 ], "op": "JUMPDEST", "path": "67" }, "3248": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "ISZERO", "path": "67" }, "3249": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "PUSH2", "path": "67", "value": "0xCDC" }, "3252": { "branch": 448, "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "JUMPI", "path": "67" }, "3253": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22545, 22583 ], "op": "PUSH2", "path": "67", "statement": 56, "value": "0xCC2" }, "3256": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22563, 22570 ], "op": "DUP4", "path": "67" }, "3257": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22572, 22582 ], "op": "DUP4", "path": "67" }, "3258": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22545, 22583 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "3261": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22545, 22583 ], "op": "AND", "path": "67" }, "3262": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22545, 22562 ], "op": "PUSH2", "path": "67", "value": "0x19B2" }, "3265": { "fn": "BalanceHandler.loadBalanceState", "jump": "i", "offset": [ 22545, 22583 ], "op": "JUMP", "path": "67" }, "3266": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22545, 22583 ], "op": "JUMPDEST", "path": "67" }, "3267": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22495, 22528 ], "op": "PUSH2", "path": "67", "value": "0x100" }, "3270": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22495, 22528 ], "op": "DUP9", "path": "67" }, "3271": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22495, 22528 ], "op": "ADD", "path": "67" }, "3272": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22335, 22583 ], "op": "MSTORE", "path": "67" }, "3273": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22451, 22477 ], "op": "PUSH1", "path": "67", "value": "0xE0" }, "3275": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22451, 22477 ], "op": "DUP8", "path": "67" }, "3276": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22451, 22477 ], "op": "ADD", "path": "67" }, "3277": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22335, 22583 ], "op": "MSTORE", "path": "67" }, "3278": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22401, 22433 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "3280": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22401, 22433 ], "op": "DUP7", "path": "67" }, "3281": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22401, 22433 ], "op": "ADD", "path": "67" }, "3282": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22335, 22583 ], "op": "MSTORE", "path": "67" }, "3283": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22353, 22383 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "3285": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22353, 22383 ], "op": "DUP6", "path": "67" }, "3286": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22353, 22383 ], "op": "ADD", "path": "67" }, "3287": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22335, 22583 ], "op": "MSTORE", "path": "67" }, "3288": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "PUSH2", "path": "67", "value": "0xCFA" }, "3291": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "JUMP", "path": "67" }, "3292": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "JUMPDEST", "path": "67" }, "3293": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22647, 22648 ], "op": "PUSH1", "path": "67", "statement": 57, "value": "0x0" }, "3295": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22614, 22644 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "3297": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22614, 22644 ], "op": "DUP6", "path": "67" }, "3298": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22614, 22644 ], "op": "ADD", "path": "67" }, "3299": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22614, 22648 ], "op": "DUP2", "path": "67" }, "3300": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22614, 22648 ], "op": "SWAP1", "path": "67" }, "3301": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22614, 22648 ], "op": "MSTORE", "path": "67" }, "3302": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22662, 22694 ], "op": "PUSH1", "path": "67", "statement": 58, "value": "0x40" }, "3304": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22662, 22694 ], "op": "DUP6", "path": "67" }, "3305": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22662, 22694 ], "op": "ADD", "path": "67" }, "3306": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22662, 22698 ], "op": "DUP2", "path": "67" }, "3307": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22662, 22698 ], "op": "SWAP1", "path": "67" }, "3308": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22662, 22698 ], "op": "MSTORE", "path": "67" }, "3309": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22712, 22738 ], "op": "PUSH1", "path": "67", "statement": 59, "value": "0xE0" }, "3311": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22712, 22738 ], "op": "DUP6", "path": "67" }, "3312": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22712, 22738 ], "op": "ADD", "path": "67" }, "3313": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22712, 22742 ], "op": "DUP2", "path": "67" }, "3314": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22712, 22742 ], "op": "SWAP1", "path": "67" }, "3315": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22712, 22742 ], "op": "MSTORE", "path": "67" }, "3316": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22756, 22789 ], "op": "PUSH2", "path": "67", "statement": 60, "value": "0x100" }, "3319": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22756, 22789 ], "op": "DUP6", "path": "67" }, "3320": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22756, 22789 ], "op": "ADD", "path": "67" }, "3321": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22756, 22793 ], "op": "MSTORE", "path": "67" }, "3322": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22270, 22804 ], "op": "JUMPDEST", "path": "67" }, "3323": { "op": "POP" }, "3324": { "op": "POP" }, "3325": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22843, 22844 ], "op": "PUSH1", "path": "67", "statement": 61, "value": "0x0" }, "3327": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22814, 22840 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "3329": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22814, 22840 ], "op": "DUP4", "path": "67" }, "3330": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22814, 22840 ], "op": "ADD", "path": "67" }, "3331": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22814, 22844 ], "op": "DUP2", "path": "67" }, "3332": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22814, 22844 ], "op": "SWAP1", "path": "67" }, "3333": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22814, 22844 ], "op": "MSTORE", "path": "67" }, "3334": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22854, 22900 ], "op": "PUSH1", "path": "67", "statement": 62, "value": "0x80" }, "3336": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22854, 22900 ], "op": "DUP4", "path": "67" }, "3337": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22854, 22900 ], "op": "ADD", "path": "67" }, "3338": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22854, 22904 ], "op": "DUP2", "path": "67" }, "3339": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22854, 22904 ], "op": "SWAP1", "path": "67" }, "3340": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22854, 22904 ], "op": "MSTORE", "path": "67" }, "3341": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22914, 22944 ], "op": "PUSH1", "path": "67", "statement": 63, "value": "0xA0" }, "3343": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22914, 22944 ], "op": "DUP4", "path": "67" }, "3344": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22914, 22944 ], "op": "ADD", "path": "67" }, "3345": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22914, 22948 ], "op": "DUP2", "path": "67" }, "3346": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22914, 22948 ], "op": "SWAP1", "path": "67" }, "3347": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22914, 22948 ], "op": "MSTORE", "path": "67" }, "3348": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22992 ], "op": "PUSH1", "path": "67", "statement": 64, "value": "0xC0" }, "3350": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22992 ], "op": "SWAP1", "path": "67" }, "3351": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22992 ], "op": "SWAP3", "path": "67" }, "3352": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22992 ], "op": "ADD", "path": "67" }, "3353": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22996 ], "op": "SWAP2", "path": "67" }, "3354": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22996 ], "op": "SWAP1", "path": "67" }, "3355": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22996 ], "op": "SWAP2", "path": "67" }, "3356": { "fn": "BalanceHandler.loadBalanceState", "offset": [ 22958, 22996 ], "op": "MSTORE", "path": "67" }, "3357": { "op": "POP" }, "3358": { "fn": "BalanceHandler.loadBalanceState", "jump": "o", "offset": [ 21924, 23003 ], "op": "JUMP", "path": "67" }, "3359": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "JUMPDEST", "path": "29" }, "3360": { "fn": "BatchAction._executeTrades", "offset": [ 21423, 21437 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3362": { "fn": "BatchAction._executeTrades", "offset": [ 21439, 21475 ], "op": "PUSH2", "path": "29", "value": "0xD29" }, "3365": { "fn": "BatchAction._executeTrades", "offset": [ 21439, 21475 ], "op": "PUSH2", "path": "29", "value": "0x3F90" }, "3368": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 21439, 21475 ], "op": "JUMP", "path": "29" }, "3369": { "fn": "BatchAction._executeTrades", "offset": [ 21439, 21475 ], "op": "JUMPDEST", "path": "29" }, "3370": { "fn": "BatchAction._executeTrades", "offset": [ 21491, 21523 ], "op": "PUSH2", "path": "29", "value": "0xD32" }, "3373": { "fn": "BatchAction._executeTrades", "offset": [ 21491, 21505 ], "op": "DUP5", "path": "29" }, "3374": { "fn": "BatchAction._executeTrades", "offset": [ 21491, 21521 ], "op": "PUSH2", "path": "29", "value": "0x1412" }, "3377": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 21491, 21523 ], "op": "JUMP", "path": "29" }, "3378": { "branch": 386, "fn": "BatchAction._executeTrades", "offset": [ 21491, 21523 ], "op": "JUMPDEST", "path": "29" }, "3379": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "ISZERO", "path": "29" }, "3380": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "PUSH2", "path": "29", "value": "0xE22" }, "3383": { "branch": 386, "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "JUMPI", "path": "29" }, "3384": { "fn": "BatchAction._executeTrades", "offset": [ 21599, 21609 ], "op": "DUP7", "path": "29", "statement": 65 }, "3385": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21609 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "3388": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21609 ], "op": "AND", "path": "29" }, "3389": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21578 ], "op": "DUP5", "path": "29" }, "3390": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21595 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "3392": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21595 ], "op": "ADD", "path": "29" }, "3393": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21595 ], "op": "MLOAD", "path": "29" }, "3394": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21609 ], "op": "PUSH2", "path": "29", "value": "0xFFFF" }, "3397": { "fn": "BatchAction._executeTrades", "offset": [ 21564, 21609 ], "op": "AND", "path": "29" }, "3398": { "branch": 387, "fn": "BatchAction._executeTrades", "offset": [ 21564, 21609 ], "op": "EQ", "path": "29" }, "3399": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "PUSH2", "path": "29", "value": "0xD62" }, "3402": { "branch": 387, "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "JUMPI", "path": "29" }, "3403": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3405": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "MLOAD", "path": "29" }, "3406": { "op": "PUSH3", "value": "0x461BCD" }, "3410": { "op": "PUSH1", "value": "0xE5" }, "3412": { "op": "SHL" }, "3413": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "DUP2", "path": "29" }, "3414": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "MSTORE", "path": "29" }, "3415": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "3417": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "ADD", "path": "29" }, "3418": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "3421": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "SWAP1", "path": "29" }, "3422": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "PUSH2", "path": "29", "value": "0x4A0F" }, "3425": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 21539, 21669 ], "op": "JUMP", "path": "29" }, "3426": { "fn": "BatchAction._executeTrades", "offset": [ 21539, 21669 ], "op": "JUMPDEST", "path": "29" }, "3427": { "fn": "BatchAction._executeTrades", "offset": [ 21821, 21852 ], "op": "PUSH1", "path": "29", "statement": 66, "value": "0x60" }, "3429": { "fn": "BatchAction._executeTrades", "offset": [ 21821, 21852 ], "op": "DUP5", "path": "29" }, "3430": { "fn": "BatchAction._executeTrades", "offset": [ 21821, 21852 ], "op": "ADD", "path": "29" }, "3431": { "fn": "BatchAction._executeTrades", "offset": [ 21821, 21852 ], "op": "MLOAD", "path": "29" }, "3432": { "fn": "BatchAction._executeTrades", "offset": [ 21870, 21899 ], "op": "DUP5", "path": "29" }, "3433": { "fn": "BatchAction._executeTrades", "offset": [ 21870, 21899 ], "op": "MLOAD", "path": "29" }, "3434": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3436": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "MLOAD", "path": "29" }, "3437": { "op": "PUSH4", "value": "0x3643F39B" }, "3442": { "op": "PUSH1", "value": "0xE0" }, "3444": { "op": "SHL" }, "3445": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP2", "path": "29" }, "3446": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "MSTORE", "path": "29" }, "3447": { "fn": "BatchAction._executeTrades", "offset": [ 21683, 21700 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3449": { "fn": "BatchAction._executeTrades", "offset": [ 21683, 21700 ], "op": "SWAP3", "path": "29" }, "3450": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21753 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "3471": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21753 ], "op": "SWAP3", "path": "29" }, "3472": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21778 ], "op": "PUSH4", "path": "29", "value": "0x3643F39B" }, "3477": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21778 ], "op": "SWAP3", "path": "29" }, "3478": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH2", "path": "29", "value": "0xDA9" }, "3481": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "SWAP3", "path": "29" }, "3482": { "fn": "BatchAction._executeTrades", "offset": [ 21796, 21803 ], "op": "DUP15", "path": "29" }, "3483": { "fn": "BatchAction._executeTrades", "offset": [ 21796, 21803 ], "op": "SWAP3", "path": "29" }, "3484": { "fn": "BatchAction._executeTrades", "offset": [ 21821, 21852 ], "op": "SWAP1", "path": "29" }, "3485": { "fn": "BatchAction._executeTrades", "offset": [ 21821, 21852 ], "op": "SWAP2", "path": "29" }, "3486": { "fn": "BatchAction._executeTrades", "offset": [ 21917, 21923 ], "op": "DUP14", "path": "29" }, "3487": { "fn": "BatchAction._executeTrades", "offset": [ 21917, 21923 ], "op": "SWAP1", "path": "29" }, "3488": { "fn": "BatchAction._executeTrades", "offset": [ 21917, 21923 ], "op": "DUP14", "path": "29" }, "3489": { "fn": "BatchAction._executeTrades", "offset": [ 21917, 21923 ], "op": "SWAP1", "path": "29" }, "3490": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "3492": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ADD", "path": "29" }, "3493": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH2", "path": "29", "value": "0x47CB" }, "3496": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 21740, 21937 ], "op": "JUMP", "path": "29" }, "3497": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "JUMPDEST", "path": "29" }, "3498": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3500": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3501": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "MLOAD", "path": "29" }, "3502": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3503": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP4", "path": "29" }, "3504": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "SUB", "path": "29" }, "3505": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP2", "path": "29" }, "3506": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP7", "path": "29" }, "3507": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3508": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "EXTCODESIZE", "path": "29" }, "3509": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ISZERO", "path": "29" }, "3510": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3511": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ISZERO", "path": "29" }, "3512": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH2", "path": "29", "value": "0xDC0" }, "3515": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "JUMPI", "path": "29" }, "3516": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3518": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3519": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "REVERT", "path": "29" }, "3520": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "JUMPDEST", "path": "29" }, "3521": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "POP", "path": "29" }, "3522": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "GAS", "path": "29" }, "3523": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DELEGATECALL", "path": "29" }, "3524": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ISZERO", "path": "29" }, "3525": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3526": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ISZERO", "path": "29" }, "3527": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH2", "path": "29", "value": "0xDD4" }, "3530": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "JUMPI", "path": "29" }, "3531": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "RETURNDATASIZE", "path": "29" }, "3532": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3534": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3535": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "RETURNDATACOPY", "path": "29" }, "3536": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "RETURNDATASIZE", "path": "29" }, "3537": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3539": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "REVERT", "path": "29" }, "3540": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "JUMPDEST", "path": "29" }, "3541": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "POP", "path": "29" }, "3542": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "POP", "path": "29" }, "3543": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "POP", "path": "29" }, "3544": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "POP", "path": "29" }, "3545": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3547": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "MLOAD", "path": "29" }, "3548": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "RETURNDATASIZE", "path": "29" }, "3549": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "3551": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "NOT", "path": "29" }, "3552": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "3554": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP3", "path": "29" }, "3555": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ADD", "path": "29" }, "3556": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "AND", "path": "29" }, "3557": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP3", "path": "29" }, "3558": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ADD", "path": "29" }, "3559": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP1", "path": "29" }, "3560": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3562": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "MSTORE", "path": "29" }, "3563": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "POP", "path": "29" }, "3564": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "DUP2", "path": "29" }, "3565": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "ADD", "path": "29" }, "3566": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "SWAP1", "path": "29" }, "3567": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH2", "path": "29", "value": "0xDF8" }, "3570": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "SWAP2", "path": "29" }, "3571": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "SWAP1", "path": "29" }, "3572": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "PUSH2", "path": "29", "value": "0x43F0" }, "3575": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 21740, 21937 ], "op": "JUMP", "path": "29" }, "3576": { "fn": "BatchAction._executeTrades", "offset": [ 21740, 21937 ], "op": "JUMPDEST", "path": "29" }, "3577": { "fn": "BatchAction._executeTrades", "offset": [ 21714, 21937 ], "op": "SWAP1", "path": "29" }, "3578": { "fn": "BatchAction._executeTrades", "offset": [ 21714, 21937 ], "op": "SWAP4", "path": "29" }, "3579": { "op": "POP" }, "3580": { "fn": "BatchAction._executeTrades", "offset": [ 21714, 21937 ], "op": "SWAP1", "path": "29" }, "3581": { "op": "POP" }, "3582": { "fn": "BatchAction._executeTrades", "offset": [ 21951, 22076 ], "op": "DUP1", "path": "29" }, "3583": { "fn": "BatchAction._executeTrades", "offset": [ 21951, 22076 ], "op": "ISZERO", "path": "29" }, "3584": { "fn": "BatchAction._executeTrades", "offset": [ 21951, 22076 ], "op": "PUSH2", "path": "29", "value": "0xE1C" }, "3587": { "fn": "BatchAction._executeTrades", "offset": [ 21951, 22076 ], "op": "JUMPI", "path": "29" }, "3588": { "fn": "BatchAction._executeTrades", "offset": [ 22039, 22061 ], "op": "PUSH1", "path": "29", "statement": 67, "value": "0x20" }, "3590": { "fn": "BatchAction._executeTrades", "offset": [ 22039, 22061 ], "op": "DUP6", "path": "29" }, "3591": { "fn": "BatchAction._executeTrades", "offset": [ 22039, 22061 ], "op": "ADD", "path": "29" }, "3592": { "fn": "BatchAction._executeTrades", "offset": [ 22039, 22061 ], "op": "DUP1", "path": "29" }, "3593": { "fn": "BatchAction._executeTrades", "offset": [ 22039, 22061 ], "op": "MLOAD", "path": "29" }, "3594": { "op": "PUSH1", "value": "0x1" }, "3596": { "op": "PUSH1", "value": "0xF8" }, "3598": { "op": "SHL" }, "3599": { "fn": "BatchAction._executeTrades", "offset": [ 22012, 22061 ], "op": "OR", "path": "29" }, "3600": { "op": "PUSH1", "value": "0x1" }, "3602": { "op": "PUSH1", "value": "0x1" }, "3604": { "op": "PUSH1", "value": "0xF8" }, "3606": { "op": "SHL" }, "3607": { "op": "SUB" }, "3608": { "op": "NOT" }, "3609": { "fn": "BatchAction._executeTrades", "offset": [ 21987, 22061 ], "op": "AND", "path": "29" }, "3610": { "fn": "BatchAction._executeTrades", "offset": [ 21987, 22061 ], "op": "SWAP1", "path": "29" }, "3611": { "fn": "BatchAction._executeTrades", "offset": [ 21987, 22061 ], "op": "MSTORE", "path": "29" }, "3612": { "fn": "BatchAction._executeTrades", "offset": [ 21951, 22076 ], "op": "JUMPDEST", "path": "29" }, "3613": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "POP", "path": "29" }, "3614": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "PUSH2", "path": "29", "value": "0xEBA" }, "3617": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "JUMP", "path": "29" }, "3618": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "JUMPDEST", "path": "29" }, "3619": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "statement": 68, "value": "0x40" }, "3621": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "MLOAD", "path": "29" }, "3622": { "op": "PUSH4", "value": "0xB58F83ED" }, "3627": { "op": "PUSH1", "value": "0xE0" }, "3629": { "op": "SHL" }, "3630": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP2", "path": "29" }, "3631": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "MSTORE", "path": "29" }, "3632": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22344 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "3653": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22344 ], "op": "SWAP1", "path": "29" }, "3654": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22368 ], "op": "PUSH4", "path": "29", "value": "0xB58F83ED" }, "3659": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22368 ], "op": "SWAP1", "path": "29" }, "3660": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH2", "path": "29", "value": "0xE61" }, "3663": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "SWAP1", "path": "29" }, "3664": { "fn": "BatchAction._executeTrades", "offset": [ 22386, 22393 ], "op": "DUP12", "path": "29" }, "3665": { "fn": "BatchAction._executeTrades", "offset": [ 22386, 22393 ], "op": "SWAP1", "path": "29" }, "3666": { "fn": "BatchAction._executeTrades", "offset": [ 22411, 22421 ], "op": "DUP12", "path": "29" }, "3667": { "fn": "BatchAction._executeTrades", "offset": [ 22411, 22421 ], "op": "SWAP1", "path": "29" }, "3668": { "fn": "BatchAction._executeTrades", "offset": [ 22439, 22453 ], "op": "DUP9", "path": "29" }, "3669": { "fn": "BatchAction._executeTrades", "offset": [ 22439, 22453 ], "op": "SWAP1", "path": "29" }, "3670": { "fn": "BatchAction._executeTrades", "offset": [ 22471, 22477 ], "op": "DUP13", "path": "29" }, "3671": { "fn": "BatchAction._executeTrades", "offset": [ 22471, 22477 ], "op": "SWAP1", "path": "29" }, "3672": { "fn": "BatchAction._executeTrades", "offset": [ 22471, 22477 ], "op": "DUP13", "path": "29" }, "3673": { "fn": "BatchAction._executeTrades", "offset": [ 22471, 22477 ], "op": "SWAP1", "path": "29" }, "3674": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "3676": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ADD", "path": "29" }, "3677": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH2", "path": "29", "value": "0x4744" }, "3680": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 22331, 22491 ], "op": "JUMP", "path": "29" }, "3681": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "JUMPDEST", "path": "29" }, "3682": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3684": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3686": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "MLOAD", "path": "29" }, "3687": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP1", "path": "29" }, "3688": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP4", "path": "29" }, "3689": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "SUB", "path": "29" }, "3690": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP2", "path": "29" }, "3691": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP7", "path": "29" }, "3692": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP1", "path": "29" }, "3693": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "EXTCODESIZE", "path": "29" }, "3694": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ISZERO", "path": "29" }, "3695": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP1", "path": "29" }, "3696": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ISZERO", "path": "29" }, "3697": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH2", "path": "29", "value": "0xE79" }, "3700": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "JUMPI", "path": "29" }, "3701": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3703": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP1", "path": "29" }, "3704": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "REVERT", "path": "29" }, "3705": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "JUMPDEST", "path": "29" }, "3706": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "POP", "path": "29" }, "3707": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "GAS", "path": "29" }, "3708": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DELEGATECALL", "path": "29" }, "3709": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ISZERO", "path": "29" }, "3710": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP1", "path": "29" }, "3711": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ISZERO", "path": "29" }, "3712": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH2", "path": "29", "value": "0xE8D" }, "3715": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "JUMPI", "path": "29" }, "3716": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "RETURNDATASIZE", "path": "29" }, "3717": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3719": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP1", "path": "29" }, "3720": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "RETURNDATACOPY", "path": "29" }, "3721": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "RETURNDATASIZE", "path": "29" }, "3722": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3724": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "REVERT", "path": "29" }, "3725": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "JUMPDEST", "path": "29" }, "3726": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "POP", "path": "29" }, "3727": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "POP", "path": "29" }, "3728": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "POP", "path": "29" }, "3729": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "POP", "path": "29" }, "3730": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3732": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "MLOAD", "path": "29" }, "3733": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "RETURNDATASIZE", "path": "29" }, "3734": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "3736": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP3", "path": "29" }, "3737": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "RETURNDATACOPY", "path": "29" }, "3738": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "3740": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "RETURNDATASIZE", "path": "29" }, "3741": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "SWAP1", "path": "29" }, "3742": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP2", "path": "29" }, "3743": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ADD", "path": "29" }, "3744": { "op": "PUSH1", "value": "0x1F" }, "3746": { "op": "NOT" }, "3747": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "AND", "path": "29" }, "3748": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP3", "path": "29" }, "3749": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ADD", "path": "29" }, "3750": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "3752": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "MSTORE", "path": "29" }, "3753": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH2", "path": "29", "value": "0xEB5" }, "3756": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "SWAP2", "path": "29" }, "3757": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "SWAP1", "path": "29" }, "3758": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "DUP2", "path": "29" }, "3759": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "ADD", "path": "29" }, "3760": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "SWAP1", "path": "29" }, "3761": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "PUSH2", "path": "29", "value": "0x44BE" }, "3764": { "fn": "BatchAction._executeTrades", "jump": "i", "offset": [ 22331, 22491 ], "op": "JUMP", "path": "29" }, "3765": { "fn": "BatchAction._executeTrades", "offset": [ 22331, 22491 ], "op": "JUMPDEST", "path": "29" }, "3766": { "fn": "BatchAction._executeTrades", "offset": [ 22303, 22491 ], "op": "SWAP3", "path": "29" }, "3767": { "op": "POP" }, "3768": { "fn": "BatchAction._executeTrades", "offset": [ 22303, 22491 ], "op": "SWAP1", "path": "29" }, "3769": { "op": "POP" }, "3770": { "fn": "BatchAction._executeTrades", "offset": [ 21487, 22502 ], "op": "JUMPDEST", "path": "29" }, "3771": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "SWAP7", "path": "29" }, "3772": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "POP", "path": "29" }, "3773": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "SWAP7", "path": "29" }, "3774": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "SWAP5", "path": "29" }, "3775": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "POP", "path": "29" }, "3776": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "POP", "path": "29" }, "3777": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "POP", "path": "29" }, "3778": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "POP", "path": "29" }, "3779": { "fn": "BatchAction._executeTrades", "offset": [ 21197, 22508 ], "op": "POP", "path": "29" }, "3780": { "fn": "BatchAction._executeTrades", "jump": "o", "offset": [ 21197, 22508 ], "op": "JUMP", "path": "29" }, "3781": { "fn": "SafeInt256.add", "offset": [ 1427, 1547 ], "op": "JUMPDEST", "path": "94" }, "3782": { "fn": "SafeInt256.add", "offset": [ 1516, 1521 ], "op": "DUP2", "path": "94", "statement": 69 }, "3783": { "fn": "SafeInt256.add", "offset": [ 1516, 1521 ], "op": "DUP2", "path": "94" }, "3784": { "fn": "SafeInt256.add", "offset": [ 1516, 1521 ], "op": "ADD", "path": "94" }, "3785": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "DUP3", "path": "94" }, "3786": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "DUP2", "path": "94" }, "3787": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "SLT", "path": "94" }, "3788": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "ISZERO", "path": "94" }, "3789": { "fn": "SafeInt256.add", "offset": [ 1483, 1491 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "3791": { "fn": "SafeInt256.add", "offset": [ 1532, 1538 ], "op": "DUP4", "path": "94" }, "3792": { "fn": "SafeInt256.add", "offset": [ 1532, 1538 ], "op": "SLT", "path": "94" }, "3793": { "fn": "SafeInt256.add", "offset": [ 1532, 1538 ], "op": "ISZERO", "path": "94" }, "3794": { "branch": 525, "fn": "SafeInt256.add", "offset": [ 1511, 1539 ], "op": "EQ", "path": "94" }, "3795": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "PUSH2", "path": "94", "value": "0xEDB" }, "3798": { "branch": 525, "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "JUMPI", "path": "94" }, "3799": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "3801": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "DUP1", "path": "94" }, "3802": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "REVERT", "path": "94" }, "3803": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "JUMPDEST", "path": "94" }, "3804": { "fn": "SafeInt256.add", "offset": [ 1427, 1547 ], "op": "SWAP3", "path": "94" }, "3805": { "fn": "SafeInt256.add", "offset": [ 1427, 1547 ], "op": "SWAP2", "path": "94" }, "3806": { "fn": "SafeInt256.add", "offset": [ 1427, 1547 ], "op": "POP", "path": "94" }, "3807": { "fn": "SafeInt256.add", "offset": [ 1427, 1547 ], "op": "POP", "path": "94" }, "3808": { "fn": "SafeInt256.add", "jump": "o", "offset": [ 1427, 1547 ], "op": "JUMP", "path": "94" }, "3809": { "fn": "SafeInt256.neg", "offset": [ 1553, 1643 ], "op": "JUMPDEST", "path": "94" }, "3810": { "fn": "SafeInt256.neg", "offset": [ 1599, 1607 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "3812": { "fn": "SafeInt256.neg", "offset": [ 1626, 1636 ], "op": "PUSH2", "path": "94", "statement": 70, "value": "0xBDF" }, "3815": { "op": "PUSH1", "value": "0x0" }, "3817": { "op": "NOT" }, "3818": { "fn": "SafeInt256.neg", "offset": [ 1634, 1635 ], "op": "DUP4", "path": "94" }, "3819": { "fn": "SafeInt256.neg", "offset": [ 1626, 1629 ], "op": "PUSH2", "path": "94", "value": "0x1A5E" }, "3822": { "fn": "SafeInt256.neg", "jump": "i", "offset": [ 1626, 1636 ], "op": "JUMP", "path": "94" }, "3823": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5904, 6420 ], "op": "JUMPDEST", "path": "76" }, "3824": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5990, 6016 ], "op": "PUSH2", "path": "76", "value": "0xEF7" }, "3827": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5990, 6016 ], "op": "PUSH2", "path": "76", "value": "0x3FF8" }, "3830": { "fn": "AssetRate.buildAssetRateStateful", "jump": "i", "offset": [ 5990, 6016 ], "op": "JUMP", "path": "76" }, "3831": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5990, 6016 ], "op": "JUMPDEST", "path": "76" }, "3832": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6033, 6044 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "3834": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6046, 6073 ], "op": "DUP1", "path": "76" }, "3835": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6075, 6104 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "3837": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6120, 6153 ], "op": "PUSH2", "path": "76", "value": "0xF05" }, "3840": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6142, 6152 ], "op": "DUP6", "path": "76" }, "3841": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6120, 6141 ], "op": "PUSH2", "path": "76", "value": "0x1AAC" }, "3844": { "fn": "AssetRate.buildAssetRateStateful", "jump": "i", "offset": [ 6120, 6153 ], "op": "JUMP", "path": "76" }, "3845": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6120, 6153 ], "op": "JUMPDEST", "path": "76" }, "3846": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "PUSH1", "path": "76", "statement": 71, "value": "0x40" }, "3848": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "DUP1", "path": "76" }, "3849": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "MLOAD", "path": "76" }, "3850": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "PUSH1", "path": "76", "value": "0x60" }, "3852": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "DUP2", "path": "76" }, "3853": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "ADD", "path": "76" }, "3854": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "DUP3", "path": "76" }, "3855": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "MSTORE", "path": "76" }, "3856": { "op": "PUSH1", "value": "0x1" }, "3858": { "op": "PUSH1", "value": "0x1" }, "3860": { "op": "PUSH1", "value": "0xA0" }, "3862": { "op": "SHL" }, "3863": { "op": "SUB" }, "3864": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP1", "path": "76" }, "3865": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP4", "path": "76" }, "3866": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "AND", "path": "76" }, "3867": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "DUP4", "path": "76" }, "3868": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "MSTORE", "path": "76" }, "3869": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "PUSH1", "path": "76", "value": "0x20" }, "3871": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "DUP4", "path": "76" }, "3872": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "ADD", "path": "76" }, "3873": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP4", "path": "76" }, "3874": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP1", "path": "76" }, "3875": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP4", "path": "76" }, "3876": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "MSTORE", "path": "76" }, "3877": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6370, 6397 ], "op": "PUSH1", "path": "76", "value": "0xFF" }, "3879": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6370, 6397 ], "op": "AND", "path": "76" }, "3880": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6370, 6372 ], "op": "PUSH1", "path": "76", "value": "0xA" }, "3882": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6370, 6397 ], "op": "EXP", "path": "76" }, "3883": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP2", "path": "76" }, "3884": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "DUP2", "path": "76" }, "3885": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "ADD", "path": "76" }, "3886": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP2", "path": "76" }, "3887": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP1", "path": "76" }, "3888": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP2", "path": "76" }, "3889": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "MSTORE", "path": "76" }, "3890": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 6183, 6413 ], "op": "SWAP4", "path": "76" }, "3891": { "op": "POP" }, "3892": { "op": "POP" }, "3893": { "op": "POP" }, "3894": { "op": "POP" }, "3895": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5904, 6420 ], "op": "SWAP2", "path": "76" }, "3896": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5904, 6420 ], "op": "SWAP1", "path": "76" }, "3897": { "fn": "AssetRate.buildAssetRateStateful", "offset": [ 5904, 6420 ], "op": "POP", "path": "76" }, "3898": { "fn": "AssetRate.buildAssetRateStateful", "jump": "o", "offset": [ 5904, 6420 ], "op": "JUMP", "path": "76" }, "3899": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1133, 1269 ], "op": "JUMPDEST", "path": "69" }, "3900": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1204, 1216 ], "op": "PUSH2", "path": "69", "value": "0xF43" }, "3903": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1204, 1216 ], "op": "PUSH2", "path": "69", "value": "0x4022" }, "3906": { "fn": "TokenHandler.getUnderlyingToken", "jump": "i", "offset": [ 1204, 1216 ], "op": "JUMP", "path": "69" }, "3907": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1204, 1216 ], "op": "JUMPDEST", "path": "69" }, "3908": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1235, 1262 ], "op": "PUSH2", "path": "69", "statement": 72, "value": "0xBDF" }, "3911": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1245, 1255 ], "op": "DUP3", "path": "69" }, "3912": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1257, 1261 ], "op": "PUSH1", "path": "69", "value": "0x1" }, "3914": { "fn": "TokenHandler.getUnderlyingToken", "offset": [ 1235, 1244 ], "op": "PUSH2", "path": "69", "value": "0x1B6F" }, "3917": { "fn": "TokenHandler.getUnderlyingToken", "jump": "i", "offset": [ 1235, 1262 ], "op": "JUMP", "path": "69" }, "3918": { "fn": "AssetRate.convertToUnderlying", "offset": [ 882, 1350 ], "op": "JUMPDEST", "path": "76" }, "3919": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1010, 1016 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "3921": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1155, 1179 ], "op": "DUP1", "path": "76" }, "3922": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1308 ], "op": "PUSH2", "path": "76", "value": "0xF7F" }, "3925": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1286, 1288 ], "op": "DUP5", "path": "76" }, "3926": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1286, 1307 ], "op": "PUSH1", "path": "76", "value": "0x40" }, "3928": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1286, 1307 ], "op": "ADD", "path": "76" }, "3929": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1286, 1307 ], "op": "MLOAD", "path": "76" }, "3930": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1268 ], "op": "PUSH2", "path": "76", "value": "0xF79" }, "3933": { "offset": [ 658, 662 ], "op": "PUSH5", "path": "76", "value": "0x2540BE400" }, "3939": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1220 ], "op": "PUSH2", "path": "76", "value": "0xF79" }, "3942": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1207, 1219 ], "op": "DUP8", "path": "76" }, "3943": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1184 ], "op": "DUP10", "path": "76" }, "3944": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1189 ], "op": "PUSH1", "path": "76", "value": "0x20" }, "3946": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1189 ], "op": "ADD", "path": "76" }, "3947": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1189 ], "op": "MLOAD", "path": "76" }, "3948": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1206 ], "op": "PUSH2", "path": "76", "value": "0x1A5E" }, "3951": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1206 ], "op": "SWAP1", "path": "76" }, "3952": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1220 ], "op": "SWAP2", "path": "76" }, "3953": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1220 ], "op": "SWAP1", "path": "76" }, "3954": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1220 ], "op": "PUSH4", "path": "76", "value": "0xFFFFFFFF" }, "3959": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1220 ], "op": "AND", "path": "76" }, "3960": { "fn": "AssetRate.convertToUnderlying", "jump": "i", "offset": [ 1182, 1220 ], "op": "JUMP", "path": "76" }, "3961": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1220 ], "op": "JUMPDEST", "path": "76" }, "3962": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1237 ], "op": "SWAP1", "path": "76" }, "3963": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1237 ], "op": "PUSH2", "path": "76", "value": "0x1C1D" }, "3966": { "fn": "AssetRate.convertToUnderlying", "jump": "i", "offset": [ 1182, 1268 ], "op": "JUMP", "path": "76" }, "3967": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1182, 1308 ], "op": "JUMPDEST", "path": "76" }, "3968": { "fn": "AssetRate.convertToUnderlying", "offset": [ 1155, 1308 ], "op": "SWAP5", "path": "76" }, "3969": { "fn": "AssetRate.convertToUnderlying", "offset": [ 882, 1350 ], "op": "SWAP4", "path": "76" }, "3970": { "op": "POP" }, "3971": { "op": "POP" }, "3972": { "op": "POP" }, "3973": { "op": "POP" }, "3974": { "fn": "AssetRate.convertToUnderlying", "jump": "o", "offset": [ 882, 1350 ], "op": "JUMP", "path": "76" }, "3975": { "fn": "TokenHandler.convertToExternal", "offset": [ 13720, 14509 ], "op": "JUMPDEST", "path": "69" }, "3976": { "fn": "TokenHandler.convertToExternal", "offset": [ 13805, 13811 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "3978": { "offset": [ 429, 432 ], "op": "PUSH4", "path": "60", "value": "0x5F5E100" }, "3983": { "fn": "TokenHandler.convertToExternal", "offset": [ 13827, 13832 ], "op": "DUP4", "path": "69" }, "3984": { "fn": "TokenHandler.convertToExternal", "offset": [ 13827, 13841 ], "op": "PUSH1", "path": "69", "value": "0x40" }, "3986": { "fn": "TokenHandler.convertToExternal", "offset": [ 13827, 13841 ], "op": "ADD", "path": "69" }, "3987": { "fn": "TokenHandler.convertToExternal", "offset": [ 13827, 13841 ], "op": "MLOAD", "path": "69" }, "3988": { "branch": 542, "fn": "TokenHandler.convertToExternal", "offset": [ 13827, 13879 ], "op": "EQ", "path": "69" }, "3989": { "fn": "TokenHandler.convertToExternal", "offset": [ 13823, 13894 ], "op": "ISZERO", "path": "69" }, "3990": { "fn": "TokenHandler.convertToExternal", "offset": [ 13823, 13894 ], "op": "PUSH2", "path": "69", "value": "0xFA0" }, "3993": { "branch": 542, "fn": "TokenHandler.convertToExternal", "offset": [ 13823, 13894 ], "op": "JUMPI", "path": "69" }, "3994": { "op": "POP" }, "3995": { "fn": "TokenHandler.convertToExternal", "offset": [ 13888, 13894 ], "op": "DUP1", "path": "69", "statement": 73 }, "3996": { "fn": "TokenHandler.convertToExternal", "offset": [ 13881, 13894 ], "op": "PUSH2", "path": "69", "value": "0xEDB" }, "3999": { "fn": "TokenHandler.convertToExternal", "offset": [ 13881, 13894 ], "op": "JUMP", "path": "69" }, "4000": { "fn": "TokenHandler.convertToExternal", "offset": [ 13823, 13894 ], "op": "JUMPDEST", "path": "69" }, "4001": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14502 ], "op": "PUSH2", "path": "69", "statement": 74, "value": "0xAA3" }, "4004": { "offset": [ 429, 432 ], "op": "PUSH4", "path": "60", "value": "0x5F5E100" }, "4009": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14462 ], "op": "PUSH2", "path": "69", "value": "0xF79" }, "4012": { "fn": "TokenHandler.convertToExternal", "offset": [ 14447, 14452 ], "op": "DUP6", "path": "69" }, "4013": { "fn": "TokenHandler.convertToExternal", "offset": [ 14447, 14461 ], "op": "PUSH1", "path": "69", "value": "0x40" }, "4015": { "fn": "TokenHandler.convertToExternal", "offset": [ 14447, 14461 ], "op": "ADD", "path": "69" }, "4016": { "fn": "TokenHandler.convertToExternal", "offset": [ 14447, 14461 ], "op": "MLOAD", "path": "69" }, "4017": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14442 ], "op": "DUP6", "path": "69" }, "4018": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14446 ], "op": "PUSH2", "path": "69", "value": "0x1A5E" }, "4021": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14446 ], "op": "SWAP1", "path": "69" }, "4022": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14462 ], "op": "SWAP2", "path": "69" }, "4023": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14462 ], "op": "SWAP1", "path": "69" }, "4024": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14462 ], "op": "PUSH4", "path": "69", "value": "0xFFFFFFFF" }, "4029": { "fn": "TokenHandler.convertToExternal", "offset": [ 14436, 14462 ], "op": "AND", "path": "69" }, "4030": { "fn": "TokenHandler.convertToExternal", "jump": "i", "offset": [ 14436, 14462 ], "op": "JUMP", "path": "69" }, "4031": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4547, 6241 ], "op": "JUMPDEST", "path": "67" }, "4032": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4711, 4717 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4034": { "branch": 449, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4733, 4762 ], "op": "DUP2", "path": "67" }, "4035": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4729, 4772 ], "op": "PUSH2", "path": "67", "value": "0xFCE" }, "4038": { "branch": 449, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4729, 4772 ], "op": "JUMPI", "path": "67" }, "4039": { "op": "POP" }, "4040": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4771, 4772 ], "op": "PUSH1", "path": "67", "statement": 75, "value": "0x0" }, "4042": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4764, 4772 ], "op": "PUSH2", "path": "67", "value": "0xAA3" }, "4045": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4764, 4772 ], "op": "JUMP", "path": "67" }, "4046": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4729, 4772 ], "op": "JUMPDEST", "path": "67" }, "4047": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4817, 4818 ], "op": "PUSH1", "path": "67", "statement": 76, "value": "0x0" }, "4049": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4790, 4814 ], "op": "DUP3", "path": "67" }, "4050": { "branch": 450, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4790, 4818 ], "op": "SGT", "path": "67" }, "4051": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4782, 4819 ], "op": "PUSH2", "path": "67", "value": "0xFDB" }, "4054": { "branch": 450, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4782, 4819 ], "op": "JUMPI", "path": "67" }, "4055": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4782, 4819 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4057": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4782, 4819 ], "op": "DUP1", "path": "67" }, "4058": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4782, 4819 ], "op": "REVERT", "path": "67" }, "4059": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4782, 4819 ], "op": "JUMPDEST", "path": "67" }, "4060": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4872, 4900 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4062": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4903, 4959 ], "op": "PUSH2", "path": "67", "value": "0xFEE" }, "4065": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4935, 4947 ], "op": "DUP6", "path": "67" }, "4066": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4935, 4958 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4068": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4935, 4958 ], "op": "ADD", "path": "67" }, "4069": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4935, 4958 ], "op": "MLOAD", "path": "67" }, "4070": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4903, 4959 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4073": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4903, 4959 ], "op": "AND", "path": "67" }, "4074": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4903, 4934 ], "op": "PUSH2", "path": "67", "value": "0xF3B" }, "4077": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 4903, 4959 ], "op": "JUMP", "path": "67" }, "4078": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4903, 4959 ], "op": "JUMPDEST", "path": "67" }, "4079": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4872, 4959 ], "op": "SWAP1", "path": "67" }, "4080": { "op": "POP" }, "4081": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5098, 5113 ], "op": "PUSH1", "path": "67", "value": "0x3" }, "4083": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5084 ], "op": "DUP2", "path": "67" }, "4084": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5094 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "4086": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5094 ], "op": "ADD", "path": "67" }, "4087": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5094 ], "op": "MLOAD", "path": "67" }, "4088": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "PUSH1", "path": "67", "value": "0x5" }, "4090": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "DUP2", "path": "67" }, "4091": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "GT", "path": "67" }, "4092": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "ISZERO", "path": "67" }, "4093": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "PUSH2", "path": "67", "value": "0x1002" }, "4096": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "JUMPI", "path": "67" }, "4097": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "INVALID", "path": "67" }, "4098": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "JUMPDEST", "path": "67" }, "4099": { "branch": 451, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5069, 5113 ], "op": "EQ", "path": "67" }, "4100": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "ISZERO", "path": "67" }, "4101": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "PUSH2", "path": "67", "value": "0x102C" }, "4104": { "branch": 451, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "JUMPI", "path": "67" }, "4105": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5213, 5222 ], "op": "CALLVALUE", "path": "67", "statement": 77 }, "4106": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5184, 5208 ], "op": "DUP4", "path": "67" }, "4107": { "branch": 452, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5176, 5222 ], "op": "EQ", "path": "67" }, "4108": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "PUSH2", "path": "67", "value": "0x1027" }, "4111": { "branch": 452, "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "JUMPI", "path": "67" }, "4112": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4114": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "MLOAD", "path": "67" }, "4115": { "op": "PUSH3", "value": "0x461BCD" }, "4119": { "op": "PUSH1", "value": "0xE5" }, "4121": { "op": "SHL" }, "4122": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "DUP2", "path": "67" }, "4123": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "MSTORE", "path": "67" }, "4124": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "PUSH1", "path": "67", "value": "0x4" }, "4126": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "ADD", "path": "67" }, "4127": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "PUSH2", "path": "67", "value": "0x17A" }, "4130": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "SWAP1", "path": "67" }, "4131": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "PUSH2", "path": "67", "value": "0x48F8" }, "4134": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 5168, 5238 ], "op": "JUMP", "path": "67" }, "4135": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5168, 5238 ], "op": "JUMPDEST", "path": "67" }, "4136": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "PUSH2", "path": "67", "value": "0x1043" }, "4139": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "JUMP", "path": "67" }, "4140": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "JUMPDEST", "path": "67" }, "4141": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5330, 5353 ], "op": "DUP5", "path": "67", "statement": 78 }, "4142": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5330, 5353 ], "op": "MLOAD", "path": "67" }, "4143": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5380 ], "op": "PUSH2", "path": "67", "value": "0x1040" }, "4146": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5380 ], "op": "SWAP1", "path": "67" }, "4147": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5311 ], "op": "DUP3", "path": "67" }, "4148": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5311 ], "op": "SWAP1", "path": "67" }, "4149": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5321, 5328 ], "op": "DUP7", "path": "67" }, "4150": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5321, 5328 ], "op": "SWAP1", "path": "67" }, "4151": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5380 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4154": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5380 ], "op": "AND", "path": "67" }, "4155": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5355, 5379 ], "op": "DUP7", "path": "67" }, "4156": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5320 ], "op": "PUSH2", "path": "67", "value": "0x1C4E" }, "4159": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 5296, 5380 ], "op": "JUMP", "path": "67" }, "4160": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5296, 5380 ], "op": "JUMPDEST", "path": "67" }, "4161": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5269, 5380 ], "op": "SWAP3", "path": "67" }, "4162": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5269, 5380 ], "op": "POP", "path": "67" }, "4163": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5065, 5391 ], "op": "JUMPDEST", "path": "67" }, "4164": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5401, 5424 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4166": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5427, 5478 ], "op": "PUSH2", "path": "67", "value": "0x1056" }, "4169": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5454, 5466 ], "op": "DUP7", "path": "67" }, "4170": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5454, 5477 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4172": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5454, 5477 ], "op": "ADD", "path": "67" }, "4173": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5454, 5477 ], "op": "MLOAD", "path": "67" }, "4174": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5427, 5478 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4177": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5427, 5478 ], "op": "AND", "path": "67" }, "4178": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5427, 5453 ], "op": "PUSH2", "path": "67", "value": "0x10A4" }, "4181": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 5427, 5478 ], "op": "JUMP", "path": "67" }, "4182": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5427, 5478 ], "op": "JUMPDEST", "path": "67" }, "4183": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5401, 5478 ], "op": "SWAP1", "path": "67" }, "4184": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5401, 5478 ], "op": "POP", "path": "67" }, "4185": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5488, 5531 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4187": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5546, 5631 ], "op": "PUSH2", "path": "67", "value": "0x1073" }, "4190": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5562, 5574 ], "op": "DUP8", "path": "67" }, "4191": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5562, 5585 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4193": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5562, 5585 ], "op": "ADD", "path": "67" }, "4194": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5562, 5585 ], "op": "MLOAD", "path": "67" }, "4195": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5587, 5630 ], "op": "PUSH2", "path": "67", "value": "0x106B" }, "4198": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5605, 5629 ], "op": "DUP8", "path": "67" }, "4199": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5587, 5604 ], "op": "PUSH2", "path": "67", "value": "0x1CF6" }, "4202": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 5587, 5630 ], "op": "JUMP", "path": "67" }, "4203": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5587, 5630 ], "op": "JUMPDEST", "path": "67" }, "4204": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5546, 5556 ], "op": "DUP5", "path": "67" }, "4205": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5546, 5556 ], "op": "SWAP2", "path": "67" }, "4206": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5546, 5631 ], "op": "SWAP1", "path": "67" }, "4207": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5546, 5561 ], "op": "PUSH2", "path": "67", "value": "0x1D09" }, "4210": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 5546, 5631 ], "op": "JUMP", "path": "67" }, "4211": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5546, 5631 ], "op": "JUMPDEST", "path": "67" }, "4212": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5488, 5631 ], "op": "SWAP1", "path": "67" }, "4213": { "op": "POP" }, "4214": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5932, 5966 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4216": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5981, 6047 ], "op": "PUSH2", "path": "67", "value": "0x1081" }, "4219": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5981, 5991 ], "op": "DUP4", "path": "67" }, "4220": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5488, 5631 ], "op": "DUP4", "path": "67" }, "4221": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5981, 6009 ], "op": "PUSH2", "path": "67", "value": "0x1DFA" }, "4224": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 5981, 6047 ], "op": "JUMP", "path": "67" }, "4225": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5981, 6047 ], "op": "JUMPDEST", "path": "67" }, "4226": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6156 ], "op": "PUSH1", "path": "67", "statement": 79, "value": "0x60" }, "4228": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6156 ], "op": "DUP10", "path": "67" }, "4229": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6156 ], "op": "ADD", "path": "67" }, "4230": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6156 ], "op": "MLOAD", "path": "67" }, "4231": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5932, 6047 ], "op": "SWAP1", "path": "67" }, "4232": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5932, 6047 ], "op": "SWAP2", "path": "67" }, "4233": { "op": "POP" }, "4234": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6189 ], "op": "PUSH2", "path": "67", "value": "0x1093" }, "4237": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6189 ], "op": "SWAP1", "path": "67" }, "4238": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 5932, 6047 ], "op": "DUP3", "path": "67" }, "4239": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6160 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4242": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "i", "offset": [ 6130, 6189 ], "op": "JUMP", "path": "67" }, "4243": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6130, 6189 ], "op": "JUMPDEST", "path": "67" }, "4244": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6101, 6127 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "4246": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6101, 6127 ], "op": "DUP10", "path": "67" }, "4247": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6101, 6127 ], "op": "ADD", "path": "67" }, "4248": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6101, 6189 ], "op": "MSTORE", "path": "67" }, "4249": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 6207, 6234 ], "op": "SWAP4", "path": "67", "statement": 80 }, "4250": { "op": "POP" }, "4251": { "op": "POP" }, "4252": { "op": "POP" }, "4253": { "op": "POP" }, "4254": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4547, 6241 ], "op": "SWAP4", "path": "67" }, "4255": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4547, 6241 ], "op": "SWAP3", "path": "67" }, "4256": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4547, 6241 ], "op": "POP", "path": "67" }, "4257": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4547, 6241 ], "op": "POP", "path": "67" }, "4258": { "fn": "BalanceHandler.depositUnderlyingToken", "offset": [ 4547, 6241 ], "op": "POP", "path": "67" }, "4259": { "fn": "BalanceHandler.depositUnderlyingToken", "jump": "o", "offset": [ 4547, 6241 ], "op": "JUMP", "path": "67" }, "4260": { "fn": "TokenHandler.getAssetToken", "offset": [ 995, 1127 ], "op": "JUMPDEST", "path": "69" }, "4261": { "fn": "TokenHandler.getAssetToken", "offset": [ 1061, 1073 ], "op": "PUSH2", "path": "69", "value": "0x10AC" }, "4264": { "fn": "TokenHandler.getAssetToken", "offset": [ 1061, 1073 ], "op": "PUSH2", "path": "69", "value": "0x4022" }, "4267": { "fn": "TokenHandler.getAssetToken", "jump": "i", "offset": [ 1061, 1073 ], "op": "JUMP", "path": "69" }, "4268": { "fn": "TokenHandler.getAssetToken", "offset": [ 1061, 1073 ], "op": "JUMPDEST", "path": "69" }, "4269": { "fn": "TokenHandler.getAssetToken", "offset": [ 1092, 1120 ], "op": "PUSH2", "path": "69", "statement": 81, "value": "0xBDF" }, "4272": { "fn": "TokenHandler.getAssetToken", "offset": [ 1102, 1112 ], "op": "DUP3", "path": "69" }, "4273": { "fn": "TokenHandler.getAssetToken", "offset": [ 1114, 1119 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "4275": { "fn": "TokenHandler.getAssetToken", "offset": [ 1092, 1101 ], "op": "PUSH2", "path": "69", "value": "0x1B6F" }, "4278": { "fn": "TokenHandler.getAssetToken", "jump": "i", "offset": [ 1092, 1120 ], "op": "JUMP", "path": "69" }, "4279": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "JUMPDEST", "path": "67" }, "4280": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2042, 2068 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4282": { "branch": 453, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2084, 2108 ], "op": "DUP3", "path": "67" }, "4283": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2080, 2118 ], "op": "PUSH2", "path": "67", "value": "0x10C6" }, "4286": { "branch": 453, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2080, 2118 ], "op": "JUMPI", "path": "67" }, "4287": { "op": "POP" }, "4288": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2117, 2118 ], "op": "PUSH1", "path": "67", "statement": 82, "value": "0x0" }, "4290": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2110, 2118 ], "op": "PUSH2", "path": "67", "value": "0xF7F" }, "4293": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2110, 2118 ], "op": "JUMP", "path": "67" }, "4294": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2080, 2118 ], "op": "JUMPDEST", "path": "67" }, "4295": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2158, 2159 ], "op": "PUSH1", "path": "67", "statement": 83, "value": "0x0" }, "4297": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2136, 2155 ], "op": "DUP4", "path": "67" }, "4298": { "branch": 454, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2136, 2159 ], "op": "SGT", "path": "67" }, "4299": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2128, 2160 ], "op": "PUSH2", "path": "67", "value": "0x10D3" }, "4302": { "branch": 454, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2128, 2160 ], "op": "JUMPI", "path": "67" }, "4303": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2128, 2160 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4305": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2128, 2160 ], "op": "DUP1", "path": "67" }, "4306": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2128, 2160 ], "op": "REVERT", "path": "67" }, "4307": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2128, 2160 ], "op": "JUMPDEST", "path": "67" }, "4308": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2214, 2232 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4310": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2235, 2286 ], "op": "PUSH2", "path": "67", "value": "0x10E6" }, "4313": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2262, 2274 ], "op": "DUP7", "path": "67" }, "4314": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2262, 2285 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4316": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2262, 2285 ], "op": "ADD", "path": "67" }, "4317": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2262, 2285 ], "op": "MLOAD", "path": "67" }, "4318": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2235, 2286 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4321": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2235, 2286 ], "op": "AND", "path": "67" }, "4322": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2235, 2261 ], "op": "PUSH2", "path": "67", "value": "0x10A4" }, "4325": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 2235, 2286 ], "op": "JUMP", "path": "67" }, "4326": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2235, 2286 ], "op": "JUMPDEST", "path": "67" }, "4327": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2214, 2286 ], "op": "SWAP1", "path": "67" }, "4328": { "op": "POP" }, "4329": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2319, 2335 ], "op": "PUSH1", "path": "67", "value": "0x5" }, "4331": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2305 ], "op": "DUP2", "path": "67" }, "4332": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2315 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "4334": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2315 ], "op": "ADD", "path": "67" }, "4335": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2315 ], "op": "MLOAD", "path": "67" }, "4336": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "PUSH1", "path": "67", "value": "0x5" }, "4338": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "DUP2", "path": "67" }, "4339": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "GT", "path": "67" }, "4340": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "ISZERO", "path": "67" }, "4341": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "PUSH2", "path": "67", "value": "0x10FA" }, "4344": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "JUMPI", "path": "67" }, "4345": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "INVALID", "path": "67" }, "4346": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "JUMPDEST", "path": "67" }, "4347": { "branch": 455, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2300, 2335 ], "op": "EQ", "path": "67" }, "4348": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2296, 2585 ], "op": "ISZERO", "path": "67" }, "4349": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2296, 2585 ], "op": "PUSH2", "path": "67", "value": "0x1113" }, "4352": { "branch": 455, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2296, 2585 ], "op": "JUMPI", "path": "67" }, "4353": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2500, 2523 ], "op": "DUP6", "path": "67", "statement": 84 }, "4354": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2500, 2523 ], "op": "MLOAD", "path": "67" }, "4355": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2440, 2574 ], "op": "PUSH2", "path": "67", "value": "0x1110" }, "4358": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2440, 2574 ], "op": "SWAP1", "path": "67" }, "4359": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2440, 2574 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4362": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2440, 2574 ], "op": "AND", "path": "67" }, "4363": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2541, 2560 ], "op": "DUP6", "path": "67" }, "4364": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2440, 2482 ], "op": "PUSH2", "path": "67", "value": "0x1E2A" }, "4367": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 2440, 2574 ], "op": "JUMP", "path": "67" }, "4368": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2440, 2574 ], "op": "JUMPDEST", "path": "67" }, "4369": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2418, 2574 ], "op": "SWAP4", "path": "67" }, "4370": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2418, 2574 ], "op": "POP", "path": "67" }, "4371": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2296, 2585 ], "op": "JUMPDEST", "path": "67" }, "4372": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2688 ], "op": "DUP1", "path": "67" }, "4373": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2703 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "4375": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2703 ], "op": "ADD", "path": "67" }, "4376": { "branch": 456, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2703 ], "op": "MLOAD", "path": "67" }, "4377": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2720 ], "op": "DUP1", "path": "67" }, "4378": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2720 ], "op": "PUSH2", "path": "67", "value": "0x1120" }, "4381": { "branch": 456, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2720 ], "op": "JUMPI", "path": "67" }, "4382": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2720 ], "op": "POP", "path": "67" }, "4383": { "branch": 457, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2707, 2720 ], "op": "DUP3", "path": "67" }, "4384": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2683, 2720 ], "op": "JUMPDEST", "path": "67" }, "4385": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2679, 4302 ], "op": "ISZERO", "path": "67" }, "4386": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2679, 4302 ], "op": "PUSH2", "path": "67", "value": "0x1167" }, "4389": { "branch": 457, "fn": "BalanceHandler.depositAssetToken", "offset": [ 2679, 4302 ], "op": "JUMPI", "path": "67" }, "4390": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3080, 3103 ], "op": "DUP6", "path": "67" }, "4391": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3080, 3103 ], "op": "MLOAD", "path": "67" }, "4392": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3013, 3053 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4394": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3013, 3053 ], "op": "SWAP1", "path": "67" }, "4395": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3125 ], "op": "PUSH2", "path": "67", "value": "0x113C" }, "4398": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3125 ], "op": "SWAP1", "path": "67" }, "4399": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3061 ], "op": "DUP4", "path": "67" }, "4400": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3061 ], "op": "SWAP1", "path": "67" }, "4401": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3071, 3078 ], "op": "DUP9", "path": "67" }, "4402": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3071, 3078 ], "op": "SWAP1", "path": "67" }, "4403": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3125 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4406": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3125 ], "op": "AND", "path": "67" }, "4407": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3105, 3124 ], "op": "DUP9", "path": "67" }, "4408": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3070 ], "op": "PUSH2", "path": "67", "value": "0x1C4E" }, "4411": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 3056, 3125 ], "op": "JUMP", "path": "67" }, "4412": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3056, 3125 ], "op": "JUMPDEST", "path": "67" }, "4413": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3013, 3125 ], "op": "SWAP1", "path": "67" }, "4414": { "op": "POP" }, "4415": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3361, 3419 ], "op": "PUSH2", "path": "67", "statement": 85, "value": "0x1148" }, "4418": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3361, 3366 ], "op": "DUP3", "path": "67" }, "4419": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3013, 3125 ], "op": "DUP3", "path": "67" }, "4420": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3361, 3384 ], "op": "PUSH2", "path": "67", "value": "0x1DFA" }, "4423": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 3361, 3419 ], "op": "JUMP", "path": "67" }, "4424": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3361, 3419 ], "op": "JUMPDEST", "path": "67" }, "4425": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3528 ], "op": "PUSH1", "path": "67", "statement": 86, "value": "0x60" }, "4427": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3528 ], "op": "DUP9", "path": "67" }, "4428": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3528 ], "op": "ADD", "path": "67" }, "4429": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3528 ], "op": "MLOAD", "path": "67" }, "4430": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3339, 3419 ], "op": "SWAP1", "path": "67" }, "4431": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3339, 3419 ], "op": "SWAP4", "path": "67" }, "4432": { "op": "POP" }, "4433": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3553 ], "op": "PUSH2", "path": "67", "value": "0x115A" }, "4436": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3553 ], "op": "SWAP1", "path": "67" }, "4437": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3339, 3419 ], "op": "DUP5", "path": "67" }, "4438": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3532 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4441": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 3502, 3553 ], "op": "JUMP", "path": "67" }, "4442": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3502, 3553 ], "op": "JUMPDEST", "path": "67" }, "4443": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3473, 3499 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "4445": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3473, 3499 ], "op": "DUP9", "path": "67" }, "4446": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3473, 3499 ], "op": "ADD", "path": "67" }, "4447": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3473, 3553 ], "op": "MSTORE", "path": "67" }, "4448": { "op": "POP" }, "4449": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3568, 3594 ], "op": "PUSH2", "path": "67", "statement": 87, "value": "0xF7F" }, "4452": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3568, 3594 ], "op": "SWAP1", "path": "67" }, "4453": { "op": "POP" }, "4454": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3568, 3594 ], "op": "JUMP", "path": "67" }, "4455": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 2679, 4302 ], "op": "JUMPDEST", "path": "67" }, "4456": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3647, 3691 ], "op": "PUSH2", "path": "67", "statement": 88, "value": "0x1171" }, "4459": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3647, 3652 ], "op": "DUP2", "path": "67" }, "4460": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3671, 3690 ], "op": "DUP6", "path": "67" }, "4461": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3647, 3670 ], "op": "PUSH2", "path": "67", "value": "0x1DFA" }, "4464": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 3647, 3691 ], "op": "JUMP", "path": "67" }, "4465": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3647, 3691 ], "op": "JUMPDEST", "path": "67" }, "4466": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4128 ], "op": "PUSH1", "path": "67", "statement": 89, "value": "0x80" }, "4468": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4128 ], "op": "DUP8", "path": "67" }, "4469": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4128 ], "op": "ADD", "path": "67" }, "4470": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4128 ], "op": "MLOAD", "path": "67" }, "4471": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3625, 3691 ], "op": "SWAP1", "path": "67" }, "4472": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3625, 3691 ], "op": "SWAP3", "path": "67" }, "4473": { "op": "POP" }, "4474": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4170 ], "op": "PUSH2", "path": "67", "value": "0x1183" }, "4477": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4170 ], "op": "SWAP1", "path": "67" }, "4478": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 3625, 3691 ], "op": "DUP4", "path": "67" }, "4479": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4149 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4482": { "fn": "BalanceHandler.depositAssetToken", "jump": "i", "offset": [ 4065, 4170 ], "op": "JUMP", "path": "67" }, "4483": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4065, 4170 ], "op": "JUMPDEST", "path": "67" }, "4484": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4016, 4062 ], "op": "PUSH1", "path": "67", "value": "0x80" }, "4486": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4016, 4062 ], "op": "DUP8", "path": "67" }, "4487": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4016, 4062 ], "op": "ADD", "path": "67" }, "4488": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 4016, 4170 ], "op": "MSTORE", "path": "67" }, "4489": { "op": "POP" }, "4490": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "SWAP5", "path": "67" }, "4491": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "SWAP4", "path": "67" }, "4492": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "POP", "path": "67" }, "4493": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "POP", "path": "67" }, "4494": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "POP", "path": "67" }, "4495": { "fn": "BalanceHandler.depositAssetToken", "offset": [ 1860, 4308 ], "op": "POP", "path": "67" }, "4496": { "fn": "BalanceHandler.depositAssetToken", "jump": "o", "offset": [ 1860, 4308 ], "op": "JUMP", "path": "67" }, "4497": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "JUMPDEST", "path": "67" }, "4498": { "fn": "BalanceHandler.finalize", "offset": [ 6698, 6727 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4500": { "fn": "BalanceHandler.finalize", "offset": [ 6739, 6754 ], "op": "DUP1", "path": "67" }, "4501": { "fn": "BalanceHandler.finalize", "offset": [ 6801, 6802 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4503": { "fn": "BalanceHandler.finalize", "offset": [ 6768, 6780 ], "op": "DUP7", "path": "67" }, "4504": { "fn": "BalanceHandler.finalize", "offset": [ 6768, 6798 ], "op": "PUSH1", "path": "67", "value": "0xA0" }, "4506": { "fn": "BalanceHandler.finalize", "offset": [ 6768, 6798 ], "op": "ADD", "path": "67" }, "4507": { "fn": "BalanceHandler.finalize", "offset": [ 6768, 6798 ], "op": "MLOAD", "path": "67" }, "4508": { "branch": 458, "fn": "BalanceHandler.finalize", "offset": [ 6768, 6802 ], "op": "SLT", "path": "67" }, "4509": { "fn": "BalanceHandler.finalize", "offset": [ 6764, 7053 ], "op": "ISZERO", "path": "67" }, "4510": { "fn": "BalanceHandler.finalize", "offset": [ 6764, 7053 ], "op": "PUSH2", "path": "67", "value": "0x11EA" }, "4513": { "branch": 458, "fn": "BalanceHandler.finalize", "offset": [ 6764, 7053 ], "op": "JUMPI", "path": "67" }, "4514": { "fn": "BalanceHandler.finalize", "offset": [ 6997, 6998 ], "op": "PUSH1", "path": "67", "statement": 90, "value": "0x0" }, "4516": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6993 ], "op": "PUSH2", "path": "67", "value": "0x11CC" }, "4519": { "fn": "BalanceHandler.finalize", "offset": [ 6962, 6974 ], "op": "DUP8", "path": "67" }, "4520": { "fn": "BalanceHandler.finalize", "offset": [ 6962, 6992 ], "op": "PUSH1", "path": "67", "value": "0xA0" }, "4522": { "fn": "BalanceHandler.finalize", "offset": [ 6962, 6992 ], "op": "ADD", "path": "67" }, "4523": { "fn": "BalanceHandler.finalize", "offset": [ 6962, 6992 ], "op": "MLOAD", "path": "67" }, "4524": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6936 ], "op": "PUSH2", "path": "67", "value": "0x11C6" }, "4527": { "fn": "BalanceHandler.finalize", "offset": [ 6901, 6913 ], "op": "DUP10", "path": "67" }, "4528": { "fn": "BalanceHandler.finalize", "offset": [ 6901, 6935 ], "op": "PUSH1", "path": "67", "value": "0xC0" }, "4530": { "fn": "BalanceHandler.finalize", "offset": [ 6901, 6935 ], "op": "ADD", "path": "67" }, "4531": { "fn": "BalanceHandler.finalize", "offset": [ 6901, 6935 ], "op": "MLOAD", "path": "67" }, "4532": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6855 ], "op": "DUP11", "path": "67" }, "4533": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6875 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4535": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6875 ], "op": "ADD", "path": "67" }, "4536": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6875 ], "op": "MLOAD", "path": "67" }, "4537": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6900 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4540": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6900 ], "op": "SWAP1", "path": "67" }, "4541": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6936 ], "op": "SWAP2", "path": "67" }, "4542": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6936 ], "op": "SWAP1", "path": "67" }, "4543": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6936 ], "op": "PUSH4", "path": "67", "value": "0xFFFFFFFF" }, "4548": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6936 ], "op": "AND", "path": "67" }, "4549": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 6843, 6936 ], "op": "JUMP", "path": "67" }, "4550": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6936 ], "op": "JUMPDEST", "path": "67" }, "4551": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6961 ], "op": "SWAP1", "path": "67" }, "4552": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6961 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4555": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 6843, 6993 ], "op": "JUMP", "path": "67" }, "4556": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6993 ], "op": "JUMPDEST", "path": "67" }, "4557": { "fn": "BalanceHandler.finalize", "offset": [ 6843, 6998 ], "op": "SLT", "path": "67" }, "4558": { "branch": 459, "fn": "BalanceHandler.finalize", "offset": [ 6843, 6998 ], "op": "ISZERO", "path": "67" }, "4559": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "PUSH2", "path": "67", "value": "0x11EA" }, "4562": { "branch": 459, "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "JUMPI", "path": "67" }, "4563": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4565": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "MLOAD", "path": "67" }, "4566": { "op": "PUSH3", "value": "0x461BCD" }, "4570": { "op": "PUSH1", "value": "0xE5" }, "4572": { "op": "SHL" }, "4573": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "DUP2", "path": "67" }, "4574": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "MSTORE", "path": "67" }, "4575": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "PUSH1", "path": "67", "value": "0x4" }, "4577": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "ADD", "path": "67" }, "4578": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "PUSH2", "path": "67", "value": "0x17A" }, "4581": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "SWAP1", "path": "67" }, "4582": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "PUSH2", "path": "67", "value": "0x4A46" }, "4585": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 6818, 7042 ], "op": "JUMP", "path": "67" }, "4586": { "fn": "BalanceHandler.finalize", "offset": [ 6818, 7042 ], "op": "JUMPDEST", "path": "67" }, "4587": { "fn": "BalanceHandler.finalize", "offset": [ 7116, 7117 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4589": { "fn": "BalanceHandler.finalize", "offset": [ 7067, 7079 ], "op": "DUP7", "path": "67" }, "4590": { "fn": "BalanceHandler.finalize", "offset": [ 7067, 7113 ], "op": "PUSH1", "path": "67", "value": "0x80" }, "4592": { "fn": "BalanceHandler.finalize", "offset": [ 7067, 7113 ], "op": "ADD", "path": "67" }, "4593": { "fn": "BalanceHandler.finalize", "offset": [ 7067, 7113 ], "op": "MLOAD", "path": "67" }, "4594": { "branch": 460, "fn": "BalanceHandler.finalize", "offset": [ 7067, 7117 ], "op": "SLT", "path": "67" }, "4595": { "fn": "BalanceHandler.finalize", "offset": [ 7063, 7372 ], "op": "ISZERO", "path": "67" }, "4596": { "fn": "BalanceHandler.finalize", "offset": [ 7063, 7372 ], "op": "PUSH2", "path": "67", "value": "0x123A" }, "4599": { "branch": 460, "fn": "BalanceHandler.finalize", "offset": [ 7063, 7372 ], "op": "JUMPI", "path": "67" }, "4600": { "fn": "BalanceHandler.finalize", "offset": [ 7318, 7319 ], "op": "PUSH1", "path": "67", "statement": 91, "value": "0x0" }, "4602": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7314 ], "op": "PUSH2", "path": "67", "value": "0x121C" }, "4605": { "fn": "BalanceHandler.finalize", "offset": [ 7267, 7279 ], "op": "DUP8", "path": "67" }, "4606": { "fn": "BalanceHandler.finalize", "offset": [ 7267, 7313 ], "op": "PUSH1", "path": "67", "value": "0x80" }, "4608": { "fn": "BalanceHandler.finalize", "offset": [ 7267, 7313 ], "op": "ADD", "path": "67" }, "4609": { "fn": "BalanceHandler.finalize", "offset": [ 7267, 7313 ], "op": "MLOAD", "path": "67" }, "4610": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7241 ], "op": "PUSH2", "path": "67", "value": "0x11C6" }, "4613": { "fn": "BalanceHandler.finalize", "offset": [ 7214, 7226 ], "op": "DUP10", "path": "67" }, "4614": { "fn": "BalanceHandler.finalize", "offset": [ 7214, 7240 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "4616": { "fn": "BalanceHandler.finalize", "offset": [ 7214, 7240 ], "op": "ADD", "path": "67" }, "4617": { "fn": "BalanceHandler.finalize", "offset": [ 7214, 7240 ], "op": "MLOAD", "path": "67" }, "4618": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7170 ], "op": "DUP11", "path": "67" }, "4619": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7188 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "4621": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7188 ], "op": "ADD", "path": "67" }, "4622": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7188 ], "op": "MLOAD", "path": "67" }, "4623": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7213 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4626": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7213 ], "op": "SWAP1", "path": "67" }, "4627": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7241 ], "op": "SWAP2", "path": "67" }, "4628": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7241 ], "op": "SWAP1", "path": "67" }, "4629": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7241 ], "op": "PUSH4", "path": "67", "value": "0xFFFFFFFF" }, "4634": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7241 ], "op": "AND", "path": "67" }, "4635": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 7158, 7241 ], "op": "JUMP", "path": "67" }, "4636": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7314 ], "op": "JUMPDEST", "path": "67" }, "4637": { "fn": "BalanceHandler.finalize", "offset": [ 7158, 7319 ], "op": "SLT", "path": "67" }, "4638": { "branch": 461, "fn": "BalanceHandler.finalize", "offset": [ 7158, 7319 ], "op": "ISZERO", "path": "67" }, "4639": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "PUSH2", "path": "67", "value": "0x123A" }, "4642": { "branch": 461, "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "JUMPI", "path": "67" }, "4643": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4645": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "MLOAD", "path": "67" }, "4646": { "op": "PUSH3", "value": "0x461BCD" }, "4650": { "op": "PUSH1", "value": "0xE5" }, "4652": { "op": "SHL" }, "4653": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "DUP2", "path": "67" }, "4654": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "MSTORE", "path": "67" }, "4655": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "PUSH1", "path": "67", "value": "0x4" }, "4657": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "ADD", "path": "67" }, "4658": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "PUSH2", "path": "67", "value": "0x17A" }, "4661": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "SWAP1", "path": "67" }, "4662": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "PUSH2", "path": "67", "value": "0x49ED" }, "4665": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 7133, 7361 ], "op": "JUMP", "path": "67" }, "4666": { "fn": "BalanceHandler.finalize", "offset": [ 7133, 7361 ], "op": "JUMPDEST", "path": "67" }, "4667": { "fn": "BalanceHandler.finalize", "offset": [ 7693, 7754 ], "op": "PUSH2", "path": "67", "statement": 92, "value": "0x1245" }, "4670": { "fn": "BalanceHandler.finalize", "offset": [ 7712, 7724 ], "op": "DUP7", "path": "67" }, "4671": { "fn": "BalanceHandler.finalize", "offset": [ 7726, 7733 ], "op": "DUP7", "path": "67" }, "4672": { "fn": "BalanceHandler.finalize", "offset": [ 7735, 7753 ], "op": "DUP6", "path": "67" }, "4673": { "fn": "BalanceHandler.finalize", "offset": [ 7693, 7711 ], "op": "PUSH2", "path": "67", "value": "0x1EB1" }, "4676": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 7693, 7754 ], "op": "JUMP", "path": "67" }, "4677": { "fn": "BalanceHandler.finalize", "offset": [ 7693, 7754 ], "op": "JUMPDEST", "path": "67" }, "4678": { "fn": "BalanceHandler.finalize", "offset": [ 7634, 7680 ], "op": "PUSH1", "path": "67", "value": "0x80" }, "4680": { "fn": "BalanceHandler.finalize", "offset": [ 7634, 7680 ], "op": "DUP9", "path": "67" }, "4681": { "fn": "BalanceHandler.finalize", "offset": [ 7634, 7680 ], "op": "ADD", "path": "67" }, "4682": { "fn": "BalanceHandler.finalize", "offset": [ 7584, 7754 ], "op": "DUP2", "path": "67" }, "4683": { "fn": "BalanceHandler.finalize", "offset": [ 7584, 7754 ], "op": "SWAP1", "path": "67" }, "4684": { "fn": "BalanceHandler.finalize", "offset": [ 7584, 7754 ], "op": "MSTORE", "path": "67" }, "4685": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7868 ], "op": "PUSH1", "path": "67", "value": "0x60" }, "4687": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7868 ], "op": "DUP9", "path": "67" }, "4688": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7868 ], "op": "ADD", "path": "67" }, "4689": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7868 ], "op": "MLOAD", "path": "67" }, "4690": { "fn": "BalanceHandler.finalize", "offset": [ 7584, 7754 ], "op": "SWAP2", "path": "67" }, "4691": { "fn": "BalanceHandler.finalize", "offset": [ 7584, 7754 ], "op": "SWAP4", "path": "67" }, "4692": { "op": "POP" }, "4693": { "fn": "BalanceHandler.finalize", "offset": [ 7817, 7839 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4695": { "fn": "BalanceHandler.finalize", "offset": [ 7817, 7839 ], "op": "SWAP2", "path": "67" }, "4696": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7920 ], "op": "PUSH2", "path": "67", "value": "0x1260" }, "4699": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7920 ], "op": "SWAP2", "path": "67" }, "4700": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7872 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4703": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 7842, 7920 ], "op": "JUMP", "path": "67" }, "4704": { "fn": "BalanceHandler.finalize", "offset": [ 7842, 7920 ], "op": "JUMPDEST", "path": "67" }, "4705": { "fn": "BalanceHandler.finalize", "offset": [ 7817, 7920 ], "op": "SWAP1", "path": "67" }, "4706": { "op": "POP" }, "4707": { "fn": "BalanceHandler.finalize", "offset": [ 7935, 7955 ], "op": "DUP1", "path": "67" }, "4708": { "branch": 462, "fn": "BalanceHandler.finalize", "offset": [ 7935, 7955 ], "op": "ISZERO", "path": "67" }, "4709": { "fn": "BalanceHandler.finalize", "offset": [ 7931, 8255 ], "op": "PUSH2", "path": "67", "value": "0x12CD" }, "4712": { "branch": 462, "fn": "BalanceHandler.finalize", "offset": [ 7931, 8255 ], "op": "JUMPI", "path": "67" }, "4713": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8034 ], "op": "PUSH1", "path": "67", "statement": 93, "value": "0x20" }, "4715": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8034 ], "op": "DUP8", "path": "67" }, "4716": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8034 ], "op": "ADD", "path": "67" }, "4717": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8034 ], "op": "MLOAD", "path": "67" }, "4718": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8055 ], "op": "PUSH2", "path": "67", "value": "0x1277" }, "4721": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8055 ], "op": "SWAP1", "path": "67" }, "4722": { "fn": "BalanceHandler.finalize", "offset": [ 8039, 8054 ], "op": "DUP3", "path": "67" }, "4723": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8038 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4726": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 8004, 8055 ], "op": "JUMP", "path": "67" }, "4727": { "fn": "BalanceHandler.finalize", "offset": [ 8004, 8055 ], "op": "JUMPDEST", "path": "67" }, "4728": { "fn": "BalanceHandler.finalize", "offset": [ 7971, 8001 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "4730": { "fn": "BalanceHandler.finalize", "offset": [ 7971, 8001 ], "op": "DUP9", "path": "67" }, "4731": { "fn": "BalanceHandler.finalize", "offset": [ 7971, 8001 ], "op": "ADD", "path": "67" }, "4732": { "fn": "BalanceHandler.finalize", "offset": [ 7971, 8055 ], "op": "MSTORE", "path": "67" }, "4733": { "fn": "BalanceHandler.finalize", "offset": [ 8173, 8196 ], "op": "DUP7", "path": "67", "statement": 94 }, "4734": { "fn": "BalanceHandler.finalize", "offset": [ 8173, 8196 ], "op": "MLOAD", "path": "67" }, "4735": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4737": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "MLOAD", "path": "67" }, "4738": { "fn": "BalanceHandler.finalize", "offset": [ 8082, 8086 ], "op": "PUSH1", "path": "67", "statement": 95, "value": "0x1" }, "4740": { "fn": "BalanceHandler.finalize", "offset": [ 8082, 8086 ], "op": "SWAP4", "path": "67" }, "4741": { "op": "POP" }, "4742": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4745": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP1", "path": "67" }, "4746": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP2", "path": "67" }, "4747": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "AND", "path": "67" }, "4748": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP1", "path": "67" }, "4749": { "op": "PUSH1", "value": "0x1" }, "4751": { "op": "PUSH1", "value": "0x1" }, "4753": { "op": "PUSH1", "value": "0xA0" }, "4755": { "op": "SHL" }, "4756": { "op": "SUB" }, "4757": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "DUP9", "path": "67" }, "4758": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "AND", "path": "67" }, "4759": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP1", "path": "67" }, "4760": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "PUSH32", "path": "67", "value": "0x5441E4A5FAC93A951D782E6F1CDB82E95C8FC58561A013953D17E395C5E69B4B" }, "4793": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP1", "path": "67" }, "4794": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "PUSH2", "path": "67", "value": "0x12C4" }, "4797": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP1", "path": "67" }, "4798": { "fn": "BalanceHandler.finalize", "offset": [ 8215, 8230 ], "op": "DUP6", "path": "67" }, "4799": { "fn": "BalanceHandler.finalize", "offset": [ 8215, 8230 ], "op": "SWAP1", "path": "67" }, "4800": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "PUSH2", "path": "67", "value": "0x48AB" }, "4803": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 8106, 8244 ], "op": "JUMP", "path": "67" }, "4804": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "JUMPDEST", "path": "67" }, "4805": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4807": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "MLOAD", "path": "67" }, "4808": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "DUP1", "path": "67" }, "4809": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP2", "path": "67" }, "4810": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SUB", "path": "67" }, "4811": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "SWAP1", "path": "67" }, "4812": { "fn": "BalanceHandler.finalize", "offset": [ 8106, 8244 ], "op": "LOG3", "path": "67" }, "4813": { "fn": "BalanceHandler.finalize", "offset": [ 7931, 8255 ], "op": "JUMPDEST", "path": "67" }, "4814": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8299 ], "op": "PUSH1", "path": "67", "value": "0xA0" }, "4816": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8299 ], "op": "DUP8", "path": "67" }, "4817": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8299 ], "op": "ADD", "path": "67" }, "4818": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8299 ], "op": "MLOAD", "path": "67" }, "4819": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8304 ], "op": "ISZERO", "path": "67" }, "4820": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8304 ], "op": "ISZERO", "path": "67" }, "4821": { "branch": 463, "fn": "BalanceHandler.finalize", "offset": [ 8269, 8304 ], "op": "DUP1", "path": "67" }, "4822": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8347 ], "op": "PUSH2", "path": "67", "value": "0x12E2" }, "4825": { "branch": 463, "fn": "BalanceHandler.finalize", "offset": [ 8269, 8347 ], "op": "JUMPI", "path": "67" }, "4826": { "op": "POP" }, "4827": { "fn": "BalanceHandler.finalize", "offset": [ 8308, 8342 ], "op": "PUSH1", "path": "67", "value": "0xC0" }, "4829": { "fn": "BalanceHandler.finalize", "offset": [ 8308, 8342 ], "op": "DUP8", "path": "67" }, "4830": { "fn": "BalanceHandler.finalize", "offset": [ 8308, 8342 ], "op": "ADD", "path": "67" }, "4831": { "fn": "BalanceHandler.finalize", "offset": [ 8308, 8342 ], "op": "MLOAD", "path": "67" }, "4832": { "fn": "BalanceHandler.finalize", "offset": [ 8308, 8347 ], "op": "ISZERO", "path": "67" }, "4833": { "branch": 464, "fn": "BalanceHandler.finalize", "offset": [ 8308, 8347 ], "op": "ISZERO", "path": "67" }, "4834": { "fn": "BalanceHandler.finalize", "offset": [ 8269, 8347 ], "op": "JUMPDEST", "path": "67" }, "4835": { "fn": "BalanceHandler.finalize", "offset": [ 8265, 9185 ], "op": "ISZERO", "path": "67" }, "4836": { "fn": "BalanceHandler.finalize", "offset": [ 8265, 9185 ], "op": "PUSH2", "path": "67", "value": "0x1388" }, "4839": { "branch": 464, "fn": "BalanceHandler.finalize", "offset": [ 8265, 9185 ], "op": "JUMPI", "path": "67" }, "4840": { "fn": "BalanceHandler.finalize", "offset": [ 8447, 8472 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4842": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8617 ], "op": "PUSH2", "path": "67", "value": "0x130C" }, "4845": { "fn": "BalanceHandler.finalize", "offset": [ 8582, 8594 ], "op": "DUP9", "path": "67" }, "4846": { "fn": "BalanceHandler.finalize", "offset": [ 8582, 8616 ], "op": "PUSH1", "path": "67", "value": "0xC0" }, "4848": { "fn": "BalanceHandler.finalize", "offset": [ 8582, 8616 ], "op": "ADD", "path": "67" }, "4849": { "fn": "BalanceHandler.finalize", "offset": [ 8582, 8616 ], "op": "MLOAD", "path": "67" }, "4850": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8560 ], "op": "PUSH2", "path": "67", "value": "0x11C6" }, "4853": { "fn": "BalanceHandler.finalize", "offset": [ 8529, 8541 ], "op": "DUP11", "path": "67" }, "4854": { "fn": "BalanceHandler.finalize", "offset": [ 8529, 8559 ], "op": "PUSH1", "path": "67", "value": "0xA0" }, "4856": { "fn": "BalanceHandler.finalize", "offset": [ 8529, 8559 ], "op": "ADD", "path": "67" }, "4857": { "fn": "BalanceHandler.finalize", "offset": [ 8529, 8559 ], "op": "MLOAD", "path": "67" }, "4858": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8487 ], "op": "DUP12", "path": "67" }, "4859": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8507 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4861": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8507 ], "op": "ADD", "path": "67" }, "4862": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8507 ], "op": "MLOAD", "path": "67" }, "4863": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8528 ], "op": "PUSH2", "path": "67", "value": "0xEC5" }, "4866": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8528 ], "op": "SWAP1", "path": "67" }, "4867": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8560 ], "op": "SWAP2", "path": "67" }, "4868": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8560 ], "op": "SWAP1", "path": "67" }, "4869": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8560 ], "op": "PUSH4", "path": "67", "value": "0xFFFFFFFF" }, "4874": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8560 ], "op": "AND", "path": "67" }, "4875": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 8475, 8560 ], "op": "JUMP", "path": "67" }, "4876": { "fn": "BalanceHandler.finalize", "offset": [ 8475, 8617 ], "op": "JUMPDEST", "path": "67" }, "4877": { "fn": "BalanceHandler.finalize", "offset": [ 8447, 8617 ], "op": "SWAP1", "path": "67" }, "4878": { "fn": "BalanceHandler.finalize", "offset": [ 8447, 8617 ], "op": "POP", "path": "67" }, "4879": { "fn": "BalanceHandler.finalize", "offset": [ 8725, 8803 ], "op": "PUSH2", "path": "67", "statement": 96, "value": "0x1321" }, "4882": { "fn": "BalanceHandler.finalize", "offset": [ 8752, 8764 ], "op": "DUP9", "path": "67" }, "4883": { "fn": "BalanceHandler.finalize", "offset": [ 8766, 8773 ], "op": "DUP9", "path": "67" }, "4884": { "fn": "BalanceHandler.finalize", "offset": [ 8775, 8802 ], "op": "PUSH2", "path": "67", "value": "0x131C" }, "4887": { "fn": "BalanceHandler.finalize", "offset": [ 8775, 8793 ], "op": "DUP5", "path": "67" }, "4888": { "fn": "BalanceHandler.finalize", "offset": [ 8775, 8800 ], "op": "PUSH2", "path": "67", "value": "0x1CF6" }, "4891": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 8775, 8802 ], "op": "JUMP", "path": "67" }, "4892": { "fn": "BalanceHandler.finalize", "offset": [ 8775, 8802 ], "op": "JUMPDEST", "path": "67" }, "4893": { "fn": "BalanceHandler.finalize", "offset": [ 8725, 8751 ], "op": "PUSH2", "path": "67", "value": "0x1F67" }, "4896": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 8725, 8803 ], "op": "JUMP", "path": "67" }, "4897": { "fn": "BalanceHandler.finalize", "offset": [ 8725, 8803 ], "op": "JUMPDEST", "path": "67" }, "4898": { "op": "POP" }, "4899": { "fn": "BalanceHandler.finalize", "offset": [ 8818, 8850 ], "op": "PUSH1", "path": "67", "statement": 97, "value": "0x40" }, "4901": { "fn": "BalanceHandler.finalize", "offset": [ 8818, 8850 ], "op": "DUP9", "path": "67" }, "4902": { "fn": "BalanceHandler.finalize", "offset": [ 8818, 8850 ], "op": "ADD", "path": "67" }, "4903": { "fn": "BalanceHandler.finalize", "offset": [ 8818, 8871 ], "op": "DUP2", "path": "67" }, "4904": { "fn": "BalanceHandler.finalize", "offset": [ 8818, 8871 ], "op": "SWAP1", "path": "67" }, "4905": { "fn": "BalanceHandler.finalize", "offset": [ 8818, 8871 ], "op": "MSTORE", "path": "67" }, "4906": { "fn": "BalanceHandler.finalize", "offset": [ 8890, 8924 ], "op": "PUSH1", "path": "67", "value": "0xC0" }, "4908": { "fn": "BalanceHandler.finalize", "offset": [ 8890, 8924 ], "op": "DUP9", "path": "67" }, "4909": { "fn": "BalanceHandler.finalize", "offset": [ 8890, 8924 ], "op": "ADD", "path": "67" }, "4910": { "fn": "BalanceHandler.finalize", "offset": [ 8890, 8924 ], "op": "MLOAD", "path": "67" }, "4911": { "branch": 465, "fn": "BalanceHandler.finalize", "offset": [ 8890, 8929 ], "op": "ISZERO", "path": "67" }, "4912": { "fn": "BalanceHandler.finalize", "offset": [ 8886, 9143 ], "op": "PUSH2", "path": "67", "value": "0x1382" }, "4915": { "branch": 465, "fn": "BalanceHandler.finalize", "offset": [ 8886, 9143 ], "op": "JUMPI", "path": "67" }, "4916": { "fn": "BalanceHandler.finalize", "offset": [ 9030, 9042 ], "op": "DUP8", "path": "67", "statement": 98 }, "4917": { "fn": "BalanceHandler.finalize", "offset": [ 9030, 9053 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "4919": { "fn": "BalanceHandler.finalize", "offset": [ 9030, 9053 ], "op": "ADD", "path": "67" }, "4920": { "fn": "BalanceHandler.finalize", "offset": [ 9030, 9053 ], "op": "MLOAD", "path": "67" }, "4921": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "4924": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "AND", "path": "67" }, "4925": { "fn": "BalanceHandler.finalize", "offset": [ 8994, 9001 ], "op": "DUP8", "path": "67" }, "4926": { "op": "PUSH1", "value": "0x1" }, "4928": { "op": "PUSH1", "value": "0x1" }, "4930": { "op": "PUSH1", "value": "0xA0" }, "4932": { "op": "SHL" }, "4933": { "op": "SUB" }, "4934": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "AND", "path": "67" }, "4935": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "PUSH32", "path": "67", "value": "0x412BC13D202A2EA5119E55FEC9C5E420DDDB18FAF186373AD9795AD4F4545AA9" }, "4968": { "fn": "BalanceHandler.finalize", "offset": [ 9076, 9088 ], "op": "DUP11", "path": "67" }, "4969": { "fn": "BalanceHandler.finalize", "offset": [ 9076, 9110 ], "op": "PUSH1", "path": "67", "value": "0xC0" }, "4971": { "fn": "BalanceHandler.finalize", "offset": [ 9076, 9110 ], "op": "ADD", "path": "67" }, "4972": { "fn": "BalanceHandler.finalize", "offset": [ 9076, 9110 ], "op": "MLOAD", "path": "67" }, "4973": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4975": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "MLOAD", "path": "67" }, "4976": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "PUSH2", "path": "67", "value": "0x1379" }, "4979": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "SWAP2", "path": "67" }, "4980": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "SWAP1", "path": "67" }, "4981": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "PUSH2", "path": "67", "value": "0x48AB" }, "4984": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 8954, 9128 ], "op": "JUMP", "path": "67" }, "4985": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "JUMPDEST", "path": "67" }, "4986": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "4988": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "MLOAD", "path": "67" }, "4989": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "DUP1", "path": "67" }, "4990": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "SWAP2", "path": "67" }, "4991": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "SUB", "path": "67" }, "4992": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "SWAP1", "path": "67" }, "4993": { "fn": "BalanceHandler.finalize", "offset": [ 8954, 9128 ], "op": "LOG3", "path": "67" }, "4994": { "fn": "BalanceHandler.finalize", "offset": [ 8886, 9143 ], "op": "JUMPDEST", "path": "67" }, "4995": { "fn": "BalanceHandler.finalize", "offset": [ 9170, 9174 ], "op": "PUSH1", "path": "67", "statement": 99, "value": "0x1" }, "4997": { "fn": "BalanceHandler.finalize", "offset": [ 9157, 9174 ], "op": "SWAP3", "path": "67" }, "4998": { "fn": "BalanceHandler.finalize", "offset": [ 9157, 9174 ], "op": "POP", "path": "67" }, "4999": { "fn": "BalanceHandler.finalize", "offset": [ 8265, 9185 ], "op": "POP", "path": "67" }, "5000": { "fn": "BalanceHandler.finalize", "offset": [ 8265, 9185 ], "op": "JUMPDEST", "path": "67" }, "5001": { "branch": 466, "fn": "BalanceHandler.finalize", "offset": [ 9199, 9209 ], "op": "DUP2", "path": "67" }, "5002": { "fn": "BalanceHandler.finalize", "offset": [ 9195, 9527 ], "op": "ISZERO", "path": "67" }, "5003": { "fn": "BalanceHandler.finalize", "offset": [ 9195, 9527 ], "op": "PUSH2", "path": "67", "value": "0x13B5" }, "5006": { "branch": 466, "fn": "BalanceHandler.finalize", "offset": [ 9195, 9527 ], "op": "JUMPI", "path": "67" }, "5007": { "fn": "BalanceHandler.finalize", "offset": [ 9225, 9516 ], "op": "PUSH2", "path": "67", "statement": 100, "value": "0x13B5" }, "5010": { "fn": "BalanceHandler.finalize", "offset": [ 9261, 9268 ], "op": "DUP7", "path": "67" }, "5011": { "fn": "BalanceHandler.finalize", "offset": [ 9286, 9298 ], "op": "DUP9", "path": "67" }, "5012": { "fn": "BalanceHandler.finalize", "offset": [ 9286, 9309 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "5014": { "fn": "BalanceHandler.finalize", "offset": [ 9286, 9309 ], "op": "ADD", "path": "67" }, "5015": { "fn": "BalanceHandler.finalize", "offset": [ 9286, 9309 ], "op": "MLOAD", "path": "67" }, "5016": { "fn": "BalanceHandler.finalize", "offset": [ 9225, 9516 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "5019": { "fn": "BalanceHandler.finalize", "offset": [ 9225, 9516 ], "op": "AND", "path": "67" }, "5020": { "fn": "BalanceHandler.finalize", "offset": [ 9327, 9339 ], "op": "DUP10", "path": "67" }, "5021": { "fn": "BalanceHandler.finalize", "offset": [ 9327, 9357 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "5023": { "fn": "BalanceHandler.finalize", "offset": [ 9327, 9357 ], "op": "ADD", "path": "67" }, "5024": { "fn": "BalanceHandler.finalize", "offset": [ 9327, 9357 ], "op": "MLOAD", "path": "67" }, "5025": { "fn": "BalanceHandler.finalize", "offset": [ 9375, 9387 ], "op": "DUP11", "path": "67" }, "5026": { "fn": "BalanceHandler.finalize", "offset": [ 9375, 9407 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "5028": { "fn": "BalanceHandler.finalize", "offset": [ 9375, 9407 ], "op": "ADD", "path": "67" }, "5029": { "fn": "BalanceHandler.finalize", "offset": [ 9375, 9407 ], "op": "MLOAD", "path": "67" }, "5030": { "fn": "BalanceHandler.finalize", "offset": [ 9425, 9437 ], "op": "DUP12", "path": "67" }, "5031": { "fn": "BalanceHandler.finalize", "offset": [ 9425, 9451 ], "op": "PUSH1", "path": "67", "value": "0xE0" }, "5033": { "fn": "BalanceHandler.finalize", "offset": [ 9425, 9451 ], "op": "ADD", "path": "67" }, "5034": { "fn": "BalanceHandler.finalize", "offset": [ 9425, 9451 ], "op": "MLOAD", "path": "67" }, "5035": { "fn": "BalanceHandler.finalize", "offset": [ 9469, 9481 ], "op": "DUP13", "path": "67" }, "5036": { "fn": "BalanceHandler.finalize", "offset": [ 9469, 9502 ], "op": "PUSH2", "path": "67", "value": "0x100" }, "5039": { "fn": "BalanceHandler.finalize", "offset": [ 9469, 9502 ], "op": "ADD", "path": "67" }, "5040": { "fn": "BalanceHandler.finalize", "offset": [ 9469, 9502 ], "op": "MLOAD", "path": "67" }, "5041": { "fn": "BalanceHandler.finalize", "offset": [ 9225, 9243 ], "op": "PUSH2", "path": "67", "value": "0x204E" }, "5044": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 9225, 9516 ], "op": "JUMP", "path": "67" }, "5045": { "fn": "BalanceHandler.finalize", "offset": [ 9225, 9516 ], "op": "JUMPDEST", "path": "67" }, "5046": { "fn": "BalanceHandler.finalize", "offset": [ 9583, 9606 ], "op": "DUP7", "path": "67", "statement": 101 }, "5047": { "fn": "BalanceHandler.finalize", "offset": [ 9583, 9606 ], "op": "MLOAD", "path": "67" }, "5048": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9723 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "5050": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9723 ], "op": "DUP9", "path": "67" }, "5051": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9723 ], "op": "ADD", "path": "67" }, "5052": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9723 ], "op": "MLOAD", "path": "67" }, "5053": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "PUSH2", "path": "67", "value": "0x13E2" }, "5056": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "SWAP2", "path": "67" }, "5057": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "5060": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "AND", "path": "67" }, "5061": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "SWAP1", "path": "67" }, "5062": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9728 ], "op": "ISZERO", "path": "67" }, "5063": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9728 ], "op": "ISZERO", "path": "67" }, "5064": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9728 ], "op": "DUP1", "path": "67" }, "5065": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9769 ], "op": "PUSH2", "path": "67", "value": "0x13D5" }, "5068": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9769 ], "op": "JUMPI", "path": "67" }, "5069": { "op": "POP" }, "5070": { "fn": "BalanceHandler.finalize", "offset": [ 9732, 9764 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "5072": { "fn": "BalanceHandler.finalize", "offset": [ 9732, 9764 ], "op": "DUP10", "path": "67" }, "5073": { "fn": "BalanceHandler.finalize", "offset": [ 9732, 9764 ], "op": "ADD", "path": "67" }, "5074": { "fn": "BalanceHandler.finalize", "offset": [ 9732, 9764 ], "op": "MLOAD", "path": "67" }, "5075": { "fn": "BalanceHandler.finalize", "offset": [ 9732, 9769 ], "op": "ISZERO", "path": "67" }, "5076": { "fn": "BalanceHandler.finalize", "offset": [ 9732, 9769 ], "op": "ISZERO", "path": "67" }, "5077": { "fn": "BalanceHandler.finalize", "offset": [ 9693, 9769 ], "op": "JUMPDEST", "path": "67" }, "5078": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9551 ], "op": "DUP8", "path": "67" }, "5079": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9551 ], "op": "SWAP2", "path": "67" }, "5080": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "SWAP1", "path": "67" }, "5081": { "op": "PUSH1", "value": "0x1" }, "5083": { "op": "PUSH1", "value": "0xFE" }, "5085": { "op": "SHL" }, "5086": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9569 ], "op": "PUSH2", "path": "67", "value": "0x2187" }, "5089": { "fn": "BalanceHandler.finalize", "jump": "i", "offset": [ 9537, 9821 ], "op": "JUMP", "path": "67" }, "5090": { "fn": "BalanceHandler.finalize", "offset": [ 9537, 9821 ], "op": "JUMPDEST", "path": "67" }, "5091": { "fn": "BalanceHandler.finalize", "offset": [ 9869, 9870 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "5093": { "fn": "BalanceHandler.finalize", "offset": [ 9836, 9848 ], "op": "DUP8", "path": "67" }, "5094": { "fn": "BalanceHandler.finalize", "offset": [ 9836, 9866 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "5096": { "fn": "BalanceHandler.finalize", "offset": [ 9836, 9866 ], "op": "ADD", "path": "67" }, "5097": { "fn": "BalanceHandler.finalize", "offset": [ 9836, 9866 ], "op": "MLOAD", "path": "67" }, "5098": { "branch": 467, "fn": "BalanceHandler.finalize", "offset": [ 9836, 9870 ], "op": "SLT", "path": "67" }, "5099": { "fn": "BalanceHandler.finalize", "offset": [ 9832, 10109 ], "op": "ISZERO", "path": "67" }, "5100": { "fn": "BalanceHandler.finalize", "offset": [ 9832, 10109 ], "op": "PUSH2", "path": "67", "value": "0x1408" }, "5103": { "branch": 467, "fn": "BalanceHandler.finalize", "offset": [ 9832, 10109 ], "op": "JUMPI", "path": "67" }, "5104": { "fn": "BalanceHandler.finalize", "offset": [ 10050, 10072 ], "op": "PUSH1", "path": "67", "statement": 102, "value": "0x20" }, "5106": { "fn": "BalanceHandler.finalize", "offset": [ 10050, 10072 ], "op": "DUP6", "path": "67" }, "5107": { "fn": "BalanceHandler.finalize", "offset": [ 10050, 10072 ], "op": "ADD", "path": "67" }, "5108": { "fn": "BalanceHandler.finalize", "offset": [ 10050, 10072 ], "op": "DUP1", "path": "67" }, "5109": { "fn": "BalanceHandler.finalize", "offset": [ 10050, 10072 ], "op": "MLOAD", "path": "67" }, "5110": { "op": "PUSH1", "value": "0x1" }, "5112": { "op": "PUSH1", "value": "0xF9" }, "5114": { "op": "SHL" }, "5115": { "fn": "BalanceHandler.finalize", "offset": [ 10050, 10098 ], "op": "OR", "path": "67" }, "5116": { "op": "PUSH1", "value": "0x1" }, "5118": { "op": "PUSH1", "value": "0x1" }, "5120": { "op": "PUSH1", "value": "0xF8" }, "5122": { "op": "SHL" }, "5123": { "op": "SUB" }, "5124": { "op": "NOT" }, "5125": { "fn": "BalanceHandler.finalize", "offset": [ 10025, 10098 ], "op": "AND", "path": "67" }, "5126": { "fn": "BalanceHandler.finalize", "offset": [ 10025, 10098 ], "op": "SWAP1", "path": "67" }, "5127": { "fn": "BalanceHandler.finalize", "offset": [ 10025, 10098 ], "op": "MSTORE", "path": "67" }, "5128": { "fn": "BalanceHandler.finalize", "offset": [ 9832, 10109 ], "op": "JUMPDEST", "path": "67" }, "5129": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "POP", "path": "67" }, "5130": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "POP", "path": "67" }, "5131": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "SWAP5", "path": "67" }, "5132": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "SWAP4", "path": "67" }, "5133": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "POP", "path": "67" }, "5134": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "POP", "path": "67" }, "5135": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "POP", "path": "67" }, "5136": { "fn": "BalanceHandler.finalize", "offset": [ 6510, 10115 ], "op": "POP", "path": "67" }, "5137": { "fn": "BalanceHandler.finalize", "jump": "o", "offset": [ 6510, 10115 ], "op": "JUMP", "path": "67" }, "5138": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1117, 1269 ], "op": "JUMPDEST", "path": "66" }, "5139": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1257 ], "op": "PUSH1", "path": "66", "statement": 103, "value": "0x60" }, "5141": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1257 ], "op": "ADD", "path": "66" }, "5142": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1257 ], "op": "MLOAD", "path": "66" }, "5143": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "5146": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "AND", "path": "66" }, "5147": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "ISZERO", "path": "66" }, "5148": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "ISZERO", "path": "66" }, "5149": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "SWAP1", "path": "66" }, "5150": { "fn": "AccountContextHandler.isBitmapEnabled", "jump": "o", "offset": [ 1117, 1269 ], "op": "JUMP", "path": "66" }, "5151": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "JUMPDEST", "path": "66" }, "5152": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5154": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "DUP1", "path": "66" }, "5155": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "DUP1", "path": "66" }, "5156": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "DUP1", "path": "66" }, "5157": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10379 ], "op": "PUSH2", "path": "66", "value": "0x142E" }, "5160": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10358 ], "op": "DUP7", "path": "66" }, "5161": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10371, 10378 ], "op": "DUP9", "path": "66" }, "5162": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10370 ], "op": "PUSH2", "path": "66", "value": "0x2386" }, "5165": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 10344, 10379 ], "op": "JUMP", "path": "66" }, "5166": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10379 ], "op": "JUMPDEST", "path": "66" }, "5167": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "PUSH5", "path": "66", "statement": 104, "value": "0xFFFFFFFFFF" }, "5173": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "DUP2", "path": "66" }, "5174": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "AND", "path": "66" }, "5175": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "DUP13", "path": "66" }, "5176": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "MSTORE", "path": "66" }, "5177": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP3", "path": "66" }, "5178": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP7", "path": "66" }, "5179": { "op": "POP" }, "5180": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP1", "path": "66" }, "5181": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP5", "path": "66" }, "5182": { "op": "POP" }, "5183": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP3", "path": "66" }, "5184": { "op": "POP" }, "5185": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP1", "path": "66" }, "5186": { "op": "POP" }, "5187": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10485 ], "op": "PUSH2", "path": "66", "statement": 105, "value": "0x144B" }, "5190": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10403 ], "op": "DUP9", "path": "66" }, "5191": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10469 ], "op": "PUSH2", "path": "66", "value": "0x18AE" }, "5194": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 10453, 10485 ], "op": "JUMP", "path": "66" }, "5195": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10485 ], "op": "JUMPDEST", "path": "66" }, "5196": { "branch": 411, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10494 ], "op": "ISZERO", "path": "66" }, "5197": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "PUSH2", "path": "66", "value": "0x1455" }, "5200": { "branch": 411, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "JUMPI", "path": "66" }, "5201": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5203": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "DUP1", "path": "66" }, "5204": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "REVERT", "path": "66" }, "5205": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "JUMPDEST", "path": "66" }, "5206": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "PUSH1", "path": "66", "statement": 106, "value": "0xFF" }, "5208": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "DUP3", "path": "66" }, "5209": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "AND", "path": "66" }, "5210": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10572 ], "op": "PUSH1", "path": "66", "value": "0x40" }, "5212": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10572 ], "op": "DUP10", "path": "66" }, "5213": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10572 ], "op": "ADD", "path": "66" }, "5214": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "MSTORE", "path": "66" }, "5215": { "branch": 412, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10772, 10785 ], "op": "DUP5", "path": "66" }, "5216": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10767, 10908 ], "op": "PUSH2", "path": "66", "value": "0x1474" }, "5219": { "branch": 412, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10767, 10908 ], "op": "JUMPI", "path": "66" }, "5220": { "offset": [ 2023, 2024 ], "op": "PUSH1", "path": "60", "value": "0x7" }, "5222": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "PUSH1", "path": "66", "statement": 107, "value": "0xFF" }, "5224": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "DUP4", "path": "66" }, "5225": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "AND", "path": "66" }, "5226": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "GT", "path": "66" }, "5227": { "branch": 413, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "ISZERO", "path": "66" }, "5228": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "PUSH2", "path": "66", "value": "0x1474" }, "5231": { "branch": 413, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "JUMPI", "path": "66" }, "5232": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5234": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "DUP1", "path": "66" }, "5235": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "REVERT", "path": "66" }, "5236": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "JUMPDEST", "path": "66" }, "5237": { "branch": 414, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11059, 11066 ], "op": "DUP4", "path": "66" }, "5238": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "ISZERO", "path": "66" }, "5239": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "PUSH2", "path": "66", "value": "0x1497" }, "5242": { "branch": 414, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMPI", "path": "66" }, "5243": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "PUSH1", "path": "66", "statement": 108, "value": "0x20" }, "5245": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "DUP9", "path": "66" }, "5246": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "ADD", "path": "66" }, "5247": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "DUP1", "path": "66" }, "5248": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "MLOAD", "path": "66" }, "5249": { "op": "PUSH1", "value": "0x1" }, "5251": { "op": "PUSH1", "value": "0xF8" }, "5253": { "op": "SHL" }, "5254": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11156 ], "op": "OR", "path": "66" }, "5255": { "op": "PUSH1", "value": "0x1" }, "5257": { "op": "PUSH1", "value": "0x1" }, "5259": { "op": "PUSH1", "value": "0xF8" }, "5261": { "op": "SHL" }, "5262": { "op": "SUB" }, "5263": { "op": "NOT" }, "5264": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11082, 11156 ], "op": "AND", "path": "66" }, "5265": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11082, 11156 ], "op": "SWAP1", "path": "66" }, "5266": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11082, 11156 ], "op": "MSTORE", "path": "66" }, "5267": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "PUSH2", "path": "66", "value": "0x14A6" }, "5270": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMP", "path": "66" }, "5271": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMPDEST", "path": "66" }, "5272": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "PUSH1", "path": "66", "statement": 109, "value": "0x20" }, "5274": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "DUP9", "path": "66" }, "5275": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "ADD", "path": "66" }, "5276": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "DUP1", "path": "66" }, "5277": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "MLOAD", "path": "66" }, "5278": { "op": "PUSH1", "value": "0x7F" }, "5280": { "op": "PUSH1", "value": "0xF9" }, "5282": { "op": "SHL" }, "5283": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11232, 11307 ], "op": "AND", "path": "66" }, "5284": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11232, 11307 ], "op": "SWAP1", "path": "66" }, "5285": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11232, 11307 ], "op": "MSTORE", "path": "66" }, "5286": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMPDEST", "path": "66" }, "5287": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11460, 11519 ], "op": "PUSH2", "path": "66", "statement": 110, "value": "0x14B3" }, "5290": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11501 ], "op": "DUP9", "path": "66" }, "5291": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11518 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "5293": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11518 ], "op": "ADD", "path": "66" }, "5294": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11518 ], "op": "MLOAD", "path": "66" }, "5295": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11460, 11486 ], "op": "PUSH2", "path": "66", "value": "0x25C5" }, "5298": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 11460, 11519 ], "op": "JUMP", "path": "66" }, "5299": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11460, 11519 ], "op": "JUMPDEST", "path": "66" }, "5300": { "op": "PUSH1", "value": "0x1" }, "5302": { "op": "PUSH1", "value": "0x1" }, "5304": { "op": "PUSH1", "value": "0x70" }, "5306": { "op": "SHL" }, "5307": { "op": "SUB" }, "5308": { "op": "NOT" }, "5309": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11519 ], "op": "AND", "path": "66" }, "5310": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11457 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "5312": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11457 ], "op": "DUP10", "path": "66" }, "5313": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11457 ], "op": "ADD", "path": "66" }, "5314": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11519 ], "op": "MSTORE", "path": "66" }, "5315": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11530, 11550 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5317": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMPDEST", "path": "66" }, "5318": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11567, 11591 ], "op": "DUP4", "path": "66" }, "5319": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11567, 11591 ], "op": "ISZERO", "path": "66" }, "5320": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "PUSH2", "path": "66", "value": "0x14F6" }, "5323": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMPI", "path": "66" }, "5324": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "PUSH1", "path": "66", "value": "0xF0" }, "5326": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "DUP5", "path": "66" }, "5327": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "SWAP1", "path": "66" }, "5328": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "SHR", "path": "66" }, "5329": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11955, 11981 ], "op": "DUP2", "path": "66" }, "5330": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11955, 11981 ], "op": "DUP2", "path": "66" }, "5331": { "branch": 415, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11955, 11981 ], "op": "EQ", "path": "66" }, "5332": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11951, 12098 ], "op": "PUSH2", "path": "66", "value": "0x14E8" }, "5335": { "branch": 415, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11951, 12098 ], "op": "JUMPI", "path": "66" }, "5336": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12001, 12083 ], "op": "PUSH2", "path": "66", "statement": 111, "value": "0x14E8" }, "5339": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12019, 12033 ], "op": "DUP11", "path": "66" }, "5340": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12035, 12045 ], "op": "DUP3", "path": "66" }, "5341": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12047, 12051 ], "op": "PUSH1", "path": "66", "value": "0x1" }, "5343": { "op": "PUSH1", "value": "0x1" }, "5345": { "op": "PUSH1", "value": "0xFF" }, "5347": { "op": "SHL" }, "5348": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12001, 12018 ], "op": "PUSH2", "path": "66", "value": "0x2187" }, "5351": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 12001, 12083 ], "op": "JUMP", "path": "66" }, "5352": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12001, 12083 ], "op": "JUMPDEST", "path": "66" }, "5353": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12196, 12198 ], "op": "PUSH1", "path": "66", "statement": 112, "value": "0x10" }, "5355": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP5", "path": "66" }, "5356": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP1", "path": "66" }, "5357": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP5", "path": "66" }, "5358": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SHL", "path": "66" }, "5359": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP4", "path": "66" }, "5360": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12126, 12136 ], "op": "SWAP1", "path": "66", "statement": 113 }, "5361": { "op": "POP" }, "5362": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "PUSH2", "path": "66", "value": "0x14C5" }, "5365": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMP", "path": "66" }, "5366": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMPDEST", "path": "66" }, "5367": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5368": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5369": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5370": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5371": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5372": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5373": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5374": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5375": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "POP", "path": "66" }, "5376": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "o", "offset": [ 9863, 12215 ], "op": "JUMP", "path": "66" }, "5377": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "JUMPDEST", "path": "66" }, "5378": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 938, 986 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5380": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 989, 1019 ], "op": "PUSH2", "path": "66", "value": "0x150B" }, "5383": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 989, 1017 ], "op": "PUSH2", "path": "66", "value": "0x2640" }, "5386": { "fn": "AccountContextHandler.setAccountContext", "jump": "i", "offset": [ 989, 1019 ], "op": "JUMP", "path": "66" }, "5387": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 989, 1019 ], "op": "JUMPDEST", "path": "66" }, "5388": { "op": "PUSH1", "value": "0x1" }, "5390": { "op": "PUSH1", "value": "0x1" }, "5392": { "op": "PUSH1", "value": "0xA0" }, "5394": { "op": "SHL" }, "5395": { "op": "SUB" }, "5396": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP4", "path": "66", "statement": 114 }, "5397": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "AND", "path": "66" }, "5398": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5400": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP2", "path": "66" }, "5401": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP2", "path": "66" }, "5402": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "MSTORE", "path": "66" }, "5403": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "PUSH1", "path": "66", "value": "0x20" }, "5405": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP4", "path": "66" }, "5406": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP2", "path": "66" }, "5407": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "MSTORE", "path": "66" }, "5408": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "PUSH1", "path": "66", "value": "0x40" }, "5410": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP1", "path": "66" }, "5411": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP4", "path": "66" }, "5412": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "KECCAK256", "path": "66" }, "5413": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP9", "path": "66" }, "5414": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "5415": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP2", "path": "66" }, "5416": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SLOAD", "path": "66" }, "5417": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "5418": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP11", "path": "66" }, "5419": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "5420": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "5421": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP4", "path": "66" }, "5422": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP12", "path": "66" }, "5423": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "5424": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "5425": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "5427": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP13", "path": "66" }, "5428": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "5429": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "5430": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "5432": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP14", "path": "66" }, "5433": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "5434": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "5435": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0x70" }, "5437": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SHR", "path": "66" }, "5438": { "op": "PUSH1", "value": "0x1" }, "5440": { "op": "PUSH1", "value": "0x48" }, "5442": { "op": "SHL" }, "5443": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "5444": { "op": "PUSH27", "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000" }, "5472": { "op": "NOT" }, "5473": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "5476": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5477": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP3", "path": "66" }, "5478": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5479": { "op": "PUSH1", "value": "0x1" }, "5481": { "op": "PUSH1", "value": "0x38" }, "5483": { "op": "SHL" }, "5484": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "5485": { "op": "PUSH9", "value": "0xFFFF00000000000000" }, "5495": { "op": "NOT" }, "5496": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0xFF" }, "5498": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "5499": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5500": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "5501": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5502": { "op": "PUSH1", "value": "0x1" }, "5504": { "op": "PUSH1", "value": "0x30" }, "5506": { "op": "SHL" }, "5507": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "5508": { "op": "PUSH7", "value": "0xFF000000000000" }, "5516": { "op": "NOT" }, "5517": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0xF8" }, "5519": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "5520": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5521": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "5522": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SHR", "path": "66" }, "5523": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH6", "path": "66", "value": "0x10000000000" }, "5530": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "5531": { "op": "PUSH6", "value": "0xFF0000000000" }, "5538": { "op": "NOT" }, "5539": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "5545": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5546": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP9", "path": "66" }, "5547": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5548": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "5554": { "op": "NOT" }, "5555": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5556": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP12", "path": "66" }, "5557": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5558": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP11", "path": "66" }, "5559": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5560": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP11", "path": "66" }, "5561": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "5562": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "5563": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5564": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "5565": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5566": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP9", "path": "66" }, "5567": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5568": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP9", "path": "66" }, "5569": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "5570": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "5571": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5572": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "5573": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5574": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "5575": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5576": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "5577": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "5578": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5579": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "5580": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5581": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "5582": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "5583": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "5584": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP3", "path": "66" }, "5585": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5586": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP3", "path": "66" }, "5587": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "5588": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "5589": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP2", "path": "66" }, "5590": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SSTORE", "path": "66" }, "5591": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "MLOAD", "path": "66", "statement": 115 }, "5592": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 938, 1019 ], "op": "SWAP3", "path": "66" }, "5593": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 938, 1019 ], "op": "SWAP4", "path": "66" }, "5594": { "op": "POP" }, "5595": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "SWAP1", "path": "66" }, "5596": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "SWAP2", "path": "66" }, "5597": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "PUSH32", "path": "66", "value": "0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E" }, "5630": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "SWAP2", "path": "66" }, "5631": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "SWAP1", "path": "66" }, "5632": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "LOG2", "path": "66" }, "5633": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "POP", "path": "66" }, "5634": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "POP", "path": "66" }, "5635": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "POP", "path": "66" }, "5636": { "fn": "AccountContextHandler.setAccountContext", "jump": "o", "offset": [ 837, 1111 ], "op": "JUMP", "path": "66" }, "5637": { "fn": "BatchAction._executeDepositAction", "offset": [ 15550, 17246 ], "op": "JUMPDEST", "path": "29" }, "5638": { "fn": "BatchAction._executeDepositAction", "offset": [ 15749, 15775 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5640": { "fn": "BatchAction._executeDepositAction", "offset": [ 15778, 15816 ], "op": "PUSH2", "path": "29", "value": "0x1610" }, "5643": { "fn": "BatchAction._executeDepositAction", "offset": [ 15795, 15815 ], "op": "DUP3", "path": "29" }, "5644": { "fn": "BatchAction._executeDepositAction", "offset": [ 15778, 15794 ], "op": "PUSH2", "path": "29", "value": "0x264D" }, "5647": { "fn": "BatchAction._executeDepositAction", "jump": "i", "offset": [ 15778, 15816 ], "op": "JUMP", "path": "29" }, "5648": { "fn": "BatchAction._executeDepositAction", "offset": [ 15778, 15816 ], "op": "JUMPDEST", "path": "29" }, "5649": { "fn": "BatchAction._executeDepositAction", "offset": [ 15749, 15816 ], "op": "SWAP1", "path": "29" }, "5650": { "fn": "BatchAction._executeDepositAction", "offset": [ 15749, 15816 ], "op": "POP", "path": "29" }, "5651": { "fn": "BatchAction._executeDepositAction", "offset": [ 15826, 15852 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5653": { "fn": "BatchAction._executeDepositAction", "offset": [ 15893, 15894 ], "op": "DUP1", "path": "29", "statement": 116 }, "5654": { "fn": "BatchAction._executeDepositAction", "offset": [ 15870, 15889 ], "op": "DUP3", "path": "29" }, "5655": { "fn": "BatchAction._executeDepositAction", "offset": [ 15870, 15894 ], "op": "SLT", "path": "29" }, "5656": { "branch": 388, "fn": "BatchAction._executeDepositAction", "offset": [ 15870, 15894 ], "op": "ISZERO", "path": "29" }, "5657": { "fn": "BatchAction._executeDepositAction", "offset": [ 15862, 15895 ], "op": "PUSH2", "path": "29", "value": "0x1621" }, "5660": { "branch": 388, "fn": "BatchAction._executeDepositAction", "offset": [ 15862, 15895 ], "op": "JUMPI", "path": "29" }, "5661": { "fn": "BatchAction._executeDepositAction", "offset": [ 15862, 15895 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5663": { "fn": "BatchAction._executeDepositAction", "offset": [ 15862, 15895 ], "op": "DUP1", "path": "29" }, "5664": { "fn": "BatchAction._executeDepositAction", "offset": [ 15862, 15895 ], "op": "REVERT", "path": "29" }, "5665": { "fn": "BatchAction._executeDepositAction", "offset": [ 15862, 15895 ], "op": "JUMPDEST", "path": "29" }, "5666": { "fn": "BatchAction._executeDepositAction", "offset": [ 15925, 15947 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5668": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15921 ], "op": "DUP5", "path": "29" }, "5669": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5671": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "DUP2", "path": "29" }, "5672": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "GT", "path": "29" }, "5673": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "ISZERO", "path": "29" }, "5674": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "PUSH2", "path": "29", "value": "0x162F" }, "5677": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "JUMPI", "path": "29" }, "5678": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "INVALID", "path": "29" }, "5679": { "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "JUMPDEST", "path": "29" }, "5680": { "branch": 389, "fn": "BatchAction._executeDepositAction", "offset": [ 15910, 15947 ], "op": "EQ", "path": "29" }, "5681": { "fn": "BatchAction._executeDepositAction", "offset": [ 15906, 17082 ], "op": "ISZERO", "path": "29" }, "5682": { "fn": "BatchAction._executeDepositAction", "offset": [ 15906, 17082 ], "op": "PUSH2", "path": "29", "value": "0x163C" }, "5685": { "branch": 389, "fn": "BatchAction._executeDepositAction", "offset": [ 15906, 17082 ], "op": "JUMPI", "path": "29" }, "5686": { "fn": "BatchAction._executeDepositAction", "offset": [ 15963, 15970 ], "op": "POP", "path": "29", "statement": 117 }, "5687": { "fn": "BatchAction._executeDepositAction", "offset": [ 15963, 15970 ], "op": "POP", "path": "29" }, "5688": { "fn": "BatchAction._executeDepositAction", "offset": [ 15963, 15970 ], "op": "PUSH2", "path": "29", "value": "0x16D2" }, "5691": { "fn": "BatchAction._executeDepositAction", "offset": [ 15963, 15970 ], "op": "JUMP", "path": "29" }, "5692": { "fn": "BatchAction._executeDepositAction", "offset": [ 15906, 17082 ], "op": "JUMPDEST", "path": "29" }, "5693": { "fn": "BatchAction._executeDepositAction", "offset": [ 16018, 16048 ], "op": "PUSH1", "path": "29", "value": "0x1" }, "5695": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16014 ], "op": "DUP5", "path": "29" }, "5696": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5698": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "DUP2", "path": "29" }, "5699": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "GT", "path": "29" }, "5700": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "ISZERO", "path": "29" }, "5701": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "PUSH2", "path": "29", "value": "0x164A" }, "5704": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "JUMPI", "path": "29" }, "5705": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "INVALID", "path": "29" }, "5706": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "JUMPDEST", "path": "29" }, "5707": { "branch": 390, "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16048 ], "op": "EQ", "path": "29" }, "5708": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16122 ], "op": "DUP1", "path": "29" }, "5709": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16122 ], "op": "PUSH2", "path": "29", "value": "0x1661" }, "5712": { "branch": 390, "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16122 ], "op": "JUMPI", "path": "29" }, "5713": { "op": "POP" }, "5714": { "fn": "BatchAction._executeDepositAction", "offset": [ 16079, 16122 ], "op": "PUSH1", "path": "29", "value": "0x3" }, "5716": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16075 ], "op": "DUP5", "path": "29" }, "5717": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5719": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "DUP2", "path": "29" }, "5720": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "GT", "path": "29" }, "5721": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "ISZERO", "path": "29" }, "5722": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "PUSH2", "path": "29", "value": "0x165F" }, "5725": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "JUMPI", "path": "29" }, "5726": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "INVALID", "path": "29" }, "5727": { "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "JUMPDEST", "path": "29" }, "5728": { "branch": 391, "fn": "BatchAction._executeDepositAction", "offset": [ 16064, 16122 ], "op": "EQ", "path": "29" }, "5729": { "fn": "BatchAction._executeDepositAction", "offset": [ 16003, 16122 ], "op": "JUMPDEST", "path": "29" }, "5730": { "fn": "BatchAction._executeDepositAction", "offset": [ 15986, 17082 ], "op": "ISZERO", "path": "29" }, "5731": { "fn": "BatchAction._executeDepositAction", "offset": [ 15986, 17082 ], "op": "PUSH2", "path": "29", "value": "0x167A" }, "5734": { "branch": 391, "fn": "BatchAction._executeDepositAction", "offset": [ 15986, 17082 ], "op": "JUMPI", "path": "29" }, "5735": { "fn": "BatchAction._executeDepositAction", "offset": [ 16355, 16505 ], "op": "PUSH2", "path": "29", "statement": 118, "value": "0x1673" }, "5738": { "fn": "BatchAction._executeDepositAction", "offset": [ 16355, 16367 ], "op": "DUP6", "path": "29" }, "5739": { "fn": "BatchAction._executeDepositAction", "offset": [ 16403, 16410 ], "op": "DUP8", "path": "29" }, "5740": { "fn": "BatchAction._executeDepositAction", "offset": [ 16428, 16447 ], "op": "DUP5", "path": "29" }, "5741": { "fn": "BatchAction._executeDepositAction", "offset": [ 16465, 16470 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5743": { "fn": "BatchAction._executeDepositAction", "offset": [ 16355, 16385 ], "op": "PUSH2", "path": "29", "value": "0x10B7" }, "5746": { "fn": "BatchAction._executeDepositAction", "jump": "i", "offset": [ 16355, 16505 ], "op": "JUMP", "path": "29" }, "5747": { "fn": "BatchAction._executeDepositAction", "offset": [ 16355, 16505 ], "op": "JUMPDEST", "path": "29" }, "5748": { "fn": "BatchAction._executeDepositAction", "offset": [ 16333, 16505 ], "op": "SWAP1", "path": "29" }, "5749": { "fn": "BatchAction._executeDepositAction", "offset": [ 16333, 16505 ], "op": "POP", "path": "29" }, "5750": { "fn": "BatchAction._executeDepositAction", "offset": [ 15986, 17082 ], "op": "PUSH2", "path": "29", "value": "0x16C6" }, "5753": { "fn": "BatchAction._executeDepositAction", "offset": [ 15986, 17082 ], "op": "JUMP", "path": "29" }, "5754": { "fn": "BatchAction._executeDepositAction", "offset": [ 15986, 17082 ], "op": "JUMPDEST", "path": "29" }, "5755": { "fn": "BatchAction._executeDepositAction", "offset": [ 16554, 16589 ], "op": "PUSH1", "path": "29", "value": "0x2" }, "5757": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16550 ], "op": "DUP5", "path": "29" }, "5758": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5760": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "DUP2", "path": "29" }, "5761": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "GT", "path": "29" }, "5762": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "ISZERO", "path": "29" }, "5763": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "PUSH2", "path": "29", "value": "0x1688" }, "5766": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "JUMPI", "path": "29" }, "5767": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "INVALID", "path": "29" }, "5768": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "JUMPDEST", "path": "29" }, "5769": { "branch": 392, "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16589 ], "op": "EQ", "path": "29" }, "5770": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16668 ], "op": "DUP1", "path": "29" }, "5771": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16668 ], "op": "PUSH2", "path": "29", "value": "0x169F" }, "5774": { "branch": 392, "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16668 ], "op": "JUMPI", "path": "29" }, "5775": { "op": "POP" }, "5776": { "fn": "BatchAction._executeDepositAction", "offset": [ 16620, 16668 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "5778": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16616 ], "op": "DUP5", "path": "29" }, "5779": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5781": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "DUP2", "path": "29" }, "5782": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "GT", "path": "29" }, "5783": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "ISZERO", "path": "29" }, "5784": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "PUSH2", "path": "29", "value": "0x169D" }, "5787": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "JUMPI", "path": "29" }, "5788": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "INVALID", "path": "29" }, "5789": { "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "JUMPDEST", "path": "29" }, "5790": { "branch": 393, "fn": "BatchAction._executeDepositAction", "offset": [ 16605, 16668 ], "op": "EQ", "path": "29" }, "5791": { "fn": "BatchAction._executeDepositAction", "offset": [ 16539, 16668 ], "op": "JUMPDEST", "path": "29" }, "5792": { "fn": "BatchAction._executeDepositAction", "offset": [ 16522, 17082 ], "op": "ISZERO", "path": "29" }, "5793": { "fn": "BatchAction._executeDepositAction", "offset": [ 16522, 17082 ], "op": "PUSH2", "path": "29", "value": "0x16AF" }, "5796": { "branch": 393, "fn": "BatchAction._executeDepositAction", "offset": [ 16522, 17082 ], "op": "JUMPI", "path": "29" }, "5797": { "fn": "BatchAction._executeDepositAction", "offset": [ 16794, 16859 ], "op": "PUSH2", "path": "29", "statement": 119, "value": "0x1673" }, "5800": { "fn": "BatchAction._executeDepositAction", "offset": [ 16794, 16806 ], "op": "DUP6", "path": "29" }, "5801": { "fn": "BatchAction._executeDepositAction", "offset": [ 16830, 16837 ], "op": "DUP8", "path": "29" }, "5802": { "fn": "BatchAction._executeDepositAction", "offset": [ 16839, 16858 ], "op": "DUP5", "path": "29" }, "5803": { "fn": "BatchAction._executeDepositAction", "offset": [ 16794, 16829 ], "op": "PUSH2", "path": "29", "value": "0xFBF" }, "5806": { "fn": "BatchAction._executeDepositAction", "jump": "i", "offset": [ 16794, 16859 ], "op": "JUMP", "path": "29" }, "5807": { "fn": "BatchAction._executeDepositAction", "offset": [ 16522, 17082 ], "op": "JUMPDEST", "path": "29" }, "5808": { "fn": "BatchAction._executeDepositAction", "offset": [ 16895, 16932 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5810": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16891 ], "op": "DUP5", "path": "29" }, "5811": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "5813": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "DUP2", "path": "29" }, "5814": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "GT", "path": "29" }, "5815": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "ISZERO", "path": "29" }, "5816": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "PUSH2", "path": "29", "value": "0x16BD" }, "5819": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "JUMPI", "path": "29" }, "5820": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "INVALID", "path": "29" }, "5821": { "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "JUMPDEST", "path": "29" }, "5822": { "branch": 394, "fn": "BatchAction._executeDepositAction", "offset": [ 16880, 16932 ], "op": "EQ", "path": "29" }, "5823": { "fn": "BatchAction._executeDepositAction", "offset": [ 16876, 17082 ], "op": "ISZERO", "path": "29" }, "5824": { "fn": "BatchAction._executeDepositAction", "offset": [ 16876, 17082 ], "op": "PUSH2", "path": "29", "value": "0x16C6" }, "5827": { "branch": 394, "fn": "BatchAction._executeDepositAction", "offset": [ 16876, 17082 ], "op": "JUMPI", "path": "29" }, "5828": { "op": "POP" }, "5829": { "fn": "BatchAction._executeDepositAction", "offset": [ 17052, 17071 ], "op": "DUP1", "path": "29", "statement": 120 }, "5830": { "fn": "BatchAction._executeDepositAction", "offset": [ 16876, 17082 ], "op": "JUMPDEST", "path": "29" }, "5831": { "fn": "BatchAction._executeDepositAction", "offset": [ 17092, 17239 ], "op": "PUSH2", "path": "29", "statement": 121, "value": "0x666" }, "5834": { "fn": "BatchAction._executeDepositAction", "offset": [ 17126, 17138 ], "op": "DUP6", "path": "29" }, "5835": { "fn": "BatchAction._executeDepositAction", "offset": [ 17152, 17163 ], "op": "DUP6", "path": "29" }, "5836": { "fn": "BatchAction._executeDepositAction", "offset": [ 17177, 17196 ], "op": "DUP5", "path": "29" }, "5837": { "fn": "BatchAction._executeDepositAction", "offset": [ 17210, 17229 ], "op": "DUP5", "path": "29" }, "5838": { "fn": "BatchAction._executeDepositAction", "offset": [ 17092, 17112 ], "op": "PUSH2", "path": "29", "value": "0x2663" }, "5841": { "fn": "BatchAction._executeDepositAction", "jump": "i", "offset": [ 17092, 17239 ], "op": "JUMP", "path": "29" }, "5842": { "fn": "BatchAction._executeDepositAction", "offset": [ 15550, 17246 ], "op": "JUMPDEST", "path": "29" }, "5843": { "fn": "BatchAction._executeDepositAction", "offset": [ 15550, 17246 ], "op": "POP", "path": "29" }, "5844": { "fn": "BatchAction._executeDepositAction", "offset": [ 15550, 17246 ], "op": "POP", "path": "29" }, "5845": { "fn": "BatchAction._executeDepositAction", "offset": [ 15550, 17246 ], "op": "POP", "path": "29" }, "5846": { "fn": "BatchAction._executeDepositAction", "offset": [ 15550, 17246 ], "op": "POP", "path": "29" }, "5847": { "fn": "BatchAction._executeDepositAction", "jump": "o", "offset": [ 15550, 17246 ], "op": "JUMP", "path": "29" }, "5848": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "JUMPDEST", "path": "29" }, "5849": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19663, 19684 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5851": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19687, 19736 ], "op": "PUSH2", "path": "29", "value": "0x16E3" }, "5854": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19704, 19735 ], "op": "DUP5", "path": "29" }, "5855": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19687, 19703 ], "op": "PUSH2", "path": "29", "value": "0x264D" }, "5858": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "jump": "i", "offset": [ 19687, 19736 ], "op": "JUMP", "path": "29" }, "5859": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19687, 19736 ], "op": "JUMPDEST", "path": "29" }, "5860": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19663, 19736 ], "op": "SWAP1", "path": "29" }, "5861": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19663, 19736 ], "op": "POP", "path": "29" }, "5862": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19772, 19773 ], "op": "PUSH1", "path": "29", "statement": 122, "value": "0x0" }, "5864": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19754, 19768 ], "op": "DUP2", "path": "29" }, "5865": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19754, 19773 ], "op": "SLT", "path": "29" }, "5866": { "branch": 395, "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19754, 19773 ], "op": "ISZERO", "path": "29" }, "5867": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19746, 19774 ], "op": "PUSH2", "path": "29", "value": "0x16F3" }, "5870": { "branch": 395, "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19746, 19774 ], "op": "JUMPI", "path": "29" }, "5871": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19746, 19774 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5873": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19746, 19774 ], "op": "DUP1", "path": "29" }, "5874": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19746, 19774 ], "op": "REVERT", "path": "29" }, "5875": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19746, 19774 ], "op": "JUMPDEST", "path": "29" }, "5876": { "branch": 396, "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19934, 19959 ], "op": "DUP3", "path": "29" }, "5877": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19930, 20473 ], "op": "ISZERO", "path": "29" }, "5878": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19930, 20473 ], "op": "PUSH2", "path": "29", "value": "0x172B" }, "5881": { "branch": 396, "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19930, 20473 ], "op": "JUMPI", "path": "29" }, "5882": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20326 ], "op": "PUSH2", "path": "29", "statement": 123, "value": "0x171C" }, "5885": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20279, 20291 ], "op": "DUP6", "path": "29" }, "5886": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20279, 20325 ], "op": "PUSH1", "path": "29", "value": "0x80" }, "5888": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20279, 20325 ], "op": "ADD", "path": "29" }, "5889": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20279, 20325 ], "op": "MLOAD", "path": "29" }, "5890": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20257 ], "op": "PUSH2", "path": "29", "value": "0x11C6" }, "5893": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20230, 20242 ], "op": "DUP8", "path": "29" }, "5894": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20230, 20256 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "5896": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20230, 20256 ], "op": "ADD", "path": "29" }, "5897": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20230, 20256 ], "op": "MLOAD", "path": "29" }, "5898": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20190 ], "op": "DUP9", "path": "29" }, "5899": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20208 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "5901": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20208 ], "op": "ADD", "path": "29" }, "5902": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20208 ], "op": "MLOAD", "path": "29" }, "5903": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20229 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "5906": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20229 ], "op": "SWAP1", "path": "29" }, "5907": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20257 ], "op": "SWAP2", "path": "29" }, "5908": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20257 ], "op": "SWAP1", "path": "29" }, "5909": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20257 ], "op": "PUSH4", "path": "29", "value": "0xFFFFFFFF" }, "5914": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20257 ], "op": "AND", "path": "29" }, "5915": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "jump": "i", "offset": [ 20178, 20257 ], "op": "JUMP", "path": "29" }, "5916": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20178, 20326 ], "op": "JUMPDEST", "path": "29" }, "5917": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20161, 20326 ], "op": "SWAP1", "path": "29" }, "5918": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20161, 20326 ], "op": "POP", "path": "29" }, "5919": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20441, 20442 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "5921": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20424, 20438 ], "op": "DUP2", "path": "29" }, "5922": { "branch": 397, "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20424, 20442 ], "op": "SLT", "path": "29" }, "5923": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20420, 20462 ], "op": "ISZERO", "path": "29" }, "5924": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20420, 20462 ], "op": "PUSH2", "path": "29", "value": "0x172B" }, "5927": { "branch": 397, "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20420, 20462 ], "op": "JUMPI", "path": "29" }, "5928": { "op": "POP" }, "5929": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20461, 20462 ], "op": "PUSH1", "path": "29", "statement": 124, "value": "0x0" }, "5931": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20420, 20462 ], "op": "JUMPDEST", "path": "29" }, "5932": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20618 ], "op": "PUSH1", "path": "29", "statement": 125, "value": "0x80" }, "5934": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20618 ], "op": "DUP6", "path": "29" }, "5935": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20618 ], "op": "ADD", "path": "29" }, "5936": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20618 ], "op": "MLOAD", "path": "29" }, "5937": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20651 ], "op": "PUSH2", "path": "29", "value": "0x173A" }, "5940": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20651 ], "op": "SWAP1", "path": "29" }, "5941": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20636, 20650 ], "op": "DUP3", "path": "29" }, "5942": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20635 ], "op": "PUSH2", "path": "29", "value": "0x287E" }, "5945": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "jump": "i", "offset": [ 20559, 20651 ], "op": "JUMP", "path": "29" }, "5946": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20559, 20651 ], "op": "JUMPDEST", "path": "29" }, "5947": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20510, 20556 ], "op": "PUSH1", "path": "29", "value": "0x80" }, "5949": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20510, 20556 ], "op": "DUP7", "path": "29" }, "5950": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20510, 20556 ], "op": "ADD", "path": "29" }, "5951": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20510, 20651 ], "op": "MSTORE", "path": "29" }, "5952": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20662, 20728 ], "op": "PUSH2", "path": "29", "statement": 126, "value": "0x174B" }, "5955": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20510, 20522 ], "op": "DUP6", "path": "29" }, "5956": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20684, 20691 ], "op": "DUP9", "path": "29" }, "5957": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20693, 20707 ], "op": "DUP9", "path": "29" }, "5958": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20709, 20727 ], "op": "DUP6", "path": "29" }, "5959": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20662, 20683 ], "op": "PUSH2", "path": "29", "value": "0x1191" }, "5962": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "jump": "i", "offset": [ 20662, 20728 ], "op": "JUMP", "path": "29" }, "5963": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20662, 20728 ], "op": "JUMPDEST", "path": "29" }, "5964": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 20662, 20728 ], "op": "POP", "path": "29" }, "5965": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5966": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5967": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5968": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5969": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5970": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5971": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "offset": [ 19359, 20735 ], "op": "POP", "path": "29" }, "5972": { "fn": "BatchAction._calculateWithdrawActionAndFinalize", "jump": "o", "offset": [ 19359, 20735 ], "op": "JUMP", "path": "29" }, "5973": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 728, 1465 ], "op": "JUMPDEST", "path": "81" }, "5974": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 836, 853 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "5976": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 867, 902 ], "op": "DUP1", "path": "81" }, "5977": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 916, 943 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "5979": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 957, 979 ], "op": "DUP1", "path": "81" }, "5980": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 993, 1010 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "5982": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1035, 1082 ], "op": "DUP1", "path": "81" }, "5983": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1085, 1121 ], "op": "PUSH2", "path": "81", "value": "0x1766" }, "5986": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1085, 1119 ], "op": "PUSH2", "path": "81", "value": "0x2894" }, "5989": { "fn": "nTokenHandler.getNTokenContext", "jump": "i", "offset": [ 1085, 1121 ], "op": "JUMP", "path": "81" }, "5990": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1085, 1121 ], "op": "JUMPDEST", "path": "81" }, "5991": { "op": "PUSH1", "value": "0x1" }, "5993": { "op": "PUSH1", "value": "0x1" }, "5995": { "op": "PUSH1", "value": "0xA0" }, "5997": { "op": "SHL" }, "5998": { "op": "SUB" }, "5999": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6000": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP8", "path": "81" }, "6001": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "AND", "path": "81" }, "6002": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1131, 1160 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "6004": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6005": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "DUP2", "path": "81" }, "6006": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "MSTORE", "path": "81" }, "6007": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "PUSH1", "path": "81", "value": "0x20" }, "6009": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP8", "path": "81" }, "6010": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6011": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP8", "path": "81" }, "6012": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "MSTORE", "path": "81" }, "6013": { "op": "POP" }, "6014": { "op": "POP" }, "6015": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "PUSH1", "path": "81", "value": "0x40" }, "6017": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6018": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP5", "path": "81" }, "6019": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "KECCAK256", "path": "81" }, "6020": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "SLOAD", "path": "81", "statement": 127 }, "6021": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "PUSH2", "path": "81", "value": "0xFFFF" }, "6024": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "DUP2", "path": "81" }, "6025": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "AND", "path": "81" }, "6026": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "SWAP6", "path": "81" }, "6027": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "PUSH4", "path": "81", "statement": 128, "value": "0xFFFFFFFF" }, "6032": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "PUSH3", "path": "81", "value": "0x10000" }, "6036": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "DUP4", "path": "81" }, "6037": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "DIV", "path": "81" }, "6038": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "DUP2", "path": "81" }, "6039": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "AND", "path": "81" }, "6040": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "SWAP7", "path": "81" }, "6041": { "op": "POP" }, "6042": { "op": "PUSH1", "value": "0x1" }, "6044": { "op": "PUSH1", "value": "0x30" }, "6046": { "op": "SHL" }, "6047": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "DUP4", "path": "81", "statement": 129 }, "6048": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "DIV", "path": "81" }, "6049": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "AND", "path": "81" }, "6050": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "SWAP5", "path": "81" }, "6051": { "op": "POP" }, "6052": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "PUSH1", "path": "81", "statement": 130, "value": "0xFF" }, "6054": { "op": "PUSH1", "value": "0x1" }, "6056": { "op": "PUSH1", "value": "0x50" }, "6058": { "op": "SHL" }, "6059": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "DUP4", "path": "81" }, "6060": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "DIV", "path": "81" }, "6061": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "AND", "path": "81" }, "6062": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "SWAP4", "path": "81" }, "6063": { "op": "POP" }, "6064": { "op": "PUSH1", "value": "0x1" }, "6066": { "op": "PUSH1", "value": "0x58" }, "6068": { "op": "SHL" }, "6069": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SWAP1", "path": "81", "statement": 131 }, "6070": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SWAP2", "path": "81" }, "6071": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "DIV", "path": "81" }, "6072": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "PUSH1", "path": "81", "value": "0xD8" }, "6074": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SHL", "path": "81" }, "6075": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SWAP2", "path": "81" }, "6076": { "op": "POP" }, "6077": { "fn": "nTokenHandler.getNTokenContext", "jump": "o", "offset": [ 728, 1465 ], "op": "JUMP", "path": "81" }, "6078": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22646, 23202 ], "op": "JUMPDEST", "path": "29" }, "6079": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22956, 22957 ], "op": "PUSH1", "path": "29", "statement": 132, "value": "0x0" }, "6081": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 22952 ], "op": "DUP2", "path": "29" }, "6082": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 22957 ], "op": "SLT", "path": "29" }, "6083": { "branch": 398, "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 22957 ], "op": "ISZERO", "path": "29" }, "6084": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 23152 ], "op": "DUP1", "path": "29" }, "6085": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 23152 ], "op": "ISZERO", "path": "29" }, "6086": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 23152 ], "op": "PUSH2", "path": "29", "value": "0x17F1" }, "6089": { "branch": 398, "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 23152 ], "op": "JUMPI", "path": "29" }, "6090": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 23152 ], "op": "POP", "path": "29" }, "6091": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23129, 23152 ], "op": "DUP1", "path": "29" }, "6092": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23125 ], "op": "PUSH2", "path": "29", "value": "0x17EE" }, "6095": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23078, 23090 ], "op": "DUP4", "path": "29" }, "6096": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23078, 23124 ], "op": "PUSH1", "path": "29", "value": "0x80" }, "6098": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23078, 23124 ], "op": "ADD", "path": "29" }, "6099": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23078, 23124 ], "op": "MLOAD", "path": "29" }, "6100": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23056 ], "op": "PUSH2", "path": "29", "value": "0x11C6" }, "6103": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23029, 23041 ], "op": "DUP6", "path": "29" }, "6104": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23029, 23055 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "6106": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23029, 23055 ], "op": "ADD", "path": "29" }, "6107": { "fn": "BatchAction._checkSufficientCash", "offset": [ 23029, 23055 ], "op": "MLOAD", "path": "29" }, "6108": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 22989 ], "op": "DUP7", "path": "29" }, "6109": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23007 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "6111": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23007 ], "op": "ADD", "path": "29" }, "6112": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23007 ], "op": "MLOAD", "path": "29" }, "6113": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23028 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "6116": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23028 ], "op": "SWAP1", "path": "29" }, "6117": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23056 ], "op": "SWAP2", "path": "29" }, "6118": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23056 ], "op": "SWAP1", "path": "29" }, "6119": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23056 ], "op": "PUSH4", "path": "29", "value": "0xFFFFFFFF" }, "6124": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23056 ], "op": "AND", "path": "29" }, "6125": { "fn": "BatchAction._checkSufficientCash", "jump": "i", "offset": [ 22977, 23056 ], "op": "JUMP", "path": "29" }, "6126": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23125 ], "op": "JUMPDEST", "path": "29" }, "6127": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23152 ], "op": "SLT", "path": "29" }, "6128": { "branch": 399, "fn": "BatchAction._checkSufficientCash", "offset": [ 22977, 23152 ], "op": "ISZERO", "path": "29" }, "6129": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22929, 23152 ], "op": "JUMPDEST", "path": "29" }, "6130": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "PUSH2", "path": "29", "value": "0x8EB" }, "6133": { "branch": 399, "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "JUMPI", "path": "29" }, "6134": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "6136": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "MLOAD", "path": "29" }, "6137": { "op": "PUSH3", "value": "0x461BCD" }, "6141": { "op": "PUSH1", "value": "0xE5" }, "6143": { "op": "SHL" }, "6144": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "DUP2", "path": "29" }, "6145": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "MSTORE", "path": "29" }, "6146": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "6148": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "ADD", "path": "29" }, "6149": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "6152": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "SWAP1", "path": "29" }, "6153": { "fn": "BatchAction._checkSufficientCash", "offset": [ 22908, 23195 ], "op": "PUSH2", "path": "29", "value": "0x4A6A" }, "6156": { "fn": "BatchAction._checkSufficientCash", "jump": "i", "offset": [ 22908, 23195 ], "op": "JUMP", "path": "29" }, "6157": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 552, 771 ], "op": "JUMPDEST", "path": "66" }, "6158": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 619, 640 ], "op": "PUSH2", "path": "66", "value": "0x1815" }, "6161": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 619, 640 ], "op": "PUSH2", "path": "66", "value": "0x3F62" }, "6164": { "fn": "AccountContextHandler.getAccountContext", "jump": "i", "offset": [ 619, 640 ], "op": "JUMP", "path": "66" }, "6165": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 619, 640 ], "op": "JUMPDEST", "path": "66" }, "6166": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 652, 700 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "6168": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 703, 733 ], "op": "PUSH2", "path": "66", "value": "0x181F" }, "6171": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 703, 731 ], "op": "PUSH2", "path": "66", "value": "0x2640" }, "6174": { "fn": "AccountContextHandler.getAccountContext", "jump": "i", "offset": [ 703, 733 ], "op": "JUMP", "path": "66" }, "6175": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 703, 733 ], "op": "JUMPDEST", "path": "66" }, "6176": { "op": "PUSH1", "value": "0x1" }, "6178": { "op": "PUSH1", "value": "0x1" }, "6180": { "op": "PUSH1", "value": "0xA0" }, "6182": { "op": "SHL" }, "6183": { "op": "SUB" }, "6184": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP4", "path": "66", "statement": 133 }, "6185": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "6186": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP4", "path": "66" }, "6187": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "AND", "path": "66" }, "6188": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "6190": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "6191": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "DUP2", "path": "66" }, "6192": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "MSTORE", "path": "66" }, "6193": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "PUSH1", "path": "66", "value": "0x20" }, "6195": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP4", "path": "66" }, "6196": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "DUP5", "path": "66" }, "6197": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "MSTORE", "path": "66" }, "6198": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "PUSH1", "path": "66", "value": "0x40" }, "6200": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "6201": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "DUP2", "path": "66" }, "6202": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "6203": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "KECCAK256", "path": "66" }, "6204": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "6205": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MLOAD", "path": "66" }, "6206": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0xA0" }, "6208": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "6209": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "6210": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP4", "path": "66" }, "6211": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "6212": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "6213": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SLOAD", "path": "66" }, "6214": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "6220": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "6221": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "6222": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP3", "path": "66" }, "6223": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "6224": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH6", "path": "66", "value": "0x10000000000" }, "6231": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "6232": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "6233": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0xF8" }, "6235": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SHL", "path": "66" }, "6236": { "op": "PUSH1", "value": "0x1" }, "6238": { "op": "PUSH1", "value": "0x1" }, "6240": { "op": "PUSH1", "value": "0xF8" }, "6242": { "op": "SHL" }, "6243": { "op": "SUB" }, "6244": { "op": "NOT" }, "6245": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "6246": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP6", "path": "66" }, "6247": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP3", "path": "66" }, "6248": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "6249": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP6", "path": "66" }, "6250": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "6251": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP6", "path": "66" }, "6252": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "6253": { "op": "PUSH1", "value": "0x1" }, "6255": { "op": "PUSH1", "value": "0x30" }, "6257": { "op": "SHL" }, "6258": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP6", "path": "66" }, "6259": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "6260": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0xFF" }, "6262": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "6263": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "6264": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "6265": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "6266": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "6267": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "6268": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "6269": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "6270": { "op": "PUSH1", "value": "0x1" }, "6272": { "op": "PUSH1", "value": "0x38" }, "6274": { "op": "SHL" }, "6275": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP5", "path": "66" }, "6276": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "6277": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "6280": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "6281": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "6283": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP3", "path": "66" }, "6284": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "6285": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "6286": { "op": "PUSH1", "value": "0x1" }, "6288": { "op": "PUSH1", "value": "0x48" }, "6290": { "op": "SHL" }, "6291": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "6292": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP4", "path": "66" }, "6293": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "6294": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0x70" }, "6296": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SHL", "path": "66" }, "6297": { "op": "PUSH1", "value": "0x1" }, "6299": { "op": "PUSH1", "value": "0x1" }, "6301": { "op": "PUSH1", "value": "0x70" }, "6303": { "op": "SHL" }, "6304": { "op": "SUB" }, "6305": { "op": "NOT" }, "6306": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "6307": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "6309": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP5", "path": "66" }, "6310": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "6311": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "6312": { "op": "POP" }, "6313": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "6314": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "6315": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 552, 771 ], "op": "SWAP1", "path": "66" }, "6316": { "op": "POP" }, "6317": { "fn": "AccountContextHandler.getAccountContext", "jump": "o", "offset": [ 552, 771 ], "op": "JUMP", "path": "66" }, "6318": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3020, 3752 ], "op": "JUMPDEST", "path": "66" }, "6319": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3107, 3111 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "6321": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3143, 3158 ], "op": "TIMESTAMP", "path": "66" }, "6322": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3173, 3204 ], "op": "PUSH2", "path": "66", "value": "0x18BA" }, "6325": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3189, 3203 ], "op": "DUP4", "path": "66" }, "6326": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3173, 3188 ], "op": "PUSH2", "path": "66", "value": "0x1412" }, "6329": { "fn": "AccountContextHandler.mustSettleAssets", "jump": "i", "offset": [ 3173, 3204 ], "op": "JUMP", "path": "66" }, "6330": { "branch": 416, "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3173, 3204 ], "op": "JUMPDEST", "path": "66" }, "6331": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "ISZERO", "path": "66" }, "6332": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "PUSH2", "path": "66", "value": "0x18DB" }, "6335": { "branch": 416, "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "JUMPI", "path": "66" }, "6336": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3389, 3420 ], "op": "PUSH2", "path": "66", "statement": 134, "value": "0x18C8" }, "6339": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3410, 3419 ], "op": "DUP2", "path": "66" }, "6340": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3389, 3409 ], "op": "PUSH2", "path": "66", "value": "0x28A1" }, "6343": { "fn": "AccountContextHandler.mustSettleAssets", "jump": "i", "offset": [ 3389, 3420 ], "op": "JUMP", "path": "66" }, "6344": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3389, 3420 ], "op": "JUMPDEST", "path": "66" }, "6345": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3386 ], "op": "DUP4", "path": "66" }, "6346": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3386 ], "op": "MLOAD", "path": "66" }, "6347": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "6353": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "AND", "path": "66" }, "6354": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "LT", "path": "66" }, "6355": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "SWAP2", "path": "66" }, "6356": { "op": "POP" }, "6357": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3350, 3420 ], "op": "PUSH2", "path": "66", "value": "0xBE2" }, "6360": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3350, 3420 ], "op": "SWAP1", "path": "66" }, "6361": { "op": "POP" }, "6362": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3350, 3420 ], "op": "JUMP", "path": "66" }, "6363": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "JUMPDEST", "path": "66" }, "6364": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3660, 3689 ], "op": "DUP3", "path": "66", "statement": 135 }, "6365": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3660, 3689 ], "op": "MLOAD", "path": "66" }, "6366": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "6372": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "AND", "path": "66" }, "6373": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "ISZERO", "path": "66" }, "6374": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "DUP1", "path": "66" }, "6375": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "ISZERO", "path": "66" }, "6376": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "SWAP1", "path": "66" }, "6377": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3735 ], "op": "PUSH2", "path": "66", "value": "0xBD7" }, "6380": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3735 ], "op": "JUMPI", "path": "66" }, "6381": { "op": "POP" }, "6382": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3722 ], "op": "DUP3", "path": "66" }, "6383": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3722 ], "op": "MLOAD", "path": "66" }, "6384": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "6390": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "AND", "path": "66" }, "6391": { "op": "GT" }, "6392": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "ISZERO", "path": "66" }, "6393": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "SWAP1", "path": "66" }, "6394": { "op": "POP" }, "6395": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "PUSH2", "path": "66", "value": "0xBE2" }, "6398": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "JUMP", "path": "66" }, "6399": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14791, 15176 ], "op": "JUMPDEST", "path": "84" }, "6400": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14907, 14930 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "6402": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14946, 14976 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "6404": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14979, 15021 ], "op": "PUSH2", "path": "84", "value": "0x190D" }, "6407": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14995, 15002 ], "op": "DUP5", "path": "84" }, "6408": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15004, 15020 ], "op": "DUP5", "path": "84" }, "6409": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14979, 14994 ], "op": "PUSH2", "path": "84", "value": "0x28BF" }, "6412": { "fn": "PortfolioHandler.getSortedPortfolio", "jump": "i", "offset": [ 14979, 15021 ], "op": "JUMP", "path": "84" }, "6413": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14979, 15021 ], "op": "JUMPDEST", "path": "84" }, "6414": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14946, 15021 ], "op": "SWAP1", "path": "84" }, "6415": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14946, 15021 ], "op": "POP", "path": "84" }, "6416": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15099, 15100 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "6418": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15082, 15088 ], "op": "DUP2", "path": "84" }, "6419": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15082, 15095 ], "op": "MLOAD", "path": "84" }, "6420": { "branch": 495, "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15082, 15100 ], "op": "GT", "path": "84" }, "6421": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15078, 15115 ], "op": "PUSH2", "path": "84", "value": "0x191F" }, "6424": { "branch": 495, "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15078, 15115 ], "op": "JUMPI", "path": "84" }, "6425": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15109, 15115 ], "op": "SWAP1", "path": "84", "statement": 136 }, "6426": { "op": "POP" }, "6427": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15102, 15115 ], "op": "PUSH2", "path": "84", "value": "0xEDB" }, "6430": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15102, 15115 ], "op": "JUMP", "path": "84" }, "6431": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15078, 15115 ], "op": "JUMPDEST", "path": "84" }, "6432": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15126, 15146 ], "op": "PUSH2", "path": "84", "statement": 137, "value": "0xAA3" }, "6435": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15139, 15145 ], "op": "DUP2", "path": "84" }, "6436": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15126, 15138 ], "op": "PUSH2", "path": "84", "value": "0x29E0" }, "6439": { "fn": "PortfolioHandler.getSortedPortfolio", "jump": "i", "offset": [ 15126, 15146 ], "op": "JUMP", "path": "84" }, "6440": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 3996, 4813 ], "op": "JUMPDEST", "path": "66" }, "6441": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4129, 4133 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "6443": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4172 ], "op": "DUP2", "path": "66", "statement": 138 }, "6444": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4172 ], "op": "ISZERO", "path": "66" }, "6445": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4172 ], "op": "DUP1", "path": "66" }, "6446": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4172 ], "op": "ISZERO", "path": "66" }, "6447": { "branch": 417, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4172 ], "op": "SWAP1", "path": "66" }, "6448": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4214 ], "op": "PUSH2", "path": "66", "value": "0x193B" }, "6451": { "branch": 417, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4214 ], "op": "JUMPI", "path": "66" }, "6452": { "op": "POP" }, "6453": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "6456": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4176, 4214 ], "op": "DUP3", "path": "66" }, "6457": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4176, 4214 ], "op": "GT", "path": "66" }, "6458": { "branch": 418, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4176, 4214 ], "op": "ISZERO", "path": "66" }, "6459": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4157, 4214 ], "op": "JUMPDEST", "path": "66" }, "6460": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4149, 4215 ], "op": "PUSH2", "path": "66", "value": "0x1944" }, "6463": { "branch": 418, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4149, 4215 ], "op": "JUMPI", "path": "66" }, "6464": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4149, 4215 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "6466": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4149, 4215 ], "op": "DUP1", "path": "66" }, "6467": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4149, 4215 ], "op": "REVERT", "path": "66" }, "6468": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4149, 4215 ], "op": "JUMPDEST", "path": "66" }, "6469": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4274, 4305 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "6471": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4274, 4305 ], "op": "DUP4", "path": "66" }, "6472": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4274, 4305 ], "op": "ADD", "path": "66" }, "6473": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4274, 4305 ], "op": "MLOAD", "path": "66" }, "6474": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4351 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "6476": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4351 ], "op": "DUP5", "path": "66" }, "6477": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4351 ], "op": "ADD", "path": "66" }, "6478": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4351 ], "op": "MLOAD", "path": "66" }, "6479": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4365 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "6482": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4365 ], "op": "AND", "path": "66" }, "6483": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4365 ], "op": "DUP4", "path": "66" }, "6484": { "branch": 419, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4320, 4365 ], "op": "EQ", "path": "66" }, "6485": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4316, 4378 ], "op": "ISZERO", "path": "66" }, "6486": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4316, 4378 ], "op": "PUSH2", "path": "66", "value": "0x1963" }, "6489": { "branch": 419, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4316, 4378 ], "op": "JUMPI", "path": "66" }, "6490": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4374, 4378 ], "op": "PUSH1", "path": "66", "statement": 139, "value": "0x1" }, "6492": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4367, 4378 ], "op": "SWAP2", "path": "66" }, "6493": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4367, 4378 ], "op": "POP", "path": "66" }, "6494": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4367, 4378 ], "op": "POP", "path": "66" }, "6495": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4367, 4378 ], "op": "PUSH2", "path": "66", "value": "0xEDB" }, "6498": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4367, 4378 ], "op": "JUMP", "path": "66" }, "6499": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4316, 4378 ], "op": "JUMPDEST", "path": "66" }, "6500": { "op": "PUSH1", "value": "0x1" }, "6502": { "op": "PUSH1", "value": "0x1" }, "6504": { "op": "PUSH1", "value": "0x70" }, "6506": { "op": "SHL" }, "6507": { "op": "SUB" }, "6508": { "op": "NOT" }, "6509": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4396, 4414 ], "op": "DUP2", "path": "66" }, "6510": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4396, 4414 ], "op": "AND", "path": "66" }, "6511": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4396, 4414 ], "op": "ISZERO", "path": "66" }, "6512": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4389, 4784 ], "op": "PUSH2", "path": "66", "value": "0x19A8" }, "6515": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4389, 4784 ], "op": "JUMPI", "path": "66" }, "6516": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4472, 4494 ], "op": "PUSH1", "path": "66", "value": "0xF0" }, "6518": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4444, 4495 ], "op": "DUP2", "path": "66" }, "6519": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4444, 4495 ], "op": "SWAP1", "path": "66" }, "6520": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4444, 4495 ], "op": "SHR", "path": "66" }, "6521": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "6524": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4444, 4495 ], "op": "AND", "path": "66" }, "6525": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4513, 4530 ], "op": "DUP4", "path": "66" }, "6526": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4513, 4530 ], "op": "DUP2", "path": "66" }, "6527": { "branch": 420, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4513, 4530 ], "op": "EQ", "path": "66" }, "6528": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4509, 4730 ], "op": "ISZERO", "path": "66" }, "6529": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4509, 4730 ], "op": "PUSH2", "path": "66", "value": "0x1995" }, "6532": { "branch": 420, "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4509, 4730 ], "op": "JUMPI", "path": "66" }, "6533": { "op": "POP" }, "6534": { "op": "PUSH1", "value": "0x1" }, "6536": { "op": "PUSH1", "value": "0xFE" }, "6538": { "op": "SHL" }, "6539": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4634, 4683 ], "op": "SWAP1", "path": "66", "statement": 140 }, "6540": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4634, 4683 ], "op": "DUP2", "path": "66" }, "6541": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4634, 4683 ], "op": "AND", "path": "66" }, "6542": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4634, 4715 ], "op": "EQ", "path": "66" }, "6543": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4634, 4715 ], "op": "SWAP1", "path": "66" }, "6544": { "op": "POP" }, "6545": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4627, 4715 ], "op": "PUSH2", "path": "66", "value": "0xEDB" }, "6548": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4627, 4715 ], "op": "JUMP", "path": "66" }, "6549": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4509, 4730 ], "op": "JUMPDEST", "path": "66" }, "6550": { "op": "POP" }, "6551": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4771, 4773 ], "op": "PUSH1", "path": "66", "statement": 141, "value": "0x10" }, "6553": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4757, 4773 ], "op": "SHL", "path": "66" }, "6554": { "op": "PUSH1", "value": "0x1" }, "6556": { "op": "PUSH1", "value": "0x1" }, "6558": { "op": "PUSH1", "value": "0x80" }, "6560": { "op": "SHL" }, "6561": { "op": "SUB" }, "6562": { "op": "NOT" }, "6563": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4757, 4773 ], "op": "AND", "path": "66" }, "6564": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4389, 4784 ], "op": "PUSH2", "path": "66", "value": "0x1963" }, "6567": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4389, 4784 ], "op": "JUMP", "path": "66" }, "6568": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4389, 4784 ], "op": "JUMPDEST", "path": "66" }, "6569": { "op": "POP" }, "6570": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4801, 4806 ], "op": "PUSH1", "path": "66", "statement": 142, "value": "0x0" }, "6572": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 4801, 4806 ], "op": "SWAP4", "path": "66" }, "6573": { "fn": "AccountContextHandler.isActiveInBalances", "offset": [ 3996, 4813 ], "op": "SWAP3", "path": "66" }, "6574": { "op": "POP" }, "6575": { "op": "POP" }, "6576": { "op": "POP" }, "6577": { "fn": "AccountContextHandler.isActiveInBalances", "jump": "o", "offset": [ 3996, 4813 ], "op": "JUMP", "path": "66" }, "6578": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20724, 21742 ], "op": "JUMPDEST", "path": "67" }, "6579": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20848, 20866 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "6581": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20880, 20900 ], "op": "DUP1", "path": "67" }, "6582": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20914, 20935 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "6584": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20949, 20977 ], "op": "DUP1", "path": "67" }, "6585": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21002, 21070 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "6587": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21073, 21103 ], "op": "PUSH2", "path": "67", "value": "0x19C2" }, "6590": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21073, 21101 ], "op": "PUSH2", "path": "67", "value": "0x2B98" }, "6593": { "fn": "BalanceHandler.getBalanceStorage", "jump": "i", "offset": [ 21073, 21103 ], "op": "JUMP", "path": "67" }, "6594": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21073, 21103 ], "op": "JUMPDEST", "path": "67" }, "6595": { "op": "PUSH1", "value": "0x1" }, "6597": { "op": "PUSH1", "value": "0x1" }, "6599": { "op": "PUSH1", "value": "0xA0" }, "6601": { "op": "SHL" }, "6602": { "op": "SUB" }, "6603": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "DUP9", "path": "67" }, "6604": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "AND", "path": "67" }, "6605": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21113, 21150 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "6607": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "SWAP1", "path": "67" }, "6608": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "DUP2", "path": "67" }, "6609": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "MSTORE", "path": "67" }, "6610": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "6612": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "DUP3", "path": "67" }, "6613": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "DUP2", "path": "67" }, "6614": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "MSTORE", "path": "67" }, "6615": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "6617": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "DUP1", "path": "67" }, "6618": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "DUP4", "path": "67" }, "6619": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "KECCAK256", "path": "67" }, "6620": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "DUP11", "path": "67" }, "6621": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "DUP5", "path": "67" }, "6622": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "MSTORE", "path": "67" }, "6623": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "SWAP1", "path": "67" }, "6624": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "SWAP2", "path": "67" }, "6625": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "MSTORE", "path": "67" }, "6626": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "SWAP1", "path": "67" }, "6627": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21179 ], "op": "KECCAK256", "path": "67" }, "6628": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21206, 21234 ], "op": "DUP1", "path": "67", "statement": 143 }, "6629": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21206, 21234 ], "op": "SLOAD", "path": "67" }, "6630": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21206, 21234 ], "op": "PUSH10", "path": "67", "value": "0xFFFFFFFFFFFFFFFFFFFF" }, "6641": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21206, 21234 ], "op": "DUP2", "path": "67" }, "6642": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21206, 21234 ], "op": "AND", "path": "67" }, "6643": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21206, 21234 ], "op": "SWAP7", "path": "67" }, "6644": { "op": "POP" }, "6645": { "op": "PUSH1", "value": "0x1" }, "6647": { "op": "PUSH1", "value": "0x50" }, "6649": { "op": "SHL" }, "6650": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21260, 21288 ], "op": "SWAP1", "path": "67", "statement": 144 }, "6651": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21260, 21288 ], "op": "DIV", "path": "67" }, "6652": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21260, 21288 ], "op": "PUSH4", "path": "67", "value": "0xFFFFFFFF" }, "6657": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21260, 21288 ], "op": "AND", "path": "67" }, "6658": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21260, 21288 ], "op": "SWAP5", "path": "67" }, "6659": { "op": "POP" }, "6660": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "SWAP1", "path": "67" }, "6661": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21153, 21167 ], "op": "SWAP2", "path": "67" }, "6662": { "op": "POP" }, "6663": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21302, 21319 ], "op": "DUP4", "path": "67" }, "6664": { "branch": 468, "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21302, 21319 ], "op": "ISZERO", "path": "67" }, "6665": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21298, 21686 ], "op": "PUSH2", "path": "67", "value": "0x1A2E" }, "6668": { "branch": 468, "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21298, 21686 ], "op": "JUMPI", "path": "67" }, "6669": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21550, 21585 ], "op": "DUP1", "path": "67", "statement": 145 }, "6670": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21550, 21585 ], "op": "SLOAD", "path": "67" }, "6671": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21517, 21586 ], "op": "PUSH2", "path": "67", "value": "0x1A27" }, "6674": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21517, 21586 ], "op": "SWAP1", "path": "67" }, "6675": { "op": "PUSH1", "value": "0x1" }, "6677": { "op": "PUSH1", "value": "0x70" }, "6679": { "op": "SHL" }, "6680": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21550, 21585 ], "op": "SWAP1", "path": "67" }, "6681": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21550, 21585 ], "op": "DIV", "path": "67" }, "6682": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21550, 21585 ], "op": "PUSH7", "path": "67", "value": "0xFFFFFFFFFFFFFF" }, "6690": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21550, 21585 ], "op": "AND", "path": "67" }, "6691": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21517, 21549 ], "op": "PUSH2", "path": "67", "value": "0x2BA5" }, "6694": { "fn": "BalanceHandler.getBalanceStorage", "jump": "i", "offset": [ 21517, 21586 ], "op": "JUMP", "path": "67" }, "6695": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21517, 21586 ], "op": "JUMPDEST", "path": "67" }, "6696": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21494, 21586 ], "op": "SWAP3", "path": "67" }, "6697": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21494, 21586 ], "op": "POP", "path": "67" }, "6698": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21298, 21686 ], "op": "PUSH2", "path": "67", "value": "0x1A43" }, "6701": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21298, 21686 ], "op": "JUMP", "path": "67" }, "6702": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21298, 21686 ], "op": "JUMPDEST", "path": "67" }, "6703": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "DUP1", "path": "67", "statement": 146 }, "6704": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "SLOAD", "path": "67" }, "6705": { "op": "PUSH1", "value": "0x1" }, "6707": { "op": "PUSH1", "value": "0x70" }, "6709": { "op": "SHL" }, "6710": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "SWAP1", "path": "67" }, "6711": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "DIV", "path": "67" }, "6712": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "PUSH7", "path": "67", "value": "0xFFFFFFFFFFFFFF" }, "6720": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "AND", "path": "67" }, "6721": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21640, 21675 ], "op": "SWAP3", "path": "67" }, "6722": { "op": "POP" }, "6723": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21298, 21686 ], "op": "JUMPDEST", "path": "67" }, "6724": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "SLOAD", "path": "67", "statement": 147 }, "6725": { "op": "PUSH1", "value": "0x1" }, "6727": { "op": "PUSH1", "value": "0xA8" }, "6729": { "op": "SHL" }, "6730": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "SWAP1", "path": "67" }, "6731": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "DIV", "path": "67" }, "6732": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "PUSH1", "path": "67", "value": "0xA" }, "6734": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "SWAP1", "path": "67" }, "6735": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "DUP2", "path": "67" }, "6736": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21709, 21735 ], "op": "SIGNEXTEND", "path": "67" }, "6737": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21695, 21735 ], "op": "SWAP1", "path": "67" }, "6738": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21695, 21735 ], "op": "SIGNEXTEND", "path": "67" }, "6739": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 21695, 21735 ], "op": "SWAP8", "path": "67" }, "6740": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20724, 21742 ], "op": "SWAP4", "path": "67" }, "6741": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20724, 21742 ], "op": "SWAP7", "path": "67" }, "6742": { "op": "POP" }, "6743": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20724, 21742 ], "op": "SWAP2", "path": "67" }, "6744": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20724, 21742 ], "op": "SWAP5", "path": "67" }, "6745": { "op": "POP" }, "6746": { "fn": "BalanceHandler.getBalanceStorage", "offset": [ 20724, 21742 ], "op": "SWAP3", "path": "67" }, "6747": { "op": "POP" }, "6748": { "op": "POP" }, "6749": { "fn": "BalanceHandler.getBalanceStorage", "jump": "o", "offset": [ 20724, 21742 ], "op": "JUMP", "path": "67" }, "6750": { "fn": "SafeInt256.mul", "offset": [ 398, 588 ], "op": "JUMPDEST", "path": "94" }, "6751": { "fn": "SafeInt256.mul", "offset": [ 478, 483 ], "op": "DUP2", "path": "94", "statement": 148 }, "6752": { "fn": "SafeInt256.mul", "offset": [ 478, 483 ], "op": "DUP2", "path": "94" }, "6753": { "fn": "SafeInt256.mul", "offset": [ 478, 483 ], "op": "MUL", "path": "94" }, "6754": { "op": "PUSH1", "value": "0x0" }, "6756": { "op": "NOT" }, "6757": { "fn": "SafeInt256.mul", "offset": [ 497, 504 ], "op": "DUP4", "path": "94" }, "6758": { "branch": 526, "fn": "SafeInt256.mul", "offset": [ 497, 504 ], "op": "EQ", "path": "94" }, "6759": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "ISZERO", "path": "94" }, "6760": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "PUSH2", "path": "94", "value": "0x1A8E" }, "6763": { "branch": 526, "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "JUMPI", "path": "94" }, "6764": { "fn": "SafeInt256.mul", "offset": [ 515, 521 ], "op": "DUP2", "path": "94", "statement": 149 }, "6765": { "fn": "SafeInt256.mul", "offset": [ 515, 521 ], "op": "ISZERO", "path": "94" }, "6766": { "branch": 527, "fn": "SafeInt256.mul", "offset": [ 515, 521 ], "op": "DUP1", "path": "94" }, "6767": { "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "PUSH2", "path": "94", "value": "0x1A80" }, "6770": { "branch": 527, "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "JUMPI", "path": "94" }, "6771": { "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "POP", "path": "94" }, "6772": { "fn": "SafeInt256.mul", "offset": [ 534, 535 ], "op": "DUP3", "path": "94" }, "6773": { "fn": "SafeInt256.mul", "offset": [ 529, 530 ], "op": "DUP3", "path": "94" }, "6774": { "fn": "SafeInt256.mul", "offset": [ 525, 526 ], "op": "DUP3", "path": "94" }, "6775": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "DUP2", "path": "94" }, "6776": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "PUSH2", "path": "94", "value": "0x1A7D" }, "6779": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "JUMPI", "path": "94" }, "6780": { "dev": "Division by zero", "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "INVALID", "path": "94" }, "6781": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "JUMPDEST", "path": "94" }, "6782": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "SDIV", "path": "94" }, "6783": { "branch": 528, "fn": "SafeInt256.mul", "offset": [ 525, 535 ], "op": "EQ", "path": "94" }, "6784": { "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "JUMPDEST", "path": "94" }, "6785": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "PUSH2", "path": "94", "value": "0x1A89" }, "6788": { "branch": 528, "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "JUMPI", "path": "94" }, "6789": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "6791": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "DUP1", "path": "94" }, "6792": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "REVERT", "path": "94" }, "6793": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "JUMPDEST", "path": "94" }, "6794": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "PUSH2", "path": "94", "value": "0xEDB" }, "6797": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "JUMP", "path": "94" }, "6798": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "JUMPDEST", "path": "94" }, "6799": { "fn": "SafeInt256.mul", "offset": [ 560, 566 ], "op": "DUP3", "path": "94", "statement": 150 }, "6800": { "fn": "SafeInt256.mul", "offset": [ 560, 566 ], "op": "ISZERO", "path": "94" }, "6801": { "branch": 529, "fn": "SafeInt256.mul", "offset": [ 560, 566 ], "op": "DUP1", "path": "94" }, "6802": { "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "PUSH2", "path": "94", "value": "0x1AA3" }, "6805": { "branch": 529, "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "JUMPI", "path": "94" }, "6806": { "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "POP", "path": "94" }, "6807": { "fn": "SafeInt256.mul", "offset": [ 579, 580 ], "op": "DUP2", "path": "94" }, "6808": { "fn": "SafeInt256.mul", "offset": [ 574, 575 ], "op": "DUP4", "path": "94" }, "6809": { "fn": "SafeInt256.mul", "offset": [ 570, 571 ], "op": "DUP3", "path": "94" }, "6810": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "DUP2", "path": "94" }, "6811": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "PUSH2", "path": "94", "value": "0x1AA0" }, "6814": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "JUMPI", "path": "94" }, "6815": { "dev": "Division by zero", "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "INVALID", "path": "94" }, "6816": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "JUMPDEST", "path": "94" }, "6817": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "SDIV", "path": "94" }, "6818": { "branch": 530, "fn": "SafeInt256.mul", "offset": [ 570, 580 ], "op": "EQ", "path": "94" }, "6819": { "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "JUMPDEST", "path": "94" }, "6820": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "PUSH2", "path": "94", "value": "0xEDB" }, "6823": { "branch": 530, "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "JUMPI", "path": "94" }, "6824": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "6826": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "DUP1", "path": "94" }, "6827": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "REVERT", "path": "94" }, "6828": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4424, 5233 ], "op": "JUMPDEST", "path": "76" }, "6829": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4521, 4527 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6831": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4541, 4557 ], "op": "DUP1", "path": "76" }, "6832": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4571, 4576 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6834": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4602, 4629 ], "op": "DUP1", "path": "76" }, "6835": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4631, 4660 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6837": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4664, 4696 ], "op": "PUSH2", "path": "76", "value": "0x1ABD" }, "6840": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4685, 4695 ], "op": "DUP7", "path": "76" }, "6841": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4664, 4684 ], "op": "PUSH2", "path": "76", "value": "0x2BB3" }, "6844": { "fn": "AssetRate._getAssetRateStateful", "jump": "i", "offset": [ 4664, 4696 ], "op": "JUMP", "path": "76" }, "6845": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4664, 4696 ], "op": "JUMPDEST", "path": "76" }, "6846": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4601, 4696 ], "op": "SWAP1", "path": "76" }, "6847": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4601, 4696 ], "op": "SWAP3", "path": "76" }, "6848": { "op": "POP" }, "6849": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4601, 4696 ], "op": "SWAP1", "path": "76" }, "6850": { "op": "POP" }, "6851": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4707, 4718 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6853": { "op": "PUSH1", "value": "0x1" }, "6855": { "op": "PUSH1", "value": "0x1" }, "6857": { "op": "PUSH1", "value": "0xA0" }, "6859": { "op": "SHL" }, "6860": { "op": "SUB" }, "6861": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4732, 4765 ], "op": "DUP4", "path": "76" }, "6862": { "branch": 444, "fn": "AssetRate._getAssetRateStateful", "offset": [ 4732, 4765 ], "op": "AND", "path": "76" }, "6863": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4728, 5166 ], "op": "PUSH2", "path": "76", "value": "0x1AE2" }, "6866": { "branch": 444, "fn": "AssetRate._getAssetRateStateful", "offset": [ 4728, 5166 ], "op": "JUMPI", "path": "76" }, "6867": { "op": "POP" }, "6868": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5019, 5020 ], "op": "PUSH1", "path": "76", "statement": 151, "value": "0x0" }, "6870": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5019, 5020 ], "op": "SWAP1", "path": "76" }, "6871": { "op": "POP" }, "6872": { "offset": [ 658, 662 ], "op": "PUSH5", "path": "76", "value": "0x2540BE400" }, "6878": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4728, 5166 ], "op": "PUSH2", "path": "76", "value": "0x1B64" }, "6881": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4728, 5166 ], "op": "JUMP", "path": "76" }, "6882": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4728, 5166 ], "op": "JUMPDEST", "path": "76" }, "6883": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5068 ], "op": "DUP3", "path": "76", "statement": 152 }, "6884": { "op": "PUSH1", "value": "0x1" }, "6886": { "op": "PUSH1", "value": "0x1" }, "6888": { "op": "PUSH1", "value": "0xA0" }, "6890": { "op": "SHL" }, "6891": { "op": "SUB" }, "6892": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5092 ], "op": "AND", "path": "76" }, "6893": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5092 ], "op": "PUSH4", "path": "76", "value": "0x1EE10833" }, "6898": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x40" }, "6900": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "MLOAD", "path": "76" }, "6901": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP2", "path": "76" }, "6902": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH4", "path": "76", "value": "0xFFFFFFFF" }, "6907": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "AND", "path": "76" }, "6908": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0xE0" }, "6910": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "SHL", "path": "76" }, "6911": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP2", "path": "76" }, "6912": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "MSTORE", "path": "76" }, "6913": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x4" }, "6915": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ADD", "path": "76" }, "6916": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x20" }, "6918": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x40" }, "6920": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "MLOAD", "path": "76" }, "6921": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6922": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP4", "path": "76" }, "6923": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "SUB", "path": "76" }, "6924": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP2", "path": "76" }, "6925": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6927": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP8", "path": "76" }, "6928": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6929": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "EXTCODESIZE", "path": "76" }, "6930": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ISZERO", "path": "76" }, "6931": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6932": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ISZERO", "path": "76" }, "6933": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH2", "path": "76", "value": "0x1B1D" }, "6936": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "JUMPI", "path": "76" }, "6937": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6939": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6940": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "REVERT", "path": "76" }, "6941": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "JUMPDEST", "path": "76" }, "6942": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "POP", "path": "76" }, "6943": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "GAS", "path": "76" }, "6944": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "CALL", "path": "76" }, "6945": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ISZERO", "path": "76" }, "6946": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6947": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ISZERO", "path": "76" }, "6948": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH2", "path": "76", "value": "0x1B31" }, "6951": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "JUMPI", "path": "76" }, "6952": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "RETURNDATASIZE", "path": "76" }, "6953": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6955": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6956": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "RETURNDATACOPY", "path": "76" }, "6957": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "RETURNDATASIZE", "path": "76" }, "6958": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "6960": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "REVERT", "path": "76" }, "6961": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "JUMPDEST", "path": "76" }, "6962": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "POP", "path": "76" }, "6963": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "POP", "path": "76" }, "6964": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "POP", "path": "76" }, "6965": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "POP", "path": "76" }, "6966": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x40" }, "6968": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "MLOAD", "path": "76" }, "6969": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "RETURNDATASIZE", "path": "76" }, "6970": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x1F" }, "6972": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "NOT", "path": "76" }, "6973": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x1F" }, "6975": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP3", "path": "76" }, "6976": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ADD", "path": "76" }, "6977": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "AND", "path": "76" }, "6978": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP3", "path": "76" }, "6979": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ADD", "path": "76" }, "6980": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP1", "path": "76" }, "6981": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH1", "path": "76", "value": "0x40" }, "6983": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "MSTORE", "path": "76" }, "6984": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "POP", "path": "76" }, "6985": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "DUP2", "path": "76" }, "6986": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "ADD", "path": "76" }, "6987": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "SWAP1", "path": "76" }, "6988": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH2", "path": "76", "value": "0x1B55" }, "6991": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "SWAP2", "path": "76" }, "6992": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "SWAP1", "path": "76" }, "6993": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "PUSH2", "path": "76", "value": "0x43D8" }, "6996": { "fn": "AssetRate._getAssetRateStateful", "jump": "i", "offset": [ 5058, 5094 ], "op": "JUMP", "path": "76" }, "6997": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5058, 5094 ], "op": "JUMPDEST", "path": "76" }, "6998": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5051, 5094 ], "op": "SWAP1", "path": "76" }, "6999": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5051, 5094 ], "op": "POP", "path": "76" }, "7000": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5123, 5124 ], "op": "PUSH1", "path": "76", "statement": 153, "value": "0x0" }, "7002": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5116, 5120 ], "op": "DUP2", "path": "76" }, "7003": { "branch": 445, "fn": "AssetRate._getAssetRateStateful", "offset": [ 5116, 5124 ], "op": "SGT", "path": "76" }, "7004": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5108, 5125 ], "op": "PUSH2", "path": "76", "value": "0x1B64" }, "7007": { "branch": 445, "fn": "AssetRate._getAssetRateStateful", "offset": [ 5108, 5125 ], "op": "JUMPI", "path": "76" }, "7008": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5108, 5125 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "7010": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5108, 5125 ], "op": "DUP1", "path": "76" }, "7011": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5108, 5125 ], "op": "REVERT", "path": "76" }, "7012": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5108, 5125 ], "op": "JUMPDEST", "path": "76" }, "7013": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5184, 5188 ], "op": "SWAP7", "path": "76", "statement": 154 }, "7014": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5190, 5200 ], "op": "SWAP2", "path": "76" }, "7015": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5190, 5200 ], "op": "SWAP6", "path": "76" }, "7016": { "op": "POP" }, "7017": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 5190, 5200 ], "op": "SWAP4", "path": "76" }, "7018": { "op": "POP" }, "7019": { "fn": "AssetRate._getAssetRateStateful", "offset": [ 4424, 5233 ], "op": "SWAP2", "path": "76" }, "7020": { "op": "POP" }, "7021": { "op": "POP" }, "7022": { "fn": "AssetRate._getAssetRateStateful", "jump": "o", "offset": [ 4424, 5233 ], "op": "JUMP", "path": "76" }, "7023": { "fn": "TokenHandler._getToken", "offset": [ 1438, 2129 ], "op": "JUMPDEST", "path": "69" }, "7024": { "fn": "TokenHandler._getToken", "offset": [ 1516, 1528 ], "op": "PUSH2", "path": "69", "value": "0x1B77" }, "7027": { "fn": "TokenHandler._getToken", "offset": [ 1516, 1528 ], "op": "PUSH2", "path": "69", "value": "0x4022" }, "7030": { "fn": "TokenHandler._getToken", "jump": "i", "offset": [ 1516, 1528 ], "op": "JUMP", "path": "69" }, "7031": { "fn": "TokenHandler._getToken", "offset": [ 1516, 1528 ], "op": "JUMPDEST", "path": "69" }, "7032": { "fn": "TokenHandler._getToken", "offset": [ 1540, 1603 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7034": { "fn": "TokenHandler._getToken", "offset": [ 1606, 1634 ], "op": "PUSH2", "path": "69", "value": "0x1B81" }, "7037": { "fn": "TokenHandler._getToken", "offset": [ 1606, 1632 ], "op": "PUSH2", "path": "69", "value": "0x2BEA" }, "7040": { "fn": "TokenHandler._getToken", "jump": "i", "offset": [ 1606, 1634 ], "op": "JUMP", "path": "69" }, "7041": { "fn": "TokenHandler._getToken", "offset": [ 1606, 1634 ], "op": "JUMPDEST", "path": "69" }, "7042": { "fn": "TokenHandler._getToken", "offset": [ 1644, 1677 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7044": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "DUP6", "path": "69" }, "7045": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "DUP2", "path": "69" }, "7046": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "MSTORE", "path": "69" }, "7047": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "PUSH1", "path": "69", "value": "0x20" }, "7049": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "DUP3", "path": "69" }, "7050": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "DUP2", "path": "69" }, "7051": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "MSTORE", "path": "69" }, "7052": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "PUSH1", "path": "69", "value": "0x40" }, "7054": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "DUP1", "path": "69" }, "7055": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "DUP4", "path": "69" }, "7056": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1697 ], "op": "KECCAK256", "path": "69" }, "7057": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "DUP8", "path": "69" }, "7058": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "ISZERO", "path": "69" }, "7059": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "ISZERO", "path": "69" }, "7060": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "DUP5", "path": "69" }, "7061": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "MSTORE", "path": "69" }, "7062": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "DUP3", "path": "69" }, "7063": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "MSTORE", "path": "69" }, "7064": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "SWAP2", "path": "69" }, "7065": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "DUP3", "path": "69" }, "7066": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "SWAP1", "path": "69" }, "7067": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "KECCAK256", "path": "69" }, "7068": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP3", "path": "69", "statement": 155 }, "7069": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MLOAD", "path": "69" }, "7070": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "PUSH1", "path": "69", "value": "0xA0" }, "7072": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP2", "path": "69" }, "7073": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ADD", "path": "69" }, "7074": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP5", "path": "69" }, "7075": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MSTORE", "path": "69" }, "7076": { "fn": "TokenHandler._getToken", "offset": [ 1777, 1802 ], "op": "DUP2", "path": "69" }, "7077": { "fn": "TokenHandler._getToken", "offset": [ 1777, 1802 ], "op": "SLOAD", "path": "69" }, "7078": { "op": "PUSH1", "value": "0x1" }, "7080": { "op": "PUSH1", "value": "0x1" }, "7082": { "op": "PUSH1", "value": "0xA0" }, "7084": { "op": "SHL" }, "7085": { "op": "SUB" }, "7086": { "fn": "TokenHandler._getToken", "offset": [ 1777, 1802 ], "op": "DUP2", "path": "69" }, "7087": { "fn": "TokenHandler._getToken", "offset": [ 1777, 1802 ], "op": "AND", "path": "69" }, "7088": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP3", "path": "69" }, "7089": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MSTORE", "path": "69" }, "7090": { "fn": "TokenHandler._getToken", "offset": [ 1836, 1863 ], "op": "PUSH1", "path": "69", "value": "0xFF" }, "7092": { "op": "PUSH1", "value": "0x1" }, "7094": { "op": "PUSH1", "value": "0xA0" }, "7096": { "op": "SHL" }, "7097": { "fn": "TokenHandler._getToken", "offset": [ 1836, 1863 ], "op": "DUP3", "path": "69" }, "7098": { "fn": "TokenHandler._getToken", "offset": [ 1836, 1863 ], "op": "DIV", "path": "69" }, "7099": { "fn": "TokenHandler._getToken", "offset": [ 1836, 1863 ], "op": "DUP2", "path": "69" }, "7100": { "fn": "TokenHandler._getToken", "offset": [ 1836, 1863 ], "op": "AND", "path": "69" }, "7101": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ISZERO", "path": "69" }, "7102": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ISZERO", "path": "69" }, "7103": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7104": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP4", "path": "69" }, "7105": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ADD", "path": "69" }, "7106": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7107": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP1", "path": "69" }, "7108": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7109": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MSTORE", "path": "69" }, "7110": { "op": "PUSH1", "value": "0x1" }, "7112": { "op": "PUSH1", "value": "0xB0" }, "7114": { "op": "SHL" }, "7115": { "fn": "TokenHandler._getToken", "offset": [ 1956, 1982 ], "op": "DUP2", "path": "69" }, "7116": { "fn": "TokenHandler._getToken", "offset": [ 1956, 1982 ], "op": "DIV", "path": "69" }, "7117": { "fn": "TokenHandler._getToken", "offset": [ 1956, 1982 ], "op": "DUP5", "path": "69" }, "7118": { "fn": "TokenHandler._getToken", "offset": [ 1956, 1982 ], "op": "AND", "path": "69" }, "7119": { "fn": "TokenHandler._getToken", "offset": [ 1952, 1954 ], "op": "PUSH1", "path": "69", "value": "0xA" }, "7121": { "fn": "TokenHandler._getToken", "offset": [ 1952, 1982 ], "op": "EXP", "path": "69" }, "7122": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7123": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP3", "path": "69" }, "7124": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ADD", "path": "69" }, "7125": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7126": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP1", "path": "69" }, "7127": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7128": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MSTORE", "path": "69" }, "7129": { "fn": "TokenHandler._getToken", "offset": [ 1540, 1634 ], "op": "SWAP4", "path": "69" }, "7130": { "fn": "TokenHandler._getToken", "offset": [ 1540, 1634 ], "op": "SWAP5", "path": "69" }, "7131": { "op": "POP" }, "7132": { "fn": "TokenHandler._getToken", "offset": [ 1680, 1709 ], "op": "SWAP3", "path": "69" }, "7133": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP2", "path": "69" }, "7134": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7136": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP4", "path": "69" }, "7137": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ADD", "path": "69" }, "7138": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP2", "path": "69" }, "7139": { "op": "PUSH1", "value": "0x1" }, "7141": { "op": "PUSH1", "value": "0xA8" }, "7143": { "op": "SHL" }, "7144": { "fn": "TokenHandler._getToken", "offset": [ 2012, 2034 ], "op": "SWAP1", "path": "69" }, "7145": { "fn": "TokenHandler._getToken", "offset": [ 2012, 2034 ], "op": "SWAP2", "path": "69" }, "7146": { "fn": "TokenHandler._getToken", "offset": [ 2012, 2034 ], "op": "DIV", "path": "69" }, "7147": { "fn": "TokenHandler._getToken", "offset": [ 2012, 2034 ], "op": "AND", "path": "69" }, "7148": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7150": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP2", "path": "69" }, "7151": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "GT", "path": "69" }, "7152": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ISZERO", "path": "69" }, "7153": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "PUSH2", "path": "69", "value": "0x1BF6" }, "7156": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "JUMPI", "path": "69" }, "7157": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "INVALID", "path": "69" }, "7158": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "JUMPDEST", "path": "69" }, "7159": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "DUP2", "path": "69" }, "7160": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MSTORE", "path": "69" }, "7161": { "fn": "TokenHandler._getToken", "offset": [ 2074, 2107 ], "op": "SWAP2", "path": "69" }, "7162": { "fn": "TokenHandler._getToken", "offset": [ 2074, 2107 ], "op": "SLOAD", "path": "69" }, "7163": { "op": "PUSH1", "value": "0x1" }, "7165": { "op": "PUSH1", "value": "0xB8" }, "7167": { "op": "SHL" }, "7168": { "fn": "TokenHandler._getToken", "offset": [ 2074, 2107 ], "op": "SWAP1", "path": "69" }, "7169": { "fn": "TokenHandler._getToken", "offset": [ 2074, 2107 ], "op": "DIV", "path": "69" }, "7170": { "fn": "TokenHandler._getToken", "offset": [ 2074, 2107 ], "op": "PUSH9", "path": "69", "value": "0xFFFFFFFFFFFFFFFFFF" }, "7180": { "fn": "TokenHandler._getToken", "offset": [ 2074, 2107 ], "op": "AND", "path": "69" }, "7181": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "PUSH1", "path": "69", "value": "0x20" }, "7183": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP1", "path": "69" }, "7184": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP3", "path": "69" }, "7185": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "ADD", "path": "69" }, "7186": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP2", "path": "69" }, "7187": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP1", "path": "69" }, "7188": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP2", "path": "69" }, "7189": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "MSTORE", "path": "69" }, "7190": { "fn": "TokenHandler._getToken", "offset": [ 1739, 2122 ], "op": "SWAP5", "path": "69" }, "7191": { "fn": "TokenHandler._getToken", "offset": [ 1438, 2129 ], "op": "SWAP4", "path": "69" }, "7192": { "op": "POP" }, "7193": { "op": "POP" }, "7194": { "op": "POP" }, "7195": { "op": "POP" }, "7196": { "fn": "TokenHandler._getToken", "jump": "o", "offset": [ 1438, 2129 ], "op": "JUMP", "path": "69" }, "7197": { "fn": "SafeInt256.div", "offset": [ 1022, 1261 ], "op": "JUMPDEST", "path": "94" }, "7198": { "fn": "SafeInt256.div", "offset": [ 1078, 1086 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "7200": { "fn": "SafeInt256.div", "offset": [ 1108, 1109 ], "op": "DUP2", "path": "94", "statement": 156 }, "7201": { "op": "PUSH1", "value": "0x0" }, "7203": { "op": "NOT" }, "7204": { "branch": 531, "fn": "SafeInt256.div", "offset": [ 1108, 1115 ], "op": "EQ", "path": "94" }, "7205": { "fn": "SafeInt256.div", "offset": [ 1108, 1135 ], "op": "DUP1", "path": "94" }, "7206": { "fn": "SafeInt256.div", "offset": [ 1108, 1135 ], "op": "ISZERO", "path": "94" }, "7207": { "fn": "SafeInt256.div", "offset": [ 1108, 1135 ], "op": "PUSH2", "path": "94", "value": "0x1C33" }, "7210": { "branch": 531, "fn": "SafeInt256.div", "offset": [ 1108, 1135 ], "op": "JUMPI", "path": "94" }, "7211": { "fn": "SafeInt256.div", "offset": [ 1108, 1135 ], "op": "POP", "path": "94" }, "7212": { "op": "PUSH1", "value": "0x1" }, "7214": { "op": "PUSH1", "value": "0xFF" }, "7216": { "op": "SHL" }, "7217": { "fn": "SafeInt256.div", "offset": [ 1119, 1120 ], "op": "DUP4", "path": "94" }, "7218": { "branch": 532, "fn": "SafeInt256.div", "offset": [ 1119, 1135 ], "op": "EQ", "path": "94" }, "7219": { "fn": "SafeInt256.div", "offset": [ 1108, 1135 ], "op": "JUMPDEST", "path": "94" }, "7220": { "fn": "SafeInt256.div", "offset": [ 1106, 1136 ], "op": "ISZERO", "path": "94" }, "7221": { "fn": "SafeInt256.div", "offset": [ 1098, 1137 ], "op": "PUSH2", "path": "94", "value": "0x1C3D" }, "7224": { "branch": 532, "fn": "SafeInt256.div", "offset": [ 1098, 1137 ], "op": "JUMPI", "path": "94" }, "7225": { "fn": "SafeInt256.div", "offset": [ 1098, 1137 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "7227": { "fn": "SafeInt256.div", "offset": [ 1098, 1137 ], "op": "DUP1", "path": "94" }, "7228": { "fn": "SafeInt256.div", "offset": [ 1098, 1137 ], "op": "REVERT", "path": "94" }, "7229": { "fn": "SafeInt256.div", "offset": [ 1098, 1137 ], "op": "JUMPDEST", "path": "94" }, "7230": { "fn": "SafeInt256.div", "offset": [ 1253, 1254 ], "op": "DUP2", "path": "94", "statement": 157 }, "7231": { "fn": "SafeInt256.div", "offset": [ 1249, 1250 ], "op": "DUP4", "path": "94" }, "7232": { "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "DUP2", "path": "94" }, "7233": { "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "PUSH2", "path": "94", "value": "0x1C46" }, "7236": { "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "JUMPI", "path": "94" }, "7237": { "dev": "Division by zero", "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "INVALID", "path": "94" }, "7238": { "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "JUMPDEST", "path": "94" }, "7239": { "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "SDIV", "path": "94" }, "7240": { "fn": "SafeInt256.div", "offset": [ 1249, 1254 ], "op": "SWAP4", "path": "94" }, "7241": { "fn": "SafeInt256.div", "offset": [ 1022, 1261 ], "op": "SWAP3", "path": "94" }, "7242": { "op": "POP" }, "7243": { "op": "POP" }, "7244": { "op": "POP" }, "7245": { "fn": "SafeInt256.div", "jump": "o", "offset": [ 1022, 1261 ], "op": "JUMP", "path": "94" }, "7246": { "fn": "TokenHandler.transfer", "offset": [ 9098, 10939 ], "op": "JUMPDEST", "path": "69" }, "7247": { "fn": "TokenHandler.transfer", "offset": [ 9524, 9543 ], "op": "DUP1", "path": "69", "statement": 158 }, "7248": { "fn": "TokenHandler.transfer", "offset": [ 9577, 9593 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7250": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9563 ], "op": "DUP6", "path": "69" }, "7251": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9573 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7253": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9573 ], "op": "ADD", "path": "69" }, "7254": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9573 ], "op": "MLOAD", "path": "69" }, "7255": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7257": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "DUP2", "path": "69" }, "7258": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "GT", "path": "69" }, "7259": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "ISZERO", "path": "69" }, "7260": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "PUSH2", "path": "69", "value": "0x1C61" }, "7263": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "JUMPI", "path": "69" }, "7264": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "INVALID", "path": "69" }, "7265": { "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "JUMPDEST", "path": "69" }, "7266": { "branch": 543, "fn": "TokenHandler.transfer", "offset": [ 9558, 9593 ], "op": "EQ", "path": "69" }, "7267": { "fn": "TokenHandler.transfer", "offset": [ 9554, 10038 ], "op": "ISZERO", "path": "69" }, "7268": { "fn": "TokenHandler.transfer", "offset": [ 9554, 10038 ], "op": "PUSH2", "path": "69", "value": "0x1C86" }, "7271": { "branch": 543, "fn": "TokenHandler.transfer", "offset": [ 9554, 10038 ], "op": "JUMPI", "path": "69" }, "7272": { "fn": "TokenHandler.transfer", "offset": [ 9609, 9637 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7274": { "fn": "TokenHandler.transfer", "offset": [ 9640, 9670 ], "op": "PUSH2", "path": "69", "value": "0x1C72" }, "7277": { "fn": "TokenHandler.transfer", "offset": [ 9659, 9669 ], "op": "DUP5", "path": "69" }, "7278": { "fn": "TokenHandler.transfer", "offset": [ 9640, 9658 ], "op": "PUSH2", "path": "69", "value": "0xF3B" }, "7281": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 9640, 9670 ], "op": "JUMP", "path": "69" }, "7282": { "fn": "TokenHandler.transfer", "offset": [ 9640, 9670 ], "op": "JUMPDEST", "path": "69" }, "7283": { "fn": "TokenHandler.transfer", "offset": [ 9609, 9670 ], "op": "SWAP1", "path": "69" }, "7284": { "fn": "TokenHandler.transfer", "offset": [ 9609, 9670 ], "op": "POP", "path": "69" }, "7285": { "fn": "TokenHandler.transfer", "offset": [ 9886, 10027 ], "op": "PUSH2", "path": "69", "statement": 159, "value": "0x1C82" }, "7288": { "fn": "TokenHandler.transfer", "offset": [ 9948, 9963 ], "op": "DUP2", "path": "69" }, "7289": { "fn": "TokenHandler.transfer", "offset": [ 9948, 9976 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7291": { "fn": "TokenHandler.transfer", "offset": [ 9948, 9976 ], "op": "ADD", "path": "69" }, "7292": { "fn": "TokenHandler.transfer", "offset": [ 9948, 9976 ], "op": "MLOAD", "path": "69" }, "7293": { "fn": "TokenHandler.transfer", "offset": [ 9994, 10013 ], "op": "DUP5", "path": "69" }, "7294": { "fn": "TokenHandler.transfer", "offset": [ 9886, 9930 ], "op": "PUSH2", "path": "69", "value": "0x2BF7" }, "7297": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 9886, 10027 ], "op": "JUMP", "path": "69" }, "7298": { "fn": "TokenHandler.transfer", "offset": [ 9886, 10027 ], "op": "JUMPDEST", "path": "69" }, "7299": { "fn": "TokenHandler.transfer", "offset": [ 9864, 10027 ], "op": "SWAP3", "path": "69" }, "7300": { "fn": "TokenHandler.transfer", "offset": [ 9864, 10027 ], "op": "POP", "path": "69" }, "7301": { "fn": "TokenHandler.transfer", "offset": [ 9554, 10038 ], "op": "POP", "path": "69" }, "7302": { "fn": "TokenHandler.transfer", "offset": [ 9554, 10038 ], "op": "JUMPDEST", "path": "69" }, "7303": { "fn": "TokenHandler.transfer", "offset": [ 10074, 10075 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7305": { "fn": "TokenHandler.transfer", "offset": [ 10052, 10071 ], "op": "DUP3", "path": "69" }, "7306": { "branch": 544, "fn": "TokenHandler.transfer", "offset": [ 10052, 10075 ], "op": "SGT", "path": "69" }, "7307": { "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "ISZERO", "path": "69" }, "7308": { "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "PUSH2", "path": "69", "value": "0x1CB2" }, "7311": { "branch": 544, "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "JUMPI", "path": "69" }, "7312": { "fn": "TokenHandler.transfer", "offset": [ 10147, 10164 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7314": { "fn": "TokenHandler.transfer", "offset": [ 10167, 10221 ], "op": "PUSH2", "path": "69", "value": "0x1C9C" }, "7317": { "fn": "TokenHandler.transfer", "offset": [ 10176, 10181 ], "op": "DUP7", "path": "69" }, "7318": { "fn": "TokenHandler.transfer", "offset": [ 10183, 10190 ], "op": "DUP7", "path": "69" }, "7319": { "fn": "TokenHandler.transfer", "offset": [ 10200, 10219 ], "op": "DUP6", "path": "69" }, "7320": { "fn": "TokenHandler.transfer", "offset": [ 10167, 10175 ], "op": "PUSH2", "path": "69", "value": "0x2C89" }, "7323": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 10167, 10221 ], "op": "JUMP", "path": "69" }, "7324": { "fn": "TokenHandler.transfer", "offset": [ 10167, 10221 ], "op": "JUMPDEST", "path": "69" }, "7325": { "fn": "TokenHandler.transfer", "offset": [ 10147, 10221 ], "op": "SWAP1", "path": "69" }, "7326": { "fn": "TokenHandler.transfer", "offset": [ 10147, 10221 ], "op": "POP", "path": "69" }, "7327": { "fn": "TokenHandler.transfer", "offset": [ 10386, 10391 ], "op": "DUP6", "path": "69" }, "7328": { "fn": "TokenHandler.transfer", "offset": [ 10386, 10406 ], "op": "PUSH1", "path": "69", "value": "0x20" }, "7330": { "fn": "TokenHandler.transfer", "offset": [ 10386, 10406 ], "op": "ADD", "path": "69" }, "7331": { "branch": 545, "fn": "TokenHandler.transfer", "offset": [ 10386, 10406 ], "op": "MLOAD", "path": "69" }, "7332": { "fn": "TokenHandler.transfer", "offset": [ 10382, 10443 ], "op": "ISZERO", "path": "69" }, "7333": { "fn": "TokenHandler.transfer", "offset": [ 10382, 10443 ], "op": "PUSH2", "path": "69", "value": "0x1CAC" }, "7336": { "branch": 545, "fn": "TokenHandler.transfer", "offset": [ 10382, 10443 ], "op": "JUMPI", "path": "69" }, "7337": { "fn": "TokenHandler.transfer", "offset": [ 10433, 10443 ], "op": "DUP1", "path": "69", "statement": 160 }, "7338": { "fn": "TokenHandler.transfer", "offset": [ 10408, 10443 ], "op": "SWAP2", "path": "69" }, "7339": { "fn": "TokenHandler.transfer", "offset": [ 10408, 10443 ], "op": "POP", "path": "69" }, "7340": { "fn": "TokenHandler.transfer", "offset": [ 10382, 10443 ], "op": "JUMPDEST", "path": "69" }, "7341": { "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "POP", "path": "69" }, "7342": { "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "PUSH2", "path": "69", "value": "0xF7F" }, "7345": { "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "JUMP", "path": "69" }, "7346": { "fn": "TokenHandler.transfer", "offset": [ 10048, 10933 ], "op": "JUMPDEST", "path": "69" }, "7347": { "fn": "TokenHandler.transfer", "offset": [ 10483, 10498 ], "op": "PUSH1", "path": "69", "value": "0x3" }, "7349": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10469 ], "op": "DUP6", "path": "69" }, "7350": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10479 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7352": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10479 ], "op": "ADD", "path": "69" }, "7353": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10479 ], "op": "MLOAD", "path": "69" }, "7354": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7356": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "DUP2", "path": "69" }, "7357": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "GT", "path": "69" }, "7358": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "ISZERO", "path": "69" }, "7359": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "PUSH2", "path": "69", "value": "0x1CC4" }, "7362": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "JUMPI", "path": "69" }, "7363": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "INVALID", "path": "69" }, "7364": { "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "JUMPDEST", "path": "69" }, "7365": { "branch": 546, "fn": "TokenHandler.transfer", "offset": [ 10464, 10498 ], "op": "EQ", "path": "69" }, "7366": { "fn": "TokenHandler.transfer", "offset": [ 10460, 10933 ], "op": "ISZERO", "path": "69" }, "7367": { "fn": "TokenHandler.transfer", "offset": [ 10460, 10933 ], "op": "PUSH2", "path": "69", "value": "0x1CE1" }, "7370": { "branch": 546, "fn": "TokenHandler.transfer", "offset": [ 10460, 10933 ], "op": "JUMPI", "path": "69" }, "7371": { "fn": "TokenHandler.transfer", "offset": [ 10592, 10672 ], "op": "PUSH2", "path": "69", "statement": 161, "value": "0x1CDC" }, "7374": { "fn": "TokenHandler.transfer", "offset": [ 10628, 10635 ], "op": "DUP5", "path": "69" }, "7375": { "fn": "TokenHandler.transfer", "offset": [ 10645, 10670 ], "op": "PUSH2", "path": "69", "value": "0x1CD7" }, "7378": { "fn": "TokenHandler.transfer", "offset": [ 10645, 10664 ], "op": "DUP5", "path": "69" }, "7379": { "fn": "TokenHandler.transfer", "offset": [ 10645, 10668 ], "op": "PUSH2", "path": "69", "value": "0xEE1" }, "7382": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 10645, 10670 ], "op": "JUMP", "path": "69" }, "7383": { "fn": "TokenHandler.transfer", "offset": [ 10645, 10670 ], "op": "JUMPDEST", "path": "69" }, "7384": { "fn": "TokenHandler.transfer", "offset": [ 10592, 10627 ], "op": "PUSH2", "path": "69", "value": "0x2D7C" }, "7387": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 10592, 10672 ], "op": "JUMP", "path": "69" }, "7388": { "fn": "TokenHandler.transfer", "offset": [ 10592, 10672 ], "op": "JUMPDEST", "path": "69" }, "7389": { "fn": "TokenHandler.transfer", "offset": [ 10460, 10933 ], "op": "PUSH2", "path": "69", "value": "0xF7F" }, "7392": { "fn": "TokenHandler.transfer", "offset": [ 10460, 10933 ], "op": "JUMP", "path": "69" }, "7393": { "fn": "TokenHandler.transfer", "offset": [ 10460, 10933 ], "op": "JUMPDEST", "path": "69" }, "7394": { "fn": "TokenHandler.transfer", "offset": [ 10749, 10767 ], "op": "DUP5", "path": "69", "statement": 162 }, "7395": { "fn": "TokenHandler.transfer", "offset": [ 10749, 10767 ], "op": "MLOAD", "path": "69" }, "7396": { "fn": "TokenHandler.transfer", "offset": [ 10703, 10922 ], "op": "PUSH2", "path": "69", "value": "0xF7F" }, "7399": { "fn": "TokenHandler.transfer", "offset": [ 10703, 10922 ], "op": "SWAP1", "path": "69" }, "7400": { "fn": "TokenHandler.transfer", "offset": [ 10785, 10792 ], "op": "DUP6", "path": "69" }, "7401": { "fn": "TokenHandler.transfer", "offset": [ 10882, 10907 ], "op": "PUSH2", "path": "69", "value": "0x1CF1" }, "7404": { "fn": "TokenHandler.transfer", "offset": [ 10882, 10901 ], "op": "DUP6", "path": "69" }, "7405": { "fn": "TokenHandler.transfer", "offset": [ 10882, 10905 ], "op": "PUSH2", "path": "69", "value": "0xEE1" }, "7408": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 10882, 10907 ], "op": "JUMP", "path": "69" }, "7409": { "fn": "TokenHandler.transfer", "offset": [ 10882, 10907 ], "op": "JUMPDEST", "path": "69" }, "7410": { "fn": "TokenHandler.transfer", "offset": [ 10703, 10731 ], "op": "PUSH2", "path": "69", "value": "0x2DB7" }, "7413": { "fn": "TokenHandler.transfer", "jump": "i", "offset": [ 10703, 10922 ], "op": "JUMP", "path": "69" }, "7414": { "fn": "SafeInt256.toUint", "offset": [ 2397, 2514 ], "op": "JUMPDEST", "path": "94" }, "7415": { "fn": "SafeInt256.toUint", "offset": [ 2446, 2453 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "7417": { "fn": "SafeInt256.toUint", "offset": [ 2478, 2479 ], "op": "DUP1", "path": "94", "statement": 163 }, "7418": { "fn": "SafeInt256.toUint", "offset": [ 2473, 2474 ], "op": "DUP3", "path": "94" }, "7419": { "fn": "SafeInt256.toUint", "offset": [ 2473, 2479 ], "op": "SLT", "path": "94" }, "7420": { "branch": 533, "fn": "SafeInt256.toUint", "offset": [ 2473, 2479 ], "op": "ISZERO", "path": "94" }, "7421": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "PUSH2", "path": "94", "value": "0x1D05" }, "7424": { "branch": 533, "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "JUMPI", "path": "94" }, "7425": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "7427": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "DUP1", "path": "94" }, "7428": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "REVERT", "path": "94" }, "7429": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "JUMPDEST", "path": "94" }, "7430": { "op": "POP" }, "7431": { "fn": "SafeInt256.toUint", "offset": [ 2505, 2506 ], "op": "SWAP1", "path": "94", "statement": 164 }, "7432": { "fn": "SafeInt256.toUint", "jump": "o", "offset": [ 2397, 2514 ], "op": "JUMP", "path": "94" }, "7433": { "fn": "TokenHandler.mint", "offset": [ 5788, 7337 ], "op": "JUMPDEST", "path": "69" }, "7434": { "fn": "TokenHandler.mint", "offset": [ 5898, 5904 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7436": { "fn": "TokenHandler.mint", "offset": [ 5898, 5904 ], "op": "DUP1", "path": "69" }, "7437": { "fn": "TokenHandler.mint", "offset": [ 6273, 6289 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7439": { "fn": "TokenHandler.mint", "offset": [ 6249, 6259 ], "op": "DUP6", "path": "69" }, "7440": { "fn": "TokenHandler.mint", "offset": [ 6249, 6269 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7442": { "fn": "TokenHandler.mint", "offset": [ 6249, 6269 ], "op": "ADD", "path": "69" }, "7443": { "fn": "TokenHandler.mint", "offset": [ 6249, 6269 ], "op": "MLOAD", "path": "69" }, "7444": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7446": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "DUP2", "path": "69" }, "7447": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "GT", "path": "69" }, "7448": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "ISZERO", "path": "69" }, "7449": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "PUSH2", "path": "69", "value": "0x1D1E" }, "7452": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "JUMPI", "path": "69" }, "7453": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "INVALID", "path": "69" }, "7454": { "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "JUMPDEST", "path": "69" }, "7455": { "branch": 547, "fn": "TokenHandler.mint", "offset": [ 6249, 6289 ], "op": "EQ", "path": "69" }, "7456": { "fn": "TokenHandler.mint", "offset": [ 6249, 6391 ], "op": "PUSH2", "path": "69", "value": "0x1D30" }, "7459": { "branch": 547, "fn": "TokenHandler.mint", "offset": [ 6249, 6391 ], "op": "JUMPI", "path": "69" }, "7460": { "op": "PUSH4", "value": "0x70A08231" }, "7465": { "op": "PUSH1", "value": "0xE0" }, "7467": { "op": "SHL" }, "7468": { "fn": "TokenHandler.mint", "offset": [ 6249, 6391 ], "op": "PUSH2", "path": "69", "value": "0x1D39" }, "7471": { "fn": "TokenHandler.mint", "offset": [ 6249, 6391 ], "op": "JUMP", "path": "69" }, "7472": { "fn": "TokenHandler.mint", "offset": [ 6249, 6391 ], "op": "JUMPDEST", "path": "69" }, "7473": { "op": "PUSH4", "value": "0xED1279F" }, "7478": { "op": "PUSH1", "value": "0xE1" }, "7480": { "op": "SHL" }, "7481": { "fn": "TokenHandler.mint", "offset": [ 6249, 6391 ], "op": "JUMPDEST", "path": "69" }, "7482": { "fn": "TokenHandler.mint", "offset": [ 6222, 6391 ], "op": "SWAP1", "path": "69" }, "7483": { "fn": "TokenHandler.mint", "offset": [ 6222, 6391 ], "op": "POP", "path": "69" }, "7484": { "fn": "TokenHandler.mint", "offset": [ 6410, 6433 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7486": { "fn": "TokenHandler.mint", "offset": [ 6436, 6531 ], "op": "PUSH2", "path": "69", "value": "0x1D4C" }, "7489": { "fn": "TokenHandler.mint", "offset": [ 6473, 6483 ], "op": "DUP7", "path": "69" }, "7490": { "fn": "TokenHandler.mint", "offset": [ 6473, 6496 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7492": { "fn": "TokenHandler.mint", "offset": [ 6473, 6496 ], "op": "ADD", "path": "69" }, "7493": { "fn": "TokenHandler.mint", "offset": [ 6473, 6496 ], "op": "MLOAD", "path": "69" }, "7494": { "fn": "TokenHandler.mint", "offset": [ 6506, 6510 ], "op": "ADDRESS", "path": "69" }, "7495": { "fn": "TokenHandler.mint", "offset": [ 6513, 6530 ], "op": "DUP5", "path": "69" }, "7496": { "fn": "TokenHandler.mint", "offset": [ 6436, 6472 ], "op": "PUSH2", "path": "69", "value": "0x2E2E" }, "7499": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 6436, 6531 ], "op": "JUMP", "path": "69" }, "7500": { "fn": "TokenHandler.mint", "offset": [ 6436, 6531 ], "op": "JUMPDEST", "path": "69" }, "7501": { "fn": "TokenHandler.mint", "offset": [ 6410, 6531 ], "op": "SWAP1", "path": "69" }, "7502": { "op": "POP" }, "7503": { "fn": "TokenHandler.mint", "offset": [ 6570, 6586 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7505": { "fn": "TokenHandler.mint", "offset": [ 6546, 6556 ], "op": "DUP7", "path": "69" }, "7506": { "fn": "TokenHandler.mint", "offset": [ 6546, 6566 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7508": { "fn": "TokenHandler.mint", "offset": [ 6546, 6566 ], "op": "ADD", "path": "69" }, "7509": { "fn": "TokenHandler.mint", "offset": [ 6546, 6566 ], "op": "MLOAD", "path": "69" }, "7510": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7512": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "DUP2", "path": "69" }, "7513": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "GT", "path": "69" }, "7514": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "ISZERO", "path": "69" }, "7515": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "PUSH2", "path": "69", "value": "0x1D60" }, "7518": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "JUMPI", "path": "69" }, "7519": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "INVALID", "path": "69" }, "7520": { "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "JUMPDEST", "path": "69" }, "7521": { "branch": 548, "fn": "TokenHandler.mint", "offset": [ 6546, 6586 ], "op": "EQ", "path": "69" }, "7522": { "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "ISZERO", "path": "69" }, "7523": { "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "PUSH2", "path": "69", "value": "0x1D87" }, "7526": { "branch": 548, "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "JUMPI", "path": "69" }, "7527": { "fn": "TokenHandler.mint", "offset": [ 6602, 6630 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7529": { "fn": "TokenHandler.mint", "offset": [ 6633, 6663 ], "op": "PUSH2", "path": "69", "value": "0x1D75" }, "7532": { "fn": "TokenHandler.mint", "offset": [ 6652, 6662 ], "op": "DUP7", "path": "69" }, "7533": { "fn": "TokenHandler.mint", "offset": [ 6633, 6663 ], "op": "PUSH2", "path": "69", "value": "0xFFFF" }, "7536": { "fn": "TokenHandler.mint", "offset": [ 6633, 6663 ], "op": "AND", "path": "69" }, "7537": { "fn": "TokenHandler.mint", "offset": [ 6633, 6651 ], "op": "PUSH2", "path": "69", "value": "0xF3B" }, "7540": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 6633, 6663 ], "op": "JUMP", "path": "69" }, "7541": { "fn": "TokenHandler.mint", "offset": [ 6633, 6663 ], "op": "JUMPDEST", "path": "69" }, "7542": { "fn": "TokenHandler.mint", "offset": [ 6602, 6663 ], "op": "SWAP1", "path": "69" }, "7543": { "fn": "TokenHandler.mint", "offset": [ 6602, 6663 ], "op": "POP", "path": "69" }, "7544": { "fn": "TokenHandler.mint", "offset": [ 6677, 6736 ], "op": "PUSH2", "path": "69", "statement": 165, "value": "0x1D81" }, "7547": { "fn": "TokenHandler.mint", "offset": [ 6694, 6709 ], "op": "DUP2", "path": "69" }, "7548": { "fn": "TokenHandler.mint", "offset": [ 6711, 6735 ], "op": "DUP7", "path": "69" }, "7549": { "fn": "TokenHandler.mint", "offset": [ 6677, 6693 ], "op": "PUSH2", "path": "69", "value": "0x2F40" }, "7552": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 6677, 6736 ], "op": "JUMP", "path": "69" }, "7553": { "fn": "TokenHandler.mint", "offset": [ 6677, 6736 ], "op": "JUMPDEST", "path": "69" }, "7554": { "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "POP", "path": "69" }, "7555": { "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "PUSH2", "path": "69", "value": "0x1DCA" }, "7558": { "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "JUMP", "path": "69" }, "7559": { "fn": "TokenHandler.mint", "offset": [ 6542, 7059 ], "op": "JUMPDEST", "path": "69" }, "7560": { "fn": "TokenHandler.mint", "offset": [ 6781, 6797 ], "op": "PUSH1", "path": "69", "value": "0x1" }, "7562": { "fn": "TokenHandler.mint", "offset": [ 6757, 6767 ], "op": "DUP7", "path": "69" }, "7563": { "fn": "TokenHandler.mint", "offset": [ 6757, 6777 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7565": { "fn": "TokenHandler.mint", "offset": [ 6757, 6777 ], "op": "ADD", "path": "69" }, "7566": { "fn": "TokenHandler.mint", "offset": [ 6757, 6777 ], "op": "MLOAD", "path": "69" }, "7567": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7569": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "DUP2", "path": "69" }, "7570": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "GT", "path": "69" }, "7571": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "ISZERO", "path": "69" }, "7572": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "PUSH2", "path": "69", "value": "0x1D99" }, "7575": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "JUMPI", "path": "69" }, "7576": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "INVALID", "path": "69" }, "7577": { "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "JUMPDEST", "path": "69" }, "7578": { "branch": 549, "fn": "TokenHandler.mint", "offset": [ 6757, 6797 ], "op": "EQ", "path": "69" }, "7579": { "fn": "TokenHandler.mint", "offset": [ 6753, 7059 ], "op": "ISZERO", "path": "69" }, "7580": { "fn": "TokenHandler.mint", "offset": [ 6753, 7059 ], "op": "PUSH2", "path": "69", "value": "0x1DA9" }, "7583": { "branch": 549, "fn": "TokenHandler.mint", "offset": [ 6753, 7059 ], "op": "JUMPI", "path": "69" }, "7584": { "fn": "TokenHandler.mint", "offset": [ 6813, 6871 ], "op": "PUSH2", "path": "69", "statement": 166, "value": "0x1D81" }, "7587": { "fn": "TokenHandler.mint", "offset": [ 6834, 6844 ], "op": "DUP7", "path": "69" }, "7588": { "fn": "TokenHandler.mint", "offset": [ 6846, 6870 ], "op": "DUP6", "path": "69" }, "7589": { "fn": "TokenHandler.mint", "offset": [ 6813, 6833 ], "op": "PUSH2", "path": "69", "value": "0x2FAB" }, "7592": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 6813, 6871 ], "op": "JUMP", "path": "69" }, "7593": { "fn": "TokenHandler.mint", "offset": [ 6753, 7059 ], "op": "JUMPDEST", "path": "69" }, "7594": { "fn": "TokenHandler.mint", "offset": [ 6916, 6930 ], "op": "PUSH1", "path": "69", "value": "0x2" }, "7596": { "fn": "TokenHandler.mint", "offset": [ 6892, 6902 ], "op": "DUP7", "path": "69" }, "7597": { "fn": "TokenHandler.mint", "offset": [ 6892, 6912 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "7599": { "fn": "TokenHandler.mint", "offset": [ 6892, 6912 ], "op": "ADD", "path": "69" }, "7600": { "fn": "TokenHandler.mint", "offset": [ 6892, 6912 ], "op": "MLOAD", "path": "69" }, "7601": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "7603": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "DUP2", "path": "69" }, "7604": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "GT", "path": "69" }, "7605": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "ISZERO", "path": "69" }, "7606": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "PUSH2", "path": "69", "value": "0x1DBB" }, "7609": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "JUMPI", "path": "69" }, "7610": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "INVALID", "path": "69" }, "7611": { "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "JUMPDEST", "path": "69" }, "7612": { "branch": 550, "fn": "TokenHandler.mint", "offset": [ 6892, 6930 ], "op": "EQ", "path": "69" }, "7613": { "fn": "TokenHandler.mint", "offset": [ 6888, 7059 ], "op": "ISZERO", "path": "69" }, "7614": { "fn": "TokenHandler.mint", "offset": [ 6888, 7059 ], "op": "PUSH2", "path": "69", "value": "0x7B" }, "7617": { "branch": 550, "fn": "TokenHandler.mint", "jump_revert": true, "offset": [ 7013, 7021 ], "op": "JUMPI", "path": "69" }, "7618": { "fn": "TokenHandler.mint", "offset": [ 6946, 6982 ], "op": "PUSH2", "path": "69", "statement": 167, "value": "0x1DCA" }, "7621": { "fn": "TokenHandler.mint", "offset": [ 6971, 6981 ], "op": "DUP7", "path": "69" }, "7622": { "fn": "TokenHandler.mint", "offset": [ 6946, 6970 ], "op": "PUSH2", "path": "69", "value": "0x3057" }, "7625": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 6946, 6982 ], "op": "JUMP", "path": "69" }, "7626": { "fn": "TokenHandler.mint", "offset": [ 6946, 6982 ], "op": "JUMPDEST", "path": "69" }, "7627": { "fn": "TokenHandler.mint", "offset": [ 7069, 7090 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7629": { "fn": "TokenHandler.mint", "offset": [ 7093, 7188 ], "op": "PUSH2", "path": "69", "value": "0x1DDB" }, "7632": { "fn": "TokenHandler.mint", "offset": [ 7130, 7140 ], "op": "DUP8", "path": "69" }, "7633": { "fn": "TokenHandler.mint", "offset": [ 7130, 7153 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7635": { "fn": "TokenHandler.mint", "offset": [ 7130, 7153 ], "op": "ADD", "path": "69" }, "7636": { "fn": "TokenHandler.mint", "offset": [ 7130, 7153 ], "op": "MLOAD", "path": "69" }, "7637": { "fn": "TokenHandler.mint", "offset": [ 7163, 7167 ], "op": "ADDRESS", "path": "69" }, "7638": { "fn": "TokenHandler.mint", "offset": [ 7170, 7187 ], "op": "DUP6", "path": "69" }, "7639": { "fn": "TokenHandler.mint", "offset": [ 7093, 7129 ], "op": "PUSH2", "path": "69", "value": "0x2E2E" }, "7642": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 7093, 7188 ], "op": "JUMP", "path": "69" }, "7643": { "fn": "TokenHandler.mint", "offset": [ 7093, 7188 ], "op": "JUMPDEST", "path": "69" }, "7644": { "fn": "TokenHandler.mint", "offset": [ 7069, 7188 ], "op": "SWAP1", "path": "69" }, "7645": { "op": "POP" }, "7646": { "fn": "TokenHandler.mint", "offset": [ 7278, 7330 ], "op": "PUSH2", "path": "69", "statement": 168, "value": "0x1DEF" }, "7649": { "fn": "TokenHandler.mint", "offset": [ 7295, 7329 ], "op": "PUSH2", "path": "69", "value": "0x1DEA" }, "7652": { "fn": "TokenHandler.mint", "offset": [ 7069, 7188 ], "op": "DUP3", "path": "69" }, "7653": { "fn": "TokenHandler.mint", "offset": [ 7313, 7328 ], "op": "DUP5", "path": "69" }, "7654": { "fn": "TokenHandler.mint", "offset": [ 7295, 7312 ], "op": "PUSH2", "path": "69", "value": "0x3096" }, "7657": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 7295, 7329 ], "op": "JUMP", "path": "69" }, "7658": { "fn": "TokenHandler.mint", "offset": [ 7295, 7329 ], "op": "JUMPDEST", "path": "69" }, "7659": { "fn": "TokenHandler.mint", "offset": [ 7278, 7294 ], "op": "PUSH2", "path": "69", "value": "0x264D" }, "7662": { "fn": "TokenHandler.mint", "jump": "i", "offset": [ 7278, 7330 ], "op": "JUMP", "path": "69" }, "7663": { "fn": "TokenHandler.mint", "offset": [ 7278, 7330 ], "op": "JUMPDEST", "path": "69" }, "7664": { "fn": "TokenHandler.mint", "offset": [ 7271, 7330 ], "op": "SWAP8", "path": "69" }, "7665": { "fn": "TokenHandler.mint", "offset": [ 5788, 7337 ], "op": "SWAP7", "path": "69" }, "7666": { "op": "POP" }, "7667": { "op": "POP" }, "7668": { "op": "POP" }, "7669": { "op": "POP" }, "7670": { "op": "POP" }, "7671": { "op": "POP" }, "7672": { "op": "POP" }, "7673": { "fn": "TokenHandler.mint", "jump": "o", "offset": [ 5788, 7337 ], "op": "JUMP", "path": "69" }, "7674": { "fn": "TokenHandler.convertToInternal", "offset": [ 12920, 13714 ], "op": "JUMPDEST", "path": "69" }, "7675": { "fn": "TokenHandler.convertToInternal", "offset": [ 13005, 13011 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "7677": { "offset": [ 429, 432 ], "op": "PUSH4", "path": "60", "value": "0x5F5E100" }, "7682": { "fn": "TokenHandler.convertToInternal", "offset": [ 13557, 13562 ], "op": "DUP4", "path": "69" }, "7683": { "fn": "TokenHandler.convertToInternal", "offset": [ 13557, 13571 ], "op": "PUSH1", "path": "69", "value": "0x40" }, "7685": { "fn": "TokenHandler.convertToInternal", "offset": [ 13557, 13571 ], "op": "ADD", "path": "69" }, "7686": { "fn": "TokenHandler.convertToInternal", "offset": [ 13557, 13571 ], "op": "MLOAD", "path": "69" }, "7687": { "branch": 551, "fn": "TokenHandler.convertToInternal", "offset": [ 13557, 13609 ], "op": "EQ", "path": "69" }, "7688": { "fn": "TokenHandler.convertToInternal", "offset": [ 13553, 13624 ], "op": "ISZERO", "path": "69" }, "7689": { "fn": "TokenHandler.convertToInternal", "offset": [ 13553, 13624 ], "op": "PUSH2", "path": "69", "value": "0x1E13" }, "7692": { "branch": 551, "fn": "TokenHandler.convertToInternal", "offset": [ 13553, 13624 ], "op": "JUMPI", "path": "69" }, "7693": { "op": "POP" }, "7694": { "fn": "TokenHandler.convertToInternal", "offset": [ 13618, 13624 ], "op": "DUP1", "path": "69", "statement": 169 }, "7695": { "fn": "TokenHandler.convertToInternal", "offset": [ 13611, 13624 ], "op": "PUSH2", "path": "69", "value": "0xEDB" }, "7698": { "fn": "TokenHandler.convertToInternal", "offset": [ 13611, 13624 ], "op": "JUMP", "path": "69" }, "7699": { "fn": "TokenHandler.convertToInternal", "offset": [ 13553, 13624 ], "op": "JUMPDEST", "path": "69" }, "7700": { "fn": "TokenHandler.convertToInternal", "offset": [ 13692, 13706 ], "op": "PUSH1", "path": "69", "statement": 170, "value": "0x40" }, "7702": { "fn": "TokenHandler.convertToInternal", "offset": [ 13692, 13706 ], "op": "DUP4", "path": "69" }, "7703": { "fn": "TokenHandler.convertToInternal", "offset": [ 13692, 13706 ], "op": "ADD", "path": "69" }, "7704": { "fn": "TokenHandler.convertToInternal", "offset": [ 13692, 13706 ], "op": "MLOAD", "path": "69" }, "7705": { "fn": "TokenHandler.convertToInternal", "offset": [ 13641, 13707 ], "op": "PUSH2", "path": "69", "value": "0xAA3" }, "7708": { "fn": "TokenHandler.convertToInternal", "offset": [ 13641, 13707 ], "op": "SWAP1", "path": "69" }, "7709": { "fn": "TokenHandler.convertToInternal", "offset": [ 13641, 13687 ], "op": "PUSH2", "path": "69", "value": "0xF79" }, "7712": { "fn": "TokenHandler.convertToInternal", "offset": [ 13641, 13647 ], "op": "DUP5", "path": "69" }, "7713": { "offset": [ 429, 432 ], "op": "PUSH4", "path": "60", "value": "0x5F5E100" }, "7718": { "fn": "TokenHandler.convertToInternal", "offset": [ 13641, 13651 ], "op": "PUSH2", "path": "69", "value": "0x1A5E" }, "7721": { "fn": "TokenHandler.convertToInternal", "jump": "i", "offset": [ 13641, 13687 ], "op": "JUMP", "path": "69" }, "7722": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3253, 4074 ], "op": "JUMPDEST", "path": "70" }, "7723": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3364, 3370 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "7725": { "branch": 405, "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3386, 3410 ], "op": "DUP2", "path": "70" }, "7726": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3382, 3420 ], "op": "PUSH2", "path": "70", "value": "0x1E39" }, "7729": { "branch": 405, "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3382, 3420 ], "op": "JUMPI", "path": "70" }, "7730": { "op": "POP" }, "7731": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3419, 3420 ], "op": "PUSH1", "path": "70", "statement": 171, "value": "0x0" }, "7733": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3412, 3420 ], "op": "PUSH2", "path": "70", "value": "0xEDB" }, "7736": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3412, 3420 ], "op": "JUMP", "path": "70" }, "7737": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3382, 3420 ], "op": "JUMPDEST", "path": "70" }, "7738": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3460, 3461 ], "op": "PUSH1", "path": "70", "statement": 172, "value": "0x0" }, "7740": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3438, 3457 ], "op": "DUP3", "path": "70" }, "7741": { "branch": 406, "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3438, 3461 ], "op": "SGT", "path": "70" }, "7742": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3430, 3462 ], "op": "PUSH2", "path": "70", "value": "0x1E46" }, "7745": { "branch": 406, "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3430, 3462 ], "op": "JUMPI", "path": "70" }, "7746": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3430, 3462 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "7748": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3430, 3462 ], "op": "DUP1", "path": "70" }, "7749": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3430, 3462 ], "op": "REVERT", "path": "70" }, "7750": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3430, 3462 ], "op": "JUMPDEST", "path": "70" }, "7751": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3473, 3501 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "7753": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3504, 3547 ], "op": "PUSH2", "path": "70", "value": "0x1E51" }, "7756": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3536, 3546 ], "op": "DUP5", "path": "70" }, "7757": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3504, 3535 ], "op": "PUSH2", "path": "70", "value": "0xF3B" }, "7760": { "fn": "AaveHandler.convertToScaledBalanceExternal", "jump": "i", "offset": [ 3504, 3547 ], "op": "JUMP", "path": "70" }, "7761": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3504, 3547 ], "op": "JUMPDEST", "path": "70" }, "7762": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3473, 3547 ], "op": "SWAP1", "path": "70" }, "7763": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3473, 3547 ], "op": "POP", "path": "70" }, "7764": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3609, 3621 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "7766": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3624, 3681 ], "op": "PUSH2", "path": "70", "value": "0x1E62" }, "7769": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3652, 3667 ], "op": "DUP3", "path": "70" }, "7770": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3652, 3680 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "7772": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3652, 3680 ], "op": "ADD", "path": "70" }, "7773": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3652, 3680 ], "op": "MLOAD", "path": "70" }, "7774": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3624, 3651 ], "op": "PUSH2", "path": "70", "value": "0x30F3" }, "7777": { "fn": "AaveHandler.convertToScaledBalanceExternal", "jump": "i", "offset": [ 3624, 3681 ], "op": "JUMP", "path": "70" }, "7778": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3624, 3681 ], "op": "JUMPDEST", "path": "70" }, "7779": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3609, 3681 ], "op": "SWAP1", "path": "70" }, "7780": { "op": "POP" }, "7781": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3800, 3801 ], "op": "PUSH1", "path": "70", "value": "0x2" }, "7783": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3792, 3801 ], "op": "DUP2", "path": "70" }, "7784": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3792, 3801 ], "op": "SDIV", "path": "70" }, "7785": { "offset": [ 457, 461 ], "op": "PUSH12", "path": "70", "value": "0x33B2E3C9FD0803CE8000000" }, "7798": { "op": "PUSH1", "value": "0x1" }, "7800": { "op": "PUSH1", "value": "0x1" }, "7802": { "op": "PUSH1", "value": "0xFF" }, "7804": { "op": "SHL" }, "7805": { "op": "SUB" }, "7806": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3916, 3944 ], "op": "DUP3", "path": "70", "statement": 173 }, "7807": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3916, 3944 ], "op": "SWAP1", "path": "70" }, "7808": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3916, 3944 ], "op": "SUB", "path": "70" }, "7809": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3915, 3951 ], "op": "SDIV", "path": "70" }, "7810": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3892, 3911 ], "op": "DUP6", "path": "70" }, "7811": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3892, 3951 ], "op": "SGT", "path": "70" }, "7812": { "branch": 407, "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3892, 3951 ], "op": "ISZERO", "path": "70" }, "7813": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3884, 3952 ], "op": "PUSH2", "path": "70", "value": "0x1E8D" }, "7816": { "branch": 407, "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3884, 3952 ], "op": "JUMPI", "path": "70" }, "7817": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3884, 3952 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "7819": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3884, 3952 ], "op": "DUP1", "path": "70" }, "7820": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3884, 3952 ], "op": "REVERT", "path": "70" }, "7821": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3884, 3952 ], "op": "JUMPDEST", "path": "70" }, "7822": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4062, 4067 ], "op": "DUP2", "path": "70", "statement": 174 }, "7823": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4049, 4058 ], "op": "DUP2", "path": "70" }, "7824": { "offset": [ 457, 461 ], "op": "PUSH12", "path": "70", "value": "0x33B2E3C9FD0803CE8000000" }, "7837": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4021, 4040 ], "op": "DUP8", "path": "70" }, "7838": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4021, 4046 ], "op": "MUL", "path": "70" }, "7839": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4021, 4058 ], "op": "ADD", "path": "70" }, "7840": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "DUP2", "path": "70" }, "7841": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "PUSH2", "path": "70", "value": "0x1EA6" }, "7844": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "JUMPI", "path": "70" }, "7845": { "dev": "Division by zero", "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "INVALID", "path": "70" }, "7846": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "JUMPDEST", "path": "70" }, "7847": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "SDIV", "path": "70" }, "7848": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 4020, 4067 ], "op": "SWAP7", "path": "70" }, "7849": { "fn": "AaveHandler.convertToScaledBalanceExternal", "offset": [ 3253, 4074 ], "op": "SWAP6", "path": "70" }, "7850": { "op": "POP" }, "7851": { "op": "POP" }, "7852": { "op": "POP" }, "7853": { "op": "POP" }, "7854": { "op": "POP" }, "7855": { "op": "POP" }, "7856": { "fn": "AaveHandler.convertToScaledBalanceExternal", "jump": "o", "offset": [ 3253, 4074 ], "op": "JUMP", "path": "70" }, "7857": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "JUMPDEST", "path": "67" }, "7858": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10405, 10440 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "7860": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10442, 10476 ], "op": "DUP1", "path": "67" }, "7861": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10488, 10511 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "7863": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10514, 10565 ], "op": "PUSH2", "path": "67", "value": "0x1EC7" }, "7866": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10541, 10553 ], "op": "DUP7", "path": "67" }, "7867": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10541, 10564 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "7869": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10541, 10564 ], "op": "ADD", "path": "67" }, "7870": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10541, 10564 ], "op": "MLOAD", "path": "67" }, "7871": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10514, 10565 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "7874": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10514, 10565 ], "op": "AND", "path": "67" }, "7875": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10514, 10540 ], "op": "PUSH2", "path": "67", "value": "0x10A4" }, "7878": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 10514, 10565 ], "op": "JUMP", "path": "67" }, "7879": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10514, 10565 ], "op": "JUMPDEST", "path": "67" }, "7880": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10488, 10565 ], "op": "SWAP1", "path": "67" }, "7881": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10488, 10565 ], "op": "POP", "path": "67" }, "7882": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10785, 10819 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "7884": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10910 ], "op": "PUSH2", "path": "67", "value": "0x1EE2" }, "7887": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10863, 10875 ], "op": "DUP8", "path": "67" }, "7888": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10863, 10909 ], "op": "PUSH1", "path": "67", "value": "0x80" }, "7890": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10863, 10909 ], "op": "ADD", "path": "67" }, "7891": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10863, 10909 ], "op": "MLOAD", "path": "67" }, "7892": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10844 ], "op": "DUP4", "path": "67" }, "7893": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10862 ], "op": "PUSH2", "path": "67", "value": "0xF87" }, "7896": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10862 ], "op": "SWAP1", "path": "67" }, "7897": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10910 ], "op": "SWAP2", "path": "67" }, "7898": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10910 ], "op": "SWAP1", "path": "67" }, "7899": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10910 ], "op": "PUSH4", "path": "67", "value": "0xFFFFFFFF" }, "7904": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10910 ], "op": "AND", "path": "67" }, "7905": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 10834, 10910 ], "op": "JUMP", "path": "67" }, "7906": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10834, 10910 ], "op": "JUMPDEST", "path": "67" }, "7907": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10785, 10910 ], "op": "SWAP1", "path": "67" }, "7908": { "op": "POP" }, "7909": { "branch": 469, "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10925, 10957 ], "op": "DUP1", "path": "67" }, "7910": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10921, 12631 ], "op": "PUSH2", "path": "67", "value": "0x1EF7" }, "7913": { "branch": 469, "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10921, 12631 ], "op": "JUMPI", "path": "67" }, "7914": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10981, 10982 ], "op": "PUSH1", "path": "67", "statement": 175, "value": "0x0" }, "7916": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10984, 10985 ], "op": "DUP1", "path": "67" }, "7917": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "SWAP4", "path": "67" }, "7918": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "POP", "path": "67" }, "7919": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "SWAP4", "path": "67" }, "7920": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "POP", "path": "67" }, "7921": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "POP", "path": "67" }, "7922": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "POP", "path": "67" }, "7923": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "PUSH2", "path": "67", "value": "0x1F5F" }, "7926": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10973, 10986 ], "op": "JUMP", "path": "67" }, "7927": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10921, 12631 ], "op": "JUMPDEST", "path": "67" }, "7928": { "branch": 470, "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11025 ], "op": "DUP5", "path": "67" }, "7929": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11060 ], "op": "DUP1", "path": "67" }, "7930": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11060 ], "op": "ISZERO", "path": "67" }, "7931": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11060 ], "op": "PUSH2", "path": "67", "value": "0x1F04" }, "7934": { "branch": 470, "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11060 ], "op": "JUMPI", "path": "67" }, "7935": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11060 ], "op": "POP", "path": "67" }, "7936": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11059, 11060 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "7938": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11029, 11056 ], "op": "DUP2", "path": "67" }, "7939": { "branch": 471, "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11029, 11060 ], "op": "SLT", "path": "67" }, "7940": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11007, 11060 ], "op": "JUMPDEST", "path": "67" }, "7941": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "ISZERO", "path": "67" }, "7942": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "PUSH2", "path": "67", "value": "0x1F39" }, "7945": { "branch": 471, "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "JUMPI", "path": "67" }, "7946": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11694, 11717 ], "op": "DUP7", "path": "67", "statement": 176 }, "7947": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11694, 11717 ], "op": "MLOAD", "path": "67" }, "7948": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "PUSH2", "path": "67", "value": "0x1F26" }, "7951": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "SWAP1", "path": "67" }, "7952": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "7955": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "AND", "path": "67" }, "7956": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11735, 11742 ], "op": "DUP8", "path": "67" }, "7957": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11814, 11847 ], "op": "PUSH2", "path": "67", "value": "0x1F1D" }, "7960": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11814, 11841 ], "op": "DUP5", "path": "67" }, "7961": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11814, 11845 ], "op": "PUSH2", "path": "67", "value": "0xEE1" }, "7964": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 11814, 11847 ], "op": "JUMP", "path": "67" }, "7965": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11814, 11847 ], "op": "JUMPDEST", "path": "67" }, "7966": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11669 ], "op": "DUP6", "path": "67" }, "7967": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11669 ], "op": "SWAP3", "path": "67" }, "7968": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "SWAP2", "path": "67" }, "7969": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "SWAP1", "path": "67" }, "7970": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11676 ], "op": "PUSH2", "path": "67", "value": "0x317E" }, "7973": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 11659, 11862 ], "op": "JUMP", "path": "67" }, "7974": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11659, 11862 ], "op": "JUMPDEST", "path": "67" }, "7975": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11628, 11862 ], "op": "SWAP4", "path": "67" }, "7976": { "op": "POP" }, "7977": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12068, 12125 ], "op": "PUSH2", "path": "67", "statement": 177, "value": "0x1F32" }, "7980": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12068, 12078 ], "op": "DUP3", "path": "67" }, "7981": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12097, 12124 ], "op": "DUP3", "path": "67" }, "7982": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12068, 12096 ], "op": "PUSH2", "path": "67", "value": "0x1DFA" }, "7985": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 12068, 12125 ], "op": "JUMP", "path": "67" }, "7986": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12068, 12125 ], "op": "JUMPDEST", "path": "67" }, "7987": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12038, 12125 ], "op": "SWAP3", "path": "67" }, "7988": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12038, 12125 ], "op": "POP", "path": "67" }, "7989": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "PUSH2", "path": "67", "value": "0x1F5C" }, "7992": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "JUMP", "path": "67" }, "7993": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "JUMPDEST", "path": "67" }, "7994": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12412, 12435 ], "op": "DUP7", "path": "67", "statement": 178 }, "7995": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12412, 12435 ], "op": "MLOAD", "path": "67" }, "7996": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12465 ], "op": "PUSH2", "path": "67", "value": "0x1F4D" }, "7999": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12465 ], "op": "SWAP1", "path": "67" }, "8000": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12393 ], "op": "DUP4", "path": "67" }, "8001": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12393 ], "op": "SWAP1", "path": "67" }, "8002": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12403, 12410 ], "op": "DUP9", "path": "67" }, "8003": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12403, 12410 ], "op": "SWAP1", "path": "67" }, "8004": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12465 ], "op": "PUSH2", "path": "67", "value": "0xFFFF" }, "8007": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12465 ], "op": "AND", "path": "67" }, "8008": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12437, 12464 ], "op": "DUP5", "path": "67" }, "8009": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12402 ], "op": "PUSH2", "path": "67", "value": "0x1C4E" }, "8012": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 12383, 12465 ], "op": "JUMP", "path": "67" }, "8013": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12383, 12465 ], "op": "JUMPDEST", "path": "67" }, "8014": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12352, 12465 ], "op": "SWAP4", "path": "67" }, "8015": { "op": "POP" }, "8016": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12562, 12620 ], "op": "PUSH2", "path": "67", "statement": 179, "value": "0x1F59" }, "8019": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12562, 12572 ], "op": "DUP3", "path": "67" }, "8020": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12352, 12465 ], "op": "DUP6", "path": "67" }, "8021": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12562, 12590 ], "op": "PUSH2", "path": "67", "value": "0x1DFA" }, "8024": { "fn": "BalanceHandler._finalizeTransfers", "jump": "i", "offset": [ 12562, 12620 ], "op": "JUMP", "path": "67" }, "8025": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12562, 12620 ], "op": "JUMPDEST", "path": "67" }, "8026": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12532, 12620 ], "op": "SWAP3", "path": "67" }, "8027": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 12532, 12620 ], "op": "POP", "path": "67" }, "8028": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 11003, 12631 ], "op": "JUMPDEST", "path": "67" }, "8029": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "POP", "path": "67" }, "8030": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "POP", "path": "67" }, "8031": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "JUMPDEST", "path": "67" }, "8032": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "SWAP4", "path": "67" }, "8033": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "POP", "path": "67" }, "8034": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "SWAP4", "path": "67" }, "8035": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "SWAP2", "path": "67" }, "8036": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "POP", "path": "67" }, "8037": { "fn": "BalanceHandler._finalizeTransfers", "offset": [ 10254, 12637 ], "op": "POP", "path": "67" }, "8038": { "fn": "BalanceHandler._finalizeTransfers", "jump": "o", "offset": [ 10254, 12637 ], "op": "JUMP", "path": "67" }, "8039": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "JUMPDEST", "path": "68" }, "8040": { "fn": "Incentives.claimIncentives", "offset": [ 4603, 4626 ], "op": "DUP3", "path": "68" }, "8041": { "fn": "Incentives.claimIncentives", "offset": [ 4603, 4626 ], "op": "MLOAD", "path": "68" }, "8042": { "fn": "Incentives.claimIncentives", "offset": [ 4470, 4495 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8044": { "fn": "Incentives.claimIncentives", "offset": [ 4470, 4495 ], "op": "SWAP1", "path": "68" }, "8045": { "fn": "Incentives.claimIncentives", "offset": [ 4527, 4542 ], "op": "TIMESTAMP", "path": "68" }, "8046": { "fn": "Incentives.claimIncentives", "offset": [ 4527, 4542 ], "op": "SWAP1", "path": "68" }, "8047": { "fn": "Incentives.claimIncentives", "offset": [ 4470, 4495 ], "op": "DUP3", "path": "68" }, "8048": { "fn": "Incentives.claimIncentives", "offset": [ 4470, 4495 ], "op": "SWAP1", "path": "68" }, "8049": { "fn": "Incentives.claimIncentives", "offset": [ 4575, 4627 ], "op": "PUSH2", "path": "68", "value": "0x1F7D" }, "8052": { "fn": "Incentives.claimIncentives", "offset": [ 4575, 4627 ], "op": "SWAP1", "path": "68" }, "8053": { "fn": "Incentives.claimIncentives", "offset": [ 4575, 4627 ], "op": "PUSH2", "path": "68", "value": "0xFFFF" }, "8056": { "fn": "Incentives.claimIncentives", "offset": [ 4575, 4627 ], "op": "AND", "path": "68" }, "8057": { "fn": "Incentives.claimIncentives", "offset": [ 4575, 4602 ], "op": "PUSH2", "path": "68", "value": "0x3214" }, "8060": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 4575, 4627 ], "op": "JUMP", "path": "68" }, "8061": { "fn": "Incentives.claimIncentives", "offset": [ 4575, 4627 ], "op": "JUMPDEST", "path": "68" }, "8062": { "fn": "Incentives.claimIncentives", "offset": [ 4552, 4627 ], "op": "SWAP1", "path": "68" }, "8063": { "fn": "Incentives.claimIncentives", "offset": [ 4552, 4627 ], "op": "POP", "path": "68" }, "8064": { "fn": "Incentives.claimIncentives", "offset": [ 4795, 4827 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8066": { "fn": "Incentives.claimIncentives", "offset": [ 4830, 4968 ], "op": "PUSH2", "path": "68", "value": "0x1F90" }, "8069": { "fn": "Incentives.claimIncentives", "offset": [ 4875, 4887 ], "op": "DUP3", "path": "68" }, "8070": { "fn": "Incentives.claimIncentives", "offset": [ 4901, 4913 ], "op": "DUP9", "path": "68" }, "8071": { "fn": "Incentives.claimIncentives", "offset": [ 4901, 4935 ], "op": "PUSH1", "path": "68", "value": "0xC0" }, "8073": { "fn": "Incentives.claimIncentives", "offset": [ 4901, 4935 ], "op": "ADD", "path": "68" }, "8074": { "fn": "Incentives.claimIncentives", "offset": [ 4901, 4935 ], "op": "MLOAD", "path": "68" }, "8075": { "fn": "Incentives.claimIncentives", "offset": [ 4949, 4958 ], "op": "DUP6", "path": "68" }, "8076": { "fn": "Incentives.claimIncentives", "offset": [ 4830, 4861 ], "op": "PUSH2", "path": "68", "value": "0x323A" }, "8079": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 4830, 4968 ], "op": "JUMP", "path": "68" }, "8080": { "fn": "Incentives.claimIncentives", "offset": [ 4830, 4968 ], "op": "JUMPDEST", "path": "68" }, "8081": { "fn": "Incentives.claimIncentives", "offset": [ 4795, 4968 ], "op": "SWAP1", "path": "68" }, "8082": { "fn": "Incentives.claimIncentives", "offset": [ 4795, 4968 ], "op": "POP", "path": "68" }, "8083": { "fn": "Incentives.claimIncentives", "offset": [ 4999, 5157 ], "op": "PUSH2", "path": "68", "statement": 180, "value": "0x1F9E" }, "8086": { "fn": "Incentives.claimIncentives", "offset": [ 5039, 5051 ], "op": "DUP8", "path": "68" }, "8087": { "fn": "Incentives.claimIncentives", "offset": [ 5065, 5077 ], "op": "DUP4", "path": "68" }, "8088": { "fn": "Incentives.claimIncentives", "offset": [ 5091, 5115 ], "op": "DUP4", "path": "68" }, "8089": { "fn": "Incentives.claimIncentives", "offset": [ 5129, 5147 ], "op": "DUP9", "path": "68" }, "8090": { "fn": "Incentives.claimIncentives", "offset": [ 4999, 5025 ], "op": "PUSH2", "path": "68", "value": "0x331D" }, "8093": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 4999, 5157 ], "op": "JUMP", "path": "68" }, "8094": { "fn": "Incentives.claimIncentives", "offset": [ 4999, 5157 ], "op": "JUMPDEST", "path": "68" }, "8095": { "fn": "Incentives.claimIncentives", "offset": [ 4979, 5157 ], "op": "SWAP4", "path": "68" }, "8096": { "fn": "Incentives.claimIncentives", "offset": [ 4979, 5157 ], "op": "POP", "path": "68" }, "8097": { "fn": "Incentives.claimIncentives", "offset": [ 5234, 5252 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8099": { "fn": "Incentives.claimIncentives", "offset": [ 5255, 5303 ], "op": "PUSH2", "path": "68", "value": "0x1FAB" }, "8102": { "fn": "Incentives.claimIncentives", "offset": [ 5290, 5302 ], "op": "DUP4", "path": "68" }, "8103": { "fn": "Incentives.claimIncentives", "offset": [ 5255, 5289 ], "op": "PUSH2", "path": "68", "value": "0x344A" }, "8106": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 5255, 5303 ], "op": "JUMP", "path": "68" }, "8107": { "fn": "Incentives.claimIncentives", "offset": [ 5255, 5303 ], "op": "JUMPDEST", "path": "68" }, "8108": { "fn": "Incentives.claimIncentives", "offset": [ 5234, 5303 ], "op": "SWAP1", "path": "68" }, "8109": { "op": "POP" }, "8110": { "op": "PUSH1", "value": "0x1" }, "8112": { "op": "PUSH1", "value": "0x1" }, "8114": { "op": "PUSH1", "value": "0xA0" }, "8116": { "op": "SHL" }, "8117": { "op": "SUB" }, "8118": { "fn": "Incentives.claimIncentives", "offset": [ 5317, 5348 ], "op": "DUP2", "path": "68" }, "8119": { "fn": "Incentives.claimIncentives", "offset": [ 5317, 5348 ], "op": "AND", "path": "68" }, "8120": { "branch": 491, "fn": "Incentives.claimIncentives", "offset": [ 5317, 5348 ], "op": "ISZERO", "path": "68" }, "8121": { "fn": "Incentives.claimIncentives", "offset": [ 5313, 6068 ], "op": "PUSH2", "path": "68", "value": "0x2033" }, "8124": { "branch": 491, "fn": "Incentives.claimIncentives", "offset": [ 5313, 6068 ], "op": "JUMPI", "path": "68" }, "8125": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 5372 ], "op": "DUP1", "path": "68", "statement": 181 }, "8126": { "op": "PUSH1", "value": "0x1" }, "8128": { "op": "PUSH1", "value": "0x1" }, "8130": { "op": "PUSH1", "value": "0xA0" }, "8132": { "op": "SHL" }, "8133": { "op": "SUB" }, "8134": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 5385 ], "op": "AND", "path": "68" }, "8135": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 5385 ], "op": "PUSH4", "path": "68", "value": "0x9FC27B92" }, "8140": { "fn": "Incentives.claimIncentives", "offset": [ 5403, 5410 ], "op": "DUP9", "path": "68" }, "8141": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5662 ], "op": "PUSH2", "path": "68", "value": "0x1FD9" }, "8144": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5633 ], "op": "DUP12", "path": "68" }, "8145": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5653 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "8147": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5653 ], "op": "ADD", "path": "68" }, "8148": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5653 ], "op": "MLOAD", "path": "68" }, "8149": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5660 ], "op": "PUSH2", "path": "68", "value": "0x1CF6" }, "8152": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 5621, 5662 ], "op": "JUMP", "path": "68" }, "8153": { "fn": "Incentives.claimIncentives", "offset": [ 5621, 5662 ], "op": "JUMPDEST", "path": "68" }, "8154": { "fn": "Incentives.claimIncentives", "offset": [ 5680, 5698 ], "op": "DUP10", "path": "68" }, "8155": { "fn": "Incentives.claimIncentives", "offset": [ 5974, 5986 ], "op": "DUP13", "path": "68" }, "8156": { "fn": "Incentives.claimIncentives", "offset": [ 5974, 6008 ], "op": "PUSH1", "path": "68", "value": "0xC0" }, "8158": { "fn": "Incentives.claimIncentives", "offset": [ 5974, 6008 ], "op": "ADD", "path": "68" }, "8159": { "fn": "Incentives.claimIncentives", "offset": [ 5974, 6008 ], "op": "MLOAD", "path": "68" }, "8160": { "fn": "Incentives.claimIncentives", "offset": [ 6026, 6043 ], "op": "DUP11", "path": "68" }, "8161": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "8163": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "MLOAD", "path": "68" }, "8164": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP7", "path": "68" }, "8165": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH4", "path": "68", "value": "0xFFFFFFFF" }, "8170": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "AND", "path": "68" }, "8171": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0xE0" }, "8173": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SHL", "path": "68" }, "8174": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP2", "path": "68" }, "8175": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "MSTORE", "path": "68" }, "8176": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x4" }, "8178": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "ADD", "path": "68" }, "8179": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH2", "path": "68", "value": "0x2000" }, "8182": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SWAP6", "path": "68" }, "8183": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SWAP5", "path": "68" }, "8184": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SWAP4", "path": "68" }, "8185": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SWAP3", "path": "68" }, "8186": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SWAP2", "path": "68" }, "8187": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SWAP1", "path": "68" }, "8188": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH2", "path": "68", "value": "0x4857" }, "8191": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 5364, 6057 ], "op": "JUMP", "path": "68" }, "8192": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "JUMPDEST", "path": "68" }, "8193": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8195": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "8197": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "MLOAD", "path": "68" }, "8198": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP1", "path": "68" }, "8199": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP4", "path": "68" }, "8200": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "SUB", "path": "68" }, "8201": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP2", "path": "68" }, "8202": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8204": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP8", "path": "68" }, "8205": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP1", "path": "68" }, "8206": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "EXTCODESIZE", "path": "68" }, "8207": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "ISZERO", "path": "68" }, "8208": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP1", "path": "68" }, "8209": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "ISZERO", "path": "68" }, "8210": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH2", "path": "68", "value": "0x201A" }, "8213": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "JUMPI", "path": "68" }, "8214": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8216": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP1", "path": "68" }, "8217": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "REVERT", "path": "68" }, "8218": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "JUMPDEST", "path": "68" }, "8219": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "POP", "path": "68" }, "8220": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "GAS", "path": "68" }, "8221": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "CALL", "path": "68" }, "8222": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "ISZERO", "path": "68" }, "8223": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP1", "path": "68" }, "8224": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "ISZERO", "path": "68" }, "8225": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH2", "path": "68", "value": "0x202E" }, "8228": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "JUMPI", "path": "68" }, "8229": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "RETURNDATASIZE", "path": "68" }, "8230": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8232": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "DUP1", "path": "68" }, "8233": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "RETURNDATACOPY", "path": "68" }, "8234": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "RETURNDATASIZE", "path": "68" }, "8235": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "8237": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "REVERT", "path": "68" }, "8238": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "JUMPDEST", "path": "68" }, "8239": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "POP", "path": "68" }, "8240": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "POP", "path": "68" }, "8241": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "POP", "path": "68" }, "8242": { "fn": "Incentives.claimIncentives", "offset": [ 5364, 6057 ], "op": "POP", "path": "68" }, "8243": { "fn": "Incentives.claimIncentives", "offset": [ 5313, 6068 ], "op": "JUMPDEST", "path": "68" }, "8244": { "fn": "Incentives.claimIncentives", "offset": [ 6082, 6103 ], "op": "DUP5", "path": "68" }, "8245": { "branch": 492, "fn": "Incentives.claimIncentives", "offset": [ 6082, 6103 ], "op": "ISZERO", "path": "68" }, "8246": { "fn": "Incentives.claimIncentives", "offset": [ 6078, 6163 ], "op": "PUSH2", "path": "68", "value": "0x2043" }, "8249": { "branch": 492, "fn": "Incentives.claimIncentives", "offset": [ 6078, 6163 ], "op": "JUMPI", "path": "68" }, "8250": { "fn": "Incentives.claimIncentives", "offset": [ 6105, 6163 ], "op": "PUSH2", "path": "68", "statement": 182, "value": "0x2043" }, "8253": { "fn": "Incentives.claimIncentives", "offset": [ 6136, 6143 ], "op": "DUP8", "path": "68" }, "8254": { "fn": "Incentives.claimIncentives", "offset": [ 6145, 6162 ], "op": "DUP7", "path": "68" }, "8255": { "fn": "Incentives.claimIncentives", "offset": [ 6105, 6135 ], "op": "PUSH2", "path": "68", "value": "0x34BC" }, "8258": { "fn": "Incentives.claimIncentives", "jump": "i", "offset": [ 6105, 6163 ], "op": "JUMP", "path": "68" }, "8259": { "fn": "Incentives.claimIncentives", "offset": [ 6105, 6163 ], "op": "JUMPDEST", "path": "68" }, "8260": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8261": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8262": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8263": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8264": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "SWAP4", "path": "68" }, "8265": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "SWAP3", "path": "68" }, "8266": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8267": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8268": { "fn": "Incentives.claimIncentives", "offset": [ 4318, 6170 ], "op": "POP", "path": "68" }, "8269": { "fn": "Incentives.claimIncentives", "jump": "o", "offset": [ 4318, 6170 ], "op": "JUMP", "path": "68" }, "8270": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19219, 20628 ], "op": "JUMPDEST", "path": "67" }, "8271": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19451, 19519 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "8273": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19522, 19552 ], "op": "PUSH2", "path": "67", "value": "0x2058" }, "8276": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19522, 19550 ], "op": "PUSH2", "path": "67", "value": "0x2B98" }, "8279": { "fn": "BalanceHandler._setBalanceStorage", "jump": "i", "offset": [ 19522, 19552 ], "op": "JUMP", "path": "67" }, "8280": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19522, 19552 ], "op": "JUMPDEST", "path": "67" }, "8281": { "op": "PUSH1", "value": "0x1" }, "8283": { "op": "PUSH1", "value": "0x1" }, "8285": { "op": "PUSH1", "value": "0xA0" }, "8287": { "op": "SHL" }, "8288": { "op": "SUB" }, "8289": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "DUP9", "path": "67" }, "8290": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "AND", "path": "67" }, "8291": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19562, 19599 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "8293": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "SWAP1", "path": "67" }, "8294": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "DUP2", "path": "67" }, "8295": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "MSTORE", "path": "67" }, "8296": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "PUSH1", "path": "67", "value": "0x20" }, "8298": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "DUP3", "path": "67" }, "8299": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "DUP2", "path": "67" }, "8300": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "MSTORE", "path": "67" }, "8301": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "PUSH1", "path": "67", "value": "0x40" }, "8303": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "DUP1", "path": "67" }, "8304": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "DUP4", "path": "67" }, "8305": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19616 ], "op": "KECCAK256", "path": "67" }, "8306": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "DUP11", "path": "67" }, "8307": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "DUP5", "path": "67" }, "8308": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "MSTORE", "path": "67" }, "8309": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "SWAP1", "path": "67" }, "8310": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "SWAP2", "path": "67" }, "8311": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "MSTORE", "path": "67" }, "8312": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "SWAP1", "path": "67" }, "8313": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19602, 19628 ], "op": "KECCAK256", "path": "67" }, "8314": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19451, 19552 ], "op": "SWAP1", "path": "67" }, "8315": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19451, 19552 ], "op": "SWAP2", "path": "67" }, "8316": { "op": "POP" }, "8317": { "op": "PUSH11", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "8329": { "op": "NOT" }, "8330": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19677 ], "op": "DUP7", "path": "67", "statement": 183 }, "8331": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19677 ], "op": "SLT", "path": "67" }, "8332": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19677 ], "op": "DUP1", "path": "67" }, "8333": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19677 ], "op": "ISZERO", "path": "67" }, "8334": { "branch": 472, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19677 ], "op": "SWAP1", "path": "67" }, "8335": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19711 ], "op": "PUSH2", "path": "67", "value": "0x20A3" }, "8338": { "branch": 472, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19711 ], "op": "JUMPI", "path": "67" }, "8339": { "op": "POP" }, "8340": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19696, 19711 ], "op": "PUSH11", "path": "67", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "8352": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19681, 19711 ], "op": "DUP7", "path": "67" }, "8353": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19681, 19711 ], "op": "SGT", "path": "67" }, "8354": { "branch": 473, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19681, 19711 ], "op": "ISZERO", "path": "67" }, "8355": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19647, 19711 ], "op": "JUMPDEST", "path": "67" }, "8356": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19639, 19712 ], "op": "PUSH2", "path": "67", "value": "0x20AC" }, "8359": { "branch": 473, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19639, 19712 ], "op": "JUMPI", "path": "67" }, "8360": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19639, 19712 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "8362": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19639, 19712 ], "op": "DUP1", "path": "67" }, "8363": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19639, 19712 ], "op": "REVERT", "path": "67" }, "8364": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19639, 19712 ], "op": "JUMPDEST", "path": "67" }, "8365": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19868, 19869 ], "op": "PUSH1", "path": "67", "statement": 184, "value": "0x0" }, "8367": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19864 ], "op": "DUP6", "path": "67" }, "8368": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19869 ], "op": "SLT", "path": "67" }, "8369": { "branch": 474, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19869 ], "op": "ISZERO", "path": "67" }, "8370": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19906 ], "op": "DUP1", "path": "67" }, "8371": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19906 ], "op": "ISZERO", "path": "67" }, "8372": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19906 ], "op": "PUSH2", "path": "67", "value": "0x20C7" }, "8375": { "branch": 474, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19906 ], "op": "JUMPI", "path": "67" }, "8376": { "op": "POP" }, "8377": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19890, 19906 ], "op": "PUSH10", "path": "67", "value": "0xFFFFFFFFFFFFFFFFFFFF" }, "8388": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19873, 19906 ], "op": "DUP6", "path": "67" }, "8389": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19873, 19906 ], "op": "SGT", "path": "67" }, "8390": { "branch": 475, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19873, 19906 ], "op": "ISZERO", "path": "67" }, "8391": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19851, 19906 ], "op": "JUMPDEST", "path": "67" }, "8392": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19843, 19907 ], "op": "PUSH2", "path": "67", "value": "0x20D0" }, "8395": { "branch": 475, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19843, 19907 ], "op": "JUMPI", "path": "67" }, "8396": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19843, 19907 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "8398": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19843, 19907 ], "op": "DUP1", "path": "67" }, "8399": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19843, 19907 ], "op": "REVERT", "path": "67" }, "8400": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 19843, 19907 ], "op": "JUMPDEST", "path": "67" }, "8401": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20044, 20062 ], "op": "DUP4", "path": "67", "statement": 185 }, "8402": { "branch": 476, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20044, 20062 ], "op": "ISZERO", "path": "67" }, "8403": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20036, 20063 ], "op": "PUSH2", "path": "67", "value": "0x20DB" }, "8406": { "branch": 476, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20036, 20063 ], "op": "JUMPI", "path": "67" }, "8407": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20036, 20063 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "8409": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20036, 20063 ], "op": "DUP1", "path": "67" }, "8410": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20036, 20063 ], "op": "REVERT", "path": "67" }, "8411": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20036, 20063 ], "op": "JUMPDEST", "path": "67" }, "8412": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20302, 20318 ], "op": "PUSH7", "path": "67", "statement": 186, "value": "0xFFFFFFFFFFFFFF" }, "8420": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20278, 20318 ], "op": "DUP4", "path": "67" }, "8421": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20278, 20318 ], "op": "GT", "path": "67" }, "8422": { "branch": 477, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20278, 20318 ], "op": "ISZERO", "path": "67" }, "8423": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20270, 20319 ], "op": "PUSH2", "path": "67", "value": "0x20EF" }, "8426": { "branch": 477, "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20270, 20319 ], "op": "JUMPI", "path": "67" }, "8427": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20270, 20319 ], "op": "PUSH1", "path": "67", "value": "0x0" }, "8429": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20270, 20319 ], "op": "DUP1", "path": "67" }, "8430": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20270, 20319 ], "op": "REVERT", "path": "67" }, "8431": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20270, 20319 ], "op": "JUMPDEST", "path": "67" }, "8432": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "DUP1", "path": "67", "statement": 187 }, "8433": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SLOAD", "path": "67" }, "8434": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "PUSH7", "path": "67", "statement": 188, "value": "0xFFFFFFFFFFFFFF" }, "8442": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP1", "path": "67" }, "8443": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP4", "path": "67" }, "8444": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "AND", "path": "67" }, "8445": { "op": "PUSH1", "value": "0x1" }, "8447": { "op": "PUSH1", "value": "0x70" }, "8449": { "op": "SHL" }, "8450": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "MUL", "path": "67" }, "8451": { "op": "PUSH7", "value": "0xFFFFFFFFFFFFFF" }, "8459": { "op": "PUSH1", "value": "0x70" }, "8461": { "op": "SHL" }, "8462": { "op": "NOT" }, "8463": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20464 ], "op": "PUSH1", "path": "67", "statement": 189, "value": "0xA" }, "8465": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP8", "path": "67", "statement": 190 }, "8466": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP1", "path": "67" }, "8467": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP8", "path": "67" }, "8468": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SIGNEXTEND", "path": "67" }, "8469": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "PUSH11", "path": "67", "value": "0xFFFFFFFFFFFFFFFFFFFFFF" }, "8481": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "AND", "path": "67" }, "8482": { "op": "PUSH1", "value": "0x1" }, "8484": { "op": "PUSH1", "value": "0xA8" }, "8486": { "op": "SHL" }, "8487": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "MUL", "path": "67" }, "8488": { "op": "PUSH1", "value": "0x1" }, "8490": { "op": "PUSH1", "value": "0x1" }, "8492": { "op": "PUSH1", "value": "0xA8" }, "8494": { "op": "SHL" }, "8495": { "op": "SUB" }, "8496": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "PUSH4", "path": "67", "value": "0xFFFFFFFF" }, "8501": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP1", "path": "67" }, "8502": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP7", "path": "67" }, "8503": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "AND", "path": "67" }, "8504": { "op": "PUSH1", "value": "0x1" }, "8506": { "op": "PUSH1", "value": "0x50" }, "8508": { "op": "SHL" }, "8509": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "MUL", "path": "67" }, "8510": { "op": "PUSH4", "value": "0xFFFFFFFF" }, "8515": { "op": "PUSH1", "value": "0x50" }, "8517": { "op": "SHL" }, "8518": { "op": "NOT" }, "8519": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "PUSH10", "path": "67", "value": "0xFFFFFFFFFFFFFFFFFFFF" }, "8530": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP1", "path": "67" }, "8531": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP9", "path": "67" }, "8532": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "AND", "path": "67" }, "8533": { "op": "PUSH10", "value": "0xFFFFFFFFFFFFFFFFFFFF" }, "8544": { "op": "NOT" }, "8545": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP1", "path": "67" }, "8546": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP7", "path": "67" }, "8547": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "AND", "path": "67" }, "8548": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP6", "path": "67" }, "8549": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP1", "path": "67" }, "8550": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "SWAP6", "path": "67" }, "8551": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20374, 20426 ], "op": "OR", "path": "67" }, "8552": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP7", "path": "67" }, "8553": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP1", "path": "67" }, "8554": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP7", "path": "67" }, "8555": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "AND", "path": "67" }, "8556": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP4", "path": "67" }, "8557": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP1", "path": "67" }, "8558": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "SWAP4", "path": "67" }, "8559": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20436, 20488 ], "op": "OR", "path": "67" }, "8560": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP4", "path": "67" }, "8561": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP1", "path": "67" }, "8562": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP4", "path": "67" }, "8563": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "AND", "path": "67" }, "8564": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP4", "path": "67" }, "8565": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP1", "path": "67" }, "8566": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "SWAP4", "path": "67" }, "8567": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20498, 20545 ], "op": "OR", "path": "67" }, "8568": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP4", "path": "67" }, "8569": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP1", "path": "67" }, "8570": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP4", "path": "67" }, "8571": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "AND", "path": "67" }, "8572": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP3", "path": "67" }, "8573": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP1", "path": "67" }, "8574": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP3", "path": "67" }, "8575": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "OR", "path": "67" }, "8576": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP1", "path": "67" }, "8577": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SWAP2", "path": "67" }, "8578": { "fn": "BalanceHandler._setBalanceStorage", "offset": [ 20555, 20621 ], "op": "SSTORE", "path": "67" }, "8579": { "op": "POP" }, "8580": { "op": "POP" }, "8581": { "op": "POP" }, "8582": { "fn": "BalanceHandler._setBalanceStorage", "jump": "o", "offset": [ 19219, 20628 ], "op": "JUMP", "path": "67" }, "8583": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "JUMPDEST", "path": "66" }, "8584": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5435, 5445 ], "op": "DUP3", "path": "66", "statement": 191 }, "8585": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5432 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "8587": { "branch": 421, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5445 ], "op": "LT", "path": "66" }, "8588": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "DUP1", "path": "66" }, "8589": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "ISZERO", "path": "66" }, "8590": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "PUSH2", "path": "66", "value": "0x2199" }, "8593": { "branch": 421, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "JUMPI", "path": "66" }, "8594": { "op": "POP" }, "8595": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "8598": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5449, 5487 ], "op": "DUP4", "path": "66" }, "8599": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5449, 5487 ], "op": "GT", "path": "66" }, "8600": { "branch": 422, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5449, 5487 ], "op": "ISZERO", "path": "66" }, "8601": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "JUMPDEST", "path": "66" }, "8602": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "PUSH2", "path": "66", "value": "0x21A2" }, "8605": { "branch": 422, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "JUMPI", "path": "66" }, "8606": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "8608": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "DUP1", "path": "66" }, "8609": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "REVERT", "path": "66" }, "8610": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "JUMPDEST", "path": "66" }, "8611": { "branch": 423, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5715 ], "op": "DUP2", "path": "66" }, "8612": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "DUP1", "path": "66" }, "8613": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "ISZERO", "path": "66" }, "8614": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "PUSH2", "path": "66", "value": "0x21B6" }, "8617": { "branch": 423, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "JUMPI", "path": "66" }, "8618": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "POP", "path": "66" }, "8619": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5754, 5764 ], "op": "DUP3", "path": "66" }, "8620": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5733 ], "op": "DUP5", "path": "66" }, "8621": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5750 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "8623": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5750 ], "op": "ADD", "path": "66" }, "8624": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5750 ], "op": "MLOAD", "path": "66" }, "8625": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5764 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "8628": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5764 ], "op": "AND", "path": "66" }, "8629": { "branch": 424, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5764 ], "op": "EQ", "path": "66" }, "8630": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "JUMPDEST", "path": "66" }, "8631": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "ISZERO", "path": "66" }, "8632": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "PUSH2", "path": "66", "value": "0x21C0" }, "8635": { "branch": 424, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "JUMPI", "path": "66" }, "8636": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5766, 5773 ], "op": "PUSH2", "path": "66", "statement": 192, "value": "0x16D2" }, "8639": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5766, 5773 ], "op": "JUMP", "path": "66" }, "8640": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "JUMPDEST", "path": "66" }, "8641": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "8643": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "DUP5", "path": "66" }, "8644": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "ADD", "path": "66" }, "8645": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "MLOAD", "path": "66" }, "8646": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5783, 5797 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "8648": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5783, 5797 ], "op": "SWAP1", "path": "66" }, "8649": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5783, 5797 ], "op": "DUP2", "path": "66" }, "8650": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMPDEST", "path": "66" }, "8651": { "op": "PUSH1", "value": "0x1" }, "8653": { "op": "PUSH1", "value": "0x1" }, "8655": { "op": "PUSH1", "value": "0x70" }, "8657": { "op": "SHL" }, "8658": { "op": "SUB" }, "8659": { "op": "NOT" }, "8660": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6691, 6705 ], "op": "DUP3", "path": "66" }, "8661": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6691, 6705 ], "op": "AND", "path": "66" }, "8662": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6691, 6705 ], "op": "ISZERO", "path": "66" }, "8663": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "PUSH2", "path": "66", "value": "0x233B" }, "8666": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMPI", "path": "66" }, "8667": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6767, 6789 ], "op": "PUSH1", "path": "66", "value": "0xF0" }, "8669": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "DUP3", "path": "66" }, "8670": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "SWAP1", "path": "66" }, "8671": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "SHR", "path": "66" }, "8672": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "8675": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "AND", "path": "66" }, "8676": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6894 ], "op": "DUP7", "path": "66" }, "8677": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6894 ], "op": "DUP2", "path": "66" }, "8678": { "branch": 425, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6894 ], "op": "EQ", "path": "66" }, "8679": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "DUP1", "path": "66" }, "8680": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "ISZERO", "path": "66" }, "8681": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "PUSH2", "path": "66", "value": "0x21EF" }, "8684": { "branch": 425, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "JUMPI", "path": "66" }, "8685": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "POP", "path": "66" }, "8686": { "branch": 426, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6898, 6906 ], "op": "DUP6", "path": "66" }, "8687": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "JUMPDEST", "path": "66" }, "8688": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "ISZERO", "path": "66" }, "8689": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "PUSH2", "path": "66", "value": "0x2227" }, "8692": { "branch": 426, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "JUMPI", "path": "66" }, "8693": { "op": "POP" }, "8694": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "PUSH1", "path": "66", "statement": 193, "value": "0x80" }, "8696": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "DUP8", "path": "66" }, "8697": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "ADD", "path": "66" }, "8698": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "DUP1", "path": "66" }, "8699": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "MLOAD", "path": "66" }, "8700": { "op": "PUSH1", "value": "0x1" }, "8702": { "op": "PUSH1", "value": "0x1" }, "8704": { "op": "PUSH1", "value": "0xF0" }, "8706": { "op": "SHL" }, "8707": { "op": "SUB" }, "8708": { "op": "NOT" }, "8709": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7088 ], "op": "DUP7", "path": "66" }, "8710": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7088 ], "op": "AND", "path": "66" }, "8711": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7102, 7104 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "8713": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7093, 7104 ], "op": "SWAP1", "path": "66" }, "8714": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7093, 7104 ], "op": "SWAP4", "path": "66" }, "8715": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7093, 7104 ], "op": "MUL", "path": "66" }, "8716": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SWAP3", "path": "66" }, "8717": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SWAP1", "path": "66" }, "8718": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SWAP3", "path": "66" }, "8719": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SHR", "path": "66" }, "8720": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "SWAP2", "path": "66" }, "8721": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "SWAP1", "path": "66" }, "8722": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "SWAP2", "path": "66" }, "8723": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "OR", "path": "66" }, "8724": { "op": "PUSH1", "value": "0x1" }, "8726": { "op": "PUSH1", "value": "0x1" }, "8728": { "op": "PUSH1", "value": "0x70" }, "8730": { "op": "SHL" }, "8731": { "op": "SUB" }, "8732": { "op": "NOT" }, "8733": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6965, 7106 ], "op": "AND", "path": "66" }, "8734": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6965, 7106 ], "op": "SWAP1", "path": "66" }, "8735": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6965, 7106 ], "op": "MSTORE", "path": "66" }, "8736": { "op": "POP" }, "8737": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7124, 7131 ], "op": "PUSH2", "path": "66", "statement": 194, "value": "0x16D2" }, "8740": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7124, 7131 ], "op": "SWAP1", "path": "66" }, "8741": { "op": "POP" }, "8742": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7124, 7131 ], "op": "JUMP", "path": "66" }, "8743": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "JUMPDEST", "path": "66" }, "8744": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7239, 7249 ], "op": "DUP7", "path": "66" }, "8745": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7235 ], "op": "DUP2", "path": "66" }, "8746": { "branch": 427, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7249 ], "op": "EQ", "path": "66" }, "8747": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "DUP1", "path": "66" }, "8748": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "ISZERO", "path": "66" }, "8749": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "PUSH2", "path": "66", "value": "0x2234" }, "8752": { "branch": 427, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "JUMPI", "path": "66" }, "8753": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "POP", "path": "66" }, "8754": { "branch": 428, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7254, 7262 ], "op": "DUP6", "path": "66" }, "8755": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7253, 7262 ], "op": "ISZERO", "path": "66" }, "8756": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "JUMPDEST", "path": "66" }, "8757": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "ISZERO", "path": "66" }, "8758": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "PUSH2", "path": "66", "value": "0x2289" }, "8761": { "branch": 428, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "JUMPI", "path": "66" }, "8762": { "op": "PUSH1", "value": "0x1" }, "8764": { "op": "PUSH1", "value": "0x1" }, "8766": { "op": "PUSH1", "value": "0xF0" }, "8768": { "op": "SHL" }, "8769": { "op": "SUB" }, "8770": { "op": "NOT" }, "8771": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7369, 7383 ], "op": "DUP6", "path": "66", "statement": 195 }, "8772": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7369, 7383 ], "op": "AND", "path": "66" }, "8773": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7368, 7383 ], "op": "NOT", "path": "66" }, "8774": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP3", "path": "66" }, "8775": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP1", "path": "66" }, "8776": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP3", "path": "66" }, "8777": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "AND", "path": "66" }, "8778": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP2", "path": "66" }, "8779": { "op": "PUSH1", "value": "0x3" }, "8781": { "op": "PUSH1", "value": "0xFE" }, "8783": { "op": "SHL" }, "8784": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7405, 7455 ], "op": "DUP4", "path": "66" }, "8785": { "branch": 429, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7405, 7455 ], "op": "AND", "path": "66" }, "8786": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7401, 7478 ], "op": "PUSH2", "path": "66", "value": "0x2267" }, "8789": { "branch": 429, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7401, 7478 ], "op": "JUMPI", "path": "66" }, "8790": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7476, 7478 ], "op": "PUSH1", "path": "66", "statement": 196, "value": "0x10" }, "8792": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7472 ], "op": "DUP4", "path": "66" }, "8793": { "op": "PUSH1", "value": "0x1" }, "8795": { "op": "PUSH1", "value": "0x1" }, "8797": { "op": "PUSH1", "value": "0x70" }, "8799": { "op": "SHL" }, "8800": { "op": "SUB" }, "8801": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "NOT", "path": "66" }, "8802": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "AND", "path": "66" }, "8803": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "SWAP1", "path": "66" }, "8804": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "SHL", "path": "66" }, "8805": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7457, 7478 ], "op": "SWAP3", "path": "66" }, "8806": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7457, 7478 ], "op": "POP", "path": "66" }, "8807": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7401, 7478 ], "op": "JUMPDEST", "path": "66" }, "8808": { "op": "POP" }, "8809": { "op": "PUSH1", "value": "0x1" }, "8811": { "op": "PUSH1", "value": "0x1" }, "8813": { "op": "PUSH1", "value": "0x70" }, "8815": { "op": "SHL" }, "8816": { "op": "SUB" }, "8817": { "op": "NOT" }, "8818": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "SWAP2", "path": "66", "statement": 197 }, "8819": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "DUP3", "path": "66" }, "8820": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "AND", "path": "66" }, "8821": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7560, 7562 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "8823": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7551, 7562 ], "op": "SWAP1", "path": "66" }, "8824": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7551, 7562 ], "op": "SWAP2", "path": "66" }, "8825": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7551, 7562 ], "op": "MUL", "path": "66" }, "8826": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "SHR", "path": "66" }, "8827": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "SWAP2", "path": "66" }, "8828": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "SWAP1", "path": "66" }, "8829": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "SWAP2", "path": "66" }, "8830": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "OR", "path": "66" }, "8831": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7564 ], "op": "AND", "path": "66" }, "8832": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7527 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "8834": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7527 ], "op": "DUP6", "path": "66" }, "8835": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7527 ], "op": "ADD", "path": "66" }, "8836": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7564 ], "op": "MSTORE", "path": "66" }, "8837": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7582, 7589 ], "op": "PUSH2", "path": "66", "statement": 198, "value": "0x16D2" }, "8840": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7582, 7589 ], "op": "JUMP", "path": "66" }, "8841": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "JUMPDEST", "path": "66" }, "8842": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7695, 7705 ], "op": "DUP7", "path": "66" }, "8843": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7692 ], "op": "DUP2", "path": "66" }, "8844": { "branch": 430, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7705 ], "op": "GT", "path": "66" }, "8845": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "DUP1", "path": "66" }, "8846": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "ISZERO", "path": "66" }, "8847": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "PUSH2", "path": "66", "value": "0x2295" }, "8850": { "branch": 430, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "JUMPI", "path": "66" }, "8851": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "POP", "path": "66" }, "8852": { "branch": 431, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7709, 7717 ], "op": "DUP6", "path": "66" }, "8853": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "JUMPDEST", "path": "66" }, "8854": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "ISZERO", "path": "66" }, "8855": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "PUSH2", "path": "66", "value": "0x22EF" }, "8858": { "branch": 431, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "JUMPI", "path": "66" }, "8859": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8046, 8049 ], "op": "PUSH1", "path": "66", "statement": 199, "value": "0x80" }, "8861": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "DUP9", "path": "66" }, "8862": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "DUP2", "path": "66" }, "8863": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "ADD", "path": "66" }, "8864": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "MLOAD", "path": "66" }, "8865": { "op": "PUSH1", "value": "0x1" }, "8867": { "op": "PUSH1", "value": "0x1" }, "8869": { "op": "PUSH1", "value": "0xF0" }, "8871": { "op": "SHL" }, "8872": { "op": "SUB" }, "8873": { "op": "NOT" }, "8874": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "PUSH1", "path": "66", "statement": 200, "value": "0xF0" }, "8876": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "DUP11", "path": "66" }, "8877": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "SWAP1", "path": "66" }, "8878": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "SHL", "path": "66" }, "8879": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7798 ], "op": "DUP9", "path": "66" }, "8880": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7798 ], "op": "OR", "path": "66" }, "8881": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7756, 7799 ], "op": "DUP2", "path": "66" }, "8882": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7756, 7799 ], "op": "AND", "path": "66" }, "8883": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7813, 7815 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "8885": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7804, 7815 ], "op": "DUP7", "path": "66" }, "8886": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7804, 7815 ], "op": "MUL", "path": "66" }, "8887": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7756, 7816 ], "op": "SHR", "path": "66" }, "8888": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP7", "path": "66" }, "8889": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP1", "path": "66" }, "8890": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP7", "path": "66" }, "8891": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "OR", "path": "66" }, "8892": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP6", "path": "66" }, "8893": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8049 ], "op": "SWAP2", "path": "66" }, "8894": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8049 ], "op": "SHL", "path": "66" }, "8895": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8049 ], "op": "AND", "path": "66" }, "8896": { "branch": 432, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8010, 8058 ], "op": "ISZERO", "path": "66" }, "8897": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "PUSH2", "path": "66", "value": "0x22C9" }, "8900": { "branch": 432, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "JUMPI", "path": "66" }, "8901": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "8903": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "DUP1", "path": "66" }, "8904": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "REVERT", "path": "66" }, "8905": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "JUMPDEST", "path": "66" }, "8906": { "op": "POP" }, "8907": { "op": "PUSH1", "value": "0x1" }, "8909": { "op": "PUSH1", "value": "0x1" }, "8911": { "op": "PUSH1", "value": "0x70" }, "8913": { "op": "SHL" }, "8914": { "op": "SUB" }, "8915": { "op": "NOT" }, "8916": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "SWAP2", "path": "66", "statement": 201 }, "8917": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "DUP3", "path": "66" }, "8918": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "AND", "path": "66" }, "8919": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8212, 8213 ], "op": "PUSH1", "path": "66", "value": "0x1" }, "8921": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "SWAP2", "path": "66" }, "8922": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "SWAP1", "path": "66" }, "8923": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "SWAP2", "path": "66" }, "8924": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "ADD", "path": "66" }, "8925": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8217, 8219 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "8927": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8202, 8219 ], "op": "MUL", "path": "66" }, "8928": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "SHR", "path": "66" }, "8929": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "SWAP2", "path": "66" }, "8930": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "SWAP1", "path": "66" }, "8931": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "SWAP2", "path": "66" }, "8932": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "OR", "path": "66" }, "8933": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8221 ], "op": "AND", "path": "66" }, "8934": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8178 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "8936": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8178 ], "op": "DUP6", "path": "66" }, "8937": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8178 ], "op": "ADD", "path": "66" }, "8938": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8221 ], "op": "MSTORE", "path": "66" }, "8939": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8239, 8246 ], "op": "PUSH2", "path": "66", "statement": 202, "value": "0x16D2" }, "8942": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8239, 8246 ], "op": "JUMP", "path": "66" }, "8943": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "JUMPDEST", "path": "66" }, "8944": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8364, 8374 ], "op": "DUP7", "path": "66" }, "8945": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8361 ], "op": "DUP2", "path": "66" }, "8946": { "branch": 433, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8374 ], "op": "GT", "path": "66" }, "8947": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "DUP1", "path": "66" }, "8948": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "ISZERO", "path": "66" }, "8949": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "PUSH2", "path": "66", "value": "0x22FC" }, "8952": { "branch": 433, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "JUMPI", "path": "66" }, "8953": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "POP", "path": "66" }, "8954": { "branch": 434, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8379, 8387 ], "op": "DUP6", "path": "66" }, "8955": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8378, 8387 ], "op": "ISZERO", "path": "66" }, "8956": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "JUMPDEST", "path": "66" }, "8957": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "ISZERO", "path": "66" }, "8958": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "PUSH2", "path": "66", "value": "0x230A" }, "8961": { "branch": 434, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "JUMPI", "path": "66" }, "8962": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66", "statement": 203 }, "8963": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66" }, "8964": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66" }, "8965": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66" }, "8966": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "PUSH2", "path": "66", "value": "0x16D2" }, "8969": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "JUMP", "path": "66" }, "8970": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "JUMPDEST", "path": "66" }, "8971": { "op": "POP" }, "8972": { "op": "PUSH1", "value": "0x1" }, "8974": { "op": "PUSH1", "value": "0x1" }, "8976": { "op": "PUSH1", "value": "0xF0" }, "8978": { "op": "SHL" }, "8979": { "op": "SUB" }, "8980": { "op": "NOT" }, "8981": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8452 ], "op": "DUP3", "path": "66", "statement": 204 }, "8982": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8452 ], "op": "AND", "path": "66" }, "8983": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8466, 8468 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "8985": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8457, 8468 ], "op": "DUP3", "path": "66" }, "8986": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8457, 8468 ], "op": "DUP2", "path": "66" }, "8987": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8457, 8468 ], "op": "MUL", "path": "66" }, "8988": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SWAP2", "path": "66" }, "8989": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SWAP1", "path": "66" }, "8990": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SWAP2", "path": "66" }, "8991": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SHR", "path": "66" }, "8992": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP4", "path": "66" }, "8993": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP1", "path": "66" }, "8994": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP4", "path": "66" }, "8995": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "OR", "path": "66" }, "8996": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP3", "path": "66" }, "8997": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP2", "path": "66", "statement": 205 }, "8998": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP1", "path": "66" }, "8999": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP2", "path": "66" }, "9000": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SHL", "path": "66" }, "9001": { "op": "PUSH1", "value": "0x1" }, "9003": { "op": "PUSH1", "value": "0x1" }, "9005": { "op": "PUSH1", "value": "0x80" }, "9007": { "op": "SHL" }, "9008": { "op": "SUB" }, "9009": { "op": "NOT" }, "9010": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "AND", "path": "66" }, "9011": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP1", "path": "66" }, "9012": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8529, 8530 ], "op": "PUSH1", "path": "66", "statement": 206, "value": "0x1" }, "9014": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8519, 8530 ], "op": "ADD", "path": "66" }, "9015": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "PUSH2", "path": "66", "value": "0x21CA" }, "9018": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMP", "path": "66" }, "9019": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMPDEST", "path": "66" }, "9020": { "branch": 435, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8616, 8624 ], "op": "DUP5", "path": "66" }, "9021": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8611, 8633 ], "op": "PUSH2", "path": "66", "value": "0x2348" }, "9024": { "branch": 435, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8611, 8633 ], "op": "JUMPI", "path": "66" }, "9025": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "POP", "path": "66", "statement": 207 }, "9026": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "POP", "path": "66" }, "9027": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "POP", "path": "66" }, "9028": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "PUSH2", "path": "66", "value": "0x16D2" }, "9031": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "JUMP", "path": "66" }, "9032": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8611, 8633 ], "op": "JUMPDEST", "path": "66" }, "9033": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8733, 8734 ], "op": "PUSH1", "path": "66", "statement": 208, "value": "0x9" }, "9035": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8724, 8730 ], "op": "DUP2", "path": "66" }, "9036": { "branch": 436, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8724, 8734 ], "op": "LT", "path": "66" }, "9037": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "PUSH2", "path": "66", "value": "0x2355" }, "9040": { "branch": 436, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "JUMPI", "path": "66" }, "9041": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9043": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "DUP1", "path": "66" }, "9044": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "REVERT", "path": "66" }, "9045": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "JUMPDEST", "path": "66" }, "9046": { "op": "PUSH1", "value": "0x1" }, "9048": { "op": "PUSH1", "value": "0x1" }, "9050": { "op": "PUSH1", "value": "0xF0" }, "9052": { "op": "SHL" }, "9053": { "op": "SUB" }, "9054": { "op": "NOT" }, "9055": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "PUSH1", "path": "66", "statement": 209, "value": "0xF0" }, "9057": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "DUP8", "path": "66" }, "9058": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "SWAP1", "path": "66" }, "9059": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "SHL", "path": "66" }, "9060": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8887 ], "op": "DUP6", "path": "66" }, "9061": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8887 ], "op": "OR", "path": "66" }, "9062": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8845, 8888 ], "op": "AND", "path": "66" }, "9063": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8902, 8904 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9065": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8893, 8904 ], "op": "SWAP1", "path": "66" }, "9066": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8893, 8904 ], "op": "SWAP2", "path": "66" }, "9067": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8893, 8904 ], "op": "MUL", "path": "66" }, "9068": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8845, 8905 ], "op": "SHR", "path": "66" }, "9069": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "SWAP2", "path": "66" }, "9070": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "SWAP1", "path": "66" }, "9071": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "SWAP2", "path": "66" }, "9072": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "OR", "path": "66" }, "9073": { "op": "PUSH1", "value": "0x1" }, "9075": { "op": "PUSH1", "value": "0x1" }, "9077": { "op": "PUSH1", "value": "0x70" }, "9079": { "op": "SHL" }, "9080": { "op": "SUB" }, "9081": { "op": "NOT" }, "9082": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8906 ], "op": "AND", "path": "66" }, "9083": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8808 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "9085": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8808 ], "op": "DUP7", "path": "66" }, "9086": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8808 ], "op": "ADD", "path": "66" }, "9087": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8906 ], "op": "MSTORE", "path": "66" }, "9088": { "op": "POP" }, "9089": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9090": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9091": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9092": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9093": { "fn": "AccountContextHandler.setActiveCurrency", "jump": "o", "offset": [ 5247, 8913 ], "op": "JUMP", "path": "66" }, "9094": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6460, 10583 ], "op": "JUMPDEST", "path": "84" }, "9095": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9097": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9098": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9099": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9100": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9101": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9102": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9103": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "9104": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMPDEST", "path": "84" }, "9105": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7219, 7246 ], "op": "DUP10", "path": "84" }, "9106": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7219, 7246 ], "op": "MLOAD", "path": "84" }, "9107": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7219, 7253 ], "op": "MLOAD", "path": "84" }, "9108": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7215, 7253 ], "op": "DUP2", "path": "84" }, "9109": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7215, 7253 ], "op": "LT", "path": "84" }, "9110": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "ISZERO", "path": "84" }, "9111": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "PUSH2", "path": "84", "value": "0x2417" }, "9114": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMPI", "path": "84" }, "9115": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7274, 7301 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9117": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7318 ], "op": "DUP11", "path": "84" }, "9118": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7331 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9120": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7331 ], "op": "ADD", "path": "84" }, "9121": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7331 ], "op": "MLOAD", "path": "84" }, "9122": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7332, 7333 ], "op": "DUP3", "path": "84" }, "9123": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "DUP2", "path": "84" }, "9124": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "MLOAD", "path": "84" }, "9125": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "DUP2", "path": "84" }, "9126": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "LT", "path": "84" }, "9127": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "PUSH2", "path": "84", "value": "0x23AC" }, "9130": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "JUMPI", "path": "84" }, "9131": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "INVALID", "path": "84" }, "9132": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "JUMPDEST", "path": "84" }, "9133": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9135": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "MUL", "path": "84" }, "9136": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9138": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "ADD", "path": "84" }, "9139": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "ADD", "path": "84" }, "9140": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "MLOAD", "path": "84" }, "9141": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7274, 7334 ], "op": "SWAP1", "path": "84" }, "9142": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7274, 7334 ], "op": "POP", "path": "84" }, "9143": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7517, 7549 ], "op": "PUSH1", "path": "84", "statement": 210, "value": "0x3" }, "9145": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "DUP1", "path": "84" }, "9146": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "DUP2", "path": "84" }, "9147": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "GT", "path": "84" }, "9148": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "ISZERO", "path": "84" }, "9149": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "PUSH2", "path": "84", "value": "0x23C2" }, "9152": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPI", "path": "84" }, "9153": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "INVALID", "path": "84" }, "9154": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPDEST", "path": "84" }, "9155": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7500 ], "op": "DUP2", "path": "84" }, "9156": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7513 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9158": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7513 ], "op": "ADD", "path": "84" }, "9159": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7513 ], "op": "MLOAD", "path": "84" }, "9160": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9162": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "DUP2", "path": "84" }, "9163": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "GT", "path": "84" }, "9164": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "ISZERO", "path": "84" }, "9165": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "PUSH2", "path": "84", "value": "0x23D2" }, "9168": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPI", "path": "84" }, "9169": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "INVALID", "path": "84" }, "9170": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPDEST", "path": "84" }, "9171": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "EQ", "path": "84" }, "9172": { "branch": 496, "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "ISZERO", "path": "84" }, "9173": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "PUSH2", "path": "84", "value": "0x23DD" }, "9176": { "branch": 496, "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "JUMPI", "path": "84" }, "9177": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9179": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "DUP1", "path": "84" }, "9180": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "REVERT", "path": "84" }, "9181": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "JUMPDEST", "path": "84" }, "9182": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7647, 7671 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "9184": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7630 ], "op": "DUP2", "path": "84" }, "9185": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7643 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9187": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7643 ], "op": "ADD", "path": "84" }, "9188": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7643 ], "op": "MLOAD", "path": "84" }, "9189": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9191": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "DUP2", "path": "84" }, "9192": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "GT", "path": "84" }, "9193": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "ISZERO", "path": "84" }, "9194": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "PUSH2", "path": "84", "value": "0x23EF" }, "9197": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "JUMPI", "path": "84" }, "9198": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "INVALID", "path": "84" }, "9199": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "JUMPDEST", "path": "84" }, "9200": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "EQ", "path": "84" }, "9201": { "branch": 497, "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "ISZERO", "path": "84" }, "9202": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "DUP1", "path": "84" }, "9203": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "ISZERO", "path": "84" }, "9204": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "PUSH2", "path": "84", "value": "0x23FF" }, "9207": { "branch": 497, "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "JUMPI", "path": "84" }, "9208": { "op": "POP" }, "9209": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "9211": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "DUP2", "path": "84" }, "9212": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "ADD", "path": "84" }, "9213": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "MLOAD", "path": "84" }, "9214": { "branch": 498, "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7694 ], "op": "ISZERO", "path": "84" }, "9215": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "JUMPDEST", "path": "84" }, "9216": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7621, 7759 ], "op": "ISZERO", "path": "84" }, "9217": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7621, 7759 ], "op": "PUSH2", "path": "84", "value": "0x240E" }, "9220": { "branch": 498, "fn": "PortfolioHandler.storeAssets", "offset": [ 7621, 7759 ], "op": "JUMPI", "path": "84" }, "9221": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7714, 7744 ], "op": "PUSH2", "path": "84", "statement": 211, "value": "0x240E" }, "9224": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7726, 7740 ], "op": "DUP12", "path": "84" }, "9225": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7742, 7743 ], "op": "DUP4", "path": "84" }, "9226": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7714, 7725 ], "op": "PUSH2", "path": "84", "value": "0x34DB" }, "9229": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 7714, 7744 ], "op": "JUMP", "path": "84" }, "9230": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7714, 7744 ], "op": "JUMPDEST", "path": "84" }, "9231": { "op": "POP" }, "9232": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7255, 7258 ], "op": "PUSH1", "path": "84", "statement": 212, "value": "0x1" }, "9234": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7255, 7258 ], "op": "ADD", "path": "84" }, "9235": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "PUSH2", "path": "84", "value": "0x2390" }, "9238": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMP", "path": "84" }, "9239": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMPDEST", "path": "84" }, "9240": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "POP", "path": "84" }, "9241": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7868, 7877 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9243": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMPDEST", "path": "84" }, "9244": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7887, 7914 ], "op": "DUP10", "path": "84" }, "9245": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7887, 7914 ], "op": "MLOAD", "path": "84" }, "9246": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7887, 7921 ], "op": "MLOAD", "path": "84" }, "9247": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7883, 7921 ], "op": "DUP2", "path": "84" }, "9248": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7883, 7921 ], "op": "LT", "path": "84" }, "9249": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "ISZERO", "path": "84" }, "9250": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "PUSH2", "path": "84", "value": "0x24BA" }, "9253": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMPI", "path": "84" }, "9254": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7942, 7969 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9256": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7986 ], "op": "DUP11", "path": "84" }, "9257": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7999 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9259": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7999 ], "op": "ADD", "path": "84" }, "9260": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7999 ], "op": "MLOAD", "path": "84" }, "9261": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8000, 8001 ], "op": "DUP3", "path": "84" }, "9262": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "DUP2", "path": "84" }, "9263": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "MLOAD", "path": "84" }, "9264": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "DUP2", "path": "84" }, "9265": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "LT", "path": "84" }, "9266": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "PUSH2", "path": "84", "value": "0x2437" }, "9269": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "JUMPI", "path": "84" }, "9270": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "INVALID", "path": "84" }, "9271": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "JUMPDEST", "path": "84" }, "9272": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9274": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "MUL", "path": "84" }, "9275": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9277": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "ADD", "path": "84" }, "9278": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "ADD", "path": "84" }, "9279": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "MLOAD", "path": "84" }, "9280": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7942, 8002 ], "op": "SWAP1", "path": "84" }, "9281": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7942, 8002 ], "op": "POP", "path": "84" }, "9282": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8043, 8067 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "9284": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9286": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "DUP2", "path": "84" }, "9287": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "GT", "path": "84" }, "9288": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "ISZERO", "path": "84" }, "9289": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH2", "path": "84", "value": "0x244E" }, "9292": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPI", "path": "84" }, "9293": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "INVALID", "path": "84" }, "9294": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPDEST", "path": "84" }, "9295": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8026 ], "op": "DUP2", "path": "84" }, "9296": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8039 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9298": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8039 ], "op": "ADD", "path": "84" }, "9299": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8039 ], "op": "MLOAD", "path": "84" }, "9300": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9302": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "DUP2", "path": "84" }, "9303": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "GT", "path": "84" }, "9304": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "ISZERO", "path": "84" }, "9305": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH2", "path": "84", "value": "0x245E" }, "9308": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPI", "path": "84" }, "9309": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "INVALID", "path": "84" }, "9310": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPDEST", "path": "84" }, "9311": { "branch": 499, "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "EQ", "path": "84" }, "9312": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "ISZERO", "path": "84" }, "9313": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "PUSH2", "path": "84", "value": "0x2472" }, "9316": { "branch": 499, "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "JUMPI", "path": "84" }, "9317": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "9319": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "DUP2", "path": "84" }, "9320": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "ADD", "path": "84" }, "9321": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "MLOAD", "path": "84" }, "9322": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8132, 8151 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9324": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8220, 8245 ], "op": "SWAP1", "path": "84" }, "9325": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8220, 8245 ], "op": "SSTORE", "path": "84" }, "9326": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8198, 8263 ], "op": "PUSH2", "path": "84", "value": "0x24B1" }, "9329": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8198, 8263 ], "op": "JUMP", "path": "84" }, "9330": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8198, 8263 ], "op": "JUMPDEST", "path": "84" }, "9331": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8327, 8351 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "9333": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8310 ], "op": "DUP2", "path": "84" }, "9334": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8323 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9336": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8323 ], "op": "ADD", "path": "84" }, "9337": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8323 ], "op": "MLOAD", "path": "84" }, "9338": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9340": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "DUP2", "path": "84" }, "9341": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "GT", "path": "84" }, "9342": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "ISZERO", "path": "84" }, "9343": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "PUSH2", "path": "84", "value": "0x2484" }, "9346": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "JUMPI", "path": "84" }, "9347": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "INVALID", "path": "84" }, "9348": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "JUMPDEST", "path": "84" }, "9349": { "branch": 500, "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "EQ", "path": "84" }, "9350": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "ISZERO", "path": "84" }, "9351": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "PUSH2", "path": "84", "value": "0x249D" }, "9354": { "branch": 500, "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "JUMPI", "path": "84" }, "9355": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "9357": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "DUP2", "path": "84" }, "9358": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "ADD", "path": "84" }, "9359": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "MLOAD", "path": "84" }, "9360": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "DUP1", "path": "84" }, "9361": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8611, 8643 ], "op": "PUSH2", "path": "84", "statement": 213, "value": "0x249A" }, "9364": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8466 ], "op": "DUP4", "path": "84" }, "9365": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "DUP3", "path": "84" }, "9366": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8611, 8622 ], "op": "PUSH2", "path": "84", "value": "0x362A" }, "9369": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 8611, 8643 ], "op": "JUMP", "path": "84" }, "9370": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8611, 8643 ], "op": "JUMPDEST", "path": "84" }, "9371": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "POP", "path": "84" }, "9372": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "POP", "path": "84" }, "9373": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "JUMPDEST", "path": "84" }, "9374": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8875, 9055 ], "op": "PUSH2", "path": "84", "statement": 214, "value": "0x24A9" }, "9377": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8920, 8925 ], "op": "DUP2", "path": "84" }, "9378": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8947, 8954 ], "op": "DUP7", "path": "84" }, "9379": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8976, 9001 ], "op": "DUP7", "path": "84" }, "9380": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9023, 9037 ], "op": "DUP7", "path": "84" }, "9381": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8875, 8898 ], "op": "PUSH2", "path": "84", "value": "0x375B" }, "9384": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 8875, 9055 ], "op": "JUMP", "path": "84" }, "9385": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8875, 9055 ], "op": "JUMPDEST", "path": "84" }, "9386": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP2", "path": "84" }, "9387": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP7", "path": "84" }, "9388": { "op": "POP" }, "9389": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP5", "path": "84" }, "9390": { "op": "POP" }, "9391": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP3", "path": "84" }, "9392": { "op": "POP" }, "9393": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "JUMPDEST", "path": "84" }, "9394": { "op": "POP" }, "9395": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7923, 7926 ], "op": "PUSH1", "path": "84", "statement": 215, "value": "0x1" }, "9397": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7923, 7926 ], "op": "ADD", "path": "84" }, "9398": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "PUSH2", "path": "84", "value": "0x241B" }, "9401": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMP", "path": "84" }, "9402": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMPDEST", "path": "84" }, "9403": { "op": "POP" }, "9404": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "9406": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "DUP10", "path": "84" }, "9407": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "ADD", "path": "84" }, "9408": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "MLOAD", "path": "84" }, "9409": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9116, 9142 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9411": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9280, 9317 ], "op": "PUSH2", "path": "84", "value": "0x24CA" }, "9414": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9280, 9315 ], "op": "PUSH2", "path": "84", "value": "0x37BE" }, "9417": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 9280, 9317 ], "op": "JUMP", "path": "84" }, "9418": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9280, 9317 ], "op": "JUMPDEST", "path": "84" }, "9419": { "op": "PUSH1", "value": "0x1" }, "9421": { "op": "PUSH1", "value": "0x1" }, "9423": { "op": "PUSH1", "value": "0xA0" }, "9425": { "op": "SHL" }, "9426": { "op": "SUB" }, "9427": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP12", "path": "84" }, "9428": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "AND", "path": "84" }, "9429": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9327, 9391 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9431": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "SWAP1", "path": "84" }, "9432": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP2", "path": "84" }, "9433": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "MSTORE", "path": "84" }, "9434": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9436": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP3", "path": "84" }, "9437": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "SWAP1", "path": "84" }, "9438": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "MSTORE", "path": "84" }, "9439": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "9441": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP2", "path": "84" }, "9442": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "KECCAK256", "path": "84" }, "9443": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9187, 9317 ], "op": "SWAP2", "path": "84" }, "9444": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9187, 9317 ], "op": "SWAP3", "path": "84" }, "9445": { "op": "POP" }, "9446": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPDEST", "path": "84" }, "9447": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9456 ], "op": "DUP13", "path": "84" }, "9448": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9466 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9450": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9466 ], "op": "ADD", "path": "84" }, "9451": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9466 ], "op": "MLOAD", "path": "84" }, "9452": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9473 ], "op": "MLOAD", "path": "84" }, "9453": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9438, 9439 ], "op": "DUP2", "path": "84" }, "9454": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9438, 9473 ], "op": "LT", "path": "84" }, "9455": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "ISZERO", "path": "84" }, "9456": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "PUSH2", "path": "84", "value": "0x2594" }, "9459": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPI", "path": "84" }, "9460": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9494, 9521 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9462": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9538 ], "op": "DUP14", "path": "84" }, "9463": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9548 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9465": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9548 ], "op": "ADD", "path": "84" }, "9466": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9548 ], "op": "MLOAD", "path": "84" }, "9467": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9549, 9550 ], "op": "DUP3", "path": "84" }, "9468": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "DUP2", "path": "84" }, "9469": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "MLOAD", "path": "84" }, "9470": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "DUP2", "path": "84" }, "9471": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "LT", "path": "84" }, "9472": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "PUSH2", "path": "84", "value": "0x2505" }, "9475": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "JUMPI", "path": "84" }, "9476": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "INVALID", "path": "84" }, "9477": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "JUMPDEST", "path": "84" }, "9478": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9480": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "MUL", "path": "84" }, "9481": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "9483": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "ADD", "path": "84" }, "9484": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "ADD", "path": "84" }, "9485": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "MLOAD", "path": "84" }, "9486": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9494, 9551 ], "op": "SWAP1", "path": "84" }, "9487": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9494, 9551 ], "op": "POP", "path": "84" }, "9488": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9574 ], "op": "DUP1", "path": "84" }, "9489": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9583 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "9491": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9583 ], "op": "ADD", "path": "84" }, "9492": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9583 ], "op": "MLOAD", "path": "84" }, "9493": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9587, 9588 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9495": { "branch": 501, "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9588 ], "op": "EQ", "path": "84" }, "9496": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "ISZERO", "path": "84" }, "9497": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "PUSH2", "path": "84", "value": "0x2522" }, "9500": { "branch": 501, "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "JUMPI", "path": "84" }, "9501": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9590, 9598 ], "op": "POP", "path": "84", "statement": 216 }, "9502": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9590, 9598 ], "op": "PUSH2", "path": "84", "value": "0x258C" }, "9505": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9590, 9598 ], "op": "JUMP", "path": "84" }, "9506": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "JUMPDEST", "path": "84" }, "9507": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9659, 9683 ], "op": "PUSH1", "path": "84", "statement": 217, "value": "0x2" }, "9509": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9642 ], "op": "DUP2", "path": "84" }, "9510": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9655 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9512": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9655 ], "op": "ADD", "path": "84" }, "9513": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9655 ], "op": "MLOAD", "path": "84" }, "9514": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9516": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "DUP2", "path": "84" }, "9517": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "GT", "path": "84" }, "9518": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "ISZERO", "path": "84" }, "9519": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "PUSH2", "path": "84", "value": "0x2534" }, "9522": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "JUMPI", "path": "84" }, "9523": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "INVALID", "path": "84" }, "9524": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "JUMPDEST", "path": "84" }, "9525": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "EQ", "path": "84" }, "9526": { "branch": 502, "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "ISZERO", "path": "84" }, "9527": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "DUP1", "path": "84" }, "9528": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "ISZERO", "path": "84" }, "9529": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "PUSH2", "path": "84", "value": "0x2552" }, "9532": { "branch": 502, "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "JUMPI", "path": "84" }, "9533": { "op": "POP" }, "9534": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9725, 9757 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9536": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9708 ], "op": "DUP2", "path": "84" }, "9537": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9721 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9539": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9721 ], "op": "ADD", "path": "84" }, "9540": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9721 ], "op": "MLOAD", "path": "84" }, "9541": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9543": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "DUP2", "path": "84" }, "9544": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "GT", "path": "84" }, "9545": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "ISZERO", "path": "84" }, "9546": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "PUSH2", "path": "84", "value": "0x254F" }, "9549": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "JUMPI", "path": "84" }, "9550": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "INVALID", "path": "84" }, "9551": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "JUMPDEST", "path": "84" }, "9552": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "EQ", "path": "84" }, "9553": { "branch": 503, "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "ISZERO", "path": "84" }, "9554": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "JUMPDEST", "path": "84" }, "9555": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "PUSH2", "path": "84", "value": "0x255B" }, "9558": { "branch": 503, "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "JUMPI", "path": "84" }, "9559": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9561": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "DUP1", "path": "84" }, "9562": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "REVERT", "path": "84" }, "9563": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "JUMPDEST", "path": "84" }, "9564": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9878, 10038 ], "op": "PUSH2", "path": "84", "statement": 218, "value": "0x2567" }, "9567": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9919, 9924 ], "op": "DUP2", "path": "84" }, "9568": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9942, 9949 ], "op": "DUP10", "path": "84" }, "9569": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9967, 9992 ], "op": "DUP10", "path": "84" }, "9570": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10010, 10024 ], "op": "DUP10", "path": "84" }, "9571": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9878, 9901 ], "op": "PUSH2", "path": "84", "value": "0x375B" }, "9574": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 9878, 10038 ], "op": "JUMP", "path": "84" }, "9575": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9878, 10038 ], "op": "JUMPDEST", "path": "84" }, "9576": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP2", "path": "84" }, "9577": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP10", "path": "84" }, "9578": { "op": "POP" }, "9579": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP8", "path": "84" }, "9580": { "op": "POP" }, "9581": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP6", "path": "84" }, "9582": { "op": "POP" }, "9583": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10053, 10105 ], "op": "PUSH2", "path": "84", "statement": 219, "value": "0x2584" }, "9586": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10065, 10070 ], "op": "DUP2", "path": "84" }, "9587": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10084 ], "op": "DUP5", "path": "84" }, "9588": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10085, 10103 ], "op": "DUP8", "path": "84" }, "9589": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "9591": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "DUP2", "path": "84" }, "9592": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "LT", "path": "84" }, "9593": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "PUSH2", "path": "84", "value": "0x257E" }, "9596": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "JUMPI", "path": "84" }, "9597": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "INVALID", "path": "84" }, "9598": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "JUMPDEST", "path": "84" }, "9599": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "ADD", "path": "84" }, "9600": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10053, 10064 ], "op": "PUSH2", "path": "84", "value": "0x362A" }, "9603": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 10053, 10105 ], "op": "JUMP", "path": "84" }, "9604": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10053, 10105 ], "op": "JUMPDEST", "path": "84" }, "9605": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10141, 10142 ], "op": "PUSH1", "path": "84", "statement": 220, "value": "0x1" }, "9607": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "DUP6", "path": "84" }, "9608": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "ADD", "path": "84" }, "9609": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "SWAP5", "path": "84" }, "9610": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "POP", "path": "84" }, "9611": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "POP", "path": "84" }, "9612": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPDEST", "path": "84" }, "9613": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9475, 9478 ], "op": "PUSH1", "path": "84", "statement": 221, "value": "0x1" }, "9615": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9475, 9478 ], "op": "ADD", "path": "84" }, "9616": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "PUSH2", "path": "84", "value": "0x24E6" }, "9619": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMP", "path": "84" }, "9620": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPDEST", "path": "84" }, "9621": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "POP", "path": "84" }, "9622": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10333, 10335 ], "op": "PUSH1", "path": "84", "statement": 222, "value": "0x10" }, "9624": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10329 ], "op": "DUP4", "path": "84" }, "9625": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10335 ], "op": "GT", "path": "84" }, "9626": { "branch": 504, "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10335 ], "op": "ISZERO", "path": "84" }, "9627": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "DUP1", "path": "84" }, "9628": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "ISZERO", "path": "84" }, "9629": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "PUSH2", "path": "84", "value": "0x25AB" }, "9632": { "branch": 504, "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "JUMPI", "path": "84" }, "9633": { "op": "POP" }, "9634": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10357, 10373 ], "op": "PUSH5", "path": "84", "value": "0xFFFFFFFFFF" }, "9640": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10339, 10373 ], "op": "DUP5", "path": "84" }, "9641": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10339, 10373 ], "op": "GT", "path": "84" }, "9642": { "branch": 505, "fn": "PortfolioHandler.storeAssets", "offset": [ 10339, 10373 ], "op": "ISZERO", "path": "84" }, "9643": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "JUMPDEST", "path": "84" }, "9644": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "PUSH2", "path": "84", "value": "0x25B4" }, "9647": { "branch": 505, "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "JUMPI", "path": "84" }, "9648": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9650": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "DUP1", "path": "84" }, "9651": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "REVERT", "path": "84" }, "9652": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "JUMPDEST", "path": "84" }, "9653": { "op": "POP" }, "9654": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10445, 10452 ], "op": "SWAP4", "path": "84", "statement": 223 }, "9655": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10445, 10452 ], "op": "SWAP11", "path": "84" }, "9656": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10466, 10491 ], "op": "SWAP3", "path": "84" }, "9657": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10466, 10491 ], "op": "SWAP10", "path": "84" }, "9658": { "op": "POP" }, "9659": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10466, 10491 ], "op": "SWAP8", "path": "84" }, "9660": { "op": "POP" }, "9661": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10511, 10529 ], "op": "SWAP6", "path": "84" }, "9662": { "op": "POP" }, "9663": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6460, 10583 ], "op": "SWAP4", "path": "84" }, "9664": { "op": "POP" }, "9665": { "op": "POP" }, "9666": { "op": "POP" }, "9667": { "op": "POP" }, "9668": { "fn": "PortfolioHandler.storeAssets", "jump": "o", "offset": [ 6460, 10583 ], "op": "JUMP", "path": "84" }, "9669": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 8919, 9670 ], "op": "JUMPDEST", "path": "66" }, "9670": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9004, 9011 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9672": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9004, 9011 ], "op": "DUP1", "path": "66" }, "9673": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9150, 9174 ], "op": "PUSH32", "path": "66", "value": "0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000" }, "9706": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9131, 9174 ], "op": "DUP4", "path": "66" }, "9707": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9131, 9174 ], "op": "AND", "path": "66" }, "9708": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9004, 9011 ], "op": "DUP2", "path": "66" }, "9709": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMPDEST", "path": "66" }, "9710": { "op": "PUSH1", "value": "0x1" }, "9712": { "op": "PUSH1", "value": "0x1" }, "9714": { "op": "PUSH1", "value": "0x70" }, "9716": { "op": "SHL" }, "9717": { "op": "SUB" }, "9718": { "op": "NOT" }, "9719": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9309, 9323 ], "op": "DUP3", "path": "66" }, "9720": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9309, 9323 ], "op": "AND", "path": "66" }, "9721": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9309, 9323 ], "op": "ISZERO", "path": "66" }, "9722": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "PUSH2", "path": "66", "value": "0x2637" }, "9725": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMPI", "path": "66" }, "9726": { "op": "PUSH1", "value": "0x1" }, "9728": { "op": "PUSH1", "value": "0xFE" }, "9730": { "op": "SHL" }, "9731": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9388 ], "op": "DUP3", "path": "66" }, "9732": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9388 ], "op": "DUP2", "path": "66" }, "9733": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9388 ], "op": "AND", "path": "66" }, "9734": { "branch": 437, "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9420 ], "op": "EQ", "path": "66" }, "9735": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "ISZERO", "path": "66" }, "9736": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "PUSH2", "path": "66", "value": "0x2621" }, "9739": { "branch": 437, "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "JUMPI", "path": "66" }, "9740": { "op": "PUSH1", "value": "0x1" }, "9742": { "op": "PUSH1", "value": "0x1" }, "9744": { "op": "PUSH1", "value": "0xF0" }, "9746": { "op": "SHL" }, "9747": { "op": "SUB" }, "9748": { "op": "NOT" }, "9749": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9539 ], "op": "DUP3", "path": "66", "statement": 224 }, "9750": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9539 ], "op": "AND", "path": "66" }, "9751": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9549 ], "op": "DUP2", "path": "66" }, "9752": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9549 ], "op": "SHR", "path": "66" }, "9753": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP3", "path": "66" }, "9754": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP1", "path": "66" }, "9755": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP3", "path": "66" }, "9756": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "OR", "path": "66" }, "9757": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP2", "path": "66" }, "9758": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9578, 9580 ], "op": "PUSH1", "path": "66", "statement": 225, "value": "0x10" }, "9760": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9568, 9580 ], "op": "ADD", "path": "66" }, "9761": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "JUMPDEST", "path": "66" }, "9762": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9627, 9629 ], "op": "PUSH1", "path": "66", "statement": 226, "value": "0x10" }, "9764": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9623 ], "op": "DUP3", "path": "66" }, "9765": { "op": "PUSH1", "value": "0x1" }, "9767": { "op": "PUSH1", "value": "0x1" }, "9769": { "op": "PUSH1", "value": "0x70" }, "9771": { "op": "SHL" }, "9772": { "op": "SUB" }, "9773": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "NOT", "path": "66" }, "9774": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "AND", "path": "66" }, "9775": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "SWAP1", "path": "66" }, "9776": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "SHL", "path": "66" }, "9777": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9608, 9629 ], "op": "SWAP2", "path": "66" }, "9778": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9608, 9629 ], "op": "POP", "path": "66" }, "9779": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "PUSH2", "path": "66", "value": "0x25ED" }, "9782": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMP", "path": "66" }, "9783": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMPDEST", "path": "66" }, "9784": { "op": "POP" }, "9785": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9657, 9663 ], "op": "SWAP1", "path": "66", "statement": 227 }, "9786": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9657, 9663 ], "op": "SWAP4", "path": "66" }, "9787": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 8919, 9670 ], "op": "SWAP3", "path": "66" }, "9788": { "op": "POP" }, "9789": { "op": "POP" }, "9790": { "op": "POP" }, "9791": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "jump": "o", "offset": [ 8919, 9670 ], "op": "JUMP", "path": "66" }, "9792": { "fn": "LibStorage.getAccountStorage", "offset": [ 1879, 2108 ], "op": "JUMPDEST", "path": "62" }, "9793": { "fn": "LibStorage.getAccountStorage", "offset": [ 1940, 1988 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "9795": { "fn": "LibStorage.getAccountStorage", "offset": [ 2005, 2017 ], "op": "DUP1", "path": "62" }, "9796": { "fn": "LibStorage.getAccountStorage", "offset": [ 2020, 2061 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "9799": { "fn": "LibStorage.getAccountStorage", "offset": [ 2036, 2060 ], "op": "PUSH1", "path": "62", "value": "0x1" }, "9801": { "fn": "LibStorage.getAccountStorage", "offset": [ 2020, 2035 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "9804": { "fn": "LibStorage.getAccountStorage", "jump": "i", "offset": [ 2020, 2061 ], "op": "JUMP", "path": "62" }, "9805": { "fn": "SafeInt256.toInt", "offset": [ 2520, 2683 ], "op": "JUMPDEST", "path": "94" }, "9806": { "fn": "SafeInt256.toInt", "offset": [ 2569, 2575 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "9808": { "op": "PUSH1", "value": "0x1" }, "9810": { "op": "PUSH1", "value": "0x1" }, "9812": { "op": "PUSH1", "value": "0xFF" }, "9814": { "op": "SHL" }, "9815": { "op": "SUB" }, "9816": { "fn": "SafeInt256.toInt", "offset": [ 2596, 2597 ], "op": "DUP3", "path": "94", "statement": 228 }, "9817": { "fn": "SafeInt256.toInt", "offset": [ 2596, 2626 ], "op": "GT", "path": "94" }, "9818": { "branch": 534, "fn": "SafeInt256.toInt", "offset": [ 2596, 2626 ], "op": "ISZERO", "path": "94" }, "9819": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "PUSH2", "path": "94", "value": "0x1D05" }, "9822": { "branch": 534, "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "JUMPI", "path": "94" }, "9823": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "9825": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "DUP1", "path": "94" }, "9826": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "REVERT", "path": "94" }, "9827": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17289, 19290 ], "op": "JUMPDEST", "path": "29" }, "9828": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17601, 17644 ], "op": "PUSH1", "path": "29", "value": "0x3" }, "9830": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17597 ], "op": "DUP4", "path": "29" }, "9831": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "9833": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "DUP2", "path": "29" }, "9834": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "GT", "path": "29" }, "9835": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "ISZERO", "path": "29" }, "9836": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "PUSH2", "path": "29", "value": "0x2671" }, "9839": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "JUMPI", "path": "29" }, "9840": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "INVALID", "path": "29" }, "9841": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "JUMPDEST", "path": "29" }, "9842": { "branch": 400, "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17644 ], "op": "EQ", "path": "29" }, "9843": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17723 ], "op": "DUP1", "path": "29" }, "9844": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17723 ], "op": "PUSH2", "path": "29", "value": "0x2688" }, "9847": { "branch": 400, "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17723 ], "op": "JUMPI", "path": "29" }, "9848": { "op": "POP" }, "9849": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17675, 17723 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "9851": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17671 ], "op": "DUP4", "path": "29" }, "9852": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "9854": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "DUP2", "path": "29" }, "9855": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "GT", "path": "29" }, "9856": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "ISZERO", "path": "29" }, "9857": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "PUSH2", "path": "29", "value": "0x2686" }, "9860": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "JUMPI", "path": "29" }, "9861": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "INVALID", "path": "29" }, "9862": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "JUMPDEST", "path": "29" }, "9863": { "branch": 401, "fn": "BatchAction._executeNTokenAction", "offset": [ 17660, 17723 ], "op": "EQ", "path": "29" }, "9864": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17723 ], "op": "JUMPDEST", "path": "29" }, "9865": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17791 ], "op": "DUP1", "path": "29" }, "9866": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17791 ], "op": "PUSH2", "path": "29", "value": "0x269E" }, "9869": { "branch": 401, "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17791 ], "op": "JUMPI", "path": "29" }, "9870": { "op": "POP" }, "9871": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17754, 17791 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "9873": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17750 ], "op": "DUP4", "path": "29" }, "9874": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "9876": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "DUP2", "path": "29" }, "9877": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "GT", "path": "29" }, "9878": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "ISZERO", "path": "29" }, "9879": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "PUSH2", "path": "29", "value": "0x269C" }, "9882": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "JUMPI", "path": "29" }, "9883": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "INVALID", "path": "29" }, "9884": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "JUMPDEST", "path": "29" }, "9885": { "branch": 402, "fn": "BatchAction._executeNTokenAction", "offset": [ 17739, 17791 ], "op": "EQ", "path": "29" }, "9886": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17586, 17791 ], "op": "JUMPDEST", "path": "29" }, "9887": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17569, 19284 ], "op": "ISZERO", "path": "29" }, "9888": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17569, 19284 ], "op": "PUSH2", "path": "29", "value": "0x276A" }, "9891": { "branch": 402, "fn": "BatchAction._executeNTokenAction", "offset": [ 17569, 19284 ], "op": "JUMPI", "path": "29" }, "9892": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17908, 17963 ], "op": "PUSH2", "path": "29", "statement": 229, "value": "0x26AD" }, "9895": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17929, 17941 ], "op": "DUP5", "path": "29" }, "9896": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17943, 17962 ], "op": "DUP3", "path": "29" }, "9897": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17908, 17928 ], "op": "PUSH2", "path": "29", "value": "0x17BE" }, "9900": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 17908, 17963 ], "op": "JUMP", "path": "29" }, "9901": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17908, 17963 ], "op": "JUMPDEST", "path": "29" }, "9902": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18032 ], "op": "PUSH1", "path": "29", "statement": 230, "value": "0x60" }, "9904": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18032 ], "op": "DUP5", "path": "29" }, "9905": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18032 ], "op": "ADD", "path": "29" }, "9906": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18032 ], "op": "MLOAD", "path": "29" }, "9907": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18057 ], "op": "PUSH2", "path": "29", "value": "0x26BC" }, "9910": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18057 ], "op": "SWAP1", "path": "29" }, "9911": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18037, 18056 ], "op": "DUP3", "path": "29" }, "9912": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18036 ], "op": "PUSH2", "path": "29", "value": "0x287E" }, "9915": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18006, 18057 ], "op": "JUMP", "path": "29" }, "9916": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18006, 18057 ], "op": "JUMPDEST", "path": "29" }, "9917": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17977, 18003 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "9919": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17977, 18003 ], "op": "DUP6", "path": "29" }, "9920": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17977, 18003 ], "op": "ADD", "path": "29" }, "9921": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17977, 18057 ], "op": "MSTORE", "path": "29" }, "9922": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18235, 18258 ], "op": "DUP4", "path": "29" }, "9923": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18235, 18258 ], "op": "MLOAD", "path": "29" }, "9924": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "9926": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "MLOAD", "path": "29" }, "9927": { "op": "PUSH4", "value": "0x21285613" }, "9932": { "op": "PUSH1", "value": "0xE1" }, "9934": { "op": "SHL" }, "9935": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP2", "path": "29" }, "9936": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "MSTORE", "path": "29" }, "9937": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18168, 18187 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "9939": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18168, 18187 ], "op": "SWAP2", "path": "29" }, "9940": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18206 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "9961": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18206 ], "op": "SWAP2", "path": "29" }, "9962": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18217 ], "op": "PUSH4", "path": "29", "value": "0x4250AC26" }, "9967": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18217 ], "op": "SWAP2", "path": "29" }, "9968": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH2", "path": "29", "value": "0x26FD" }, "9971": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "SWAP2", "path": "29" }, "9972": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18276, 18295 ], "op": "DUP7", "path": "29" }, "9973": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18276, 18295 ], "op": "SWAP1", "path": "29" }, "9974": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "9976": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ADD", "path": "29" }, "9977": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH2", "path": "29", "value": "0x4AC3" }, "9980": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18190, 18309 ], "op": "JUMP", "path": "29" }, "9981": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "JUMPDEST", "path": "29" }, "9982": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "9984": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "9986": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "MLOAD", "path": "29" }, "9987": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "9988": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP4", "path": "29" }, "9989": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "SUB", "path": "29" }, "9990": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP2", "path": "29" }, "9991": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP7", "path": "29" }, "9992": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "9993": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "EXTCODESIZE", "path": "29" }, "9994": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ISZERO", "path": "29" }, "9995": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "9996": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ISZERO", "path": "29" }, "9997": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH2", "path": "29", "value": "0x2715" }, "10000": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "JUMPI", "path": "29" }, "10001": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10003": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "10004": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "REVERT", "path": "29" }, "10005": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "JUMPDEST", "path": "29" }, "10006": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "POP", "path": "29" }, "10007": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "GAS", "path": "29" }, "10008": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DELEGATECALL", "path": "29" }, "10009": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ISZERO", "path": "29" }, "10010": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "10011": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ISZERO", "path": "29" }, "10012": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH2", "path": "29", "value": "0x2729" }, "10015": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "JUMPI", "path": "29" }, "10016": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "RETURNDATASIZE", "path": "29" }, "10017": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10019": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "10020": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "RETURNDATACOPY", "path": "29" }, "10021": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "RETURNDATASIZE", "path": "29" }, "10022": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10024": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "REVERT", "path": "29" }, "10025": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "JUMPDEST", "path": "29" }, "10026": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "POP", "path": "29" }, "10027": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "POP", "path": "29" }, "10028": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "POP", "path": "29" }, "10029": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "POP", "path": "29" }, "10030": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10032": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "MLOAD", "path": "29" }, "10033": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "RETURNDATASIZE", "path": "29" }, "10034": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "10036": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "NOT", "path": "29" }, "10037": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "10039": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP3", "path": "29" }, "10040": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ADD", "path": "29" }, "10041": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "AND", "path": "29" }, "10042": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP3", "path": "29" }, "10043": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ADD", "path": "29" }, "10044": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP1", "path": "29" }, "10045": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10047": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "MSTORE", "path": "29" }, "10048": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "POP", "path": "29" }, "10049": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "DUP2", "path": "29" }, "10050": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "ADD", "path": "29" }, "10051": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "SWAP1", "path": "29" }, "10052": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH2", "path": "29", "value": "0x274D" }, "10055": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "SWAP2", "path": "29" }, "10056": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "SWAP1", "path": "29" }, "10057": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "PUSH2", "path": "29", "value": "0x43D8" }, "10060": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18190, 18309 ], "op": "JUMP", "path": "29" }, "10061": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18190, 18309 ], "op": "JUMPDEST", "path": "29" }, "10062": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18395 ], "op": "PUSH1", "path": "29", "statement": 231, "value": "0xC0" }, "10064": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18395 ], "op": "DUP7", "path": "29" }, "10065": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18395 ], "op": "ADD", "path": "29" }, "10066": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18395 ], "op": "MLOAD", "path": "29" }, "10067": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18168, 18309 ], "op": "SWAP1", "path": "29" }, "10068": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18168, 18309 ], "op": "SWAP2", "path": "29" }, "10069": { "op": "POP" }, "10070": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18443 ], "op": "PUSH2", "path": "29", "value": "0x275F" }, "10073": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18443 ], "op": "SWAP1", "path": "29" }, "10074": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18168, 18309 ], "op": "DUP3", "path": "29" }, "10075": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18399 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "10078": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18361, 18443 ], "op": "JUMP", "path": "29" }, "10079": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18361, 18443 ], "op": "JUMPDEST", "path": "29" }, "10080": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18324, 18358 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "10082": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18324, 18358 ], "op": "DUP7", "path": "29" }, "10083": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18324, 18358 ], "op": "ADD", "path": "29" }, "10084": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18324, 18443 ], "op": "MSTORE", "path": "29" }, "10085": { "op": "POP" }, "10086": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17569, 19284 ], "op": "PUSH2", "path": "29", "value": "0x16D2" }, "10089": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17569, 19284 ], "op": "JUMP", "path": "29" }, "10090": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17569, 19284 ], "op": "JUMPDEST", "path": "29" }, "10091": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18479, 18509 ], "op": "PUSH1", "path": "29", "value": "0x5" }, "10093": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18475 ], "op": "DUP4", "path": "29" }, "10094": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "PUSH1", "path": "29", "value": "0x6" }, "10096": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "DUP2", "path": "29" }, "10097": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "GT", "path": "29" }, "10098": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "ISZERO", "path": "29" }, "10099": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "PUSH2", "path": "29", "value": "0x2778" }, "10102": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "JUMPI", "path": "29" }, "10103": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "INVALID", "path": "29" }, "10104": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "JUMPDEST", "path": "29" }, "10105": { "branch": 403, "fn": "BatchAction._executeNTokenAction", "offset": [ 18464, 18509 ], "op": "EQ", "path": "29" }, "10106": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18460, 19284 ], "op": "ISZERO", "path": "29" }, "10107": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18460, 19284 ], "op": "PUSH2", "path": "29", "value": "0x16D2" }, "10110": { "branch": 403, "fn": "BatchAction._executeNTokenAction", "offset": [ 18460, 19284 ], "op": "JUMPI", "path": "29" }, "10111": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18803, 18822 ], "op": "DUP2", "path": "29", "statement": 232 }, "10112": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18799 ], "op": "PUSH2", "path": "29", "value": "0x27A2" }, "10115": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18764, 18776 ], "op": "DUP6", "path": "29" }, "10116": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18764, 18798 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "10118": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18764, 18798 ], "op": "ADD", "path": "29" }, "10119": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18764, 18798 ], "op": "MLOAD", "path": "29" }, "10120": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18695 ], "op": "PUSH2", "path": "29", "value": "0x11C6" }, "10123": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18664, 18676 ], "op": "DUP8", "path": "29" }, "10124": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18664, 18694 ], "op": "PUSH1", "path": "29", "value": "0xA0" }, "10126": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18664, 18694 ], "op": "ADD", "path": "29" }, "10127": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18664, 18694 ], "op": "MLOAD", "path": "29" }, "10128": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18597 ], "op": "DUP9", "path": "29" }, "10129": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18638 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10131": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18638 ], "op": "ADD", "path": "29" }, "10132": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18638 ], "op": "MLOAD", "path": "29" }, "10133": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18663 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "10136": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18663 ], "op": "SWAP1", "path": "29" }, "10137": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18695 ], "op": "SWAP2", "path": "29" }, "10138": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18695 ], "op": "SWAP1", "path": "29" }, "10139": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18695 ], "op": "PUSH4", "path": "29", "value": "0xFFFFFFFF" }, "10144": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18695 ], "op": "AND", "path": "29" }, "10145": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18585, 18695 ], "op": "JUMP", "path": "29" }, "10146": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18799 ], "op": "JUMPDEST", "path": "29" }, "10147": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18822 ], "op": "SLT", "path": "29" }, "10148": { "branch": 404, "fn": "BatchAction._executeNTokenAction", "offset": [ 18585, 18822 ], "op": "ISZERO", "path": "29" }, "10149": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "PUSH2", "path": "29", "value": "0x27C0" }, "10152": { "branch": 404, "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "JUMPI", "path": "29" }, "10153": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10155": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "MLOAD", "path": "29" }, "10156": { "op": "PUSH3", "value": "0x461BCD" }, "10160": { "op": "PUSH1", "value": "0xE5" }, "10162": { "op": "SHL" }, "10163": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "DUP2", "path": "29" }, "10164": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "MSTORE", "path": "29" }, "10165": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "10167": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "ADD", "path": "29" }, "10168": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "PUSH2", "path": "29", "value": "0x17A" }, "10171": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "SWAP1", "path": "29" }, "10172": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "PUSH2", "path": "29", "value": "0x498E" }, "10175": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18525, 18882 ], "op": "JUMP", "path": "29" }, "10176": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18525, 18882 ], "op": "JUMPDEST", "path": "29" }, "10177": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 18968 ], "op": "PUSH1", "path": "29", "statement": 233, "value": "0xC0" }, "10179": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 18968 ], "op": "DUP5", "path": "29" }, "10180": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 18968 ], "op": "ADD", "path": "29" }, "10181": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 18968 ], "op": "MLOAD", "path": "29" }, "10182": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 19023 ], "op": "PUSH2", "path": "29", "value": "0x27CF" }, "10185": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 19023 ], "op": "SWAP1", "path": "29" }, "10186": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18990, 19009 ], "op": "DUP4", "path": "29" }, "10187": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 18972 ], "op": "PUSH2", "path": "29", "value": "0x287E" }, "10190": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 18934, 19023 ], "op": "JUMP", "path": "29" }, "10191": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18934, 19023 ], "op": "JUMPDEST", "path": "29" }, "10192": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18897, 18931 ], "op": "PUSH1", "path": "29", "value": "0xC0" }, "10194": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18897, 18931 ], "op": "DUP6", "path": "29" }, "10195": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18897, 18931 ], "op": "ADD", "path": "29" }, "10196": { "fn": "BatchAction._executeNTokenAction", "offset": [ 18897, 19023 ], "op": "MSTORE", "path": "29" }, "10197": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19114, 19137 ], "op": "DUP4", "path": "29" }, "10198": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19114, 19137 ], "op": "MLOAD", "path": "29" }, "10199": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10201": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "MLOAD", "path": "29" }, "10202": { "op": "PUSH4", "value": "0x52E73F77" }, "10207": { "op": "PUSH1", "value": "0xE0" }, "10209": { "op": "SHL" }, "10210": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP2", "path": "29" }, "10211": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "MSTORE", "path": "29" }, "10212": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19038, 19054 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10214": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19038, 19054 ], "op": "SWAP2", "path": "29" }, "10215": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19075 ], "op": "PUSH20", "path": "29", "value": "0x0" }, "10236": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19075 ], "op": "SWAP2", "path": "29" }, "10237": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19096 ], "op": "PUSH4", "path": "29", "value": "0x52E73F77" }, "10242": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19096 ], "op": "SWAP2", "path": "29" }, "10243": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH2", "path": "29", "value": "0x2810" }, "10246": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "SWAP2", "path": "29" }, "10247": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19155, 19174 ], "op": "DUP8", "path": "29" }, "10248": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19155, 19174 ], "op": "SWAP1", "path": "29" }, "10249": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x4" }, "10251": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ADD", "path": "29" }, "10252": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH2", "path": "29", "value": "0x4AC3" }, "10255": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 19057, 19188 ], "op": "JUMP", "path": "29" }, "10256": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "JUMPDEST", "path": "29" }, "10257": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x20" }, "10259": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10261": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "MLOAD", "path": "29" }, "10262": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10263": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP4", "path": "29" }, "10264": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "SUB", "path": "29" }, "10265": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP2", "path": "29" }, "10266": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP7", "path": "29" }, "10267": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10268": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "EXTCODESIZE", "path": "29" }, "10269": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ISZERO", "path": "29" }, "10270": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10271": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ISZERO", "path": "29" }, "10272": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH2", "path": "29", "value": "0x2828" }, "10275": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "JUMPI", "path": "29" }, "10276": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10278": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10279": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "REVERT", "path": "29" }, "10280": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "JUMPDEST", "path": "29" }, "10281": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "POP", "path": "29" }, "10282": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "GAS", "path": "29" }, "10283": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DELEGATECALL", "path": "29" }, "10284": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ISZERO", "path": "29" }, "10285": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10286": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ISZERO", "path": "29" }, "10287": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH2", "path": "29", "value": "0x283C" }, "10290": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "JUMPI", "path": "29" }, "10291": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "RETURNDATASIZE", "path": "29" }, "10292": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10294": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10295": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "RETURNDATACOPY", "path": "29" }, "10296": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "RETURNDATASIZE", "path": "29" }, "10297": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x0" }, "10299": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "REVERT", "path": "29" }, "10300": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "JUMPDEST", "path": "29" }, "10301": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "POP", "path": "29" }, "10302": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "POP", "path": "29" }, "10303": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "POP", "path": "29" }, "10304": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "POP", "path": "29" }, "10305": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10307": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "MLOAD", "path": "29" }, "10308": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "RETURNDATASIZE", "path": "29" }, "10309": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "10311": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "NOT", "path": "29" }, "10312": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x1F" }, "10314": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP3", "path": "29" }, "10315": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ADD", "path": "29" }, "10316": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "AND", "path": "29" }, "10317": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP3", "path": "29" }, "10318": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ADD", "path": "29" }, "10319": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP1", "path": "29" }, "10320": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH1", "path": "29", "value": "0x40" }, "10322": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "MSTORE", "path": "29" }, "10323": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "POP", "path": "29" }, "10324": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "DUP2", "path": "29" }, "10325": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "ADD", "path": "29" }, "10326": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "SWAP1", "path": "29" }, "10327": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH2", "path": "29", "value": "0x2860" }, "10330": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "SWAP2", "path": "29" }, "10331": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "SWAP1", "path": "29" }, "10332": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "PUSH2", "path": "29", "value": "0x43D8" }, "10335": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 19057, 19188 ], "op": "JUMP", "path": "29" }, "10336": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19057, 19188 ], "op": "JUMPDEST", "path": "29" }, "10337": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19258 ], "op": "PUSH1", "path": "29", "statement": 234, "value": "0x60" }, "10339": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19258 ], "op": "DUP7", "path": "29" }, "10340": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19258 ], "op": "ADD", "path": "29" }, "10341": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19258 ], "op": "MLOAD", "path": "29" }, "10342": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19038, 19188 ], "op": "SWAP1", "path": "29" }, "10343": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19038, 19188 ], "op": "SWAP2", "path": "29" }, "10344": { "op": "POP" }, "10345": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19273 ], "op": "PUSH2", "path": "29", "value": "0x2872" }, "10348": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19273 ], "op": "SWAP1", "path": "29" }, "10349": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19038, 19188 ], "op": "DUP3", "path": "29" }, "10350": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19262 ], "op": "PUSH2", "path": "29", "value": "0xEC5" }, "10353": { "fn": "BatchAction._executeNTokenAction", "jump": "i", "offset": [ 19232, 19273 ], "op": "JUMP", "path": "29" }, "10354": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19232, 19273 ], "op": "JUMPDEST", "path": "29" }, "10355": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19203, 19229 ], "op": "PUSH1", "path": "29", "value": "0x60" }, "10357": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19203, 19229 ], "op": "DUP7", "path": "29" }, "10358": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19203, 19229 ], "op": "ADD", "path": "29" }, "10359": { "fn": "BatchAction._executeNTokenAction", "offset": [ 19203, 19273 ], "op": "MSTORE", "path": "29" }, "10360": { "op": "POP" }, "10361": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17289, 19290 ], "op": "POP", "path": "29" }, "10362": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17289, 19290 ], "op": "POP", "path": "29" }, "10363": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17289, 19290 ], "op": "POP", "path": "29" }, "10364": { "fn": "BatchAction._executeNTokenAction", "offset": [ 17289, 19290 ], "op": "POP", "path": "29" }, "10365": { "fn": "BatchAction._executeNTokenAction", "jump": "o", "offset": [ 17289, 19290 ], "op": "JUMP", "path": "29" }, "10366": { "fn": "SafeInt256.sub", "offset": [ 1267, 1421 ], "op": "JUMPDEST", "path": "94" }, "10367": { "fn": "SafeInt256.sub", "offset": [ 1390, 1395 ], "op": "DUP1", "path": "94", "statement": 235 }, "10368": { "fn": "SafeInt256.sub", "offset": [ 1390, 1395 ], "op": "DUP3", "path": "94" }, "10369": { "fn": "SafeInt256.sub", "offset": [ 1390, 1395 ], "op": "SUB", "path": "94" }, "10370": { "fn": "SafeInt256.sub", "offset": [ 1385, 1401 ], "op": "DUP3", "path": "94" }, "10371": { "fn": "SafeInt256.sub", "offset": [ 1385, 1401 ], "op": "DUP2", "path": "94" }, "10372": { "fn": "SafeInt256.sub", "offset": [ 1385, 1401 ], "op": "SGT", "path": "94" }, "10373": { "fn": "SafeInt256.sub", "offset": [ 1385, 1401 ], "op": "ISZERO", "path": "94" }, "10374": { "fn": "SafeInt256.sub", "offset": [ 1323, 1331 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "10376": { "fn": "SafeInt256.sub", "offset": [ 1406, 1412 ], "op": "DUP4", "path": "94" }, "10377": { "fn": "SafeInt256.sub", "offset": [ 1406, 1412 ], "op": "SLT", "path": "94" }, "10378": { "fn": "SafeInt256.sub", "offset": [ 1406, 1412 ], "op": "ISZERO", "path": "94" }, "10379": { "branch": 535, "fn": "SafeInt256.sub", "offset": [ 1385, 1413 ], "op": "EQ", "path": "94" }, "10380": { "fn": "SafeInt256.sub", "offset": [ 1377, 1414 ], "op": "PUSH2", "path": "94", "value": "0xEDB" }, "10383": { "branch": 535, "fn": "SafeInt256.sub", "offset": [ 1377, 1414 ], "op": "JUMPI", "path": "94" }, "10384": { "fn": "SafeInt256.sub", "offset": [ 1377, 1414 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "10386": { "fn": "SafeInt256.sub", "offset": [ 1377, 1414 ], "op": "DUP1", "path": "94" }, "10387": { "fn": "SafeInt256.sub", "offset": [ 1377, 1414 ], "op": "REVERT", "path": "94" }, "10388": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2175, 2407 ], "op": "JUMPDEST", "path": "62" }, "10389": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2241, 2288 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "10391": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2305, 2317 ], "op": "DUP1", "path": "62" }, "10392": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2320, 2360 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "10395": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2336, 2359 ], "op": "PUSH1", "path": "62", "value": "0x2" }, "10397": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2320, 2335 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "10400": { "fn": "LibStorage.getNTokenContextStorage", "jump": "i", "offset": [ 2320, 2360 ], "op": "JUMP", "path": "62" }, "10401": { "fn": "DateTime.getTimeUTC0", "offset": [ 583, 743 ], "op": "JUMPDEST", "path": "78" }, "10402": { "fn": "DateTime.getTimeUTC0", "offset": [ 641, 648 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "10404": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "10408": { "fn": "DateTime.getTimeUTC0", "offset": [ 668, 672 ], "op": "DUP3", "path": "78", "statement": 236 }, "10409": { "fn": "DateTime.getTimeUTC0", "offset": [ 668, 689 ], "op": "LT", "path": "78" }, "10410": { "branch": 481, "fn": "DateTime.getTimeUTC0", "offset": [ 668, 689 ], "op": "ISZERO", "path": "78" }, "10411": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "PUSH2", "path": "78", "value": "0x28B3" }, "10414": { "branch": 481, "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "JUMPI", "path": "78" }, "10415": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "10417": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "DUP1", "path": "78" }, "10418": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "REVERT", "path": "78" }, "10419": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "JUMPDEST", "path": "78" }, "10420": { "op": "POP" }, "10421": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "10425": { "fn": "DateTime.getTimeUTC0", "offset": [ 715, 735 ], "op": "DUP2", "path": "78", "statement": 237 }, "10426": { "fn": "DateTime.getTimeUTC0", "offset": [ 715, 735 ], "op": "MOD", "path": "78" }, "10427": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SWAP1", "path": "78" }, "10428": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SUB", "path": "78" }, "10429": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SWAP1", "path": "78" }, "10430": { "fn": "DateTime.getTimeUTC0", "jump": "o", "offset": [ 583, 743 ], "op": "JUMP", "path": "78" }, "10431": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16756, 17863 ], "op": "JUMPDEST", "path": "84" }, "10432": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16858, 16881 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "10434": { "offset": [ 588, 590 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "10436": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16961 ], "op": "DUP3", "path": "84", "statement": 238 }, "10437": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "10439": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "AND", "path": "84" }, "10440": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "GT", "path": "84" }, "10441": { "branch": 506, "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "ISZERO", "path": "84" }, "10442": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "PUSH2", "path": "84", "value": "0x28D2" }, "10445": { "branch": 506, "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "JUMPI", "path": "84" }, "10446": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10448": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "DUP1", "path": "84" }, "10449": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "REVERT", "path": "84" }, "10450": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "JUMPDEST", "path": "84" }, "10451": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16997, 17087 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10453": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17090, 17127 ], "op": "PUSH2", "path": "84", "value": "0x28DC" }, "10456": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17090, 17125 ], "op": "PUSH2", "path": "84", "value": "0x37BE" }, "10459": { "fn": "PortfolioHandler._loadAssetArray", "jump": "i", "offset": [ 17090, 17127 ], "op": "JUMP", "path": "84" }, "10460": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17090, 17127 ], "op": "JUMPDEST", "path": "84" }, "10461": { "op": "PUSH1", "value": "0x1" }, "10463": { "op": "PUSH1", "value": "0x1" }, "10465": { "op": "PUSH1", "value": "0xA0" }, "10467": { "op": "SHL" }, "10468": { "op": "SUB" }, "10469": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP6", "path": "84" }, "10470": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "AND", "path": "84" }, "10471": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17137, 17201 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10473": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "SWAP1", "path": "84" }, "10474": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP2", "path": "84" }, "10475": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "MSTORE", "path": "84" }, "10476": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10478": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP3", "path": "84" }, "10479": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "SWAP1", "path": "84" }, "10480": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "MSTORE", "path": "84" }, "10481": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10483": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP2", "path": "84" }, "10484": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "KECCAK256", "path": "84" }, "10485": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16997, 17127 ], "op": "SWAP2", "path": "84" }, "10486": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16997, 17127 ], "op": "SWAP3", "path": "84" }, "10487": { "op": "POP" }, "10488": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "10490": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP6", "path": "84" }, "10491": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "AND", "path": "84" }, "10492": { "op": "PUSH1", "value": "0x1" }, "10494": { "op": "PUSH1", "value": "0x1" }, "10496": { "op": "PUSH1", "value": "0x40" }, "10498": { "op": "SHL" }, "10499": { "op": "SUB" }, "10500": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "10501": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "GT", "path": "84" }, "10502": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "10503": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ISZERO", "path": "84" }, "10504": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x2910" }, "10507": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPI", "path": "84" }, "10508": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10510": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "10511": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "REVERT", "path": "84" }, "10512": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "10513": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "POP", "path": "84" }, "10514": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10516": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MLOAD", "path": "84" }, "10517": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "10518": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "10519": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP3", "path": "84" }, "10520": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MSTORE", "path": "84" }, "10521": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "10522": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10524": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MUL", "path": "84" }, "10525": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10527": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "10528": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP3", "path": "84" }, "10529": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "10530": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10532": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MSTORE", "path": "84" }, "10533": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "10534": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ISZERO", "path": "84" }, "10535": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x294A" }, "10538": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPI", "path": "84" }, "10539": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "10540": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10542": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "10543": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "10544": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x2937" }, "10547": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x3FB8" }, "10550": { "fn": "PortfolioHandler._loadAssetArray", "jump": "i", "offset": [ 17261, 17289 ], "op": "JUMP", "path": "84" }, "10551": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "10552": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "10553": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MSTORE", "path": "84" }, "10554": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10556": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "10557": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "10558": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10560": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "10561": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SUB", "path": "84" }, "10562": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "10563": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "10564": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x292F" }, "10567": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPI", "path": "84" }, "10568": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "10569": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "POP", "path": "84" }, "10570": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "10571": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "POP", "path": "84" }, "10572": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17228, 17289 ], "op": "SWAP1", "path": "84" }, "10573": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17228, 17289 ], "op": "POP", "path": "84" }, "10574": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17305, 17314 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10576": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMPDEST", "path": "84" }, "10577": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17324, 17330 ], "op": "DUP6", "path": "84" }, "10578": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17330 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "10580": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17330 ], "op": "AND", "path": "84" }, "10581": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17321 ], "op": "DUP2", "path": "84" }, "10582": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17330 ], "op": "LT", "path": "84" }, "10583": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "ISZERO", "path": "84" }, "10584": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "PUSH2", "path": "84", "value": "0x29D6" }, "10587": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMPI", "path": "84" }, "10588": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17351, 17393 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10590": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17408 ], "op": "DUP4", "path": "84" }, "10591": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17409, 17410 ], "op": "DUP3", "path": "84" }, "10592": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "10594": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "DUP2", "path": "84" }, "10595": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "LT", "path": "84" }, "10596": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "PUSH2", "path": "84", "value": "0x2969" }, "10599": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "JUMPI", "path": "84" }, "10600": { "dev": "Index out of range", "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "INVALID", "path": "84" }, "10601": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "JUMPDEST", "path": "84" }, "10602": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "ADD", "path": "84" }, "10603": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17351, 17411 ], "op": "SWAP1", "path": "84" }, "10604": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17351, 17411 ], "op": "POP", "path": "84" }, "10605": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17425, 17452 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10607": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17461 ], "op": "DUP4", "path": "84" }, "10608": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17462, 17463 ], "op": "DUP4", "path": "84" }, "10609": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "10610": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "MLOAD", "path": "84" }, "10611": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "10612": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "LT", "path": "84" }, "10613": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "PUSH2", "path": "84", "value": "0x297A" }, "10616": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "JUMPI", "path": "84" }, "10617": { "dev": "Index out of range", "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "INVALID", "path": "84" }, "10618": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "JUMPDEST", "path": "84" }, "10619": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10621": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP1", "path": "84" }, "10622": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "10623": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "MUL", "path": "84" }, "10624": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP2", "path": "84" }, "10625": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP1", "path": "84" }, "10626": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP2", "path": "84" }, "10627": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "ADD", "path": "84" }, "10628": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "10629": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "ADD", "path": "84" }, "10630": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "MLOAD", "path": "84" }, "10631": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "DUP4", "path": "84", "statement": 239 }, "10632": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "SLOAD", "path": "84" }, "10633": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "PUSH2", "path": "84", "value": "0xFFFF" }, "10636": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "DUP2", "path": "84" }, "10637": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "AND", "path": "84" }, "10638": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17584, 17626 ], "op": "DUP3", "path": "84" }, "10639": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17584, 17626 ], "op": "MSTORE", "path": "84" }, "10640": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "PUSH5", "path": "84", "statement": 240, "value": "0xFFFFFFFFFF" }, "10646": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "PUSH3", "path": "84", "value": "0x10000" }, "10650": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "DUP3", "path": "84" }, "10651": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "DIV", "path": "84" }, "10652": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "AND", "path": "84" }, "10653": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17654 ], "op": "SWAP3", "path": "84" }, "10654": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17654 ], "op": "DUP3", "path": "84" }, "10655": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17654 ], "op": "ADD", "path": "84" }, "10656": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "SWAP3", "path": "84" }, "10657": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "SWAP1", "path": "84" }, "10658": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "SWAP3", "path": "84" }, "10659": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "MSTORE", "path": "84" }, "10660": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "PUSH1", "path": "84", "statement": 241, "value": "0xFF" }, "10662": { "op": "PUSH1", "value": "0x1" }, "10664": { "op": "PUSH1", "value": "0x38" }, "10666": { "op": "SHL" }, "10667": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "DUP4", "path": "84" }, "10668": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "DIV", "path": "84" }, "10669": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "AND", "path": "84" }, "10670": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17707 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10672": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17707 ], "op": "DUP3", "path": "84" }, "10673": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17707 ], "op": "ADD", "path": "84" }, "10674": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17732 ], "op": "MSTORE", "path": "84" }, "10675": { "op": "PUSH1", "value": "0x1" }, "10677": { "op": "PUSH1", "value": "0x40" }, "10679": { "op": "SHL" }, "10680": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SWAP1", "path": "84", "statement": 242 }, "10681": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SWAP2", "path": "84" }, "10682": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "DIV", "path": "84" }, "10683": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "PUSH1", "path": "84", "value": "0xA" }, "10685": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SWAP1", "path": "84" }, "10686": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "DUP2", "path": "84" }, "10687": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SIGNEXTEND", "path": "84" }, "10688": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17784 ], "op": "SWAP1", "path": "84" }, "10689": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17784 ], "op": "SIGNEXTEND", "path": "84" }, "10690": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17760 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "10692": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17760 ], "op": "DUP3", "path": "84" }, "10693": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17760 ], "op": "ADD", "path": "84" }, "10694": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17784 ], "op": "MSTORE", "path": "84" }, "10695": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17815 ], "op": "PUSH1", "path": "84", "statement": 243, "value": "0x80" }, "10697": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17815 ], "op": "ADD", "path": "84" }, "10698": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "SWAP2", "path": "84" }, "10699": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "SWAP1", "path": "84" }, "10700": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "SWAP2", "path": "84" }, "10701": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "MSTORE", "path": "84" }, "10702": { "op": "POP" }, "10703": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10705": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17332, 17335 ], "op": "ADD", "path": "84", "statement": 244 }, "10706": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "PUSH2", "path": "84", "value": "0x2950" }, "10709": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMP", "path": "84" }, "10710": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMPDEST", "path": "84" }, "10711": { "op": "POP" }, "10712": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17850, 17856 ], "op": "SWAP6", "path": "84", "statement": 245 }, "10713": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16756, 17863 ], "op": "SWAP5", "path": "84" }, "10714": { "op": "POP" }, "10715": { "op": "POP" }, "10716": { "op": "POP" }, "10717": { "op": "POP" }, "10718": { "op": "POP" }, "10719": { "fn": "PortfolioHandler._loadAssetArray", "jump": "o", "offset": [ 16756, 17863 ], "op": "JUMP", "path": "84" }, "10720": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15921, 16750 ], "op": "JUMPDEST", "path": "84" }, "10721": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16015, 16028 ], "op": "DUP1", "path": "84" }, "10722": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16015, 16028 ], "op": "MLOAD", "path": "84" }, "10723": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15998, 16012 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10725": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16015, 16028 ], "op": "DUP2", "path": "84" }, "10726": { "op": "PUSH1", "value": "0x1" }, "10728": { "op": "PUSH1", "value": "0x1" }, "10730": { "op": "PUSH1", "value": "0x40" }, "10732": { "op": "SHL" }, "10733": { "op": "SUB" }, "10734": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP2", "path": "84" }, "10735": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "GT", "path": "84" }, "10736": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "10737": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ISZERO", "path": "84" }, "10738": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH2", "path": "84", "value": "0x29FA" }, "10741": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPI", "path": "84" }, "10742": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10744": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "10745": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "REVERT", "path": "84" }, "10746": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPDEST", "path": "84" }, "10747": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "POP", "path": "84" }, "10748": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10750": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MLOAD", "path": "84" }, "10751": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "SWAP1", "path": "84" }, "10752": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "10753": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP3", "path": "84" }, "10754": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MSTORE", "path": "84" }, "10755": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "10756": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10758": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MUL", "path": "84" }, "10759": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10761": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "10762": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP3", "path": "84" }, "10763": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "10764": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10766": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MSTORE", "path": "84" }, "10767": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "10768": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ISZERO", "path": "84" }, "10769": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH2", "path": "84", "value": "0x2A24" }, "10772": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPI", "path": "84" }, "10773": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP2", "path": "84" }, "10774": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10776": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "10777": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10779": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP3", "path": "84" }, "10780": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MUL", "path": "84" }, "10781": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "10782": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "CALLDATASIZE", "path": "84" }, "10783": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP4", "path": "84" }, "10784": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "CALLDATACOPY", "path": "84" }, "10785": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "10786": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "SWAP1", "path": "84" }, "10787": { "op": "POP" }, "10788": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPDEST", "path": "84" }, "10789": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "POP", "path": "84" }, "10790": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16038, 16082 ], "op": "SWAP1", "path": "84" }, "10791": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16038, 16082 ], "op": "POP", "path": "84" }, "10792": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16097, 16106 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10794": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMPDEST", "path": "84" }, "10795": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16112, 16118 ], "op": "DUP3", "path": "84" }, "10796": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16108, 16109 ], "op": "DUP2", "path": "84" }, "10797": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16108, 16118 ], "op": "LT", "path": "84" }, "10798": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "ISZERO", "path": "84" }, "10799": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "PUSH2", "path": "84", "value": "0x2A81" }, "10802": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMPI", "path": "84" }, "10803": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16139, 16166 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10805": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16175 ], "op": "DUP5", "path": "84" }, "10806": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16176, 16177 ], "op": "DUP3", "path": "84" }, "10807": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "DUP2", "path": "84" }, "10808": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "MLOAD", "path": "84" }, "10809": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "DUP2", "path": "84" }, "10810": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "LT", "path": "84" }, "10811": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "PUSH2", "path": "84", "value": "0x2A40" }, "10814": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "JUMPI", "path": "84" }, "10815": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "INVALID", "path": "84" }, "10816": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "JUMPDEST", "path": "84" }, "10817": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10819": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "MUL", "path": "84" }, "10820": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10822": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "ADD", "path": "84" }, "10823": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "ADD", "path": "84" }, "10824": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "MLOAD", "path": "84" }, "10825": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16139, 16178 ], "op": "SWAP1", "path": "84" }, "10826": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16139, 16178 ], "op": "POP", "path": "84" }, "10827": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16259, 16338 ], "op": "PUSH2", "path": "84", "statement": 246, "value": "0x2A61" }, "10830": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16293 ], "op": "DUP2", "path": "84" }, "10831": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16304 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10833": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16304 ], "op": "ADD", "path": "84" }, "10834": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16304 ], "op": "MLOAD", "path": "84" }, "10835": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16311 ], "op": "DUP3", "path": "84" }, "10836": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16320 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10838": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16320 ], "op": "ADD", "path": "84" }, "10839": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16320 ], "op": "MLOAD", "path": "84" }, "10840": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16327 ], "op": "DUP4", "path": "84" }, "10841": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16337 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10843": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16337 ], "op": "ADD", "path": "84" }, "10844": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16337 ], "op": "MLOAD", "path": "84" }, "10845": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16259, 16287 ], "op": "PUSH2", "path": "84", "value": "0x37E0" }, "10848": { "fn": "PortfolioHandler._sortInPlace", "jump": "i", "offset": [ 16259, 16338 ], "op": "JUMP", "path": "84" }, "10849": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16259, 16338 ], "op": "JUMPDEST", "path": "84" }, "10850": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16253 ], "op": "DUP4", "path": "84" }, "10851": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16254, 16255 ], "op": "DUP4", "path": "84" }, "10852": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "DUP2", "path": "84" }, "10853": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "MLOAD", "path": "84" }, "10854": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "DUP2", "path": "84" }, "10855": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "LT", "path": "84" }, "10856": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "PUSH2", "path": "84", "value": "0x2A6D" }, "10859": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "JUMPI", "path": "84" }, "10860": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "INVALID", "path": "84" }, "10861": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "JUMPDEST", "path": "84" }, "10862": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10864": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP1", "path": "84" }, "10865": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "DUP2", "path": "84" }, "10866": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "MUL", "path": "84" }, "10867": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP2", "path": "84" }, "10868": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP1", "path": "84" }, "10869": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP2", "path": "84" }, "10870": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "ADD", "path": "84" }, "10871": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "ADD", "path": "84" }, "10872": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16338 ], "op": "MSTORE", "path": "84" }, "10873": { "op": "POP" }, "10874": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16120, 16123 ], "op": "PUSH1", "path": "84", "statement": 247, "value": "0x1" }, "10876": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16120, 16123 ], "op": "ADD", "path": "84" }, "10877": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "PUSH2", "path": "84", "value": "0x2A2A" }, "10880": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMP", "path": "84" }, "10881": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMPDEST", "path": "84" }, "10882": { "op": "POP" }, "10883": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16403, 16404 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10885": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMPDEST", "path": "84" }, "10886": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16425, 16431 ], "op": "DUP3", "path": "84" }, "10887": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16421, 16422 ], "op": "DUP2", "path": "84" }, "10888": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16421, 16431 ], "op": "LT", "path": "84" }, "10889": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "ISZERO", "path": "84" }, "10890": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "PUSH2", "path": "84", "value": "0x16D2" }, "10893": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMPI", "path": "84" }, "10894": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16459, 16460 ], "op": "DUP1", "path": "84" }, "10895": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMPDEST", "path": "84" }, "10896": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16485, 16486 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10898": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16482 ], "op": "DUP2", "path": "84" }, "10899": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16486 ], "op": "GT", "path": "84" }, "10900": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "DUP1", "path": "84" }, "10901": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "ISZERO", "path": "84" }, "10902": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "PUSH2", "path": "84", "value": "0x2AC7" }, "10905": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "JUMPI", "path": "84" }, "10906": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "POP", "path": "84" }, "10907": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16506 ], "op": "DUP3", "path": "84" }, "10908": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16507, 16508 ], "op": "DUP2", "path": "84" }, "10909": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "DUP2", "path": "84" }, "10910": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "MLOAD", "path": "84" }, "10911": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "DUP2", "path": "84" }, "10912": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "LT", "path": "84" }, "10913": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "PUSH2", "path": "84", "value": "0x2AA6" }, "10916": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "JUMPI", "path": "84" }, "10917": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "INVALID", "path": "84" }, "10918": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "JUMPDEST", "path": "84" }, "10919": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10921": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "MUL", "path": "84" }, "10922": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10924": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "ADD", "path": "84" }, "10925": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "ADD", "path": "84" }, "10926": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "MLOAD", "path": "84" }, "10927": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16493 ], "op": "DUP4", "path": "84" }, "10928": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16498, 16499 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10930": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16494, 16495 ], "op": "DUP4", "path": "84" }, "10931": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16494, 16499 ], "op": "SUB", "path": "84" }, "10932": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "DUP2", "path": "84" }, "10933": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "MLOAD", "path": "84" }, "10934": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "DUP2", "path": "84" }, "10935": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "LT", "path": "84" }, "10936": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "PUSH2", "path": "84", "value": "0x2ABD" }, "10939": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "JUMPI", "path": "84" }, "10940": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "INVALID", "path": "84" }, "10941": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "JUMPDEST", "path": "84" }, "10942": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10944": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "MUL", "path": "84" }, "10945": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10947": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "ADD", "path": "84" }, "10948": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "ADD", "path": "84" }, "10949": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "MLOAD", "path": "84" }, "10950": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16509 ], "op": "GT", "path": "84" }, "10951": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "JUMPDEST", "path": "84" }, "10952": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "ISZERO", "path": "84" }, "10953": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "PUSH2", "path": "84", "value": "0x2B8F" }, "10956": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMPI", "path": "84" }, "10957": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16592 ], "op": "DUP3", "path": "84", "statement": 248 }, "10958": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16593, 16594 ], "op": "DUP2", "path": "84" }, "10959": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "DUP2", "path": "84" }, "10960": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "MLOAD", "path": "84" }, "10961": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "DUP2", "path": "84" }, "10962": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "LT", "path": "84" }, "10963": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "PUSH2", "path": "84", "value": "0x2AD8" }, "10966": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "JUMPI", "path": "84" }, "10967": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "INVALID", "path": "84" }, "10968": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "JUMPDEST", "path": "84" }, "10969": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10971": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "MUL", "path": "84" }, "10972": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10974": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "ADD", "path": "84" }, "10975": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "ADD", "path": "84" }, "10976": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "MLOAD", "path": "84" }, "10977": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16600 ], "op": "DUP4", "path": "84" }, "10978": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16605, 16606 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10980": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16601, 16602 ], "op": "DUP4", "path": "84" }, "10981": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16601, 16606 ], "op": "SUB", "path": "84" }, "10982": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "DUP2", "path": "84" }, "10983": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "MLOAD", "path": "84" }, "10984": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "DUP2", "path": "84" }, "10985": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "LT", "path": "84" }, "10986": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "PUSH2", "path": "84", "value": "0x2AEF" }, "10989": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "JUMPI", "path": "84" }, "10990": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "INVALID", "path": "84" }, "10991": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "JUMPDEST", "path": "84" }, "10992": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10994": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "MUL", "path": "84" }, "10995": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10997": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "ADD", "path": "84" }, "10998": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "ADD", "path": "84" }, "10999": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "MLOAD", "path": "84" }, "11000": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16569 ], "op": "DUP5", "path": "84" }, "11001": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16574, 16575 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "11003": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16570, 16571 ], "op": "DUP5", "path": "84" }, "11004": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16570, 16575 ], "op": "SUB", "path": "84" }, "11005": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "DUP2", "path": "84" }, "11006": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "MLOAD", "path": "84" }, "11007": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "DUP2", "path": "84" }, "11008": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "LT", "path": "84" }, "11009": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "PUSH2", "path": "84", "value": "0x2B06" }, "11012": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "JUMPI", "path": "84" }, "11013": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "INVALID", "path": "84" }, "11014": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "JUMPDEST", "path": "84" }, "11015": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11017": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "MUL", "path": "84" }, "11018": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11020": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "ADD", "path": "84" }, "11021": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "ADD", "path": "84" }, "11022": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16581 ], "op": "DUP6", "path": "84" }, "11023": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16582, 16583 ], "op": "DUP5", "path": "84" }, "11024": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "DUP2", "path": "84" }, "11025": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "MLOAD", "path": "84" }, "11026": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "DUP2", "path": "84" }, "11027": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "LT", "path": "84" }, "11028": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "PUSH2", "path": "84", "value": "0x2B19" }, "11031": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "JUMPI", "path": "84" }, "11032": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "INVALID", "path": "84" }, "11033": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "JUMPDEST", "path": "84" }, "11034": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11036": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "MUL", "path": "84" }, "11037": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11039": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "ADD", "path": "84" }, "11040": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "ADD", "path": "84" }, "11041": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP3", "path": "84" }, "11042": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP2", "path": "84" }, "11043": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "MSTORE", "path": "84" }, "11044": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "11045": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP3", "path": "84" }, "11046": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP2", "path": "84" }, "11047": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "MSTORE", "path": "84" }, "11048": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "11049": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "11050": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "11051": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16662 ], "op": "DUP5", "path": "84", "statement": 249 }, "11052": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16663, 16664 ], "op": "DUP2", "path": "84" }, "11053": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "DUP2", "path": "84" }, "11054": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "MLOAD", "path": "84" }, "11055": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "DUP2", "path": "84" }, "11056": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "LT", "path": "84" }, "11057": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "PUSH2", "path": "84", "value": "0x2B36" }, "11060": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "JUMPI", "path": "84" }, "11061": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "INVALID", "path": "84" }, "11062": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "JUMPDEST", "path": "84" }, "11063": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11065": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "MUL", "path": "84" }, "11066": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11068": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "ADD", "path": "84" }, "11069": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "ADD", "path": "84" }, "11070": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "MLOAD", "path": "84" }, "11071": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16673 ], "op": "DUP6", "path": "84" }, "11072": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16678, 16679 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "11074": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16674, 16675 ], "op": "DUP4", "path": "84" }, "11075": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16674, 16679 ], "op": "SUB", "path": "84" }, "11076": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "DUP2", "path": "84" }, "11077": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "MLOAD", "path": "84" }, "11078": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "DUP2", "path": "84" }, "11079": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "LT", "path": "84" }, "11080": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "PUSH2", "path": "84", "value": "0x2B4D" }, "11083": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "JUMPI", "path": "84" }, "11084": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "INVALID", "path": "84" }, "11085": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "JUMPDEST", "path": "84" }, "11086": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11088": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "MUL", "path": "84" }, "11089": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11091": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "ADD", "path": "84" }, "11092": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "ADD", "path": "84" }, "11093": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "MLOAD", "path": "84" }, "11094": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16633 ], "op": "DUP7", "path": "84" }, "11095": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16638, 16639 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "11097": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16634, 16635 ], "op": "DUP5", "path": "84" }, "11098": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16634, 16639 ], "op": "SUB", "path": "84" }, "11099": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "DUP2", "path": "84" }, "11100": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "MLOAD", "path": "84" }, "11101": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "DUP2", "path": "84" }, "11102": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "LT", "path": "84" }, "11103": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "PUSH2", "path": "84", "value": "0x2B64" }, "11106": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "JUMPI", "path": "84" }, "11107": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "INVALID", "path": "84" }, "11108": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "JUMPDEST", "path": "84" }, "11109": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11111": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "MUL", "path": "84" }, "11112": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11114": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "ADD", "path": "84" }, "11115": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "ADD", "path": "84" }, "11116": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16648 ], "op": "DUP8", "path": "84" }, "11117": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16649, 16650 ], "op": "DUP5", "path": "84" }, "11118": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "DUP2", "path": "84" }, "11119": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "MLOAD", "path": "84" }, "11120": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "DUP2", "path": "84" }, "11121": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "LT", "path": "84" }, "11122": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "PUSH2", "path": "84", "value": "0x2B77" }, "11125": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "JUMPI", "path": "84" }, "11126": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "INVALID", "path": "84" }, "11127": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "JUMPDEST", "path": "84" }, "11128": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11130": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP1", "path": "84" }, "11131": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "DUP2", "path": "84" }, "11132": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "MUL", "path": "84" }, "11133": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP2", "path": "84" }, "11134": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP1", "path": "84" }, "11135": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP2", "path": "84" }, "11136": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "ADD", "path": "84" }, "11137": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "ADD", "path": "84" }, "11138": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "SWAP2", "path": "84" }, "11139": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "SWAP1", "path": "84" }, "11140": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "SWAP2", "path": "84" }, "11141": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "MSTORE", "path": "84" }, "11142": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "MSTORE", "path": "84" }, "11143": { "op": "PUSH1", "value": "0x0" }, "11145": { "op": "NOT" }, "11146": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16699, 16702 ], "op": "ADD", "path": "84", "statement": 250 }, "11147": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "PUSH2", "path": "84", "value": "0x2A8F" }, "11150": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMP", "path": "84" }, "11151": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMPDEST", "path": "84" }, "11152": { "op": "POP" }, "11153": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16730, 16733 ], "op": "PUSH1", "path": "84", "statement": 251, "value": "0x1" }, "11155": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16730, 16733 ], "op": "ADD", "path": "84" }, "11156": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "PUSH2", "path": "84", "value": "0x2A85" }, "11159": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMP", "path": "84" }, "11160": { "fn": "LibStorage.getBalanceStorage", "offset": [ 3638, 3878 ], "op": "JUMPDEST", "path": "62" }, "11161": { "fn": "LibStorage.getBalanceStorage", "offset": [ 3698, 3766 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "11163": { "fn": "LibStorage.getBalanceStorage", "offset": [ 3782, 3794 ], "op": "DUP1", "path": "62" }, "11164": { "fn": "LibStorage.getBalanceStorage", "offset": [ 3797, 3831 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "11167": { "fn": "LibStorage.getBalanceStorage", "offset": [ 3813, 3830 ], "op": "PUSH1", "path": "62", "value": "0x6" }, "11169": { "fn": "LibStorage.getBalanceStorage", "offset": [ 3797, 3812 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "11172": { "fn": "LibStorage.getBalanceStorage", "jump": "i", "offset": [ 3797, 3831 ], "op": "JUMP", "path": "62" }, "11173": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1180, 1425 ], "op": "JUMPDEST", "path": "93" }, "11174": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1403, 1404 ], "op": "PUSH1", "path": "93", "statement": 252, "value": "0x8" }, "11176": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1394, 1404 ], "op": "DUP2", "path": "93" }, "11177": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1394, 1404 ], "op": "SWAP1", "path": "93" }, "11178": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1394, 1404 ], "op": "SHR", "path": "93" }, "11179": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1354, 1375 ], "op": "PUSH1", "path": "93", "value": "0xFF" }, "11181": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1354, 1375 ], "op": "SWAP1", "path": "93" }, "11182": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1354, 1375 ], "op": "SWAP2", "path": "93" }, "11183": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1354, 1375 ], "op": "AND", "path": "93" }, "11184": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1393, 1417 ], "op": "SHL", "path": "93" }, "11185": { "fn": "FloatingPoint56.unpackFrom56Bits", "offset": [ 1393, 1417 ], "op": "SWAP1", "path": "93" }, "11186": { "fn": "FloatingPoint56.unpackFrom56Bits", "jump": "o", "offset": [ 1180, 1425 ], "op": "JUMP", "path": "93" }, "11187": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 2832, 3267 ], "op": "JUMPDEST", "path": "76" }, "11188": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 2928, 2955 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "11190": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 2957, 2986 ], "op": "DUP1", "path": "76" }, "11191": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3002, 3052 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "11193": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3055, 3087 ], "op": "PUSH2", "path": "76", "value": "0x2BC0" }, "11196": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3055, 3085 ], "op": "PUSH2", "path": "76", "value": "0x383B" }, "11199": { "fn": "AssetRate._getAssetRateStorage", "jump": "i", "offset": [ 3055, 3087 ], "op": "JUMP", "path": "76" }, "11200": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3055, 3087 ], "op": "JUMPDEST", "path": "76" }, "11201": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3097, 3124 ], "op": "PUSH1", "path": "76", "value": "0x0" }, "11203": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "SWAP5", "path": "76" }, "11204": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "DUP6", "path": "76" }, "11205": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "MSTORE", "path": "76" }, "11206": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "PUSH1", "path": "76", "value": "0x20" }, "11208": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "MSTORE", "path": "76" }, "11209": { "op": "POP" }, "11210": { "op": "POP" }, "11211": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "PUSH1", "path": "76", "value": "0x40" }, "11213": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "SWAP1", "path": "76" }, "11214": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "SWAP2", "path": "76" }, "11215": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3127, 3144 ], "op": "KECCAK256", "path": "76" }, "11216": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3184, 3197 ], "op": "SLOAD", "path": "76", "statement": 253 }, "11217": { "op": "PUSH1", "value": "0x1" }, "11219": { "op": "PUSH1", "value": "0x1" }, "11221": { "op": "PUSH1", "value": "0xA0" }, "11223": { "op": "SHL" }, "11224": { "op": "SUB" }, "11225": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3184, 3197 ], "op": "DUP2", "path": "76" }, "11226": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3184, 3197 ], "op": "AND", "path": "76" }, "11227": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3184, 3197 ], "op": "SWAP3", "path": "76" }, "11228": { "op": "PUSH1", "value": "0x1" }, "11230": { "op": "PUSH1", "value": "0xA0" }, "11232": { "op": "SHL" }, "11233": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3234, 3260 ], "op": "SWAP1", "path": "76", "statement": 254 }, "11234": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3234, 3260 ], "op": "SWAP2", "path": "76" }, "11235": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3234, 3260 ], "op": "DIV", "path": "76" }, "11236": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3234, 3260 ], "op": "PUSH1", "path": "76", "value": "0xFF" }, "11238": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3234, 3260 ], "op": "AND", "path": "76" }, "11239": { "fn": "AssetRate._getAssetRateStorage", "offset": [ 3234, 3260 ], "op": "SWAP2", "path": "76" }, "11240": { "op": "POP" }, "11241": { "fn": "AssetRate._getAssetRateStorage", "jump": "o", "offset": [ 2832, 3267 ], "op": "JUMP", "path": "76" }, "11242": { "fn": "LibStorage.getTokenStorage", "offset": [ 3993, 4224 ], "op": "JUMPDEST", "path": "62" }, "11243": { "fn": "LibStorage.getTokenStorage", "offset": [ 4051, 4114 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "11245": { "fn": "LibStorage.getTokenStorage", "offset": [ 4130, 4142 ], "op": "DUP1", "path": "62" }, "11246": { "fn": "LibStorage.getTokenStorage", "offset": [ 4145, 4177 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "11249": { "fn": "LibStorage.getTokenStorage", "offset": [ 4161, 4176 ], "op": "PUSH1", "path": "62", "value": "0x7" }, "11251": { "fn": "LibStorage.getTokenStorage", "offset": [ 4145, 4160 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "11254": { "fn": "LibStorage.getTokenStorage", "jump": "i", "offset": [ 4145, 4177 ], "op": "JUMP", "path": "62" }, "11255": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 4999, 5988 ], "op": "JUMPDEST", "path": "70" }, "11256": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5122, 5147 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "11258": { "branch": 408, "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5163, 5192 ], "op": "DUP2", "path": "70" }, "11259": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5159, 5202 ], "op": "PUSH2", "path": "70", "value": "0x2C06" }, "11262": { "branch": 408, "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5159, 5202 ], "op": "JUMPI", "path": "70" }, "11263": { "op": "POP" }, "11264": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5201, 5202 ], "op": "PUSH1", "path": "70", "statement": 255, "value": "0x0" }, "11266": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5194, 5202 ], "op": "PUSH2", "path": "70", "value": "0xEDB" }, "11269": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5194, 5202 ], "op": "JUMP", "path": "70" }, "11270": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5159, 5202 ], "op": "JUMPDEST", "path": "70" }, "11271": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5265, 5277 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "11273": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5280, 5324 ], "op": "PUSH2", "path": "70", "value": "0x2C11" }, "11276": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5308, 5323 ], "op": "DUP5", "path": "70" }, "11277": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5280, 5307 ], "op": "PUSH2", "path": "70", "value": "0x30F3" }, "11280": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "jump": "i", "offset": [ 5280, 5324 ], "op": "JUMP", "path": "70" }, "11281": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5280, 5324 ], "op": "JUMPDEST", "path": "70" }, "11282": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5265, 5324 ], "op": "SWAP1", "path": "70" }, "11283": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5265, 5324 ], "op": "POP", "path": "70" }, "11284": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5443, 5453 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "11286": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5456, 5486 ], "op": "PUSH2", "path": "70", "value": "0x2C1E" }, "11289": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5456, 5480 ], "op": "DUP5", "path": "70" }, "11290": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5456, 5484 ], "op": "PUSH2", "path": "70", "value": "0x3848" }, "11293": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "jump": "i", "offset": [ 5456, 5486 ], "op": "JUMP", "path": "70" }, "11294": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5456, 5486 ], "op": "JUMPDEST", "path": "70" }, "11295": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5443, 5486 ], "op": "SWAP1", "path": "70" }, "11296": { "op": "POP" }, "11297": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5841, 5846 ], "op": "DUP2", "path": "70", "statement": 256 }, "11298": { "op": "PUSH12", "value": "0x19D971E4FE8401E74000001" }, "11311": { "op": "PUSH1", "value": "0x1" }, "11313": { "op": "PUSH1", "value": "0xFF" }, "11315": { "op": "SHL" }, "11316": { "op": "SUB" }, "11317": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5841, 5846 ], "op": "DUP2", "path": "70" }, "11318": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5810, 5846 ], "op": "PUSH2", "path": "70", "value": "0x2C3B" }, "11321": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5810, 5846 ], "op": "JUMPI", "path": "70" }, "11322": { "dev": "Division by zero", "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5810, 5846 ], "op": "INVALID", "path": "70" }, "11323": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5810, 5846 ], "op": "JUMPDEST", "path": "70" }, "11324": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5810, 5846 ], "op": "SDIV", "path": "70" }, "11325": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5803, 5806 ], "op": "DUP2", "path": "70" }, "11326": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5803, 5846 ], "op": "SGT", "path": "70" }, "11327": { "branch": 409, "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5803, 5846 ], "op": "ISZERO", "path": "70" }, "11328": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5795, 5847 ], "op": "PUSH2", "path": "70", "value": "0x2C48" }, "11331": { "branch": 409, "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5795, 5847 ], "op": "JUMPI", "path": "70" }, "11332": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5795, 5847 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "11334": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5795, 5847 ], "op": "DUP1", "path": "70" }, "11335": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5795, 5847 ], "op": "REVERT", "path": "70" }, "11336": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5795, 5847 ], "op": "JUMPDEST", "path": "70" }, "11337": { "offset": [ 457, 461 ], "op": "PUSH12", "path": "70", "value": "0x33B2E3C9FD0803CE8000000" }, "11350": { "offset": [ 502, 509 ], "op": "PUSH12", "path": "70", "value": "0x19D971E4FE8401E74000000" }, "11363": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5877, 5888 ], "op": "DUP4", "path": "70" }, "11364": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5877, 5888 ], "op": "DUP4", "path": "70" }, "11365": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5877, 5888 ], "op": "MUL", "path": "70" }, "11366": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5877, 5898 ], "op": "ADD", "path": "70" }, "11367": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5876, 5905 ], "op": "SDIV", "path": "70" }, "11368": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5857, 5873 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "11370": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5951 ], "op": "DUP6", "path": "70", "statement": 257 }, "11371": { "branch": 410, "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5951 ], "op": "SGT", "path": "70" }, "11372": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5981 ], "op": "PUSH2", "path": "70", "value": "0x2C7D" }, "11375": { "branch": 410, "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5981 ], "op": "JUMPI", "path": "70" }, "11376": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5966, 5981 ], "op": "PUSH2", "path": "70", "value": "0x2C78" }, "11379": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5966, 5975 ], "op": "DUP2", "path": "70" }, "11380": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5966, 5979 ], "op": "PUSH2", "path": "70", "value": "0xEE1" }, "11383": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "jump": "i", "offset": [ 5966, 5981 ], "op": "JUMP", "path": "70" }, "11384": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5966, 5981 ], "op": "JUMPDEST", "path": "70" }, "11385": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5981 ], "op": "PUSH2", "path": "70", "value": "0x2C7F" }, "11388": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5981 ], "op": "JUMP", "path": "70" }, "11389": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5981 ], "op": "JUMPDEST", "path": "70" }, "11390": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5954, 5963 ], "op": "DUP1", "path": "70" }, "11391": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5923, 5981 ], "op": "JUMPDEST", "path": "70" }, "11392": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 5916, 5981 ], "op": "SWAP7", "path": "70" }, "11393": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "offset": [ 4999, 5988 ], "op": "SWAP6", "path": "70" }, "11394": { "op": "POP" }, "11395": { "op": "POP" }, "11396": { "op": "POP" }, "11397": { "op": "POP" }, "11398": { "op": "POP" }, "11399": { "op": "POP" }, "11400": { "fn": "AaveHandler.convertFromScaledBalanceExternal", "jump": "o", "offset": [ 4999, 5988 ], "op": "JUMP", "path": "70" }, "11401": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "JUMPDEST", "path": "69" }, "11402": { "fn": "TokenHandler._deposit", "offset": [ 11277, 11283 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "11404": { "fn": "TokenHandler._deposit", "offset": [ 11277, 11283 ], "op": "DUP1", "path": "69" }, "11405": { "fn": "TokenHandler._deposit", "offset": [ 11277, 11283 ], "op": "DUP1", "path": "69" }, "11406": { "fn": "TokenHandler._deposit", "offset": [ 11277, 11283 ], "op": "DUP1", "path": "69" }, "11407": { "fn": "TokenHandler._deposit", "offset": [ 11405, 11421 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "11409": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11391 ], "op": "DUP8", "path": "69" }, "11410": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11401 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "11412": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11401 ], "op": "ADD", "path": "69" }, "11413": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11401 ], "op": "MLOAD", "path": "69" }, "11414": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "11416": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "DUP2", "path": "69" }, "11417": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "GT", "path": "69" }, "11418": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "ISZERO", "path": "69" }, "11419": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "PUSH2", "path": "69", "value": "0x2CA0" }, "11422": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "JUMPI", "path": "69" }, "11423": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "INVALID", "path": "69" }, "11424": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "JUMPDEST", "path": "69" }, "11425": { "branch": 552, "fn": "TokenHandler._deposit", "offset": [ 11386, 11421 ], "op": "EQ", "path": "69" }, "11426": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11523 ], "op": "PUSH2", "path": "69", "value": "0x2CB2" }, "11429": { "branch": 552, "fn": "TokenHandler._deposit", "offset": [ 11386, 11523 ], "op": "JUMPI", "path": "69" }, "11430": { "op": "PUSH4", "value": "0x70A08231" }, "11435": { "op": "PUSH1", "value": "0xE0" }, "11437": { "op": "SHL" }, "11438": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11523 ], "op": "PUSH2", "path": "69", "value": "0x2CBB" }, "11441": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11523 ], "op": "JUMP", "path": "69" }, "11442": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11523 ], "op": "JUMPDEST", "path": "69" }, "11443": { "op": "PUSH4", "value": "0xED1279F" }, "11448": { "op": "PUSH1", "value": "0xE1" }, "11450": { "op": "SHL" }, "11451": { "fn": "TokenHandler._deposit", "offset": [ 11386, 11523 ], "op": "JUMPDEST", "path": "69" }, "11452": { "fn": "TokenHandler._deposit", "offset": [ 11359, 11523 ], "op": "SWAP1", "path": "69" }, "11453": { "fn": "TokenHandler._deposit", "offset": [ 11359, 11523 ], "op": "POP", "path": "69" }, "11454": { "fn": "TokenHandler._deposit", "offset": [ 11538, 11543 ], "op": "DUP7", "path": "69" }, "11455": { "fn": "TokenHandler._deposit", "offset": [ 11538, 11558 ], "op": "PUSH1", "path": "69", "value": "0x20" }, "11457": { "fn": "TokenHandler._deposit", "offset": [ 11538, 11558 ], "op": "ADD", "path": "69" }, "11458": { "branch": 553, "fn": "TokenHandler._deposit", "offset": [ 11538, 11558 ], "op": "MLOAD", "path": "69" }, "11459": { "fn": "TokenHandler._deposit", "offset": [ 11534, 11693 ], "op": "ISZERO", "path": "69" }, "11460": { "fn": "TokenHandler._deposit", "offset": [ 11534, 11693 ], "op": "PUSH2", "path": "69", "value": "0x2CD7" }, "11463": { "branch": 553, "fn": "TokenHandler._deposit", "offset": [ 11534, 11693 ], "op": "JUMPI", "path": "69" }, "11464": { "fn": "TokenHandler._deposit", "offset": [ 11629, 11647 ], "op": "DUP7", "path": "69", "statement": 258 }, "11465": { "fn": "TokenHandler._deposit", "offset": [ 11629, 11647 ], "op": "MLOAD", "path": "69" }, "11466": { "fn": "TokenHandler._deposit", "offset": [ 11592, 11682 ], "op": "PUSH2", "path": "69", "value": "0x2CD4" }, "11469": { "fn": "TokenHandler._deposit", "offset": [ 11592, 11682 ], "op": "SWAP1", "path": "69" }, "11470": { "fn": "TokenHandler._deposit", "offset": [ 11657, 11661 ], "op": "ADDRESS", "path": "69" }, "11471": { "fn": "TokenHandler._deposit", "offset": [ 11664, 11681 ], "op": "DUP4", "path": "69" }, "11472": { "fn": "TokenHandler._deposit", "offset": [ 11592, 11628 ], "op": "PUSH2", "path": "69", "value": "0x2E2E" }, "11475": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 11592, 11682 ], "op": "JUMP", "path": "69" }, "11476": { "fn": "TokenHandler._deposit", "offset": [ 11592, 11682 ], "op": "JUMPDEST", "path": "69" }, "11477": { "fn": "TokenHandler._deposit", "offset": [ 11574, 11682 ], "op": "SWAP3", "path": "69" }, "11478": { "fn": "TokenHandler._deposit", "offset": [ 11574, 11682 ], "op": "POP", "path": "69" }, "11479": { "fn": "TokenHandler._deposit", "offset": [ 11534, 11693 ], "op": "JUMPDEST", "path": "69" }, "11480": { "fn": "TokenHandler._deposit", "offset": [ 11731, 11749 ], "op": "DUP7", "path": "69", "statement": 259 }, "11481": { "fn": "TokenHandler._deposit", "offset": [ 11731, 11749 ], "op": "MLOAD", "path": "69" }, "11482": { "fn": "TokenHandler._deposit", "offset": [ 11703, 11767 ], "op": "PUSH2", "path": "69", "value": "0x2CE4" }, "11485": { "fn": "TokenHandler._deposit", "offset": [ 11703, 11767 ], "op": "SWAP1", "path": "69" }, "11486": { "fn": "TokenHandler._deposit", "offset": [ 11751, 11758 ], "op": "DUP8", "path": "69" }, "11487": { "fn": "TokenHandler._deposit", "offset": [ 11760, 11766 ], "op": "DUP8", "path": "69" }, "11488": { "fn": "TokenHandler._deposit", "offset": [ 11703, 11730 ], "op": "PUSH2", "path": "69", "value": "0x3869" }, "11491": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 11703, 11767 ], "op": "JUMP", "path": "69" }, "11492": { "fn": "TokenHandler._deposit", "offset": [ 11703, 11767 ], "op": "JUMPDEST", "path": "69" }, "11493": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11787 ], "op": "DUP7", "path": "69" }, "11494": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11802 ], "op": "PUSH1", "path": "69", "value": "0x20" }, "11496": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11802 ], "op": "ADD", "path": "69" }, "11497": { "branch": 554, "fn": "TokenHandler._deposit", "offset": [ 11782, 11802 ], "op": "MLOAD", "path": "69" }, "11498": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11836 ], "op": "DUP1", "path": "69" }, "11499": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11836 ], "op": "PUSH2", "path": "69", "value": "0x2CF8" }, "11502": { "branch": 554, "fn": "TokenHandler._deposit", "offset": [ 11782, 11836 ], "op": "JUMPI", "path": "69" }, "11503": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11836 ], "op": "POP", "path": "69" }, "11504": { "fn": "TokenHandler._deposit", "offset": [ 11835, 11836 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "11506": { "fn": "TokenHandler._deposit", "offset": [ 11806, 11811 ], "op": "DUP8", "path": "69" }, "11507": { "fn": "TokenHandler._deposit", "offset": [ 11806, 11832 ], "op": "PUSH1", "path": "69", "value": "0x80" }, "11509": { "fn": "TokenHandler._deposit", "offset": [ 11806, 11832 ], "op": "ADD", "path": "69" }, "11510": { "fn": "TokenHandler._deposit", "offset": [ 11806, 11832 ], "op": "MLOAD", "path": "69" }, "11511": { "branch": 555, "fn": "TokenHandler._deposit", "offset": [ 11806, 11836 ], "op": "GT", "path": "69" }, "11512": { "fn": "TokenHandler._deposit", "offset": [ 11782, 11836 ], "op": "JUMPDEST", "path": "69" }, "11513": { "fn": "TokenHandler._deposit", "offset": [ 11778, 12278 ], "op": "ISZERO", "path": "69" }, "11514": { "fn": "TokenHandler._deposit", "offset": [ 11778, 12278 ], "op": "PUSH2", "path": "69", "value": "0x2D0D" }, "11517": { "branch": 555, "fn": "TokenHandler._deposit", "offset": [ 11778, 12278 ], "op": "JUMPI", "path": "69" }, "11518": { "fn": "TokenHandler._deposit", "offset": [ 12214, 12232 ], "op": "DUP7", "path": "69", "statement": 260 }, "11519": { "fn": "TokenHandler._deposit", "offset": [ 12214, 12232 ], "op": "MLOAD", "path": "69" }, "11520": { "fn": "TokenHandler._deposit", "offset": [ 12177, 12267 ], "op": "PUSH2", "path": "69", "value": "0x2D0A" }, "11523": { "fn": "TokenHandler._deposit", "offset": [ 12177, 12267 ], "op": "SWAP1", "path": "69" }, "11524": { "fn": "TokenHandler._deposit", "offset": [ 12242, 12246 ], "op": "ADDRESS", "path": "69" }, "11525": { "fn": "TokenHandler._deposit", "offset": [ 12249, 12266 ], "op": "DUP4", "path": "69" }, "11526": { "fn": "TokenHandler._deposit", "offset": [ 12177, 12213 ], "op": "PUSH2", "path": "69", "value": "0x2E2E" }, "11529": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 12177, 12267 ], "op": "JUMP", "path": "69" }, "11530": { "fn": "TokenHandler._deposit", "offset": [ 12177, 12267 ], "op": "JUMPDEST", "path": "69" }, "11531": { "fn": "TokenHandler._deposit", "offset": [ 12161, 12267 ], "op": "SWAP2", "path": "69" }, "11532": { "fn": "TokenHandler._deposit", "offset": [ 12161, 12267 ], "op": "POP", "path": "69" }, "11533": { "fn": "TokenHandler._deposit", "offset": [ 11778, 12278 ], "op": "JUMPDEST", "path": "69" }, "11534": { "fn": "TokenHandler._deposit", "offset": [ 12292, 12318 ], "op": "PUSH1", "path": "69", "value": "0x80" }, "11536": { "fn": "TokenHandler._deposit", "offset": [ 12292, 12318 ], "op": "DUP8", "path": "69" }, "11537": { "fn": "TokenHandler._deposit", "offset": [ 12292, 12318 ], "op": "ADD", "path": "69" }, "11538": { "fn": "TokenHandler._deposit", "offset": [ 12292, 12318 ], "op": "MLOAD", "path": "69" }, "11539": { "branch": 556, "fn": "TokenHandler._deposit", "offset": [ 12292, 12322 ], "op": "ISZERO", "path": "69" }, "11540": { "fn": "TokenHandler._deposit", "offset": [ 12288, 12642 ], "op": "PUSH2", "path": "69", "value": "0x2D48" }, "11543": { "branch": 556, "fn": "TokenHandler._deposit", "offset": [ 12288, 12642 ], "op": "JUMPI", "path": "69" }, "11544": { "fn": "TokenHandler._deposit", "offset": [ 12338, 12369 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "11546": { "fn": "TokenHandler._deposit", "offset": [ 12372, 12429 ], "op": "PUSH2", "path": "69", "value": "0x2D2B" }, "11549": { "fn": "TokenHandler._deposit", "offset": [ 12390, 12395 ], "op": "DUP9", "path": "69" }, "11550": { "fn": "TokenHandler._deposit", "offset": [ 12397, 12428 ], "op": "PUSH2", "path": "69", "value": "0x2D26" }, "11553": { "fn": "TokenHandler._deposit", "offset": [ 12414, 12427 ], "op": "DUP6", "path": "69" }, "11554": { "fn": "TokenHandler._deposit", "offset": [ 12397, 12413 ], "op": "PUSH2", "path": "69", "value": "0x264D" }, "11557": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 12397, 12428 ], "op": "JUMP", "path": "69" }, "11558": { "fn": "TokenHandler._deposit", "offset": [ 12397, 12428 ], "op": "JUMPDEST", "path": "69" }, "11559": { "fn": "TokenHandler._deposit", "offset": [ 12372, 12389 ], "op": "PUSH2", "path": "69", "value": "0x1DFA" }, "11562": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 12372, 12429 ], "op": "JUMP", "path": "69" }, "11563": { "fn": "TokenHandler._deposit", "offset": [ 12372, 12429 ], "op": "JUMPDEST", "path": "69" }, "11564": { "fn": "TokenHandler._deposit", "offset": [ 12338, 12429 ], "op": "SWAP1", "path": "69" }, "11565": { "fn": "TokenHandler._deposit", "offset": [ 12338, 12429 ], "op": "POP", "path": "69" }, "11566": { "fn": "TokenHandler._deposit", "offset": [ 12550, 12594 ], "op": "PUSH2", "path": "69", "statement": 261, "value": "0x2D3A" }, "11569": { "fn": "TokenHandler._deposit", "offset": [ 12567, 12572 ], "op": "DUP9", "path": "69" }, "11570": { "fn": "TokenHandler._deposit", "offset": [ 12567, 12593 ], "op": "PUSH1", "path": "69", "value": "0x80" }, "11572": { "fn": "TokenHandler._deposit", "offset": [ 12567, 12593 ], "op": "ADD", "path": "69" }, "11573": { "fn": "TokenHandler._deposit", "offset": [ 12567, 12593 ], "op": "MLOAD", "path": "69" }, "11574": { "fn": "TokenHandler._deposit", "offset": [ 12550, 12566 ], "op": "PUSH2", "path": "69", "value": "0x264D" }, "11577": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 12550, 12594 ], "op": "JUMP", "path": "69" }, "11578": { "fn": "TokenHandler._deposit", "offset": [ 12550, 12594 ], "op": "JUMPDEST", "path": "69" }, "11579": { "fn": "TokenHandler._deposit", "offset": [ 12522, 12546 ], "op": "DUP2", "path": "69" }, "11580": { "fn": "TokenHandler._deposit", "offset": [ 12522, 12594 ], "op": "SGT", "path": "69" }, "11581": { "branch": 557, "fn": "TokenHandler._deposit", "offset": [ 12522, 12594 ], "op": "ISZERO", "path": "69" }, "11582": { "fn": "TokenHandler._deposit", "offset": [ 12514, 12595 ], "op": "PUSH2", "path": "69", "value": "0x2D46" }, "11585": { "branch": 557, "fn": "TokenHandler._deposit", "offset": [ 12514, 12595 ], "op": "JUMPI", "path": "69" }, "11586": { "fn": "TokenHandler._deposit", "offset": [ 12514, 12595 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "11588": { "fn": "TokenHandler._deposit", "offset": [ 12514, 12595 ], "op": "DUP1", "path": "69" }, "11589": { "fn": "TokenHandler._deposit", "offset": [ 12514, 12595 ], "op": "REVERT", "path": "69" }, "11590": { "fn": "TokenHandler._deposit", "offset": [ 12514, 12595 ], "op": "JUMPDEST", "path": "69" }, "11591": { "fn": "TokenHandler._deposit", "offset": [ 12288, 12642 ], "op": "POP", "path": "69" }, "11592": { "fn": "TokenHandler._deposit", "offset": [ 12288, 12642 ], "op": "JUMPDEST", "path": "69" }, "11593": { "fn": "TokenHandler._deposit", "offset": [ 12740, 12745 ], "op": "DUP7", "path": "69" }, "11594": { "fn": "TokenHandler._deposit", "offset": [ 12740, 12760 ], "op": "PUSH1", "path": "69", "value": "0x20" }, "11596": { "fn": "TokenHandler._deposit", "offset": [ 12740, 12760 ], "op": "ADD", "path": "69" }, "11597": { "branch": 558, "fn": "TokenHandler._deposit", "offset": [ 12740, 12760 ], "op": "MLOAD", "path": "69" }, "11598": { "fn": "TokenHandler._deposit", "offset": [ 12736, 12908 ], "op": "ISZERO", "path": "69" }, "11599": { "fn": "TokenHandler._deposit", "offset": [ 12736, 12908 ], "op": "PUSH2", "path": "69", "value": "0x2D69" }, "11602": { "branch": 558, "fn": "TokenHandler._deposit", "offset": [ 12736, 12908 ], "op": "JUMPI", "path": "69" }, "11603": { "fn": "TokenHandler._deposit", "offset": [ 12783, 12835 ], "op": "PUSH2", "path": "69", "statement": 262, "value": "0x2D5F" }, "11606": { "fn": "TokenHandler._deposit", "offset": [ 12800, 12834 ], "op": "PUSH2", "path": "69", "value": "0x1DEA" }, "11609": { "fn": "TokenHandler._deposit", "offset": [ 12800, 12813 ], "op": "DUP4", "path": "69" }, "11610": { "fn": "TokenHandler._deposit", "offset": [ 12818, 12833 ], "op": "DUP6", "path": "69" }, "11611": { "fn": "TokenHandler._deposit", "offset": [ 12800, 12817 ], "op": "PUSH2", "path": "69", "value": "0x3096" }, "11614": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 12800, 12834 ], "op": "JUMP", "path": "69" }, "11615": { "fn": "TokenHandler._deposit", "offset": [ 12783, 12835 ], "op": "JUMPDEST", "path": "69" }, "11616": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "SWAP4", "path": "69" }, "11617": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "POP", "path": "69" }, "11618": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "POP", "path": "69" }, "11619": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "POP", "path": "69" }, "11620": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "POP", "path": "69" }, "11621": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "PUSH2", "path": "69", "value": "0xAA3" }, "11624": { "fn": "TokenHandler._deposit", "offset": [ 12776, 12835 ], "op": "JUMP", "path": "69" }, "11625": { "fn": "TokenHandler._deposit", "offset": [ 12736, 12908 ], "op": "JUMPDEST", "path": "69" }, "11626": { "fn": "TokenHandler._deposit", "offset": [ 12873, 12897 ], "op": "PUSH2", "path": "69", "statement": 263, "value": "0x2D5F" }, "11629": { "fn": "TokenHandler._deposit", "offset": [ 12890, 12896 ], "op": "DUP6", "path": "69" }, "11630": { "fn": "TokenHandler._deposit", "offset": [ 12873, 12889 ], "op": "PUSH2", "path": "69", "value": "0x264D" }, "11633": { "fn": "TokenHandler._deposit", "jump": "i", "offset": [ 12873, 12897 ], "op": "JUMP", "path": "69" }, "11634": { "fn": "TokenHandler._deposit", "offset": [ 12736, 12908 ], "op": "JUMPDEST", "path": "69" }, "11635": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "POP", "path": "69" }, "11636": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "POP", "path": "69" }, "11637": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "POP", "path": "69" }, "11638": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "SWAP4", "path": "69" }, "11639": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "SWAP3", "path": "69" }, "11640": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "POP", "path": "69" }, "11641": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "POP", "path": "69" }, "11642": { "fn": "TokenHandler._deposit", "offset": [ 11159, 12914 ], "op": "POP", "path": "69" }, "11643": { "fn": "TokenHandler._deposit", "jump": "o", "offset": [ 11159, 12914 ], "op": "JUMP", "path": "69" }, "11644": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 824, 1167 ], "op": "JUMPDEST", "path": "72" }, "11645": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "PUSH1", "path": "72", "statement": 264, "value": "0x40" }, "11647": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "MLOAD", "path": "72" }, "11648": { "op": "PUSH1", "value": "0x1" }, "11650": { "op": "PUSH1", "value": "0x1" }, "11652": { "op": "PUSH1", "value": "0xA0" }, "11654": { "op": "SHL" }, "11655": { "op": "SUB" }, "11656": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1152 ], "op": "DUP4", "path": "72" }, "11657": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1152 ], "op": "AND", "path": "72" }, "11658": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1152 ], "op": "SWAP1", "path": "72" }, "11659": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP3", "path": "72" }, "11660": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "ISZERO", "path": "72" }, "11661": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "PUSH2", "path": "72", "value": "0x8FC" }, "11664": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "MUL", "path": "72" }, "11665": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "SWAP1", "path": "72" }, "11666": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1153, 1159 ], "op": "DUP4", "path": "72" }, "11667": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1153, 1159 ], "op": "SWAP1", "path": "72" }, "11668": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11670": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP2", "path": "72" }, "11671": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP2", "path": "72" }, "11672": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP2", "path": "72" }, "11673": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1153, 1159 ], "op": "DUP6", "path": "72" }, "11674": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1152 ], "op": "DUP9", "path": "72" }, "11675": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP9", "path": "72" }, "11676": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "CALL", "path": "72" }, "11677": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "SWAP4", "path": "72" }, "11678": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "POP", "path": "72" }, "11679": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "POP", "path": "72" }, "11680": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "POP", "path": "72" }, "11681": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "POP", "path": "72" }, "11682": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "ISZERO", "path": "72" }, "11683": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP1", "path": "72" }, "11684": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "ISZERO", "path": "72" }, "11685": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "PUSH2", "path": "72", "value": "0x2DB2" }, "11688": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "JUMPI", "path": "72" }, "11689": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "RETURNDATASIZE", "path": "72" }, "11690": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11692": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "DUP1", "path": "72" }, "11693": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "RETURNDATACOPY", "path": "72" }, "11694": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "RETURNDATASIZE", "path": "72" }, "11695": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11697": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "REVERT", "path": "72" }, "11698": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "JUMPDEST", "path": "72" }, "11699": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 1127, 1160 ], "op": "POP", "path": "72" }, "11700": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 824, 1167 ], "op": "POP", "path": "72" }, "11701": { "fn": "GenericToken.transferNativeTokenOut", "offset": [ 824, 1167 ], "op": "POP", "path": "72" }, "11702": { "fn": "GenericToken.transferNativeTokenOut", "jump": "o", "offset": [ 824, 1167 ], "op": "JUMP", "path": "72" }, "11703": { "fn": "GenericToken.safeTransferOut", "offset": [ 1173, 1379 ], "op": "JUMPDEST", "path": "72" }, "11704": { "fn": "GenericToken.safeTransferOut", "offset": [ 1313, 1318 ], "op": "DUP3", "path": "72", "statement": 265 }, "11705": { "op": "PUSH1", "value": "0x1" }, "11707": { "op": "PUSH1", "value": "0x1" }, "11709": { "op": "PUSH1", "value": "0xA0" }, "11711": { "op": "SHL" }, "11712": { "op": "SUB" }, "11713": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1328 ], "op": "AND", "path": "72" }, "11714": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1328 ], "op": "PUSH4", "path": "72", "value": "0xA9059CBB" }, "11719": { "fn": "GenericToken.safeTransferOut", "offset": [ 1329, 1336 ], "op": "DUP4", "path": "72" }, "11720": { "fn": "GenericToken.safeTransferOut", "offset": [ 1338, 1344 ], "op": "DUP4", "path": "72" }, "11721": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "11723": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "MLOAD", "path": "72" }, "11724": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP4", "path": "72" }, "11725": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH4", "path": "72", "value": "0xFFFFFFFF" }, "11730": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "AND", "path": "72" }, "11731": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0xE0" }, "11733": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "SHL", "path": "72" }, "11734": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP2", "path": "72" }, "11735": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "MSTORE", "path": "72" }, "11736": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x4" }, "11738": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ADD", "path": "72" }, "11739": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11740": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP4", "path": "72" }, "11741": { "op": "PUSH1", "value": "0x1" }, "11743": { "op": "PUSH1", "value": "0x1" }, "11745": { "op": "PUSH1", "value": "0xA0" }, "11747": { "op": "SHL" }, "11748": { "op": "SUB" }, "11749": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "AND", "path": "72" }, "11750": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP2", "path": "72" }, "11751": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "MSTORE", "path": "72" }, "11752": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "11754": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ADD", "path": "72" }, "11755": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP3", "path": "72" }, "11756": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP2", "path": "72" }, "11757": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "MSTORE", "path": "72" }, "11758": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "11760": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ADD", "path": "72" }, "11761": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "SWAP3", "path": "72" }, "11762": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11763": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11764": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11765": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11767": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "11769": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "MLOAD", "path": "72" }, "11770": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11771": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP4", "path": "72" }, "11772": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "SUB", "path": "72" }, "11773": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP2", "path": "72" }, "11774": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11776": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP8", "path": "72" }, "11777": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11778": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "EXTCODESIZE", "path": "72" }, "11779": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ISZERO", "path": "72" }, "11780": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11781": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ISZERO", "path": "72" }, "11782": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH2", "path": "72", "value": "0x2E0E" }, "11785": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "JUMPI", "path": "72" }, "11786": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11788": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11789": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "REVERT", "path": "72" }, "11790": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "JUMPDEST", "path": "72" }, "11791": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11792": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "GAS", "path": "72" }, "11793": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "CALL", "path": "72" }, "11794": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ISZERO", "path": "72" }, "11795": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11796": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "ISZERO", "path": "72" }, "11797": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH2", "path": "72", "value": "0x2E22" }, "11800": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "JUMPI", "path": "72" }, "11801": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "RETURNDATASIZE", "path": "72" }, "11802": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11804": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "DUP1", "path": "72" }, "11805": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "RETURNDATACOPY", "path": "72" }, "11806": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "RETURNDATASIZE", "path": "72" }, "11807": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11809": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "REVERT", "path": "72" }, "11810": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "JUMPDEST", "path": "72" }, "11811": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11812": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11813": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11814": { "fn": "GenericToken.safeTransferOut", "offset": [ 1295, 1345 ], "op": "POP", "path": "72" }, "11815": { "fn": "GenericToken.safeTransferOut", "offset": [ 1355, 1372 ], "op": "PUSH2", "path": "72", "statement": 266, "value": "0x2DB2" }, "11818": { "fn": "GenericToken.safeTransferOut", "offset": [ 1355, 1370 ], "op": "PUSH2", "path": "72", "value": "0x38C1" }, "11821": { "fn": "GenericToken.safeTransferOut", "jump": "i", "offset": [ 1355, 1372 ], "op": "JUMP", "path": "72" }, "11822": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 454, 818 ], "op": "JUMPDEST", "path": "72" }, "11823": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "11825": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP1", "path": "72" }, "11826": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MLOAD", "path": "72" }, "11827": { "op": "PUSH1", "value": "0x1" }, "11829": { "op": "PUSH1", "value": "0x1" }, "11831": { "op": "PUSH1", "value": "0xA0" }, "11833": { "op": "SHL" }, "11834": { "op": "SUB" }, "11835": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP5", "path": "72" }, "11836": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP2", "path": "72" }, "11837": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "AND", "path": "72" }, "11838": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "PUSH1", "path": "72", "value": "0x24" }, "11840": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP1", "path": "72" }, "11841": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP5", "path": "72" }, "11842": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "ADD", "path": "72" }, "11843": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP2", "path": "72" }, "11844": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP1", "path": "72" }, "11845": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP2", "path": "72" }, "11846": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MSTORE", "path": "72" }, "11847": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP4", "path": "72" }, "11848": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MLOAD", "path": "72" }, "11849": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP1", "path": "72" }, "11850": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP5", "path": "72" }, "11851": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SUB", "path": "72" }, "11852": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP1", "path": "72" }, "11853": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP2", "path": "72" }, "11854": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "ADD", "path": "72" }, "11855": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP2", "path": "72" }, "11856": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MSTORE", "path": "72" }, "11857": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "PUSH1", "path": "72", "value": "0x44" }, "11859": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP1", "path": "72" }, "11860": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP3", "path": "72" }, "11861": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "ADD", "path": "72" }, "11862": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP4", "path": "72" }, "11863": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MSTORE", "path": "72" }, "11864": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "11866": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP3", "path": "72" }, "11867": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "ADD", "path": "72" }, "11868": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP1", "path": "72" }, "11869": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MLOAD", "path": "72" }, "11870": { "op": "PUSH1", "value": "0x1" }, "11872": { "op": "PUSH1", "value": "0x1" }, "11874": { "op": "PUSH1", "value": "0xE0" }, "11876": { "op": "SHL" }, "11877": { "op": "SUB" }, "11878": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "AND", "path": "72" }, "11879": { "op": "PUSH1", "value": "0x1" }, "11881": { "op": "PUSH1", "value": "0x1" }, "11883": { "op": "PUSH1", "value": "0xE0" }, "11885": { "op": "SHL" }, "11886": { "op": "SUB" }, "11887": { "op": "NOT" }, "11888": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP7", "path": "72" }, "11889": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "AND", "path": "72" }, "11890": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "OR", "path": "72" }, "11891": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP2", "path": "72" }, "11892": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "MSTORE", "path": "72" }, "11893": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP3", "path": "72" }, "11894": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "11895": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "11896": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "11897": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 593, 608 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11899": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 593, 608 ], "op": "SWAP5", "path": "72" }, "11900": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 593, 608 ], "op": "DUP6", "path": "72" }, "11901": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 593, 608 ], "op": "SWAP5", "path": "72" }, "11902": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 593, 608 ], "op": "DUP6", "path": "72" }, "11903": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 593, 608 ], "op": "SWAP5", "path": "72" }, "11904": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 678 ], "op": "DUP11", "path": "72" }, "11905": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 678 ], "op": "AND", "path": "72" }, "11906": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 678 ], "op": "SWAP4", "path": "72" }, "11907": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP1", "path": "72" }, "11908": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "SWAP3", "path": "72" }, "11909": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP1", "path": "72" }, "11910": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11911": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "11912": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11913": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP1", "path": "72" }, "11914": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP4", "path": "72" }, "11915": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 679, 729 ], "op": "DUP4", "path": "72" }, "11916": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMPDEST", "path": "72" }, "11917": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "11919": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP4", "path": "72" }, "11920": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "LT", "path": "72" }, "11921": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH2", "path": "72", "value": "0x2EAB" }, "11924": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMPI", "path": "72" }, "11925": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP1", "path": "72" }, "11926": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "11927": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "11928": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MSTORE", "path": "72" }, "11929": { "op": "PUSH1", "value": "0x1F" }, "11931": { "op": "NOT" }, "11932": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP1", "path": "72" }, "11933": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP3", "path": "72" }, "11934": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "11935": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11936": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "11938": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11939": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "11940": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "11941": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11942": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "11943": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH2", "path": "72", "value": "0x2E8C" }, "11946": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMP", "path": "72" }, "11947": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMPDEST", "path": "72" }, "11948": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x1" }, "11950": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP4", "path": "72" }, "11951": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "11953": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SUB", "path": "72" }, "11954": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH2", "path": "72", "value": "0x100" }, "11957": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "EXP", "path": "72" }, "11958": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SUB", "path": "72" }, "11959": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP1", "path": "72" }, "11960": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "NOT", "path": "72" }, "11961": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "11962": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "11963": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "AND", "path": "72" }, "11964": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP2", "path": "72" }, "11965": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP5", "path": "72" }, "11966": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "11967": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "AND", "path": "72" }, "11968": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP1", "path": "72" }, "11969": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "11970": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "OR", "path": "72" }, "11971": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP6", "path": "72" }, "11972": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MSTORE", "path": "72" }, "11973": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11974": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11975": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11976": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11977": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11978": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11979": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP1", "path": "72" }, "11980": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11981": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "11982": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11983": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11984": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11985": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "11987": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "11989": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "11990": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP1", "path": "72" }, "11991": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP4", "path": "72" }, "11992": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SUB", "path": "72" }, "11993": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP2", "path": "72" }, "11994": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP6", "path": "72" }, "11995": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "GAS", "path": "72" }, "11996": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "STATICCALL", "path": "72" }, "11997": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "11998": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "11999": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "12000": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "RETURNDATASIZE", "path": "72" }, "12001": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP1", "path": "72" }, "12002": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "12004": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP2", "path": "72" }, "12005": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "EQ", "path": "72" }, "12006": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH2", "path": "72", "value": "0x2F0B" }, "12009": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMPI", "path": "72" }, "12010": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "12012": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MLOAD", "path": "72" }, "12013": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "12014": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "12015": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x1F" }, "12017": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "NOT", "path": "72" }, "12018": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x3F" }, "12020": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "RETURNDATASIZE", "path": "72" }, "12021": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "12022": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "AND", "path": "72" }, "12023": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "12024": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "12025": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "12027": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MSTORE", "path": "72" }, "12028": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "RETURNDATASIZE", "path": "72" }, "12029": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP3", "path": "72" }, "12030": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "MSTORE", "path": "72" }, "12031": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "RETURNDATASIZE", "path": "72" }, "12032": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "12034": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "12036": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "DUP5", "path": "72" }, "12037": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "ADD", "path": "72" }, "12038": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "RETURNDATACOPY", "path": "72" }, "12039": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH2", "path": "72", "value": "0x2F10" }, "12042": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMP", "path": "72" }, "12043": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMPDEST", "path": "72" }, "12044": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "PUSH1", "path": "72", "value": "0x60" }, "12046": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "SWAP2", "path": "72" }, "12047": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "12048": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "JUMPDEST", "path": "72" }, "12049": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 662, 730 ], "op": "POP", "path": "72" }, "12050": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 620, 730 ], "op": "SWAP2", "path": "72" }, "12051": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 620, 730 ], "op": "POP", "path": "72" }, "12052": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 620, 730 ], "op": "SWAP2", "path": "72" }, "12053": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 620, 730 ], "op": "POP", "path": "72" }, "12054": { "branch": 489, "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 748, 755 ], "op": "DUP2", "path": "72", "statement": 267 }, "12055": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 740, 756 ], "op": "PUSH2", "path": "72", "value": "0x2F1F" }, "12058": { "branch": 489, "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 740, 756 ], "op": "JUMPI", "path": "72" }, "12059": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 740, 756 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "12061": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 740, 756 ], "op": "DUP1", "path": "72" }, "12062": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 740, 756 ], "op": "REVERT", "path": "72" }, "12063": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 740, 756 ], "op": "JUMPDEST", "path": "72" }, "12064": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 789, 799 ], "op": "DUP1", "path": "72", "statement": 268 }, "12065": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "DUP1", "path": "72" }, "12066": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "12068": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "ADD", "path": "72" }, "12069": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "SWAP1", "path": "72" }, "12070": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "MLOAD", "path": "72" }, "12071": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "12073": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "DUP2", "path": "72" }, "12074": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "LT", "path": "72" }, "12075": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "ISZERO", "path": "72" }, "12076": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "PUSH2", "path": "72", "value": "0x2F34" }, "12079": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "JUMPI", "path": "72" }, "12080": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "12082": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "DUP1", "path": "72" }, "12083": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "REVERT", "path": "72" }, "12084": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "JUMPDEST", "path": "72" }, "12085": { "op": "POP" }, "12086": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "MLOAD", "path": "72" }, "12087": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 778, 811 ], "op": "SWAP7", "path": "72" }, "12088": { "fn": "GenericToken.checkBalanceViaSelector", "offset": [ 454, 818 ], "op": "SWAP6", "path": "72" }, "12089": { "op": "POP" }, "12090": { "op": "POP" }, "12091": { "op": "POP" }, "12092": { "op": "POP" }, "12093": { "op": "POP" }, "12094": { "op": "POP" }, "12095": { "fn": "GenericToken.checkBalanceViaSelector", "jump": "o", "offset": [ 454, 818 ], "op": "JUMP", "path": "72" }, "12096": { "fn": "AaveHandler.mint", "offset": [ 873, 1457 ], "op": "JUMPDEST", "path": "70" }, "12097": { "fn": "AaveHandler.mint", "offset": [ 1271, 1298 ], "op": "PUSH2", "path": "70", "statement": 269, "value": "0x2F48" }, "12100": { "fn": "AaveHandler.mint", "offset": [ 1271, 1296 ], "op": "PUSH2", "path": "70", "value": "0x392E" }, "12103": { "fn": "AaveHandler.mint", "jump": "i", "offset": [ 1271, 1298 ], "op": "JUMP", "path": "70" }, "12104": { "fn": "AaveHandler.mint", "offset": [ 1271, 1298 ], "op": "JUMPDEST", "path": "70" }, "12105": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "SLOAD", "path": "70" }, "12106": { "fn": "AaveHandler.mint", "offset": [ 1332, 1360 ], "op": "DUP3", "path": "70" }, "12107": { "fn": "AaveHandler.mint", "offset": [ 1332, 1360 ], "op": "MLOAD", "path": "70" }, "12108": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "12110": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "MLOAD", "path": "70" }, "12111": { "op": "PUSH4", "value": "0xE8EDA9DF" }, "12116": { "op": "PUSH1", "value": "0xE0" }, "12118": { "op": "SHL" }, "12119": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP2", "path": "70" }, "12120": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "MSTORE", "path": "70" }, "12121": { "op": "PUSH1", "value": "0x1" }, "12123": { "op": "PUSH1", "value": "0x1" }, "12125": { "op": "PUSH1", "value": "0xA0" }, "12127": { "op": "SHL" }, "12128": { "op": "SUB" }, "12129": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "SWAP1", "path": "70" }, "12130": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "SWAP3", "path": "70" }, "12131": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "AND", "path": "70" }, "12132": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "SWAP2", "path": "70" }, "12133": { "fn": "AaveHandler.mint", "offset": [ 1271, 1318 ], "op": "PUSH4", "path": "70", "value": "0xE8EDA9DF" }, "12138": { "fn": "AaveHandler.mint", "offset": [ 1271, 1318 ], "op": "SWAP2", "path": "70" }, "12139": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH2", "path": "70", "value": "0x2F7D" }, "12142": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "SWAP2", "path": "70" }, "12143": { "fn": "AaveHandler.mint", "offset": [ 1374, 1398 ], "op": "DUP6", "path": "70" }, "12144": { "fn": "AaveHandler.mint", "offset": [ 1374, 1398 ], "op": "SWAP1", "path": "70" }, "12145": { "fn": "AaveHandler.mint", "offset": [ 1420, 1424 ], "op": "ADDRESS", "path": "70" }, "12146": { "fn": "AaveHandler.mint", "offset": [ 1420, 1424 ], "op": "SWAP1", "path": "70" }, "12147": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12149": { "fn": "AaveHandler.mint", "offset": [ 1271, 1310 ], "op": "SWAP1", "path": "70" }, "12150": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x4" }, "12152": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "ADD", "path": "70" }, "12153": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH2", "path": "70", "value": "0x482A" }, "12156": { "fn": "AaveHandler.mint", "jump": "i", "offset": [ 1271, 1450 ], "op": "JUMP", "path": "70" }, "12157": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "JUMPDEST", "path": "70" }, "12158": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12160": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "12162": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "MLOAD", "path": "70" }, "12163": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP1", "path": "70" }, "12164": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP4", "path": "70" }, "12165": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "SUB", "path": "70" }, "12166": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP2", "path": "70" }, "12167": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12169": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP8", "path": "70" }, "12170": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP1", "path": "70" }, "12171": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "EXTCODESIZE", "path": "70" }, "12172": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "ISZERO", "path": "70" }, "12173": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP1", "path": "70" }, "12174": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "ISZERO", "path": "70" }, "12175": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH2", "path": "70", "value": "0x2F97" }, "12178": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "JUMPI", "path": "70" }, "12179": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12181": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP1", "path": "70" }, "12182": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "REVERT", "path": "70" }, "12183": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "JUMPDEST", "path": "70" }, "12184": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "POP", "path": "70" }, "12185": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "GAS", "path": "70" }, "12186": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "CALL", "path": "70" }, "12187": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "ISZERO", "path": "70" }, "12188": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP1", "path": "70" }, "12189": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "ISZERO", "path": "70" }, "12190": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH2", "path": "70", "value": "0x666" }, "12193": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "JUMPI", "path": "70" }, "12194": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "RETURNDATASIZE", "path": "70" }, "12195": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12197": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "DUP1", "path": "70" }, "12198": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "RETURNDATACOPY", "path": "70" }, "12199": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "RETURNDATASIZE", "path": "70" }, "12200": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12202": { "fn": "AaveHandler.mint", "offset": [ 1271, 1450 ], "op": "REVERT", "path": "70" }, "12203": { "fn": "CompoundHandler.mint", "offset": [ 671, 933 ], "op": "JUMPDEST", "path": "71" }, "12204": { "fn": "CompoundHandler.mint", "offset": [ 757, 763 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12206": { "fn": "CompoundHandler.mint", "offset": [ 775, 790 ], "op": "DUP1", "path": "71" }, "12207": { "fn": "CompoundHandler.mint", "offset": [ 809, 814 ], "op": "DUP4", "path": "71" }, "12208": { "fn": "CompoundHandler.mint", "offset": [ 809, 827 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12210": { "fn": "CompoundHandler.mint", "offset": [ 809, 827 ], "op": "ADD", "path": "71" }, "12211": { "fn": "CompoundHandler.mint", "offset": [ 809, 827 ], "op": "MLOAD", "path": "71" }, "12212": { "op": "PUSH1", "value": "0x1" }, "12214": { "op": "PUSH1", "value": "0x1" }, "12216": { "op": "PUSH1", "value": "0xA0" }, "12218": { "op": "SHL" }, "12219": { "op": "SUB" }, "12220": { "fn": "CompoundHandler.mint", "offset": [ 793, 833 ], "op": "AND", "path": "71" }, "12221": { "fn": "CompoundHandler.mint", "offset": [ 793, 833 ], "op": "PUSH4", "path": "71", "value": "0xA0712D68" }, "12226": { "fn": "CompoundHandler.mint", "offset": [ 834, 858 ], "op": "DUP5", "path": "71" }, "12227": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12229": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "MLOAD", "path": "71" }, "12230": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP3", "path": "71" }, "12231": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH4", "path": "71", "value": "0xFFFFFFFF" }, "12236": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "AND", "path": "71" }, "12237": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0xE0" }, "12239": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SHL", "path": "71" }, "12240": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP2", "path": "71" }, "12241": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "MSTORE", "path": "71" }, "12242": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "12244": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ADD", "path": "71" }, "12245": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH2", "path": "71", "value": "0x2FDE" }, "12248": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SWAP2", "path": "71" }, "12249": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SWAP1", "path": "71" }, "12250": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH2", "path": "71", "value": "0x48AB" }, "12253": { "fn": "CompoundHandler.mint", "jump": "i", "offset": [ 793, 859 ], "op": "JUMP", "path": "71" }, "12254": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "JUMPDEST", "path": "71" }, "12255": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x20" }, "12257": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12259": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "MLOAD", "path": "71" }, "12260": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12261": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP4", "path": "71" }, "12262": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SUB", "path": "71" }, "12263": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP2", "path": "71" }, "12264": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12266": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP8", "path": "71" }, "12267": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12268": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "EXTCODESIZE", "path": "71" }, "12269": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ISZERO", "path": "71" }, "12270": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12271": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ISZERO", "path": "71" }, "12272": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH2", "path": "71", "value": "0x2FF8" }, "12275": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "JUMPI", "path": "71" }, "12276": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12278": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12279": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "REVERT", "path": "71" }, "12280": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "JUMPDEST", "path": "71" }, "12281": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "POP", "path": "71" }, "12282": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "GAS", "path": "71" }, "12283": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "CALL", "path": "71" }, "12284": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ISZERO", "path": "71" }, "12285": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12286": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ISZERO", "path": "71" }, "12287": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH2", "path": "71", "value": "0x300C" }, "12290": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "JUMPI", "path": "71" }, "12291": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "RETURNDATASIZE", "path": "71" }, "12292": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12294": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12295": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "RETURNDATACOPY", "path": "71" }, "12296": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "RETURNDATASIZE", "path": "71" }, "12297": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12299": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "REVERT", "path": "71" }, "12300": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "JUMPDEST", "path": "71" }, "12301": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "POP", "path": "71" }, "12302": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "POP", "path": "71" }, "12303": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "POP", "path": "71" }, "12304": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "POP", "path": "71" }, "12305": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12307": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "MLOAD", "path": "71" }, "12308": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "RETURNDATASIZE", "path": "71" }, "12309": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x1F" }, "12311": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "NOT", "path": "71" }, "12312": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x1F" }, "12314": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP3", "path": "71" }, "12315": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ADD", "path": "71" }, "12316": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "AND", "path": "71" }, "12317": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP3", "path": "71" }, "12318": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ADD", "path": "71" }, "12319": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP1", "path": "71" }, "12320": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12322": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "MSTORE", "path": "71" }, "12323": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "POP", "path": "71" }, "12324": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "DUP2", "path": "71" }, "12325": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "ADD", "path": "71" }, "12326": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SWAP1", "path": "71" }, "12327": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH2", "path": "71", "value": "0x3030" }, "12330": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SWAP2", "path": "71" }, "12331": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "SWAP1", "path": "71" }, "12332": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "PUSH2", "path": "71", "value": "0x43D8" }, "12335": { "fn": "CompoundHandler.mint", "jump": "i", "offset": [ 793, 859 ], "op": "JUMP", "path": "71" }, "12336": { "fn": "CompoundHandler.mint", "offset": [ 793, 859 ], "op": "JUMPDEST", "path": "71" }, "12337": { "fn": "CompoundHandler.mint", "offset": [ 775, 859 ], "op": "SWAP1", "path": "71" }, "12338": { "op": "POP" }, "12339": { "fn": "CompoundHandler.mint", "offset": [ 877, 917 ], "op": "DUP1", "path": "71", "statement": 270 }, "12340": { "branch": 478, "fn": "CompoundHandler.mint", "offset": [ 877, 917 ], "op": "ISZERO", "path": "71" }, "12341": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "PUSH2", "path": "71", "value": "0x3050" }, "12344": { "branch": 478, "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "JUMPI", "path": "71" }, "12345": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12347": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "MLOAD", "path": "71" }, "12348": { "op": "PUSH3", "value": "0x461BCD" }, "12352": { "op": "PUSH1", "value": "0xE5" }, "12354": { "op": "SHL" }, "12355": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "DUP2", "path": "71" }, "12356": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "MSTORE", "path": "71" }, "12357": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "12359": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "ADD", "path": "71" }, "12360": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "PUSH2", "path": "71", "value": "0x17A" }, "12363": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "SWAP1", "path": "71" }, "12364": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "PUSH2", "path": "71", "value": "0x48DA" }, "12367": { "fn": "CompoundHandler.mint", "jump": "i", "offset": [ 869, 926 ], "op": "JUMP", "path": "71" }, "12368": { "fn": "CompoundHandler.mint", "offset": [ 869, 926 ], "op": "JUMPDEST", "path": "71" }, "12369": { "fn": "CompoundHandler.mint", "offset": [ 671, 933 ], "op": "POP", "path": "71" }, "12370": { "fn": "CompoundHandler.mint", "offset": [ 671, 933 ], "op": "SWAP3", "path": "71" }, "12371": { "fn": "CompoundHandler.mint", "offset": [ 671, 933 ], "op": "SWAP2", "path": "71" }, "12372": { "fn": "CompoundHandler.mint", "offset": [ 671, 933 ], "op": "POP", "path": "71" }, "12373": { "fn": "CompoundHandler.mint", "offset": [ 671, 933 ], "op": "POP", "path": "71" }, "12374": { "fn": "CompoundHandler.mint", "jump": "o", "offset": [ 671, 933 ], "op": "JUMP", "path": "71" }, "12375": { "fn": "CompoundHandler.mintCETH", "offset": [ 513, 665 ], "op": "JUMPDEST", "path": "71" }, "12376": { "fn": "CompoundHandler.mintCETH", "offset": [ 614, 619 ], "op": "DUP1", "path": "71", "statement": 271 }, "12377": { "fn": "CompoundHandler.mintCETH", "offset": [ 614, 632 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12379": { "fn": "CompoundHandler.mintCETH", "offset": [ 614, 632 ], "op": "ADD", "path": "71" }, "12380": { "fn": "CompoundHandler.mintCETH", "offset": [ 614, 632 ], "op": "MLOAD", "path": "71" }, "12381": { "op": "PUSH1", "value": "0x1" }, "12383": { "op": "PUSH1", "value": "0x1" }, "12385": { "op": "PUSH1", "value": "0xA0" }, "12387": { "op": "SHL" }, "12388": { "op": "SUB" }, "12389": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 638 ], "op": "AND", "path": "71" }, "12390": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 638 ], "op": "PUSH4", "path": "71", "value": "0x1249C58B" }, "12395": { "fn": "CompoundHandler.mintCETH", "offset": [ 646, 655 ], "op": "CALLVALUE", "path": "71" }, "12396": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12398": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "MLOAD", "path": "71" }, "12399": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP3", "path": "71" }, "12400": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH4", "path": "71", "value": "0xFFFFFFFF" }, "12405": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "AND", "path": "71" }, "12406": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH1", "path": "71", "value": "0xE0" }, "12408": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "SHL", "path": "71" }, "12409": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP2", "path": "71" }, "12410": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "MSTORE", "path": "71" }, "12411": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "12413": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "ADD", "path": "71" }, "12414": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12416": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "12418": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "MLOAD", "path": "71" }, "12419": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP1", "path": "71" }, "12420": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP4", "path": "71" }, "12421": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "SUB", "path": "71" }, "12422": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP2", "path": "71" }, "12423": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP6", "path": "71" }, "12424": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP9", "path": "71" }, "12425": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP1", "path": "71" }, "12426": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "EXTCODESIZE", "path": "71" }, "12427": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "ISZERO", "path": "71" }, "12428": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP1", "path": "71" }, "12429": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "ISZERO", "path": "71" }, "12430": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH2", "path": "71", "value": "0x2F97" }, "12433": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "JUMPI", "path": "71" }, "12434": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "12436": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "DUP1", "path": "71" }, "12437": { "fn": "CompoundHandler.mintCETH", "offset": [ 598, 658 ], "op": "REVERT", "path": "71" }, "12438": { "fn": "SafeMath.sub", "offset": [ 3128, 3283 ], "op": "JUMPDEST", "path": "6" }, "12439": { "fn": "SafeMath.sub", "offset": [ 3186, 3193 ], "op": "PUSH1", "path": "6", "value": "0x0" }, "12441": { "fn": "SafeMath.sub", "offset": [ 3218, 3219 ], "op": "DUP3", "path": "6", "statement": 272 }, "12442": { "fn": "SafeMath.sub", "offset": [ 3213, 3214 ], "op": "DUP3", "path": "6" }, "12443": { "fn": "SafeMath.sub", "offset": [ 3213, 3219 ], "op": "GT", "path": "6" }, "12444": { "branch": 537, "fn": "SafeMath.sub", "offset": [ 3213, 3219 ], "op": "ISZERO", "path": "6" }, "12445": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH2", "path": "6", "value": "0x30ED" }, "12448": { "branch": 537, "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "JUMPI", "path": "6" }, "12449": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "12451": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP1", "path": "6" }, "12452": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MLOAD", "path": "6" }, "12453": { "op": "PUSH3", "value": "0x461BCD" }, "12457": { "op": "PUSH1", "value": "0xE5" }, "12459": { "op": "SHL" }, "12460": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP2", "path": "6" }, "12461": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "12462": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "12464": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x4" }, "12466": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP3", "path": "6" }, "12467": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "12468": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "12469": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x1E" }, "12471": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x24" }, "12473": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP3", "path": "6" }, "12474": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "12475": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "12476": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH32", "path": "6", "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000" }, "12509": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x44" }, "12511": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP3", "path": "6" }, "12512": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "12513": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "12514": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "12515": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MLOAD", "path": "6" }, "12516": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "12517": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP2", "path": "6" }, "12518": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "12519": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SUB", "path": "6" }, "12520": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x64" }, "12522": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "12523": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "12524": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "REVERT", "path": "6" }, "12525": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "JUMPDEST", "path": "6" }, "12526": { "op": "POP" }, "12527": { "fn": "SafeMath.sub", "offset": [ 3271, 3276 ], "op": "SWAP1", "path": "6", "statement": 273 }, "12528": { "fn": "SafeMath.sub", "offset": [ 3271, 3276 ], "op": "SUB", "path": "6" }, "12529": { "fn": "SafeMath.sub", "offset": [ 3271, 3276 ], "op": "SWAP1", "path": "6" }, "12530": { "fn": "SafeMath.sub", "jump": "o", "offset": [ 3128, 3283 ], "op": "JUMP", "path": "6" }, "12531": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6164, 6423 ], "op": "JUMPDEST", "path": "70" }, "12532": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6248, 6254 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12534": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6285, 6416 ], "op": "PUSH2", "path": "70", "statement": 274, "value": "0xBDF" }, "12537": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6346 ], "op": "PUSH2", "path": "70", "value": "0x3100" }, "12540": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6344 ], "op": "PUSH2", "path": "70", "value": "0x392E" }, "12543": { "fn": "AaveHandler._getReserveNormalizedIncome", "jump": "i", "offset": [ 6319, 6346 ], "op": "JUMP", "path": "70" }, "12544": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6346 ], "op": "JUMPDEST", "path": "70" }, "12545": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6358 ], "op": "SLOAD", "path": "70" }, "12546": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "12548": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "MLOAD", "path": "70" }, "12549": { "op": "PUSH4", "value": "0xD15E0053" }, "12554": { "op": "PUSH1", "value": "0xE0" }, "12556": { "op": "SHL" }, "12557": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP2", "path": "70" }, "12558": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "MSTORE", "path": "70" }, "12559": { "op": "PUSH1", "value": "0x1" }, "12561": { "op": "PUSH1", "value": "0x1" }, "12563": { "op": "PUSH1", "value": "0xA0" }, "12565": { "op": "SHL" }, "12566": { "op": "SUB" }, "12567": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6358 ], "op": "SWAP1", "path": "70" }, "12568": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6358 ], "op": "SWAP2", "path": "70" }, "12569": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6358 ], "op": "AND", "path": "70" }, "12570": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6358 ], "op": "SWAP1", "path": "70" }, "12571": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6385 ], "op": "PUSH4", "path": "70", "value": "0xD15E0053" }, "12576": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6385 ], "op": "SWAP1", "path": "70" }, "12577": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH2", "path": "70", "value": "0x312E" }, "12580": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "SWAP1", "path": "70" }, "12581": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6386, 6401 ], "op": "DUP7", "path": "70" }, "12582": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6386, 6401 ], "op": "SWAP1", "path": "70" }, "12583": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x4" }, "12585": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ADD", "path": "70" }, "12586": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH2", "path": "70", "value": "0x4641" }, "12589": { "fn": "AaveHandler._getReserveNormalizedIncome", "jump": "i", "offset": [ 6319, 6402 ], "op": "JUMP", "path": "70" }, "12590": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "JUMPDEST", "path": "70" }, "12591": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x20" }, "12593": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "12595": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "MLOAD", "path": "70" }, "12596": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12597": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP4", "path": "70" }, "12598": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "SUB", "path": "70" }, "12599": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP2", "path": "70" }, "12600": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP7", "path": "70" }, "12601": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12602": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "EXTCODESIZE", "path": "70" }, "12603": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ISZERO", "path": "70" }, "12604": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12605": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ISZERO", "path": "70" }, "12606": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH2", "path": "70", "value": "0x3146" }, "12609": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "JUMPI", "path": "70" }, "12610": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12612": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12613": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "REVERT", "path": "70" }, "12614": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "JUMPDEST", "path": "70" }, "12615": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "POP", "path": "70" }, "12616": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "GAS", "path": "70" }, "12617": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "STATICCALL", "path": "70" }, "12618": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ISZERO", "path": "70" }, "12619": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12620": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ISZERO", "path": "70" }, "12621": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH2", "path": "70", "value": "0x315A" }, "12624": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "JUMPI", "path": "70" }, "12625": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "RETURNDATASIZE", "path": "70" }, "12626": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12628": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12629": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "RETURNDATACOPY", "path": "70" }, "12630": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "RETURNDATASIZE", "path": "70" }, "12631": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "12633": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "REVERT", "path": "70" }, "12634": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "JUMPDEST", "path": "70" }, "12635": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "POP", "path": "70" }, "12636": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "POP", "path": "70" }, "12637": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "POP", "path": "70" }, "12638": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "POP", "path": "70" }, "12639": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "12641": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "MLOAD", "path": "70" }, "12642": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "RETURNDATASIZE", "path": "70" }, "12643": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x1F" }, "12645": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "NOT", "path": "70" }, "12646": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x1F" }, "12648": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP3", "path": "70" }, "12649": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ADD", "path": "70" }, "12650": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "AND", "path": "70" }, "12651": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP3", "path": "70" }, "12652": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ADD", "path": "70" }, "12653": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP1", "path": "70" }, "12654": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "12656": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "MSTORE", "path": "70" }, "12657": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "POP", "path": "70" }, "12658": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "DUP2", "path": "70" }, "12659": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "ADD", "path": "70" }, "12660": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "SWAP1", "path": "70" }, "12661": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH2", "path": "70", "value": "0x1DEA" }, "12664": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "SWAP2", "path": "70" }, "12665": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "SWAP1", "path": "70" }, "12666": { "fn": "AaveHandler._getReserveNormalizedIncome", "offset": [ 6319, 6402 ], "op": "PUSH2", "path": "70", "value": "0x43D8" }, "12669": { "fn": "AaveHandler._getReserveNormalizedIncome", "jump": "i", "offset": [ 6319, 6402 ], "op": "JUMP", "path": "70" }, "12670": { "fn": "TokenHandler.redeem", "offset": [ 7923, 8970 ], "op": "JUMPDEST", "path": "69" }, "12671": { "fn": "TokenHandler.redeem", "offset": [ 8086, 8092 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "12673": { "fn": "TokenHandler.redeem", "offset": [ 8086, 8092 ], "op": "DUP1", "path": "69" }, "12674": { "fn": "TokenHandler.redeem", "offset": [ 8164, 8178 ], "op": "PUSH1", "path": "69", "value": "0x2" }, "12676": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8150 ], "op": "DUP7", "path": "69" }, "12677": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8160 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "12679": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8160 ], "op": "ADD", "path": "69" }, "12680": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8160 ], "op": "MLOAD", "path": "69" }, "12681": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "12683": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "DUP2", "path": "69" }, "12684": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "GT", "path": "69" }, "12685": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "ISZERO", "path": "69" }, "12686": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "PUSH2", "path": "69", "value": "0x3193" }, "12689": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "JUMPI", "path": "69" }, "12690": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "INVALID", "path": "69" }, "12691": { "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "JUMPDEST", "path": "69" }, "12692": { "branch": 559, "fn": "TokenHandler.redeem", "offset": [ 8140, 8178 ], "op": "EQ", "path": "69" }, "12693": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "ISZERO", "path": "69" }, "12694": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "PUSH2", "path": "69", "value": "0x31AB" }, "12697": { "branch": 559, "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "JUMPI", "path": "69" }, "12698": { "fn": "TokenHandler.redeem", "offset": [ 8211, 8279 ], "op": "PUSH2", "path": "69", "statement": 275, "value": "0x31A4" }, "12701": { "fn": "TokenHandler.redeem", "offset": [ 8238, 8248 ], "op": "DUP7", "path": "69" }, "12702": { "fn": "TokenHandler.redeem", "offset": [ 8250, 8257 ], "op": "DUP6", "path": "69" }, "12703": { "fn": "TokenHandler.redeem", "offset": [ 8259, 8278 ], "op": "DUP6", "path": "69" }, "12704": { "fn": "TokenHandler.redeem", "offset": [ 8211, 8237 ], "op": "PUSH2", "path": "69", "value": "0x393B" }, "12707": { "fn": "TokenHandler.redeem", "jump": "i", "offset": [ 8211, 8279 ], "op": "JUMP", "path": "69" }, "12708": { "fn": "TokenHandler.redeem", "offset": [ 8211, 8279 ], "op": "JUMPDEST", "path": "69" }, "12709": { "fn": "TokenHandler.redeem", "offset": [ 8194, 8279 ], "op": "SWAP1", "path": "69" }, "12710": { "fn": "TokenHandler.redeem", "offset": [ 8194, 8279 ], "op": "POP", "path": "69" }, "12711": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "PUSH2", "path": "69", "value": "0x3208" }, "12714": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "JUMP", "path": "69" }, "12715": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "JUMPDEST", "path": "69" }, "12716": { "fn": "TokenHandler.redeem", "offset": [ 8310, 8338 ], "op": "PUSH1", "path": "69", "value": "0x0" }, "12718": { "fn": "TokenHandler.redeem", "offset": [ 8341, 8371 ], "op": "PUSH2", "path": "69", "value": "0x31B6" }, "12721": { "fn": "TokenHandler.redeem", "offset": [ 8360, 8370 ], "op": "DUP7", "path": "69" }, "12722": { "fn": "TokenHandler.redeem", "offset": [ 8341, 8359 ], "op": "PUSH2", "path": "69", "value": "0xF3B" }, "12725": { "fn": "TokenHandler.redeem", "jump": "i", "offset": [ 8341, 8371 ], "op": "JUMP", "path": "69" }, "12726": { "fn": "TokenHandler.redeem", "offset": [ 8341, 8371 ], "op": "JUMPDEST", "path": "69" }, "12727": { "fn": "TokenHandler.redeem", "offset": [ 8310, 8371 ], "op": "SWAP1", "path": "69" }, "12728": { "op": "POP" }, "12729": { "fn": "TokenHandler.redeem", "offset": [ 8413, 8429 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "12731": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8399 ], "op": "DUP8", "path": "69" }, "12732": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8409 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "12734": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8409 ], "op": "ADD", "path": "69" }, "12735": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8409 ], "op": "MLOAD", "path": "69" }, "12736": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "12738": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "DUP2", "path": "69" }, "12739": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "GT", "path": "69" }, "12740": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "ISZERO", "path": "69" }, "12741": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "PUSH2", "path": "69", "value": "0x31CA" }, "12744": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "JUMPI", "path": "69" }, "12745": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "INVALID", "path": "69" }, "12746": { "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "JUMPDEST", "path": "69" }, "12747": { "branch": 560, "fn": "TokenHandler.redeem", "offset": [ 8389, 8429 ], "op": "EQ", "path": "69" }, "12748": { "fn": "TokenHandler.redeem", "offset": [ 8385, 8805 ], "op": "ISZERO", "path": "69" }, "12749": { "fn": "TokenHandler.redeem", "offset": [ 8385, 8805 ], "op": "PUSH2", "path": "69", "value": "0x31E2" }, "12752": { "branch": 560, "fn": "TokenHandler.redeem", "offset": [ 8385, 8805 ], "op": "JUMPI", "path": "69" }, "12753": { "fn": "TokenHandler.redeem", "offset": [ 8466, 8531 ], "op": "PUSH2", "path": "69", "statement": 276, "value": "0x31DB" }, "12756": { "fn": "TokenHandler.redeem", "offset": [ 8485, 8500 ], "op": "DUP2", "path": "69" }, "12757": { "fn": "TokenHandler.redeem", "offset": [ 8502, 8509 ], "op": "DUP7", "path": "69" }, "12758": { "fn": "TokenHandler.redeem", "offset": [ 8511, 8530 ], "op": "DUP7", "path": "69" }, "12759": { "fn": "TokenHandler.redeem", "offset": [ 8466, 8484 ], "op": "PUSH2", "path": "69", "value": "0x39F8" }, "12762": { "fn": "TokenHandler.redeem", "jump": "i", "offset": [ 8466, 8531 ], "op": "JUMP", "path": "69" }, "12763": { "fn": "TokenHandler.redeem", "offset": [ 8466, 8531 ], "op": "JUMPDEST", "path": "69" }, "12764": { "fn": "TokenHandler.redeem", "offset": [ 8449, 8531 ], "op": "SWAP2", "path": "69" }, "12765": { "fn": "TokenHandler.redeem", "offset": [ 8449, 8531 ], "op": "POP", "path": "69" }, "12766": { "fn": "TokenHandler.redeem", "offset": [ 8385, 8805 ], "op": "PUSH2", "path": "69", "value": "0x3206" }, "12769": { "fn": "TokenHandler.redeem", "offset": [ 8385, 8805 ], "op": "JUMP", "path": "69" }, "12770": { "fn": "TokenHandler.redeem", "offset": [ 8385, 8805 ], "op": "JUMPDEST", "path": "69" }, "12771": { "fn": "TokenHandler.redeem", "offset": [ 8580, 8596 ], "op": "PUSH1", "path": "69", "value": "0x1" }, "12773": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8566 ], "op": "DUP8", "path": "69" }, "12774": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8576 ], "op": "PUSH1", "path": "69", "value": "0x60" }, "12776": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8576 ], "op": "ADD", "path": "69" }, "12777": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8576 ], "op": "MLOAD", "path": "69" }, "12778": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "PUSH1", "path": "69", "value": "0x5" }, "12780": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "DUP2", "path": "69" }, "12781": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "GT", "path": "69" }, "12782": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "ISZERO", "path": "69" }, "12783": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "PUSH2", "path": "69", "value": "0x31F4" }, "12786": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "JUMPI", "path": "69" }, "12787": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "INVALID", "path": "69" }, "12788": { "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "JUMPDEST", "path": "69" }, "12789": { "branch": 561, "fn": "TokenHandler.redeem", "offset": [ 8556, 8596 ], "op": "EQ", "path": "69" }, "12790": { "fn": "TokenHandler.redeem", "offset": [ 8552, 8805 ], "op": "ISZERO", "path": "69" }, "12791": { "fn": "TokenHandler.redeem", "offset": [ 8552, 8805 ], "op": "PUSH2", "path": "69", "value": "0x7B" }, "12794": { "branch": 561, "fn": "TokenHandler.redeem", "jump_revert": true, "offset": [ 8753, 8761 ], "op": "JUMPI", "path": "69" }, "12795": { "fn": "TokenHandler.redeem", "offset": [ 8633, 8714 ], "op": "PUSH2", "path": "69", "statement": 277, "value": "0x31DB" }, "12798": { "fn": "TokenHandler.redeem", "offset": [ 8656, 8666 ], "op": "DUP8", "path": "69" }, "12799": { "fn": "TokenHandler.redeem", "offset": [ 8668, 8683 ], "op": "DUP3", "path": "69" }, "12800": { "fn": "TokenHandler.redeem", "offset": [ 8685, 8692 ], "op": "DUP8", "path": "69" }, "12801": { "fn": "TokenHandler.redeem", "offset": [ 8694, 8713 ], "op": "DUP8", "path": "69" }, "12802": { "fn": "TokenHandler.redeem", "offset": [ 8633, 8655 ], "op": "PUSH2", "path": "69", "value": "0x3AAE" }, "12805": { "fn": "TokenHandler.redeem", "jump": "i", "offset": [ 8633, 8714 ], "op": "JUMP", "path": "69" }, "12806": { "fn": "TokenHandler.redeem", "offset": [ 8552, 8805 ], "op": "JUMPDEST", "path": "69" }, "12807": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "POP", "path": "69" }, "12808": { "fn": "TokenHandler.redeem", "offset": [ 8136, 8815 ], "op": "JUMPDEST", "path": "69" }, "12809": { "fn": "TokenHandler.redeem", "offset": [ 8925, 8963 ], "op": "PUSH2", "path": "69", "statement": 278, "value": "0x2C7F" }, "12812": { "fn": "TokenHandler.redeem", "offset": [ 8925, 8957 ], "op": "PUSH2", "path": "69", "value": "0x3EA" }, "12815": { "fn": "TokenHandler.redeem", "offset": [ 8942, 8956 ], "op": "DUP3", "path": "69" }, "12816": { "fn": "TokenHandler.redeem", "offset": [ 8925, 8941 ], "op": "PUSH2", "path": "69", "value": "0x264D" }, "12819": { "fn": "TokenHandler.redeem", "jump": "i", "offset": [ 8925, 8957 ], "op": "JUMP", "path": "69" }, "12820": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1541, 1760 ], "op": "JUMPDEST", "path": "81" }, "12821": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1607, 1627 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "12823": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1639, 1680 ], "op": "DUP1", "path": "81" }, "12824": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1683, 1719 ], "op": "PUSH2", "path": "81", "value": "0x321F" }, "12827": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1683, 1717 ], "op": "PUSH2", "path": "81", "value": "0x3BAC" }, "12830": { "fn": "nTokenHandler.nTokenAddress", "jump": "i", "offset": [ 1683, 1719 ], "op": "JUMP", "path": "81" }, "12831": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1683, 1719 ], "op": "JUMPDEST", "path": "81" }, "12832": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "PUSH1", "path": "81", "statement": 279, "value": "0x0" }, "12834": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "SWAP4", "path": "81" }, "12835": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "DUP5", "path": "81" }, "12836": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "MSTORE", "path": "81" }, "12837": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "PUSH1", "path": "81", "value": "0x20" }, "12839": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "MSTORE", "path": "81" }, "12840": { "op": "POP" }, "12841": { "op": "POP" }, "12842": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "PUSH1", "path": "81", "value": "0x40" }, "12844": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "SWAP1", "path": "81" }, "12845": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "KECCAK256", "path": "81" }, "12846": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "SLOAD", "path": "81" }, "12847": { "op": "PUSH1", "value": "0x1" }, "12849": { "op": "PUSH1", "value": "0x1" }, "12851": { "op": "PUSH1", "value": "0xA0" }, "12853": { "op": "SHL" }, "12854": { "op": "SUB" }, "12855": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "AND", "path": "81" }, "12856": { "fn": "nTokenHandler.nTokenAddress", "offset": [ 1736, 1753 ], "op": "SWAP1", "path": "81" }, "12857": { "fn": "nTokenHandler.nTokenAddress", "jump": "o", "offset": [ 1541, 1760 ], "op": "JUMP", "path": "81" }, "12858": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4730, 6221 ], "op": "JUMPDEST", "path": "82" }, "12859": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4865, 4872 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "12861": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4898, 4917 ], "op": "DUP1", "path": "82" }, "12862": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4931, 4963 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "12864": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5023, 5082 ], "op": "PUSH2", "path": "82", "value": "0x3249" }, "12867": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5058, 5070 ], "op": "DUP7", "path": "82" }, "12868": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5072, 5081 ], "op": "DUP6", "path": "82" }, "12869": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5023, 5057 ], "op": "PUSH2", "path": "82", "value": "0x3BB9" }, "12872": { "fn": "nTokenSupply.changeNTokenSupply", "jump": "i", "offset": [ 5023, 5082 ], "op": "JUMP", "path": "82" }, "12873": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5023, 5082 ], "op": "JUMPDEST", "path": "82" }, "12874": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4884, 5082 ], "op": "POP", "path": "82" }, "12875": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4884, 5082 ], "op": "SWAP2", "path": "82" }, "12876": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4884, 5082 ], "op": "POP", "path": "82" }, "12877": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4884, 5082 ], "op": "SWAP2", "path": "82" }, "12878": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4884, 5082 ], "op": "POP", "path": "82" }, "12879": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5129, 5187 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "12881": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5190, 5230 ], "op": "PUSH2", "path": "82", "value": "0x3258" }, "12884": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5190, 5228 ], "op": "PUSH2", "path": "82", "value": "0x3C4F" }, "12887": { "fn": "nTokenSupply.changeNTokenSupply", "jump": "i", "offset": [ 5190, 5230 ], "op": "JUMP", "path": "82" }, "12888": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5190, 5230 ], "op": "JUMPDEST", "path": "82" }, "12889": { "op": "PUSH1", "value": "0x1" }, "12891": { "op": "PUSH1", "value": "0x1" }, "12893": { "op": "PUSH1", "value": "0xA0" }, "12895": { "op": "SHL" }, "12896": { "op": "SUB" }, "12897": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "DUP9", "path": "82" }, "12898": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "AND", "path": "82" }, "12899": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5240, 5286 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "12901": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "SWAP1", "path": "82" }, "12902": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "DUP2", "path": "82" }, "12903": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "MSTORE", "path": "82" }, "12904": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "PUSH1", "path": "82", "value": "0x20" }, "12906": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "DUP3", "path": "82" }, "12907": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "SWAP1", "path": "82" }, "12908": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "MSTORE", "path": "82" }, "12909": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "PUSH1", "path": "82", "value": "0x40" }, "12911": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "DUP2", "path": "82" }, "12912": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5289, 5308 ], "op": "KECCAK256", "path": "82" }, "12913": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5129, 5230 ], "op": "SWAP2", "path": "82" }, "12914": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5129, 5230 ], "op": "SWAP3", "path": "82" }, "12915": { "op": "POP" }, "12916": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5343, 5377 ], "op": "PUSH2", "path": "82", "value": "0x327D" }, "12919": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5350, 5361 ], "op": "DUP6", "path": "82" }, "12920": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5367, 5376 ], "op": "DUP10", "path": "82" }, "12921": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5343, 5366 ], "op": "PUSH2", "path": "82", "value": "0xEC5" }, "12924": { "fn": "nTokenSupply.changeNTokenSupply", "jump": "i", "offset": [ 5343, 5377 ], "op": "JUMP", "path": "82" }, "12925": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5343, 5377 ], "op": "JUMPDEST", "path": "82" }, "12926": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5319, 5377 ], "op": "SWAP1", "path": "82" }, "12927": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5319, 5377 ], "op": "POP", "path": "82" }, "12928": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5625, 5639 ], "op": "DUP1", "path": "82", "statement": 280 }, "12929": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5621 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "12931": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5639 ], "op": "SGT", "path": "82" }, "12932": { "branch": 566, "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5639 ], "op": "ISZERO", "path": "82" }, "12933": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5685 ], "op": "DUP1", "path": "82" }, "12934": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5685 ], "op": "ISZERO", "path": "82" }, "12935": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5685 ], "op": "PUSH2", "path": "82", "value": "0x3296" }, "12938": { "branch": 566, "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5685 ], "op": "JUMPI", "path": "82" }, "12939": { "op": "POP" }, "12940": { "op": "PUSH1", "value": "0x1" }, "12942": { "op": "PUSH1", "value": "0x1" }, "12944": { "op": "PUSH1", "value": "0x60" }, "12946": { "op": "SHL" }, "12947": { "op": "SUB" }, "12948": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5643, 5685 ], "op": "DUP2", "path": "82" }, "12949": { "branch": 567, "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5643, 5685 ], "op": "LT", "path": "82" }, "12950": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5620, 5685 ], "op": "JUMPDEST", "path": "82" }, "12951": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5612, 5686 ], "op": "PUSH2", "path": "82", "value": "0x329F" }, "12954": { "branch": 567, "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5612, 5686 ], "op": "JUMPI", "path": "82" }, "12955": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5612, 5686 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "12957": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5612, 5686 ], "op": "DUP1", "path": "82" }, "12958": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5612, 5686 ], "op": "REVERT", "path": "82" }, "12959": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5612, 5686 ], "op": "JUMPDEST", "path": "82" }, "12960": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5728, 5778 ], "op": "DUP2", "path": "82", "statement": 281 }, "12961": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5728, 5778 ], "op": "SLOAD", "path": "82" }, "12962": { "op": "PUSH12", "value": "0xFFFFFFFFFFFFFFFFFFFFFFFF" }, "12975": { "op": "NOT" }, "12976": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5728, 5778 ], "op": "AND", "path": "82" }, "12977": { "op": "PUSH1", "value": "0x1" }, "12979": { "op": "PUSH1", "value": "0x1" }, "12981": { "op": "PUSH1", "value": "0x60" }, "12983": { "op": "SHL" }, "12984": { "op": "SUB" }, "12985": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5728, 5778 ], "op": "DUP3", "path": "82" }, "12986": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5728, 5778 ], "op": "AND", "path": "82" }, "12987": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5728, 5778 ], "op": "OR", "path": "82" }, "12988": { "op": "PUSH16", "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" }, "13005": { "op": "PUSH1", "value": "0x60" }, "13007": { "op": "SHL" }, "13008": { "op": "NOT" }, "13009": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "AND", "path": "82", "statement": 282 }, "13010": { "op": "PUSH1", "value": "0x1" }, "13012": { "op": "PUSH1", "value": "0x60" }, "13014": { "op": "SHL" }, "13015": { "op": "PUSH1", "value": "0x1" }, "13017": { "op": "PUSH1", "value": "0x1" }, "13019": { "op": "PUSH1", "value": "0x80" }, "13021": { "op": "SHL" }, "13022": { "op": "SUB" }, "13023": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "DUP7", "path": "82" }, "13024": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "AND", "path": "82" }, "13025": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "MUL", "path": "82" }, "13026": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "OR", "path": "82" }, "13027": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "DUP3", "path": "82" }, "13028": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 5959, 6033 ], "op": "SSTORE", "path": "82" }, "13029": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6064, 6080 ], "op": "PUSH4", "path": "82", "statement": 283, "value": "0xFFFFFFFF" }, "13034": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6052, 6080 ], "op": "DUP8", "path": "82" }, "13035": { "branch": 568, "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6052, 6080 ], "op": "LT", "path": "82" }, "13036": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6044, 6081 ], "op": "PUSH2", "path": "82", "value": "0x32F4" }, "13039": { "branch": 568, "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6044, 6081 ], "op": "JUMPI", "path": "82" }, "13040": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6044, 6081 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "13042": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6044, 6081 ], "op": "DUP1", "path": "82" }, "13043": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6044, 6081 ], "op": "REVERT", "path": "82" }, "13044": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6044, 6081 ], "op": "JUMPDEST", "path": "82" }, "13045": { "op": "POP" }, "13046": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "DUP1", "path": "82", "statement": 284 }, "13047": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "SLOAD", "path": "82" }, "13048": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "PUSH4", "path": "82", "value": "0xFFFFFFFF" }, "13053": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "DUP8", "path": "82" }, "13054": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "AND", "path": "82" }, "13055": { "op": "PUSH1", "value": "0x1" }, "13057": { "op": "PUSH1", "value": "0xE0" }, "13059": { "op": "SHL" }, "13060": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "MUL", "path": "82" }, "13061": { "op": "PUSH1", "value": "0x1" }, "13063": { "op": "PUSH1", "value": "0x1" }, "13065": { "op": "PUSH1", "value": "0xE0" }, "13067": { "op": "SHL" }, "13068": { "op": "SUB" }, "13069": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "SWAP1", "path": "82" }, "13070": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "SWAP2", "path": "82" }, "13071": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "AND", "path": "82" }, "13072": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "OR", "path": "82" }, "13073": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "SWAP1", "path": "82" }, "13074": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6119, 6172 ], "op": "SSTORE", "path": "82" }, "13075": { "op": "POP" }, "13076": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 6190, 6214 ], "op": "SWAP2", "path": "82", "statement": 285 }, "13077": { "op": "POP" }, "13078": { "op": "POP" }, "13079": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4730, 6221 ], "op": "SWAP4", "path": "82" }, "13080": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4730, 6221 ], "op": "SWAP3", "path": "82" }, "13081": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4730, 6221 ], "op": "POP", "path": "82" }, "13082": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4730, 6221 ], "op": "POP", "path": "82" }, "13083": { "fn": "nTokenSupply.changeNTokenSupply", "offset": [ 4730, 6221 ], "op": "POP", "path": "82" }, "13084": { "fn": "nTokenSupply.changeNTokenSupply", "jump": "o", "offset": [ 4730, 6221 ], "op": "JUMP", "path": "82" }, "13085": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "JUMPDEST", "path": "68" }, "13086": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 958, 984 ], "op": "PUSH1", "path": "68", "value": "0xE0" }, "13088": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 958, 984 ], "op": "DUP5", "path": "68" }, "13089": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 958, 984 ], "op": "ADD", "path": "68" }, "13090": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 958, 984 ], "op": "MLOAD", "path": "68" }, "13091": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 917, 942 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "13093": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 917, 942 ], "op": "SWAP1", "path": "68" }, "13094": { "branch": 493, "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 958, 988 ], "op": "ISZERO", "path": "68" }, "13095": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 954, 1975 ], "op": "PUSH2", "path": "68", "value": "0x33DE" }, "13098": { "branch": 493, "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 954, 1975 ], "op": "JUMPI", "path": "68" }, "13099": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1256 ], "op": "PUSH20", "path": "68", "statement": 286, "value": "0x0" }, "13120": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1294 ], "op": "PUSH4", "path": "68", "value": "0xE0C01A72" }, "13125": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1312, 1324 ], "op": "DUP6", "path": "68" }, "13126": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1383 ], "op": "PUSH2", "path": "68", "value": "0x3352" }, "13129": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1354 ], "op": "DUP9", "path": "68" }, "13130": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1374 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "13132": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1374 ], "op": "ADD", "path": "68" }, "13133": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1374 ], "op": "MLOAD", "path": "68" }, "13134": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1381 ], "op": "PUSH2", "path": "68", "value": "0x1CF6" }, "13137": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 1342, 1383 ], "op": "JUMP", "path": "68" }, "13138": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1342, 1383 ], "op": "JUMPDEST", "path": "68" }, "13139": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1401, 1413 ], "op": "DUP9", "path": "68" }, "13140": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1401, 1427 ], "op": "PUSH1", "path": "68", "value": "0xE0" }, "13142": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1401, 1427 ], "op": "ADD", "path": "68" }, "13143": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1401, 1427 ], "op": "MLOAD", "path": "68" }, "13144": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1584, 1596 ], "op": "DUP10", "path": "68" }, "13145": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1584, 1617 ], "op": "PUSH2", "path": "68", "value": "0x100" }, "13148": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1584, 1617 ], "op": "ADD", "path": "68" }, "13149": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1584, 1617 ], "op": "MLOAD", "path": "68" }, "13150": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "13152": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "MLOAD", "path": "68" }, "13153": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP6", "path": "68" }, "13154": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH4", "path": "68", "value": "0xFFFFFFFF" }, "13159": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "AND", "path": "68" }, "13160": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0xE0" }, "13162": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SHL", "path": "68" }, "13163": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP2", "path": "68" }, "13164": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "MSTORE", "path": "68" }, "13165": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x4" }, "13167": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ADD", "path": "68" }, "13168": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH2", "path": "68", "value": "0x337C" }, "13171": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP5", "path": "68" }, "13172": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP4", "path": "68" }, "13173": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP3", "path": "68" }, "13174": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP2", "path": "68" }, "13175": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP1", "path": "68" }, "13176": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH2", "path": "68", "value": "0x4885" }, "13179": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 1239, 1631 ], "op": "JUMP", "path": "68" }, "13180": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "JUMPDEST", "path": "68" }, "13181": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x20" }, "13183": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "13185": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "MLOAD", "path": "68" }, "13186": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13187": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP4", "path": "68" }, "13188": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SUB", "path": "68" }, "13189": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP2", "path": "68" }, "13190": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP7", "path": "68" }, "13191": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13192": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "EXTCODESIZE", "path": "68" }, "13193": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ISZERO", "path": "68" }, "13194": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13195": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ISZERO", "path": "68" }, "13196": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH2", "path": "68", "value": "0x3394" }, "13199": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "JUMPI", "path": "68" }, "13200": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "13202": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13203": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "REVERT", "path": "68" }, "13204": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "JUMPDEST", "path": "68" }, "13205": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "POP", "path": "68" }, "13206": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "GAS", "path": "68" }, "13207": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DELEGATECALL", "path": "68" }, "13208": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ISZERO", "path": "68" }, "13209": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13210": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ISZERO", "path": "68" }, "13211": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH2", "path": "68", "value": "0x33A8" }, "13214": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "JUMPI", "path": "68" }, "13215": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "RETURNDATASIZE", "path": "68" }, "13216": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "13218": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13219": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "RETURNDATACOPY", "path": "68" }, "13220": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "RETURNDATASIZE", "path": "68" }, "13221": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x0" }, "13223": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "REVERT", "path": "68" }, "13224": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "JUMPDEST", "path": "68" }, "13225": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "POP", "path": "68" }, "13226": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "POP", "path": "68" }, "13227": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "POP", "path": "68" }, "13228": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "POP", "path": "68" }, "13229": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "13231": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "MLOAD", "path": "68" }, "13232": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "RETURNDATASIZE", "path": "68" }, "13233": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x1F" }, "13235": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "NOT", "path": "68" }, "13236": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x1F" }, "13238": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP3", "path": "68" }, "13239": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ADD", "path": "68" }, "13240": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "AND", "path": "68" }, "13241": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP3", "path": "68" }, "13242": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ADD", "path": "68" }, "13243": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP1", "path": "68" }, "13244": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "13246": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "MSTORE", "path": "68" }, "13247": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "POP", "path": "68" }, "13248": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "DUP2", "path": "68" }, "13249": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "ADD", "path": "68" }, "13250": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP1", "path": "68" }, "13251": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH2", "path": "68", "value": "0x33CC" }, "13254": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP2", "path": "68" }, "13255": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "SWAP1", "path": "68" }, "13256": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "PUSH2", "path": "68", "value": "0x43D8" }, "13259": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 1239, 1631 ], "op": "JUMP", "path": "68" }, "13260": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1239, 1631 ], "op": "JUMPDEST", "path": "68" }, "13261": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1766, 1767 ], "op": "PUSH1", "path": "68", "statement": 287, "value": "0x0" }, "13263": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1737, 1763 ], "op": "PUSH1", "path": "68", "value": "0xE0" }, "13265": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1737, 1763 ], "op": "DUP8", "path": "68" }, "13266": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1737, 1763 ], "op": "ADD", "path": "68" }, "13267": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1737, 1767 ], "op": "DUP2", "path": "68" }, "13268": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1737, 1767 ], "op": "SWAP1", "path": "68" }, "13269": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1737, 1767 ], "op": "MSTORE", "path": "68" }, "13270": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1927, 1960 ], "op": "PUSH2", "path": "68", "statement": 288, "value": "0x100" }, "13273": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1927, 1960 ], "op": "DUP8", "path": "68" }, "13274": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1927, 1960 ], "op": "ADD", "path": "68" }, "13275": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1927, 1964 ], "op": "MSTORE", "path": "68" }, "13276": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 1219, 1631 ], "op": "SWAP1", "path": "68" }, "13277": { "op": "POP" }, "13278": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 954, 1975 ], "op": "JUMPDEST", "path": "68" }, "13279": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2947, 3201 ], "op": "PUSH2", "path": "68", "statement": 289, "value": "0x3420" }, "13282": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3191 ], "op": "PUSH2", "path": "68", "value": "0x3419" }, "13285": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3157, 3169 ], "op": "DUP7", "path": "68" }, "13286": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3157, 3190 ], "op": "PUSH2", "path": "68", "value": "0x100" }, "13289": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3157, 3190 ], "op": "ADD", "path": "68" }, "13290": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3157, 3190 ], "op": "MLOAD", "path": "68" }, "13291": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3135 ], "op": "PUSH2", "path": "68", "value": "0x3413" }, "13294": { "offset": [ 499, 503 ], "op": "PUSH8", "path": "60", "value": "0xDE0B6B3A7640000" }, "13303": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3070 ], "op": "PUSH2", "path": "68", "value": "0x340D" }, "13306": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3045, 3069 ], "op": "DUP9", "path": "68" }, "13307": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3023 ], "op": "PUSH2", "path": "68", "value": "0x3407" }, "13310": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 2994 ], "op": "DUP13", "path": "68" }, "13311": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3014 ], "op": "PUSH1", "path": "68", "value": "0x40" }, "13313": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3014 ], "op": "ADD", "path": "68" }, "13314": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3014 ], "op": "MLOAD", "path": "68" }, "13315": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3021 ], "op": "PUSH2", "path": "68", "value": "0x1CF6" }, "13318": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 2982, 3023 ], "op": "JUMP", "path": "68" }, "13319": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3023 ], "op": "JUMPDEST", "path": "68" }, "13320": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3044 ], "op": "SWAP1", "path": "68" }, "13321": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3044 ], "op": "PUSH2", "path": "68", "value": "0x3C5C" }, "13324": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 2982, 3070 ], "op": "JUMP", "path": "68" }, "13325": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3070 ], "op": "JUMPDEST", "path": "68" }, "13326": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3091 ], "op": "SWAP1", "path": "68" }, "13327": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3091 ], "op": "PUSH2", "path": "68", "value": "0x3CB5" }, "13330": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 2982, 3135 ], "op": "JUMP", "path": "68" }, "13331": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3135 ], "op": "JUMPDEST", "path": "68" }, "13332": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3156 ], "op": "SWAP1", "path": "68" }, "13333": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3156 ], "op": "PUSH2", "path": "68", "value": "0x3096" }, "13336": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 2982, 3191 ], "op": "JUMP", "path": "68" }, "13337": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2982, 3191 ], "op": "JUMPDEST", "path": "68" }, "13338": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2947, 2964 ], "op": "DUP3", "path": "68" }, "13339": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2947, 2964 ], "op": "SWAP1", "path": "68" }, "13340": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2947, 2968 ], "op": "PUSH2", "path": "68", "value": "0x3D1C" }, "13343": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 2947, 3201 ], "op": "JUMP", "path": "68" }, "13344": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2947, 3201 ], "op": "JUMPDEST", "path": "68" }, "13345": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 2927, 3201 ], "op": "SWAP1", "path": "68" }, "13346": { "op": "POP" }, "13347": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 4033, 4155 ], "op": "PUSH2", "path": "68", "statement": 290, "value": "0x3438" }, "13350": { "offset": [ 499, 503 ], "op": "PUSH8", "path": "60", "value": "0xDE0B6B3A7640000" }, "13359": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 4033, 4094 ], "op": "PUSH2", "path": "68", "value": "0x340D" }, "13362": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 4033, 4051 ], "op": "DUP5", "path": "68" }, "13363": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 4069, 4093 ], "op": "DUP7", "path": "68" }, "13364": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 4033, 4068 ], "op": "PUSH2", "path": "68", "value": "0x3C5C" }, "13367": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "i", "offset": [ 4033, 4094 ], "op": "JUMP", "path": "68" }, "13368": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 4033, 4155 ], "op": "JUMPDEST", "path": "68" }, "13369": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4009 ], "op": "DUP6", "path": "68" }, "13370": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4030 ], "op": "PUSH2", "path": "68", "value": "0x100" }, "13373": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4030 ], "op": "ADD", "path": "68" }, "13374": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4155 ], "op": "DUP2", "path": "68" }, "13375": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4155 ], "op": "DUP2", "path": "68" }, "13376": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4155 ], "op": "MSTORE", "path": "68" }, "13377": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4155 ], "op": "POP", "path": "68" }, "13378": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 3997, 4155 ], "op": "POP", "path": "68" }, "13379": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "SWAP5", "path": "68" }, "13380": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "SWAP4", "path": "68" }, "13381": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "POP", "path": "68" }, "13382": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "POP", "path": "68" }, "13383": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "POP", "path": "68" }, "13384": { "fn": "Incentives.calculateIncentivesToClaim", "offset": [ 702, 4162 ], "op": "POP", "path": "68" }, "13385": { "fn": "Incentives.calculateIncentivesToClaim", "jump": "o", "offset": [ 702, 4162 ], "op": "JUMP", "path": "68" }, "13386": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5133, 5582 ], "op": "JUMPDEST", "path": "81" }, "13387": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5208, 5217 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "13389": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5229, 5276 ], "op": "DUP1", "path": "81" }, "13390": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5279, 5315 ], "op": "PUSH2", "path": "81", "value": "0x3455" }, "13393": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5279, 5313 ], "op": "PUSH2", "path": "81", "value": "0x2894" }, "13396": { "fn": "nTokenHandler.getSecondaryRewarder", "jump": "i", "offset": [ 5279, 5315 ], "op": "JUMP", "path": "81" }, "13397": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5279, 5315 ], "op": "JUMPDEST", "path": "81" }, "13398": { "op": "PUSH1", "value": "0x1" }, "13400": { "op": "PUSH1", "value": "0x1" }, "13402": { "op": "PUSH1", "value": "0xA0" }, "13404": { "op": "SHL" }, "13405": { "op": "SUB" }, "13406": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "DUP5", "path": "81" }, "13407": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "AND", "path": "81" }, "13408": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5325, 5354 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "13410": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "SWAP1", "path": "81" }, "13411": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "DUP2", "path": "81" }, "13412": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "MSTORE", "path": "81" }, "13413": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "PUSH1", "path": "81", "value": "0x20" }, "13415": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "DUP3", "path": "81" }, "13416": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "SWAP1", "path": "81" }, "13417": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "MSTORE", "path": "81" }, "13418": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "PUSH1", "path": "81", "value": "0x40" }, "13420": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "SWAP1", "path": "81" }, "13421": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "KECCAK256", "path": "81" }, "13422": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5399, 5427 ], "op": "DUP1", "path": "81" }, "13423": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5399, 5427 ], "op": "SLOAD", "path": "81" }, "13424": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "SWAP2", "path": "81" }, "13425": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "SWAP3", "path": "81" }, "13426": { "op": "POP" }, "13427": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5357, 5376 ], "op": "SWAP1", "path": "81" }, "13428": { "op": "PUSH1", "value": "0x1" }, "13430": { "op": "PUSH1", "value": "0xF8" }, "13432": { "op": "SHL" }, "13433": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5399, 5427 ], "op": "SWAP1", "path": "81" }, "13434": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5399, 5427 ], "op": "DIV", "path": "81" }, "13435": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5399, 5427 ], "op": "PUSH1", "path": "81", "value": "0xFF" }, "13437": { "branch": 565, "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5399, 5427 ], "op": "AND", "path": "81" }, "13438": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5395, 5576 ], "op": "ISZERO", "path": "81" }, "13439": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5395, 5576 ], "op": "PUSH2", "path": "81", "value": "0x34B1" }, "13442": { "branch": 565, "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5395, 5576 ], "op": "JUMPI", "path": "81" }, "13443": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5492 ], "op": "PUSH2", "path": "81", "statement": 291, "value": "0x348A" }, "13446": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5490 ], "op": "PUSH2", "path": "81", "value": "0x3D76" }, "13449": { "fn": "nTokenHandler.getSecondaryRewarder", "jump": "i", "offset": [ 5450, 5492 ], "op": "JUMP", "path": "81" }, "13450": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5492 ], "op": "JUMPDEST", "path": "81" }, "13451": { "op": "PUSH1", "value": "0x1" }, "13453": { "op": "PUSH1", "value": "0x1" }, "13455": { "op": "PUSH1", "value": "0xA0" }, "13457": { "op": "SHL" }, "13458": { "op": "SUB" }, "13459": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "DUP1", "path": "81" }, "13460": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "DUP7", "path": "81" }, "13461": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "AND", "path": "81" }, "13462": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "13464": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP1", "path": "81" }, "13465": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "DUP2", "path": "81" }, "13466": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "MSTORE", "path": "81" }, "13467": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "PUSH1", "path": "81", "value": "0x20" }, "13469": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP3", "path": "81" }, "13470": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP1", "path": "81" }, "13471": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP3", "path": "81" }, "13472": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "MSTORE", "path": "81" }, "13473": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "PUSH1", "path": "81", "value": "0x40" }, "13475": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP1", "path": "81" }, "13476": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP2", "path": "81" }, "13477": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "KECCAK256", "path": "81" }, "13478": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SLOAD", "path": "81" }, "13479": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "AND", "path": "81" }, "13480": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5450, 5506 ], "op": "SWAP3", "path": "81" }, "13481": { "op": "POP" }, "13482": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5443, 5506 ], "op": "PUSH2", "path": "81", "value": "0xBE2" }, "13485": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5443, 5506 ], "op": "SWAP2", "path": "81" }, "13486": { "op": "POP" }, "13487": { "op": "POP" }, "13488": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5443, 5506 ], "op": "JUMP", "path": "81" }, "13489": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5395, 5576 ], "op": "JUMPDEST", "path": "81" }, "13490": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5562, 5563 ], "op": "PUSH1", "path": "81", "statement": 292, "value": "0x0" }, "13492": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5537, 5565 ], "op": "SWAP3", "path": "81" }, "13493": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5537, 5565 ], "op": "POP", "path": "81" }, "13494": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5537, 5565 ], "op": "POP", "path": "81" }, "13495": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5537, 5565 ], "op": "POP", "path": "81" }, "13496": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5537, 5565 ], "op": "PUSH2", "path": "81", "value": "0xBE2" }, "13499": { "fn": "nTokenHandler.getSecondaryRewarder", "offset": [ 5537, 5565 ], "op": "JUMP", "path": "81" }, "13500": { "fn": "TokenHandler.transferIncentive", "offset": [ 14515, 14698 ], "op": "JUMPDEST", "path": "69" }, "13501": { "fn": "TokenHandler.transferIncentive", "offset": [ 14604, 14691 ], "op": "PUSH2", "path": "69", "statement": 293, "value": "0x8EB" }, "13504": { "offset": [ 336, 378 ], "op": "PUSH20", "path": "61", "value": "0xCFEAEAD4947F0705A14EC42AC3D44129E1EF3ED5" }, "13525": { "fn": "TokenHandler.transferIncentive", "offset": [ 14665, 14672 ], "op": "DUP4", "path": "69" }, "13526": { "fn": "TokenHandler.transferIncentive", "offset": [ 14674, 14690 ], "op": "DUP4", "path": "69" }, "13527": { "fn": "TokenHandler.transferIncentive", "offset": [ 14604, 14632 ], "op": "PUSH2", "path": "69", "value": "0x2DB7" }, "13530": { "fn": "TokenHandler.transferIncentive", "jump": "i", "offset": [ 14604, 14691 ], "op": "JUMP", "path": "69" }, "13531": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12689, 14727 ], "op": "JUMPDEST", "path": "84" }, "13532": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12803, 12830 ], "op": "DUP2", "path": "84", "statement": 294 }, "13533": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12803, 12830 ], "op": "MLOAD", "path": "84" }, "13534": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12803, 12837 ], "op": "MLOAD", "path": "84" }, "13535": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12795, 12837 ], "op": "DUP2", "path": "84" }, "13536": { "branch": 507, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12795, 12837 ], "op": "LT", "path": "84" }, "13537": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "PUSH2", "path": "84", "value": "0x34E9" }, "13540": { "branch": 507, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "JUMPI", "path": "84" }, "13541": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13543": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "DUP1", "path": "84" }, "13544": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "REVERT", "path": "84" }, "13545": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "JUMPDEST", "path": "84" }, "13546": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12920, 12921 ], "op": "PUSH1", "path": "84", "statement": 295, "value": "0x0" }, "13548": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12899 ], "op": "DUP3", "path": "84" }, "13549": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12917 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "13551": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12917 ], "op": "ADD", "path": "84" }, "13552": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12917 ], "op": "MLOAD", "path": "84" }, "13553": { "branch": 508, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12921 ], "op": "GT", "path": "84" }, "13554": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "PUSH2", "path": "84", "value": "0x34FA" }, "13557": { "branch": 508, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "JUMPI", "path": "84" }, "13558": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13560": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "DUP1", "path": "84" }, "13561": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "REVERT", "path": "84" }, "13562": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "JUMPDEST", "path": "84" }, "13563": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12969, 13004 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13565": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13021 ], "op": "DUP3", "path": "84" }, "13566": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13034 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13568": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13034 ], "op": "ADD", "path": "84" }, "13569": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13034 ], "op": "MLOAD", "path": "84" }, "13570": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13035, 13040 ], "op": "DUP3", "path": "84" }, "13571": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "DUP2", "path": "84" }, "13572": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "MLOAD", "path": "84" }, "13573": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "DUP2", "path": "84" }, "13574": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "LT", "path": "84" }, "13575": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "PUSH2", "path": "84", "value": "0x350C" }, "13578": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "JUMPI", "path": "84" }, "13579": { "dev": "Index out of range", "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "INVALID", "path": "84" }, "13580": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "JUMPDEST", "path": "84" }, "13581": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13583": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "MUL", "path": "84" }, "13584": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13586": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "ADD", "path": "84" }, "13587": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "ADD", "path": "84" }, "13588": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "MLOAD", "path": "84" }, "13589": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12969, 13041 ], "op": "SWAP1", "path": "84" }, "13590": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12969, 13041 ], "op": "POP", "path": "84" }, "13591": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13102, 13126 ], "op": "PUSH1", "path": "84", "statement": 296, "value": "0x2" }, "13593": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "13595": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "DUP2", "path": "84" }, "13596": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "GT", "path": "84" }, "13597": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "ISZERO", "path": "84" }, "13598": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH2", "path": "84", "value": "0x3523" }, "13601": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPI", "path": "84" }, "13602": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "INVALID", "path": "84" }, "13603": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPDEST", "path": "84" }, "13604": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13085 ], "op": "DUP2", "path": "84" }, "13605": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13098 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "13607": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13098 ], "op": "ADD", "path": "84" }, "13608": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13098 ], "op": "MLOAD", "path": "84" }, "13609": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "13611": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "DUP2", "path": "84" }, "13612": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "GT", "path": "84" }, "13613": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "ISZERO", "path": "84" }, "13614": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH2", "path": "84", "value": "0x3533" }, "13617": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPI", "path": "84" }, "13618": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "INVALID", "path": "84" }, "13619": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPDEST", "path": "84" }, "13620": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "EQ", "path": "84" }, "13621": { "branch": 509, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "ISZERO", "path": "84" }, "13622": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "DUP1", "path": "84" }, "13623": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "ISZERO", "path": "84" }, "13624": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "PUSH2", "path": "84", "value": "0x3551" }, "13627": { "branch": 509, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "JUMPI", "path": "84" }, "13628": { "op": "POP" }, "13629": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13172, 13204 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "13631": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13155 ], "op": "DUP2", "path": "84" }, "13632": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13168 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "13634": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13168 ], "op": "ADD", "path": "84" }, "13635": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13168 ], "op": "MLOAD", "path": "84" }, "13636": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "13638": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "DUP2", "path": "84" }, "13639": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "GT", "path": "84" }, "13640": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "ISZERO", "path": "84" }, "13641": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "PUSH2", "path": "84", "value": "0x354E" }, "13644": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "JUMPI", "path": "84" }, "13645": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "INVALID", "path": "84" }, "13646": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "JUMPDEST", "path": "84" }, "13647": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "EQ", "path": "84" }, "13648": { "branch": 510, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "ISZERO", "path": "84" }, "13649": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "JUMPDEST", "path": "84" }, "13650": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "PUSH2", "path": "84", "value": "0x355A" }, "13653": { "branch": 510, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "JUMPI", "path": "84" }, "13654": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13656": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "DUP1", "path": "84" }, "13657": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "REVERT", "path": "84" }, "13658": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "JUMPDEST", "path": "84" }, "13659": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13285 ], "op": "PUSH1", "path": "84", "statement": 297, "value": "0x60" }, "13661": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13285 ], "op": "DUP4", "path": "84" }, "13662": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13285 ], "op": "ADD", "path": "84" }, "13663": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "DUP1", "path": "84" }, "13664": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "MLOAD", "path": "84" }, "13665": { "op": "PUSH1", "value": "0x0" }, "13667": { "op": "NOT" }, "13668": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "ADD", "path": "84" }, "13669": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "SWAP1", "path": "84" }, "13670": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "MSTORE", "path": "84" }, "13671": { "op": "PUSH1", "value": "0x0" }, "13673": { "op": "DUP1" }, "13674": { "op": "DUP1" }, "13675": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMPDEST", "path": "84" }, "13676": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13551, 13578 ], "op": "DUP6", "path": "84" }, "13677": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13551, 13578 ], "op": "MLOAD", "path": "84" }, "13678": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13551, 13585 ], "op": "MLOAD", "path": "84" }, "13679": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13547, 13585 ], "op": "DUP2", "path": "84" }, "13680": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13547, 13585 ], "op": "LT", "path": "84" }, "13681": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "ISZERO", "path": "84" }, "13682": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "PUSH2", "path": "84", "value": "0x35CD" }, "13685": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMPI", "path": "84" }, "13686": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13606, 13629 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13688": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13646 ], "op": "DUP7", "path": "84" }, "13689": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13659 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13691": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13659 ], "op": "ADD", "path": "84" }, "13692": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13659 ], "op": "MLOAD", "path": "84" }, "13693": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13660, 13661 ], "op": "DUP3", "path": "84" }, "13694": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "DUP2", "path": "84" }, "13695": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "MLOAD", "path": "84" }, "13696": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "DUP2", "path": "84" }, "13697": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "LT", "path": "84" }, "13698": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "PUSH2", "path": "84", "value": "0x3587" }, "13701": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "JUMPI", "path": "84" }, "13702": { "dev": "Index out of range", "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "INVALID", "path": "84" }, "13703": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "JUMPDEST", "path": "84" }, "13704": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13706": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "MUL", "path": "84" }, "13707": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13709": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "ADD", "path": "84" }, "13710": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "ADD", "path": "84" }, "13711": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "MLOAD", "path": "84" }, "13712": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13606, 13662 ], "op": "SWAP1", "path": "84" }, "13713": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13606, 13662 ], "op": "POP", "path": "84" }, "13714": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13696, 13709 ], "op": "DUP3", "path": "84" }, "13715": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13681 ], "op": "DUP2", "path": "84" }, "13716": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13693 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "13718": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13693 ], "op": "ADD", "path": "84" }, "13719": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13693 ], "op": "MLOAD", "path": "84" }, "13720": { "branch": 511, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13709 ], "op": "GT", "path": "84" }, "13721": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "DUP1", "path": "84" }, "13722": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "ISZERO", "path": "84" }, "13723": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "PUSH2", "path": "84", "value": "0x35B4" }, "13726": { "branch": 511, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "JUMPI", "path": "84" }, "13727": { "op": "POP" }, "13728": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13731, 13755 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "13730": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13714 ], "op": "DUP2", "path": "84" }, "13731": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13727 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "13733": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13727 ], "op": "ADD", "path": "84" }, "13734": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13727 ], "op": "MLOAD", "path": "84" }, "13735": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "13737": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "DUP2", "path": "84" }, "13738": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "GT", "path": "84" }, "13739": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "ISZERO", "path": "84" }, "13740": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "PUSH2", "path": "84", "value": "0x35B1" }, "13743": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "JUMPI", "path": "84" }, "13744": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "INVALID", "path": "84" }, "13745": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "JUMPDEST", "path": "84" }, "13746": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "EQ", "path": "84" }, "13747": { "branch": 512, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "ISZERO", "path": "84" }, "13748": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "JUMPDEST", "path": "84" }, "13749": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "ISZERO", "path": "84" }, "13750": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "PUSH2", "path": "84", "value": "0x35C4" }, "13753": { "branch": 512, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "JUMPI", "path": "84" }, "13754": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13792 ], "op": "DUP1", "path": "84", "statement": 298 }, "13755": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13804 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "13757": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13804 ], "op": "ADD", "path": "84" }, "13758": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13804 ], "op": "MLOAD", "path": "84" }, "13759": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13775, 13804 ], "op": "SWAP3", "path": "84" }, "13760": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13775, 13804 ], "op": "POP", "path": "84" }, "13761": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13843, 13844 ], "op": "DUP2", "path": "84", "statement": 299 }, "13762": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13822, 13844 ], "op": "SWAP4", "path": "84" }, "13763": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13822, 13844 ], "op": "POP", "path": "84" }, "13764": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "JUMPDEST", "path": "84" }, "13765": { "op": "POP" }, "13766": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13587, 13590 ], "op": "PUSH1", "path": "84", "statement": 300, "value": "0x1" }, "13768": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13587, 13590 ], "op": "ADD", "path": "84" }, "13769": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "PUSH2", "path": "84", "value": "0x356B" }, "13772": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMP", "path": "84" }, "13773": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMPDEST", "path": "84" }, "13774": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "POP", "path": "84" }, "13775": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13892, 13910 ], "op": "DUP2", "path": "84" }, "13776": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13883, 13888 ], "op": "DUP5", "path": "84" }, "13777": { "branch": 513, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13883, 13910 ], "op": "EQ", "path": "84" }, "13778": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "ISZERO", "path": "84" }, "13779": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "PUSH2", "path": "84", "value": "0x35E6" }, "13782": { "branch": 513, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "JUMPI", "path": "84" }, "13783": { "op": "POP" }, "13784": { "op": "POP" }, "13785": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14060, 14084 ], "op": "PUSH1", "path": "84", "statement": 301, "value": "0x2" }, "13787": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "13789": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "SWAP2", "path": "84" }, "13790": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "SWAP1", "path": "84" }, "13791": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "SWAP2", "path": "84" }, "13792": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "ADD", "path": "84" }, "13793": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14084 ], "op": "MSTORE", "path": "84" }, "13794": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14098, 14105 ], "op": "PUSH2", "path": "84", "statement": 302, "value": "0x8EB" }, "13797": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14098, 14105 ], "op": "JUMP", "path": "84" }, "13798": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "JUMPDEST", "path": "84" }, "13799": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14328, 14361 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13801": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14378 ], "op": "DUP6", "path": "84" }, "13802": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14391 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13804": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14391 ], "op": "ADD", "path": "84" }, "13805": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14391 ], "op": "MLOAD", "path": "84" }, "13806": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14392, 14410 ], "op": "DUP4", "path": "84" }, "13807": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "DUP2", "path": "84" }, "13808": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "MLOAD", "path": "84" }, "13809": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "DUP2", "path": "84" }, "13810": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "LT", "path": "84" }, "13811": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "PUSH2", "path": "84", "value": "0x35F8" }, "13814": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "JUMPI", "path": "84" }, "13815": { "dev": "Index out of range", "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "INVALID", "path": "84" }, "13816": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "JUMPDEST", "path": "84" }, "13817": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13819": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP1", "path": "84" }, "13820": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "DUP2", "path": "84" }, "13821": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "MUL", "path": "84" }, "13822": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP2", "path": "84" }, "13823": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP1", "path": "84" }, "13824": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP2", "path": "84" }, "13825": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "ADD", "path": "84" }, "13826": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "ADD", "path": "84" }, "13827": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "MLOAD", "path": "84" }, "13828": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "PUSH1", "path": "84", "statement": 303, "value": "0x80" }, "13830": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "DUP6", "path": "84" }, "13831": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "DUP2", "path": "84" }, "13832": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "ADD", "path": "84" }, "13833": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "DUP1", "path": "84" }, "13834": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "MLOAD", "path": "84" }, "13835": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "SWAP2", "path": "84" }, "13836": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "DUP4", "path": "84" }, "13837": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "ADD", "path": "84" }, "13838": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "DUP1", "path": "84" }, "13839": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "MLOAD", "path": "84" }, "13840": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "SWAP1", "path": "84" }, "13841": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "SWAP2", "path": "84" }, "13842": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "MSTORE", "path": "84" }, "13843": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "MSTORE", "path": "84" }, "13844": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14633, 14657 ], "op": "PUSH1", "path": "84", "statement": 304, "value": "0x1" }, "13846": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "13848": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "SWAP2", "path": "84" }, "13849": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "DUP3", "path": "84" }, "13850": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "ADD", "path": "84" }, "13851": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14657 ], "op": "MSTORE", "path": "84" }, "13852": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14696, 14720 ], "op": "PUSH1", "path": "84", "statement": 305, "value": "0x2" }, "13854": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14693 ], "op": "SWAP5", "path": "84" }, "13855": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14693 ], "op": "ADD", "path": "84" }, "13856": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "SWAP4", "path": "84" }, "13857": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "SWAP1", "path": "84" }, "13858": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "SWAP4", "path": "84" }, "13859": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "MSTORE", "path": "84" }, "13860": { "op": "POP" }, "13861": { "op": "POP" }, "13862": { "op": "POP" }, "13863": { "op": "POP" }, "13864": { "op": "POP" }, "13865": { "fn": "PortfolioHandler.deleteAsset", "jump": "o", "offset": [ 12689, 14727 ], "op": "JUMP", "path": "84" }, "13866": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11592, 12454 ], "op": "JUMPDEST", "path": "84" }, "13867": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11739, 11755 ], "op": "DUP2", "path": "84", "statement": 306 }, "13868": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11739, 11755 ], "op": "MLOAD", "path": "84" }, "13869": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "ISZERO", "path": "84" }, "13870": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "DUP1", "path": "84" }, "13871": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "ISZERO", "path": "84" }, "13872": { "branch": 514, "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "SWAP1", "path": "84" }, "13873": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11803 ], "op": "PUSH2", "path": "84", "value": "0x363D" }, "13876": { "branch": 514, "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11803 ], "op": "JUMPI", "path": "84" }, "13877": { "op": "POP" }, "13878": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11759, 11775 ], "op": "DUP2", "path": "84" }, "13879": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11759, 11775 ], "op": "MLOAD", "path": "84" }, "13880": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "13883": { "op": "LT" }, "13884": { "branch": 515, "fn": "PortfolioHandler._storeAsset", "offset": [ 11759, 11803 ], "op": "ISZERO", "path": "84" }, "13885": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11803 ], "op": "JUMPDEST", "path": "84" }, "13886": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "PUSH2", "path": "84", "value": "0x3646" }, "13889": { "branch": 515, "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "JUMPI", "path": "84" }, "13890": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13892": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "DUP1", "path": "84" }, "13893": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "REVERT", "path": "84" }, "13894": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "JUMPDEST", "path": "84" }, "13895": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11873 ], "op": "DUP2", "path": "84", "statement": 307 }, "13896": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11882 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13898": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11882 ], "op": "ADD", "path": "84" }, "13899": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11882 ], "op": "MLOAD", "path": "84" }, "13900": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11865 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13902": { "branch": 516, "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11882 ], "op": "LT", "path": "84" }, "13903": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "DUP1", "path": "84" }, "13904": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "ISZERO", "path": "84" }, "13905": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "PUSH2", "path": "84", "value": "0x3663" }, "13908": { "branch": 516, "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "JUMPI", "path": "84" }, "13909": { "op": "POP" }, "13910": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "13912": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "DUP3", "path": "84" }, "13913": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "ADD", "path": "84" }, "13914": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "MLOAD", "path": "84" }, "13915": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11904, 11920 ], "op": "PUSH5", "path": "84", "value": "0xFFFFFFFFFF" }, "13921": { "op": "LT" }, "13922": { "branch": 517, "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11920 ], "op": "ISZERO", "path": "84" }, "13923": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "JUMPDEST", "path": "84" }, "13924": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "PUSH2", "path": "84", "value": "0x366C" }, "13927": { "branch": 517, "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "JUMPI", "path": "84" }, "13928": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13930": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "DUP1", "path": "84" }, "13931": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "REVERT", "path": "84" }, "13932": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "JUMPDEST", "path": "84" }, "13933": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11987 ], "op": "DUP2", "path": "84", "statement": 308 }, "13934": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11997 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "13936": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11997 ], "op": "ADD", "path": "84" }, "13937": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11997 ], "op": "MLOAD", "path": "84" }, "13938": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 11979 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13940": { "branch": 518, "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 11997 ], "op": "LT", "path": "84" }, "13941": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "DUP1", "path": "84" }, "13942": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "ISZERO", "path": "84" }, "13943": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "PUSH2", "path": "84", "value": "0x3685" }, "13946": { "branch": 518, "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "JUMPI", "path": "84" }, "13947": { "op": "POP" }, "13948": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "13950": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "DUP3", "path": "84" }, "13951": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "ADD", "path": "84" }, "13952": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "MLOAD", "path": "84" }, "13953": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "13955": { "op": "LT" }, "13956": { "branch": 519, "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12055 ], "op": "ISZERO", "path": "84" }, "13957": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "JUMPDEST", "path": "84" }, "13958": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "PUSH2", "path": "84", "value": "0x368E" }, "13961": { "branch": 519, "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "JUMPI", "path": "84" }, "13962": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "13964": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "DUP1", "path": "84" }, "13965": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "REVERT", "path": "84" }, "13966": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "JUMPDEST", "path": "84" }, "13967": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "PUSH1", "path": "84", "statement": 309, "value": "0x60" }, "13969": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "DUP3", "path": "84" }, "13970": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "ADD", "path": "84" }, "13971": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "MLOAD", "path": "84" }, "13972": { "op": "PUSH11", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "13984": { "op": "NOT" }, "13985": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "SGT", "path": "84" }, "13986": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "DUP1", "path": "84" }, "13987": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "ISZERO", "path": "84" }, "13988": { "branch": 520, "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "SWAP1", "path": "84" }, "13989": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12178 ], "op": "PUSH2", "path": "84", "value": "0x36BD" }, "13992": { "branch": 520, "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12178 ], "op": "JUMPI", "path": "84" }, "13993": { "op": "POP" }, "13994": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "13996": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "DUP3", "path": "84" }, "13997": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "ADD", "path": "84" }, "13998": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "MLOAD", "path": "84" }, "13999": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12163, 12178 ], "op": "PUSH11", "path": "84", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "14011": { "op": "SLT" }, "14012": { "branch": 521, "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12178 ], "op": "ISZERO", "path": "84" }, "14013": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12178 ], "op": "JUMPDEST", "path": "84" }, "14014": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "PUSH2", "path": "84", "value": "0x36C6" }, "14017": { "branch": 521, "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "JUMPI", "path": "84" }, "14018": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "14020": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "DUP1", "path": "84" }, "14021": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "REVERT", "path": "84" }, "14022": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "JUMPDEST", "path": "84" }, "14023": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12262, 12278 ], "op": "DUP2", "path": "84", "statement": 310 }, "14024": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12262, 12278 ], "op": "MLOAD", "path": "84" }, "14025": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "DUP2", "path": "84" }, "14026": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SLOAD", "path": "84" }, "14027": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "PUSH1", "path": "84", "statement": 311, "value": "0x20" }, "14029": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "DUP5", "path": "84" }, "14030": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "ADD", "path": "84" }, "14031": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "MLOAD", "path": "84" }, "14032": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "PUSH1", "path": "84", "statement": 312, "value": "0x40" }, "14034": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "DUP6", "path": "84" }, "14035": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "ADD", "path": "84" }, "14036": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "MLOAD", "path": "84" }, "14037": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "PUSH1", "path": "84", "statement": 313, "value": "0x60" }, "14039": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "SWAP1", "path": "84" }, "14040": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "SWAP6", "path": "84" }, "14041": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "ADD", "path": "84" }, "14042": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "MLOAD", "path": "84" }, "14043": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "PUSH1", "path": "84", "value": "0xA" }, "14045": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SIGNEXTEND", "path": "84" }, "14046": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "PUSH11", "path": "84", "value": "0xFFFFFFFFFFFFFFFFFFFFFF" }, "14058": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "AND", "path": "84" }, "14059": { "op": "PUSH1", "value": "0x1" }, "14061": { "op": "PUSH1", "value": "0x40" }, "14063": { "op": "SHL" }, "14064": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "MUL", "path": "84" }, "14065": { "op": "PUSH19", "value": "0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000" }, "14085": { "op": "NOT" }, "14086": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "14088": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP1", "path": "84" }, "14089": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP7", "path": "84" }, "14090": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "AND", "path": "84" }, "14091": { "op": "PUSH1", "value": "0x1" }, "14093": { "op": "PUSH1", "value": "0x38" }, "14095": { "op": "SHL" }, "14096": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "MUL", "path": "84" }, "14097": { "op": "PUSH8", "value": "0xFF00000000000000" }, "14106": { "op": "NOT" }, "14107": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "PUSH5", "path": "84", "value": "0xFFFFFFFFFF" }, "14113": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP1", "path": "84" }, "14114": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP4", "path": "84" }, "14115": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "AND", "path": "84" }, "14116": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "PUSH3", "path": "84", "value": "0x10000" }, "14120": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "MUL", "path": "84" }, "14121": { "op": "PUSH7", "value": "0xFFFFFFFFFF0000" }, "14129": { "op": "NOT" }, "14130": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "PUSH2", "path": "84", "value": "0xFFFF" }, "14133": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP1", "path": "84" }, "14134": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP7", "path": "84" }, "14135": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "AND", "path": "84" }, "14136": { "op": "PUSH2", "value": "0xFFFF" }, "14139": { "op": "NOT" }, "14140": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP1", "path": "84" }, "14141": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP6", "path": "84" }, "14142": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "AND", "path": "84" }, "14143": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP5", "path": "84" }, "14144": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP1", "path": "84" }, "14145": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP5", "path": "84" }, "14146": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "OR", "path": "84" }, "14147": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP5", "path": "84" }, "14148": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP1", "path": "84" }, "14149": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP5", "path": "84" }, "14150": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "AND", "path": "84" }, "14151": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP3", "path": "84" }, "14152": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP1", "path": "84" }, "14153": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP3", "path": "84" }, "14154": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "OR", "path": "84" }, "14155": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "AND", "path": "84" }, "14156": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP2", "path": "84" }, "14157": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP1", "path": "84" }, "14158": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP2", "path": "84" }, "14159": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "OR", "path": "84" }, "14160": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP3", "path": "84" }, "14161": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP1", "path": "84" }, "14162": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP3", "path": "84" }, "14163": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "AND", "path": "84" }, "14164": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP2", "path": "84" }, "14165": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP1", "path": "84" }, "14166": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP2", "path": "84" }, "14167": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "OR", "path": "84" }, "14168": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP1", "path": "84" }, "14169": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SSTORE", "path": "84" }, "14170": { "fn": "PortfolioHandler._storeAsset", "jump": "o", "offset": [ 11592, 12454 ], "op": "JUMP", "path": "84" }, "14171": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10664, 11546 ], "op": "JUMPDEST", "path": "84" }, "14172": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10896, 10900 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "14174": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10914, 10921 ], "op": "DUP1", "path": "84" }, "14175": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10935, 10942 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "14177": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10967, 10989 ], "op": "DUP1", "path": "84" }, "14178": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 11017 ], "op": "PUSH2", "path": "84", "value": "0x376A" }, "14181": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 10997 ], "op": "DUP9", "path": "84" }, "14182": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 11015 ], "op": "PUSH2", "path": "84", "value": "0x3D83" }, "14185": { "fn": "PortfolioHandler._updatePortfolioContext", "jump": "i", "offset": [ 10992, 11017 ], "op": "JUMP", "path": "84" }, "14186": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 11017 ], "op": "JUMPDEST", "path": "84" }, "14187": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10967, 11017 ], "op": "SWAP1", "path": "84" }, "14188": { "op": "POP" }, "14189": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11108 ], "op": "DUP5", "path": "84" }, "14190": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11108 ], "op": "ISZERO", "path": "84" }, "14191": { "branch": 522, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11108 ], "op": "DUP1", "path": "84" }, "14192": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "PUSH2", "path": "84", "value": "0x3778" }, "14195": { "branch": 522, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "JUMPI", "path": "84" }, "14196": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "POP", "path": "84" }, "14197": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11129, 11143 ], "op": "DUP1", "path": "84" }, "14198": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11112, 11126 ], "op": "DUP6", "path": "84" }, "14199": { "branch": 523, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11112, 11143 ], "op": "GT", "path": "84" }, "14200": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "JUMPDEST", "path": "84" }, "14201": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "ISZERO", "path": "84" }, "14202": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "PUSH2", "path": "84", "value": "0x3781" }, "14205": { "branch": 523, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "JUMPI", "path": "84" }, "14206": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11176, 11190 ], "op": "DUP1", "path": "84", "statement": 314 }, "14207": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11159, 11190 ], "op": "SWAP5", "path": "84" }, "14208": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11159, 11190 ], "op": "POP", "path": "84" }, "14209": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "JUMPDEST", "path": "84" }, "14210": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11227 ], "op": "DUP7", "path": "84", "statement": 315 }, "14211": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "DUP1", "path": "84" }, "14212": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "PUSH2", "path": "84", "value": "0x3791" }, "14215": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "JUMPI", "path": "84" }, "14216": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "POP", "path": "84" }, "14217": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11248, 11249 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "14219": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11236 ], "op": "DUP9", "path": "84" }, "14220": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11245 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "14222": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11245 ], "op": "ADD", "path": "84" }, "14223": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11245 ], "op": "MLOAD", "path": "84" }, "14224": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11249 ], "op": "SLT", "path": "84" }, "14225": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "JUMPDEST", "path": "84" }, "14226": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11210, 11249 ], "op": "SWAP7", "path": "84" }, "14227": { "op": "POP" }, "14228": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "PUSH2", "path": "84", "statement": 316, "value": "0xFFFF" }, "14231": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "DUP7", "path": "84" }, "14232": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "AND", "path": "84" }, "14233": { "branch": 524, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "ISZERO", "path": "84" }, "14234": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "PUSH2", "path": "84", "value": "0x37A2" }, "14237": { "branch": 524, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "JUMPI", "path": "84" }, "14238": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "14240": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "DUP1", "path": "84" }, "14241": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "REVERT", "path": "84" }, "14242": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "JUMPDEST", "path": "84" }, "14243": { "op": "POP" }, "14244": { "op": "POP" }, "14245": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11444, 11460 ], "op": "SWAP5", "path": "84", "statement": 317 }, "14246": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11444, 11460 ], "op": "MLOAD", "path": "84" }, "14247": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11488, 11495 ], "op": "SWAP4", "path": "84", "statement": 318 }, "14248": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11488, 11495 ], "op": "SWAP6", "path": "84" }, "14249": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11429, 11431 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "14251": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SWAP4", "path": "84" }, "14252": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SWAP1", "path": "84" }, "14253": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SWAP4", "path": "84" }, "14254": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SHR", "path": "84" }, "14255": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11465, 11468 ], "op": "PUSH1", "path": "84", "value": "0xF0" }, "14257": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SWAP5", "path": "84" }, "14258": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SWAP1", "path": "84" }, "14259": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SWAP5", "path": "84" }, "14260": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SHL", "path": "84" }, "14261": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP4", "path": "84" }, "14262": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP1", "path": "84" }, "14263": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP4", "path": "84" }, "14264": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "OR", "path": "84" }, "14265": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP4", "path": "84" }, "14266": { "op": "POP" }, "14267": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11524, 11538 ], "op": "SWAP2", "path": "84" }, "14268": { "op": "POP" }, "14269": { "fn": "PortfolioHandler._updatePortfolioContext", "jump": "o", "offset": [ 10664, 11546 ], "op": "JUMP", "path": "84" }, "14270": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6020, 6283 ], "op": "JUMPDEST", "path": "62" }, "14271": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6087, 6164 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "14273": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6180, 6192 ], "op": "DUP1", "path": "62" }, "14274": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6195, 6236 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "14277": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6211, 6235 ], "op": "PUSH1", "path": "62", "value": "0xD" }, "14279": { "fn": "LibStorage._getStorageSlot", "offset": [ 8450, 8779 ], "op": "JUMPDEST", "path": "62" }, "14280": { "fn": "LibStorage._getStorageSlot", "offset": [ 8542, 8554 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "14282": { "offset": [ 494, 501 ], "op": "PUSH3", "path": "62", "value": "0xF4240" }, "14286": { "fn": "LibStorage._getStorageSlot", "offset": [ 8742, 8751 ], "op": "DUP3", "path": "62", "statement": 319 }, "14287": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "PUSH1", "path": "62", "value": "0x13" }, "14289": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "DUP2", "path": "62" }, "14290": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "GT", "path": "62" }, "14291": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "ISZERO", "path": "62" }, "14292": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "PUSH2", "path": "62", "value": "0x37D9" }, "14295": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "JUMPI", "path": "62" }, "14296": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "INVALID", "path": "62" }, "14297": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "JUMPDEST", "path": "62" }, "14298": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8772 ], "op": "ADD", "path": "62" }, "14299": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8772 ], "op": "SWAP3", "path": "62" }, "14300": { "fn": "LibStorage._getStorageSlot", "offset": [ 8450, 8779 ], "op": "SWAP2", "path": "62" }, "14301": { "op": "POP" }, "14302": { "op": "POP" }, "14303": { "fn": "LibStorage._getStorageSlot", "jump": "o", "offset": [ 8450, 8779 ], "op": "JUMP", "path": "62" }, "14304": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "JUMPDEST", "path": "85" }, "14305": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1016, 1023 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "14307": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "14310": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1043, 1081 ], "op": "DUP5", "path": "85", "statement": 320 }, "14311": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1043, 1081 ], "op": "GT", "path": "85" }, "14312": { "branch": 562, "fn": "TransferAssets.encodeAssetId", "offset": [ 1043, 1081 ], "op": "ISZERO", "path": "85" }, "14313": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "PUSH2", "path": "85", "value": "0x37F1" }, "14316": { "branch": 562, "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "JUMPI", "path": "85" }, "14317": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "14319": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "DUP1", "path": "85" }, "14320": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "REVERT", "path": "85" }, "14321": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "JUMPDEST", "path": "85" }, "14322": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1112, 1128 ], "op": "PUSH5", "path": "85", "statement": 321, "value": "0xFFFFFFFFFF" }, "14328": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1100, 1128 ], "op": "DUP4", "path": "85" }, "14329": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1100, 1128 ], "op": "GT", "path": "85" }, "14330": { "branch": 563, "fn": "TransferAssets.encodeAssetId", "offset": [ 1100, 1128 ], "op": "ISZERO", "path": "85" }, "14331": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "PUSH2", "path": "85", "value": "0x3803" }, "14334": { "branch": 563, "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "JUMPI", "path": "85" }, "14335": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "14337": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "DUP1", "path": "85" }, "14338": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "REVERT", "path": "85" }, "14339": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "JUMPDEST", "path": "85" }, "14340": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "14342": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1147, 1195 ], "op": "DUP3", "path": "85", "statement": 322 }, "14343": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1147, 1195 ], "op": "GT", "path": "85" }, "14344": { "branch": 564, "fn": "TransferAssets.encodeAssetId", "offset": [ 1147, 1195 ], "op": "ISZERO", "path": "85" }, "14345": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "PUSH2", "path": "85", "value": "0x3811" }, "14348": { "branch": 564, "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "JUMPI", "path": "85" }, "14349": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "14351": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "DUP1", "path": "85" }, "14352": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "REVERT", "path": "85" }, "14353": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "JUMPDEST", "path": "85" }, "14354": { "op": "POP" }, "14355": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "PUSH8", "path": "85", "statement": 323, "value": "0xFFFF000000000000" }, "14364": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1292, 1294 ], "op": "PUSH1", "path": "85", "value": "0x30" }, "14366": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "DUP5", "path": "85" }, "14367": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "SWAP1", "path": "85" }, "14368": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "SHL", "path": "85" }, "14369": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "AND", "path": "85" }, "14370": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "PUSH6", "path": "85", "value": "0xFFFFFFFFFF00" }, "14377": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1357, 1358 ], "op": "PUSH1", "path": "85", "value": "0x8" }, "14379": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "DUP5", "path": "85" }, "14380": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "SWAP1", "path": "85" }, "14381": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "SHL", "path": "85" }, "14382": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "AND", "path": "85" }, "14383": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1251, 1359 ], "op": "OR", "path": "85" }, "14384": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1390, 1415 ], "op": "PUSH1", "path": "85", "value": "0xFF" }, "14386": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1390, 1415 ], "op": "DUP3", "path": "85" }, "14387": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1390, 1415 ], "op": "AND", "path": "85" }, "14388": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1251, 1416 ], "op": "OR", "path": "85" }, "14389": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "SWAP4", "path": "85" }, "14390": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "SWAP3", "path": "85" }, "14391": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "POP", "path": "85" }, "14392": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "POP", "path": "85" }, "14393": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "POP", "path": "85" }, "14394": { "fn": "TransferAssets.encodeAssetId", "jump": "o", "offset": [ 883, 1437 ], "op": "JUMP", "path": "85" }, "14395": { "fn": "LibStorage.getAssetRateStorage", "offset": [ 7074, 7300 ], "op": "JUMPDEST", "path": "62" }, "14396": { "fn": "LibStorage.getAssetRateStorage", "offset": [ 7136, 7186 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "14398": { "fn": "LibStorage.getAssetRateStorage", "offset": [ 7202, 7214 ], "op": "DUP1", "path": "62" }, "14399": { "fn": "LibStorage.getAssetRateStorage", "offset": [ 7217, 7253 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "14402": { "fn": "LibStorage.getAssetRateStorage", "offset": [ 7233, 7252 ], "op": "PUSH1", "path": "62", "value": "0xF" }, "14404": { "fn": "LibStorage.getAssetRateStorage", "offset": [ 7217, 7232 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "14407": { "fn": "LibStorage.getAssetRateStorage", "jump": "i", "offset": [ 7217, 7253 ], "op": "JUMP", "path": "62" }, "14408": { "fn": "SafeInt256.abs", "offset": [ 1649, 1767 ], "op": "JUMPDEST", "path": "94" }, "14409": { "fn": "SafeInt256.abs", "offset": [ 1695, 1701 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "14411": { "fn": "SafeInt256.abs", "offset": [ 1721, 1722 ], "op": "DUP1", "path": "94" }, "14412": { "fn": "SafeInt256.abs", "offset": [ 1717, 1718 ], "op": "DUP3", "path": "94" }, "14413": { "branch": 536, "fn": "SafeInt256.abs", "offset": [ 1717, 1722 ], "op": "SLT", "path": "94" }, "14414": { "fn": "SafeInt256.abs", "offset": [ 1713, 1760 ], "op": "ISZERO", "path": "94" }, "14415": { "fn": "SafeInt256.abs", "offset": [ 1713, 1760 ], "op": "PUSH2", "path": "94", "value": "0x3862" }, "14418": { "branch": 536, "fn": "SafeInt256.abs", "offset": [ 1713, 1760 ], "op": "JUMPI", "path": "94" }, "14419": { "fn": "SafeInt256.abs", "offset": [ 1731, 1737 ], "op": "PUSH2", "path": "94", "statement": 324, "value": "0x385B" }, "14422": { "fn": "SafeInt256.abs", "offset": [ 1735, 1736 ], "op": "DUP3", "path": "94" }, "14423": { "fn": "SafeInt256.abs", "offset": [ 1731, 1734 ], "op": "PUSH2", "path": "94", "value": "0xEE1" }, "14426": { "fn": "SafeInt256.abs", "jump": "i", "offset": [ 1731, 1737 ], "op": "JUMP", "path": "94" }, "14427": { "fn": "SafeInt256.abs", "offset": [ 1731, 1737 ], "op": "JUMPDEST", "path": "94" }, "14428": { "fn": "SafeInt256.abs", "offset": [ 1724, 1737 ], "op": "SWAP1", "path": "94" }, "14429": { "fn": "SafeInt256.abs", "offset": [ 1724, 1737 ], "op": "POP", "path": "94" }, "14430": { "fn": "SafeInt256.abs", "offset": [ 1724, 1737 ], "op": "PUSH2", "path": "94", "value": "0xBE2" }, "14433": { "fn": "SafeInt256.abs", "offset": [ 1724, 1737 ], "op": "JUMP", "path": "94" }, "14434": { "fn": "SafeInt256.abs", "offset": [ 1713, 1760 ], "op": "JUMPDEST", "path": "94" }, "14435": { "op": "POP" }, "14436": { "fn": "SafeInt256.abs", "offset": [ 1759, 1760 ], "op": "DUP1", "path": "94", "statement": 325 }, "14437": { "fn": "SafeInt256.abs", "offset": [ 1752, 1760 ], "op": "PUSH2", "path": "94", "value": "0xBE2" }, "14440": { "fn": "SafeInt256.abs", "offset": [ 1752, 1760 ], "op": "JUMP", "path": "94" }, "14441": { "fn": "GenericToken.safeTransferIn", "offset": [ 1385, 1609 ], "op": "JUMPDEST", "path": "72" }, "14442": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH1", "path": "72", "statement": 326, "value": "0x40" }, "14444": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP1", "path": "72" }, "14445": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "MLOAD", "path": "72" }, "14446": { "op": "PUSH4", "value": "0x23B872DD" }, "14451": { "op": "PUSH1", "value": "0xE0" }, "14453": { "op": "SHL" }, "14454": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP2", "path": "72" }, "14455": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "MSTORE", "path": "72" }, "14456": { "op": "PUSH1", "value": "0x1" }, "14458": { "op": "PUSH1", "value": "0x1" }, "14460": { "op": "PUSH1", "value": "0xA0" }, "14462": { "op": "SHL" }, "14463": { "op": "SUB" }, "14464": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP5", "path": "72" }, "14465": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP2", "path": "72" }, "14466": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "AND", "path": "72" }, "14467": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH1", "path": "72", "value": "0x4" }, "14469": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP4", "path": "72" }, "14470": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ADD", "path": "72" }, "14471": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "MSTORE", "path": "72" }, "14472": { "fn": "GenericToken.safeTransferIn", "offset": [ 1561, 1565 ], "op": "ADDRESS", "path": "72" }, "14473": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH1", "path": "72", "value": "0x24" }, "14475": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP4", "path": "72" }, "14476": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ADD", "path": "72" }, "14477": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "MSTORE", "path": "72" }, "14478": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH1", "path": "72", "value": "0x44" }, "14480": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP3", "path": "72" }, "14481": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ADD", "path": "72" }, "14482": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP5", "path": "72" }, "14483": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP1", "path": "72" }, "14484": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "MSTORE", "path": "72" }, "14485": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP2", "path": "72" }, "14486": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "MLOAD", "path": "72" }, "14487": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "SWAP2", "path": "72" }, "14488": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "DUP6", "path": "72" }, "14489": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "AND", "path": "72" }, "14490": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "SWAP2", "path": "72" }, "14491": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "PUSH4", "path": "72", "value": "0x23B872DD" }, "14496": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "SWAP2", "path": "72" }, "14497": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH1", "path": "72", "value": "0x64" }, "14499": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP1", "path": "72" }, "14500": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP3", "path": "72" }, "14501": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ADD", "path": "72" }, "14502": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP3", "path": "72" }, "14503": { "op": "PUSH1", "value": "0x0" }, "14505": { "op": "SWAP3" }, "14506": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP1", "path": "72" }, "14507": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP2", "path": "72" }, "14508": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP1", "path": "72" }, "14509": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP3", "path": "72" }, "14510": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SWAP1", "path": "72" }, "14511": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "SUB", "path": "72" }, "14512": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ADD", "path": "72" }, "14513": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP2", "path": "72" }, "14514": { "op": "DUP4" }, "14515": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1543 ], "op": "DUP8", "path": "72" }, "14516": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP1", "path": "72" }, "14517": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "EXTCODESIZE", "path": "72" }, "14518": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ISZERO", "path": "72" }, "14519": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP1", "path": "72" }, "14520": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "ISZERO", "path": "72" }, "14521": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH2", "path": "72", "value": "0x2E0E" }, "14524": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "JUMPI", "path": "72" }, "14525": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "14527": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "DUP1", "path": "72" }, "14528": { "fn": "GenericToken.safeTransferIn", "offset": [ 1506, 1575 ], "op": "REVERT", "path": "72" }, "14529": { "fn": "GenericToken.checkReturnCode", "offset": [ 1615, 2361 ], "op": "JUMPDEST", "path": "72" }, "14530": { "fn": "GenericToken.checkReturnCode", "offset": [ 1666, 1678 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "14532": { "fn": "GenericToken.checkReturnCode", "offset": [ 1688, 1712 ], "op": "PUSH2", "path": "72", "value": "0x38CB" }, "14535": { "fn": "GenericToken.checkReturnCode", "offset": [ 1688, 1712 ], "op": "PUSH2", "path": "72", "value": "0x4051" }, "14538": { "fn": "GenericToken.checkReturnCode", "jump": "i", "offset": [ 1688, 1712 ], "op": "JUMP", "path": "72" }, "14539": { "fn": "GenericToken.checkReturnCode", "offset": [ 1688, 1712 ], "op": "JUMPDEST", "path": "72" }, "14540": { "fn": "GenericToken.checkReturnCode", "offset": [ 1752, 1768 ], "op": "RETURNDATASIZE", "path": "72" }, "14541": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "DUP1", "path": "72" }, "14542": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "ISZERO", "path": "72" }, "14543": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "PUSH2", "path": "72", "value": "0x38DF" }, "14546": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "JUMPI", "path": "72" }, "14547": { "fn": "GenericToken.checkReturnCode", "offset": [ 1942, 1944 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "14549": { "fn": "GenericToken.checkReturnCode", "offset": [ 1937, 2156 ], "op": "DUP2", "path": "72" }, "14550": { "fn": "GenericToken.checkReturnCode", "offset": [ 1937, 2156 ], "op": "EQ", "path": "72" }, "14551": { "fn": "GenericToken.checkReturnCode", "offset": [ 1937, 2156 ], "op": "PUSH2", "path": "72", "value": "0x38E8" }, "14554": { "fn": "GenericToken.checkReturnCode", "offset": [ 1937, 2156 ], "op": "JUMPI", "path": "72" }, "14555": { "fn": "GenericToken.checkReturnCode", "offset": [ 2289, 2290 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "14557": { "fn": "GenericToken.checkReturnCode", "offset": [ 2286, 2287 ], "op": "DUP1", "path": "72" }, "14558": { "fn": "GenericToken.checkReturnCode", "offset": [ 2279, 2291 ], "op": "REVERT", "path": "72" }, "14559": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "JUMPDEST", "path": "72" }, "14560": { "fn": "GenericToken.checkReturnCode", "offset": [ 1878, 1879 ], "op": "PUSH1", "path": "72", "value": "0x1" }, "14562": { "fn": "GenericToken.checkReturnCode", "offset": [ 1867, 1879 ], "op": "SWAP3", "path": "72" }, "14563": { "fn": "GenericToken.checkReturnCode", "offset": [ 1867, 1879 ], "op": "POP", "path": "72" }, "14564": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "PUSH2", "path": "72", "value": "0x38F3" }, "14567": { "fn": "GenericToken.checkReturnCode", "offset": [ 1785, 1920 ], "op": "JUMP", "path": "72" }, "14568": { "fn": "GenericToken.checkReturnCode", "offset": [ 1937, 2156 ], "op": "JUMPDEST", "path": "72" }, "14569": { "fn": "GenericToken.checkReturnCode", "offset": [ 2043, 2045 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "14571": { "fn": "GenericToken.checkReturnCode", "offset": [ 2040, 2041 ], "op": "PUSH1", "path": "72", "value": "0x0" }, "14573": { "fn": "GenericToken.checkReturnCode", "offset": [ 2032, 2038 ], "op": "DUP4", "path": "72" }, "14574": { "fn": "GenericToken.checkReturnCode", "offset": [ 2017, 2046 ], "op": "RETURNDATACOPY", "path": "72" }, "14575": { "fn": "GenericToken.checkReturnCode", "offset": [ 2084, 2090 ], "op": "DUP2", "path": "72" }, "14576": { "fn": "GenericToken.checkReturnCode", "offset": [ 2078, 2091 ], "op": "MLOAD", "path": "72" }, "14577": { "fn": "GenericToken.checkReturnCode", "offset": [ 2067, 2091 ], "op": "SWAP3", "path": "72" }, "14578": { "fn": "GenericToken.checkReturnCode", "offset": [ 2067, 2091 ], "op": "POP", "path": "72" }, "14579": { "fn": "GenericToken.checkReturnCode", "offset": [ 1745, 2309 ], "op": "JUMPDEST", "path": "72" }, "14580": { "fn": "GenericToken.checkReturnCode", "offset": [ 1745, 2309 ], "op": "POP", "path": "72" }, "14581": { "branch": 490, "fn": "GenericToken.checkReturnCode", "offset": [ 2337, 2344 ], "op": "DUP2", "path": "72", "statement": 327 }, "14582": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH2", "path": "72", "value": "0x8EB" }, "14585": { "branch": 490, "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "JUMPI", "path": "72" }, "14586": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x40" }, "14588": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "DUP1", "path": "72" }, "14589": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "MLOAD", "path": "72" }, "14590": { "op": "PUSH3", "value": "0x461BCD" }, "14594": { "op": "PUSH1", "value": "0xE5" }, "14596": { "op": "SHL" }, "14597": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "DUP2", "path": "72" }, "14598": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "MSTORE", "path": "72" }, "14599": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x20" }, "14601": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x4" }, "14603": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "DUP3", "path": "72" }, "14604": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "ADD", "path": "72" }, "14605": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "MSTORE", "path": "72" }, "14606": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x5" }, "14608": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x24" }, "14610": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "DUP3", "path": "72" }, "14611": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "ADD", "path": "72" }, "14612": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "MSTORE", "path": "72" }, "14613": { "op": "PUSH5", "value": "0x455243323" }, "14619": { "op": "PUSH1", "value": "0xDC" }, "14621": { "op": "SHL" }, "14622": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x44" }, "14624": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "DUP3", "path": "72" }, "14625": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "ADD", "path": "72" }, "14626": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "MSTORE", "path": "72" }, "14627": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "SWAP1", "path": "72" }, "14628": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "MLOAD", "path": "72" }, "14629": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "SWAP1", "path": "72" }, "14630": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "DUP2", "path": "72" }, "14631": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "SWAP1", "path": "72" }, "14632": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "SUB", "path": "72" }, "14633": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "PUSH1", "path": "72", "value": "0x64" }, "14635": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "ADD", "path": "72" }, "14636": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "SWAP1", "path": "72" }, "14637": { "fn": "GenericToken.checkReturnCode", "offset": [ 2329, 2354 ], "op": "REVERT", "path": "72" }, "14638": { "fn": "LibStorage.getLendingPool", "offset": [ 8109, 8302 ], "op": "JUMPDEST", "path": "62" }, "14639": { "fn": "LibStorage.getLendingPool", "offset": [ 8158, 8190 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "14641": { "fn": "LibStorage.getLendingPool", "offset": [ 8202, 8214 ], "op": "DUP1", "path": "62" }, "14642": { "fn": "LibStorage.getLendingPool", "offset": [ 8217, 8255 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "14645": { "fn": "LibStorage.getLendingPool", "offset": [ 8233, 8254 ], "op": "PUSH1", "path": "62", "value": "0x13" }, "14647": { "fn": "LibStorage.getLendingPool", "offset": [ 8217, 8232 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "14650": { "fn": "LibStorage.getLendingPool", "jump": "i", "offset": [ 8217, 8255 ], "op": "JUMP", "path": "62" }, "14651": { "fn": "CompoundHandler.redeemCETH", "offset": [ 939, 1913 ], "op": "JUMPDEST", "path": "71" }, "14652": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1502, 1525 ], "op": "DUP3", "path": "71" }, "14653": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1502, 1525 ], "op": "MLOAD", "path": "71" }, "14654": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "14656": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "MLOAD", "path": "71" }, "14657": { "op": "PUSH4", "value": "0xDB006A75" }, "14662": { "op": "PUSH1", "value": "0xE0" }, "14664": { "op": "SHL" }, "14665": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP2", "path": "71" }, "14666": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "MSTORE", "path": "71" }, "14667": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1078, 1110 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "14669": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1078, 1110 ], "op": "SWAP2", "path": "71" }, "14670": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1436, 1457 ], "op": "SELFBALANCE", "path": "71" }, "14671": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1436, 1457 ], "op": "SWAP2", "path": "71" }, "14672": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1078, 1110 ], "op": "DUP4", "path": "71" }, "14673": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1078, 1110 ], "op": "SWAP2", "path": "71" }, "14674": { "op": "PUSH1", "value": "0x1" }, "14676": { "op": "PUSH1", "value": "0x1" }, "14678": { "op": "PUSH1", "value": "0xA0" }, "14680": { "op": "SHL" }, "14681": { "op": "SUB" }, "14682": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1533 ], "op": "AND", "path": "71" }, "14683": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1533 ], "op": "SWAP1", "path": "71" }, "14684": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1533 ], "op": "PUSH4", "path": "71", "value": "0xDB006A75" }, "14689": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1533 ], "op": "SWAP1", "path": "71" }, "14690": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH2", "path": "71", "value": "0x396F" }, "14693": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "SWAP1", "path": "71" }, "14694": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1534, 1553 ], "op": "DUP8", "path": "71" }, "14695": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1534, 1553 ], "op": "SWAP1", "path": "71" }, "14696": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "14698": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ADD", "path": "71" }, "14699": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH2", "path": "71", "value": "0x48AB" }, "14702": { "fn": "CompoundHandler.redeemCETH", "jump": "i", "offset": [ 1486, 1554 ], "op": "JUMP", "path": "71" }, "14703": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "JUMPDEST", "path": "71" }, "14704": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x20" }, "14706": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "14708": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "MLOAD", "path": "71" }, "14709": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14710": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP4", "path": "71" }, "14711": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "SUB", "path": "71" }, "14712": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP2", "path": "71" }, "14713": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "14715": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP8", "path": "71" }, "14716": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14717": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "EXTCODESIZE", "path": "71" }, "14718": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ISZERO", "path": "71" }, "14719": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14720": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ISZERO", "path": "71" }, "14721": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH2", "path": "71", "value": "0x3989" }, "14724": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "JUMPI", "path": "71" }, "14725": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "14727": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14728": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "REVERT", "path": "71" }, "14729": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "JUMPDEST", "path": "71" }, "14730": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "POP", "path": "71" }, "14731": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "GAS", "path": "71" }, "14732": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "CALL", "path": "71" }, "14733": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ISZERO", "path": "71" }, "14734": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14735": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ISZERO", "path": "71" }, "14736": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH2", "path": "71", "value": "0x399D" }, "14739": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "JUMPI", "path": "71" }, "14740": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "RETURNDATASIZE", "path": "71" }, "14741": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "14743": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14744": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "RETURNDATACOPY", "path": "71" }, "14745": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "RETURNDATASIZE", "path": "71" }, "14746": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "14748": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "REVERT", "path": "71" }, "14749": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "JUMPDEST", "path": "71" }, "14750": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "POP", "path": "71" }, "14751": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "POP", "path": "71" }, "14752": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "POP", "path": "71" }, "14753": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "POP", "path": "71" }, "14754": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "14756": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "MLOAD", "path": "71" }, "14757": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "RETURNDATASIZE", "path": "71" }, "14758": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x1F" }, "14760": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "NOT", "path": "71" }, "14761": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x1F" }, "14763": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP3", "path": "71" }, "14764": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ADD", "path": "71" }, "14765": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "AND", "path": "71" }, "14766": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP3", "path": "71" }, "14767": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ADD", "path": "71" }, "14768": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP1", "path": "71" }, "14769": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "14771": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "MSTORE", "path": "71" }, "14772": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "POP", "path": "71" }, "14773": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "DUP2", "path": "71" }, "14774": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "ADD", "path": "71" }, "14775": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "SWAP1", "path": "71" }, "14776": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH2", "path": "71", "value": "0x39C1" }, "14779": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "SWAP2", "path": "71" }, "14780": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "SWAP1", "path": "71" }, "14781": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "PUSH2", "path": "71", "value": "0x43D8" }, "14784": { "fn": "CompoundHandler.redeemCETH", "jump": "i", "offset": [ 1486, 1554 ], "op": "JUMP", "path": "71" }, "14785": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1486, 1554 ], "op": "JUMPDEST", "path": "71" }, "14786": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1468, 1554 ], "op": "SWAP1", "path": "71" }, "14787": { "op": "POP" }, "14788": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1572, 1612 ], "op": "DUP1", "path": "71", "statement": 328 }, "14789": { "branch": 479, "fn": "CompoundHandler.redeemCETH", "offset": [ 1572, 1612 ], "op": "ISZERO", "path": "71" }, "14790": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "PUSH2", "path": "71", "value": "0x39E1" }, "14793": { "branch": 479, "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "JUMPI", "path": "71" }, "14794": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "14796": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "MLOAD", "path": "71" }, "14797": { "op": "PUSH3", "value": "0x461BCD" }, "14801": { "op": "PUSH1", "value": "0xE5" }, "14803": { "op": "SHL" }, "14804": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "DUP2", "path": "71" }, "14805": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "MSTORE", "path": "71" }, "14806": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "14808": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "ADD", "path": "71" }, "14809": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "PUSH2", "path": "71", "value": "0x17A" }, "14812": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "SWAP1", "path": "71" }, "14813": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "PUSH2", "path": "71", "value": "0x491D" }, "14816": { "fn": "CompoundHandler.redeemCETH", "jump": "i", "offset": [ 1564, 1623 ], "op": "JUMP", "path": "71" }, "14817": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1564, 1623 ], "op": "JUMPDEST", "path": "71" }, "14818": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1658, 1679 ], "op": "SELFBALANCE", "path": "71" }, "14819": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1717, 1751 ], "op": "PUSH2", "path": "71", "statement": 329, "value": "0x39EC" }, "14822": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1658, 1679 ], "op": "DUP2", "path": "71" }, "14823": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1735, 1750 ], "op": "DUP5", "path": "71" }, "14824": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1717, 1734 ], "op": "PUSH2", "path": "71", "value": "0x3096" }, "14827": { "fn": "CompoundHandler.redeemCETH", "jump": "i", "offset": [ 1717, 1751 ], "op": "JUMP", "path": "71" }, "14828": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1717, 1751 ], "op": "JUMPDEST", "path": "71" }, "14829": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1690, 1751 ], "op": "SWAP4", "path": "71" }, "14830": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1690, 1751 ], "op": "POP", "path": "71" }, "14831": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1836, 1906 ], "op": "PUSH2", "path": "71", "statement": 330, "value": "0x2D72" }, "14834": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1872, 1879 ], "op": "DUP7", "path": "71" }, "14835": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1881, 1905 ], "op": "DUP6", "path": "71" }, "14836": { "fn": "CompoundHandler.redeemCETH", "offset": [ 1836, 1871 ], "op": "PUSH2", "path": "71", "value": "0x2D7C" }, "14839": { "fn": "CompoundHandler.redeemCETH", "jump": "i", "offset": [ 1836, 1906 ], "op": "JUMP", "path": "71" }, "14840": { "fn": "AaveHandler.redeem", "offset": [ 1769, 2300 ], "op": "JUMPDEST", "path": "70" }, "14841": { "fn": "AaveHandler.redeem", "offset": [ 1909, 1941 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "14843": { "fn": "AaveHandler.redeem", "offset": [ 1980, 2124 ], "op": "PUSH2", "path": "70", "statement": 331, "value": "0x3A18" }, "14846": { "fn": "AaveHandler.redeem", "offset": [ 1980, 2115 ], "op": "PUSH2", "path": "70", "value": "0x3A13" }, "14849": { "fn": "AaveHandler.redeem", "offset": [ 2026, 2041 ], "op": "DUP6", "path": "70" }, "14850": { "fn": "AaveHandler.redeem", "offset": [ 2026, 2054 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "14852": { "fn": "AaveHandler.redeem", "offset": [ 2026, 2054 ], "op": "ADD", "path": "70" }, "14853": { "fn": "AaveHandler.redeem", "offset": [ 2026, 2054 ], "op": "MLOAD", "path": "70" }, "14854": { "fn": "AaveHandler.redeem", "offset": [ 2068, 2105 ], "op": "PUSH2", "path": "70", "value": "0x3A0E" }, "14857": { "fn": "AaveHandler.redeem", "offset": [ 2085, 2104 ], "op": "DUP6", "path": "70" }, "14858": { "fn": "AaveHandler.redeem", "offset": [ 2068, 2084 ], "op": "PUSH2", "path": "70", "value": "0x264D" }, "14861": { "fn": "AaveHandler.redeem", "jump": "i", "offset": [ 2068, 2105 ], "op": "JUMP", "path": "70" }, "14862": { "fn": "AaveHandler.redeem", "offset": [ 2068, 2105 ], "op": "JUMPDEST", "path": "70" }, "14863": { "fn": "AaveHandler.redeem", "offset": [ 1980, 2012 ], "op": "PUSH2", "path": "70", "value": "0x2BF7" }, "14866": { "fn": "AaveHandler.redeem", "jump": "i", "offset": [ 1980, 2115 ], "op": "JUMP", "path": "70" }, "14867": { "fn": "AaveHandler.redeem", "offset": [ 1980, 2115 ], "op": "JUMPDEST", "path": "70" }, "14868": { "fn": "AaveHandler.redeem", "offset": [ 1980, 2122 ], "op": "PUSH2", "path": "70", "value": "0x1CF6" }, "14871": { "fn": "AaveHandler.redeem", "jump": "i", "offset": [ 1980, 2124 ], "op": "JUMP", "path": "70" }, "14872": { "fn": "AaveHandler.redeem", "offset": [ 1980, 2124 ], "op": "JUMPDEST", "path": "70" }, "14873": { "fn": "AaveHandler.redeem", "offset": [ 1953, 2124 ], "op": "SWAP1", "path": "70" }, "14874": { "fn": "AaveHandler.redeem", "offset": [ 1953, 2124 ], "op": "POP", "path": "70" }, "14875": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2161 ], "op": "PUSH2", "path": "70", "statement": 332, "value": "0x3A22" }, "14878": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2159 ], "op": "PUSH2", "path": "70", "value": "0x392E" }, "14881": { "fn": "AaveHandler.redeem", "jump": "i", "offset": [ 2134, 2161 ], "op": "JUMP", "path": "70" }, "14882": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2161 ], "op": "JUMPDEST", "path": "70" }, "14883": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2173 ], "op": "SLOAD", "path": "70" }, "14884": { "fn": "AaveHandler.redeem", "offset": [ 2196, 2224 ], "op": "DUP5", "path": "70" }, "14885": { "fn": "AaveHandler.redeem", "offset": [ 2196, 2224 ], "op": "MLOAD", "path": "70" }, "14886": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "14888": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "MLOAD", "path": "70" }, "14889": { "op": "PUSH4", "value": "0x1A4CA37B" }, "14894": { "op": "PUSH1", "value": "0xE2" }, "14896": { "op": "SHL" }, "14897": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP2", "path": "70" }, "14898": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "MSTORE", "path": "70" }, "14899": { "op": "PUSH1", "value": "0x1" }, "14901": { "op": "PUSH1", "value": "0x1" }, "14903": { "op": "PUSH1", "value": "0xA0" }, "14905": { "op": "SHL" }, "14906": { "op": "SUB" }, "14907": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2173 ], "op": "SWAP1", "path": "70" }, "14908": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2173 ], "op": "SWAP3", "path": "70" }, "14909": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2173 ], "op": "AND", "path": "70" }, "14910": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2173 ], "op": "SWAP2", "path": "70" }, "14911": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2182 ], "op": "PUSH4", "path": "70", "value": "0x69328DEC" }, "14916": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2182 ], "op": "SWAP2", "path": "70" }, "14917": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH2", "path": "70", "value": "0x3A54" }, "14920": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "SWAP2", "path": "70" }, "14921": { "fn": "AaveHandler.redeem", "offset": [ 2238, 2262 ], "op": "DUP6", "path": "70" }, "14922": { "fn": "AaveHandler.redeem", "offset": [ 2238, 2262 ], "op": "SWAP1", "path": "70" }, "14923": { "fn": "AaveHandler.redeem", "offset": [ 2276, 2283 ], "op": "DUP9", "path": "70" }, "14924": { "fn": "AaveHandler.redeem", "offset": [ 2276, 2283 ], "op": "SWAP1", "path": "70" }, "14925": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x4" }, "14927": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ADD", "path": "70" }, "14928": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH2", "path": "70", "value": "0x4807" }, "14931": { "fn": "AaveHandler.redeem", "jump": "i", "offset": [ 2134, 2293 ], "op": "JUMP", "path": "70" }, "14932": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "JUMPDEST", "path": "70" }, "14933": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x20" }, "14935": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "14937": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "MLOAD", "path": "70" }, "14938": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14939": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP4", "path": "70" }, "14940": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "SUB", "path": "70" }, "14941": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP2", "path": "70" }, "14942": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "14944": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP8", "path": "70" }, "14945": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14946": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "EXTCODESIZE", "path": "70" }, "14947": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ISZERO", "path": "70" }, "14948": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14949": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ISZERO", "path": "70" }, "14950": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH2", "path": "70", "value": "0x3A6E" }, "14953": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "JUMPI", "path": "70" }, "14954": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "14956": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14957": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "REVERT", "path": "70" }, "14958": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "JUMPDEST", "path": "70" }, "14959": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "14960": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "GAS", "path": "70" }, "14961": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "CALL", "path": "70" }, "14962": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ISZERO", "path": "70" }, "14963": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14964": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ISZERO", "path": "70" }, "14965": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH2", "path": "70", "value": "0x3A82" }, "14968": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "JUMPI", "path": "70" }, "14969": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "RETURNDATASIZE", "path": "70" }, "14970": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "14972": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14973": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "RETURNDATACOPY", "path": "70" }, "14974": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "RETURNDATASIZE", "path": "70" }, "14975": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x0" }, "14977": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "REVERT", "path": "70" }, "14978": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "JUMPDEST", "path": "70" }, "14979": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "14980": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "14981": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "14982": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "14983": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "14985": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "MLOAD", "path": "70" }, "14986": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "RETURNDATASIZE", "path": "70" }, "14987": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x1F" }, "14989": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "NOT", "path": "70" }, "14990": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x1F" }, "14992": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP3", "path": "70" }, "14993": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ADD", "path": "70" }, "14994": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "AND", "path": "70" }, "14995": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP3", "path": "70" }, "14996": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ADD", "path": "70" }, "14997": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP1", "path": "70" }, "14998": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH1", "path": "70", "value": "0x40" }, "15000": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "MSTORE", "path": "70" }, "15001": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "15002": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "DUP2", "path": "70" }, "15003": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "ADD", "path": "70" }, "15004": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "SWAP1", "path": "70" }, "15005": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH2", "path": "70", "value": "0x3AA6" }, "15008": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "SWAP2", "path": "70" }, "15009": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "SWAP1", "path": "70" }, "15010": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "PUSH2", "path": "70", "value": "0x43D8" }, "15013": { "fn": "AaveHandler.redeem", "jump": "i", "offset": [ 2134, 2293 ], "op": "JUMP", "path": "70" }, "15014": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "JUMPDEST", "path": "70" }, "15015": { "fn": "AaveHandler.redeem", "offset": [ 2134, 2293 ], "op": "POP", "path": "70" }, "15016": { "fn": "AaveHandler.redeem", "offset": [ 1769, 2300 ], "op": "SWAP4", "path": "70" }, "15017": { "fn": "AaveHandler.redeem", "offset": [ 1769, 2300 ], "op": "SWAP3", "path": "70" }, "15018": { "fn": "AaveHandler.redeem", "offset": [ 1769, 2300 ], "op": "POP", "path": "70" }, "15019": { "fn": "AaveHandler.redeem", "offset": [ 1769, 2300 ], "op": "POP", "path": "70" }, "15020": { "fn": "AaveHandler.redeem", "offset": [ 1769, 2300 ], "op": "POP", "path": "70" }, "15021": { "fn": "AaveHandler.redeem", "jump": "o", "offset": [ 1769, 2300 ], "op": "JUMP", "path": "70" }, "15022": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "JUMPDEST", "path": "71" }, "15023": { "fn": "CompoundHandler.redeem", "offset": [ 2487, 2515 ], "op": "DUP3", "path": "71" }, "15024": { "fn": "CompoundHandler.redeem", "offset": [ 2487, 2515 ], "op": "MLOAD", "path": "71" }, "15025": { "fn": "CompoundHandler.redeem", "offset": [ 2092, 2124 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15027": { "fn": "CompoundHandler.redeem", "offset": [ 2092, 2124 ], "op": "SWAP1", "path": "71" }, "15028": { "fn": "CompoundHandler.redeem", "offset": [ 2092, 2124 ], "op": "DUP2", "path": "71" }, "15029": { "fn": "CompoundHandler.redeem", "offset": [ 2092, 2124 ], "op": "SWAP1", "path": "71" }, "15030": { "fn": "CompoundHandler.redeem", "offset": [ 2450, 2570 ], "op": "PUSH2", "path": "71", "value": "0x3AC7" }, "15033": { "fn": "CompoundHandler.redeem", "offset": [ 2450, 2570 ], "op": "SWAP1", "path": "71" }, "15034": { "fn": "CompoundHandler.redeem", "offset": [ 2525, 2529 ], "op": "ADDRESS", "path": "71" }, "15035": { "op": "PUSH4", "value": "0x70A08231" }, "15040": { "op": "PUSH1", "value": "0xE0" }, "15042": { "op": "SHL" }, "15043": { "fn": "CompoundHandler.redeem", "offset": [ 2450, 2486 ], "op": "PUSH2", "path": "71", "value": "0x2E2E" }, "15046": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 2450, 2570 ], "op": "JUMP", "path": "71" }, "15047": { "fn": "CompoundHandler.redeem", "offset": [ 2450, 2570 ], "op": "JUMPDEST", "path": "71" }, "15048": { "fn": "CompoundHandler.redeem", "offset": [ 2424, 2570 ], "op": "SWAP1", "path": "71" }, "15049": { "fn": "CompoundHandler.redeem", "offset": [ 2424, 2570 ], "op": "POP", "path": "71" }, "15050": { "fn": "CompoundHandler.redeem", "offset": [ 2581, 2596 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15052": { "fn": "CompoundHandler.redeem", "offset": [ 2615, 2625 ], "op": "DUP7", "path": "71" }, "15053": { "fn": "CompoundHandler.redeem", "offset": [ 2615, 2638 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15055": { "fn": "CompoundHandler.redeem", "offset": [ 2615, 2638 ], "op": "ADD", "path": "71" }, "15056": { "fn": "CompoundHandler.redeem", "offset": [ 2615, 2638 ], "op": "MLOAD", "path": "71" }, "15057": { "op": "PUSH1", "value": "0x1" }, "15059": { "op": "PUSH1", "value": "0x1" }, "15061": { "op": "PUSH1", "value": "0xA0" }, "15063": { "op": "SHL" }, "15064": { "op": "SUB" }, "15065": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2646 ], "op": "AND", "path": "71" }, "15066": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2646 ], "op": "PUSH4", "path": "71", "value": "0xDB006A75" }, "15071": { "fn": "CompoundHandler.redeem", "offset": [ 2647, 2666 ], "op": "DUP6", "path": "71" }, "15072": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "15074": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "MLOAD", "path": "71" }, "15075": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP3", "path": "71" }, "15076": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH4", "path": "71", "value": "0xFFFFFFFF" }, "15081": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "AND", "path": "71" }, "15082": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0xE0" }, "15084": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SHL", "path": "71" }, "15085": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP2", "path": "71" }, "15086": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "MSTORE", "path": "71" }, "15087": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "15089": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ADD", "path": "71" }, "15090": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH2", "path": "71", "value": "0x3AFB" }, "15093": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SWAP2", "path": "71" }, "15094": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SWAP1", "path": "71" }, "15095": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH2", "path": "71", "value": "0x48AB" }, "15098": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 2599, 2667 ], "op": "JUMP", "path": "71" }, "15099": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "JUMPDEST", "path": "71" }, "15100": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x20" }, "15102": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "15104": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "MLOAD", "path": "71" }, "15105": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15106": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP4", "path": "71" }, "15107": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SUB", "path": "71" }, "15108": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP2", "path": "71" }, "15109": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15111": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP8", "path": "71" }, "15112": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15113": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "EXTCODESIZE", "path": "71" }, "15114": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ISZERO", "path": "71" }, "15115": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15116": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ISZERO", "path": "71" }, "15117": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH2", "path": "71", "value": "0x3B15" }, "15120": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "JUMPI", "path": "71" }, "15121": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15123": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15124": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "REVERT", "path": "71" }, "15125": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "JUMPDEST", "path": "71" }, "15126": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "POP", "path": "71" }, "15127": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "GAS", "path": "71" }, "15128": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "CALL", "path": "71" }, "15129": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ISZERO", "path": "71" }, "15130": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15131": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ISZERO", "path": "71" }, "15132": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH2", "path": "71", "value": "0x3B29" }, "15135": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "JUMPI", "path": "71" }, "15136": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "RETURNDATASIZE", "path": "71" }, "15137": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15139": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15140": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "RETURNDATACOPY", "path": "71" }, "15141": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "RETURNDATASIZE", "path": "71" }, "15142": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15144": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "REVERT", "path": "71" }, "15145": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "JUMPDEST", "path": "71" }, "15146": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "POP", "path": "71" }, "15147": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "POP", "path": "71" }, "15148": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "POP", "path": "71" }, "15149": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "POP", "path": "71" }, "15150": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "15152": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "MLOAD", "path": "71" }, "15153": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "RETURNDATASIZE", "path": "71" }, "15154": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x1F" }, "15156": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "NOT", "path": "71" }, "15157": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x1F" }, "15159": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP3", "path": "71" }, "15160": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ADD", "path": "71" }, "15161": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "AND", "path": "71" }, "15162": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP3", "path": "71" }, "15163": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ADD", "path": "71" }, "15164": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP1", "path": "71" }, "15165": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "15167": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "MSTORE", "path": "71" }, "15168": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "POP", "path": "71" }, "15169": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "DUP2", "path": "71" }, "15170": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "ADD", "path": "71" }, "15171": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SWAP1", "path": "71" }, "15172": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH2", "path": "71", "value": "0x3B4D" }, "15175": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SWAP2", "path": "71" }, "15176": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "SWAP1", "path": "71" }, "15177": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "PUSH2", "path": "71", "value": "0x43D8" }, "15180": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 2599, 2667 ], "op": "JUMP", "path": "71" }, "15181": { "fn": "CompoundHandler.redeem", "offset": [ 2599, 2667 ], "op": "JUMPDEST", "path": "71" }, "15182": { "fn": "CompoundHandler.redeem", "offset": [ 2581, 2667 ], "op": "SWAP1", "path": "71" }, "15183": { "op": "POP" }, "15184": { "fn": "CompoundHandler.redeem", "offset": [ 2685, 2725 ], "op": "DUP1", "path": "71", "statement": 333 }, "15185": { "branch": 480, "fn": "CompoundHandler.redeem", "offset": [ 2685, 2725 ], "op": "ISZERO", "path": "71" }, "15186": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "PUSH2", "path": "71", "value": "0x3B6D" }, "15189": { "branch": 480, "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "JUMPI", "path": "71" }, "15190": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "PUSH1", "path": "71", "value": "0x40" }, "15192": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "MLOAD", "path": "71" }, "15193": { "op": "PUSH3", "value": "0x461BCD" }, "15197": { "op": "PUSH1", "value": "0xE5" }, "15199": { "op": "SHL" }, "15200": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "DUP2", "path": "71" }, "15201": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "MSTORE", "path": "71" }, "15202": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "PUSH1", "path": "71", "value": "0x4" }, "15204": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "ADD", "path": "71" }, "15205": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "PUSH2", "path": "71", "value": "0x17A" }, "15208": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "SWAP1", "path": "71" }, "15209": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "PUSH2", "path": "71", "value": "0x491D" }, "15212": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 2677, 2736 ], "op": "JUMP", "path": "71" }, "15213": { "fn": "CompoundHandler.redeem", "offset": [ 2677, 2736 ], "op": "JUMPDEST", "path": "71" }, "15214": { "fn": "CompoundHandler.redeem", "offset": [ 2808, 2836 ], "op": "DUP6", "path": "71" }, "15215": { "fn": "CompoundHandler.redeem", "offset": [ 2808, 2836 ], "op": "MLOAD", "path": "71" }, "15216": { "fn": "CompoundHandler.redeem", "offset": [ 2747, 2768 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15218": { "fn": "CompoundHandler.redeem", "offset": [ 2747, 2768 ], "op": "SWAP1", "path": "71" }, "15219": { "fn": "CompoundHandler.redeem", "offset": [ 2771, 2891 ], "op": "PUSH2", "path": "71", "value": "0x3B84" }, "15222": { "fn": "CompoundHandler.redeem", "offset": [ 2771, 2891 ], "op": "SWAP1", "path": "71" }, "15223": { "fn": "CompoundHandler.redeem", "offset": [ 2846, 2850 ], "op": "ADDRESS", "path": "71" }, "15224": { "op": "PUSH4", "value": "0x70A08231" }, "15229": { "op": "PUSH1", "value": "0xE0" }, "15231": { "op": "SHL" }, "15232": { "fn": "CompoundHandler.redeem", "offset": [ 2771, 2807 ], "op": "PUSH2", "path": "71", "value": "0x2E2E" }, "15235": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 2771, 2891 ], "op": "JUMP", "path": "71" }, "15236": { "fn": "CompoundHandler.redeem", "offset": [ 2771, 2891 ], "op": "JUMPDEST", "path": "71" }, "15237": { "fn": "CompoundHandler.redeem", "offset": [ 2747, 2891 ], "op": "SWAP1", "path": "71" }, "15238": { "op": "POP" }, "15239": { "fn": "CompoundHandler.redeem", "offset": [ 2929, 2963 ], "op": "PUSH2", "path": "71", "statement": 334, "value": "0x3B90" }, "15242": { "fn": "CompoundHandler.redeem", "offset": [ 2747, 2891 ], "op": "DUP2", "path": "71" }, "15243": { "fn": "CompoundHandler.redeem", "offset": [ 2947, 2962 ], "op": "DUP5", "path": "71" }, "15244": { "fn": "CompoundHandler.redeem", "offset": [ 2929, 2946 ], "op": "PUSH2", "path": "71", "value": "0x3096" }, "15247": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 2929, 2963 ], "op": "JUMP", "path": "71" }, "15248": { "fn": "CompoundHandler.redeem", "offset": [ 2929, 2963 ], "op": "JUMPDEST", "path": "71" }, "15249": { "fn": "CompoundHandler.redeem", "offset": [ 2902, 2963 ], "op": "SWAP4", "path": "71" }, "15250": { "fn": "CompoundHandler.redeem", "offset": [ 2902, 2963 ], "op": "POP", "path": "71" }, "15251": { "fn": "CompoundHandler.redeem", "offset": [ 3048, 3141 ], "op": "PUSH2", "path": "71", "statement": 335, "value": "0x3BA1" }, "15254": { "fn": "CompoundHandler.redeem", "offset": [ 3077, 3092 ], "op": "DUP8", "path": "71" }, "15255": { "fn": "CompoundHandler.redeem", "offset": [ 3077, 3105 ], "op": "PUSH1", "path": "71", "value": "0x0" }, "15257": { "fn": "CompoundHandler.redeem", "offset": [ 3077, 3105 ], "op": "ADD", "path": "71" }, "15258": { "fn": "CompoundHandler.redeem", "offset": [ 3077, 3105 ], "op": "MLOAD", "path": "71" }, "15259": { "fn": "CompoundHandler.redeem", "offset": [ 3107, 3114 ], "op": "DUP8", "path": "71" }, "15260": { "fn": "CompoundHandler.redeem", "offset": [ 3116, 3140 ], "op": "DUP7", "path": "71" }, "15261": { "fn": "CompoundHandler.redeem", "offset": [ 3048, 3076 ], "op": "PUSH2", "path": "71", "value": "0x2DB7" }, "15264": { "fn": "CompoundHandler.redeem", "jump": "i", "offset": [ 3048, 3141 ], "op": "JUMP", "path": "71" }, "15265": { "fn": "CompoundHandler.redeem", "offset": [ 3048, 3141 ], "op": "JUMPDEST", "path": "71" }, "15266": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15267": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15268": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15269": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "SWAP5", "path": "71" }, "15270": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "SWAP4", "path": "71" }, "15271": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15272": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15273": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15274": { "fn": "CompoundHandler.redeem", "offset": [ 1919, 3148 ], "op": "POP", "path": "71" }, "15275": { "fn": "CompoundHandler.redeem", "jump": "o", "offset": [ 1919, 3148 ], "op": "JUMP", "path": "71" }, "15276": { "fn": "LibStorage.getNTokenAddressStorage", "offset": [ 2468, 2693 ], "op": "JUMPDEST", "path": "62" }, "15277": { "fn": "LibStorage.getNTokenAddressStorage", "offset": [ 2534, 2575 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "15279": { "fn": "LibStorage.getNTokenAddressStorage", "offset": [ 2591, 2603 ], "op": "DUP1", "path": "62" }, "15280": { "fn": "LibStorage.getNTokenAddressStorage", "offset": [ 2606, 2646 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "15283": { "fn": "LibStorage.getNTokenAddressStorage", "offset": [ 2622, 2645 ], "op": "PUSH1", "path": "62", "value": "0x3" }, "15285": { "fn": "LibStorage.getNTokenAddressStorage", "offset": [ 2606, 2621 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "15288": { "fn": "LibStorage.getNTokenAddressStorage", "jump": "i", "offset": [ 2606, 2646 ], "op": "JUMP", "path": "62" }, "15289": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1452, 3183 ], "op": "JUMPDEST", "path": "82" }, "15290": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1589, 1608 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15292": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1622, 1654 ], "op": "DUP1", "path": "82" }, "15293": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1668, 1695 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15295": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1829, 1871 ], "op": "PUSH2", "path": "82", "statement": 336, "value": "0x3BC7" }, "15298": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1858, 1870 ], "op": "DUP6", "path": "82" }, "15299": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1829, 1857 ], "op": "PUSH2", "path": "82", "value": "0x3DF0" }, "15302": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "jump": "i", "offset": [ 1829, 1871 ], "op": "JUMP", "path": "82" }, "15303": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1829, 1871 ], "op": "JUMPDEST", "path": "82" }, "15304": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1720, 1871 ], "op": "SWAP2", "path": "82" }, "15305": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1720, 1871 ], "op": "SWAP5", "path": "82" }, "15306": { "op": "POP" }, "15307": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1720, 1871 ], "op": "SWAP3", "path": "82" }, "15308": { "op": "POP" }, "15309": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1720, 1871 ], "op": "SWAP1", "path": "82" }, "15310": { "op": "POP" }, "15311": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2186 ], "op": "DUP1", "path": "82" }, "15312": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2186 ], "op": "DUP5", "path": "82" }, "15313": { "branch": 569, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2186 ], "op": "GT", "path": "82" }, "15314": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2213 ], "op": "DUP1", "path": "82" }, "15315": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2213 ], "op": "ISZERO", "path": "82" }, "15316": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2213 ], "op": "PUSH2", "path": "82", "value": "0x3BDD" }, "15319": { "branch": 569, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2213 ], "op": "JUMPI", "path": "82" }, "15320": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2213 ], "op": "POP", "path": "82" }, "15321": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2212, 2213 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15323": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2190, 2209 ], "op": "DUP2", "path": "82" }, "15324": { "branch": 570, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2190, 2213 ], "op": "GT", "path": "82" }, "15325": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2213 ], "op": "JUMPDEST", "path": "82" }, "15326": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2232 ], "op": "DUP1", "path": "82" }, "15327": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2232 ], "op": "ISZERO", "path": "82" }, "15328": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2232 ], "op": "PUSH2", "path": "82", "value": "0x3BE9" }, "15331": { "branch": 570, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2232 ], "op": "JUMPI", "path": "82" }, "15332": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2232 ], "op": "POP", "path": "82" }, "15333": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2231, 2232 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15335": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2217, 2228 ], "op": "DUP4", "path": "82" }, "15336": { "branch": 571, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2217, 2232 ], "op": "GT", "path": "82" }, "15337": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2155, 2232 ], "op": "JUMPDEST", "path": "82" }, "15338": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2151, 3177 ], "op": "ISZERO", "path": "82" }, "15339": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2151, 3177 ], "op": "PUSH2", "path": "82", "value": "0x3C48" }, "15342": { "branch": 571, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2151, 3177 ], "op": "JUMPI", "path": "82" }, "15343": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2331, 2358 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15345": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2488, 2532 ], "op": "PUSH2", "path": "82", "value": "0x3BF9" }, "15348": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2519, 2531 ], "op": "DUP7", "path": "82" }, "15349": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2488, 2518 ], "op": "PUSH2", "path": "82", "value": "0x1755" }, "15352": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "jump": "i", "offset": [ 2488, 2532 ], "op": "JUMP", "path": "82" }, "15353": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2488, 2532 ], "op": "JUMPDEST", "path": "82" }, "15354": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2279, 2532 ], "op": "POP", "path": "82" }, "15355": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2279, 2532 ], "op": "POP", "path": "82" }, "15356": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2279, 2532 ], "op": "POP", "path": "82" }, "15357": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2279, 2532 ], "op": "SWAP2", "path": "82" }, "15358": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2279, 2532 ], "op": "POP", "path": "82" }, "15359": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2279, 2532 ], "op": "POP", "path": "82" }, "15360": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2547, 2589 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15362": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2592, 2959 ], "op": "PUSH2", "path": "82", "value": "0x3C24" }, "15365": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2794 ], "op": "PUSH2", "path": "82", "value": "0x3C1B" }, "15368": { "offset": [ 429, 432 ], "op": "PUSH4", "path": "60", "value": "0x5F5E100" }, "15373": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2745 ], "op": "DUP5", "path": "82" }, "15374": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2749 ], "op": "PUSH2", "path": "82", "value": "0x3C5C" }, "15377": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2749 ], "op": "SWAP1", "path": "82" }, "15378": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2794 ], "op": "SWAP2", "path": "82" }, "15379": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2794 ], "op": "SWAP1", "path": "82" }, "15380": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2794 ], "op": "PUSH4", "path": "82", "value": "0xFFFFFFFF" }, "15385": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2794 ], "op": "AND", "path": "82" }, "15386": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "jump": "i", "offset": [ 2726, 2794 ], "op": "JUMP", "path": "82" }, "15387": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2726, 2794 ], "op": "JUMPDEST", "path": "82" }, "15388": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2897, 2916 ], "op": "DUP5", "path": "82" }, "15389": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2885, 2894 ], "op": "DUP9", "path": "82" }, "15390": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2885, 2916 ], "op": "SUB", "path": "82" }, "15391": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2934, 2945 ], "op": "DUP8", "path": "82" }, "15392": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2592, 2616 ], "op": "PUSH2", "path": "82", "value": "0x3E4C" }, "15395": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "jump": "i", "offset": [ 2592, 2959 ], "op": "JUMP", "path": "82" }, "15396": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2592, 2959 ], "op": "JUMPDEST", "path": "82" }, "15397": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2547, 2959 ], "op": "SWAP1", "path": "82" }, "15398": { "op": "POP" }, "15399": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3001, 3065 ], "op": "PUSH2", "path": "82", "statement": 337, "value": "0x3C30" }, "15402": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3001, 3025 ], "op": "DUP5", "path": "82" }, "15403": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2547, 2959 ], "op": "DUP3", "path": "82" }, "15404": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3001, 3029 ], "op": "PUSH2", "path": "82", "value": "0x3D1C" }, "15407": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "jump": "i", "offset": [ 3001, 3065 ], "op": "JUMP", "path": "82" }, "15408": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3001, 3065 ], "op": "JUMPDEST", "path": "82" }, "15409": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2974, 3065 ], "op": "SWAP4", "path": "82" }, "15410": { "op": "POP" }, "15411": { "op": "PUSH1", "value": "0x1" }, "15413": { "op": "PUSH1", "value": "0x1" }, "15415": { "op": "PUSH1", "value": "0x80" }, "15417": { "op": "SHL" }, "15418": { "op": "SUB" }, "15419": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3087, 3131 ], "op": "DUP5", "path": "82", "statement": 338 }, "15420": { "branch": 572, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3087, 3131 ], "op": "LT", "path": "82" }, "15421": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3079, 3132 ], "op": "PUSH2", "path": "82", "value": "0x3C45" }, "15424": { "branch": 572, "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3079, 3132 ], "op": "JUMPI", "path": "82" }, "15425": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3079, 3132 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15427": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3079, 3132 ], "op": "DUP1", "path": "82" }, "15428": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3079, 3132 ], "op": "REVERT", "path": "82" }, "15429": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 3079, 3132 ], "op": "JUMPDEST", "path": "82" }, "15430": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2151, 3177 ], "op": "POP", "path": "82" }, "15431": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2151, 3177 ], "op": "POP", "path": "82" }, "15432": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 2151, 3177 ], "op": "JUMPDEST", "path": "82" }, "15433": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1452, 3183 ], "op": "SWAP3", "path": "82" }, "15434": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1452, 3183 ], "op": "POP", "path": "82" }, "15435": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1452, 3183 ], "op": "SWAP3", "path": "82" }, "15436": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1452, 3183 ], "op": "POP", "path": "82" }, "15437": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "offset": [ 1452, 3183 ], "op": "SWAP3", "path": "82" }, "15438": { "fn": "nTokenSupply.getUpdatedAccumulatedNOTEPerNToken", "jump": "o", "offset": [ 1452, 3183 ], "op": "JUMP", "path": "82" }, "15439": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "offset": [ 6645, 6895 ], "op": "JUMPDEST", "path": "62" }, "15440": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "offset": [ 6715, 6773 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "15442": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "offset": [ 6789, 6801 ], "op": "DUP1", "path": "62" }, "15443": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "offset": [ 6804, 6848 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "15446": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "offset": [ 6820, 6847 ], "op": "PUSH1", "path": "62", "value": "0x11" }, "15448": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "offset": [ 6804, 6819 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "15451": { "fn": "LibStorage.getNTokenTotalSupplyStorage", "jump": "i", "offset": [ 6804, 6848 ], "op": "JUMP", "path": "62" }, "15452": { "fn": "SafeMath.mul", "offset": [ 3530, 3745 ], "op": "JUMPDEST", "path": "6" }, "15453": { "fn": "SafeMath.mul", "offset": [ 3588, 3595 ], "op": "PUSH1", "path": "6", "value": "0x0" }, "15455": { "branch": 538, "fn": "SafeMath.mul", "offset": [ 3611, 3617 ], "op": "DUP3", "path": "6" }, "15456": { "fn": "SafeMath.mul", "offset": [ 3607, 3627 ], "op": "PUSH2", "path": "6", "value": "0x3C6B" }, "15459": { "branch": 538, "fn": "SafeMath.mul", "offset": [ 3607, 3627 ], "op": "JUMPI", "path": "6" }, "15460": { "op": "POP" }, "15461": { "fn": "SafeMath.mul", "offset": [ 3626, 3627 ], "op": "PUSH1", "path": "6", "statement": 339, "value": "0x0" }, "15463": { "fn": "SafeMath.mul", "offset": [ 3619, 3627 ], "op": "PUSH2", "path": "6", "value": "0xEDB" }, "15466": { "fn": "SafeMath.mul", "offset": [ 3619, 3627 ], "op": "JUMP", "path": "6" }, "15467": { "fn": "SafeMath.mul", "offset": [ 3607, 3627 ], "op": "JUMPDEST", "path": "6" }, "15468": { "fn": "SafeMath.mul", "offset": [ 3649, 3654 ], "op": "DUP3", "path": "6" }, "15469": { "fn": "SafeMath.mul", "offset": [ 3649, 3654 ], "op": "DUP3", "path": "6" }, "15470": { "fn": "SafeMath.mul", "offset": [ 3649, 3654 ], "op": "MUL", "path": "6" }, "15471": { "fn": "SafeMath.mul", "offset": [ 3653, 3654 ], "op": "DUP3", "path": "6" }, "15472": { "fn": "SafeMath.mul", "offset": [ 3649, 3650 ], "op": "DUP5", "path": "6" }, "15473": { "fn": "SafeMath.mul", "offset": [ 3649, 3654 ], "op": "DUP3", "path": "6" }, "15474": { "fn": "SafeMath.mul", "offset": [ 3649, 3650 ], "op": "DUP2", "path": "6" }, "15475": { "fn": "SafeMath.mul", "offset": [ 3672, 3677 ], "op": "PUSH2", "path": "6", "statement": 340, "value": "0x3C78" }, "15478": { "fn": "SafeMath.mul", "offset": [ 3672, 3677 ], "op": "JUMPI", "path": "6" }, "15479": { "dev": "Division by zero", "fn": "SafeMath.mul", "offset": [ 3672, 3677 ], "op": "INVALID", "path": "6" }, "15480": { "fn": "SafeMath.mul", "offset": [ 3672, 3677 ], "op": "JUMPDEST", "path": "6" }, "15481": { "fn": "SafeMath.mul", "offset": [ 3672, 3677 ], "op": "DIV", "path": "6" }, "15482": { "branch": 539, "fn": "SafeMath.mul", "offset": [ 3672, 3682 ], "op": "EQ", "path": "6" }, "15483": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH2", "path": "6", "value": "0xAA3" }, "15486": { "branch": 539, "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "JUMPI", "path": "6" }, "15487": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "15489": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "MLOAD", "path": "6" }, "15490": { "op": "PUSH3", "value": "0x461BCD" }, "15494": { "op": "PUSH1", "value": "0xE5" }, "15496": { "op": "SHL" }, "15497": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP2", "path": "6" }, "15498": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "MSTORE", "path": "6" }, "15499": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x4" }, "15501": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "ADD", "path": "6" }, "15502": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP1", "path": "6" }, "15503": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP1", "path": "6" }, "15504": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "15506": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "ADD", "path": "6" }, "15507": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP3", "path": "6" }, "15508": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP2", "path": "6" }, "15509": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "SUB", "path": "6" }, "15510": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP3", "path": "6" }, "15511": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "MSTORE", "path": "6" }, "15512": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x21" }, "15514": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP2", "path": "6" }, "15515": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "MSTORE", "path": "6" }, "15516": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "15518": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "ADD", "path": "6" }, "15519": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP1", "path": "6" }, "15520": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH2", "path": "6", "value": "0x4B96" }, "15523": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x21" }, "15525": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "SWAP2", "path": "6" }, "15526": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "CODECOPY", "path": "6" }, "15527": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "15529": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "ADD", "path": "6" }, "15530": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "SWAP2", "path": "6" }, "15531": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "POP", "path": "6" }, "15532": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "POP", "path": "6" }, "15533": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "15535": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "MLOAD", "path": "6" }, "15536": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "DUP1", "path": "6" }, "15537": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "SWAP2", "path": "6" }, "15538": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "SUB", "path": "6" }, "15539": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "SWAP1", "path": "6" }, "15540": { "fn": "SafeMath.mul", "offset": [ 3664, 3720 ], "op": "REVERT", "path": "6" }, "15541": { "fn": "SafeMath.div", "offset": [ 4209, 4359 ], "op": "JUMPDEST", "path": "6" }, "15542": { "fn": "SafeMath.div", "offset": [ 4267, 4274 ], "op": "PUSH1", "path": "6", "value": "0x0" }, "15544": { "fn": "SafeMath.div", "offset": [ 4298, 4299 ], "op": "DUP1", "path": "6", "statement": 341 }, "15545": { "fn": "SafeMath.div", "offset": [ 4294, 4295 ], "op": "DUP3", "path": "6" }, "15546": { "branch": 540, "fn": "SafeMath.div", "offset": [ 4294, 4299 ], "op": "GT", "path": "6" }, "15547": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH2", "path": "6", "value": "0x3D0B" }, "15550": { "branch": 540, "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "JUMPI", "path": "6" }, "15551": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "15553": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "DUP1", "path": "6" }, "15554": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "MLOAD", "path": "6" }, "15555": { "op": "PUSH3", "value": "0x461BCD" }, "15559": { "op": "PUSH1", "value": "0xE5" }, "15561": { "op": "SHL" }, "15562": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "DUP2", "path": "6" }, "15563": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "MSTORE", "path": "6" }, "15564": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "15566": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x4" }, "15568": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "DUP3", "path": "6" }, "15569": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "ADD", "path": "6" }, "15570": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "MSTORE", "path": "6" }, "15571": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x1A" }, "15573": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x24" }, "15575": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "DUP3", "path": "6" }, "15576": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "ADD", "path": "6" }, "15577": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "MSTORE", "path": "6" }, "15578": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH32", "path": "6", "value": "0x536166654D6174683A206469766973696F6E206279207A65726F000000000000" }, "15611": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x44" }, "15613": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "DUP3", "path": "6" }, "15614": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "ADD", "path": "6" }, "15615": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "MSTORE", "path": "6" }, "15616": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "SWAP1", "path": "6" }, "15617": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "MLOAD", "path": "6" }, "15618": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "SWAP1", "path": "6" }, "15619": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "DUP2", "path": "6" }, "15620": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "SWAP1", "path": "6" }, "15621": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "SUB", "path": "6" }, "15622": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "PUSH1", "path": "6", "value": "0x64" }, "15624": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "ADD", "path": "6" }, "15625": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "SWAP1", "path": "6" }, "15626": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "REVERT", "path": "6" }, "15627": { "fn": "SafeMath.div", "offset": [ 4286, 4330 ], "op": "JUMPDEST", "path": "6" }, "15628": { "fn": "SafeMath.div", "offset": [ 4351, 4352 ], "op": "DUP2", "path": "6", "statement": 342 }, "15629": { "fn": "SafeMath.div", "offset": [ 4347, 4348 ], "op": "DUP4", "path": "6" }, "15630": { "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "DUP2", "path": "6" }, "15631": { "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "PUSH2", "path": "6", "value": "0x3D14" }, "15634": { "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "JUMPI", "path": "6" }, "15635": { "dev": "Division by zero", "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "INVALID", "path": "6" }, "15636": { "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "JUMPDEST", "path": "6" }, "15637": { "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "DIV", "path": "6" }, "15638": { "fn": "SafeMath.div", "offset": [ 4347, 4352 ], "op": "SWAP4", "path": "6" }, "15639": { "fn": "SafeMath.div", "offset": [ 4209, 4359 ], "op": "SWAP3", "path": "6" }, "15640": { "op": "POP" }, "15641": { "op": "POP" }, "15642": { "op": "POP" }, "15643": { "fn": "SafeMath.div", "jump": "o", "offset": [ 4209, 4359 ], "op": "JUMP", "path": "6" }, "15644": { "fn": "SafeMath.add", "offset": [ 2682, 2857 ], "op": "JUMPDEST", "path": "6" }, "15645": { "fn": "SafeMath.add", "offset": [ 2740, 2747 ], "op": "PUSH1", "path": "6", "value": "0x0" }, "15647": { "fn": "SafeMath.add", "offset": [ 2771, 2776 ], "op": "DUP3", "path": "6" }, "15648": { "fn": "SafeMath.add", "offset": [ 2771, 2776 ], "op": "DUP3", "path": "6" }, "15649": { "fn": "SafeMath.add", "offset": [ 2771, 2776 ], "op": "ADD", "path": "6" }, "15650": { "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "DUP4", "path": "6", "statement": 343 }, "15651": { "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "DUP2", "path": "6" }, "15652": { "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "LT", "path": "6" }, "15653": { "branch": 541, "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "ISZERO", "path": "6" }, "15654": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH2", "path": "6", "value": "0xAA3" }, "15657": { "branch": 541, "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "JUMPI", "path": "6" }, "15658": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "15660": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP1", "path": "6" }, "15661": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MLOAD", "path": "6" }, "15662": { "op": "PUSH3", "value": "0x461BCD" }, "15666": { "op": "PUSH1", "value": "0xE5" }, "15668": { "op": "SHL" }, "15669": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP2", "path": "6" }, "15670": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "15671": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "15673": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x4" }, "15675": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP3", "path": "6" }, "15676": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "15677": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "15678": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x1B" }, "15680": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x24" }, "15682": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP3", "path": "6" }, "15683": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "15684": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "15685": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH32", "path": "6", "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000" }, "15718": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x44" }, "15720": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP3", "path": "6" }, "15721": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "15722": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "15723": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "15724": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MLOAD", "path": "6" }, "15725": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "15726": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP2", "path": "6" }, "15727": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "15728": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SUB", "path": "6" }, "15729": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x64" }, "15731": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "15732": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "15733": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "REVERT", "path": "6" }, "15734": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "offset": [ 7804, 8050 ], "op": "JUMPDEST", "path": "62" }, "15735": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "offset": [ 7876, 7919 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "15737": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "offset": [ 7935, 7947 ], "op": "DUP1", "path": "62" }, "15738": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "offset": [ 7950, 8003 ], "op": "PUSH2", "path": "62", "value": "0xEDB" }, "15741": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "offset": [ 7966, 8002 ], "op": "PUSH1", "path": "62", "value": "0x12" }, "15743": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "offset": [ 7950, 7965 ], "op": "PUSH2", "path": "62", "value": "0x37C7" }, "15746": { "fn": "LibStorage.getSecondaryIncentiveRewarder", "jump": "i", "offset": [ 7950, 8003 ], "op": "JUMP", "path": "62" }, "15747": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1006, 1758 ], "op": "JUMPDEST", "path": "88" }, "15748": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1085, 1092 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "15750": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1130, 1131 ], "op": "DUP1", "path": "88", "statement": 344 }, "15751": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1117 ], "op": "DUP3", "path": "88" }, "15752": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1127 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "15754": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1127 ], "op": "ADD", "path": "88" }, "15755": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1127 ], "op": "MLOAD", "path": "88" }, "15756": { "branch": 442, "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1131 ], "op": "GT", "path": "88" }, "15757": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "DUP1", "path": "88" }, "15758": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "ISZERO", "path": "88" }, "15759": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "PUSH2", "path": "88", "value": "0x3D9D" }, "15762": { "branch": 442, "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "JUMPI", "path": "88" }, "15763": { "op": "POP" }, "15764": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "15766": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "DUP3", "path": "88" }, "15767": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "ADD", "path": "88" }, "15768": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "MLOAD", "path": "88" }, "15769": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "15771": { "op": "LT" }, "15772": { "branch": 443, "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1189 ], "op": "ISZERO", "path": "88" }, "15773": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "JUMPDEST", "path": "88" }, "15774": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "PUSH2", "path": "88", "value": "0x3DA6" }, "15777": { "branch": 443, "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "JUMPI", "path": "88" }, "15778": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "15780": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "DUP1", "path": "88" }, "15781": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "REVERT", "path": "88" }, "15782": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "JUMPDEST", "path": "88" }, "15783": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "15785": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "DUP3", "path": "88" }, "15786": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "ADD", "path": "88" }, "15787": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "MLOAD", "path": "88" }, "15788": { "offset": [ 4847, 4848 ], "op": "PUSH1", "path": "60", "value": "0x2" }, "15790": { "op": "LT" }, "15791": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1305, 1386 ], "op": "PUSH2", "path": "88", "value": "0x3DBD" }, "15794": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1305, 1386 ], "op": "JUMPI", "path": "88" }, "15795": { "op": "POP" }, "15796": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "PUSH1", "path": "88", "statement": 345, "value": "0x20" }, "15798": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "DUP2", "path": "88" }, "15799": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "ADD", "path": "88" }, "15800": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "MLOAD", "path": "88" }, "15801": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1365, 1386 ], "op": "PUSH2", "path": "88", "value": "0xBE2" }, "15804": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1365, 1386 ], "op": "JUMP", "path": "88" }, "15805": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1305, 1386 ], "op": "JUMPDEST", "path": "88" }, "15806": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1417 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "15808": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1420, 1465 ], "op": "PUSH2", "path": "88", "value": "0x3DCF" }, "15811": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1463, 1464 ], "op": "PUSH1", "path": "88", "value": "0x1" }, "15813": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1450 ], "op": "DUP5", "path": "88" }, "15814": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1460 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "15816": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1460 ], "op": "ADD", "path": "88" }, "15817": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1460 ], "op": "MLOAD", "path": "88" }, "15818": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1464 ], "op": "SUB", "path": "88" }, "15819": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1420, 1444 ], "op": "PUSH2", "path": "88", "value": "0x3E6E" }, "15822": { "fn": "AssetHandler.getSettlementDate", "jump": "i", "offset": [ 1420, 1465 ], "op": "JUMP", "path": "88" }, "15823": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1420, 1465 ], "op": "JUMPDEST", "path": "88" }, "15824": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "PUSH1", "path": "88", "statement": 346, "value": "0x20" }, "15826": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "DUP5", "path": "88" }, "15827": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "ADD", "path": "88" }, "15828": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "MLOAD", "path": "88" }, "15829": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1465 ], "op": "SWAP1", "path": "88" }, "15830": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1465 ], "op": "SWAP2", "path": "88" }, "15831": { "op": "POP" }, "15832": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1751 ], "op": "PUSH2", "path": "88", "value": "0xAA3" }, "15835": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1751 ], "op": "SWAP1", "path": "88" }, "15836": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "15840": { "fn": "AssetHandler.getSettlementDate", "offset": [ 2617, 2626 ], "op": "SWAP1", "path": "60" }, "15841": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1728 ], "op": "PUSH2", "path": "88", "value": "0x3DEA" }, "15844": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1728 ], "op": "SWAP1", "path": "88" }, "15845": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1465 ], "op": "DUP5", "path": "88" }, "15846": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1714 ], "op": "PUSH2", "path": "88", "value": "0x3096" }, "15849": { "fn": "AssetHandler.getSettlementDate", "jump": "i", "offset": [ 1696, 1728 ], "op": "JUMP", "path": "88" }, "15850": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1728 ], "op": "JUMPDEST", "path": "88" }, "15851": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1732 ], "op": "SWAP1", "path": "88" }, "15852": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1732 ], "op": "PUSH2", "path": "88", "value": "0x3D1C" }, "15855": { "fn": "AssetHandler.getSettlementDate", "jump": "i", "offset": [ 1696, 1751 ], "op": "JUMP", "path": "88" }, "15856": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 526, 1355 ], "op": "JUMPDEST", "path": "82" }, "15857": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 646, 665 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15859": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 679, 711 ], "op": "DUP1", "path": "82" }, "15860": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 725, 752 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15862": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 777, 835 ], "op": "DUP1", "path": "82" }, "15863": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 838, 878 ], "op": "PUSH2", "path": "82", "value": "0x3DFE" }, "15866": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 838, 876 ], "op": "PUSH2", "path": "82", "value": "0x3C4F" }, "15869": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "jump": "i", "offset": [ 838, 878 ], "op": "JUMP", "path": "82" }, "15870": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 838, 878 ], "op": "JUMPDEST", "path": "82" }, "15871": { "op": "PUSH1", "value": "0x1" }, "15873": { "op": "PUSH1", "value": "0x1" }, "15875": { "op": "PUSH1", "value": "0xA0" }, "15877": { "op": "SHL" }, "15878": { "op": "SUB" }, "15879": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP6", "path": "82" }, "15880": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP1", "path": "82" }, "15881": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP6", "path": "82" }, "15882": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "AND", "path": "82" }, "15883": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 888, 934 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15885": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP1", "path": "82" }, "15886": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "DUP2", "path": "82" }, "15887": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "MSTORE", "path": "82" }, "15888": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "PUSH1", "path": "82", "value": "0x20" }, "15890": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP6", "path": "82" }, "15891": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP1", "path": "82" }, "15892": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP6", "path": "82" }, "15893": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "MSTORE", "path": "82" }, "15894": { "op": "POP" }, "15895": { "op": "POP" }, "15896": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "PUSH1", "path": "82", "value": "0x40" }, "15898": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP1", "path": "82" }, "15899": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "SWAP3", "path": "82" }, "15900": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 937, 956 ], "op": "KECCAK256", "path": "82" }, "15901": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 980, 1005 ], "op": "SLOAD", "path": "82", "statement": 347 }, "15902": { "op": "PUSH1", "value": "0x1" }, "15904": { "op": "PUSH1", "value": "0x1" }, "15906": { "op": "PUSH1", "value": "0x60" }, "15908": { "op": "SHL" }, "15909": { "op": "SUB" }, "15910": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 980, 1005 ], "op": "DUP2", "path": "82" }, "15911": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 980, 1005 ], "op": "AND", "path": "82" }, "15912": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 980, 1005 ], "op": "SWAP4", "path": "82" }, "15913": { "op": "PUSH1", "value": "0x1" }, "15915": { "op": "PUSH1", "value": "0x60" }, "15917": { "op": "SHL" }, "15918": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1245, 1283 ], "op": "DUP3", "path": "82", "statement": 348 }, "15919": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1245, 1283 ], "op": "DIV", "path": "82" }, "15920": { "op": "PUSH1", "value": "0x1" }, "15922": { "op": "PUSH1", "value": "0x1" }, "15924": { "op": "PUSH1", "value": "0x80" }, "15926": { "op": "SHL" }, "15927": { "op": "SUB" }, "15928": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1245, 1283 ], "op": "AND", "path": "82" }, "15929": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1245, 1283 ], "op": "SWAP4", "path": "82" }, "15930": { "op": "POP" }, "15931": { "op": "PUSH1", "value": "0x1" }, "15933": { "op": "PUSH1", "value": "0xE0" }, "15935": { "op": "SHL" }, "15936": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1315, 1348 ], "op": "SWAP1", "path": "82", "statement": 349 }, "15937": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1315, 1348 ], "op": "SWAP2", "path": "82" }, "15938": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1315, 1348 ], "op": "DIV", "path": "82" }, "15939": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1315, 1348 ], "op": "PUSH4", "path": "82", "value": "0xFFFFFFFF" }, "15944": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1315, 1348 ], "op": "AND", "path": "82" }, "15945": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "offset": [ 1315, 1348 ], "op": "SWAP2", "path": "82" }, "15946": { "op": "POP" }, "15947": { "fn": "nTokenSupply.getStoredNTokenSupplyFactors", "jump": "o", "offset": [ 526, 1355 ], "op": "JUMP", "path": "82" }, "15948": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 3288, 4395 ], "op": "JUMPDEST", "path": "82" }, "15949": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 3483, 3490 ], "op": "PUSH1", "path": "82", "value": "0x0" }, "15951": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4135, 4388 ], "op": "PUSH2", "path": "82", "statement": 350, "value": "0xF7F" }, "15954": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4376, 4387 ], "op": "DUP3", "path": "82" }, "15955": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4135, 4292 ], "op": "PUSH2", "path": "82", "value": "0x340D" }, "15958": { "offset": [ 2665, 2676 ], "op": "PUSH4", "path": "60", "value": "0x1DA9C00" }, "15963": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4135, 4292 ], "op": "DUP2", "path": "82" }, "15964": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4239, 4258 ], "op": "DUP9", "path": "82" }, "15965": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4135, 4221 ], "op": "PUSH2", "path": "82", "value": "0x3407" }, "15968": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4135, 4160 ], "op": "DUP10", "path": "82" }, "15969": { "offset": [ 499, 503 ], "op": "PUSH8", "path": "60", "value": "0xDE0B6B3A7640000" }, "15978": { "fn": "nTokenSupply._calculateAdditionalNOTE", "offset": [ 4135, 4177 ], "op": "PUSH2", "path": "82", "value": "0x3C5C" }, "15981": { "fn": "nTokenSupply._calculateAdditionalNOTE", "jump": "i", "offset": [ 4135, 4221 ], "op": "JUMP", "path": "82" }, "15982": { "fn": "DateTime.getTradedMarket", "offset": [ 928, 1398 ], "op": "JUMPDEST", "path": "78" }, "15983": { "fn": "DateTime.getTradedMarket", "offset": [ 991, 998 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "15985": { "fn": "DateTime.getTradedMarket", "offset": [ 1014, 1019 ], "op": "DUP2", "path": "78" }, "15986": { "fn": "DateTime.getTradedMarket", "offset": [ 1023, 1024 ], "op": "PUSH1", "path": "78", "value": "0x1" }, "15988": { "branch": 482, "fn": "DateTime.getTradedMarket", "offset": [ 1014, 1024 ], "op": "EQ", "path": "78" }, "15989": { "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "ISZERO", "path": "78" }, "15990": { "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "PUSH2", "path": "78", "value": "0x3E83" }, "15993": { "branch": 482, "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "JUMPI", "path": "78" }, "15994": { "op": "POP" }, "15995": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "15999": { "fn": "DateTime.getTradedMarket", "offset": [ 1026, 1050 ], "op": "PUSH2", "path": "78", "statement": 351, "value": "0xBE2" }, "16002": { "fn": "DateTime.getTradedMarket", "offset": [ 1026, 1050 ], "op": "JUMP", "path": "78" }, "16003": { "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "JUMPDEST", "path": "78" }, "16004": { "fn": "DateTime.getTradedMarket", "offset": [ 1064, 1069 ], "op": "DUP2", "path": "78" }, "16005": { "fn": "DateTime.getTradedMarket", "offset": [ 1073, 1074 ], "op": "PUSH1", "path": "78", "value": "0x2" }, "16007": { "branch": 483, "fn": "DateTime.getTradedMarket", "offset": [ 1064, 1074 ], "op": "EQ", "path": "78" }, "16008": { "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "ISZERO", "path": "78" }, "16009": { "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "PUSH2", "path": "78", "value": "0x3E96" }, "16012": { "branch": 483, "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "JUMPI", "path": "78" }, "16013": { "op": "POP" }, "16014": { "fn": "DateTime.getTradedMarket", "offset": [ 1083, 1104 ], "op": "PUSH3", "path": "78", "statement": 352, "value": "0xED4E00" }, "16018": { "fn": "DateTime.getTradedMarket", "offset": [ 1076, 1104 ], "op": "PUSH2", "path": "78", "value": "0xBE2" }, "16021": { "fn": "DateTime.getTradedMarket", "offset": [ 1076, 1104 ], "op": "JUMP", "path": "78" }, "16022": { "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "JUMPDEST", "path": "78" }, "16023": { "fn": "DateTime.getTradedMarket", "offset": [ 1118, 1123 ], "op": "DUP2", "path": "78" }, "16024": { "fn": "DateTime.getTradedMarket", "offset": [ 1127, 1128 ], "op": "PUSH1", "path": "78", "value": "0x3" }, "16026": { "branch": 484, "fn": "DateTime.getTradedMarket", "offset": [ 1118, 1128 ], "op": "EQ", "path": "78" }, "16027": { "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "ISZERO", "path": "78" }, "16028": { "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "PUSH2", "path": "78", "value": "0x3EAA" }, "16031": { "branch": 484, "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "JUMPI", "path": "78" }, "16032": { "op": "POP" }, "16033": { "offset": [ 2665, 2676 ], "op": "PUSH4", "path": "60", "value": "0x1DA9C00" }, "16038": { "fn": "DateTime.getTradedMarket", "offset": [ 1130, 1151 ], "op": "PUSH2", "path": "78", "statement": 353, "value": "0xBE2" }, "16041": { "fn": "DateTime.getTradedMarket", "offset": [ 1130, 1151 ], "op": "JUMP", "path": "78" }, "16042": { "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "JUMPDEST", "path": "78" }, "16043": { "fn": "DateTime.getTradedMarket", "offset": [ 1165, 1170 ], "op": "DUP2", "path": "78" }, "16044": { "fn": "DateTime.getTradedMarket", "offset": [ 1174, 1175 ], "op": "PUSH1", "path": "78", "value": "0x4" }, "16046": { "branch": 485, "fn": "DateTime.getTradedMarket", "offset": [ 1165, 1175 ], "op": "EQ", "path": "78" }, "16047": { "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "ISZERO", "path": "78" }, "16048": { "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "PUSH2", "path": "78", "value": "0x3EBE" }, "16051": { "branch": 485, "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "JUMPI", "path": "78" }, "16052": { "op": "POP" }, "16053": { "fn": "DateTime.getTradedMarket", "offset": [ 1184, 1202 ], "op": "PUSH4", "path": "78", "statement": 354, "value": "0x3B53800" }, "16058": { "fn": "DateTime.getTradedMarket", "offset": [ 1177, 1202 ], "op": "PUSH2", "path": "78", "value": "0xBE2" }, "16061": { "fn": "DateTime.getTradedMarket", "offset": [ 1177, 1202 ], "op": "JUMP", "path": "78" }, "16062": { "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "JUMPDEST", "path": "78" }, "16063": { "fn": "DateTime.getTradedMarket", "offset": [ 1216, 1221 ], "op": "DUP2", "path": "78" }, "16064": { "fn": "DateTime.getTradedMarket", "offset": [ 1225, 1226 ], "op": "PUSH1", "path": "78", "value": "0x5" }, "16066": { "branch": 486, "fn": "DateTime.getTradedMarket", "offset": [ 1216, 1226 ], "op": "EQ", "path": "78" }, "16067": { "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "ISZERO", "path": "78" }, "16068": { "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "PUSH2", "path": "78", "value": "0x3ED2" }, "16071": { "branch": 486, "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "JUMPI", "path": "78" }, "16072": { "op": "POP" }, "16073": { "fn": "DateTime.getTradedMarket", "offset": [ 1235, 1253 ], "op": "PUSH4", "path": "78", "statement": 355, "value": "0x9450C00" }, "16078": { "fn": "DateTime.getTradedMarket", "offset": [ 1228, 1253 ], "op": "PUSH2", "path": "78", "value": "0xBE2" }, "16081": { "fn": "DateTime.getTradedMarket", "offset": [ 1228, 1253 ], "op": "JUMP", "path": "78" }, "16082": { "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "JUMPDEST", "path": "78" }, "16083": { "fn": "DateTime.getTradedMarket", "offset": [ 1267, 1272 ], "op": "DUP2", "path": "78" }, "16084": { "fn": "DateTime.getTradedMarket", "offset": [ 1276, 1277 ], "op": "PUSH1", "path": "78", "value": "0x6" }, "16086": { "branch": 487, "fn": "DateTime.getTradedMarket", "offset": [ 1267, 1277 ], "op": "EQ", "path": "78" }, "16087": { "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "ISZERO", "path": "78" }, "16088": { "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "PUSH2", "path": "78", "value": "0x3EE6" }, "16091": { "branch": 487, "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "JUMPI", "path": "78" }, "16092": { "op": "POP" }, "16093": { "fn": "DateTime.getTradedMarket", "offset": [ 1286, 1305 ], "op": "PUSH4", "path": "78", "statement": 356, "value": "0x128A1800" }, "16098": { "fn": "DateTime.getTradedMarket", "offset": [ 1279, 1305 ], "op": "PUSH2", "path": "78", "value": "0xBE2" }, "16101": { "fn": "DateTime.getTradedMarket", "offset": [ 1279, 1305 ], "op": "JUMP", "path": "78" }, "16102": { "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "JUMPDEST", "path": "78" }, "16103": { "fn": "DateTime.getTradedMarket", "offset": [ 1319, 1324 ], "op": "DUP2", "path": "78" }, "16104": { "fn": "DateTime.getTradedMarket", "offset": [ 1328, 1329 ], "op": "PUSH1", "path": "78", "value": "0x7" }, "16106": { "branch": 488, "fn": "DateTime.getTradedMarket", "offset": [ 1319, 1329 ], "op": "EQ", "path": "78" }, "16107": { "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "ISZERO", "path": "78" }, "16108": { "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "PUSH2", "path": "78", "value": "0x3EFA" }, "16111": { "branch": 488, "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "JUMPI", "path": "78" }, "16112": { "op": "POP" }, "16113": { "fn": "DateTime.getTradedMarket", "offset": [ 1338, 1357 ], "op": "PUSH4", "path": "78", "statement": 357, "value": "0x25143000" }, "16118": { "fn": "DateTime.getTradedMarket", "offset": [ 1331, 1357 ], "op": "PUSH2", "path": "78", "value": "0xBE2" }, "16121": { "fn": "DateTime.getTradedMarket", "offset": [ 1331, 1357 ], "op": "JUMP", "path": "78" }, "16122": { "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "JUMPDEST", "path": "78" }, "16123": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH1", "path": "78", "statement": 358, "value": "0x40" }, "16125": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "MLOAD", "path": "78" }, "16126": { "op": "PUSH3", "value": "0x461BCD" }, "16130": { "op": "PUSH1", "value": "0xE5" }, "16132": { "op": "SHL" }, "16133": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "DUP2", "path": "78" }, "16134": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "MSTORE", "path": "78" }, "16135": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH1", "path": "78", "value": "0x4" }, "16137": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "ADD", "path": "78" }, "16138": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH2", "path": "78", "value": "0x17A" }, "16141": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "SWAP1", "path": "78" }, "16142": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH2", "path": "78", "value": "0x493D" }, "16145": { "fn": "DateTime.getTradedMarket", "jump": "i", "offset": [ 1368, 1391 ], "op": "JUMP", "path": "78" }, "16146": { "op": "JUMPDEST" }, "16147": { "op": "PUSH1", "value": "0x40" }, "16149": { "op": "MLOAD" }, "16150": { "op": "DUP1" }, "16151": { "op": "PUSH2", "value": "0x120" }, "16154": { "op": "ADD" }, "16155": { "op": "PUSH1", "value": "0x40" }, "16157": { "op": "MSTORE" }, "16158": { "op": "DUP1" }, "16159": { "op": "PUSH1", "value": "0x0" }, "16161": { "op": "PUSH2", "value": "0xFFFF" }, "16164": { "op": "AND" }, "16165": { "op": "DUP2" }, "16166": { "op": "MSTORE" }, "16167": { "op": "PUSH1", "value": "0x20" }, "16169": { "op": "ADD" }, "16170": { "op": "PUSH1", "value": "0x0" }, "16172": { "op": "DUP2" }, "16173": { "op": "MSTORE" }, "16174": { "op": "PUSH1", "value": "0x20" }, "16176": { "op": "ADD" }, "16177": { "op": "PUSH1", "value": "0x0" }, "16179": { "op": "DUP2" }, "16180": { "op": "MSTORE" }, "16181": { "op": "PUSH1", "value": "0x20" }, "16183": { "op": "ADD" }, "16184": { "op": "PUSH1", "value": "0x0" }, "16186": { "op": "DUP2" }, "16187": { "op": "MSTORE" }, "16188": { "op": "PUSH1", "value": "0x20" }, "16190": { "op": "ADD" }, "16191": { "op": "PUSH1", "value": "0x0" }, "16193": { "op": "DUP2" }, "16194": { "op": "MSTORE" }, "16195": { "op": "PUSH1", "value": "0x20" }, "16197": { "op": "ADD" }, "16198": { "op": "PUSH1", "value": "0x0" }, "16200": { "op": "DUP2" }, "16201": { "op": "MSTORE" }, "16202": { "op": "PUSH1", "value": "0x20" }, "16204": { "op": "ADD" }, "16205": { "op": "PUSH1", "value": "0x0" }, "16207": { "op": "DUP2" }, "16208": { "op": "MSTORE" }, "16209": { "op": "PUSH1", "value": "0x20" }, "16211": { "op": "ADD" }, "16212": { "op": "PUSH1", "value": "0x0" }, "16214": { "op": "DUP2" }, "16215": { "op": "MSTORE" }, "16216": { "op": "PUSH1", "value": "0x20" }, "16218": { "op": "ADD" }, "16219": { "op": "PUSH1", "value": "0x0" }, "16221": { "op": "DUP2" }, "16222": { "op": "MSTORE" }, "16223": { "op": "POP" }, "16224": { "op": "SWAP1" }, "16225": { "jump": "o", "op": "JUMP" }, "16226": { "op": "JUMPDEST" }, "16227": { "op": "PUSH1", "value": "0x40" }, "16229": { "op": "DUP1" }, "16230": { "op": "MLOAD" }, "16231": { "op": "PUSH1", "value": "0xA0" }, "16233": { "op": "DUP2" }, "16234": { "op": "ADD" }, "16235": { "op": "DUP3" }, "16236": { "op": "MSTORE" }, "16237": { "op": "PUSH1", "value": "0x0" }, "16239": { "op": "DUP1" }, "16240": { "op": "DUP3" }, "16241": { "op": "MSTORE" }, "16242": { "op": "PUSH1", "value": "0x20" }, "16244": { "op": "DUP3" }, "16245": { "op": "ADD" }, "16246": { "op": "DUP2" }, "16247": { "op": "SWAP1" }, "16248": { "op": "MSTORE" }, "16249": { "op": "SWAP2" }, "16250": { "op": "DUP2" }, "16251": { "op": "ADD" }, "16252": { "op": "DUP3" }, "16253": { "op": "SWAP1" }, "16254": { "op": "MSTORE" }, "16255": { "op": "PUSH1", "value": "0x60" }, "16257": { "op": "DUP2" }, "16258": { "op": "ADD" }, "16259": { "op": "DUP3" }, "16260": { "op": "SWAP1" }, "16261": { "op": "MSTORE" }, "16262": { "op": "PUSH1", "value": "0x80" }, "16264": { "op": "DUP2" }, "16265": { "op": "ADD" }, "16266": { "op": "SWAP2" }, "16267": { "op": "SWAP1" }, "16268": { "op": "SWAP2" }, "16269": { "op": "MSTORE" }, "16270": { "op": "SWAP1" }, "16271": { "jump": "o", "op": "JUMP" }, "16272": { "op": "JUMPDEST" }, "16273": { "op": "PUSH1", "value": "0x40" }, "16275": { "op": "MLOAD" }, "16276": { "op": "DUP1" }, "16277": { "op": "PUSH1", "value": "0x80" }, "16279": { "op": "ADD" }, "16280": { "op": "PUSH1", "value": "0x40" }, "16282": { "op": "MSTORE" }, "16283": { "op": "DUP1" }, "16284": { "op": "PUSH1", "value": "0x60" }, "16286": { "op": "DUP2" }, "16287": { "op": "MSTORE" }, "16288": { "op": "PUSH1", "value": "0x20" }, "16290": { "op": "ADD" }, "16291": { "op": "PUSH1", "value": "0x60" }, "16293": { "op": "DUP2" }, "16294": { "op": "MSTORE" }, "16295": { "op": "PUSH1", "value": "0x20" }, "16297": { "op": "ADD" }, "16298": { "op": "PUSH1", "value": "0x0" }, "16300": { "op": "DUP2" }, "16301": { "op": "MSTORE" }, "16302": { "op": "PUSH1", "value": "0x20" }, "16304": { "op": "ADD" }, "16305": { "op": "PUSH1", "value": "0x0" }, "16307": { "op": "DUP2" }, "16308": { "op": "MSTORE" }, "16309": { "op": "POP" }, "16310": { "op": "SWAP1" }, "16311": { "jump": "o", "op": "JUMP" }, "16312": { "op": "JUMPDEST" }, "16313": { "op": "PUSH1", "value": "0x40" }, "16315": { "op": "MLOAD" }, "16316": { "op": "DUP1" }, "16317": { "op": "PUSH1", "value": "0xC0" }, "16319": { "op": "ADD" }, "16320": { "op": "PUSH1", "value": "0x40" }, "16322": { "op": "MSTORE" }, "16323": { "op": "DUP1" }, "16324": { "op": "PUSH1", "value": "0x0" }, "16326": { "op": "DUP2" }, "16327": { "op": "MSTORE" }, "16328": { "op": "PUSH1", "value": "0x20" }, "16330": { "op": "ADD" }, "16331": { "op": "PUSH1", "value": "0x0" }, "16333": { "op": "DUP2" }, "16334": { "op": "MSTORE" }, "16335": { "op": "PUSH1", "value": "0x20" }, "16337": { "op": "ADD" }, "16338": { "op": "PUSH1", "value": "0x0" }, "16340": { "op": "DUP2" }, "16341": { "op": "MSTORE" }, "16342": { "op": "PUSH1", "value": "0x20" }, "16344": { "op": "ADD" }, "16345": { "op": "PUSH1", "value": "0x0" }, "16347": { "op": "DUP2" }, "16348": { "op": "MSTORE" }, "16349": { "op": "PUSH1", "value": "0x20" }, "16351": { "op": "ADD" }, "16352": { "op": "PUSH1", "value": "0x0" }, "16354": { "op": "DUP2" }, "16355": { "op": "MSTORE" }, "16356": { "op": "PUSH1", "value": "0x20" }, "16358": { "op": "ADD" }, "16359": { "op": "PUSH1", "value": "0x0" }, "16361": { "op": "PUSH1", "value": "0x3" }, "16363": { "op": "DUP2" }, "16364": { "op": "GT" }, "16365": { "op": "ISZERO" }, "16366": { "op": "PUSH2", "value": "0x3FF3" }, "16369": { "op": "JUMPI" }, "16370": { "op": "INVALID" }, "16371": { "op": "JUMPDEST" }, "16372": { "op": "SWAP1" }, "16373": { "op": "MSTORE" }, "16374": { "op": "SWAP1" }, "16375": { "jump": "o", "op": "JUMP" }, "16376": { "op": "JUMPDEST" }, "16377": { "op": "PUSH1", "value": "0x40" }, "16379": { "op": "MLOAD" }, "16380": { "op": "DUP1" }, "16381": { "op": "PUSH1", "value": "0x60" }, "16383": { "op": "ADD" }, "16384": { "op": "PUSH1", "value": "0x40" }, "16386": { "op": "MSTORE" }, "16387": { "op": "DUP1" }, "16388": { "op": "PUSH1", "value": "0x0" }, "16390": { "op": "PUSH1", "value": "0x1" }, "16392": { "op": "PUSH1", "value": "0x1" }, "16394": { "op": "PUSH1", "value": "0xA0" }, "16396": { "op": "SHL" }, "16397": { "op": "SUB" }, "16398": { "op": "AND" }, "16399": { "op": "DUP2" }, "16400": { "op": "MSTORE" }, "16401": { "op": "PUSH1", "value": "0x20" }, "16403": { "op": "ADD" }, "16404": { "op": "PUSH1", "value": "0x0" }, "16406": { "op": "DUP2" }, "16407": { "op": "MSTORE" }, "16408": { "op": "PUSH1", "value": "0x20" }, "16410": { "op": "ADD" }, "16411": { "op": "PUSH1", "value": "0x0" }, "16413": { "op": "DUP2" }, "16414": { "op": "MSTORE" }, "16415": { "op": "POP" }, "16416": { "op": "SWAP1" }, "16417": { "jump": "o", "op": "JUMP" }, "16418": { "op": "JUMPDEST" }, "16419": { "op": "PUSH1", "value": "0x40" }, "16421": { "op": "DUP1" }, "16422": { "op": "MLOAD" }, "16423": { "op": "PUSH1", "value": "0xA0" }, "16425": { "op": "DUP2" }, "16426": { "op": "ADD" }, "16427": { "op": "DUP3" }, "16428": { "op": "MSTORE" }, "16429": { "op": "PUSH1", "value": "0x0" }, "16431": { "op": "DUP1" }, "16432": { "op": "DUP3" }, "16433": { "op": "MSTORE" }, "16434": { "op": "PUSH1", "value": "0x20" }, "16436": { "op": "DUP3" }, "16437": { "op": "ADD" }, "16438": { "op": "DUP2" }, "16439": { "op": "SWAP1" }, "16440": { "op": "MSTORE" }, "16441": { "op": "SWAP2" }, "16442": { "op": "DUP2" }, "16443": { "op": "ADD" }, "16444": { "op": "DUP3" }, "16445": { "op": "SWAP1" }, "16446": { "op": "MSTORE" }, "16447": { "op": "SWAP1" }, "16448": { "op": "PUSH1", "value": "0x60" }, "16450": { "op": "DUP3" }, "16451": { "op": "ADD" }, "16452": { "op": "SWAP1" }, "16453": { "op": "DUP2" }, "16454": { "op": "MSTORE" }, "16455": { "op": "PUSH1", "value": "0x20" }, "16457": { "op": "ADD" }, "16458": { "op": "PUSH1", "value": "0x0" }, "16460": { "op": "DUP2" }, "16461": { "op": "MSTORE" }, "16462": { "op": "POP" }, "16463": { "op": "SWAP1" }, "16464": { "jump": "o", "op": "JUMP" }, "16465": { "op": "JUMPDEST" }, "16466": { "op": "PUSH1", "value": "0x40" }, "16468": { "op": "MLOAD" }, "16469": { "op": "DUP1" }, "16470": { "op": "PUSH1", "value": "0x20" }, "16472": { "op": "ADD" }, "16473": { "op": "PUSH1", "value": "0x40" }, "16475": { "op": "MSTORE" }, "16476": { "op": "DUP1" }, "16477": { "op": "PUSH1", "value": "0x1" }, "16479": { "op": "SWAP1" }, "16480": { "op": "PUSH1", "value": "0x20" }, "16482": { "op": "DUP3" }, "16483": { "op": "MUL" }, "16484": { "op": "DUP1" }, "16485": { "op": "CALLDATASIZE" }, "16486": { "op": "DUP4" }, "16487": { "op": "CALLDATACOPY" }, "16488": { "op": "POP" }, "16489": { "op": "SWAP2" }, "16490": { "op": "SWAP3" }, "16491": { "op": "SWAP2" }, "16492": { "op": "POP" }, "16493": { "op": "POP" }, "16494": { "jump": "o", "op": "JUMP" }, "16495": { "op": "JUMPDEST" }, "16496": { "op": "DUP1" }, "16497": { "op": "CALLDATALOAD" }, "16498": { "op": "PUSH1", "value": "0x1" }, "16500": { "op": "PUSH1", "value": "0x1" }, "16502": { "op": "PUSH1", "value": "0xA0" }, "16504": { "op": "SHL" }, "16505": { "op": "SUB" }, "16506": { "op": "DUP2" }, "16507": { "op": "AND" }, "16508": { "op": "DUP2" }, "16509": { "op": "EQ" }, "16510": { "op": "PUSH2", "value": "0xBE2" }, "16513": { "op": "JUMPI" }, "16514": { "op": "PUSH1", "value": "0x0" }, "16516": { "op": "DUP1" }, "16517": { "op": "REVERT" }, "16518": { "op": "JUMPDEST" }, "16519": { "op": "PUSH1", "value": "0x0" }, "16521": { "op": "DUP1" }, "16522": { "op": "DUP4" }, "16523": { "op": "PUSH1", "value": "0x1F" }, "16525": { "op": "DUP5" }, "16526": { "op": "ADD" }, "16527": { "op": "SLT" }, "16528": { "op": "PUSH2", "value": "0x4097" }, "16531": { "op": "JUMPI" }, "16532": { "op": "DUP1" }, "16533": { "op": "DUP2" }, "16534": { "op": "REVERT" }, "16535": { "op": "JUMPDEST" }, "16536": { "op": "POP" }, "16537": { "op": "DUP2" }, "16538": { "op": "CALLDATALOAD" }, "16539": { "op": "PUSH1", "value": "0x1" }, "16541": { "op": "PUSH1", "value": "0x1" }, "16543": { "op": "PUSH1", "value": "0x40" }, "16545": { "op": "SHL" }, "16546": { "op": "SUB" }, "16547": { "op": "DUP2" }, "16548": { "op": "GT" }, "16549": { "op": "ISZERO" }, "16550": { "op": "PUSH2", "value": "0x40AD" }, "16553": { "op": "JUMPI" }, "16554": { "op": "DUP2" }, "16555": { "op": "DUP3" }, "16556": { "op": "REVERT" }, "16557": { "op": "JUMPDEST" }, "16558": { "op": "PUSH1", "value": "0x20" }, "16560": { "op": "DUP4" }, "16561": { "op": "ADD" }, "16562": { "op": "SWAP2" }, "16563": { "op": "POP" }, "16564": { "op": "DUP4" }, "16565": { "op": "PUSH1", "value": "0x20" }, "16567": { "op": "DUP1" }, "16568": { "op": "DUP4" }, "16569": { "op": "MUL" }, "16570": { "op": "DUP6" }, "16571": { "op": "ADD" }, "16572": { "op": "ADD" }, "16573": { "op": "GT" }, "16574": { "op": "ISZERO" }, "16575": { "op": "PUSH2", "value": "0x40C7" }, "16578": { "op": "JUMPI" }, "16579": { "op": "PUSH1", "value": "0x0" }, "16581": { "op": "DUP1" }, "16582": { "op": "REVERT" }, "16583": { "op": "JUMPDEST" }, "16584": { "op": "SWAP3" }, "16585": { "op": "POP" }, "16586": { "op": "SWAP3" }, "16587": { "op": "SWAP1" }, "16588": { "op": "POP" }, "16589": { "jump": "o", "op": "JUMP" }, "16590": { "op": "JUMPDEST" }, "16591": { "op": "PUSH1", "value": "0x0" }, "16593": { "op": "DUP3" }, "16594": { "op": "PUSH1", "value": "0x1F" }, "16596": { "op": "DUP4" }, "16597": { "op": "ADD" }, "16598": { "op": "SLT" }, "16599": { "op": "PUSH2", "value": "0x40DE" }, "16602": { "op": "JUMPI" }, "16603": { "op": "DUP1" }, "16604": { "op": "DUP2" }, "16605": { "op": "REVERT" }, "16606": { "op": "JUMPDEST" }, "16607": { "op": "DUP2" }, "16608": { "op": "MLOAD" }, "16609": { "op": "PUSH1", "value": "0x20" }, "16611": { "op": "PUSH1", "value": "0x1" }, "16613": { "op": "PUSH1", "value": "0x1" }, "16615": { "op": "PUSH1", "value": "0x40" }, "16617": { "op": "SHL" }, "16618": { "op": "SUB" }, "16619": { "op": "DUP1" }, "16620": { "op": "DUP4" }, "16621": { "op": "GT" }, "16622": { "op": "ISZERO" }, "16623": { "op": "PUSH2", "value": "0x40F4" }, "16626": { "op": "JUMPI" }, "16627": { "op": "INVALID" }, "16628": { "op": "JUMPDEST" }, "16629": { "op": "PUSH2", "value": "0x4101" }, "16632": { "op": "DUP3" }, "16633": { "op": "DUP4" }, "16634": { "op": "DUP6" }, "16635": { "op": "MUL" }, "16636": { "op": "ADD" }, "16637": { "op": "PUSH2", "value": "0x4B51" }, "16640": { "jump": "i", "op": "JUMP" }, "16641": { "op": "JUMPDEST" }, "16642": { "op": "DUP4" }, "16643": { "op": "DUP2" }, "16644": { "op": "MSTORE" }, "16645": { "op": "DUP3" }, "16646": { "op": "DUP2" }, "16647": { "op": "ADD" }, "16648": { "op": "SWAP1" }, "16649": { "op": "DUP7" }, "16650": { "op": "DUP5" }, "16651": { "op": "ADD" }, "16652": { "op": "PUSH1", "value": "0xC0" }, "16654": { "op": "DUP1" }, "16655": { "op": "DUP8" }, "16656": { "op": "MUL" }, "16657": { "op": "DUP10" }, "16658": { "op": "ADD" }, "16659": { "op": "DUP7" }, "16660": { "op": "ADD" }, "16661": { "op": "DUP11" }, "16662": { "op": "LT" }, "16663": { "op": "ISZERO" }, "16664": { "op": "PUSH2", "value": "0x411F" }, "16667": { "op": "JUMPI" }, "16668": { "op": "DUP8" }, "16669": { "op": "DUP9" }, "16670": { "op": "REVERT" }, "16671": { "op": "JUMPDEST" }, "16672": { "op": "DUP8" }, "16673": { "op": "JUMPDEST" }, "16674": { "op": "DUP8" }, "16675": { "op": "DUP2" }, "16676": { "op": "LT" }, "16677": { "op": "ISZERO" }, "16678": { "op": "PUSH2", "value": "0x41A0" }, "16681": { "op": "JUMPI" }, "16682": { "op": "DUP2" }, "16683": { "op": "DUP4" }, "16684": { "op": "DUP13" }, "16685": { "op": "SUB" }, "16686": { "op": "SLT" }, "16687": { "op": "ISZERO" }, "16688": { "op": "PUSH2", "value": "0x4137" }, "16691": { "op": "JUMPI" }, "16692": { "op": "DUP9" }, "16693": { "op": "DUP10" }, "16694": { "op": "REVERT" }, "16695": { "op": "JUMPDEST" }, "16696": { "op": "PUSH1", "value": "0x40" }, "16698": { "op": "DUP1" }, "16699": { "op": "MLOAD" }, "16700": { "op": "DUP4" }, "16701": { "op": "DUP2" }, "16702": { "op": "ADD" }, "16703": { "op": "DUP2" }, "16704": { "op": "DUP2" }, "16705": { "op": "LT" }, "16706": { "op": "DUP10" }, "16707": { "op": "DUP3" }, "16708": { "op": "GT" }, "16709": { "op": "OR" }, "16710": { "op": "ISZERO" }, "16711": { "op": "PUSH2", "value": "0x414C" }, "16714": { "op": "JUMPI" }, "16715": { "op": "INVALID" }, "16716": { "op": "JUMPDEST" }, "16717": { "op": "DUP3" }, "16718": { "op": "MSTORE" }, "16719": { "op": "DUP5" }, "16720": { "op": "MLOAD" }, "16721": { "op": "DUP2" }, "16722": { "op": "MSTORE" }, "16723": { "op": "DUP9" }, "16724": { "op": "DUP6" }, "16725": { "op": "ADD" }, "16726": { "op": "MLOAD" }, "16727": { "op": "DUP10" }, "16728": { "op": "DUP3" }, "16729": { "op": "ADD" }, "16730": { "op": "MSTORE" }, "16731": { "op": "DUP5" }, "16732": { "op": "DUP3" }, "16733": { "op": "ADD" }, "16734": { "op": "MLOAD" }, "16735": { "op": "SWAP2" }, "16736": { "op": "DUP2" }, "16737": { "op": "ADD" }, "16738": { "op": "SWAP2" }, "16739": { "op": "SWAP1" }, "16740": { "op": "SWAP2" }, "16741": { "op": "MSTORE" }, "16742": { "op": "PUSH1", "value": "0x60" }, "16744": { "op": "DUP1" }, "16745": { "op": "DUP6" }, "16746": { "op": "ADD" }, "16747": { "op": "MLOAD" }, "16748": { "op": "SWAP1" }, "16749": { "op": "DUP3" }, "16750": { "op": "ADD" }, "16751": { "op": "MSTORE" }, "16752": { "op": "PUSH1", "value": "0x80" }, "16754": { "op": "DUP1" }, "16755": { "op": "DUP6" }, "16756": { "op": "ADD" }, "16757": { "op": "MLOAD" }, "16758": { "op": "SWAP1" }, "16759": { "op": "DUP3" }, "16760": { "op": "ADD" }, "16761": { "op": "MSTORE" }, "16762": { "op": "PUSH1", "value": "0xA0" }, "16764": { "op": "SWAP1" }, "16765": { "op": "PUSH2", "value": "0x4187" }, "16768": { "op": "DUP3" }, "16769": { "op": "DUP7" }, "16770": { "op": "ADD" }, "16771": { "op": "PUSH2", "value": "0x41C7" }, "16774": { "jump": "i", "op": "JUMP" }, "16775": { "op": "JUMPDEST" }, "16776": { "op": "SWAP2" }, "16777": { "op": "DUP2" }, "16778": { "op": "ADD" }, "16779": { "op": "SWAP2" }, "16780": { "op": "SWAP1" }, "16781": { "op": "SWAP2" }, "16782": { "op": "MSTORE" }, "16783": { "op": "DUP6" }, "16784": { "op": "MSTORE" }, "16785": { "op": "SWAP4" }, "16786": { "op": "DUP7" }, "16787": { "op": "ADD" }, "16788": { "op": "SWAP4" }, "16789": { "op": "SWAP2" }, "16790": { "op": "DUP2" }, "16791": { "op": "ADD" }, "16792": { "op": "SWAP2" }, "16793": { "op": "PUSH1", "value": "0x1" }, "16795": { "op": "ADD" }, "16796": { "op": "PUSH2", "value": "0x4121" }, "16799": { "op": "JUMP" }, "16800": { "op": "JUMPDEST" }, "16801": { "op": "POP" }, "16802": { "op": "SWAP2" }, "16803": { "op": "SWAP10" }, "16804": { "op": "SWAP9" }, "16805": { "op": "POP" }, "16806": { "op": "POP" }, "16807": { "op": "POP" }, "16808": { "op": "POP" }, "16809": { "op": "POP" }, "16810": { "op": "POP" }, "16811": { "op": "POP" }, "16812": { "op": "POP" }, "16813": { "op": "POP" }, "16814": { "jump": "o", "op": "JUMP" }, "16815": { "op": "JUMPDEST" }, "16816": { "op": "DUP1" }, "16817": { "op": "MLOAD" }, "16818": { "op": "PUSH1", "value": "0x1" }, "16820": { "op": "PUSH1", "value": "0x1" }, "16822": { "op": "PUSH1", "value": "0x70" }, "16824": { "op": "SHL" }, "16825": { "op": "SUB" }, "16826": { "op": "NOT" }, "16827": { "op": "DUP2" }, "16828": { "op": "AND" }, "16829": { "op": "DUP2" }, "16830": { "op": "EQ" }, "16831": { "op": "PUSH2", "value": "0xBE2" }, "16834": { "op": "JUMPI" }, "16835": { "op": "PUSH1", "value": "0x0" }, "16837": { "op": "DUP1" }, "16838": { "op": "REVERT" }, "16839": { "op": "JUMPDEST" }, "16840": { "op": "DUP1" }, "16841": { "op": "MLOAD" }, "16842": { "op": "PUSH1", "value": "0x4" }, "16844": { "op": "DUP2" }, "16845": { "op": "LT" }, "16846": { "op": "PUSH2", "value": "0xBE2" }, "16849": { "op": "JUMPI" }, "16850": { "op": "PUSH1", "value": "0x0" }, "16852": { "op": "DUP1" }, "16853": { "op": "REVERT" }, "16854": { "op": "JUMPDEST" }, "16855": { "op": "DUP1" }, "16856": { "op": "MLOAD" }, "16857": { "op": "PUSH2", "value": "0xBE2" }, "16860": { "op": "DUP2" }, "16861": { "op": "PUSH2", "value": "0x4B85" }, "16864": { "jump": "i", "op": "JUMP" }, "16865": { "op": "JUMPDEST" }, "16866": { "op": "DUP1" }, "16867": { "op": "MLOAD" }, "16868": { "op": "PUSH1", "value": "0xFF" }, "16870": { "op": "DUP2" }, "16871": { "op": "AND" }, "16872": { "op": "DUP2" }, "16873": { "op": "EQ" }, "16874": { "op": "PUSH2", "value": "0xBE2" }, "16877": { "op": "JUMPI" }, "16878": { "op": "PUSH1", "value": "0x0" }, "16880": { "op": "DUP1" }, "16881": { "op": "REVERT" }, "16882": { "op": "JUMPDEST" }, "16883": { "op": "PUSH1", "value": "0x0" }, "16885": { "op": "DUP1" }, "16886": { "op": "PUSH1", "value": "0x0" }, "16888": { "op": "PUSH1", "value": "0x40" }, "16890": { "op": "DUP5" }, "16891": { "op": "DUP7" }, "16892": { "op": "SUB" }, "16893": { "op": "SLT" }, "16894": { "op": "ISZERO" }, "16895": { "op": "PUSH2", "value": "0x4206" }, "16898": { "op": "JUMPI" }, "16899": { "op": "DUP3" }, "16900": { "op": "DUP4" }, "16901": { "op": "REVERT" }, "16902": { "op": "JUMPDEST" }, "16903": { "op": "PUSH2", "value": "0x420F" }, "16906": { "op": "DUP5" }, "16907": { "op": "PUSH2", "value": "0x406F" }, "16910": { "jump": "i", "op": "JUMP" }, "16911": { "op": "JUMPDEST" }, "16912": { "op": "SWAP3" }, "16913": { "op": "POP" }, "16914": { "op": "PUSH1", "value": "0x20" }, "16916": { "op": "DUP5" }, "16917": { "op": "ADD" }, "16918": { "op": "CALLDATALOAD" }, "16919": { "op": "PUSH1", "value": "0x1" }, "16921": { "op": "PUSH1", "value": "0x1" }, "16923": { "op": "PUSH1", "value": "0x40" }, "16925": { "op": "SHL" }, "16926": { "op": "SUB" }, "16927": { "op": "DUP2" }, "16928": { "op": "GT" }, "16929": { "op": "ISZERO" }, "16930": { "op": "PUSH2", "value": "0x4229" }, "16933": { "op": "JUMPI" }, "16934": { "op": "DUP3" }, "16935": { "op": "DUP4" }, "16936": { "op": "REVERT" }, "16937": { "op": "JUMPDEST" }, "16938": { "op": "PUSH2", "value": "0x4235" }, "16941": { "op": "DUP7" }, "16942": { "op": "DUP3" }, "16943": { "op": "DUP8" }, "16944": { "op": "ADD" }, "16945": { "op": "PUSH2", "value": "0x4086" }, "16948": { "jump": "i", "op": "JUMP" }, "16949": { "op": "JUMPDEST" }, "16950": { "op": "SWAP5" }, "16951": { "op": "SWAP8" }, "16952": { "op": "SWAP1" }, "16953": { "op": "SWAP7" }, "16954": { "op": "POP" }, "16955": { "op": "SWAP4" }, "16956": { "op": "SWAP5" }, "16957": { "op": "POP" }, "16958": { "op": "POP" }, "16959": { "op": "POP" }, "16960": { "op": "POP" }, "16961": { "jump": "o", "op": "JUMP" }, "16962": { "op": "JUMPDEST" }, "16963": { "op": "PUSH1", "value": "0x0" }, "16965": { "op": "DUP1" }, "16966": { "op": "PUSH1", "value": "0x0" }, "16968": { "op": "DUP1" }, "16969": { "op": "PUSH1", "value": "0x0" }, "16971": { "op": "PUSH1", "value": "0x60" }, "16973": { "op": "DUP7" }, "16974": { "op": "DUP9" }, "16975": { "op": "SUB" }, "16976": { "op": "SLT" }, "16977": { "op": "ISZERO" }, "16978": { "op": "PUSH2", "value": "0x4259" }, "16981": { "op": "JUMPI" }, "16982": { "op": "DUP1" }, "16983": { "op": "DUP2" }, "16984": { "op": "REVERT" }, "16985": { "op": "JUMPDEST" }, "16986": { "op": "PUSH2", "value": "0x4262" }, "16989": { "op": "DUP7" }, "16990": { "op": "PUSH2", "value": "0x406F" }, "16993": { "jump": "i", "op": "JUMP" }, "16994": { "op": "JUMPDEST" }, "16995": { "op": "SWAP5" }, "16996": { "op": "POP" }, "16997": { "op": "PUSH1", "value": "0x20" }, "16999": { "op": "DUP7" }, "17000": { "op": "ADD" }, "17001": { "op": "CALLDATALOAD" }, "17002": { "op": "PUSH1", "value": "0x1" }, "17004": { "op": "PUSH1", "value": "0x1" }, "17006": { "op": "PUSH1", "value": "0x40" }, "17008": { "op": "SHL" }, "17009": { "op": "SUB" }, "17010": { "op": "DUP1" }, "17011": { "op": "DUP3" }, "17012": { "op": "GT" }, "17013": { "op": "ISZERO" }, "17014": { "op": "PUSH2", "value": "0x427D" }, "17017": { "op": "JUMPI" }, "17018": { "op": "DUP3" }, "17019": { "op": "DUP4" }, "17020": { "op": "REVERT" }, "17021": { "op": "JUMPDEST" }, "17022": { "op": "PUSH2", "value": "0x4289" }, "17025": { "op": "DUP10" }, "17026": { "op": "DUP4" }, "17027": { "op": "DUP11" }, "17028": { "op": "ADD" }, "17029": { "op": "PUSH2", "value": "0x4086" }, "17032": { "jump": "i", "op": "JUMP" }, "17033": { "op": "JUMPDEST" }, "17034": { "op": "SWAP1" }, "17035": { "op": "SWAP7" }, "17036": { "op": "POP" }, "17037": { "op": "SWAP5" }, "17038": { "op": "POP" }, "17039": { "op": "PUSH1", "value": "0x40" }, "17041": { "op": "DUP9" }, "17042": { "op": "ADD" }, "17043": { "op": "CALLDATALOAD" }, "17044": { "op": "SWAP2" }, "17045": { "op": "POP" }, "17046": { "op": "DUP1" }, "17047": { "op": "DUP3" }, "17048": { "op": "GT" }, "17049": { "op": "ISZERO" }, "17050": { "op": "PUSH2", "value": "0x42A1" }, "17053": { "op": "JUMPI" }, "17054": { "op": "DUP3" }, "17055": { "op": "DUP4" }, "17056": { "op": "REVERT" }, "17057": { "op": "JUMPDEST" }, "17058": { "op": "DUP2" }, "17059": { "op": "DUP9" }, "17060": { "op": "ADD" }, "17061": { "op": "SWAP2" }, "17062": { "op": "POP" }, "17063": { "op": "DUP9" }, "17064": { "op": "PUSH1", "value": "0x1F" }, "17066": { "op": "DUP4" }, "17067": { "op": "ADD" }, "17068": { "op": "SLT" }, "17069": { "op": "PUSH2", "value": "0x42B4" }, "17072": { "op": "JUMPI" }, "17073": { "op": "DUP3" }, "17074": { "op": "DUP4" }, "17075": { "op": "REVERT" }, "17076": { "op": "JUMPDEST" }, "17077": { "op": "DUP2" }, "17078": { "op": "CALLDATALOAD" }, "17079": { "op": "DUP2" }, "17080": { "op": "DUP2" }, "17081": { "op": "GT" }, "17082": { "op": "ISZERO" }, "17083": { "op": "PUSH2", "value": "0x42C2" }, "17086": { "op": "JUMPI" }, "17087": { "op": "DUP4" }, "17088": { "op": "DUP5" }, "17089": { "op": "REVERT" }, "17090": { "op": "JUMPDEST" }, "17091": { "op": "DUP10" }, "17092": { "op": "PUSH1", "value": "0x20" }, "17094": { "op": "DUP3" }, "17095": { "op": "DUP6" }, "17096": { "op": "ADD" }, "17097": { "op": "ADD" }, "17098": { "op": "GT" }, "17099": { "op": "ISZERO" }, "17100": { "op": "PUSH2", "value": "0x42D3" }, "17103": { "op": "JUMPI" }, "17104": { "op": "DUP4" }, "17105": { "op": "DUP5" }, "17106": { "op": "REVERT" }, "17107": { "op": "JUMPDEST" }, "17108": { "op": "SWAP7" }, "17109": { "op": "SWAP10" }, "17110": { "op": "SWAP6" }, "17111": { "op": "SWAP9" }, "17112": { "op": "POP" }, "17113": { "op": "SWAP4" }, "17114": { "op": "SWAP7" }, "17115": { "op": "POP" }, "17116": { "op": "PUSH1", "value": "0x20" }, "17118": { "op": "ADD" }, "17119": { "op": "SWAP5" }, "17120": { "op": "SWAP4" }, "17121": { "op": "SWAP3" }, "17122": { "op": "POP" }, "17123": { "op": "POP" }, "17124": { "op": "POP" }, "17125": { "jump": "o", "op": "JUMP" }, "17126": { "op": "JUMPDEST" }, "17127": { "op": "PUSH1", "value": "0x0" }, "17129": { "op": "DUP1" }, "17130": { "op": "PUSH1", "value": "0x0" }, "17132": { "op": "PUSH1", "value": "0x40" }, "17134": { "op": "DUP5" }, "17135": { "op": "DUP7" }, "17136": { "op": "SUB" }, "17137": { "op": "SLT" }, "17138": { "op": "ISZERO" }, "17139": { "op": "PUSH2", "value": "0x42FA" }, "17142": { "op": "JUMPI" }, "17143": { "op": "DUP3" }, "17144": { "op": "DUP4" }, "17145": { "op": "REVERT" }, "17146": { "op": "JUMPDEST" }, "17147": { "op": "PUSH2", "value": "0x4303" }, "17150": { "op": "DUP5" }, "17151": { "op": "PUSH2", "value": "0x406F" }, "17154": { "jump": "i", "op": "JUMP" }, "17155": { "op": "JUMPDEST" }, "17156": { "op": "SWAP3" }, "17157": { "op": "POP" }, "17158": { "op": "PUSH1", "value": "0x20" }, "17160": { "op": "DUP5" }, "17161": { "op": "ADD" }, "17162": { "op": "CALLDATALOAD" }, "17163": { "op": "PUSH1", "value": "0x1" }, "17165": { "op": "PUSH1", "value": "0x1" }, "17167": { "op": "PUSH1", "value": "0x40" }, "17169": { "op": "SHL" }, "17170": { "op": "SUB" }, "17171": { "op": "DUP1" }, "17172": { "op": "DUP3" }, "17173": { "op": "GT" }, "17174": { "op": "ISZERO" }, "17175": { "op": "PUSH2", "value": "0x431E" }, "17178": { "op": "JUMPI" }, "17179": { "op": "DUP4" }, "17180": { "op": "DUP5" }, "17181": { "op": "REVERT" }, "17182": { "op": "JUMPDEST" }, "17183": { "op": "DUP2" }, "17184": { "op": "DUP7" }, "17185": { "op": "ADD" }, "17186": { "op": "SWAP2" }, "17187": { "op": "POP" }, "17188": { "op": "DUP7" }, "17189": { "op": "PUSH1", "value": "0x1F" }, "17191": { "op": "DUP4" }, "17192": { "op": "ADD" }, "17193": { "op": "SLT" }, "17194": { "op": "PUSH2", "value": "0x4331" }, "17197": { "op": "JUMPI" }, "17198": { "op": "DUP4" }, "17199": { "op": "DUP5" }, "17200": { "op": "REVERT" }, "17201": { "op": "JUMPDEST" }, "17202": { "op": "DUP2" }, "17203": { "op": "CALLDATALOAD" }, "17204": { "op": "DUP2" }, "17205": { "op": "DUP2" }, "17206": { "op": "GT" }, "17207": { "op": "ISZERO" }, "17208": { "op": "PUSH2", "value": "0x433F" }, "17211": { "op": "JUMPI" }, "17212": { "op": "DUP5" }, "17213": { "op": "DUP6" }, "17214": { "op": "REVERT" }, "17215": { "op": "JUMPDEST" }, "17216": { "op": "DUP8" }, "17217": { "op": "PUSH1", "value": "0x20" }, "17219": { "op": "PUSH1", "value": "0xC0" }, "17221": { "op": "DUP4" }, "17222": { "op": "MUL" }, "17223": { "op": "DUP6" }, "17224": { "op": "ADD" }, "17225": { "op": "ADD" }, "17226": { "op": "GT" }, "17227": { "op": "ISZERO" }, "17228": { "op": "PUSH2", "value": "0x4353" }, "17231": { "op": "JUMPI" }, "17232": { "op": "DUP5" }, "17233": { "op": "DUP6" }, "17234": { "op": "REVERT" }, "17235": { "op": "JUMPDEST" }, "17236": { "op": "PUSH1", "value": "0x20" }, "17238": { "op": "DUP4" }, "17239": { "op": "ADD" }, "17240": { "op": "SWAP5" }, "17241": { "op": "POP" }, "17242": { "op": "DUP1" }, "17243": { "op": "SWAP4" }, "17244": { "op": "POP" }, "17245": { "op": "POP" }, "17246": { "op": "POP" }, "17247": { "op": "POP" }, "17248": { "op": "SWAP3" }, "17249": { "op": "POP" }, "17250": { "op": "SWAP3" }, "17251": { "op": "POP" }, "17252": { "op": "SWAP3" }, "17253": { "jump": "o", "op": "JUMP" }, "17254": { "op": "JUMPDEST" }, "17255": { "op": "PUSH1", "value": "0x0" }, "17257": { "op": "DUP1" }, "17258": { "op": "PUSH1", "value": "0x0" }, "17260": { "op": "PUSH1", "value": "0x40" }, "17262": { "op": "DUP5" }, "17263": { "op": "DUP7" }, "17264": { "op": "SUB" }, "17265": { "op": "SLT" }, "17266": { "op": "ISZERO" }, "17267": { "op": "PUSH2", "value": "0x437A" }, "17270": { "op": "JUMPI" }, "17271": { "op": "DUP1" }, "17272": { "op": "DUP2" }, "17273": { "op": "REVERT" }, "17274": { "op": "JUMPDEST" }, "17275": { "op": "PUSH2", "value": "0x4383" }, "17278": { "op": "DUP5" }, "17279": { "op": "PUSH2", "value": "0x406F" }, "17282": { "jump": "i", "op": "JUMP" }, "17283": { "op": "JUMPDEST" }, "17284": { "op": "SWAP3" }, "17285": { "op": "POP" }, "17286": { "op": "PUSH1", "value": "0x20" }, "17288": { "op": "DUP5" }, "17289": { "op": "ADD" }, "17290": { "op": "CALLDATALOAD" }, "17291": { "op": "PUSH1", "value": "0x1" }, "17293": { "op": "PUSH1", "value": "0x1" }, "17295": { "op": "PUSH1", "value": "0x40" }, "17297": { "op": "SHL" }, "17298": { "op": "SUB" }, "17299": { "op": "DUP2" }, "17300": { "op": "GT" }, "17301": { "op": "ISZERO" }, "17302": { "op": "PUSH2", "value": "0x4229" }, "17305": { "op": "JUMPI" }, "17306": { "op": "DUP2" }, "17307": { "op": "DUP3" }, "17308": { "op": "REVERT" }, "17309": { "op": "JUMPDEST" }, "17310": { "op": "PUSH1", "value": "0x0" }, "17312": { "op": "PUSH1", "value": "0x20" }, "17314": { "op": "DUP3" }, "17315": { "op": "DUP5" }, "17316": { "op": "SUB" }, "17317": { "op": "SLT" }, "17318": { "op": "ISZERO" }, "17319": { "op": "PUSH2", "value": "0x43AE" }, "17322": { "op": "JUMPI" }, "17323": { "op": "DUP1" }, "17324": { "op": "DUP2" }, "17325": { "op": "REVERT" }, "17326": { "op": "JUMPDEST" }, "17327": { "op": "DUP2" }, "17328": { "op": "CALLDATALOAD" }, "17329": { "op": "PUSH2", "value": "0xAA3" }, "17332": { "op": "DUP2" }, "17333": { "op": "PUSH2", "value": "0x4B74" }, "17336": { "jump": "i", "op": "JUMP" }, "17337": { "op": "JUMPDEST" }, "17338": { "op": "PUSH1", "value": "0x0" }, "17340": { "op": "PUSH1", "value": "0x20" }, "17342": { "op": "DUP3" }, "17343": { "op": "DUP5" }, "17344": { "op": "SUB" }, "17345": { "op": "SLT" }, "17346": { "op": "ISZERO" }, "17347": { "op": "PUSH2", "value": "0x43CA" }, "17350": { "op": "JUMPI" }, "17351": { "op": "DUP1" }, "17352": { "op": "DUP2" }, "17353": { "op": "REVERT" }, "17354": { "op": "JUMPDEST" }, "17355": { "op": "DUP2" }, "17356": { "op": "CALLDATALOAD" }, "17357": { "op": "PUSH1", "value": "0x7" }, "17359": { "op": "DUP2" }, "17360": { "op": "LT" }, "17361": { "op": "PUSH2", "value": "0xAA3" }, "17364": { "op": "JUMPI" }, "17365": { "op": "DUP2" }, "17366": { "op": "DUP3" }, "17367": { "op": "REVERT" }, "17368": { "op": "JUMPDEST" }, "17369": { "op": "PUSH1", "value": "0x0" }, "17371": { "op": "PUSH1", "value": "0x20" }, "17373": { "op": "DUP3" }, "17374": { "op": "DUP5" }, "17375": { "op": "SUB" }, "17376": { "op": "SLT" }, "17377": { "op": "ISZERO" }, "17378": { "op": "PUSH2", "value": "0x43E9" }, "17381": { "op": "JUMPI" }, "17382": { "op": "DUP1" }, "17383": { "op": "DUP2" }, "17384": { "op": "REVERT" }, "17385": { "op": "JUMPDEST" }, "17386": { "op": "POP" }, "17387": { "op": "MLOAD" }, "17388": { "op": "SWAP2" }, "17389": { "op": "SWAP1" }, "17390": { "op": "POP" }, "17391": { "jump": "o", "op": "JUMP" }, "17392": { "op": "JUMPDEST" }, "17393": { "op": "PUSH1", "value": "0x0" }, "17395": { "op": "DUP1" }, "17396": { "op": "PUSH1", "value": "0x40" }, "17398": { "op": "DUP4" }, "17399": { "op": "DUP6" }, "17400": { "op": "SUB" }, "17401": { "op": "SLT" }, "17402": { "op": "ISZERO" }, "17403": { "op": "PUSH2", "value": "0x4402" }, "17406": { "op": "JUMPI" }, "17407": { "op": "DUP2" }, "17408": { "op": "DUP3" }, "17409": { "op": "REVERT" }, "17410": { "op": "JUMPDEST" }, "17411": { "op": "DUP3" }, "17412": { "op": "MLOAD" }, "17413": { "op": "SWAP2" }, "17414": { "op": "POP" }, "17415": { "op": "PUSH1", "value": "0x20" }, "17417": { "op": "DUP4" }, "17418": { "op": "ADD" }, "17419": { "op": "MLOAD" }, "17420": { "op": "PUSH2", "value": "0x4414" }, "17423": { "op": "DUP2" }, "17424": { "op": "PUSH2", "value": "0x4B74" }, "17427": { "jump": "i", "op": "JUMP" }, "17428": { "op": "JUMPDEST" }, "17429": { "op": "DUP1" }, "17430": { "op": "SWAP2" }, "17431": { "op": "POP" }, "17432": { "op": "POP" }, "17433": { "op": "SWAP3" }, "17434": { "op": "POP" }, "17435": { "op": "SWAP3" }, "17436": { "op": "SWAP1" }, "17437": { "op": "POP" }, "17438": { "jump": "o", "op": "JUMP" }, "17439": { "op": "JUMPDEST" }, "17440": { "op": "PUSH1", "value": "0x0" }, "17442": { "op": "PUSH1", "value": "0xA0" }, "17444": { "op": "DUP3" }, "17445": { "op": "DUP5" }, "17446": { "op": "SUB" }, "17447": { "op": "SLT" }, "17448": { "op": "ISZERO" }, "17449": { "op": "PUSH2", "value": "0x4430" }, "17452": { "op": "JUMPI" }, "17453": { "op": "DUP1" }, "17454": { "op": "DUP2" }, "17455": { "op": "REVERT" }, "17456": { "op": "JUMPDEST" }, "17457": { "op": "PUSH1", "value": "0x40" }, "17459": { "op": "MLOAD" }, "17460": { "op": "PUSH1", "value": "0xA0" }, "17462": { "op": "DUP2" }, "17463": { "op": "ADD" }, "17464": { "op": "DUP2" }, "17465": { "op": "DUP2" }, "17466": { "op": "LT" }, "17467": { "op": "PUSH1", "value": "0x1" }, "17469": { "op": "PUSH1", "value": "0x1" }, "17471": { "op": "PUSH1", "value": "0x40" }, "17473": { "op": "SHL" }, "17474": { "op": "SUB" }, "17475": { "op": "DUP3" }, "17476": { "op": "GT" }, "17477": { "op": "OR" }, "17478": { "op": "ISZERO" }, "17479": { "op": "PUSH2", "value": "0x444C" }, "17482": { "op": "JUMPI" }, "17483": { "op": "INVALID" }, "17484": { "op": "JUMPDEST" }, "17485": { "op": "PUSH1", "value": "0x40" }, "17487": { "op": "MSTORE" }, "17488": { "op": "DUP3" }, "17489": { "op": "MLOAD" }, "17490": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "17496": { "op": "DUP2" }, "17497": { "op": "AND" }, "17498": { "op": "DUP2" }, "17499": { "op": "EQ" }, "17500": { "op": "PUSH2", "value": "0x4463" }, "17503": { "op": "JUMPI" }, "17504": { "op": "DUP3" }, "17505": { "op": "DUP4" }, "17506": { "op": "REVERT" }, "17507": { "op": "JUMPDEST" }, "17508": { "op": "DUP2" }, "17509": { "op": "MSTORE" }, "17510": { "op": "PUSH1", "value": "0x20" }, "17512": { "op": "DUP4" }, "17513": { "op": "ADD" }, "17514": { "op": "MLOAD" }, "17515": { "op": "PUSH1", "value": "0x1" }, "17517": { "op": "PUSH1", "value": "0x1" }, "17519": { "op": "PUSH1", "value": "0xF8" }, "17521": { "op": "SHL" }, "17522": { "op": "SUB" }, "17523": { "op": "NOT" }, "17524": { "op": "DUP2" }, "17525": { "op": "AND" }, "17526": { "op": "DUP2" }, "17527": { "op": "EQ" }, "17528": { "op": "PUSH2", "value": "0x447F" }, "17531": { "op": "JUMPI" }, "17532": { "op": "DUP3" }, "17533": { "op": "DUP4" }, "17534": { "op": "REVERT" }, "17535": { "op": "JUMPDEST" }, "17536": { "op": "PUSH1", "value": "0x20" }, "17538": { "op": "DUP3" }, "17539": { "op": "ADD" }, "17540": { "op": "MSTORE" }, "17541": { "op": "PUSH2", "value": "0x4490" }, "17544": { "op": "PUSH1", "value": "0x40" }, "17546": { "op": "DUP5" }, "17547": { "op": "ADD" }, "17548": { "op": "PUSH2", "value": "0x41E1" }, "17551": { "jump": "i", "op": "JUMP" }, "17552": { "op": "JUMPDEST" }, "17553": { "op": "PUSH1", "value": "0x40" }, "17555": { "op": "DUP3" }, "17556": { "op": "ADD" }, "17557": { "op": "MSTORE" }, "17558": { "op": "PUSH2", "value": "0x44A1" }, "17561": { "op": "PUSH1", "value": "0x60" }, "17563": { "op": "DUP5" }, "17564": { "op": "ADD" }, "17565": { "op": "PUSH2", "value": "0x41D6" }, "17568": { "jump": "i", "op": "JUMP" }, "17569": { "op": "JUMPDEST" }, "17570": { "op": "PUSH1", "value": "0x60" }, "17572": { "op": "DUP3" }, "17573": { "op": "ADD" }, "17574": { "op": "MSTORE" }, "17575": { "op": "PUSH2", "value": "0x44B2" }, "17578": { "op": "PUSH1", "value": "0x80" }, "17580": { "op": "DUP5" }, "17581": { "op": "ADD" }, "17582": { "op": "PUSH2", "value": "0x41AF" }, "17585": { "jump": "i", "op": "JUMP" }, "17586": { "op": "JUMPDEST" }, "17587": { "op": "PUSH1", "value": "0x80" }, "17589": { "op": "DUP3" }, "17590": { "op": "ADD" }, "17591": { "op": "MSTORE" }, "17592": { "op": "SWAP4" }, "17593": { "op": "SWAP3" }, "17594": { "op": "POP" }, "17595": { "op": "POP" }, "17596": { "op": "POP" }, "17597": { "jump": "o", "op": "JUMP" }, "17598": { "op": "JUMPDEST" }, "17599": { "op": "PUSH1", "value": "0x0" }, "17601": { "op": "DUP1" }, "17602": { "op": "PUSH1", "value": "0x40" }, "17604": { "op": "DUP4" }, "17605": { "op": "DUP6" }, "17606": { "op": "SUB" }, "17607": { "op": "SLT" }, "17608": { "op": "ISZERO" }, "17609": { "op": "PUSH2", "value": "0x44D0" }, "17612": { "op": "JUMPI" }, "17613": { "op": "DUP2" }, "17614": { "op": "DUP3" }, "17615": { "op": "REVERT" }, "17616": { "op": "JUMPDEST" }, "17617": { "op": "DUP3" }, "17618": { "op": "MLOAD" }, "17619": { "op": "PUSH1", "value": "0x1" }, "17621": { "op": "PUSH1", "value": "0x1" }, "17623": { "op": "PUSH1", "value": "0x40" }, "17625": { "op": "SHL" }, "17626": { "op": "SUB" }, "17627": { "op": "DUP1" }, "17628": { "op": "DUP3" }, "17629": { "op": "GT" }, "17630": { "op": "ISZERO" }, "17631": { "op": "PUSH2", "value": "0x44E6" }, "17634": { "op": "JUMPI" }, "17635": { "op": "DUP4" }, "17636": { "op": "DUP5" }, "17637": { "op": "REVERT" }, "17638": { "op": "JUMPDEST" }, "17639": { "op": "SWAP1" }, "17640": { "op": "DUP5" }, "17641": { "op": "ADD" }, "17642": { "op": "SWAP1" }, "17643": { "op": "PUSH1", "value": "0x80" }, "17645": { "op": "DUP3" }, "17646": { "op": "DUP8" }, "17647": { "op": "SUB" }, "17648": { "op": "SLT" }, "17649": { "op": "ISZERO" }, "17650": { "op": "PUSH2", "value": "0x44F9" }, "17653": { "op": "JUMPI" }, "17654": { "op": "DUP4" }, "17655": { "op": "DUP5" }, "17656": { "op": "REVERT" }, "17657": { "op": "JUMPDEST" }, "17658": { "op": "PUSH1", "value": "0x40" }, "17660": { "op": "MLOAD" }, "17661": { "op": "PUSH1", "value": "0x80" }, "17663": { "op": "DUP2" }, "17664": { "op": "ADD" }, "17665": { "op": "DUP2" }, "17666": { "op": "DUP2" }, "17667": { "op": "LT" }, "17668": { "op": "DUP4" }, "17669": { "op": "DUP3" }, "17670": { "op": "GT" }, "17671": { "op": "OR" }, "17672": { "op": "ISZERO" }, "17673": { "op": "PUSH2", "value": "0x450E" }, "17676": { "op": "JUMPI" }, "17677": { "op": "INVALID" }, "17678": { "op": "JUMPDEST" }, "17679": { "op": "PUSH1", "value": "0x40" }, "17681": { "op": "MSTORE" }, "17682": { "op": "DUP3" }, "17683": { "op": "MLOAD" }, "17684": { "op": "DUP3" }, "17685": { "op": "DUP2" }, "17686": { "op": "GT" }, "17687": { "op": "ISZERO" }, "17688": { "op": "PUSH2", "value": "0x451F" }, "17691": { "op": "JUMPI" }, "17692": { "op": "DUP6" }, "17693": { "op": "DUP7" }, "17694": { "op": "REVERT" }, "17695": { "op": "JUMPDEST" }, "17696": { "op": "PUSH2", "value": "0x452B" }, "17699": { "op": "DUP9" }, "17700": { "op": "DUP3" }, "17701": { "op": "DUP7" }, "17702": { "op": "ADD" }, "17703": { "op": "PUSH2", "value": "0x40CE" }, "17706": { "jump": "i", "op": "JUMP" }, "17707": { "op": "JUMPDEST" }, "17708": { "op": "DUP3" }, "17709": { "op": "MSTORE" }, "17710": { "op": "POP" }, "17711": { "op": "PUSH1", "value": "0x20" }, "17713": { "op": "DUP4" }, "17714": { "op": "ADD" }, "17715": { "op": "MLOAD" }, "17716": { "op": "DUP3" }, "17717": { "op": "DUP2" }, "17718": { "op": "GT" }, "17719": { "op": "ISZERO" }, "17720": { "op": "PUSH2", "value": "0x453F" }, "17723": { "op": "JUMPI" }, "17724": { "op": "DUP6" }, "17725": { "op": "DUP7" }, "17726": { "op": "REVERT" }, "17727": { "op": "JUMPDEST" }, "17728": { "op": "PUSH2", "value": "0x454B" }, "17731": { "op": "DUP9" }, "17732": { "op": "DUP3" }, "17733": { "op": "DUP7" }, "17734": { "op": "ADD" }, "17735": { "op": "PUSH2", "value": "0x40CE" }, "17738": { "jump": "i", "op": "JUMP" }, "17739": { "op": "JUMPDEST" }, "17740": { "op": "PUSH1", "value": "0x20" }, "17742": { "op": "DUP4" }, "17743": { "op": "ADD" }, "17744": { "op": "MSTORE" }, "17745": { "op": "POP" }, "17746": { "op": "PUSH1", "value": "0x40" }, "17748": { "op": "DUP4" }, "17749": { "op": "ADD" }, "17750": { "op": "MLOAD" }, "17751": { "op": "PUSH1", "value": "0x40" }, "17753": { "op": "DUP3" }, "17754": { "op": "ADD" }, "17755": { "op": "MSTORE" }, "17756": { "op": "PUSH1", "value": "0x60" }, "17758": { "op": "DUP4" }, "17759": { "op": "ADD" }, "17760": { "op": "MLOAD" }, "17761": { "op": "PUSH1", "value": "0x60" }, "17763": { "op": "DUP3" }, "17764": { "op": "ADD" }, "17765": { "op": "MSTORE" }, "17766": { "op": "DUP1" }, "17767": { "op": "SWAP5" }, "17768": { "op": "POP" }, "17769": { "op": "POP" }, "17770": { "op": "POP" }, "17771": { "op": "POP" }, "17772": { "op": "PUSH1", "value": "0x20" }, "17774": { "op": "DUP4" }, "17775": { "op": "ADD" }, "17776": { "op": "MLOAD" }, "17777": { "op": "SWAP1" }, "17778": { "op": "POP" }, "17779": { "op": "SWAP3" }, "17780": { "op": "POP" }, "17781": { "op": "SWAP3" }, "17782": { "op": "SWAP1" }, "17783": { "op": "POP" }, "17784": { "jump": "o", "op": "JUMP" }, "17785": { "op": "JUMPDEST" }, "17786": { "op": "PUSH1", "value": "0x0" }, "17788": { "op": "PUSH1", "value": "0x20" }, "17790": { "op": "DUP3" }, "17791": { "op": "DUP5" }, "17792": { "op": "SUB" }, "17793": { "op": "SLT" }, "17794": { "op": "ISZERO" }, "17795": { "op": "PUSH2", "value": "0x458A" }, "17798": { "op": "JUMPI" }, "17799": { "op": "DUP1" }, "17800": { "op": "DUP2" }, "17801": { "op": "REVERT" }, "17802": { "op": "JUMPDEST" }, "17803": { "op": "DUP2" }, "17804": { "op": "CALLDATALOAD" }, "17805": { "op": "PUSH2", "value": "0xAA3" }, "17808": { "op": "DUP2" }, "17809": { "op": "PUSH2", "value": "0x4B85" }, "17812": { "jump": "i", "op": "JUMP" }, "17813": { "op": "JUMPDEST" }, "17814": { "op": "DUP2" }, "17815": { "op": "DUP4" }, "17816": { "op": "MSTORE" }, "17817": { "op": "PUSH1", "value": "0x0" }, "17819": { "op": "PUSH1", "value": "0x1" }, "17821": { "op": "PUSH1", "value": "0x1" }, "17823": { "op": "PUSH1", "value": "0xFB" }, "17825": { "op": "SHL" }, "17826": { "op": "SUB" }, "17827": { "op": "DUP4" }, "17828": { "op": "GT" }, "17829": { "op": "ISZERO" }, "17830": { "op": "PUSH2", "value": "0x45AD" }, "17833": { "op": "JUMPI" }, "17834": { "op": "DUP1" }, "17835": { "op": "DUP2" }, "17836": { "op": "REVERT" }, "17837": { "op": "JUMPDEST" }, "17838": { "op": "PUSH1", "value": "0x20" }, "17840": { "op": "DUP4" }, "17841": { "op": "MUL" }, "17842": { "op": "DUP1" }, "17843": { "op": "DUP4" }, "17844": { "op": "PUSH1", "value": "0x20" }, "17846": { "op": "DUP8" }, "17847": { "op": "ADD" }, "17848": { "op": "CALLDATACOPY" }, "17849": { "op": "SWAP4" }, "17850": { "op": "SWAP1" }, "17851": { "op": "SWAP4" }, "17852": { "op": "ADD" }, "17853": { "op": "PUSH1", "value": "0x20" }, "17855": { "op": "ADD" }, "17856": { "op": "SWAP3" }, "17857": { "op": "DUP4" }, "17858": { "op": "MSTORE" }, "17859": { "op": "POP" }, "17860": { "op": "SWAP1" }, "17861": { "op": "SWAP2" }, "17862": { "op": "SWAP1" }, "17863": { "op": "POP" }, "17864": { "jump": "o", "op": "JUMP" }, "17865": { "op": "JUMPDEST" }, "17866": { "op": "PUSH1", "value": "0x0" }, "17868": { "op": "DUP2" }, "17869": { "op": "MLOAD" }, "17870": { "op": "DUP1" }, "17871": { "op": "DUP5" }, "17872": { "op": "MSTORE" }, "17873": { "op": "PUSH1", "value": "0x20" }, "17875": { "op": "DUP1" }, "17876": { "op": "DUP6" }, "17877": { "op": "ADD" }, "17878": { "op": "SWAP5" }, "17879": { "op": "POP" }, "17880": { "op": "DUP1" }, "17881": { "op": "DUP5" }, "17882": { "op": "ADD" }, "17883": { "op": "DUP4" }, "17884": { "op": "JUMPDEST" }, "17885": { "op": "DUP4" }, "17886": { "op": "DUP2" }, "17887": { "op": "LT" }, "17888": { "op": "ISZERO" }, "17889": { "op": "PUSH2", "value": "0x4636" }, "17892": { "op": "JUMPI" }, "17893": { "op": "DUP2" }, "17894": { "op": "MLOAD" }, "17895": { "op": "DUP1" }, "17896": { "op": "MLOAD" }, "17897": { "op": "DUP9" }, "17898": { "op": "MSTORE" }, "17899": { "op": "DUP4" }, "17900": { "op": "DUP2" }, "17901": { "op": "ADD" }, "17902": { "op": "MLOAD" }, "17903": { "op": "DUP5" }, "17904": { "op": "DUP10" }, "17905": { "op": "ADD" }, "17906": { "op": "MSTORE" }, "17907": { "op": "PUSH1", "value": "0x40" }, "17909": { "op": "DUP1" }, "17910": { "op": "DUP3" }, "17911": { "op": "ADD" }, "17912": { "op": "MLOAD" }, "17913": { "op": "SWAP1" }, "17914": { "op": "DUP10" }, "17915": { "op": "ADD" }, "17916": { "op": "MSTORE" }, "17917": { "op": "PUSH1", "value": "0x60" }, "17919": { "op": "DUP1" }, "17920": { "op": "DUP3" }, "17921": { "op": "ADD" }, "17922": { "op": "MLOAD" }, "17923": { "op": "SWAP1" }, "17924": { "op": "DUP10" }, "17925": { "op": "ADD" }, "17926": { "op": "MSTORE" }, "17927": { "op": "PUSH1", "value": "0x80" }, "17929": { "op": "DUP1" }, "17930": { "op": "DUP3" }, "17931": { "op": "ADD" }, "17932": { "op": "MLOAD" }, "17933": { "op": "SWAP1" }, "17934": { "op": "DUP10" }, "17935": { "op": "ADD" }, "17936": { "op": "MSTORE" }, "17937": { "op": "PUSH1", "value": "0xA0" }, "17939": { "op": "SWAP1" }, "17940": { "op": "DUP2" }, "17941": { "op": "ADD" }, "17942": { "op": "MLOAD" }, "17943": { "op": "SWAP1" }, "17944": { "op": "PUSH1", "value": "0x4" }, "17946": { "op": "DUP3" }, "17947": { "op": "LT" }, "17948": { "op": "PUSH2", "value": "0x4621" }, "17951": { "op": "JUMPI" }, "17952": { "op": "INVALID" }, "17953": { "op": "JUMPDEST" }, "17954": { "op": "DUP9" }, "17955": { "op": "ADD" }, "17956": { "op": "MSTORE" }, "17957": { "op": "PUSH1", "value": "0xC0" }, "17959": { "op": "SWAP1" }, "17960": { "op": "SWAP7" }, "17961": { "op": "ADD" }, "17962": { "op": "SWAP6" }, "17963": { "op": "SWAP1" }, "17964": { "op": "DUP3" }, "17965": { "op": "ADD" }, "17966": { "op": "SWAP1" }, "17967": { "op": "PUSH1", "value": "0x1" }, "17969": { "op": "ADD" }, "17970": { "op": "PUSH2", "value": "0x45DC" }, "17973": { "op": "JUMP" }, "17974": { "op": "JUMPDEST" }, "17975": { "op": "POP" }, "17976": { "op": "SWAP5" }, "17977": { "op": "SWAP6" }, "17978": { "op": "SWAP5" }, "17979": { "op": "POP" }, "17980": { "op": "POP" }, "17981": { "op": "POP" }, "17982": { "op": "POP" }, "17983": { "op": "POP" }, "17984": { "jump": "o", "op": "JUMP" }, "17985": { "op": "JUMPDEST" }, "17986": { "op": "PUSH1", "value": "0x1" }, "17988": { "op": "PUSH1", "value": "0x1" }, "17990": { "op": "PUSH1", "value": "0xA0" }, "17992": { "op": "SHL" }, "17993": { "op": "SUB" }, "17994": { "op": "SWAP2" }, "17995": { "op": "SWAP1" }, "17996": { "op": "SWAP2" }, "17997": { "op": "AND" }, "17998": { "op": "DUP2" }, "17999": { "op": "MSTORE" }, "18000": { "op": "PUSH1", "value": "0x20" }, "18002": { "op": "ADD" }, "18003": { "op": "SWAP1" }, "18004": { "jump": "o", "op": "JUMP" }, "18005": { "op": "JUMPDEST" }, "18006": { "op": "PUSH1", "value": "0x1" }, "18008": { "op": "PUSH1", "value": "0x1" }, "18010": { "op": "PUSH1", "value": "0xA0" }, "18012": { "op": "SHL" }, "18013": { "op": "SUB" }, "18014": { "op": "DUP6" }, "18015": { "op": "DUP2" }, "18016": { "op": "AND" }, "18017": { "op": "DUP3" }, "18018": { "op": "MSTORE" }, "18019": { "op": "DUP5" }, "18020": { "op": "AND" }, "18021": { "op": "PUSH1", "value": "0x20" }, "18023": { "op": "DUP3" }, "18024": { "op": "ADD" }, "18025": { "op": "MSTORE" }, "18026": { "op": "PUSH1", "value": "0x60" }, "18028": { "op": "PUSH1", "value": "0x40" }, "18030": { "op": "DUP3" }, "18031": { "op": "ADD" }, "18032": { "op": "DUP2" }, "18033": { "op": "SWAP1" }, "18034": { "op": "MSTORE" }, "18035": { "op": "DUP2" }, "18036": { "op": "ADD" }, "18037": { "op": "DUP3" }, "18038": { "op": "SWAP1" }, "18039": { "op": "MSTORE" }, "18040": { "op": "PUSH1", "value": "0x0" }, "18042": { "op": "DUP3" }, "18043": { "op": "DUP5" }, "18044": { "op": "PUSH1", "value": "0x80" }, "18046": { "op": "DUP5" }, "18047": { "op": "ADD" }, "18048": { "op": "CALLDATACOPY" }, "18049": { "op": "DUP2" }, "18050": { "op": "DUP4" }, "18051": { "op": "ADD" }, "18052": { "op": "PUSH1", "value": "0x80" }, "18054": { "op": "SWAP1" }, "18055": { "op": "DUP2" }, "18056": { "op": "ADD" }, "18057": { "op": "SWAP2" }, "18058": { "op": "SWAP1" }, "18059": { "op": "SWAP2" }, "18060": { "op": "MSTORE" }, "18061": { "op": "PUSH1", "value": "0x1F" }, "18063": { "op": "SWAP1" }, "18064": { "op": "SWAP3" }, "18065": { "op": "ADD" }, "18066": { "op": "PUSH1", "value": "0x1F" }, "18068": { "op": "NOT" }, "18069": { "op": "AND" }, "18070": { "op": "ADD" }, "18071": { "op": "ADD" }, "18072": { "op": "SWAP4" }, "18073": { "op": "SWAP3" }, "18074": { "op": "POP" }, "18075": { "op": "POP" }, "18076": { "op": "POP" }, "18077": { "jump": "o", "op": "JUMP" }, "18078": { "op": "JUMPDEST" }, "18079": { "op": "PUSH1", "value": "0x1" }, "18081": { "op": "PUSH1", "value": "0x1" }, "18083": { "op": "PUSH1", "value": "0xA0" }, "18085": { "op": "SHL" }, "18086": { "op": "SUB" }, "18087": { "op": "SWAP7" }, "18088": { "op": "DUP8" }, "18089": { "op": "AND" }, "18090": { "op": "DUP2" }, "18091": { "op": "MSTORE" }, "18092": { "op": "SWAP5" }, "18093": { "op": "DUP7" }, "18094": { "op": "AND" }, "18095": { "op": "PUSH1", "value": "0x20" }, "18097": { "op": "DUP7" }, "18098": { "op": "ADD" }, "18099": { "op": "MSTORE" }, "18100": { "op": "SWAP3" }, "18101": { "op": "DUP6" }, "18102": { "op": "AND" }, "18103": { "op": "PUSH1", "value": "0x40" }, "18105": { "op": "DUP6" }, "18106": { "op": "ADD" }, "18107": { "op": "MSTORE" }, "18108": { "op": "SWAP1" }, "18109": { "op": "DUP5" }, "18110": { "op": "AND" }, "18111": { "op": "PUSH1", "value": "0x60" }, "18113": { "op": "DUP5" }, "18114": { "op": "ADD" }, "18115": { "op": "MSTORE" }, "18116": { "op": "DUP4" }, "18117": { "op": "AND" }, "18118": { "op": "PUSH1", "value": "0x80" }, "18120": { "op": "DUP4" }, "18121": { "op": "ADD" }, "18122": { "op": "MSTORE" }, "18123": { "op": "SWAP1" }, "18124": { "op": "SWAP2" }, "18125": { "op": "AND" }, "18126": { "op": "PUSH1", "value": "0xA0" }, "18128": { "op": "DUP3" }, "18129": { "op": "ADD" }, "18130": { "op": "MSTORE" }, "18131": { "op": "PUSH1", "value": "0xC0" }, "18133": { "op": "ADD" }, "18134": { "op": "SWAP1" }, "18135": { "jump": "o", "op": "JUMP" }, "18136": { "op": "JUMPDEST" }, "18137": { "op": "PUSH1", "value": "0x1" }, "18139": { "op": "PUSH1", "value": "0x1" }, "18141": { "op": "PUSH1", "value": "0xA0" }, "18143": { "op": "SHL" }, "18144": { "op": "SUB" }, "18145": { "op": "SWAP3" }, "18146": { "op": "SWAP1" }, "18147": { "op": "SWAP3" }, "18148": { "op": "AND" }, "18149": { "op": "DUP3" }, "18150": { "op": "MSTORE" }, "18151": { "op": "DUP1" }, "18152": { "op": "MLOAD" }, "18153": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "18159": { "op": "AND" }, "18160": { "op": "PUSH1", "value": "0x20" }, "18162": { "op": "DUP1" }, "18163": { "op": "DUP5" }, "18164": { "op": "ADD" }, "18165": { "op": "SWAP2" }, "18166": { "op": "SWAP1" }, "18167": { "op": "SWAP2" }, "18168": { "op": "MSTORE" }, "18169": { "op": "DUP2" }, "18170": { "op": "ADD" }, "18171": { "op": "MLOAD" }, "18172": { "op": "PUSH1", "value": "0x1" }, "18174": { "op": "PUSH1", "value": "0x1" }, "18176": { "op": "PUSH1", "value": "0xF8" }, "18178": { "op": "SHL" }, "18179": { "op": "SUB" }, "18180": { "op": "NOT" }, "18181": { "op": "AND" }, "18182": { "op": "PUSH1", "value": "0x40" }, "18184": { "op": "DUP1" }, "18185": { "op": "DUP5" }, "18186": { "op": "ADD" }, "18187": { "op": "SWAP2" }, "18188": { "op": "SWAP1" }, "18189": { "op": "SWAP2" }, "18190": { "op": "MSTORE" }, "18191": { "op": "DUP2" }, "18192": { "op": "ADD" }, "18193": { "op": "MLOAD" }, "18194": { "op": "PUSH1", "value": "0xFF" }, "18196": { "op": "AND" }, "18197": { "op": "PUSH1", "value": "0x60" }, "18199": { "op": "DUP1" }, "18200": { "op": "DUP5" }, "18201": { "op": "ADD" }, "18202": { "op": "SWAP2" }, "18203": { "op": "SWAP1" }, "18204": { "op": "SWAP2" }, "18205": { "op": "MSTORE" }, "18206": { "op": "DUP2" }, "18207": { "op": "ADD" }, "18208": { "op": "MLOAD" }, "18209": { "op": "PUSH2", "value": "0xFFFF" }, "18212": { "op": "AND" }, "18213": { "op": "PUSH1", "value": "0x80" }, "18215": { "op": "DUP1" }, "18216": { "op": "DUP5" }, "18217": { "op": "ADD" }, "18218": { "op": "SWAP2" }, "18219": { "op": "SWAP1" }, "18220": { "op": "SWAP2" }, "18221": { "op": "MSTORE" }, "18222": { "op": "ADD" }, "18223": { "op": "MLOAD" }, "18224": { "op": "PUSH1", "value": "0x1" }, "18226": { "op": "PUSH1", "value": "0x1" }, "18228": { "op": "PUSH1", "value": "0x70" }, "18230": { "op": "SHL" }, "18231": { "op": "SUB" }, "18232": { "op": "NOT" }, "18233": { "op": "AND" }, "18234": { "op": "PUSH1", "value": "0xA0" }, "18236": { "op": "DUP3" }, "18237": { "op": "ADD" }, "18238": { "op": "MSTORE" }, "18239": { "op": "PUSH1", "value": "0xC0" }, "18241": { "op": "ADD" }, "18242": { "op": "SWAP1" }, "18243": { "jump": "o", "op": "JUMP" }, "18244": { "op": "JUMPDEST" }, "18245": { "op": "PUSH1", "value": "0x0" }, "18247": { "op": "PUSH1", "value": "0x1" }, "18249": { "op": "DUP1" }, "18250": { "op": "PUSH1", "value": "0xA0" }, "18252": { "op": "SHL" }, "18253": { "op": "SUB" }, "18254": { "op": "DUP8" }, "18255": { "op": "AND" }, "18256": { "op": "DUP3" }, "18257": { "op": "MSTORE" }, "18258": { "op": "PUSH2", "value": "0xFFFF" }, "18261": { "op": "DUP7" }, "18262": { "op": "AND" }, "18263": { "op": "PUSH1", "value": "0x20" }, "18265": { "op": "DUP4" }, "18266": { "op": "ADD" }, "18267": { "op": "MSTORE" }, "18268": { "op": "PUSH1", "value": "0x80" }, "18270": { "op": "PUSH1", "value": "0x40" }, "18272": { "op": "DUP4" }, "18273": { "op": "ADD" }, "18274": { "op": "MSTORE" }, "18275": { "op": "DUP5" }, "18276": { "op": "MLOAD" }, "18277": { "op": "PUSH1", "value": "0x80" }, "18279": { "op": "DUP1" }, "18280": { "op": "DUP5" }, "18281": { "op": "ADD" }, "18282": { "op": "MSTORE" }, "18283": { "op": "PUSH2", "value": "0x4778" }, "18286": { "op": "PUSH2", "value": "0x100" }, "18289": { "op": "DUP5" }, "18290": { "op": "ADD" }, "18291": { "op": "DUP3" }, "18292": { "op": "PUSH2", "value": "0x45C9" }, "18295": { "jump": "i", "op": "JUMP" }, "18296": { "op": "JUMPDEST" }, "18297": { "op": "SWAP1" }, "18298": { "op": "POP" }, "18299": { "op": "PUSH1", "value": "0x20" }, "18301": { "op": "DUP7" }, "18302": { "op": "ADD" }, "18303": { "op": "MLOAD" }, "18304": { "op": "PUSH1", "value": "0x7F" }, "18306": { "op": "NOT" }, "18307": { "op": "DUP5" }, "18308": { "op": "DUP4" }, "18309": { "op": "SUB" }, "18310": { "op": "ADD" }, "18311": { "op": "PUSH1", "value": "0xA0" }, "18313": { "op": "DUP6" }, "18314": { "op": "ADD" }, "18315": { "op": "MSTORE" }, "18316": { "op": "PUSH2", "value": "0x4795" }, "18319": { "op": "DUP3" }, "18320": { "op": "DUP3" }, "18321": { "op": "PUSH2", "value": "0x45C9" }, "18324": { "jump": "i", "op": "JUMP" }, "18325": { "op": "JUMPDEST" }, "18326": { "op": "SWAP2" }, "18327": { "op": "POP" }, "18328": { "op": "POP" }, "18329": { "op": "PUSH1", "value": "0x40" }, "18331": { "op": "DUP7" }, "18332": { "op": "ADD" }, "18333": { "op": "MLOAD" }, "18334": { "op": "PUSH1", "value": "0xC0" }, "18336": { "op": "DUP5" }, "18337": { "op": "ADD" }, "18338": { "op": "MSTORE" }, "18339": { "op": "PUSH1", "value": "0x60" }, "18341": { "op": "DUP7" }, "18342": { "op": "ADD" }, "18343": { "op": "MLOAD" }, "18344": { "op": "PUSH1", "value": "0xE0" }, "18346": { "op": "DUP5" }, "18347": { "op": "ADD" }, "18348": { "op": "MSTORE" }, "18349": { "op": "DUP3" }, "18350": { "op": "DUP2" }, "18351": { "op": "SUB" }, "18352": { "op": "PUSH1", "value": "0x60" }, "18354": { "op": "DUP5" }, "18355": { "op": "ADD" }, "18356": { "op": "MSTORE" }, "18357": { "op": "PUSH2", "value": "0x47BF" }, "18360": { "op": "DUP2" }, "18361": { "op": "DUP6" }, "18362": { "op": "DUP8" }, "18363": { "op": "PUSH2", "value": "0x4595" }, "18366": { "jump": "i", "op": "JUMP" }, "18367": { "op": "JUMPDEST" }, "18368": { "op": "SWAP9" }, "18369": { "op": "SWAP8" }, "18370": { "op": "POP" }, "18371": { "op": "POP" }, "18372": { "op": "POP" }, "18373": { "op": "POP" }, "18374": { "op": "POP" }, "18375": { "op": "POP" }, "18376": { "op": "POP" }, "18377": { "op": "POP" }, "18378": { "jump": "o", "op": "JUMP" }, "18379": { "op": "JUMPDEST" }, "18380": { "op": "PUSH1", "value": "0x1" }, "18382": { "op": "PUSH1", "value": "0x1" }, "18384": { "op": "PUSH1", "value": "0xA0" }, "18386": { "op": "SHL" }, "18387": { "op": "SUB" }, "18388": { "op": "DUP7" }, "18389": { "op": "AND" }, "18390": { "op": "DUP2" }, "18391": { "op": "MSTORE" }, "18392": { "op": "PUSH2", "value": "0xFFFF" }, "18395": { "op": "DUP6" }, "18396": { "op": "AND" }, "18397": { "op": "PUSH1", "value": "0x20" }, "18399": { "op": "DUP3" }, "18400": { "op": "ADD" }, "18401": { "op": "MSTORE" }, "18402": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "18408": { "op": "DUP5" }, "18409": { "op": "AND" }, "18410": { "op": "PUSH1", "value": "0x40" }, "18412": { "op": "DUP3" }, "18413": { "op": "ADD" }, "18414": { "op": "MSTORE" }, "18415": { "op": "PUSH1", "value": "0x80" }, "18417": { "op": "PUSH1", "value": "0x60" }, "18419": { "op": "DUP3" }, "18420": { "op": "ADD" }, "18421": { "op": "DUP2" }, "18422": { "op": "SWAP1" }, "18423": { "op": "MSTORE" }, "18424": { "op": "PUSH1", "value": "0x0" }, "18426": { "op": "SWAP1" }, "18427": { "op": "PUSH2", "value": "0x1DEF" }, "18430": { "op": "SWAP1" }, "18431": { "op": "DUP4" }, "18432": { "op": "ADD" }, "18433": { "op": "DUP5" }, "18434": { "op": "DUP7" }, "18435": { "op": "PUSH2", "value": "0x4595" }, "18438": { "jump": "i", "op": "JUMP" }, "18439": { "op": "JUMPDEST" }, "18440": { "op": "PUSH1", "value": "0x1" }, "18442": { "op": "PUSH1", "value": "0x1" }, "18444": { "op": "PUSH1", "value": "0xA0" }, "18446": { "op": "SHL" }, "18447": { "op": "SUB" }, "18448": { "op": "SWAP4" }, "18449": { "op": "DUP5" }, "18450": { "op": "AND" }, "18451": { "op": "DUP2" }, "18452": { "op": "MSTORE" }, "18453": { "op": "PUSH1", "value": "0x20" }, "18455": { "op": "DUP2" }, "18456": { "op": "ADD" }, "18457": { "op": "SWAP3" }, "18458": { "op": "SWAP1" }, "18459": { "op": "SWAP3" }, "18460": { "op": "MSTORE" }, "18461": { "op": "SWAP1" }, "18462": { "op": "SWAP2" }, "18463": { "op": "AND" }, "18464": { "op": "PUSH1", "value": "0x40" }, "18466": { "op": "DUP3" }, "18467": { "op": "ADD" }, "18468": { "op": "MSTORE" }, "18469": { "op": "PUSH1", "value": "0x60" }, "18471": { "op": "ADD" }, "18472": { "op": "SWAP1" }, "18473": { "jump": "o", "op": "JUMP" }, "18474": { "op": "JUMPDEST" }, "18475": { "op": "PUSH1", "value": "0x1" }, "18477": { "op": "PUSH1", "value": "0x1" }, "18479": { "op": "PUSH1", "value": "0xA0" }, "18481": { "op": "SHL" }, "18482": { "op": "SUB" }, "18483": { "op": "SWAP5" }, "18484": { "op": "DUP6" }, "18485": { "op": "AND" }, "18486": { "op": "DUP2" }, "18487": { "op": "MSTORE" }, "18488": { "op": "PUSH1", "value": "0x20" }, "18490": { "op": "DUP2" }, "18491": { "op": "ADD" }, "18492": { "op": "SWAP4" }, "18493": { "op": "SWAP1" }, "18494": { "op": "SWAP4" }, "18495": { "op": "MSTORE" }, "18496": { "op": "SWAP3" }, "18497": { "op": "AND" }, "18498": { "op": "PUSH1", "value": "0x40" }, "18500": { "op": "DUP3" }, "18501": { "op": "ADD" }, "18502": { "op": "MSTORE" }, "18503": { "op": "PUSH2", "value": "0xFFFF" }, "18506": { "op": "SWAP1" }, "18507": { "op": "SWAP2" }, "18508": { "op": "AND" }, "18509": { "op": "PUSH1", "value": "0x60" }, "18511": { "op": "DUP3" }, "18512": { "op": "ADD" }, "18513": { "op": "MSTORE" }, "18514": { "op": "PUSH1", "value": "0x80" }, "18516": { "op": "ADD" }, "18517": { "op": "SWAP1" }, "18518": { "jump": "o", "op": "JUMP" }, "18519": { "op": "JUMPDEST" }, "18520": { "op": "PUSH1", "value": "0x1" }, "18522": { "op": "PUSH1", "value": "0x1" }, "18524": { "op": "PUSH1", "value": "0xA0" }, "18526": { "op": "SHL" }, "18527": { "op": "SUB" }, "18528": { "op": "SWAP6" }, "18529": { "op": "SWAP1" }, "18530": { "op": "SWAP6" }, "18531": { "op": "AND" }, "18532": { "op": "DUP6" }, "18533": { "op": "MSTORE" }, "18534": { "op": "PUSH1", "value": "0x20" }, "18536": { "op": "DUP6" }, "18537": { "op": "ADD" }, "18538": { "op": "SWAP4" }, "18539": { "op": "SWAP1" }, "18540": { "op": "SWAP4" }, "18541": { "op": "MSTORE" }, "18542": { "op": "PUSH1", "value": "0x40" }, "18544": { "op": "DUP5" }, "18545": { "op": "ADD" }, "18546": { "op": "SWAP2" }, "18547": { "op": "SWAP1" }, "18548": { "op": "SWAP2" }, "18549": { "op": "MSTORE" }, "18550": { "op": "PUSH1", "value": "0x60" }, "18552": { "op": "DUP4" }, "18553": { "op": "ADD" }, "18554": { "op": "MSTORE" }, "18555": { "op": "PUSH1", "value": "0x80" }, "18557": { "op": "DUP3" }, "18558": { "op": "ADD" }, "18559": { "op": "MSTORE" }, "18560": { "op": "PUSH1", "value": "0xA0" }, "18562": { "op": "ADD" }, "18563": { "op": "SWAP1" }, "18564": { "jump": "o", "op": "JUMP" }, "18565": { "op": "JUMPDEST" }, "18566": { "op": "PUSH1", "value": "0x1" }, "18568": { "op": "PUSH1", "value": "0x1" }, "18570": { "op": "PUSH1", "value": "0xA0" }, "18572": { "op": "SHL" }, "18573": { "op": "SUB" }, "18574": { "op": "SWAP5" }, "18575": { "op": "SWAP1" }, "18576": { "op": "SWAP5" }, "18577": { "op": "AND" }, "18578": { "op": "DUP5" }, "18579": { "op": "MSTORE" }, "18580": { "op": "PUSH1", "value": "0x20" }, "18582": { "op": "DUP5" }, "18583": { "op": "ADD" }, "18584": { "op": "SWAP3" }, "18585": { "op": "SWAP1" }, "18586": { "op": "SWAP3" }, "18587": { "op": "MSTORE" }, "18588": { "op": "PUSH1", "value": "0x40" }, "18590": { "op": "DUP4" }, "18591": { "op": "ADD" }, "18592": { "op": "MSTORE" }, "18593": { "op": "PUSH1", "value": "0x60" }, "18595": { "op": "DUP3" }, "18596": { "op": "ADD" }, "18597": { "op": "MSTORE" }, "18598": { "op": "PUSH1", "value": "0x80" }, "18600": { "op": "ADD" }, "18601": { "op": "SWAP1" }, "18602": { "jump": "o", "op": "JUMP" }, "18603": { "op": "JUMPDEST" }, "18604": { "op": "SWAP1" }, "18605": { "op": "DUP2" }, "18606": { "op": "MSTORE" }, "18607": { "op": "PUSH1", "value": "0x20" }, "18609": { "op": "ADD" }, "18610": { "op": "SWAP1" }, "18611": { "jump": "o", "op": "JUMP" }, "18612": { "op": "JUMPDEST" }, "18613": { "op": "PUSH1", "value": "0x20" }, "18615": { "op": "DUP1" }, "18616": { "op": "DUP3" }, "18617": { "op": "MSTORE" }, "18618": { "op": "PUSH1", "value": "0xC" }, "18620": { "op": "SWAP1" }, "18621": { "op": "DUP3" }, "18622": { "op": "ADD" }, "18623": { "op": "MSTORE" }, "18624": { "op": "PUSH12", "value": "0x155B985D5D1A1BDC9A5E9959" }, "18637": { "op": "PUSH1", "value": "0xA2" }, "18639": { "op": "SHL" }, "18640": { "op": "PUSH1", "value": "0x40" }, "18642": { "op": "DUP3" }, "18643": { "op": "ADD" }, "18644": { "op": "MSTORE" }, "18645": { "op": "PUSH1", "value": "0x60" }, "18647": { "op": "ADD" }, "18648": { "op": "SWAP1" }, "18649": { "jump": "o", "op": "JUMP" }, "18650": { "op": "JUMPDEST" }, "18651": { "op": "PUSH1", "value": "0x20" }, "18653": { "op": "DUP1" }, "18654": { "op": "DUP3" }, "18655": { "op": "MSTORE" }, "18656": { "op": "PUSH1", "value": "0x4" }, "18658": { "op": "SWAP1" }, "18659": { "op": "DUP3" }, "18660": { "op": "ADD" }, "18661": { "op": "MSTORE" }, "18662": { "op": "PUSH4", "value": "0x135A5B9D" }, "18667": { "op": "PUSH1", "value": "0xE2" }, "18669": { "op": "SHL" }, "18670": { "op": "PUSH1", "value": "0x40" }, "18672": { "op": "DUP3" }, "18673": { "op": "ADD" }, "18674": { "op": "MSTORE" }, "18675": { "op": "PUSH1", "value": "0x60" }, "18677": { "op": "ADD" }, "18678": { "op": "SWAP1" }, "18679": { "jump": "o", "op": "JUMP" }, "18680": { "op": "JUMPDEST" }, "18681": { "op": "PUSH1", "value": "0x20" }, "18683": { "op": "DUP1" }, "18684": { "op": "DUP3" }, "18685": { "op": "MSTORE" }, "18686": { "op": "PUSH1", "value": "0xB" }, "18688": { "op": "SWAP1" }, "18689": { "op": "DUP3" }, "18690": { "op": "ADD" }, "18691": { "op": "MSTORE" }, "18692": { "op": "PUSH11", "value": "0x4554482042616C616E6365" }, "18704": { "op": "PUSH1", "value": "0xA8" }, "18706": { "op": "SHL" }, "18707": { "op": "PUSH1", "value": "0x40" }, "18709": { "op": "DUP3" }, "18710": { "op": "ADD" }, "18711": { "op": "MSTORE" }, "18712": { "op": "PUSH1", "value": "0x60" }, "18714": { "op": "ADD" }, "18715": { "op": "SWAP1" }, "18716": { "jump": "o", "op": "JUMP" }, "18717": { "op": "JUMPDEST" }, "18718": { "op": "PUSH1", "value": "0x20" }, "18720": { "op": "DUP1" }, "18721": { "op": "DUP3" }, "18722": { "op": "MSTORE" }, "18723": { "op": "PUSH1", "value": "0x6" }, "18725": { "op": "SWAP1" }, "18726": { "op": "DUP3" }, "18727": { "op": "ADD" }, "18728": { "op": "MSTORE" }, "18729": { "op": "PUSH6", "value": "0x52656465656D" }, "18736": { "op": "PUSH1", "value": "0xD0" }, "18738": { "op": "SHL" }, "18739": { "op": "PUSH1", "value": "0x40" }, "18741": { "op": "DUP3" }, "18742": { "op": "ADD" }, "18743": { "op": "MSTORE" }, "18744": { "op": "PUSH1", "value": "0x60" }, "18746": { "op": "ADD" }, "18747": { "op": "SWAP1" }, "18748": { "jump": "o", "op": "JUMP" }, "18749": { "op": "JUMPDEST" }, "18750": { "op": "PUSH1", "value": "0x20" }, "18752": { "op": "DUP1" }, "18753": { "op": "DUP3" }, "18754": { "op": "MSTORE" }, "18755": { "op": "PUSH1", "value": "0xD" }, "18757": { "op": "SWAP1" }, "18758": { "op": "DUP3" }, "18759": { "op": "ADD" }, "18760": { "op": "MSTORE" }, "18761": { "op": "PUSH13", "value": "0x92DCECC2D8D2C840D2DCC8CAF" }, "18775": { "op": "PUSH1", "value": "0x9B" }, "18777": { "op": "SHL" }, "18778": { "op": "PUSH1", "value": "0x40" }, "18780": { "op": "DUP3" }, "18781": { "op": "ADD" }, "18782": { "op": "MSTORE" }, "18783": { "op": "PUSH1", "value": "0x60" }, "18785": { "op": "ADD" }, "18786": { "op": "SWAP1" }, "18787": { "jump": "o", "op": "JUMP" }, "18788": { "op": "JUMPDEST" }, "18789": { "op": "PUSH1", "value": "0x20" }, "18791": { "op": "DUP1" }, "18792": { "op": "DUP3" }, "18793": { "op": "MSTORE" }, "18794": { "op": "PUSH1", "value": "0x10" }, "18796": { "op": "SWAP1" }, "18797": { "op": "DUP3" }, "18798": { "op": "ADD" }, "18799": { "op": "MSTORE" }, "18800": { "op": "PUSH16", "value": "0x556E736F7274656420616374696F6E73" }, "18817": { "op": "PUSH1", "value": "0x80" }, "18819": { "op": "SHL" }, "18820": { "op": "PUSH1", "value": "0x40" }, "18822": { "op": "DUP3" }, "18823": { "op": "ADD" }, "18824": { "op": "MSTORE" }, "18825": { "op": "PUSH1", "value": "0x60" }, "18827": { "op": "ADD" }, "18828": { "op": "SWAP1" }, "18829": { "jump": "o", "op": "JUMP" }, "18830": { "op": "JUMPDEST" }, "18831": { "op": "PUSH1", "value": "0x20" }, "18833": { "op": "DUP1" }, "18834": { "op": "DUP3" }, "18835": { "op": "MSTORE" }, "18836": { "op": "PUSH1", "value": "0x1A" }, "18838": { "op": "SWAP1" }, "18839": { "op": "DUP3" }, "18840": { "op": "ADD" }, "18841": { "op": "MSTORE" }, "18842": { "op": "PUSH32", "value": "0x496E73756666696369656E7420746F6B656E2062616C616E6365000000000000" }, "18875": { "op": "PUSH1", "value": "0x40" }, "18877": { "op": "DUP3" }, "18878": { "op": "ADD" }, "18879": { "op": "MSTORE" }, "18880": { "op": "PUSH1", "value": "0x60" }, "18882": { "op": "ADD" }, "18883": { "op": "SWAP1" }, "18884": { "jump": "o", "op": "JUMP" }, "18885": { "op": "JUMPDEST" }, "18886": { "op": "PUSH1", "value": "0x20" }, "18888": { "op": "DUP1" }, "18889": { "op": "DUP3" }, "18890": { "op": "MSTORE" }, "18891": { "op": "PUSH1", "value": "0xE" }, "18893": { "op": "SWAP1" }, "18894": { "op": "DUP3" }, "18895": { "op": "ADD" }, "18896": { "op": "MSTORE" }, "18897": { "op": "PUSH14", "value": "0x1499595B9D1C985B9D0818D85B1B" }, "18912": { "op": "PUSH1", "value": "0x92" }, "18914": { "op": "SHL" }, "18915": { "op": "PUSH1", "value": "0x40" }, "18917": { "op": "DUP3" }, "18918": { "op": "ADD" }, "18919": { "op": "MSTORE" }, "18920": { "op": "PUSH1", "value": "0x60" }, "18922": { "op": "ADD" }, "18923": { "op": "SWAP1" }, "18924": { "jump": "o", "op": "JUMP" }, "18925": { "op": "JUMPDEST" }, "18926": { "op": "PUSH1", "value": "0x20" }, "18928": { "op": "DUP1" }, "18929": { "op": "DUP3" }, "18930": { "op": "MSTORE" }, "18931": { "op": "PUSH1", "value": "0x8" }, "18933": { "op": "SWAP1" }, "18934": { "op": "DUP3" }, "18935": { "op": "ADD" }, "18936": { "op": "MSTORE" }, "18937": { "op": "PUSH8", "value": "0x9CCACE4086C2E6D" }, "18946": { "op": "PUSH1", "value": "0xC3" }, "18948": { "op": "SHL" }, "18949": { "op": "PUSH1", "value": "0x40" }, "18951": { "op": "DUP3" }, "18952": { "op": "ADD" }, "18953": { "op": "MSTORE" }, "18954": { "op": "PUSH1", "value": "0x60" }, "18956": { "op": "ADD" }, "18957": { "op": "SWAP1" }, "18958": { "jump": "o", "op": "JUMP" }, "18959": { "op": "JUMPDEST" }, "18960": { "op": "PUSH1", "value": "0x20" }, "18962": { "op": "DUP1" }, "18963": { "op": "DUP3" }, "18964": { "op": "MSTORE" }, "18965": { "op": "PUSH1", "value": "0x1A" }, "18967": { "op": "SWAP1" }, "18968": { "op": "DUP3" }, "18969": { "op": "ADD" }, "18970": { "op": "MSTORE" }, "18971": { "op": "PUSH32", "value": "0x496E76616C69642074726164657320666F72206163636F756E74000000000000" }, "19004": { "op": "PUSH1", "value": "0x40" }, "19006": { "op": "DUP3" }, "19007": { "op": "ADD" }, "19008": { "op": "MSTORE" }, "19009": { "op": "PUSH1", "value": "0x60" }, "19011": { "op": "ADD" }, "19012": { "op": "SWAP1" }, "19013": { "jump": "o", "op": "JUMP" }, "19014": { "op": "JUMPDEST" }, "19015": { "op": "PUSH1", "value": "0x20" }, "19017": { "op": "DUP1" }, "19018": { "op": "DUP3" }, "19019": { "op": "MSTORE" }, "19020": { "op": "PUSH1", "value": "0xA" }, "19022": { "op": "SWAP1" }, "19023": { "op": "DUP3" }, "19024": { "op": "ADD" }, "19025": { "op": "MSTORE" }, "19026": { "op": "PUSH10", "value": "0x2732B390372A37B5B2B7" }, "19037": { "op": "PUSH1", "value": "0xB1" }, "19039": { "op": "SHL" }, "19040": { "op": "PUSH1", "value": "0x40" }, "19042": { "op": "DUP3" }, "19043": { "op": "ADD" }, "19044": { "op": "MSTORE" }, "19045": { "op": "PUSH1", "value": "0x60" }, "19047": { "op": "ADD" }, "19048": { "op": "SWAP1" }, "19049": { "jump": "o", "op": "JUMP" }, "19050": { "op": "JUMPDEST" }, "19051": { "op": "PUSH1", "value": "0x20" }, "19053": { "op": "DUP1" }, "19054": { "op": "DUP3" }, "19055": { "op": "MSTORE" }, "19056": { "op": "PUSH1", "value": "0x11" }, "19058": { "op": "SWAP1" }, "19059": { "op": "DUP3" }, "19060": { "op": "ADD" }, "19061": { "op": "MSTORE" }, "19062": { "op": "PUSH17", "value": "0x92DCE6EACCCCD2C6D2CADCE840C6C2E6D" }, "19080": { "op": "PUSH1", "value": "0x7B" }, "19082": { "op": "SHL" }, "19083": { "op": "PUSH1", "value": "0x40" }, "19085": { "op": "DUP3" }, "19086": { "op": "ADD" }, "19087": { "op": "MSTORE" }, "19088": { "op": "PUSH1", "value": "0x60" }, "19090": { "op": "ADD" }, "19091": { "op": "SWAP1" }, "19092": { "jump": "o", "op": "JUMP" }, "19093": { "op": "JUMPDEST" }, "19094": { "op": "PUSH1", "value": "0x20" }, "19096": { "op": "DUP1" }, "19097": { "op": "DUP3" }, "19098": { "op": "MSTORE" }, "19099": { "op": "PUSH1", "value": "0x14" }, "19101": { "op": "SWAP1" }, "19102": { "op": "DUP3" }, "19103": { "op": "ADD" }, "19104": { "op": "MSTORE" }, "19105": { "op": "PUSH20", "value": "0x125B9CDD59999A58DA595B9D0819195C1BDCDA5D" }, "19126": { "op": "PUSH1", "value": "0x62" }, "19128": { "op": "SHL" }, "19129": { "op": "PUSH1", "value": "0x40" }, "19131": { "op": "DUP3" }, "19132": { "op": "ADD" }, "19133": { "op": "MSTORE" }, "19134": { "op": "PUSH1", "value": "0x60" }, "19136": { "op": "ADD" }, "19137": { "op": "SWAP1" }, "19138": { "jump": "o", "op": "JUMP" }, "19139": { "op": "JUMPDEST" }, "19140": { "op": "PUSH2", "value": "0xFFFF" }, "19143": { "op": "SWAP3" }, "19144": { "op": "SWAP1" }, "19145": { "op": "SWAP3" }, "19146": { "op": "AND" }, "19147": { "op": "DUP3" }, "19148": { "op": "MSTORE" }, "19149": { "op": "PUSH1", "value": "0x20" }, "19151": { "op": "DUP3" }, "19152": { "op": "ADD" }, "19153": { "op": "MSTORE" }, "19154": { "op": "PUSH1", "value": "0x40" }, "19156": { "op": "ADD" }, "19157": { "op": "SWAP1" }, "19158": { "jump": "o", "op": "JUMP" }, "19159": { "op": "JUMPDEST" }, "19160": { "op": "PUSH1", "value": "0x0" }, "19162": { "op": "DUP1" }, "19163": { "op": "DUP4" }, "19164": { "op": "CALLDATALOAD" }, "19165": { "op": "PUSH1", "value": "0x1E" }, "19167": { "op": "NOT" }, "19168": { "op": "DUP5" }, "19169": { "op": "CALLDATASIZE" }, "19170": { "op": "SUB" }, "19171": { "op": "ADD" }, "19172": { "op": "DUP2" }, "19173": { "op": "SLT" }, "19174": { "op": "PUSH2", "value": "0x4AED" }, "19177": { "op": "JUMPI" }, "19178": { "op": "DUP3" }, "19179": { "op": "DUP4" }, "19180": { "op": "REVERT" }, "19181": { "op": "JUMPDEST" }, "19182": { "op": "DUP4" }, "19183": { "op": "ADD" }, "19184": { "op": "DUP1" }, "19185": { "op": "CALLDATALOAD" }, "19186": { "op": "SWAP2" }, "19187": { "op": "POP" }, "19188": { "op": "PUSH1", "value": "0x1" }, "19190": { "op": "PUSH1", "value": "0x1" }, "19192": { "op": "PUSH1", "value": "0x40" }, "19194": { "op": "SHL" }, "19195": { "op": "SUB" }, "19196": { "op": "DUP3" }, "19197": { "op": "GT" }, "19198": { "op": "ISZERO" }, "19199": { "op": "PUSH2", "value": "0x4B06" }, "19202": { "op": "JUMPI" }, "19203": { "op": "DUP3" }, "19204": { "op": "DUP4" }, "19205": { "op": "REVERT" }, "19206": { "op": "JUMPDEST" }, "19207": { "op": "PUSH1", "value": "0x20" }, "19209": { "op": "SWAP1" }, "19210": { "op": "DUP2" }, "19211": { "op": "ADD" }, "19212": { "op": "SWAP3" }, "19213": { "op": "POP" }, "19214": { "op": "DUP2" }, "19215": { "op": "MUL" }, "19216": { "op": "CALLDATASIZE" }, "19217": { "op": "SUB" }, "19218": { "op": "DUP3" }, "19219": { "op": "SGT" }, "19220": { "op": "ISZERO" }, "19221": { "op": "PUSH2", "value": "0x40C7" }, "19224": { "op": "JUMPI" }, "19225": { "op": "PUSH1", "value": "0x0" }, "19227": { "op": "DUP1" }, "19228": { "op": "REVERT" }, "19229": { "op": "JUMPDEST" }, "19230": { "op": "PUSH1", "value": "0x0" }, "19232": { "op": "DUP3" }, "19233": { "op": "CALLDATALOAD" }, "19234": { "op": "PUSH1", "value": "0xDE" }, "19236": { "op": "NOT" }, "19237": { "op": "DUP4" }, "19238": { "op": "CALLDATASIZE" }, "19239": { "op": "SUB" }, "19240": { "op": "ADD" }, "19241": { "op": "DUP2" }, "19242": { "op": "SLT" }, "19243": { "op": "PUSH2", "value": "0x4B32" }, "19246": { "op": "JUMPI" }, "19247": { "op": "DUP2" }, "19248": { "op": "DUP3" }, "19249": { "op": "REVERT" }, "19250": { "op": "JUMPDEST" }, "19251": { "op": "SWAP2" }, "19252": { "op": "SWAP1" }, "19253": { "op": "SWAP2" }, "19254": { "op": "ADD" }, "19255": { "op": "SWAP3" }, "19256": { "op": "SWAP2" }, "19257": { "op": "POP" }, "19258": { "op": "POP" }, "19259": { "jump": "o", "op": "JUMP" }, "19260": { "op": "JUMPDEST" }, "19261": { "op": "PUSH1", "value": "0x0" }, "19263": { "op": "DUP3" }, "19264": { "op": "CALLDATALOAD" }, "19265": { "op": "PUSH1", "value": "0x5E" }, "19267": { "op": "NOT" }, "19268": { "op": "DUP4" }, "19269": { "op": "CALLDATASIZE" }, "19270": { "op": "SUB" }, "19271": { "op": "ADD" }, "19272": { "op": "DUP2" }, "19273": { "op": "SLT" }, "19274": { "op": "PUSH2", "value": "0x4B32" }, "19277": { "op": "JUMPI" }, "19278": { "op": "DUP2" }, "19279": { "op": "DUP3" }, "19280": { "op": "REVERT" }, "19281": { "op": "JUMPDEST" }, "19282": { "op": "PUSH1", "value": "0x40" }, "19284": { "op": "MLOAD" }, "19285": { "op": "DUP2" }, "19286": { "op": "DUP2" }, "19287": { "op": "ADD" }, "19288": { "op": "PUSH1", "value": "0x1" }, "19290": { "op": "PUSH1", "value": "0x1" }, "19292": { "op": "PUSH1", "value": "0x40" }, "19294": { "op": "SHL" }, "19295": { "op": "SUB" }, "19296": { "op": "DUP2" }, "19297": { "op": "GT" }, "19298": { "op": "DUP3" }, "19299": { "op": "DUP3" }, "19300": { "op": "LT" }, "19301": { "op": "OR" }, "19302": { "op": "ISZERO" }, "19303": { "op": "PUSH2", "value": "0x4B6C" }, "19306": { "op": "JUMPI" }, "19307": { "op": "INVALID" }, "19308": { "op": "JUMPDEST" }, "19309": { "op": "PUSH1", "value": "0x40" }, "19311": { "op": "MSTORE" }, "19312": { "op": "SWAP2" }, "19313": { "op": "SWAP1" }, "19314": { "op": "POP" }, "19315": { "jump": "o", "op": "JUMP" }, "19316": { "op": "JUMPDEST" }, "19317": { "op": "DUP1" }, "19318": { "op": "ISZERO" }, "19319": { "op": "ISZERO" }, "19320": { "op": "DUP2" }, "19321": { "op": "EQ" }, "19322": { "op": "PUSH2", "value": "0x4B82" }, "19325": { "op": "JUMPI" }, "19326": { "op": "PUSH1", "value": "0x0" }, "19328": { "op": "DUP1" }, "19329": { "op": "REVERT" }, "19330": { "op": "JUMPDEST" }, "19331": { "op": "POP" }, "19332": { "jump": "o", "op": "JUMP" }, "19333": { "op": "JUMPDEST" }, "19334": { "op": "PUSH2", "value": "0xFFFF" }, "19337": { "op": "DUP2" }, "19338": { "op": "AND" }, "19339": { "op": "DUP2" }, "19340": { "op": "EQ" }, "19341": { "op": "PUSH2", "value": "0x4B82" }, "19344": { "op": "JUMPI" }, "19345": { "op": "PUSH1", "value": "0x0" }, "19347": { "op": "DUP1" }, "19348": { "op": "REVERT" } }, "sha1": "6f2bae8e08cdffbb9523a8af153338729873fb66", "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./TradingAction.sol\";\nimport \"./ActionGuards.sol\";\nimport \"./nTokenMintAction.sol\";\nimport \"./nTokenRedeemAction.sol\";\nimport \"../SettleAssetsExternal.sol\";\nimport \"../FreeCollateralExternal.sol\";\nimport \"../../math/SafeInt256.sol\";\nimport \"../../global/StorageLayoutV1.sol\";\nimport \"../../internal/balances/BalanceHandler.sol\";\nimport \"../../internal/portfolio/PortfolioHandler.sol\";\nimport \"../../internal/AccountContextHandler.sol\";\nimport \"../../../interfaces/notional/NotionalCallback.sol\";\n\ncontract BatchAction is StorageLayoutV1, ActionGuards {\n using BalanceHandler for BalanceState;\n using PortfolioHandler for PortfolioState;\n using AccountContextHandler for AccountContext;\n using AssetRate for AssetRateParameters;\n using TokenHandler for Token;\n using SafeInt256 for int256;\n\n /// @notice Executes a batch of balance transfers including minting and redeeming nTokens.\n /// @param account the account for the action\n /// @param actions array of balance actions to take, must be sorted by currency id\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange\n /// @dev auth:msg.sender auth:ERC1155\n function batchBalanceAction(address account, BalanceAction[] calldata actions)\n external\n payable\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n BalanceState memory balanceState;\n\n for (uint256 i = 0; i < actions.length; i++) {\n BalanceAction calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n\n _executeDepositAction(\n account,\n balanceState,\n action.actionType,\n action.depositActionAmount\n );\n\n _calculateWithdrawActionAndFinalize(\n account,\n accountContext,\n balanceState,\n action.withdrawAmountInternalPrecision,\n action.withdrawEntireCashBalance,\n action.redeemToUnderlying\n );\n }\n\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of balance transfers and trading actions\n /// @param account the account for the action\n /// @param actions array of balance actions with trades to take, must be sorted by currency id\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n /// @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n /// @dev auth:msg.sender auth:ERC1155\n function batchBalanceAndTradeAction(address account, BalanceActionWithTrades[] calldata actions)\n external\n payable\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n AccountContext memory accountContext = _batchBalanceAndTradeAction(account, actions);\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of lending actions. This is different from batchBalanceAndTrade because\n /// it always pulls the required amount of tokens to get an account to a cash balance of zero. It reduces\n /// the gas costs for lending because there is no second token transfer where residual balances are sent\n /// back to the account.\n /// @dev Note that this method does not work with native ETH because it requires the ability to pull payment\n /// from an ERC20 token. Therefore, this method is marked as nonpayable. It will still worth with cETH or aETH.\n /// @param account the account for the action\n /// @param actions array of batch lending actions\n /// @dev emit:CashBalanceChange, emit:LendBorrowTrade emit:SettledCashDebt\n /// @dev auth:msg.sender auth:ERC1155\n function batchLend(address account, BatchLend[] calldata actions)\n external\n nonReentrant\n {\n require(account == msg.sender || msg.sender == address(this), \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n // NOTE: loading the portfolio state must happen after settle account to get the\n // correct portfolio, it will have changed if the account is settled.\n PortfolioState memory portfolioState = PortfolioHandler.buildPortfolioState(\n account,\n accountContext.assetArrayLength,\n 0\n );\n BalanceState memory balanceState;\n\n for (uint256 i = 0; i < actions.length; i++) {\n BatchLend calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n\n // Require that each action have at least 1 trade and all trades are lending trades\n uint256 numTrades = action.trades.length;\n require(numTrades > 0); // dev: no actions\n for (uint256 j = 0; j < numTrades; j++) {\n require(uint8(bytes1(action.trades[j])) == uint8(TradeActionType.Lend)); // dev: only lend trades\n }\n\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n (balanceState.netCashChange, portfolioState) = _executeTrades(\n account,\n action.currencyId,\n action.trades,\n accountContext,\n portfolioState\n );\n // This must be negative as a result of requiring only lending\n require(balanceState.netCashChange <= 0);\n\n // Deposit sufficient cash to get the balance up to zero. If required cash is negative (i.e. there\n // is sufficient cash) then we don't need to do anything. The account's cash balance will be net off\n // and there will be no token transfer.\n // NOTE: it is possible that free collateral decreases as a result of lending a cash balance, will\n // check FC at the end of the method.\n int256 requiredCash = balanceState.storedCashBalance.add(balanceState.netCashChange).neg();\n if (requiredCash > 0) {\n if (action.depositUnderlying) {\n // If depositing underlying, get the current asset rate and convert the required cash\n // back to underlying.\n AssetRateParameters memory ar = AssetRate.buildAssetRateStateful(action.currencyId);\n Token memory underlyingToken = TokenHandler.getUnderlyingToken(action.currencyId);\n int256 underlyingExternalAmount = underlyingToken.convertToExternal(ar.convertToUnderlying(requiredCash));\n\n if (underlyingToken.decimals < Constants.INTERNAL_TOKEN_PRECISION) {\n // If external < 8, we could truncate down and cause an off by one error, for example we need\n // 1.00000011 cash and we deposit only 1.000000, missing 11 units. Therefore, we add a unit here\n // to account for potential rounding issues when tokens are less than 8 decimals (primarily USDC).\n underlyingExternalAmount = underlyingExternalAmount.add(1);\n }\n\n // This returns the cToken / aToken amount as a result of transfer and mint. It must be sufficient to\n // cover the required cash.\n int256 assetAmountInternal = balanceState.depositUnderlyingToken(account, underlyingExternalAmount);\n require(assetAmountInternal >= requiredCash, \"Insufficient deposit\");\n } else {\n // If depositing asset tokens, then we just convert to the external precision. Need to\n // use the depositAssetToken here to handle aToken balances\n Token memory assetToken = TokenHandler.getAssetToken(action.currencyId);\n balanceState.depositAssetToken(\n account,\n assetToken.convertToExternal(requiredCash),\n false // Do not force a transfer here, will be done in finalize if required.\n );\n }\n }\n\n // Will write all the balance changes to storage and transfer asset tokens if required.\n balanceState.finalize(account, accountContext, false);\n }\n\n // Update the portfolio state if bitmap is not enabled. If bitmap is already enabled\n // then all the assets have already been updated in in storage.\n if (!accountContext.isBitmapEnabled()) {\n // NOTE: account context is updated in memory inside this method call.\n accountContext.storeAssetsAndUpdateContext(account, portfolioState, false);\n }\n\n // This will save the account context and check free collateral\n _finalizeAccountContext(account, accountContext);\n }\n\n /// @notice Executes a batch of balance transfers and trading actions via an authorized callback contract. This\n /// can be used as a \"flash loan\" facility for special contracts that migrate assets between protocols or perform\n /// other actions on behalf of the user.\n /// Contracts can borrow from Notional and receive a callback prior to an FC check, this can be useful if the contract\n /// needs to perform a trade or repay a debt on a different protocol before depositing collateral. Since Notional's AMM\n /// will never be as capital efficient or gas efficient as other flash loan facilities, this method requires whitelisting\n /// and will mainly be used for contracts that make migrating assets a better user experience.\n /// @param account the account that will take all the actions\n /// @param actions array of balance actions with trades to take, must be sorted by currency id\n /// @param callbackData arbitrary bytes to be passed backed to the caller in the callback\n /// @dev emit:CashBalanceChange, emit:nTokenSupplyChange, emit:LendBorrowTrade, emit:AddRemoveLiquidity,\n /// @dev emit:SettledCashDebt, emit:nTokenResidualPurchase, emit:ReserveFeeAccrued\n /// @dev auth:authorizedCallbackContract\n function batchBalanceAndTradeActionWithCallback(\n address account,\n BalanceActionWithTrades[] calldata actions,\n bytes calldata callbackData\n ) external payable {\n // NOTE: Re-entrancy is allowed for authorized callback functions.\n require(authorizedCallbackContract[msg.sender], \"Unauthorized\");\n requireValidAccount(account);\n\n AccountContext memory accountContext = _batchBalanceAndTradeAction(account, actions);\n accountContext.setAccountContext(account);\n\n // Be sure to set the account context before initiating the callback, all stateful updates\n // have been finalized at this point so we are safe to issue a callback. This callback may\n // re-enter Notional safely to deposit or take other actions.\n NotionalCallback(msg.sender).notionalCallback(msg.sender, account, callbackData);\n\n if (accountContext.hasDebt != 0x00) {\n // NOTE: this method may update the account context to turn off the hasDebt flag, this\n // is ok because the worst case would be causing an extra free collateral check when it\n // is not required. This check will be entered if the account hasDebt prior to the callback\n // being triggered above, so it will happen regardless of what the callback function does.\n FreeCollateralExternal.checkFreeCollateralAndRevert(account);\n }\n }\n\n function _batchBalanceAndTradeAction(\n address account,\n BalanceActionWithTrades[] calldata actions\n ) internal returns (AccountContext memory) {\n AccountContext memory accountContext = _settleAccountIfRequired(account);\n BalanceState memory balanceState;\n // NOTE: loading the portfolio state must happen after settle account to get the\n // correct portfolio, it will have changed if the account is settled.\n PortfolioState memory portfolioState = PortfolioHandler.buildPortfolioState(\n account,\n accountContext.assetArrayLength,\n 0\n );\n\n for (uint256 i = 0; i < actions.length; i++) {\n BalanceActionWithTrades calldata action = actions[i];\n // msg.value will only be used when currency id == 1, referencing ETH. The requirement\n // to sort actions by increasing id enforces that msg.value will only be used once.\n if (i > 0) {\n require(action.currencyId > actions[i - 1].currencyId, \"Unsorted actions\");\n }\n // Loads the currencyId into balance state\n balanceState.loadBalanceState(account, action.currencyId, accountContext);\n\n // Does not revert on invalid action types here, they also have no effect.\n _executeDepositAction(\n account,\n balanceState,\n action.actionType,\n action.depositActionAmount\n );\n\n if (action.trades.length > 0) {\n int256 netCash;\n (netCash, portfolioState) = _executeTrades(\n account,\n action.currencyId,\n action.trades,\n accountContext,\n portfolioState\n );\n\n // If the account owes cash after trading, ensure that it has enough\n if (netCash < 0) _checkSufficientCash(balanceState, netCash.neg());\n balanceState.netCashChange = balanceState.netCashChange.add(netCash);\n }\n\n _calculateWithdrawActionAndFinalize(\n account,\n accountContext,\n balanceState,\n action.withdrawAmountInternalPrecision,\n action.withdrawEntireCashBalance,\n action.redeemToUnderlying\n );\n }\n\n // Update the portfolio state if bitmap is not enabled. If bitmap is already enabled\n // then all the assets have already been updated in in storage.\n if (!accountContext.isBitmapEnabled()) {\n // NOTE: account context is updated in memory inside this method call.\n accountContext.storeAssetsAndUpdateContext(account, portfolioState, false);\n }\n\n // NOTE: free collateral and account context will be set outside of this method call.\n return accountContext;\n }\n\n /// @dev Executes deposits\n function _executeDepositAction(\n address account,\n BalanceState memory balanceState,\n DepositActionType depositType,\n uint256 depositActionAmount_\n ) private {\n int256 depositActionAmount = SafeInt256.toInt(depositActionAmount_);\n int256 assetInternalAmount;\n require(depositActionAmount >= 0);\n\n if (depositType == DepositActionType.None) {\n return;\n } else if (\n depositType == DepositActionType.DepositAsset ||\n depositType == DepositActionType.DepositAssetAndMintNToken\n ) {\n // NOTE: this deposit will NOT revert on a failed transfer unless there is a\n // transfer fee. The actual transfer will take effect later in balanceState.finalize\n assetInternalAmount = balanceState.depositAssetToken(\n account,\n depositActionAmount,\n false // no force transfer\n );\n } else if (\n depositType == DepositActionType.DepositUnderlying ||\n depositType == DepositActionType.DepositUnderlyingAndMintNToken\n ) {\n // NOTE: this deposit will revert on a failed transfer immediately\n assetInternalAmount = balanceState.depositUnderlyingToken(account, depositActionAmount);\n } else if (depositType == DepositActionType.ConvertCashToNToken) {\n // _executeNTokenAction will check if the account has sufficient cash\n assetInternalAmount = depositActionAmount;\n }\n\n _executeNTokenAction(\n balanceState,\n depositType,\n depositActionAmount,\n assetInternalAmount\n );\n }\n\n /// @dev Executes nToken actions\n function _executeNTokenAction(\n BalanceState memory balanceState,\n DepositActionType depositType,\n int256 depositActionAmount,\n int256 assetInternalAmount\n ) private {\n // After deposits have occurred, check if we are minting nTokens\n if (\n depositType == DepositActionType.DepositAssetAndMintNToken ||\n depositType == DepositActionType.DepositUnderlyingAndMintNToken ||\n depositType == DepositActionType.ConvertCashToNToken\n ) {\n // Will revert if trying to mint ntokens and results in a negative cash balance\n _checkSufficientCash(balanceState, assetInternalAmount);\n balanceState.netCashChange = balanceState.netCashChange.sub(assetInternalAmount);\n\n // Converts a given amount of cash (denominated in internal precision) into nTokens\n int256 tokensMinted = nTokenMintAction.nTokenMint(\n balanceState.currencyId,\n assetInternalAmount\n );\n\n balanceState.netNTokenSupplyChange = balanceState.netNTokenSupplyChange.add(\n tokensMinted\n );\n } else if (depositType == DepositActionType.RedeemNToken) {\n require(\n // prettier-ignore\n balanceState\n .storedNTokenBalance\n .add(balanceState.netNTokenTransfer) // transfers would not occur at this point\n .add(balanceState.netNTokenSupplyChange) >= depositActionAmount,\n \"Insufficient token balance\"\n );\n\n balanceState.netNTokenSupplyChange = balanceState.netNTokenSupplyChange.sub(\n depositActionAmount\n );\n\n int256 assetCash = nTokenRedeemAction.nTokenRedeemViaBatch(\n balanceState.currencyId,\n depositActionAmount\n );\n\n balanceState.netCashChange = balanceState.netCashChange.add(assetCash);\n }\n }\n\n /// @dev Calculations any withdraws and finalizes balances\n function _calculateWithdrawActionAndFinalize(\n address account,\n AccountContext memory accountContext,\n BalanceState memory balanceState,\n uint256 withdrawAmountInternalPrecision,\n bool withdrawEntireCashBalance,\n bool redeemToUnderlying\n ) private {\n int256 withdrawAmount = SafeInt256.toInt(withdrawAmountInternalPrecision);\n require(withdrawAmount >= 0); // dev: withdraw action overflow\n\n // NOTE: if withdrawEntireCashBalance is set it will override the withdrawAmountInternalPrecision input\n if (withdrawEntireCashBalance) {\n // This option is here so that accounts do not end up with dust after lending since we generally\n // cannot calculate exact cash amounts from the liquidity curve.\n withdrawAmount = balanceState.storedCashBalance\n .add(balanceState.netCashChange)\n .add(balanceState.netAssetTransferInternalPrecision);\n\n // If the account has a negative cash balance then cannot withdraw\n if (withdrawAmount < 0) withdrawAmount = 0;\n }\n\n // prettier-ignore\n balanceState.netAssetTransferInternalPrecision = balanceState\n .netAssetTransferInternalPrecision\n .sub(withdrawAmount);\n\n balanceState.finalize(account, accountContext, redeemToUnderlying);\n }\n\n function _finalizeAccountContext(address account, AccountContext memory accountContext)\n private\n {\n // At this point all balances, market states and portfolio states should be finalized. Just need to check free\n // collateral if required.\n accountContext.setAccountContext(account);\n if (accountContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(account);\n }\n }\n\n function _executeTrades(\n address account,\n uint16 currencyId,\n bytes32[] calldata trades,\n AccountContext memory accountContext,\n PortfolioState memory portfolioState\n ) private returns (int256 netCash, PortfolioState memory postTradeState) {\n if (accountContext.isBitmapEnabled()) {\n require(\n accountContext.bitmapCurrencyId == currencyId,\n \"Invalid trades for account\"\n );\n bool didIncurDebt;\n (netCash, didIncurDebt) = TradingAction.executeTradesBitmapBatch(\n account,\n accountContext.bitmapCurrencyId,\n accountContext.nextSettleTime,\n trades\n );\n if (didIncurDebt) {\n accountContext.hasDebt = Constants.HAS_ASSET_DEBT | accountContext.hasDebt;\n }\n } else {\n // NOTE: we return portfolio state here instead of setting it inside executeTradesArrayBatch\n // because we want to only write to storage once after all trades are completed\n (postTradeState, netCash) = TradingAction.executeTradesArrayBatch(\n account,\n currencyId,\n portfolioState,\n trades\n );\n }\n }\n\n /// @notice When lending, adding liquidity or minting nTokens the account must have a sufficient cash balance\n /// to do so.\n function _checkSufficientCash(BalanceState memory balanceState, int256 amountInternalPrecision)\n private\n pure\n {\n // The total cash position at this point is: storedCashBalance + netCashChange + netAssetTransferInternalPrecision\n require(\n amountInternalPrecision >= 0 &&\n balanceState.storedCashBalance\n .add(balanceState.netCashChange)\n .add(balanceState.netAssetTransferInternalPrecision) >= amountInternalPrecision,\n \"Insufficient cash\"\n );\n }\n\n function _settleAccountIfRequired(address account)\n private\n returns (AccountContext memory)\n {\n AccountContext memory accountContext = AccountContextHandler.getAccountContext(account);\n if (accountContext.mustSettleAssets()) {\n // Returns a new memory reference to account context\n return SettleAssetsExternal.settleAccount(account, accountContext);\n } else {\n return accountContext;\n }\n }\n\n /// @notice Get a list of deployed library addresses (sorted by library name)\n function getLibInfo() external view returns (address, address, address, address, address, address) {\n return (\n address(FreeCollateralExternal), \n address(MigrateIncentives), \n address(SettleAssetsExternal), \n address(TradingAction),\n address(nTokenMintAction), \n address(nTokenRedeemAction)\n );\n }\n}\n", "sourceMap": "591:23559:29:-:0;;;;;;;;;;;;;;;;;;;", "sourcePath": "contracts/external/actions/BatchAction.sol", "type": "contract" } diff --git a/external/abi/notional/ERC1155Action.json b/external/abi/notional/ERC1155Action.json index dfdebaf8d..11687f7de 100644 --- a/external/abi/notional/ERC1155Action.json +++ b/external/abi/notional/ERC1155Action.json @@ -1,94889 +1 @@ -{ - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "operator", - "type": "address" - }, - { - "indexed": false, - "internalType": "bool", - "name": "approved", - "type": "bool" - } - ], - "name": "ApprovalForAll", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "operator", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256[]", - "name": "ids", - "type": "uint256[]" - }, - { - "indexed": false, - "internalType": "uint256[]", - "name": "values", - "type": "uint256[]" - } - ], - "name": "TransferBatch", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "operator", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "TransferSingle", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "value", - "type": "string" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "id", - "type": "uint256" - } - ], - "name": "URI", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "id", - "type": "uint256" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "accounts", - "type": "address[]" - }, - { - "internalType": "uint256[]", - "name": "ids", - "type": "uint256[]" - } - ], - "name": "balanceOfBatch", - "outputs": [ - { - "internalType": "uint256[]", - "name": "", - "type": "uint256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "ids", - "type": "uint256[]" - }, - { - "internalType": "uint256[]", - "name": "amounts", - "type": "uint256[]" - } - ], - "name": "decodeToAssets", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "currencyId", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maturity", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "assetType", - "type": "uint256" - }, - { - "internalType": "int256", - "name": "notional", - "type": "int256" - }, - { - "internalType": "uint256", - "name": "storageSlot", - "type": "uint256" - }, - { - "internalType": "enum AssetStorageState", - "name": "storageState", - "type": "uint8" - } - ], - "internalType": "struct PortfolioAsset[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "currencyId", - "type": "uint16" - }, - { - "internalType": "uint40", - "name": "maturity", - "type": "uint40" - }, - { - "internalType": "uint8", - "name": "assetType", - "type": "uint8" - } - ], - "name": "encodeToId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getLibInfo", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "address", - "name": "operator", - "type": "address" - } - ], - "name": "isApprovedForAll", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pauseGuardian", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pauseRouter", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256[]", - "name": "ids", - "type": "uint256[]" - }, - { - "internalType": "uint256[]", - "name": "amounts", - "type": "uint256[]" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "safeBatchTransferFrom", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "safeTransferFrom", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "operator", - "type": "address" - }, - { - "internalType": "bool", - "name": "approved", - "type": "bool" - } - ], - "name": "setApprovalForAll", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "id", - "type": "uint256" - } - ], - "name": "signedBalanceOf", - "outputs": [ - { - "internalType": "int256", - "name": "notional", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address[]", - "name": "accounts", - "type": "address[]" - }, - { - "internalType": "uint256[]", - "name": "ids", - "type": "uint256[]" - } - ], - "name": "signedBalanceOfBatch", - "outputs": [ - { - "internalType": "int256[]", - "name": "", - "type": "int256[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "allSourcePaths": { - "141": "interfaces/IEIP20NonStandard.sol", - "142": "interfaces/IERC1155TokenReceiver.sol", - "147": "interfaces/aave/ILendingPool.sol", - "151": "interfaces/compound/CErc20Interface.sol", - "152": "interfaces/compound/CEtherInterface.sol", - "153": "interfaces/compound/CTokenInterface.sol", - "155": "interfaces/notional/AssetRateAdapter.sol", - "157": "interfaces/notional/IRewarder.sol", - "16": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/utils/Address.sol", - "164": "interfaces/notional/nERC1155Interface.sol", - "21": "contracts/external/FreeCollateralExternal.sol", - "22": "contracts/external/MigrateIncentives.sol", - "25": "contracts/external/SettleAssetsExternal.sol", - "28": "contracts/external/actions/ActionGuards.sol", - "30": "contracts/external/actions/ERC1155Action.sol", - "6": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/math/SafeMath.sol", - "60": "contracts/global/Constants.sol", - "61": "contracts/global/Deployments.sol", - "62": "contracts/global/LibStorage.sol", - "63": "contracts/global/StorageLayoutV1.sol", - "65": "contracts/global/Types.sol", - "66": "contracts/internal/AccountContextHandler.sol", - "67": "contracts/internal/balances/BalanceHandler.sol", - "68": "contracts/internal/balances/Incentives.sol", - "69": "contracts/internal/balances/TokenHandler.sol", - "70": "contracts/internal/balances/protocols/AaveHandler.sol", - "71": "contracts/internal/balances/protocols/CompoundHandler.sol", - "72": "contracts/internal/balances/protocols/GenericToken.sol", - "76": "contracts/internal/markets/AssetRate.sol", - "77": "contracts/internal/markets/CashGroup.sol", - "78": "contracts/internal/markets/DateTime.sol", - "79": "contracts/internal/markets/Market.sol", - "80": "contracts/internal/nToken/nTokenCalculations.sol", - "81": "contracts/internal/nToken/nTokenHandler.sol", - "82": "contracts/internal/nToken/nTokenSupply.sol", - "83": "contracts/internal/portfolio/BitmapAssetsHandler.sol", - "84": "contracts/internal/portfolio/PortfolioHandler.sol", - "85": "contracts/internal/portfolio/TransferAssets.sol", - "86": "contracts/internal/settlement/SettleBitmapAssets.sol", - "87": "contracts/internal/settlement/SettlePortfolioAssets.sol", - "88": "contracts/internal/valuation/AssetHandler.sol", - "89": "contracts/internal/valuation/ExchangeRate.sol", - "90": "contracts/internal/valuation/FreeCollateral.sol", - "91": "contracts/math/ABDKMath64x64.sol", - "92": "contracts/math/Bitmap.sol", - "93": "contracts/math/FloatingPoint56.sol", - "94": "contracts/math/SafeInt256.sol" - }, - "ast": { - "absolutePath": "contracts/external/actions/ERC1155Action.sol", - "exportedSymbols": { - "ABDKMath64x64": [ - 44430 - ], - "AaveHandler": [ - 26669 - ], - "AccountBalance": [ - 57824 - ], - "AccountContext": [ - 57743 - ], - "AccountContextHandler": [ - 24055 - ], - "ActionGuards": [ - 3662 - ], - "Address": [ - 58950 - ], - "AggregatorInterface": [ - 62384 - ], - "AggregatorV2V3Interface": [ - 58997 - ], - "AggregatorV3Interface": [ - 62430 - ], - "AssetHandler": [ - 40067 - ], - "AssetRate": [ - 30677 - ], - "AssetRateAdapter": [ - 59041 - ], - "AssetRateParameters": [ - 57639 - ], - "AssetRateStorage": [ - 57707 - ], - "AssetStorageState": [ - 57500 - ], - "BalanceAction": [ - 57521 - ], - "BalanceActionWithTrades": [ - 57537 - ], - "BalanceHandler": [ - 25398 - ], - "BalanceState": [ - 57632 - ], - "BalanceStorage": [ - 57767 - ], - "BatchLend": [ - 57508 - ], - "Bitmap": [ - 44771 - ], - "BitmapAssetsHandler": [ - 37096 - ], - "CErc20Interface": [ - 59445 - ], - "CEtherInterface": [ - 59757 - ], - "CTokenInterface": [ - 59740 - ], - "CashGroup": [ - 31956 - ], - "CashGroupParameters": [ - 57648 - ], - "CashGroupSettings": [ - 57732 - ], - "CompoundHandler": [ - 26861 - ], - "Constants": [ - 22832 - ], - "Context": [ - 62453 - ], - "DateTime": [ - 32595 - ], - "Deployments": [ - 22839 - ], - "DepositActionType": [ - 57495 - ], - "ERC1155Action": [ - 6026 - ], - "ERC20": [ - 60749 - ], - "ETHRate": [ - 57613 - ], - "ETHRateStorage": [ - 57702 - ], - "ExchangeRate": [ - 40263 - ], - "FloatingPoint56": [ - 44847 - ], - "FreeCollateral": [ - 41676 - ], - "FreeCollateralExternal": [ - 618 - ], - "GenericToken": [ - 26993 - ], - "IAToken": [ - 60771 - ], - "IATokenFull": [ - 60806 - ], - "IEIP20NonStandard": [ - 61875 - ], - "IERC1155": [ - 58654 - ], - "IERC1155TokenReceiver": [ - 58988 - ], - "IERC165": [ - 62336 - ], - "IERC20": [ - 59607 - ], - "ILendingPool": [ - 60888 - ], - "IRewarder": [ - 59057 - ], - "IScaledBalanceToken": [ - 60796 - ], - "Incentives": [ - 25585 - ], - "LendingPoolStorage": [ - 60812 - ], - "LibStorage": [ - 23238 - ], - "LiquidationFactors": [ - 57591 - ], - "Market": [ - 34509 - ], - "MarketParameters": [ - 57678 - ], - "MarketStorage": [ - 57787 - ], - "MigrateIncentives": [ - 775 - ], - "NotionalCalculations": [ - 57001 - ], - "NotionalGovernance": [ - 58068 - ], - "NotionalProxy": [ - 57468 - ], - "NotionalTreasury": [ - 59529 - ], - "NotionalViews": [ - 58520 - ], - "PortfolioAsset": [ - 57661 - ], - "PortfolioAssetStorage": [ - 57799 - ], - "PortfolioHandler": [ - 38387 - ], - "PortfolioState": [ - 57602 - ], - "SafeInt256": [ - 45162 - ], - "SafeMath": [ - 56637 - ], - "SettleAmount": [ - 57542 - ], - "SettleAssetsExternal": [ - 1878 - ], - "SettleBitmapAssets": [ - 38867 - ], - "SettlePortfolioAssets": [ - 39292 - ], - "SettlementRateStorage": [ - 57774 - ], - "StorageLayoutV1": [ - 23292 - ], - "Token": [ - 57553 - ], - "TokenHandler": [ - 26426 - ], - "TokenStorage": [ - 57689 - ], - "TokenType": [ - 57480 - ], - "TradeActionType": [ - 57487 - ], - "TransferAssets": [ - 38618 - ], - "ifCashStorage": [ - 57790 - ], - "nERC1155Interface": [ - 58229 - ], - "nTokenCalculations": [ - 35079 - ], - "nTokenContext": [ - 57758 - ], - "nTokenERC20": [ - 59173 - ], - "nTokenHandler": [ - 36105 - ], - "nTokenPortfolio": [ - 57568 - ], - "nTokenSupply": [ - 36407 - ], - "nTokenTotalSupplyStorage": [ - 57813 - ], - "nTokenTotalSupplyStorage_deprecated": [ - 57806 - ] - }, - "id": 6027, - "license": "GPL-3.0-only", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 4842, - "literals": [ - "solidity", - "^", - "0.7", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "41:23:30" - }, - { - "id": 4843, - "literals": [ - "abicoder", - "v2" - ], - "nodeType": "PragmaDirective", - "src": "65:19:30" - }, - { - "absolutePath": "contracts/external/actions/ActionGuards.sol", - "file": "./ActionGuards.sol", - "id": 4844, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 3663, - "src": "86:28:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/FreeCollateralExternal.sol", - "file": "../FreeCollateralExternal.sol", - "id": 4845, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 619, - "src": "115:39:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/global/StorageLayoutV1.sol", - "file": "../../global/StorageLayoutV1.sol", - "id": 4846, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 23293, - "src": "155:42:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/math/SafeInt256.sol", - "file": "../../math/SafeInt256.sol", - "id": 4847, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 45163, - "src": "198:35:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/internal/AccountContextHandler.sol", - "file": "../../internal/AccountContextHandler.sol", - "id": 4848, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 24056, - "src": "234:50:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/internal/portfolio/TransferAssets.sol", - "file": "../../internal/portfolio/TransferAssets.sol", - "id": 4849, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 38619, - "src": "285:53:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/internal/portfolio/PortfolioHandler.sol", - "file": "../../internal/portfolio/PortfolioHandler.sol", - "id": 4850, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 38388, - "src": "339:55:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/NotionalProxy.sol", - "file": "../../../interfaces/notional/NotionalProxy.sol", - "id": 4851, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 57469, - "src": "395:56:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/IERC1155TokenReceiver.sol", - "file": "../../../interfaces/IERC1155TokenReceiver.sol", - "id": 4852, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 58989, - "src": "452:55:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/nERC1155Interface.sol", - "file": "../../../interfaces/notional/nERC1155Interface.sol", - "id": 4853, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 58230, - "src": "508:60:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/token/ERC1155/IERC1155.sol", - "file": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", - "id": 4854, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 58655, - "src": "569:60:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/utils/Address.sol", - "file": "@openzeppelin/contracts/utils/Address.sol", - "id": 4855, - "nodeType": "ImportDirective", - "scope": 6027, - "sourceUnit": 58951, - "src": "630:51:30", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 4856, - "name": "nERC1155Interface", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 58229, - "src": "709:17:30", - "typeDescriptions": { - "typeIdentifier": "t_contract$_nERC1155Interface_$58229", - "typeString": "contract nERC1155Interface" - } - }, - "id": 4857, - "nodeType": "InheritanceSpecifier", - "src": "709:17:30" - }, - { - "baseName": { - "id": 4858, - "name": "ActionGuards", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3662, - "src": "728:12:30", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ActionGuards_$3662", - "typeString": "contract ActionGuards" - } - }, - "id": 4859, - "nodeType": "InheritanceSpecifier", - "src": "728:12:30" - } - ], - "contractDependencies": [ - 3662, - 23292, - 58229 - ], - "contractKind": "contract", - "fullyImplemented": true, - "id": 6026, - "linearizedBaseContracts": [ - 6026, - 3662, - 23292, - 58229 - ], - "name": "ERC1155Action", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 4862, - "libraryName": { - "id": 4860, - "name": "SafeInt256", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 45162, - "src": "753:10:30", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeInt256_$45162", - "typeString": "library SafeInt256" - } - }, - "nodeType": "UsingForDirective", - "src": "747:28:30", - "typeName": { - "id": 4861, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "768:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - }, - { - "id": 4865, - "libraryName": { - "id": 4863, - "name": "AccountContextHandler", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 24055, - "src": "786:21:30", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AccountContextHandler_$24055", - "typeString": "library AccountContextHandler" - } - }, - "nodeType": "UsingForDirective", - "src": "780:47:30", - "typeName": { - "id": 4864, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "812:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - } - }, - { - "constant": true, - "id": 4873, - "mutability": "constant", - "name": "ERC1155_ACCEPTED", - "nodeType": "VariableDeclaration", - "scope": 6026, - "src": "833:121:30", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 4866, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "833:6:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "value": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "6f6e45524331313535526563656976656428616464726573732c616464726573732c75696e743235362c75696e743235362c627974657329", - "id": 4870, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "894:58:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97", - "typeString": "literal_string \"onERC1155Received(address,address,uint256,uint256,bytes)\"" - }, - "value": "onERC1155Received(address,address,uint256,uint256,bytes)" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_f23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97", - "typeString": "literal_string \"onERC1155Received(address,address,uint256,uint256,bytes)\"" - } - ], - "id": 4869, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "884:9:30", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 4871, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "884:69:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 4868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "877:6:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 4867, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "877:6:30", - "typeDescriptions": {} - } - }, - "id": 4872, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "877:77:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - }, - { - "constant": true, - "id": 4881, - "mutability": "constant", - "name": "ERC1155_BATCH_ACCEPTED", - "nodeType": "VariableDeclaration", - "scope": 6026, - "src": "960:136:30", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 4874, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "960:6:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "value": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "6f6e455243313135354261746368526563656976656428616464726573732c616464726573732c75696e743235365b5d2c75696e743235365b5d2c627974657329", - "id": 4878, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1027:67:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_bc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621", - "typeString": "literal_string \"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"" - }, - "value": "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_bc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621", - "typeString": "literal_string \"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"" - } - ], - "id": 4877, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1017:9:30", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 4879, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1017:78:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 4876, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1010:6:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 4875, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "1010:6:30", - "typeDescriptions": {} - } - }, - "id": 4880, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1010:86:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - }, - { - "baseFunctions": [ - 58119 - ], - "body": { - "id": 4896, - "nodeType": "Block", - "src": "1188:65:30", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 4894, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4889, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4883, - "src": "1205:11:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 4891, - "name": "IERC1155", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58654, - "src": "1225:8:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC1155_$58654_$", - "typeString": "type(contract IERC1155)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC1155_$58654_$", - "typeString": "type(contract IERC1155)" - } - ], - "id": 4890, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -27, - "src": "1220:4:30", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 4892, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1220:14:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC1155_$58654", - "typeString": "type(contract IERC1155)" - } - }, - "id": 4893, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "1220:26:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "1205:41:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 4888, - "id": 4895, - "nodeType": "Return", - "src": "1198:48:30" - } - ] - }, - "functionSelector": "01ffc9a7", - "id": 4897, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4885, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1164:8:30" - }, - "parameters": { - "id": 4884, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4883, - "mutability": "mutable", - "name": "interfaceId", - "nodeType": "VariableDeclaration", - "scope": 4897, - "src": "1130:18:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 4882, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "1130:6:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "1129:20:30" - }, - "returnParameters": { - "id": 4888, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4887, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4897, - "src": "1182:4:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4886, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1182:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1181:6:30" - }, - "scope": 6026, - "src": "1103:150:30", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 58128 - ], - "body": { - "id": 4924, - "nodeType": "Block", - "src": "1829:116:30", - "statements": [ - { - "assignments": [ - 4909 - ], - "declarations": [ - { - "constant": false, - "id": 4909, - "mutability": "mutable", - "name": "notional", - "nodeType": "VariableDeclaration", - "scope": 4924, - "src": "1839:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4908, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1839:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 4914, - "initialValue": { - "arguments": [ - { - "id": 4911, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4900, - "src": "1873:7:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 4912, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4902, - "src": "1882:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 4910, - "name": "signedBalanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4971, - "src": "1857:15:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_int256_$", - "typeString": "function (address,uint256) view returns (int256)" - } - }, - "id": 4913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1857:28:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1839:46:30" - }, - { - "expression": { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 4917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 4915, - "name": "notional", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4909, - "src": "1902:8:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "30", - "id": 4916, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1913:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1902:12:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4919, - "name": "notional", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4909, - "src": "1921:8:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4920, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "toUint", - "nodeType": "MemberAccess", - "referencedDeclaration": 45101, - "src": "1921:15:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$bound_to$_t_int256_$", - "typeString": "function (int256) pure returns (uint256)" - } - }, - "id": 4921, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1921:17:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 4922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "1902:36:30", - "trueExpression": { - "hexValue": "30", - "id": 4918, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1917:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 4907, - "id": 4923, - "nodeType": "Return", - "src": "1895:43:30" - } - ] - }, - "documentation": { - "id": 4898, - "nodeType": "StructuredDocumentation", - "src": "1259:478:30", - "text": "@notice Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by\n this method do not show negative fCash balances because only unsigned integers are returned. They\n are represented by zero here. Use `signedBalanceOf` to get a signed return value.\n @param account account to get the id for\n @param id the ERC1155 id\n @return Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)" - }, - "functionSelector": "00fdd58e", - "id": 4925, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4904, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1802:8:30" - }, - "parameters": { - "id": 4903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4900, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4925, - "src": "1761:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4899, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1761:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4902, - "mutability": "mutable", - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 4925, - "src": "1778:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4901, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1778:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1760:29:30" - }, - "returnParameters": { - "id": 4907, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4906, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 4925, - "src": "1820:7:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4905, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1820:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1819:9:30" - }, - "scope": 6026, - "src": "1742:203:30", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 58149 - ], - "body": { - "id": 4970, - "nodeType": "Block", - "src": "2273:436:30", - "statements": [ - { - "assignments": [ - 4937 - ], - "declarations": [ - { - "constant": false, - "id": 4937, - "mutability": "mutable", - "name": "accountContext", - "nodeType": "VariableDeclaration", - "scope": 4970, - "src": "2283:36:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 4936, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "2283:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 4942, - "initialValue": { - "arguments": [ - { - "id": 4940, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4928, - "src": "2362:7:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 4938, - "name": "AccountContextHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24055, - "src": "2322:21:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", - "typeString": "type(library AccountContextHandler)" - } - }, - "id": 4939, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23345, - "src": "2322:39:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) view returns (struct AccountContext memory)" - } - }, - "id": 4941, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2322:48:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2283:87:30" - }, - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 4943, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4937, - "src": "2385:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4944, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "isBitmapEnabled", - "nodeType": "MemberAccess", - "referencedDeclaration": 23385, - "src": "2385:30:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) pure returns (bool)" - } - }, - "id": 4945, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2385:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 4968, - "nodeType": "Block", - "src": "2523:180:30", - "statements": [ - { - "expression": { - "id": 4966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4956, - "name": "notional", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4934, - "src": "2537:8:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "id": 4960, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4928, - "src": "2617:7:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4961, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4937, - "src": "2626:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4962, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetArrayLength", - "nodeType": "MemberAccess", - "referencedDeclaration": 57738, - "src": "2626:31:30", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "expression": { - "id": 4958, - "name": "PortfolioHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38387, - "src": "2581:16:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", - "typeString": "type(library PortfolioHandler)" - } - }, - "id": 4959, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getSortedPortfolio", - "nodeType": "MemberAccess", - "referencedDeclaration": 38099, - "src": "2581:35:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (address,uint8) view returns (struct PortfolioAsset memory[] memory)" - } - }, - "id": 4963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2581:77:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - { - "id": 4964, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4930, - "src": "2676:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 4957, - "name": "_balanceInArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5198, - "src": "2548:15:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_uint256_$returns$_t_int256_$", - "typeString": "function (struct PortfolioAsset memory[] memory,uint256) pure returns (int256)" - } - }, - "id": 4965, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2548:144:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "2537:155:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4967, - "nodeType": "ExpressionStatement", - "src": "2537:155:30" - } - ] - }, - "id": 4969, - "nodeType": "IfStatement", - "src": "2381:322:30", - "trueBody": { - "id": 4955, - "nodeType": "Block", - "src": "2419:98:30", - "statements": [ - { - "expression": { - "id": 4953, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 4946, - "name": "notional", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4934, - "src": "2433:8:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 4948, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4928, - "src": "2461:7:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 4949, - "name": "accountContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4937, - "src": "2470:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 4950, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "bitmapCurrencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57740, - "src": "2470:31:30", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 4951, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4930, - "src": "2503:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 4947, - "name": "_balanceInBitmap", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5139, - "src": "2444:16:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_int256_$", - "typeString": "function (address,uint256,uint256) view returns (int256)" - } - }, - "id": 4952, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2444:62:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "2433:73:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4954, - "nodeType": "ExpressionStatement", - "src": "2433:73:30" - } - ] - } - } - ] - }, - "documentation": { - "id": 4926, - "nodeType": "StructuredDocumentation", - "src": "1951:216:30", - "text": "@notice Returns the balance of an ERC1155 id on an account.\n @param account account to get the id for\n @param id the ERC1155 id\n @return notional balance of the ERC1155 id as a signed integer" - }, - "functionSelector": "0fac8f09", - "id": 4971, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "signedBalanceOf", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4932, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2238:8:30" - }, - "parameters": { - "id": 4931, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4928, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 4971, - "src": "2197:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 4927, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2197:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4930, - "mutability": "mutable", - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 4971, - "src": "2214:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4929, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2214:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2196:29:30" - }, - "returnParameters": { - "id": 4935, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4934, - "mutability": "mutable", - "name": "notional", - "nodeType": "VariableDeclaration", - "scope": 4971, - "src": "2256:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4933, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2256:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2255:17:30" - }, - "scope": 6026, - "src": "2172:537:30", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 58161 - ], - "body": { - "id": 5032, - "nodeType": "Block", - "src": "3117:335:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 4990, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 4986, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4975, - "src": "3135:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 4987, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3135:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 4988, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4978, - "src": "3154:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 4989, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3154:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3135:29:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 4985, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "3127:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 4991, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3127:38:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4992, - "nodeType": "ExpressionStatement", - "src": "3127:38:30" - }, - { - "assignments": [ - 4997 - ], - "declarations": [ - { - "constant": false, - "id": 4997, - "mutability": "mutable", - "name": "amounts", - "nodeType": "VariableDeclaration", - "scope": 5032, - "src": "3175:23:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", - "typeString": "int256[]" - }, - "typeName": { - "baseType": { - "id": 4995, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3175:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4996, - "nodeType": "ArrayTypeName", - "src": "3175:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", - "typeString": "int256[]" - } - }, - "visibility": "internal" - } - ], - "id": 5004, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 5001, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4975, - "src": "3214:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3214:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5000, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "3201:12:30", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_int256_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (int256[] memory)" - }, - "typeName": { - "baseType": { - "id": 4998, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3205:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4999, - "nodeType": "ArrayTypeName", - "src": "3205:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", - "typeString": "int256[]" - } - } - }, - "id": 5003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3201:29:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", - "typeString": "int256[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3175:55:30" - }, - { - "body": { - "id": 5028, - "nodeType": "Block", - "src": "3283:138:30", - "statements": [ - { - "expression": { - "id": 5026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5015, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4997, - "src": "3361:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", - "typeString": "int256[] memory" - } - }, - "id": 5017, - "indexExpression": { - "id": 5016, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5006, - "src": "3369:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3361:10:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "baseExpression": { - "id": 5019, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4975, - "src": "3390:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5021, - "indexExpression": { - "id": 5020, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5006, - "src": "3399:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3390:11:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "baseExpression": { - "id": 5022, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4978, - "src": "3403:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5024, - "indexExpression": { - "id": 5023, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5006, - "src": "3407:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3403:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5018, - "name": "signedBalanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4971, - "src": "3374:15:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_int256_$", - "typeString": "function (address,uint256) view returns (int256)" - } - }, - "id": 5025, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3374:36:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "3361:49:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 5027, - "nodeType": "ExpressionStatement", - "src": "3361:49:30" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5011, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5008, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5006, - "src": "3257:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 5009, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4975, - "src": "3261:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5010, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3261:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3257:19:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5029, - "initializationExpression": { - "assignments": [ - 5006 - ], - "declarations": [ - { - "constant": false, - "id": 5006, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 5029, - "src": "3246:9:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5005, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3246:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5007, - "nodeType": "VariableDeclarationStatement", - "src": "3246:9:30" - }, - "loopExpression": { - "expression": { - "id": 5013, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "3278:3:30", - "subExpression": { - "id": 5012, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5006, - "src": "3278:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5014, - "nodeType": "ExpressionStatement", - "src": "3278:3:30" - }, - "nodeType": "ForStatement", - "src": "3241:180:30" - }, - { - "expression": { - "id": 5030, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4997, - "src": "3438:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", - "typeString": "int256[] memory" - } - }, - "functionReturnParameters": 4984, - "id": 5031, - "nodeType": "Return", - "src": "3431:14:30" - } - ] - }, - "documentation": { - "id": 4972, - "nodeType": "StructuredDocumentation", - "src": "2715:229:30", - "text": "@notice Returns the balance of a batch of accounts and ids.\n @param accounts array of accounts to get balances for\n @param ids array of ids to get balances for\n @return Returns an array of signed balances" - }, - "functionSelector": "81a86855", - "id": 5033, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "signedBalanceOfBatch", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4980, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3070:8:30" - }, - "parameters": { - "id": 4979, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4975, - "mutability": "mutable", - "name": "accounts", - "nodeType": "VariableDeclaration", - "scope": 5033, - "src": "2979:27:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 4973, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2979:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 4974, - "nodeType": "ArrayTypeName", - "src": "2979:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4978, - "mutability": "mutable", - "name": "ids", - "nodeType": "VariableDeclaration", - "scope": 5033, - "src": "3008:22:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 4976, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3008:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 4977, - "nodeType": "ArrayTypeName", - "src": "3008:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "2978:53:30" - }, - "returnParameters": { - "id": 4984, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4983, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5033, - "src": "3096:15:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", - "typeString": "int256[]" - }, - "typeName": { - "baseType": { - "id": 4981, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3096:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 4982, - "nodeType": "ArrayTypeName", - "src": "3096:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", - "typeString": "int256[]" - } - }, - "visibility": "internal" - } - ], - "src": "3095:17:30" - }, - "scope": 6026, - "src": "2949:503:30", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 58140 - ], - "body": { - "id": 5094, - "nodeType": "Block", - "src": "3946:331:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5052, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5048, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5037, - "src": "3964:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5049, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3964:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 5050, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5040, - "src": "3983:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3983:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3964:29:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 5047, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "3956:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 5053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3956:38:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5054, - "nodeType": "ExpressionStatement", - "src": "3956:38:30" - }, - { - "assignments": [ - 5059 - ], - "declarations": [ - { - "constant": false, - "id": 5059, - "mutability": "mutable", - "name": "amounts", - "nodeType": "VariableDeclaration", - "scope": 5094, - "src": "4004:24:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5057, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4004:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5058, - "nodeType": "ArrayTypeName", - "src": "4004:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "id": 5066, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 5063, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5037, - "src": "4045:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5064, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "4045:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5062, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "4031:13:30", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (uint256[] memory)" - }, - "typeName": { - "baseType": { - "id": 5060, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4035:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5061, - "nodeType": "ArrayTypeName", - "src": "4035:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - } - }, - "id": 5065, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4031:30:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4004:57:30" - }, - { - "body": { - "id": 5090, - "nodeType": "Block", - "src": "4114:132:30", - "statements": [ - { - "expression": { - "id": 5088, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5077, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5059, - "src": "4192:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 5079, - "indexExpression": { - "id": 5078, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5068, - "src": "4200:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "4192:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "baseExpression": { - "id": 5081, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5037, - "src": "4215:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5083, - "indexExpression": { - "id": 5082, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5068, - "src": "4224:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4215:11:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "baseExpression": { - "id": 5084, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5040, - "src": "4228:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5086, - "indexExpression": { - "id": 5085, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5068, - "src": "4232:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4228:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5080, - "name": "balanceOf", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4925, - "src": "4205:9:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (address,uint256) view returns (uint256)" - } - }, - "id": 5087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4205:30:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4192:43:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5089, - "nodeType": "ExpressionStatement", - "src": "4192:43:30" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5073, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5070, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5068, - "src": "4088:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 5071, - "name": "accounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5037, - "src": "4092:8:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[] calldata" - } - }, - "id": 5072, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "4092:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4088:19:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5091, - "initializationExpression": { - "assignments": [ - 5068 - ], - "declarations": [ - { - "constant": false, - "id": 5068, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 5091, - "src": "4077:9:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5067, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4077:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5069, - "nodeType": "VariableDeclarationStatement", - "src": "4077:9:30" - }, - "loopExpression": { - "expression": { - "id": 5075, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "4109:3:30", - "subExpression": { - "id": 5074, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5068, - "src": "4109:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5076, - "nodeType": "ExpressionStatement", - "src": "4109:3:30" - }, - "nodeType": "ForStatement", - "src": "4072:174:30" - }, - { - "expression": { - "id": 5092, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5059, - "src": "4263:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "functionReturnParameters": 5046, - "id": 5093, - "nodeType": "Return", - "src": "4256:14:30" - } - ] - }, - "documentation": { - "id": 5034, - "nodeType": "StructuredDocumentation", - "src": "3458:320:30", - "text": "@notice Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented\n as zero balances in the array. \n @param accounts array of accounts to get balances for\n @param ids array of ids to get balances for\n @return Returns an array of unsigned balances" - }, - "functionSelector": "4e1273f4", - "id": 5095, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOfBatch", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5042, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3898:8:30" - }, - "parameters": { - "id": 5041, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5037, - "mutability": "mutable", - "name": "accounts", - "nodeType": "VariableDeclaration", - "scope": 5095, - "src": "3807:27:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 5035, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3807:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 5036, - "nodeType": "ArrayTypeName", - "src": "3807:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5040, - "mutability": "mutable", - "name": "ids", - "nodeType": "VariableDeclaration", - "scope": 5095, - "src": "3836:22:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5038, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3836:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5039, - "nodeType": "ArrayTypeName", - "src": "3836:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "3806:53:30" - }, - "returnParameters": { - "id": 5046, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5045, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5095, - "src": "3924:16:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3924:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5044, - "nodeType": "ArrayTypeName", - "src": "3924:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "3923:18:30" - }, - "scope": 6026, - "src": "3783:494:30", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5138, - "nodeType": "Block", - "src": "4485:435:30", - "statements": [ - { - "assignments": [ - 5108, - 5110, - 5112 - ], - "declarations": [ - { - "constant": false, - "id": 5108, - "mutability": "mutable", - "name": "currencyId", - "nodeType": "VariableDeclaration", - "scope": 5138, - "src": "4496:18:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5107, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4496:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5110, - "mutability": "mutable", - "name": "maturity", - "nodeType": "VariableDeclaration", - "scope": 5138, - "src": "4516:16:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5109, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4516:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5112, - "mutability": "mutable", - "name": "assetType", - "nodeType": "VariableDeclaration", - "scope": 5138, - "src": "4534:17:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5111, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4534:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5117, - "initialValue": { - "arguments": [ - { - "id": 5115, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5102, - "src": "4584:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5113, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "4555:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "decodeAssetId", - "nodeType": "MemberAccess", - "referencedDeclaration": 38443, - "src": "4555:28:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" - } - }, - "id": 5116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4555:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4495:92:30" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5120, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5118, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5108, - "src": "4615:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 5119, - "name": "bitmapCurrencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5100, - "src": "4629:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4615:30:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5124, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5121, - "name": "assetType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5112, - "src": "4661:9:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "expression": { - "id": 5122, - "name": "Constants", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 22832, - "src": "4674:9:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", - "typeString": "type(library Constants)" - } - }, - "id": 5123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "FCASH_ASSET_TYPE", - "nodeType": "MemberAccess", - "referencedDeclaration": 22762, - "src": "4674:26:30", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "4661:39:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4615:85:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 5136, - "nodeType": "Block", - "src": "4814:100:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5131, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5098, - "src": "4873:7:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5132, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5108, - "src": "4882:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 5133, - "name": "maturity", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5110, - "src": "4894:8:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5129, - "name": "BitmapAssetsHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 37096, - "src": "4835:19:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BitmapAssetsHandler_$37096_$", - "typeString": "type(library BitmapAssetsHandler)" - } - }, - "id": 5130, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getifCashNotional", - "nodeType": "MemberAccess", - "referencedDeclaration": 36531, - "src": "4835:37:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_int256_$", - "typeString": "function (address,uint256,uint256) view returns (int256)" - } - }, - "id": 5134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4835:68:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 5106, - "id": 5135, - "nodeType": "Return", - "src": "4828:75:30" - } - ] - }, - "id": 5137, - "nodeType": "IfStatement", - "src": "4598:316:30", - "trueBody": { - "id": 5128, - "nodeType": "Block", - "src": "4711:97:30", - "statements": [ - { - "expression": { - "hexValue": "30", - "id": 5126, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4796:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "functionReturnParameters": 5106, - "id": 5127, - "nodeType": "Return", - "src": "4789:8:30" - } - ] - } - } - ] - }, - "documentation": { - "id": 5096, - "nodeType": "StructuredDocumentation", - "src": "4283:55:30", - "text": "@dev Returns the balance from a bitmap given the id" - }, - "id": 5139, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_balanceInBitmap", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5103, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5098, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 5139, - "src": "4378:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5097, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4378:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5100, - "mutability": "mutable", - "name": "bitmapCurrencyId", - "nodeType": "VariableDeclaration", - "scope": 5139, - "src": "4403:24:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5099, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4403:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5102, - "mutability": "mutable", - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 5139, - "src": "4437:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5101, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4437:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4368:85:30" - }, - "returnParameters": { - "id": 5106, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5105, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5139, - "src": "4477:6:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 5104, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4477:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4476:8:30" - }, - "scope": 6026, - "src": "4343:577:30", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5197, - "nodeType": "Block", - "src": "5111:424:30", - "statements": [ - { - "assignments": [ - 5151, - 5153, - 5155 - ], - "declarations": [ - { - "constant": false, - "id": 5151, - "mutability": "mutable", - "name": "currencyId", - "nodeType": "VariableDeclaration", - "scope": 5197, - "src": "5122:18:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5150, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5122:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5153, - "mutability": "mutable", - "name": "maturity", - "nodeType": "VariableDeclaration", - "scope": 5197, - "src": "5142:16:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5152, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5142:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5155, - "mutability": "mutable", - "name": "assetType", - "nodeType": "VariableDeclaration", - "scope": 5197, - "src": "5160:17:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5154, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5160:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5160, - "initialValue": { - "arguments": [ - { - "id": 5158, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5145, - "src": "5210:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5156, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "5181:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "decodeAssetId", - "nodeType": "MemberAccess", - "referencedDeclaration": 38443, - "src": "5181:28:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" - } - }, - "id": 5159, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5181:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5121:92:30" - }, - { - "body": { - "id": 5195, - "nodeType": "Block", - "src": "5267:262:30", - "statements": [ - { - "assignments": [ - 5172 - ], - "declarations": [ - { - "constant": false, - "id": 5172, - "mutability": "mutable", - "name": "asset", - "nodeType": "VariableDeclaration", - "scope": 5195, - "src": "5281:27:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset" - }, - "typeName": { - "id": 5171, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "5281:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "visibility": "internal" - } - ], - "id": 5176, - "initialValue": { - "baseExpression": { - "id": 5173, - "name": "portfolio", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5143, - "src": "5311:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "id": 5175, - "indexExpression": { - "id": 5174, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5162, - "src": "5321:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5311:12:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5281:42:30" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5180, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5177, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5172, - "src": "5358:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5178, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57650, - "src": "5358:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5179, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5151, - "src": "5378:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5358:30:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5181, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5172, - "src": "5408:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5182, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "maturity", - "nodeType": "MemberAccess", - "referencedDeclaration": 57652, - "src": "5408:14:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5183, - "name": "maturity", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5153, - "src": "5426:8:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5408:26:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5358:76:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5186, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5172, - "src": "5454:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5187, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetType", - "nodeType": "MemberAccess", - "referencedDeclaration": 57654, - "src": "5454:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5188, - "name": "assetType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5155, - "src": "5473:9:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5454:28:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5358:124:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5194, - "nodeType": "IfStatement", - "src": "5337:181:30", - "trueBody": { - "expression": { - "expression": { - "id": 5191, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5172, - "src": "5504:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5192, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "notional", - "nodeType": "MemberAccess", - "referencedDeclaration": 57656, - "src": "5504:14:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 5149, - "id": 5193, - "nodeType": "Return", - "src": "5497:21:30" - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5164, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5162, - "src": "5240:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 5165, - "name": "portfolio", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5143, - "src": "5244:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "id": 5166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "5244:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5240:20:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5196, - "initializationExpression": { - "assignments": [ - 5162 - ], - "declarations": [ - { - "constant": false, - "id": 5162, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 5196, - "src": "5229:9:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5161, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5229:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5163, - "nodeType": "VariableDeclarationStatement", - "src": "5229:9:30" - }, - "loopExpression": { - "expression": { - "id": 5169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "5262:3:30", - "subExpression": { - "id": 5168, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5162, - "src": "5262:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5170, - "nodeType": "ExpressionStatement", - "src": "5262:3:30" - }, - "nodeType": "ForStatement", - "src": "5224:305:30" - } - ] - }, - "documentation": { - "id": 5140, - "nodeType": "StructuredDocumentation", - "src": "4926:49:30", - "text": "@dev Searches an array for the matching asset" - }, - "id": 5198, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_balanceInArray", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5146, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5143, - "mutability": "mutable", - "name": "portfolio", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "5005:33:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5141, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "5005:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5142, - "nodeType": "ArrayTypeName", - "src": "5005:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5145, - "mutability": "mutable", - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "5040:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5144, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5040:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5004:47:30" - }, - "returnParameters": { - "id": 5149, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5148, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "5099:6:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 5147, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5099:6:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5098:8:30" - }, - "scope": 6026, - "src": "4980:555:30", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 58190 - ], - "body": { - "id": 5335, - "nodeType": "Block", - "src": "6402:1746:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5214, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5201, - "src": "6681:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5215, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5203, - "src": "6687:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5213, - "name": "_validateAccounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5480, - "src": "6663:17:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address) view" - } - }, - "id": 5216, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6663:27:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5217, - "nodeType": "ExpressionStatement", - "src": "6663:27:30" - }, - { - "assignments": [ - 5219 - ], - "declarations": [ - { - "constant": false, - "id": 5219, - "mutability": "mutable", - "name": "fromContext", - "nodeType": "VariableDeclaration", - "scope": 5335, - "src": "6814:33:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5218, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "6814:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 5220, - "nodeType": "VariableDeclarationStatement", - "src": "6814:33:30" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5223, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5221, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5207, - "src": "6861:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 5222, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6870:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "6861:10:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 5298, - "nodeType": "Block", - "src": "7505:84:30", - "statements": [ - { - "expression": { - "id": 5296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5291, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5219, - "src": "7519:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5294, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5201, - "src": "7573:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5292, - "name": "AccountContextHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24055, - "src": "7533:21:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", - "typeString": "type(library AccountContextHandler)" - } - }, - "id": 5293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23345, - "src": "7533:39:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) view returns (struct AccountContext memory)" - } - }, - "id": 5295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7533:45:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "src": "7519:59:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5297, - "nodeType": "ExpressionStatement", - "src": "7519:59:30" - } - ] - }, - "id": 5299, - "nodeType": "IfStatement", - "src": "6857:732:30", - "trueBody": { - "id": 5290, - "nodeType": "Block", - "src": "6873:626:30", - "statements": [ - { - "assignments": [ - 5227 - ], - "declarations": [ - { - "constant": false, - "id": 5227, - "mutability": "mutable", - "name": "assets", - "nodeType": "VariableDeclaration", - "scope": 5290, - "src": "6887:30:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5225, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "6887:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5226, - "nodeType": "ArrayTypeName", - "src": "6887:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - } - ], - "id": 5233, - "initialValue": { - "arguments": [ - { - "hexValue": "31", - "id": 5231, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6941:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - } - ], - "id": 5230, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "6920:20:30", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct PortfolioAsset memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 5228, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "6924:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5229, - "nodeType": "ArrayTypeName", - "src": "6924:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - } - }, - "id": 5232, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6920:23:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6887:56:30" - }, - { - "assignments": [ - 5235 - ], - "declarations": [ - { - "constant": false, - "id": 5235, - "mutability": "mutable", - "name": "asset", - "nodeType": "VariableDeclaration", - "scope": 5290, - "src": "6957:27:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset" - }, - "typeName": { - "id": 5234, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "6957:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "visibility": "internal" - } - ], - "id": 5239, - "initialValue": { - "baseExpression": { - "id": 5236, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5227, - "src": "6987:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "id": 5238, - "indexExpression": { - "hexValue": "30", - "id": 5237, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6994:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6987:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6957:39:30" - }, - { - "expression": { - "id": 5252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "expression": { - "id": 5240, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5235, - "src": "7012:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5242, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57650, - "src": "7012:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5243, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5235, - "src": "7030:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5244, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "maturity", - "nodeType": "MemberAccess", - "referencedDeclaration": 57652, - "src": "7030:14:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5245, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5235, - "src": "7046:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5246, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "assetType", - "nodeType": "MemberAccess", - "referencedDeclaration": 57654, - "src": "7046:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 5247, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "7011:51:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5250, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5205, - "src": "7094:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5248, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "7065:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5249, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "decodeAssetId", - "nodeType": "MemberAccess", - "referencedDeclaration": 38443, - "src": "7065:28:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" - } - }, - "id": 5251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7065:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256)" - } - }, - "src": "7011:86:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5253, - "nodeType": "ExpressionStatement", - "src": "7011:86:30" - }, - { - "expression": { - "id": 5261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 5254, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5235, - "src": "7187:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5256, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "notional", - "nodeType": "MemberAccess", - "referencedDeclaration": 57656, - "src": "7187:14:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5259, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5207, - "src": "7221:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5257, - "name": "SafeInt256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45162, - "src": "7204:10:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", - "typeString": "type(library SafeInt256)" - } - }, - "id": 5258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "toInt", - "nodeType": "MemberAccess", - "referencedDeclaration": 45127, - "src": "7204:16:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", - "typeString": "function (uint256) pure returns (int256)" - } - }, - "id": 5260, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7204:24:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "7187:41:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 5262, - "nodeType": "ExpressionStatement", - "src": "7187:41:30" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 5264, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5235, - "src": "7264:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5265, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57650, - "src": "7264:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5266, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5235, - "src": "7282:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5267, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "maturity", - "nodeType": "MemberAccess", - "referencedDeclaration": 57652, - "src": "7282:14:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5268, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "7298:5:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 5269, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "7298:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5263, - "name": "_requireValidMaturity", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5673, - "src": "7242:21:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256) view" - } - }, - "id": 5270, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7242:72:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5271, - "nodeType": "ExpressionStatement", - "src": "7242:72:30" - }, - { - "expression": { - "id": 5279, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 5272, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5219, - "src": "7361:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - null - ], - "id": 5273, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "7360:30:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$__$", - "typeString": "tuple(struct AccountContext memory,)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5275, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5201, - "src": "7403:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5276, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5203, - "src": "7409:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5277, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5227, - "src": "7413:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - ], - "id": 5274, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5769, - "src": "7393:9:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,address,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory,struct AccountContext memory)" - } - }, - "id": 5278, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7393:27:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" - } - }, - "src": "7360:60:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5280, - "nodeType": "ExpressionStatement", - "src": "7360:60:30" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 5282, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "7455:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5283, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7455:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 5284, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5201, - "src": "7467:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5285, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5203, - "src": "7473:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5286, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5205, - "src": "7477:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 5287, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5207, - "src": "7481:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5281, - "name": "TransferSingle", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58084, - "src": "7440:14:30", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (address,address,address,uint256,uint256)" - } - }, - "id": 5288, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7440:48:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5289, - "nodeType": "EmitStatement", - "src": "7435:53:30" - } - ] - } - }, - { - "assignments": [ - 5301 - ], - "declarations": [ - { - "constant": false, - "id": 5301, - "mutability": "mutable", - "name": "toContext", - "nodeType": "VariableDeclaration", - "scope": 5335, - "src": "7710:31:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5300, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "7710:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 5302, - "nodeType": "VariableDeclarationStatement", - "src": "7710:31:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5304, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5201, - "src": "7775:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5305, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5203, - "src": "7781:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5306, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5219, - "src": "7785:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5307, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "7798:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5308, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5209, - "src": "7809:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "hexValue": "66616c7365", - "id": 5309, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7815:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 5303, - "name": "_checkPostTransferEvent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5932, - "src": "7751:23:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bytes_calldata_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,address,struct AccountContext memory,struct AccountContext memory,bytes calldata,bool)" - } - }, - "id": 5310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7751:70:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5311, - "nodeType": "ExpressionStatement", - "src": "7751:70:30" - }, - { - "condition": { - "arguments": [ - { - "id": 5314, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5203, - "src": "7922:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5312, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58950, - "src": "7903:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$58950_$", - "typeString": "type(library Address)" - } - }, - "id": 5313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 58674, - "src": "7903:18:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5315, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7903:22:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5334, - "nodeType": "IfStatement", - "src": "7899:243:30", - "trueBody": { - "id": 5333, - "nodeType": "Block", - "src": "7927:215:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 5329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 5321, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "8010:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5322, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8010:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 5323, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5201, - "src": "8022:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5324, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5205, - "src": "8028:2:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 5325, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5207, - "src": "8032:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 5326, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5209, - "src": "8040:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "expression": { - "arguments": [ - { - "id": 5318, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5203, - "src": "7988:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5317, - "name": "IERC1155TokenReceiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58988, - "src": "7966:21:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC1155TokenReceiver_$58988_$", - "typeString": "type(contract IERC1155TokenReceiver)" - } - }, - "id": 5319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7966:25:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC1155TokenReceiver_$58988", - "typeString": "contract IERC1155TokenReceiver" - } - }, - "id": 5320, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "onERC1155Received", - "nodeType": "MemberAccess", - "referencedDeclaration": 58969, - "src": "7966:43:30", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", - "typeString": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" - } - }, - "id": 5327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7966:79:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5328, - "name": "ERC1155_ACCEPTED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4873, - "src": "8069:16:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7966:119:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4e6f74206163636570746564", - "id": 5330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8103:14:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", - "typeString": "literal_string \"Not accepted\"" - }, - "value": "Not accepted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", - "typeString": "literal_string \"Not accepted\"" - } - ], - "id": 5316, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "7941:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7941:190:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5332, - "nodeType": "ExpressionStatement", - "src": "7941:190:30" - } - ] - } - } - ] - }, - "documentation": { - "id": 5199, - "nodeType": "StructuredDocumentation", - "src": "5541:683:30", - "text": "@notice Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash\n than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n @param from account to transfer from\n @param to account to transfer to\n @param id ERC1155 id of the asset\n @param amount amount to transfer\n @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n a trading action on Notional for the `from` address\n @dev emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled" - }, - "functionSelector": "f242432a", - "id": 5336, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5211, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6393:8:30" - }, - "parameters": { - "id": 5210, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5201, - "mutability": "mutable", - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 5336, - "src": "6264:12:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5200, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6264:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5203, - "mutability": "mutable", - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 5336, - "src": "6286:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5202, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6286:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5205, - "mutability": "mutable", - "name": "id", - "nodeType": "VariableDeclaration", - "scope": 5336, - "src": "6306:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5204, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6306:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5207, - "mutability": "mutable", - "name": "amount", - "nodeType": "VariableDeclaration", - "scope": 5336, - "src": "6326:14:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5206, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6326:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5209, - "mutability": "mutable", - "name": "data", - "nodeType": "VariableDeclaration", - "scope": 5336, - "src": "6350:19:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5208, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6350:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6254:121:30" - }, - "returnParameters": { - "id": 5212, - "nodeType": "ParameterList", - "parameters": [], - "src": "6402:0:30" - }, - "scope": 6026, - "src": "6229:1919:30", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 58205 - ], - "body": { - "id": 5431, - "nodeType": "Block", - "src": "9051:1298:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5354, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5339, - "src": "9278:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5355, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "9284:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5353, - "name": "_validateAccounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5480, - "src": "9260:17:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address) view" - } - }, - "id": 5356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9260:27:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5357, - "nodeType": "ExpressionStatement", - "src": "9260:27:30" - }, - { - "assignments": [ - 5361, - 5363 - ], - "declarations": [ - { - "constant": false, - "id": 5361, - "mutability": "mutable", - "name": "assets", - "nodeType": "VariableDeclaration", - "scope": 5431, - "src": "9299:30:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5359, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "9299:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5360, - "nodeType": "ArrayTypeName", - "src": "9299:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5363, - "mutability": "mutable", - "name": "toTransferNegative", - "nodeType": "VariableDeclaration", - "scope": 5431, - "src": "9331:23:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5362, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "9331:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 5368, - "initialValue": { - "arguments": [ - { - "id": 5365, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5344, - "src": "9374:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - { - "id": 5366, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5347, - "src": "9379:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - }, - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - ], - "id": 5364, - "name": "_decodeToAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5628, - "src": "9358:15:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", - "typeString": "function (uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory,bool)" - } - }, - "id": 5367, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9358:29:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", - "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9298:89:30" - }, - { - "condition": { - "id": 5369, - "name": "toTransferNegative", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5363, - "src": "9535:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5379, - "nodeType": "IfStatement", - "src": "9531:81:30", - "trueBody": { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 5372, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "9580:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 5373, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "9584:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5374, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9584:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 5371, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6006, - "src": "9563:16:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 5375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9563:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a6564", - "id": 5376, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9597:14:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - }, - "value": "Unauthorized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - } - ], - "id": 5370, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "9555:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9555:57:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5378, - "nodeType": "ExpressionStatement", - "src": "9555:57:30" - } - }, - { - "assignments": [ - 5381, - 5383 - ], - "declarations": [ - { - "constant": false, - "id": 5381, - "mutability": "mutable", - "name": "fromContext", - "nodeType": "VariableDeclaration", - "scope": 5431, - "src": "9624:33:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5380, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "9624:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5383, - "mutability": "mutable", - "name": "toContext", - "nodeType": "VariableDeclaration", - "scope": 5431, - "src": "9659:31:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5382, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "9659:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 5389, - "initialValue": { - "arguments": [ - { - "id": 5385, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5339, - "src": "9717:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5386, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "9735:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5387, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5361, - "src": "9751:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - ], - "id": 5384, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5769, - "src": "9694:9:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,address,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory,struct AccountContext memory)" - } - }, - "id": 5388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9694:73:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9623:144:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5391, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5339, - "src": "9802:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5392, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "9808:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5393, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5381, - "src": "9812:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5394, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5383, - "src": "9825:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5395, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5349, - "src": "9836:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 5396, - "name": "toTransferNegative", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5363, - "src": "9842:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 5390, - "name": "_checkPostTransferEvent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5932, - "src": "9778:23:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bytes_calldata_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,address,struct AccountContext memory,struct AccountContext memory,bytes calldata,bool)" - } - }, - "id": 5397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9778:83:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5398, - "nodeType": "ExpressionStatement", - "src": "9778:83:30" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 5400, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "9890:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5401, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9890:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 5402, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5339, - "src": "9902:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5403, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "9908:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5404, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5344, - "src": "9912:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - { - "id": 5405, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5347, - "src": "9917:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - }, - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - ], - "id": 5399, - "name": "TransferBatch", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58098, - "src": "9876:13:30", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", - "typeString": "function (address,address,address,uint256[] memory,uint256[] memory)" - } - }, - "id": 5406, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9876:49:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5407, - "nodeType": "EmitStatement", - "src": "9871:54:30" - }, - { - "condition": { - "arguments": [ - { - "id": 5410, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "10012:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5408, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58950, - "src": "9993:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$58950_$", - "typeString": "type(library Address)" - } - }, - "id": 5409, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 58674, - "src": "9993:18:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5411, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9993:22:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5430, - "nodeType": "IfStatement", - "src": "9989:354:30", - "trueBody": { - "id": 5429, - "nodeType": "Block", - "src": "10017:326:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 5425, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 5417, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "10126:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10126:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 5419, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5339, - "src": "10158:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5420, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5344, - "src": "10184:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - { - "id": 5421, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5347, - "src": "10209:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - { - "id": 5422, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5349, - "src": "10238:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - }, - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "expression": { - "arguments": [ - { - "id": 5414, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5341, - "src": "10078:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5413, - "name": "IERC1155TokenReceiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58988, - "src": "10056:21:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC1155TokenReceiver_$58988_$", - "typeString": "type(contract IERC1155TokenReceiver)" - } - }, - "id": 5415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10056:25:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC1155TokenReceiver_$58988", - "typeString": "contract IERC1155TokenReceiver" - } - }, - "id": 5416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "onERC1155BatchReceived", - "nodeType": "MemberAccess", - "referencedDeclaration": 58987, - "src": "10056:48:30", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", - "typeString": "function (address,address,uint256[] memory,uint256[] memory,bytes memory) external returns (bytes4)" - } - }, - "id": 5423, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10056:204:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5424, - "name": "ERC1155_BATCH_ACCEPTED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4881, - "src": "10264:22:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "10056:230:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4e6f74206163636570746564", - "id": 5426, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10304:14:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", - "typeString": "literal_string \"Not accepted\"" - }, - "value": "Not accepted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", - "typeString": "literal_string \"Not accepted\"" - } - ], - "id": 5412, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "10031:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5427, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10031:301:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5428, - "nodeType": "ExpressionStatement", - "src": "10031:301:30" - } - ] - } - } - ] - }, - "documentation": { - "id": 5337, - "nodeType": "StructuredDocumentation", - "src": "8154:690:30", - "text": "@notice Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash\n than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n @param from account to transfer from\n @param to account to transfer to\n @param ids ERC1155 ids of the assets\n @param amounts amounts to transfer\n @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n a trading action on Notional for the `from` address\n @dev emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled" - }, - "functionSelector": "2eb2c2d6", - "id": 5432, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeBatchTransferFrom", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5351, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "9042:8:30" - }, - "parameters": { - "id": 5350, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5339, - "mutability": "mutable", - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 5432, - "src": "8889:12:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5338, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8889:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5341, - "mutability": "mutable", - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 5432, - "src": "8911:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5340, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8911:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5344, - "mutability": "mutable", - "name": "ids", - "nodeType": "VariableDeclaration", - "scope": 5432, - "src": "8931:22:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5342, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8931:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5343, - "nodeType": "ArrayTypeName", - "src": "8931:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5347, - "mutability": "mutable", - "name": "amounts", - "nodeType": "VariableDeclaration", - "scope": 5432, - "src": "8963:26:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5345, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8963:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5346, - "nodeType": "ArrayTypeName", - "src": "8963:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5349, - "mutability": "mutable", - "name": "data", - "nodeType": "VariableDeclaration", - "scope": 5432, - "src": "8999:19:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5348, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8999:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8879:145:30" - }, - "returnParameters": { - "id": 5352, - "nodeType": "ParameterList", - "parameters": [], - "src": "9051:0:30" - }, - "scope": 6026, - "src": "8849:1500:30", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5479, - "nodeType": "Block", - "src": "10465:576:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5450, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5441, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5435, - "src": "10551:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 5442, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5437, - "src": "10559:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10551:10:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5449, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5444, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5437, - "src": "10565:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 5447, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10579:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 5446, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10571:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5445, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10571:7:30", - "typeDescriptions": {} - } - }, - "id": 5448, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10571:10:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "10565:16:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10551:30:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5456, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5451, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5437, - "src": "10585:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "id": 5454, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "10599:4:30", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC1155Action_$6026", - "typeString": "contract ERC1155Action" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_ERC1155Action_$6026", - "typeString": "contract ERC1155Action" - } - ], - "id": 5453, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10591:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5452, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10591:7:30", - "typeDescriptions": {} - } - }, - "id": 5455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10591:13:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10585:19:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10551:53:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c69642061646472657373", - "id": 5458, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10606:17:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1462473b7a4b33d32b109b815fd2324d00c9e5839b707ecf16d0ab5744f99226", - "typeString": "literal_string \"Invalid address\"" - }, - "value": "Invalid address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1462473b7a4b33d32b109b815fd2324d00c9e5839b707ecf16d0ab5744f99226", - "typeString": "literal_string \"Invalid address\"" - } - ], - "id": 5440, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "10543:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5459, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10543:81:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5460, - "nodeType": "ExpressionStatement", - "src": "10543:81:30" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5471, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5465, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5462, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "10677:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5463, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10677:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5464, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5435, - "src": "10691:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10677:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 5467, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5435, - "src": "10716:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 5468, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "10722:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5469, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10722:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 5466, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6006, - "src": "10699:16:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 5470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10699:34:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10677:56:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a6564", - "id": 5472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10735:14:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - }, - "value": "Unauthorized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", - "typeString": "literal_string \"Unauthorized\"" - } - ], - "id": 5461, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "10669:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10669:81:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5474, - "nodeType": "ExpressionStatement", - "src": "10669:81:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5476, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5435, - "src": "11029:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5475, - "name": "requireValidAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3661, - "src": "11009:19:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", - "typeString": "function (address) view" - } - }, - "id": 5477, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11009:25:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5478, - "nodeType": "ExpressionStatement", - "src": "11009:25:30" - } - ] - }, - "documentation": { - "id": 5433, - "nodeType": "StructuredDocumentation", - "src": "10355:39:30", - "text": "@dev Validates accounts on transfer" - }, - "id": 5480, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_validateAccounts", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5438, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5435, - "mutability": "mutable", - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 5480, - "src": "10426:12:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5434, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10426:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5437, - "mutability": "mutable", - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 5480, - "src": "10440:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5436, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10440:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "10425:26:30" - }, - "returnParameters": { - "id": 5439, - "nodeType": "ParameterList", - "parameters": [], - "src": "10465:0:30" - }, - "scope": 6026, - "src": "10399:642:30", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "baseFunctions": [ - 58217 - ], - "body": { - "id": 5505, - "nodeType": "Block", - "src": "11414:138:30", - "statements": [ - { - "assignments": [ - 5497, - null - ], - "declarations": [ - { - "constant": false, - "id": 5497, - "mutability": "mutable", - "name": "assets", - "nodeType": "VariableDeclaration", - "scope": 5505, - "src": "11452:30:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5495, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "11452:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5496, - "nodeType": "ArrayTypeName", - "src": "11452:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - }, - null - ], - "id": 5502, - "initialValue": { - "arguments": [ - { - "id": 5499, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5484, - "src": "11509:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - { - "id": 5500, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5487, - "src": "11514:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - }, - { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - ], - "id": 5498, - "name": "_decodeToAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5628, - "src": "11493:15:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", - "typeString": "function (uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory,bool)" - } - }, - "id": 5501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11493:29:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", - "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11451:71:30" - }, - { - "expression": { - "id": 5503, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5497, - "src": "11539:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "functionReturnParameters": 5493, - "id": 5504, - "nodeType": "Return", - "src": "11532:13:30" - } - ] - }, - "documentation": { - "id": 5481, - "nodeType": "StructuredDocumentation", - "src": "11047:193:30", - "text": "@notice Decodes ids and amounts to PortfolioAsset objects\n @param ids array of ERC1155 ids\n @param amounts amounts to transfer\n @return array of portfolio asset objects" - }, - "functionSelector": "3fa6b808", - "id": 5506, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decodeToAssets", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5489, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "11359:8:30" - }, - "parameters": { - "id": 5488, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5484, - "mutability": "mutable", - "name": "ids", - "nodeType": "VariableDeclaration", - "scope": 5506, - "src": "11269:22:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5482, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11269:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5483, - "nodeType": "ArrayTypeName", - "src": "11269:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5487, - "mutability": "mutable", - "name": "amounts", - "nodeType": "VariableDeclaration", - "scope": 5506, - "src": "11293:26:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5485, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11293:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5486, - "nodeType": "ArrayTypeName", - "src": "11293:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "11268:52:30" - }, - "returnParameters": { - "id": 5493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5492, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5506, - "src": "11385:23:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5490, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "11385:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5491, - "nodeType": "ArrayTypeName", - "src": "11385:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - } - ], - "src": "11384:25:30" - }, - "scope": 6026, - "src": "11245:307:30", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5627, - "nodeType": "Block", - "src": "11717:1363:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5525, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5521, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5509, - "src": "11735:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11735:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 5523, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5512, - "src": "11749:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5524, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11749:14:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11735:28:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 5520, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "11727:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 5526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11727:37:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5527, - "nodeType": "ExpressionStatement", - "src": "11727:37:30" - }, - { - "assignments": [ - 5529 - ], - "declarations": [ - { - "constant": false, - "id": 5529, - "mutability": "mutable", - "name": "toTransferNegative", - "nodeType": "VariableDeclaration", - "scope": 5627, - "src": "11774:23:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5528, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "11774:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 5531, - "initialValue": { - "hexValue": "66616c7365", - "id": 5530, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11800:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "nodeType": "VariableDeclarationStatement", - "src": "11774:31:30" - }, - { - "assignments": [ - 5535 - ], - "declarations": [ - { - "constant": false, - "id": 5535, - "mutability": "mutable", - "name": "assets", - "nodeType": "VariableDeclaration", - "scope": 5627, - "src": "11815:30:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5533, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "11815:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5534, - "nodeType": "ArrayTypeName", - "src": "11815:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - } - ], - "id": 5542, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 5539, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5509, - "src": "11869:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5540, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11869:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5538, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "11848:20:30", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct PortfolioAsset memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 5536, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "11852:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5537, - "nodeType": "ArrayTypeName", - "src": "11852:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - } - }, - "id": 5541, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11848:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11815:65:30" - }, - { - "body": { - "id": 5621, - "nodeType": "Block", - "src": "11928:1100:30", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5553, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "12045:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 5554, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12049:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12045:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5569, - "nodeType": "IfStatement", - "src": "12041:61:30", - "trueBody": { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5565, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 5557, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5509, - "src": "12060:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5559, - "indexExpression": { - "id": 5558, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "12064:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12060:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "baseExpression": { - "id": 5560, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5509, - "src": "12069:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5564, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5563, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5561, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "12073:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 5562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12077:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "12073:5:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12069:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12060:19:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "494473206d75737420626520736f72746564", - "id": 5566, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12081:20:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a257b34c4dd73c1cfb471605b5c9265382a49f713f27dffe4296072792908496", - "typeString": "literal_string \"IDs must be sorted\"" - }, - "value": "IDs must be sorted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a257b34c4dd73c1cfb471605b5c9265382a49f713f27dffe4296072792908496", - "typeString": "literal_string \"IDs must be sorted\"" - } - ], - "id": 5556, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "12052:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5567, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12052:50:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5568, - "nodeType": "ExpressionStatement", - "src": "12052:50:30" - } - }, - { - "assignments": [ - 5571 - ], - "declarations": [ - { - "constant": false, - "id": 5571, - "mutability": "mutable", - "name": "asset", - "nodeType": "VariableDeclaration", - "scope": 5621, - "src": "12117:27:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset" - }, - "typeName": { - "id": 5570, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "12117:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "visibility": "internal" - } - ], - "id": 5575, - "initialValue": { - "baseExpression": { - "id": 5572, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5535, - "src": "12147:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - "id": 5574, - "indexExpression": { - "id": 5573, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "12154:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12147:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12117:39:30" - }, - { - "expression": { - "id": 5590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "expression": { - "id": 5576, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12171:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5578, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57650, - "src": "12171:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5579, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12189:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5580, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "maturity", - "nodeType": "MemberAccess", - "referencedDeclaration": 57652, - "src": "12189:14:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5581, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12205:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5582, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "assetType", - "nodeType": "MemberAccess", - "referencedDeclaration": 57654, - "src": "12205:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 5583, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "12170:51:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "baseExpression": { - "id": 5586, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5509, - "src": "12253:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5588, - "indexExpression": { - "id": 5587, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "12257:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12253:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5584, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "12224:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5585, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "decodeAssetId", - "nodeType": "MemberAccess", - "referencedDeclaration": 38443, - "src": "12224:28:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" - } - }, - "id": 5589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12224:36:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", - "typeString": "tuple(uint256,uint256,uint256)" - } - }, - "src": "12170:90:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5591, - "nodeType": "ExpressionStatement", - "src": "12170:90:30" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 5593, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12297:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5594, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "currencyId", - "nodeType": "MemberAccess", - "referencedDeclaration": 57650, - "src": "12297:16:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5595, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12315:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5596, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "maturity", - "nodeType": "MemberAccess", - "referencedDeclaration": 57652, - "src": "12315:14:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5597, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "12331:5:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 5598, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "12331:15:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5592, - "name": "_requireValidMaturity", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5673, - "src": "12275:21:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256) view" - } - }, - "id": 5599, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12275:72:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5600, - "nodeType": "ExpressionStatement", - "src": "12275:72:30" - }, - { - "expression": { - "id": 5610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 5601, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12759:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5603, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "notional", - "nodeType": "MemberAccess", - "referencedDeclaration": 57656, - "src": "12759:14:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "baseExpression": { - "id": 5606, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5512, - "src": "12783:7:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5608, - "indexExpression": { - "id": 5607, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "12791:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12783:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "12776:6:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 5604, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "12776:6:30", - "typeDescriptions": {} - } - }, - "id": 5609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12776:18:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "12759:35:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 5611, - "nodeType": "ExpressionStatement", - "src": "12759:35:30" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 5615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5612, - "name": "asset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5571, - "src": "12972:5:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", - "typeString": "struct PortfolioAsset memory" - } - }, - "id": 5613, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "notional", - "nodeType": "MemberAccess", - "referencedDeclaration": 57656, - "src": "12972:14:30", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "30", - "id": 5614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12989:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12972:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5620, - "nodeType": "IfStatement", - "src": "12968:49:30", - "trueBody": { - "expression": { - "id": 5618, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5616, - "name": "toTransferNegative", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5529, - "src": "12992:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 5617, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13013:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "12992:25:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5619, - "nodeType": "ExpressionStatement", - "src": "12992:25:30" - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5549, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5546, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "11907:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 5547, - "name": "ids", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5509, - "src": "11911:3:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[] calldata" - } - }, - "id": 5548, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11911:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11907:14:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5622, - "initializationExpression": { - "assignments": [ - 5544 - ], - "declarations": [ - { - "constant": false, - "id": 5544, - "mutability": "mutable", - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 5622, - "src": "11896:9:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5543, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11896:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5545, - "nodeType": "VariableDeclarationStatement", - "src": "11896:9:30" - }, - "loopExpression": { - "expression": { - "id": 5551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "11923:3:30", - "subExpression": { - "id": 5550, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5544, - "src": "11923:1:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5552, - "nodeType": "ExpressionStatement", - "src": "11923:3:30" - }, - "nodeType": "ForStatement", - "src": "11891:1137:30" - }, - { - "expression": { - "components": [ - { - "id": 5623, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5535, - "src": "13046:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - }, - { - "id": 5624, - "name": "toTransferNegative", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5529, - "src": "13054:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 5625, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "13045:28:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", - "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" - } - }, - "functionReturnParameters": 5519, - "id": 5626, - "nodeType": "Return", - "src": "13038:35:30" - } - ] - }, - "id": 5628, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_decodeToAssets", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5513, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5509, - "mutability": "mutable", - "name": "ids", - "nodeType": "VariableDeclaration", - "scope": 5628, - "src": "11583:22:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5507, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11583:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5508, - "nodeType": "ArrayTypeName", - "src": "11583:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5512, - "mutability": "mutable", - "name": "amounts", - "nodeType": "VariableDeclaration", - "scope": 5628, - "src": "11607:26:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5510, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11607:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5511, - "nodeType": "ArrayTypeName", - "src": "11607:9:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "11582:52:30" - }, - "returnParameters": { - "id": 5519, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5516, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5628, - "src": "11682:23:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5514, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "11682:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5515, - "nodeType": "ArrayTypeName", - "src": "11682:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5518, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5628, - "src": "11707:4:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5517, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "11707:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "11681:31:30" - }, - "scope": 6026, - "src": "11558:1522:30", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 58228 - ], - "body": { - "id": 5648, - "nodeType": "Block", - "src": "13458:85:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5643, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5631, - "src": "13504:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 5644, - "name": "maturity", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5633, - "src": "13516:8:30", - "typeDescriptions": { - "typeIdentifier": "t_uint40", - "typeString": "uint40" - } - }, - { - "id": 5645, - "name": "assetType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5635, - "src": "13526:9:30", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint40", - "typeString": "uint40" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "expression": { - "id": 5641, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "13475:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "encodeAssetId", - "nodeType": "MemberAccess", - "referencedDeclaration": 38522, - "src": "13475:28:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256,uint256) pure returns (uint256)" - } - }, - "id": 5646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13475:61:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 5640, - "id": 5647, - "nodeType": "Return", - "src": "13468:68:30" - } - ] - }, - "documentation": { - "id": 5629, - "nodeType": "StructuredDocumentation", - "src": "13086:223:30", - "text": "@notice Encodes parameters into an ERC1155 id\n @param currencyId currency id of the asset\n @param maturity timestamp of the maturity\n @param assetType id of the asset type\n @return ERC1155 id" - }, - "functionSelector": "735a1dc8", - "id": 5649, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodeToId", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5637, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "13431:8:30" - }, - "parameters": { - "id": 5636, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5631, - "mutability": "mutable", - "name": "currencyId", - "nodeType": "VariableDeclaration", - "scope": 5649, - "src": "13343:17:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 5630, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "13343:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5633, - "mutability": "mutable", - "name": "maturity", - "nodeType": "VariableDeclaration", - "scope": 5649, - "src": "13370:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint40", - "typeString": "uint40" - }, - "typeName": { - "id": 5632, - "name": "uint40", - "nodeType": "ElementaryTypeName", - "src": "13370:6:30", - "typeDescriptions": { - "typeIdentifier": "t_uint40", - "typeString": "uint40" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5635, - "mutability": "mutable", - "name": "assetType", - "nodeType": "VariableDeclaration", - "scope": 5649, - "src": "13395:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 5634, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "13395:5:30", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "13333:83:30" - }, - "returnParameters": { - "id": 5640, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5639, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5649, - "src": "13449:7:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5638, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13449:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13448:9:30" - }, - "scope": 6026, - "src": "13314:229:30", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5672, - "nodeType": "Block", - "src": "13818:166:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 5664, - "name": "currencyId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5652, - "src": "13902:10:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5662, - "name": "CashGroup", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31956, - "src": "13874:9:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_CashGroup_$31956_$", - "typeString": "type(library CashGroup)" - } - }, - "id": 5663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getMaxMarketIndex", - "nodeType": "MemberAccess", - "referencedDeclaration": 31440, - "src": "13874:27:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint8_$", - "typeString": "function (uint256) view returns (uint8)" - } - }, - "id": 5665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13874:39:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "id": 5666, - "name": "maturity", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5654, - "src": "13915:8:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 5667, - "name": "blockTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5656, - "src": "13925:9:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 5660, - "name": "DateTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 32595, - "src": "13849:8:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_DateTime_$32595_$", - "typeString": "type(library DateTime)" - } - }, - "id": 5661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "isValidMaturity", - "nodeType": "MemberAccess", - "referencedDeclaration": 32200, - "src": "13849:24:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256,uint256,uint256) pure returns (bool)" - } - }, - "id": 5668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13849:86:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c6964206d61747572697479", - "id": 5669, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13949:18:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6ac8fa1ec1f45f2a4a2017eedf59db09ad3fe10b2748a8ca73a4b71f86bef54e", - "typeString": "literal_string \"Invalid maturity\"" - }, - "value": "Invalid maturity" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6ac8fa1ec1f45f2a4a2017eedf59db09ad3fe10b2748a8ca73a4b71f86bef54e", - "typeString": "literal_string \"Invalid maturity\"" - } - ], - "id": 5659, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "13828:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13828:149:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5671, - "nodeType": "ExpressionStatement", - "src": "13828:149:30" - } - ] - }, - "documentation": { - "id": 5650, - "nodeType": "StructuredDocumentation", - "src": "13549:133:30", - "text": "@dev Ensures that all maturities specified are valid for the currency id (i.e. they do not\n go past the max maturity date)" - }, - "id": 5673, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_requireValidMaturity", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5657, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5652, - "mutability": "mutable", - "name": "currencyId", - "nodeType": "VariableDeclaration", - "scope": 5673, - "src": "13727:18:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5651, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13727:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5654, - "mutability": "mutable", - "name": "maturity", - "nodeType": "VariableDeclaration", - "scope": 5673, - "src": "13755:16:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5653, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13755:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5656, - "mutability": "mutable", - "name": "blockTime", - "nodeType": "VariableDeclaration", - "scope": 5673, - "src": "13781:17:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5655, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13781:7:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13717:87:30" - }, - "returnParameters": { - "id": 5658, - "nodeType": "ParameterList", - "parameters": [], - "src": "13818:0:30" - }, - "scope": 6026, - "src": "13687:297:30", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 5768, - "nodeType": "Block", - "src": "14221:1112:30", - "statements": [ - { - "assignments": [ - 5689 - ], - "declarations": [ - { - "constant": false, - "id": 5689, - "mutability": "mutable", - "name": "toContext", - "nodeType": "VariableDeclaration", - "scope": 5768, - "src": "14422:31:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5688, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "14422:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 5694, - "initialValue": { - "arguments": [ - { - "id": 5692, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5678, - "src": "14496:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5690, - "name": "AccountContextHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24055, - "src": "14456:21:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", - "typeString": "type(library AccountContextHandler)" - } - }, - "id": 5691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23345, - "src": "14456:39:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) view returns (struct AccountContext memory)" - } - }, - "id": 5693, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14456:43:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "14422:77:30" - }, - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 5695, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "14513:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5696, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "mustSettleAssets", - "nodeType": "MemberAccess", - "referencedDeclaration": 23510, - "src": "14513:26:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) view returns (bool)" - } - }, - "id": 5697, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14513:28:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5707, - "nodeType": "IfStatement", - "src": "14509:120:30", - "trueBody": { - "id": 5706, - "nodeType": "Block", - "src": "14543:86:30", - "statements": [ - { - "expression": { - "id": 5704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5698, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "14557:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5701, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5678, - "src": "14604:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5702, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "14608:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "expression": { - "id": 5699, - "name": "SettleAssetsExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "14569:20:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - }, - "id": 5700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "settleAccount", - "nodeType": "MemberAccess", - "referencedDeclaration": 1877, - "src": "14569:34:30", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" - } - }, - "id": 5703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14569:49:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "src": "14557:61:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5705, - "nodeType": "ExpressionStatement", - "src": "14557:61:30" - } - ] - } - }, - { - "expression": { - "id": 5715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5708, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "14638:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5711, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5678, - "src": "14686:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5712, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "14690:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5713, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5681, - "src": "14701:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - ], - "expression": { - "id": 5709, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "14650:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "placeAssetsInAccount", - "nodeType": "MemberAccess", - "referencedDeclaration": 38617, - "src": "14650:35:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct AccountContext memory,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory)" - } - }, - "id": 5714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14650:58:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "src": "14638:70:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5716, - "nodeType": "ExpressionStatement", - "src": "14638:70:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5720, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5678, - "src": "14746:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5717, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "14718:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5719, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "setAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23372, - "src": "14718:27:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory,address)" - } - }, - "id": 5721, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14718:31:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5722, - "nodeType": "ExpressionStatement", - "src": "14718:31:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5726, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5681, - "src": "14876:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - ], - "expression": { - "id": 5723, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "14832:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "invertNotionalAmountsInPlace", - "nodeType": "MemberAccess", - "referencedDeclaration": 38554, - "src": "14832:43:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$__$", - "typeString": "function (struct PortfolioAsset memory[] memory) pure" - } - }, - "id": 5727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14832:51:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5728, - "nodeType": "ExpressionStatement", - "src": "14832:51:30" - }, - { - "assignments": [ - 5730 - ], - "declarations": [ - { - "constant": false, - "id": 5730, - "mutability": "mutable", - "name": "fromContext", - "nodeType": "VariableDeclaration", - "scope": 5768, - "src": "14935:33:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5729, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "14935:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "id": 5735, - "initialValue": { - "arguments": [ - { - "id": 5733, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5676, - "src": "15011:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5731, - "name": "AccountContextHandler", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24055, - "src": "14971:21:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", - "typeString": "type(library AccountContextHandler)" - } - }, - "id": 5732, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23345, - "src": "14971:39:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address) view returns (struct AccountContext memory)" - } - }, - "id": 5734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14971:45:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "14935:81:30" - }, - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 5736, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15030:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5737, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "mustSettleAssets", - "nodeType": "MemberAccess", - "referencedDeclaration": 23510, - "src": "15030:28:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory) view returns (bool)" - } - }, - "id": 5738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15030:30:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5748, - "nodeType": "IfStatement", - "src": "15026:128:30", - "trueBody": { - "id": 5747, - "nodeType": "Block", - "src": "15062:92:30", - "statements": [ - { - "expression": { - "id": 5745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5739, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15076:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5742, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5676, - "src": "15125:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5743, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15131:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - ], - "expression": { - "id": 5740, - "name": "SettleAssetsExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "15090:20:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - }, - "id": 5741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "settleAccount", - "nodeType": "MemberAccess", - "referencedDeclaration": 1877, - "src": "15090:34:30", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" - } - }, - "id": 5744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15090:53:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "src": "15076:67:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5746, - "nodeType": "ExpressionStatement", - "src": "15076:67:30" - } - ] - } - }, - { - "expression": { - "id": 5756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5749, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15163:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5752, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5676, - "src": "15213:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5753, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15219:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5754, - "name": "assets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5681, - "src": "15232:6:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - }, - { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset memory[] memory" - } - ], - "expression": { - "id": 5750, - "name": "TransferAssets", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38618, - "src": "15177:14:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", - "typeString": "type(library TransferAssets)" - } - }, - "id": 5751, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "placeAssetsInAccount", - "nodeType": "MemberAccess", - "referencedDeclaration": 38617, - "src": "15177:35:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (address,struct AccountContext memory,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory)" - } - }, - "id": 5755, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15177:62:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "src": "15163:76:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5757, - "nodeType": "ExpressionStatement", - "src": "15163:76:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5761, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5676, - "src": "15279:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5758, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15249:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5760, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "setAccountContext", - "nodeType": "MemberAccess", - "referencedDeclaration": 23372, - "src": "15249:29:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "function (struct AccountContext memory,address)" - } - }, - "id": 5762, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15249:35:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5763, - "nodeType": "ExpressionStatement", - "src": "15249:35:30" - }, - { - "expression": { - "components": [ - { - "id": 5764, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5730, - "src": "15303:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - { - "id": 5765, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5689, - "src": "15316:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - } - ], - "id": 5766, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "15302:24:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", - "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" - } - }, - "functionReturnParameters": 5687, - "id": 5767, - "nodeType": "Return", - "src": "15295:31:30" - } - ] - }, - "documentation": { - "id": 5674, - "nodeType": "StructuredDocumentation", - "src": "13990:55:30", - "text": "@dev Internal asset transfer event between accounts" - }, - "id": 5769, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5682, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5676, - "mutability": "mutable", - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 5769, - "src": "14078:12:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5675, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14078:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5678, - "mutability": "mutable", - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 5769, - "src": "14100:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5677, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14100:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5681, - "mutability": "mutable", - "name": "assets", - "nodeType": "VariableDeclaration", - "scope": 5769, - "src": "14120:30:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", - "typeString": "struct PortfolioAsset[]" - }, - "typeName": { - "baseType": { - "id": 5679, - "name": "PortfolioAsset", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57661, - "src": "14120:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", - "typeString": "struct PortfolioAsset" - } - }, - "id": 5680, - "nodeType": "ArrayTypeName", - "src": "14120:16:30", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", - "typeString": "struct PortfolioAsset[]" - } - }, - "visibility": "internal" - } - ], - "src": "14068:88:30" - }, - "returnParameters": { - "id": 5687, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5684, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5769, - "src": "14175:21:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5683, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "14175:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5686, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5769, - "src": "14198:21:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5685, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "14198:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - } - ], - "src": "14174:46:30" - }, - "scope": 6026, - "src": "14050:1283:30", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5931, - "nodeType": "Block", - "src": "15728:2847:30", - "statements": [ - { - "assignments": [ - 5786 - ], - "declarations": [ - { - "constant": false, - "id": 5786, - "mutability": "mutable", - "name": "sig", - "nodeType": "VariableDeclaration", - "scope": 5931, - "src": "15738:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 5785, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "15738:6:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "id": 5788, - "initialValue": { - "hexValue": "30", - "id": 5787, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15751:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "15738:14:30" - }, - { - "assignments": [ - 5790 - ], - "declarations": [ - { - "constant": false, - "id": 5790, - "mutability": "mutable", - "name": "transactedAccount", - "nodeType": "VariableDeclaration", - "scope": 5931, - "src": "15762:25:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5789, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15762:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 5795, - "initialValue": { - "arguments": [ - { - "hexValue": "30", - "id": 5793, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15798:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 5792, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15790:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5791, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15790:7:30", - "typeDescriptions": {} - } - }, - "id": 5794, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15790:10:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15762:38:30" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5799, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5796, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5780, - "src": "15814:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 5797, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15814:11:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "3332", - "id": 5798, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15829:2:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_32_by_1", - "typeString": "int_const 32" - }, - "value": "32" - }, - "src": "15814:17:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5818, - "nodeType": "IfStatement", - "src": "15810:341:30", - "trueBody": { - "id": 5817, - "nodeType": "Block", - "src": "15833:318:30", - "statements": [ - { - "assignments": [ - 5801 - ], - "declarations": [ - { - "constant": false, - "id": 5801, - "mutability": "mutable", - "name": "tmp", - "nodeType": "VariableDeclaration", - "scope": 5817, - "src": "16068:11:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5800, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "16068:7:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 5809, - "initialValue": { - "arguments": [ - { - "id": 5804, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5780, - "src": "16093:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "components": [ - { - "id": 5806, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16100:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - }, - "typeName": { - "id": 5805, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "16100:7:30", - "typeDescriptions": {} - } - } - ], - "id": 5807, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "16099:9:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - } - ], - "expression": { - "id": 5802, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "16082:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5803, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "16082:10:30", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 5808, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16082:27:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16068:41:30" - }, - { - "expression": { - "id": 5815, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5810, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5786, - "src": "16123:3:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5813, - "name": "tmp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5801, - "src": "16136:3:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 5812, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16129:6:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 5811, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "16129:6:30", - "typeDescriptions": {} - } - }, - "id": 5814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16129:11:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "16123:17:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "id": 5816, - "nodeType": "ExpressionStatement", - "src": "16123:17:30" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5841, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 5823, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5819, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5786, - "src": "16488:3:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 5820, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "16495:13:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 5821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenRedeem", - "nodeType": "MemberAccess", - "referencedDeclaration": 57243, - "src": "16495:26:30", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$", - "typeString": "function NotionalProxy.nTokenRedeem(address,uint16,uint96,bool,bool) returns (int256)" - } - }, - "id": 5822, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "16495:35:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "16488:42:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 5828, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5824, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5786, - "src": "16546:3:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 5825, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "16553:13:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 5826, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchLend", - "nodeType": "MemberAccess", - "referencedDeclaration": 57322, - "src": "16553:23:30", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchLend(address,struct BatchLend calldata[] calldata)" - } - }, - "id": 5827, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "16553:32:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "16546:39:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16488:97:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 5834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5830, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5786, - "src": "16601:3:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 5831, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "16608:13:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 5832, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchBalanceAction", - "nodeType": "MemberAccess", - "referencedDeclaration": 57296, - "src": "16608:32:30", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchBalanceAction(address,struct BalanceAction calldata[] calldata) payable" - } - }, - "id": 5833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "16608:41:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "16601:48:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16488:161:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 5840, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5836, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5786, - "src": "16665:3:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 5837, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "16672:13:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 5838, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchBalanceAndTradeAction", - "nodeType": "MemberAccess", - "referencedDeclaration": 57304, - "src": "16672:40:30", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchBalanceAndTradeAction(address,struct BalanceActionWithTrades calldata[] calldata) payable" - } - }, - "id": 5839, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "16672:49:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "16665:56:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16488:233:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5896, - "nodeType": "IfStatement", - "src": "16471:1122:30", - "trueBody": { - "id": 5895, - "nodeType": "Block", - "src": "16732:861:30", - "statements": [ - { - "expression": { - "id": 5853, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5842, - "name": "transactedAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5790, - "src": "16746:17:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "baseExpression": { - "id": 5845, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5780, - "src": "16777:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "endExpression": { - "hexValue": "3336", - "id": 5847, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16784:2:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_36_by_1", - "typeString": "int_const 36" - }, - "value": "36" - }, - "id": 5848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "16777:10:30", - "startExpression": { - "hexValue": "34", - "id": 5846, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16782:1:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 5850, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16790:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5849, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "16790:7:30", - "typeDescriptions": {} - } - } - ], - "id": 5851, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "16789:9:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 5843, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "16766:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5844, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "16766:10:30", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 5852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16766:33:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "16746:53:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 5854, - "nodeType": "ExpressionStatement", - "src": "16746:53:30" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5869, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5858, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5856, - "name": "transactedAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5790, - "src": "17080:17:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5857, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5772, - "src": "17101:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "17080:25:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5867, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5861, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5859, - "name": "transactedAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5790, - "src": "17130:17:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 5860, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5774, - "src": "17151:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "17130:23:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "arguments": [ - { - "id": 5863, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5774, - "src": "17174:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 5864, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "17178:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5865, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "17178:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 5862, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6006, - "src": "17157:16:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 5866, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17157:32:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "17130:59:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 5868, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "17129:61:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "17080:110:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "556e617574686f72697a65642063616c6c", - "id": 5870, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17208:19:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1a5436ba012075fff97e2b17048f8d423c8fe77be340e9ac8781d174af9d057a", - "typeString": "literal_string \"Unauthorized call\"" - }, - "value": "Unauthorized call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1a5436ba012075fff97e2b17048f8d423c8fe77be340e9ac8781d174af9d057a", - "typeString": "literal_string \"Unauthorized call\"" - } - ], - "id": 5855, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "17055:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5871, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17055:186:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5872, - "nodeType": "ExpressionStatement", - "src": "17055:186:30" - }, - { - "assignments": [ - 5874, - 5876 - ], - "declarations": [ - { - "constant": false, - "id": 5874, - "mutability": "mutable", - "name": "status", - "nodeType": "VariableDeclaration", - "scope": 5895, - "src": "17452:11:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5873, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "17452:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5876, - "mutability": "mutable", - "name": "result", - "nodeType": "VariableDeclaration", - "scope": 5895, - "src": "17465:19:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5875, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17465:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 5887, - "initialValue": { - "arguments": [ - { - "id": 5885, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5780, - "src": "17525:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "expression": { - "arguments": [ - { - "id": 5879, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "17496:4:30", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC1155Action_$6026", - "typeString": "contract ERC1155Action" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_ERC1155Action_$6026", - "typeString": "contract ERC1155Action" - } - ], - "id": 5878, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17488:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5877, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "17488:7:30", - "typeDescriptions": {} - } - }, - "id": 5880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17488:13:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 5881, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "17488:18:30", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 5884, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 5882, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "17514:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5883, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "value", - "nodeType": "MemberAccess", - "src": "17514:9:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "17488:36:30", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 5886, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17488:42:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "17451:79:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5889, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5874, - "src": "17552:6:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "arguments": [ - { - "id": 5891, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5876, - "src": "17574:6:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5890, - "name": "_getRevertMsg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5956, - "src": "17560:13:30", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (string memory)" - } - }, - "id": 5892, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17560:21:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 5888, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "17544:7:30", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5893, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17544:38:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5894, - "nodeType": "ExpressionStatement", - "src": "17544:38:30" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5904, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5899, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5897, - "name": "transactedAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5790, - "src": "17920:17:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 5898, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5772, - "src": "17941:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "17920:25:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 5903, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5900, - "name": "fromContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5776, - "src": "17949:11:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5901, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "hasDebt", - "nodeType": "MemberAccess", - "referencedDeclaration": 57736, - "src": "17949:19:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30783030", - "id": 5902, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17972:4:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "src": "17949:27:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "17920:56:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5912, - "nodeType": "IfStatement", - "src": "17916:144:30", - "trueBody": { - "id": 5911, - "nodeType": "Block", - "src": "17978:82:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5908, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5772, - "src": "18044:4:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5905, - "name": "FreeCollateralExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "17992:22:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - }, - "id": 5907, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkFreeCollateralAndRevert", - "nodeType": "MemberAccess", - "referencedDeclaration": 553, - "src": "17992:51:30", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 5909, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "17992:57:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5910, - "nodeType": "ExpressionStatement", - "src": "17992:57:30" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5913, - "name": "toTransferNegative", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5782, - "src": "18413:18:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5916, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5914, - "name": "transactedAccount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5790, - "src": "18435:17:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 5915, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5774, - "src": "18456:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "18435:23:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18413:45:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 5921, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5918, - "name": "toContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5778, - "src": "18462:9:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext memory" - } - }, - "id": 5919, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "hasDebt", - "nodeType": "MemberAccess", - "referencedDeclaration": 57736, - "src": "18462:17:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30783030", - "id": 5920, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18483:4:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "src": "18462:25:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18413:74:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5930, - "nodeType": "IfStatement", - "src": "18409:160:30", - "trueBody": { - "id": 5929, - "nodeType": "Block", - "src": "18489:80:30", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5926, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5774, - "src": "18555:2:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 5923, - "name": "FreeCollateralExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "18503:22:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - }, - "id": 5925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkFreeCollateralAndRevert", - "nodeType": "MemberAccess", - "referencedDeclaration": 553, - "src": "18503:51:30", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 5927, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18503:55:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5928, - "nodeType": "ExpressionStatement", - "src": "18503:55:30" - } - ] - } - } - ] - }, - "documentation": { - "id": 5770, - "nodeType": "StructuredDocumentation", - "src": "15339:148:30", - "text": "@dev Checks post transfer events which will either be initiating one of the batch trading events or a free collateral\n check if required." - }, - "id": 5932, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkPostTransferEvent", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5772, - "mutability": "mutable", - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 5932, - "src": "15534:12:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5771, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15534:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5774, - "mutability": "mutable", - "name": "to", - "nodeType": "VariableDeclaration", - "scope": 5932, - "src": "15556:10:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5773, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "15556:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5776, - "mutability": "mutable", - "name": "fromContext", - "nodeType": "VariableDeclaration", - "scope": 5932, - "src": "15576:33:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5775, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "15576:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5778, - "mutability": "mutable", - "name": "toContext", - "nodeType": "VariableDeclaration", - "scope": 5932, - "src": "15619:31:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", - "typeString": "struct AccountContext" - }, - "typeName": { - "id": 5777, - "name": "AccountContext", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 57743, - "src": "15619:14:30", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", - "typeString": "struct AccountContext" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5780, - "mutability": "mutable", - "name": "data", - "nodeType": "VariableDeclaration", - "scope": 5932, - "src": "15660:19:30", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5779, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15660:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5782, - "mutability": "mutable", - "name": "toTransferNegative", - "nodeType": "VariableDeclaration", - "scope": 5932, - "src": "15689:23:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5781, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15689:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "15524:194:30" - }, - "returnParameters": { - "id": 5784, - "nodeType": "ParameterList", - "parameters": [], - "src": "15728:0:30" - }, - "scope": 6026, - "src": "15492:3083:30", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5955, - "nodeType": "Block", - "src": "18668:400:30", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5939, - "name": "_returnData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5934, - "src": "18793:11:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 5940, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18793:18:30", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "3638", - "id": 5941, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18814:2:30", - "typeDescriptions": { - "typeIdentifier": "t_rational_68_by_1", - "typeString": "int_const 68" - }, - "value": "68" - }, - "src": "18793:23:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5945, - "nodeType": "IfStatement", - "src": "18789:67:30", - "trueBody": { - "expression": { - "hexValue": "5472616e73616374696f6e2072657665727465642073696c656e746c79", - "id": 5943, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18825:31:30", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d0b1e7612ebe87924453e5d4581b9067879655587bae8a2dfee438433699b890", - "typeString": "literal_string \"Transaction reverted silently\"" - }, - "value": "Transaction reverted silently" - }, - "functionReturnParameters": 5938, - "id": 5944, - "nodeType": "Return", - "src": "18818:38:30" - } - }, - { - "AST": { - "nodeType": "YulBlock", - "src": "18876:95:30", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18924:37:30", - "value": { - "arguments": [ - { - "name": "_returnData", - "nodeType": "YulIdentifier", - "src": "18943:11:30" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18956:4:30", - "type": "", - "value": "0x04" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18939:3:30" - }, - "nodeType": "YulFunctionCall", - "src": "18939:22:30" - }, - "variableNames": [ - { - "name": "_returnData", - "nodeType": "YulIdentifier", - "src": "18924:11:30" - } - ] - } - ] - }, - "evmVersion": "istanbul", - "externalReferences": [ - { - "declaration": 5934, - "isOffset": false, - "isSlot": false, - "src": "18924:11:30", - "valueSize": 1 - }, - { - "declaration": 5934, - "isOffset": false, - "isSlot": false, - "src": "18943:11:30", - "valueSize": 1 - } - ], - "id": 5946, - "nodeType": "InlineAssembly", - "src": "18867:104:30" - }, - { - "expression": { - "arguments": [ - { - "id": 5949, - "name": "_returnData", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5934, - "src": "18998:11:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 5951, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "19012:6:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 5950, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "19012:6:30", - "typeDescriptions": {} - } - } - ], - "id": 5952, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "19011:8:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - } - ], - "expression": { - "id": 5947, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "18987:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5948, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "18987:10:30", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 5953, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "18987:33:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 5938, - "id": 5954, - "nodeType": "Return", - "src": "18980:40:30" - } - ] - }, - "id": 5956, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_getRevertMsg", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5935, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5934, - "mutability": "mutable", - "name": "_returnData", - "nodeType": "VariableDeclaration", - "scope": 5956, - "src": "18604:24:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5933, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "18604:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "18603:26:30" - }, - "returnParameters": { - "id": 5938, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5937, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 5956, - "src": "18653:13:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5936, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "18653:6:30", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "18652:15:30" - }, - "scope": 6026, - "src": "18581:487:30", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 58168 - ], - "body": { - "id": 5981, - "nodeType": "Block", - "src": "19345:144:30", - "statements": [ - { - "expression": { - "id": 5972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 5965, - "name": "accountAuthorizedTransferOperator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23281, - "src": "19355:33:30", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - } - }, - "id": 5969, - "indexExpression": { - "expression": { - "id": 5966, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "19389:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5967, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19389:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19355:45:30", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 5970, - "indexExpression": { - "id": 5968, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5959, - "src": "19401:8:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "19355:55:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5971, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5961, - "src": "19413:8:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "19355:66:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5973, - "nodeType": "ExpressionStatement", - "src": "19355:66:30" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 5975, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "19451:3:30", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5976, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19451:10:30", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 5977, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5959, - "src": "19463:8:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5978, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5961, - "src": "19473:8:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 5974, - "name": "ApprovalForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58106, - "src": "19436:14:30", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", - "typeString": "function (address,address,bool)" - } - }, - "id": 5979, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "19436:46:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5980, - "nodeType": "EmitStatement", - "src": "19431:51:30" - } - ] - }, - "documentation": { - "id": 5957, - "nodeType": "StructuredDocumentation", - "src": "19074:188:30", - "text": "@notice Allows an account to set approval for an operator\n @param operator address of the operator\n @param approved state of the approval\n @dev emit:ApprovalForAll" - }, - "functionSelector": "a22cb465", - "id": 5982, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setApprovalForAll", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5963, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "19336:8:30" - }, - "parameters": { - "id": 5962, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5959, - "mutability": "mutable", - "name": "operator", - "nodeType": "VariableDeclaration", - "scope": 5982, - "src": "19294:16:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5958, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19294:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5961, - "mutability": "mutable", - "name": "approved", - "nodeType": "VariableDeclaration", - "scope": 5982, - "src": "19312:13:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5960, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "19312:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "19293:33:30" - }, - "returnParameters": { - "id": 5964, - "nodeType": "ParameterList", - "parameters": [], - "src": "19345:0:30" - }, - "scope": 6026, - "src": "19267:222:30", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 58177 - ], - "body": { - "id": 6005, - "nodeType": "Block", - "src": "19939:136:30", - "statements": [ - { - "condition": { - "baseExpression": { - "id": 5993, - "name": "globalTransferOperator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23275, - "src": "19953:22:30", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 5995, - "indexExpression": { - "id": 5994, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5987, - "src": "19976:8:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19953:32:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5998, - "nodeType": "IfStatement", - "src": "19949:49:30", - "trueBody": { - "expression": { - "hexValue": "74727565", - "id": 5996, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19994:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 5992, - "id": 5997, - "nodeType": "Return", - "src": "19987:11:30" - } - }, - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 5999, - "name": "accountAuthorizedTransferOperator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23281, - "src": "20016:33:30", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - } - }, - "id": 6001, - "indexExpression": { - "id": 6000, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5985, - "src": "20050:7:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20016:42:30", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 6003, - "indexExpression": { - "id": 6002, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5987, - "src": "20059:8:30", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20016:52:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 5992, - "id": 6004, - "nodeType": "Return", - "src": "20009:59:30" - } - ] - }, - "documentation": { - "id": 5983, - "nodeType": "StructuredDocumentation", - "src": "19495:306:30", - "text": "@notice Checks approval state for an account, will first check if global transfer operator is enabled\n before falling through to an account specific transfer operator.\n @param account address of the account\n @param operator address of the operator\n @return true for approved" - }, - "functionSelector": "e985e9c5", - "id": 6006, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isApprovedForAll", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5989, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "19903:8:30" - }, - "parameters": { - "id": 5988, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5985, - "mutability": "mutable", - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 6006, - "src": "19832:15:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5984, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19832:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5987, - "mutability": "mutable", - "name": "operator", - "nodeType": "VariableDeclaration", - "scope": 6006, - "src": "19849:16:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5986, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "19849:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "19831:35:30" - }, - "returnParameters": { - "id": 5992, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5991, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 6006, - "src": "19929:4:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5990, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "19929:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "19928:6:30" - }, - "scope": 6026, - "src": "19806:269:30", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 6024, - "nodeType": "Block", - "src": "20226:88:30", - "statements": [ - { - "expression": { - "components": [ - { - "arguments": [ - { - "id": 6016, - "name": "FreeCollateralExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "20252:22:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", - "typeString": "type(library FreeCollateralExternal)" - } - ], - "id": 6015, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "20244:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 6014, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "20244:7:30", - "typeDescriptions": {} - } - }, - "id": 6017, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20244:31:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 6020, - "name": "SettleAssetsExternal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1878, - "src": "20285:20:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", - "typeString": "type(library SettleAssetsExternal)" - } - ], - "id": 6019, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "20277:7:30", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 6018, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "20277:7:30", - "typeDescriptions": {} - } - }, - "id": 6021, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "20277:29:30", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 6022, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "20243:64:30", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_$_t_address_$", - "typeString": "tuple(address,address)" - } - }, - "functionReturnParameters": 6013, - "id": 6023, - "nodeType": "Return", - "src": "20236:71:30" - } - ] - }, - "documentation": { - "id": 6007, - "nodeType": "StructuredDocumentation", - "src": "20081:77:30", - "text": "@notice Get a list of deployed library addresses (sorted by library name)" - }, - "functionSelector": "c4c96dae", - "id": 6025, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getLibInfo", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6008, - "nodeType": "ParameterList", - "parameters": [], - "src": "20182:2:30" - }, - "returnParameters": { - "id": 6013, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6010, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 6025, - "src": "20208:7:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 6009, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "20208:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 6012, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 6025, - "src": "20217:7:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 6011, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "20217:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "20207:18:30" - }, - "scope": 6026, - "src": "20163:151:30", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 6027, - "src": "683:19633:30" - } - ], - "src": "41:20276:30" - }, - "bytecode": "608060405234801561001057600080fd5b506138d7806100206000396000f3fe6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b734763672dEa3bF087929d5537B6BAfeB8e6938F467301713633a1b85a4a3d2f9430C68Bd4392c4a90eA9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea264697066735822122004fb3323a9552ead7044be41b2d326c7c87d5f575bc1c147a7aba924aad314b464736f6c63430007060033", - "bytecodeSha1": "ad542a50fd9521f9faf16216c20b79ea94d56047", - "compiler": { - "evm_version": "istanbul", - "optimizer": { - "enabled": true, - "runs": 200 - }, - "version": "0.7.6+commit.7338295f" - }, - "contractName": "ERC1155Action", - "coverageMap": { - "branches": { - "141": {}, - "142": {}, - "147": {}, - "151": {}, - "152": {}, - "153": {}, - "155": {}, - "157": {}, - "16": {}, - "164": {}, - "21": {}, - "22": {}, - "25": {}, - "28": { - "ActionGuards.requireValidAccount": { - "347": [ - 1374, - 1402, - true - ], - "348": [ - 1454, - 1478, - true - ], - "349": [ - 1741, - 1754, - true - ] - } - }, - "30": { - "ERC1155Action._balanceInArray": { - "295": [ - 5358, - 5388, - false - ], - "296": [ - 5408, - 5434, - false - ], - "297": [ - 5454, - 5482, - false - ] - }, - "ERC1155Action._balanceInBitmap": { - "293": [ - 4615, - 4645, - true - ], - "294": [ - 4661, - 4700, - false - ] - }, - "ERC1155Action._checkPostTransferEvent": { - "308": [ - 15814, - 15831, - false - ], - "309": [ - 16488, - 16530, - true - ], - "310": [ - 16546, - 16585, - true - ], - "311": [ - 16601, - 16649, - true - ], - "312": [ - 16665, - 16721, - false - ], - "313": [ - 17080, - 17105, - true - ], - "314": [ - 17130, - 17153, - false - ], - "315": [ - 17157, - 17189, - true - ], - "316": [ - 17552, - 17558, - true - ], - "317": [ - 17920, - 17945, - false - ], - "318": [ - 17949, - 17976, - false - ], - "319": [ - 18413, - 18431, - false - ], - "320": [ - 18435, - 18458, - false - ], - "321": [ - 18462, - 18487, - false - ] - }, - "ERC1155Action._decodeToAssets": { - "303": [ - 11735, - 11763, - true - ], - "304": [ - 12045, - 12050, - false - ], - "305": [ - 12060, - 12079, - true - ] - }, - "ERC1155Action._getRevertMsg": { - "323": [ - 18793, - 18816, - false - ] - }, - "ERC1155Action._requireValidMaturity": { - "322": [ - 13849, - 13935, - true - ] - }, - "ERC1155Action._transfer": { - "306": [ - 14513, - 14541, - false - ], - "307": [ - 15030, - 15060, - false - ] - }, - "ERC1155Action._validateAccounts": { - "298": [ - 10551, - 10561, - false - ], - "299": [ - 10565, - 10581, - false - ], - "300": [ - 10585, - 10604, - true - ], - "301": [ - 10677, - 10695, - true - ], - "302": [ - 10699, - 10733, - true - ] - }, - "ERC1155Action.balanceOf": { - "281": [ - 1902, - 1914, - true - ] - }, - "ERC1155Action.balanceOfBatch": { - "287": [ - 3964, - 3993, - true - ] - }, - "ERC1155Action.isApprovedForAll": { - "289": [ - 19953, - 19985, - false - ] - }, - "ERC1155Action.safeBatchTransferFrom": { - "283": [ - 9535, - 9553, - false - ], - "284": [ - 9563, - 9595, - true - ], - "285": [ - 9993, - 10015, - false - ], - "286": [ - 10056, - 10286, - true - ] - }, - "ERC1155Action.safeTransferFrom": { - "290": [ - 6861, - 6871, - false - ], - "291": [ - 7903, - 7925, - false - ], - "292": [ - 7966, - 8085, - true - ] - }, - "ERC1155Action.signedBalanceOf": { - "282": [ - 2385, - 2417, - false - ] - }, - "ERC1155Action.signedBalanceOfBatch": { - "288": [ - 3135, - 3164, - true - ] - } - }, - "6": { - "SafeMath.add": { - "444": [ - 2794, - 2800, - true - ] - }, - "SafeMath.sub": { - "445": [ - 3213, - 3219, - true - ] - } - }, - "60": {}, - "61": {}, - "62": {}, - "63": {}, - "65": {}, - "66": { - "AccountContextHandler._clearPortfolioActiveFlags": { - "330": [ - 9343, - 9420, - false - ] - }, - "AccountContextHandler.mustSettleAssets": { - "324": [ - 3173, - 3204, - false - ] - }, - "AccountContextHandler.setActiveCurrency": { - "331": [ - 5431, - 5445, - false - ], - "332": [ - 5449, - 5487, - true - ], - "333": [ - 5707, - 5715, - false - ], - "334": [ - 5719, - 5764, - false - ], - "335": [ - 6877, - 6894, - false - ], - "336": [ - 6898, - 6906, - false - ], - "337": [ - 7232, - 7249, - false - ], - "338": [ - 7254, - 7262, - false - ], - "339": [ - 7405, - 7455, - false - ], - "340": [ - 7689, - 7705, - false - ], - "341": [ - 7709, - 7717, - false - ], - "342": [ - 8010, - 8058, - true - ], - "343": [ - 8358, - 8374, - false - ], - "344": [ - 8379, - 8387, - false - ], - "345": [ - 8616, - 8624, - false - ], - "346": [ - 8724, - 8734, - true - ] - }, - "AccountContextHandler.storeAssetsAndUpdateContext": { - "325": [ - 10453, - 10494, - true - ], - "326": [ - 10772, - 10785, - false - ], - "327": [ - 10809, - 10869, - true - ], - "328": [ - 11059, - 11066, - false - ], - "329": [ - 11955, - 11981, - false - ] - } - }, - "67": {}, - "68": {}, - "69": {}, - "70": {}, - "71": {}, - "72": {}, - "76": {}, - "77": {}, - "78": { - "DateTime.getBitNumFromMaturity": { - "380": [ - 4283, - 4312, - false - ], - "381": [ - 4387, - 4412, - false - ], - "382": [ - 4680, - 4718, - false - ], - "383": [ - 4780, - 4819, - false - ], - "384": [ - 5662, - 5702, - false - ], - "385": [ - 6112, - 6154, - false - ] - }, - "DateTime.getReferenceTime": { - "372": [ - 425, - 455, - true - ] - }, - "DateTime.getTimeUTC0": { - "371": [ - 668, - 689, - true - ] - }, - "DateTime.getTradedMarket": { - "373": [ - 1014, - 1024, - false - ], - "374": [ - 1064, - 1074, - false - ], - "375": [ - 1118, - 1128, - false - ], - "376": [ - 1165, - 1175, - false - ], - "377": [ - 1216, - 1226, - false - ], - "378": [ - 1267, - 1277, - false - ], - "379": [ - 1319, - 1329, - false - ] - }, - "DateTime.isValidMaturity": { - "370": [ - 2568, - 2590, - false - ] - } - }, - "79": {}, - "80": {}, - "81": {}, - "82": {}, - "83": { - "BitmapAssetsHandler.addMultipleifCashAssets": { - "357": [ - 1930, - 1962, - true - ], - "358": [ - 2179, - 2198, - false - ], - "359": [ - 2231, - 2261, - true - ], - "360": [ - 2327, - 2372, - true - ], - "361": [ - 2692, - 2709, - false - ] - }, - "BitmapAssetsHandler.addifCashAsset": { - "362": [ - 3621, - 3628, - true - ], - "363": [ - 3689, - 3718, - false - ], - "364": [ - 3879, - 3912, - false - ], - "365": [ - 3916, - 3949, - true - ], - "366": [ - 4348, - 4361, - false - ], - "367": [ - 4483, - 4511, - false - ], - "368": [ - 4515, - 4543, - true - ] - }, - "BitmapAssetsHandler.setAssetsBitmap": { - "369": [ - 1069, - 1127, - true - ] - } - }, - "84": { - "PortfolioHandler._extendNewAssetArray": { - "417": [ - 5552, - 5573, - true - ] - }, - "PortfolioHandler._loadAssetArray": { - "387": [ - 16955, - 16985, - true - ] - }, - "PortfolioHandler._mergeAssetIntoArray": { - "408": [ - 1530, - 1558, - true - ], - "409": [ - 1578, - 1608, - true - ], - "410": [ - 1628, - 1654, - false - ], - "411": [ - 1853, - 1899, - false - ], - "412": [ - 1919, - 1973, - true - ], - "413": [ - 2173, - 2213, - false - ], - "414": [ - 2241, - 2257, - true - ], - "415": [ - 2354, - 2384, - false - ], - "416": [ - 2388, - 2418, - true - ] - }, - "PortfolioHandler._storeAsset": { - "425": [ - 11735, - 11755, - false - ], - "426": [ - 11759, - 11803, - true - ], - "427": [ - 11864, - 11882, - false - ], - "428": [ - 11886, - 11920, - true - ], - "429": [ - 11978, - 11997, - false - ], - "430": [ - 12001, - 12055, - true - ], - "431": [ - 12108, - 12141, - false - ], - "432": [ - 12145, - 12178, - true - ] - }, - "PortfolioHandler._updatePortfolioContext": { - "433": [ - 11089, - 11108, - true - ], - "434": [ - 11112, - 11143, - false - ], - "435": [ - 11268, - 11315, - true - ] - }, - "PortfolioHandler.addAsset": { - "390": [ - 3230, - 3416, - false - ], - "391": [ - 3448, - 3484, - false - ], - "392": [ - 3715, - 3721, - false - ], - "393": [ - 3904, - 3944, - false - ], - "394": [ - 3968, - 3981, - true - ], - "395": [ - 4069, - 4096, - false - ], - "396": [ - 4100, - 4127, - true - ], - "397": [ - 4242, - 4309, - false - ] - }, - "PortfolioHandler.addMultipleAssets": { - "389": [ - 914, - 933, - false - ] - }, - "PortfolioHandler.buildPortfolioState": { - "388": [ - 15658, - 15679, - false - ] - }, - "PortfolioHandler.deleteAsset": { - "418": [ - 12795, - 12837, - true - ], - "419": [ - 12885, - 12921, - true - ], - "420": [ - 13072, - 13126, - false - ], - "421": [ - 13142, - 13204, - true - ], - "422": [ - 13680, - 13709, - false - ], - "423": [ - 13713, - 13755, - false - ], - "424": [ - 13883, - 13910, - false - ] - }, - "PortfolioHandler.getSortedPortfolio": { - "386": [ - 15082, - 15100, - false - ] - }, - "PortfolioHandler.storeAssets": { - "398": [ - 7495, - 7549, - true - ], - "399": [ - 7625, - 7671, - false - ], - "400": [ - 7675, - 7694, - false - ], - "401": [ - 8021, - 8067, - false - ], - "402": [ - 8305, - 8351, - false - ], - "403": [ - 9569, - 9588, - false - ], - "404": [ - 9637, - 9683, - false - ], - "405": [ - 9703, - 9757, - true - ], - "406": [ - 10311, - 10335, - false - ], - "407": [ - 10339, - 10373, - true - ] - } - }, - "85": { - "TransferAssets.encodeAssetId": { - "446": [ - 1043, - 1081, - true - ], - "447": [ - 1100, - 1128, - true - ], - "448": [ - 1147, - 1195, - true - ] - }, - "TransferAssets.placeAssetsInAccount": { - "449": [ - 2322, - 2356, - true - ], - "450": [ - 2395, - 2427, - false - ] - } - }, - "86": {}, - "87": {}, - "88": { - "AssetHandler.getSettlementDate": { - "350": [ - 1112, - 1131, - false - ], - "351": [ - 1135, - 1189, - true - ] - } - }, - "89": {}, - "90": {}, - "91": {}, - "92": { - "Bitmap.isBitSet": { - "352": [ - 828, - 838, - false - ], - "353": [ - 842, - 854, - true - ] - }, - "Bitmap.setBit": { - "354": [ - 455, - 465, - false - ], - "355": [ - 469, - 481, - true - ], - "356": [ - 526, - 531, - false - ] - } - }, - "93": {}, - "94": { - "SafeInt256.add": { - "443": [ - 1511, - 1539, - true - ] - }, - "SafeInt256.mul": { - "438": [ - 497, - 504, - false - ], - "439": [ - 515, - 521, - true - ], - "440": [ - 525, - 535, - true - ], - "441": [ - 560, - 566, - true - ], - "442": [ - 570, - 580, - true - ] - }, - "SafeInt256.toInt": { - "437": [ - 2596, - 2626, - true - ] - }, - "SafeInt256.toUint": { - "436": [ - 2473, - 2479, - true - ] - } - } - }, - "statements": { - "141": {}, - "142": {}, - "147": {}, - "151": {}, - "152": {}, - "153": {}, - "155": {}, - "157": {}, - "16": { - "Address.isContract": { - "65": [ - 1109, - 1124 - ] - } - }, - "164": {}, - "21": {}, - "22": {}, - "25": {}, - "28": { - "ActionGuards.requireValidAccount": { - "89": [ - 1366, - 1403 - ], - "90": [ - 1446, - 1479 - ], - "91": [ - 1733, - 1755 - ] - } - }, - "30": { - "ERC1155Action._balanceInArray": { - "39": [ - 5497, - 5518 - ], - "40": [ - 5262, - 5265 - ] - }, - "ERC1155Action._balanceInBitmap": { - "35": [ - 4789, - 4797 - ], - "36": [ - 4828, - 4903 - ] - }, - "ERC1155Action._checkPostTransferEvent": { - "60": [ - 16746, - 16799 - ], - "61": [ - 17055, - 17241 - ], - "62": [ - 17544, - 17582 - ], - "63": [ - 17992, - 18049 - ], - "64": [ - 18503, - 18558 - ] - }, - "ERC1155Action._decodeToAssets": { - "44": [ - 11727, - 11764 - ], - "45": [ - 12052, - 12102 - ], - "46": [ - 12170, - 12260 - ], - "47": [ - 12275, - 12347 - ], - "48": [ - 12759, - 12794 - ], - "49": [ - 12992, - 13017 - ], - "50": [ - 11923, - 11926 - ], - "51": [ - 13038, - 13073 - ] - }, - "ERC1155Action._getRevertMsg": { - "103": [ - 18818, - 18856 - ], - "104": [ - 18980, - 19020 - ] - }, - "ERC1155Action._requireValidMaturity": { - "74": [ - 13828, - 13977 - ] - }, - "ERC1155Action._transfer": { - "52": [ - 14557, - 14618 - ], - "53": [ - 14638, - 14708 - ], - "54": [ - 14718, - 14749 - ], - "55": [ - 14832, - 14883 - ], - "56": [ - 15076, - 15143 - ], - "57": [ - 15163, - 15239 - ], - "58": [ - 15249, - 15284 - ], - "59": [ - 15295, - 15326 - ] - }, - "ERC1155Action._validateAccounts": { - "41": [ - 10543, - 10624 - ], - "42": [ - 10669, - 10750 - ], - "43": [ - 11009, - 11034 - ] - }, - "ERC1155Action.balanceOf": { - "0": [ - 1895, - 1938 - ] - }, - "ERC1155Action.balanceOfBatch": { - "9": [ - 3956, - 3994 - ], - "10": [ - 4192, - 4235 - ], - "11": [ - 4109, - 4112 - ], - "12": [ - 4256, - 4270 - ] - }, - "ERC1155Action.encodeToId": { - "13": [ - 13468, - 13536 - ] - }, - "ERC1155Action.getLibInfo": { - "19": [ - 20236, - 20307 - ] - }, - "ERC1155Action.isApprovedForAll": { - "20": [ - 19987, - 19998 - ], - "21": [ - 20009, - 20068 - ] - }, - "ERC1155Action.safeBatchTransferFrom": { - "4": [ - 9260, - 9287 - ], - "5": [ - 9555, - 9612 - ], - "6": [ - 9778, - 9861 - ], - "7": [ - 9871, - 9925 - ], - "8": [ - 10031, - 10332 - ] - }, - "ERC1155Action.safeTransferFrom": { - "22": [ - 6663, - 6690 - ], - "23": [ - 7011, - 7097 - ], - "24": [ - 7187, - 7228 - ], - "25": [ - 7242, - 7314 - ], - "26": [ - 7360, - 7420 - ], - "27": [ - 7435, - 7488 - ], - "28": [ - 7519, - 7578 - ], - "29": [ - 7751, - 7821 - ], - "30": [ - 7941, - 8131 - ] - }, - "ERC1155Action.setApprovalForAll": { - "17": [ - 19355, - 19421 - ], - "18": [ - 19431, - 19482 - ] - }, - "ERC1155Action.signedBalanceOf": { - "2": [ - 2433, - 2506 - ], - "3": [ - 2537, - 2692 - ] - }, - "ERC1155Action.signedBalanceOfBatch": { - "14": [ - 3127, - 3165 - ], - "15": [ - 3361, - 3410 - ], - "16": [ - 3278, - 3281 - ] - }, - "ERC1155Action.supportsInterface": { - "1": [ - 1198, - 1246 - ] - } - }, - "6": { - "SafeMath.add": { - "151": [ - 2786, - 2832 - ] - }, - "SafeMath.sub": { - "279": [ - 3205, - 3254 - ], - "280": [ - 3264, - 3276 - ] - } - }, - "60": {}, - "61": {}, - "62": { - "LibStorage._getStorageSlot": { - "107": [ - 8727, - 8772 - ] - } - }, - "63": {}, - "65": {}, - "66": { - "AccountContextHandler._clearPortfolioActiveFlags": { - "195": [ - 9497, - 9550 - ], - "196": [ - 9568, - 9580 - ], - "197": [ - 9608, - 9629 - ], - "198": [ - 9650, - 9663 - ] - }, - "AccountContextHandler.getAccountContext": { - "33": [ - 743, - 764 - ] - }, - "AccountContextHandler.isBitmapEnabled": { - "34": [ - 1219, - 1262 - ] - }, - "AccountContextHandler.mustSettleAssets": { - "92": [ - 3350, - 3420 - ], - "93": [ - 3649, - 3735 - ] - }, - "AccountContextHandler.setAccountContext": { - "99": [ - 1029, - 1060 - ], - "100": [ - 1070, - 1104 - ] - }, - "AccountContextHandler.setActiveCurrency": { - "199": [ - 5423, - 5488 - ], - "200": [ - 5766, - 5773 - ], - "201": [ - 6965, - 7106 - ], - "202": [ - 7124, - 7131 - ], - "203": [ - 7350, - 7383 - ], - "204": [ - 7457, - 7478 - ], - "205": [ - 7496, - 7564 - ], - "206": [ - 7582, - 7589 - ], - "207": [ - 8002, - 8059 - ], - "208": [ - 7737, - 7817 - ], - "209": [ - 8147, - 8221 - ], - "210": [ - 8239, - 8246 - ], - "211": [ - 8389, - 8396 - ], - "212": [ - 8410, - 8470 - ], - "213": [ - 8484, - 8505 - ], - "214": [ - 8519, - 8530 - ], - "215": [ - 8626, - 8633 - ], - "216": [ - 8716, - 8735 - ], - "217": [ - 8777, - 8906 - ] - }, - "AccountContextHandler.storeAssetsAndUpdateContext": { - "129": [ - 10389, - 10435 - ], - "130": [ - 10445, - 10495 - ], - "131": [ - 10541, - 10591 - ], - "132": [ - 10801, - 10870 - ], - "133": [ - 11082, - 11156 - ], - "134": [ - 11232, - 11307 - ], - "135": [ - 11426, - 11519 - ], - "136": [ - 12001, - 12083 - ], - "137": [ - 12151, - 12198 - ], - "138": [ - 12111, - 12136 - ] - } - }, - "67": {}, - "68": {}, - "69": {}, - "70": {}, - "71": {}, - "72": {}, - "76": {}, - "77": { - "CashGroup._getCashGroupStorageBytes": { - "140": [ - 11458, - 11482 - ] - }, - "CashGroup.getMaxMarketIndex": { - "105": [ - 11714, - 11750 - ] - } - }, - "78": { - "DateTime.getBitNumFromMaturity": { - "152": [ - 4314, - 4331 - ], - "153": [ - 4414, - 4431 - ], - "154": [ - 4734, - 4759 - ], - "155": [ - 5306, - 5641 - ], - "156": [ - 5922, - 6091 - ], - "157": [ - 6377, - 6552 - ], - "158": [ - 6698, - 6717 - ] - }, - "DateTime.getReferenceTime": { - "141": [ - 417, - 456 - ], - "142": [ - 466, - 516 - ] - }, - "DateTime.getTimeUTC0": { - "113": [ - 660, - 690 - ], - "114": [ - 700, - 736 - ] - }, - "DateTime.getTradedMarket": { - "143": [ - 1026, - 1050 - ], - "144": [ - 1076, - 1104 - ], - "145": [ - 1130, - 1151 - ], - "146": [ - 1177, - 1202 - ], - "147": [ - 1228, - 1253 - ], - "148": [ - 1279, - 1305 - ], - "149": [ - 1331, - 1357 - ], - "150": [ - 1368, - 1391 - ] - }, - "DateTime.isValidMaturity": { - "106": [ - 2592, - 2604 - ] - } - }, - "79": {}, - "80": {}, - "81": { - "nTokenHandler.getNTokenContext": { - "108": [ - 1193, - 1224 - ], - "109": [ - 1234, - 1299 - ], - "110": [ - 1309, - 1358 - ], - "111": [ - 1368, - 1411 - ], - "112": [ - 1421, - 1458 - ] - } - }, - "82": {}, - "83": { - "BitmapAssetsHandler.addMultipleifCashAssets": { - "115": [ - 1922, - 1963 - ], - "116": [ - 2200, - 2208 - ], - "117": [ - 2223, - 2262 - ], - "118": [ - 2319, - 2373 - ], - "119": [ - 2465, - 2673 - ], - "120": [ - 2727, - 2801 - ], - "121": [ - 2103, - 2106 - ] - }, - "BitmapAssetsHandler.addifCashAsset": { - "159": [ - 3613, - 3629 - ], - "160": [ - 3871, - 3950 - ], - "161": [ - 3997, - 4039 - ], - "162": [ - 4161, - 4210 - ], - "163": [ - 4239, - 4289 - ], - "164": [ - 4303, - 4323 - ], - "165": [ - 4475, - 4544 - ], - "166": [ - 4591, - 4628 - ], - "167": [ - 4643, - 4691 - ], - "168": [ - 4705, - 4755 - ], - "169": [ - 4776, - 4791 - ] - }, - "BitmapAssetsHandler.getAssetsBitmap": { - "221": [ - 882, - 915 - ] - }, - "BitmapAssetsHandler.getifCashNotional": { - "75": [ - 1629, - 1681 - ] - }, - "BitmapAssetsHandler.setAssetsBitmap": { - "228": [ - 1061, - 1147 - ], - "229": [ - 1266, - 1307 - ] - } - }, - "84": { - "PortfolioHandler._extendNewAssetArray": { - "240": [ - 5752, - 5783 - ], - "241": [ - 5733, - 5736 - ], - "242": [ - 5804, - 5824 - ] - }, - "PortfolioHandler._loadAssetArray": { - "76": [ - 16947, - 16986 - ], - "77": [ - 17584, - 17626 - ], - "78": [ - 17640, - 17678 - ], - "79": [ - 17692, - 17732 - ], - "80": [ - 17746, - 17784 - ], - "81": [ - 17798, - 17822 - ], - "82": [ - 17332, - 17335 - ] - }, - "PortfolioHandler._mergeAssetIntoArray": { - "230": [ - 1669, - 1677 - ], - "231": [ - 1828, - 1987 - ], - "232": [ - 2233, - 2258 - ], - "233": [ - 2346, - 2419 - ], - "234": [ - 2478, - 2506 - ], - "235": [ - 2520, - 2565 - ], - "236": [ - 2580, - 2591 - ], - "237": [ - 1433, - 1436 - ], - "238": [ - 2612, - 2624 - ] - }, - "PortfolioHandler._sortInPlace": { - "83": [ - 16250, - 16338 - ], - "84": [ - 16120, - 16123 - ], - "85": [ - 16565, - 16608 - ], - "86": [ - 16626, - 16681 - ], - "87": [ - 16699, - 16702 - ], - "88": [ - 16730, - 16733 - ] - }, - "PortfolioHandler._storeAsset": { - "255": [ - 11727, - 11804 - ], - "256": [ - 11856, - 11921 - ], - "257": [ - 11970, - 12056 - ], - "258": [ - 12100, - 12179 - ], - "259": [ - 12229, - 12279 - ], - "260": [ - 12289, - 12335 - ], - "261": [ - 12345, - 12392 - ], - "262": [ - 12402, - 12447 - ] - }, - "PortfolioHandler._updatePortfolioContext": { - "263": [ - 11159, - 11190 - ], - "264": [ - 11210, - 11249 - ], - "265": [ - 11260, - 11316 - ], - "266": [ - 11371, - 11469 - ], - "267": [ - 11480, - 11539 - ] - }, - "PortfolioHandler.addAsset": { - "170": [ - 3427, - 3434 - ], - "171": [ - 3723, - 3730 - ], - "172": [ - 3960, - 3982 - ], - "173": [ - 4061, - 4128 - ], - "174": [ - 4325, - 4398 - ], - "175": [ - 4780, - 4812 - ], - "176": [ - 4822, - 4850 - ], - "177": [ - 4860, - 4890 - ], - "178": [ - 4900, - 4928 - ], - "179": [ - 4938, - 4988 - ], - "180": [ - 4998, - 5035 - ] - }, - "PortfolioHandler.addMultipleAssets": { - "126": [ - 935, - 943 - ], - "127": [ - 958, - 1143 - ], - "128": [ - 838, - 841 - ] - }, - "PortfolioHandler.buildPortfolioState": { - "122": [ - 15681, - 15693 - ], - "123": [ - 15704, - 15770 - ], - "124": [ - 15780, - 15822 - ], - "125": [ - 15832, - 15885 - ] - }, - "PortfolioHandler.deleteAsset": { - "243": [ - 12787, - 12838 - ], - "244": [ - 12877, - 12922 - ], - "245": [ - 13051, - 13214 - ], - "246": [ - 13253, - 13290 - ], - "247": [ - 13775, - 13804 - ], - "248": [ - 13822, - 13844 - ], - "249": [ - 13587, - 13590 - ], - "250": [ - 14031, - 14084 - ], - "251": [ - 14098, - 14105 - ], - "252": [ - 14421, - 14596 - ], - "253": [ - 14606, - 14657 - ], - "254": [ - 14667, - 14720 - ] - }, - "PortfolioHandler.getSortedPortfolio": { - "37": [ - 15102, - 15115 - ], - "38": [ - 15126, - 15146 - ] - }, - "PortfolioHandler.storeAssets": { - "181": [ - 7487, - 7550 - ], - "182": [ - 7714, - 7744 - ], - "183": [ - 7255, - 7258 - ], - "184": [ - 8611, - 8643 - ], - "185": [ - 8820, - 9055 - ], - "186": [ - 7923, - 7926 - ], - "187": [ - 9590, - 9598 - ], - "188": [ - 9612, - 9771 - ], - "189": [ - 9823, - 10038 - ], - "190": [ - 10053, - 10105 - ], - "191": [ - 10119, - 10142 - ], - "192": [ - 9475, - 9478 - ], - "193": [ - 10303, - 10374 - ], - "194": [ - 10424, - 10576 - ] - } - }, - "85": { - "TransferAssets.decodeAssetId": { - "70": [ - 807, - 836 - ], - "71": [ - 771, - 797 - ], - "72": [ - 740, - 761 - ] - }, - "TransferAssets.encodeAssetId": { - "66": [ - 1035, - 1082 - ], - "67": [ - 1092, - 1129 - ], - "68": [ - 1139, - 1196 - ], - "69": [ - 1207, - 1430 - ] - }, - "TransferAssets.invertNotionalAmountsInPlace": { - "101": [ - 1691, - 1736 - ], - "102": [ - 1672, - 1675 - ] - }, - "TransferAssets.placeAssetsInAccount": { - "94": [ - 2314, - 2380 - ], - "95": [ - 2515, - 2591 - ], - "96": [ - 2876, - 2916 - ], - "97": [ - 3009, - 3083 - ], - "98": [ - 3104, - 3125 - ] - } - }, - "86": {}, - "87": {}, - "88": { - "AssetHandler.getSettlementDate": { - "276": [ - 1104, - 1190 - ], - "277": [ - 1365, - 1386 - ], - "278": [ - 1689, - 1751 - ] - }, - "AssetHandler.isLiquidityToken": { - "239": [ - 699, - 830 - ] - } - }, - "89": {}, - "90": {}, - "91": {}, - "92": { - "Bitmap.isBitSet": { - "222": [ - 820, - 855 - ], - "223": [ - 894, - 959 - ] - }, - "Bitmap.setBit": { - "225": [ - 447, - 482 - ], - "226": [ - 547, - 593 - ], - "227": [ - 624, - 671 - ] - }, - "Bitmap.totalBitsSet": { - "268": [ - 1130, - 1286 - ], - "269": [ - 1296, - 1452 - ], - "270": [ - 1462, - 1549 - ], - "271": [ - 1559, - 1715 - ], - "272": [ - 1725, - 1742 - ], - "273": [ - 1752, - 1769 - ], - "274": [ - 1779, - 1797 - ], - "275": [ - 1807, - 1844 - ] - } - }, - "93": {}, - "94": { - "SafeInt256.add": { - "224": [ - 1503, - 1540 - ] - }, - "SafeInt256.mul": { - "218": [ - 474, - 483 - ], - "219": [ - 506, - 536 - ], - "220": [ - 551, - 581 - ] - }, - "SafeInt256.neg": { - "139": [ - 1619, - 1636 - ] - }, - "SafeInt256.toInt": { - "73": [ - 2587, - 2627 - ] - }, - "SafeInt256.toUint": { - "31": [ - 2465, - 2480 - ], - "32": [ - 2490, - 2507 - ] - } - } - } - }, - "dependencies": [ - "ABDKMath64x64", - "AaveHandler", - "AccountContextHandler", - "ActionGuards", - "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/Address", - "AssetHandler", - "AssetRate", - "AssetRateAdapter", - "BalanceHandler", - "Bitmap", - "BitmapAssetsHandler", - "CErc20Interface", - "CEtherInterface", - "CTokenInterface", - "CashGroup", - "CompoundHandler", - "Constants", - "DateTime", - "Deployments", - "ExchangeRate", - "FloatingPoint56", - "FreeCollateral", - "FreeCollateralExternal", - "GenericToken", - "IEIP20NonStandard", - "IERC1155TokenReceiver", - "IRewarder", - "Incentives", - "LibStorage", - "Market", - "MigrateIncentives", - "PortfolioHandler", - "SafeInt256", - "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/SafeMath", - "SettleAssetsExternal", - "SettleBitmapAssets", - "SettlePortfolioAssets", - "StorageLayoutV1", - "TokenHandler", - "TransferAssets", - "nERC1155Interface", - "nTokenCalculations", - "nTokenHandler", - "nTokenSupply" - ], - "deployedBytecode": "6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b73__$841fddfe32830bb6dbc3a02d7f16c53722$__73__$f6541b0d362a0c7d99a2a29cd3d373d61b$__9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea26469706673582212201311160102a416b51764ab1c80f32cd638f4dde8c31d4ed5c592629d5fb648eb64736f6c63430007060033", - "deployedSourceMap": "683:19633:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1742:203;;;;;;;;;;-1:-1:-1;1742:203:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1103:150;;;;;;;;;;-1:-1:-1;1103:150:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;2172:537::-;;;;;;;;;;-1:-1:-1;2172:537:30;;;;;:::i;:::-;;:::i;1035:28:63:-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;8849:1500:30:-;;;;;;:::i;:::-;;:::i;:::-;;11245:307;;;;;;;;;;-1:-1:-1;11245:307:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;3783:494::-;;;;;;;;;;-1:-1:-1;3783:494:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;13314:229::-;;;;;;;;;;-1:-1:-1;13314:229:30;;;;;:::i;:::-;;:::i;2949:503::-;;;;;;;;;;-1:-1:-1;2949:503:30;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;19267:222:30:-;;;;;;;;;;-1:-1:-1;19267:222:30;;;;;:::i;:::-;;:::i;20163:151::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;19806:269::-;;;;;;;;;;-1:-1:-1;19806:269:30;;;;;:::i;:::-;;:::i;6229:1919::-;;;;;;:::i;:::-;;:::i;1742:203::-;1820:7;1839:15;1857:28;1873:7;1882:2;1857:15;:28::i;:::-;1839:46;;1913:1;1902:8;:12;:36;;1921:17;:8;:15;:17::i;:::-;1902:36;;;1917:1;1902:36;1895:43;;;1742:203;;;;;:::o;1103:150::-;-1:-1:-1;;;;;;1205:41:30;;-1:-1:-1;;;1205:41:30;1103:150;;;;:::o;2172:537::-;2256:15;2283:36;2322:48;2362:7;2322:39;:48::i;:::-;2283:87;;2385:32;:14;:30;:32::i;:::-;2381:322;;;2444:62;2461:7;2470:14;:31;;;2444:62;;2503:2;2444:16;:62::i;:::-;2433:73;;2381:322;;;2548:144;2581:77;2617:7;2626:14;:31;;;2581:35;:77::i;:::-;2676:2;2548:15;:144::i;2381:322::-;2172:537;;;;;:::o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;8849:1500:30:-;9260:27;9278:4;9284:2;9260:17;:27::i;:::-;9299:30;9331:23;9358:29;9374:3;;9379:7;;9358:15;:29::i;:::-;9298:89;;;;9535:18;9531:81;;;9563:32;9580:2;9584:10;9563:16;:32::i;:::-;9555:57;;;;-1:-1:-1;;;9555:57:30;;;;;;;:::i;:::-;;;;;;;;;9624:33;9659:31;9694:73;9717:4;9735:2;9751:6;9694:9;:73::i;:::-;9623:144;;;;9778:83;9802:4;9808:2;9812:11;9825:9;9836:4;;9842:18;9778:23;:83::i;:::-;9908:2;-1:-1:-1;;;;;9876:49:30;9902:4;-1:-1:-1;;;;;9876:49:30;9890:10;-1:-1:-1;;;;;9876:49:30;;9912:3;;9917:7;;9876:49;;;;;;;;;:::i;:::-;;;;;;;;9993:22;10012:2;9993:18;:22::i;:::-;9989:354;;;1017:78;-1:-1:-1;;;;;10056:230:30;;10078:2;-1:-1:-1;;;;;10056:48:30;;10126:10;10158:4;10184:3;;10209:7;;10238:4;;10056:204;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;10056:230:30;;10031:301;;;;-1:-1:-1;;;10031:301:30;;;;;;;:::i;:::-;8849:1500;;;;;;;;;;;;:::o;11245:307::-;11385:23;11452:30;11493:29;11509:3;;11514:7;;11493:15;:29::i;:::-;-1:-1:-1;11451:71:30;11245:307;-1:-1:-1;;;;;;11245:307:30:o;3783:494::-;3924:16;3964:29;;;3956:38;;;;;;4004:24;4045:8;-1:-1:-1;;;;;4031:30:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4031:30:30;;4004:57;;4077:9;4072:174;4088:19;;;4072:174;;;4205:30;4215:8;;4224:1;4215:11;;;;;;;;;;;;;;;;;;;;:::i;:::-;4228:3;;4232:1;4228:6;;;;;;;;;;;;;4205:9;:30::i;:::-;4192:7;4200:1;4192:10;;;;;;;;;;;;;;;;;:43;4109:3;;4072:174;;;-1:-1:-1;4263:7:30;3783:494;-1:-1:-1;;;;;3783:494:30:o;13314:229::-;13449:7;13475:61;13504:10;13475:61;;13516:8;13475:61;;13526:9;13475:61;;:28;:61::i;:::-;13468:68;;13314:229;;;;;;:::o;2949:503::-;3096:15;3135:29;;;3127:38;;;;;;3175:23;3214:8;-1:-1:-1;;;;;3201:29:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3201:29:30;;3175:55;;3246:9;3241:180;3257:19;;;3241:180;;;3374:36;3390:8;;3399:1;3390:11;;;;;;;;;;;;;;;;;;;;:::i;:::-;3403:3;;3407:1;3403:6;;;;;;;;;;;;;3374:15;:36::i;:::-;3361:7;3369:1;3361:10;;;;;;;;;;;;;;;;;:49;3278:3;;3241:180;;920:26:63;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;19267:222:30:-;19389:10;19355:45;;;;:33;:45;;;;;;;;-1:-1:-1;;;;;19355:55:30;;;;;;;;;;;:66;;-1:-1:-1;;19355:66:30;;;;;;;19436:46;;19355:55;;19389:10;19436:46;;;;19355:66;;19436:46;:::i;:::-;;;;;;;;19267:222;;:::o;20163:151::-;20244:31;20277:29;20163:151;;:::o;19806:269::-;-1:-1:-1;;;;;19953:32:30;;19929:4;19953:32;;;:22;:32;;;;;;;;19949:49;;;-1:-1:-1;19994:4:30;19987:11;;19949:49;-1:-1:-1;;;;;;20016:42:30;;;;;;;:33;:42;;;;;;;;:52;;;;;;;;;;;;;;;19806:269::o;6229:1919::-;6663:27;6681:4;6687:2;6663:17;:27::i;:::-;6814:33;;:::i;:::-;6861:10;;6857:732;;6920:23;;;6941:1;6920:23;;;;;;;;;6887:30;;6920:23;;;;;;:::i;:::-;;;;;;;;;;;;;;;;6887:56;;6957:27;6987:6;6994:1;6987:9;;;;;;;;;;;;;;6957:39;;7065:32;7094:2;7065:28;:32::i;:::-;7046:15;;;7011:86;7030:14;;;7011:86;;;7204:24;7221:6;7204:16;:24::i;:::-;7187:14;;;:41;7264:16;;7282:14;;;;7242:72;;7264:16;7298:15;7242:21;:72::i;:::-;7393:27;7403:4;7409:2;7413:6;7393:9;:27::i;:::-;7360:60;;;;;7473:2;-1:-1:-1;;;;;7440:48:30;7467:4;-1:-1:-1;;;;;7440:48:30;7455:10;-1:-1:-1;;;;;7440:48:30;;7477:2;7481:6;7440:48;;;;;;;:::i;:::-;;;;;;;;6857:732;;;;;7533:45;7573:4;7533:39;:45::i;:::-;7519:59;;6857:732;7710:31;;:::i;:::-;7751:70;7775:4;7781:2;7785:11;7798:9;7809:4;;7815:5;7751:23;:70::i;:::-;7903:22;7922:2;7903:18;:22::i;:::-;7899:243;;;7966:79;;-1:-1:-1;;;7966:79:30;;;:119;-1:-1:-1;;;;;7966:43:30;;;;;:79;;8010:10;;8022:4;;8028:2;;8032:6;;8040:4;;;;7966:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;7966:119:30;;7941:190;;;;-1:-1:-1;;;7941:190:30;;;;;;;:::i;:::-;6229:1919;;;;;;;;:::o;2397:117:94:-;2446:7;2478:1;2473;:6;;2465:15;;;;;;-1:-1:-1;2505:1:94;2397:117::o;552:219:66:-;619:21;;:::i;:::-;652:48;703:30;:28;:30::i;:::-;-1:-1:-1;;;;;750:14:66;;;;;;;;;;;;;;;;;743:21;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;-1:-1:-1;;;;;;743:21:66;;;;;-1:-1:-1;743:21:66;;552:219;-1:-1:-1;552:219:66:o;1117:152::-;1226:31;;;:36;;;;;1117:152::o;4343:577:30:-;4477:6;4496:18;4516:16;4534:17;4555:32;4584:2;4555:28;:32::i;:::-;4495:92;;;;;;4629:16;4615:10;:30;;:85;;;-1:-1:-1;4700:1:60;4661:39:30;;;4615:85;4598:316;;;4796:1;4789:8;;;;;;;4598:316;4835:68;4873:7;4882:10;4894:8;4835:37;:68::i;:::-;4828:75;;;;;;;14791:385:84;14907:23;14946:30;14979:42;14995:7;15004:16;14979:15;:42::i;:::-;14946:75;;15099:1;15082:6;:13;:18;15078:37;;15109:6;-1:-1:-1;15102:13:84;;15078:37;15126:20;15139:6;15126:12;:20::i;4980:555:30:-;5099:6;5122:18;5142:16;5160:17;5181:32;5210:2;5181:28;:32::i;:::-;5121:92;;;;;;5229:9;5224:305;5244:9;:16;5240:1;:20;5224:305;;;5281:27;5311:9;5321:1;5311:12;;;;;;;;;;;;;;5281:42;;5378:10;5358:5;:16;;;:30;:76;;;;;5426:8;5408:5;:14;;;:26;5358:76;:124;;;;;5473:9;5454:5;:15;;;:28;5358:124;5337:181;;;5504:14;;;;-1:-1:-1;5497:21:30;;-1:-1:-1;;;;5497:21:30;5337:181;-1:-1:-1;5262:3:30;;5224:305;;;;4980:555;;;;;;;:::o;10399:642::-;10559:2;-1:-1:-1;;;;;10551:10:30;:4;-1:-1:-1;;;;;10551:10:30;;;:30;;;;-1:-1:-1;;;;;;10565:16:30;;;;10551:30;:53;;;;-1:-1:-1;;;;;;10585:19:30;;10599:4;10585:19;;10551:53;10543:81;;;;-1:-1:-1;;;10543:81:30;;;;;;;:::i;:::-;10677:10;-1:-1:-1;;;;;10677:18:30;;;;:56;;;10699:34;10716:4;10722:10;10699:16;:34::i;:::-;10669:81;;;;-1:-1:-1;;;10669:81:30;;;;;;;:::i;:::-;11009:25;11029:4;11009:19;:25::i;:::-;10399:642;;:::o;11558:1522::-;11682:23;11707:4;11735:28;;;11727:37;;;;;;11774:23;;11869:3;-1:-1:-1;;;;;11848:32:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;11815:65;;11896:9;11891:1137;11907:14;;;11891:1137;;;12045:5;;12041:61;;12069:3;;12077:1;12073;:5;12069:10;;;;;;;;;;;;;12060:3;;12064:1;12060:6;;;;;;;;;;;;;:19;12052:50;;;;-1:-1:-1;;;12052:50:30;;;;;;;:::i;:::-;12117:27;12147:6;12154:1;12147:9;;;;;;;;;;;;;;12117:39;;12224:36;12253:3;;12257:1;12253:6;;;;;;;;;;;;;12224:28;:36::i;:::-;12205:15;;;12170:90;12189:14;;;12170:90;;;;;;12275:72;;12170:90;12331:15;12275:21;:72::i;:::-;12783:7;;12791:1;12783:10;;;;;;;;;;;;;;12759:14;;;:35;;;12989:1;-1:-1:-1;12968:49:30;;-1:-1:-1;12968:49:30;;13013:4;12992:25;;12968:49;-1:-1:-1;11923:3:30;;11891:1137;;;-1:-1:-1;13046:6:30;13054:18;;-1:-1:-1;11558:1522:30;-1:-1:-1;;;;;11558:1522:30:o;14050:1283::-;14175:21;;:::i;:::-;14198;;:::i;:::-;14422:31;14456:43;14496:2;14456:39;:43::i;:::-;14422:77;;14513:28;:9;:26;:28::i;:::-;14509:120;;;14569:49;;-1:-1:-1;;;14569:49:30;;:20;;:34;;:49;;14604:2;;14608:9;;14569:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14557:61;;14509:120;14650:58;14686:2;14690:9;14701:6;14650:35;:58::i;:::-;14638:70;-1:-1:-1;14718:31:30;14638:70;14746:2;14718:27;:31::i;:::-;14832:51;14876:6;14832:43;:51::i;:::-;14935:33;14971:45;15011:4;14971:39;:45::i;:::-;14935:81;;15030:30;:11;:28;:30::i;:::-;15026:128;;;15090:53;;-1:-1:-1;;;15090:53:30;;:20;;:34;;:53;;15125:4;;15131:11;;15090:53;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15076:67;;15026:128;15177:62;15213:4;15219:11;15232:6;15177:35;:62::i;:::-;15163:76;-1:-1:-1;15249:35:30;15163:76;15279:4;15249:29;:35::i;:::-;15303:11;15316:9;;-1:-1:-1;14050:1283:30;-1:-1:-1;;;;14050:1283:30:o;15492:3083::-;15738:10;;15829:2;15814:17;;15810:341;;16068:11;16082:27;;;;16093:4;16082:27;:::i;:::-;16068:41;-1:-1:-1;;15810:341:30;-1:-1:-1;;;;;;16488:42:30;;-1:-1:-1;;;16488:42:30;;:97;;-1:-1:-1;;;;;;;16546:39:30;;-1:-1:-1;;;16546:39:30;16488:97;:161;;;-1:-1:-1;;;;;;;16601:48:30;;-1:-1:-1;;;16601:48:30;16488:161;:233;;;-1:-1:-1;;;;;;;16665:56:30;;-1:-1:-1;;;16665:56:30;16488:233;16471:1122;;;16777:10;16784:2;16782:1;16777:4;;:10;:::i;:::-;16766:33;;;;;;;:::i;:::-;16746:53;;17101:4;-1:-1:-1;;;;;17080:25:30;:17;-1:-1:-1;;;;;17080:25:30;;:110;;;;17151:2;-1:-1:-1;;;;;17130:23:30;:17;-1:-1:-1;;;;;17130:23:30;;:59;;;;;17157:32;17174:2;17178:10;17157:16;:32::i;:::-;17055:186;;;;-1:-1:-1;;;17055:186:30;;;;;;;:::i;:::-;17452:11;17465:19;17496:4;-1:-1:-1;;;;;17488:18:30;17514:9;17525:4;;17488:42;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17451:79;;;;17552:6;17560:21;17574:6;17560:13;:21::i;:::-;17544:38;;;;;-1:-1:-1;;;17544:38:30;;;;;;;;:::i;:::-;;16471:1122;;;17941:4;-1:-1:-1;;;;;17920:25:30;:17;-1:-1:-1;;;;;17920:25:30;;;:56;;;;-1:-1:-1;17949:19:30;;;;-1:-1:-1;;;;;;17949:27:30;;;17920:56;17916:144;;;17992:57;;-1:-1:-1;;;17992:57:30;;:22;;:51;;:57;;18044:4;;17992:57;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17916:144;18413:18;:45;;;;;18456:2;-1:-1:-1;;;;;18435:23:30;:17;-1:-1:-1;;;;;18435:23:30;;;18413:45;:74;;;;-1:-1:-1;18462:17:30;;;;-1:-1:-1;;;;;;18462:25:30;;;18413:74;18409:160;;;18503:55;;-1:-1:-1;;;18503:55:30;;:22;;:51;;:55;;18555:2;;18503:55;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18409:160;15492:3083;;;;;;;;;:::o;718:413:16:-;1078:20;1116:8;;;718:413::o;883:554:85:-;1016:7;5408:6:60;1043:38:85;;;1035:47;;;;;;1112:16;1100:28;;;1092:37;;;;;;4906:1:60;1147:48:85;;;1139:57;;;;;;-1:-1:-1;1252:42:85;1292:2;1252:42;;;;1319:39;1357:1;1319:39;;;;1251:108;1390:25;;;1251:165;883:554;;;;;:::o;541:302::-;807:29;833:2;827:8;;;807:29;;771:26;795:1;789:7;;;771:26;;740:21;;;541:302::o;2520:163:94:-;2569:6;-1:-1:-1;;;;;2596:1:94;:30;;2587:40;;;;;13687:297:30;13849:86;13874:39;13902:10;13874:27;:39::i;:::-;13849:86;;13915:8;13925:9;13849:24;:86::i;:::-;13828:149;;;;-1:-1:-1;;;13828:149:30;;;;;;;:::i;:::-;13687:297;;;:::o;1879:229:62:-;1940:48;2005:12;2020:41;2036:24;2020:15;:41::i;1320:368:83:-;1455:15;1482:99;1584:35;:33;:35::i;:::-;-1:-1:-1;;;;;1636:14:83;;;;;;;;;;;;;;:26;;;;;;;;:36;;;;;;;:45;;;;;1629:52;;;-1:-1:-1;;1320:368:83;;;;;:::o;16756:1107:84:-;16858:23;588:2;16955:6;:30;;;;16947:39;;;;;;16997:90;17090:37;:35;:37::i;:::-;-1:-1:-1;;;;;17204:14:84;;17137:64;17204:14;;;;;;;;;;16997:130;;-1:-1:-1;17261:28:84;;;-1:-1:-1;;;;;17261:28:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;17228:61;;17305:9;17300:533;17324:6;17320:10;;:1;:10;17300:533;;;17351:42;17396:12;17409:1;17396:15;;;;;;;;17351:60;;17425:27;17455:6;17462:1;17455:9;;;;;;;;;;;;;;;;;;;17603:23;;;;;17584:42;;17657:21;;;;;17640:14;;;:38;;;;17710:22;-1:-1:-1;;;17710:22:84;;;17692:15;;;:40;-1:-1:-1;;;17763:21:84;;;;;;;17746:38;;:14;;;:38;17798:17;;:24;;;;-1:-1:-1;17603:23:84;17332:3;17300:533;;15921:829;16015:13;;15998:14;16015:13;-1:-1:-1;;;;;16061:21:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16061:21:84;;16038:44;;16097:9;16092:257;16112:6;16108:1;:10;16092:257;;;16139:27;16169:6;16176:1;16169:9;;;;;;;;;;;;;;16139:39;;16259:79;16288:5;:16;;;16306:5;:14;;;16322:5;:15;;;16259:28;:79::i;:::-;16250:3;16254:1;16250:6;;;;;;;;;;;;;;;;;:88;-1:-1:-1;16120:3:84;;16092:257;;;-1:-1:-1;16403:1:84;16414:330;16425:6;16421:1;:10;16414:330;;;16459:1;16474:243;16485:1;16481;:5;:28;;;;;16503:3;16507:1;16503:6;;;;;;;;;;;;;;16490:3;16498:1;16494;:5;16490:10;;;;;;;;;;;;;;:19;16481:28;16474:243;;;16589:3;16593:1;16589:6;;;;;;;;;;;;;;16597:3;16605:1;16601;:5;16597:10;;;;;;;;;;;;;;16566:3;16574:1;16570;:5;16566:10;;;;;;;;;;;;;16578:3;16582:1;16578:6;;;;;;;;;;;;;16565:43;;;;;;;;;;16656:6;16663:1;16656:9;;;;;;;;;;;;;;16667:6;16678:1;16674;:5;16667:13;;;;;;;;;;;;;;16627:6;16638:1;16634;:5;16627:13;;;;;;;;;;;;;16642:6;16649:1;16642:9;;;;;;;;;;;;;;;;;16626:55;;;;;-1:-1:-1;;16699:3:84;16474:243;;;-1:-1:-1;16730:3:84;;16414:330;;;15921:829;;;;:::o;1296:466:28:-;-1:-1:-1;;;;;1374:28:28;;1366:37;;;;;;-1:-1:-1;;;;;1454:24:28;;1473:4;1454:24;;1446:33;;;;;;1503:16;1684:39;1715:7;1684:30;:39::i;:::-;1489:234;;;;;;;;1741:8;1753:1;1741:13;1733:22;;;;;3020:732:66;3107:4;3143:15;3173:31;3189:14;3173:15;:31::i;:::-;3169:577;;;3389:31;3410:9;3389:20;:31::i;:::-;3357:29;;:63;;;;-1:-1:-1;3350:70:66;;-1:-1:-1;3350:70:66;3169:577;3660:29;;3656:33;;;;;;:79;;-1:-1:-1;3693:29:66;;:42;;;-1:-1:-1;3693:42:66;3656:79;3649:86;;;;;1997:1135:85;2162:21;;:::i;:::-;2323:33;:14;:31;:33::i;:::-;2322:34;2314:66;;;;-1:-1:-1;;;2314:66:85;;;;;;;:::i;:::-;2395:32;:14;:30;:32::i;:::-;2391:703;;;2515:76;2559:7;2568:14;2584:6;2515:43;:76::i;:::-;2391:703;;;2622:36;2661:155;2715:7;2740:14;:31;;;2789:6;:13;2661:36;:155::i;:::-;2622:194;-1:-1:-1;2876:40:85;2622:194;2909:6;2876:32;:40::i;:::-;3009:74;:14;3052:7;3061:14;3077:5;3009:42;:74::i;:::-;2391:703;;-1:-1:-1;3111:14:85;;1997:1135;-1:-1:-1;;1997:1135:85:o;837:274:66:-;938:48;989:30;:28;:30::i;:::-;-1:-1:-1;;;;;1029:14:66;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;;;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;1029:31:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:29;938:81;;-1:-1:-1;1029:14:66;;1075:29;;1029:14;1075:29;837:274;;;:::o;1543:210:85:-;1642:9;1637:110;1657:6;:13;1653:1;:17;1637:110;;;1712:24;:6;1719:1;1712:9;;;;;;;;;;;;;;:18;;;:22;:24::i;:::-;1691:6;1698:1;1691:9;;;;;;;;;;;;;;;;;;:18;;:45;1672:3;;1637:110;;18581:487:30;18653:13;18814:2;18793:11;:18;:23;18789:67;;;-1:-1:-1;18818:38:30;;;;;;;;;;;;;;;;;;;18789:67;18956:4;18943:11;18939:22;18924:37;;18998:11;18987:33;;;;;;;;;;;;:::i;11565:192:77:-;11635:5;11652:12;11667:37;11693:10;11667:25;:37::i;:::-;11727:22;;;;-1:-1:-1;;;11565:192:77:o;2224:524:78:-;2363:4;2379:12;2394:36;2420:9;2394:25;:36::i;:::-;2379:51;;2440:19;2462:50;2471:40;2496:14;2471:24;:40::i;:::-;2462:4;;:8;:50::i;:::-;2440:72;;2579:11;2568:8;:22;2564:40;;;2599:5;2592:12;;;;;;2564:40;2650:12;2666:51;2697:9;2708:8;2666:30;:51::i;:::-;2642:75;2224:524;-1:-1:-1;;;;;;;;2224:524:78:o;8450:329:62:-;8542:12;494:7;8742:9;8734:18;;;;;;;;:38;;8450:329;-1:-1:-1;;8450:329:62:o;5665:269::-;5730:87;5833:12;5848:39;5864:22;5848:15;:39::i;6020:263::-;6087:77;6180:12;6195:41;6211:24;6195:15;:41::i;728:737:81:-;836:17;867:35;916:27;957:22;993:17;1035:47;1085:36;:34;:36::i;:::-;-1:-1:-1;;;;;1163:19:81;;;1131:29;1163:19;;;;;;;;-1:-1:-1;;1163:19:81;;;;1206:18;;;;;1264:35;;;;;;;-1:-1:-1;;;;1331:27:81;;;;-1:-1:-1;1387:24:81;-1:-1:-1;;;1387:24:81;;;;-1:-1:-1;;;;1434:24:81;;;;;;-1:-1:-1;728:737:81:o;583:160:78:-;641:7;2399:5:60;668:4:78;:21;;660:30;;;;;;2399:5:60;715:4:78;:20;;707:29;;;;583:160;-1:-1:-1;583:160:78:o;1753:1065:83:-;1930:32;:14;:30;:32::i;:::-;1922:41;;;;;;2026:31;;;;2005:52;;:18;2068:744;2088:6;:13;2084:1;:17;2068:744;;;2122:27;2152:6;2159:1;2152:9;;;;;;;;;;;;;;2122:39;;2179:5;:14;;;2197:1;2179:19;2175:33;;;2200:8;;;2175:33;2231:16;;:30;;2223:39;;;;;;2327:15;;;;4700:1:60;2327:45:83;2319:54;;;;;;2430:20;2481:192;2513:7;2538:10;2566:5;:14;;;2598;:29;;;2481:192;;2645:5;:14;;;2481;:192::i;:::-;2465:208;;2708:1;2692:13;:17;2688:113;;;2752:22;;;;;-1:-1:-1;;;2752:49:83;-1:-1:-1;;;;;;2727:74:83;;;2688:113;2068:744;;;2103:3;;2068:744;;;;1753:1065;;;;:::o;15438:477:84:-;15584:21;;:::i;:::-;15617:27;;:::i;:::-;15658:21;;;15654:39;;15688:5;-1:-1:-1;15681:12:84;;15654:39;15725:45;15744:7;15753:16;15725:18;:45::i;:::-;15704:66;;15780:42;;;:23;;;:42;15871:13;-1:-1:-1;;;;;15850:35:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;15832:15:84;;;:53;:15;15438:477;-1:-1:-1;;;;15438:477:84:o;658:502::-;804:9;799:355;823:6;:13;819:1;:17;799:355;;;857:27;887:6;894:1;887:9;;;;;;;;;;;;;;857:39;;914:5;:14;;;932:1;914:19;910:33;;;935:8;;;910:33;958:185;984:14;1016:5;:16;;;1050:5;:14;;;1082:5;:15;;;1115:5;:14;;;958:8;:185::i;:::-;799:355;;838:3;;799:355;;9863:2352:66;10240:12;;;;10344:35;:14;10371:7;10344:26;:35::i;:::-;10389:46;;;;;10239:140;;-1:-1:-1;10239:140:66;;-1:-1:-1;10239:140:66;-1:-1:-1;10239:140:66;-1:-1:-1;10453:32:66;10389:14;10453:16;:32::i;:::-;:41;10445:50;;;;;;10541;;;:31;;;:50;10772:13;10767:141;;2023:1:60;10809:60:66;;;;;10801:69;;;;;;11059:7;11055:263;;;11107:22;;;;;-1:-1:-1;;;11107:49:66;-1:-1:-1;;;;;;11082:74:66;;;11055:263;;;11257:22;;;;;-1:-1:-1;;;11232:75:66;;;11055:263;11460:59;11487:14;:31;;;11460:26;:59::i;:::-;-1:-1:-1;;;;;;11426:93:66;:31;;;:93;11530:20;11560:649;11567:24;;11560:649;;11902:35;;;;11955:26;;;11951:147;;12001:82;12019:14;12035:10;12047:4;-1:-1:-1;;;12001:17:66;:82::i;:::-;12196:2;12173:25;;;;;12126:10;-1:-1:-1;11560:649:66;;1553:90:94;1599:8;1626:10;-1:-1:-1;;1634:1:94;1626:3;:10::i;11271:218:77:-;11348:12;11372:41;11416:32;:30;:32::i;:::-;11465:17;;;;;;-1:-1:-1;;11465:17:77;;;;;11271:218::o;330:193:78:-;398:7;2617:9:60;425:30:78;;;417:39;;;;;;2617:9:60;486::78;:29;;928:470;991:7;1014:5;1023:1;1014:10;1010:40;;;-1:-1:-1;2617:9:60;1026:24:78;;1010:40;1064:5;1073:1;1064:10;1060:44;;;-1:-1:-1;1083:21:78;1076:28;;1060:44;1118:5;1127:1;1118:10;1114:37;;;-1:-1:-1;2665:11:60;1130:21:78;;1114:37;1165:5;1174:1;1165:10;1161:41;;;-1:-1:-1;1184:18:78;1177:25;;1161:41;1216:5;1225:1;1216:10;1212:41;;;-1:-1:-1;1235:18:78;1228:25;;1212:41;1267:5;1276:1;1267:10;1263:42;;;-1:-1:-1;1286:19:78;1279:26;;1263:42;1319:5;1328:1;1319:10;1315:42;;;-1:-1:-1;1338:19:78;1331:26;;1315:42;1368:23;;-1:-1:-1;;;1368:23:78;;;;;;;:::i;2682:175:6:-;2740:7;2771:5;;;2794:6;;;;2786:46;;;;;-1:-1:-1;;;2786:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;4025:2699:78;4140:7;4149:4;4169:21;4193:22;4205:9;4193:11;:22::i;:::-;4169:46;-1:-1:-1;2399:5:60;4283:8:78;:24;:29;4279:52;;4322:1;4325:5;4314:17;;;;;;;4279:52;4404:8;4387:13;:25;4383:48;;4422:1;4425:5;4414:17;;;;;;;4383:48;2399:5:60;4556:24:78;;;4555:42;2984:2:60;4680:38:78;;4676:1887;;4742:10;-1:-1:-1;4754:4:78;;-1:-1:-1;4734:25:78;;-1:-1:-1;4734:25:78;4676:1887;3036:3:60;4780:10:78;:39;4776:1787;;5092:20;2399:5:60;2520:7;5212:30:78;;5211:68;5131:148;;-1:-1:-1;;5131:148:78;;-1:-1:-1;2776:1:60;5131:148:78;5528:37;3257:2:60;5500:65:78;2776:1:60;5584:12:78;:37;;;;;;5626:1;5583:44;5306:335;;;;;;;;;4776:1787;3090:4:60;5662:10:78;:40;5658:905;;5718:20;2399:5:60;2567:8;5839:31:78;;5838:69;5757:150;;-1:-1:-1;;5757:150:78;;-1:-1:-1;2825:2:60;5757:150:78;5976:38;3310:3:60;5947:67:78;2825:2:60;6033:12:78;:38;;;;5658:905;3147:4:60;6112:10:78;:42;6108:455;;6170:20;2399:5:60;2617:9;6292:33:78;;6291:71;6209:153;;-1:-1:-1;;6209:153:78;;-1:-1:-1;2877:2:60;6209:153:78;6433:40;3366:3:60;6402:71:78;2877:2:60;6492:12:78;:40;;;;6108:455;6706:3;6711:5;6698:19;;;;;;4025:2699;;;;;;:::o;2175:232:62:-;2241:47;2305:12;2320:40;2336:23;2320:15;:40::i;3016:1782:83:-;3200:6;3218:20;3241:36;3257:7;3266:10;3241:15;:36::i;:::-;3218:59;;3287:99;3389:35;:33;:35::i;:::-;-1:-1:-1;;;;;3468:14:83;;3434:31;3468:14;;;;;;;;;;;:26;;;;;;;;:36;;;;;;;;3287:137;;-1:-1:-1;3434:31:83;3547:56;3578:14;3495:8;3547:30;:56::i;:::-;3514:89;;;;3621:7;3613:16;;;;;;3689:29;:12;3711:6;3689:21;:29::i;:::-;3685:649;;;3838:18;;3802:20;;3825:32;;:8;;3838:18;;;;3825:32;;:12;:32::i;:::-;3802:55;-1:-1:-1;;;;;;;3879:33:83;-1:-1:-1;3879:33:83;;;:70;;-1:-1:-1;;;;;;3916:33:83;;;3879:70;3871:79;;;;;;3997:42;;-1:-1:-1;;;;;;3997:42:83;-1:-1:-1;;;;;3997:42:83;;;;;;;;;4119:106;;4176:34;:12;4196:6;4204:5;4176:19;:34::i;:::-;4161:49;;4119:106;4239:50;4255:7;4264:10;4276:12;4239:15;:50::i;:::-;4310:13;-1:-1:-1;4303:20:83;;-1:-1:-1;;;;;4303:20:83;3685:649;4348:13;;4344:422;;-1:-1:-1;;;;;;4483:28:83;-1:-1:-1;4483:28:83;;;:60;;-1:-1:-1;;;;;;4515:28:83;;;4483:60;4475:69;;;;;;4591:37;;-1:-1:-1;;;;;;4591:37:83;-1:-1:-1;;;;;4591:37:83;;;;;;;;4658:33;:12;4678:6;-1:-1:-1;4658:19:83;:33::i;:::-;4643:48;;4705:50;4721:7;4730:10;4742:12;4705:15;:50::i;:::-;4783:8;4776:15;;;;;;;3016:1782;;;;;;;;:::o;2971:2071:84:-;3268:27;;3230:186;;3313:10;3341:8;3367:9;3394:8;3230:20;:186::i;:::-;3171:263;;;3427:7;;3171:263;3448:32;;;;:36;3444:296;;3500:11;3514:183;3552:14;:24;;;3594:10;3622:8;3648:9;3675:8;3514:20;:183::i;:::-;3500:197;;3715:6;3711:19;;;3723:7;;;3711:19;3444:296;;3904:40;3934:9;3904:29;:40::i;:::-;3900:152;;;3980:1;3968:8;:13;;3960:22;;;;;;-1:-1:-1;;4069:27:84;;;;;:58;;-1:-1:-1;4112:15:84;4100:27;;;4069:58;4061:67;;;;;;4278:14;:24;;;:31;4242:14;:32;;;:67;4238:171;;;4352:46;4373:14;:24;;;4352:20;:46::i;:::-;4325:24;;;:73;4238:171;4679:30;4712:14;:24;;;4737:14;:32;;;4712:58;;;;;;;;;;;;;;;;;;;4780:32;;;4822:17;;:28;;;;4860:18;;;;:30;;;;4900:17;;;:28;-1:-1:-1;4938:21:84;;;;:50;;;;-1:-1:-1;4998:32:84;:37;;5034:1;4998:37;;;2971:2071::o;6460:4123::-;6583:4;;;;;;;;7195:574;7219:27;;:34;7215:38;;7195:574;;;7274:27;7304:14;:27;;;7332:1;7304:30;;;;;;;;;;;;;;7274:60;;7517:32;7495:54;;;;;;;;:5;:18;;;:54;;;;;;;;;;7487:63;;;;;;7647:24;7625:5;:18;;;:46;;;;;;;;;;:69;;;;-1:-1:-1;7675:14:84;;;;:19;7625:69;7621:138;;;7714:30;7726:14;7742:1;7714:11;:30::i;:::-;-1:-1:-1;7255:3:84;;7195:574;;;;7868:9;7863:1217;7887:27;;:34;7883:38;;7863:1217;;;7942:27;7972:14;:27;;;8000:1;7972:30;;;;;;;;;;;;;;7942:60;;8043:24;8021:46;;;;;;;;:5;:18;;;:46;;;;;;;;;8017:1053;;;8154:17;;;;8132:19;8220:25;;8198:65;;;8327:24;8305:5;:18;;;:46;;;;;;;;;8301:361;;;8461:17;;;;;8611:32;8461:5;:17;8611:11;:32::i;:::-;8301:361;;;8875:180;8920:5;8947:7;8976:25;9023:14;8875:23;:180::i;:::-;8820:235;;-1:-1:-1;8820:235:84;-1:-1:-1;8820:235:84;-1:-1:-1;8017:1053:84;-1:-1:-1;7923:3:84;;7863:1217;;;-1:-1:-1;9145:32:84;;;;9116:26;9280:37;:35;:37::i;:::-;-1:-1:-1;;;;;9394:14:84;;9327:64;9394:14;;;;;;;;;;9187:130;;-1:-1:-1;9418:735:84;9442:14;:24;;;:31;9438:1;:35;9418:735;;;9494:27;9524:14;:24;;;9549:1;9524:27;;;;;;;;;;;;;;9494:57;;9569:5;:14;;;9587:1;9569:19;9565:33;;;9590:8;;;9565:33;9659:24;9637:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;9725:32:84;9703:5;:18;;;:54;;;;;;;;;;9637:120;9612:159;;;;;;9878:160;9919:5;9942:7;9967:25;10010:14;9878:23;:160::i;:::-;9823:215;;-1:-1:-1;9823:215:84;-1:-1:-1;9823:215:84;-1:-1:-1;10053:52:84;10065:5;10072:12;10085:18;10072:32;;;;;;;;10053:11;:52::i;:::-;10141:1;10119:23;;;;9418:735;;9475:3;;9418:735;;;;10333:2;10311:18;:24;;:62;;;;-1:-1:-1;10357:16:84;10339:34;;;10311:62;10303:71;;;;;;-1:-1:-1;10445:7:84;;10466:25;;-1:-1:-1;10466:25:84;-1:-1:-1;10511:18:84;-1:-1:-1;6460:4123:84;-1:-1:-1;;;;6460:4123:84:o;8919:751:66:-;9004:7;;9150:24;9131:43;;9004:7;9302:338;-1:-1:-1;;;;;;9309:14:66;;;9302:338;;-1:-1:-1;;;9343:45:66;;;:77;9339:256;;;-1:-1:-1;;;;;;9516:23:66;;:33;;9506:44;;;;;9578:2;9568:12;9339:256;9627:2;9617:6;-1:-1:-1;;;;;9617:12:66;;;;9608:21;;9302:338;;;-1:-1:-1;9657:6:66;;8919:751;-1:-1:-1;;;8919:751:66:o;5247:3666::-;5435:10;5431:1;:14;:56;;;;-1:-1:-1;5408:6:60;5449:38:66;;;5431:56;5423:65;;;;;;5707:8;:57;;;;;5754:10;5719:14;:31;;;:45;;;5707:57;5703:70;;;5766:7;;5703:70;5824:31;;;;5783:14;;;6684:1857;-1:-1:-1;;;;;;6691:14:66;;;6684:1857;;6767:22;6743:47;;;5408:6:60;6743:47:66;6877:17;;;:29;;;;;6898:8;6877:29;6873:272;;;-1:-1:-1;7019:31:66;;;;;-1:-1:-1;;;;;;7074:14:66;;7102:2;7093:11;;;7074:31;;;;7019:87;;;;-1:-1:-1;;;;;;6965:141:66;;;-1:-1:-1;7124:7:66;;-1:-1:-1;7124:7:66;6873:272;7239:10;7232:3;:17;:30;;;;;7254:8;7253:9;7232:30;7228:375;;;-1:-1:-1;;;;;;7369:14:66;;7368:15;7359:24;;;;;-1:-1:-1;;;7405:50:66;;7401:77;;7476:2;7466:6;-1:-1:-1;;;;;7466:12:66;;;;7457:21;;7401:77;-1:-1:-1;;;;;;;7540:23:66;;;7560:2;7551:11;;;7540:23;7530:34;;;;7496:68;:31;;;:68;7582:7;;7228:375;7695:10;7689:3;:16;:28;;;;;7709:8;7689:28;7685:575;;;8046:3;8011:31;;;;-1:-1:-1;;;;;;7764:26:66;;;;:34;;7756:43;;7813:2;7804:11;;7756:60;7746:71;;;;;8011:38;;;8010:48;8002:57;;;;;;-1:-1:-1;;;;;;;8191:29:66;;;8212:1;8203:10;;;;8217:2;8202:17;8191:29;8181:40;;;;8147:74;:31;;;:74;8239:7;;7685:575;8364:10;8358:3;:16;:29;;;;;8379:8;8378:9;8358:29;8354:42;;;8389:7;;;;;;8354:42;-1:-1:-1;;;;;;;8429:23:66;;8466:2;8457:11;;;8429:40;;;;8419:51;;;;;8493:12;;;;-1:-1:-1;;;;;;8493:12:66;;8529:1;8519:11;6684:1857;;;8616:8;8611:22;;8626:7;;;;;8611:22;8733:1;8724:6;:10;8716:19;;;;;;-1:-1:-1;;;;;;8853:26:66;;;;:34;;8845:43;8902:2;8893:11;;;8845:60;8823:83;;;;-1:-1:-1;;;;;;8777:129:66;:31;;;:129;-1:-1:-1;5247:3666:66;;;;:::o;398:190:94:-;478:5;;;-1:-1:-1;;497:7:94;;493:88;;;515:6;;;:20;;;534:1;529;525;:5;;;;;;:10;515:20;506:30;;;;;;493:88;;;560:6;;;:20;;;579:1;574;570;:5;;;;;;:10;560:20;551:30;;;;;4677:217:62;4739:41;4796:12;4811:36;4827:19;4811:15;:36::i;656:266:83:-;741:20;773:61;837:35;:33;:35::i;:::-;-1:-1:-1;;;;;889:14:83;;;;;;;;;;;;;;:26;;;;;;;;;-1:-1:-1;;656:266:83;;;;:::o;732:234:92:-;804:4;837:1;828:5;:10;;:26;;;;;851:3;842:5;:12;;828:26;820:35;;;;;;-1:-1:-1;;;914:9:92;903:21;-1:-1:-1;;;902:39:92;;;901:58;;732:234::o;1427:120:94:-;1516:5;;;1511:16;;;;1483:8;1532:6;;;1511:28;1503:37;;;;;316:372:92;428:7;464:1;455:5;:10;;:26;;;;;478:3;469:5;:12;;455:26;447:35;;;;;;526:5;522:160;;;-1:-1:-1;;;;;;582:9:92;;564:28;554:39;;547:46;;522:160;-1:-1:-1;;;;;;660:9:92;;642:28;640:31;631:40;;624:47;;928:386:83;2215:2:60;1069:27:83;:12;:25;:27::i;:::-;:58;;1061:86;;;;-1:-1:-1;;;1061:86:83;;;;;;;:::i;:::-;1157:61;1221:35;:33;:35::i;:::-;-1:-1:-1;;;;;1266:14:83;;;;;;;;;;;;;;;:26;;;;;;;-1:-1:-1;1266:26:83;;:41;928:386::o;1166:1465:84:-;1374:4;;1390:1212;1414:10;:17;1410:1;:21;1390:1212;;;1452:27;1482:10;1493:1;1482:13;;;;;;;;;;;;;;1452:43;;1549:9;1530:5;:15;;;:28;;:78;;;-1:-1:-1;1578:16:84;;:30;;;1530:78;:124;;;;1646:8;1628:5;:14;;;:26;;1530:124;1509:168;;;1669:8;;;1509:168;1875:24;1853:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;1941:32:84;1919:5;:18;;;:54;;;;;;;;;;1853:120;1828:159;;;;;;2065:14;;;;2044:18;;2065:28;;2084:8;2065:18;:28::i;:::-;2044:49;;2173:40;2203:9;2173:29;:40::i;:::-;2169:163;;;2256:1;2241:11;:16;;2233:25;;;;;;-1:-1:-1;;2354:30:84;;;;;:64;;-1:-1:-1;2403:15:84;2388:30;;;2354:64;2346:73;;;;;;2478:14;;;:28;2541:24;2520:18;;;;:45;;;2541:24;-1:-1:-1;2580:11:84;;-1:-1:-1;2580:11:84;1390:1212;1433:3;;1390:1212;;;-1:-1:-1;2619:5:84;;1166:1465;-1:-1:-1;;;;;;1166:1465:84:o;615:222:88:-;683:4;4847:1:60;718:48:88;;;;;:112;;-1:-1:-1;;4906:1:60;-1:-1:-1;782:48:88;;615:222::o;5183:648:84:-;5294:23;5532:17;5552:9;:16;5572:1;5552:21;:48;;5580:9;:16;5599:1;5580:20;5552:48;;;5576:1;5552:48;5532:68;;5610:37;5671:9;-1:-1:-1;;;;;5650:31:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5610:71;;5696:9;5691:103;5715:9;:16;5711:1;:20;5691:103;;;5771:9;5781:1;5771:12;;;;;;;;;;;;;;5752:13;5766:1;5752:16;;;;;;;;;;;;;;;;;:31;5733:3;;5691:103;;;-1:-1:-1;5811:13:84;5183:648;-1:-1:-1;;;5183:648:84:o;12689:2038::-;12803:27;;:34;12795:42;;12787:51;;;;;;12920:1;12885:14;:32;;;:36;12877:45;;;;;;12969:35;13007:14;:27;;;13035:5;13007:34;;;;;;;;;;;;;;12969:72;;13102:24;13072:54;;;;;;;;:13;:26;;;:54;;;;;;;;;;:132;;;;-1:-1:-1;13172:32:84;13142:13;:26;;;:62;;;;;;;;;;13072:132;13051:163;;;;;;13253:32;;;:37;;-1:-1:-1;;13253:37:84;;;-1:-1:-1;;;13531:338:84;13551:27;;:34;13547:38;;13531:338;;;13606:23;13632:14;:27;;;13660:1;13632:30;;;;;;;;;;;;;;13606:56;;13696:13;13680:1;:13;;;:29;:75;;;;-1:-1:-1;13731:24:84;13713:1;:14;;;:42;;;;;;;;;;13680:75;13676:183;;;13791:1;:13;;;13775:29;;13843:1;13822:22;;13676:183;-1:-1:-1;13587:3:84;;13531:338;;;;13892:18;13883:5;:27;13879:236;;;-1:-1:-1;;14060:24:84;14031:26;;;;;:53;14098:7;;13879:236;14328:33;14364:14;:27;;;14392:18;14364:47;;;;;;;;;;;;;;;;;;14524:25;;;;;;14563:23;;;;;14421:175;;;;14633:24;14606;;;;:51;14696:24;14667:26;;:53;;;;-1:-1:-1;;;;;12689:2038:84:o;11592:862::-;11739:16;;11735:20;;;;:68;;-1:-1:-1;11759:16:84;;5408:6:60;-1:-1:-1;11759:44:84;11735:68;11727:77;;;;;;11868:5;:14;;;11864:1;:18;:56;;;;-1:-1:-1;11886:14:84;;;;11904:16;-1:-1:-1;11886:34:84;11864:56;11856:65;;;;;;11982:5;:15;;;11978:1;:19;:77;;;;-1:-1:-1;12001:15:84;;;;4906:1:60;-1:-1:-1;12001:54:84;11978:77;11970:86;;;;;;12127:14;;;;-1:-1:-1;;12108:33:84;;;;:70;;-1:-1:-1;12145:14:84;;;;12163:15;-1:-1:-1;12145:33:84;12108:70;12100:79;;;;;;12262:16;;12229:50;;12320:14;;;;12376:15;;;;12432:14;;;;;12402:45;;;;-1:-1:-1;;;12402:45:84;-1:-1:-1;;12345:47:84;;;;-1:-1:-1;;;12345:47:84;-1:-1:-1;;12289:46:84;;;;;;-1:-1:-1;;12229:50:84;;;;-1:-1:-1;;12229:50:84;;;;;;;12289:46;;;;;;;;12345:47;;;;;12402:45;;;;;;;;;;11592:862::o;10664:882::-;10896:4;10914:7;10935;10967:22;10992:25;:5;:23;:25::i;:::-;10967:50;-1:-1:-1;11089:19:84;;;:54;;;11129:14;11112;:31;11089:54;11085:116;;;11176:14;11159:31;;11085:116;11220:7;:29;;;;11248:1;11231:5;:14;;;:18;11220:29;11210:39;-1:-1:-1;11268:47:84;;;;11260:56;;;;;;-1:-1:-1;;11444:16:84;;11488:7;;11429:2;11400:31;;;;11465:3;11436:32;;;;11399:70;;;;;-1:-1:-1;11524:14:84;-1:-1:-1;10664:882:84:o;5315:243:62:-;5380:61;5457:12;5472:39;5488:22;5472:15;:39::i;1013:838:92:-;1215:1;1210:6;;;1219:66;1210:75;;;1135:70;;1134:152;1381:1;1376:6;;;1385:66;1376:75;;;1301:70;;1300:152;1547:1;1542:6;;;1471:66;1467:70;;;;1466:83;1644:1;1639:6;;;1648:66;1639:75;;;1564:70;;1563:152;1739:2;1734:7;;;1729:13;1766:2;1761:7;;;1756:13;1794:2;1789:7;;;1783:14;1833:3;1828:8;;;1839:4;1828:15;;;1815:8;;1814:30;;1013:838::o;1006:752:88:-;1085:7;1130:1;1112:5;:15;;;:19;:77;;;;-1:-1:-1;1135:15:88;;;;4906:1:60;-1:-1:-1;1135:54:88;1112:77;1104:86;;;;;;1309:15;;;;4847:1:60;-1:-1:-1;1305:81:88;;-1:-1:-1;1372:14:88;;;;1365:21;;1305:81;1397:20;1420:45;1463:1;1445:5;:15;;;:19;1420:24;:45::i;:::-;1696:14;;;;1397:68;;-1:-1:-1;1696:55:88;;2617:9:60;;1696:32:88;;1397:68;1696:18;:32::i;:::-;:36;;:55::i;3128:155:6:-;3186:7;3218:1;3213;:6;;3205:49;;;;;-1:-1:-1;;;3205:49:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3271:5:6;;;3128:155::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:400:168:-;;;147:3;140:4;132:6;128:17;124:27;114:2;;170:6;162;155:22;114:2;-1:-1:-1;198:20:168;;-1:-1:-1;;;;;230:30:168;;227:2;;;280:8;270;263:26;227:2;324:4;316:6;312:17;300:29;;387:3;380:4;372;364:6;360:17;352:6;348:30;344:41;341:50;338:2;;;404:1;401;394:12;419:195;500:13;;-1:-1:-1;;;;;;542:47:168;;532:58;;522:2;;604:1;601;594:12;619:377;;;736:3;729:4;721:6;717:17;713:27;703:2;;761:8;751;744:26;703:2;-1:-1:-1;791:20:168;;-1:-1:-1;;;;;823:30:168;;820:2;;;873:8;863;856:26;820:2;917:4;909:6;905:17;893:29;;969:3;962:4;953:6;945;941:19;937:30;934:39;931:2;;;986:1;983;976:12;1001:140;1081:13;;1103:32;1081:13;1103:32;:::i;1146:138::-;1225:13;;1247:31;1225:13;1247:31;:::i;1289:259::-;;1401:2;1389:9;1380:7;1376:23;1372:32;1369:2;;;1422:6;1414;1407:22;1369:2;1466:9;1453:23;1485:33;1512:5;1485:33;:::i;1825:402::-;;;1954:2;1942:9;1933:7;1929:23;1925:32;1922:2;;;1975:6;1967;1960:22;1922:2;2019:9;2006:23;2038:33;2065:5;2038:33;:::i;:::-;2090:5;-1:-1:-1;2147:2:168;2132:18;;2119:32;2160:35;2119:32;2160:35;:::i;:::-;2214:7;2204:17;;;1912:315;;;;;:::o;2232:1396::-;;;;;;;;;2501:3;2489:9;2480:7;2476:23;2472:33;2469:2;;;2523:6;2515;2508:22;2469:2;2567:9;2554:23;2586:33;2613:5;2586:33;:::i;:::-;2638:5;-1:-1:-1;2695:2:168;2680:18;;2667:32;2708:35;2667:32;2708:35;:::i;:::-;2762:7;-1:-1:-1;2820:2:168;2805:18;;2792:32;-1:-1:-1;;;;;2873:14:168;;;2870:2;;;2905:6;2897;2890:22;2870:2;2949:76;3017:7;3008:6;2997:9;2993:22;2949:76;:::i;:::-;3044:8;;-1:-1:-1;2923:102:168;-1:-1:-1;3132:2:168;3117:18;;3104:32;;-1:-1:-1;3148:16:168;;;3145:2;;;3182:6;3174;3167:22;3145:2;3226:78;3296:7;3285:8;3274:9;3270:24;3226:78;:::i;:::-;3323:8;;-1:-1:-1;3200:104:168;-1:-1:-1;3411:3:168;3396:19;;3383:33;;-1:-1:-1;3428:16:168;;;3425:2;;;3462:6;3454;3447:22;3425:2;;3506:62;3560:7;3549:8;3538:9;3534:24;3506:62;:::i;:::-;2459:1169;;;;-1:-1:-1;2459:1169:168;;-1:-1:-1;2459:1169:168;;;;;;3587:8;-1:-1:-1;;;2459:1169:168:o;3633:849::-;;;;;;;3832:3;3820:9;3811:7;3807:23;3803:33;3800:2;;;3854:6;3846;3839:22;3800:2;3898:9;3885:23;3917:33;3944:5;3917:33;:::i;:::-;3969:5;-1:-1:-1;4026:2:168;4011:18;;3998:32;4039:35;3998:32;4039:35;:::i;:::-;4093:7;-1:-1:-1;4147:2:168;4132:18;;4119:32;;-1:-1:-1;4198:2:168;4183:18;;4170:32;;-1:-1:-1;4253:3:168;4238:19;;4225:33;-1:-1:-1;;;;;4270:30:168;;4267:2;;;4318:6;4310;4303:22;4267:2;4362:60;4414:7;4405:6;4394:9;4390:22;4362:60;:::i;:::-;3790:692;;;;-1:-1:-1;3790:692:168;;-1:-1:-1;3790:692:168;;4441:8;;3790:692;-1:-1:-1;;;3790:692:168:o;4487:438::-;;;4613:2;4601:9;4592:7;4588:23;4584:32;4581:2;;;4634:6;4626;4619:22;4581:2;4678:9;4665:23;4697:33;4724:5;4697:33;:::i;:::-;4749:5;-1:-1:-1;4806:2:168;4791:18;;4778:32;4848:15;;4841:23;4829:36;;4819:2;;4884:6;4876;4869:22;4930:327;;;5059:2;5047:9;5038:7;5034:23;5030:32;5027:2;;;5080:6;5072;5065:22;5027:2;5124:9;5111:23;5143:33;5170:5;5143:33;:::i;:::-;5195:5;5247:2;5232:18;;;;5219:32;;-1:-1:-1;;;5017:240:168:o;5262:815::-;;;;;5461:2;5449:9;5440:7;5436:23;5432:32;5429:2;;;5482:6;5474;5467:22;5429:2;5527:9;5514:23;-1:-1:-1;;;;;5597:2:168;5589:6;5586:14;5583:2;;;5618:6;5610;5603:22;5583:2;5662:76;5730:7;5721:6;5710:9;5706:22;5662:76;:::i;:::-;5757:8;;-1:-1:-1;5636:102:168;-1:-1:-1;5845:2:168;5830:18;;5817:32;;-1:-1:-1;5861:16:168;;;5858:2;;;5895:6;5887;5880:22;5858:2;;5939:78;6009:7;5998:8;5987:9;5983:24;5939:78;:::i;:::-;5419:658;;;;-1:-1:-1;6036:8:168;-1:-1:-1;;;;5419:658:168:o;6902:190::-;;7014:2;7002:9;6993:7;6989:23;6985:32;6982:2;;;7035:6;7027;7020:22;6982:2;-1:-1:-1;7063:23:168;;6972:120;-1:-1:-1;6972:120:168:o;7097:257::-;;7208:2;7196:9;7187:7;7183:23;7179:32;7176:2;;;7229:6;7221;7214:22;7176:2;7273:9;7260:23;7292:32;7318:5;7292:32;:::i;7359:261::-;;7481:2;7469:9;7460:7;7456:23;7452:32;7449:2;;;7502:6;7494;7487:22;7449:2;7539:9;7533:16;7558:32;7584:5;7558:32;:::i;7625:876::-;;7758:2;7746:9;7737:7;7733:23;7729:32;7726:2;;;7779:6;7771;7764:22;7726:2;7817:9;7811:16;-1:-1:-1;;;;;7887:2:168;7879:6;7876:14;7873:2;;;7908:6;7900;7893:22;7873:2;7951:6;7940:9;7936:22;7926:32;;7996:7;7989:4;7985:2;7981:13;7977:27;7967:2;;8023:6;8015;8008:22;7967:2;8057;8051:9;8079:2;8075;8072:10;8069:2;;;8085:9;8069:2;8125;8119:9;8194:2;8175:13;;-1:-1:-1;;8171:27:168;8159:40;;8201:2;8155:49;8219:18;;;8239:22;;;8216:46;8213:2;;;8265:9;8213:2;8292;8285:22;8316:18;;;8353:11;;;8366:2;8349:20;8346:33;-1:-1:-1;8343:2:168;;;8397:6;8389;8382:22;8343:2;8415:55;8467:2;8462;8454:6;8450:15;8445:2;8441;8437:11;8415:55;:::i;:::-;8489:6;7716:785;-1:-1:-1;;;;;;7716:785:168:o;8506:952::-;;8662:3;8650:9;8641:7;8637:23;8633:33;8630:2;;;8684:6;8676;8669:22;8630:2;8722;8716:9;8764:3;8756:6;8752:16;8834:6;8822:10;8819:22;-1:-1:-1;;;;;8786:10:168;8783:34;8780:62;8777:2;;;8845:9;8777:2;8872;8865:22;8909:16;;8934:32;8909:16;8934:32;:::i;:::-;8975:21;;9041:2;9026:18;;9020:25;-1:-1:-1;;;;;;9076:27:168;;9064:40;;9054:2;;9123:6;9115;9108:22;9054:2;9160;9148:15;;9141:32;9206:49;9251:2;9236:18;;9206:49;:::i;:::-;9201:2;9193:6;9189:15;9182:74;9289:50;9335:2;9324:9;9320:18;9289:50;:::i;:::-;9284:2;9276:6;9272:15;9265:75;9374:52;9421:3;9410:9;9406:19;9374:52;:::i;:::-;9368:3;9356:16;;9349:78;9360:6;8620:838;-1:-1:-1;;;8620:838:168:o;9463:537::-;;;;9605:2;9593:9;9584:7;9580:23;9576:32;9573:2;;;9626:6;9618;9611:22;9573:2;9670:9;9657:23;9689:32;9715:5;9689:32;:::i;:::-;9740:5;-1:-1:-1;9797:2:168;9782:18;;9769:32;9810:34;9769:32;9810:34;:::i;:::-;9863:7;-1:-1:-1;9922:2:168;9907:18;;9894:32;9935:33;9894:32;9935:33;:::i;:::-;9987:7;9977:17;;;9563:437;;;;;:::o;10005:369::-;10099:19;;;10005:369;-1:-1:-1;;;;;10130:31:168;;10127:2;;;10176:3;10171;10164:16;10127:2;10219:4;10211:6;10207:17;10269:8;10262:5;10255:4;10250:3;10246:14;10233:45;10301:18;;;;10321:4;10297:29;10335:15;;;-1:-1:-1;10297:29:168;;10089:285;-1:-1:-1;10089:285:168:o;10379:270::-;;10469:6;10464:3;10457:19;10521:6;10514:5;10507:4;10502:3;10498:14;10485:43;10573:3;10566:4;10557:6;10552:3;10548:16;10544:27;10537:40;10638:4;10631:2;10627:7;10622:2;10614:6;10610:15;10606:29;10601:3;10597:39;10593:50;10586:57;;10447:202;;;;;:::o;10654:273::-;;10837:6;10829;10824:3;10811:33;10863:16;;10888:15;;;10863:16;10801:126;-1:-1:-1;10801:126:168:o;10932:211::-;-1:-1:-1;;;;;11104:32:168;;;;11086:51;;11074:2;11059:18;;11041:102::o;11356:929::-;-1:-1:-1;;;;;11791:15:168;;;11773:34;;11843:15;;11838:2;11823:18;;11816:43;11753:3;11890:2;11875:18;;11868:31;;;11356:929;;11922:80;;11982:19;;11974:6;11966;11922:80;:::i;:::-;12050:9;12042:6;12038:22;12033:2;12022:9;12018:18;12011:50;12084:67;12144:6;12136;12128;12084:67;:::i;:::-;12070:81;;12200:9;12192:6;12188:22;12182:3;12171:9;12167:19;12160:51;12228;12272:6;12264;12256;12228:51;:::i;:::-;12220:59;11725:560;-1:-1:-1;;;;;;;;;;;11725:560:168:o;12290:597::-;-1:-1:-1;;;;;12605:15:168;;;12587:34;;12657:15;;12652:2;12637:18;;12630:43;12704:2;12689:18;;12682:34;;;12747:2;12732:18;;12725:34;;;12567:3;12790;12775:19;;12768:32;;;12290:597;;12817:64;;12861:19;;12853:6;12845;12817:64;:::i;12892:304::-;-1:-1:-1;;;;;13122:15:168;;;13104:34;;13174:15;;13169:2;13154:18;;13147:43;13054:2;13039:18;;13021:175::o;13201:700::-;-1:-1:-1;;;;;13468:32:168;;;;13450:51;;13541:13;;13556:12;13537:32;13532:2;13517:18;;;13510:60;;;;13616:15;;13610:22;-1:-1:-1;;;;;;13606:42:168;13601:2;13586:18;;;13579:70;;;;13695:15;;13689:22;13643:3;13685:33;13680:2;13665:18;;;13658:61;;;;13766:15;;13760:22;13784:6;13756:35;13750:3;13735:19;;;13728:64;;;;13839:16;13833:23;-1:-1:-1;;;;;;13829:65:168;13488:3;13808:19;;13801:94;13437:3;13422:19;;13404:497::o;13906:633::-;14075:2;14127:21;;;14197:13;;14100:18;;;14219:22;;;13906:633;;14075:2;14298:15;;;;14272:2;14257:18;;;13906:633;14344:169;14358:6;14355:1;14352:13;14344:169;;;14419:13;;14407:26;;14488:15;;;;14453:12;;;;14380:1;14373:9;14344:169;;;-1:-1:-1;14530:3:168;;14055:484;-1:-1:-1;;;;;;14055:484:168:o;14544:1204::-;14781:2;14833:21;;;14903:13;;14806:18;;;14925:22;;;14544:1204;;14781:2;14966;;14984:18;;;;15025:15;;;14544:1204;15071:651;15085:6;15082:1;15079:13;15071:651;;;15144:13;;15182:9;;15170:22;;15232:11;;;15226:18;15212:12;;;15205:40;15285:11;;;15279:18;15265:12;;;15258:40;15321:4;15365:11;;;15359:18;15345:12;;;15338:40;15401:4;15445:11;;;15439:18;15425:12;;;15418:40;15481:4;15524:11;;;15518:18;;15576:1;15559:19;;15549:2;;15582:9;15549:2;15613:12;;15606:34;15669:4;15660:14;;;;15697:15;;;;15107:1;15100:9;15071:651;;;-1:-1:-1;15739:3:168;;14761:987;-1:-1:-1;;;;;;;14761:987:168:o;15753:531::-;;16030:2;16019:9;16012:21;16056:79;16131:2;16120:9;16116:18;16108:6;16100;16056:79;:::i;:::-;16183:9;16175:6;16171:22;16166:2;16155:9;16151:18;16144:50;16211:67;16271:6;16263;16255;16211:67;:::i;:::-;16203:75;16002:282;-1:-1:-1;;;;;;;16002:282:168:o;16929:187::-;17094:14;;17087:22;17069:41;;17057:2;17042:18;;17024:92::o;17121:175::-;17265:25;;;17253:2;17238:18;;17220:76::o;17301:383::-;;17450:2;17439:9;17432:21;17482:6;17476:13;17525:6;17520:2;17509:9;17505:18;17498:34;17541:66;17600:6;17595:2;17584:9;17580:18;17575:2;17567:6;17563:15;17541:66;:::i;:::-;17668:2;17647:15;-1:-1:-1;;17643:29:168;17628:45;;;;17675:2;17624:54;;17422:262;-1:-1:-1;;17422:262:168:o;17689:339::-;17891:2;17873:21;;;17930:2;17910:18;;;17903:30;-1:-1:-1;;;17964:2:168;17949:18;;17942:45;18019:2;18004:18;;17863:165::o;18033:341::-;18235:2;18217:21;;;18274:2;18254:18;;;18247:30;-1:-1:-1;;;18308:2:168;18293:18;;18286:47;18365:2;18350:18;;18207:167::o;18379:336::-;18581:2;18563:21;;;18620:2;18600:18;;;18593:30;-1:-1:-1;;;18654:2:168;18639:18;;18632:42;18706:2;18691:18;;18553:162::o;18720:337::-;18922:2;18904:21;;;18961:2;18941:18;;;18934:30;-1:-1:-1;;;18995:2:168;18980:18;;18973:43;19048:2;19033:18;;18894:163::o;19062:343::-;19264:2;19246:21;;;19303:2;19283:18;;;19276:30;-1:-1:-1;;;19337:2:168;19322:18;;19315:49;19396:2;19381:18;;19236:169::o;19410:339::-;19612:2;19594:21;;;19651:2;19631:18;;;19624:30;-1:-1:-1;;;19685:2:168;19670:18;;19663:45;19740:2;19725:18;;19584:165::o;19754:340::-;19956:2;19938:21;;;19995:2;19975:18;;;19968:30;-1:-1:-1;;;20029:2:168;20014:18;;20007:46;20085:2;20070:18;;19928:166::o;20099:342::-;20301:2;20283:21;;;20340:2;20320:18;;;20313:30;-1:-1:-1;;;20374:2:168;20359:18;;20352:48;20432:2;20417:18;;20273:168::o;20446:336::-;20648:2;20630:21;;;20687:2;20667:18;;;20660:30;-1:-1:-1;;;20721:2:168;20706:18;;20699:42;20773:2;20758:18;;20620:162::o;20969:248::-;21143:25;;;21199:2;21184:18;;21177:34;21131:2;21116:18;;21098:119::o;21222:363::-;;;21380:8;21368:10;21365:24;21362:2;;;21410:9;21399;21392:28;21362:2;21447:6;21437:8;21434:20;21431:2;;;21475:9;21464;21457:28;21431:2;-1:-1:-1;;21509:23:168;;;21554:25;;;;;-1:-1:-1;21352:233:168:o;21590:258::-;21662:1;21672:113;21686:6;21683:1;21680:13;21672:113;;;21762:11;;;21756:18;21743:11;;;21736:39;21708:2;21701:10;21672:113;;;21803:6;21800:1;21797:13;21794:2;;;-1:-1:-1;;21838:1:168;21820:16;;21813:27;21643:205::o;21853:133::-;-1:-1:-1;;;;;21930:31:168;;21920:42;;21910:2;;21976:1;21973;21966:12;21910:2;21900:86;:::o;21991:133::-;-1:-1:-1;;;;;;22067:32:168;;22057:43;;22047:2;;22114:1;22111;22104:12;22129:119;22216:6;22209:5;22205:18;22198:5;22195:29;22185:2;;22238:1;22235;22228:12;22253:125;22340:12;22333:5;22329:24;22322:5;22319:35;22309:2;;22368:1;22365;22358:12;22383:116;22469:4;22462:5;22458:16;22451:5;22448:27;22438:2;;22489:1;22486;22479:12", - "language": "Solidity", - "natspec": { - "kind": "dev", - "methods": { - "balanceOf(address,uint256)": { - "notice": "Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by this method do not show negative fCash balances because only unsigned integers are returned. They are represented by zero here. Use `signedBalanceOf` to get a signed return value.", - "params": { - "account": "account to get the id for", - "id": "the ERC1155 id" - }, - "returns": { - "_0": "Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)" - } - }, - "balanceOfBatch(address[],uint256[])": { - "notice": "Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented as zero balances in the array. ", - "params": { - "accounts": "array of accounts to get balances for", - "ids": "array of ids to get balances for" - }, - "returns": { - "_0": "Returns an array of unsigned balances" - } - }, - "decodeToAssets(uint256[],uint256[])": { - "notice": "Decodes ids and amounts to PortfolioAsset objects", - "params": { - "amounts": "amounts to transfer", - "ids": "array of ERC1155 ids" - }, - "returns": { - "_0": "array of portfolio asset objects" - } - }, - "encodeToId(uint16,uint40,uint8)": { - "notice": "Encodes parameters into an ERC1155 id", - "params": { - "assetType": "id of the asset type", - "currencyId": "currency id of the asset", - "maturity": "timestamp of the maturity" - }, - "returns": { - "_0": "ERC1155 id" - } - }, - "getLibInfo()": { - "notice": "Get a list of deployed library addresses (sorted by library name)" - }, - "isApprovedForAll(address,address)": { - "notice": "Checks approval state for an account, will first check if global transfer operator is enabled before falling through to an account specific transfer operator.", - "params": { - "account": "address of the account", - "operator": "address of the operator" - }, - "returns": { - "_0": "true for approved" - } - }, - "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": { - "details": "emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled", - "notice": "Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.", - "params": { - "amounts": "amounts to transfer", - "data": "arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate a trading action on Notional for the `from` address", - "from": "account to transfer from", - "ids": "ERC1155 ids of the assets", - "to": "account to transfer to" - } - }, - "safeTransferFrom(address,address,uint256,uint256,bytes)": { - "details": "emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled", - "notice": "Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.", - "params": { - "amount": "amount to transfer", - "data": "arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate a trading action on Notional for the `from` address", - "from": "account to transfer from", - "id": "ERC1155 id of the asset", - "to": "account to transfer to" - } - }, - "setApprovalForAll(address,bool)": { - "details": "emit:ApprovalForAll", - "notice": "Allows an account to set approval for an operator", - "params": { - "approved": "state of the approval", - "operator": "address of the operator" - } - }, - "signedBalanceOf(address,uint256)": { - "notice": "Returns the balance of an ERC1155 id on an account.", - "params": { - "account": "account to get the id for", - "id": "the ERC1155 id" - }, - "returns": { - "notional": "balance of the ERC1155 id as a signed integer" - } - }, - "signedBalanceOfBatch(address[],uint256[])": { - "notice": "Returns the balance of a batch of accounts and ids.", - "params": { - "accounts": "array of accounts to get balances for", - "ids": "array of ids to get balances for" - }, - "returns": { - "_0": "Returns an array of signed balances" - } - } - }, - "version": 1 - }, - "offset": [ - 683, - 20316 - ], - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xE7 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x735A1DC8 GT PUSH2 0x8A JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x59 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x26A JUMPI DUP1 PUSH4 0xC4C96DAE EQ PUSH2 0x28A JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x2AD JUMPI DUP1 PUSH4 0xF242432A EQ PUSH2 0x2CD JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH4 0x735A1DC8 EQ PUSH2 0x200 JUMPI DUP1 PUSH4 0x81A86855 EQ PUSH2 0x220 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x240 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x255 JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH4 0x24A3D622 GT PUSH2 0xC6 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x16F JUMPI DUP1 PUSH4 0x2EB2C2D6 EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x3FA6B808 EQ PUSH2 0x1A6 JUMPI DUP1 PUSH4 0x4E1273F4 EQ PUSH2 0x1D3 JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH3 0xFDD58E EQ PUSH2 0xEC JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x122 JUMPI DUP1 PUSH4 0xFAC8F09 EQ PUSH2 0x14F JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x107 CALLDATASIZE PUSH1 0x4 PUSH2 0x312D JUMP JUMPDEST PUSH2 0x2E0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3630 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x12E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x142 PUSH2 0x13D CALLDATASIZE PUSH1 0x4 PUSH2 0x31D8 JUMP JUMPDEST PUSH2 0x312 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3625 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x15B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x16A CALLDATASIZE PUSH1 0x4 PUSH2 0x312D JUMP JUMPDEST PUSH2 0x32C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x17B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x380 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x33F4 JUMP JUMPDEST PUSH2 0x1A4 PUSH2 0x19F CALLDATASIZE PUSH1 0x4 PUSH2 0x2FC9 JUMP JUMPDEST PUSH2 0x38F JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1B2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C6 PUSH2 0x1C1 CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x557 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3571 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F3 PUSH2 0x1EE CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x572 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x352D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x20C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x21B CALLDATASIZE PUSH1 0x4 PUSH2 0x333C JUMP JUMPDEST PUSH2 0x635 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x22C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F3 PUSH2 0x23B CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x65A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x24C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x713 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x261 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x722 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x276 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1A4 PUSH2 0x285 CALLDATASIZE PUSH1 0x4 PUSH2 0x30FC JUMP JUMPDEST PUSH2 0x739 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x296 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x29F PUSH2 0x7A8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP3 SWAP2 SWAP1 PUSH2 0x34A7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x142 PUSH2 0x2C8 CALLDATASIZE PUSH1 0x4 PUSH2 0x2F91 JUMP JUMPDEST PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x1A4 PUSH2 0x2DB CALLDATASIZE PUSH1 0x4 PUSH2 0x3083 JUMP JUMPDEST PUSH2 0x82E JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2ED DUP5 DUP5 PUSH2 0x32C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT PUSH2 0x305 JUMPI PUSH2 0x300 DUP2 PUSH2 0xA23 JUMP JUMPDEST PUSH2 0x308 JUMP JUMPDEST PUSH1 0x0 JUMPDEST SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND PUSH4 0x6CDB3D13 PUSH1 0xE1 SHL EQ JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x338 DUP5 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0x343 DUP2 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x362 JUMPI PUSH2 0x35B DUP5 DUP3 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND DUP6 PUSH2 0xAE4 JUMP JUMPDEST SWAP2 POP PUSH2 0x379 JUMP JUMPDEST PUSH2 0x308 PUSH2 0x373 DUP6 DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0xB2F JUMP JUMPDEST DUP5 PUSH2 0xB58 JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH2 0x399 DUP9 DUP9 PUSH2 0xBDE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3A8 DUP9 DUP9 DUP9 DUP9 PUSH2 0xC7E JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP1 ISZERO PUSH2 0x3E1 JUMPI PUSH2 0x3BC DUP10 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x3E1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36C0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3EF DUP13 DUP13 DUP7 PUSH2 0xDC8 JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH2 0x402 DUP13 DUP13 DUP5 DUP5 DUP11 DUP11 DUP10 PUSH2 0xF68 JUMP JUMPDEST DUP11 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP13 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB DUP14 DUP14 DUP14 DUP14 PUSH1 0x40 MLOAD PUSH2 0x455 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x35F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x466 DUP12 PUSH2 0x1246 JUMP JUMPDEST ISZERO PUSH2 0x549 JUMPI PUSH32 0xBC197C819B3E337A6F9652DD10BECD7EEF83032AF3B9D958D3D42F6694146621 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND DUP12 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xBC197C81 CALLER DUP16 DUP15 DUP15 DUP15 DUP15 DUP15 DUP15 PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D0 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3408 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x522 SWAP2 SWAP1 PUSH2 0x31F4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND EQ PUSH2 0x549 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x37B9 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x567 DUP7 DUP7 DUP7 DUP7 PUSH2 0xC7E JUMP JUMPDEST POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 DUP3 EQ PUSH2 0x580 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x598 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5C2 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH2 0x60C DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x5DF JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x5F4 SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x600 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x2E0 JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x618 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x5C8 JUMP JUMPDEST POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x650 DUP5 PUSH2 0xFFFF AND DUP5 PUSH5 0xFFFFFFFFFF AND DUP5 PUSH1 0xFF AND PUSH2 0x124C JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 DUP3 EQ PUSH2 0x668 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x680 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x6AA JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH2 0x6F4 DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x6C7 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x6DC SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x6E8 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x32C JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x700 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x6B0 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x7 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 AND DUP1 DUP6 MSTORE SWAP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND DUP6 ISZERO ISZERO OR SWAP1 SSTORE SWAP1 MLOAD SWAP1 SWAP2 SWAP1 PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 SWAP1 PUSH2 0x79C SWAP1 DUP6 SWAP1 PUSH2 0x3625 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH20 0x0 PUSH20 0x0 SWAP1 SWAP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x7FF JUMPI POP PUSH1 0x1 PUSH2 0x30C JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x7 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP5 AND DUP3 MSTORE SWAP2 SWAP1 SWAP2 MSTORE KECCAK256 SLOAD PUSH1 0xFF AND SWAP1 JUMP JUMPDEST PUSH2 0x838 DUP7 DUP7 PUSH2 0xBDE JUMP JUMPDEST PUSH2 0x840 PUSH2 0x2E31 JUMP JUMPDEST DUP4 ISZERO PUSH2 0x936 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x865 PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x85D JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x889 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x89C DUP8 PUSH2 0x12A7 JUMP JUMPDEST PUSH1 0x40 DUP5 ADD MSTORE PUSH1 0x20 DUP4 ADD MSTORE DUP2 MSTORE PUSH2 0x8B1 DUP7 PUSH2 0x12C4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE DUP1 MLOAD PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x8C8 SWAP2 SWAP1 TIMESTAMP PUSH2 0x12DA JUMP JUMPDEST PUSH2 0x8D3 DUP10 DUP10 DUP5 PUSH2 0xDC8 JUMP JUMPDEST POP DUP1 SWAP4 POP POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP10 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH2 0x927 SWAP3 SWAP2 SWAP1 PUSH2 0x37DF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP PUSH2 0x942 JUMP JUMPDEST PUSH2 0x93F DUP8 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0x94A PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0x95A DUP9 DUP9 DUP5 DUP5 DUP9 DUP9 PUSH1 0x0 PUSH2 0xF68 JUMP JUMPDEST PUSH2 0x963 DUP8 PUSH2 0x1246 JUMP JUMPDEST ISZERO PUSH2 0xA19 JUMPI PUSH1 0x40 MLOAD PUSH4 0xF23A6E61 PUSH1 0xE0 SHL DUP1 DUP3 MSTORE SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND SWAP1 PUSH4 0xF23A6E61 SWAP1 PUSH2 0x9A0 SWAP1 CALLER SWAP1 DUP14 SWAP1 DUP13 SWAP1 DUP13 SWAP1 DUP13 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x346C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x9CE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x9F2 SWAP2 SWAP1 PUSH2 0x31F4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND EQ PUSH2 0xA19 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x37B9 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0xA32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH2 0xA3E PUSH2 0x2E31 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA48 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP4 DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP2 MLOAD PUSH1 0xA0 DUP2 ADD DUP4 MSTORE SWAP1 SLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP3 MSTORE PUSH6 0x10000000000 DUP2 DIV PUSH1 0xF8 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP6 DUP3 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x1 PUSH1 0x30 SHL DUP6 DIV PUSH1 0xFF AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1 PUSH1 0x38 SHL DUP5 DIV PUSH2 0xFFFF AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x48 SHL SWAP1 SWAP4 DIV PUSH1 0x70 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xAF3 DUP6 PUSH2 0x12A7 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP6 DUP4 EQ ISZERO DUP1 PUSH2 0xB09 JUMPI POP PUSH1 0x1 DUP2 EQ ISZERO JUMPDEST ISZERO PUSH2 0xB1A JUMPI PUSH1 0x0 SWAP4 POP POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH2 0xB25 DUP8 DUP5 DUP5 PUSH2 0x131E JUMP JUMPDEST SWAP4 POP POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0xB3D DUP5 DUP5 PUSH2 0x1363 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 DUP2 MLOAD GT PUSH2 0xB4F JUMPI SWAP1 POP PUSH2 0x30C JUMP JUMPDEST PUSH2 0x653 DUP2 PUSH2 0x147A JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xB67 DUP6 PUSH2 0x12A7 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP7 MLOAD DUP2 LT ISZERO PUSH2 0xBD4 JUMPI PUSH1 0x0 DUP8 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xB87 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP5 DUP2 PUSH1 0x0 ADD MLOAD EQ DUP1 ISZERO PUSH2 0xBA7 JUMPI POP DUP4 DUP2 PUSH1 0x20 ADD MLOAD EQ JUMPDEST DUP1 ISZERO PUSH2 0xBB6 JUMPI POP DUP3 DUP2 PUSH1 0x40 ADD MLOAD EQ JUMPDEST ISZERO PUSH2 0xBCB JUMPI PUSH1 0x60 ADD MLOAD SWAP5 POP PUSH2 0x30C SWAP4 POP POP POP POP JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xB70 JUMP JUMPDEST POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO DUP1 ISZERO PUSH2 0xC08 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ISZERO ISZERO JUMPDEST DUP1 ISZERO PUSH2 0xC1D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO JUMPDEST PUSH2 0xC39 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x366C JUMP JUMPDEST CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND EQ DUP1 PUSH2 0xC55 JUMPI POP PUSH2 0xC55 DUP3 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0xC71 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36C0 JUMP JUMPDEST PUSH2 0xC7A DUP3 PUSH2 0x1638 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP5 DUP4 EQ PUSH2 0xC8E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0xCA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xCE1 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xCCE PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xCC6 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP8 DUP2 LT ISZERO PUSH2 0xDBB JUMPI DUP1 ISZERO PUSH2 0xD3B JUMPI DUP9 DUP9 PUSH1 0x1 DUP4 SUB DUP2 DUP2 LT PUSH2 0xD04 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD DUP10 DUP10 DUP4 DUP2 DUP2 LT PUSH2 0xD17 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD GT PUSH2 0xD3B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x378D JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xD49 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0xD6E DUP11 DUP11 DUP5 DUP2 DUP2 LT PUSH2 0xD62 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x12A7 JUMP JUMPDEST PUSH1 0x40 DUP5 ADD MSTORE PUSH1 0x20 DUP4 ADD DUP2 SWAP1 MSTORE DUP2 DUP4 MSTORE PUSH2 0xD88 SWAP2 SWAP1 TIMESTAMP PUSH2 0x12DA JUMP JUMPDEST DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0xD94 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL SWAP2 SWAP1 SWAP2 ADD CALLDATALOAD PUSH1 0x60 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SGT ISZERO SWAP1 POP PUSH2 0xDB2 JUMPI PUSH1 0x1 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xCE7 JUMP JUMPDEST POP SWAP8 SWAP1 SWAP7 POP SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0xDD0 PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0xDD8 PUSH2 0x2E31 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDE3 DUP6 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0xDEE DUP2 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0xE7F JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xE2C SWAP1 DUP9 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x34C1 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE44 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE58 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE7C SWAP2 SWAP1 PUSH2 0x32A6 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0xE8A DUP6 DUP3 DUP7 PUSH2 0x16D7 JUMP JUMPDEST SWAP1 POP PUSH2 0xE96 DUP2 DUP7 PUSH2 0x1758 JUMP JUMPDEST PUSH2 0xE9F DUP5 PUSH2 0x185C JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEAA DUP8 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0xEB5 DUP2 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0xF46 JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xEF3 SWAP1 DUP11 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x34C1 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xF1F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xF43 SWAP2 SWAP1 PUSH2 0x32A6 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0xF51 DUP8 DUP3 DUP8 PUSH2 0x16D7 JUMP JUMPDEST SWAP1 POP PUSH2 0xF5D DUP2 DUP9 PUSH2 0x1758 JUMP JUMPDEST SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP5 LT PUSH2 0xF85 JUMPI PUSH1 0x0 PUSH2 0xF81 DUP6 DUP8 ADD DUP8 PUSH2 0x31C0 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x66890643 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0xFB4 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x541F527 PUSH1 0xE4 SHL EQ JUMPDEST DUP1 PUSH2 0xFCF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x37351953 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0xFEA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x276B64B PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x10FA JUMPI PUSH2 0xFFD PUSH1 0x24 PUSH1 0x4 DUP7 DUP9 PUSH2 0x37ED JUMP JUMPDEST DUP2 ADD SWAP1 PUSH2 0x100A SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST SWAP1 POP DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ DUP1 PUSH2 0x104D JUMPI POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ DUP1 ISZERO PUSH2 0x104D JUMPI POP PUSH2 0x104D DUP9 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x1069 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x3695 JUMP JUMPDEST PUSH1 0x0 DUP1 ADDRESS PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLVALUE DUP9 DUP9 PUSH1 0x40 MLOAD PUSH2 0x1087 SWAP3 SWAP2 SWAP1 PUSH2 0x33E4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x10C4 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x10C9 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x10D8 DUP3 PUSH2 0x18AB JUMP JUMPDEST SWAP1 PUSH2 0x10F6 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP2 SWAP1 PUSH2 0x3639 JUMP JUMPDEST POP POP POP JUMPDEST DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO DUP1 ISZERO PUSH2 0x1129 JUMPI POP PUSH1 0x20 DUP8 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1196 JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x1165 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x33F4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x117D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1191 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP3 DUP1 ISZERO PUSH2 0x11B5 JUMPI POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO JUMPDEST DUP1 ISZERO PUSH2 0x11CE JUMPI POP PUSH1 0x20 DUP7 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x123B JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x120A SWAP1 DUP12 SWAP1 PUSH1 0x4 ADD PUSH2 0x33F4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1222 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1236 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST EXTCODESIZE ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFF DUP5 GT ISZERO PUSH2 0x125D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x126F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 DUP3 GT ISZERO PUSH2 0x127D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH8 0xFFFF000000000000 PUSH1 0x30 DUP5 SWAP1 SHL AND PUSH6 0xFFFFFFFFFF00 PUSH1 0x8 DUP5 SWAP1 SHL AND OR PUSH1 0xFF DUP3 AND OR SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xFFFF PUSH1 0x30 DUP3 SWAP1 SHR AND SWAP2 PUSH5 0xFFFFFFFFFF PUSH1 0x8 DUP4 SWAP1 SHR AND SWAP2 PUSH1 0xFF AND SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 GT ISZERO PUSH2 0xA32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x12F0 PUSH2 0x12E6 DUP5 PUSH2 0x190B JUMP JUMPDEST PUSH1 0xFF AND DUP4 DUP4 PUSH2 0x1921 JUMP JUMPDEST PUSH2 0x130C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x3763 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x1 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1329 PUSH2 0x198A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP2 DUP3 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP8 DUP4 MSTORE DUP4 MSTORE DUP1 DUP3 KECCAK256 DUP7 DUP4 MSTORE SWAP1 SWAP3 MSTORE KECCAK256 SLOAD PUSH1 0xF SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x10 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x1376 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1380 PUSH2 0x1997 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH1 0xFF DUP6 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x13B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x13EE JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x13DB PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x13D3 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH1 0x0 DUP4 DUP3 PUSH1 0x10 DUP2 LT PUSH2 0x140D JUMPI INVALID JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x141E JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD DUP4 SLOAD PUSH2 0xFFFF DUP2 AND DUP3 MSTORE PUSH5 0xFFFFFFFFFF PUSH3 0x10000 DUP3 DIV AND SWAP3 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0x38 SHL DUP4 DIV AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x40 SHL SWAP1 SWAP2 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH1 0x1 ADD PUSH2 0x13F4 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x1494 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x14BE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x151B JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x14DA JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x14FB DUP2 PUSH1 0x0 ADD MLOAD DUP3 PUSH1 0x20 ADD MLOAD DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0x124C JUMP JUMPDEST DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1507 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE POP PUSH1 0x1 ADD PUSH2 0x14C4 JUMP JUMPDEST POP PUSH1 0x1 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x1632 JUMPI DUP1 JUMPDEST PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x1561 JUMPI POP DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x1540 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x1557 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x1629 JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x1572 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x1589 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15A0 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x15B3 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP3 DUP2 MSTORE POP DUP3 DUP2 MSTORE POP POP POP DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x15D0 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15E7 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP7 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15FE JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP8 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x1611 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD SWAP2 SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x0 NOT ADD PUSH2 0x1529 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x151F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x164B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO PUSH2 0x1661 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x166C DUP3 PUSH2 0x19A4 JUMP JUMPDEST POP POP POP POP PUSH2 0xFFFF AND SWAP1 POP DUP1 PUSH1 0x0 EQ PUSH2 0xC7A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 TIMESTAMP PUSH2 0x168F DUP4 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x16B0 JUMPI PUSH2 0x169D DUP2 PUSH2 0x1A0D JUMP JUMPDEST DUP4 MLOAD PUSH5 0xFFFFFFFFFF AND LT SWAP2 POP PUSH2 0x327 SWAP1 POP JUMP JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND ISZERO DUP1 ISZERO SWAP1 PUSH2 0x16CF JUMPI POP DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND DUP2 LT ISZERO JUMPDEST SWAP2 POP POP PUSH2 0x327 JUMP JUMPDEST PUSH2 0x16DF PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0x16E8 DUP4 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0x1705 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x370D JUMP JUMPDEST PUSH2 0x170E DUP4 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x1723 JUMPI PUSH2 0x171E DUP5 DUP5 DUP5 PUSH2 0x1A2E JUMP JUMPDEST PUSH2 0x1750 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1735 DUP6 DUP6 PUSH1 0x40 ADD MLOAD DUP6 MLOAD PUSH2 0x1AF6 JUMP JUMPDEST SWAP1 POP PUSH2 0x1741 DUP2 DUP5 PUSH2 0x1B88 JUMP JUMPDEST PUSH2 0x174E DUP5 DUP7 DUP4 PUSH1 0x0 PUSH2 0x1BE6 JUMP JUMPDEST POP JUMPDEST POP SWAP1 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1762 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP4 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP9 MLOAD DUP2 SLOAD SWAP4 DUP11 ADD MLOAD DUP4 DUP12 ADD MLOAD PUSH1 0x60 DUP13 ADD MLOAD PUSH1 0x80 DUP14 ADD MLOAD PUSH1 0x70 SHR PUSH1 0x1 PUSH1 0x48 SHL MUL PUSH27 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000 NOT PUSH2 0xFFFF SWAP1 SWAP3 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH9 0xFFFF00000000000000 NOT PUSH1 0xFF SWAP5 SWAP1 SWAP5 AND PUSH1 0x1 PUSH1 0x30 SHL MUL PUSH7 0xFF000000000000 NOT PUSH1 0xF8 SWAP7 SWAP1 SWAP7 SHR PUSH6 0x10000000000 MUL PUSH6 0xFF0000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP9 AND PUSH5 0xFFFFFFFFFF NOT SWAP1 SWAP12 AND SWAP11 SWAP1 SWAP11 OR SWAP7 SWAP1 SWAP7 AND SWAP9 SWAP1 SWAP9 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR AND SWAP5 SWAP1 SWAP5 OR AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE MLOAD SWAP3 SWAP4 POP SWAP1 SWAP2 PUSH32 0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E SWAP2 SWAP1 LOG2 POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0xC7A JUMPI PUSH2 0x1888 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1877 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0x1CBD JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1894 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x60 ADD MSTORE PUSH1 0x1 ADD PUSH2 0x185F JUMP JUMPDEST PUSH1 0x60 PUSH1 0x44 DUP3 MLOAD LT ISZERO PUSH2 0x18F1 JUMPI POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x1D DUP2 MSTORE PUSH32 0x5472616E73616374696F6E2072657665727465642073696C656E746C79000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x327 JUMP JUMPDEST PUSH1 0x4 DUP3 ADD SWAP2 POP DUP2 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x30C SWAP2 SWAP1 PUSH2 0x3210 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1917 DUP4 PUSH2 0x1CCB JUMP JUMPDEST PUSH1 0xFF AND SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x192D DUP4 PUSH2 0x1CE8 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1944 PUSH2 0x193D DUP8 PUSH2 0x1D04 JUMP JUMPDEST DUP4 SWAP1 PUSH2 0x1DA8 JUMP JUMPDEST SWAP1 POP DUP1 DUP6 GT ISZERO PUSH2 0x1959 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1965 DUP6 DUP8 PUSH2 0x1E02 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xF4240 DUP3 PUSH1 0x13 DUP2 GT ISZERO PUSH2 0x1983 JUMPI INVALID JUMPDEST ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xC PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xD PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x19B5 PUSH2 0x1F0D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP8 SWAP1 SWAP8 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP5 KECCAK256 SLOAD PUSH2 0xFFFF DUP2 AND SWAP6 PUSH4 0xFFFFFFFF PUSH3 0x10000 DUP4 DIV DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x30 SHL DUP4 DIV AND SWAP5 POP PUSH1 0xFF PUSH1 0x1 PUSH1 0x50 SHL DUP4 DIV AND SWAP4 POP PUSH1 0x1 PUSH1 0x58 SHL SWAP1 SWAP2 DIV PUSH1 0xD8 SHL SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x15180 DUP3 LT ISZERO PUSH2 0x1A1F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x15180 DUP3 JUMPDEST MOD SWAP1 SWAP2 SUB SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1A37 DUP3 PUSH2 0xAD7 JUMP JUMPDEST PUSH2 0x1A40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x1AEF JUMPI PUSH1 0x0 DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1A63 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x1A80 JUMPI POP PUSH2 0x1AE7 JUMP JUMPDEST DUP1 MLOAD DUP4 EQ PUSH2 0x1A8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP2 ADD MLOAD PUSH1 0x1 EQ PUSH2 0x1A9E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1AC0 DUP8 DUP6 DUP5 PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x0 ADD MLOAD PUSH5 0xFFFFFFFFFF AND DUP7 PUSH1 0x60 ADD MLOAD PUSH2 0x1F1A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x1AE4 JUMPI PUSH1 0x20 DUP7 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x1A4C JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x1AFE PUSH2 0x2E9F JUMP JUMPDEST PUSH2 0x1B06 PUSH2 0x2E9F JUMP JUMPDEST PUSH1 0xFF DUP5 AND PUSH2 0x1B15 JUMPI SWAP1 POP PUSH2 0x653 JUMP JUMPDEST PUSH2 0x1B1F DUP6 DUP6 PUSH2 0xB2F JUMP JUMPDEST DUP2 MSTORE PUSH1 0xFF DUP5 AND PUSH1 0x60 DUP3 ADD MSTORE DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x1B40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1B7A JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x1B67 PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x1B5F JUMPI SWAP1 POP JUMPDEST POP PUSH1 0x20 DUP3 ADD MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x130C JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1BA2 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x1BBF JUMPI POP PUSH2 0x1BDE JUMP JUMPDEST PUSH2 0x1BDC DUP5 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x20 ADD MLOAD DUP5 PUSH1 0x40 ADD MLOAD DUP6 PUSH1 0x60 ADD MLOAD PUSH2 0x2087 JUMP JUMPDEST POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x1B8B JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH2 0x1BF5 DUP7 DUP9 PUSH2 0x218C JUMP JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP13 MSTORE SWAP3 SWAP7 POP SWAP1 SWAP5 POP SWAP3 POP SWAP1 POP PUSH2 0x1C12 DUP9 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0x1C1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP3 AND PUSH1 0x40 DUP10 ADD MSTORE DUP5 PUSH2 0x1C3B JUMPI PUSH1 0x7 PUSH1 0xFF DUP4 AND GT ISZERO PUSH2 0x1C3B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x1C5E JUMPI PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE PUSH2 0x1C6D JUMP JUMPDEST PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x7F PUSH1 0xF9 SHL AND SWAP1 MSTORE JUMPDEST PUSH2 0x1C7A DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x23CB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP10 ADD MSTORE PUSH1 0x0 JUMPDEST DUP4 ISZERO PUSH2 0x123B JUMPI PUSH1 0xF0 DUP5 SWAP1 SHR DUP2 DUP2 EQ PUSH2 0x1CAF JUMPI PUSH2 0x1CAF DUP11 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL PUSH2 0x2446 JUMP JUMPDEST PUSH1 0x10 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 POP PUSH2 0x1C8C JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C PUSH1 0x0 NOT DUP4 PUSH2 0x2645 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1CD6 PUSH2 0x2693 JUMP JUMPDEST PUSH1 0x0 SWAP4 DUP5 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x76A700 DUP3 LT ISZERO PUSH2 0x1CFA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 DUP3 PUSH2 0x1A25 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 EQ ISZERO PUSH2 0x1D19 JUMPI POP PUSH3 0x76A700 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x2 EQ ISZERO PUSH2 0x1D2C JUMPI POP PUSH3 0xED4E00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x3 EQ ISZERO PUSH2 0x1D40 JUMPI POP PUSH4 0x1DA9C00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x4 EQ ISZERO PUSH2 0x1D54 JUMPI POP PUSH4 0x3B53800 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x5 EQ ISZERO PUSH2 0x1D68 JUMPI POP PUSH4 0x9450C00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x6 EQ ISZERO PUSH2 0x1D7C JUMPI POP PUSH4 0x128A1800 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x7 EQ ISZERO PUSH2 0x1D90 JUMPI POP PUSH4 0x25143000 PUSH2 0x327 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36E6 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x653 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1E10 DUP6 PUSH2 0x1A0D JUMP JUMPDEST SWAP1 POP PUSH3 0x15180 DUP5 MOD ISZERO PUSH2 0x1E2A JUMPI PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP PUSH2 0x1F06 JUMP JUMPDEST DUP4 DUP2 LT PUSH2 0x1E3E JUMPI PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP PUSH2 0x1F06 JUMP JUMPDEST PUSH3 0x15180 DUP2 DUP6 SUB DIV PUSH1 0x5A DUP2 GT PUSH2 0x1E5B JUMPI SWAP3 POP PUSH1 0x1 SWAP2 POP PUSH2 0x1F06 SWAP1 POP JUMP JUMPDEST PUSH2 0x168 DUP2 GT PUSH2 0x1E9A JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x7E900 DUP5 MOD DIV DUP3 ADD PUSH1 0x59 NOT ADD SWAP1 POP PUSH1 0x6 DUP2 DIV PUSH1 0x5A ADD PUSH1 0x6 DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST MOD PUSH1 0x0 EQ SWAP5 POP SWAP5 POP POP POP POP PUSH2 0x1F06 JUMP JUMPDEST PUSH2 0x870 DUP2 GT PUSH2 0x1ECA JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x278D00 DUP5 MOD DIV DUP3 ADD PUSH2 0x167 NOT ADD SWAP1 POP PUSH1 0x1E DUP2 DIV PUSH1 0x87 ADD PUSH1 0x1E DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST PUSH2 0x1DE2 DUP2 GT PUSH2 0x1EFA JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x76A700 DUP5 MOD DIV DUP3 ADD PUSH2 0x86F NOT ADD SWAP1 POP PUSH1 0x5A DUP2 DIV PUSH1 0xC3 ADD PUSH1 0x5A DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST PUSH2 0x100 PUSH1 0x0 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x2 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1F27 DUP8 DUP8 PUSH2 0x26A0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F33 PUSH2 0x198A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP12 DUP5 MSTORE DUP3 MSTORE DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE DUP2 KECCAK256 SWAP2 SWAP3 POP DUP1 PUSH2 0x1F6A DUP9 DUP11 PUSH2 0x1E02 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP1 PUSH2 0x1F78 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1F82 DUP6 DUP4 PUSH2 0x26D5 JUMP JUMPDEST ISZERO PUSH2 0x2011 JUMPI DUP3 SLOAD PUSH1 0x0 SWAP1 PUSH2 0x1F9E SWAP1 DUP10 SWAP1 PUSH1 0xF SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH2 0x2705 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x1FBF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB DUP2 SGT ISZERO JUMPDEST PUSH2 0x1FC8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB PUSH1 0xF DUP4 SWAP1 SIGNEXTEND AND OR DUP5 SSTORE DUP1 PUSH2 0x1FF9 JUMPI PUSH2 0x1FF6 DUP7 DUP5 PUSH1 0x0 PUSH2 0x271B JUMP JUMPDEST SWAP6 POP JUMPDEST PUSH2 0x2004 DUP13 DUP13 DUP9 PUSH2 0x2766 JUMP JUMPDEST SWAP6 POP PUSH2 0x207E SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP7 ISZERO PUSH2 0x2075 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB NOT DUP8 SLT DUP1 ISZERO SWAP1 PUSH2 0x2036 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB DUP8 SGT ISZERO JUMPDEST PUSH2 0x203F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB PUSH1 0xF DUP10 SWAP1 SIGNEXTEND AND OR DUP4 SSTORE PUSH2 0x2068 DUP6 DUP4 PUSH1 0x1 PUSH2 0x271B JUMP JUMPDEST SWAP5 POP PUSH2 0x2075 DUP12 DUP12 DUP8 PUSH2 0x2766 JUMP JUMPDEST DUP7 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP5 MLOAD PUSH2 0x2096 SWAP1 DUP6 DUP6 DUP6 DUP6 PUSH2 0x27C0 JUMP JUMPDEST ISZERO PUSH2 0x20A0 JUMPI PUSH2 0x1AEF JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD ISZERO PUSH2 0x20CD JUMPI PUSH1 0x0 PUSH2 0x20BD DUP7 PUSH1 0x20 ADD MLOAD DUP7 DUP7 DUP7 DUP7 PUSH2 0x27C0 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x20CB JUMPI POP PUSH2 0x1AEF JUMP JUMPDEST POP JUMPDEST PUSH2 0x20D6 DUP3 PUSH2 0x28D9 JUMP JUMPDEST ISZERO PUSH2 0x20E9 JUMPI PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x20E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x2110 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP2 SGT ISZERO JUMPDEST PUSH2 0x2119 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 PUSH1 0x20 ADD MLOAD MLOAD DUP6 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x213D JUMPI PUSH2 0x2137 DUP6 PUSH1 0x20 ADD MLOAD PUSH2 0x28EF JUMP JUMPDEST PUSH1 0x20 DUP7 ADD MSTORE JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD DUP2 MLOAD DUP2 LT PUSH2 0x2153 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD SWAP6 DUP7 MSTORE DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x40 DUP1 DUP6 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x60 DUP5 ADD MSTORE PUSH1 0x0 PUSH1 0xA0 SWAP1 SWAP4 ADD SWAP3 SWAP1 SWAP3 MSTORE POP ADD DUP1 MLOAD PUSH1 0x1 ADD SWAP1 MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x221D JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x21B2 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x21C8 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21D8 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x21E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21F5 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2205 JUMPI POP PUSH1 0x60 DUP2 ADD MLOAD ISZERO JUMPDEST ISZERO PUSH2 0x2214 JUMPI PUSH2 0x2214 DUP12 DUP4 PUSH2 0x29A7 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2196 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x22C0 JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x223D JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2254 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2264 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x2278 JUMPI PUSH1 0x80 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 SSTORE PUSH2 0x22B7 JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x228A JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x22A3 JUMPI PUSH1 0x80 DUP2 ADD MLOAD DUP1 PUSH2 0x22A0 DUP4 DUP3 PUSH2 0x2AF6 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x22AF DUP2 DUP7 DUP7 DUP7 PUSH2 0x2C27 JUMP JUMPDEST SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2221 JUMP JUMPDEST POP PUSH1 0x60 DUP10 ADD MLOAD PUSH1 0x0 PUSH2 0x22D0 PUSH2 0x1997 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP12 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP JUMPDEST DUP13 PUSH1 0x20 ADD MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x239A JUMPI PUSH1 0x0 DUP14 PUSH1 0x20 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x230B JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x2328 JUMPI POP PUSH2 0x2392 JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x233A JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2358 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2355 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x2361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x236D DUP2 DUP10 DUP10 DUP10 PUSH2 0x2C27 JUMP JUMPDEST SWAP2 SWAP10 POP SWAP8 POP SWAP6 POP PUSH2 0x238A DUP2 DUP5 DUP8 PUSH1 0x10 DUP2 LT PUSH2 0x2384 JUMPI INVALID JUMPDEST ADD PUSH2 0x2AF6 JUMP JUMPDEST PUSH1 0x1 DUP6 ADD SWAP5 POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x22EC JUMP JUMPDEST POP PUSH1 0x10 DUP4 GT ISZERO DUP1 ISZERO PUSH2 0x23B1 JUMPI POP PUSH5 0xFFFFFFFFFF DUP5 GT ISZERO JUMPDEST PUSH2 0x23BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP4 SWAP11 SWAP3 SWAP10 POP SWAP8 POP SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000 DUP4 AND DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x243D JUMPI PUSH1 0x1 PUSH1 0xFE SHL DUP3 DUP2 AND EQ ISZERO PUSH2 0x2427 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND DUP2 SHR SWAP3 SWAP1 SWAP3 OR SWAP2 PUSH1 0x10 ADD JUMPDEST PUSH1 0x10 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP2 POP PUSH2 0x23F3 JUMP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2458 JUMPI POP PUSH2 0x3FFF DUP4 GT ISZERO JUMPDEST PUSH2 0x2461 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP1 ISZERO PUSH2 0x2475 JUMPI POP DUP3 DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ JUMPDEST ISZERO PUSH2 0x247F JUMPI PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x80 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x25FA JUMPI PUSH1 0xF0 DUP3 SWAP1 SHR PUSH2 0x3FFF AND DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x24AE JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x24E6 JUMPI POP PUSH1 0x80 DUP8 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP7 AND PUSH1 0x10 SWAP1 SWAP4 MUL SWAP3 SWAP1 SWAP3 SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 MSTORE POP PUSH2 0x1632 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x24F3 JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x2548 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP6 AND NOT SWAP3 SWAP1 SWAP3 AND SWAP2 PUSH1 0x3 PUSH1 0xFE SHL DUP4 AND PUSH2 0x2526 JUMPI PUSH1 0x10 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP3 POP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x1632 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x2554 JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x25AE JUMPI PUSH1 0x80 DUP9 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP11 SWAP1 SHL DUP9 OR DUP2 AND PUSH1 0x10 DUP7 MUL SHR SWAP7 SWAP1 SWAP7 OR SWAP6 SWAP2 SHL AND ISZERO PUSH2 0x2588 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x1 SWAP2 SWAP1 SWAP2 ADD PUSH1 0x10 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x1632 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x25BB JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x25C9 JUMPI POP POP POP POP PUSH2 0x1632 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND PUSH1 0x10 DUP3 DUP2 MUL SWAP2 SWAP1 SWAP2 SHR SWAP4 SWAP1 SWAP4 OR SWAP3 SWAP2 SWAP1 SWAP2 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND SWAP1 PUSH1 0x1 ADD PUSH2 0x2489 JUMP JUMPDEST DUP5 PUSH2 0x2607 JUMPI POP POP POP PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x9 DUP2 LT PUSH2 0x2614 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP8 SWAP1 SHL DUP6 OR AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 MUL PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x2675 JUMPI DUP2 ISZERO DUP1 PUSH2 0x2667 JUMPI POP DUP3 DUP3 DUP3 DUP2 PUSH2 0x2664 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x2670 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30C JUMP JUMPDEST DUP3 ISZERO DUP1 PUSH2 0x268A JUMPI POP DUP2 DUP4 DUP3 DUP2 PUSH2 0x2687 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x30C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x9 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x26AB PUSH2 0x2C8A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP2 DUP3 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP7 DUP4 MSTORE SWAP1 SWAP3 MSTORE KECCAK256 SLOAD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 LT ISZERO DUP1 ISZERO PUSH2 0x26EA JUMPI POP PUSH2 0x100 DUP3 GT ISZERO JUMPDEST PUSH2 0x26F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x0 NOT ADD SHL PUSH1 0x1 PUSH1 0xFF SHL SWAP1 DUP2 AND EQ SWAP1 JUMP JUMPDEST DUP2 DUP2 ADD DUP3 DUP2 SLT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0x30C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP4 LT ISZERO DUP1 ISZERO PUSH2 0x2730 JUMPI POP PUSH2 0x100 DUP4 GT ISZERO JUMPDEST PUSH2 0x2739 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 ISZERO PUSH2 0x2752 JUMPI POP PUSH1 0x1 PUSH1 0xFF SHL PUSH1 0x0 NOT DUP4 ADD SHR DUP4 OR PUSH2 0x653 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0xFF SHL PUSH1 0x0 NOT DUP4 ADD SHR NOT DUP4 AND PUSH2 0x653 JUMP JUMPDEST PUSH1 0x14 PUSH2 0x2771 DUP3 PUSH2 0x2C97 JUMP JUMPDEST GT ISZERO PUSH2 0x278F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x373A JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2799 PUSH2 0x2C8A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP5 DUP6 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP5 DUP3 MSTORE SWAP4 SWAP1 SWAP5 MSTORE POP SWAP2 KECCAK256 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST DUP7 MLOAD DUP2 LT ISZERO PUSH2 0x28CC JUMPI PUSH1 0x0 DUP8 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x27DB JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP5 DUP2 PUSH1 0x40 ADD MLOAD EQ ISZERO DUP1 PUSH2 0x27F9 JUMPI POP DUP1 MLOAD DUP8 EQ ISZERO JUMPDEST DUP1 PUSH2 0x2808 JUMPI POP DUP6 DUP2 PUSH1 0x20 ADD MLOAD EQ ISZERO JUMPDEST ISZERO PUSH2 0x2813 JUMPI POP PUSH2 0x28C4 JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2825 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2843 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2840 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x284C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 PUSH2 0x285E SWAP1 DUP7 PUSH2 0x2705 JUMP JUMPDEST SWAP1 POP PUSH2 0x2869 DUP7 PUSH2 0x28D9 JUMP JUMPDEST ISZERO PUSH2 0x287C JUMPI PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x287C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x28A3 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP2 SGT ISZERO JUMPDEST PUSH2 0x28AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP1 SWAP2 ADD DUP2 SWAP1 MSTORE SWAP2 POP PUSH2 0x207E SWAP1 POP JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x27C4 JUMP JUMPDEST POP PUSH1 0x0 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 LT DUP1 ISZERO SWAP1 PUSH2 0x30C JUMPI POP POP PUSH1 0x8 LT ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 MLOAD PUSH1 0x0 EQ PUSH2 0x2906 JUMPI DUP3 MLOAD PUSH1 0x2 MUL PUSH2 0x2909 JUMP JUMPDEST PUSH1 0x1 JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x2923 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x295D JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x294A PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x2942 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x299F JUMPI DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2978 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x298C JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x2963 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 MLOAD MLOAD DUP2 LT PUSH2 0x29B5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x60 ADD MLOAD GT PUSH2 0x29C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x29D8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x29EF JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x29FF JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2A1D JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A1A JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x2A26 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ADD DUP1 MLOAD PUSH1 0x0 NOT ADD SWAP1 MSTORE PUSH1 0x0 DUP1 DUP1 JUMPDEST DUP6 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2A99 JUMPI PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2A53 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP3 DUP2 PUSH1 0x80 ADD MLOAD GT DUP1 ISZERO PUSH2 0x2A80 JUMPI POP PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A7D JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST ISZERO PUSH2 0x2A90 JUMPI DUP1 PUSH1 0x80 ADD MLOAD SWAP3 POP DUP2 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2A37 JUMP JUMPDEST POP DUP2 DUP5 EQ ISZERO PUSH2 0x2AB2 JUMPI POP POP PUSH1 0x2 PUSH1 0xA0 SWAP2 SWAP1 SWAP2 ADD MSTORE PUSH2 0xC7A JUMP JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x0 ADD MLOAD DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2AC4 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x80 DUP6 DUP2 ADD DUP1 MLOAD SWAP2 DUP4 ADD DUP1 MLOAD SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP2 DUP3 ADD MSTORE PUSH1 0x2 SWAP5 ADD SWAP4 SWAP1 SWAP4 MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x2B09 JUMPI POP DUP2 MLOAD PUSH2 0x3FFF LT ISZERO JUMPDEST PUSH2 0x2B12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2B2F JUMPI POP PUSH1 0x20 DUP3 ADD MLOAD PUSH5 0xFFFFFFFFFF LT ISZERO JUMPDEST PUSH2 0x2B38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2B51 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x2B5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT SGT DUP1 ISZERO SWAP1 PUSH2 0x2B89 JUMPI POP PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF SLT ISZERO JUMPDEST PUSH2 0x2B92 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 DUP5 ADD MLOAD PUSH1 0x40 DUP6 ADD MLOAD PUSH1 0x60 SWAP1 SWAP6 ADD MLOAD PUSH1 0xA SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 SHL MUL PUSH19 0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000 NOT PUSH1 0xFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH8 0xFF00000000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP4 AND PUSH3 0x10000 MUL PUSH7 0xFFFFFFFFFF0000 NOT PUSH2 0xFFFF SWAP1 SWAP7 AND PUSH2 0xFFFF NOT SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 OR SWAP5 SWAP1 SWAP5 AND SWAP3 SWAP1 SWAP3 OR AND SWAP2 SWAP1 SWAP2 OR SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x2C36 DUP9 PUSH2 0x2D67 JUMP JUMPDEST SWAP1 POP DUP5 ISZERO DUP1 PUSH2 0x2C44 JUMPI POP DUP1 DUP6 GT JUMPDEST ISZERO PUSH2 0x2C4D JUMPI DUP1 SWAP5 POP JUMPDEST DUP7 DUP1 PUSH2 0x2C5D JUMPI POP PUSH1 0x0 DUP9 PUSH1 0x60 ADD MLOAD SLT JUMPDEST SWAP7 POP PUSH2 0xFFFF DUP7 AND ISZERO PUSH2 0x2C6E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP SWAP5 MLOAD SWAP4 SWAP6 PUSH1 0x10 SWAP4 SWAP1 SWAP4 SHR PUSH1 0xF0 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 SWAP4 OR SWAP4 POP SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xB PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SHR PUSH32 0x5555555555555555555555555555555555555555555555555555555555555555 SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x2 DUP2 SWAP1 SHR PUSH32 0x3333333333333333333333333333333333333333333333333333333333333333 SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x4 DUP2 SWAP1 SHR PUSH32 0x707070707070707070707070707070707070707070707070707070707070707 SWAP2 SWAP1 SWAP2 AND ADD PUSH1 0x8 DUP2 SWAP1 SHR PUSH31 0xF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x10 DUP2 SWAP1 SHR ADD PUSH1 0x20 DUP2 SWAP1 SHR ADD PUSH1 0x40 DUP2 SWAP1 SHR ADD PUSH1 0x80 DUP2 SWAP1 SHR PUSH1 0xFF SWAP1 DUP2 AND SWAP2 AND ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD GT DUP1 ISZERO PUSH2 0x2D81 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x2D8A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x2 LT PUSH2 0x2DA1 JUMPI POP PUSH1 0x20 DUP2 ADD MLOAD PUSH2 0x327 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DB3 PUSH1 0x1 DUP5 PUSH1 0x40 ADD MLOAD SUB PUSH2 0x1D04 JUMP JUMPDEST PUSH1 0x20 DUP5 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x653 SWAP1 PUSH3 0x76A700 SWAP1 PUSH2 0x2DCE SWAP1 DUP5 PUSH2 0x2DD4 JUMP JUMPDEST SWAP1 PUSH2 0x1DA8 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x2E2B JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2E9A JUMPI INVALID JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2ED8 JUMPI DUP1 DUP2 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x2EEE JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x1F06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x327 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2F31 JUMPI DUP2 DUP3 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x2F47 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x1F06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH2 0x327 DUP2 PUSH2 0x386F JUMP JUMPDEST DUP1 MLOAD PUSH2 0x327 DUP2 PUSH2 0x3892 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2F86 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x653 DUP2 PUSH2 0x3841 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2FA3 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x2FAE DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH2 0x2FBE DUP2 PUSH2 0x3841 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP10 DUP12 SUB SLT ISZERO PUSH2 0x2FE4 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP9 CALLDATALOAD PUSH2 0x2FEF DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP8 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD PUSH2 0x2FFF DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP7 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x301A JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x3026 DUP13 DUP4 DUP14 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x60 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x303E JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x304A DUP13 DUP4 DUP14 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x80 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3062 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x306F DUP12 DUP3 DUP13 ADD PUSH2 0x2F20 JUMP JUMPDEST SWAP10 SWAP13 SWAP9 SWAP12 POP SWAP7 SWAP10 POP SWAP5 SWAP8 SWAP4 SWAP7 SWAP3 SWAP6 SWAP5 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x309B JUMPI DUP2 DUP3 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH2 0x30A6 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP6 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD PUSH2 0x30B6 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 DUP8 ADD CALLDATALOAD SWAP4 POP PUSH1 0x60 DUP8 ADD CALLDATALOAD SWAP3 POP PUSH1 0x80 DUP8 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x30DE JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x30EA DUP10 DUP3 DUP11 ADD PUSH2 0x2F20 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x310E JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x3119 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x2FBE JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x313F JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x314A DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x316D JUMPI DUP2 DUP3 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x3183 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH2 0x318F DUP9 DUP4 DUP10 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x31A7 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x31B4 DUP8 DUP3 DUP9 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31D1 JUMPI DUP1 DUP2 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31E9 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x653 DUP2 PUSH2 0x3859 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3205 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH2 0x653 DUP2 PUSH2 0x3859 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3221 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x3237 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x324A JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0x3256 JUMPI INVALID JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT AND DUP2 ADD PUSH1 0x20 ADD DUP4 DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x3274 JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP2 DUP2 MSTORE DUP4 DUP3 ADD PUSH1 0x20 ADD DUP8 LT ISZERO PUSH2 0x328B JUMPI DUP5 DUP6 REVERT JUMPDEST PUSH2 0x329C DUP3 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x3815 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x32B7 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xA0 DUP2 ADD DUP2 DUP2 LT PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT OR ISZERO PUSH2 0x32D3 JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD PUSH2 0x32E1 DUP2 PUSH2 0x387F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x32FD JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x330E PUSH1 0x40 DUP5 ADD PUSH2 0x2F6A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x331F PUSH1 0x60 DUP5 ADD PUSH2 0x2F5F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x3330 PUSH1 0x80 DUP5 ADD PUSH2 0x2F08 JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3350 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 CALLDATALOAD PUSH2 0x335B DUP2 PUSH2 0x386F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH2 0x336B DUP2 PUSH2 0x387F JUMP JUMPDEST SWAP2 POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH2 0x337B DUP2 PUSH2 0x3892 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST DUP2 DUP4 MSTORE PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFB SHL SUB DUP4 GT ISZERO PUSH2 0x339E JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x20 DUP4 MUL DUP1 DUP4 PUSH1 0x20 DUP8 ADD CALLDATACOPY SWAP4 SWAP1 SWAP4 ADD PUSH1 0x20 ADD SWAP3 DUP4 MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP5 MSTORE DUP3 DUP3 PUSH1 0x20 DUP7 ADD CALLDATACOPY DUP1 PUSH1 0x20 DUP5 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP6 ADD AND DUP6 ADD ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP5 DUP4 CALLDATACOPY SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 DUP2 AND DUP3 MSTORE DUP9 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0xA0 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x3435 SWAP1 DUP4 ADD DUP9 DUP11 PUSH2 0x3386 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x3448 DUP2 DUP8 DUP10 PUSH2 0x3386 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x345D DUP2 DUP6 DUP8 PUSH2 0x33BA JUMP JUMPDEST SWAP12 SWAP11 POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 DUP2 AND DUP3 MSTORE DUP7 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 DUP2 ADD DUP6 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP5 SWAP1 MSTORE PUSH1 0xA0 PUSH1 0x80 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x1965 SWAP1 DUP4 ADD DUP5 DUP7 PUSH2 0x33BA JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 DUP4 AND DUP2 MSTORE SWAP2 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND PUSH1 0x20 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND PUSH1 0x40 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0xFF AND PUSH1 0x60 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 DUP5 DUP3 ADD SWAP1 PUSH1 0x40 DUP6 ADD SWAP1 DUP5 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3565 JUMPI DUP4 MLOAD DUP4 MSTORE SWAP3 DUP5 ADD SWAP3 SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x3549 JUMP JUMPDEST POP SWAP1 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 PUSH1 0x40 SWAP1 DUP2 DUP6 ADD SWAP1 DUP7 DUP5 ADD DUP6 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x35E6 JUMPI DUP2 MLOAD DUP1 MLOAD DUP6 MSTORE DUP7 DUP2 ADD MLOAD DUP8 DUP7 ADD MSTORE DUP6 DUP2 ADD MLOAD DUP7 DUP7 ADD MSTORE PUSH1 0x60 DUP1 DUP3 ADD MLOAD SWAP1 DUP7 ADD MSTORE PUSH1 0x80 DUP1 DUP3 ADD MLOAD SWAP1 DUP7 ADD MSTORE PUSH1 0xA0 SWAP1 DUP2 ADD MLOAD SWAP1 PUSH1 0x4 DUP3 LT PUSH2 0x35D1 JUMPI INVALID JUMPDEST DUP6 ADD MSTORE PUSH1 0xC0 SWAP1 SWAP4 ADD SWAP3 SWAP1 DUP6 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x358E JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 MSTORE PUSH2 0x3607 PUSH1 0x40 DUP4 ADD DUP7 DUP9 PUSH2 0x3386 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x361A DUP2 DUP6 DUP8 PUSH2 0x3386 JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 MSTORE DUP3 MLOAD DUP1 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x3658 DUP2 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x3815 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x40 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xF SWAP1 DUP3 ADD MSTORE PUSH15 0x496E76616C69642061646472657373 PUSH1 0x88 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x155B985D5D1A1BDC9A5E99590818D85B1B PUSH1 0x7A SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x155B985D5D1A1BDC9A5E9959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xD SWAP1 DUP3 ADD MSTORE PUSH13 0x92DCECC2D8D2C840D2DCC8CAF PUSH1 0x9B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x13 SWAP1 DUP3 ADD MSTORE PUSH19 0x4163636F756E74206D75737420736574746C65 PUSH1 0x68 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xF SWAP1 DUP3 ADD MSTORE PUSH15 0x4F766572206D617820617373657473 PUSH1 0x88 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x496E76616C6964206D61747572697479 PUSH1 0x80 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x12 SWAP1 DUP3 ADD MSTORE PUSH18 0x12511CC81B5D5CDD081899481CDBDC9D1959 PUSH1 0x72 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x139BDD081858D8D95C1D1959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST SWAP2 DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x37FC JUMPI DUP2 DUP3 REVERT JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x3808 JUMPI DUP2 DUP3 REVERT JUMPDEST POP POP DUP3 ADD SWAP4 SWAP2 SWAP1 SWAP3 SUB SWAP2 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3830 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x3818 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1632 JUMPI POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SGT GT AND ADD MUL LOG4 AND 0xB5 OR PUSH5 0xAB1C80F32C 0xD6 CODESIZE DELEGATECALL 0xDD 0xE8 0xC3 SAR 0x4E 0xD5 0xC5 SWAP3 PUSH3 0x9D5FB6 0x48 0xEB PUSH5 0x736F6C6343 STOP SMOD MOD STOP CALLER ", - "pcMap": { - "0": { - "offset": [ - 683, - 20316 - ], - "op": "PUSH1", - "path": "30", - "value": "0x80" - }, - "2": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "MSTORE", - "path": "30" - }, - "5": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "7": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "8": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "LT", - "path": "30" - }, - "9": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE7" - }, - "12": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "13": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "15": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "16": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH1", - "path": "30", - "value": "0xE0" - }, - "18": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "SHR", - "path": "30" - }, - "19": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "20": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x735A1DC8" - }, - "25": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "GT", - "path": "30" - }, - "26": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x8A" - }, - "29": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "30": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "31": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0xA22CB465" - }, - "36": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "GT", - "path": "30" - }, - "37": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x59" - }, - "40": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "41": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "42": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0xA22CB465" - }, - "47": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "48": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x26A" - }, - "51": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "52": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "53": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0xC4C96DAE" - }, - "58": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "59": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x28A" - }, - "62": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "63": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "64": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0xE985E9C5" - }, - "69": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "70": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2AD" - }, - "73": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "74": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "75": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0xF242432A" - }, - "80": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "81": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2CD" - }, - "84": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "85": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE7" - }, - "88": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMP", - "path": "30" - }, - "89": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPDEST", - "path": "30" - }, - "90": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "91": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x735A1DC8" - }, - "96": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "97": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x200" - }, - "100": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "101": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "102": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x81A86855" - }, - "107": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "108": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x220" - }, - "111": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "112": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "113": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x82463367" - }, - "118": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "119": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x240" - }, - "122": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "123": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "124": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x8DA5CB5B" - }, - "129": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "130": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x255" - }, - "133": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "134": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE7" - }, - "137": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMP", - "path": "30" - }, - "138": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPDEST", - "path": "30" - }, - "139": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "140": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x24A3D622" - }, - "145": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "GT", - "path": "30" - }, - "146": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC6" - }, - "149": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "150": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "151": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x24A3D622" - }, - "156": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "157": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x16F" - }, - "160": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "161": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "162": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x2EB2C2D6" - }, - "167": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "168": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x191" - }, - "171": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "172": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "173": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x3FA6B808" - }, - "178": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "179": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1A6" - }, - "182": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "183": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "184": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x4E1273F4" - }, - "189": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "190": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1D3" - }, - "193": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "194": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE7" - }, - "197": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMP", - "path": "30" - }, - "198": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPDEST", - "path": "30" - }, - "199": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "200": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH3", - "path": "30", - "value": "0xFDD58E" - }, - "204": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "205": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0xEC" - }, - "208": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "209": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "210": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0x1FFC9A7" - }, - "215": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "216": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x122" - }, - "219": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "220": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "221": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH4", - "path": "30", - "value": "0xFAC8F09" - }, - "226": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "EQ", - "path": "30" - }, - "227": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH2", - "path": "30", - "value": "0x14F" - }, - "230": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPI", - "path": "30" - }, - "231": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "JUMPDEST", - "path": "30" - }, - "232": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "234": { - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "DUP1", - "path": "30" - }, - "235": { - "first_revert": true, - "fn": null, - "offset": [ - 683, - 20316 - ], - "op": "REVERT", - "path": "30" - }, - "236": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "237": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "CALLVALUE", - "path": "30" - }, - "238": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "DUP1", - "path": "30" - }, - "239": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "ISZERO", - "path": "30" - }, - "240": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF8" - }, - "243": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPI", - "path": "30" - }, - "244": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "246": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "DUP1", - "path": "30" - }, - "247": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "REVERT", - "path": "30" - }, - "248": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "249": { - "op": "POP" - }, - "250": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10C" - }, - "253": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0x107" - }, - "256": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "257": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "259": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0x312D" - }, - "262": { - "fn": "ERC1155Action.balanceOf", - "jump": "i", - "offset": [ - 1742, - 1945 - ], - "op": "JUMP", - "path": "30" - }, - "263": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "264": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E0" - }, - "267": { - "fn": "ERC1155Action.balanceOf", - "jump": "i", - "offset": [ - 1742, - 1945 - ], - "op": "JUMP", - "path": "30" - }, - "268": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "269": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "271": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "MLOAD", - "path": "30" - }, - "272": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0x119" - }, - "275": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SWAP2", - "path": "30" - }, - "276": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SWAP1", - "path": "30" - }, - "277": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3630" - }, - "280": { - "fn": "ERC1155Action.balanceOf", - "jump": "i", - "offset": [ - 1742, - 1945 - ], - "op": "JUMP", - "path": "30" - }, - "281": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "282": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "284": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "MLOAD", - "path": "30" - }, - "285": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "DUP1", - "path": "30" - }, - "286": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SWAP2", - "path": "30" - }, - "287": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SUB", - "path": "30" - }, - "288": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SWAP1", - "path": "30" - }, - "289": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "RETURN", - "path": "30" - }, - "290": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPDEST", - "path": "30" - }, - "291": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "CALLVALUE", - "path": "30" - }, - "292": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "DUP1", - "path": "30" - }, - "293": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "ISZERO", - "path": "30" - }, - "294": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12E" - }, - "297": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPI", - "path": "30" - }, - "298": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "300": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "DUP1", - "path": "30" - }, - "301": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "REVERT", - "path": "30" - }, - "302": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPDEST", - "path": "30" - }, - "303": { - "op": "POP" - }, - "304": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x142" - }, - "307": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x13D" - }, - "310": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "311": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "313": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x31D8" - }, - "316": { - "fn": "ERC1155Action.supportsInterface", - "jump": "i", - "offset": [ - 1103, - 1253 - ], - "op": "JUMP", - "path": "30" - }, - "317": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPDEST", - "path": "30" - }, - "318": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x312" - }, - "321": { - "fn": "ERC1155Action.supportsInterface", - "jump": "i", - "offset": [ - 1103, - 1253 - ], - "op": "JUMP", - "path": "30" - }, - "322": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPDEST", - "path": "30" - }, - "323": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "325": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "MLOAD", - "path": "30" - }, - "326": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x119" - }, - "329": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "SWAP2", - "path": "30" - }, - "330": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "SWAP1", - "path": "30" - }, - "331": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3625" - }, - "334": { - "fn": "ERC1155Action.supportsInterface", - "jump": "i", - "offset": [ - 1103, - 1253 - ], - "op": "JUMP", - "path": "30" - }, - "335": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "JUMPDEST", - "path": "30" - }, - "336": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "CALLVALUE", - "path": "30" - }, - "337": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "DUP1", - "path": "30" - }, - "338": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "ISZERO", - "path": "30" - }, - "339": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH2", - "path": "30", - "value": "0x15B" - }, - "342": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "JUMPI", - "path": "30" - }, - "343": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "345": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "DUP1", - "path": "30" - }, - "346": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "REVERT", - "path": "30" - }, - "347": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "JUMPDEST", - "path": "30" - }, - "348": { - "op": "POP" - }, - "349": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10C" - }, - "352": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH2", - "path": "30", - "value": "0x16A" - }, - "355": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "356": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "358": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH2", - "path": "30", - "value": "0x312D" - }, - "361": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2172, - 2709 - ], - "op": "JUMP", - "path": "30" - }, - "362": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "JUMPDEST", - "path": "30" - }, - "363": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "PUSH2", - "path": "30", - "value": "0x32C" - }, - "366": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2172, - 2709 - ], - "op": "JUMP", - "path": "30" - }, - "367": { - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "368": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "CALLVALUE", - "path": "63" - }, - "369": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "370": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "ISZERO", - "path": "63" - }, - "371": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x17B" - }, - "374": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPI", - "path": "63" - }, - "375": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "377": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "378": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "REVERT", - "path": "63" - }, - "379": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "380": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "POP", - "path": "63" - }, - "381": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x184" - }, - "384": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x380" - }, - "387": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "388": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "389": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x40" - }, - "391": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "MLOAD", - "path": "63" - }, - "392": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x119" - }, - "395": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "SWAP2", - "path": "63" - }, - "396": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "SWAP1", - "path": "63" - }, - "397": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x33F4" - }, - "400": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "401": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "JUMPDEST", - "path": "30" - }, - "402": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1A4" - }, - "405": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "PUSH2", - "path": "30", - "value": "0x19F" - }, - "408": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "409": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "411": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2FC9" - }, - "414": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 8849, - 10349 - ], - "op": "JUMP", - "path": "30" - }, - "415": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "JUMPDEST", - "path": "30" - }, - "416": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "PUSH2", - "path": "30", - "value": "0x38F" - }, - "419": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 8849, - 10349 - ], - "op": "JUMP", - "path": "30" - }, - "420": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "JUMPDEST", - "path": "30" - }, - "421": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "STOP", - "path": "30" - }, - "422": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "JUMPDEST", - "path": "30" - }, - "423": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "CALLVALUE", - "path": "30" - }, - "424": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "DUP1", - "path": "30" - }, - "425": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "ISZERO", - "path": "30" - }, - "426": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1B2" - }, - "429": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "JUMPI", - "path": "30" - }, - "430": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "432": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "DUP1", - "path": "30" - }, - "433": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "REVERT", - "path": "30" - }, - "434": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "JUMPDEST", - "path": "30" - }, - "435": { - "op": "POP" - }, - "436": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1C6" - }, - "439": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1C1" - }, - "442": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "443": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "445": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3158" - }, - "448": { - "fn": "ERC1155Action.decodeToAssets", - "jump": "i", - "offset": [ - 11245, - 11552 - ], - "op": "JUMP", - "path": "30" - }, - "449": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "JUMPDEST", - "path": "30" - }, - "450": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x557" - }, - "453": { - "fn": "ERC1155Action.decodeToAssets", - "jump": "i", - "offset": [ - 11245, - 11552 - ], - "op": "JUMP", - "path": "30" - }, - "454": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "JUMPDEST", - "path": "30" - }, - "455": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "457": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "MLOAD", - "path": "30" - }, - "458": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x119" - }, - "461": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "SWAP2", - "path": "30" - }, - "462": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "SWAP1", - "path": "30" - }, - "463": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3571" - }, - "466": { - "fn": "ERC1155Action.decodeToAssets", - "jump": "i", - "offset": [ - 11245, - 11552 - ], - "op": "JUMP", - "path": "30" - }, - "467": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "JUMPDEST", - "path": "30" - }, - "468": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "CALLVALUE", - "path": "30" - }, - "469": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "DUP1", - "path": "30" - }, - "470": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "ISZERO", - "path": "30" - }, - "471": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1DF" - }, - "474": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "JUMPI", - "path": "30" - }, - "475": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "477": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "DUP1", - "path": "30" - }, - "478": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "REVERT", - "path": "30" - }, - "479": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "JUMPDEST", - "path": "30" - }, - "480": { - "op": "POP" - }, - "481": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1F3" - }, - "484": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1EE" - }, - "487": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "488": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "490": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3158" - }, - "493": { - "fn": "ERC1155Action.balanceOfBatch", - "jump": "i", - "offset": [ - 3783, - 4277 - ], - "op": "JUMP", - "path": "30" - }, - "494": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "JUMPDEST", - "path": "30" - }, - "495": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x572" - }, - "498": { - "fn": "ERC1155Action.balanceOfBatch", - "jump": "i", - "offset": [ - 3783, - 4277 - ], - "op": "JUMP", - "path": "30" - }, - "499": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "JUMPDEST", - "path": "30" - }, - "500": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "502": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "MLOAD", - "path": "30" - }, - "503": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x119" - }, - "506": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "SWAP2", - "path": "30" - }, - "507": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "SWAP1", - "path": "30" - }, - "508": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "PUSH2", - "path": "30", - "value": "0x352D" - }, - "511": { - "fn": "ERC1155Action.balanceOfBatch", - "jump": "i", - "offset": [ - 3783, - 4277 - ], - "op": "JUMP", - "path": "30" - }, - "512": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "JUMPDEST", - "path": "30" - }, - "513": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "CALLVALUE", - "path": "30" - }, - "514": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "DUP1", - "path": "30" - }, - "515": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "ISZERO", - "path": "30" - }, - "516": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH2", - "path": "30", - "value": "0x20C" - }, - "519": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "JUMPI", - "path": "30" - }, - "520": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "522": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "DUP1", - "path": "30" - }, - "523": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "REVERT", - "path": "30" - }, - "524": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "JUMPDEST", - "path": "30" - }, - "525": { - "op": "POP" - }, - "526": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10C" - }, - "529": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH2", - "path": "30", - "value": "0x21B" - }, - "532": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "533": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "535": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH2", - "path": "30", - "value": "0x333C" - }, - "538": { - "fn": "ERC1155Action.encodeToId", - "jump": "i", - "offset": [ - 13314, - 13543 - ], - "op": "JUMP", - "path": "30" - }, - "539": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "JUMPDEST", - "path": "30" - }, - "540": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "PUSH2", - "path": "30", - "value": "0x635" - }, - "543": { - "fn": "ERC1155Action.encodeToId", - "jump": "i", - "offset": [ - 13314, - 13543 - ], - "op": "JUMP", - "path": "30" - }, - "544": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "JUMPDEST", - "path": "30" - }, - "545": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "CALLVALUE", - "path": "30" - }, - "546": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "DUP1", - "path": "30" - }, - "547": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "ISZERO", - "path": "30" - }, - "548": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH2", - "path": "30", - "value": "0x22C" - }, - "551": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "JUMPI", - "path": "30" - }, - "552": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "554": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "DUP1", - "path": "30" - }, - "555": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "REVERT", - "path": "30" - }, - "556": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "JUMPDEST", - "path": "30" - }, - "557": { - "op": "POP" - }, - "558": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1F3" - }, - "561": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH2", - "path": "30", - "value": "0x23B" - }, - "564": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "565": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "567": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3158" - }, - "570": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "i", - "offset": [ - 2949, - 3452 - ], - "op": "JUMP", - "path": "30" - }, - "571": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "JUMPDEST", - "path": "30" - }, - "572": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "PUSH2", - "path": "30", - "value": "0x65A" - }, - "575": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "i", - "offset": [ - 2949, - 3452 - ], - "op": "JUMP", - "path": "30" - }, - "576": { - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "577": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "CALLVALUE", - "path": "63" - }, - "578": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "DUP1", - "path": "63" - }, - "579": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "ISZERO", - "path": "63" - }, - "580": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x24C" - }, - "583": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "JUMPI", - "path": "63" - }, - "584": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "586": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "DUP1", - "path": "63" - }, - "587": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "REVERT", - "path": "63" - }, - "588": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "589": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "POP", - "path": "63" - }, - "590": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x184" - }, - "593": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x713" - }, - "596": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "i", - "offset": [ - 920, - 946 - ], - "op": "JUMP", - "path": "63" - }, - "597": { - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "598": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "CALLVALUE", - "path": "63" - }, - "599": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "DUP1", - "path": "63" - }, - "600": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "ISZERO", - "path": "63" - }, - "601": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x261" - }, - "604": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "JUMPI", - "path": "63" - }, - "605": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "607": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "DUP1", - "path": "63" - }, - "608": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "REVERT", - "path": "63" - }, - "609": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "610": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "POP", - "path": "63" - }, - "611": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x184" - }, - "614": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x722" - }, - "617": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "i", - "offset": [ - 811, - 831 - ], - "op": "JUMP", - "path": "63" - }, - "618": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "JUMPDEST", - "path": "30" - }, - "619": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "CALLVALUE", - "path": "30" - }, - "620": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "DUP1", - "path": "30" - }, - "621": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "ISZERO", - "path": "30" - }, - "622": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH2", - "path": "30", - "value": "0x276" - }, - "625": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "JUMPI", - "path": "30" - }, - "626": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "628": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "DUP1", - "path": "30" - }, - "629": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "REVERT", - "path": "30" - }, - "630": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "JUMPDEST", - "path": "30" - }, - "631": { - "op": "POP" - }, - "632": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1A4" - }, - "635": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH2", - "path": "30", - "value": "0x285" - }, - "638": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "639": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "641": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH2", - "path": "30", - "value": "0x30FC" - }, - "644": { - "fn": "ERC1155Action.setApprovalForAll", - "jump": "i", - "offset": [ - 19267, - 19489 - ], - "op": "JUMP", - "path": "30" - }, - "645": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "JUMPDEST", - "path": "30" - }, - "646": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "PUSH2", - "path": "30", - "value": "0x739" - }, - "649": { - "fn": "ERC1155Action.setApprovalForAll", - "jump": "i", - "offset": [ - 19267, - 19489 - ], - "op": "JUMP", - "path": "30" - }, - "650": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "JUMPDEST", - "path": "30" - }, - "651": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "CALLVALUE", - "path": "30" - }, - "652": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "DUP1", - "path": "30" - }, - "653": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "ISZERO", - "path": "30" - }, - "654": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH2", - "path": "30", - "value": "0x296" - }, - "657": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "JUMPI", - "path": "30" - }, - "658": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "660": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "DUP1", - "path": "30" - }, - "661": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "REVERT", - "path": "30" - }, - "662": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "JUMPDEST", - "path": "30" - }, - "663": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "POP", - "path": "30" - }, - "664": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH2", - "path": "30", - "value": "0x29F" - }, - "667": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH2", - "path": "30", - "value": "0x7A8" - }, - "670": { - "fn": "ERC1155Action.getLibInfo", - "jump": "i", - "offset": [ - 20163, - 20314 - ], - "op": "JUMP", - "path": "30" - }, - "671": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "JUMPDEST", - "path": "30" - }, - "672": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "674": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "MLOAD", - "path": "30" - }, - "675": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH2", - "path": "30", - "value": "0x119" - }, - "678": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "SWAP3", - "path": "30" - }, - "679": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "SWAP2", - "path": "30" - }, - "680": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "SWAP1", - "path": "30" - }, - "681": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "PUSH2", - "path": "30", - "value": "0x34A7" - }, - "684": { - "fn": "ERC1155Action.getLibInfo", - "jump": "i", - "offset": [ - 20163, - 20314 - ], - "op": "JUMP", - "path": "30" - }, - "685": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "JUMPDEST", - "path": "30" - }, - "686": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "CALLVALUE", - "path": "30" - }, - "687": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "DUP1", - "path": "30" - }, - "688": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "ISZERO", - "path": "30" - }, - "689": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2B9" - }, - "692": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "JUMPI", - "path": "30" - }, - "693": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "695": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "DUP1", - "path": "30" - }, - "696": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "REVERT", - "path": "30" - }, - "697": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "JUMPDEST", - "path": "30" - }, - "698": { - "op": "POP" - }, - "699": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH2", - "path": "30", - "value": "0x142" - }, - "702": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2C8" - }, - "705": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "706": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "708": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2F91" - }, - "711": { - "fn": "ERC1155Action.isApprovedForAll", - "jump": "i", - "offset": [ - 19806, - 20075 - ], - "op": "JUMP", - "path": "30" - }, - "712": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "JUMPDEST", - "path": "30" - }, - "713": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "PUSH2", - "path": "30", - "value": "0x7D6" - }, - "716": { - "fn": "ERC1155Action.isApprovedForAll", - "jump": "i", - "offset": [ - 19806, - 20075 - ], - "op": "JUMP", - "path": "30" - }, - "717": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "JUMPDEST", - "path": "30" - }, - "718": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1A4" - }, - "721": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2DB" - }, - "724": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "725": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "727": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3083" - }, - "730": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 6229, - 8148 - ], - "op": "JUMP", - "path": "30" - }, - "731": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "JUMPDEST", - "path": "30" - }, - "732": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "PUSH2", - "path": "30", - "value": "0x82E" - }, - "735": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 6229, - 8148 - ], - "op": "JUMP", - "path": "30" - }, - "736": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "737": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1820, - 1827 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "739": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1839, - 1854 - ], - "op": "DUP1", - "path": "30" - }, - "740": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1857, - 1885 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2ED" - }, - "743": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1873, - 1880 - ], - "op": "DUP5", - "path": "30" - }, - "744": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1882, - 1884 - ], - "op": "DUP5", - "path": "30" - }, - "745": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1857, - 1872 - ], - "op": "PUSH2", - "path": "30", - "value": "0x32C" - }, - "748": { - "fn": "ERC1155Action.balanceOf", - "jump": "i", - "offset": [ - 1857, - 1885 - ], - "op": "JUMP", - "path": "30" - }, - "749": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1857, - 1885 - ], - "op": "JUMPDEST", - "path": "30" - }, - "750": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1839, - 1885 - ], - "op": "SWAP1", - "path": "30" - }, - "751": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1839, - 1885 - ], - "op": "POP", - "path": "30" - }, - "752": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1913, - 1914 - ], - "op": "PUSH1", - "path": "30", - "statement": 0, - "value": "0x0" - }, - "754": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1910 - ], - "op": "DUP2", - "path": "30" - }, - "755": { - "branch": 281, - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1914 - ], - "op": "SLT", - "path": "30" - }, - "756": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1938 - ], - "op": "PUSH2", - "path": "30", - "value": "0x305" - }, - "759": { - "branch": 281, - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1938 - ], - "op": "JUMPI", - "path": "30" - }, - "760": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1921, - 1938 - ], - "op": "PUSH2", - "path": "30", - "value": "0x300" - }, - "763": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1921, - 1929 - ], - "op": "DUP2", - "path": "30" - }, - "764": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1921, - 1936 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA23" - }, - "767": { - "fn": "ERC1155Action.balanceOf", - "jump": "i", - "offset": [ - 1921, - 1938 - ], - "op": "JUMP", - "path": "30" - }, - "768": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1921, - 1938 - ], - "op": "JUMPDEST", - "path": "30" - }, - "769": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1938 - ], - "op": "PUSH2", - "path": "30", - "value": "0x308" - }, - "772": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1938 - ], - "op": "JUMP", - "path": "30" - }, - "773": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1938 - ], - "op": "JUMPDEST", - "path": "30" - }, - "774": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1917, - 1918 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "776": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1902, - 1938 - ], - "op": "JUMPDEST", - "path": "30" - }, - "777": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1895, - 1938 - ], - "op": "SWAP2", - "path": "30" - }, - "778": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1895, - 1938 - ], - "op": "POP", - "path": "30" - }, - "779": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1895, - 1938 - ], - "op": "POP", - "path": "30" - }, - "780": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "JUMPDEST", - "path": "30" - }, - "781": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SWAP3", - "path": "30" - }, - "782": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "SWAP2", - "path": "30" - }, - "783": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "POP", - "path": "30" - }, - "784": { - "fn": "ERC1155Action.balanceOf", - "offset": [ - 1742, - 1945 - ], - "op": "POP", - "path": "30" - }, - "785": { - "fn": "ERC1155Action.balanceOf", - "jump": "o", - "offset": [ - 1742, - 1945 - ], - "op": "JUMP", - "path": "30" - }, - "786": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPDEST", - "path": "30" - }, - "787": { - "op": "PUSH1", - "value": "0x1" - }, - "789": { - "op": "PUSH1", - "value": "0x1" - }, - "791": { - "op": "PUSH1", - "value": "0xE0" - }, - "793": { - "op": "SHL" - }, - "794": { - "op": "SUB" - }, - "795": { - "op": "NOT" - }, - "796": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1205, - 1246 - ], - "op": "DUP2", - "path": "30", - "statement": 1 - }, - "797": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1205, - 1246 - ], - "op": "AND", - "path": "30" - }, - "798": { - "op": "PUSH4", - "value": "0x6CDB3D13" - }, - "803": { - "op": "PUSH1", - "value": "0xE1" - }, - "805": { - "op": "SHL" - }, - "806": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1205, - 1246 - ], - "op": "EQ", - "path": "30" - }, - "807": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "JUMPDEST", - "path": "30" - }, - "808": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "SWAP2", - "path": "30" - }, - "809": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "SWAP1", - "path": "30" - }, - "810": { - "fn": "ERC1155Action.supportsInterface", - "offset": [ - 1103, - 1253 - ], - "op": "POP", - "path": "30" - }, - "811": { - "fn": "ERC1155Action.supportsInterface", - "jump": "o", - "offset": [ - 1103, - 1253 - ], - "op": "JUMP", - "path": "30" - }, - "812": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "JUMPDEST", - "path": "30" - }, - "813": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2256, - 2271 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "815": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2283, - 2319 - ], - "op": "DUP1", - "path": "30" - }, - "816": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2322, - 2370 - ], - "op": "PUSH2", - "path": "30", - "value": "0x338" - }, - "819": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2362, - 2369 - ], - "op": "DUP5", - "path": "30" - }, - "820": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2322, - 2361 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA36" - }, - "823": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2322, - 2370 - ], - "op": "JUMP", - "path": "30" - }, - "824": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2322, - 2370 - ], - "op": "JUMPDEST", - "path": "30" - }, - "825": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2283, - 2370 - ], - "op": "SWAP1", - "path": "30" - }, - "826": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2283, - 2370 - ], - "op": "POP", - "path": "30" - }, - "827": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2385, - 2417 - ], - "op": "PUSH2", - "path": "30", - "value": "0x343" - }, - "830": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2385, - 2399 - ], - "op": "DUP2", - "path": "30" - }, - "831": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2385, - 2415 - ], - "op": "PUSH2", - "path": "30", - "value": "0xAD7" - }, - "834": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2385, - 2417 - ], - "op": "JUMP", - "path": "30" - }, - "835": { - "branch": 282, - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2385, - 2417 - ], - "op": "JUMPDEST", - "path": "30" - }, - "836": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "ISZERO", - "path": "30" - }, - "837": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "PUSH2", - "path": "30", - "value": "0x362" - }, - "840": { - "branch": 282, - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "JUMPI", - "path": "30" - }, - "841": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2444, - 2506 - ], - "op": "PUSH2", - "path": "30", - "statement": 2, - "value": "0x35B" - }, - "844": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2461, - 2468 - ], - "op": "DUP5", - "path": "30" - }, - "845": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2470, - 2484 - ], - "op": "DUP3", - "path": "30" - }, - "846": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2470, - 2501 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "848": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2470, - 2501 - ], - "op": "ADD", - "path": "30" - }, - "849": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2470, - 2501 - ], - "op": "MLOAD", - "path": "30" - }, - "850": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2444, - 2506 - ], - "op": "PUSH2", - "path": "30", - "value": "0xFFFF" - }, - "853": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2444, - 2506 - ], - "op": "AND", - "path": "30" - }, - "854": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2503, - 2505 - ], - "op": "DUP6", - "path": "30" - }, - "855": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2444, - 2460 - ], - "op": "PUSH2", - "path": "30", - "value": "0xAE4" - }, - "858": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2444, - 2506 - ], - "op": "JUMP", - "path": "30" - }, - "859": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2444, - 2506 - ], - "op": "JUMPDEST", - "path": "30" - }, - "860": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2433, - 2506 - ], - "op": "SWAP2", - "path": "30" - }, - "861": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2433, - 2506 - ], - "op": "POP", - "path": "30" - }, - "862": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "PUSH2", - "path": "30", - "value": "0x379" - }, - "865": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "JUMP", - "path": "30" - }, - "866": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "JUMPDEST", - "path": "30" - }, - "867": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2548, - 2692 - ], - "op": "PUSH2", - "path": "30", - "statement": 3, - "value": "0x308" - }, - "870": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2581, - 2658 - ], - "op": "PUSH2", - "path": "30", - "value": "0x373" - }, - "873": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2617, - 2624 - ], - "op": "DUP6", - "path": "30" - }, - "874": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2626, - 2640 - ], - "op": "DUP4", - "path": "30" - }, - "875": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2626, - 2657 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "877": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2626, - 2657 - ], - "op": "ADD", - "path": "30" - }, - "878": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2626, - 2657 - ], - "op": "MLOAD", - "path": "30" - }, - "879": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2581, - 2616 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB2F" - }, - "882": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2581, - 2658 - ], - "op": "JUMP", - "path": "30" - }, - "883": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2581, - 2658 - ], - "op": "JUMPDEST", - "path": "30" - }, - "884": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2676, - 2678 - ], - "op": "DUP5", - "path": "30" - }, - "885": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2548, - 2563 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB58" - }, - "888": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "i", - "offset": [ - 2548, - 2692 - ], - "op": "JUMP", - "path": "30" - }, - "889": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2381, - 2703 - ], - "op": "JUMPDEST", - "path": "30" - }, - "890": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "POP", - "path": "30" - }, - "891": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "SWAP3", - "path": "30" - }, - "892": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "SWAP2", - "path": "30" - }, - "893": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "POP", - "path": "30" - }, - "894": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 2172, - 2709 - ], - "op": "POP", - "path": "30" - }, - "895": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "o", - "offset": [ - 2172, - 2709 - ], - "op": "JUMP", - "path": "30" - }, - "896": { - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "897": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x2" - }, - "899": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "SLOAD", - "path": "63" - }, - "900": { - "op": "PUSH1", - "value": "0x1" - }, - "902": { - "op": "PUSH1", - "value": "0x1" - }, - "904": { - "op": "PUSH1", - "value": "0xA0" - }, - "906": { - "op": "SHL" - }, - "907": { - "op": "SUB" - }, - "908": { - "offset": [ - 1035, - 1063 - ], - "op": "AND", - "path": "63" - }, - "909": { - "fn": "ERC1155Action.signedBalanceOf", - "offset": [ - 1035, - 1063 - ], - "op": "DUP2", - "path": "63" - }, - "910": { - "fn": "ERC1155Action.signedBalanceOf", - "jump": "o", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "911": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "JUMPDEST", - "path": "30" - }, - "912": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9260, - 9287 - ], - "op": "PUSH2", - "path": "30", - "statement": 4, - "value": "0x399" - }, - "915": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9278, - 9282 - ], - "op": "DUP9", - "path": "30" - }, - "916": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9284, - 9286 - ], - "op": "DUP9", - "path": "30" - }, - "917": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9260, - 9277 - ], - "op": "PUSH2", - "path": "30", - "value": "0xBDE" - }, - "920": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9260, - 9287 - ], - "op": "JUMP", - "path": "30" - }, - "921": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9260, - 9287 - ], - "op": "JUMPDEST", - "path": "30" - }, - "922": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9299, - 9329 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "924": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9331, - 9354 - ], - "op": "DUP1", - "path": "30" - }, - "925": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9358, - 9387 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3A8" - }, - "928": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9374, - 9377 - ], - "op": "DUP9", - "path": "30" - }, - "929": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9374, - 9377 - ], - "op": "DUP9", - "path": "30" - }, - "930": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9379, - 9386 - ], - "op": "DUP9", - "path": "30" - }, - "931": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9379, - 9386 - ], - "op": "DUP9", - "path": "30" - }, - "932": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9358, - 9373 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC7E" - }, - "935": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9358, - 9387 - ], - "op": "JUMP", - "path": "30" - }, - "936": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9358, - 9387 - ], - "op": "JUMPDEST", - "path": "30" - }, - "937": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9298, - 9387 - ], - "op": "SWAP2", - "path": "30" - }, - "938": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9298, - 9387 - ], - "op": "POP", - "path": "30" - }, - "939": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9298, - 9387 - ], - "op": "SWAP2", - "path": "30" - }, - "940": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9298, - 9387 - ], - "op": "POP", - "path": "30" - }, - "941": { - "branch": 283, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9535, - 9553 - ], - "op": "DUP1", - "path": "30" - }, - "942": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9531, - 9612 - ], - "op": "ISZERO", - "path": "30" - }, - "943": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9531, - 9612 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3E1" - }, - "946": { - "branch": 283, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9531, - 9612 - ], - "op": "JUMPI", - "path": "30" - }, - "947": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9563, - 9595 - ], - "op": "PUSH2", - "path": "30", - "statement": 5, - "value": "0x3BC" - }, - "950": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9580, - 9582 - ], - "op": "DUP10", - "path": "30" - }, - "951": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9584, - 9594 - ], - "op": "CALLER", - "path": "30" - }, - "952": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9563, - 9579 - ], - "op": "PUSH2", - "path": "30", - "value": "0x7D6" - }, - "955": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9563, - 9595 - ], - "op": "JUMP", - "path": "30" - }, - "956": { - "branch": 284, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9563, - 9595 - ], - "op": "JUMPDEST", - "path": "30" - }, - "957": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3E1" - }, - "960": { - "branch": 284, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "JUMPI", - "path": "30" - }, - "961": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "963": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "MLOAD", - "path": "30" - }, - "964": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "968": { - "op": "PUSH1", - "value": "0xE5" - }, - "970": { - "op": "SHL" - }, - "971": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "DUP2", - "path": "30" - }, - "972": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "MSTORE", - "path": "30" - }, - "973": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "975": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "ADD", - "path": "30" - }, - "976": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "979": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "SWAP1", - "path": "30" - }, - "980": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "PUSH2", - "path": "30", - "value": "0x36C0" - }, - "983": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9555, - 9612 - ], - "op": "JUMP", - "path": "30" - }, - "984": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "JUMPDEST", - "path": "30" - }, - "985": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "987": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "MLOAD", - "path": "30" - }, - "988": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "DUP1", - "path": "30" - }, - "989": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "SWAP2", - "path": "30" - }, - "990": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "SUB", - "path": "30" - }, - "991": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "SWAP1", - "path": "30" - }, - "992": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "REVERT", - "path": "30" - }, - "993": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9555, - 9612 - ], - "op": "JUMPDEST", - "path": "30" - }, - "994": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9624, - 9657 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "996": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9659, - 9690 - ], - "op": "DUP1", - "path": "30" - }, - "997": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9694, - 9767 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3EF" - }, - "1000": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9717, - 9721 - ], - "op": "DUP13", - "path": "30" - }, - "1001": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9735, - 9737 - ], - "op": "DUP13", - "path": "30" - }, - "1002": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9751, - 9757 - ], - "op": "DUP7", - "path": "30" - }, - "1003": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9694, - 9703 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDC8" - }, - "1006": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9694, - 9767 - ], - "op": "JUMP", - "path": "30" - }, - "1007": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9694, - 9767 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1008": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9623, - 9767 - ], - "op": "SWAP2", - "path": "30" - }, - "1009": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9623, - 9767 - ], - "op": "POP", - "path": "30" - }, - "1010": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9623, - 9767 - ], - "op": "SWAP2", - "path": "30" - }, - "1011": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9623, - 9767 - ], - "op": "POP", - "path": "30" - }, - "1012": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9778, - 9861 - ], - "op": "PUSH2", - "path": "30", - "statement": 6, - "value": "0x402" - }, - "1015": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9802, - 9806 - ], - "op": "DUP13", - "path": "30" - }, - "1016": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9808, - 9810 - ], - "op": "DUP13", - "path": "30" - }, - "1017": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9812, - 9823 - ], - "op": "DUP5", - "path": "30" - }, - "1018": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9825, - 9834 - ], - "op": "DUP5", - "path": "30" - }, - "1019": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9836, - 9840 - ], - "op": "DUP11", - "path": "30" - }, - "1020": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9836, - 9840 - ], - "op": "DUP11", - "path": "30" - }, - "1021": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9842, - 9860 - ], - "op": "DUP10", - "path": "30" - }, - "1022": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9778, - 9801 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF68" - }, - "1025": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9778, - 9861 - ], - "op": "JUMP", - "path": "30" - }, - "1026": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9778, - 9861 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1027": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9908, - 9910 - ], - "op": "DUP11", - "path": "30", - "statement": 7 - }, - "1028": { - "op": "PUSH1", - "value": "0x1" - }, - "1030": { - "op": "PUSH1", - "value": "0x1" - }, - "1032": { - "op": "PUSH1", - "value": "0xA0" - }, - "1034": { - "op": "SHL" - }, - "1035": { - "op": "SUB" - }, - "1036": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "AND", - "path": "30" - }, - "1037": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9902, - 9906 - ], - "op": "DUP13", - "path": "30" - }, - "1038": { - "op": "PUSH1", - "value": "0x1" - }, - "1040": { - "op": "PUSH1", - "value": "0x1" - }, - "1042": { - "op": "PUSH1", - "value": "0xA0" - }, - "1044": { - "op": "SHL" - }, - "1045": { - "op": "SUB" - }, - "1046": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "AND", - "path": "30" - }, - "1047": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9890, - 9900 - ], - "op": "CALLER", - "path": "30" - }, - "1048": { - "op": "PUSH1", - "value": "0x1" - }, - "1050": { - "op": "PUSH1", - "value": "0x1" - }, - "1052": { - "op": "PUSH1", - "value": "0xA0" - }, - "1054": { - "op": "SHL" - }, - "1055": { - "op": "SUB" - }, - "1056": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "AND", - "path": "30" - }, - "1057": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "PUSH32", - "path": "30", - "value": "0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB" - }, - "1090": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9912, - 9915 - ], - "op": "DUP14", - "path": "30" - }, - "1091": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9912, - 9915 - ], - "op": "DUP14", - "path": "30" - }, - "1092": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9917, - 9924 - ], - "op": "DUP14", - "path": "30" - }, - "1093": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9917, - 9924 - ], - "op": "DUP14", - "path": "30" - }, - "1094": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1096": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "MLOAD", - "path": "30" - }, - "1097": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "PUSH2", - "path": "30", - "value": "0x455" - }, - "1100": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP5", - "path": "30" - }, - "1101": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP4", - "path": "30" - }, - "1102": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP3", - "path": "30" - }, - "1103": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP2", - "path": "30" - }, - "1104": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP1", - "path": "30" - }, - "1105": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "PUSH2", - "path": "30", - "value": "0x35F3" - }, - "1108": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9876, - 9925 - ], - "op": "JUMP", - "path": "30" - }, - "1109": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1110": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1112": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "MLOAD", - "path": "30" - }, - "1113": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "DUP1", - "path": "30" - }, - "1114": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP2", - "path": "30" - }, - "1115": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SUB", - "path": "30" - }, - "1116": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "SWAP1", - "path": "30" - }, - "1117": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9876, - 9925 - ], - "op": "LOG4", - "path": "30" - }, - "1118": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9993, - 10015 - ], - "op": "PUSH2", - "path": "30", - "value": "0x466" - }, - "1121": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10012, - 10014 - ], - "op": "DUP12", - "path": "30" - }, - "1122": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9993, - 10011 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1246" - }, - "1125": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 9993, - 10015 - ], - "op": "JUMP", - "path": "30" - }, - "1126": { - "branch": 285, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9993, - 10015 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1127": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9989, - 10343 - ], - "op": "ISZERO", - "path": "30" - }, - "1128": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9989, - 10343 - ], - "op": "PUSH2", - "path": "30", - "value": "0x549" - }, - "1131": { - "branch": 285, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 9989, - 10343 - ], - "op": "JUMPI", - "path": "30" - }, - "1132": { - "offset": [ - 1017, - 1095 - ], - "op": "PUSH32", - "path": "30", - "value": "0xBC197C819B3E337A6F9652DD10BECD7EEF83032AF3B9D958D3D42F6694146621" - }, - "1165": { - "op": "PUSH1", - "value": "0x1" - }, - "1167": { - "op": "PUSH1", - "value": "0x1" - }, - "1169": { - "op": "PUSH1", - "value": "0xE0" - }, - "1171": { - "op": "SHL" - }, - "1172": { - "op": "SUB" - }, - "1173": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10286 - ], - "op": "NOT", - "path": "30", - "statement": 8 - }, - "1174": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10286 - ], - "op": "AND", - "path": "30" - }, - "1175": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10078, - 10080 - ], - "op": "DUP12", - "path": "30" - }, - "1176": { - "op": "PUSH1", - "value": "0x1" - }, - "1178": { - "op": "PUSH1", - "value": "0x1" - }, - "1180": { - "op": "PUSH1", - "value": "0xA0" - }, - "1182": { - "op": "SHL" - }, - "1183": { - "op": "SUB" - }, - "1184": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10104 - ], - "op": "AND", - "path": "30" - }, - "1185": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10104 - ], - "op": "PUSH4", - "path": "30", - "value": "0xBC197C81" - }, - "1190": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10126, - 10136 - ], - "op": "CALLER", - "path": "30" - }, - "1191": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10158, - 10162 - ], - "op": "DUP16", - "path": "30" - }, - "1192": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10184, - 10187 - ], - "op": "DUP15", - "path": "30" - }, - "1193": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10184, - 10187 - ], - "op": "DUP15", - "path": "30" - }, - "1194": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10209, - 10216 - ], - "op": "DUP15", - "path": "30" - }, - "1195": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10209, - 10216 - ], - "op": "DUP15", - "path": "30" - }, - "1196": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10238, - 10242 - ], - "op": "DUP15", - "path": "30" - }, - "1197": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10238, - 10242 - ], - "op": "DUP15", - "path": "30" - }, - "1198": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1200": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "MLOAD", - "path": "30" - }, - "1201": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP10", - "path": "30" - }, - "1202": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH4", - "path": "30", - "value": "0xFFFFFFFF" - }, - "1207": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "AND", - "path": "30" - }, - "1208": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0xE0" - }, - "1210": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SHL", - "path": "30" - }, - "1211": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP2", - "path": "30" - }, - "1212": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "MSTORE", - "path": "30" - }, - "1213": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "1215": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ADD", - "path": "30" - }, - "1216": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH2", - "path": "30", - "value": "0x4D0" - }, - "1219": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP9", - "path": "30" - }, - "1220": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP8", - "path": "30" - }, - "1221": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP7", - "path": "30" - }, - "1222": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP6", - "path": "30" - }, - "1223": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP5", - "path": "30" - }, - "1224": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP4", - "path": "30" - }, - "1225": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP3", - "path": "30" - }, - "1226": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP2", - "path": "30" - }, - "1227": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP1", - "path": "30" - }, - "1228": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3408" - }, - "1231": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 10056, - 10260 - ], - "op": "JUMP", - "path": "30" - }, - "1232": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1233": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1235": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1237": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "MLOAD", - "path": "30" - }, - "1238": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1239": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP4", - "path": "30" - }, - "1240": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SUB", - "path": "30" - }, - "1241": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP2", - "path": "30" - }, - "1242": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1244": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP8", - "path": "30" - }, - "1245": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1246": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "EXTCODESIZE", - "path": "30" - }, - "1247": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ISZERO", - "path": "30" - }, - "1248": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1249": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ISZERO", - "path": "30" - }, - "1250": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH2", - "path": "30", - "value": "0x4EA" - }, - "1253": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "JUMPI", - "path": "30" - }, - "1254": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1256": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1257": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "REVERT", - "path": "30" - }, - "1258": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1259": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "POP", - "path": "30" - }, - "1260": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "GAS", - "path": "30" - }, - "1261": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "CALL", - "path": "30" - }, - "1262": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ISZERO", - "path": "30" - }, - "1263": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1264": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ISZERO", - "path": "30" - }, - "1265": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH2", - "path": "30", - "value": "0x4FE" - }, - "1268": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "JUMPI", - "path": "30" - }, - "1269": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "1270": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1272": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1273": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "1274": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "1275": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1277": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "REVERT", - "path": "30" - }, - "1278": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1279": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "POP", - "path": "30" - }, - "1280": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "POP", - "path": "30" - }, - "1281": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "POP", - "path": "30" - }, - "1282": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "POP", - "path": "30" - }, - "1283": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1285": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "MLOAD", - "path": "30" - }, - "1286": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "1287": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "1289": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "NOT", - "path": "30" - }, - "1290": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "1292": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP3", - "path": "30" - }, - "1293": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ADD", - "path": "30" - }, - "1294": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "AND", - "path": "30" - }, - "1295": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP3", - "path": "30" - }, - "1296": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ADD", - "path": "30" - }, - "1297": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP1", - "path": "30" - }, - "1298": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1300": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "MSTORE", - "path": "30" - }, - "1301": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "POP", - "path": "30" - }, - "1302": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "DUP2", - "path": "30" - }, - "1303": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "ADD", - "path": "30" - }, - "1304": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP1", - "path": "30" - }, - "1305": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH2", - "path": "30", - "value": "0x522" - }, - "1308": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP2", - "path": "30" - }, - "1309": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "SWAP1", - "path": "30" - }, - "1310": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "PUSH2", - "path": "30", - "value": "0x31F4" - }, - "1313": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 10056, - 10260 - ], - "op": "JUMP", - "path": "30" - }, - "1314": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10260 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1315": { - "op": "PUSH1", - "value": "0x1" - }, - "1317": { - "op": "PUSH1", - "value": "0x1" - }, - "1319": { - "op": "PUSH1", - "value": "0xE0" - }, - "1321": { - "op": "SHL" - }, - "1322": { - "op": "SUB" - }, - "1323": { - "op": "NOT" - }, - "1324": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10286 - ], - "op": "AND", - "path": "30" - }, - "1325": { - "branch": 286, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10056, - 10286 - ], - "op": "EQ", - "path": "30" - }, - "1326": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "PUSH2", - "path": "30", - "value": "0x549" - }, - "1329": { - "branch": 286, - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "JUMPI", - "path": "30" - }, - "1330": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1332": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "MLOAD", - "path": "30" - }, - "1333": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "1337": { - "op": "PUSH1", - "value": "0xE5" - }, - "1339": { - "op": "SHL" - }, - "1340": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "DUP2", - "path": "30" - }, - "1341": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "MSTORE", - "path": "30" - }, - "1342": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "1344": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "ADD", - "path": "30" - }, - "1345": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "1348": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "SWAP1", - "path": "30" - }, - "1349": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "PUSH2", - "path": "30", - "value": "0x37B9" - }, - "1352": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "i", - "offset": [ - 10031, - 10332 - ], - "op": "JUMP", - "path": "30" - }, - "1353": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 10031, - 10332 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1354": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1355": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1356": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1357": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1358": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1359": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1360": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1361": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1362": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1363": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1364": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1365": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "offset": [ - 8849, - 10349 - ], - "op": "POP", - "path": "30" - }, - "1366": { - "fn": "ERC1155Action.safeBatchTransferFrom", - "jump": "o", - "offset": [ - 8849, - 10349 - ], - "op": "JUMP", - "path": "30" - }, - "1367": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1368": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11385, - 11408 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "1370": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11452, - 11482 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1372": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11493, - 11522 - ], - "op": "PUSH2", - "path": "30", - "value": "0x567" - }, - "1375": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11509, - 11512 - ], - "op": "DUP7", - "path": "30" - }, - "1376": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11509, - 11512 - ], - "op": "DUP7", - "path": "30" - }, - "1377": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11514, - 11521 - ], - "op": "DUP7", - "path": "30" - }, - "1378": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11514, - 11521 - ], - "op": "DUP7", - "path": "30" - }, - "1379": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11493, - 11508 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC7E" - }, - "1382": { - "fn": "ERC1155Action.decodeToAssets", - "jump": "i", - "offset": [ - 11493, - 11522 - ], - "op": "JUMP", - "path": "30" - }, - "1383": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11493, - 11522 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1384": { - "op": "POP" - }, - "1385": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11451, - 11522 - ], - "op": "SWAP7", - "path": "30" - }, - "1386": { - "fn": "ERC1155Action.decodeToAssets", - "offset": [ - 11245, - 11552 - ], - "op": "SWAP6", - "path": "30" - }, - "1387": { - "op": "POP" - }, - "1388": { - "op": "POP" - }, - "1389": { - "op": "POP" - }, - "1390": { - "op": "POP" - }, - "1391": { - "op": "POP" - }, - "1392": { - "op": "POP" - }, - "1393": { - "fn": "ERC1155Action.decodeToAssets", - "jump": "o", - "offset": [ - 11245, - 11552 - ], - "op": "JUMP", - "path": "30" - }, - "1394": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1395": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3924, - 3940 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "1397": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3964, - 3993 - ], - "op": "DUP4", - "path": "30", - "statement": 9 - }, - "1398": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3964, - 3993 - ], - "op": "DUP3", - "path": "30" - }, - "1399": { - "branch": 287, - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3964, - 3993 - ], - "op": "EQ", - "path": "30" - }, - "1400": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3956, - 3994 - ], - "op": "PUSH2", - "path": "30", - "value": "0x580" - }, - "1403": { - "branch": 287, - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3956, - 3994 - ], - "op": "JUMPI", - "path": "30" - }, - "1404": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3956, - 3994 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1406": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3956, - 3994 - ], - "op": "DUP1", - "path": "30" - }, - "1407": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3956, - 3994 - ], - "op": "REVERT", - "path": "30" - }, - "1408": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3956, - 3994 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1409": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4004, - 4028 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1411": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4045, - 4053 - ], - "op": "DUP5", - "path": "30" - }, - "1412": { - "op": "PUSH1", - "value": "0x1" - }, - "1414": { - "op": "PUSH1", - "value": "0x1" - }, - "1416": { - "op": "PUSH1", - "value": "0x40" - }, - "1418": { - "op": "SHL" - }, - "1419": { - "op": "SUB" - }, - "1420": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP2", - "path": "30" - }, - "1421": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "GT", - "path": "30" - }, - "1422": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP1", - "path": "30" - }, - "1423": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "ISZERO", - "path": "30" - }, - "1424": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH2", - "path": "30", - "value": "0x598" - }, - "1427": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "JUMPI", - "path": "30" - }, - "1428": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1430": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP1", - "path": "30" - }, - "1431": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "REVERT", - "path": "30" - }, - "1432": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1433": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "POP", - "path": "30" - }, - "1434": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1436": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "MLOAD", - "path": "30" - }, - "1437": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "SWAP1", - "path": "30" - }, - "1438": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP1", - "path": "30" - }, - "1439": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP3", - "path": "30" - }, - "1440": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "MSTORE", - "path": "30" - }, - "1441": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP1", - "path": "30" - }, - "1442": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1444": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "MUL", - "path": "30" - }, - "1445": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1447": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "ADD", - "path": "30" - }, - "1448": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP3", - "path": "30" - }, - "1449": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "ADD", - "path": "30" - }, - "1450": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1452": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "MSTORE", - "path": "30" - }, - "1453": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP1", - "path": "30" - }, - "1454": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "ISZERO", - "path": "30" - }, - "1455": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH2", - "path": "30", - "value": "0x5C2" - }, - "1458": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "JUMPI", - "path": "30" - }, - "1459": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP2", - "path": "30" - }, - "1460": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1462": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "ADD", - "path": "30" - }, - "1463": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1465": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP3", - "path": "30" - }, - "1466": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "MUL", - "path": "30" - }, - "1467": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP1", - "path": "30" - }, - "1468": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "1469": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "DUP4", - "path": "30" - }, - "1470": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "CALLDATACOPY", - "path": "30" - }, - "1471": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "ADD", - "path": "30" - }, - "1472": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "SWAP1", - "path": "30" - }, - "1473": { - "op": "POP" - }, - "1474": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1475": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4031, - 4061 - ], - "op": "POP", - "path": "30" - }, - "1476": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4004, - 4061 - ], - "op": "SWAP1", - "path": "30" - }, - "1477": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4004, - 4061 - ], - "op": "POP", - "path": "30" - }, - "1478": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4077, - 4086 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1480": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1481": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4088, - 4107 - ], - "op": "DUP6", - "path": "30" - }, - "1482": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4088, - 4107 - ], - "op": "DUP2", - "path": "30" - }, - "1483": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4088, - 4107 - ], - "op": "LT", - "path": "30" - }, - "1484": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "ISZERO", - "path": "30" - }, - "1485": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "PUSH2", - "path": "30", - "value": "0x62B" - }, - "1488": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "JUMPI", - "path": "30" - }, - "1489": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4205, - 4235 - ], - "op": "PUSH2", - "path": "30", - "statement": 10, - "value": "0x60C" - }, - "1492": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4223 - ], - "op": "DUP8", - "path": "30" - }, - "1493": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4223 - ], - "op": "DUP8", - "path": "30" - }, - "1494": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4224, - 4225 - ], - "op": "DUP4", - "path": "30" - }, - "1495": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "DUP2", - "path": "30" - }, - "1496": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "DUP2", - "path": "30" - }, - "1497": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "LT", - "path": "30" - }, - "1498": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "PUSH2", - "path": "30", - "value": "0x5DF" - }, - "1501": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "JUMPI", - "path": "30" - }, - "1502": { - "dev": "Index out of range", - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "INVALID", - "path": "30" - }, - "1503": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1504": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "SWAP1", - "path": "30" - }, - "1505": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "POP", - "path": "30" - }, - "1506": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1508": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "MUL", - "path": "30" - }, - "1509": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "ADD", - "path": "30" - }, - "1510": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1512": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "DUP2", - "path": "30" - }, - "1513": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "ADD", - "path": "30" - }, - "1514": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "SWAP1", - "path": "30" - }, - "1515": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "PUSH2", - "path": "30", - "value": "0x5F4" - }, - "1518": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "SWAP2", - "path": "30" - }, - "1519": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "SWAP1", - "path": "30" - }, - "1520": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2F75" - }, - "1523": { - "fn": "ERC1155Action.balanceOfBatch", - "jump": "i", - "offset": [ - 4215, - 4226 - ], - "op": "JUMP", - "path": "30" - }, - "1524": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4215, - 4226 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1525": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4231 - ], - "op": "DUP7", - "path": "30" - }, - "1526": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4231 - ], - "op": "DUP7", - "path": "30" - }, - "1527": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4232, - 4233 - ], - "op": "DUP5", - "path": "30" - }, - "1528": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "DUP2", - "path": "30" - }, - "1529": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "DUP2", - "path": "30" - }, - "1530": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "LT", - "path": "30" - }, - "1531": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "PUSH2", - "path": "30", - "value": "0x600" - }, - "1534": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "JUMPI", - "path": "30" - }, - "1535": { - "dev": "Index out of range", - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "INVALID", - "path": "30" - }, - "1536": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1537": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "SWAP1", - "path": "30" - }, - "1538": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "POP", - "path": "30" - }, - "1539": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1541": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "MUL", - "path": "30" - }, - "1542": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "ADD", - "path": "30" - }, - "1543": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4228, - 4234 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "1544": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4205, - 4214 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E0" - }, - "1547": { - "fn": "ERC1155Action.balanceOfBatch", - "jump": "i", - "offset": [ - 4205, - 4235 - ], - "op": "JUMP", - "path": "30" - }, - "1548": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4205, - 4235 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1549": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4199 - ], - "op": "DUP3", - "path": "30" - }, - "1550": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4200, - 4201 - ], - "op": "DUP3", - "path": "30" - }, - "1551": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "DUP2", - "path": "30" - }, - "1552": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "MLOAD", - "path": "30" - }, - "1553": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "DUP2", - "path": "30" - }, - "1554": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "LT", - "path": "30" - }, - "1555": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "PUSH2", - "path": "30", - "value": "0x618" - }, - "1558": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "JUMPI", - "path": "30" - }, - "1559": { - "dev": "Index out of range", - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "INVALID", - "path": "30" - }, - "1560": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1561": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1563": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "SWAP1", - "path": "30" - }, - "1564": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "DUP2", - "path": "30" - }, - "1565": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "MUL", - "path": "30" - }, - "1566": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "SWAP2", - "path": "30" - }, - "1567": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "SWAP1", - "path": "30" - }, - "1568": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "SWAP2", - "path": "30" - }, - "1569": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "ADD", - "path": "30" - }, - "1570": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4202 - ], - "op": "ADD", - "path": "30" - }, - "1571": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4192, - 4235 - ], - "op": "MSTORE", - "path": "30" - }, - "1572": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4109, - 4112 - ], - "op": "PUSH1", - "path": "30", - "statement": 11, - "value": "0x1" - }, - "1574": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4109, - 4112 - ], - "op": "ADD", - "path": "30" - }, - "1575": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "PUSH2", - "path": "30", - "value": "0x5C8" - }, - "1578": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "JUMP", - "path": "30" - }, - "1579": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4072, - 4246 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1580": { - "op": "POP" - }, - "1581": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 4263, - 4270 - ], - "op": "SWAP6", - "path": "30", - "statement": 12 - }, - "1582": { - "fn": "ERC1155Action.balanceOfBatch", - "offset": [ - 3783, - 4277 - ], - "op": "SWAP5", - "path": "30" - }, - "1583": { - "op": "POP" - }, - "1584": { - "op": "POP" - }, - "1585": { - "op": "POP" - }, - "1586": { - "op": "POP" - }, - "1587": { - "op": "POP" - }, - "1588": { - "fn": "ERC1155Action.balanceOfBatch", - "jump": "o", - "offset": [ - 3783, - 4277 - ], - "op": "JUMP", - "path": "30" - }, - "1589": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1590": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13449, - 13456 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1592": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "PUSH2", - "path": "30", - "statement": 13, - "value": "0x650" - }, - "1595": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13504, - 13514 - ], - "op": "DUP5", - "path": "30" - }, - "1596": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "PUSH2", - "path": "30", - "value": "0xFFFF" - }, - "1599": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "AND", - "path": "30" - }, - "1600": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13516, - 13524 - ], - "op": "DUP5", - "path": "30" - }, - "1601": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "PUSH5", - "path": "30", - "value": "0xFFFFFFFFFF" - }, - "1607": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "AND", - "path": "30" - }, - "1608": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13526, - 13535 - ], - "op": "DUP5", - "path": "30" - }, - "1609": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "PUSH1", - "path": "30", - "value": "0xFF" - }, - "1611": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "AND", - "path": "30" - }, - "1612": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13503 - ], - "op": "PUSH2", - "path": "30", - "value": "0x124C" - }, - "1615": { - "fn": "ERC1155Action.encodeToId", - "jump": "i", - "offset": [ - 13475, - 13536 - ], - "op": "JUMP", - "path": "30" - }, - "1616": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13475, - 13536 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1617": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13468, - 13536 - ], - "op": "SWAP1", - "path": "30" - }, - "1618": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13468, - 13536 - ], - "op": "POP", - "path": "30" - }, - "1619": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1620": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "SWAP4", - "path": "30" - }, - "1621": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "SWAP3", - "path": "30" - }, - "1622": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "POP", - "path": "30" - }, - "1623": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "POP", - "path": "30" - }, - "1624": { - "fn": "ERC1155Action.encodeToId", - "offset": [ - 13314, - 13543 - ], - "op": "POP", - "path": "30" - }, - "1625": { - "fn": "ERC1155Action.encodeToId", - "jump": "o", - "offset": [ - 13314, - 13543 - ], - "op": "JUMP", - "path": "30" - }, - "1626": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 2949, - 3452 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1627": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3096, - 3111 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "1629": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3135, - 3164 - ], - "op": "DUP4", - "path": "30", - "statement": 14 - }, - "1630": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3135, - 3164 - ], - "op": "DUP3", - "path": "30" - }, - "1631": { - "branch": 288, - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3135, - 3164 - ], - "op": "EQ", - "path": "30" - }, - "1632": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3127, - 3165 - ], - "op": "PUSH2", - "path": "30", - "value": "0x668" - }, - "1635": { - "branch": 288, - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3127, - 3165 - ], - "op": "JUMPI", - "path": "30" - }, - "1636": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3127, - 3165 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1638": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3127, - 3165 - ], - "op": "DUP1", - "path": "30" - }, - "1639": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3127, - 3165 - ], - "op": "REVERT", - "path": "30" - }, - "1640": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3127, - 3165 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1641": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3175, - 3198 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1643": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3214, - 3222 - ], - "op": "DUP5", - "path": "30" - }, - "1644": { - "op": "PUSH1", - "value": "0x1" - }, - "1646": { - "op": "PUSH1", - "value": "0x1" - }, - "1648": { - "op": "PUSH1", - "value": "0x40" - }, - "1650": { - "op": "SHL" - }, - "1651": { - "op": "SUB" - }, - "1652": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP2", - "path": "30" - }, - "1653": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "GT", - "path": "30" - }, - "1654": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP1", - "path": "30" - }, - "1655": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "ISZERO", - "path": "30" - }, - "1656": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH2", - "path": "30", - "value": "0x680" - }, - "1659": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "JUMPI", - "path": "30" - }, - "1660": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1662": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP1", - "path": "30" - }, - "1663": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "REVERT", - "path": "30" - }, - "1664": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1665": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "POP", - "path": "30" - }, - "1666": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1668": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "MLOAD", - "path": "30" - }, - "1669": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "SWAP1", - "path": "30" - }, - "1670": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP1", - "path": "30" - }, - "1671": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP3", - "path": "30" - }, - "1672": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "MSTORE", - "path": "30" - }, - "1673": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP1", - "path": "30" - }, - "1674": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1676": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "MUL", - "path": "30" - }, - "1677": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1679": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "ADD", - "path": "30" - }, - "1680": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP3", - "path": "30" - }, - "1681": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "ADD", - "path": "30" - }, - "1682": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1684": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "MSTORE", - "path": "30" - }, - "1685": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP1", - "path": "30" - }, - "1686": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "ISZERO", - "path": "30" - }, - "1687": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH2", - "path": "30", - "value": "0x6AA" - }, - "1690": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "JUMPI", - "path": "30" - }, - "1691": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP2", - "path": "30" - }, - "1692": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1694": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "ADD", - "path": "30" - }, - "1695": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1697": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP3", - "path": "30" - }, - "1698": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "MUL", - "path": "30" - }, - "1699": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP1", - "path": "30" - }, - "1700": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "CALLDATASIZE", - "path": "30" - }, - "1701": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "DUP4", - "path": "30" - }, - "1702": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "CALLDATACOPY", - "path": "30" - }, - "1703": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "ADD", - "path": "30" - }, - "1704": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "SWAP1", - "path": "30" - }, - "1705": { - "op": "POP" - }, - "1706": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1707": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3201, - 3230 - ], - "op": "POP", - "path": "30" - }, - "1708": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3175, - 3230 - ], - "op": "SWAP1", - "path": "30" - }, - "1709": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3175, - 3230 - ], - "op": "POP", - "path": "30" - }, - "1710": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3246, - 3255 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1712": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3241, - 3421 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1713": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3257, - 3276 - ], - "op": "DUP6", - "path": "30" - }, - "1714": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3257, - 3276 - ], - "op": "DUP2", - "path": "30" - }, - "1715": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3257, - 3276 - ], - "op": "LT", - "path": "30" - }, - "1716": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3241, - 3421 - ], - "op": "ISZERO", - "path": "30" - }, - "1717": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3241, - 3421 - ], - "op": "PUSH2", - "path": "30", - "value": "0x62B" - }, - "1720": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3241, - 3421 - ], - "op": "JUMPI", - "path": "30" - }, - "1721": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3374, - 3410 - ], - "op": "PUSH2", - "path": "30", - "statement": 15, - "value": "0x6F4" - }, - "1724": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3398 - ], - "op": "DUP8", - "path": "30" - }, - "1725": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3398 - ], - "op": "DUP8", - "path": "30" - }, - "1726": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3399, - 3400 - ], - "op": "DUP4", - "path": "30" - }, - "1727": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "DUP2", - "path": "30" - }, - "1728": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "DUP2", - "path": "30" - }, - "1729": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "LT", - "path": "30" - }, - "1730": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "PUSH2", - "path": "30", - "value": "0x6C7" - }, - "1733": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "JUMPI", - "path": "30" - }, - "1734": { - "dev": "Index out of range", - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "INVALID", - "path": "30" - }, - "1735": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1736": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "SWAP1", - "path": "30" - }, - "1737": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "POP", - "path": "30" - }, - "1738": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1740": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "MUL", - "path": "30" - }, - "1741": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "ADD", - "path": "30" - }, - "1742": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1744": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "DUP2", - "path": "30" - }, - "1745": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "ADD", - "path": "30" - }, - "1746": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "SWAP1", - "path": "30" - }, - "1747": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "PUSH2", - "path": "30", - "value": "0x6DC" - }, - "1750": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "SWAP2", - "path": "30" - }, - "1751": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "SWAP1", - "path": "30" - }, - "1752": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2F75" - }, - "1755": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "i", - "offset": [ - 3390, - 3401 - ], - "op": "JUMP", - "path": "30" - }, - "1756": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3390, - 3401 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1757": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3406 - ], - "op": "DUP7", - "path": "30" - }, - "1758": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3406 - ], - "op": "DUP7", - "path": "30" - }, - "1759": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3407, - 3408 - ], - "op": "DUP5", - "path": "30" - }, - "1760": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "DUP2", - "path": "30" - }, - "1761": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "DUP2", - "path": "30" - }, - "1762": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "LT", - "path": "30" - }, - "1763": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "PUSH2", - "path": "30", - "value": "0x6E8" - }, - "1766": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "JUMPI", - "path": "30" - }, - "1767": { - "dev": "Index out of range", - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "INVALID", - "path": "30" - }, - "1768": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1769": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "SWAP1", - "path": "30" - }, - "1770": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "POP", - "path": "30" - }, - "1771": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1773": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "MUL", - "path": "30" - }, - "1774": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "ADD", - "path": "30" - }, - "1775": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3403, - 3409 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "1776": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3374, - 3389 - ], - "op": "PUSH2", - "path": "30", - "value": "0x32C" - }, - "1779": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "i", - "offset": [ - 3374, - 3410 - ], - "op": "JUMP", - "path": "30" - }, - "1780": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3374, - 3410 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1781": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3368 - ], - "op": "DUP3", - "path": "30" - }, - "1782": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3369, - 3370 - ], - "op": "DUP3", - "path": "30" - }, - "1783": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "DUP2", - "path": "30" - }, - "1784": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "MLOAD", - "path": "30" - }, - "1785": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "DUP2", - "path": "30" - }, - "1786": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "LT", - "path": "30" - }, - "1787": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "PUSH2", - "path": "30", - "value": "0x700" - }, - "1790": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "JUMPI", - "path": "30" - }, - "1791": { - "dev": "Index out of range", - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "INVALID", - "path": "30" - }, - "1792": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1793": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1795": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "SWAP1", - "path": "30" - }, - "1796": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "DUP2", - "path": "30" - }, - "1797": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "MUL", - "path": "30" - }, - "1798": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "SWAP2", - "path": "30" - }, - "1799": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "SWAP1", - "path": "30" - }, - "1800": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "SWAP2", - "path": "30" - }, - "1801": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "ADD", - "path": "30" - }, - "1802": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3371 - ], - "op": "ADD", - "path": "30" - }, - "1803": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3361, - 3410 - ], - "op": "MSTORE", - "path": "30" - }, - "1804": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3278, - 3281 - ], - "op": "PUSH1", - "path": "30", - "statement": 16, - "value": "0x1" - }, - "1806": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3278, - 3281 - ], - "op": "ADD", - "path": "30" - }, - "1807": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3241, - 3421 - ], - "op": "PUSH2", - "path": "30", - "value": "0x6B0" - }, - "1810": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 3241, - 3421 - ], - "op": "JUMP", - "path": "30" - }, - "1811": { - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "1812": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "PUSH1", - "path": "63", - "value": "0x1" - }, - "1814": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "SLOAD", - "path": "63" - }, - "1815": { - "op": "PUSH1", - "value": "0x1" - }, - "1817": { - "op": "PUSH1", - "value": "0x1" - }, - "1819": { - "op": "PUSH1", - "value": "0xA0" - }, - "1821": { - "op": "SHL" - }, - "1822": { - "op": "SUB" - }, - "1823": { - "offset": [ - 920, - 946 - ], - "op": "AND", - "path": "63" - }, - "1824": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 920, - 946 - ], - "op": "DUP2", - "path": "63" - }, - "1825": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "o", - "offset": [ - 920, - 946 - ], - "op": "JUMP", - "path": "63" - }, - "1826": { - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "1827": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "1829": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "SLOAD", - "path": "63" - }, - "1830": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "PUSH5", - "path": "63", - "value": "0x100000000" - }, - "1836": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "SWAP1", - "path": "63" - }, - "1837": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "DIV", - "path": "63" - }, - "1838": { - "op": "PUSH1", - "value": "0x1" - }, - "1840": { - "op": "PUSH1", - "value": "0x1" - }, - "1842": { - "op": "PUSH1", - "value": "0xA0" - }, - "1844": { - "op": "SHL" - }, - "1845": { - "op": "SUB" - }, - "1846": { - "offset": [ - 811, - 831 - ], - "op": "AND", - "path": "63" - }, - "1847": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "offset": [ - 811, - 831 - ], - "op": "DUP2", - "path": "63" - }, - "1848": { - "fn": "ERC1155Action.signedBalanceOfBatch", - "jump": "o", - "offset": [ - 811, - 831 - ], - "op": "JUMP", - "path": "63" - }, - "1849": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1850": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19389, - 19399 - ], - "op": "CALLER", - "path": "30", - "statement": 17 - }, - "1851": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "1853": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "DUP2", - "path": "30" - }, - "1854": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "DUP2", - "path": "30" - }, - "1855": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "MSTORE", - "path": "30" - }, - "1856": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19388 - ], - "op": "PUSH1", - "path": "30", - "value": "0x7" - }, - "1858": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "1860": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "SWAP1", - "path": "30" - }, - "1861": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "DUP2", - "path": "30" - }, - "1862": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "MSTORE", - "path": "30" - }, - "1863": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1865": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "DUP1", - "path": "30" - }, - "1866": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "DUP4", - "path": "30" - }, - "1867": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19400 - ], - "op": "KECCAK256", - "path": "30" - }, - "1868": { - "op": "PUSH1", - "value": "0x1" - }, - "1870": { - "op": "PUSH1", - "value": "0x1" - }, - "1872": { - "op": "PUSH1", - "value": "0xA0" - }, - "1874": { - "op": "SHL" - }, - "1875": { - "op": "SUB" - }, - "1876": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "DUP8", - "path": "30" - }, - "1877": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "AND", - "path": "30" - }, - "1878": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "DUP1", - "path": "30" - }, - "1879": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "DUP6", - "path": "30" - }, - "1880": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "MSTORE", - "path": "30" - }, - "1881": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "SWAP3", - "path": "30" - }, - "1882": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "MSTORE", - "path": "30" - }, - "1883": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "SWAP2", - "path": "30" - }, - "1884": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "DUP3", - "path": "30" - }, - "1885": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "SWAP1", - "path": "30" - }, - "1886": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "KECCAK256", - "path": "30" - }, - "1887": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "DUP1", - "path": "30" - }, - "1888": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "SLOAD", - "path": "30" - }, - "1889": { - "op": "PUSH1", - "value": "0xFF" - }, - "1891": { - "op": "NOT" - }, - "1892": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "AND", - "path": "30" - }, - "1893": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "DUP6", - "path": "30" - }, - "1894": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "ISZERO", - "path": "30" - }, - "1895": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "ISZERO", - "path": "30" - }, - "1896": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "OR", - "path": "30" - }, - "1897": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "SWAP1", - "path": "30" - }, - "1898": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "SSTORE", - "path": "30" - }, - "1899": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "SWAP1", - "path": "30", - "statement": 18 - }, - "1900": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "MLOAD", - "path": "30" - }, - "1901": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "SWAP1", - "path": "30" - }, - "1902": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19410 - ], - "op": "SWAP2", - "path": "30" - }, - "1903": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19389, - 19399 - ], - "op": "SWAP1", - "path": "30" - }, - "1904": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "PUSH32", - "path": "30", - "value": "0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31" - }, - "1937": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "SWAP1", - "path": "30" - }, - "1938": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "PUSH2", - "path": "30", - "value": "0x79C" - }, - "1941": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "SWAP1", - "path": "30" - }, - "1942": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "DUP6", - "path": "30" - }, - "1943": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19355, - 19421 - ], - "op": "SWAP1", - "path": "30" - }, - "1944": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3625" - }, - "1947": { - "fn": "ERC1155Action.setApprovalForAll", - "jump": "i", - "offset": [ - 19436, - 19482 - ], - "op": "JUMP", - "path": "30" - }, - "1948": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1949": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "1951": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "MLOAD", - "path": "30" - }, - "1952": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "DUP1", - "path": "30" - }, - "1953": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "SWAP2", - "path": "30" - }, - "1954": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "SUB", - "path": "30" - }, - "1955": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "SWAP1", - "path": "30" - }, - "1956": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19436, - 19482 - ], - "op": "LOG3", - "path": "30" - }, - "1957": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "POP", - "path": "30" - }, - "1958": { - "fn": "ERC1155Action.setApprovalForAll", - "offset": [ - 19267, - 19489 - ], - "op": "POP", - "path": "30" - }, - "1959": { - "fn": "ERC1155Action.setApprovalForAll", - "jump": "o", - "offset": [ - 19267, - 19489 - ], - "op": "JUMP", - "path": "30" - }, - "1960": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "JUMPDEST", - "path": "30" - }, - "1961": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20244, - 20275 - ], - "op": "PUSH20", - "path": "30", - "statement": 19, - "value": "0x0" - }, - "1982": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20277, - 20306 - ], - "op": "PUSH20", - "path": "30", - "value": "0x0" - }, - "2003": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "SWAP1", - "path": "30" - }, - "2004": { - "fn": "ERC1155Action.getLibInfo", - "offset": [ - 20163, - 20314 - ], - "op": "SWAP2", - "path": "30" - }, - "2005": { - "fn": "ERC1155Action.getLibInfo", - "jump": "o", - "offset": [ - 20163, - 20314 - ], - "op": "JUMP", - "path": "30" - }, - "2006": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19806, - 20075 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2007": { - "op": "PUSH1", - "value": "0x1" - }, - "2009": { - "op": "PUSH1", - "value": "0x1" - }, - "2011": { - "op": "PUSH1", - "value": "0xA0" - }, - "2013": { - "op": "SHL" - }, - "2014": { - "op": "SUB" - }, - "2015": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "DUP2", - "path": "30" - }, - "2016": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "AND", - "path": "30" - }, - "2017": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19929, - 19933 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2019": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "SWAP1", - "path": "30" - }, - "2020": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "DUP2", - "path": "30" - }, - "2021": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "MSTORE", - "path": "30" - }, - "2022": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19975 - ], - "op": "PUSH1", - "path": "30", - "value": "0x6" - }, - "2024": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2026": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "MSTORE", - "path": "30" - }, - "2027": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2029": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "DUP2", - "path": "30" - }, - "2030": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "KECCAK256", - "path": "30" - }, - "2031": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "SLOAD", - "path": "30" - }, - "2032": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "PUSH1", - "path": "30", - "value": "0xFF" - }, - "2034": { - "branch": 289, - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19953, - 19985 - ], - "op": "AND", - "path": "30" - }, - "2035": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19949, - 19998 - ], - "op": "ISZERO", - "path": "30" - }, - "2036": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19949, - 19998 - ], - "op": "PUSH2", - "path": "30", - "value": "0x7FF" - }, - "2039": { - "branch": 289, - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19949, - 19998 - ], - "op": "JUMPI", - "path": "30" - }, - "2040": { - "op": "POP" - }, - "2041": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19994, - 19998 - ], - "op": "PUSH1", - "path": "30", - "statement": 20, - "value": "0x1" - }, - "2043": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19987, - 19998 - ], - "op": "PUSH2", - "path": "30", - "value": "0x30C" - }, - "2046": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19987, - 19998 - ], - "op": "JUMP", - "path": "30" - }, - "2047": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 19949, - 19998 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2048": { - "op": "POP" - }, - "2049": { - "op": "PUSH1", - "value": "0x1" - }, - "2051": { - "op": "PUSH1", - "value": "0x1" - }, - "2053": { - "op": "PUSH1", - "value": "0xA0" - }, - "2055": { - "op": "SHL" - }, - "2056": { - "op": "SUB" - }, - "2057": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "SWAP2", - "path": "30", - "statement": 21 - }, - "2058": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "DUP3", - "path": "30" - }, - "2059": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "AND", - "path": "30" - }, - "2060": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2062": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "SWAP1", - "path": "30" - }, - "2063": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "DUP2", - "path": "30" - }, - "2064": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "MSTORE", - "path": "30" - }, - "2065": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x7" - }, - "2067": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2069": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "SWAP1", - "path": "30" - }, - "2070": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "DUP2", - "path": "30" - }, - "2071": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "MSTORE", - "path": "30" - }, - "2072": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2074": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "DUP1", - "path": "30" - }, - "2075": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "DUP4", - "path": "30" - }, - "2076": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20058 - ], - "op": "KECCAK256", - "path": "30" - }, - "2077": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP4", - "path": "30" - }, - "2078": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP1", - "path": "30" - }, - "2079": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP5", - "path": "30" - }, - "2080": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "AND", - "path": "30" - }, - "2081": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "DUP3", - "path": "30" - }, - "2082": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "MSTORE", - "path": "30" - }, - "2083": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP2", - "path": "30" - }, - "2084": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP1", - "path": "30" - }, - "2085": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP2", - "path": "30" - }, - "2086": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "MSTORE", - "path": "30" - }, - "2087": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "KECCAK256", - "path": "30" - }, - "2088": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SLOAD", - "path": "30" - }, - "2089": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "PUSH1", - "path": "30", - "value": "0xFF" - }, - "2091": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "AND", - "path": "30" - }, - "2092": { - "fn": "ERC1155Action.isApprovedForAll", - "offset": [ - 20016, - 20068 - ], - "op": "SWAP1", - "path": "30" - }, - "2093": { - "fn": "ERC1155Action.isApprovedForAll", - "jump": "o", - "offset": [ - 19806, - 20075 - ], - "op": "JUMP", - "path": "30" - }, - "2094": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2095": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6663, - 6690 - ], - "op": "PUSH2", - "path": "30", - "statement": 22, - "value": "0x838" - }, - "2098": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6681, - 6685 - ], - "op": "DUP7", - "path": "30" - }, - "2099": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6687, - 6689 - ], - "op": "DUP7", - "path": "30" - }, - "2100": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6663, - 6680 - ], - "op": "PUSH2", - "path": "30", - "value": "0xBDE" - }, - "2103": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 6663, - 6690 - ], - "op": "JUMP", - "path": "30" - }, - "2104": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6663, - 6690 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2105": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6814, - 6847 - ], - "op": "PUSH2", - "path": "30", - "value": "0x840" - }, - "2108": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6814, - 6847 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E31" - }, - "2111": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 6814, - 6847 - ], - "op": "JUMP", - "path": "30" - }, - "2112": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6814, - 6847 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2113": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6861, - 6871 - ], - "op": "DUP4", - "path": "30" - }, - "2114": { - "branch": 290, - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6861, - 6871 - ], - "op": "ISZERO", - "path": "30" - }, - "2115": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "PUSH2", - "path": "30", - "value": "0x936" - }, - "2118": { - "branch": 290, - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "JUMPI", - "path": "30" - }, - "2119": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2121": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP1", - "path": "30" - }, - "2122": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "MLOAD", - "path": "30" - }, - "2123": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6941, - 6942 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1" - }, - "2125": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP1", - "path": "30" - }, - "2126": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP3", - "path": "30" - }, - "2127": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "MSTORE", - "path": "30" - }, - "2128": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP2", - "path": "30" - }, - "2129": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP4", - "path": "30" - }, - "2130": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "ADD", - "path": "30" - }, - "2131": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SWAP1", - "path": "30" - }, - "2132": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SWAP3", - "path": "30" - }, - "2133": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "MSTORE", - "path": "30" - }, - "2134": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6887, - 6917 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2136": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6887, - 6917 - ], - "op": "SWAP2", - "path": "30" - }, - "2137": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP2", - "path": "30" - }, - "2138": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2140": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "ADD", - "path": "30" - }, - "2141": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2142": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH2", - "path": "30", - "value": "0x865" - }, - "2145": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E5F" - }, - "2148": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 6920, - 6943 - ], - "op": "JUMP", - "path": "30" - }, - "2149": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2150": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP2", - "path": "30" - }, - "2151": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "MSTORE", - "path": "30" - }, - "2152": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2154": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "ADD", - "path": "30" - }, - "2155": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SWAP1", - "path": "30" - }, - "2156": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1" - }, - "2158": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SWAP1", - "path": "30" - }, - "2159": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SUB", - "path": "30" - }, - "2160": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SWAP1", - "path": "30" - }, - "2161": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "DUP2", - "path": "30" - }, - "2162": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "PUSH2", - "path": "30", - "value": "0x85D" - }, - "2165": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "JUMPI", - "path": "30" - }, - "2166": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "SWAP1", - "path": "30" - }, - "2167": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "POP", - "path": "30" - }, - "2168": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6920, - 6943 - ], - "op": "POP", - "path": "30" - }, - "2169": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6887, - 6943 - ], - "op": "SWAP1", - "path": "30" - }, - "2170": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6887, - 6943 - ], - "op": "POP", - "path": "30" - }, - "2171": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6957, - 6984 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2173": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6993 - ], - "op": "DUP2", - "path": "30" - }, - "2174": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6994, - 6995 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2176": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "DUP2", - "path": "30" - }, - "2177": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "MLOAD", - "path": "30" - }, - "2178": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "DUP2", - "path": "30" - }, - "2179": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "LT", - "path": "30" - }, - "2180": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "PUSH2", - "path": "30", - "value": "0x889" - }, - "2183": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "JUMPI", - "path": "30" - }, - "2184": { - "dev": "Index out of range", - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "INVALID", - "path": "30" - }, - "2185": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2186": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2188": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "MUL", - "path": "30" - }, - "2189": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2191": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "ADD", - "path": "30" - }, - "2192": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "ADD", - "path": "30" - }, - "2193": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6987, - 6996 - ], - "op": "MLOAD", - "path": "30" - }, - "2194": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6957, - 6996 - ], - "op": "SWAP1", - "path": "30" - }, - "2195": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6957, - 6996 - ], - "op": "POP", - "path": "30" - }, - "2196": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7065, - 7097 - ], - "op": "PUSH2", - "path": "30", - "statement": 23, - "value": "0x89C" - }, - "2199": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7094, - 7096 - ], - "op": "DUP8", - "path": "30" - }, - "2200": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7065, - 7093 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12A7" - }, - "2203": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7065, - 7097 - ], - "op": "JUMP", - "path": "30" - }, - "2204": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7065, - 7097 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2205": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7046, - 7061 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2207": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7046, - 7061 - ], - "op": "DUP5", - "path": "30" - }, - "2208": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7046, - 7061 - ], - "op": "ADD", - "path": "30" - }, - "2209": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7011, - 7097 - ], - "op": "MSTORE", - "path": "30" - }, - "2210": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7030, - 7044 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2212": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7030, - 7044 - ], - "op": "DUP4", - "path": "30" - }, - "2213": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7030, - 7044 - ], - "op": "ADD", - "path": "30" - }, - "2214": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7011, - 7097 - ], - "op": "MSTORE", - "path": "30" - }, - "2215": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7011, - 7097 - ], - "op": "DUP2", - "path": "30" - }, - "2216": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7011, - 7097 - ], - "op": "MSTORE", - "path": "30" - }, - "2217": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7204, - 7228 - ], - "op": "PUSH2", - "path": "30", - "statement": 24, - "value": "0x8B1" - }, - "2220": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7221, - 7227 - ], - "op": "DUP7", - "path": "30" - }, - "2221": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7204, - 7220 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12C4" - }, - "2224": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7204, - 7228 - ], - "op": "JUMP", - "path": "30" - }, - "2225": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7204, - 7228 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2226": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7187, - 7201 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "2228": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7187, - 7201 - ], - "op": "DUP3", - "path": "30" - }, - "2229": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7187, - 7201 - ], - "op": "ADD", - "path": "30" - }, - "2230": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7187, - 7228 - ], - "op": "MSTORE", - "path": "30" - }, - "2231": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7264, - 7280 - ], - "op": "DUP1", - "path": "30", - "statement": 25 - }, - "2232": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7264, - 7280 - ], - "op": "MLOAD", - "path": "30" - }, - "2233": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7282, - 7296 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2235": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7282, - 7296 - ], - "op": "DUP3", - "path": "30" - }, - "2236": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7282, - 7296 - ], - "op": "ADD", - "path": "30" - }, - "2237": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7282, - 7296 - ], - "op": "MLOAD", - "path": "30" - }, - "2238": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7242, - 7314 - ], - "op": "PUSH2", - "path": "30", - "value": "0x8C8" - }, - "2241": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7242, - 7314 - ], - "op": "SWAP2", - "path": "30" - }, - "2242": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7264, - 7280 - ], - "op": "SWAP1", - "path": "30" - }, - "2243": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7298, - 7313 - ], - "op": "TIMESTAMP", - "path": "30" - }, - "2244": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7242, - 7263 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12DA" - }, - "2247": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7242, - 7314 - ], - "op": "JUMP", - "path": "30" - }, - "2248": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7242, - 7314 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2249": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7393, - 7420 - ], - "op": "PUSH2", - "path": "30", - "statement": 26, - "value": "0x8D3" - }, - "2252": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7403, - 7407 - ], - "op": "DUP10", - "path": "30" - }, - "2253": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7409, - 7411 - ], - "op": "DUP10", - "path": "30" - }, - "2254": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7413, - 7419 - ], - "op": "DUP5", - "path": "30" - }, - "2255": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7393, - 7402 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDC8" - }, - "2258": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7393, - 7420 - ], - "op": "JUMP", - "path": "30" - }, - "2259": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7393, - 7420 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2260": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7360, - 7420 - ], - "op": "POP", - "path": "30" - }, - "2261": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7360, - 7420 - ], - "op": "DUP1", - "path": "30" - }, - "2262": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7360, - 7420 - ], - "op": "SWAP4", - "path": "30" - }, - "2263": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7360, - 7420 - ], - "op": "POP", - "path": "30" - }, - "2264": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7360, - 7420 - ], - "op": "POP", - "path": "30" - }, - "2265": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7473, - 7475 - ], - "op": "DUP8", - "path": "30", - "statement": 27 - }, - "2266": { - "op": "PUSH1", - "value": "0x1" - }, - "2268": { - "op": "PUSH1", - "value": "0x1" - }, - "2270": { - "op": "PUSH1", - "value": "0xA0" - }, - "2272": { - "op": "SHL" - }, - "2273": { - "op": "SUB" - }, - "2274": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "AND", - "path": "30" - }, - "2275": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7467, - 7471 - ], - "op": "DUP10", - "path": "30" - }, - "2276": { - "op": "PUSH1", - "value": "0x1" - }, - "2278": { - "op": "PUSH1", - "value": "0x1" - }, - "2280": { - "op": "PUSH1", - "value": "0xA0" - }, - "2282": { - "op": "SHL" - }, - "2283": { - "op": "SUB" - }, - "2284": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "AND", - "path": "30" - }, - "2285": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7455, - 7465 - ], - "op": "CALLER", - "path": "30" - }, - "2286": { - "op": "PUSH1", - "value": "0x1" - }, - "2288": { - "op": "PUSH1", - "value": "0x1" - }, - "2290": { - "op": "PUSH1", - "value": "0xA0" - }, - "2292": { - "op": "SHL" - }, - "2293": { - "op": "SUB" - }, - "2294": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "AND", - "path": "30" - }, - "2295": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "PUSH32", - "path": "30", - "value": "0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62" - }, - "2328": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7477, - 7479 - ], - "op": "DUP11", - "path": "30" - }, - "2329": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7481, - 7487 - ], - "op": "DUP11", - "path": "30" - }, - "2330": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2332": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "MLOAD", - "path": "30" - }, - "2333": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "PUSH2", - "path": "30", - "value": "0x927" - }, - "2336": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "SWAP3", - "path": "30" - }, - "2337": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "SWAP2", - "path": "30" - }, - "2338": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "SWAP1", - "path": "30" - }, - "2339": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "PUSH2", - "path": "30", - "value": "0x37DF" - }, - "2342": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7440, - 7488 - ], - "op": "JUMP", - "path": "30" - }, - "2343": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2344": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2346": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "MLOAD", - "path": "30" - }, - "2347": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "DUP1", - "path": "30" - }, - "2348": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "SWAP2", - "path": "30" - }, - "2349": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "SUB", - "path": "30" - }, - "2350": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "SWAP1", - "path": "30" - }, - "2351": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7440, - 7488 - ], - "op": "LOG4", - "path": "30" - }, - "2352": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "POP", - "path": "30" - }, - "2353": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "POP", - "path": "30" - }, - "2354": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "PUSH2", - "path": "30", - "value": "0x942" - }, - "2357": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "JUMP", - "path": "30" - }, - "2358": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2359": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7533, - 7578 - ], - "op": "PUSH2", - "path": "30", - "statement": 28, - "value": "0x93F" - }, - "2362": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7573, - 7577 - ], - "op": "DUP8", - "path": "30" - }, - "2363": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7533, - 7572 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA36" - }, - "2366": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7533, - 7578 - ], - "op": "JUMP", - "path": "30" - }, - "2367": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7533, - 7578 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2368": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7519, - 7578 - ], - "op": "SWAP1", - "path": "30" - }, - "2369": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7519, - 7578 - ], - "op": "POP", - "path": "30" - }, - "2370": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6857, - 7589 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2371": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7710, - 7741 - ], - "op": "PUSH2", - "path": "30", - "value": "0x94A" - }, - "2374": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7710, - 7741 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E31" - }, - "2377": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7710, - 7741 - ], - "op": "JUMP", - "path": "30" - }, - "2378": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7710, - 7741 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2379": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7751, - 7821 - ], - "op": "PUSH2", - "path": "30", - "statement": 29, - "value": "0x95A" - }, - "2382": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7775, - 7779 - ], - "op": "DUP9", - "path": "30" - }, - "2383": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7781, - 7783 - ], - "op": "DUP9", - "path": "30" - }, - "2384": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7785, - 7796 - ], - "op": "DUP5", - "path": "30" - }, - "2385": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7798, - 7807 - ], - "op": "DUP5", - "path": "30" - }, - "2386": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7809, - 7813 - ], - "op": "DUP9", - "path": "30" - }, - "2387": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7809, - 7813 - ], - "op": "DUP9", - "path": "30" - }, - "2388": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7815, - 7820 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2390": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7751, - 7774 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF68" - }, - "2393": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7751, - 7821 - ], - "op": "JUMP", - "path": "30" - }, - "2394": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7751, - 7821 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2395": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7903, - 7925 - ], - "op": "PUSH2", - "path": "30", - "value": "0x963" - }, - "2398": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7922, - 7924 - ], - "op": "DUP8", - "path": "30" - }, - "2399": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7903, - 7921 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1246" - }, - "2402": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7903, - 7925 - ], - "op": "JUMP", - "path": "30" - }, - "2403": { - "branch": 291, - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7903, - 7925 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2404": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7899, - 8142 - ], - "op": "ISZERO", - "path": "30" - }, - "2405": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7899, - 8142 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA19" - }, - "2408": { - "branch": 291, - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7899, - 8142 - ], - "op": "JUMPI", - "path": "30" - }, - "2409": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "statement": 30, - "value": "0x40" - }, - "2411": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "MLOAD", - "path": "30" - }, - "2412": { - "op": "PUSH4", - "value": "0xF23A6E61" - }, - "2417": { - "op": "PUSH1", - "value": "0xE0" - }, - "2419": { - "op": "SHL" - }, - "2420": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2421": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP3", - "path": "30" - }, - "2422": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "MSTORE", - "path": "30" - }, - "2423": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8085 - ], - "op": "SWAP1", - "path": "30" - }, - "2424": { - "op": "PUSH1", - "value": "0x1" - }, - "2426": { - "op": "PUSH1", - "value": "0x1" - }, - "2428": { - "op": "PUSH1", - "value": "0xA0" - }, - "2430": { - "op": "SHL" - }, - "2431": { - "op": "SUB" - }, - "2432": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8009 - ], - "op": "DUP10", - "path": "30" - }, - "2433": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8009 - ], - "op": "AND", - "path": "30" - }, - "2434": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8009 - ], - "op": "SWAP1", - "path": "30" - }, - "2435": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8009 - ], - "op": "PUSH4", - "path": "30", - "value": "0xF23A6E61" - }, - "2440": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8009 - ], - "op": "SWAP1", - "path": "30" - }, - "2441": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH2", - "path": "30", - "value": "0x9A0" - }, - "2444": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "SWAP1", - "path": "30" - }, - "2445": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8010, - 8020 - ], - "op": "CALLER", - "path": "30" - }, - "2446": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8010, - 8020 - ], - "op": "SWAP1", - "path": "30" - }, - "2447": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8022, - 8026 - ], - "op": "DUP14", - "path": "30" - }, - "2448": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8022, - 8026 - ], - "op": "SWAP1", - "path": "30" - }, - "2449": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8028, - 8030 - ], - "op": "DUP13", - "path": "30" - }, - "2450": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8028, - 8030 - ], - "op": "SWAP1", - "path": "30" - }, - "2451": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8032, - 8038 - ], - "op": "DUP13", - "path": "30" - }, - "2452": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8032, - 8038 - ], - "op": "SWAP1", - "path": "30" - }, - "2453": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8040, - 8044 - ], - "op": "DUP13", - "path": "30" - }, - "2454": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8040, - 8044 - ], - "op": "SWAP1", - "path": "30" - }, - "2455": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8040, - 8044 - ], - "op": "DUP13", - "path": "30" - }, - "2456": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 8040, - 8044 - ], - "op": "SWAP1", - "path": "30" - }, - "2457": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "2459": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ADD", - "path": "30" - }, - "2460": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH2", - "path": "30", - "value": "0x346C" - }, - "2463": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7966, - 8045 - ], - "op": "JUMP", - "path": "30" - }, - "2464": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2465": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2467": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2469": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "MLOAD", - "path": "30" - }, - "2470": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2471": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP4", - "path": "30" - }, - "2472": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "SUB", - "path": "30" - }, - "2473": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP2", - "path": "30" - }, - "2474": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2476": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP8", - "path": "30" - }, - "2477": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2478": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "EXTCODESIZE", - "path": "30" - }, - "2479": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ISZERO", - "path": "30" - }, - "2480": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2481": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ISZERO", - "path": "30" - }, - "2482": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH2", - "path": "30", - "value": "0x9BA" - }, - "2485": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "JUMPI", - "path": "30" - }, - "2486": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2488": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2489": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "REVERT", - "path": "30" - }, - "2490": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2491": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "POP", - "path": "30" - }, - "2492": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "GAS", - "path": "30" - }, - "2493": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "CALL", - "path": "30" - }, - "2494": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ISZERO", - "path": "30" - }, - "2495": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2496": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ISZERO", - "path": "30" - }, - "2497": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH2", - "path": "30", - "value": "0x9CE" - }, - "2500": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "JUMPI", - "path": "30" - }, - "2501": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "2502": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2504": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2505": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "2506": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "2507": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2509": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "REVERT", - "path": "30" - }, - "2510": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2511": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "POP", - "path": "30" - }, - "2512": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "POP", - "path": "30" - }, - "2513": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "POP", - "path": "30" - }, - "2514": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "POP", - "path": "30" - }, - "2515": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2517": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "MLOAD", - "path": "30" - }, - "2518": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "2519": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "2521": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "NOT", - "path": "30" - }, - "2522": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "2524": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP3", - "path": "30" - }, - "2525": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ADD", - "path": "30" - }, - "2526": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "AND", - "path": "30" - }, - "2527": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP3", - "path": "30" - }, - "2528": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ADD", - "path": "30" - }, - "2529": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP1", - "path": "30" - }, - "2530": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2532": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "MSTORE", - "path": "30" - }, - "2533": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "POP", - "path": "30" - }, - "2534": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "DUP2", - "path": "30" - }, - "2535": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "ADD", - "path": "30" - }, - "2536": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "SWAP1", - "path": "30" - }, - "2537": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH2", - "path": "30", - "value": "0x9F2" - }, - "2540": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "SWAP2", - "path": "30" - }, - "2541": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "SWAP1", - "path": "30" - }, - "2542": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "PUSH2", - "path": "30", - "value": "0x31F4" - }, - "2545": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7966, - 8045 - ], - "op": "JUMP", - "path": "30" - }, - "2546": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8045 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2547": { - "op": "PUSH1", - "value": "0x1" - }, - "2549": { - "op": "PUSH1", - "value": "0x1" - }, - "2551": { - "op": "PUSH1", - "value": "0xE0" - }, - "2553": { - "op": "SHL" - }, - "2554": { - "op": "SUB" - }, - "2555": { - "op": "NOT" - }, - "2556": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8085 - ], - "op": "AND", - "path": "30" - }, - "2557": { - "branch": 292, - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7966, - 8085 - ], - "op": "EQ", - "path": "30" - }, - "2558": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA19" - }, - "2561": { - "branch": 292, - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "JUMPI", - "path": "30" - }, - "2562": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2564": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "MLOAD", - "path": "30" - }, - "2565": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "2569": { - "op": "PUSH1", - "value": "0xE5" - }, - "2571": { - "op": "SHL" - }, - "2572": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "DUP2", - "path": "30" - }, - "2573": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "MSTORE", - "path": "30" - }, - "2574": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "2576": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "ADD", - "path": "30" - }, - "2577": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "2580": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "SWAP1", - "path": "30" - }, - "2581": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "PUSH2", - "path": "30", - "value": "0x37B9" - }, - "2584": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "i", - "offset": [ - 7941, - 8131 - ], - "op": "JUMP", - "path": "30" - }, - "2585": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 7941, - 8131 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2586": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2587": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2588": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2589": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2590": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2591": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2592": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2593": { - "fn": "ERC1155Action.safeTransferFrom", - "offset": [ - 6229, - 8148 - ], - "op": "POP", - "path": "30" - }, - "2594": { - "fn": "ERC1155Action.safeTransferFrom", - "jump": "o", - "offset": [ - 6229, - 8148 - ], - "op": "JUMP", - "path": "30" - }, - "2595": { - "fn": "SafeInt256.toUint", - "offset": [ - 2397, - 2514 - ], - "op": "JUMPDEST", - "path": "94" - }, - "2596": { - "fn": "SafeInt256.toUint", - "offset": [ - 2446, - 2453 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "2598": { - "fn": "SafeInt256.toUint", - "offset": [ - 2478, - 2479 - ], - "op": "DUP1", - "path": "94", - "statement": 31 - }, - "2599": { - "fn": "SafeInt256.toUint", - "offset": [ - 2473, - 2474 - ], - "op": "DUP3", - "path": "94" - }, - "2600": { - "fn": "SafeInt256.toUint", - "offset": [ - 2473, - 2479 - ], - "op": "SLT", - "path": "94" - }, - "2601": { - "branch": 436, - "fn": "SafeInt256.toUint", - "offset": [ - 2473, - 2479 - ], - "op": "ISZERO", - "path": "94" - }, - "2602": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "PUSH2", - "path": "94", - "value": "0xA32" - }, - "2605": { - "branch": 436, - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "JUMPI", - "path": "94" - }, - "2606": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "2608": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "DUP1", - "path": "94" - }, - "2609": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "REVERT", - "path": "94" - }, - "2610": { - "fn": "SafeInt256.toUint", - "offset": [ - 2465, - 2480 - ], - "op": "JUMPDEST", - "path": "94" - }, - "2611": { - "op": "POP" - }, - "2612": { - "fn": "SafeInt256.toUint", - "offset": [ - 2505, - 2506 - ], - "op": "SWAP1", - "path": "94", - "statement": 32 - }, - "2613": { - "fn": "SafeInt256.toUint", - "jump": "o", - "offset": [ - 2397, - 2514 - ], - "op": "JUMP", - "path": "94" - }, - "2614": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 552, - 771 - ], - "op": "JUMPDEST", - "path": "66" - }, - "2615": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 619, - 640 - ], - "op": "PUSH2", - "path": "66", - "value": "0xA3E" - }, - "2618": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 619, - 640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2E31" - }, - "2621": { - "fn": "AccountContextHandler.getAccountContext", - "jump": "i", - "offset": [ - 619, - 640 - ], - "op": "JUMP", - "path": "66" - }, - "2622": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 619, - 640 - ], - "op": "JUMPDEST", - "path": "66" - }, - "2623": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 652, - 700 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "2625": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 703, - 733 - ], - "op": "PUSH2", - "path": "66", - "value": "0xA48" - }, - "2628": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 703, - 731 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1311" - }, - "2631": { - "fn": "AccountContextHandler.getAccountContext", - "jump": "i", - "offset": [ - 703, - 733 - ], - "op": "JUMP", - "path": "66" - }, - "2632": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 703, - 733 - ], - "op": "JUMPDEST", - "path": "66" - }, - "2633": { - "op": "PUSH1", - "value": "0x1" - }, - "2635": { - "op": "PUSH1", - "value": "0x1" - }, - "2637": { - "op": "PUSH1", - "value": "0xA0" - }, - "2639": { - "op": "SHL" - }, - "2640": { - "op": "SUB" - }, - "2641": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP4", - "path": "66", - "statement": 33 - }, - "2642": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2643": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP4", - "path": "66" - }, - "2644": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "AND", - "path": "66" - }, - "2645": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "2647": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2648": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2649": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2650": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x20" - }, - "2652": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP4", - "path": "66" - }, - "2653": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "DUP5", - "path": "66" - }, - "2654": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2655": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x40" - }, - "2657": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2658": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2659": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2660": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 750, - 764 - ], - "op": "KECCAK256", - "path": "66" - }, - "2661": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2662": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MLOAD", - "path": "66" - }, - "2663": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0xA0" - }, - "2665": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2666": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "2667": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP4", - "path": "66" - }, - "2668": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2669": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2670": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SLOAD", - "path": "66" - }, - "2671": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "2677": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2678": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "2679": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP3", - "path": "66" - }, - "2680": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2681": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH6", - "path": "66", - "value": "0x10000000000" - }, - "2688": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2689": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "2690": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF8" - }, - "2692": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SHL", - "path": "66" - }, - "2693": { - "op": "PUSH1", - "value": "0x1" - }, - "2695": { - "op": "PUSH1", - "value": "0x1" - }, - "2697": { - "op": "PUSH1", - "value": "0xF8" - }, - "2699": { - "op": "SHL" - }, - "2700": { - "op": "SUB" - }, - "2701": { - "op": "NOT" - }, - "2702": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "2703": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP6", - "path": "66" - }, - "2704": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP3", - "path": "66" - }, - "2705": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "2706": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP6", - "path": "66" - }, - "2707": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2708": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP6", - "path": "66" - }, - "2709": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2710": { - "op": "PUSH1", - "value": "0x1" - }, - "2712": { - "op": "PUSH1", - "value": "0x30" - }, - "2714": { - "op": "SHL" - }, - "2715": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP6", - "path": "66" - }, - "2716": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "2717": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0xFF" - }, - "2719": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "2720": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "2721": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP2", - "path": "66" - }, - "2722": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "2723": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "2724": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2725": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "2726": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2727": { - "op": "PUSH1", - "value": "0x1" - }, - "2729": { - "op": "PUSH1", - "value": "0x38" - }, - "2731": { - "op": "SHL" - }, - "2732": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP5", - "path": "66" - }, - "2733": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "2734": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "2737": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "2738": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "2740": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP3", - "path": "66" - }, - "2741": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "2742": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2743": { - "op": "PUSH1", - "value": "0x1" - }, - "2745": { - "op": "PUSH1", - "value": "0x48" - }, - "2747": { - "op": "SHL" - }, - "2748": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2749": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP4", - "path": "66" - }, - "2750": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DIV", - "path": "66" - }, - "2751": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x70" - }, - "2753": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SHL", - "path": "66" - }, - "2754": { - "op": "PUSH1", - "value": "0x1" - }, - "2756": { - "op": "PUSH1", - "value": "0x1" - }, - "2758": { - "op": "PUSH1", - "value": "0x70" - }, - "2760": { - "op": "SHL" - }, - "2761": { - "op": "SUB" - }, - "2762": { - "op": "NOT" - }, - "2763": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "AND", - "path": "66" - }, - "2764": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "2766": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "DUP5", - "path": "66" - }, - "2767": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "ADD", - "path": "66" - }, - "2768": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "MSTORE", - "path": "66" - }, - "2769": { - "op": "POP" - }, - "2770": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP1", - "path": "66" - }, - "2771": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 743, - 764 - ], - "op": "SWAP2", - "path": "66" - }, - "2772": { - "fn": "AccountContextHandler.getAccountContext", - "offset": [ - 552, - 771 - ], - "op": "SWAP1", - "path": "66" - }, - "2773": { - "op": "POP" - }, - "2774": { - "fn": "AccountContextHandler.getAccountContext", - "jump": "o", - "offset": [ - 552, - 771 - ], - "op": "JUMP", - "path": "66" - }, - "2775": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1117, - 1269 - ], - "op": "JUMPDEST", - "path": "66" - }, - "2776": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1257 - ], - "op": "PUSH1", - "path": "66", - "statement": 34, - "value": "0x60" - }, - "2778": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1257 - ], - "op": "ADD", - "path": "66" - }, - "2779": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1257 - ], - "op": "MLOAD", - "path": "66" - }, - "2780": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "2783": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "AND", - "path": "66" - }, - "2784": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "ISZERO", - "path": "66" - }, - "2785": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "ISZERO", - "path": "66" - }, - "2786": { - "fn": "AccountContextHandler.isBitmapEnabled", - "offset": [ - 1226, - 1262 - ], - "op": "SWAP1", - "path": "66" - }, - "2787": { - "fn": "AccountContextHandler.isBitmapEnabled", - "jump": "o", - "offset": [ - 1117, - 1269 - ], - "op": "JUMP", - "path": "66" - }, - "2788": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4343, - 4920 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2789": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4477, - 4483 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2791": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4496, - 4514 - ], - "op": "DUP1", - "path": "30" - }, - "2792": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4516, - 4532 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2794": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4534, - 4551 - ], - "op": "DUP1", - "path": "30" - }, - "2795": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4555, - 4587 - ], - "op": "PUSH2", - "path": "30", - "value": "0xAF3" - }, - "2798": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4584, - 4586 - ], - "op": "DUP6", - "path": "30" - }, - "2799": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4555, - 4583 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12A7" - }, - "2802": { - "fn": "ERC1155Action._balanceInBitmap", - "jump": "i", - "offset": [ - 4555, - 4587 - ], - "op": "JUMP", - "path": "30" - }, - "2803": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4555, - 4587 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2804": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4495, - 4587 - ], - "op": "SWAP3", - "path": "30" - }, - "2805": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4495, - 4587 - ], - "op": "POP", - "path": "30" - }, - "2806": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4495, - 4587 - ], - "op": "SWAP3", - "path": "30" - }, - "2807": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4495, - 4587 - ], - "op": "POP", - "path": "30" - }, - "2808": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4495, - 4587 - ], - "op": "SWAP3", - "path": "30" - }, - "2809": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4495, - 4587 - ], - "op": "POP", - "path": "30" - }, - "2810": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4629, - 4645 - ], - "op": "DUP6", - "path": "30" - }, - "2811": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4625 - ], - "op": "DUP4", - "path": "30" - }, - "2812": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4645 - ], - "op": "EQ", - "path": "30" - }, - "2813": { - "branch": 293, - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4645 - ], - "op": "ISZERO", - "path": "30" - }, - "2814": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4700 - ], - "op": "DUP1", - "path": "30" - }, - "2815": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4700 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB09" - }, - "2818": { - "branch": 293, - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4700 - ], - "op": "JUMPI", - "path": "30" - }, - "2819": { - "op": "POP" - }, - "2820": { - "offset": [ - 4700, - 4701 - ], - "op": "PUSH1", - "path": "60", - "value": "0x1" - }, - "2822": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4661, - 4700 - ], - "op": "DUP2", - "path": "30" - }, - "2823": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4661, - 4700 - ], - "op": "EQ", - "path": "30" - }, - "2824": { - "branch": 294, - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4661, - 4700 - ], - "op": "ISZERO", - "path": "30" - }, - "2825": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4615, - 4700 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2826": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4598, - 4914 - ], - "op": "ISZERO", - "path": "30" - }, - "2827": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4598, - 4914 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB1A" - }, - "2830": { - "branch": 294, - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4598, - 4914 - ], - "op": "JUMPI", - "path": "30" - }, - "2831": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4796, - 4797 - ], - "op": "PUSH1", - "path": "30", - "statement": 35, - "value": "0x0" - }, - "2833": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "SWAP4", - "path": "30" - }, - "2834": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "POP", - "path": "30" - }, - "2835": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "POP", - "path": "30" - }, - "2836": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "POP", - "path": "30" - }, - "2837": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "POP", - "path": "30" - }, - "2838": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "PUSH2", - "path": "30", - "value": "0x653" - }, - "2841": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4789, - 4797 - ], - "op": "JUMP", - "path": "30" - }, - "2842": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4598, - 4914 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2843": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4835, - 4903 - ], - "op": "PUSH2", - "path": "30", - "statement": 36, - "value": "0xB25" - }, - "2846": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4873, - 4880 - ], - "op": "DUP8", - "path": "30" - }, - "2847": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4882, - 4892 - ], - "op": "DUP5", - "path": "30" - }, - "2848": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4894, - 4902 - ], - "op": "DUP5", - "path": "30" - }, - "2849": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4835, - 4872 - ], - "op": "PUSH2", - "path": "30", - "value": "0x131E" - }, - "2852": { - "fn": "ERC1155Action._balanceInBitmap", - "jump": "i", - "offset": [ - 4835, - 4903 - ], - "op": "JUMP", - "path": "30" - }, - "2853": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4835, - 4903 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2854": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "SWAP4", - "path": "30" - }, - "2855": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "POP", - "path": "30" - }, - "2856": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "POP", - "path": "30" - }, - "2857": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "POP", - "path": "30" - }, - "2858": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "POP", - "path": "30" - }, - "2859": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "PUSH2", - "path": "30", - "value": "0x653" - }, - "2862": { - "fn": "ERC1155Action._balanceInBitmap", - "offset": [ - 4828, - 4903 - ], - "op": "JUMP", - "path": "30" - }, - "2863": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14791, - 15176 - ], - "op": "JUMPDEST", - "path": "84" - }, - "2864": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14907, - 14930 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "2866": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14946, - 14976 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "2868": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14979, - 15021 - ], - "op": "PUSH2", - "path": "84", - "value": "0xB3D" - }, - "2871": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14995, - 15002 - ], - "op": "DUP5", - "path": "84" - }, - "2872": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15004, - 15020 - ], - "op": "DUP5", - "path": "84" - }, - "2873": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14979, - 14994 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1363" - }, - "2876": { - "fn": "PortfolioHandler.getSortedPortfolio", - "jump": "i", - "offset": [ - 14979, - 15021 - ], - "op": "JUMP", - "path": "84" - }, - "2877": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14979, - 15021 - ], - "op": "JUMPDEST", - "path": "84" - }, - "2878": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14946, - 15021 - ], - "op": "SWAP1", - "path": "84" - }, - "2879": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 14946, - 15021 - ], - "op": "POP", - "path": "84" - }, - "2880": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15099, - 15100 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "2882": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15082, - 15088 - ], - "op": "DUP2", - "path": "84" - }, - "2883": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15082, - 15095 - ], - "op": "MLOAD", - "path": "84" - }, - "2884": { - "branch": 386, - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15082, - 15100 - ], - "op": "GT", - "path": "84" - }, - "2885": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15078, - 15115 - ], - "op": "PUSH2", - "path": "84", - "value": "0xB4F" - }, - "2888": { - "branch": 386, - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15078, - 15115 - ], - "op": "JUMPI", - "path": "84" - }, - "2889": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15109, - 15115 - ], - "op": "SWAP1", - "path": "84", - "statement": 37 - }, - "2890": { - "op": "POP" - }, - "2891": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15102, - 15115 - ], - "op": "PUSH2", - "path": "84", - "value": "0x30C" - }, - "2894": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15102, - 15115 - ], - "op": "JUMP", - "path": "84" - }, - "2895": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15078, - 15115 - ], - "op": "JUMPDEST", - "path": "84" - }, - "2896": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15126, - 15146 - ], - "op": "PUSH2", - "path": "84", - "statement": 38, - "value": "0x653" - }, - "2899": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15139, - 15145 - ], - "op": "DUP2", - "path": "84" - }, - "2900": { - "fn": "PortfolioHandler.getSortedPortfolio", - "offset": [ - 15126, - 15138 - ], - "op": "PUSH2", - "path": "84", - "value": "0x147A" - }, - "2903": { - "fn": "PortfolioHandler.getSortedPortfolio", - "jump": "i", - "offset": [ - 15126, - 15146 - ], - "op": "JUMP", - "path": "84" - }, - "2904": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2905": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5099, - 5105 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2907": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5122, - 5140 - ], - "op": "DUP1", - "path": "30" - }, - "2908": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5142, - 5158 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2910": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5160, - 5177 - ], - "op": "DUP1", - "path": "30" - }, - "2911": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5181, - 5213 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB67" - }, - "2914": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5210, - 5212 - ], - "op": "DUP6", - "path": "30" - }, - "2915": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5181, - 5209 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12A7" - }, - "2918": { - "fn": "ERC1155Action._balanceInArray", - "jump": "i", - "offset": [ - 5181, - 5213 - ], - "op": "JUMP", - "path": "30" - }, - "2919": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5181, - 5213 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2920": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5121, - 5213 - ], - "op": "SWAP3", - "path": "30" - }, - "2921": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5121, - 5213 - ], - "op": "POP", - "path": "30" - }, - "2922": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5121, - 5213 - ], - "op": "SWAP3", - "path": "30" - }, - "2923": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5121, - 5213 - ], - "op": "POP", - "path": "30" - }, - "2924": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5121, - 5213 - ], - "op": "SWAP3", - "path": "30" - }, - "2925": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5121, - 5213 - ], - "op": "POP", - "path": "30" - }, - "2926": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5229, - 5238 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2928": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2929": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5244, - 5253 - ], - "op": "DUP7", - "path": "30" - }, - "2930": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5244, - 5260 - ], - "op": "MLOAD", - "path": "30" - }, - "2931": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5240, - 5241 - ], - "op": "DUP2", - "path": "30" - }, - "2932": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5240, - 5260 - ], - "op": "LT", - "path": "30" - }, - "2933": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "ISZERO", - "path": "30" - }, - "2934": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "PUSH2", - "path": "30", - "value": "0xBD4" - }, - "2937": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "JUMPI", - "path": "30" - }, - "2938": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5281, - 5308 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2940": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5320 - ], - "op": "DUP8", - "path": "30" - }, - "2941": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5321, - 5322 - ], - "op": "DUP3", - "path": "30" - }, - "2942": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "DUP2", - "path": "30" - }, - "2943": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "MLOAD", - "path": "30" - }, - "2944": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "DUP2", - "path": "30" - }, - "2945": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "LT", - "path": "30" - }, - "2946": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB87" - }, - "2949": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "JUMPI", - "path": "30" - }, - "2950": { - "dev": "Index out of range", - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "INVALID", - "path": "30" - }, - "2951": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2952": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2954": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "MUL", - "path": "30" - }, - "2955": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2957": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "ADD", - "path": "30" - }, - "2958": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "ADD", - "path": "30" - }, - "2959": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5311, - 5323 - ], - "op": "MLOAD", - "path": "30" - }, - "2960": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5281, - 5323 - ], - "op": "SWAP1", - "path": "30" - }, - "2961": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5281, - 5323 - ], - "op": "POP", - "path": "30" - }, - "2962": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5378, - 5388 - ], - "op": "DUP5", - "path": "30" - }, - "2963": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5363 - ], - "op": "DUP2", - "path": "30" - }, - "2964": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5374 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "2966": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5374 - ], - "op": "ADD", - "path": "30" - }, - "2967": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5374 - ], - "op": "MLOAD", - "path": "30" - }, - "2968": { - "branch": 295, - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5388 - ], - "op": "EQ", - "path": "30" - }, - "2969": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5434 - ], - "op": "DUP1", - "path": "30" - }, - "2970": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5434 - ], - "op": "ISZERO", - "path": "30" - }, - "2971": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5434 - ], - "op": "PUSH2", - "path": "30", - "value": "0xBA7" - }, - "2974": { - "branch": 295, - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5434 - ], - "op": "JUMPI", - "path": "30" - }, - "2975": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5434 - ], - "op": "POP", - "path": "30" - }, - "2976": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5426, - 5434 - ], - "op": "DUP4", - "path": "30" - }, - "2977": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5408, - 5413 - ], - "op": "DUP2", - "path": "30" - }, - "2978": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5408, - 5422 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "2980": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5408, - 5422 - ], - "op": "ADD", - "path": "30" - }, - "2981": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5408, - 5422 - ], - "op": "MLOAD", - "path": "30" - }, - "2982": { - "branch": 296, - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5408, - 5434 - ], - "op": "EQ", - "path": "30" - }, - "2983": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5434 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2984": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5482 - ], - "op": "DUP1", - "path": "30" - }, - "2985": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5482 - ], - "op": "ISZERO", - "path": "30" - }, - "2986": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5482 - ], - "op": "PUSH2", - "path": "30", - "value": "0xBB6" - }, - "2989": { - "branch": 296, - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5482 - ], - "op": "JUMPI", - "path": "30" - }, - "2990": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5482 - ], - "op": "POP", - "path": "30" - }, - "2991": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5473, - 5482 - ], - "op": "DUP3", - "path": "30" - }, - "2992": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5454, - 5459 - ], - "op": "DUP2", - "path": "30" - }, - "2993": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5454, - 5469 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "2995": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5454, - 5469 - ], - "op": "ADD", - "path": "30" - }, - "2996": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5454, - 5469 - ], - "op": "MLOAD", - "path": "30" - }, - "2997": { - "branch": 297, - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5454, - 5482 - ], - "op": "EQ", - "path": "30" - }, - "2998": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5358, - 5482 - ], - "op": "JUMPDEST", - "path": "30" - }, - "2999": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5337, - 5518 - ], - "op": "ISZERO", - "path": "30" - }, - "3000": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5337, - 5518 - ], - "op": "PUSH2", - "path": "30", - "value": "0xBCB" - }, - "3003": { - "branch": 297, - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5337, - 5518 - ], - "op": "JUMPI", - "path": "30" - }, - "3004": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5504, - 5518 - ], - "op": "PUSH1", - "path": "30", - "statement": 39, - "value": "0x60" - }, - "3006": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5504, - 5518 - ], - "op": "ADD", - "path": "30" - }, - "3007": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5504, - 5518 - ], - "op": "MLOAD", - "path": "30" - }, - "3008": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5504, - 5518 - ], - "op": "SWAP5", - "path": "30" - }, - "3009": { - "op": "POP" - }, - "3010": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5497, - 5518 - ], - "op": "PUSH2", - "path": "30", - "value": "0x30C" - }, - "3013": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5497, - 5518 - ], - "op": "SWAP4", - "path": "30" - }, - "3014": { - "op": "POP" - }, - "3015": { - "op": "POP" - }, - "3016": { - "op": "POP" - }, - "3017": { - "op": "POP" - }, - "3018": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5497, - 5518 - ], - "op": "JUMP", - "path": "30" - }, - "3019": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5337, - 5518 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3020": { - "op": "POP" - }, - "3021": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5262, - 5265 - ], - "op": "PUSH1", - "path": "30", - "statement": 40, - "value": "0x1" - }, - "3023": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5262, - 5265 - ], - "op": "ADD", - "path": "30" - }, - "3024": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "PUSH2", - "path": "30", - "value": "0xB70" - }, - "3027": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "JUMP", - "path": "30" - }, - "3028": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3029": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 5224, - 5529 - ], - "op": "POP", - "path": "30" - }, - "3030": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "POP", - "path": "30" - }, - "3031": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "POP", - "path": "30" - }, - "3032": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "POP", - "path": "30" - }, - "3033": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "SWAP3", - "path": "30" - }, - "3034": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "SWAP2", - "path": "30" - }, - "3035": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "POP", - "path": "30" - }, - "3036": { - "fn": "ERC1155Action._balanceInArray", - "offset": [ - 4980, - 5535 - ], - "op": "POP", - "path": "30" - }, - "3037": { - "fn": "ERC1155Action._balanceInArray", - "jump": "o", - "offset": [ - 4980, - 5535 - ], - "op": "JUMP", - "path": "30" - }, - "3038": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10399, - 11041 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3039": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10559, - 10561 - ], - "op": "DUP1", - "path": "30", - "statement": 41 - }, - "3040": { - "op": "PUSH1", - "value": "0x1" - }, - "3042": { - "op": "PUSH1", - "value": "0x1" - }, - "3044": { - "op": "PUSH1", - "value": "0xA0" - }, - "3046": { - "op": "SHL" - }, - "3047": { - "op": "SUB" - }, - "3048": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10561 - ], - "op": "AND", - "path": "30" - }, - "3049": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10555 - ], - "op": "DUP3", - "path": "30" - }, - "3050": { - "op": "PUSH1", - "value": "0x1" - }, - "3052": { - "op": "PUSH1", - "value": "0x1" - }, - "3054": { - "op": "PUSH1", - "value": "0xA0" - }, - "3056": { - "op": "SHL" - }, - "3057": { - "op": "SUB" - }, - "3058": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10561 - ], - "op": "AND", - "path": "30" - }, - "3059": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10561 - ], - "op": "EQ", - "path": "30" - }, - "3060": { - "branch": 298, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10561 - ], - "op": "ISZERO", - "path": "30" - }, - "3061": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10581 - ], - "op": "DUP1", - "path": "30" - }, - "3062": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10581 - ], - "op": "ISZERO", - "path": "30" - }, - "3063": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10581 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC08" - }, - "3066": { - "branch": 298, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10581 - ], - "op": "JUMPI", - "path": "30" - }, - "3067": { - "op": "POP" - }, - "3068": { - "op": "PUSH1", - "value": "0x1" - }, - "3070": { - "op": "PUSH1", - "value": "0x1" - }, - "3072": { - "op": "PUSH1", - "value": "0xA0" - }, - "3074": { - "op": "SHL" - }, - "3075": { - "op": "SUB" - }, - "3076": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10565, - 10581 - ], - "op": "DUP2", - "path": "30" - }, - "3077": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10565, - 10581 - ], - "op": "AND", - "path": "30" - }, - "3078": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10565, - 10581 - ], - "op": "ISZERO", - "path": "30" - }, - "3079": { - "branch": 299, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10565, - 10581 - ], - "op": "ISZERO", - "path": "30" - }, - "3080": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10581 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3081": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10604 - ], - "op": "DUP1", - "path": "30" - }, - "3082": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10604 - ], - "op": "ISZERO", - "path": "30" - }, - "3083": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10604 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC1D" - }, - "3086": { - "branch": 299, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10604 - ], - "op": "JUMPI", - "path": "30" - }, - "3087": { - "op": "POP" - }, - "3088": { - "op": "PUSH1", - "value": "0x1" - }, - "3090": { - "op": "PUSH1", - "value": "0x1" - }, - "3092": { - "op": "PUSH1", - "value": "0xA0" - }, - "3094": { - "op": "SHL" - }, - "3095": { - "op": "SUB" - }, - "3096": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10585, - 10604 - ], - "op": "DUP2", - "path": "30" - }, - "3097": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10585, - 10604 - ], - "op": "AND", - "path": "30" - }, - "3098": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10599, - 10603 - ], - "op": "ADDRESS", - "path": "30" - }, - "3099": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10585, - 10604 - ], - "op": "EQ", - "path": "30" - }, - "3100": { - "branch": 300, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10585, - 10604 - ], - "op": "ISZERO", - "path": "30" - }, - "3101": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10551, - 10604 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3102": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC39" - }, - "3105": { - "branch": 300, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "JUMPI", - "path": "30" - }, - "3106": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3108": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "MLOAD", - "path": "30" - }, - "3109": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "3113": { - "op": "PUSH1", - "value": "0xE5" - }, - "3115": { - "op": "SHL" - }, - "3116": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "DUP2", - "path": "30" - }, - "3117": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "MSTORE", - "path": "30" - }, - "3118": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "3120": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "ADD", - "path": "30" - }, - "3121": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "3124": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "SWAP1", - "path": "30" - }, - "3125": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "PUSH2", - "path": "30", - "value": "0x366C" - }, - "3128": { - "fn": "ERC1155Action._validateAccounts", - "jump": "i", - "offset": [ - 10543, - 10624 - ], - "op": "JUMP", - "path": "30" - }, - "3129": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10543, - 10624 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3130": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10687 - ], - "op": "CALLER", - "path": "30", - "statement": 42 - }, - "3131": { - "op": "PUSH1", - "value": "0x1" - }, - "3133": { - "op": "PUSH1", - "value": "0x1" - }, - "3135": { - "op": "PUSH1", - "value": "0xA0" - }, - "3137": { - "op": "SHL" - }, - "3138": { - "op": "SUB" - }, - "3139": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10695 - ], - "op": "DUP4", - "path": "30" - }, - "3140": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10695 - ], - "op": "AND", - "path": "30" - }, - "3141": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10695 - ], - "op": "EQ", - "path": "30" - }, - "3142": { - "branch": 301, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10695 - ], - "op": "DUP1", - "path": "30" - }, - "3143": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10733 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC55" - }, - "3146": { - "branch": 301, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10733 - ], - "op": "JUMPI", - "path": "30" - }, - "3147": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10677, - 10733 - ], - "op": "POP", - "path": "30" - }, - "3148": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10699, - 10733 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC55" - }, - "3151": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10716, - 10720 - ], - "op": "DUP3", - "path": "30" - }, - "3152": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10722, - 10732 - ], - "op": "CALLER", - "path": "30" - }, - "3153": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10699, - 10715 - ], - "op": "PUSH2", - "path": "30", - "value": "0x7D6" - }, - "3156": { - "fn": "ERC1155Action._validateAccounts", - "jump": "i", - "offset": [ - 10699, - 10733 - ], - "op": "JUMP", - "path": "30" - }, - "3157": { - "branch": 302, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10699, - 10733 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3158": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC71" - }, - "3161": { - "branch": 302, - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "JUMPI", - "path": "30" - }, - "3162": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3164": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "MLOAD", - "path": "30" - }, - "3165": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "3169": { - "op": "PUSH1", - "value": "0xE5" - }, - "3171": { - "op": "SHL" - }, - "3172": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "DUP2", - "path": "30" - }, - "3173": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "MSTORE", - "path": "30" - }, - "3174": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "3176": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "ADD", - "path": "30" - }, - "3177": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "3180": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "SWAP1", - "path": "30" - }, - "3181": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "PUSH2", - "path": "30", - "value": "0x36C0" - }, - "3184": { - "fn": "ERC1155Action._validateAccounts", - "jump": "i", - "offset": [ - 10669, - 10750 - ], - "op": "JUMP", - "path": "30" - }, - "3185": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10669, - 10750 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3186": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 11009, - 11034 - ], - "op": "PUSH2", - "path": "30", - "statement": 43, - "value": "0xC7A" - }, - "3189": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 11029, - 11033 - ], - "op": "DUP3", - "path": "30" - }, - "3190": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 11009, - 11028 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1638" - }, - "3193": { - "fn": "ERC1155Action._validateAccounts", - "jump": "i", - "offset": [ - 11009, - 11034 - ], - "op": "JUMP", - "path": "30" - }, - "3194": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 11009, - 11034 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3195": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10399, - 11041 - ], - "op": "POP", - "path": "30" - }, - "3196": { - "fn": "ERC1155Action._validateAccounts", - "offset": [ - 10399, - 11041 - ], - "op": "POP", - "path": "30" - }, - "3197": { - "fn": "ERC1155Action._validateAccounts", - "jump": "o", - "offset": [ - 10399, - 11041 - ], - "op": "JUMP", - "path": "30" - }, - "3198": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11558, - 13080 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3199": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11682, - 11705 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "3201": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11707, - 11711 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3203": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11735, - 11763 - ], - "op": "DUP5", - "path": "30", - "statement": 44 - }, - "3204": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11735, - 11763 - ], - "op": "DUP4", - "path": "30" - }, - "3205": { - "branch": 303, - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11735, - 11763 - ], - "op": "EQ", - "path": "30" - }, - "3206": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11727, - 11764 - ], - "op": "PUSH2", - "path": "30", - "value": "0xC8E" - }, - "3209": { - "branch": 303, - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11727, - 11764 - ], - "op": "JUMPI", - "path": "30" - }, - "3210": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11727, - 11764 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3212": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11727, - 11764 - ], - "op": "DUP1", - "path": "30" - }, - "3213": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11727, - 11764 - ], - "op": "REVERT", - "path": "30" - }, - "3214": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11727, - 11764 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3215": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11774, - 11797 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3217": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11774, - 11797 - ], - "op": "DUP1", - "path": "30" - }, - "3218": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11869, - 11872 - ], - "op": "DUP7", - "path": "30" - }, - "3219": { - "op": "PUSH1", - "value": "0x1" - }, - "3221": { - "op": "PUSH1", - "value": "0x1" - }, - "3223": { - "op": "PUSH1", - "value": "0x40" - }, - "3225": { - "op": "SHL" - }, - "3226": { - "op": "SUB" - }, - "3227": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP2", - "path": "30" - }, - "3228": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "GT", - "path": "30" - }, - "3229": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP1", - "path": "30" - }, - "3230": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "ISZERO", - "path": "30" - }, - "3231": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH2", - "path": "30", - "value": "0xCA7" - }, - "3234": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPI", - "path": "30" - }, - "3235": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3237": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP1", - "path": "30" - }, - "3238": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "REVERT", - "path": "30" - }, - "3239": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3240": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "POP", - "path": "30" - }, - "3241": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3243": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "MLOAD", - "path": "30" - }, - "3244": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "SWAP1", - "path": "30" - }, - "3245": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP1", - "path": "30" - }, - "3246": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP3", - "path": "30" - }, - "3247": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "MSTORE", - "path": "30" - }, - "3248": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP1", - "path": "30" - }, - "3249": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3251": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "MUL", - "path": "30" - }, - "3252": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3254": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "ADD", - "path": "30" - }, - "3255": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP3", - "path": "30" - }, - "3256": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "ADD", - "path": "30" - }, - "3257": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3259": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "MSTORE", - "path": "30" - }, - "3260": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP1", - "path": "30" - }, - "3261": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "ISZERO", - "path": "30" - }, - "3262": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH2", - "path": "30", - "value": "0xCE1" - }, - "3265": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPI", - "path": "30" - }, - "3266": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP2", - "path": "30" - }, - "3267": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3269": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "ADD", - "path": "30" - }, - "3270": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3271": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH2", - "path": "30", - "value": "0xCCE" - }, - "3274": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E5F" - }, - "3277": { - "fn": "ERC1155Action._decodeToAssets", - "jump": "i", - "offset": [ - 11848, - 11880 - ], - "op": "JUMP", - "path": "30" - }, - "3278": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3279": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP2", - "path": "30" - }, - "3280": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "MSTORE", - "path": "30" - }, - "3281": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3283": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "ADD", - "path": "30" - }, - "3284": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "SWAP1", - "path": "30" - }, - "3285": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1" - }, - "3287": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "SWAP1", - "path": "30" - }, - "3288": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "SUB", - "path": "30" - }, - "3289": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "SWAP1", - "path": "30" - }, - "3290": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "DUP2", - "path": "30" - }, - "3291": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "PUSH2", - "path": "30", - "value": "0xCC6" - }, - "3294": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPI", - "path": "30" - }, - "3295": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "SWAP1", - "path": "30" - }, - "3296": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "POP", - "path": "30" - }, - "3297": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3298": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11848, - 11880 - ], - "op": "POP", - "path": "30" - }, - "3299": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11815, - 11880 - ], - "op": "SWAP1", - "path": "30" - }, - "3300": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11815, - 11880 - ], - "op": "POP", - "path": "30" - }, - "3301": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11896, - 11905 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3303": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3304": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11907, - 11921 - ], - "op": "DUP8", - "path": "30" - }, - "3305": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11907, - 11921 - ], - "op": "DUP2", - "path": "30" - }, - "3306": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11907, - 11921 - ], - "op": "LT", - "path": "30" - }, - "3307": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "ISZERO", - "path": "30" - }, - "3308": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDBB" - }, - "3311": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "JUMPI", - "path": "30" - }, - "3312": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12045, - 12050 - ], - "op": "DUP1", - "path": "30" - }, - "3313": { - "branch": 304, - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12045, - 12050 - ], - "op": "ISZERO", - "path": "30" - }, - "3314": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12041, - 12102 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD3B" - }, - "3317": { - "branch": 304, - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12041, - 12102 - ], - "op": "JUMPI", - "path": "30" - }, - "3318": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12072 - ], - "op": "DUP9", - "path": "30", - "statement": 45 - }, - "3319": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12072 - ], - "op": "DUP9", - "path": "30" - }, - "3320": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12077, - 12078 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1" - }, - "3322": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12073, - 12074 - ], - "op": "DUP4", - "path": "30" - }, - "3323": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12073, - 12078 - ], - "op": "SUB", - "path": "30" - }, - "3324": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "DUP2", - "path": "30" - }, - "3325": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "DUP2", - "path": "30" - }, - "3326": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "LT", - "path": "30" - }, - "3327": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD04" - }, - "3330": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "JUMPI", - "path": "30" - }, - "3331": { - "dev": "Index out of range", - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "INVALID", - "path": "30" - }, - "3332": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3333": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "SWAP1", - "path": "30" - }, - "3334": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "POP", - "path": "30" - }, - "3335": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3337": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "MUL", - "path": "30" - }, - "3338": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "ADD", - "path": "30" - }, - "3339": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12069, - 12079 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "3340": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12063 - ], - "op": "DUP10", - "path": "30" - }, - "3341": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12063 - ], - "op": "DUP10", - "path": "30" - }, - "3342": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12064, - 12065 - ], - "op": "DUP4", - "path": "30" - }, - "3343": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "DUP2", - "path": "30" - }, - "3344": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "DUP2", - "path": "30" - }, - "3345": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "LT", - "path": "30" - }, - "3346": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD17" - }, - "3349": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "JUMPI", - "path": "30" - }, - "3350": { - "dev": "Index out of range", - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "INVALID", - "path": "30" - }, - "3351": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3352": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "SWAP1", - "path": "30" - }, - "3353": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "POP", - "path": "30" - }, - "3354": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3356": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "MUL", - "path": "30" - }, - "3357": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "ADD", - "path": "30" - }, - "3358": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12066 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "3359": { - "branch": 305, - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12060, - 12079 - ], - "op": "GT", - "path": "30" - }, - "3360": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD3B" - }, - "3363": { - "branch": 305, - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "JUMPI", - "path": "30" - }, - "3364": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3366": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "MLOAD", - "path": "30" - }, - "3367": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "3371": { - "op": "PUSH1", - "value": "0xE5" - }, - "3373": { - "op": "SHL" - }, - "3374": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "DUP2", - "path": "30" - }, - "3375": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "MSTORE", - "path": "30" - }, - "3376": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "3378": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "ADD", - "path": "30" - }, - "3379": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "3382": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "SWAP1", - "path": "30" - }, - "3383": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "PUSH2", - "path": "30", - "value": "0x378D" - }, - "3386": { - "fn": "ERC1155Action._decodeToAssets", - "jump": "i", - "offset": [ - 12052, - 12102 - ], - "op": "JUMP", - "path": "30" - }, - "3387": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12052, - 12102 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3388": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12117, - 12144 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3390": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12153 - ], - "op": "DUP3", - "path": "30" - }, - "3391": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12154, - 12155 - ], - "op": "DUP3", - "path": "30" - }, - "3392": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "DUP2", - "path": "30" - }, - "3393": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "MLOAD", - "path": "30" - }, - "3394": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "DUP2", - "path": "30" - }, - "3395": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "LT", - "path": "30" - }, - "3396": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD49" - }, - "3399": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "JUMPI", - "path": "30" - }, - "3400": { - "dev": "Index out of range", - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "INVALID", - "path": "30" - }, - "3401": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3402": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3404": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "MUL", - "path": "30" - }, - "3405": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3407": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "ADD", - "path": "30" - }, - "3408": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "ADD", - "path": "30" - }, - "3409": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12147, - 12156 - ], - "op": "MLOAD", - "path": "30" - }, - "3410": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12117, - 12156 - ], - "op": "SWAP1", - "path": "30" - }, - "3411": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12117, - 12156 - ], - "op": "POP", - "path": "30" - }, - "3412": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12224, - 12260 - ], - "op": "PUSH2", - "path": "30", - "statement": 46, - "value": "0xD6E" - }, - "3415": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12256 - ], - "op": "DUP11", - "path": "30" - }, - "3416": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12256 - ], - "op": "DUP11", - "path": "30" - }, - "3417": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12257, - 12258 - ], - "op": "DUP5", - "path": "30" - }, - "3418": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "DUP2", - "path": "30" - }, - "3419": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "DUP2", - "path": "30" - }, - "3420": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "LT", - "path": "30" - }, - "3421": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD62" - }, - "3424": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "JUMPI", - "path": "30" - }, - "3425": { - "dev": "Index out of range", - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "INVALID", - "path": "30" - }, - "3426": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3427": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "SWAP1", - "path": "30" - }, - "3428": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "POP", - "path": "30" - }, - "3429": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3431": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "MUL", - "path": "30" - }, - "3432": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "ADD", - "path": "30" - }, - "3433": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12253, - 12259 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "3434": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12224, - 12252 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12A7" - }, - "3437": { - "fn": "ERC1155Action._decodeToAssets", - "jump": "i", - "offset": [ - 12224, - 12260 - ], - "op": "JUMP", - "path": "30" - }, - "3438": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12224, - 12260 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3439": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12205, - 12220 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3441": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12205, - 12220 - ], - "op": "DUP5", - "path": "30" - }, - "3442": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12205, - 12220 - ], - "op": "ADD", - "path": "30" - }, - "3443": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "MSTORE", - "path": "30" - }, - "3444": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12189, - 12203 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3446": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12189, - 12203 - ], - "op": "DUP4", - "path": "30" - }, - "3447": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12189, - 12203 - ], - "op": "ADD", - "path": "30" - }, - "3448": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "DUP2", - "path": "30" - }, - "3449": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "SWAP1", - "path": "30" - }, - "3450": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "MSTORE", - "path": "30" - }, - "3451": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "DUP2", - "path": "30" - }, - "3452": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "DUP4", - "path": "30" - }, - "3453": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "MSTORE", - "path": "30" - }, - "3454": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12275, - 12347 - ], - "op": "PUSH2", - "path": "30", - "statement": 47, - "value": "0xD88" - }, - "3457": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12275, - 12347 - ], - "op": "SWAP2", - "path": "30" - }, - "3458": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12170, - 12260 - ], - "op": "SWAP1", - "path": "30" - }, - "3459": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12331, - 12346 - ], - "op": "TIMESTAMP", - "path": "30" - }, - "3460": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12275, - 12296 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12DA" - }, - "3463": { - "fn": "ERC1155Action._decodeToAssets", - "jump": "i", - "offset": [ - 12275, - 12347 - ], - "op": "JUMP", - "path": "30" - }, - "3464": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12275, - 12347 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3465": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12790 - ], - "op": "DUP8", - "path": "30", - "statement": 48 - }, - "3466": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12790 - ], - "op": "DUP8", - "path": "30" - }, - "3467": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12791, - 12792 - ], - "op": "DUP4", - "path": "30" - }, - "3468": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "DUP2", - "path": "30" - }, - "3469": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "DUP2", - "path": "30" - }, - "3470": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "LT", - "path": "30" - }, - "3471": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "PUSH2", - "path": "30", - "value": "0xD94" - }, - "3474": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "JUMPI", - "path": "30" - }, - "3475": { - "dev": "Index out of range", - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "INVALID", - "path": "30" - }, - "3476": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3477": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3479": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "MUL", - "path": "30" - }, - "3480": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "SWAP2", - "path": "30" - }, - "3481": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "SWAP1", - "path": "30" - }, - "3482": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "SWAP2", - "path": "30" - }, - "3483": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "ADD", - "path": "30" - }, - "3484": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12783, - 12793 - ], - "op": "CALLDATALOAD", - "path": "30" - }, - "3485": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12759, - 12773 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "3487": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12759, - 12773 - ], - "op": "DUP4", - "path": "30" - }, - "3488": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12759, - 12773 - ], - "op": "ADD", - "path": "30" - }, - "3489": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12759, - 12794 - ], - "op": "DUP2", - "path": "30" - }, - "3490": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12759, - 12794 - ], - "op": "SWAP1", - "path": "30" - }, - "3491": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12759, - 12794 - ], - "op": "MSTORE", - "path": "30" - }, - "3492": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12989, - 12990 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3494": { - "op": "SGT" - }, - "3495": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12968, - 13017 - ], - "op": "ISZERO", - "path": "30" - }, - "3496": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12968, - 13017 - ], - "op": "SWAP1", - "path": "30" - }, - "3497": { - "op": "POP" - }, - "3498": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12968, - 13017 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDB2" - }, - "3501": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12968, - 13017 - ], - "op": "JUMPI", - "path": "30" - }, - "3502": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 13013, - 13017 - ], - "op": "PUSH1", - "path": "30", - "statement": 49, - "value": "0x1" - }, - "3504": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12992, - 13017 - ], - "op": "SWAP4", - "path": "30" - }, - "3505": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12992, - 13017 - ], - "op": "POP", - "path": "30" - }, - "3506": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 12968, - 13017 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3507": { - "op": "POP" - }, - "3508": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11923, - 11926 - ], - "op": "PUSH1", - "path": "30", - "statement": 50, - "value": "0x1" - }, - "3510": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11923, - 11926 - ], - "op": "ADD", - "path": "30" - }, - "3511": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "PUSH2", - "path": "30", - "value": "0xCE7" - }, - "3514": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "JUMP", - "path": "30" - }, - "3515": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11891, - 13028 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3516": { - "op": "POP" - }, - "3517": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 13046, - 13052 - ], - "op": "SWAP8", - "path": "30", - "statement": 51 - }, - "3518": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 13054, - 13072 - ], - "op": "SWAP1", - "path": "30" - }, - "3519": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 13054, - 13072 - ], - "op": "SWAP7", - "path": "30" - }, - "3520": { - "op": "POP" - }, - "3521": { - "fn": "ERC1155Action._decodeToAssets", - "offset": [ - 11558, - 13080 - ], - "op": "SWAP5", - "path": "30" - }, - "3522": { - "op": "POP" - }, - "3523": { - "op": "POP" - }, - "3524": { - "op": "POP" - }, - "3525": { - "op": "POP" - }, - "3526": { - "op": "POP" - }, - "3527": { - "fn": "ERC1155Action._decodeToAssets", - "jump": "o", - "offset": [ - 11558, - 13080 - ], - "op": "JUMP", - "path": "30" - }, - "3528": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14050, - 15333 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3529": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14175, - 14196 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDD0" - }, - "3532": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14175, - 14196 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E31" - }, - "3535": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14175, - 14196 - ], - "op": "JUMP", - "path": "30" - }, - "3536": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14175, - 14196 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3537": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14198, - 14219 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDD8" - }, - "3540": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14198, - 14219 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2E31" - }, - "3543": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14198, - 14219 - ], - "op": "JUMP", - "path": "30" - }, - "3544": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14198, - 14219 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3545": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14422, - 14453 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3547": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14456, - 14499 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDE3" - }, - "3550": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14496, - 14498 - ], - "op": "DUP6", - "path": "30" - }, - "3551": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14456, - 14495 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA36" - }, - "3554": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14456, - 14499 - ], - "op": "JUMP", - "path": "30" - }, - "3555": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14456, - 14499 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3556": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14422, - 14499 - ], - "op": "SWAP1", - "path": "30" - }, - "3557": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14422, - 14499 - ], - "op": "POP", - "path": "30" - }, - "3558": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14513, - 14541 - ], - "op": "PUSH2", - "path": "30", - "value": "0xDEE" - }, - "3561": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14513, - 14522 - ], - "op": "DUP2", - "path": "30" - }, - "3562": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14513, - 14539 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1683" - }, - "3565": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14513, - 14541 - ], - "op": "JUMP", - "path": "30" - }, - "3566": { - "branch": 306, - "fn": "ERC1155Action._transfer", - "offset": [ - 14513, - 14541 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3567": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14509, - 14629 - ], - "op": "ISZERO", - "path": "30" - }, - "3568": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14509, - 14629 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE7F" - }, - "3571": { - "branch": 306, - "fn": "ERC1155Action._transfer", - "offset": [ - 14509, - 14629 - ], - "op": "JUMPI", - "path": "30" - }, - "3572": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "statement": 52, - "value": "0x40" - }, - "3574": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "MLOAD", - "path": "30" - }, - "3575": { - "op": "PUSH4", - "value": "0x37B5FC21" - }, - "3580": { - "op": "PUSH1", - "value": "0xE1" - }, - "3582": { - "op": "SHL" - }, - "3583": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP2", - "path": "30" - }, - "3584": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "MSTORE", - "path": "30" - }, - "3585": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14589 - ], - "op": "PUSH20", - "path": "30", - "value": "0x0" - }, - "3606": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14589 - ], - "op": "SWAP1", - "path": "30" - }, - "3607": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14603 - ], - "op": "PUSH4", - "path": "30", - "value": "0x6F6BF842" - }, - "3612": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14603 - ], - "op": "SWAP1", - "path": "30" - }, - "3613": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE2C" - }, - "3616": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "SWAP1", - "path": "30" - }, - "3617": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14604, - 14606 - ], - "op": "DUP9", - "path": "30" - }, - "3618": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14604, - 14606 - ], - "op": "SWAP1", - "path": "30" - }, - "3619": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14608, - 14617 - ], - "op": "DUP6", - "path": "30" - }, - "3620": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14608, - 14617 - ], - "op": "SWAP1", - "path": "30" - }, - "3621": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "3623": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ADD", - "path": "30" - }, - "3624": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH2", - "path": "30", - "value": "0x34C1" - }, - "3627": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14569, - 14618 - ], - "op": "JUMP", - "path": "30" - }, - "3628": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3629": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0xA0" - }, - "3631": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3633": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "MLOAD", - "path": "30" - }, - "3634": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3635": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP4", - "path": "30" - }, - "3636": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "SUB", - "path": "30" - }, - "3637": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP2", - "path": "30" - }, - "3638": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP7", - "path": "30" - }, - "3639": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3640": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "EXTCODESIZE", - "path": "30" - }, - "3641": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ISZERO", - "path": "30" - }, - "3642": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3643": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ISZERO", - "path": "30" - }, - "3644": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE44" - }, - "3647": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "JUMPI", - "path": "30" - }, - "3648": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3650": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3651": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "REVERT", - "path": "30" - }, - "3652": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3653": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3654": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "GAS", - "path": "30" - }, - "3655": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DELEGATECALL", - "path": "30" - }, - "3656": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ISZERO", - "path": "30" - }, - "3657": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3658": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ISZERO", - "path": "30" - }, - "3659": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE58" - }, - "3662": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "JUMPI", - "path": "30" - }, - "3663": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "3664": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3666": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3667": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "3668": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "3669": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3671": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "REVERT", - "path": "30" - }, - "3672": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3673": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3674": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3675": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3676": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3677": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3679": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "MLOAD", - "path": "30" - }, - "3680": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "3681": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "3683": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "NOT", - "path": "30" - }, - "3684": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "3686": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP3", - "path": "30" - }, - "3687": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ADD", - "path": "30" - }, - "3688": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "AND", - "path": "30" - }, - "3689": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP3", - "path": "30" - }, - "3690": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ADD", - "path": "30" - }, - "3691": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP1", - "path": "30" - }, - "3692": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3694": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "MSTORE", - "path": "30" - }, - "3695": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3696": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "DUP2", - "path": "30" - }, - "3697": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "ADD", - "path": "30" - }, - "3698": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "SWAP1", - "path": "30" - }, - "3699": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH2", - "path": "30", - "value": "0xE7C" - }, - "3702": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "SWAP2", - "path": "30" - }, - "3703": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "SWAP1", - "path": "30" - }, - "3704": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "PUSH2", - "path": "30", - "value": "0x32A6" - }, - "3707": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14569, - 14618 - ], - "op": "JUMP", - "path": "30" - }, - "3708": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14569, - 14618 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3709": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14557, - 14618 - ], - "op": "SWAP1", - "path": "30" - }, - "3710": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14557, - 14618 - ], - "op": "POP", - "path": "30" - }, - "3711": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14509, - 14629 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3712": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14650, - 14708 - ], - "op": "PUSH2", - "path": "30", - "statement": 53, - "value": "0xE8A" - }, - "3715": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14686, - 14688 - ], - "op": "DUP6", - "path": "30" - }, - "3716": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14690, - 14699 - ], - "op": "DUP3", - "path": "30" - }, - "3717": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14701, - 14707 - ], - "op": "DUP7", - "path": "30" - }, - "3718": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14650, - 14685 - ], - "op": "PUSH2", - "path": "30", - "value": "0x16D7" - }, - "3721": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14650, - 14708 - ], - "op": "JUMP", - "path": "30" - }, - "3722": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14650, - 14708 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3723": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14638, - 14708 - ], - "op": "SWAP1", - "path": "30" - }, - "3724": { - "op": "POP" - }, - "3725": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14718, - 14749 - ], - "op": "PUSH2", - "path": "30", - "statement": 54, - "value": "0xE96" - }, - "3728": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14638, - 14708 - ], - "op": "DUP2", - "path": "30" - }, - "3729": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14746, - 14748 - ], - "op": "DUP7", - "path": "30" - }, - "3730": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14718, - 14745 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1758" - }, - "3733": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14718, - 14749 - ], - "op": "JUMP", - "path": "30" - }, - "3734": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14718, - 14749 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3735": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14832, - 14883 - ], - "op": "PUSH2", - "path": "30", - "statement": 55, - "value": "0xE9F" - }, - "3738": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14876, - 14882 - ], - "op": "DUP5", - "path": "30" - }, - "3739": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14832, - 14875 - ], - "op": "PUSH2", - "path": "30", - "value": "0x185C" - }, - "3742": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14832, - 14883 - ], - "op": "JUMP", - "path": "30" - }, - "3743": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14832, - 14883 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3744": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14935, - 14968 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3746": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14971, - 15016 - ], - "op": "PUSH2", - "path": "30", - "value": "0xEAA" - }, - "3749": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15011, - 15015 - ], - "op": "DUP8", - "path": "30" - }, - "3750": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14971, - 15010 - ], - "op": "PUSH2", - "path": "30", - "value": "0xA36" - }, - "3753": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 14971, - 15016 - ], - "op": "JUMP", - "path": "30" - }, - "3754": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14971, - 15016 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3755": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14935, - 15016 - ], - "op": "SWAP1", - "path": "30" - }, - "3756": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14935, - 15016 - ], - "op": "POP", - "path": "30" - }, - "3757": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15030, - 15060 - ], - "op": "PUSH2", - "path": "30", - "value": "0xEB5" - }, - "3760": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15030, - 15041 - ], - "op": "DUP2", - "path": "30" - }, - "3761": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15030, - 15058 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1683" - }, - "3764": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 15030, - 15060 - ], - "op": "JUMP", - "path": "30" - }, - "3765": { - "branch": 307, - "fn": "ERC1155Action._transfer", - "offset": [ - 15030, - 15060 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3766": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15026, - 15154 - ], - "op": "ISZERO", - "path": "30" - }, - "3767": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15026, - 15154 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF46" - }, - "3770": { - "branch": 307, - "fn": "ERC1155Action._transfer", - "offset": [ - 15026, - 15154 - ], - "op": "JUMPI", - "path": "30" - }, - "3771": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "statement": 56, - "value": "0x40" - }, - "3773": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "MLOAD", - "path": "30" - }, - "3774": { - "op": "PUSH4", - "value": "0x37B5FC21" - }, - "3779": { - "op": "PUSH1", - "value": "0xE1" - }, - "3781": { - "op": "SHL" - }, - "3782": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP2", - "path": "30" - }, - "3783": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "MSTORE", - "path": "30" - }, - "3784": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15110 - ], - "op": "PUSH20", - "path": "30", - "value": "0x0" - }, - "3805": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15110 - ], - "op": "SWAP1", - "path": "30" - }, - "3806": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15124 - ], - "op": "PUSH4", - "path": "30", - "value": "0x6F6BF842" - }, - "3811": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15124 - ], - "op": "SWAP1", - "path": "30" - }, - "3812": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH2", - "path": "30", - "value": "0xEF3" - }, - "3815": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "SWAP1", - "path": "30" - }, - "3816": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15125, - 15129 - ], - "op": "DUP11", - "path": "30" - }, - "3817": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15125, - 15129 - ], - "op": "SWAP1", - "path": "30" - }, - "3818": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15131, - 15142 - ], - "op": "DUP6", - "path": "30" - }, - "3819": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15131, - 15142 - ], - "op": "SWAP1", - "path": "30" - }, - "3820": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "3822": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ADD", - "path": "30" - }, - "3823": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH2", - "path": "30", - "value": "0x34C1" - }, - "3826": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 15090, - 15143 - ], - "op": "JUMP", - "path": "30" - }, - "3827": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3828": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0xA0" - }, - "3830": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3832": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "MLOAD", - "path": "30" - }, - "3833": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3834": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP4", - "path": "30" - }, - "3835": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "SUB", - "path": "30" - }, - "3836": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP2", - "path": "30" - }, - "3837": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP7", - "path": "30" - }, - "3838": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3839": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "EXTCODESIZE", - "path": "30" - }, - "3840": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ISZERO", - "path": "30" - }, - "3841": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3842": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ISZERO", - "path": "30" - }, - "3843": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF0B" - }, - "3846": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "JUMPI", - "path": "30" - }, - "3847": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3849": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3850": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "REVERT", - "path": "30" - }, - "3851": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3852": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3853": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "GAS", - "path": "30" - }, - "3854": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DELEGATECALL", - "path": "30" - }, - "3855": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ISZERO", - "path": "30" - }, - "3856": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3857": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ISZERO", - "path": "30" - }, - "3858": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF1F" - }, - "3861": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "JUMPI", - "path": "30" - }, - "3862": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "3863": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3865": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3866": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "3867": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "3868": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3870": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "REVERT", - "path": "30" - }, - "3871": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3872": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3873": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3874": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3875": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3876": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3878": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "MLOAD", - "path": "30" - }, - "3879": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "3880": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "3882": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "NOT", - "path": "30" - }, - "3883": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "3885": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP3", - "path": "30" - }, - "3886": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ADD", - "path": "30" - }, - "3887": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "AND", - "path": "30" - }, - "3888": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP3", - "path": "30" - }, - "3889": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ADD", - "path": "30" - }, - "3890": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP1", - "path": "30" - }, - "3891": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "3893": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "MSTORE", - "path": "30" - }, - "3894": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3895": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "DUP2", - "path": "30" - }, - "3896": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "ADD", - "path": "30" - }, - "3897": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "SWAP1", - "path": "30" - }, - "3898": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF43" - }, - "3901": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "SWAP2", - "path": "30" - }, - "3902": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "SWAP1", - "path": "30" - }, - "3903": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "PUSH2", - "path": "30", - "value": "0x32A6" - }, - "3906": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 15090, - 15143 - ], - "op": "JUMP", - "path": "30" - }, - "3907": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15090, - 15143 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3908": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15076, - 15143 - ], - "op": "SWAP1", - "path": "30" - }, - "3909": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15076, - 15143 - ], - "op": "POP", - "path": "30" - }, - "3910": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15026, - 15154 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3911": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15177, - 15239 - ], - "op": "PUSH2", - "path": "30", - "statement": 57, - "value": "0xF51" - }, - "3914": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15213, - 15217 - ], - "op": "DUP8", - "path": "30" - }, - "3915": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15219, - 15230 - ], - "op": "DUP3", - "path": "30" - }, - "3916": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15232, - 15238 - ], - "op": "DUP8", - "path": "30" - }, - "3917": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15177, - 15212 - ], - "op": "PUSH2", - "path": "30", - "value": "0x16D7" - }, - "3920": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 15177, - 15239 - ], - "op": "JUMP", - "path": "30" - }, - "3921": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15177, - 15239 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3922": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15163, - 15239 - ], - "op": "SWAP1", - "path": "30" - }, - "3923": { - "op": "POP" - }, - "3924": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15249, - 15284 - ], - "op": "PUSH2", - "path": "30", - "statement": 58, - "value": "0xF5D" - }, - "3927": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15163, - 15239 - ], - "op": "DUP2", - "path": "30" - }, - "3928": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15279, - 15283 - ], - "op": "DUP9", - "path": "30" - }, - "3929": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15249, - 15278 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1758" - }, - "3932": { - "fn": "ERC1155Action._transfer", - "jump": "i", - "offset": [ - 15249, - 15284 - ], - "op": "JUMP", - "path": "30" - }, - "3933": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15249, - 15284 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3934": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15303, - 15314 - ], - "op": "SWAP7", - "path": "30", - "statement": 59 - }, - "3935": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15316, - 15325 - ], - "op": "SWAP1", - "path": "30" - }, - "3936": { - "fn": "ERC1155Action._transfer", - "offset": [ - 15316, - 15325 - ], - "op": "SWAP6", - "path": "30" - }, - "3937": { - "op": "POP" - }, - "3938": { - "fn": "ERC1155Action._transfer", - "offset": [ - 14050, - 15333 - ], - "op": "SWAP4", - "path": "30" - }, - "3939": { - "op": "POP" - }, - "3940": { - "op": "POP" - }, - "3941": { - "op": "POP" - }, - "3942": { - "op": "POP" - }, - "3943": { - "fn": "ERC1155Action._transfer", - "jump": "o", - "offset": [ - 14050, - 15333 - ], - "op": "JUMP", - "path": "30" - }, - "3944": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3945": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15738, - 15748 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3947": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15738, - 15748 - ], - "op": "DUP1", - "path": "30" - }, - "3948": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15829, - 15831 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "3950": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15814, - 15831 - ], - "op": "DUP5", - "path": "30" - }, - "3951": { - "branch": 308, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15814, - 15831 - ], - "op": "LT", - "path": "30" - }, - "3952": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15810, - 16151 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF85" - }, - "3955": { - "branch": 308, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15810, - 16151 - ], - "op": "JUMPI", - "path": "30" - }, - "3956": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16068, - 16079 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "3958": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16082, - 16109 - ], - "op": "PUSH2", - "path": "30", - "value": "0xF81" - }, - "3961": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16082, - 16109 - ], - "op": "DUP6", - "path": "30" - }, - "3962": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16082, - 16109 - ], - "op": "DUP8", - "path": "30" - }, - "3963": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16082, - 16109 - ], - "op": "ADD", - "path": "30" - }, - "3964": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16093, - 16097 - ], - "op": "DUP8", - "path": "30" - }, - "3965": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16082, - 16109 - ], - "op": "PUSH2", - "path": "30", - "value": "0x31C0" - }, - "3968": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 16082, - 16109 - ], - "op": "JUMP", - "path": "30" - }, - "3969": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16082, - 16109 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3970": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16068, - 16109 - ], - "op": "SWAP3", - "path": "30" - }, - "3971": { - "op": "POP" - }, - "3972": { - "op": "POP" - }, - "3973": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15810, - 16151 - ], - "op": "JUMPDEST", - "path": "30" - }, - "3974": { - "op": "PUSH1", - "value": "0x1" - }, - "3976": { - "op": "PUSH1", - "value": "0x1" - }, - "3978": { - "op": "PUSH1", - "value": "0xE0" - }, - "3980": { - "op": "SHL" - }, - "3981": { - "op": "SUB" - }, - "3982": { - "op": "NOT" - }, - "3983": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16530 - ], - "op": "DUP3", - "path": "30" - }, - "3984": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16530 - ], - "op": "AND", - "path": "30" - }, - "3985": { - "op": "PUSH4", - "value": "0x66890643" - }, - "3990": { - "op": "PUSH1", - "value": "0xE0" - }, - "3992": { - "op": "SHL" - }, - "3993": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16530 - ], - "op": "EQ", - "path": "30" - }, - "3994": { - "branch": 309, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16530 - ], - "op": "DUP1", - "path": "30" - }, - "3995": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16585 - ], - "op": "PUSH2", - "path": "30", - "value": "0xFB4" - }, - "3998": { - "branch": 309, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16585 - ], - "op": "JUMPI", - "path": "30" - }, - "3999": { - "op": "POP" - }, - "4000": { - "op": "PUSH1", - "value": "0x1" - }, - "4002": { - "op": "PUSH1", - "value": "0x1" - }, - "4004": { - "op": "PUSH1", - "value": "0xE0" - }, - "4006": { - "op": "SHL" - }, - "4007": { - "op": "SUB" - }, - "4008": { - "op": "NOT" - }, - "4009": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16546, - 16585 - ], - "op": "DUP3", - "path": "30" - }, - "4010": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16546, - 16585 - ], - "op": "AND", - "path": "30" - }, - "4011": { - "op": "PUSH4", - "value": "0x541F527" - }, - "4016": { - "op": "PUSH1", - "value": "0xE4" - }, - "4018": { - "op": "SHL" - }, - "4019": { - "branch": 310, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16546, - 16585 - ], - "op": "EQ", - "path": "30" - }, - "4020": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16585 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4021": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16649 - ], - "op": "DUP1", - "path": "30" - }, - "4022": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16649 - ], - "op": "PUSH2", - "path": "30", - "value": "0xFCF" - }, - "4025": { - "branch": 310, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16649 - ], - "op": "JUMPI", - "path": "30" - }, - "4026": { - "op": "POP" - }, - "4027": { - "op": "PUSH1", - "value": "0x1" - }, - "4029": { - "op": "PUSH1", - "value": "0x1" - }, - "4031": { - "op": "PUSH1", - "value": "0xE0" - }, - "4033": { - "op": "SHL" - }, - "4034": { - "op": "SUB" - }, - "4035": { - "op": "NOT" - }, - "4036": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16601, - 16649 - ], - "op": "DUP3", - "path": "30" - }, - "4037": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16601, - 16649 - ], - "op": "AND", - "path": "30" - }, - "4038": { - "op": "PUSH4", - "value": "0x37351953" - }, - "4043": { - "op": "PUSH1", - "value": "0xE1" - }, - "4045": { - "op": "SHL" - }, - "4046": { - "branch": 311, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16601, - 16649 - ], - "op": "EQ", - "path": "30" - }, - "4047": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16649 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4048": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16721 - ], - "op": "DUP1", - "path": "30" - }, - "4049": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16721 - ], - "op": "PUSH2", - "path": "30", - "value": "0xFEA" - }, - "4052": { - "branch": 311, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16721 - ], - "op": "JUMPI", - "path": "30" - }, - "4053": { - "op": "POP" - }, - "4054": { - "op": "PUSH1", - "value": "0x1" - }, - "4056": { - "op": "PUSH1", - "value": "0x1" - }, - "4058": { - "op": "PUSH1", - "value": "0xE0" - }, - "4060": { - "op": "SHL" - }, - "4061": { - "op": "SUB" - }, - "4062": { - "op": "NOT" - }, - "4063": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16665, - 16721 - ], - "op": "DUP3", - "path": "30" - }, - "4064": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16665, - 16721 - ], - "op": "AND", - "path": "30" - }, - "4065": { - "op": "PUSH4", - "value": "0x276B64B" - }, - "4070": { - "op": "PUSH1", - "value": "0xE0" - }, - "4072": { - "op": "SHL" - }, - "4073": { - "branch": 312, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16665, - 16721 - ], - "op": "EQ", - "path": "30" - }, - "4074": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16488, - 16721 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4075": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16471, - 17593 - ], - "op": "ISZERO", - "path": "30" - }, - "4076": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16471, - 17593 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10FA" - }, - "4079": { - "branch": 312, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16471, - 17593 - ], - "op": "JUMPI", - "path": "30" - }, - "4080": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16777, - 16787 - ], - "op": "PUSH2", - "path": "30", - "statement": 60, - "value": "0xFFD" - }, - "4083": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16784, - 16786 - ], - "op": "PUSH1", - "path": "30", - "value": "0x24" - }, - "4085": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16782, - 16783 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "4087": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16777, - 16781 - ], - "op": "DUP7", - "path": "30" - }, - "4088": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16777, - 16781 - ], - "op": "DUP9", - "path": "30" - }, - "4089": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16777, - 16787 - ], - "op": "PUSH2", - "path": "30", - "value": "0x37ED" - }, - "4092": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 16777, - 16787 - ], - "op": "JUMP", - "path": "30" - }, - "4093": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16777, - 16787 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4094": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "DUP2", - "path": "30" - }, - "4095": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "ADD", - "path": "30" - }, - "4096": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "SWAP1", - "path": "30" - }, - "4097": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "PUSH2", - "path": "30", - "value": "0x100A" - }, - "4100": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "SWAP2", - "path": "30" - }, - "4101": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "SWAP1", - "path": "30" - }, - "4102": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "PUSH2", - "path": "30", - "value": "0x2F75" - }, - "4105": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 16766, - 16799 - ], - "op": "JUMP", - "path": "30" - }, - "4106": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16766, - 16799 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4107": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16746, - 16799 - ], - "op": "SWAP1", - "path": "30" - }, - "4108": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16746, - 16799 - ], - "op": "POP", - "path": "30" - }, - "4109": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17101, - 17105 - ], - "op": "DUP9", - "path": "30", - "statement": 61 - }, - "4110": { - "op": "PUSH1", - "value": "0x1" - }, - "4112": { - "op": "PUSH1", - "value": "0x1" - }, - "4114": { - "op": "PUSH1", - "value": "0xA0" - }, - "4116": { - "op": "SHL" - }, - "4117": { - "op": "SUB" - }, - "4118": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17105 - ], - "op": "AND", - "path": "30" - }, - "4119": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17097 - ], - "op": "DUP2", - "path": "30" - }, - "4120": { - "op": "PUSH1", - "value": "0x1" - }, - "4122": { - "op": "PUSH1", - "value": "0x1" - }, - "4124": { - "op": "PUSH1", - "value": "0xA0" - }, - "4126": { - "op": "SHL" - }, - "4127": { - "op": "SUB" - }, - "4128": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17105 - ], - "op": "AND", - "path": "30" - }, - "4129": { - "branch": 313, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17105 - ], - "op": "EQ", - "path": "30" - }, - "4130": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17190 - ], - "op": "DUP1", - "path": "30" - }, - "4131": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17190 - ], - "op": "PUSH2", - "path": "30", - "value": "0x104D" - }, - "4134": { - "branch": 313, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17190 - ], - "op": "JUMPI", - "path": "30" - }, - "4135": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17080, - 17190 - ], - "op": "POP", - "path": "30" - }, - "4136": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17151, - 17153 - ], - "op": "DUP8", - "path": "30" - }, - "4137": { - "op": "PUSH1", - "value": "0x1" - }, - "4139": { - "op": "PUSH1", - "value": "0x1" - }, - "4141": { - "op": "PUSH1", - "value": "0xA0" - }, - "4143": { - "op": "SHL" - }, - "4144": { - "op": "SUB" - }, - "4145": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17153 - ], - "op": "AND", - "path": "30" - }, - "4146": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17147 - ], - "op": "DUP2", - "path": "30" - }, - "4147": { - "op": "PUSH1", - "value": "0x1" - }, - "4149": { - "op": "PUSH1", - "value": "0x1" - }, - "4151": { - "op": "PUSH1", - "value": "0xA0" - }, - "4153": { - "op": "SHL" - }, - "4154": { - "op": "SUB" - }, - "4155": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17153 - ], - "op": "AND", - "path": "30" - }, - "4156": { - "branch": 314, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17153 - ], - "op": "EQ", - "path": "30" - }, - "4157": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17189 - ], - "op": "DUP1", - "path": "30" - }, - "4158": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17189 - ], - "op": "ISZERO", - "path": "30" - }, - "4159": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17189 - ], - "op": "PUSH2", - "path": "30", - "value": "0x104D" - }, - "4162": { - "branch": 314, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17189 - ], - "op": "JUMPI", - "path": "30" - }, - "4163": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17130, - 17189 - ], - "op": "POP", - "path": "30" - }, - "4164": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17157, - 17189 - ], - "op": "PUSH2", - "path": "30", - "value": "0x104D" - }, - "4167": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17174, - 17176 - ], - "op": "DUP9", - "path": "30" - }, - "4168": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17178, - 17188 - ], - "op": "CALLER", - "path": "30" - }, - "4169": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17157, - 17173 - ], - "op": "PUSH2", - "path": "30", - "value": "0x7D6" - }, - "4172": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 17157, - 17189 - ], - "op": "JUMP", - "path": "30" - }, - "4173": { - "branch": 315, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17157, - 17189 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4174": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1069" - }, - "4177": { - "branch": 315, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "JUMPI", - "path": "30" - }, - "4178": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4180": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "MLOAD", - "path": "30" - }, - "4181": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "4185": { - "op": "PUSH1", - "value": "0xE5" - }, - "4187": { - "op": "SHL" - }, - "4188": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "DUP2", - "path": "30" - }, - "4189": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "MSTORE", - "path": "30" - }, - "4190": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "4192": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "ADD", - "path": "30" - }, - "4193": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "4196": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "SWAP1", - "path": "30" - }, - "4197": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3695" - }, - "4200": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 17055, - 17241 - ], - "op": "JUMP", - "path": "30" - }, - "4201": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17055, - 17241 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4202": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17452, - 17463 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4204": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17465, - 17484 - ], - "op": "DUP1", - "path": "30" - }, - "4205": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17496, - 17500 - ], - "op": "ADDRESS", - "path": "30" - }, - "4206": { - "op": "PUSH1", - "value": "0x1" - }, - "4208": { - "op": "PUSH1", - "value": "0x1" - }, - "4210": { - "op": "PUSH1", - "value": "0xA0" - }, - "4212": { - "op": "SHL" - }, - "4213": { - "op": "SUB" - }, - "4214": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17506 - ], - "op": "AND", - "path": "30" - }, - "4215": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17514, - 17523 - ], - "op": "CALLVALUE", - "path": "30" - }, - "4216": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17525, - 17529 - ], - "op": "DUP9", - "path": "30" - }, - "4217": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17525, - 17529 - ], - "op": "DUP9", - "path": "30" - }, - "4218": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4220": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "MLOAD", - "path": "30" - }, - "4221": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1087" - }, - "4224": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SWAP3", - "path": "30" - }, - "4225": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SWAP2", - "path": "30" - }, - "4226": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SWAP1", - "path": "30" - }, - "4227": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH2", - "path": "30", - "value": "0x33E4" - }, - "4230": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 17488, - 17530 - ], - "op": "JUMP", - "path": "30" - }, - "4231": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4232": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4234": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4236": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "MLOAD", - "path": "30" - }, - "4237": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP1", - "path": "30" - }, - "4238": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP4", - "path": "30" - }, - "4239": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SUB", - "path": "30" - }, - "4240": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP2", - "path": "30" - }, - "4241": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP6", - "path": "30" - }, - "4242": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP8", - "path": "30" - }, - "4243": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "GAS", - "path": "30" - }, - "4244": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "CALL", - "path": "30" - }, - "4245": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SWAP3", - "path": "30" - }, - "4246": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4247": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4248": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4249": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4250": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP1", - "path": "30" - }, - "4251": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4253": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP2", - "path": "30" - }, - "4254": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "EQ", - "path": "30" - }, - "4255": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10C4" - }, - "4258": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "JUMPI", - "path": "30" - }, - "4259": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4261": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "MLOAD", - "path": "30" - }, - "4262": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SWAP2", - "path": "30" - }, - "4263": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4264": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1F" - }, - "4266": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "NOT", - "path": "30" - }, - "4267": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x3F" - }, - "4269": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4270": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "ADD", - "path": "30" - }, - "4271": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "AND", - "path": "30" - }, - "4272": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP3", - "path": "30" - }, - "4273": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "ADD", - "path": "30" - }, - "4274": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4276": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "MSTORE", - "path": "30" - }, - "4277": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4278": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP3", - "path": "30" - }, - "4279": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "MSTORE", - "path": "30" - }, - "4280": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4281": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4283": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "4285": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "DUP5", - "path": "30" - }, - "4286": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "ADD", - "path": "30" - }, - "4287": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "4288": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10C9" - }, - "4291": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "JUMP", - "path": "30" - }, - "4292": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4293": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "4295": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "SWAP2", - "path": "30" - }, - "4296": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4297": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4298": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17488, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4299": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17451, - 17530 - ], - "op": "SWAP2", - "path": "30" - }, - "4300": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17451, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4301": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17451, - 17530 - ], - "op": "SWAP2", - "path": "30" - }, - "4302": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17451, - 17530 - ], - "op": "POP", - "path": "30" - }, - "4303": { - "branch": 316, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17552, - 17558 - ], - "op": "DUP2", - "path": "30", - "statement": 62 - }, - "4304": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17560, - 17581 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10D8" - }, - "4307": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17574, - 17580 - ], - "op": "DUP3", - "path": "30" - }, - "4308": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17560, - 17573 - ], - "op": "PUSH2", - "path": "30", - "value": "0x18AB" - }, - "4311": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 17560, - 17581 - ], - "op": "JUMP", - "path": "30" - }, - "4312": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17560, - 17581 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4313": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "SWAP1", - "path": "30" - }, - "4314": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "PUSH2", - "path": "30", - "value": "0x10F6" - }, - "4317": { - "branch": 316, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "JUMPI", - "path": "30" - }, - "4318": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4320": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "MLOAD", - "path": "30" - }, - "4321": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "4325": { - "op": "PUSH1", - "value": "0xE5" - }, - "4327": { - "op": "SHL" - }, - "4328": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "DUP2", - "path": "30" - }, - "4329": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "MSTORE", - "path": "30" - }, - "4330": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "4332": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "ADD", - "path": "30" - }, - "4333": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "4336": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "SWAP2", - "path": "30" - }, - "4337": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "SWAP1", - "path": "30" - }, - "4338": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3639" - }, - "4341": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 17544, - 17582 - ], - "op": "JUMP", - "path": "30" - }, - "4342": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4343": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17544, - 17582 - ], - "op": "POP", - "path": "30" - }, - "4344": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16471, - 17593 - ], - "op": "POP", - "path": "30" - }, - "4345": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16471, - 17593 - ], - "op": "POP", - "path": "30" - }, - "4346": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 16471, - 17593 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4347": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17941, - 17945 - ], - "op": "DUP9", - "path": "30" - }, - "4348": { - "op": "PUSH1", - "value": "0x1" - }, - "4350": { - "op": "PUSH1", - "value": "0x1" - }, - "4352": { - "op": "PUSH1", - "value": "0xA0" - }, - "4354": { - "op": "SHL" - }, - "4355": { - "op": "SUB" - }, - "4356": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17945 - ], - "op": "AND", - "path": "30" - }, - "4357": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17937 - ], - "op": "DUP2", - "path": "30" - }, - "4358": { - "op": "PUSH1", - "value": "0x1" - }, - "4360": { - "op": "PUSH1", - "value": "0x1" - }, - "4362": { - "op": "PUSH1", - "value": "0xA0" - }, - "4364": { - "op": "SHL" - }, - "4365": { - "op": "SUB" - }, - "4366": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17945 - ], - "op": "AND", - "path": "30" - }, - "4367": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17945 - ], - "op": "EQ", - "path": "30" - }, - "4368": { - "branch": 317, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17945 - ], - "op": "ISZERO", - "path": "30" - }, - "4369": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17976 - ], - "op": "DUP1", - "path": "30" - }, - "4370": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17976 - ], - "op": "ISZERO", - "path": "30" - }, - "4371": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17976 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1129" - }, - "4374": { - "branch": 317, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17976 - ], - "op": "JUMPI", - "path": "30" - }, - "4375": { - "op": "POP" - }, - "4376": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17968 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "4378": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17968 - ], - "op": "DUP8", - "path": "30" - }, - "4379": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17968 - ], - "op": "ADD", - "path": "30" - }, - "4380": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17968 - ], - "op": "MLOAD", - "path": "30" - }, - "4381": { - "op": "PUSH1", - "value": "0x1" - }, - "4383": { - "op": "PUSH1", - "value": "0x1" - }, - "4385": { - "op": "PUSH1", - "value": "0xF8" - }, - "4387": { - "op": "SHL" - }, - "4388": { - "op": "SUB" - }, - "4389": { - "op": "NOT" - }, - "4390": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17976 - ], - "op": "AND", - "path": "30" - }, - "4391": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17976 - ], - "op": "ISZERO", - "path": "30" - }, - "4392": { - "branch": 318, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17949, - 17976 - ], - "op": "ISZERO", - "path": "30" - }, - "4393": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17920, - 17976 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4394": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17916, - 18060 - ], - "op": "ISZERO", - "path": "30" - }, - "4395": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17916, - 18060 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1196" - }, - "4398": { - "branch": 318, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17916, - 18060 - ], - "op": "JUMPI", - "path": "30" - }, - "4399": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "statement": 63, - "value": "0x40" - }, - "4401": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "MLOAD", - "path": "30" - }, - "4402": { - "op": "PUSH4", - "value": "0x6CCC642F" - }, - "4407": { - "op": "PUSH1", - "value": "0xE0" - }, - "4409": { - "op": "SHL" - }, - "4410": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP2", - "path": "30" - }, - "4411": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "MSTORE", - "path": "30" - }, - "4412": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18014 - ], - "op": "PUSH20", - "path": "30", - "value": "0x0" - }, - "4433": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18014 - ], - "op": "SWAP1", - "path": "30" - }, - "4434": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18043 - ], - "op": "PUSH4", - "path": "30", - "value": "0x6CCC642F" - }, - "4439": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18043 - ], - "op": "SWAP1", - "path": "30" - }, - "4440": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1165" - }, - "4443": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "SWAP1", - "path": "30" - }, - "4444": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18044, - 18048 - ], - "op": "DUP13", - "path": "30" - }, - "4445": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18044, - 18048 - ], - "op": "SWAP1", - "path": "30" - }, - "4446": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "4448": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "ADD", - "path": "30" - }, - "4449": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH2", - "path": "30", - "value": "0x33F4" - }, - "4452": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 17992, - 18049 - ], - "op": "JUMP", - "path": "30" - }, - "4453": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4454": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4456": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4458": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "MLOAD", - "path": "30" - }, - "4459": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP1", - "path": "30" - }, - "4460": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP4", - "path": "30" - }, - "4461": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "SUB", - "path": "30" - }, - "4462": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP2", - "path": "30" - }, - "4463": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP7", - "path": "30" - }, - "4464": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP1", - "path": "30" - }, - "4465": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "EXTCODESIZE", - "path": "30" - }, - "4466": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "ISZERO", - "path": "30" - }, - "4467": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP1", - "path": "30" - }, - "4468": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "ISZERO", - "path": "30" - }, - "4469": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH2", - "path": "30", - "value": "0x117D" - }, - "4472": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "JUMPI", - "path": "30" - }, - "4473": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4475": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP1", - "path": "30" - }, - "4476": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "REVERT", - "path": "30" - }, - "4477": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4478": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "POP", - "path": "30" - }, - "4479": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "GAS", - "path": "30" - }, - "4480": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DELEGATECALL", - "path": "30" - }, - "4481": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "ISZERO", - "path": "30" - }, - "4482": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP1", - "path": "30" - }, - "4483": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "ISZERO", - "path": "30" - }, - "4484": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1191" - }, - "4487": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "JUMPI", - "path": "30" - }, - "4488": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4489": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4491": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "DUP1", - "path": "30" - }, - "4492": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "4493": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4494": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4496": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "REVERT", - "path": "30" - }, - "4497": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4498": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "POP", - "path": "30" - }, - "4499": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "POP", - "path": "30" - }, - "4500": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "POP", - "path": "30" - }, - "4501": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17992, - 18049 - ], - "op": "POP", - "path": "30" - }, - "4502": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 17916, - 18060 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4503": { - "branch": 319, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18431 - ], - "op": "DUP3", - "path": "30" - }, - "4504": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18458 - ], - "op": "DUP1", - "path": "30" - }, - "4505": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18458 - ], - "op": "ISZERO", - "path": "30" - }, - "4506": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18458 - ], - "op": "PUSH2", - "path": "30", - "value": "0x11B5" - }, - "4509": { - "branch": 319, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18458 - ], - "op": "JUMPI", - "path": "30" - }, - "4510": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18458 - ], - "op": "POP", - "path": "30" - }, - "4511": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18456, - 18458 - ], - "op": "DUP8", - "path": "30" - }, - "4512": { - "op": "PUSH1", - "value": "0x1" - }, - "4514": { - "op": "PUSH1", - "value": "0x1" - }, - "4516": { - "op": "PUSH1", - "value": "0xA0" - }, - "4518": { - "op": "SHL" - }, - "4519": { - "op": "SUB" - }, - "4520": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18435, - 18458 - ], - "op": "AND", - "path": "30" - }, - "4521": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18435, - 18452 - ], - "op": "DUP2", - "path": "30" - }, - "4522": { - "op": "PUSH1", - "value": "0x1" - }, - "4524": { - "op": "PUSH1", - "value": "0x1" - }, - "4526": { - "op": "PUSH1", - "value": "0xA0" - }, - "4528": { - "op": "SHL" - }, - "4529": { - "op": "SUB" - }, - "4530": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18435, - 18458 - ], - "op": "AND", - "path": "30" - }, - "4531": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18435, - 18458 - ], - "op": "EQ", - "path": "30" - }, - "4532": { - "branch": 320, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18435, - 18458 - ], - "op": "ISZERO", - "path": "30" - }, - "4533": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18458 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4534": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18487 - ], - "op": "DUP1", - "path": "30" - }, - "4535": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18487 - ], - "op": "ISZERO", - "path": "30" - }, - "4536": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18487 - ], - "op": "PUSH2", - "path": "30", - "value": "0x11CE" - }, - "4539": { - "branch": 320, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18487 - ], - "op": "JUMPI", - "path": "30" - }, - "4540": { - "op": "POP" - }, - "4541": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18479 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "4543": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18479 - ], - "op": "DUP7", - "path": "30" - }, - "4544": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18479 - ], - "op": "ADD", - "path": "30" - }, - "4545": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18479 - ], - "op": "MLOAD", - "path": "30" - }, - "4546": { - "op": "PUSH1", - "value": "0x1" - }, - "4548": { - "op": "PUSH1", - "value": "0x1" - }, - "4550": { - "op": "PUSH1", - "value": "0xF8" - }, - "4552": { - "op": "SHL" - }, - "4553": { - "op": "SUB" - }, - "4554": { - "op": "NOT" - }, - "4555": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18487 - ], - "op": "AND", - "path": "30" - }, - "4556": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18487 - ], - "op": "ISZERO", - "path": "30" - }, - "4557": { - "branch": 321, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18462, - 18487 - ], - "op": "ISZERO", - "path": "30" - }, - "4558": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18413, - 18487 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4559": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18409, - 18569 - ], - "op": "ISZERO", - "path": "30" - }, - "4560": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18409, - 18569 - ], - "op": "PUSH2", - "path": "30", - "value": "0x123B" - }, - "4563": { - "branch": 321, - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18409, - 18569 - ], - "op": "JUMPI", - "path": "30" - }, - "4564": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "statement": 64, - "value": "0x40" - }, - "4566": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "MLOAD", - "path": "30" - }, - "4567": { - "op": "PUSH4", - "value": "0x6CCC642F" - }, - "4572": { - "op": "PUSH1", - "value": "0xE0" - }, - "4574": { - "op": "SHL" - }, - "4575": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP2", - "path": "30" - }, - "4576": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "MSTORE", - "path": "30" - }, - "4577": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18525 - ], - "op": "PUSH20", - "path": "30", - "value": "0x0" - }, - "4598": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18525 - ], - "op": "SWAP1", - "path": "30" - }, - "4599": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18554 - ], - "op": "PUSH4", - "path": "30", - "value": "0x6CCC642F" - }, - "4604": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18554 - ], - "op": "SWAP1", - "path": "30" - }, - "4605": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH2", - "path": "30", - "value": "0x120A" - }, - "4608": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "SWAP1", - "path": "30" - }, - "4609": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18555, - 18557 - ], - "op": "DUP12", - "path": "30" - }, - "4610": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18555, - 18557 - ], - "op": "SWAP1", - "path": "30" - }, - "4611": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "4613": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "ADD", - "path": "30" - }, - "4614": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH2", - "path": "30", - "value": "0x33F4" - }, - "4617": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "i", - "offset": [ - 18503, - 18558 - ], - "op": "JUMP", - "path": "30" - }, - "4618": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4619": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4621": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4623": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "MLOAD", - "path": "30" - }, - "4624": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP1", - "path": "30" - }, - "4625": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP4", - "path": "30" - }, - "4626": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "SUB", - "path": "30" - }, - "4627": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP2", - "path": "30" - }, - "4628": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP7", - "path": "30" - }, - "4629": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP1", - "path": "30" - }, - "4630": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "EXTCODESIZE", - "path": "30" - }, - "4631": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "ISZERO", - "path": "30" - }, - "4632": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP1", - "path": "30" - }, - "4633": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "ISZERO", - "path": "30" - }, - "4634": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1222" - }, - "4637": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "JUMPI", - "path": "30" - }, - "4638": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4640": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP1", - "path": "30" - }, - "4641": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "REVERT", - "path": "30" - }, - "4642": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4643": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "POP", - "path": "30" - }, - "4644": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "GAS", - "path": "30" - }, - "4645": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DELEGATECALL", - "path": "30" - }, - "4646": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "ISZERO", - "path": "30" - }, - "4647": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP1", - "path": "30" - }, - "4648": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "ISZERO", - "path": "30" - }, - "4649": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1236" - }, - "4652": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "JUMPI", - "path": "30" - }, - "4653": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4654": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4656": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "DUP1", - "path": "30" - }, - "4657": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "RETURNDATACOPY", - "path": "30" - }, - "4658": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "RETURNDATASIZE", - "path": "30" - }, - "4659": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "PUSH1", - "path": "30", - "value": "0x0" - }, - "4661": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "REVERT", - "path": "30" - }, - "4662": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4663": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "POP", - "path": "30" - }, - "4664": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "POP", - "path": "30" - }, - "4665": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "POP", - "path": "30" - }, - "4666": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18503, - 18558 - ], - "op": "POP", - "path": "30" - }, - "4667": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 18409, - 18569 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4668": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4669": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4670": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4671": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4672": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4673": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4674": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4675": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4676": { - "fn": "ERC1155Action._checkPostTransferEvent", - "offset": [ - 15492, - 18575 - ], - "op": "POP", - "path": "30" - }, - "4677": { - "fn": "ERC1155Action._checkPostTransferEvent", - "jump": "o", - "offset": [ - 15492, - 18575 - ], - "op": "JUMP", - "path": "30" - }, - "4678": { - "fn": "Address.isContract", - "offset": [ - 718, - 1131 - ], - "op": "JUMPDEST", - "path": "16" - }, - "4679": { - "fn": "Address.isContract", - "offset": [ - 1078, - 1098 - ], - "op": "EXTCODESIZE", - "path": "16" - }, - "4680": { - "fn": "Address.isContract", - "offset": [ - 1116, - 1124 - ], - "op": "ISZERO", - "path": "16", - "statement": 65 - }, - "4681": { - "fn": "Address.isContract", - "offset": [ - 1116, - 1124 - ], - "op": "ISZERO", - "path": "16" - }, - "4682": { - "fn": "Address.isContract", - "offset": [ - 1116, - 1124 - ], - "op": "SWAP1", - "path": "16" - }, - "4683": { - "fn": "Address.isContract", - "jump": "o", - "offset": [ - 718, - 1131 - ], - "op": "JUMP", - "path": "16" - }, - "4684": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "JUMPDEST", - "path": "85" - }, - "4685": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1016, - 1023 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "4687": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "4690": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1043, - 1081 - ], - "op": "DUP5", - "path": "85", - "statement": 66 - }, - "4691": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1043, - 1081 - ], - "op": "GT", - "path": "85" - }, - "4692": { - "branch": 446, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1043, - 1081 - ], - "op": "ISZERO", - "path": "85" - }, - "4693": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "PUSH2", - "path": "85", - "value": "0x125D" - }, - "4696": { - "branch": 446, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "JUMPI", - "path": "85" - }, - "4697": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "4699": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "DUP1", - "path": "85" - }, - "4700": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "REVERT", - "path": "85" - }, - "4701": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1035, - 1082 - ], - "op": "JUMPDEST", - "path": "85" - }, - "4702": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1112, - 1128 - ], - "op": "PUSH5", - "path": "85", - "statement": 67, - "value": "0xFFFFFFFFFF" - }, - "4708": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1100, - 1128 - ], - "op": "DUP4", - "path": "85" - }, - "4709": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1100, - 1128 - ], - "op": "GT", - "path": "85" - }, - "4710": { - "branch": 447, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1100, - 1128 - ], - "op": "ISZERO", - "path": "85" - }, - "4711": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "PUSH2", - "path": "85", - "value": "0x126F" - }, - "4714": { - "branch": 447, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "JUMPI", - "path": "85" - }, - "4715": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "4717": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "DUP1", - "path": "85" - }, - "4718": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "REVERT", - "path": "85" - }, - "4719": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1092, - 1129 - ], - "op": "JUMPDEST", - "path": "85" - }, - "4720": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "4722": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1147, - 1195 - ], - "op": "DUP3", - "path": "85", - "statement": 68 - }, - "4723": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1147, - 1195 - ], - "op": "GT", - "path": "85" - }, - "4724": { - "branch": 448, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1147, - 1195 - ], - "op": "ISZERO", - "path": "85" - }, - "4725": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "PUSH2", - "path": "85", - "value": "0x127D" - }, - "4728": { - "branch": 448, - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "JUMPI", - "path": "85" - }, - "4729": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "4731": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "DUP1", - "path": "85" - }, - "4732": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "REVERT", - "path": "85" - }, - "4733": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1139, - 1196 - ], - "op": "JUMPDEST", - "path": "85" - }, - "4734": { - "op": "POP" - }, - "4735": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH8", - "path": "85", - "statement": 69, - "value": "0xFFFF000000000000" - }, - "4744": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1292, - 1294 - ], - "op": "PUSH1", - "path": "85", - "value": "0x30" - }, - "4746": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "DUP5", - "path": "85" - }, - "4747": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "SWAP1", - "path": "85" - }, - "4748": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "SHL", - "path": "85" - }, - "4749": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1252, - 1294 - ], - "op": "AND", - "path": "85" - }, - "4750": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "PUSH6", - "path": "85", - "value": "0xFFFFFFFFFF00" - }, - "4757": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1357, - 1358 - ], - "op": "PUSH1", - "path": "85", - "value": "0x8" - }, - "4759": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "DUP5", - "path": "85" - }, - "4760": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "SWAP1", - "path": "85" - }, - "4761": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "SHL", - "path": "85" - }, - "4762": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1319, - 1358 - ], - "op": "AND", - "path": "85" - }, - "4763": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1251, - 1359 - ], - "op": "OR", - "path": "85" - }, - "4764": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1390, - 1415 - ], - "op": "PUSH1", - "path": "85", - "value": "0xFF" - }, - "4766": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1390, - 1415 - ], - "op": "DUP3", - "path": "85" - }, - "4767": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1390, - 1415 - ], - "op": "AND", - "path": "85" - }, - "4768": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 1251, - 1416 - ], - "op": "OR", - "path": "85" - }, - "4769": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "SWAP4", - "path": "85" - }, - "4770": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "SWAP3", - "path": "85" - }, - "4771": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "POP", - "path": "85" - }, - "4772": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "POP", - "path": "85" - }, - "4773": { - "fn": "TransferAssets.encodeAssetId", - "offset": [ - 883, - 1437 - ], - "op": "POP", - "path": "85" - }, - "4774": { - "fn": "TransferAssets.encodeAssetId", - "jump": "o", - "offset": [ - 883, - 1437 - ], - "op": "JUMP", - "path": "85" - }, - "4775": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 541, - 843 - ], - "op": "JUMPDEST", - "path": "85" - }, - "4776": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 807, - 836 - ], - "op": "PUSH2", - "path": "85", - "statement": 70, - "value": "0xFFFF" - }, - "4779": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 833, - 835 - ], - "op": "PUSH1", - "path": "85", - "value": "0x30" - }, - "4781": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 827, - 835 - ], - "op": "DUP3", - "path": "85" - }, - "4782": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 827, - 835 - ], - "op": "SWAP1", - "path": "85" - }, - "4783": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 827, - 835 - ], - "op": "SHR", - "path": "85" - }, - "4784": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 807, - 836 - ], - "op": "AND", - "path": "85" - }, - "4785": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 807, - 836 - ], - "op": "SWAP2", - "path": "85" - }, - "4786": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 771, - 797 - ], - "op": "PUSH5", - "path": "85", - "statement": 71, - "value": "0xFFFFFFFFFF" - }, - "4792": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 795, - 796 - ], - "op": "PUSH1", - "path": "85", - "value": "0x8" - }, - "4794": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 789, - 796 - ], - "op": "DUP4", - "path": "85" - }, - "4795": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 789, - 796 - ], - "op": "SWAP1", - "path": "85" - }, - "4796": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 789, - 796 - ], - "op": "SHR", - "path": "85" - }, - "4797": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 771, - 797 - ], - "op": "AND", - "path": "85" - }, - "4798": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 771, - 797 - ], - "op": "SWAP2", - "path": "85" - }, - "4799": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 740, - 761 - ], - "op": "PUSH1", - "path": "85", - "statement": 72, - "value": "0xFF" - }, - "4801": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 740, - 761 - ], - "op": "AND", - "path": "85" - }, - "4802": { - "fn": "TransferAssets.decodeAssetId", - "offset": [ - 740, - 761 - ], - "op": "SWAP1", - "path": "85" - }, - "4803": { - "fn": "TransferAssets.decodeAssetId", - "jump": "o", - "offset": [ - 541, - 843 - ], - "op": "JUMP", - "path": "85" - }, - "4804": { - "fn": "SafeInt256.toInt", - "offset": [ - 2520, - 2683 - ], - "op": "JUMPDEST", - "path": "94" - }, - "4805": { - "fn": "SafeInt256.toInt", - "offset": [ - 2569, - 2575 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "4807": { - "op": "PUSH1", - "value": "0x1" - }, - "4809": { - "op": "PUSH1", - "value": "0x1" - }, - "4811": { - "op": "PUSH1", - "value": "0xFF" - }, - "4813": { - "op": "SHL" - }, - "4814": { - "op": "SUB" - }, - "4815": { - "fn": "SafeInt256.toInt", - "offset": [ - 2596, - 2597 - ], - "op": "DUP3", - "path": "94", - "statement": 73 - }, - "4816": { - "fn": "SafeInt256.toInt", - "offset": [ - 2596, - 2626 - ], - "op": "GT", - "path": "94" - }, - "4817": { - "branch": 437, - "fn": "SafeInt256.toInt", - "offset": [ - 2596, - 2626 - ], - "op": "ISZERO", - "path": "94" - }, - "4818": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "PUSH2", - "path": "94", - "value": "0xA32" - }, - "4821": { - "branch": 437, - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "JUMPI", - "path": "94" - }, - "4822": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "4824": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "DUP1", - "path": "94" - }, - "4825": { - "fn": "SafeInt256.toInt", - "offset": [ - 2587, - 2627 - ], - "op": "REVERT", - "path": "94" - }, - "4826": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13687, - 13984 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4827": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13849, - 13935 - ], - "op": "PUSH2", - "path": "30", - "statement": 74, - "value": "0x12F0" - }, - "4830": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13874, - 13913 - ], - "op": "PUSH2", - "path": "30", - "value": "0x12E6" - }, - "4833": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13902, - 13912 - ], - "op": "DUP5", - "path": "30" - }, - "4834": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13874, - 13901 - ], - "op": "PUSH2", - "path": "30", - "value": "0x190B" - }, - "4837": { - "fn": "ERC1155Action._requireValidMaturity", - "jump": "i", - "offset": [ - 13874, - 13913 - ], - "op": "JUMP", - "path": "30" - }, - "4838": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13874, - 13913 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4839": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13849, - 13935 - ], - "op": "PUSH1", - "path": "30", - "value": "0xFF" - }, - "4841": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13849, - 13935 - ], - "op": "AND", - "path": "30" - }, - "4842": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13915, - 13923 - ], - "op": "DUP4", - "path": "30" - }, - "4843": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13925, - 13934 - ], - "op": "DUP4", - "path": "30" - }, - "4844": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13849, - 13873 - ], - "op": "PUSH2", - "path": "30", - "value": "0x1921" - }, - "4847": { - "fn": "ERC1155Action._requireValidMaturity", - "jump": "i", - "offset": [ - 13849, - 13935 - ], - "op": "JUMP", - "path": "30" - }, - "4848": { - "branch": 322, - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13849, - 13935 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4849": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "PUSH2", - "path": "30", - "value": "0x130C" - }, - "4852": { - "branch": 322, - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "JUMPI", - "path": "30" - }, - "4853": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "PUSH1", - "path": "30", - "value": "0x40" - }, - "4855": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "MLOAD", - "path": "30" - }, - "4856": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "4860": { - "op": "PUSH1", - "value": "0xE5" - }, - "4862": { - "op": "SHL" - }, - "4863": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "DUP2", - "path": "30" - }, - "4864": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "MSTORE", - "path": "30" - }, - "4865": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "4867": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "ADD", - "path": "30" - }, - "4868": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3D8" - }, - "4871": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "SWAP1", - "path": "30" - }, - "4872": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3763" - }, - "4875": { - "fn": "ERC1155Action._requireValidMaturity", - "jump": "i", - "offset": [ - 13828, - 13977 - ], - "op": "JUMP", - "path": "30" - }, - "4876": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13828, - 13977 - ], - "op": "JUMPDEST", - "path": "30" - }, - "4877": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13687, - 13984 - ], - "op": "POP", - "path": "30" - }, - "4878": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13687, - 13984 - ], - "op": "POP", - "path": "30" - }, - "4879": { - "fn": "ERC1155Action._requireValidMaturity", - "offset": [ - 13687, - 13984 - ], - "op": "POP", - "path": "30" - }, - "4880": { - "fn": "ERC1155Action._requireValidMaturity", - "jump": "o", - "offset": [ - 13687, - 13984 - ], - "op": "JUMP", - "path": "30" - }, - "4881": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 1879, - 2108 - ], - "op": "JUMPDEST", - "path": "62" - }, - "4882": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 1940, - 1988 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "4884": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2005, - 2017 - ], - "op": "DUP1", - "path": "62" - }, - "4885": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2020, - 2061 - ], - "op": "PUSH2", - "path": "62", - "value": "0x30C" - }, - "4888": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2036, - 2060 - ], - "op": "PUSH1", - "path": "62", - "value": "0x1" - }, - "4890": { - "fn": "LibStorage.getAccountStorage", - "offset": [ - 2020, - 2035 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1971" - }, - "4893": { - "fn": "LibStorage.getAccountStorage", - "jump": "i", - "offset": [ - 2020, - 2061 - ], - "op": "JUMP", - "path": "62" - }, - "4894": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1320, - 1688 - ], - "op": "JUMPDEST", - "path": "83" - }, - "4895": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1455, - 1470 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "4897": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1482, - 1581 - ], - "op": "DUP1", - "path": "83" - }, - "4898": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1584, - 1619 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1329" - }, - "4901": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1584, - 1617 - ], - "op": "PUSH2", - "path": "83", - "value": "0x198A" - }, - "4904": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "jump": "i", - "offset": [ - 1584, - 1619 - ], - "op": "JUMP", - "path": "83" - }, - "4905": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1584, - 1619 - ], - "op": "JUMPDEST", - "path": "83" - }, - "4906": { - "op": "PUSH1", - "value": "0x1" - }, - "4908": { - "op": "PUSH1", - "value": "0x1" - }, - "4910": { - "op": "PUSH1", - "value": "0xA0" - }, - "4912": { - "op": "SHL" - }, - "4913": { - "op": "SUB" - }, - "4914": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "DUP7", - "path": "83", - "statement": 75 - }, - "4915": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "AND", - "path": "83" - }, - "4916": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "4918": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "SWAP1", - "path": "83" - }, - "4919": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "DUP2", - "path": "83" - }, - "4920": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "MSTORE", - "path": "83" - }, - "4921": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "4923": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "SWAP2", - "path": "83" - }, - "4924": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "DUP3", - "path": "83" - }, - "4925": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "MSTORE", - "path": "83" - }, - "4926": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "PUSH1", - "path": "83", - "value": "0x40" - }, - "4928": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "DUP1", - "path": "83" - }, - "4929": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "DUP3", - "path": "83" - }, - "4930": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1650 - ], - "op": "KECCAK256", - "path": "83" - }, - "4931": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "DUP8", - "path": "83" - }, - "4932": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "DUP4", - "path": "83" - }, - "4933": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "MSTORE", - "path": "83" - }, - "4934": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "DUP4", - "path": "83" - }, - "4935": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "MSTORE", - "path": "83" - }, - "4936": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "DUP1", - "path": "83" - }, - "4937": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "DUP3", - "path": "83" - }, - "4938": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1662 - ], - "op": "KECCAK256", - "path": "83" - }, - "4939": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "DUP7", - "path": "83" - }, - "4940": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "DUP4", - "path": "83" - }, - "4941": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "MSTORE", - "path": "83" - }, - "4942": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "SWAP1", - "path": "83" - }, - "4943": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "SWAP3", - "path": "83" - }, - "4944": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "MSTORE", - "path": "83" - }, - "4945": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1672 - ], - "op": "KECCAK256", - "path": "83" - }, - "4946": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1681 - ], - "op": "SLOAD", - "path": "83" - }, - "4947": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1681 - ], - "op": "PUSH1", - "path": "83", - "value": "0xF" - }, - "4949": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1681 - ], - "op": "SWAP1", - "path": "83" - }, - "4950": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1681 - ], - "op": "DUP2", - "path": "83" - }, - "4951": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1636, - 1681 - ], - "op": "SIGNEXTEND", - "path": "83" - }, - "4952": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1629, - 1681 - ], - "op": "SWAP1", - "path": "83" - }, - "4953": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1629, - 1681 - ], - "op": "SIGNEXTEND", - "path": "83" - }, - "4954": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1629, - 1681 - ], - "op": "SWAP2", - "path": "83" - }, - "4955": { - "op": "POP" - }, - "4956": { - "op": "POP" - }, - "4957": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1320, - 1688 - ], - "op": "SWAP4", - "path": "83" - }, - "4958": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1320, - 1688 - ], - "op": "SWAP3", - "path": "83" - }, - "4959": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1320, - 1688 - ], - "op": "POP", - "path": "83" - }, - "4960": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1320, - 1688 - ], - "op": "POP", - "path": "83" - }, - "4961": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "offset": [ - 1320, - 1688 - ], - "op": "POP", - "path": "83" - }, - "4962": { - "fn": "BitmapAssetsHandler.getifCashNotional", - "jump": "o", - "offset": [ - 1320, - 1688 - ], - "op": "JUMP", - "path": "83" - }, - "4963": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16756, - 17863 - ], - "op": "JUMPDEST", - "path": "84" - }, - "4964": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16858, - 16881 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "4966": { - "offset": [ - 588, - 590 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "4968": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16961 - ], - "op": "DUP3", - "path": "84", - "statement": 76 - }, - "4969": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "4971": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "AND", - "path": "84" - }, - "4972": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "GT", - "path": "84" - }, - "4973": { - "branch": 387, - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16955, - 16985 - ], - "op": "ISZERO", - "path": "84" - }, - "4974": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1376" - }, - "4977": { - "branch": 387, - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "JUMPI", - "path": "84" - }, - "4978": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "4980": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "DUP1", - "path": "84" - }, - "4981": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "REVERT", - "path": "84" - }, - "4982": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16947, - 16986 - ], - "op": "JUMPDEST", - "path": "84" - }, - "4983": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16997, - 17087 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "4985": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17090, - 17127 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1380" - }, - "4988": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17090, - 17125 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1997" - }, - "4991": { - "fn": "PortfolioHandler._loadAssetArray", - "jump": "i", - "offset": [ - 17090, - 17127 - ], - "op": "JUMP", - "path": "84" - }, - "4992": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17090, - 17127 - ], - "op": "JUMPDEST", - "path": "84" - }, - "4993": { - "op": "PUSH1", - "value": "0x1" - }, - "4995": { - "op": "PUSH1", - "value": "0x1" - }, - "4997": { - "op": "PUSH1", - "value": "0xA0" - }, - "4999": { - "op": "SHL" - }, - "5000": { - "op": "SUB" - }, - "5001": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP6", - "path": "84" - }, - "5002": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "AND", - "path": "84" - }, - "5003": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17137, - 17201 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5005": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "SWAP1", - "path": "84" - }, - "5006": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP2", - "path": "84" - }, - "5007": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "MSTORE", - "path": "84" - }, - "5008": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5010": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP3", - "path": "84" - }, - "5011": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "SWAP1", - "path": "84" - }, - "5012": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "MSTORE", - "path": "84" - }, - "5013": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5015": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "DUP2", - "path": "84" - }, - "5016": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17204, - 17218 - ], - "op": "KECCAK256", - "path": "84" - }, - "5017": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16997, - 17127 - ], - "op": "SWAP2", - "path": "84" - }, - "5018": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 16997, - 17127 - ], - "op": "SWAP3", - "path": "84" - }, - "5019": { - "op": "POP" - }, - "5020": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "5022": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP6", - "path": "84" - }, - "5023": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "AND", - "path": "84" - }, - "5024": { - "op": "PUSH1", - "value": "0x1" - }, - "5026": { - "op": "PUSH1", - "value": "0x1" - }, - "5028": { - "op": "PUSH1", - "value": "0x40" - }, - "5030": { - "op": "SHL" - }, - "5031": { - "op": "SUB" - }, - "5032": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "5033": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "GT", - "path": "84" - }, - "5034": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "5035": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ISZERO", - "path": "84" - }, - "5036": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x13B4" - }, - "5039": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPI", - "path": "84" - }, - "5040": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5042": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "5043": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "REVERT", - "path": "84" - }, - "5044": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5045": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "POP", - "path": "84" - }, - "5046": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5048": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MLOAD", - "path": "84" - }, - "5049": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "5050": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "5051": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP3", - "path": "84" - }, - "5052": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MSTORE", - "path": "84" - }, - "5053": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "5054": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5056": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MUL", - "path": "84" - }, - "5057": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5059": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "5060": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP3", - "path": "84" - }, - "5061": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "5062": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5064": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MSTORE", - "path": "84" - }, - "5065": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP1", - "path": "84" - }, - "5066": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ISZERO", - "path": "84" - }, - "5067": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x13EE" - }, - "5070": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPI", - "path": "84" - }, - "5071": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "5072": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5074": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "5075": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5076": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x13DB" - }, - "5079": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2E5F" - }, - "5082": { - "fn": "PortfolioHandler._loadAssetArray", - "jump": "i", - "offset": [ - 17261, - 17289 - ], - "op": "JUMP", - "path": "84" - }, - "5083": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5084": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "5085": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "MSTORE", - "path": "84" - }, - "5086": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5088": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "ADD", - "path": "84" - }, - "5089": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "5090": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5092": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "5093": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SUB", - "path": "84" - }, - "5094": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "5095": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "DUP2", - "path": "84" - }, - "5096": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "PUSH2", - "path": "84", - "value": "0x13D3" - }, - "5099": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPI", - "path": "84" - }, - "5100": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "5101": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "POP", - "path": "84" - }, - "5102": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5103": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17261, - 17289 - ], - "op": "POP", - "path": "84" - }, - "5104": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17228, - 17289 - ], - "op": "SWAP1", - "path": "84" - }, - "5105": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17228, - 17289 - ], - "op": "POP", - "path": "84" - }, - "5106": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17305, - 17314 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5108": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5109": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17324, - 17330 - ], - "op": "DUP6", - "path": "84" - }, - "5110": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17330 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "5112": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17330 - ], - "op": "AND", - "path": "84" - }, - "5113": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17321 - ], - "op": "DUP2", - "path": "84" - }, - "5114": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17320, - 17330 - ], - "op": "LT", - "path": "84" - }, - "5115": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "ISZERO", - "path": "84" - }, - "5116": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "PUSH2", - "path": "84", - "value": "0x62B" - }, - "5119": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMPI", - "path": "84" - }, - "5120": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17351, - 17393 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5122": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17408 - ], - "op": "DUP4", - "path": "84" - }, - "5123": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17409, - 17410 - ], - "op": "DUP3", - "path": "84" - }, - "5124": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "5126": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "DUP2", - "path": "84" - }, - "5127": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "LT", - "path": "84" - }, - "5128": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "PUSH2", - "path": "84", - "value": "0x140D" - }, - "5131": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "JUMPI", - "path": "84" - }, - "5132": { - "dev": "Index out of range", - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "INVALID", - "path": "84" - }, - "5133": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5134": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17396, - 17411 - ], - "op": "ADD", - "path": "84" - }, - "5135": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17351, - 17411 - ], - "op": "SWAP1", - "path": "84" - }, - "5136": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17351, - 17411 - ], - "op": "POP", - "path": "84" - }, - "5137": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17425, - 17452 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5139": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17461 - ], - "op": "DUP4", - "path": "84" - }, - "5140": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17462, - 17463 - ], - "op": "DUP4", - "path": "84" - }, - "5141": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "5142": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "MLOAD", - "path": "84" - }, - "5143": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "5144": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "LT", - "path": "84" - }, - "5145": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "PUSH2", - "path": "84", - "value": "0x141E" - }, - "5148": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "JUMPI", - "path": "84" - }, - "5149": { - "dev": "Index out of range", - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "INVALID", - "path": "84" - }, - "5150": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5151": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5153": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP1", - "path": "84" - }, - "5154": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "5155": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "MUL", - "path": "84" - }, - "5156": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP2", - "path": "84" - }, - "5157": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP1", - "path": "84" - }, - "5158": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "SWAP2", - "path": "84" - }, - "5159": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "ADD", - "path": "84" - }, - "5160": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "DUP2", - "path": "84" - }, - "5161": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "ADD", - "path": "84" - }, - "5162": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17455, - 17464 - ], - "op": "MLOAD", - "path": "84" - }, - "5163": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "DUP4", - "path": "84", - "statement": 77 - }, - "5164": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "SLOAD", - "path": "84" - }, - "5165": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "PUSH2", - "path": "84", - "value": "0xFFFF" - }, - "5168": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "DUP2", - "path": "84" - }, - "5169": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "AND", - "path": "84" - }, - "5170": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17584, - 17626 - ], - "op": "DUP3", - "path": "84" - }, - "5171": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17584, - 17626 - ], - "op": "MSTORE", - "path": "84" - }, - "5172": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "PUSH5", - "path": "84", - "statement": 78, - "value": "0xFFFFFFFFFF" - }, - "5178": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "PUSH3", - "path": "84", - "value": "0x10000" - }, - "5182": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "DUP3", - "path": "84" - }, - "5183": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "DIV", - "path": "84" - }, - "5184": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17657, - 17678 - ], - "op": "AND", - "path": "84" - }, - "5185": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17654 - ], - "op": "SWAP3", - "path": "84" - }, - "5186": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17654 - ], - "op": "DUP3", - "path": "84" - }, - "5187": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17654 - ], - "op": "ADD", - "path": "84" - }, - "5188": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "SWAP3", - "path": "84" - }, - "5189": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "SWAP1", - "path": "84" - }, - "5190": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "SWAP3", - "path": "84" - }, - "5191": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17640, - 17678 - ], - "op": "MSTORE", - "path": "84" - }, - "5192": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "PUSH1", - "path": "84", - "statement": 79, - "value": "0xFF" - }, - "5194": { - "op": "PUSH1", - "value": "0x1" - }, - "5196": { - "op": "PUSH1", - "value": "0x38" - }, - "5198": { - "op": "SHL" - }, - "5199": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "DUP4", - "path": "84" - }, - "5200": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "DIV", - "path": "84" - }, - "5201": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17710, - 17732 - ], - "op": "AND", - "path": "84" - }, - "5202": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17707 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5204": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17707 - ], - "op": "DUP3", - "path": "84" - }, - "5205": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17707 - ], - "op": "ADD", - "path": "84" - }, - "5206": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17692, - 17732 - ], - "op": "MSTORE", - "path": "84" - }, - "5207": { - "op": "PUSH1", - "value": "0x1" - }, - "5209": { - "op": "PUSH1", - "value": "0x40" - }, - "5211": { - "op": "SHL" - }, - "5212": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SWAP1", - "path": "84", - "statement": 80 - }, - "5213": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SWAP2", - "path": "84" - }, - "5214": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "DIV", - "path": "84" - }, - "5215": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA" - }, - "5217": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SWAP1", - "path": "84" - }, - "5218": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "DUP2", - "path": "84" - }, - "5219": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17763, - 17784 - ], - "op": "SIGNEXTEND", - "path": "84" - }, - "5220": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17784 - ], - "op": "SWAP1", - "path": "84" - }, - "5221": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17784 - ], - "op": "SIGNEXTEND", - "path": "84" - }, - "5222": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17760 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "5224": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17760 - ], - "op": "DUP3", - "path": "84" - }, - "5225": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17760 - ], - "op": "ADD", - "path": "84" - }, - "5226": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17746, - 17784 - ], - "op": "MSTORE", - "path": "84" - }, - "5227": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17815 - ], - "op": "PUSH1", - "path": "84", - "statement": 81, - "value": "0x80" - }, - "5229": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17815 - ], - "op": "ADD", - "path": "84" - }, - "5230": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "SWAP2", - "path": "84" - }, - "5231": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "SWAP1", - "path": "84" - }, - "5232": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "SWAP2", - "path": "84" - }, - "5233": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17798, - 17822 - ], - "op": "MSTORE", - "path": "84" - }, - "5234": { - "op": "POP" - }, - "5235": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17603, - 17626 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5237": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17332, - 17335 - ], - "op": "ADD", - "path": "84", - "statement": 82 - }, - "5238": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "PUSH2", - "path": "84", - "value": "0x13F4" - }, - "5241": { - "fn": "PortfolioHandler._loadAssetArray", - "offset": [ - 17300, - 17833 - ], - "op": "JUMP", - "path": "84" - }, - "5242": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15921, - 16750 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5243": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16015, - 16028 - ], - "op": "DUP1", - "path": "84" - }, - "5244": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16015, - 16028 - ], - "op": "MLOAD", - "path": "84" - }, - "5245": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15998, - 16012 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5247": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16015, - 16028 - ], - "op": "DUP2", - "path": "84" - }, - "5248": { - "op": "PUSH1", - "value": "0x1" - }, - "5250": { - "op": "PUSH1", - "value": "0x1" - }, - "5252": { - "op": "PUSH1", - "value": "0x40" - }, - "5254": { - "op": "SHL" - }, - "5255": { - "op": "SUB" - }, - "5256": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP2", - "path": "84" - }, - "5257": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "GT", - "path": "84" - }, - "5258": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "5259": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ISZERO", - "path": "84" - }, - "5260": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1494" - }, - "5263": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPI", - "path": "84" - }, - "5264": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5266": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "5267": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "REVERT", - "path": "84" - }, - "5268": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5269": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "POP", - "path": "84" - }, - "5270": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5272": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MLOAD", - "path": "84" - }, - "5273": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "SWAP1", - "path": "84" - }, - "5274": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "5275": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP3", - "path": "84" - }, - "5276": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MSTORE", - "path": "84" - }, - "5277": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "5278": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5280": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MUL", - "path": "84" - }, - "5281": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5283": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "5284": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP3", - "path": "84" - }, - "5285": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "5286": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5288": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MSTORE", - "path": "84" - }, - "5289": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "5290": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ISZERO", - "path": "84" - }, - "5291": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH2", - "path": "84", - "value": "0x14BE" - }, - "5294": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPI", - "path": "84" - }, - "5295": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP2", - "path": "84" - }, - "5296": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5298": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "5299": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5301": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP3", - "path": "84" - }, - "5302": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "MUL", - "path": "84" - }, - "5303": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP1", - "path": "84" - }, - "5304": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "CALLDATASIZE", - "path": "84" - }, - "5305": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "DUP4", - "path": "84" - }, - "5306": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "CALLDATACOPY", - "path": "84" - }, - "5307": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "ADD", - "path": "84" - }, - "5308": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "SWAP1", - "path": "84" - }, - "5309": { - "op": "POP" - }, - "5310": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5311": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16061, - 16082 - ], - "op": "POP", - "path": "84" - }, - "5312": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16038, - 16082 - ], - "op": "SWAP1", - "path": "84" - }, - "5313": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16038, - 16082 - ], - "op": "POP", - "path": "84" - }, - "5314": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16097, - 16106 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5316": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5317": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16112, - 16118 - ], - "op": "DUP3", - "path": "84" - }, - "5318": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16108, - 16109 - ], - "op": "DUP2", - "path": "84" - }, - "5319": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16108, - 16118 - ], - "op": "LT", - "path": "84" - }, - "5320": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "ISZERO", - "path": "84" - }, - "5321": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "PUSH2", - "path": "84", - "value": "0x151B" - }, - "5324": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMPI", - "path": "84" - }, - "5325": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16139, - 16166 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5327": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16175 - ], - "op": "DUP5", - "path": "84" - }, - "5328": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16176, - 16177 - ], - "op": "DUP3", - "path": "84" - }, - "5329": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "DUP2", - "path": "84" - }, - "5330": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "MLOAD", - "path": "84" - }, - "5331": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "DUP2", - "path": "84" - }, - "5332": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "LT", - "path": "84" - }, - "5333": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "PUSH2", - "path": "84", - "value": "0x14DA" - }, - "5336": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "JUMPI", - "path": "84" - }, - "5337": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "INVALID", - "path": "84" - }, - "5338": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5339": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5341": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "MUL", - "path": "84" - }, - "5342": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5344": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "ADD", - "path": "84" - }, - "5345": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "ADD", - "path": "84" - }, - "5346": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16169, - 16178 - ], - "op": "MLOAD", - "path": "84" - }, - "5347": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16139, - 16178 - ], - "op": "SWAP1", - "path": "84" - }, - "5348": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16139, - 16178 - ], - "op": "POP", - "path": "84" - }, - "5349": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16259, - 16338 - ], - "op": "PUSH2", - "path": "84", - "statement": 83, - "value": "0x14FB" - }, - "5352": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16293 - ], - "op": "DUP2", - "path": "84" - }, - "5353": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16304 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5355": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16304 - ], - "op": "ADD", - "path": "84" - }, - "5356": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16288, - 16304 - ], - "op": "MLOAD", - "path": "84" - }, - "5357": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16311 - ], - "op": "DUP3", - "path": "84" - }, - "5358": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16320 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5360": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16320 - ], - "op": "ADD", - "path": "84" - }, - "5361": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16306, - 16320 - ], - "op": "MLOAD", - "path": "84" - }, - "5362": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16327 - ], - "op": "DUP4", - "path": "84" - }, - "5363": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16337 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "5365": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16337 - ], - "op": "ADD", - "path": "84" - }, - "5366": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16322, - 16337 - ], - "op": "MLOAD", - "path": "84" - }, - "5367": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16259, - 16287 - ], - "op": "PUSH2", - "path": "84", - "value": "0x124C" - }, - "5370": { - "fn": "PortfolioHandler._sortInPlace", - "jump": "i", - "offset": [ - 16259, - 16338 - ], - "op": "JUMP", - "path": "84" - }, - "5371": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16259, - 16338 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5372": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16253 - ], - "op": "DUP4", - "path": "84" - }, - "5373": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16254, - 16255 - ], - "op": "DUP4", - "path": "84" - }, - "5374": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "DUP2", - "path": "84" - }, - "5375": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "MLOAD", - "path": "84" - }, - "5376": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "DUP2", - "path": "84" - }, - "5377": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "LT", - "path": "84" - }, - "5378": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1507" - }, - "5381": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "JUMPI", - "path": "84" - }, - "5382": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "INVALID", - "path": "84" - }, - "5383": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5384": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5386": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP1", - "path": "84" - }, - "5387": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "DUP2", - "path": "84" - }, - "5388": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "MUL", - "path": "84" - }, - "5389": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP2", - "path": "84" - }, - "5390": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP1", - "path": "84" - }, - "5391": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "SWAP2", - "path": "84" - }, - "5392": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "ADD", - "path": "84" - }, - "5393": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16256 - ], - "op": "ADD", - "path": "84" - }, - "5394": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16250, - 16338 - ], - "op": "MSTORE", - "path": "84" - }, - "5395": { - "op": "POP" - }, - "5396": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16120, - 16123 - ], - "op": "PUSH1", - "path": "84", - "statement": 84, - "value": "0x1" - }, - "5398": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16120, - 16123 - ], - "op": "ADD", - "path": "84" - }, - "5399": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "PUSH2", - "path": "84", - "value": "0x14C4" - }, - "5402": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMP", - "path": "84" - }, - "5403": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16092, - 16349 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5404": { - "op": "POP" - }, - "5405": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16403, - 16404 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5407": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5408": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16425, - 16431 - ], - "op": "DUP3", - "path": "84" - }, - "5409": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16421, - 16422 - ], - "op": "DUP2", - "path": "84" - }, - "5410": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16421, - 16431 - ], - "op": "LT", - "path": "84" - }, - "5411": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "ISZERO", - "path": "84" - }, - "5412": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1632" - }, - "5415": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMPI", - "path": "84" - }, - "5416": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16459, - 16460 - ], - "op": "DUP1", - "path": "84" - }, - "5417": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5418": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16485, - 16486 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "5420": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16482 - ], - "op": "DUP2", - "path": "84" - }, - "5421": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16486 - ], - "op": "GT", - "path": "84" - }, - "5422": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "DUP1", - "path": "84" - }, - "5423": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "ISZERO", - "path": "84" - }, - "5424": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1561" - }, - "5427": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "JUMPI", - "path": "84" - }, - "5428": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "POP", - "path": "84" - }, - "5429": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16506 - ], - "op": "DUP3", - "path": "84" - }, - "5430": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16507, - 16508 - ], - "op": "DUP2", - "path": "84" - }, - "5431": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "DUP2", - "path": "84" - }, - "5432": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "MLOAD", - "path": "84" - }, - "5433": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "DUP2", - "path": "84" - }, - "5434": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "LT", - "path": "84" - }, - "5435": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1540" - }, - "5438": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "JUMPI", - "path": "84" - }, - "5439": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "INVALID", - "path": "84" - }, - "5440": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5441": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5443": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "MUL", - "path": "84" - }, - "5444": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5446": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "ADD", - "path": "84" - }, - "5447": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "ADD", - "path": "84" - }, - "5448": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16503, - 16509 - ], - "op": "MLOAD", - "path": "84" - }, - "5449": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16493 - ], - "op": "DUP4", - "path": "84" - }, - "5450": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16498, - 16499 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5452": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16494, - 16495 - ], - "op": "DUP4", - "path": "84" - }, - "5453": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16494, - 16499 - ], - "op": "SUB", - "path": "84" - }, - "5454": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "DUP2", - "path": "84" - }, - "5455": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "MLOAD", - "path": "84" - }, - "5456": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "DUP2", - "path": "84" - }, - "5457": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "LT", - "path": "84" - }, - "5458": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1557" - }, - "5461": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "JUMPI", - "path": "84" - }, - "5462": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "INVALID", - "path": "84" - }, - "5463": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5464": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5466": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "MUL", - "path": "84" - }, - "5467": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5469": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "ADD", - "path": "84" - }, - "5470": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "ADD", - "path": "84" - }, - "5471": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16500 - ], - "op": "MLOAD", - "path": "84" - }, - "5472": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16490, - 16509 - ], - "op": "GT", - "path": "84" - }, - "5473": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16481, - 16509 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5474": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "ISZERO", - "path": "84" - }, - "5475": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1629" - }, - "5478": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMPI", - "path": "84" - }, - "5479": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16592 - ], - "op": "DUP3", - "path": "84", - "statement": 85 - }, - "5480": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16593, - 16594 - ], - "op": "DUP2", - "path": "84" - }, - "5481": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "DUP2", - "path": "84" - }, - "5482": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "MLOAD", - "path": "84" - }, - "5483": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "DUP2", - "path": "84" - }, - "5484": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "LT", - "path": "84" - }, - "5485": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1572" - }, - "5488": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "JUMPI", - "path": "84" - }, - "5489": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "INVALID", - "path": "84" - }, - "5490": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5491": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5493": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "MUL", - "path": "84" - }, - "5494": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5496": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "ADD", - "path": "84" - }, - "5497": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "ADD", - "path": "84" - }, - "5498": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16589, - 16595 - ], - "op": "MLOAD", - "path": "84" - }, - "5499": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16600 - ], - "op": "DUP4", - "path": "84" - }, - "5500": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16605, - 16606 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5502": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16601, - 16602 - ], - "op": "DUP4", - "path": "84" - }, - "5503": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16601, - 16606 - ], - "op": "SUB", - "path": "84" - }, - "5504": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "DUP2", - "path": "84" - }, - "5505": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "MLOAD", - "path": "84" - }, - "5506": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "DUP2", - "path": "84" - }, - "5507": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "LT", - "path": "84" - }, - "5508": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1589" - }, - "5511": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "JUMPI", - "path": "84" - }, - "5512": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "INVALID", - "path": "84" - }, - "5513": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5514": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5516": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "MUL", - "path": "84" - }, - "5517": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5519": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "ADD", - "path": "84" - }, - "5520": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "ADD", - "path": "84" - }, - "5521": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16597, - 16607 - ], - "op": "MLOAD", - "path": "84" - }, - "5522": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16569 - ], - "op": "DUP5", - "path": "84" - }, - "5523": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16574, - 16575 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5525": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16570, - 16571 - ], - "op": "DUP5", - "path": "84" - }, - "5526": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16570, - 16575 - ], - "op": "SUB", - "path": "84" - }, - "5527": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "DUP2", - "path": "84" - }, - "5528": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "MLOAD", - "path": "84" - }, - "5529": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "DUP2", - "path": "84" - }, - "5530": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "LT", - "path": "84" - }, - "5531": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "PUSH2", - "path": "84", - "value": "0x15A0" - }, - "5534": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "JUMPI", - "path": "84" - }, - "5535": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "INVALID", - "path": "84" - }, - "5536": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5537": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5539": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "MUL", - "path": "84" - }, - "5540": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5542": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "ADD", - "path": "84" - }, - "5543": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16566, - 16576 - ], - "op": "ADD", - "path": "84" - }, - "5544": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16581 - ], - "op": "DUP6", - "path": "84" - }, - "5545": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16582, - 16583 - ], - "op": "DUP5", - "path": "84" - }, - "5546": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "DUP2", - "path": "84" - }, - "5547": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "MLOAD", - "path": "84" - }, - "5548": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "DUP2", - "path": "84" - }, - "5549": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "LT", - "path": "84" - }, - "5550": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "PUSH2", - "path": "84", - "value": "0x15B3" - }, - "5553": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "JUMPI", - "path": "84" - }, - "5554": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "INVALID", - "path": "84" - }, - "5555": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5556": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5558": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "MUL", - "path": "84" - }, - "5559": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5561": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "ADD", - "path": "84" - }, - "5562": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16578, - 16584 - ], - "op": "ADD", - "path": "84" - }, - "5563": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP3", - "path": "84" - }, - "5564": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP2", - "path": "84" - }, - "5565": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "MSTORE", - "path": "84" - }, - "5566": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "5567": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP3", - "path": "84" - }, - "5568": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "DUP2", - "path": "84" - }, - "5569": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "MSTORE", - "path": "84" - }, - "5570": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "5571": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "5572": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16565, - 16608 - ], - "op": "POP", - "path": "84" - }, - "5573": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16662 - ], - "op": "DUP5", - "path": "84", - "statement": 86 - }, - "5574": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16663, - 16664 - ], - "op": "DUP2", - "path": "84" - }, - "5575": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "DUP2", - "path": "84" - }, - "5576": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "MLOAD", - "path": "84" - }, - "5577": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "DUP2", - "path": "84" - }, - "5578": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "LT", - "path": "84" - }, - "5579": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "PUSH2", - "path": "84", - "value": "0x15D0" - }, - "5582": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "JUMPI", - "path": "84" - }, - "5583": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "INVALID", - "path": "84" - }, - "5584": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5585": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5587": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "MUL", - "path": "84" - }, - "5588": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5590": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "ADD", - "path": "84" - }, - "5591": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "ADD", - "path": "84" - }, - "5592": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16656, - 16665 - ], - "op": "MLOAD", - "path": "84" - }, - "5593": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16673 - ], - "op": "DUP6", - "path": "84" - }, - "5594": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16678, - 16679 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5596": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16674, - 16675 - ], - "op": "DUP4", - "path": "84" - }, - "5597": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16674, - 16679 - ], - "op": "SUB", - "path": "84" - }, - "5598": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "DUP2", - "path": "84" - }, - "5599": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "MLOAD", - "path": "84" - }, - "5600": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "DUP2", - "path": "84" - }, - "5601": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "LT", - "path": "84" - }, - "5602": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "PUSH2", - "path": "84", - "value": "0x15E7" - }, - "5605": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "JUMPI", - "path": "84" - }, - "5606": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "INVALID", - "path": "84" - }, - "5607": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5608": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5610": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "MUL", - "path": "84" - }, - "5611": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5613": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "ADD", - "path": "84" - }, - "5614": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "ADD", - "path": "84" - }, - "5615": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16667, - 16680 - ], - "op": "MLOAD", - "path": "84" - }, - "5616": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16633 - ], - "op": "DUP7", - "path": "84" - }, - "5617": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16638, - 16639 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "5619": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16634, - 16635 - ], - "op": "DUP5", - "path": "84" - }, - "5620": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16634, - 16639 - ], - "op": "SUB", - "path": "84" - }, - "5621": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "DUP2", - "path": "84" - }, - "5622": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "MLOAD", - "path": "84" - }, - "5623": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "DUP2", - "path": "84" - }, - "5624": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "LT", - "path": "84" - }, - "5625": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "PUSH2", - "path": "84", - "value": "0x15FE" - }, - "5628": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "JUMPI", - "path": "84" - }, - "5629": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "INVALID", - "path": "84" - }, - "5630": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5631": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5633": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "MUL", - "path": "84" - }, - "5634": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5636": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "ADD", - "path": "84" - }, - "5637": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16627, - 16640 - ], - "op": "ADD", - "path": "84" - }, - "5638": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16648 - ], - "op": "DUP8", - "path": "84" - }, - "5639": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16649, - 16650 - ], - "op": "DUP5", - "path": "84" - }, - "5640": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "DUP2", - "path": "84" - }, - "5641": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "MLOAD", - "path": "84" - }, - "5642": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "DUP2", - "path": "84" - }, - "5643": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "LT", - "path": "84" - }, - "5644": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1611" - }, - "5647": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "JUMPI", - "path": "84" - }, - "5648": { - "dev": "Index out of range", - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "INVALID", - "path": "84" - }, - "5649": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5650": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "5652": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP1", - "path": "84" - }, - "5653": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "DUP2", - "path": "84" - }, - "5654": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "MUL", - "path": "84" - }, - "5655": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP2", - "path": "84" - }, - "5656": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP1", - "path": "84" - }, - "5657": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "SWAP2", - "path": "84" - }, - "5658": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "ADD", - "path": "84" - }, - "5659": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16642, - 16651 - ], - "op": "ADD", - "path": "84" - }, - "5660": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "SWAP2", - "path": "84" - }, - "5661": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "SWAP1", - "path": "84" - }, - "5662": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "SWAP2", - "path": "84" - }, - "5663": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "MSTORE", - "path": "84" - }, - "5664": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16626, - 16681 - ], - "op": "MSTORE", - "path": "84" - }, - "5665": { - "op": "PUSH1", - "value": "0x0" - }, - "5667": { - "op": "NOT" - }, - "5668": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16699, - 16702 - ], - "op": "ADD", - "path": "84", - "statement": 87 - }, - "5669": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1529" - }, - "5672": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMP", - "path": "84" - }, - "5673": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16474, - 16717 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5674": { - "op": "POP" - }, - "5675": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16730, - 16733 - ], - "op": "PUSH1", - "path": "84", - "statement": 88, - "value": "0x1" - }, - "5677": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16730, - 16733 - ], - "op": "ADD", - "path": "84" - }, - "5678": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "PUSH2", - "path": "84", - "value": "0x151F" - }, - "5681": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMP", - "path": "84" - }, - "5682": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 16414, - 16744 - ], - "op": "JUMPDEST", - "path": "84" - }, - "5683": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15921, - 16750 - ], - "op": "POP", - "path": "84" - }, - "5684": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15921, - 16750 - ], - "op": "POP", - "path": "84" - }, - "5685": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15921, - 16750 - ], - "op": "POP", - "path": "84" - }, - "5686": { - "fn": "PortfolioHandler._sortInPlace", - "offset": [ - 15921, - 16750 - ], - "op": "POP", - "path": "84" - }, - "5687": { - "fn": "PortfolioHandler._sortInPlace", - "jump": "o", - "offset": [ - 15921, - 16750 - ], - "op": "JUMP", - "path": "84" - }, - "5688": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1296, - 1762 - ], - "op": "JUMPDEST", - "path": "28" - }, - "5689": { - "op": "PUSH1", - "value": "0x1" - }, - "5691": { - "op": "PUSH1", - "value": "0x1" - }, - "5693": { - "op": "PUSH1", - "value": "0xA0" - }, - "5695": { - "op": "SHL" - }, - "5696": { - "op": "SUB" - }, - "5697": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1374, - 1402 - ], - "op": "DUP2", - "path": "28", - "statement": 89 - }, - "5698": { - "branch": 347, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1374, - 1402 - ], - "op": "AND", - "path": "28" - }, - "5699": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "PUSH2", - "path": "28", - "value": "0x164B" - }, - "5702": { - "branch": 347, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "JUMPI", - "path": "28" - }, - "5703": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "5705": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "DUP1", - "path": "28" - }, - "5706": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "REVERT", - "path": "28" - }, - "5707": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1366, - 1403 - ], - "op": "JUMPDEST", - "path": "28" - }, - "5708": { - "op": "PUSH1", - "value": "0x1" - }, - "5710": { - "op": "PUSH1", - "value": "0x1" - }, - "5712": { - "op": "PUSH1", - "value": "0xA0" - }, - "5714": { - "op": "SHL" - }, - "5715": { - "op": "SUB" - }, - "5716": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "DUP2", - "path": "28", - "statement": 90 - }, - "5717": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "AND", - "path": "28" - }, - "5718": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1473, - 1477 - ], - "op": "ADDRESS", - "path": "28" - }, - "5719": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "EQ", - "path": "28" - }, - "5720": { - "branch": 348, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1454, - 1478 - ], - "op": "ISZERO", - "path": "28" - }, - "5721": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "PUSH2", - "path": "28", - "value": "0x1661" - }, - "5724": { - "branch": 348, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "JUMPI", - "path": "28" - }, - "5725": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "5727": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "DUP1", - "path": "28" - }, - "5728": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "REVERT", - "path": "28" - }, - "5729": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1446, - 1479 - ], - "op": "JUMPDEST", - "path": "28" - }, - "5730": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1503, - 1519 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "5732": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1684, - 1723 - ], - "op": "PUSH2", - "path": "28", - "value": "0x166C" - }, - "5735": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1715, - 1722 - ], - "op": "DUP3", - "path": "28" - }, - "5736": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1684, - 1714 - ], - "op": "PUSH2", - "path": "28", - "value": "0x19A4" - }, - "5739": { - "fn": "ActionGuards.requireValidAccount", - "jump": "i", - "offset": [ - 1684, - 1723 - ], - "op": "JUMP", - "path": "28" - }, - "5740": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1684, - 1723 - ], - "op": "JUMPDEST", - "path": "28" - }, - "5741": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "5742": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "5743": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "5744": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "5745": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "PUSH2", - "path": "28", - "value": "0xFFFF" - }, - "5748": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "AND", - "path": "28" - }, - "5749": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "SWAP1", - "path": "28" - }, - "5750": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1489, - 1723 - ], - "op": "POP", - "path": "28" - }, - "5751": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1741, - 1749 - ], - "op": "DUP1", - "path": "28", - "statement": 91 - }, - "5752": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1753, - 1754 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "5754": { - "branch": 349, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1741, - 1754 - ], - "op": "EQ", - "path": "28" - }, - "5755": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "PUSH2", - "path": "28", - "value": "0xC7A" - }, - "5758": { - "branch": 349, - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "JUMPI", - "path": "28" - }, - "5759": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "PUSH1", - "path": "28", - "value": "0x0" - }, - "5761": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "DUP1", - "path": "28" - }, - "5762": { - "fn": "ActionGuards.requireValidAccount", - "offset": [ - 1733, - 1755 - ], - "op": "REVERT", - "path": "28" - }, - "5763": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3020, - 3752 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5764": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3107, - 3111 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5766": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3143, - 3158 - ], - "op": "TIMESTAMP", - "path": "66" - }, - "5767": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3173, - 3204 - ], - "op": "PUSH2", - "path": "66", - "value": "0x168F" - }, - "5770": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3189, - 3203 - ], - "op": "DUP4", - "path": "66" - }, - "5771": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3173, - 3188 - ], - "op": "PUSH2", - "path": "66", - "value": "0xAD7" - }, - "5774": { - "fn": "AccountContextHandler.mustSettleAssets", - "jump": "i", - "offset": [ - 3173, - 3204 - ], - "op": "JUMP", - "path": "66" - }, - "5775": { - "branch": 324, - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3173, - 3204 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5776": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "ISZERO", - "path": "66" - }, - "5777": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "PUSH2", - "path": "66", - "value": "0x16B0" - }, - "5780": { - "branch": 324, - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "JUMPI", - "path": "66" - }, - "5781": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3389, - 3420 - ], - "op": "PUSH2", - "path": "66", - "statement": 92, - "value": "0x169D" - }, - "5784": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3410, - 3419 - ], - "op": "DUP2", - "path": "66" - }, - "5785": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3389, - 3409 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1A0D" - }, - "5788": { - "fn": "AccountContextHandler.mustSettleAssets", - "jump": "i", - "offset": [ - 3389, - 3420 - ], - "op": "JUMP", - "path": "66" - }, - "5789": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3389, - 3420 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5790": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3386 - ], - "op": "DUP4", - "path": "66" - }, - "5791": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3386 - ], - "op": "MLOAD", - "path": "66" - }, - "5792": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "5798": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "AND", - "path": "66" - }, - "5799": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "LT", - "path": "66" - }, - "5800": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3357, - 3420 - ], - "op": "SWAP2", - "path": "66" - }, - "5801": { - "op": "POP" - }, - "5802": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3350, - 3420 - ], - "op": "PUSH2", - "path": "66", - "value": "0x327" - }, - "5805": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3350, - 3420 - ], - "op": "SWAP1", - "path": "66" - }, - "5806": { - "op": "POP" - }, - "5807": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3350, - 3420 - ], - "op": "JUMP", - "path": "66" - }, - "5808": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3169, - 3746 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5809": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3660, - 3689 - ], - "op": "DUP3", - "path": "66", - "statement": 93 - }, - "5810": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3660, - 3689 - ], - "op": "MLOAD", - "path": "66" - }, - "5811": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "5817": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "AND", - "path": "66" - }, - "5818": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "ISZERO", - "path": "66" - }, - "5819": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "DUP1", - "path": "66" - }, - "5820": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "ISZERO", - "path": "66" - }, - "5821": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3689 - ], - "op": "SWAP1", - "path": "66" - }, - "5822": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3735 - ], - "op": "PUSH2", - "path": "66", - "value": "0x16CF" - }, - "5825": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3735 - ], - "op": "JUMPI", - "path": "66" - }, - "5826": { - "op": "POP" - }, - "5827": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3722 - ], - "op": "DUP3", - "path": "66" - }, - "5828": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3722 - ], - "op": "MLOAD", - "path": "66" - }, - "5829": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "5835": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "AND", - "path": "66" - }, - "5836": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "DUP2", - "path": "66" - }, - "5837": { - "op": "LT" - }, - "5838": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3693, - 3735 - ], - "op": "ISZERO", - "path": "66" - }, - "5839": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3656, - 3735 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5840": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "SWAP2", - "path": "66" - }, - "5841": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "POP", - "path": "66" - }, - "5842": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "POP", - "path": "66" - }, - "5843": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "PUSH2", - "path": "66", - "value": "0x327" - }, - "5846": { - "fn": "AccountContextHandler.mustSettleAssets", - "offset": [ - 3649, - 3735 - ], - "op": "JUMP", - "path": "66" - }, - "5847": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 1997, - 3132 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5848": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2162, - 2183 - ], - "op": "PUSH2", - "path": "85", - "value": "0x16DF" - }, - "5851": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2162, - 2183 - ], - "op": "PUSH2", - "path": "85", - "value": "0x2E31" - }, - "5854": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2162, - 2183 - ], - "op": "JUMP", - "path": "85" - }, - "5855": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2162, - 2183 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5856": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2323, - 2356 - ], - "op": "PUSH2", - "path": "85", - "statement": 94, - "value": "0x16E8" - }, - "5859": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2323, - 2337 - ], - "op": "DUP4", - "path": "85" - }, - "5860": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2323, - 2354 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1683" - }, - "5863": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2323, - 2356 - ], - "op": "JUMP", - "path": "85" - }, - "5864": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2323, - 2356 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5865": { - "branch": 449, - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2322, - 2356 - ], - "op": "ISZERO", - "path": "85" - }, - "5866": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1705" - }, - "5869": { - "branch": 449, - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "JUMPI", - "path": "85" - }, - "5870": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "PUSH1", - "path": "85", - "value": "0x40" - }, - "5872": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "MLOAD", - "path": "85" - }, - "5873": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "5877": { - "op": "PUSH1", - "value": "0xE5" - }, - "5879": { - "op": "SHL" - }, - "5880": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "DUP2", - "path": "85" - }, - "5881": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "MSTORE", - "path": "85" - }, - "5882": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "PUSH1", - "path": "85", - "value": "0x4" - }, - "5884": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "ADD", - "path": "85" - }, - "5885": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "PUSH2", - "path": "85", - "value": "0x3D8" - }, - "5888": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "SWAP1", - "path": "85" - }, - "5889": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "PUSH2", - "path": "85", - "value": "0x370D" - }, - "5892": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2314, - 2380 - ], - "op": "JUMP", - "path": "85" - }, - "5893": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2314, - 2380 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5894": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2395, - 2427 - ], - "op": "PUSH2", - "path": "85", - "value": "0x170E" - }, - "5897": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2395, - 2409 - ], - "op": "DUP4", - "path": "85" - }, - "5898": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2395, - 2425 - ], - "op": "PUSH2", - "path": "85", - "value": "0xAD7" - }, - "5901": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2395, - 2427 - ], - "op": "JUMP", - "path": "85" - }, - "5902": { - "branch": 450, - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2395, - 2427 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5903": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "ISZERO", - "path": "85" - }, - "5904": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1723" - }, - "5907": { - "branch": 450, - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "JUMPI", - "path": "85" - }, - "5908": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2515, - 2591 - ], - "op": "PUSH2", - "path": "85", - "statement": 95, - "value": "0x171E" - }, - "5911": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2559, - 2566 - ], - "op": "DUP5", - "path": "85" - }, - "5912": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2568, - 2582 - ], - "op": "DUP5", - "path": "85" - }, - "5913": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2584, - 2590 - ], - "op": "DUP5", - "path": "85" - }, - "5914": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2515, - 2558 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1A2E" - }, - "5917": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2515, - 2591 - ], - "op": "JUMP", - "path": "85" - }, - "5918": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2515, - 2591 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5919": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1750" - }, - "5922": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "JUMP", - "path": "85" - }, - "5923": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5924": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2622, - 2658 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "5926": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2661, - 2816 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1735" - }, - "5929": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2715, - 2722 - ], - "op": "DUP6", - "path": "85" - }, - "5930": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2740, - 2754 - ], - "op": "DUP6", - "path": "85" - }, - "5931": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2740, - 2771 - ], - "op": "PUSH1", - "path": "85", - "value": "0x40" - }, - "5933": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2740, - 2771 - ], - "op": "ADD", - "path": "85" - }, - "5934": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2740, - 2771 - ], - "op": "MLOAD", - "path": "85" - }, - "5935": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2789, - 2795 - ], - "op": "DUP6", - "path": "85" - }, - "5936": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2789, - 2802 - ], - "op": "MLOAD", - "path": "85" - }, - "5937": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2661, - 2697 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1AF6" - }, - "5940": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2661, - 2816 - ], - "op": "JUMP", - "path": "85" - }, - "5941": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2661, - 2816 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5942": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2622, - 2816 - ], - "op": "SWAP1", - "path": "85" - }, - "5943": { - "op": "POP" - }, - "5944": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2876, - 2916 - ], - "op": "PUSH2", - "path": "85", - "statement": 96, - "value": "0x1741" - }, - "5947": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2622, - 2816 - ], - "op": "DUP2", - "path": "85" - }, - "5948": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2909, - 2915 - ], - "op": "DUP5", - "path": "85" - }, - "5949": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2876, - 2908 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1B88" - }, - "5952": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 2876, - 2916 - ], - "op": "JUMP", - "path": "85" - }, - "5953": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2876, - 2916 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5954": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3009, - 3083 - ], - "op": "PUSH2", - "path": "85", - "statement": 97, - "value": "0x174E" - }, - "5957": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3009, - 3023 - ], - "op": "DUP5", - "path": "85" - }, - "5958": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3052, - 3059 - ], - "op": "DUP7", - "path": "85" - }, - "5959": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3061, - 3075 - ], - "op": "DUP4", - "path": "85" - }, - "5960": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3077, - 3082 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "5962": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3009, - 3051 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1BE6" - }, - "5965": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "i", - "offset": [ - 3009, - 3083 - ], - "op": "JUMP", - "path": "85" - }, - "5966": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3009, - 3083 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5967": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "POP", - "path": "85" - }, - "5968": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 2391, - 3094 - ], - "op": "JUMPDEST", - "path": "85" - }, - "5969": { - "op": "POP" - }, - "5970": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3111, - 3125 - ], - "op": "SWAP1", - "path": "85", - "statement": 98 - }, - "5971": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 3111, - 3125 - ], - "op": "SWAP3", - "path": "85" - }, - "5972": { - "fn": "TransferAssets.placeAssetsInAccount", - "offset": [ - 1997, - 3132 - ], - "op": "SWAP2", - "path": "85" - }, - "5973": { - "op": "POP" - }, - "5974": { - "op": "POP" - }, - "5975": { - "fn": "TransferAssets.placeAssetsInAccount", - "jump": "o", - "offset": [ - 1997, - 3132 - ], - "op": "JUMP", - "path": "85" - }, - "5976": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5977": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 938, - 986 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5979": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 989, - 1019 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1762" - }, - "5982": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 989, - 1017 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1311" - }, - "5985": { - "fn": "AccountContextHandler.setAccountContext", - "jump": "i", - "offset": [ - 989, - 1019 - ], - "op": "JUMP", - "path": "66" - }, - "5986": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 989, - 1019 - ], - "op": "JUMPDEST", - "path": "66" - }, - "5987": { - "op": "PUSH1", - "value": "0x1" - }, - "5989": { - "op": "PUSH1", - "value": "0x1" - }, - "5991": { - "op": "PUSH1", - "value": "0xA0" - }, - "5993": { - "op": "SHL" - }, - "5994": { - "op": "SUB" - }, - "5995": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP4", - "path": "66", - "statement": 99 - }, - "5996": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "AND", - "path": "66" - }, - "5997": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "5999": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP2", - "path": "66" - }, - "6000": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP2", - "path": "66" - }, - "6001": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "MSTORE", - "path": "66" - }, - "6002": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "PUSH1", - "path": "66", - "value": "0x20" - }, - "6004": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP4", - "path": "66" - }, - "6005": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP2", - "path": "66" - }, - "6006": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "MSTORE", - "path": "66" - }, - "6007": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "PUSH1", - "path": "66", - "value": "0x40" - }, - "6009": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP1", - "path": "66" - }, - "6010": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "DUP4", - "path": "66" - }, - "6011": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "KECCAK256", - "path": "66" - }, - "6012": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP9", - "path": "66" - }, - "6013": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "6014": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP2", - "path": "66" - }, - "6015": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SLOAD", - "path": "66" - }, - "6016": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "6017": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP11", - "path": "66" - }, - "6018": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "6019": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "6020": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP4", - "path": "66" - }, - "6021": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP12", - "path": "66" - }, - "6022": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "6023": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "6024": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "6026": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP13", - "path": "66" - }, - "6027": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "6028": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "6029": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "6031": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "DUP14", - "path": "66" - }, - "6032": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "ADD", - "path": "66" - }, - "6033": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MLOAD", - "path": "66" - }, - "6034": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0x70" - }, - "6036": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SHR", - "path": "66" - }, - "6037": { - "op": "PUSH1", - "value": "0x1" - }, - "6039": { - "op": "PUSH1", - "value": "0x48" - }, - "6041": { - "op": "SHL" - }, - "6042": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "6043": { - "op": "PUSH27", - "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000" - }, - "6071": { - "op": "NOT" - }, - "6072": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "6075": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6076": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP3", - "path": "66" - }, - "6077": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6078": { - "op": "PUSH1", - "value": "0x1" - }, - "6080": { - "op": "PUSH1", - "value": "0x38" - }, - "6082": { - "op": "SHL" - }, - "6083": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "6084": { - "op": "PUSH9", - "value": "0xFFFF00000000000000" - }, - "6094": { - "op": "NOT" - }, - "6095": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0xFF" - }, - "6097": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "6098": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6099": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "6100": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6101": { - "op": "PUSH1", - "value": "0x1" - }, - "6103": { - "op": "PUSH1", - "value": "0x30" - }, - "6105": { - "op": "SHL" - }, - "6106": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "6107": { - "op": "PUSH7", - "value": "0xFF000000000000" - }, - "6115": { - "op": "NOT" - }, - "6116": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF8" - }, - "6118": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "6119": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6120": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "6121": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SHR", - "path": "66" - }, - "6122": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH6", - "path": "66", - "value": "0x10000000000" - }, - "6129": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "MUL", - "path": "66" - }, - "6130": { - "op": "PUSH6", - "value": "0xFF0000000000" - }, - "6137": { - "op": "NOT" - }, - "6138": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "PUSH5", - "path": "66", - "value": "0xFFFFFFFFFF" - }, - "6144": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6145": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP9", - "path": "66" - }, - "6146": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6147": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "6153": { - "op": "NOT" - }, - "6154": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6155": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP12", - "path": "66" - }, - "6156": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6157": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP11", - "path": "66" - }, - "6158": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6159": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP11", - "path": "66" - }, - "6160": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "6161": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "6162": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6163": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP7", - "path": "66" - }, - "6164": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6165": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP9", - "path": "66" - }, - "6166": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6167": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP9", - "path": "66" - }, - "6168": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "6169": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "6170": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6171": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "6172": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6173": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "6174": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6175": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP4", - "path": "66" - }, - "6176": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "6177": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6178": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "6179": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6180": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP5", - "path": "66" - }, - "6181": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "6182": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "AND", - "path": "66" - }, - "6183": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP3", - "path": "66" - }, - "6184": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6185": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP3", - "path": "66" - }, - "6186": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "OR", - "path": "66" - }, - "6187": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP1", - "path": "66" - }, - "6188": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SWAP2", - "path": "66" - }, - "6189": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1060 - ], - "op": "SSTORE", - "path": "66" - }, - "6190": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "MLOAD", - "path": "66", - "statement": 100 - }, - "6191": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 938, - 1019 - ], - "op": "SWAP3", - "path": "66" - }, - "6192": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 938, - 1019 - ], - "op": "SWAP4", - "path": "66" - }, - "6193": { - "op": "POP" - }, - "6194": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "SWAP1", - "path": "66" - }, - "6195": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "SWAP2", - "path": "66" - }, - "6196": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "PUSH32", - "path": "66", - "value": "0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E" - }, - "6229": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "SWAP2", - "path": "66" - }, - "6230": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1029, - 1043 - ], - "op": "SWAP1", - "path": "66" - }, - "6231": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 1075, - 1104 - ], - "op": "LOG2", - "path": "66" - }, - "6232": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "POP", - "path": "66" - }, - "6233": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "POP", - "path": "66" - }, - "6234": { - "fn": "AccountContextHandler.setAccountContext", - "offset": [ - 837, - 1111 - ], - "op": "POP", - "path": "66" - }, - "6235": { - "fn": "AccountContextHandler.setAccountContext", - "jump": "o", - "offset": [ - 837, - 1111 - ], - "op": "JUMP", - "path": "66" - }, - "6236": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1543, - 1753 - ], - "op": "JUMPDEST", - "path": "85" - }, - "6237": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1642, - 1651 - ], - "op": "PUSH1", - "path": "85", - "value": "0x0" - }, - "6239": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1637, - 1747 - ], - "op": "JUMPDEST", - "path": "85" - }, - "6240": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1657, - 1663 - ], - "op": "DUP2", - "path": "85" - }, - "6241": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1657, - 1670 - ], - "op": "MLOAD", - "path": "85" - }, - "6242": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1653, - 1654 - ], - "op": "DUP2", - "path": "85" - }, - "6243": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1653, - 1670 - ], - "op": "LT", - "path": "85" - }, - "6244": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1637, - 1747 - ], - "op": "ISZERO", - "path": "85" - }, - "6245": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1637, - 1747 - ], - "op": "PUSH2", - "path": "85", - "value": "0xC7A" - }, - "6248": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1637, - 1747 - ], - "op": "JUMPI", - "path": "85" - }, - "6249": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1736 - ], - "op": "PUSH2", - "path": "85", - "statement": 101, - "value": "0x1888" - }, - "6252": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1718 - ], - "op": "DUP3", - "path": "85" - }, - "6253": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1719, - 1720 - ], - "op": "DUP3", - "path": "85" - }, - "6254": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "DUP2", - "path": "85" - }, - "6255": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "MLOAD", - "path": "85" - }, - "6256": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "DUP2", - "path": "85" - }, - "6257": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "LT", - "path": "85" - }, - "6258": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1877" - }, - "6261": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "JUMPI", - "path": "85" - }, - "6262": { - "dev": "Index out of range", - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "INVALID", - "path": "85" - }, - "6263": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "JUMPDEST", - "path": "85" - }, - "6264": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "PUSH1", - "path": "85", - "value": "0x20" - }, - "6266": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "MUL", - "path": "85" - }, - "6267": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "PUSH1", - "path": "85", - "value": "0x20" - }, - "6269": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "ADD", - "path": "85" - }, - "6270": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "ADD", - "path": "85" - }, - "6271": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1721 - ], - "op": "MLOAD", - "path": "85" - }, - "6272": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1730 - ], - "op": "PUSH1", - "path": "85", - "value": "0x60" - }, - "6274": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1730 - ], - "op": "ADD", - "path": "85" - }, - "6275": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1730 - ], - "op": "MLOAD", - "path": "85" - }, - "6276": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1734 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1CBD" - }, - "6279": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "jump": "i", - "offset": [ - 1712, - 1736 - ], - "op": "JUMP", - "path": "85" - }, - "6280": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1712, - 1736 - ], - "op": "JUMPDEST", - "path": "85" - }, - "6281": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1697 - ], - "op": "DUP3", - "path": "85" - }, - "6282": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1698, - 1699 - ], - "op": "DUP3", - "path": "85" - }, - "6283": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "DUP2", - "path": "85" - }, - "6284": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "MLOAD", - "path": "85" - }, - "6285": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "DUP2", - "path": "85" - }, - "6286": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "LT", - "path": "85" - }, - "6287": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "PUSH2", - "path": "85", - "value": "0x1894" - }, - "6290": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "JUMPI", - "path": "85" - }, - "6291": { - "dev": "Index out of range", - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "INVALID", - "path": "85" - }, - "6292": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "JUMPDEST", - "path": "85" - }, - "6293": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "PUSH1", - "path": "85", - "value": "0x20" - }, - "6295": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "SWAP1", - "path": "85" - }, - "6296": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "DUP2", - "path": "85" - }, - "6297": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "MUL", - "path": "85" - }, - "6298": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "SWAP2", - "path": "85" - }, - "6299": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "SWAP1", - "path": "85" - }, - "6300": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "SWAP2", - "path": "85" - }, - "6301": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "ADD", - "path": "85" - }, - "6302": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "ADD", - "path": "85" - }, - "6303": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1700 - ], - "op": "MLOAD", - "path": "85" - }, - "6304": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1709 - ], - "op": "PUSH1", - "path": "85", - "value": "0x60" - }, - "6306": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1709 - ], - "op": "ADD", - "path": "85" - }, - "6307": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1691, - 1736 - ], - "op": "MSTORE", - "path": "85" - }, - "6308": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1672, - 1675 - ], - "op": "PUSH1", - "path": "85", - "statement": 102, - "value": "0x1" - }, - "6310": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1672, - 1675 - ], - "op": "ADD", - "path": "85" - }, - "6311": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1637, - 1747 - ], - "op": "PUSH2", - "path": "85", - "value": "0x185F" - }, - "6314": { - "fn": "TransferAssets.invertNotionalAmountsInPlace", - "offset": [ - 1637, - 1747 - ], - "op": "JUMP", - "path": "85" - }, - "6315": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18581, - 19068 - ], - "op": "JUMPDEST", - "path": "30" - }, - "6316": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18653, - 18666 - ], - "op": "PUSH1", - "path": "30", - "value": "0x60" - }, - "6318": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18814, - 18816 - ], - "op": "PUSH1", - "path": "30", - "value": "0x44" - }, - "6320": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18793, - 18804 - ], - "op": "DUP3", - "path": "30" - }, - "6321": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18793, - 18811 - ], - "op": "MLOAD", - "path": "30" - }, - "6322": { - "branch": 323, - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18793, - 18816 - ], - "op": "LT", - "path": "30" - }, - "6323": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18789, - 18856 - ], - "op": "ISZERO", - "path": "30" - }, - "6324": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18789, - 18856 - ], - "op": "PUSH2", - "path": "30", - "value": "0x18F1" - }, - "6327": { - "branch": 323, - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18789, - 18856 - ], - "op": "JUMPI", - "path": "30" - }, - "6328": { - "op": "POP" - }, - "6329": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "PUSH1", - "path": "30", - "statement": 103, - "value": "0x40" - }, - "6331": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "DUP1", - "path": "30" - }, - "6332": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "MLOAD", - "path": "30" - }, - "6333": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "DUP1", - "path": "30" - }, - "6334": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "DUP3", - "path": "30" - }, - "6335": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "ADD", - "path": "30" - }, - "6336": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "SWAP1", - "path": "30" - }, - "6337": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "SWAP2", - "path": "30" - }, - "6338": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "MSTORE", - "path": "30" - }, - "6339": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "PUSH1", - "path": "30", - "value": "0x1D" - }, - "6341": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "DUP2", - "path": "30" - }, - "6342": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "MSTORE", - "path": "30" - }, - "6343": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "PUSH32", - "path": "30", - "value": "0x5472616E73616374696F6E2072657665727465642073696C656E746C79000000" - }, - "6376": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "6378": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "DUP3", - "path": "30" - }, - "6379": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "ADD", - "path": "30" - }, - "6380": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "MSTORE", - "path": "30" - }, - "6381": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "PUSH2", - "path": "30", - "value": "0x327" - }, - "6384": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18818, - 18856 - ], - "op": "JUMP", - "path": "30" - }, - "6385": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18789, - 18856 - ], - "op": "JUMPDEST", - "path": "30" - }, - "6386": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18956, - 18960 - ], - "op": "PUSH1", - "path": "30", - "value": "0x4" - }, - "6388": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18943, - 18954 - ], - "op": "DUP3", - "path": "30" - }, - "6389": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18939, - 18961 - ], - "op": "ADD", - "path": "30" - }, - "6390": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18924, - 18961 - ], - "op": "SWAP2", - "path": "30" - }, - "6391": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18924, - 18961 - ], - "op": "POP", - "path": "30" - }, - "6392": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18998, - 19009 - ], - "op": "DUP2", - "path": "30", - "statement": 104 - }, - "6393": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "DUP1", - "path": "30" - }, - "6394": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "PUSH1", - "path": "30", - "value": "0x20" - }, - "6396": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "ADD", - "path": "30" - }, - "6397": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "SWAP1", - "path": "30" - }, - "6398": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "MLOAD", - "path": "30" - }, - "6399": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "DUP2", - "path": "30" - }, - "6400": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "ADD", - "path": "30" - }, - "6401": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "SWAP1", - "path": "30" - }, - "6402": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "PUSH2", - "path": "30", - "value": "0x30C" - }, - "6405": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "SWAP2", - "path": "30" - }, - "6406": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "SWAP1", - "path": "30" - }, - "6407": { - "fn": "ERC1155Action._getRevertMsg", - "offset": [ - 18987, - 19020 - ], - "op": "PUSH2", - "path": "30", - "value": "0x3210" - }, - "6410": { - "fn": "ERC1155Action._getRevertMsg", - "jump": "i", - "offset": [ - 18987, - 19020 - ], - "op": "JUMP", - "path": "30" - }, - "6411": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11565, - 11757 - ], - "op": "JUMPDEST", - "path": "77" - }, - "6412": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11635, - 11640 - ], - "op": "PUSH1", - "path": "77", - "value": "0x0" - }, - "6414": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11652, - 11664 - ], - "op": "DUP1", - "path": "77" - }, - "6415": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11667, - 11704 - ], - "op": "PUSH2", - "path": "77", - "value": "0x1917" - }, - "6418": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11693, - 11703 - ], - "op": "DUP4", - "path": "77" - }, - "6419": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11667, - 11692 - ], - "op": "PUSH2", - "path": "77", - "value": "0x1CCB" - }, - "6422": { - "fn": "CashGroup.getMaxMarketIndex", - "jump": "i", - "offset": [ - 11667, - 11704 - ], - "op": "JUMP", - "path": "77" - }, - "6423": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11667, - 11704 - ], - "op": "JUMPDEST", - "path": "77" - }, - "6424": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11727, - 11749 - ], - "op": "PUSH1", - "path": "77", - "statement": 105, - "value": "0xFF" - }, - "6426": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11727, - 11749 - ], - "op": "AND", - "path": "77" - }, - "6427": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11727, - 11749 - ], - "op": "SWAP4", - "path": "77" - }, - "6428": { - "fn": "CashGroup.getMaxMarketIndex", - "offset": [ - 11727, - 11749 - ], - "op": "SWAP3", - "path": "77" - }, - "6429": { - "op": "POP" - }, - "6430": { - "op": "POP" - }, - "6431": { - "op": "POP" - }, - "6432": { - "fn": "CashGroup.getMaxMarketIndex", - "jump": "o", - "offset": [ - 11565, - 11757 - ], - "op": "JUMP", - "path": "77" - }, - "6433": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2224, - 2748 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6434": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2363, - 2367 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "6436": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2379, - 2391 - ], - "op": "DUP1", - "path": "78" - }, - "6437": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2394, - 2430 - ], - "op": "PUSH2", - "path": "78", - "value": "0x192D" - }, - "6440": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2420, - 2429 - ], - "op": "DUP4", - "path": "78" - }, - "6441": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2394, - 2419 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1CE8" - }, - "6444": { - "fn": "DateTime.isValidMaturity", - "jump": "i", - "offset": [ - 2394, - 2430 - ], - "op": "JUMP", - "path": "78" - }, - "6445": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2394, - 2430 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6446": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2379, - 2430 - ], - "op": "SWAP1", - "path": "78" - }, - "6447": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2379, - 2430 - ], - "op": "POP", - "path": "78" - }, - "6448": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2440, - 2459 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "6450": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2462, - 2512 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1944" - }, - "6453": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2471, - 2511 - ], - "op": "PUSH2", - "path": "78", - "value": "0x193D" - }, - "6456": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2496, - 2510 - ], - "op": "DUP8", - "path": "78" - }, - "6457": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2471, - 2495 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D04" - }, - "6460": { - "fn": "DateTime.isValidMaturity", - "jump": "i", - "offset": [ - 2471, - 2511 - ], - "op": "JUMP", - "path": "78" - }, - "6461": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2471, - 2511 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6462": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2462, - 2466 - ], - "op": "DUP4", - "path": "78" - }, - "6463": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2462, - 2466 - ], - "op": "SWAP1", - "path": "78" - }, - "6464": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2462, - 2470 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1DA8" - }, - "6467": { - "fn": "DateTime.isValidMaturity", - "jump": "i", - "offset": [ - 2462, - 2512 - ], - "op": "JUMP", - "path": "78" - }, - "6468": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2462, - 2512 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6469": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2440, - 2512 - ], - "op": "SWAP1", - "path": "78" - }, - "6470": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2440, - 2512 - ], - "op": "POP", - "path": "78" - }, - "6471": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2579, - 2590 - ], - "op": "DUP1", - "path": "78" - }, - "6472": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2568, - 2576 - ], - "op": "DUP6", - "path": "78" - }, - "6473": { - "branch": 370, - "fn": "DateTime.isValidMaturity", - "offset": [ - 2568, - 2590 - ], - "op": "GT", - "path": "78" - }, - "6474": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2564, - 2604 - ], - "op": "ISZERO", - "path": "78" - }, - "6475": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2564, - 2604 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1959" - }, - "6478": { - "branch": 370, - "fn": "DateTime.isValidMaturity", - "offset": [ - 2564, - 2604 - ], - "op": "JUMPI", - "path": "78" - }, - "6479": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2599, - 2604 - ], - "op": "PUSH1", - "path": "78", - "statement": 106, - "value": "0x0" - }, - "6481": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2592, - 2604 - ], - "op": "SWAP3", - "path": "78" - }, - "6482": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2592, - 2604 - ], - "op": "POP", - "path": "78" - }, - "6483": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2592, - 2604 - ], - "op": "POP", - "path": "78" - }, - "6484": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2592, - 2604 - ], - "op": "POP", - "path": "78" - }, - "6485": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2592, - 2604 - ], - "op": "PUSH2", - "path": "78", - "value": "0x653" - }, - "6488": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2592, - 2604 - ], - "op": "JUMP", - "path": "78" - }, - "6489": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2564, - 2604 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6490": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2650, - 2662 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "6492": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2666, - 2717 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1965" - }, - "6495": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2697, - 2706 - ], - "op": "DUP6", - "path": "78" - }, - "6496": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2708, - 2716 - ], - "op": "DUP8", - "path": "78" - }, - "6497": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2666, - 2696 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E02" - }, - "6500": { - "fn": "DateTime.isValidMaturity", - "jump": "i", - "offset": [ - 2666, - 2717 - ], - "op": "JUMP", - "path": "78" - }, - "6501": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2666, - 2717 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6502": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2642, - 2717 - ], - "op": "SWAP9", - "path": "78" - }, - "6503": { - "fn": "DateTime.isValidMaturity", - "offset": [ - 2224, - 2748 - ], - "op": "SWAP8", - "path": "78" - }, - "6504": { - "op": "POP" - }, - "6505": { - "op": "POP" - }, - "6506": { - "op": "POP" - }, - "6507": { - "op": "POP" - }, - "6508": { - "op": "POP" - }, - "6509": { - "op": "POP" - }, - "6510": { - "op": "POP" - }, - "6511": { - "op": "POP" - }, - "6512": { - "fn": "DateTime.isValidMaturity", - "jump": "o", - "offset": [ - 2224, - 2748 - ], - "op": "JUMP", - "path": "78" - }, - "6513": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8450, - 8779 - ], - "op": "JUMPDEST", - "path": "62" - }, - "6514": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8542, - 8554 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "6516": { - "offset": [ - 494, - 501 - ], - "op": "PUSH3", - "path": "62", - "value": "0xF4240" - }, - "6520": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8742, - 8751 - ], - "op": "DUP3", - "path": "62", - "statement": 107 - }, - "6521": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "PUSH1", - "path": "62", - "value": "0x13" - }, - "6523": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "DUP2", - "path": "62" - }, - "6524": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "GT", - "path": "62" - }, - "6525": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "ISZERO", - "path": "62" - }, - "6526": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1983" - }, - "6529": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "JUMPI", - "path": "62" - }, - "6530": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "INVALID", - "path": "62" - }, - "6531": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8752 - ], - "op": "JUMPDEST", - "path": "62" - }, - "6532": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8772 - ], - "op": "ADD", - "path": "62" - }, - "6533": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8734, - 8772 - ], - "op": "SWAP3", - "path": "62" - }, - "6534": { - "fn": "LibStorage._getStorageSlot", - "offset": [ - 8450, - 8779 - ], - "op": "SWAP2", - "path": "62" - }, - "6535": { - "op": "POP" - }, - "6536": { - "op": "POP" - }, - "6537": { - "fn": "LibStorage._getStorageSlot", - "jump": "o", - "offset": [ - 8450, - 8779 - ], - "op": "JUMP", - "path": "62" - }, - "6538": { - "fn": "LibStorage.getifCashBitmapStorage", - "offset": [ - 5665, - 5934 - ], - "op": "JUMPDEST", - "path": "62" - }, - "6539": { - "fn": "LibStorage.getifCashBitmapStorage", - "offset": [ - 5730, - 5817 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "6541": { - "fn": "LibStorage.getifCashBitmapStorage", - "offset": [ - 5833, - 5845 - ], - "op": "DUP1", - "path": "62" - }, - "6542": { - "fn": "LibStorage.getifCashBitmapStorage", - "offset": [ - 5848, - 5887 - ], - "op": "PUSH2", - "path": "62", - "value": "0x30C" - }, - "6545": { - "fn": "LibStorage.getifCashBitmapStorage", - "offset": [ - 5864, - 5886 - ], - "op": "PUSH1", - "path": "62", - "value": "0xC" - }, - "6547": { - "fn": "LibStorage.getifCashBitmapStorage", - "offset": [ - 5848, - 5863 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1971" - }, - "6550": { - "fn": "LibStorage.getifCashBitmapStorage", - "jump": "i", - "offset": [ - 5848, - 5887 - ], - "op": "JUMP", - "path": "62" - }, - "6551": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6020, - 6283 - ], - "op": "JUMPDEST", - "path": "62" - }, - "6552": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6087, - 6164 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "6554": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6180, - 6192 - ], - "op": "DUP1", - "path": "62" - }, - "6555": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6195, - 6236 - ], - "op": "PUSH2", - "path": "62", - "value": "0x30C" - }, - "6558": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6211, - 6235 - ], - "op": "PUSH1", - "path": "62", - "value": "0xD" - }, - "6560": { - "fn": "LibStorage.getPortfolioArrayStorage", - "offset": [ - 6195, - 6210 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1971" - }, - "6563": { - "fn": "LibStorage.getPortfolioArrayStorage", - "jump": "i", - "offset": [ - 6195, - 6236 - ], - "op": "JUMP", - "path": "62" - }, - "6564": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 728, - 1465 - ], - "op": "JUMPDEST", - "path": "81" - }, - "6565": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 836, - 853 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "6567": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 867, - 902 - ], - "op": "DUP1", - "path": "81" - }, - "6568": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 916, - 943 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "6570": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 957, - 979 - ], - "op": "DUP1", - "path": "81" - }, - "6571": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 993, - 1010 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "6573": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1035, - 1082 - ], - "op": "DUP1", - "path": "81" - }, - "6574": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1085, - 1121 - ], - "op": "PUSH2", - "path": "81", - "value": "0x19B5" - }, - "6577": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1085, - 1119 - ], - "op": "PUSH2", - "path": "81", - "value": "0x1F0D" - }, - "6580": { - "fn": "nTokenHandler.getNTokenContext", - "jump": "i", - "offset": [ - 1085, - 1121 - ], - "op": "JUMP", - "path": "81" - }, - "6581": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1085, - 1121 - ], - "op": "JUMPDEST", - "path": "81" - }, - "6582": { - "op": "PUSH1", - "value": "0x1" - }, - "6584": { - "op": "PUSH1", - "value": "0x1" - }, - "6586": { - "op": "PUSH1", - "value": "0xA0" - }, - "6588": { - "op": "SHL" - }, - "6589": { - "op": "SUB" - }, - "6590": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6591": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP8", - "path": "81" - }, - "6592": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "AND", - "path": "81" - }, - "6593": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1131, - 1160 - ], - "op": "PUSH1", - "path": "81", - "value": "0x0" - }, - "6595": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6596": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "DUP2", - "path": "81" - }, - "6597": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "MSTORE", - "path": "81" - }, - "6598": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "PUSH1", - "path": "81", - "value": "0x20" - }, - "6600": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP8", - "path": "81" - }, - "6601": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6602": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP8", - "path": "81" - }, - "6603": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "MSTORE", - "path": "81" - }, - "6604": { - "op": "POP" - }, - "6605": { - "op": "POP" - }, - "6606": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "PUSH1", - "path": "81", - "value": "0x40" - }, - "6608": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP1", - "path": "81" - }, - "6609": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "SWAP5", - "path": "81" - }, - "6610": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1163, - 1182 - ], - "op": "KECCAK256", - "path": "81" - }, - "6611": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "SLOAD", - "path": "81", - "statement": 108 - }, - "6612": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "PUSH2", - "path": "81", - "value": "0xFFFF" - }, - "6615": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "DUP2", - "path": "81" - }, - "6616": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "AND", - "path": "81" - }, - "6617": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1206, - 1224 - ], - "op": "SWAP6", - "path": "81" - }, - "6618": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "PUSH4", - "path": "81", - "statement": 109, - "value": "0xFFFFFFFF" - }, - "6623": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "PUSH3", - "path": "81", - "value": "0x10000" - }, - "6627": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "DUP4", - "path": "81" - }, - "6628": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "DIV", - "path": "81" - }, - "6629": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "DUP2", - "path": "81" - }, - "6630": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "AND", - "path": "81" - }, - "6631": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1264, - 1299 - ], - "op": "SWAP7", - "path": "81" - }, - "6632": { - "op": "POP" - }, - "6633": { - "op": "PUSH1", - "value": "0x1" - }, - "6635": { - "op": "PUSH1", - "value": "0x30" - }, - "6637": { - "op": "SHL" - }, - "6638": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "DUP4", - "path": "81", - "statement": 110 - }, - "6639": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "DIV", - "path": "81" - }, - "6640": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "AND", - "path": "81" - }, - "6641": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1331, - 1358 - ], - "op": "SWAP5", - "path": "81" - }, - "6642": { - "op": "POP" - }, - "6643": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "PUSH1", - "path": "81", - "statement": 111, - "value": "0xFF" - }, - "6645": { - "op": "PUSH1", - "value": "0x1" - }, - "6647": { - "op": "PUSH1", - "value": "0x50" - }, - "6649": { - "op": "SHL" - }, - "6650": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "DUP4", - "path": "81" - }, - "6651": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "DIV", - "path": "81" - }, - "6652": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "AND", - "path": "81" - }, - "6653": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1387, - 1411 - ], - "op": "SWAP4", - "path": "81" - }, - "6654": { - "op": "POP" - }, - "6655": { - "op": "PUSH1", - "value": "0x1" - }, - "6657": { - "op": "PUSH1", - "value": "0x58" - }, - "6659": { - "op": "SHL" - }, - "6660": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SWAP1", - "path": "81", - "statement": 112 - }, - "6661": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SWAP2", - "path": "81" - }, - "6662": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "DIV", - "path": "81" - }, - "6663": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "PUSH1", - "path": "81", - "value": "0xD8" - }, - "6665": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SHL", - "path": "81" - }, - "6666": { - "fn": "nTokenHandler.getNTokenContext", - "offset": [ - 1434, - 1458 - ], - "op": "SWAP2", - "path": "81" - }, - "6667": { - "op": "POP" - }, - "6668": { - "fn": "nTokenHandler.getNTokenContext", - "jump": "o", - "offset": [ - 728, - 1465 - ], - "op": "JUMP", - "path": "81" - }, - "6669": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 583, - 743 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6670": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 641, - 648 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "6672": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "6676": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 668, - 672 - ], - "op": "DUP3", - "path": "78", - "statement": 113 - }, - "6677": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 668, - 689 - ], - "op": "LT", - "path": "78" - }, - "6678": { - "branch": 371, - "fn": "DateTime.getTimeUTC0", - "offset": [ - 668, - 689 - ], - "op": "ISZERO", - "path": "78" - }, - "6679": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1A1F" - }, - "6682": { - "branch": 371, - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "JUMPI", - "path": "78" - }, - "6683": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "6685": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "DUP1", - "path": "78" - }, - "6686": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "REVERT", - "path": "78" - }, - "6687": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 660, - 690 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6688": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "6692": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 715, - 719 - ], - "op": "DUP3", - "path": "78", - "statement": 114 - }, - "6693": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 715, - 735 - ], - "op": "JUMPDEST", - "path": "78" - }, - "6694": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 715, - 735 - ], - "op": "MOD", - "path": "78" - }, - "6695": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SWAP1", - "path": "78" - }, - "6696": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SWAP2", - "path": "78" - }, - "6697": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SUB", - "path": "78" - }, - "6698": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 707, - 736 - ], - "op": "SWAP2", - "path": "78" - }, - "6699": { - "fn": "DateTime.getTimeUTC0", - "offset": [ - 583, - 743 - ], - "op": "SWAP1", - "path": "78" - }, - "6700": { - "op": "POP" - }, - "6701": { - "fn": "DateTime.getTimeUTC0", - "jump": "o", - "offset": [ - 583, - 743 - ], - "op": "JUMP", - "path": "78" - }, - "6702": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1753, - 2818 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6703": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1930, - 1962 - ], - "op": "PUSH2", - "path": "83", - "statement": 115, - "value": "0x1A37" - }, - "6706": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1930, - 1944 - ], - "op": "DUP3", - "path": "83" - }, - "6707": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1930, - 1960 - ], - "op": "PUSH2", - "path": "83", - "value": "0xAD7" - }, - "6710": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "jump": "i", - "offset": [ - 1930, - 1962 - ], - "op": "JUMP", - "path": "83" - }, - "6711": { - "branch": 357, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1930, - 1962 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6712": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1922, - 1963 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1A40" - }, - "6715": { - "branch": 357, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1922, - 1963 - ], - "op": "JUMPI", - "path": "83" - }, - "6716": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1922, - 1963 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6718": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1922, - 1963 - ], - "op": "DUP1", - "path": "83" - }, - "6719": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1922, - 1963 - ], - "op": "REVERT", - "path": "83" - }, - "6720": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1922, - 1963 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6721": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2026, - 2057 - ], - "op": "PUSH1", - "path": "83", - "value": "0x60" - }, - "6723": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2026, - 2057 - ], - "op": "DUP3", - "path": "83" - }, - "6724": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2026, - 2057 - ], - "op": "ADD", - "path": "83" - }, - "6725": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2026, - 2057 - ], - "op": "MLOAD", - "path": "83" - }, - "6726": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2005, - 2057 - ], - "op": "PUSH2", - "path": "83", - "value": "0xFFFF" - }, - "6729": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2005, - 2057 - ], - "op": "AND", - "path": "83" - }, - "6730": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2005, - 2023 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6732": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6733": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2088, - 2094 - ], - "op": "DUP3", - "path": "83" - }, - "6734": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2088, - 2101 - ], - "op": "MLOAD", - "path": "83" - }, - "6735": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2084, - 2085 - ], - "op": "DUP2", - "path": "83" - }, - "6736": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2084, - 2101 - ], - "op": "LT", - "path": "83" - }, - "6737": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "ISZERO", - "path": "83" - }, - "6738": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1AEF" - }, - "6741": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "JUMPI", - "path": "83" - }, - "6742": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2122, - 2149 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6744": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2158 - ], - "op": "DUP4", - "path": "83" - }, - "6745": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2159, - 2160 - ], - "op": "DUP3", - "path": "83" - }, - "6746": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "DUP2", - "path": "83" - }, - "6747": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "MLOAD", - "path": "83" - }, - "6748": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "DUP2", - "path": "83" - }, - "6749": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "LT", - "path": "83" - }, - "6750": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1A63" - }, - "6753": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "JUMPI", - "path": "83" - }, - "6754": { - "dev": "Index out of range", - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "INVALID", - "path": "83" - }, - "6755": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6756": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "6758": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "MUL", - "path": "83" - }, - "6759": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "6761": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "ADD", - "path": "83" - }, - "6762": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "ADD", - "path": "83" - }, - "6763": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2152, - 2161 - ], - "op": "MLOAD", - "path": "83" - }, - "6764": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2122, - 2161 - ], - "op": "SWAP1", - "path": "83" - }, - "6765": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2122, - 2161 - ], - "op": "POP", - "path": "83" - }, - "6766": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2179, - 2184 - ], - "op": "DUP1", - "path": "83" - }, - "6767": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2179, - 2193 - ], - "op": "PUSH1", - "path": "83", - "value": "0x60" - }, - "6769": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2179, - 2193 - ], - "op": "ADD", - "path": "83" - }, - "6770": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2179, - 2193 - ], - "op": "MLOAD", - "path": "83" - }, - "6771": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2197, - 2198 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6773": { - "branch": 358, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2179, - 2198 - ], - "op": "EQ", - "path": "83" - }, - "6774": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2175, - 2208 - ], - "op": "ISZERO", - "path": "83" - }, - "6775": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2175, - 2208 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1A80" - }, - "6778": { - "branch": 358, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2175, - 2208 - ], - "op": "JUMPI", - "path": "83" - }, - "6779": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2200, - 2208 - ], - "op": "POP", - "path": "83", - "statement": 116 - }, - "6780": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2200, - 2208 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1AE7" - }, - "6783": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2200, - 2208 - ], - "op": "JUMP", - "path": "83" - }, - "6784": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2175, - 2208 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6785": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2231, - 2247 - ], - "op": "DUP1", - "path": "83", - "statement": 117 - }, - "6786": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2231, - 2247 - ], - "op": "MLOAD", - "path": "83" - }, - "6787": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2231, - 2261 - ], - "op": "DUP4", - "path": "83" - }, - "6788": { - "branch": 359, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2231, - 2261 - ], - "op": "EQ", - "path": "83" - }, - "6789": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2223, - 2262 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1A8D" - }, - "6792": { - "branch": 359, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2223, - 2262 - ], - "op": "JUMPI", - "path": "83" - }, - "6793": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2223, - 2262 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6795": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2223, - 2262 - ], - "op": "DUP1", - "path": "83" - }, - "6796": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2223, - 2262 - ], - "op": "REVERT", - "path": "83" - }, - "6797": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2223, - 2262 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6798": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2327, - 2342 - ], - "op": "PUSH1", - "path": "83", - "statement": 118, - "value": "0x40" - }, - "6800": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2327, - 2342 - ], - "op": "DUP2", - "path": "83" - }, - "6801": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2327, - 2342 - ], - "op": "ADD", - "path": "83" - }, - "6802": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2327, - 2342 - ], - "op": "MLOAD", - "path": "83" - }, - "6803": { - "offset": [ - 4700, - 4701 - ], - "op": "PUSH1", - "path": "60", - "value": "0x1" - }, - "6805": { - "branch": 360, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2327, - 2372 - ], - "op": "EQ", - "path": "83" - }, - "6806": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2319, - 2373 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1A9E" - }, - "6809": { - "branch": 360, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2319, - 2373 - ], - "op": "JUMPI", - "path": "83" - }, - "6810": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2319, - 2373 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6812": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2319, - 2373 - ], - "op": "DUP1", - "path": "83" - }, - "6813": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2319, - 2373 - ], - "op": "REVERT", - "path": "83" - }, - "6814": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2319, - 2373 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6815": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2430, - 2450 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6817": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2481, - 2673 - ], - "op": "PUSH2", - "path": "83", - "statement": 119, - "value": "0x1AC0" - }, - "6820": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2513, - 2520 - ], - "op": "DUP8", - "path": "83" - }, - "6821": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2538, - 2548 - ], - "op": "DUP6", - "path": "83" - }, - "6822": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2566, - 2571 - ], - "op": "DUP5", - "path": "83" - }, - "6823": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2566, - 2580 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "6825": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2566, - 2580 - ], - "op": "ADD", - "path": "83" - }, - "6826": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2566, - 2580 - ], - "op": "MLOAD", - "path": "83" - }, - "6827": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2598, - 2612 - ], - "op": "DUP10", - "path": "83" - }, - "6828": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2598, - 2627 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6830": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2598, - 2627 - ], - "op": "ADD", - "path": "83" - }, - "6831": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2598, - 2627 - ], - "op": "MLOAD", - "path": "83" - }, - "6832": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2481, - 2673 - ], - "op": "PUSH5", - "path": "83", - "value": "0xFFFFFFFFFF" - }, - "6838": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2481, - 2673 - ], - "op": "AND", - "path": "83" - }, - "6839": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2645, - 2650 - ], - "op": "DUP7", - "path": "83" - }, - "6840": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2645, - 2659 - ], - "op": "PUSH1", - "path": "83", - "value": "0x60" - }, - "6842": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2645, - 2659 - ], - "op": "ADD", - "path": "83" - }, - "6843": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2645, - 2659 - ], - "op": "MLOAD", - "path": "83" - }, - "6844": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2481, - 2495 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F1A" - }, - "6847": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "jump": "i", - "offset": [ - 2481, - 2673 - ], - "op": "JUMP", - "path": "83" - }, - "6848": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2481, - 2673 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6849": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2465, - 2673 - ], - "op": "SWAP1", - "path": "83" - }, - "6850": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2465, - 2673 - ], - "op": "POP", - "path": "83" - }, - "6851": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2708, - 2709 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "6853": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2692, - 2705 - ], - "op": "DUP2", - "path": "83" - }, - "6854": { - "branch": 361, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2692, - 2709 - ], - "op": "SLT", - "path": "83" - }, - "6855": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2688, - 2801 - ], - "op": "ISZERO", - "path": "83" - }, - "6856": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2688, - 2801 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1AE4" - }, - "6859": { - "branch": 361, - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2688, - 2801 - ], - "op": "JUMPI", - "path": "83" - }, - "6860": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2752, - 2774 - ], - "op": "PUSH1", - "path": "83", - "statement": 120, - "value": "0x20" - }, - "6862": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2752, - 2774 - ], - "op": "DUP7", - "path": "83" - }, - "6863": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2752, - 2774 - ], - "op": "ADD", - "path": "83" - }, - "6864": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2752, - 2774 - ], - "op": "DUP1", - "path": "83" - }, - "6865": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2752, - 2774 - ], - "op": "MLOAD", - "path": "83" - }, - "6866": { - "op": "PUSH1", - "value": "0x1" - }, - "6868": { - "op": "PUSH1", - "value": "0xF8" - }, - "6870": { - "op": "SHL" - }, - "6871": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2752, - 2801 - ], - "op": "OR", - "path": "83" - }, - "6872": { - "op": "PUSH1", - "value": "0x1" - }, - "6874": { - "op": "PUSH1", - "value": "0x1" - }, - "6876": { - "op": "PUSH1", - "value": "0xF8" - }, - "6878": { - "op": "SHL" - }, - "6879": { - "op": "SUB" - }, - "6880": { - "op": "NOT" - }, - "6881": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2727, - 2801 - ], - "op": "AND", - "path": "83" - }, - "6882": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2727, - 2801 - ], - "op": "SWAP1", - "path": "83" - }, - "6883": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2727, - 2801 - ], - "op": "MSTORE", - "path": "83" - }, - "6884": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2688, - 2801 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6885": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "POP", - "path": "83" - }, - "6886": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "POP", - "path": "83" - }, - "6887": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6888": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2103, - 2106 - ], - "op": "PUSH1", - "path": "83", - "statement": 121, - "value": "0x1" - }, - "6890": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2103, - 2106 - ], - "op": "ADD", - "path": "83" - }, - "6891": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1A4C" - }, - "6894": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "JUMP", - "path": "83" - }, - "6895": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "JUMPDEST", - "path": "83" - }, - "6896": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 2068, - 2812 - ], - "op": "POP", - "path": "83" - }, - "6897": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1753, - 2818 - ], - "op": "POP", - "path": "83" - }, - "6898": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1753, - 2818 - ], - "op": "POP", - "path": "83" - }, - "6899": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1753, - 2818 - ], - "op": "POP", - "path": "83" - }, - "6900": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "offset": [ - 1753, - 2818 - ], - "op": "POP", - "path": "83" - }, - "6901": { - "fn": "BitmapAssetsHandler.addMultipleifCashAssets", - "jump": "o", - "offset": [ - 1753, - 2818 - ], - "op": "JUMP", - "path": "83" - }, - "6902": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15438, - 15915 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6903": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15584, - 15605 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1AFE" - }, - "6906": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15584, - 15605 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2E9F" - }, - "6909": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15584, - 15605 - ], - "op": "JUMP", - "path": "84" - }, - "6910": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15584, - 15605 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6911": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15617, - 15644 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B06" - }, - "6914": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15617, - 15644 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2E9F" - }, - "6917": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15617, - 15644 - ], - "op": "JUMP", - "path": "84" - }, - "6918": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15617, - 15644 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6919": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15658, - 15679 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "6921": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15658, - 15679 - ], - "op": "DUP5", - "path": "84" - }, - "6922": { - "branch": 388, - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15658, - 15679 - ], - "op": "AND", - "path": "84" - }, - "6923": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15654, - 15693 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B15" - }, - "6926": { - "branch": 388, - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15654, - 15693 - ], - "op": "JUMPI", - "path": "84" - }, - "6927": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15688, - 15693 - ], - "op": "SWAP1", - "path": "84", - "statement": 122 - }, - "6928": { - "op": "POP" - }, - "6929": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15681, - 15693 - ], - "op": "PUSH2", - "path": "84", - "value": "0x653" - }, - "6932": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15681, - 15693 - ], - "op": "JUMP", - "path": "84" - }, - "6933": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15654, - 15693 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6934": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15725, - 15770 - ], - "op": "PUSH2", - "path": "84", - "statement": 123, - "value": "0x1B1F" - }, - "6937": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15744, - 15751 - ], - "op": "DUP6", - "path": "84" - }, - "6938": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15753, - 15769 - ], - "op": "DUP6", - "path": "84" - }, - "6939": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15725, - 15743 - ], - "op": "PUSH2", - "path": "84", - "value": "0xB2F" - }, - "6942": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15725, - 15770 - ], - "op": "JUMP", - "path": "84" - }, - "6943": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15725, - 15770 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6944": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15704, - 15770 - ], - "op": "DUP2", - "path": "84" - }, - "6945": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15704, - 15770 - ], - "op": "MSTORE", - "path": "84" - }, - "6946": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "PUSH1", - "path": "84", - "statement": 124, - "value": "0xFF" - }, - "6948": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "DUP5", - "path": "84" - }, - "6949": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "AND", - "path": "84" - }, - "6950": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15803 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "6952": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15803 - ], - "op": "DUP3", - "path": "84" - }, - "6953": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15803 - ], - "op": "ADD", - "path": "84" - }, - "6954": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15780, - 15822 - ], - "op": "MSTORE", - "path": "84" - }, - "6955": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15871, - 15884 - ], - "op": "DUP3", - "path": "84", - "statement": 125 - }, - "6956": { - "op": "PUSH1", - "value": "0x1" - }, - "6958": { - "op": "PUSH1", - "value": "0x1" - }, - "6960": { - "op": "PUSH1", - "value": "0x40" - }, - "6962": { - "op": "SHL" - }, - "6963": { - "op": "SUB" - }, - "6964": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "6965": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "GT", - "path": "84" - }, - "6966": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "6967": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ISZERO", - "path": "84" - }, - "6968": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B40" - }, - "6971": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPI", - "path": "84" - }, - "6972": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "6974": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "6975": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "REVERT", - "path": "84" - }, - "6976": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "6977": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "POP", - "path": "84" - }, - "6978": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "6980": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MLOAD", - "path": "84" - }, - "6981": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "6982": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "6983": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP3", - "path": "84" - }, - "6984": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "6985": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "6986": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "6988": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MUL", - "path": "84" - }, - "6989": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "6991": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "6992": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP3", - "path": "84" - }, - "6993": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "6994": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "6996": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "6997": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP1", - "path": "84" - }, - "6998": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ISZERO", - "path": "84" - }, - "6999": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B7A" - }, - "7002": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPI", - "path": "84" - }, - "7003": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "7004": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "7006": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "7007": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7008": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B67" - }, - "7011": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2E5F" - }, - "7014": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "i", - "offset": [ - 15850, - 15885 - ], - "op": "JUMP", - "path": "84" - }, - "7015": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7016": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "7017": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "7018": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "7020": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "ADD", - "path": "84" - }, - "7021": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "7022": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "7024": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "7025": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SUB", - "path": "84" - }, - "7026": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "7027": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "DUP2", - "path": "84" - }, - "7028": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B5F" - }, - "7031": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPI", - "path": "84" - }, - "7032": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "SWAP1", - "path": "84" - }, - "7033": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "POP", - "path": "84" - }, - "7034": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15850, - 15885 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7035": { - "op": "POP" - }, - "7036": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "7038": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "DUP3", - "path": "84" - }, - "7039": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "ADD", - "path": "84" - }, - "7040": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15885 - ], - "op": "MSTORE", - "path": "84" - }, - "7041": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15832, - 15847 - ], - "op": "SWAP5", - "path": "84" - }, - "7042": { - "fn": "PortfolioHandler.buildPortfolioState", - "offset": [ - 15438, - 15915 - ], - "op": "SWAP4", - "path": "84" - }, - "7043": { - "op": "POP" - }, - "7044": { - "op": "POP" - }, - "7045": { - "op": "POP" - }, - "7046": { - "op": "POP" - }, - "7047": { - "fn": "PortfolioHandler.buildPortfolioState", - "jump": "o", - "offset": [ - 15438, - 15915 - ], - "op": "JUMP", - "path": "84" - }, - "7048": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 658, - 1160 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7049": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 804, - 813 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "7051": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7052": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 823, - 829 - ], - "op": "DUP2", - "path": "84" - }, - "7053": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 823, - 836 - ], - "op": "MLOAD", - "path": "84" - }, - "7054": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 819, - 820 - ], - "op": "DUP2", - "path": "84" - }, - "7055": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 819, - 836 - ], - "op": "LT", - "path": "84" - }, - "7056": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "ISZERO", - "path": "84" - }, - "7057": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "PUSH2", - "path": "84", - "value": "0x130C" - }, - "7060": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "JUMPI", - "path": "84" - }, - "7061": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 857, - 884 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "7063": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 893 - ], - "op": "DUP3", - "path": "84" - }, - "7064": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 894, - 895 - ], - "op": "DUP3", - "path": "84" - }, - "7065": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "DUP2", - "path": "84" - }, - "7066": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "MLOAD", - "path": "84" - }, - "7067": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "DUP2", - "path": "84" - }, - "7068": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "LT", - "path": "84" - }, - "7069": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1BA2" - }, - "7072": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "JUMPI", - "path": "84" - }, - "7073": { - "dev": "Index out of range", - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "INVALID", - "path": "84" - }, - "7074": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7075": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "7077": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "MUL", - "path": "84" - }, - "7078": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "7080": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "ADD", - "path": "84" - }, - "7081": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "ADD", - "path": "84" - }, - "7082": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 887, - 896 - ], - "op": "MLOAD", - "path": "84" - }, - "7083": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 857, - 896 - ], - "op": "SWAP1", - "path": "84" - }, - "7084": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 857, - 896 - ], - "op": "POP", - "path": "84" - }, - "7085": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 914, - 919 - ], - "op": "DUP1", - "path": "84" - }, - "7086": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 914, - 928 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "7088": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 914, - 928 - ], - "op": "ADD", - "path": "84" - }, - "7089": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 914, - 928 - ], - "op": "MLOAD", - "path": "84" - }, - "7090": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 932, - 933 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "7092": { - "branch": 389, - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 914, - 933 - ], - "op": "EQ", - "path": "84" - }, - "7093": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 910, - 943 - ], - "op": "ISZERO", - "path": "84" - }, - "7094": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 910, - 943 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1BBF" - }, - "7097": { - "branch": 389, - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 910, - 943 - ], - "op": "JUMPI", - "path": "84" - }, - "7098": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 935, - 943 - ], - "op": "POP", - "path": "84", - "statement": 126 - }, - "7099": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 935, - 943 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1BDE" - }, - "7102": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 935, - 943 - ], - "op": "JUMP", - "path": "84" - }, - "7103": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 910, - 943 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7104": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 958, - 1143 - ], - "op": "PUSH2", - "path": "84", - "statement": 127, - "value": "0x1BDC" - }, - "7107": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 984, - 998 - ], - "op": "DUP5", - "path": "84" - }, - "7108": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1016, - 1021 - ], - "op": "DUP3", - "path": "84" - }, - "7109": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1016, - 1032 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "7111": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1016, - 1032 - ], - "op": "ADD", - "path": "84" - }, - "7112": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1016, - 1032 - ], - "op": "MLOAD", - "path": "84" - }, - "7113": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1050, - 1055 - ], - "op": "DUP4", - "path": "84" - }, - "7114": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1050, - 1064 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "7116": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1050, - 1064 - ], - "op": "ADD", - "path": "84" - }, - "7117": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1050, - 1064 - ], - "op": "MLOAD", - "path": "84" - }, - "7118": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1082, - 1087 - ], - "op": "DUP5", - "path": "84" - }, - "7119": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1082, - 1097 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "7121": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1082, - 1097 - ], - "op": "ADD", - "path": "84" - }, - "7122": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1082, - 1097 - ], - "op": "MLOAD", - "path": "84" - }, - "7123": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1115, - 1120 - ], - "op": "DUP6", - "path": "84" - }, - "7124": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1115, - 1129 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "7126": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1115, - 1129 - ], - "op": "ADD", - "path": "84" - }, - "7127": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 1115, - 1129 - ], - "op": "MLOAD", - "path": "84" - }, - "7128": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 958, - 966 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2087" - }, - "7131": { - "fn": "PortfolioHandler.addMultipleAssets", - "jump": "i", - "offset": [ - 958, - 1143 - ], - "op": "JUMP", - "path": "84" - }, - "7132": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 958, - 1143 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7133": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "POP", - "path": "84" - }, - "7134": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "JUMPDEST", - "path": "84" - }, - "7135": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 838, - 841 - ], - "op": "PUSH1", - "path": "84", - "statement": 128, - "value": "0x1" - }, - "7137": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 838, - 841 - ], - "op": "ADD", - "path": "84" - }, - "7138": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1B8B" - }, - "7141": { - "fn": "PortfolioHandler.addMultipleAssets", - "offset": [ - 799, - 1154 - ], - "op": "JUMP", - "path": "84" - }, - "7142": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 9863, - 12215 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7143": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "7145": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "DUP1", - "path": "66" - }, - "7146": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "DUP1", - "path": "66" - }, - "7147": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10240, - 10252 - ], - "op": "DUP1", - "path": "66" - }, - "7148": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10379 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1BF5" - }, - "7151": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10358 - ], - "op": "DUP7", - "path": "66" - }, - "7152": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10371, - 10378 - ], - "op": "DUP9", - "path": "66" - }, - "7153": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10370 - ], - "op": "PUSH2", - "path": "66", - "value": "0x218C" - }, - "7156": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 10344, - 10379 - ], - "op": "JUMP", - "path": "66" - }, - "7157": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10344, - 10379 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7158": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "PUSH5", - "path": "66", - "statement": 129, - "value": "0xFFFFFFFFFF" - }, - "7164": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "DUP2", - "path": "66" - }, - "7165": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "AND", - "path": "66" - }, - "7166": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "DUP13", - "path": "66" - }, - "7167": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10435 - ], - "op": "MSTORE", - "path": "66" - }, - "7168": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP3", - "path": "66" - }, - "7169": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP7", - "path": "66" - }, - "7170": { - "op": "POP" - }, - "7171": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP1", - "path": "66" - }, - "7172": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP5", - "path": "66" - }, - "7173": { - "op": "POP" - }, - "7174": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP3", - "path": "66" - }, - "7175": { - "op": "POP" - }, - "7176": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10239, - 10379 - ], - "op": "SWAP1", - "path": "66" - }, - "7177": { - "op": "POP" - }, - "7178": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10485 - ], - "op": "PUSH2", - "path": "66", - "statement": 130, - "value": "0x1C12" - }, - "7181": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10389, - 10403 - ], - "op": "DUP9", - "path": "66" - }, - "7182": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10469 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1683" - }, - "7185": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 10453, - 10485 - ], - "op": "JUMP", - "path": "66" - }, - "7186": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10485 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7187": { - "branch": 325, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10453, - 10494 - ], - "op": "ISZERO", - "path": "66" - }, - "7188": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1C1C" - }, - "7191": { - "branch": 325, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "JUMPI", - "path": "66" - }, - "7192": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "7194": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "DUP1", - "path": "66" - }, - "7195": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "REVERT", - "path": "66" - }, - "7196": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10445, - 10495 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7197": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "PUSH1", - "path": "66", - "statement": 131, - "value": "0xFF" - }, - "7199": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "DUP3", - "path": "66" - }, - "7200": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "AND", - "path": "66" - }, - "7201": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10572 - ], - "op": "PUSH1", - "path": "66", - "value": "0x40" - }, - "7203": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10572 - ], - "op": "DUP10", - "path": "66" - }, - "7204": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10572 - ], - "op": "ADD", - "path": "66" - }, - "7205": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10541, - 10591 - ], - "op": "MSTORE", - "path": "66" - }, - "7206": { - "branch": 326, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10772, - 10785 - ], - "op": "DUP5", - "path": "66" - }, - "7207": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10767, - 10908 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1C3B" - }, - "7210": { - "branch": 326, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10767, - 10908 - ], - "op": "JUMPI", - "path": "66" - }, - "7211": { - "offset": [ - 2023, - 2024 - ], - "op": "PUSH1", - "path": "60", - "value": "0x7" - }, - "7213": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "PUSH1", - "path": "66", - "statement": 132, - "value": "0xFF" - }, - "7215": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "DUP4", - "path": "66" - }, - "7216": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "AND", - "path": "66" - }, - "7217": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "GT", - "path": "66" - }, - "7218": { - "branch": 327, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10809, - 10869 - ], - "op": "ISZERO", - "path": "66" - }, - "7219": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1C3B" - }, - "7222": { - "branch": 327, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "JUMPI", - "path": "66" - }, - "7223": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "7225": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "DUP1", - "path": "66" - }, - "7226": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "REVERT", - "path": "66" - }, - "7227": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 10801, - 10870 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7228": { - "branch": 328, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11059, - 11066 - ], - "op": "DUP4", - "path": "66" - }, - "7229": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "ISZERO", - "path": "66" - }, - "7230": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1C5E" - }, - "7233": { - "branch": 328, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMPI", - "path": "66" - }, - "7234": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "PUSH1", - "path": "66", - "statement": 133, - "value": "0x20" - }, - "7236": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "DUP9", - "path": "66" - }, - "7237": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "ADD", - "path": "66" - }, - "7238": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "DUP1", - "path": "66" - }, - "7239": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11129 - ], - "op": "MLOAD", - "path": "66" - }, - "7240": { - "op": "PUSH1", - "value": "0x1" - }, - "7242": { - "op": "PUSH1", - "value": "0xF8" - }, - "7244": { - "op": "SHL" - }, - "7245": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11107, - 11156 - ], - "op": "OR", - "path": "66" - }, - "7246": { - "op": "PUSH1", - "value": "0x1" - }, - "7248": { - "op": "PUSH1", - "value": "0x1" - }, - "7250": { - "op": "PUSH1", - "value": "0xF8" - }, - "7252": { - "op": "SHL" - }, - "7253": { - "op": "SUB" - }, - "7254": { - "op": "NOT" - }, - "7255": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11082, - 11156 - ], - "op": "AND", - "path": "66" - }, - "7256": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11082, - 11156 - ], - "op": "SWAP1", - "path": "66" - }, - "7257": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11082, - 11156 - ], - "op": "MSTORE", - "path": "66" - }, - "7258": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1C6D" - }, - "7261": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMP", - "path": "66" - }, - "7262": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7263": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "PUSH1", - "path": "66", - "statement": 134, - "value": "0x20" - }, - "7265": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "DUP9", - "path": "66" - }, - "7266": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "ADD", - "path": "66" - }, - "7267": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "DUP1", - "path": "66" - }, - "7268": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11257, - 11279 - ], - "op": "MLOAD", - "path": "66" - }, - "7269": { - "op": "PUSH1", - "value": "0x7F" - }, - "7271": { - "op": "PUSH1", - "value": "0xF9" - }, - "7273": { - "op": "SHL" - }, - "7274": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11232, - 11307 - ], - "op": "AND", - "path": "66" - }, - "7275": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11232, - 11307 - ], - "op": "SWAP1", - "path": "66" - }, - "7276": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11232, - 11307 - ], - "op": "MSTORE", - "path": "66" - }, - "7277": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11055, - 11318 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7278": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11460, - 11519 - ], - "op": "PUSH2", - "path": "66", - "statement": 135, - "value": "0x1C7A" - }, - "7281": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11501 - ], - "op": "DUP9", - "path": "66" - }, - "7282": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11518 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "7284": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11518 - ], - "op": "ADD", - "path": "66" - }, - "7285": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11487, - 11518 - ], - "op": "MLOAD", - "path": "66" - }, - "7286": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11460, - 11486 - ], - "op": "PUSH2", - "path": "66", - "value": "0x23CB" - }, - "7289": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 11460, - 11519 - ], - "op": "JUMP", - "path": "66" - }, - "7290": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11460, - 11519 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7291": { - "op": "PUSH1", - "value": "0x1" - }, - "7293": { - "op": "PUSH1", - "value": "0x1" - }, - "7295": { - "op": "PUSH1", - "value": "0x70" - }, - "7297": { - "op": "SHL" - }, - "7298": { - "op": "SUB" - }, - "7299": { - "op": "NOT" - }, - "7300": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11519 - ], - "op": "AND", - "path": "66" - }, - "7301": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11457 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "7303": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11457 - ], - "op": "DUP10", - "path": "66" - }, - "7304": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11457 - ], - "op": "ADD", - "path": "66" - }, - "7305": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11426, - 11519 - ], - "op": "MSTORE", - "path": "66" - }, - "7306": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11530, - 11550 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "7308": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7309": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11567, - 11591 - ], - "op": "DUP4", - "path": "66" - }, - "7310": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11567, - 11591 - ], - "op": "ISZERO", - "path": "66" - }, - "7311": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "PUSH2", - "path": "66", - "value": "0x123B" - }, - "7314": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMPI", - "path": "66" - }, - "7315": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF0" - }, - "7317": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "DUP5", - "path": "66" - }, - "7318": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "SWAP1", - "path": "66" - }, - "7319": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11902, - 11937 - ], - "op": "SHR", - "path": "66" - }, - "7320": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11955, - 11981 - ], - "op": "DUP2", - "path": "66" - }, - "7321": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11955, - 11981 - ], - "op": "DUP2", - "path": "66" - }, - "7322": { - "branch": 329, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11955, - 11981 - ], - "op": "EQ", - "path": "66" - }, - "7323": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11951, - 12098 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1CAF" - }, - "7326": { - "branch": 329, - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11951, - 12098 - ], - "op": "JUMPI", - "path": "66" - }, - "7327": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12001, - 12083 - ], - "op": "PUSH2", - "path": "66", - "statement": 136, - "value": "0x1CAF" - }, - "7330": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12019, - 12033 - ], - "op": "DUP11", - "path": "66" - }, - "7331": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12035, - 12045 - ], - "op": "DUP3", - "path": "66" - }, - "7332": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12047, - 12051 - ], - "op": "PUSH1", - "path": "66", - "value": "0x1" - }, - "7334": { - "op": "PUSH1", - "value": "0x1" - }, - "7336": { - "op": "PUSH1", - "value": "0xFF" - }, - "7338": { - "op": "SHL" - }, - "7339": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12001, - 12018 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2446" - }, - "7342": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "jump": "i", - "offset": [ - 12001, - 12083 - ], - "op": "JUMP", - "path": "66" - }, - "7343": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12001, - 12083 - ], - "op": "JUMPDEST", - "path": "66" - }, - "7344": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12196, - 12198 - ], - "op": "PUSH1", - "path": "66", - "statement": 137, - "value": "0x10" - }, - "7346": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP5", - "path": "66" - }, - "7347": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP1", - "path": "66" - }, - "7348": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP5", - "path": "66" - }, - "7349": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SHL", - "path": "66" - }, - "7350": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12173, - 12198 - ], - "op": "SWAP4", - "path": "66" - }, - "7351": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 12126, - 12136 - ], - "op": "SWAP1", - "path": "66", - "statement": 138 - }, - "7352": { - "op": "POP" - }, - "7353": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1C8C" - }, - "7356": { - "fn": "AccountContextHandler.storeAssetsAndUpdateContext", - "offset": [ - 11560, - 12209 - ], - "op": "JUMP", - "path": "66" - }, - "7357": { - "fn": "SafeInt256.neg", - "offset": [ - 1553, - 1643 - ], - "op": "JUMPDEST", - "path": "94" - }, - "7358": { - "fn": "SafeInt256.neg", - "offset": [ - 1599, - 1607 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "7360": { - "fn": "SafeInt256.neg", - "offset": [ - 1626, - 1636 - ], - "op": "PUSH2", - "path": "94", - "statement": 139, - "value": "0x30C" - }, - "7363": { - "op": "PUSH1", - "value": "0x0" - }, - "7365": { - "op": "NOT" - }, - "7366": { - "fn": "SafeInt256.neg", - "offset": [ - 1634, - 1635 - ], - "op": "DUP4", - "path": "94" - }, - "7367": { - "fn": "SafeInt256.neg", - "offset": [ - 1626, - 1629 - ], - "op": "PUSH2", - "path": "94", - "value": "0x2645" - }, - "7370": { - "fn": "SafeInt256.neg", - "jump": "i", - "offset": [ - 1626, - 1636 - ], - "op": "JUMP", - "path": "94" - }, - "7371": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11271, - 11489 - ], - "op": "JUMPDEST", - "path": "77" - }, - "7372": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11348, - 11360 - ], - "op": "PUSH1", - "path": "77", - "value": "0x0" - }, - "7374": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11372, - 11413 - ], - "op": "DUP1", - "path": "77" - }, - "7375": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11416, - 11448 - ], - "op": "PUSH2", - "path": "77", - "value": "0x1CD6" - }, - "7378": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11416, - 11446 - ], - "op": "PUSH2", - "path": "77", - "value": "0x2693" - }, - "7381": { - "fn": "CashGroup._getCashGroupStorageBytes", - "jump": "i", - "offset": [ - 11416, - 11448 - ], - "op": "JUMP", - "path": "77" - }, - "7382": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11416, - 11448 - ], - "op": "JUMPDEST", - "path": "77" - }, - "7383": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "PUSH1", - "path": "77", - "statement": 140, - "value": "0x0" - }, - "7385": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "SWAP4", - "path": "77" - }, - "7386": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "DUP5", - "path": "77" - }, - "7387": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "MSTORE", - "path": "77" - }, - "7388": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "PUSH1", - "path": "77", - "value": "0x20" - }, - "7390": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "MSTORE", - "path": "77" - }, - "7391": { - "op": "POP" - }, - "7392": { - "op": "POP" - }, - "7393": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "PUSH1", - "path": "77", - "value": "0x40" - }, - "7395": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "SWAP1", - "path": "77" - }, - "7396": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "KECCAK256", - "path": "77" - }, - "7397": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "SLOAD", - "path": "77" - }, - "7398": { - "fn": "CashGroup._getCashGroupStorageBytes", - "offset": [ - 11465, - 11482 - ], - "op": "SWAP1", - "path": "77" - }, - "7399": { - "fn": "CashGroup._getCashGroupStorageBytes", - "jump": "o", - "offset": [ - 11271, - 11489 - ], - "op": "JUMP", - "path": "77" - }, - "7400": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 330, - 523 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7401": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 398, - 405 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7403": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "7407": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 425, - 455 - ], - "op": "DUP3", - "path": "78", - "statement": 141 - }, - "7408": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 425, - 455 - ], - "op": "LT", - "path": "78" - }, - "7409": { - "branch": 372, - "fn": "DateTime.getReferenceTime", - "offset": [ - 425, - 455 - ], - "op": "ISZERO", - "path": "78" - }, - "7410": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 417, - 456 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1CFA" - }, - "7413": { - "branch": 372, - "fn": "DateTime.getReferenceTime", - "offset": [ - 417, - 456 - ], - "op": "JUMPI", - "path": "78" - }, - "7414": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 417, - 456 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7416": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 417, - 456 - ], - "op": "DUP1", - "path": "78" - }, - "7417": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 417, - 456 - ], - "op": "REVERT", - "path": "78" - }, - "7418": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 417, - 456 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7419": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "7423": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 486, - 495 - ], - "op": "DUP3", - "path": "78", - "statement": 142 - }, - "7424": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 486, - 515 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1A25" - }, - "7427": { - "fn": "DateTime.getReferenceTime", - "offset": [ - 486, - 515 - ], - "op": "JUMP", - "path": "78" - }, - "7428": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 928, - 1398 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7429": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 991, - 998 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7431": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1014, - 1019 - ], - "op": "DUP2", - "path": "78" - }, - "7432": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1023, - 1024 - ], - "op": "PUSH1", - "path": "78", - "value": "0x1" - }, - "7434": { - "branch": 373, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1014, - 1024 - ], - "op": "EQ", - "path": "78" - }, - "7435": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "ISZERO", - "path": "78" - }, - "7436": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D19" - }, - "7439": { - "branch": 373, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "JUMPI", - "path": "78" - }, - "7440": { - "op": "POP" - }, - "7441": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "7445": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1026, - 1050 - ], - "op": "PUSH2", - "path": "78", - "statement": 143, - "value": "0x327" - }, - "7448": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1026, - 1050 - ], - "op": "JUMP", - "path": "78" - }, - "7449": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1010, - 1050 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7450": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1064, - 1069 - ], - "op": "DUP2", - "path": "78" - }, - "7451": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1073, - 1074 - ], - "op": "PUSH1", - "path": "78", - "value": "0x2" - }, - "7453": { - "branch": 374, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1064, - 1074 - ], - "op": "EQ", - "path": "78" - }, - "7454": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "ISZERO", - "path": "78" - }, - "7455": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D2C" - }, - "7458": { - "branch": 374, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "JUMPI", - "path": "78" - }, - "7459": { - "op": "POP" - }, - "7460": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1083, - 1104 - ], - "op": "PUSH3", - "path": "78", - "statement": 144, - "value": "0xED4E00" - }, - "7464": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1076, - 1104 - ], - "op": "PUSH2", - "path": "78", - "value": "0x327" - }, - "7467": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1076, - 1104 - ], - "op": "JUMP", - "path": "78" - }, - "7468": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1060, - 1104 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7469": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1118, - 1123 - ], - "op": "DUP2", - "path": "78" - }, - "7470": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1127, - 1128 - ], - "op": "PUSH1", - "path": "78", - "value": "0x3" - }, - "7472": { - "branch": 375, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1118, - 1128 - ], - "op": "EQ", - "path": "78" - }, - "7473": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "ISZERO", - "path": "78" - }, - "7474": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D40" - }, - "7477": { - "branch": 375, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "JUMPI", - "path": "78" - }, - "7478": { - "op": "POP" - }, - "7479": { - "offset": [ - 2665, - 2676 - ], - "op": "PUSH4", - "path": "60", - "value": "0x1DA9C00" - }, - "7484": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1130, - 1151 - ], - "op": "PUSH2", - "path": "78", - "statement": 145, - "value": "0x327" - }, - "7487": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1130, - 1151 - ], - "op": "JUMP", - "path": "78" - }, - "7488": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1114, - 1151 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7489": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1165, - 1170 - ], - "op": "DUP2", - "path": "78" - }, - "7490": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1174, - 1175 - ], - "op": "PUSH1", - "path": "78", - "value": "0x4" - }, - "7492": { - "branch": 376, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1165, - 1175 - ], - "op": "EQ", - "path": "78" - }, - "7493": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "ISZERO", - "path": "78" - }, - "7494": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D54" - }, - "7497": { - "branch": 376, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "JUMPI", - "path": "78" - }, - "7498": { - "op": "POP" - }, - "7499": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1184, - 1202 - ], - "op": "PUSH4", - "path": "78", - "statement": 146, - "value": "0x3B53800" - }, - "7504": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1177, - 1202 - ], - "op": "PUSH2", - "path": "78", - "value": "0x327" - }, - "7507": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1177, - 1202 - ], - "op": "JUMP", - "path": "78" - }, - "7508": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1161, - 1202 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7509": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1216, - 1221 - ], - "op": "DUP2", - "path": "78" - }, - "7510": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1225, - 1226 - ], - "op": "PUSH1", - "path": "78", - "value": "0x5" - }, - "7512": { - "branch": 377, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1216, - 1226 - ], - "op": "EQ", - "path": "78" - }, - "7513": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "ISZERO", - "path": "78" - }, - "7514": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D68" - }, - "7517": { - "branch": 377, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "JUMPI", - "path": "78" - }, - "7518": { - "op": "POP" - }, - "7519": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1235, - 1253 - ], - "op": "PUSH4", - "path": "78", - "statement": 147, - "value": "0x9450C00" - }, - "7524": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1228, - 1253 - ], - "op": "PUSH2", - "path": "78", - "value": "0x327" - }, - "7527": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1228, - 1253 - ], - "op": "JUMP", - "path": "78" - }, - "7528": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1212, - 1253 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7529": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1267, - 1272 - ], - "op": "DUP2", - "path": "78" - }, - "7530": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1276, - 1277 - ], - "op": "PUSH1", - "path": "78", - "value": "0x6" - }, - "7532": { - "branch": 378, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1267, - 1277 - ], - "op": "EQ", - "path": "78" - }, - "7533": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "ISZERO", - "path": "78" - }, - "7534": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D7C" - }, - "7537": { - "branch": 378, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "JUMPI", - "path": "78" - }, - "7538": { - "op": "POP" - }, - "7539": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1286, - 1305 - ], - "op": "PUSH4", - "path": "78", - "statement": 148, - "value": "0x128A1800" - }, - "7544": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1279, - 1305 - ], - "op": "PUSH2", - "path": "78", - "value": "0x327" - }, - "7547": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1279, - 1305 - ], - "op": "JUMP", - "path": "78" - }, - "7548": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1263, - 1305 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7549": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1319, - 1324 - ], - "op": "DUP2", - "path": "78" - }, - "7550": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1328, - 1329 - ], - "op": "PUSH1", - "path": "78", - "value": "0x7" - }, - "7552": { - "branch": 379, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1319, - 1329 - ], - "op": "EQ", - "path": "78" - }, - "7553": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "ISZERO", - "path": "78" - }, - "7554": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1D90" - }, - "7557": { - "branch": 379, - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "JUMPI", - "path": "78" - }, - "7558": { - "op": "POP" - }, - "7559": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1338, - 1357 - ], - "op": "PUSH4", - "path": "78", - "statement": 149, - "value": "0x25143000" - }, - "7564": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1331, - 1357 - ], - "op": "PUSH2", - "path": "78", - "value": "0x327" - }, - "7567": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1331, - 1357 - ], - "op": "JUMP", - "path": "78" - }, - "7568": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1315, - 1357 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7569": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH1", - "path": "78", - "statement": 150, - "value": "0x40" - }, - "7571": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "MLOAD", - "path": "78" - }, - "7572": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "7576": { - "op": "PUSH1", - "value": "0xE5" - }, - "7578": { - "op": "SHL" - }, - "7579": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "DUP2", - "path": "78" - }, - "7580": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "MSTORE", - "path": "78" - }, - "7581": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH1", - "path": "78", - "value": "0x4" - }, - "7583": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "ADD", - "path": "78" - }, - "7584": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH2", - "path": "78", - "value": "0x3D8" - }, - "7587": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "SWAP1", - "path": "78" - }, - "7588": { - "fn": "DateTime.getTradedMarket", - "offset": [ - 1368, - 1391 - ], - "op": "PUSH2", - "path": "78", - "value": "0x36E6" - }, - "7591": { - "fn": "DateTime.getTradedMarket", - "jump": "i", - "offset": [ - 1368, - 1391 - ], - "op": "JUMP", - "path": "78" - }, - "7592": { - "fn": "SafeMath.add", - "offset": [ - 2682, - 2857 - ], - "op": "JUMPDEST", - "path": "6" - }, - "7593": { - "fn": "SafeMath.add", - "offset": [ - 2740, - 2747 - ], - "op": "PUSH1", - "path": "6", - "value": "0x0" - }, - "7595": { - "fn": "SafeMath.add", - "offset": [ - 2771, - 2776 - ], - "op": "DUP3", - "path": "6" - }, - "7596": { - "fn": "SafeMath.add", - "offset": [ - 2771, - 2776 - ], - "op": "DUP3", - "path": "6" - }, - "7597": { - "fn": "SafeMath.add", - "offset": [ - 2771, - 2776 - ], - "op": "ADD", - "path": "6" - }, - "7598": { - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "DUP4", - "path": "6", - "statement": 151 - }, - "7599": { - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "DUP2", - "path": "6" - }, - "7600": { - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "LT", - "path": "6" - }, - "7601": { - "branch": 444, - "fn": "SafeMath.add", - "offset": [ - 2794, - 2800 - ], - "op": "ISZERO", - "path": "6" - }, - "7602": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH2", - "path": "6", - "value": "0x653" - }, - "7605": { - "branch": 444, - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "JUMPI", - "path": "6" - }, - "7606": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "7608": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP1", - "path": "6" - }, - "7609": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MLOAD", - "path": "6" - }, - "7610": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "7614": { - "op": "PUSH1", - "value": "0xE5" - }, - "7616": { - "op": "SHL" - }, - "7617": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP2", - "path": "6" - }, - "7618": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "7619": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "7621": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x4" - }, - "7623": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP3", - "path": "6" - }, - "7624": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "7625": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "7626": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x1B" - }, - "7628": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x24" - }, - "7630": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP3", - "path": "6" - }, - "7631": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "7632": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "7633": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH32", - "path": "6", - "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000" - }, - "7666": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x44" - }, - "7668": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP3", - "path": "6" - }, - "7669": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "7670": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MSTORE", - "path": "6" - }, - "7671": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "7672": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "MLOAD", - "path": "6" - }, - "7673": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "7674": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "DUP2", - "path": "6" - }, - "7675": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "7676": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SUB", - "path": "6" - }, - "7677": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "PUSH1", - "path": "6", - "value": "0x64" - }, - "7679": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "ADD", - "path": "6" - }, - "7680": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "SWAP1", - "path": "6" - }, - "7681": { - "fn": "SafeMath.add", - "offset": [ - 2786, - 2832 - ], - "op": "REVERT", - "path": "6" - }, - "7682": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7683": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4140, - 4147 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7685": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4149, - 4153 - ], - "op": "DUP1", - "path": "78" - }, - "7686": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4169, - 4190 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7688": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4193, - 4215 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E10" - }, - "7691": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4205, - 4214 - ], - "op": "DUP6", - "path": "78" - }, - "7692": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4193, - 4204 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1A0D" - }, - "7695": { - "fn": "DateTime.getBitNumFromMaturity", - "jump": "i", - "offset": [ - 4193, - 4215 - ], - "op": "JUMP", - "path": "78" - }, - "7696": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4193, - 4215 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7697": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4169, - 4215 - ], - "op": "SWAP1", - "path": "78" - }, - "7698": { - "op": "POP" - }, - "7699": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "7703": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4283, - 4291 - ], - "op": "DUP5", - "path": "78" - }, - "7704": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4283, - 4307 - ], - "op": "MOD", - "path": "78" - }, - "7705": { - "branch": 380, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4283, - 4312 - ], - "op": "ISZERO", - "path": "78" - }, - "7706": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4279, - 4331 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E2A" - }, - "7709": { - "branch": 380, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4279, - 4331 - ], - "op": "JUMPI", - "path": "78" - }, - "7710": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4322, - 4323 - ], - "op": "PUSH1", - "path": "78", - "statement": 152, - "value": "0x0" - }, - "7712": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4325, - 4330 - ], - "op": "DUP1", - "path": "78" - }, - "7713": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "SWAP3", - "path": "78" - }, - "7714": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "POP", - "path": "78" - }, - "7715": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "SWAP3", - "path": "78" - }, - "7716": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "POP", - "path": "78" - }, - "7717": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "POP", - "path": "78" - }, - "7718": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1F06" - }, - "7721": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4314, - 4331 - ], - "op": "JUMP", - "path": "78" - }, - "7722": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4279, - 4331 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7723": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4404, - 4412 - ], - "op": "DUP4", - "path": "78" - }, - "7724": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4387, - 4400 - ], - "op": "DUP2", - "path": "78" - }, - "7725": { - "branch": 381, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4387, - 4412 - ], - "op": "LT", - "path": "78" - }, - "7726": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4383, - 4431 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E3E" - }, - "7729": { - "branch": 381, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4383, - 4431 - ], - "op": "JUMPI", - "path": "78" - }, - "7730": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4422, - 4423 - ], - "op": "PUSH1", - "path": "78", - "statement": 153, - "value": "0x0" - }, - "7732": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4425, - 4430 - ], - "op": "DUP1", - "path": "78" - }, - "7733": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "SWAP3", - "path": "78" - }, - "7734": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "POP", - "path": "78" - }, - "7735": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "SWAP3", - "path": "78" - }, - "7736": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "POP", - "path": "78" - }, - "7737": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "POP", - "path": "78" - }, - "7738": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1F06" - }, - "7741": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4414, - 4431 - ], - "op": "JUMP", - "path": "78" - }, - "7742": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4383, - 4431 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7743": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "7747": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4556, - 4580 - ], - "op": "DUP2", - "path": "78" - }, - "7748": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4556, - 4580 - ], - "op": "DUP6", - "path": "78" - }, - "7749": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4556, - 4580 - ], - "op": "SUB", - "path": "78" - }, - "7750": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4555, - 4597 - ], - "op": "DIV", - "path": "78" - }, - "7751": { - "offset": [ - 2984, - 2986 - ], - "op": "PUSH1", - "path": "60", - "value": "0x5A" - }, - "7753": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4680, - 4718 - ], - "op": "DUP2", - "path": "78" - }, - "7754": { - "branch": 382, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4680, - 4718 - ], - "op": "GT", - "path": "78" - }, - "7755": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4676, - 6563 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E5B" - }, - "7758": { - "branch": 382, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4676, - 6563 - ], - "op": "JUMPI", - "path": "78" - }, - "7759": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4742, - 4752 - ], - "op": "SWAP3", - "path": "78", - "statement": 154 - }, - "7760": { - "op": "POP" - }, - "7761": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4754, - 4758 - ], - "op": "PUSH1", - "path": "78", - "value": "0x1" - }, - "7763": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4754, - 4758 - ], - "op": "SWAP2", - "path": "78" - }, - "7764": { - "op": "POP" - }, - "7765": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4734, - 4759 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1F06" - }, - "7768": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4734, - 4759 - ], - "op": "SWAP1", - "path": "78" - }, - "7769": { - "op": "POP" - }, - "7770": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4734, - 4759 - ], - "op": "JUMP", - "path": "78" - }, - "7771": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4676, - 6563 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7772": { - "offset": [ - 3036, - 3039 - ], - "op": "PUSH2", - "path": "60", - "value": "0x168" - }, - "7775": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4780, - 4790 - ], - "op": "DUP2", - "path": "78" - }, - "7776": { - "branch": 383, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4780, - 4819 - ], - "op": "GT", - "path": "78" - }, - "7777": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4776, - 6563 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E9A" - }, - "7780": { - "branch": 383, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4776, - 6563 - ], - "op": "JUMPI", - "path": "78" - }, - "7781": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5092, - 5112 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7783": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "7787": { - "offset": [ - 2520, - 2527 - ], - "op": "PUSH3", - "path": "60", - "value": "0x7E900" - }, - "7791": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5212, - 5242 - ], - "op": "DUP5", - "path": "78" - }, - "7792": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5212, - 5242 - ], - "op": "MOD", - "path": "78" - }, - "7793": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5211, - 5279 - ], - "op": "DIV", - "path": "78" - }, - "7794": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5131, - 5279 - ], - "op": "DUP3", - "path": "78" - }, - "7795": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5131, - 5279 - ], - "op": "ADD", - "path": "78" - }, - "7796": { - "op": "PUSH1", - "value": "0x59" - }, - "7798": { - "op": "NOT" - }, - "7799": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5131, - 5279 - ], - "op": "ADD", - "path": "78" - }, - "7800": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5131, - 5279 - ], - "op": "SWAP1", - "path": "78" - }, - "7801": { - "op": "POP" - }, - "7802": { - "offset": [ - 2776, - 2777 - ], - "op": "PUSH1", - "path": "60", - "value": "0x6" - }, - "7804": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5131, - 5279 - ], - "op": "DUP2", - "path": "78" - }, - "7805": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5528, - 5565 - ], - "op": "DIV", - "path": "78", - "statement": 155 - }, - "7806": { - "offset": [ - 3257, - 3259 - ], - "op": "PUSH1", - "path": "60", - "value": "0x5A" - }, - "7808": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5500, - 5565 - ], - "op": "ADD", - "path": "78" - }, - "7809": { - "offset": [ - 2776, - 2777 - ], - "op": "PUSH1", - "path": "60", - "value": "0x6" - }, - "7811": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5596 - ], - "op": "DUP3", - "path": "78" - }, - "7812": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5621 - ], - "op": "DUP2", - "path": "78" - }, - "7813": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5621 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E8A" - }, - "7816": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5621 - ], - "op": "JUMPI", - "path": "78" - }, - "7817": { - "dev": "Modulus by zero", - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5621 - ], - "op": "INVALID", - "path": "78" - }, - "7818": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5621 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7819": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5584, - 5621 - ], - "op": "MOD", - "path": "78" - }, - "7820": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5626, - 5627 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7822": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5583, - 5627 - ], - "op": "EQ", - "path": "78" - }, - "7823": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "SWAP5", - "path": "78" - }, - "7824": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "POP", - "path": "78" - }, - "7825": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "SWAP5", - "path": "78" - }, - "7826": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "POP", - "path": "78" - }, - "7827": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "POP", - "path": "78" - }, - "7828": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "POP", - "path": "78" - }, - "7829": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "POP", - "path": "78" - }, - "7830": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1F06" - }, - "7833": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5306, - 5641 - ], - "op": "JUMP", - "path": "78" - }, - "7834": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4776, - 6563 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7835": { - "offset": [ - 3090, - 3094 - ], - "op": "PUSH2", - "path": "60", - "value": "0x870" - }, - "7838": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5662, - 5672 - ], - "op": "DUP2", - "path": "78" - }, - "7839": { - "branch": 384, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5662, - 5702 - ], - "op": "GT", - "path": "78" - }, - "7840": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5658, - 6563 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1ECA" - }, - "7843": { - "branch": 384, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5658, - 6563 - ], - "op": "JUMPI", - "path": "78" - }, - "7844": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5718, - 5738 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7846": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "7850": { - "offset": [ - 2567, - 2575 - ], - "op": "PUSH3", - "path": "60", - "value": "0x278D00" - }, - "7854": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5839, - 5870 - ], - "op": "DUP5", - "path": "78" - }, - "7855": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5839, - 5870 - ], - "op": "MOD", - "path": "78" - }, - "7856": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5838, - 5907 - ], - "op": "DIV", - "path": "78" - }, - "7857": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5757, - 5907 - ], - "op": "DUP3", - "path": "78" - }, - "7858": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5757, - 5907 - ], - "op": "ADD", - "path": "78" - }, - "7859": { - "op": "PUSH2", - "value": "0x167" - }, - "7862": { - "op": "NOT" - }, - "7863": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5757, - 5907 - ], - "op": "ADD", - "path": "78" - }, - "7864": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5757, - 5907 - ], - "op": "SWAP1", - "path": "78" - }, - "7865": { - "op": "POP" - }, - "7866": { - "offset": [ - 2825, - 2827 - ], - "op": "PUSH1", - "path": "60", - "value": "0x1E" - }, - "7868": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5757, - 5907 - ], - "op": "DUP2", - "path": "78" - }, - "7869": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5976, - 6014 - ], - "op": "DIV", - "path": "78", - "statement": 156 - }, - "7870": { - "offset": [ - 3310, - 3313 - ], - "op": "PUSH1", - "path": "60", - "value": "0x87" - }, - "7872": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5947, - 6014 - ], - "op": "ADD", - "path": "78" - }, - "7873": { - "offset": [ - 2825, - 2827 - ], - "op": "PUSH1", - "path": "60", - "value": "0x1E" - }, - "7875": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6033, - 6045 - ], - "op": "DUP3", - "path": "78" - }, - "7876": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6033, - 6071 - ], - "op": "DUP2", - "path": "78" - }, - "7877": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6033, - 6071 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E8A" - }, - "7880": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6033, - 6071 - ], - "op": "JUMPI", - "path": "78" - }, - "7881": { - "dev": "Modulus by zero", - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6033, - 6071 - ], - "op": "INVALID", - "path": "78" - }, - "7882": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 5658, - 6563 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7883": { - "offset": [ - 3147, - 3151 - ], - "op": "PUSH2", - "path": "60", - "value": "0x1DE2" - }, - "7886": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6112, - 6122 - ], - "op": "DUP2", - "path": "78" - }, - "7887": { - "branch": 385, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6112, - 6154 - ], - "op": "GT", - "path": "78" - }, - "7888": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6108, - 6563 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1EFA" - }, - "7891": { - "branch": 385, - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6108, - 6563 - ], - "op": "JUMPI", - "path": "78" - }, - "7892": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6170, - 6190 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7894": { - "offset": [ - 2399, - 2404 - ], - "op": "PUSH3", - "path": "60", - "value": "0x15180" - }, - "7898": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "7902": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6292, - 6325 - ], - "op": "DUP5", - "path": "78" - }, - "7903": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6292, - 6325 - ], - "op": "MOD", - "path": "78" - }, - "7904": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6291, - 6362 - ], - "op": "DIV", - "path": "78" - }, - "7905": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6209, - 6362 - ], - "op": "DUP3", - "path": "78" - }, - "7906": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6209, - 6362 - ], - "op": "ADD", - "path": "78" - }, - "7907": { - "op": "PUSH2", - "value": "0x86F" - }, - "7910": { - "op": "NOT" - }, - "7911": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6209, - 6362 - ], - "op": "ADD", - "path": "78" - }, - "7912": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6209, - 6362 - ], - "op": "SWAP1", - "path": "78" - }, - "7913": { - "op": "POP" - }, - "7914": { - "offset": [ - 2877, - 2879 - ], - "op": "PUSH1", - "path": "60", - "value": "0x5A" - }, - "7916": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6209, - 6362 - ], - "op": "DUP2", - "path": "78" - }, - "7917": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6433, - 6473 - ], - "op": "DIV", - "path": "78", - "statement": 157 - }, - "7918": { - "offset": [ - 3366, - 3369 - ], - "op": "PUSH1", - "path": "60", - "value": "0xC3" - }, - "7920": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6402, - 6473 - ], - "op": "ADD", - "path": "78" - }, - "7921": { - "offset": [ - 2877, - 2879 - ], - "op": "PUSH1", - "path": "60", - "value": "0x5A" - }, - "7923": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6492, - 6504 - ], - "op": "DUP3", - "path": "78" - }, - "7924": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6492, - 6532 - ], - "op": "DUP2", - "path": "78" - }, - "7925": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6492, - 6532 - ], - "op": "PUSH2", - "path": "78", - "value": "0x1E8A" - }, - "7928": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6492, - 6532 - ], - "op": "JUMPI", - "path": "78" - }, - "7929": { - "dev": "Modulus by zero", - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6492, - 6532 - ], - "op": "INVALID", - "path": "78" - }, - "7930": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6108, - 6563 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7931": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6706, - 6709 - ], - "op": "PUSH2", - "path": "78", - "statement": 158, - "value": "0x100" - }, - "7934": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6711, - 6716 - ], - "op": "PUSH1", - "path": "78", - "value": "0x0" - }, - "7936": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6698, - 6717 - ], - "op": "SWAP4", - "path": "78" - }, - "7937": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6698, - 6717 - ], - "op": "POP", - "path": "78" - }, - "7938": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6698, - 6717 - ], - "op": "SWAP4", - "path": "78" - }, - "7939": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6698, - 6717 - ], - "op": "POP", - "path": "78" - }, - "7940": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6698, - 6717 - ], - "op": "POP", - "path": "78" - }, - "7941": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 6698, - 6717 - ], - "op": "POP", - "path": "78" - }, - "7942": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "JUMPDEST", - "path": "78" - }, - "7943": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "SWAP3", - "path": "78" - }, - "7944": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "POP", - "path": "78" - }, - "7945": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "SWAP3", - "path": "78" - }, - "7946": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "SWAP1", - "path": "78" - }, - "7947": { - "fn": "DateTime.getBitNumFromMaturity", - "offset": [ - 4025, - 6724 - ], - "op": "POP", - "path": "78" - }, - "7948": { - "fn": "DateTime.getBitNumFromMaturity", - "jump": "o", - "offset": [ - 4025, - 6724 - ], - "op": "JUMP", - "path": "78" - }, - "7949": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2175, - 2407 - ], - "op": "JUMPDEST", - "path": "62" - }, - "7950": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2241, - 2288 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "7952": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2305, - 2317 - ], - "op": "DUP1", - "path": "62" - }, - "7953": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2320, - 2360 - ], - "op": "PUSH2", - "path": "62", - "value": "0x30C" - }, - "7956": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2336, - 2359 - ], - "op": "PUSH1", - "path": "62", - "value": "0x2" - }, - "7958": { - "fn": "LibStorage.getNTokenContextStorage", - "offset": [ - 2320, - 2335 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1971" - }, - "7961": { - "fn": "LibStorage.getNTokenContextStorage", - "jump": "i", - "offset": [ - 2320, - 2360 - ], - "op": "JUMP", - "path": "62" - }, - "7962": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "JUMPDEST", - "path": "83" - }, - "7963": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3200, - 3206 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "7965": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3218, - 3238 - ], - "op": "DUP1", - "path": "83" - }, - "7966": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3241, - 3277 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F27" - }, - "7969": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3257, - 3264 - ], - "op": "DUP8", - "path": "83" - }, - "7970": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3266, - 3276 - ], - "op": "DUP8", - "path": "83" - }, - "7971": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3241, - 3256 - ], - "op": "PUSH2", - "path": "83", - "value": "0x26A0" - }, - "7974": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 3241, - 3277 - ], - "op": "JUMP", - "path": "83" - }, - "7975": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3241, - 3277 - ], - "op": "JUMPDEST", - "path": "83" - }, - "7976": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3218, - 3277 - ], - "op": "SWAP1", - "path": "83" - }, - "7977": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3218, - 3277 - ], - "op": "POP", - "path": "83" - }, - "7978": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3287, - 3386 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "7980": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3389, - 3424 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F33" - }, - "7983": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3389, - 3422 - ], - "op": "PUSH2", - "path": "83", - "value": "0x198A" - }, - "7986": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 3389, - 3424 - ], - "op": "JUMP", - "path": "83" - }, - "7987": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3389, - 3424 - ], - "op": "JUMPDEST", - "path": "83" - }, - "7988": { - "op": "PUSH1", - "value": "0x1" - }, - "7990": { - "op": "PUSH1", - "value": "0x1" - }, - "7992": { - "op": "PUSH1", - "value": "0xA0" - }, - "7994": { - "op": "SHL" - }, - "7995": { - "op": "SUB" - }, - "7996": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "DUP10", - "path": "83" - }, - "7997": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "AND", - "path": "83" - }, - "7998": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3434, - 3465 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "8000": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "SWAP1", - "path": "83" - }, - "8001": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "DUP2", - "path": "83" - }, - "8002": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "MSTORE", - "path": "83" - }, - "8003": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "8005": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "DUP3", - "path": "83" - }, - "8006": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "DUP2", - "path": "83" - }, - "8007": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "MSTORE", - "path": "83" - }, - "8008": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "PUSH1", - "path": "83", - "value": "0x40" - }, - "8010": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "DUP1", - "path": "83" - }, - "8011": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "DUP4", - "path": "83" - }, - "8012": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3482 - ], - "op": "KECCAK256", - "path": "83" - }, - "8013": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "DUP12", - "path": "83" - }, - "8014": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "DUP5", - "path": "83" - }, - "8015": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "MSTORE", - "path": "83" - }, - "8016": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "DUP3", - "path": "83" - }, - "8017": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "MSTORE", - "path": "83" - }, - "8018": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "DUP1", - "path": "83" - }, - "8019": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "DUP4", - "path": "83" - }, - "8020": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3494 - ], - "op": "KECCAK256", - "path": "83" - }, - "8021": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "DUP11", - "path": "83" - }, - "8022": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "DUP5", - "path": "83" - }, - "8023": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "MSTORE", - "path": "83" - }, - "8024": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "SWAP1", - "path": "83" - }, - "8025": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "SWAP2", - "path": "83" - }, - "8026": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "MSTORE", - "path": "83" - }, - "8027": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "DUP2", - "path": "83" - }, - "8028": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3468, - 3504 - ], - "op": "KECCAK256", - "path": "83" - }, - "8029": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3287, - 3424 - ], - "op": "SWAP2", - "path": "83" - }, - "8030": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3287, - 3424 - ], - "op": "SWAP3", - "path": "83" - }, - "8031": { - "op": "POP" - }, - "8032": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3434, - 3465 - ], - "op": "DUP1", - "path": "83" - }, - "8033": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3547, - 3603 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F6A" - }, - "8036": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3578, - 3592 - ], - "op": "DUP9", - "path": "83" - }, - "8037": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3495, - 3503 - ], - "op": "DUP11", - "path": "83" - }, - "8038": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3547, - 3577 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1E02" - }, - "8041": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 3547, - 3603 - ], - "op": "JUMP", - "path": "83" - }, - "8042": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3547, - 3603 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8043": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3514, - 3603 - ], - "op": "SWAP2", - "path": "83" - }, - "8044": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3514, - 3603 - ], - "op": "POP", - "path": "83" - }, - "8045": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3514, - 3603 - ], - "op": "SWAP2", - "path": "83" - }, - "8046": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3514, - 3603 - ], - "op": "POP", - "path": "83" - }, - "8047": { - "branch": 362, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3621, - 3628 - ], - "op": "DUP1", - "path": "83", - "statement": 159 - }, - "8048": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3613, - 3629 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F78" - }, - "8051": { - "branch": 362, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3613, - 3629 - ], - "op": "JUMPI", - "path": "83" - }, - "8052": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3613, - 3629 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "8054": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3613, - 3629 - ], - "op": "DUP1", - "path": "83" - }, - "8055": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3613, - 3629 - ], - "op": "REVERT", - "path": "83" - }, - "8056": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3613, - 3629 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8057": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3689, - 3718 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F82" - }, - "8060": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3689, - 3701 - ], - "op": "DUP6", - "path": "83" - }, - "8061": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3711, - 3717 - ], - "op": "DUP4", - "path": "83" - }, - "8062": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3689, - 3710 - ], - "op": "PUSH2", - "path": "83", - "value": "0x26D5" - }, - "8065": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 3689, - 3718 - ], - "op": "JUMP", - "path": "83" - }, - "8066": { - "branch": 363, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3689, - 3718 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8067": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3685, - 4334 - ], - "op": "ISZERO", - "path": "83" - }, - "8068": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3685, - 4334 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2011" - }, - "8071": { - "branch": 363, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3685, - 4334 - ], - "op": "JUMPI", - "path": "83" - }, - "8072": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3838, - 3856 - ], - "op": "DUP3", - "path": "83" - }, - "8073": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3838, - 3856 - ], - "op": "SLOAD", - "path": "83" - }, - "8074": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3802, - 3822 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "8076": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3802, - 3822 - ], - "op": "SWAP1", - "path": "83" - }, - "8077": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3857 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1F9E" - }, - "8080": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3857 - ], - "op": "SWAP1", - "path": "83" - }, - "8081": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3833 - ], - "op": "DUP10", - "path": "83" - }, - "8082": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3833 - ], - "op": "SWAP1", - "path": "83" - }, - "8083": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3838, - 3856 - ], - "op": "PUSH1", - "path": "83", - "value": "0xF" - }, - "8085": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3838, - 3856 - ], - "op": "SWAP1", - "path": "83" - }, - "8086": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3838, - 3856 - ], - "op": "DUP2", - "path": "83" - }, - "8087": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3838, - 3856 - ], - "op": "SIGNEXTEND", - "path": "83" - }, - "8088": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3857 - ], - "op": "SWAP1", - "path": "83" - }, - "8089": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3857 - ], - "op": "SIGNEXTEND", - "path": "83" - }, - "8090": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3837 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2705" - }, - "8093": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 3825, - 3857 - ], - "op": "JUMP", - "path": "83" - }, - "8094": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3825, - 3857 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8095": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3802, - 3857 - ], - "op": "SWAP1", - "path": "83" - }, - "8096": { - "op": "POP" - }, - "8097": { - "op": "PUSH1", - "value": "0x1" - }, - "8099": { - "op": "PUSH1", - "value": "0x1" - }, - "8101": { - "op": "PUSH1", - "value": "0x7F" - }, - "8103": { - "op": "SHL" - }, - "8104": { - "op": "SUB" - }, - "8105": { - "op": "NOT" - }, - "8106": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3912 - ], - "op": "DUP2", - "path": "83", - "statement": 160 - }, - "8107": { - "op": "SLT" - }, - "8108": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3912 - ], - "op": "DUP1", - "path": "83" - }, - "8109": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3912 - ], - "op": "ISZERO", - "path": "83" - }, - "8110": { - "branch": 364, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3912 - ], - "op": "SWAP1", - "path": "83" - }, - "8111": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3949 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1FBF" - }, - "8114": { - "branch": 364, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3949 - ], - "op": "JUMPI", - "path": "83" - }, - "8115": { - "op": "POP" - }, - "8116": { - "op": "PUSH1", - "value": "0x1" - }, - "8118": { - "op": "PUSH1", - "value": "0x1" - }, - "8120": { - "op": "PUSH1", - "value": "0x7F" - }, - "8122": { - "op": "SHL" - }, - "8123": { - "op": "SUB" - }, - "8124": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3916, - 3949 - ], - "op": "DUP2", - "path": "83" - }, - "8125": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3916, - 3949 - ], - "op": "SGT", - "path": "83" - }, - "8126": { - "branch": 365, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3916, - 3949 - ], - "op": "ISZERO", - "path": "83" - }, - "8127": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3879, - 3949 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8128": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3871, - 3950 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1FC8" - }, - "8131": { - "branch": 365, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3871, - 3950 - ], - "op": "JUMPI", - "path": "83" - }, - "8132": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3871, - 3950 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "8134": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3871, - 3950 - ], - "op": "DUP1", - "path": "83" - }, - "8135": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3871, - 3950 - ], - "op": "REVERT", - "path": "83" - }, - "8136": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3871, - 3950 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8137": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "DUP4", - "path": "83", - "statement": 161 - }, - "8138": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "SLOAD", - "path": "83" - }, - "8139": { - "op": "PUSH1", - "value": "0x1" - }, - "8141": { - "op": "PUSH1", - "value": "0x1" - }, - "8143": { - "op": "PUSH1", - "value": "0x80" - }, - "8145": { - "op": "SHL" - }, - "8146": { - "op": "SUB" - }, - "8147": { - "op": "NOT" - }, - "8148": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "AND", - "path": "83" - }, - "8149": { - "op": "PUSH1", - "value": "0x1" - }, - "8151": { - "op": "PUSH1", - "value": "0x1" - }, - "8153": { - "op": "PUSH1", - "value": "0x80" - }, - "8155": { - "op": "SHL" - }, - "8156": { - "op": "SUB" - }, - "8157": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "PUSH1", - "path": "83", - "value": "0xF" - }, - "8159": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "DUP4", - "path": "83" - }, - "8160": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "SWAP1", - "path": "83" - }, - "8161": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "SIGNEXTEND", - "path": "83" - }, - "8162": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "AND", - "path": "83" - }, - "8163": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "OR", - "path": "83" - }, - "8164": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "DUP5", - "path": "83" - }, - "8165": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "SSTORE", - "path": "83" - }, - "8166": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3997, - 4039 - ], - "op": "DUP1", - "path": "83" - }, - "8167": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4119, - 4225 - ], - "op": "PUSH2", - "path": "83", - "value": "0x1FF9" - }, - "8170": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4119, - 4225 - ], - "op": "JUMPI", - "path": "83" - }, - "8171": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4176, - 4210 - ], - "op": "PUSH2", - "path": "83", - "statement": 162, - "value": "0x1FF6" - }, - "8174": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4176, - 4188 - ], - "op": "DUP7", - "path": "83" - }, - "8175": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4196, - 4202 - ], - "op": "DUP5", - "path": "83" - }, - "8176": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4204, - 4209 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "8178": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4176, - 4195 - ], - "op": "PUSH2", - "path": "83", - "value": "0x271B" - }, - "8181": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 4176, - 4210 - ], - "op": "JUMP", - "path": "83" - }, - "8182": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4176, - 4210 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8183": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4161, - 4210 - ], - "op": "SWAP6", - "path": "83" - }, - "8184": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4161, - 4210 - ], - "op": "POP", - "path": "83" - }, - "8185": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4119, - 4225 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8186": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4239, - 4289 - ], - "op": "PUSH2", - "path": "83", - "statement": 163, - "value": "0x2004" - }, - "8189": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4255, - 4262 - ], - "op": "DUP13", - "path": "83" - }, - "8190": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4264, - 4274 - ], - "op": "DUP13", - "path": "83" - }, - "8191": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4276, - 4288 - ], - "op": "DUP9", - "path": "83" - }, - "8192": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4239, - 4254 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2766" - }, - "8195": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 4239, - 4289 - ], - "op": "JUMP", - "path": "83" - }, - "8196": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4239, - 4289 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8197": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4310, - 4323 - ], - "op": "SWAP6", - "path": "83", - "statement": 164 - }, - "8198": { - "op": "POP" - }, - "8199": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4303, - 4323 - ], - "op": "PUSH2", - "path": "83", - "value": "0x207E" - }, - "8202": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4303, - 4323 - ], - "op": "SWAP5", - "path": "83" - }, - "8203": { - "op": "POP" - }, - "8204": { - "op": "POP" - }, - "8205": { - "op": "POP" - }, - "8206": { - "op": "POP" - }, - "8207": { - "op": "POP" - }, - "8208": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4303, - 4323 - ], - "op": "JUMP", - "path": "83" - }, - "8209": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3685, - 4334 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8210": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4348, - 4361 - ], - "op": "DUP7", - "path": "83" - }, - "8211": { - "branch": 366, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4348, - 4361 - ], - "op": "ISZERO", - "path": "83" - }, - "8212": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4344, - 4766 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2075" - }, - "8215": { - "branch": 366, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4344, - 4766 - ], - "op": "JUMPI", - "path": "83" - }, - "8216": { - "op": "PUSH1", - "value": "0x1" - }, - "8218": { - "op": "PUSH1", - "value": "0x1" - }, - "8220": { - "op": "PUSH1", - "value": "0x7F" - }, - "8222": { - "op": "SHL" - }, - "8223": { - "op": "SUB" - }, - "8224": { - "op": "NOT" - }, - "8225": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4511 - ], - "op": "DUP8", - "path": "83", - "statement": 165 - }, - "8226": { - "op": "SLT" - }, - "8227": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4511 - ], - "op": "DUP1", - "path": "83" - }, - "8228": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4511 - ], - "op": "ISZERO", - "path": "83" - }, - "8229": { - "branch": 367, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4511 - ], - "op": "SWAP1", - "path": "83" - }, - "8230": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4543 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2036" - }, - "8233": { - "branch": 367, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4543 - ], - "op": "JUMPI", - "path": "83" - }, - "8234": { - "op": "POP" - }, - "8235": { - "op": "PUSH1", - "value": "0x1" - }, - "8237": { - "op": "PUSH1", - "value": "0x1" - }, - "8239": { - "op": "PUSH1", - "value": "0x7F" - }, - "8241": { - "op": "SHL" - }, - "8242": { - "op": "SUB" - }, - "8243": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4515, - 4543 - ], - "op": "DUP8", - "path": "83" - }, - "8244": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4515, - 4543 - ], - "op": "SGT", - "path": "83" - }, - "8245": { - "branch": 368, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4515, - 4543 - ], - "op": "ISZERO", - "path": "83" - }, - "8246": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4483, - 4543 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8247": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4475, - 4544 - ], - "op": "PUSH2", - "path": "83", - "value": "0x203F" - }, - "8250": { - "branch": 368, - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4475, - 4544 - ], - "op": "JUMPI", - "path": "83" - }, - "8251": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4475, - 4544 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "8253": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4475, - 4544 - ], - "op": "DUP1", - "path": "83" - }, - "8254": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4475, - 4544 - ], - "op": "REVERT", - "path": "83" - }, - "8255": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4475, - 4544 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8256": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "DUP3", - "path": "83", - "statement": 166 - }, - "8257": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "SLOAD", - "path": "83" - }, - "8258": { - "op": "PUSH1", - "value": "0x1" - }, - "8260": { - "op": "PUSH1", - "value": "0x1" - }, - "8262": { - "op": "PUSH1", - "value": "0x80" - }, - "8264": { - "op": "SHL" - }, - "8265": { - "op": "SUB" - }, - "8266": { - "op": "NOT" - }, - "8267": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "AND", - "path": "83" - }, - "8268": { - "op": "PUSH1", - "value": "0x1" - }, - "8270": { - "op": "PUSH1", - "value": "0x1" - }, - "8272": { - "op": "PUSH1", - "value": "0x80" - }, - "8274": { - "op": "SHL" - }, - "8275": { - "op": "SUB" - }, - "8276": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "PUSH1", - "path": "83", - "value": "0xF" - }, - "8278": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "DUP10", - "path": "83" - }, - "8279": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "SWAP1", - "path": "83" - }, - "8280": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "SIGNEXTEND", - "path": "83" - }, - "8281": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "AND", - "path": "83" - }, - "8282": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "OR", - "path": "83" - }, - "8283": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "DUP4", - "path": "83" - }, - "8284": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4591, - 4628 - ], - "op": "SSTORE", - "path": "83" - }, - "8285": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4658, - 4691 - ], - "op": "PUSH2", - "path": "83", - "statement": 167, - "value": "0x2068" - }, - "8288": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4658, - 4670 - ], - "op": "DUP6", - "path": "83" - }, - "8289": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4678, - 4684 - ], - "op": "DUP4", - "path": "83" - }, - "8290": { - "op": "PUSH1", - "value": "0x1" - }, - "8292": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4658, - 4677 - ], - "op": "PUSH2", - "path": "83", - "value": "0x271B" - }, - "8295": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 4658, - 4691 - ], - "op": "JUMP", - "path": "83" - }, - "8296": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4658, - 4691 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8297": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4643, - 4691 - ], - "op": "SWAP5", - "path": "83" - }, - "8298": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4643, - 4691 - ], - "op": "POP", - "path": "83" - }, - "8299": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4705, - 4755 - ], - "op": "PUSH2", - "path": "83", - "statement": 168, - "value": "0x2075" - }, - "8302": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4721, - 4728 - ], - "op": "DUP12", - "path": "83" - }, - "8303": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4730, - 4740 - ], - "op": "DUP12", - "path": "83" - }, - "8304": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4742, - 4754 - ], - "op": "DUP8", - "path": "83" - }, - "8305": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4705, - 4720 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2766" - }, - "8308": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "i", - "offset": [ - 4705, - 4755 - ], - "op": "JUMP", - "path": "83" - }, - "8309": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4705, - 4755 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8310": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4783, - 4791 - ], - "op": "DUP7", - "path": "83", - "statement": 169 - }, - "8311": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "SWAP6", - "path": "83" - }, - "8312": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "POP", - "path": "83" - }, - "8313": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "POP", - "path": "83" - }, - "8314": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "POP", - "path": "83" - }, - "8315": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "POP", - "path": "83" - }, - "8316": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "POP", - "path": "83" - }, - "8317": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 4776, - 4791 - ], - "op": "POP", - "path": "83" - }, - "8318": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "JUMPDEST", - "path": "83" - }, - "8319": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "SWAP6", - "path": "83" - }, - "8320": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "SWAP5", - "path": "83" - }, - "8321": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "POP", - "path": "83" - }, - "8322": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "POP", - "path": "83" - }, - "8323": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "POP", - "path": "83" - }, - "8324": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "POP", - "path": "83" - }, - "8325": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "offset": [ - 3016, - 4798 - ], - "op": "POP", - "path": "83" - }, - "8326": { - "fn": "BitmapAssetsHandler.addifCashAsset", - "jump": "o", - "offset": [ - 3016, - 4798 - ], - "op": "JUMP", - "path": "83" - }, - "8327": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 2971, - 5042 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8328": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3268, - 3295 - ], - "op": "DUP5", - "path": "84" - }, - "8329": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3268, - 3295 - ], - "op": "MLOAD", - "path": "84" - }, - "8330": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3230, - 3416 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2096" - }, - "8333": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3230, - 3416 - ], - "op": "SWAP1", - "path": "84" - }, - "8334": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3313, - 3323 - ], - "op": "DUP6", - "path": "84" - }, - "8335": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3341, - 3349 - ], - "op": "DUP6", - "path": "84" - }, - "8336": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3367, - 3376 - ], - "op": "DUP6", - "path": "84" - }, - "8337": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3394, - 3402 - ], - "op": "DUP6", - "path": "84" - }, - "8338": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3230, - 3250 - ], - "op": "PUSH2", - "path": "84", - "value": "0x27C0" - }, - "8341": { - "fn": "PortfolioHandler.addAsset", - "jump": "i", - "offset": [ - 3230, - 3416 - ], - "op": "JUMP", - "path": "84" - }, - "8342": { - "branch": 390, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3230, - 3416 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8343": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3171, - 3434 - ], - "op": "ISZERO", - "path": "84" - }, - "8344": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3171, - 3434 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20A0" - }, - "8347": { - "branch": 390, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3171, - 3434 - ], - "op": "JUMPI", - "path": "84" - }, - "8348": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3427, - 3434 - ], - "op": "PUSH2", - "path": "84", - "statement": 170, - "value": "0x1AEF" - }, - "8351": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3427, - 3434 - ], - "op": "JUMP", - "path": "84" - }, - "8352": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3171, - 3434 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8353": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3448, - 3480 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "8355": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3448, - 3480 - ], - "op": "DUP6", - "path": "84" - }, - "8356": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3448, - 3480 - ], - "op": "ADD", - "path": "84" - }, - "8357": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3448, - 3480 - ], - "op": "MLOAD", - "path": "84" - }, - "8358": { - "branch": 391, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3448, - 3484 - ], - "op": "ISZERO", - "path": "84" - }, - "8359": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3444, - 3740 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20CD" - }, - "8362": { - "branch": 391, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3444, - 3740 - ], - "op": "JUMPI", - "path": "84" - }, - "8363": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3500, - 3511 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8365": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3514, - 3697 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20BD" - }, - "8368": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3552, - 3566 - ], - "op": "DUP7", - "path": "84" - }, - "8369": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3552, - 3576 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8371": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3552, - 3576 - ], - "op": "ADD", - "path": "84" - }, - "8372": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3552, - 3576 - ], - "op": "MLOAD", - "path": "84" - }, - "8373": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3594, - 3604 - ], - "op": "DUP7", - "path": "84" - }, - "8374": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3622, - 3630 - ], - "op": "DUP7", - "path": "84" - }, - "8375": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3648, - 3657 - ], - "op": "DUP7", - "path": "84" - }, - "8376": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3675, - 3683 - ], - "op": "DUP7", - "path": "84" - }, - "8377": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3514, - 3534 - ], - "op": "PUSH2", - "path": "84", - "value": "0x27C0" - }, - "8380": { - "fn": "PortfolioHandler.addAsset", - "jump": "i", - "offset": [ - 3514, - 3697 - ], - "op": "JUMP", - "path": "84" - }, - "8381": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3514, - 3697 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8382": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3500, - 3697 - ], - "op": "SWAP1", - "path": "84" - }, - "8383": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3500, - 3697 - ], - "op": "POP", - "path": "84" - }, - "8384": { - "branch": 392, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3715, - 3721 - ], - "op": "DUP1", - "path": "84" - }, - "8385": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3711, - 3730 - ], - "op": "ISZERO", - "path": "84" - }, - "8386": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3711, - 3730 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20CB" - }, - "8389": { - "branch": 392, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3711, - 3730 - ], - "op": "JUMPI", - "path": "84" - }, - "8390": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3723, - 3730 - ], - "op": "POP", - "path": "84", - "statement": 171 - }, - "8391": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3723, - 3730 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1AEF" - }, - "8394": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3723, - 3730 - ], - "op": "JUMP", - "path": "84" - }, - "8395": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3711, - 3730 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8396": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3444, - 3740 - ], - "op": "POP", - "path": "84" - }, - "8397": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3444, - 3740 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8398": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3904, - 3944 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20D6" - }, - "8401": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3934, - 3943 - ], - "op": "DUP3", - "path": "84" - }, - "8402": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3904, - 3933 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28D9" - }, - "8405": { - "fn": "PortfolioHandler.addAsset", - "jump": "i", - "offset": [ - 3904, - 3944 - ], - "op": "JUMP", - "path": "84" - }, - "8406": { - "branch": 393, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3904, - 3944 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8407": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3900, - 4052 - ], - "op": "ISZERO", - "path": "84" - }, - "8408": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3900, - 4052 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20E9" - }, - "8411": { - "branch": 393, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3900, - 4052 - ], - "op": "JUMPI", - "path": "84" - }, - "8412": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3980, - 3981 - ], - "op": "PUSH1", - "path": "84", - "statement": 172, - "value": "0x0" - }, - "8414": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3968, - 3976 - ], - "op": "DUP2", - "path": "84" - }, - "8415": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3968, - 3981 - ], - "op": "SLT", - "path": "84" - }, - "8416": { - "branch": 394, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3968, - 3981 - ], - "op": "ISZERO", - "path": "84" - }, - "8417": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3960, - 3982 - ], - "op": "PUSH2", - "path": "84", - "value": "0x20E9" - }, - "8420": { - "branch": 394, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3960, - 3982 - ], - "op": "JUMPI", - "path": "84" - }, - "8421": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3960, - 3982 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8423": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3960, - 3982 - ], - "op": "DUP1", - "path": "84" - }, - "8424": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3960, - 3982 - ], - "op": "REVERT", - "path": "84" - }, - "8425": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 3960, - 3982 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8426": { - "op": "PUSH11", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "8438": { - "op": "NOT" - }, - "8439": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4096 - ], - "op": "DUP2", - "path": "84", - "statement": 173 - }, - "8440": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4096 - ], - "op": "SLT", - "path": "84" - }, - "8441": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4096 - ], - "op": "DUP1", - "path": "84" - }, - "8442": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4096 - ], - "op": "ISZERO", - "path": "84" - }, - "8443": { - "branch": 395, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4096 - ], - "op": "SWAP1", - "path": "84" - }, - "8444": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4127 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2110" - }, - "8447": { - "branch": 395, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4127 - ], - "op": "JUMPI", - "path": "84" - }, - "8448": { - "op": "POP" - }, - "8449": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4112, - 4127 - ], - "op": "PUSH11", - "path": "84", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "8461": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4100, - 4127 - ], - "op": "DUP2", - "path": "84" - }, - "8462": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4100, - 4127 - ], - "op": "SGT", - "path": "84" - }, - "8463": { - "branch": 396, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4100, - 4127 - ], - "op": "ISZERO", - "path": "84" - }, - "8464": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4069, - 4127 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8465": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4061, - 4128 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2119" - }, - "8468": { - "branch": 396, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4061, - 4128 - ], - "op": "JUMPI", - "path": "84" - }, - "8469": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4061, - 4128 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8471": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4061, - 4128 - ], - "op": "DUP1", - "path": "84" - }, - "8472": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4061, - 4128 - ], - "op": "REVERT", - "path": "84" - }, - "8473": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4061, - 4128 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8474": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4278, - 4292 - ], - "op": "DUP5", - "path": "84" - }, - "8475": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4278, - 4302 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8477": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4278, - 4302 - ], - "op": "ADD", - "path": "84" - }, - "8478": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4278, - 4302 - ], - "op": "MLOAD", - "path": "84" - }, - "8479": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4278, - 4309 - ], - "op": "MLOAD", - "path": "84" - }, - "8480": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4242, - 4256 - ], - "op": "DUP6", - "path": "84" - }, - "8481": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4242, - 4274 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "8483": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4242, - 4274 - ], - "op": "ADD", - "path": "84" - }, - "8484": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4242, - 4274 - ], - "op": "MLOAD", - "path": "84" - }, - "8485": { - "branch": 397, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4242, - 4309 - ], - "op": "EQ", - "path": "84" - }, - "8486": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4238, - 4409 - ], - "op": "ISZERO", - "path": "84" - }, - "8487": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4238, - 4409 - ], - "op": "PUSH2", - "path": "84", - "value": "0x213D" - }, - "8490": { - "branch": 397, - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4238, - 4409 - ], - "op": "JUMPI", - "path": "84" - }, - "8491": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4352, - 4398 - ], - "op": "PUSH2", - "path": "84", - "statement": 174, - "value": "0x2137" - }, - "8494": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4373, - 4387 - ], - "op": "DUP6", - "path": "84" - }, - "8495": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4373, - 4397 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8497": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4373, - 4397 - ], - "op": "ADD", - "path": "84" - }, - "8498": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4373, - 4397 - ], - "op": "MLOAD", - "path": "84" - }, - "8499": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4352, - 4372 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28EF" - }, - "8502": { - "fn": "PortfolioHandler.addAsset", - "jump": "i", - "offset": [ - 4352, - 4398 - ], - "op": "JUMP", - "path": "84" - }, - "8503": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4352, - 4398 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8504": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4325, - 4349 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8506": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4325, - 4349 - ], - "op": "DUP7", - "path": "84" - }, - "8507": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4325, - 4349 - ], - "op": "ADD", - "path": "84" - }, - "8508": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4325, - 4398 - ], - "op": "MSTORE", - "path": "84" - }, - "8509": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4238, - 4409 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8510": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4679, - 4709 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8512": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4726 - ], - "op": "DUP6", - "path": "84" - }, - "8513": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4736 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8515": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4736 - ], - "op": "ADD", - "path": "84" - }, - "8516": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4736 - ], - "op": "MLOAD", - "path": "84" - }, - "8517": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4737, - 4751 - ], - "op": "DUP7", - "path": "84" - }, - "8518": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4737, - 4769 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "8520": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4737, - 4769 - ], - "op": "ADD", - "path": "84" - }, - "8521": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4737, - 4769 - ], - "op": "MLOAD", - "path": "84" - }, - "8522": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "DUP2", - "path": "84" - }, - "8523": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "MLOAD", - "path": "84" - }, - "8524": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "DUP2", - "path": "84" - }, - "8525": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "LT", - "path": "84" - }, - "8526": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2153" - }, - "8529": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "JUMPI", - "path": "84" - }, - "8530": { - "dev": "Index out of range", - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "INVALID", - "path": "84" - }, - "8531": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8532": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8534": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "SWAP1", - "path": "84" - }, - "8535": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "DUP2", - "path": "84" - }, - "8536": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "MUL", - "path": "84" - }, - "8537": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "SWAP2", - "path": "84" - }, - "8538": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "SWAP1", - "path": "84" - }, - "8539": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "SWAP2", - "path": "84" - }, - "8540": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "ADD", - "path": "84" - }, - "8541": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "DUP2", - "path": "84" - }, - "8542": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "ADD", - "path": "84" - }, - "8543": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4712, - 4770 - ], - "op": "MLOAD", - "path": "84" - }, - "8544": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4780, - 4812 - ], - "op": "SWAP6", - "path": "84", - "statement": 175 - }, - "8545": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4780, - 4812 - ], - "op": "DUP7", - "path": "84" - }, - "8546": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4780, - 4812 - ], - "op": "MSTORE", - "path": "84" - }, - "8547": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4822, - 4839 - ], - "op": "DUP6", - "path": "84", - "statement": 176 - }, - "8548": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4822, - 4839 - ], - "op": "ADD", - "path": "84" - }, - "8549": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4822, - 4850 - ], - "op": "SWAP4", - "path": "84" - }, - "8550": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4822, - 4850 - ], - "op": "SWAP1", - "path": "84" - }, - "8551": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4822, - 4850 - ], - "op": "SWAP4", - "path": "84" - }, - "8552": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4822, - 4850 - ], - "op": "MSTORE", - "path": "84" - }, - "8553": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4878 - ], - "op": "PUSH1", - "path": "84", - "statement": 177, - "value": "0x40" - }, - "8555": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4878 - ], - "op": "DUP1", - "path": "84" - }, - "8556": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4878 - ], - "op": "DUP6", - "path": "84" - }, - "8557": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4878 - ], - "op": "ADD", - "path": "84" - }, - "8558": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4890 - ], - "op": "SWAP3", - "path": "84" - }, - "8559": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4890 - ], - "op": "SWAP1", - "path": "84" - }, - "8560": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4890 - ], - "op": "SWAP3", - "path": "84" - }, - "8561": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4860, - 4890 - ], - "op": "MSTORE", - "path": "84" - }, - "8562": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4900, - 4917 - ], - "op": "PUSH1", - "path": "84", - "statement": 178, - "value": "0x60" - }, - "8564": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4900, - 4917 - ], - "op": "DUP5", - "path": "84" - }, - "8565": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4900, - 4917 - ], - "op": "ADD", - "path": "84" - }, - "8566": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4900, - 4928 - ], - "op": "MSTORE", - "path": "84" - }, - "8567": { - "op": "PUSH1", - "value": "0x0" - }, - "8569": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4959 - ], - "op": "PUSH1", - "path": "84", - "statement": 179, - "value": "0xA0" - }, - "8571": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4959 - ], - "op": "SWAP1", - "path": "84" - }, - "8572": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4959 - ], - "op": "SWAP4", - "path": "84" - }, - "8573": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4959 - ], - "op": "ADD", - "path": "84" - }, - "8574": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4988 - ], - "op": "SWAP3", - "path": "84" - }, - "8575": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4988 - ], - "op": "SWAP1", - "path": "84" - }, - "8576": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4988 - ], - "op": "SWAP3", - "path": "84" - }, - "8577": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4938, - 4988 - ], - "op": "MSTORE", - "path": "84" - }, - "8578": { - "op": "POP" - }, - "8579": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4998, - 5030 - ], - "op": "ADD", - "path": "84", - "statement": 180 - }, - "8580": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4998, - 5035 - ], - "op": "DUP1", - "path": "84" - }, - "8581": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4998, - 5035 - ], - "op": "MLOAD", - "path": "84" - }, - "8582": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 5034, - 5035 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "8584": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4998, - 5035 - ], - "op": "ADD", - "path": "84" - }, - "8585": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4998, - 5035 - ], - "op": "SWAP1", - "path": "84" - }, - "8586": { - "fn": "PortfolioHandler.addAsset", - "offset": [ - 4998, - 5035 - ], - "op": "MSTORE", - "path": "84" - }, - "8587": { - "fn": "PortfolioHandler.addAsset", - "jump": "o", - "offset": [ - 2971, - 5042 - ], - "op": "JUMP", - "path": "84" - }, - "8588": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6460, - 10583 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8589": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8591": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8592": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8593": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8594": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8595": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8596": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8597": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6583, - 6587 - ], - "op": "DUP1", - "path": "84" - }, - "8598": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8599": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7219, - 7246 - ], - "op": "DUP10", - "path": "84" - }, - "8600": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7219, - 7246 - ], - "op": "MLOAD", - "path": "84" - }, - "8601": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7219, - 7253 - ], - "op": "MLOAD", - "path": "84" - }, - "8602": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7215, - 7253 - ], - "op": "DUP2", - "path": "84" - }, - "8603": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7215, - 7253 - ], - "op": "LT", - "path": "84" - }, - "8604": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "ISZERO", - "path": "84" - }, - "8605": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "PUSH2", - "path": "84", - "value": "0x221D" - }, - "8608": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMPI", - "path": "84" - }, - "8609": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7274, - 7301 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8611": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7318 - ], - "op": "DUP11", - "path": "84" - }, - "8612": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7331 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8614": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7331 - ], - "op": "ADD", - "path": "84" - }, - "8615": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7331 - ], - "op": "MLOAD", - "path": "84" - }, - "8616": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7332, - 7333 - ], - "op": "DUP3", - "path": "84" - }, - "8617": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "DUP2", - "path": "84" - }, - "8618": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "MLOAD", - "path": "84" - }, - "8619": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "DUP2", - "path": "84" - }, - "8620": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "LT", - "path": "84" - }, - "8621": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "PUSH2", - "path": "84", - "value": "0x21B2" - }, - "8624": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "JUMPI", - "path": "84" - }, - "8625": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "INVALID", - "path": "84" - }, - "8626": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8627": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8629": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "MUL", - "path": "84" - }, - "8630": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8632": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "ADD", - "path": "84" - }, - "8633": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "ADD", - "path": "84" - }, - "8634": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7304, - 7334 - ], - "op": "MLOAD", - "path": "84" - }, - "8635": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7274, - 7334 - ], - "op": "SWAP1", - "path": "84" - }, - "8636": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7274, - 7334 - ], - "op": "POP", - "path": "84" - }, - "8637": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7517, - 7549 - ], - "op": "PUSH1", - "path": "84", - "statement": 181, - "value": "0x3" - }, - "8639": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "DUP1", - "path": "84" - }, - "8640": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "DUP2", - "path": "84" - }, - "8641": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "GT", - "path": "84" - }, - "8642": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "ISZERO", - "path": "84" - }, - "8643": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "PUSH2", - "path": "84", - "value": "0x21C8" - }, - "8646": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPI", - "path": "84" - }, - "8647": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "INVALID", - "path": "84" - }, - "8648": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8649": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7500 - ], - "op": "DUP2", - "path": "84" - }, - "8650": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7513 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "8652": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7513 - ], - "op": "ADD", - "path": "84" - }, - "8653": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7513 - ], - "op": "MLOAD", - "path": "84" - }, - "8654": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "8656": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "DUP2", - "path": "84" - }, - "8657": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "GT", - "path": "84" - }, - "8658": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "ISZERO", - "path": "84" - }, - "8659": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "PUSH2", - "path": "84", - "value": "0x21D8" - }, - "8662": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPI", - "path": "84" - }, - "8663": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "INVALID", - "path": "84" - }, - "8664": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8665": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "EQ", - "path": "84" - }, - "8666": { - "branch": 398, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7495, - 7549 - ], - "op": "ISZERO", - "path": "84" - }, - "8667": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "PUSH2", - "path": "84", - "value": "0x21E3" - }, - "8670": { - "branch": 398, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "JUMPI", - "path": "84" - }, - "8671": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8673": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "DUP1", - "path": "84" - }, - "8674": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "REVERT", - "path": "84" - }, - "8675": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7487, - 7550 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8676": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7647, - 7671 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "8678": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7630 - ], - "op": "DUP2", - "path": "84" - }, - "8679": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7643 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "8681": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7643 - ], - "op": "ADD", - "path": "84" - }, - "8682": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7643 - ], - "op": "MLOAD", - "path": "84" - }, - "8683": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "8685": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "DUP2", - "path": "84" - }, - "8686": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "GT", - "path": "84" - }, - "8687": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "ISZERO", - "path": "84" - }, - "8688": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "PUSH2", - "path": "84", - "value": "0x21F5" - }, - "8691": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "JUMPI", - "path": "84" - }, - "8692": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "INVALID", - "path": "84" - }, - "8693": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8694": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "EQ", - "path": "84" - }, - "8695": { - "branch": 399, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7671 - ], - "op": "ISZERO", - "path": "84" - }, - "8696": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "DUP1", - "path": "84" - }, - "8697": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "ISZERO", - "path": "84" - }, - "8698": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2205" - }, - "8701": { - "branch": 399, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "JUMPI", - "path": "84" - }, - "8702": { - "op": "POP" - }, - "8703": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "8705": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "DUP2", - "path": "84" - }, - "8706": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "ADD", - "path": "84" - }, - "8707": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7689 - ], - "op": "MLOAD", - "path": "84" - }, - "8708": { - "branch": 400, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7675, - 7694 - ], - "op": "ISZERO", - "path": "84" - }, - "8709": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7625, - 7694 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8710": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7621, - 7759 - ], - "op": "ISZERO", - "path": "84" - }, - "8711": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7621, - 7759 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2214" - }, - "8714": { - "branch": 400, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7621, - 7759 - ], - "op": "JUMPI", - "path": "84" - }, - "8715": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7714, - 7744 - ], - "op": "PUSH2", - "path": "84", - "statement": 182, - "value": "0x2214" - }, - "8718": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7726, - 7740 - ], - "op": "DUP12", - "path": "84" - }, - "8719": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7742, - 7743 - ], - "op": "DUP4", - "path": "84" - }, - "8720": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7714, - 7725 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29A7" - }, - "8723": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 7714, - 7744 - ], - "op": "JUMP", - "path": "84" - }, - "8724": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7714, - 7744 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8725": { - "op": "POP" - }, - "8726": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7255, - 7258 - ], - "op": "PUSH1", - "path": "84", - "statement": 183, - "value": "0x1" - }, - "8728": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7255, - 7258 - ], - "op": "ADD", - "path": "84" - }, - "8729": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2196" - }, - "8732": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMP", - "path": "84" - }, - "8733": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8734": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7195, - 7769 - ], - "op": "POP", - "path": "84" - }, - "8735": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7868, - 7877 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8737": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8738": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7887, - 7914 - ], - "op": "DUP10", - "path": "84" - }, - "8739": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7887, - 7914 - ], - "op": "MLOAD", - "path": "84" - }, - "8740": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7887, - 7921 - ], - "op": "MLOAD", - "path": "84" - }, - "8741": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7883, - 7921 - ], - "op": "DUP2", - "path": "84" - }, - "8742": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7883, - 7921 - ], - "op": "LT", - "path": "84" - }, - "8743": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "ISZERO", - "path": "84" - }, - "8744": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "PUSH2", - "path": "84", - "value": "0x22C0" - }, - "8747": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMPI", - "path": "84" - }, - "8748": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7942, - 7969 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8750": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7986 - ], - "op": "DUP11", - "path": "84" - }, - "8751": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7999 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8753": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7999 - ], - "op": "ADD", - "path": "84" - }, - "8754": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 7999 - ], - "op": "MLOAD", - "path": "84" - }, - "8755": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8000, - 8001 - ], - "op": "DUP3", - "path": "84" - }, - "8756": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "DUP2", - "path": "84" - }, - "8757": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "MLOAD", - "path": "84" - }, - "8758": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "DUP2", - "path": "84" - }, - "8759": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "LT", - "path": "84" - }, - "8760": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "PUSH2", - "path": "84", - "value": "0x223D" - }, - "8763": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "JUMPI", - "path": "84" - }, - "8764": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "INVALID", - "path": "84" - }, - "8765": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8766": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8768": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "MUL", - "path": "84" - }, - "8769": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8771": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "ADD", - "path": "84" - }, - "8772": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "ADD", - "path": "84" - }, - "8773": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7972, - 8002 - ], - "op": "MLOAD", - "path": "84" - }, - "8774": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7942, - 8002 - ], - "op": "SWAP1", - "path": "84" - }, - "8775": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7942, - 8002 - ], - "op": "POP", - "path": "84" - }, - "8776": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8043, - 8067 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "8778": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "8780": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "DUP2", - "path": "84" - }, - "8781": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "GT", - "path": "84" - }, - "8782": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "ISZERO", - "path": "84" - }, - "8783": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2254" - }, - "8786": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPI", - "path": "84" - }, - "8787": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "INVALID", - "path": "84" - }, - "8788": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8789": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8026 - ], - "op": "DUP2", - "path": "84" - }, - "8790": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8039 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "8792": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8039 - ], - "op": "ADD", - "path": "84" - }, - "8793": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8039 - ], - "op": "MLOAD", - "path": "84" - }, - "8794": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "8796": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "DUP2", - "path": "84" - }, - "8797": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "GT", - "path": "84" - }, - "8798": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "ISZERO", - "path": "84" - }, - "8799": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2264" - }, - "8802": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPI", - "path": "84" - }, - "8803": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "INVALID", - "path": "84" - }, - "8804": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8805": { - "branch": 401, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8021, - 8067 - ], - "op": "EQ", - "path": "84" - }, - "8806": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "ISZERO", - "path": "84" - }, - "8807": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2278" - }, - "8810": { - "branch": 401, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "JUMPI", - "path": "84" - }, - "8811": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "8813": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "DUP2", - "path": "84" - }, - "8814": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "ADD", - "path": "84" - }, - "8815": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8154, - 8171 - ], - "op": "MLOAD", - "path": "84" - }, - "8816": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8132, - 8151 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8818": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8220, - 8245 - ], - "op": "SWAP1", - "path": "84" - }, - "8819": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8220, - 8245 - ], - "op": "SSTORE", - "path": "84" - }, - "8820": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8198, - 8263 - ], - "op": "PUSH2", - "path": "84", - "value": "0x22B7" - }, - "8823": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8198, - 8263 - ], - "op": "JUMP", - "path": "84" - }, - "8824": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8198, - 8263 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8825": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8327, - 8351 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "8827": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8310 - ], - "op": "DUP2", - "path": "84" - }, - "8828": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8323 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "8830": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8323 - ], - "op": "ADD", - "path": "84" - }, - "8831": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8323 - ], - "op": "MLOAD", - "path": "84" - }, - "8832": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "8834": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "DUP2", - "path": "84" - }, - "8835": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "GT", - "path": "84" - }, - "8836": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "ISZERO", - "path": "84" - }, - "8837": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "PUSH2", - "path": "84", - "value": "0x228A" - }, - "8840": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "JUMPI", - "path": "84" - }, - "8841": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "INVALID", - "path": "84" - }, - "8842": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8843": { - "branch": 402, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8305, - 8351 - ], - "op": "EQ", - "path": "84" - }, - "8844": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "ISZERO", - "path": "84" - }, - "8845": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "PUSH2", - "path": "84", - "value": "0x22A3" - }, - "8848": { - "branch": 402, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "JUMPI", - "path": "84" - }, - "8849": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "8851": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "DUP2", - "path": "84" - }, - "8852": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "ADD", - "path": "84" - }, - "8853": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "MLOAD", - "path": "84" - }, - "8854": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "DUP1", - "path": "84" - }, - "8855": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8611, - 8643 - ], - "op": "PUSH2", - "path": "84", - "statement": 184, - "value": "0x22A0" - }, - "8858": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8466 - ], - "op": "DUP4", - "path": "84" - }, - "8859": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8461, - 8478 - ], - "op": "DUP3", - "path": "84" - }, - "8860": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8611, - 8622 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AF6" - }, - "8863": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 8611, - 8643 - ], - "op": "JUMP", - "path": "84" - }, - "8864": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8611, - 8643 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8865": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "POP", - "path": "84" - }, - "8866": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "POP", - "path": "84" - }, - "8867": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8301, - 8662 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8868": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8875, - 9055 - ], - "op": "PUSH2", - "path": "84", - "statement": 185, - "value": "0x22AF" - }, - "8871": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8920, - 8925 - ], - "op": "DUP2", - "path": "84" - }, - "8872": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8947, - 8954 - ], - "op": "DUP7", - "path": "84" - }, - "8873": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8976, - 9001 - ], - "op": "DUP7", - "path": "84" - }, - "8874": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9023, - 9037 - ], - "op": "DUP7", - "path": "84" - }, - "8875": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8875, - 8898 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C27" - }, - "8878": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 8875, - 9055 - ], - "op": "JUMP", - "path": "84" - }, - "8879": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8875, - 9055 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8880": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP2", - "path": "84" - }, - "8881": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP7", - "path": "84" - }, - "8882": { - "op": "POP" - }, - "8883": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP5", - "path": "84" - }, - "8884": { - "op": "POP" - }, - "8885": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8820, - 9055 - ], - "op": "SWAP3", - "path": "84" - }, - "8886": { - "op": "POP" - }, - "8887": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 8017, - 9070 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8888": { - "op": "POP" - }, - "8889": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7923, - 7926 - ], - "op": "PUSH1", - "path": "84", - "statement": 186, - "value": "0x1" - }, - "8891": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7923, - 7926 - ], - "op": "ADD", - "path": "84" - }, - "8892": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2221" - }, - "8895": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMP", - "path": "84" - }, - "8896": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 7863, - 9080 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8897": { - "op": "POP" - }, - "8898": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "8900": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "DUP10", - "path": "84" - }, - "8901": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "ADD", - "path": "84" - }, - "8902": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9145, - 9177 - ], - "op": "MLOAD", - "path": "84" - }, - "8903": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9116, - 9142 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8905": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9280, - 9317 - ], - "op": "PUSH2", - "path": "84", - "value": "0x22D0" - }, - "8908": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9280, - 9315 - ], - "op": "PUSH2", - "path": "84", - "value": "0x1997" - }, - "8911": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 9280, - 9317 - ], - "op": "JUMP", - "path": "84" - }, - "8912": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9280, - 9317 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8913": { - "op": "PUSH1", - "value": "0x1" - }, - "8915": { - "op": "PUSH1", - "value": "0x1" - }, - "8917": { - "op": "PUSH1", - "value": "0xA0" - }, - "8919": { - "op": "SHL" - }, - "8920": { - "op": "SUB" - }, - "8921": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP12", - "path": "84" - }, - "8922": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "AND", - "path": "84" - }, - "8923": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9327, - 9391 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8925": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "SWAP1", - "path": "84" - }, - "8926": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP2", - "path": "84" - }, - "8927": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "MSTORE", - "path": "84" - }, - "8928": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8930": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP3", - "path": "84" - }, - "8931": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "SWAP1", - "path": "84" - }, - "8932": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "MSTORE", - "path": "84" - }, - "8933": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "8935": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "DUP2", - "path": "84" - }, - "8936": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9394, - 9408 - ], - "op": "KECCAK256", - "path": "84" - }, - "8937": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9187, - 9317 - ], - "op": "SWAP2", - "path": "84" - }, - "8938": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9187, - 9317 - ], - "op": "SWAP3", - "path": "84" - }, - "8939": { - "op": "POP" - }, - "8940": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8941": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9456 - ], - "op": "DUP13", - "path": "84" - }, - "8942": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9466 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8944": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9466 - ], - "op": "ADD", - "path": "84" - }, - "8945": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9466 - ], - "op": "MLOAD", - "path": "84" - }, - "8946": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9442, - 9473 - ], - "op": "MLOAD", - "path": "84" - }, - "8947": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9438, - 9439 - ], - "op": "DUP2", - "path": "84" - }, - "8948": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9438, - 9473 - ], - "op": "LT", - "path": "84" - }, - "8949": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "ISZERO", - "path": "84" - }, - "8950": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "PUSH2", - "path": "84", - "value": "0x239A" - }, - "8953": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPI", - "path": "84" - }, - "8954": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9494, - 9521 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8956": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9538 - ], - "op": "DUP14", - "path": "84" - }, - "8957": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9548 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8959": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9548 - ], - "op": "ADD", - "path": "84" - }, - "8960": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9548 - ], - "op": "MLOAD", - "path": "84" - }, - "8961": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9549, - 9550 - ], - "op": "DUP3", - "path": "84" - }, - "8962": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "DUP2", - "path": "84" - }, - "8963": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "MLOAD", - "path": "84" - }, - "8964": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "DUP2", - "path": "84" - }, - "8965": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "LT", - "path": "84" - }, - "8966": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "PUSH2", - "path": "84", - "value": "0x230B" - }, - "8969": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "JUMPI", - "path": "84" - }, - "8970": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "INVALID", - "path": "84" - }, - "8971": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "JUMPDEST", - "path": "84" - }, - "8972": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8974": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "MUL", - "path": "84" - }, - "8975": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "8977": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "ADD", - "path": "84" - }, - "8978": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "ADD", - "path": "84" - }, - "8979": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9524, - 9551 - ], - "op": "MLOAD", - "path": "84" - }, - "8980": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9494, - 9551 - ], - "op": "SWAP1", - "path": "84" - }, - "8981": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9494, - 9551 - ], - "op": "POP", - "path": "84" - }, - "8982": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9574 - ], - "op": "DUP1", - "path": "84" - }, - "8983": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9583 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "8985": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9583 - ], - "op": "ADD", - "path": "84" - }, - "8986": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9583 - ], - "op": "MLOAD", - "path": "84" - }, - "8987": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9587, - 9588 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "8989": { - "branch": 403, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9569, - 9588 - ], - "op": "EQ", - "path": "84" - }, - "8990": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "ISZERO", - "path": "84" - }, - "8991": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2328" - }, - "8994": { - "branch": 403, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "JUMPI", - "path": "84" - }, - "8995": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9590, - 9598 - ], - "op": "POP", - "path": "84", - "statement": 187 - }, - "8996": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9590, - 9598 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2392" - }, - "8999": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9590, - 9598 - ], - "op": "JUMP", - "path": "84" - }, - "9000": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9565, - 9598 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9001": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9659, - 9683 - ], - "op": "PUSH1", - "path": "84", - "statement": 188, - "value": "0x2" - }, - "9003": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9642 - ], - "op": "DUP2", - "path": "84" - }, - "9004": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9655 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9006": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9655 - ], - "op": "ADD", - "path": "84" - }, - "9007": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9655 - ], - "op": "MLOAD", - "path": "84" - }, - "9008": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9010": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "DUP2", - "path": "84" - }, - "9011": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "GT", - "path": "84" - }, - "9012": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "ISZERO", - "path": "84" - }, - "9013": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "PUSH2", - "path": "84", - "value": "0x233A" - }, - "9016": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "JUMPI", - "path": "84" - }, - "9017": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "INVALID", - "path": "84" - }, - "9018": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9019": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "EQ", - "path": "84" - }, - "9020": { - "branch": 404, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9683 - ], - "op": "ISZERO", - "path": "84" - }, - "9021": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "DUP1", - "path": "84" - }, - "9022": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "ISZERO", - "path": "84" - }, - "9023": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2358" - }, - "9026": { - "branch": 404, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "JUMPI", - "path": "84" - }, - "9027": { - "op": "POP" - }, - "9028": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9725, - 9757 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9030": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9708 - ], - "op": "DUP2", - "path": "84" - }, - "9031": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9721 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "9033": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9721 - ], - "op": "ADD", - "path": "84" - }, - "9034": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9721 - ], - "op": "MLOAD", - "path": "84" - }, - "9035": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "9037": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "DUP2", - "path": "84" - }, - "9038": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "GT", - "path": "84" - }, - "9039": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "ISZERO", - "path": "84" - }, - "9040": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2355" - }, - "9043": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "JUMPI", - "path": "84" - }, - "9044": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "INVALID", - "path": "84" - }, - "9045": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9046": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "EQ", - "path": "84" - }, - "9047": { - "branch": 405, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9703, - 9757 - ], - "op": "ISZERO", - "path": "84" - }, - "9048": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9637, - 9757 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9049": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2361" - }, - "9052": { - "branch": 405, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "JUMPI", - "path": "84" - }, - "9053": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9055": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "DUP1", - "path": "84" - }, - "9056": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "REVERT", - "path": "84" - }, - "9057": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9612, - 9771 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9058": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9878, - 10038 - ], - "op": "PUSH2", - "path": "84", - "statement": 189, - "value": "0x236D" - }, - "9061": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9919, - 9924 - ], - "op": "DUP2", - "path": "84" - }, - "9062": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9942, - 9949 - ], - "op": "DUP10", - "path": "84" - }, - "9063": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9967, - 9992 - ], - "op": "DUP10", - "path": "84" - }, - "9064": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10010, - 10024 - ], - "op": "DUP10", - "path": "84" - }, - "9065": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9878, - 9901 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C27" - }, - "9068": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 9878, - 10038 - ], - "op": "JUMP", - "path": "84" - }, - "9069": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9878, - 10038 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9070": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP2", - "path": "84" - }, - "9071": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP10", - "path": "84" - }, - "9072": { - "op": "POP" - }, - "9073": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP8", - "path": "84" - }, - "9074": { - "op": "POP" - }, - "9075": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9823, - 10038 - ], - "op": "SWAP6", - "path": "84" - }, - "9076": { - "op": "POP" - }, - "9077": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10053, - 10105 - ], - "op": "PUSH2", - "path": "84", - "statement": 190, - "value": "0x238A" - }, - "9080": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10065, - 10070 - ], - "op": "DUP2", - "path": "84" - }, - "9081": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10084 - ], - "op": "DUP5", - "path": "84" - }, - "9082": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10085, - 10103 - ], - "op": "DUP8", - "path": "84" - }, - "9083": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "9085": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "DUP2", - "path": "84" - }, - "9086": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "LT", - "path": "84" - }, - "9087": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2384" - }, - "9090": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "JUMPI", - "path": "84" - }, - "9091": { - "dev": "Index out of range", - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "INVALID", - "path": "84" - }, - "9092": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9093": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10072, - 10104 - ], - "op": "ADD", - "path": "84" - }, - "9094": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10053, - 10064 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AF6" - }, - "9097": { - "fn": "PortfolioHandler.storeAssets", - "jump": "i", - "offset": [ - 10053, - 10105 - ], - "op": "JUMP", - "path": "84" - }, - "9098": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10053, - 10105 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9099": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10141, - 10142 - ], - "op": "PUSH1", - "path": "84", - "statement": 191, - "value": "0x1" - }, - "9101": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "DUP6", - "path": "84" - }, - "9102": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "ADD", - "path": "84" - }, - "9103": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "SWAP5", - "path": "84" - }, - "9104": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10119, - 10142 - ], - "op": "POP", - "path": "84" - }, - "9105": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "POP", - "path": "84" - }, - "9106": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9107": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9475, - 9478 - ], - "op": "PUSH1", - "path": "84", - "statement": 192, - "value": "0x1" - }, - "9109": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9475, - 9478 - ], - "op": "ADD", - "path": "84" - }, - "9110": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "PUSH2", - "path": "84", - "value": "0x22EC" - }, - "9113": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMP", - "path": "84" - }, - "9114": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9115": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 9418, - 10153 - ], - "op": "POP", - "path": "84" - }, - "9116": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10333, - 10335 - ], - "op": "PUSH1", - "path": "84", - "statement": 193, - "value": "0x10" - }, - "9118": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10329 - ], - "op": "DUP4", - "path": "84" - }, - "9119": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10335 - ], - "op": "GT", - "path": "84" - }, - "9120": { - "branch": 406, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10335 - ], - "op": "ISZERO", - "path": "84" - }, - "9121": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "DUP1", - "path": "84" - }, - "9122": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "ISZERO", - "path": "84" - }, - "9123": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23B1" - }, - "9126": { - "branch": 406, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "JUMPI", - "path": "84" - }, - "9127": { - "op": "POP" - }, - "9128": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10357, - 10373 - ], - "op": "PUSH5", - "path": "84", - "value": "0xFFFFFFFFFF" - }, - "9134": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10339, - 10373 - ], - "op": "DUP5", - "path": "84" - }, - "9135": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10339, - 10373 - ], - "op": "GT", - "path": "84" - }, - "9136": { - "branch": 407, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10339, - 10373 - ], - "op": "ISZERO", - "path": "84" - }, - "9137": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10311, - 10373 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9138": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "PUSH2", - "path": "84", - "value": "0x23BA" - }, - "9141": { - "branch": 407, - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "JUMPI", - "path": "84" - }, - "9142": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "9144": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "DUP1", - "path": "84" - }, - "9145": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "REVERT", - "path": "84" - }, - "9146": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10303, - 10374 - ], - "op": "JUMPDEST", - "path": "84" - }, - "9147": { - "op": "POP" - }, - "9148": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10445, - 10452 - ], - "op": "SWAP4", - "path": "84", - "statement": 194 - }, - "9149": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10445, - 10452 - ], - "op": "SWAP11", - "path": "84" - }, - "9150": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10466, - 10491 - ], - "op": "SWAP3", - "path": "84" - }, - "9151": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10466, - 10491 - ], - "op": "SWAP10", - "path": "84" - }, - "9152": { - "op": "POP" - }, - "9153": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10466, - 10491 - ], - "op": "SWAP8", - "path": "84" - }, - "9154": { - "op": "POP" - }, - "9155": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 10511, - 10529 - ], - "op": "SWAP6", - "path": "84" - }, - "9156": { - "op": "POP" - }, - "9157": { - "fn": "PortfolioHandler.storeAssets", - "offset": [ - 6460, - 10583 - ], - "op": "SWAP4", - "path": "84" - }, - "9158": { - "op": "POP" - }, - "9159": { - "op": "POP" - }, - "9160": { - "op": "POP" - }, - "9161": { - "op": "POP" - }, - "9162": { - "fn": "PortfolioHandler.storeAssets", - "jump": "o", - "offset": [ - 6460, - 10583 - ], - "op": "JUMP", - "path": "84" - }, - "9163": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 8919, - 9670 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9164": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9004, - 9011 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9166": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9004, - 9011 - ], - "op": "DUP1", - "path": "66" - }, - "9167": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9150, - 9174 - ], - "op": "PUSH32", - "path": "66", - "value": "0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000" - }, - "9200": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9131, - 9174 - ], - "op": "DUP4", - "path": "66" - }, - "9201": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9131, - 9174 - ], - "op": "AND", - "path": "66" - }, - "9202": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9004, - 9011 - ], - "op": "DUP2", - "path": "66" - }, - "9203": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9204": { - "op": "PUSH1", - "value": "0x1" - }, - "9206": { - "op": "PUSH1", - "value": "0x1" - }, - "9208": { - "op": "PUSH1", - "value": "0x70" - }, - "9210": { - "op": "SHL" - }, - "9211": { - "op": "SUB" - }, - "9212": { - "op": "NOT" - }, - "9213": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9309, - 9323 - ], - "op": "DUP3", - "path": "66" - }, - "9214": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9309, - 9323 - ], - "op": "AND", - "path": "66" - }, - "9215": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9309, - 9323 - ], - "op": "ISZERO", - "path": "66" - }, - "9216": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x243D" - }, - "9219": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMPI", - "path": "66" - }, - "9220": { - "op": "PUSH1", - "value": "0x1" - }, - "9222": { - "op": "PUSH1", - "value": "0xFE" - }, - "9224": { - "op": "SHL" - }, - "9225": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9388 - ], - "op": "DUP3", - "path": "66" - }, - "9226": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9388 - ], - "op": "DUP2", - "path": "66" - }, - "9227": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9388 - ], - "op": "AND", - "path": "66" - }, - "9228": { - "branch": 330, - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9343, - 9420 - ], - "op": "EQ", - "path": "66" - }, - "9229": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "ISZERO", - "path": "66" - }, - "9230": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2427" - }, - "9233": { - "branch": 330, - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "JUMPI", - "path": "66" - }, - "9234": { - "op": "PUSH1", - "value": "0x1" - }, - "9236": { - "op": "PUSH1", - "value": "0x1" - }, - "9238": { - "op": "PUSH1", - "value": "0xF0" - }, - "9240": { - "op": "SHL" - }, - "9241": { - "op": "SUB" - }, - "9242": { - "op": "NOT" - }, - "9243": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9539 - ], - "op": "DUP3", - "path": "66", - "statement": 195 - }, - "9244": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9539 - ], - "op": "AND", - "path": "66" - }, - "9245": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9549 - ], - "op": "DUP2", - "path": "66" - }, - "9246": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9516, - 9549 - ], - "op": "SHR", - "path": "66" - }, - "9247": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP3", - "path": "66" - }, - "9248": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP1", - "path": "66" - }, - "9249": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP3", - "path": "66" - }, - "9250": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "OR", - "path": "66" - }, - "9251": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9506, - 9550 - ], - "op": "SWAP2", - "path": "66" - }, - "9252": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9578, - 9580 - ], - "op": "PUSH1", - "path": "66", - "statement": 196, - "value": "0x10" - }, - "9254": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9568, - 9580 - ], - "op": "ADD", - "path": "66" - }, - "9255": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9339, - 9595 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9256": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9627, - 9629 - ], - "op": "PUSH1", - "path": "66", - "statement": 197, - "value": "0x10" - }, - "9258": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9623 - ], - "op": "DUP3", - "path": "66" - }, - "9259": { - "op": "PUSH1", - "value": "0x1" - }, - "9261": { - "op": "PUSH1", - "value": "0x1" - }, - "9263": { - "op": "PUSH1", - "value": "0x70" - }, - "9265": { - "op": "SHL" - }, - "9266": { - "op": "SUB" - }, - "9267": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "NOT", - "path": "66" - }, - "9268": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "AND", - "path": "66" - }, - "9269": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "SWAP1", - "path": "66" - }, - "9270": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9617, - 9629 - ], - "op": "SHL", - "path": "66" - }, - "9271": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9608, - 9629 - ], - "op": "SWAP2", - "path": "66" - }, - "9272": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9608, - 9629 - ], - "op": "POP", - "path": "66" - }, - "9273": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "PUSH2", - "path": "66", - "value": "0x23F3" - }, - "9276": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMP", - "path": "66" - }, - "9277": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9302, - 9640 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9278": { - "op": "POP" - }, - "9279": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9657, - 9663 - ], - "op": "SWAP1", - "path": "66", - "statement": 198 - }, - "9280": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 9657, - 9663 - ], - "op": "SWAP4", - "path": "66" - }, - "9281": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "offset": [ - 8919, - 9670 - ], - "op": "SWAP3", - "path": "66" - }, - "9282": { - "op": "POP" - }, - "9283": { - "op": "POP" - }, - "9284": { - "op": "POP" - }, - "9285": { - "fn": "AccountContextHandler._clearPortfolioActiveFlags", - "jump": "o", - "offset": [ - 8919, - 9670 - ], - "op": "JUMP", - "path": "66" - }, - "9286": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9287": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5435, - 5445 - ], - "op": "DUP3", - "path": "66", - "statement": 199 - }, - "9288": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5432 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9290": { - "branch": 331, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5445 - ], - "op": "LT", - "path": "66" - }, - "9291": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "DUP1", - "path": "66" - }, - "9292": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "ISZERO", - "path": "66" - }, - "9293": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2458" - }, - "9296": { - "branch": 331, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "JUMPI", - "path": "66" - }, - "9297": { - "op": "POP" - }, - "9298": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "9301": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5449, - 5487 - ], - "op": "DUP4", - "path": "66" - }, - "9302": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5449, - 5487 - ], - "op": "GT", - "path": "66" - }, - "9303": { - "branch": 332, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5449, - 5487 - ], - "op": "ISZERO", - "path": "66" - }, - "9304": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5431, - 5487 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9305": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2461" - }, - "9308": { - "branch": 332, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "JUMPI", - "path": "66" - }, - "9309": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9311": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "DUP1", - "path": "66" - }, - "9312": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "REVERT", - "path": "66" - }, - "9313": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5423, - 5488 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9314": { - "branch": 333, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5715 - ], - "op": "DUP2", - "path": "66" - }, - "9315": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "DUP1", - "path": "66" - }, - "9316": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "ISZERO", - "path": "66" - }, - "9317": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2475" - }, - "9320": { - "branch": 333, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "JUMPI", - "path": "66" - }, - "9321": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "POP", - "path": "66" - }, - "9322": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5754, - 5764 - ], - "op": "DUP3", - "path": "66" - }, - "9323": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5733 - ], - "op": "DUP5", - "path": "66" - }, - "9324": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5750 - ], - "op": "PUSH1", - "path": "66", - "value": "0x60" - }, - "9326": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5750 - ], - "op": "ADD", - "path": "66" - }, - "9327": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5750 - ], - "op": "MLOAD", - "path": "66" - }, - "9328": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5764 - ], - "op": "PUSH2", - "path": "66", - "value": "0xFFFF" - }, - "9331": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5764 - ], - "op": "AND", - "path": "66" - }, - "9332": { - "branch": 334, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5719, - 5764 - ], - "op": "EQ", - "path": "66" - }, - "9333": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5707, - 5764 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9334": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "ISZERO", - "path": "66" - }, - "9335": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "PUSH2", - "path": "66", - "value": "0x247F" - }, - "9338": { - "branch": 334, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "JUMPI", - "path": "66" - }, - "9339": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5766, - 5773 - ], - "op": "PUSH2", - "path": "66", - "statement": 200, - "value": "0x1632" - }, - "9342": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5766, - 5773 - ], - "op": "JUMP", - "path": "66" - }, - "9343": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5703, - 5773 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9344": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "9346": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "DUP5", - "path": "66" - }, - "9347": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "ADD", - "path": "66" - }, - "9348": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5824, - 5855 - ], - "op": "MLOAD", - "path": "66" - }, - "9349": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5783, - 5797 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9351": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5783, - 5797 - ], - "op": "SWAP1", - "path": "66" - }, - "9352": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5783, - 5797 - ], - "op": "DUP2", - "path": "66" - }, - "9353": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9354": { - "op": "PUSH1", - "value": "0x1" - }, - "9356": { - "op": "PUSH1", - "value": "0x1" - }, - "9358": { - "op": "PUSH1", - "value": "0x70" - }, - "9360": { - "op": "SHL" - }, - "9361": { - "op": "SUB" - }, - "9362": { - "op": "NOT" - }, - "9363": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6691, - 6705 - ], - "op": "DUP3", - "path": "66" - }, - "9364": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6691, - 6705 - ], - "op": "AND", - "path": "66" - }, - "9365": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6691, - 6705 - ], - "op": "ISZERO", - "path": "66" - }, - "9366": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "PUSH2", - "path": "66", - "value": "0x25FA" - }, - "9369": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMPI", - "path": "66" - }, - "9370": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6767, - 6789 - ], - "op": "PUSH1", - "path": "66", - "value": "0xF0" - }, - "9372": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "DUP3", - "path": "66" - }, - "9373": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "SWAP1", - "path": "66" - }, - "9374": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "SHR", - "path": "66" - }, - "9375": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "9378": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6743, - 6790 - ], - "op": "AND", - "path": "66" - }, - "9379": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6894 - ], - "op": "DUP7", - "path": "66" - }, - "9380": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6894 - ], - "op": "DUP2", - "path": "66" - }, - "9381": { - "branch": 335, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6894 - ], - "op": "EQ", - "path": "66" - }, - "9382": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "DUP1", - "path": "66" - }, - "9383": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "ISZERO", - "path": "66" - }, - "9384": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "PUSH2", - "path": "66", - "value": "0x24AE" - }, - "9387": { - "branch": 335, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "JUMPI", - "path": "66" - }, - "9388": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "POP", - "path": "66" - }, - "9389": { - "branch": 336, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6898, - 6906 - ], - "op": "DUP6", - "path": "66" - }, - "9390": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6877, - 6906 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9391": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "ISZERO", - "path": "66" - }, - "9392": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "PUSH2", - "path": "66", - "value": "0x24E6" - }, - "9395": { - "branch": 336, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "JUMPI", - "path": "66" - }, - "9396": { - "op": "POP" - }, - "9397": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "PUSH1", - "path": "66", - "statement": 201, - "value": "0x80" - }, - "9399": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "DUP8", - "path": "66" - }, - "9400": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "ADD", - "path": "66" - }, - "9401": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "DUP1", - "path": "66" - }, - "9402": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7050 - ], - "op": "MLOAD", - "path": "66" - }, - "9403": { - "op": "PUSH1", - "value": "0x1" - }, - "9405": { - "op": "PUSH1", - "value": "0x1" - }, - "9407": { - "op": "PUSH1", - "value": "0xF0" - }, - "9409": { - "op": "SHL" - }, - "9410": { - "op": "SUB" - }, - "9411": { - "op": "NOT" - }, - "9412": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7088 - ], - "op": "DUP7", - "path": "66" - }, - "9413": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7088 - ], - "op": "AND", - "path": "66" - }, - "9414": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7102, - 7104 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9416": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7093, - 7104 - ], - "op": "SWAP1", - "path": "66" - }, - "9417": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7093, - 7104 - ], - "op": "SWAP4", - "path": "66" - }, - "9418": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7093, - 7104 - ], - "op": "MUL", - "path": "66" - }, - "9419": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SWAP3", - "path": "66" - }, - "9420": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SWAP1", - "path": "66" - }, - "9421": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SWAP3", - "path": "66" - }, - "9422": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7074, - 7105 - ], - "op": "SHR", - "path": "66" - }, - "9423": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "SWAP2", - "path": "66" - }, - "9424": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "SWAP1", - "path": "66" - }, - "9425": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "SWAP2", - "path": "66" - }, - "9426": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7019, - 7106 - ], - "op": "OR", - "path": "66" - }, - "9427": { - "op": "PUSH1", - "value": "0x1" - }, - "9429": { - "op": "PUSH1", - "value": "0x1" - }, - "9431": { - "op": "PUSH1", - "value": "0x70" - }, - "9433": { - "op": "SHL" - }, - "9434": { - "op": "SUB" - }, - "9435": { - "op": "NOT" - }, - "9436": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6965, - 7106 - ], - "op": "AND", - "path": "66" - }, - "9437": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6965, - 7106 - ], - "op": "SWAP1", - "path": "66" - }, - "9438": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6965, - 7106 - ], - "op": "MSTORE", - "path": "66" - }, - "9439": { - "op": "POP" - }, - "9440": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7124, - 7131 - ], - "op": "PUSH2", - "path": "66", - "statement": 202, - "value": "0x1632" - }, - "9443": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7124, - 7131 - ], - "op": "SWAP1", - "path": "66" - }, - "9444": { - "op": "POP" - }, - "9445": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7124, - 7131 - ], - "op": "JUMP", - "path": "66" - }, - "9446": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6873, - 7145 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9447": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7239, - 7249 - ], - "op": "DUP7", - "path": "66" - }, - "9448": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7235 - ], - "op": "DUP2", - "path": "66" - }, - "9449": { - "branch": 337, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7249 - ], - "op": "EQ", - "path": "66" - }, - "9450": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "DUP1", - "path": "66" - }, - "9451": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "ISZERO", - "path": "66" - }, - "9452": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "PUSH2", - "path": "66", - "value": "0x24F3" - }, - "9455": { - "branch": 337, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "JUMPI", - "path": "66" - }, - "9456": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "POP", - "path": "66" - }, - "9457": { - "branch": 338, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7254, - 7262 - ], - "op": "DUP6", - "path": "66" - }, - "9458": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7253, - 7262 - ], - "op": "ISZERO", - "path": "66" - }, - "9459": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7232, - 7262 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9460": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "ISZERO", - "path": "66" - }, - "9461": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2548" - }, - "9464": { - "branch": 338, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "JUMPI", - "path": "66" - }, - "9465": { - "op": "PUSH1", - "value": "0x1" - }, - "9467": { - "op": "PUSH1", - "value": "0x1" - }, - "9469": { - "op": "PUSH1", - "value": "0xF0" - }, - "9471": { - "op": "SHL" - }, - "9472": { - "op": "SUB" - }, - "9473": { - "op": "NOT" - }, - "9474": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7369, - 7383 - ], - "op": "DUP6", - "path": "66", - "statement": 203 - }, - "9475": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7369, - 7383 - ], - "op": "AND", - "path": "66" - }, - "9476": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7368, - 7383 - ], - "op": "NOT", - "path": "66" - }, - "9477": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP3", - "path": "66" - }, - "9478": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP1", - "path": "66" - }, - "9479": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP3", - "path": "66" - }, - "9480": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "AND", - "path": "66" - }, - "9481": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7359, - 7383 - ], - "op": "SWAP2", - "path": "66" - }, - "9482": { - "op": "PUSH1", - "value": "0x3" - }, - "9484": { - "op": "PUSH1", - "value": "0xFE" - }, - "9486": { - "op": "SHL" - }, - "9487": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7405, - 7455 - ], - "op": "DUP4", - "path": "66" - }, - "9488": { - "branch": 339, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7405, - 7455 - ], - "op": "AND", - "path": "66" - }, - "9489": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7401, - 7478 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2526" - }, - "9492": { - "branch": 339, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7401, - 7478 - ], - "op": "JUMPI", - "path": "66" - }, - "9493": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7476, - 7478 - ], - "op": "PUSH1", - "path": "66", - "statement": 204, - "value": "0x10" - }, - "9495": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7472 - ], - "op": "DUP4", - "path": "66" - }, - "9496": { - "op": "PUSH1", - "value": "0x1" - }, - "9498": { - "op": "PUSH1", - "value": "0x1" - }, - "9500": { - "op": "PUSH1", - "value": "0x70" - }, - "9502": { - "op": "SHL" - }, - "9503": { - "op": "SUB" - }, - "9504": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "NOT", - "path": "66" - }, - "9505": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "AND", - "path": "66" - }, - "9506": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "SWAP1", - "path": "66" - }, - "9507": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7466, - 7478 - ], - "op": "SHL", - "path": "66" - }, - "9508": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7457, - 7478 - ], - "op": "SWAP3", - "path": "66" - }, - "9509": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7457, - 7478 - ], - "op": "POP", - "path": "66" - }, - "9510": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7401, - 7478 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9511": { - "op": "POP" - }, - "9512": { - "op": "PUSH1", - "value": "0x1" - }, - "9514": { - "op": "PUSH1", - "value": "0x1" - }, - "9516": { - "op": "PUSH1", - "value": "0x70" - }, - "9518": { - "op": "SHL" - }, - "9519": { - "op": "SUB" - }, - "9520": { - "op": "NOT" - }, - "9521": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "SWAP2", - "path": "66", - "statement": 205 - }, - "9522": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "DUP3", - "path": "66" - }, - "9523": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "AND", - "path": "66" - }, - "9524": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7560, - 7562 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9526": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7551, - 7562 - ], - "op": "SWAP1", - "path": "66" - }, - "9527": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7551, - 7562 - ], - "op": "SWAP2", - "path": "66" - }, - "9528": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7551, - 7562 - ], - "op": "MUL", - "path": "66" - }, - "9529": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7540, - 7563 - ], - "op": "SHR", - "path": "66" - }, - "9530": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "SWAP2", - "path": "66" - }, - "9531": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "SWAP1", - "path": "66" - }, - "9532": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "SWAP2", - "path": "66" - }, - "9533": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7530, - 7564 - ], - "op": "OR", - "path": "66" - }, - "9534": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7564 - ], - "op": "AND", - "path": "66" - }, - "9535": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7527 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "9537": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7527 - ], - "op": "DUP6", - "path": "66" - }, - "9538": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7527 - ], - "op": "ADD", - "path": "66" - }, - "9539": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7496, - 7564 - ], - "op": "MSTORE", - "path": "66" - }, - "9540": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7582, - 7589 - ], - "op": "PUSH2", - "path": "66", - "statement": 206, - "value": "0x1632" - }, - "9543": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7582, - 7589 - ], - "op": "JUMP", - "path": "66" - }, - "9544": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7228, - 7603 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9545": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7695, - 7705 - ], - "op": "DUP7", - "path": "66" - }, - "9546": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7692 - ], - "op": "DUP2", - "path": "66" - }, - "9547": { - "branch": 340, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7705 - ], - "op": "GT", - "path": "66" - }, - "9548": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "DUP1", - "path": "66" - }, - "9549": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "ISZERO", - "path": "66" - }, - "9550": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2554" - }, - "9553": { - "branch": 340, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "JUMPI", - "path": "66" - }, - "9554": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "POP", - "path": "66" - }, - "9555": { - "branch": 341, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7709, - 7717 - ], - "op": "DUP6", - "path": "66" - }, - "9556": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7689, - 7717 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9557": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "ISZERO", - "path": "66" - }, - "9558": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "PUSH2", - "path": "66", - "value": "0x25AE" - }, - "9561": { - "branch": 341, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "JUMPI", - "path": "66" - }, - "9562": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8046, - 8049 - ], - "op": "PUSH1", - "path": "66", - "statement": 207, - "value": "0x80" - }, - "9564": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "DUP9", - "path": "66" - }, - "9565": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "DUP2", - "path": "66" - }, - "9566": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "ADD", - "path": "66" - }, - "9567": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8042 - ], - "op": "MLOAD", - "path": "66" - }, - "9568": { - "op": "PUSH1", - "value": "0x1" - }, - "9570": { - "op": "PUSH1", - "value": "0x1" - }, - "9572": { - "op": "PUSH1", - "value": "0xF0" - }, - "9574": { - "op": "SHL" - }, - "9575": { - "op": "SUB" - }, - "9576": { - "op": "NOT" - }, - "9577": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "PUSH1", - "path": "66", - "statement": 208, - "value": "0xF0" - }, - "9579": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "DUP11", - "path": "66" - }, - "9580": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "SWAP1", - "path": "66" - }, - "9581": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7790 - ], - "op": "SHL", - "path": "66" - }, - "9582": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7798 - ], - "op": "DUP9", - "path": "66" - }, - "9583": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7764, - 7798 - ], - "op": "OR", - "path": "66" - }, - "9584": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7756, - 7799 - ], - "op": "DUP2", - "path": "66" - }, - "9585": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7756, - 7799 - ], - "op": "AND", - "path": "66" - }, - "9586": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7813, - 7815 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9588": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7804, - 7815 - ], - "op": "DUP7", - "path": "66" - }, - "9589": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7804, - 7815 - ], - "op": "MUL", - "path": "66" - }, - "9590": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7756, - 7816 - ], - "op": "SHR", - "path": "66" - }, - "9591": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP7", - "path": "66" - }, - "9592": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP1", - "path": "66" - }, - "9593": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP7", - "path": "66" - }, - "9594": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "OR", - "path": "66" - }, - "9595": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7746, - 7817 - ], - "op": "SWAP6", - "path": "66" - }, - "9596": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8049 - ], - "op": "SWAP2", - "path": "66" - }, - "9597": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8049 - ], - "op": "SHL", - "path": "66" - }, - "9598": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8011, - 8049 - ], - "op": "AND", - "path": "66" - }, - "9599": { - "branch": 342, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8010, - 8058 - ], - "op": "ISZERO", - "path": "66" - }, - "9600": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2588" - }, - "9603": { - "branch": 342, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "JUMPI", - "path": "66" - }, - "9604": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9606": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "DUP1", - "path": "66" - }, - "9607": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "REVERT", - "path": "66" - }, - "9608": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8002, - 8059 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9609": { - "op": "POP" - }, - "9610": { - "op": "PUSH1", - "value": "0x1" - }, - "9612": { - "op": "PUSH1", - "value": "0x1" - }, - "9614": { - "op": "PUSH1", - "value": "0x70" - }, - "9616": { - "op": "SHL" - }, - "9617": { - "op": "SUB" - }, - "9618": { - "op": "NOT" - }, - "9619": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "SWAP2", - "path": "66", - "statement": 209 - }, - "9620": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "DUP3", - "path": "66" - }, - "9621": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "AND", - "path": "66" - }, - "9622": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8212, - 8213 - ], - "op": "PUSH1", - "path": "66", - "value": "0x1" - }, - "9624": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "SWAP2", - "path": "66" - }, - "9625": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "SWAP1", - "path": "66" - }, - "9626": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "SWAP2", - "path": "66" - }, - "9627": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8203, - 8213 - ], - "op": "ADD", - "path": "66" - }, - "9628": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8217, - 8219 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9630": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8202, - 8219 - ], - "op": "MUL", - "path": "66" - }, - "9631": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8191, - 8220 - ], - "op": "SHR", - "path": "66" - }, - "9632": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "SWAP2", - "path": "66" - }, - "9633": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "SWAP1", - "path": "66" - }, - "9634": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "SWAP2", - "path": "66" - }, - "9635": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8181, - 8221 - ], - "op": "OR", - "path": "66" - }, - "9636": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8221 - ], - "op": "AND", - "path": "66" - }, - "9637": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8178 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "9639": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8178 - ], - "op": "DUP6", - "path": "66" - }, - "9640": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8178 - ], - "op": "ADD", - "path": "66" - }, - "9641": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8147, - 8221 - ], - "op": "MSTORE", - "path": "66" - }, - "9642": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8239, - 8246 - ], - "op": "PUSH2", - "path": "66", - "statement": 210, - "value": "0x1632" - }, - "9645": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8239, - 8246 - ], - "op": "JUMP", - "path": "66" - }, - "9646": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 7685, - 8260 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9647": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8364, - 8374 - ], - "op": "DUP7", - "path": "66" - }, - "9648": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8361 - ], - "op": "DUP2", - "path": "66" - }, - "9649": { - "branch": 343, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8374 - ], - "op": "GT", - "path": "66" - }, - "9650": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "DUP1", - "path": "66" - }, - "9651": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "ISZERO", - "path": "66" - }, - "9652": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "PUSH2", - "path": "66", - "value": "0x25BB" - }, - "9655": { - "branch": 343, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "JUMPI", - "path": "66" - }, - "9656": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "POP", - "path": "66" - }, - "9657": { - "branch": 344, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8379, - 8387 - ], - "op": "DUP6", - "path": "66" - }, - "9658": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8378, - 8387 - ], - "op": "ISZERO", - "path": "66" - }, - "9659": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8358, - 8387 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9660": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "ISZERO", - "path": "66" - }, - "9661": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "PUSH2", - "path": "66", - "value": "0x25C9" - }, - "9664": { - "branch": 344, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "JUMPI", - "path": "66" - }, - "9665": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66", - "statement": 211 - }, - "9666": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66" - }, - "9667": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66" - }, - "9668": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "POP", - "path": "66" - }, - "9669": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1632" - }, - "9672": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8389, - 8396 - ], - "op": "JUMP", - "path": "66" - }, - "9673": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8354, - 8396 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9674": { - "op": "POP" - }, - "9675": { - "op": "PUSH1", - "value": "0x1" - }, - "9677": { - "op": "PUSH1", - "value": "0x1" - }, - "9679": { - "op": "PUSH1", - "value": "0xF0" - }, - "9681": { - "op": "SHL" - }, - "9682": { - "op": "SUB" - }, - "9683": { - "op": "NOT" - }, - "9684": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8452 - ], - "op": "DUP3", - "path": "66", - "statement": 212 - }, - "9685": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8452 - ], - "op": "AND", - "path": "66" - }, - "9686": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8466, - 8468 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9688": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8457, - 8468 - ], - "op": "DUP3", - "path": "66" - }, - "9689": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8457, - 8468 - ], - "op": "DUP2", - "path": "66" - }, - "9690": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8457, - 8468 - ], - "op": "MUL", - "path": "66" - }, - "9691": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SWAP2", - "path": "66" - }, - "9692": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SWAP1", - "path": "66" - }, - "9693": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SWAP2", - "path": "66" - }, - "9694": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8429, - 8469 - ], - "op": "SHR", - "path": "66" - }, - "9695": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP4", - "path": "66" - }, - "9696": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP1", - "path": "66" - }, - "9697": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP4", - "path": "66" - }, - "9698": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "OR", - "path": "66" - }, - "9699": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8419, - 8470 - ], - "op": "SWAP3", - "path": "66" - }, - "9700": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP2", - "path": "66", - "statement": 213 - }, - "9701": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP1", - "path": "66" - }, - "9702": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP2", - "path": "66" - }, - "9703": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SHL", - "path": "66" - }, - "9704": { - "op": "PUSH1", - "value": "0x1" - }, - "9706": { - "op": "PUSH1", - "value": "0x1" - }, - "9708": { - "op": "PUSH1", - "value": "0x80" - }, - "9710": { - "op": "SHL" - }, - "9711": { - "op": "SUB" - }, - "9712": { - "op": "NOT" - }, - "9713": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "AND", - "path": "66" - }, - "9714": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8493, - 8505 - ], - "op": "SWAP1", - "path": "66" - }, - "9715": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8529, - 8530 - ], - "op": "PUSH1", - "path": "66", - "statement": 214, - "value": "0x1" - }, - "9717": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8519, - 8530 - ], - "op": "ADD", - "path": "66" - }, - "9718": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2489" - }, - "9721": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMP", - "path": "66" - }, - "9722": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 6684, - 8541 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9723": { - "branch": 345, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8616, - 8624 - ], - "op": "DUP5", - "path": "66" - }, - "9724": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8611, - 8633 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2607" - }, - "9727": { - "branch": 345, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8611, - 8633 - ], - "op": "JUMPI", - "path": "66" - }, - "9728": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "POP", - "path": "66", - "statement": 215 - }, - "9729": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "POP", - "path": "66" - }, - "9730": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "POP", - "path": "66" - }, - "9731": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "PUSH2", - "path": "66", - "value": "0x1632" - }, - "9734": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8626, - 8633 - ], - "op": "JUMP", - "path": "66" - }, - "9735": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8611, - 8633 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9736": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8733, - 8734 - ], - "op": "PUSH1", - "path": "66", - "statement": 216, - "value": "0x9" - }, - "9738": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8724, - 8730 - ], - "op": "DUP2", - "path": "66" - }, - "9739": { - "branch": 346, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8724, - 8734 - ], - "op": "LT", - "path": "66" - }, - "9740": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "PUSH2", - "path": "66", - "value": "0x2614" - }, - "9743": { - "branch": 346, - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "JUMPI", - "path": "66" - }, - "9744": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "PUSH1", - "path": "66", - "value": "0x0" - }, - "9746": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "DUP1", - "path": "66" - }, - "9747": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "REVERT", - "path": "66" - }, - "9748": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8716, - 8735 - ], - "op": "JUMPDEST", - "path": "66" - }, - "9749": { - "op": "PUSH1", - "value": "0x1" - }, - "9751": { - "op": "PUSH1", - "value": "0x1" - }, - "9753": { - "op": "PUSH1", - "value": "0xF0" - }, - "9755": { - "op": "SHL" - }, - "9756": { - "op": "SUB" - }, - "9757": { - "op": "NOT" - }, - "9758": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "PUSH1", - "path": "66", - "statement": 217, - "value": "0xF0" - }, - "9760": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "DUP8", - "path": "66" - }, - "9761": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "SWAP1", - "path": "66" - }, - "9762": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8879 - ], - "op": "SHL", - "path": "66" - }, - "9763": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8887 - ], - "op": "DUP6", - "path": "66" - }, - "9764": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8853, - 8887 - ], - "op": "OR", - "path": "66" - }, - "9765": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8845, - 8888 - ], - "op": "AND", - "path": "66" - }, - "9766": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8902, - 8904 - ], - "op": "PUSH1", - "path": "66", - "value": "0x10" - }, - "9768": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8893, - 8904 - ], - "op": "SWAP1", - "path": "66" - }, - "9769": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8893, - 8904 - ], - "op": "SWAP2", - "path": "66" - }, - "9770": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8893, - 8904 - ], - "op": "MUL", - "path": "66" - }, - "9771": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8845, - 8905 - ], - "op": "SHR", - "path": "66" - }, - "9772": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "SWAP2", - "path": "66" - }, - "9773": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "SWAP1", - "path": "66" - }, - "9774": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "SWAP2", - "path": "66" - }, - "9775": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8823, - 8906 - ], - "op": "OR", - "path": "66" - }, - "9776": { - "op": "PUSH1", - "value": "0x1" - }, - "9778": { - "op": "PUSH1", - "value": "0x1" - }, - "9780": { - "op": "PUSH1", - "value": "0x70" - }, - "9782": { - "op": "SHL" - }, - "9783": { - "op": "SUB" - }, - "9784": { - "op": "NOT" - }, - "9785": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8906 - ], - "op": "AND", - "path": "66" - }, - "9786": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8808 - ], - "op": "PUSH1", - "path": "66", - "value": "0x80" - }, - "9788": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8808 - ], - "op": "DUP7", - "path": "66" - }, - "9789": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8808 - ], - "op": "ADD", - "path": "66" - }, - "9790": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 8777, - 8906 - ], - "op": "MSTORE", - "path": "66" - }, - "9791": { - "op": "POP" - }, - "9792": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9793": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9794": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9795": { - "fn": "AccountContextHandler.setActiveCurrency", - "offset": [ - 5247, - 8913 - ], - "op": "POP", - "path": "66" - }, - "9796": { - "fn": "AccountContextHandler.setActiveCurrency", - "jump": "o", - "offset": [ - 5247, - 8913 - ], - "op": "JUMP", - "path": "66" - }, - "9797": { - "fn": "SafeInt256.mul", - "offset": [ - 398, - 588 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9798": { - "fn": "SafeInt256.mul", - "offset": [ - 478, - 483 - ], - "op": "DUP2", - "path": "94", - "statement": 218 - }, - "9799": { - "fn": "SafeInt256.mul", - "offset": [ - 478, - 483 - ], - "op": "DUP2", - "path": "94" - }, - "9800": { - "fn": "SafeInt256.mul", - "offset": [ - 478, - 483 - ], - "op": "MUL", - "path": "94" - }, - "9801": { - "op": "PUSH1", - "value": "0x0" - }, - "9803": { - "op": "NOT" - }, - "9804": { - "fn": "SafeInt256.mul", - "offset": [ - 497, - 504 - ], - "op": "DUP4", - "path": "94" - }, - "9805": { - "branch": 438, - "fn": "SafeInt256.mul", - "offset": [ - 497, - 504 - ], - "op": "EQ", - "path": "94" - }, - "9806": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "ISZERO", - "path": "94" - }, - "9807": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "PUSH2", - "path": "94", - "value": "0x2675" - }, - "9810": { - "branch": 438, - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "JUMPI", - "path": "94" - }, - "9811": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 521 - ], - "op": "DUP2", - "path": "94", - "statement": 219 - }, - "9812": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 521 - ], - "op": "ISZERO", - "path": "94" - }, - "9813": { - "branch": 439, - "fn": "SafeInt256.mul", - "offset": [ - 515, - 521 - ], - "op": "DUP1", - "path": "94" - }, - "9814": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "PUSH2", - "path": "94", - "value": "0x2667" - }, - "9817": { - "branch": 439, - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "JUMPI", - "path": "94" - }, - "9818": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "POP", - "path": "94" - }, - "9819": { - "fn": "SafeInt256.mul", - "offset": [ - 534, - 535 - ], - "op": "DUP3", - "path": "94" - }, - "9820": { - "fn": "SafeInt256.mul", - "offset": [ - 529, - 530 - ], - "op": "DUP3", - "path": "94" - }, - "9821": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 526 - ], - "op": "DUP3", - "path": "94" - }, - "9822": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "DUP2", - "path": "94" - }, - "9823": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "PUSH2", - "path": "94", - "value": "0x2664" - }, - "9826": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "JUMPI", - "path": "94" - }, - "9827": { - "dev": "Division by zero", - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "INVALID", - "path": "94" - }, - "9828": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9829": { - "fn": "SafeInt256.mul", - "offset": [ - 525, - 530 - ], - "op": "SDIV", - "path": "94" - }, - "9830": { - "branch": 440, - "fn": "SafeInt256.mul", - "offset": [ - 525, - 535 - ], - "op": "EQ", - "path": "94" - }, - "9831": { - "fn": "SafeInt256.mul", - "offset": [ - 515, - 535 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9832": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "PUSH2", - "path": "94", - "value": "0x2670" - }, - "9835": { - "branch": 440, - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "JUMPI", - "path": "94" - }, - "9836": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "9838": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "DUP1", - "path": "94" - }, - "9839": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "REVERT", - "path": "94" - }, - "9840": { - "fn": "SafeInt256.mul", - "offset": [ - 506, - 536 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9841": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "PUSH2", - "path": "94", - "value": "0x30C" - }, - "9844": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "JUMP", - "path": "94" - }, - "9845": { - "fn": "SafeInt256.mul", - "offset": [ - 493, - 581 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9846": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 566 - ], - "op": "DUP3", - "path": "94", - "statement": 220 - }, - "9847": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 566 - ], - "op": "ISZERO", - "path": "94" - }, - "9848": { - "branch": 441, - "fn": "SafeInt256.mul", - "offset": [ - 560, - 566 - ], - "op": "DUP1", - "path": "94" - }, - "9849": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "PUSH2", - "path": "94", - "value": "0x268A" - }, - "9852": { - "branch": 441, - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "JUMPI", - "path": "94" - }, - "9853": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "POP", - "path": "94" - }, - "9854": { - "fn": "SafeInt256.mul", - "offset": [ - 579, - 580 - ], - "op": "DUP2", - "path": "94" - }, - "9855": { - "fn": "SafeInt256.mul", - "offset": [ - 574, - 575 - ], - "op": "DUP4", - "path": "94" - }, - "9856": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 571 - ], - "op": "DUP3", - "path": "94" - }, - "9857": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "DUP2", - "path": "94" - }, - "9858": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "PUSH2", - "path": "94", - "value": "0x2687" - }, - "9861": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "JUMPI", - "path": "94" - }, - "9862": { - "dev": "Division by zero", - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "INVALID", - "path": "94" - }, - "9863": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9864": { - "fn": "SafeInt256.mul", - "offset": [ - 570, - 575 - ], - "op": "SDIV", - "path": "94" - }, - "9865": { - "branch": 442, - "fn": "SafeInt256.mul", - "offset": [ - 570, - 580 - ], - "op": "EQ", - "path": "94" - }, - "9866": { - "fn": "SafeInt256.mul", - "offset": [ - 560, - 580 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9867": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "PUSH2", - "path": "94", - "value": "0x30C" - }, - "9870": { - "branch": 442, - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "JUMPI", - "path": "94" - }, - "9871": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "9873": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "DUP1", - "path": "94" - }, - "9874": { - "fn": "SafeInt256.mul", - "offset": [ - 551, - 581 - ], - "op": "REVERT", - "path": "94" - }, - "9875": { - "fn": "LibStorage.getCashGroupStorage", - "offset": [ - 4677, - 4894 - ], - "op": "JUMPDEST", - "path": "62" - }, - "9876": { - "fn": "LibStorage.getCashGroupStorage", - "offset": [ - 4739, - 4780 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "9878": { - "fn": "LibStorage.getCashGroupStorage", - "offset": [ - 4796, - 4808 - ], - "op": "DUP1", - "path": "62" - }, - "9879": { - "fn": "LibStorage.getCashGroupStorage", - "offset": [ - 4811, - 4847 - ], - "op": "PUSH2", - "path": "62", - "value": "0x30C" - }, - "9882": { - "fn": "LibStorage.getCashGroupStorage", - "offset": [ - 4827, - 4846 - ], - "op": "PUSH1", - "path": "62", - "value": "0x9" - }, - "9884": { - "fn": "LibStorage.getCashGroupStorage", - "offset": [ - 4811, - 4826 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1971" - }, - "9887": { - "fn": "LibStorage.getCashGroupStorage", - "jump": "i", - "offset": [ - 4811, - 4847 - ], - "op": "JUMP", - "path": "62" - }, - "9888": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 656, - 922 - ], - "op": "JUMPDEST", - "path": "83" - }, - "9889": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 741, - 761 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "9891": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 773, - 834 - ], - "op": "DUP1", - "path": "83" - }, - "9892": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 837, - 872 - ], - "op": "PUSH2", - "path": "83", - "value": "0x26AB" - }, - "9895": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 837, - 870 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2C8A" - }, - "9898": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "jump": "i", - "offset": [ - 837, - 872 - ], - "op": "JUMP", - "path": "83" - }, - "9899": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 837, - 872 - ], - "op": "JUMPDEST", - "path": "83" - }, - "9900": { - "op": "PUSH1", - "value": "0x1" - }, - "9902": { - "op": "PUSH1", - "value": "0x1" - }, - "9904": { - "op": "PUSH1", - "value": "0xA0" - }, - "9906": { - "op": "SHL" - }, - "9907": { - "op": "SUB" - }, - "9908": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "DUP6", - "path": "83", - "statement": 221 - }, - "9909": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "AND", - "path": "83" - }, - "9910": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "9912": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "SWAP1", - "path": "83" - }, - "9913": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "DUP2", - "path": "83" - }, - "9914": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "MSTORE", - "path": "83" - }, - "9915": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "9917": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "SWAP2", - "path": "83" - }, - "9918": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "DUP3", - "path": "83" - }, - "9919": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "MSTORE", - "path": "83" - }, - "9920": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "PUSH1", - "path": "83", - "value": "0x40" - }, - "9922": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "DUP1", - "path": "83" - }, - "9923": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "DUP3", - "path": "83" - }, - "9924": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 903 - ], - "op": "KECCAK256", - "path": "83" - }, - "9925": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "DUP7", - "path": "83" - }, - "9926": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "DUP4", - "path": "83" - }, - "9927": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "MSTORE", - "path": "83" - }, - "9928": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "SWAP1", - "path": "83" - }, - "9929": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "SWAP3", - "path": "83" - }, - "9930": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "MSTORE", - "path": "83" - }, - "9931": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "KECCAK256", - "path": "83" - }, - "9932": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "SLOAD", - "path": "83" - }, - "9933": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 889, - 915 - ], - "op": "SWAP2", - "path": "83" - }, - "9934": { - "op": "POP" - }, - "9935": { - "op": "POP" - }, - "9936": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 656, - 922 - ], - "op": "SWAP3", - "path": "83" - }, - "9937": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 656, - 922 - ], - "op": "SWAP2", - "path": "83" - }, - "9938": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 656, - 922 - ], - "op": "POP", - "path": "83" - }, - "9939": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "offset": [ - 656, - 922 - ], - "op": "POP", - "path": "83" - }, - "9940": { - "fn": "BitmapAssetsHandler.getAssetsBitmap", - "jump": "o", - "offset": [ - 656, - 922 - ], - "op": "JUMP", - "path": "83" - }, - "9941": { - "fn": "Bitmap.isBitSet", - "offset": [ - 732, - 966 - ], - "op": "JUMPDEST", - "path": "92" - }, - "9942": { - "fn": "Bitmap.isBitSet", - "offset": [ - 804, - 808 - ], - "op": "PUSH1", - "path": "92", - "value": "0x0" - }, - "9944": { - "fn": "Bitmap.isBitSet", - "offset": [ - 837, - 838 - ], - "op": "PUSH1", - "path": "92", - "statement": 222, - "value": "0x1" - }, - "9946": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 833 - ], - "op": "DUP3", - "path": "92" - }, - "9947": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 838 - ], - "op": "LT", - "path": "92" - }, - "9948": { - "branch": 352, - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 838 - ], - "op": "ISZERO", - "path": "92" - }, - "9949": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 854 - ], - "op": "DUP1", - "path": "92" - }, - "9950": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 854 - ], - "op": "ISZERO", - "path": "92" - }, - "9951": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 854 - ], - "op": "PUSH2", - "path": "92", - "value": "0x26EA" - }, - "9954": { - "branch": 352, - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 854 - ], - "op": "JUMPI", - "path": "92" - }, - "9955": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 854 - ], - "op": "POP", - "path": "92" - }, - "9956": { - "fn": "Bitmap.isBitSet", - "offset": [ - 851, - 854 - ], - "op": "PUSH2", - "path": "92", - "value": "0x100" - }, - "9959": { - "fn": "Bitmap.isBitSet", - "offset": [ - 842, - 847 - ], - "op": "DUP3", - "path": "92" - }, - "9960": { - "fn": "Bitmap.isBitSet", - "offset": [ - 842, - 854 - ], - "op": "GT", - "path": "92" - }, - "9961": { - "branch": 353, - "fn": "Bitmap.isBitSet", - "offset": [ - 842, - 854 - ], - "op": "ISZERO", - "path": "92" - }, - "9962": { - "fn": "Bitmap.isBitSet", - "offset": [ - 828, - 854 - ], - "op": "JUMPDEST", - "path": "92" - }, - "9963": { - "fn": "Bitmap.isBitSet", - "offset": [ - 820, - 855 - ], - "op": "PUSH2", - "path": "92", - "value": "0x26F3" - }, - "9966": { - "branch": 353, - "fn": "Bitmap.isBitSet", - "offset": [ - 820, - 855 - ], - "op": "JUMPI", - "path": "92" - }, - "9967": { - "fn": "Bitmap.isBitSet", - "offset": [ - 820, - 855 - ], - "op": "PUSH1", - "path": "92", - "value": "0x0" - }, - "9969": { - "fn": "Bitmap.isBitSet", - "offset": [ - 820, - 855 - ], - "op": "DUP1", - "path": "92" - }, - "9970": { - "fn": "Bitmap.isBitSet", - "offset": [ - 820, - 855 - ], - "op": "REVERT", - "path": "92" - }, - "9971": { - "fn": "Bitmap.isBitSet", - "offset": [ - 820, - 855 - ], - "op": "JUMPDEST", - "path": "92" - }, - "9972": { - "op": "POP" - }, - "9973": { - "op": "PUSH1", - "value": "0x0" - }, - "9975": { - "op": "NOT" - }, - "9976": { - "fn": "Bitmap.isBitSet", - "offset": [ - 914, - 923 - ], - "op": "ADD", - "path": "92", - "statement": 223 - }, - "9977": { - "fn": "Bitmap.isBitSet", - "offset": [ - 903, - 924 - ], - "op": "SHL", - "path": "92" - }, - "9978": { - "op": "PUSH1", - "value": "0x1" - }, - "9980": { - "op": "PUSH1", - "value": "0xFF" - }, - "9982": { - "op": "SHL" - }, - "9983": { - "fn": "Bitmap.isBitSet", - "offset": [ - 902, - 941 - ], - "op": "SWAP1", - "path": "92" - }, - "9984": { - "fn": "Bitmap.isBitSet", - "offset": [ - 902, - 941 - ], - "op": "DUP2", - "path": "92" - }, - "9985": { - "fn": "Bitmap.isBitSet", - "offset": [ - 902, - 941 - ], - "op": "AND", - "path": "92" - }, - "9986": { - "fn": "Bitmap.isBitSet", - "offset": [ - 901, - 959 - ], - "op": "EQ", - "path": "92" - }, - "9987": { - "fn": "Bitmap.isBitSet", - "offset": [ - 901, - 959 - ], - "op": "SWAP1", - "path": "92" - }, - "9988": { - "fn": "Bitmap.isBitSet", - "jump": "o", - "offset": [ - 732, - 966 - ], - "op": "JUMP", - "path": "92" - }, - "9989": { - "fn": "SafeInt256.add", - "offset": [ - 1427, - 1547 - ], - "op": "JUMPDEST", - "path": "94" - }, - "9990": { - "fn": "SafeInt256.add", - "offset": [ - 1516, - 1521 - ], - "op": "DUP2", - "path": "94", - "statement": 224 - }, - "9991": { - "fn": "SafeInt256.add", - "offset": [ - 1516, - 1521 - ], - "op": "DUP2", - "path": "94" - }, - "9992": { - "fn": "SafeInt256.add", - "offset": [ - 1516, - 1521 - ], - "op": "ADD", - "path": "94" - }, - "9993": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "DUP3", - "path": "94" - }, - "9994": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "DUP2", - "path": "94" - }, - "9995": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "SLT", - "path": "94" - }, - "9996": { - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1527 - ], - "op": "ISZERO", - "path": "94" - }, - "9997": { - "fn": "SafeInt256.add", - "offset": [ - 1483, - 1491 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "9999": { - "fn": "SafeInt256.add", - "offset": [ - 1532, - 1538 - ], - "op": "DUP4", - "path": "94" - }, - "10000": { - "fn": "SafeInt256.add", - "offset": [ - 1532, - 1538 - ], - "op": "SLT", - "path": "94" - }, - "10001": { - "fn": "SafeInt256.add", - "offset": [ - 1532, - 1538 - ], - "op": "ISZERO", - "path": "94" - }, - "10002": { - "branch": 443, - "fn": "SafeInt256.add", - "offset": [ - 1511, - 1539 - ], - "op": "EQ", - "path": "94" - }, - "10003": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "PUSH2", - "path": "94", - "value": "0x30C" - }, - "10006": { - "branch": 443, - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "JUMPI", - "path": "94" - }, - "10007": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "PUSH1", - "path": "94", - "value": "0x0" - }, - "10009": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "DUP1", - "path": "94" - }, - "10010": { - "fn": "SafeInt256.add", - "offset": [ - 1503, - 1540 - ], - "op": "REVERT", - "path": "94" - }, - "10011": { - "fn": "Bitmap.setBit", - "offset": [ - 316, - 688 - ], - "op": "JUMPDEST", - "path": "92" - }, - "10012": { - "fn": "Bitmap.setBit", - "offset": [ - 428, - 435 - ], - "op": "PUSH1", - "path": "92", - "value": "0x0" - }, - "10014": { - "fn": "Bitmap.setBit", - "offset": [ - 464, - 465 - ], - "op": "PUSH1", - "path": "92", - "statement": 225, - "value": "0x1" - }, - "10016": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 460 - ], - "op": "DUP4", - "path": "92" - }, - "10017": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 465 - ], - "op": "LT", - "path": "92" - }, - "10018": { - "branch": 354, - "fn": "Bitmap.setBit", - "offset": [ - 455, - 465 - ], - "op": "ISZERO", - "path": "92" - }, - "10019": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 481 - ], - "op": "DUP1", - "path": "92" - }, - "10020": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 481 - ], - "op": "ISZERO", - "path": "92" - }, - "10021": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 481 - ], - "op": "PUSH2", - "path": "92", - "value": "0x2730" - }, - "10024": { - "branch": 354, - "fn": "Bitmap.setBit", - "offset": [ - 455, - 481 - ], - "op": "JUMPI", - "path": "92" - }, - "10025": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 481 - ], - "op": "POP", - "path": "92" - }, - "10026": { - "fn": "Bitmap.setBit", - "offset": [ - 478, - 481 - ], - "op": "PUSH2", - "path": "92", - "value": "0x100" - }, - "10029": { - "fn": "Bitmap.setBit", - "offset": [ - 469, - 474 - ], - "op": "DUP4", - "path": "92" - }, - "10030": { - "fn": "Bitmap.setBit", - "offset": [ - 469, - 481 - ], - "op": "GT", - "path": "92" - }, - "10031": { - "branch": 355, - "fn": "Bitmap.setBit", - "offset": [ - 469, - 481 - ], - "op": "ISZERO", - "path": "92" - }, - "10032": { - "fn": "Bitmap.setBit", - "offset": [ - 455, - 481 - ], - "op": "JUMPDEST", - "path": "92" - }, - "10033": { - "fn": "Bitmap.setBit", - "offset": [ - 447, - 482 - ], - "op": "PUSH2", - "path": "92", - "value": "0x2739" - }, - "10036": { - "branch": 355, - "fn": "Bitmap.setBit", - "offset": [ - 447, - 482 - ], - "op": "JUMPI", - "path": "92" - }, - "10037": { - "fn": "Bitmap.setBit", - "offset": [ - 447, - 482 - ], - "op": "PUSH1", - "path": "92", - "value": "0x0" - }, - "10039": { - "fn": "Bitmap.setBit", - "offset": [ - 447, - 482 - ], - "op": "DUP1", - "path": "92" - }, - "10040": { - "fn": "Bitmap.setBit", - "offset": [ - 447, - 482 - ], - "op": "REVERT", - "path": "92" - }, - "10041": { - "fn": "Bitmap.setBit", - "offset": [ - 447, - 482 - ], - "op": "JUMPDEST", - "path": "92" - }, - "10042": { - "branch": 356, - "fn": "Bitmap.setBit", - "offset": [ - 526, - 531 - ], - "op": "DUP2", - "path": "92" - }, - "10043": { - "fn": "Bitmap.setBit", - "offset": [ - 522, - 682 - ], - "op": "ISZERO", - "path": "92" - }, - "10044": { - "fn": "Bitmap.setBit", - "offset": [ - 522, - 682 - ], - "op": "PUSH2", - "path": "92", - "value": "0x2752" - }, - "10047": { - "branch": 356, - "fn": "Bitmap.setBit", - "offset": [ - 522, - 682 - ], - "op": "JUMPI", - "path": "92" - }, - "10048": { - "op": "POP" - }, - "10049": { - "op": "PUSH1", - "value": "0x1" - }, - "10051": { - "op": "PUSH1", - "value": "0xFF" - }, - "10053": { - "op": "SHL" - }, - "10054": { - "op": "PUSH1", - "value": "0x0" - }, - "10056": { - "op": "NOT" - }, - "10057": { - "fn": "Bitmap.setBit", - "offset": [ - 582, - 591 - ], - "op": "DUP4", - "path": "92", - "statement": 226 - }, - "10058": { - "fn": "Bitmap.setBit", - "offset": [ - 582, - 591 - ], - "op": "ADD", - "path": "92" - }, - "10059": { - "fn": "Bitmap.setBit", - "offset": [ - 564, - 592 - ], - "op": "SHR", - "path": "92" - }, - "10060": { - "fn": "Bitmap.setBit", - "offset": [ - 554, - 593 - ], - "op": "DUP4", - "path": "92" - }, - "10061": { - "fn": "Bitmap.setBit", - "offset": [ - 554, - 593 - ], - "op": "OR", - "path": "92" - }, - "10062": { - "fn": "Bitmap.setBit", - "offset": [ - 547, - 593 - ], - "op": "PUSH2", - "path": "92", - "value": "0x653" - }, - "10065": { - "fn": "Bitmap.setBit", - "offset": [ - 547, - 593 - ], - "op": "JUMP", - "path": "92" - }, - "10066": { - "fn": "Bitmap.setBit", - "offset": [ - 522, - 682 - ], - "op": "JUMPDEST", - "path": "92" - }, - "10067": { - "op": "POP" - }, - "10068": { - "op": "PUSH1", - "value": "0x1" - }, - "10070": { - "op": "PUSH1", - "value": "0xFF" - }, - "10072": { - "op": "SHL" - }, - "10073": { - "op": "PUSH1", - "value": "0x0" - }, - "10075": { - "op": "NOT" - }, - "10076": { - "fn": "Bitmap.setBit", - "offset": [ - 660, - 669 - ], - "op": "DUP4", - "path": "92", - "statement": 227 - }, - "10077": { - "fn": "Bitmap.setBit", - "offset": [ - 660, - 669 - ], - "op": "ADD", - "path": "92" - }, - "10078": { - "fn": "Bitmap.setBit", - "offset": [ - 642, - 670 - ], - "op": "SHR", - "path": "92" - }, - "10079": { - "fn": "Bitmap.setBit", - "offset": [ - 640, - 671 - ], - "op": "NOT", - "path": "92" - }, - "10080": { - "fn": "Bitmap.setBit", - "offset": [ - 631, - 671 - ], - "op": "DUP4", - "path": "92" - }, - "10081": { - "fn": "Bitmap.setBit", - "offset": [ - 631, - 671 - ], - "op": "AND", - "path": "92" - }, - "10082": { - "fn": "Bitmap.setBit", - "offset": [ - 624, - 671 - ], - "op": "PUSH2", - "path": "92", - "value": "0x653" - }, - "10085": { - "fn": "Bitmap.setBit", - "offset": [ - 624, - 671 - ], - "op": "JUMP", - "path": "92" - }, - "10086": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 928, - 1314 - ], - "op": "JUMPDEST", - "path": "83" - }, - "10087": { - "offset": [ - 2215, - 2217 - ], - "op": "PUSH1", - "path": "60", - "value": "0x14" - }, - "10089": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1069, - 1096 - ], - "op": "PUSH2", - "path": "83", - "statement": 228, - "value": "0x2771" - }, - "10092": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1069, - 1081 - ], - "op": "DUP3", - "path": "83" - }, - "10093": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1069, - 1094 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2C97" - }, - "10096": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "jump": "i", - "offset": [ - 1069, - 1096 - ], - "op": "JUMP", - "path": "83" - }, - "10097": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1069, - 1096 - ], - "op": "JUMPDEST", - "path": "83" - }, - "10098": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1069, - 1127 - ], - "op": "GT", - "path": "83" - }, - "10099": { - "branch": 369, - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1069, - 1127 - ], - "op": "ISZERO", - "path": "83" - }, - "10100": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "PUSH2", - "path": "83", - "value": "0x278F" - }, - "10103": { - "branch": 369, - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "JUMPI", - "path": "83" - }, - "10104": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "PUSH1", - "path": "83", - "value": "0x40" - }, - "10106": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "MLOAD", - "path": "83" - }, - "10107": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "10111": { - "op": "PUSH1", - "value": "0xE5" - }, - "10113": { - "op": "SHL" - }, - "10114": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "DUP2", - "path": "83" - }, - "10115": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "MSTORE", - "path": "83" - }, - "10116": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "PUSH1", - "path": "83", - "value": "0x4" - }, - "10118": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "ADD", - "path": "83" - }, - "10119": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "PUSH2", - "path": "83", - "value": "0x3D8" - }, - "10122": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "SWAP1", - "path": "83" - }, - "10123": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "PUSH2", - "path": "83", - "value": "0x373A" - }, - "10126": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "jump": "i", - "offset": [ - 1061, - 1147 - ], - "op": "JUMP", - "path": "83" - }, - "10127": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1061, - 1147 - ], - "op": "JUMPDEST", - "path": "83" - }, - "10128": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1157, - 1218 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "10130": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1221, - 1256 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2799" - }, - "10133": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1221, - 1254 - ], - "op": "PUSH2", - "path": "83", - "value": "0x2C8A" - }, - "10136": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "jump": "i", - "offset": [ - 1221, - 1256 - ], - "op": "JUMP", - "path": "83" - }, - "10137": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1221, - 1256 - ], - "op": "JUMPDEST", - "path": "83" - }, - "10138": { - "op": "PUSH1", - "value": "0x1" - }, - "10140": { - "op": "PUSH1", - "value": "0x1" - }, - "10142": { - "op": "PUSH1", - "value": "0xA0" - }, - "10144": { - "op": "SHL" - }, - "10145": { - "op": "SUB" - }, - "10146": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "SWAP1", - "path": "83", - "statement": 229 - }, - "10147": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "SWAP5", - "path": "83" - }, - "10148": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "AND", - "path": "83" - }, - "10149": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "PUSH1", - "path": "83", - "value": "0x0" - }, - "10151": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "SWAP1", - "path": "83" - }, - "10152": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "DUP2", - "path": "83" - }, - "10153": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "MSTORE", - "path": "83" - }, - "10154": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "PUSH1", - "path": "83", - "value": "0x20" - }, - "10156": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "SWAP5", - "path": "83" - }, - "10157": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "DUP6", - "path": "83" - }, - "10158": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "MSTORE", - "path": "83" - }, - "10159": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "PUSH1", - "path": "83", - "value": "0x40" - }, - "10161": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "DUP1", - "path": "83" - }, - "10162": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "DUP3", - "path": "83" - }, - "10163": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1280 - ], - "op": "KECCAK256", - "path": "83" - }, - "10164": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "SWAP5", - "path": "83" - }, - "10165": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "DUP3", - "path": "83" - }, - "10166": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "MSTORE", - "path": "83" - }, - "10167": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "SWAP4", - "path": "83" - }, - "10168": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "SWAP1", - "path": "83" - }, - "10169": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "SWAP5", - "path": "83" - }, - "10170": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "MSTORE", - "path": "83" - }, - "10171": { - "op": "POP" - }, - "10172": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "SWAP2", - "path": "83" - }, - "10173": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1292 - ], - "op": "KECCAK256", - "path": "83" - }, - "10174": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "offset": [ - 1266, - 1307 - ], - "op": "SSTORE", - "path": "83" - }, - "10175": { - "fn": "BitmapAssetsHandler.setAssetsBitmap", - "jump": "o", - "offset": [ - 928, - 1314 - ], - "op": "JUMP", - "path": "83" - }, - "10176": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1166, - 2631 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10177": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1374, - 1378 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10179": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1374, - 1378 - ], - "op": "DUP1", - "path": "84" - }, - "10180": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10181": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1414, - 1424 - ], - "op": "DUP7", - "path": "84" - }, - "10182": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1414, - 1431 - ], - "op": "MLOAD", - "path": "84" - }, - "10183": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1410, - 1411 - ], - "op": "DUP2", - "path": "84" - }, - "10184": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1410, - 1431 - ], - "op": "LT", - "path": "84" - }, - "10185": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "ISZERO", - "path": "84" - }, - "10186": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28CC" - }, - "10189": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "JUMPI", - "path": "84" - }, - "10190": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1452, - 1479 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10192": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1492 - ], - "op": "DUP8", - "path": "84" - }, - "10193": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1493, - 1494 - ], - "op": "DUP3", - "path": "84" - }, - "10194": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "DUP2", - "path": "84" - }, - "10195": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "MLOAD", - "path": "84" - }, - "10196": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "DUP2", - "path": "84" - }, - "10197": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "LT", - "path": "84" - }, - "10198": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "PUSH2", - "path": "84", - "value": "0x27DB" - }, - "10201": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "JUMPI", - "path": "84" - }, - "10202": { - "dev": "Index out of range", - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "INVALID", - "path": "84" - }, - "10203": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10204": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10206": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "MUL", - "path": "84" - }, - "10207": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10209": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "ADD", - "path": "84" - }, - "10210": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "ADD", - "path": "84" - }, - "10211": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1482, - 1495 - ], - "op": "MLOAD", - "path": "84" - }, - "10212": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1452, - 1495 - ], - "op": "SWAP1", - "path": "84" - }, - "10213": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1452, - 1495 - ], - "op": "POP", - "path": "84" - }, - "10214": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1549, - 1558 - ], - "op": "DUP5", - "path": "84" - }, - "10215": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1535 - ], - "op": "DUP2", - "path": "84" - }, - "10216": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1545 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10218": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1545 - ], - "op": "ADD", - "path": "84" - }, - "10219": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1545 - ], - "op": "MLOAD", - "path": "84" - }, - "10220": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1558 - ], - "op": "EQ", - "path": "84" - }, - "10221": { - "branch": 408, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1558 - ], - "op": "ISZERO", - "path": "84" - }, - "10222": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1608 - ], - "op": "DUP1", - "path": "84" - }, - "10223": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1608 - ], - "op": "PUSH2", - "path": "84", - "value": "0x27F9" - }, - "10226": { - "branch": 408, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1608 - ], - "op": "JUMPI", - "path": "84" - }, - "10227": { - "op": "POP" - }, - "10228": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1578, - 1594 - ], - "op": "DUP1", - "path": "84" - }, - "10229": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1578, - 1594 - ], - "op": "MLOAD", - "path": "84" - }, - "10230": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1578, - 1608 - ], - "op": "DUP8", - "path": "84" - }, - "10231": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1578, - 1608 - ], - "op": "EQ", - "path": "84" - }, - "10232": { - "branch": 409, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1578, - 1608 - ], - "op": "ISZERO", - "path": "84" - }, - "10233": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1608 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10234": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1654 - ], - "op": "DUP1", - "path": "84" - }, - "10235": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1654 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2808" - }, - "10238": { - "branch": 409, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1654 - ], - "op": "JUMPI", - "path": "84" - }, - "10239": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1654 - ], - "op": "POP", - "path": "84" - }, - "10240": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1646, - 1654 - ], - "op": "DUP6", - "path": "84" - }, - "10241": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1628, - 1633 - ], - "op": "DUP2", - "path": "84" - }, - "10242": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1628, - 1642 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10244": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1628, - 1642 - ], - "op": "ADD", - "path": "84" - }, - "10245": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1628, - 1642 - ], - "op": "MLOAD", - "path": "84" - }, - "10246": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1628, - 1654 - ], - "op": "EQ", - "path": "84" - }, - "10247": { - "branch": 410, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1628, - 1654 - ], - "op": "ISZERO", - "path": "84" - }, - "10248": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1530, - 1654 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10249": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1509, - 1677 - ], - "op": "ISZERO", - "path": "84" - }, - "10250": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1509, - 1677 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2813" - }, - "10253": { - "branch": 410, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1509, - 1677 - ], - "op": "JUMPI", - "path": "84" - }, - "10254": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1669, - 1677 - ], - "op": "POP", - "path": "84", - "statement": 230 - }, - "10255": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1669, - 1677 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28C4" - }, - "10258": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1669, - 1677 - ], - "op": "JUMP", - "path": "84" - }, - "10259": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1509, - 1677 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10260": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1875, - 1899 - ], - "op": "PUSH1", - "path": "84", - "statement": 231, - "value": "0x2" - }, - "10262": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1858 - ], - "op": "DUP2", - "path": "84" - }, - "10263": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1871 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10265": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1871 - ], - "op": "ADD", - "path": "84" - }, - "10266": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1871 - ], - "op": "MLOAD", - "path": "84" - }, - "10267": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10269": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "DUP2", - "path": "84" - }, - "10270": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "GT", - "path": "84" - }, - "10271": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "ISZERO", - "path": "84" - }, - "10272": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2825" - }, - "10275": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "JUMPI", - "path": "84" - }, - "10276": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "INVALID", - "path": "84" - }, - "10277": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10278": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "EQ", - "path": "84" - }, - "10279": { - "branch": 411, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1899 - ], - "op": "ISZERO", - "path": "84" - }, - "10280": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1973 - ], - "op": "DUP1", - "path": "84" - }, - "10281": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1973 - ], - "op": "ISZERO", - "path": "84" - }, - "10282": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1973 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2843" - }, - "10285": { - "branch": 411, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1973 - ], - "op": "JUMPI", - "path": "84" - }, - "10286": { - "op": "POP" - }, - "10287": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1941, - 1973 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10289": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1924 - ], - "op": "DUP2", - "path": "84" - }, - "10290": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1937 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10292": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1937 - ], - "op": "ADD", - "path": "84" - }, - "10293": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1937 - ], - "op": "MLOAD", - "path": "84" - }, - "10294": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10296": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "DUP2", - "path": "84" - }, - "10297": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "GT", - "path": "84" - }, - "10298": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "ISZERO", - "path": "84" - }, - "10299": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2840" - }, - "10302": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "JUMPI", - "path": "84" - }, - "10303": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "INVALID", - "path": "84" - }, - "10304": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10305": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "EQ", - "path": "84" - }, - "10306": { - "branch": 412, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1919, - 1973 - ], - "op": "ISZERO", - "path": "84" - }, - "10307": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1853, - 1973 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10308": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1828, - 1987 - ], - "op": "PUSH2", - "path": "84", - "value": "0x284C" - }, - "10311": { - "branch": 412, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1828, - 1987 - ], - "op": "JUMPI", - "path": "84" - }, - "10312": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1828, - 1987 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10314": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1828, - 1987 - ], - "op": "DUP1", - "path": "84" - }, - "10315": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1828, - 1987 - ], - "op": "REVERT", - "path": "84" - }, - "10316": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1828, - 1987 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10317": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2079 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "10319": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2079 - ], - "op": "DUP2", - "path": "84" - }, - "10320": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2079 - ], - "op": "ADD", - "path": "84" - }, - "10321": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2079 - ], - "op": "MLOAD", - "path": "84" - }, - "10322": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2044, - 2062 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10324": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2044, - 2062 - ], - "op": "SWAP1", - "path": "84" - }, - "10325": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2093 - ], - "op": "PUSH2", - "path": "84", - "value": "0x285E" - }, - "10328": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2093 - ], - "op": "SWAP1", - "path": "84" - }, - "10329": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2084, - 2092 - ], - "op": "DUP7", - "path": "84" - }, - "10330": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2083 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2705" - }, - "10333": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "jump": "i", - "offset": [ - 2065, - 2093 - ], - "op": "JUMP", - "path": "84" - }, - "10334": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2065, - 2093 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10335": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2044, - 2093 - ], - "op": "SWAP1", - "path": "84" - }, - "10336": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2044, - 2093 - ], - "op": "POP", - "path": "84" - }, - "10337": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2173, - 2213 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2869" - }, - "10340": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2203, - 2212 - ], - "op": "DUP7", - "path": "84" - }, - "10341": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2173, - 2202 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28D9" - }, - "10344": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "jump": "i", - "offset": [ - 2173, - 2213 - ], - "op": "JUMP", - "path": "84" - }, - "10345": { - "branch": 413, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2173, - 2213 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10346": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2169, - 2332 - ], - "op": "ISZERO", - "path": "84" - }, - "10347": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2169, - 2332 - ], - "op": "PUSH2", - "path": "84", - "value": "0x287C" - }, - "10350": { - "branch": 413, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2169, - 2332 - ], - "op": "JUMPI", - "path": "84" - }, - "10351": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2256, - 2257 - ], - "op": "PUSH1", - "path": "84", - "statement": 232, - "value": "0x0" - }, - "10353": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2241, - 2252 - ], - "op": "DUP2", - "path": "84" - }, - "10354": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2241, - 2257 - ], - "op": "SLT", - "path": "84" - }, - "10355": { - "branch": 414, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2241, - 2257 - ], - "op": "ISZERO", - "path": "84" - }, - "10356": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2233, - 2258 - ], - "op": "PUSH2", - "path": "84", - "value": "0x287C" - }, - "10359": { - "branch": 414, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2233, - 2258 - ], - "op": "JUMPI", - "path": "84" - }, - "10360": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2233, - 2258 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10362": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2233, - 2258 - ], - "op": "DUP1", - "path": "84" - }, - "10363": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2233, - 2258 - ], - "op": "REVERT", - "path": "84" - }, - "10364": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2233, - 2258 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10365": { - "op": "PUSH11", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "10377": { - "op": "NOT" - }, - "10378": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2384 - ], - "op": "DUP2", - "path": "84", - "statement": 233 - }, - "10379": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2384 - ], - "op": "SLT", - "path": "84" - }, - "10380": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2384 - ], - "op": "DUP1", - "path": "84" - }, - "10381": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2384 - ], - "op": "ISZERO", - "path": "84" - }, - "10382": { - "branch": 415, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2384 - ], - "op": "SWAP1", - "path": "84" - }, - "10383": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2418 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28A3" - }, - "10386": { - "branch": 415, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2418 - ], - "op": "JUMPI", - "path": "84" - }, - "10387": { - "op": "POP" - }, - "10388": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2403, - 2418 - ], - "op": "PUSH11", - "path": "84", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "10400": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2388, - 2418 - ], - "op": "DUP2", - "path": "84" - }, - "10401": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2388, - 2418 - ], - "op": "SGT", - "path": "84" - }, - "10402": { - "branch": 416, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2388, - 2418 - ], - "op": "ISZERO", - "path": "84" - }, - "10403": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2354, - 2418 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10404": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2346, - 2419 - ], - "op": "PUSH2", - "path": "84", - "value": "0x28AC" - }, - "10407": { - "branch": 416, - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2346, - 2419 - ], - "op": "JUMPI", - "path": "84" - }, - "10408": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2346, - 2419 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10410": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2346, - 2419 - ], - "op": "DUP1", - "path": "84" - }, - "10411": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2346, - 2419 - ], - "op": "REVERT", - "path": "84" - }, - "10412": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2346, - 2419 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10413": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2478, - 2492 - ], - "op": "PUSH1", - "path": "84", - "statement": 234, - "value": "0x60" - }, - "10415": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2478, - 2492 - ], - "op": "DUP3", - "path": "84" - }, - "10416": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2478, - 2492 - ], - "op": "ADD", - "path": "84" - }, - "10417": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2478, - 2506 - ], - "op": "MSTORE", - "path": "84" - }, - "10418": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2541, - 2565 - ], - "op": "PUSH1", - "path": "84", - "statement": 235, - "value": "0x1" - }, - "10420": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2538 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10422": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2538 - ], - "op": "SWAP1", - "path": "84" - }, - "10423": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2538 - ], - "op": "SWAP2", - "path": "84" - }, - "10424": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2538 - ], - "op": "ADD", - "path": "84" - }, - "10425": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2565 - ], - "op": "DUP2", - "path": "84" - }, - "10426": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2565 - ], - "op": "SWAP1", - "path": "84" - }, - "10427": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2520, - 2565 - ], - "op": "MSTORE", - "path": "84" - }, - "10428": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2541, - 2565 - ], - "op": "SWAP2", - "path": "84" - }, - "10429": { - "op": "POP" - }, - "10430": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2580, - 2591 - ], - "op": "PUSH2", - "path": "84", - "statement": 236, - "value": "0x207E" - }, - "10433": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2580, - 2591 - ], - "op": "SWAP1", - "path": "84" - }, - "10434": { - "op": "POP" - }, - "10435": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2580, - 2591 - ], - "op": "JUMP", - "path": "84" - }, - "10436": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10437": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1433, - 1436 - ], - "op": "PUSH1", - "path": "84", - "statement": 237, - "value": "0x1" - }, - "10439": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1433, - 1436 - ], - "op": "ADD", - "path": "84" - }, - "10440": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "PUSH2", - "path": "84", - "value": "0x27C4" - }, - "10443": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "JUMP", - "path": "84" - }, - "10444": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1390, - 2602 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10445": { - "op": "POP" - }, - "10446": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2619, - 2624 - ], - "op": "PUSH1", - "path": "84", - "statement": 238, - "value": "0x0" - }, - "10448": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 2619, - 2624 - ], - "op": "SWAP7", - "path": "84" - }, - "10449": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "offset": [ - 1166, - 2631 - ], - "op": "SWAP6", - "path": "84" - }, - "10450": { - "op": "POP" - }, - "10451": { - "op": "POP" - }, - "10452": { - "op": "POP" - }, - "10453": { - "op": "POP" - }, - "10454": { - "op": "POP" - }, - "10455": { - "op": "POP" - }, - "10456": { - "fn": "PortfolioHandler._mergeAssetIntoArray", - "jump": "o", - "offset": [ - 1166, - 2631 - ], - "op": "JUMP", - "path": "84" - }, - "10457": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 615, - 837 - ], - "op": "JUMPDEST", - "path": "88" - }, - "10458": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 683, - 687 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "10460": { - "offset": [ - 4847, - 4848 - ], - "op": "PUSH1", - "path": "60", - "value": "0x2" - }, - "10462": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 766 - ], - "op": "DUP3", - "path": "88", - "statement": 239 - }, - "10463": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 766 - ], - "op": "LT", - "path": "88" - }, - "10464": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 766 - ], - "op": "DUP1", - "path": "88" - }, - "10465": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 766 - ], - "op": "ISZERO", - "path": "88" - }, - "10466": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 766 - ], - "op": "SWAP1", - "path": "88" - }, - "10467": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 830 - ], - "op": "PUSH2", - "path": "88", - "value": "0x30C" - }, - "10470": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 718, - 830 - ], - "op": "JUMPI", - "path": "88" - }, - "10471": { - "op": "POP" - }, - "10472": { - "op": "POP" - }, - "10473": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "10475": { - "op": "LT" - }, - "10476": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 782, - 830 - ], - "op": "ISZERO", - "path": "88" - }, - "10477": { - "fn": "AssetHandler.isLiquidityToken", - "offset": [ - 782, - 830 - ], - "op": "SWAP1", - "path": "88" - }, - "10478": { - "fn": "AssetHandler.isLiquidityToken", - "jump": "o", - "offset": [ - 615, - 837 - ], - "op": "JUMP", - "path": "88" - }, - "10479": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5183, - 5831 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10480": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5294, - 5317 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "10482": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5532, - 5549 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10484": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5561 - ], - "op": "DUP3", - "path": "84" - }, - "10485": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5568 - ], - "op": "MLOAD", - "path": "84" - }, - "10486": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5572, - 5573 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10488": { - "branch": 417, - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5573 - ], - "op": "EQ", - "path": "84" - }, - "10489": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5600 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2906" - }, - "10492": { - "branch": 417, - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5600 - ], - "op": "JUMPI", - "path": "84" - }, - "10493": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5580, - 5589 - ], - "op": "DUP3", - "path": "84" - }, - "10494": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5580, - 5596 - ], - "op": "MLOAD", - "path": "84" - }, - "10495": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5599, - 5600 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "10497": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5580, - 5600 - ], - "op": "MUL", - "path": "84" - }, - "10498": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5600 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2909" - }, - "10501": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5600 - ], - "op": "JUMP", - "path": "84" - }, - "10502": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5600 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10503": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5576, - 5577 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10505": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5552, - 5600 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10506": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5532, - 5600 - ], - "op": "SWAP1", - "path": "84" - }, - "10507": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5532, - 5600 - ], - "op": "POP", - "path": "84" - }, - "10508": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5610, - 5647 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10510": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5671, - 5680 - ], - "op": "DUP2", - "path": "84" - }, - "10511": { - "op": "PUSH1", - "value": "0x1" - }, - "10513": { - "op": "PUSH1", - "value": "0x1" - }, - "10515": { - "op": "PUSH1", - "value": "0x40" - }, - "10517": { - "op": "SHL" - }, - "10518": { - "op": "SUB" - }, - "10519": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP2", - "path": "84" - }, - "10520": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "GT", - "path": "84" - }, - "10521": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP1", - "path": "84" - }, - "10522": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "ISZERO", - "path": "84" - }, - "10523": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2923" - }, - "10526": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPI", - "path": "84" - }, - "10527": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10529": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP1", - "path": "84" - }, - "10530": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "REVERT", - "path": "84" - }, - "10531": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10532": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "POP", - "path": "84" - }, - "10533": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10535": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "MLOAD", - "path": "84" - }, - "10536": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "SWAP1", - "path": "84" - }, - "10537": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP1", - "path": "84" - }, - "10538": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP3", - "path": "84" - }, - "10539": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "MSTORE", - "path": "84" - }, - "10540": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP1", - "path": "84" - }, - "10541": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10543": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "MUL", - "path": "84" - }, - "10544": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10546": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "ADD", - "path": "84" - }, - "10547": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP3", - "path": "84" - }, - "10548": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "ADD", - "path": "84" - }, - "10549": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "10551": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "MSTORE", - "path": "84" - }, - "10552": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP1", - "path": "84" - }, - "10553": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "ISZERO", - "path": "84" - }, - "10554": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH2", - "path": "84", - "value": "0x295D" - }, - "10557": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPI", - "path": "84" - }, - "10558": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP2", - "path": "84" - }, - "10559": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10561": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "ADD", - "path": "84" - }, - "10562": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10563": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH2", - "path": "84", - "value": "0x294A" - }, - "10566": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2E5F" - }, - "10569": { - "fn": "PortfolioHandler._extendNewAssetArray", - "jump": "i", - "offset": [ - 5650, - 5681 - ], - "op": "JUMP", - "path": "84" - }, - "10570": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10571": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP2", - "path": "84" - }, - "10572": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "MSTORE", - "path": "84" - }, - "10573": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10575": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "ADD", - "path": "84" - }, - "10576": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "SWAP1", - "path": "84" - }, - "10577": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH1", - "path": "84", - "value": "0x1" - }, - "10579": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "SWAP1", - "path": "84" - }, - "10580": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "SUB", - "path": "84" - }, - "10581": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "SWAP1", - "path": "84" - }, - "10582": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "DUP2", - "path": "84" - }, - "10583": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2942" - }, - "10586": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPI", - "path": "84" - }, - "10587": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "SWAP1", - "path": "84" - }, - "10588": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "POP", - "path": "84" - }, - "10589": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10590": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5650, - 5681 - ], - "op": "POP", - "path": "84" - }, - "10591": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5610, - 5681 - ], - "op": "SWAP1", - "path": "84" - }, - "10592": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5610, - 5681 - ], - "op": "POP", - "path": "84" - }, - "10593": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5696, - 5705 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10595": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10596": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5715, - 5724 - ], - "op": "DUP5", - "path": "84" - }, - "10597": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5715, - 5731 - ], - "op": "MLOAD", - "path": "84" - }, - "10598": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5711, - 5712 - ], - "op": "DUP2", - "path": "84" - }, - "10599": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5711, - 5731 - ], - "op": "LT", - "path": "84" - }, - "10600": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "ISZERO", - "path": "84" - }, - "10601": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "PUSH2", - "path": "84", - "value": "0x299F" - }, - "10604": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "JUMPI", - "path": "84" - }, - "10605": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5780 - ], - "op": "DUP5", - "path": "84", - "statement": 240 - }, - "10606": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5781, - 5782 - ], - "op": "DUP2", - "path": "84" - }, - "10607": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "DUP2", - "path": "84" - }, - "10608": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "MLOAD", - "path": "84" - }, - "10609": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "DUP2", - "path": "84" - }, - "10610": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "LT", - "path": "84" - }, - "10611": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2978" - }, - "10614": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "JUMPI", - "path": "84" - }, - "10615": { - "dev": "Index out of range", - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "INVALID", - "path": "84" - }, - "10616": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10617": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10619": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "MUL", - "path": "84" - }, - "10620": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10622": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "ADD", - "path": "84" - }, - "10623": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "ADD", - "path": "84" - }, - "10624": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5771, - 5783 - ], - "op": "MLOAD", - "path": "84" - }, - "10625": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5765 - ], - "op": "DUP3", - "path": "84" - }, - "10626": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5766, - 5767 - ], - "op": "DUP3", - "path": "84" - }, - "10627": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "DUP2", - "path": "84" - }, - "10628": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "MLOAD", - "path": "84" - }, - "10629": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "DUP2", - "path": "84" - }, - "10630": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "LT", - "path": "84" - }, - "10631": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "PUSH2", - "path": "84", - "value": "0x298C" - }, - "10634": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "JUMPI", - "path": "84" - }, - "10635": { - "dev": "Index out of range", - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "INVALID", - "path": "84" - }, - "10636": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10637": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10639": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "SWAP1", - "path": "84" - }, - "10640": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "DUP2", - "path": "84" - }, - "10641": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "MUL", - "path": "84" - }, - "10642": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "SWAP2", - "path": "84" - }, - "10643": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "SWAP1", - "path": "84" - }, - "10644": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "SWAP2", - "path": "84" - }, - "10645": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "ADD", - "path": "84" - }, - "10646": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5768 - ], - "op": "ADD", - "path": "84" - }, - "10647": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5752, - 5783 - ], - "op": "MSTORE", - "path": "84" - }, - "10648": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5733, - 5736 - ], - "op": "PUSH1", - "path": "84", - "statement": 241, - "value": "0x1" - }, - "10650": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5733, - 5736 - ], - "op": "ADD", - "path": "84" - }, - "10651": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2963" - }, - "10654": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "JUMP", - "path": "84" - }, - "10655": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5691, - 5794 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10656": { - "op": "POP" - }, - "10657": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5811, - 5824 - ], - "op": "SWAP4", - "path": "84", - "statement": 242 - }, - "10658": { - "fn": "PortfolioHandler._extendNewAssetArray", - "offset": [ - 5183, - 5831 - ], - "op": "SWAP3", - "path": "84" - }, - "10659": { - "op": "POP" - }, - "10660": { - "op": "POP" - }, - "10661": { - "op": "POP" - }, - "10662": { - "fn": "PortfolioHandler._extendNewAssetArray", - "jump": "o", - "offset": [ - 5183, - 5831 - ], - "op": "JUMP", - "path": "84" - }, - "10663": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12689, - 14727 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10664": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12803, - 12830 - ], - "op": "DUP2", - "path": "84", - "statement": 243 - }, - "10665": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12803, - 12830 - ], - "op": "MLOAD", - "path": "84" - }, - "10666": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12803, - 12837 - ], - "op": "MLOAD", - "path": "84" - }, - "10667": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12795, - 12837 - ], - "op": "DUP2", - "path": "84" - }, - "10668": { - "branch": 418, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12795, - 12837 - ], - "op": "LT", - "path": "84" - }, - "10669": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29B5" - }, - "10672": { - "branch": 418, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "JUMPI", - "path": "84" - }, - "10673": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10675": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "DUP1", - "path": "84" - }, - "10676": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "REVERT", - "path": "84" - }, - "10677": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12787, - 12838 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10678": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12920, - 12921 - ], - "op": "PUSH1", - "path": "84", - "statement": 244, - "value": "0x0" - }, - "10680": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12899 - ], - "op": "DUP3", - "path": "84" - }, - "10681": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12917 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "10683": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12917 - ], - "op": "ADD", - "path": "84" - }, - "10684": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12917 - ], - "op": "MLOAD", - "path": "84" - }, - "10685": { - "branch": 419, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12885, - 12921 - ], - "op": "GT", - "path": "84" - }, - "10686": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29C6" - }, - "10689": { - "branch": 419, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "JUMPI", - "path": "84" - }, - "10690": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10692": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "DUP1", - "path": "84" - }, - "10693": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "REVERT", - "path": "84" - }, - "10694": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12877, - 12922 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10695": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12969, - 13004 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10697": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13021 - ], - "op": "DUP3", - "path": "84" - }, - "10698": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13034 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10700": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13034 - ], - "op": "ADD", - "path": "84" - }, - "10701": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13034 - ], - "op": "MLOAD", - "path": "84" - }, - "10702": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13035, - 13040 - ], - "op": "DUP3", - "path": "84" - }, - "10703": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "DUP2", - "path": "84" - }, - "10704": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "MLOAD", - "path": "84" - }, - "10705": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "DUP2", - "path": "84" - }, - "10706": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "LT", - "path": "84" - }, - "10707": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29D8" - }, - "10710": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "JUMPI", - "path": "84" - }, - "10711": { - "dev": "Index out of range", - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "INVALID", - "path": "84" - }, - "10712": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10713": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10715": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "MUL", - "path": "84" - }, - "10716": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10718": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "ADD", - "path": "84" - }, - "10719": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "ADD", - "path": "84" - }, - "10720": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13007, - 13041 - ], - "op": "MLOAD", - "path": "84" - }, - "10721": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12969, - 13041 - ], - "op": "SWAP1", - "path": "84" - }, - "10722": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 12969, - 13041 - ], - "op": "POP", - "path": "84" - }, - "10723": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13102, - 13126 - ], - "op": "PUSH1", - "path": "84", - "statement": 245, - "value": "0x2" - }, - "10725": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10727": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "DUP2", - "path": "84" - }, - "10728": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "GT", - "path": "84" - }, - "10729": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "ISZERO", - "path": "84" - }, - "10730": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29EF" - }, - "10733": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPI", - "path": "84" - }, - "10734": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "INVALID", - "path": "84" - }, - "10735": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10736": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13085 - ], - "op": "DUP2", - "path": "84" - }, - "10737": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13098 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10739": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13098 - ], - "op": "ADD", - "path": "84" - }, - "10740": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13098 - ], - "op": "MLOAD", - "path": "84" - }, - "10741": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10743": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "DUP2", - "path": "84" - }, - "10744": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "GT", - "path": "84" - }, - "10745": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "ISZERO", - "path": "84" - }, - "10746": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "PUSH2", - "path": "84", - "value": "0x29FF" - }, - "10749": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPI", - "path": "84" - }, - "10750": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "INVALID", - "path": "84" - }, - "10751": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10752": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "EQ", - "path": "84" - }, - "10753": { - "branch": 420, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13126 - ], - "op": "ISZERO", - "path": "84" - }, - "10754": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "DUP1", - "path": "84" - }, - "10755": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "ISZERO", - "path": "84" - }, - "10756": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A1D" - }, - "10759": { - "branch": 420, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "JUMPI", - "path": "84" - }, - "10760": { - "op": "POP" - }, - "10761": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13172, - 13204 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10763": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13155 - ], - "op": "DUP2", - "path": "84" - }, - "10764": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13168 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10766": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13168 - ], - "op": "ADD", - "path": "84" - }, - "10767": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13168 - ], - "op": "MLOAD", - "path": "84" - }, - "10768": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10770": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "DUP2", - "path": "84" - }, - "10771": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "GT", - "path": "84" - }, - "10772": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "ISZERO", - "path": "84" - }, - "10773": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A1A" - }, - "10776": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "JUMPI", - "path": "84" - }, - "10777": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "INVALID", - "path": "84" - }, - "10778": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10779": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "EQ", - "path": "84" - }, - "10780": { - "branch": 421, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13142, - 13204 - ], - "op": "ISZERO", - "path": "84" - }, - "10781": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13072, - 13204 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10782": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A26" - }, - "10785": { - "branch": 421, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "JUMPI", - "path": "84" - }, - "10786": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10788": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "DUP1", - "path": "84" - }, - "10789": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "REVERT", - "path": "84" - }, - "10790": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13051, - 13214 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10791": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13285 - ], - "op": "PUSH1", - "path": "84", - "statement": 246, - "value": "0x60" - }, - "10793": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13285 - ], - "op": "DUP4", - "path": "84" - }, - "10794": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13285 - ], - "op": "ADD", - "path": "84" - }, - "10795": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "DUP1", - "path": "84" - }, - "10796": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "MLOAD", - "path": "84" - }, - "10797": { - "op": "PUSH1", - "value": "0x0" - }, - "10799": { - "op": "NOT" - }, - "10800": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "ADD", - "path": "84" - }, - "10801": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "SWAP1", - "path": "84" - }, - "10802": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13253, - 13290 - ], - "op": "MSTORE", - "path": "84" - }, - "10803": { - "op": "PUSH1", - "value": "0x0" - }, - "10805": { - "op": "DUP1" - }, - "10806": { - "op": "DUP1" - }, - "10807": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10808": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13551, - 13578 - ], - "op": "DUP6", - "path": "84" - }, - "10809": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13551, - 13578 - ], - "op": "MLOAD", - "path": "84" - }, - "10810": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13551, - 13585 - ], - "op": "MLOAD", - "path": "84" - }, - "10811": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13547, - 13585 - ], - "op": "DUP2", - "path": "84" - }, - "10812": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13547, - 13585 - ], - "op": "LT", - "path": "84" - }, - "10813": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "ISZERO", - "path": "84" - }, - "10814": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A99" - }, - "10817": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMPI", - "path": "84" - }, - "10818": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13606, - 13629 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10820": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13646 - ], - "op": "DUP7", - "path": "84" - }, - "10821": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13659 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10823": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13659 - ], - "op": "ADD", - "path": "84" - }, - "10824": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13659 - ], - "op": "MLOAD", - "path": "84" - }, - "10825": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13660, - 13661 - ], - "op": "DUP3", - "path": "84" - }, - "10826": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "DUP2", - "path": "84" - }, - "10827": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "MLOAD", - "path": "84" - }, - "10828": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "DUP2", - "path": "84" - }, - "10829": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "LT", - "path": "84" - }, - "10830": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A53" - }, - "10833": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "JUMPI", - "path": "84" - }, - "10834": { - "dev": "Index out of range", - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "INVALID", - "path": "84" - }, - "10835": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10836": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10838": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "MUL", - "path": "84" - }, - "10839": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10841": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "ADD", - "path": "84" - }, - "10842": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "ADD", - "path": "84" - }, - "10843": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13632, - 13662 - ], - "op": "MLOAD", - "path": "84" - }, - "10844": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13606, - 13662 - ], - "op": "SWAP1", - "path": "84" - }, - "10845": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13606, - 13662 - ], - "op": "POP", - "path": "84" - }, - "10846": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13696, - 13709 - ], - "op": "DUP3", - "path": "84" - }, - "10847": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13681 - ], - "op": "DUP2", - "path": "84" - }, - "10848": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13693 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "10850": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13693 - ], - "op": "ADD", - "path": "84" - }, - "10851": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13693 - ], - "op": "MLOAD", - "path": "84" - }, - "10852": { - "branch": 422, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13709 - ], - "op": "GT", - "path": "84" - }, - "10853": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "DUP1", - "path": "84" - }, - "10854": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "ISZERO", - "path": "84" - }, - "10855": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A80" - }, - "10858": { - "branch": 422, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "JUMPI", - "path": "84" - }, - "10859": { - "op": "POP" - }, - "10860": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13731, - 13755 - ], - "op": "PUSH1", - "path": "84", - "value": "0x2" - }, - "10862": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13714 - ], - "op": "DUP2", - "path": "84" - }, - "10863": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13727 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10865": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13727 - ], - "op": "ADD", - "path": "84" - }, - "10866": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13727 - ], - "op": "MLOAD", - "path": "84" - }, - "10867": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "PUSH1", - "path": "84", - "value": "0x3" - }, - "10869": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "DUP2", - "path": "84" - }, - "10870": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "GT", - "path": "84" - }, - "10871": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "ISZERO", - "path": "84" - }, - "10872": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A7D" - }, - "10875": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "JUMPI", - "path": "84" - }, - "10876": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "INVALID", - "path": "84" - }, - "10877": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10878": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "EQ", - "path": "84" - }, - "10879": { - "branch": 423, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13713, - 13755 - ], - "op": "ISZERO", - "path": "84" - }, - "10880": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13680, - 13755 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10881": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "ISZERO", - "path": "84" - }, - "10882": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A90" - }, - "10885": { - "branch": 423, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "JUMPI", - "path": "84" - }, - "10886": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13792 - ], - "op": "DUP1", - "path": "84", - "statement": 247 - }, - "10887": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13804 - ], - "op": "PUSH1", - "path": "84", - "value": "0x80" - }, - "10889": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13804 - ], - "op": "ADD", - "path": "84" - }, - "10890": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13791, - 13804 - ], - "op": "MLOAD", - "path": "84" - }, - "10891": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13775, - 13804 - ], - "op": "SWAP3", - "path": "84" - }, - "10892": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13775, - 13804 - ], - "op": "POP", - "path": "84" - }, - "10893": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13843, - 13844 - ], - "op": "DUP2", - "path": "84", - "statement": 248 - }, - "10894": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13822, - 13844 - ], - "op": "SWAP4", - "path": "84" - }, - "10895": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13822, - 13844 - ], - "op": "POP", - "path": "84" - }, - "10896": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13676, - 13859 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10897": { - "op": "POP" - }, - "10898": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13587, - 13590 - ], - "op": "PUSH1", - "path": "84", - "statement": 249, - "value": "0x1" - }, - "10900": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13587, - 13590 - ], - "op": "ADD", - "path": "84" - }, - "10901": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2A37" - }, - "10904": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMP", - "path": "84" - }, - "10905": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10906": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13531, - 13869 - ], - "op": "POP", - "path": "84" - }, - "10907": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13892, - 13910 - ], - "op": "DUP2", - "path": "84" - }, - "10908": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13883, - 13888 - ], - "op": "DUP5", - "path": "84" - }, - "10909": { - "branch": 424, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13883, - 13910 - ], - "op": "EQ", - "path": "84" - }, - "10910": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "ISZERO", - "path": "84" - }, - "10911": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AB2" - }, - "10914": { - "branch": 424, - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "JUMPI", - "path": "84" - }, - "10915": { - "op": "POP" - }, - "10916": { - "op": "POP" - }, - "10917": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14060, - 14084 - ], - "op": "PUSH1", - "path": "84", - "statement": 250, - "value": "0x2" - }, - "10919": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10921": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "SWAP2", - "path": "84" - }, - "10922": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "SWAP1", - "path": "84" - }, - "10923": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "SWAP2", - "path": "84" - }, - "10924": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14057 - ], - "op": "ADD", - "path": "84" - }, - "10925": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14031, - 14084 - ], - "op": "MSTORE", - "path": "84" - }, - "10926": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14098, - 14105 - ], - "op": "PUSH2", - "path": "84", - "statement": 251, - "value": "0xC7A" - }, - "10929": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14098, - 14105 - ], - "op": "JUMP", - "path": "84" - }, - "10930": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 13879, - 14115 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10931": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14328, - 14361 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10933": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14378 - ], - "op": "DUP6", - "path": "84" - }, - "10934": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14391 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "10936": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14391 - ], - "op": "ADD", - "path": "84" - }, - "10937": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14391 - ], - "op": "MLOAD", - "path": "84" - }, - "10938": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14392, - 14410 - ], - "op": "DUP4", - "path": "84" - }, - "10939": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "DUP2", - "path": "84" - }, - "10940": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "MLOAD", - "path": "84" - }, - "10941": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "DUP2", - "path": "84" - }, - "10942": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "LT", - "path": "84" - }, - "10943": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2AC4" - }, - "10946": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "JUMPI", - "path": "84" - }, - "10947": { - "dev": "Index out of range", - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "INVALID", - "path": "84" - }, - "10948": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10949": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "10951": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP1", - "path": "84" - }, - "10952": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "DUP2", - "path": "84" - }, - "10953": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "MUL", - "path": "84" - }, - "10954": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP2", - "path": "84" - }, - "10955": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP1", - "path": "84" - }, - "10956": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "SWAP2", - "path": "84" - }, - "10957": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "ADD", - "path": "84" - }, - "10958": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "ADD", - "path": "84" - }, - "10959": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14364, - 14411 - ], - "op": "MLOAD", - "path": "84" - }, - "10960": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "PUSH1", - "path": "84", - "statement": 252, - "value": "0x80" - }, - "10962": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "DUP6", - "path": "84" - }, - "10963": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "DUP2", - "path": "84" - }, - "10964": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "ADD", - "path": "84" - }, - "10965": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "DUP1", - "path": "84" - }, - "10966": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14524, - 14549 - ], - "op": "MLOAD", - "path": "84" - }, - "10967": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "SWAP2", - "path": "84" - }, - "10968": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "DUP4", - "path": "84" - }, - "10969": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "ADD", - "path": "84" - }, - "10970": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "DUP1", - "path": "84" - }, - "10971": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14563, - 14586 - ], - "op": "MLOAD", - "path": "84" - }, - "10972": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "SWAP1", - "path": "84" - }, - "10973": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "SWAP2", - "path": "84" - }, - "10974": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "MSTORE", - "path": "84" - }, - "10975": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14421, - 14596 - ], - "op": "MSTORE", - "path": "84" - }, - "10976": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14633, - 14657 - ], - "op": "PUSH1", - "path": "84", - "statement": 253, - "value": "0x1" - }, - "10978": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA0" - }, - "10980": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "SWAP2", - "path": "84" - }, - "10981": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "DUP3", - "path": "84" - }, - "10982": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14630 - ], - "op": "ADD", - "path": "84" - }, - "10983": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14606, - 14657 - ], - "op": "MSTORE", - "path": "84" - }, - "10984": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14696, - 14720 - ], - "op": "PUSH1", - "path": "84", - "statement": 254, - "value": "0x2" - }, - "10986": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14693 - ], - "op": "SWAP5", - "path": "84" - }, - "10987": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14693 - ], - "op": "ADD", - "path": "84" - }, - "10988": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "SWAP4", - "path": "84" - }, - "10989": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "SWAP1", - "path": "84" - }, - "10990": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "SWAP4", - "path": "84" - }, - "10991": { - "fn": "PortfolioHandler.deleteAsset", - "offset": [ - 14667, - 14720 - ], - "op": "MSTORE", - "path": "84" - }, - "10992": { - "op": "POP" - }, - "10993": { - "op": "POP" - }, - "10994": { - "op": "POP" - }, - "10995": { - "op": "POP" - }, - "10996": { - "op": "POP" - }, - "10997": { - "fn": "PortfolioHandler.deleteAsset", - "jump": "o", - "offset": [ - 12689, - 14727 - ], - "op": "JUMP", - "path": "84" - }, - "10998": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11592, - 12454 - ], - "op": "JUMPDEST", - "path": "84" - }, - "10999": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11739, - 11755 - ], - "op": "DUP2", - "path": "84", - "statement": 255 - }, - "11000": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11739, - 11755 - ], - "op": "MLOAD", - "path": "84" - }, - "11001": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "ISZERO", - "path": "84" - }, - "11002": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "DUP1", - "path": "84" - }, - "11003": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "ISZERO", - "path": "84" - }, - "11004": { - "branch": 425, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11755 - ], - "op": "SWAP1", - "path": "84" - }, - "11005": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11803 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B09" - }, - "11008": { - "branch": 425, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11803 - ], - "op": "JUMPI", - "path": "84" - }, - "11009": { - "op": "POP" - }, - "11010": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11759, - 11775 - ], - "op": "DUP2", - "path": "84" - }, - "11011": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11759, - 11775 - ], - "op": "MLOAD", - "path": "84" - }, - "11012": { - "offset": [ - 5408, - 5414 - ], - "op": "PUSH2", - "path": "60", - "value": "0x3FFF" - }, - "11015": { - "op": "LT" - }, - "11016": { - "branch": 426, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11759, - 11803 - ], - "op": "ISZERO", - "path": "84" - }, - "11017": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11735, - 11803 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11018": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B12" - }, - "11021": { - "branch": 426, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "JUMPI", - "path": "84" - }, - "11022": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11024": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "DUP1", - "path": "84" - }, - "11025": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "REVERT", - "path": "84" - }, - "11026": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11727, - 11804 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11027": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11873 - ], - "op": "DUP2", - "path": "84", - "statement": 256 - }, - "11028": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11882 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11030": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11882 - ], - "op": "ADD", - "path": "84" - }, - "11031": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11868, - 11882 - ], - "op": "MLOAD", - "path": "84" - }, - "11032": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11865 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11034": { - "branch": 427, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11882 - ], - "op": "LT", - "path": "84" - }, - "11035": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "DUP1", - "path": "84" - }, - "11036": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "ISZERO", - "path": "84" - }, - "11037": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B2F" - }, - "11040": { - "branch": 427, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "JUMPI", - "path": "84" - }, - "11041": { - "op": "POP" - }, - "11042": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "PUSH1", - "path": "84", - "value": "0x20" - }, - "11044": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "DUP3", - "path": "84" - }, - "11045": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "ADD", - "path": "84" - }, - "11046": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11900 - ], - "op": "MLOAD", - "path": "84" - }, - "11047": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11904, - 11920 - ], - "op": "PUSH5", - "path": "84", - "value": "0xFFFFFFFFFF" - }, - "11053": { - "op": "LT" - }, - "11054": { - "branch": 428, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11886, - 11920 - ], - "op": "ISZERO", - "path": "84" - }, - "11055": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11864, - 11920 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11056": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B38" - }, - "11059": { - "branch": 428, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "JUMPI", - "path": "84" - }, - "11060": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11062": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "DUP1", - "path": "84" - }, - "11063": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "REVERT", - "path": "84" - }, - "11064": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11856, - 11921 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11065": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11987 - ], - "op": "DUP2", - "path": "84", - "statement": 257 - }, - "11066": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11997 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "11068": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11997 - ], - "op": "ADD", - "path": "84" - }, - "11069": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11982, - 11997 - ], - "op": "MLOAD", - "path": "84" - }, - "11070": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 11979 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11072": { - "branch": 429, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 11997 - ], - "op": "LT", - "path": "84" - }, - "11073": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "DUP1", - "path": "84" - }, - "11074": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "ISZERO", - "path": "84" - }, - "11075": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B51" - }, - "11078": { - "branch": 429, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "JUMPI", - "path": "84" - }, - "11079": { - "op": "POP" - }, - "11080": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "PUSH1", - "path": "84", - "value": "0x40" - }, - "11082": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "DUP3", - "path": "84" - }, - "11083": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "ADD", - "path": "84" - }, - "11084": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12016 - ], - "op": "MLOAD", - "path": "84" - }, - "11085": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "11087": { - "op": "LT" - }, - "11088": { - "branch": 430, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12001, - 12055 - ], - "op": "ISZERO", - "path": "84" - }, - "11089": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11978, - 12055 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11090": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B5A" - }, - "11093": { - "branch": 430, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "JUMPI", - "path": "84" - }, - "11094": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11096": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "DUP1", - "path": "84" - }, - "11097": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "REVERT", - "path": "84" - }, - "11098": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 11970, - 12056 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11099": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "PUSH1", - "path": "84", - "statement": 258, - "value": "0x60" - }, - "11101": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "DUP3", - "path": "84" - }, - "11102": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "ADD", - "path": "84" - }, - "11103": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12127, - 12141 - ], - "op": "MLOAD", - "path": "84" - }, - "11104": { - "op": "PUSH11", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "11116": { - "op": "NOT" - }, - "11117": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "SGT", - "path": "84" - }, - "11118": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "DUP1", - "path": "84" - }, - "11119": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "ISZERO", - "path": "84" - }, - "11120": { - "branch": 431, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12141 - ], - "op": "SWAP1", - "path": "84" - }, - "11121": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12178 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B89" - }, - "11124": { - "branch": 431, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12178 - ], - "op": "JUMPI", - "path": "84" - }, - "11125": { - "op": "POP" - }, - "11126": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "11128": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "DUP3", - "path": "84" - }, - "11129": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "ADD", - "path": "84" - }, - "11130": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12159 - ], - "op": "MLOAD", - "path": "84" - }, - "11131": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12163, - 12178 - ], - "op": "PUSH11", - "path": "84", - "value": "0x7FFFFFFFFFFFFFFFFFFFFF" - }, - "11143": { - "op": "SLT" - }, - "11144": { - "branch": 432, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12145, - 12178 - ], - "op": "ISZERO", - "path": "84" - }, - "11145": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12108, - 12178 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11146": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2B92" - }, - "11149": { - "branch": 432, - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "JUMPI", - "path": "84" - }, - "11150": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11152": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "DUP1", - "path": "84" - }, - "11153": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "REVERT", - "path": "84" - }, - "11154": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12100, - 12179 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11155": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12262, - 12278 - ], - "op": "DUP2", - "path": "84", - "statement": 259 - }, - "11156": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12262, - 12278 - ], - "op": "MLOAD", - "path": "84" - }, - "11157": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "DUP2", - "path": "84" - }, - "11158": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SLOAD", - "path": "84" - }, - "11159": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "PUSH1", - "path": "84", - "statement": 260, - "value": "0x20" - }, - "11161": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "DUP5", - "path": "84" - }, - "11162": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "ADD", - "path": "84" - }, - "11163": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12320, - 12334 - ], - "op": "MLOAD", - "path": "84" - }, - "11164": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "PUSH1", - "path": "84", - "statement": 261, - "value": "0x40" - }, - "11166": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "DUP6", - "path": "84" - }, - "11167": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "ADD", - "path": "84" - }, - "11168": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12376, - 12391 - ], - "op": "MLOAD", - "path": "84" - }, - "11169": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "PUSH1", - "path": "84", - "statement": 262, - "value": "0x60" - }, - "11171": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "SWAP1", - "path": "84" - }, - "11172": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "SWAP6", - "path": "84" - }, - "11173": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "ADD", - "path": "84" - }, - "11174": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12432, - 12446 - ], - "op": "MLOAD", - "path": "84" - }, - "11175": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "PUSH1", - "path": "84", - "value": "0xA" - }, - "11177": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SIGNEXTEND", - "path": "84" - }, - "11178": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "PUSH11", - "path": "84", - "value": "0xFFFFFFFFFFFFFFFFFFFFFF" - }, - "11190": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "AND", - "path": "84" - }, - "11191": { - "op": "PUSH1", - "value": "0x1" - }, - "11193": { - "op": "PUSH1", - "value": "0x40" - }, - "11195": { - "op": "SHL" - }, - "11196": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "MUL", - "path": "84" - }, - "11197": { - "op": "PUSH19", - "value": "0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000" - }, - "11217": { - "op": "NOT" - }, - "11218": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "PUSH1", - "path": "84", - "value": "0xFF" - }, - "11220": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP1", - "path": "84" - }, - "11221": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP7", - "path": "84" - }, - "11222": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "AND", - "path": "84" - }, - "11223": { - "op": "PUSH1", - "value": "0x1" - }, - "11225": { - "op": "PUSH1", - "value": "0x38" - }, - "11227": { - "op": "SHL" - }, - "11228": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "MUL", - "path": "84" - }, - "11229": { - "op": "PUSH8", - "value": "0xFF00000000000000" - }, - "11238": { - "op": "NOT" - }, - "11239": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "PUSH5", - "path": "84", - "value": "0xFFFFFFFFFF" - }, - "11245": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP1", - "path": "84" - }, - "11246": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP4", - "path": "84" - }, - "11247": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "AND", - "path": "84" - }, - "11248": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "PUSH3", - "path": "84", - "value": "0x10000" - }, - "11252": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "MUL", - "path": "84" - }, - "11253": { - "op": "PUSH7", - "value": "0xFFFFFFFFFF0000" - }, - "11261": { - "op": "NOT" - }, - "11262": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "PUSH2", - "path": "84", - "value": "0xFFFF" - }, - "11265": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP1", - "path": "84" - }, - "11266": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP7", - "path": "84" - }, - "11267": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "AND", - "path": "84" - }, - "11268": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "11271": { - "op": "NOT" - }, - "11272": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP1", - "path": "84" - }, - "11273": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP6", - "path": "84" - }, - "11274": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "AND", - "path": "84" - }, - "11275": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP5", - "path": "84" - }, - "11276": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP1", - "path": "84" - }, - "11277": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "SWAP5", - "path": "84" - }, - "11278": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12229, - 12279 - ], - "op": "OR", - "path": "84" - }, - "11279": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP5", - "path": "84" - }, - "11280": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP1", - "path": "84" - }, - "11281": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP5", - "path": "84" - }, - "11282": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "AND", - "path": "84" - }, - "11283": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP3", - "path": "84" - }, - "11284": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP1", - "path": "84" - }, - "11285": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "SWAP3", - "path": "84" - }, - "11286": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12289, - 12335 - ], - "op": "OR", - "path": "84" - }, - "11287": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "AND", - "path": "84" - }, - "11288": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP2", - "path": "84" - }, - "11289": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP1", - "path": "84" - }, - "11290": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "SWAP2", - "path": "84" - }, - "11291": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12345, - 12392 - ], - "op": "OR", - "path": "84" - }, - "11292": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP3", - "path": "84" - }, - "11293": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP1", - "path": "84" - }, - "11294": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP3", - "path": "84" - }, - "11295": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "AND", - "path": "84" - }, - "11296": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP2", - "path": "84" - }, - "11297": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP1", - "path": "84" - }, - "11298": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP2", - "path": "84" - }, - "11299": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "OR", - "path": "84" - }, - "11300": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SWAP1", - "path": "84" - }, - "11301": { - "fn": "PortfolioHandler._storeAsset", - "offset": [ - 12402, - 12447 - ], - "op": "SSTORE", - "path": "84" - }, - "11302": { - "fn": "PortfolioHandler._storeAsset", - "jump": "o", - "offset": [ - 11592, - 12454 - ], - "op": "JUMP", - "path": "84" - }, - "11303": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10664, - 11546 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11304": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10896, - 10900 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11306": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10914, - 10921 - ], - "op": "DUP1", - "path": "84" - }, - "11307": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10935, - 10942 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11309": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10967, - 10989 - ], - "op": "DUP1", - "path": "84" - }, - "11310": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 11017 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C36" - }, - "11313": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 10997 - ], - "op": "DUP9", - "path": "84" - }, - "11314": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 11015 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2D67" - }, - "11317": { - "fn": "PortfolioHandler._updatePortfolioContext", - "jump": "i", - "offset": [ - 10992, - 11017 - ], - "op": "JUMP", - "path": "84" - }, - "11318": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10992, - 11017 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11319": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 10967, - 11017 - ], - "op": "SWAP1", - "path": "84" - }, - "11320": { - "op": "POP" - }, - "11321": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11108 - ], - "op": "DUP5", - "path": "84" - }, - "11322": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11108 - ], - "op": "ISZERO", - "path": "84" - }, - "11323": { - "branch": 433, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11108 - ], - "op": "DUP1", - "path": "84" - }, - "11324": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C44" - }, - "11327": { - "branch": 433, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "JUMPI", - "path": "84" - }, - "11328": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "POP", - "path": "84" - }, - "11329": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11129, - 11143 - ], - "op": "DUP1", - "path": "84" - }, - "11330": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11112, - 11126 - ], - "op": "DUP6", - "path": "84" - }, - "11331": { - "branch": 434, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11112, - 11143 - ], - "op": "GT", - "path": "84" - }, - "11332": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11089, - 11143 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11333": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "ISZERO", - "path": "84" - }, - "11334": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C4D" - }, - "11337": { - "branch": 434, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "JUMPI", - "path": "84" - }, - "11338": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11176, - 11190 - ], - "op": "DUP1", - "path": "84", - "statement": 263 - }, - "11339": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11159, - 11190 - ], - "op": "SWAP5", - "path": "84" - }, - "11340": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11159, - 11190 - ], - "op": "POP", - "path": "84" - }, - "11341": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11085, - 11201 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11342": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11227 - ], - "op": "DUP7", - "path": "84", - "statement": 264 - }, - "11343": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "DUP1", - "path": "84" - }, - "11344": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C5D" - }, - "11347": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "JUMPI", - "path": "84" - }, - "11348": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "POP", - "path": "84" - }, - "11349": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11248, - 11249 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11351": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11236 - ], - "op": "DUP9", - "path": "84" - }, - "11352": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11245 - ], - "op": "PUSH1", - "path": "84", - "value": "0x60" - }, - "11354": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11245 - ], - "op": "ADD", - "path": "84" - }, - "11355": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11245 - ], - "op": "MLOAD", - "path": "84" - }, - "11356": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11231, - 11249 - ], - "op": "SLT", - "path": "84" - }, - "11357": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11220, - 11249 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11358": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11210, - 11249 - ], - "op": "SWAP7", - "path": "84" - }, - "11359": { - "op": "POP" - }, - "11360": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "PUSH2", - "path": "84", - "statement": 265, - "value": "0xFFFF" - }, - "11363": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "DUP7", - "path": "84" - }, - "11364": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "AND", - "path": "84" - }, - "11365": { - "branch": 435, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11268, - 11315 - ], - "op": "ISZERO", - "path": "84" - }, - "11366": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "PUSH2", - "path": "84", - "value": "0x2C6E" - }, - "11369": { - "branch": 435, - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "JUMPI", - "path": "84" - }, - "11370": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "PUSH1", - "path": "84", - "value": "0x0" - }, - "11372": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "DUP1", - "path": "84" - }, - "11373": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "REVERT", - "path": "84" - }, - "11374": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11260, - 11316 - ], - "op": "JUMPDEST", - "path": "84" - }, - "11375": { - "op": "POP" - }, - "11376": { - "op": "POP" - }, - "11377": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11444, - 11460 - ], - "op": "SWAP5", - "path": "84", - "statement": 266 - }, - "11378": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11444, - 11460 - ], - "op": "MLOAD", - "path": "84" - }, - "11379": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11488, - 11495 - ], - "op": "SWAP4", - "path": "84", - "statement": 267 - }, - "11380": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11488, - 11495 - ], - "op": "SWAP6", - "path": "84" - }, - "11381": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11429, - 11431 - ], - "op": "PUSH1", - "path": "84", - "value": "0x10" - }, - "11383": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SWAP4", - "path": "84" - }, - "11384": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SWAP1", - "path": "84" - }, - "11385": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SWAP4", - "path": "84" - }, - "11386": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11400, - 11431 - ], - "op": "SHR", - "path": "84" - }, - "11387": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11465, - 11468 - ], - "op": "PUSH1", - "path": "84", - "value": "0xF0" - }, - "11389": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SWAP5", - "path": "84" - }, - "11390": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SWAP1", - "path": "84" - }, - "11391": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SWAP5", - "path": "84" - }, - "11392": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11436, - 11468 - ], - "op": "SHL", - "path": "84" - }, - "11393": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP4", - "path": "84" - }, - "11394": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP1", - "path": "84" - }, - "11395": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP4", - "path": "84" - }, - "11396": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "OR", - "path": "84" - }, - "11397": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11399, - 11469 - ], - "op": "SWAP4", - "path": "84" - }, - "11398": { - "op": "POP" - }, - "11399": { - "fn": "PortfolioHandler._updatePortfolioContext", - "offset": [ - 11524, - 11538 - ], - "op": "SWAP2", - "path": "84" - }, - "11400": { - "op": "POP" - }, - "11401": { - "fn": "PortfolioHandler._updatePortfolioContext", - "jump": "o", - "offset": [ - 10664, - 11546 - ], - "op": "JUMP", - "path": "84" - }, - "11402": { - "fn": "LibStorage.getAssetsBitmapStorage", - "offset": [ - 5315, - 5558 - ], - "op": "JUMPDEST", - "path": "62" - }, - "11403": { - "fn": "LibStorage.getAssetsBitmapStorage", - "offset": [ - 5380, - 5441 - ], - "op": "PUSH1", - "path": "62", - "value": "0x0" - }, - "11405": { - "fn": "LibStorage.getAssetsBitmapStorage", - "offset": [ - 5457, - 5469 - ], - "op": "DUP1", - "path": "62" - }, - "11406": { - "fn": "LibStorage.getAssetsBitmapStorage", - "offset": [ - 5472, - 5511 - ], - "op": "PUSH2", - "path": "62", - "value": "0x30C" - }, - "11409": { - "fn": "LibStorage.getAssetsBitmapStorage", - "offset": [ - 5488, - 5510 - ], - "op": "PUSH1", - "path": "62", - "value": "0xB" - }, - "11411": { - "fn": "LibStorage.getAssetsBitmapStorage", - "offset": [ - 5472, - 5487 - ], - "op": "PUSH2", - "path": "62", - "value": "0x1971" - }, - "11414": { - "fn": "LibStorage.getAssetsBitmapStorage", - "jump": "i", - "offset": [ - 5472, - 5511 - ], - "op": "JUMP", - "path": "62" - }, - "11415": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1013, - 1851 - ], - "op": "JUMPDEST", - "path": "92" - }, - "11416": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1215, - 1216 - ], - "op": "PUSH1", - "path": "92", - "statement": 268, - "value": "0x1" - }, - "11418": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1210, - 1216 - ], - "op": "DUP2", - "path": "92" - }, - "11419": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1210, - 1216 - ], - "op": "SWAP1", - "path": "92" - }, - "11420": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1210, - 1216 - ], - "op": "SHR", - "path": "92" - }, - "11421": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1219, - 1285 - ], - "op": "PUSH32", - "path": "92", - "value": "0x5555555555555555555555555555555555555555555555555555555555555555" - }, - "11454": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1210, - 1285 - ], - "op": "SWAP1", - "path": "92" - }, - "11455": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1210, - 1285 - ], - "op": "DUP2", - "path": "92" - }, - "11456": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1210, - 1285 - ], - "op": "AND", - "path": "92" - }, - "11457": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1135, - 1205 - ], - "op": "SWAP2", - "path": "92" - }, - "11458": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1135, - 1205 - ], - "op": "AND", - "path": "92" - }, - "11459": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1134, - 1286 - ], - "op": "ADD", - "path": "92" - }, - "11460": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1381, - 1382 - ], - "op": "PUSH1", - "path": "92", - "statement": 269, - "value": "0x2" - }, - "11462": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1376, - 1382 - ], - "op": "DUP2", - "path": "92" - }, - "11463": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1376, - 1382 - ], - "op": "SWAP1", - "path": "92" - }, - "11464": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1376, - 1382 - ], - "op": "SHR", - "path": "92" - }, - "11465": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1385, - 1451 - ], - "op": "PUSH32", - "path": "92", - "value": "0x3333333333333333333333333333333333333333333333333333333333333333" - }, - "11498": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1376, - 1451 - ], - "op": "SWAP1", - "path": "92" - }, - "11499": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1376, - 1451 - ], - "op": "DUP2", - "path": "92" - }, - "11500": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1376, - 1451 - ], - "op": "AND", - "path": "92" - }, - "11501": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1301, - 1371 - ], - "op": "SWAP2", - "path": "92" - }, - "11502": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1301, - 1371 - ], - "op": "AND", - "path": "92" - }, - "11503": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1300, - 1452 - ], - "op": "ADD", - "path": "92" - }, - "11504": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1547, - 1548 - ], - "op": "PUSH1", - "path": "92", - "statement": 270, - "value": "0x4" - }, - "11506": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1542, - 1548 - ], - "op": "DUP2", - "path": "92" - }, - "11507": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1542, - 1548 - ], - "op": "SWAP1", - "path": "92" - }, - "11508": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1542, - 1548 - ], - "op": "SHR", - "path": "92" - }, - "11509": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1471, - 1537 - ], - "op": "PUSH32", - "path": "92", - "value": "0x707070707070707070707070707070707070707070707070707070707070707" - }, - "11542": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1467, - 1537 - ], - "op": "SWAP2", - "path": "92" - }, - "11543": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1467, - 1537 - ], - "op": "SWAP1", - "path": "92" - }, - "11544": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1467, - 1537 - ], - "op": "SWAP2", - "path": "92" - }, - "11545": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1467, - 1537 - ], - "op": "AND", - "path": "92" - }, - "11546": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1466, - 1549 - ], - "op": "ADD", - "path": "92" - }, - "11547": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1644, - 1645 - ], - "op": "PUSH1", - "path": "92", - "statement": 271, - "value": "0x8" - }, - "11549": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1639, - 1645 - ], - "op": "DUP2", - "path": "92" - }, - "11550": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1639, - 1645 - ], - "op": "SWAP1", - "path": "92" - }, - "11551": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1639, - 1645 - ], - "op": "SHR", - "path": "92" - }, - "11552": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1648, - 1714 - ], - "op": "PUSH31", - "path": "92", - "value": "0xF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F" - }, - "11584": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1639, - 1714 - ], - "op": "SWAP1", - "path": "92" - }, - "11585": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1639, - 1714 - ], - "op": "DUP2", - "path": "92" - }, - "11586": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1639, - 1714 - ], - "op": "AND", - "path": "92" - }, - "11587": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1564, - 1634 - ], - "op": "SWAP2", - "path": "92" - }, - "11588": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1564, - 1634 - ], - "op": "AND", - "path": "92" - }, - "11589": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1563, - 1715 - ], - "op": "ADD", - "path": "92" - }, - "11590": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1739, - 1741 - ], - "op": "PUSH1", - "path": "92", - "statement": 272, - "value": "0x10" - }, - "11592": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1734, - 1741 - ], - "op": "DUP2", - "path": "92" - }, - "11593": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1734, - 1741 - ], - "op": "SWAP1", - "path": "92" - }, - "11594": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1734, - 1741 - ], - "op": "SHR", - "path": "92" - }, - "11595": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1729, - 1742 - ], - "op": "ADD", - "path": "92" - }, - "11596": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1766, - 1768 - ], - "op": "PUSH1", - "path": "92", - "statement": 273, - "value": "0x20" - }, - "11598": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1761, - 1768 - ], - "op": "DUP2", - "path": "92" - }, - "11599": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1761, - 1768 - ], - "op": "SWAP1", - "path": "92" - }, - "11600": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1761, - 1768 - ], - "op": "SHR", - "path": "92" - }, - "11601": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1756, - 1769 - ], - "op": "ADD", - "path": "92" - }, - "11602": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1794, - 1796 - ], - "op": "PUSH1", - "path": "92", - "statement": 274, - "value": "0x40" - }, - "11604": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1789, - 1796 - ], - "op": "DUP2", - "path": "92" - }, - "11605": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1789, - 1796 - ], - "op": "SWAP1", - "path": "92" - }, - "11606": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1789, - 1796 - ], - "op": "SHR", - "path": "92" - }, - "11607": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1783, - 1797 - ], - "op": "ADD", - "path": "92" - }, - "11608": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1833, - 1836 - ], - "op": "PUSH1", - "path": "92", - "statement": 275, - "value": "0x80" - }, - "11610": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1828, - 1836 - ], - "op": "DUP2", - "path": "92" - }, - "11611": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1828, - 1836 - ], - "op": "SWAP1", - "path": "92" - }, - "11612": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1828, - 1836 - ], - "op": "SHR", - "path": "92" - }, - "11613": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1839, - 1843 - ], - "op": "PUSH1", - "path": "92", - "value": "0xFF" - }, - "11615": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1828, - 1843 - ], - "op": "SWAP1", - "path": "92" - }, - "11616": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1828, - 1843 - ], - "op": "DUP2", - "path": "92" - }, - "11617": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1828, - 1843 - ], - "op": "AND", - "path": "92" - }, - "11618": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1815, - 1823 - ], - "op": "SWAP2", - "path": "92" - }, - "11619": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1815, - 1823 - ], - "op": "AND", - "path": "92" - }, - "11620": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1814, - 1844 - ], - "op": "ADD", - "path": "92" - }, - "11621": { - "fn": "Bitmap.totalBitsSet", - "offset": [ - 1814, - 1844 - ], - "op": "SWAP1", - "path": "92" - }, - "11622": { - "fn": "Bitmap.totalBitsSet", - "jump": "o", - "offset": [ - 1013, - 1851 - ], - "op": "JUMP", - "path": "92" - }, - "11623": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1006, - 1758 - ], - "op": "JUMPDEST", - "path": "88" - }, - "11624": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1085, - 1092 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "11626": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1130, - 1131 - ], - "op": "DUP1", - "path": "88", - "statement": 276 - }, - "11627": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1117 - ], - "op": "DUP3", - "path": "88" - }, - "11628": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1127 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "11630": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1127 - ], - "op": "ADD", - "path": "88" - }, - "11631": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1127 - ], - "op": "MLOAD", - "path": "88" - }, - "11632": { - "branch": 350, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1131 - ], - "op": "GT", - "path": "88" - }, - "11633": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "DUP1", - "path": "88" - }, - "11634": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "ISZERO", - "path": "88" - }, - "11635": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "PUSH2", - "path": "88", - "value": "0x2D81" - }, - "11638": { - "branch": 350, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "JUMPI", - "path": "88" - }, - "11639": { - "op": "POP" - }, - "11640": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "11642": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "DUP3", - "path": "88" - }, - "11643": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "ADD", - "path": "88" - }, - "11644": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1150 - ], - "op": "MLOAD", - "path": "88" - }, - "11645": { - "offset": [ - 4906, - 4907 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "11647": { - "op": "LT" - }, - "11648": { - "branch": 351, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1135, - 1189 - ], - "op": "ISZERO", - "path": "88" - }, - "11649": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1112, - 1189 - ], - "op": "JUMPDEST", - "path": "88" - }, - "11650": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "PUSH2", - "path": "88", - "value": "0x2D8A" - }, - "11653": { - "branch": 351, - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "JUMPI", - "path": "88" - }, - "11654": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "11656": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "DUP1", - "path": "88" - }, - "11657": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "REVERT", - "path": "88" - }, - "11658": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1104, - 1190 - ], - "op": "JUMPDEST", - "path": "88" - }, - "11659": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "11661": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "DUP3", - "path": "88" - }, - "11662": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "ADD", - "path": "88" - }, - "11663": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1309, - 1324 - ], - "op": "MLOAD", - "path": "88" - }, - "11664": { - "offset": [ - 4847, - 4848 - ], - "op": "PUSH1", - "path": "60", - "value": "0x2" - }, - "11666": { - "op": "LT" - }, - "11667": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1305, - 1386 - ], - "op": "PUSH2", - "path": "88", - "value": "0x2DA1" - }, - "11670": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1305, - 1386 - ], - "op": "JUMPI", - "path": "88" - }, - "11671": { - "op": "POP" - }, - "11672": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "PUSH1", - "path": "88", - "statement": 277, - "value": "0x20" - }, - "11674": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "DUP2", - "path": "88" - }, - "11675": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "ADD", - "path": "88" - }, - "11676": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1372, - 1386 - ], - "op": "MLOAD", - "path": "88" - }, - "11677": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1365, - 1386 - ], - "op": "PUSH2", - "path": "88", - "value": "0x327" - }, - "11680": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1365, - 1386 - ], - "op": "JUMP", - "path": "88" - }, - "11681": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1305, - 1386 - ], - "op": "JUMPDEST", - "path": "88" - }, - "11682": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1417 - ], - "op": "PUSH1", - "path": "88", - "value": "0x0" - }, - "11684": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1420, - 1465 - ], - "op": "PUSH2", - "path": "88", - "value": "0x2DB3" - }, - "11687": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1463, - 1464 - ], - "op": "PUSH1", - "path": "88", - "value": "0x1" - }, - "11689": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1450 - ], - "op": "DUP5", - "path": "88" - }, - "11690": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1460 - ], - "op": "PUSH1", - "path": "88", - "value": "0x40" - }, - "11692": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1460 - ], - "op": "ADD", - "path": "88" - }, - "11693": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1460 - ], - "op": "MLOAD", - "path": "88" - }, - "11694": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1445, - 1464 - ], - "op": "SUB", - "path": "88" - }, - "11695": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1420, - 1444 - ], - "op": "PUSH2", - "path": "88", - "value": "0x1D04" - }, - "11698": { - "fn": "AssetHandler.getSettlementDate", - "jump": "i", - "offset": [ - 1420, - 1465 - ], - "op": "JUMP", - "path": "88" - }, - "11699": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1420, - 1465 - ], - "op": "JUMPDEST", - "path": "88" - }, - "11700": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "PUSH1", - "path": "88", - "statement": 278, - "value": "0x20" - }, - "11702": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "DUP5", - "path": "88" - }, - "11703": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "ADD", - "path": "88" - }, - "11704": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1710 - ], - "op": "MLOAD", - "path": "88" - }, - "11705": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1465 - ], - "op": "SWAP1", - "path": "88" - }, - "11706": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1465 - ], - "op": "SWAP2", - "path": "88" - }, - "11707": { - "op": "POP" - }, - "11708": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1751 - ], - "op": "PUSH2", - "path": "88", - "value": "0x653" - }, - "11711": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1751 - ], - "op": "SWAP1", - "path": "88" - }, - "11712": { - "offset": [ - 2617, - 2626 - ], - "op": "PUSH3", - "path": "60", - "value": "0x76A700" - }, - "11716": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 2617, - 2626 - ], - "op": "SWAP1", - "path": "60" - }, - "11717": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1728 - ], - "op": "PUSH2", - "path": "88", - "value": "0x2DCE" - }, - "11720": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1728 - ], - "op": "SWAP1", - "path": "88" - }, - "11721": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1397, - 1465 - ], - "op": "DUP5", - "path": "88" - }, - "11722": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1714 - ], - "op": "PUSH2", - "path": "88", - "value": "0x2DD4" - }, - "11725": { - "fn": "AssetHandler.getSettlementDate", - "jump": "i", - "offset": [ - 1696, - 1728 - ], - "op": "JUMP", - "path": "88" - }, - "11726": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1728 - ], - "op": "JUMPDEST", - "path": "88" - }, - "11727": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1732 - ], - "op": "SWAP1", - "path": "88" - }, - "11728": { - "fn": "AssetHandler.getSettlementDate", - "offset": [ - 1696, - 1732 - ], - "op": "PUSH2", - "path": "88", - "value": "0x1DA8" - }, - "11731": { - "fn": "AssetHandler.getSettlementDate", - "jump": "i", - "offset": [ - 1696, - 1751 - ], - "op": "JUMP", - "path": "88" - }, - "11732": { - "fn": "SafeMath.sub", - "offset": [ - 3128, - 3283 - ], - "op": "JUMPDEST", - "path": "6" - }, - "11733": { - "fn": "SafeMath.sub", - "offset": [ - 3186, - 3193 - ], - "op": "PUSH1", - "path": "6", - "value": "0x0" - }, - "11735": { - "fn": "SafeMath.sub", - "offset": [ - 3218, - 3219 - ], - "op": "DUP3", - "path": "6", - "statement": 279 - }, - "11736": { - "fn": "SafeMath.sub", - "offset": [ - 3213, - 3214 - ], - "op": "DUP3", - "path": "6" - }, - "11737": { - "fn": "SafeMath.sub", - "offset": [ - 3213, - 3219 - ], - "op": "GT", - "path": "6" - }, - "11738": { - "branch": 445, - "fn": "SafeMath.sub", - "offset": [ - 3213, - 3219 - ], - "op": "ISZERO", - "path": "6" - }, - "11739": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH2", - "path": "6", - "value": "0x2E2B" - }, - "11742": { - "branch": 445, - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "JUMPI", - "path": "6" - }, - "11743": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x40" - }, - "11745": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP1", - "path": "6" - }, - "11746": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MLOAD", - "path": "6" - }, - "11747": { - "op": "PUSH3", - "value": "0x461BCD" - }, - "11751": { - "op": "PUSH1", - "value": "0xE5" - }, - "11753": { - "op": "SHL" - }, - "11754": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP2", - "path": "6" - }, - "11755": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "11756": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x20" - }, - "11758": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x4" - }, - "11760": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP3", - "path": "6" - }, - "11761": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "11762": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "11763": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x1E" - }, - "11765": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x24" - }, - "11767": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP3", - "path": "6" - }, - "11768": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "11769": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "11770": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH32", - "path": "6", - "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000" - }, - "11803": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x44" - }, - "11805": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP3", - "path": "6" - }, - "11806": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "11807": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MSTORE", - "path": "6" - }, - "11808": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "11809": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "MLOAD", - "path": "6" - }, - "11810": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "11811": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "DUP2", - "path": "6" - }, - "11812": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "11813": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SUB", - "path": "6" - }, - "11814": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "PUSH1", - "path": "6", - "value": "0x64" - }, - "11816": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "ADD", - "path": "6" - }, - "11817": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "SWAP1", - "path": "6" - }, - "11818": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "REVERT", - "path": "6" - }, - "11819": { - "fn": "SafeMath.sub", - "offset": [ - 3205, - 3254 - ], - "op": "JUMPDEST", - "path": "6" - }, - "11820": { - "op": "POP" - }, - "11821": { - "fn": "SafeMath.sub", - "offset": [ - 3271, - 3276 - ], - "op": "SWAP1", - "path": "6", - "statement": 280 - }, - "11822": { - "fn": "SafeMath.sub", - "offset": [ - 3271, - 3276 - ], - "op": "SUB", - "path": "6" - }, - "11823": { - "fn": "SafeMath.sub", - "offset": [ - 3271, - 3276 - ], - "op": "SWAP1", - "path": "6" - }, - "11824": { - "fn": "SafeMath.sub", - "jump": "o", - "offset": [ - 3128, - 3283 - ], - "op": "JUMP", - "path": "6" - }, - "11825": { - "op": "JUMPDEST" - }, - "11826": { - "op": "PUSH1", - "value": "0x40" - }, - "11828": { - "op": "DUP1" - }, - "11829": { - "op": "MLOAD" - }, - "11830": { - "op": "PUSH1", - "value": "0xA0" - }, - "11832": { - "op": "DUP2" - }, - "11833": { - "op": "ADD" - }, - "11834": { - "op": "DUP3" - }, - "11835": { - "op": "MSTORE" - }, - "11836": { - "op": "PUSH1", - "value": "0x0" - }, - "11838": { - "op": "DUP1" - }, - "11839": { - "op": "DUP3" - }, - "11840": { - "op": "MSTORE" - }, - "11841": { - "op": "PUSH1", - "value": "0x20" - }, - "11843": { - "op": "DUP3" - }, - "11844": { - "op": "ADD" - }, - "11845": { - "op": "DUP2" - }, - "11846": { - "op": "SWAP1" - }, - "11847": { - "op": "MSTORE" - }, - "11848": { - "op": "SWAP2" - }, - "11849": { - "op": "DUP2" - }, - "11850": { - "op": "ADD" - }, - "11851": { - "op": "DUP3" - }, - "11852": { - "op": "SWAP1" - }, - "11853": { - "op": "MSTORE" - }, - "11854": { - "op": "PUSH1", - "value": "0x60" - }, - "11856": { - "op": "DUP2" - }, - "11857": { - "op": "ADD" - }, - "11858": { - "op": "DUP3" - }, - "11859": { - "op": "SWAP1" - }, - "11860": { - "op": "MSTORE" - }, - "11861": { - "op": "PUSH1", - "value": "0x80" - }, - "11863": { - "op": "DUP2" - }, - "11864": { - "op": "ADD" - }, - "11865": { - "op": "SWAP2" - }, - "11866": { - "op": "SWAP1" - }, - "11867": { - "op": "SWAP2" - }, - "11868": { - "op": "MSTORE" - }, - "11869": { - "op": "SWAP1" - }, - "11870": { - "jump": "o", - "op": "JUMP" - }, - "11871": { - "op": "JUMPDEST" - }, - "11872": { - "op": "PUSH1", - "value": "0x40" - }, - "11874": { - "op": "MLOAD" - }, - "11875": { - "op": "DUP1" - }, - "11876": { - "op": "PUSH1", - "value": "0xC0" - }, - "11878": { - "op": "ADD" - }, - "11879": { - "op": "PUSH1", - "value": "0x40" - }, - "11881": { - "op": "MSTORE" - }, - "11882": { - "op": "DUP1" - }, - "11883": { - "op": "PUSH1", - "value": "0x0" - }, - "11885": { - "op": "DUP2" - }, - "11886": { - "op": "MSTORE" - }, - "11887": { - "op": "PUSH1", - "value": "0x20" - }, - "11889": { - "op": "ADD" - }, - "11890": { - "op": "PUSH1", - "value": "0x0" - }, - "11892": { - "op": "DUP2" - }, - "11893": { - "op": "MSTORE" - }, - "11894": { - "op": "PUSH1", - "value": "0x20" - }, - "11896": { - "op": "ADD" - }, - "11897": { - "op": "PUSH1", - "value": "0x0" - }, - "11899": { - "op": "DUP2" - }, - "11900": { - "op": "MSTORE" - }, - "11901": { - "op": "PUSH1", - "value": "0x20" - }, - "11903": { - "op": "ADD" - }, - "11904": { - "op": "PUSH1", - "value": "0x0" - }, - "11906": { - "op": "DUP2" - }, - "11907": { - "op": "MSTORE" - }, - "11908": { - "op": "PUSH1", - "value": "0x20" - }, - "11910": { - "op": "ADD" - }, - "11911": { - "op": "PUSH1", - "value": "0x0" - }, - "11913": { - "op": "DUP2" - }, - "11914": { - "op": "MSTORE" - }, - "11915": { - "op": "PUSH1", - "value": "0x20" - }, - "11917": { - "op": "ADD" - }, - "11918": { - "op": "PUSH1", - "value": "0x0" - }, - "11920": { - "op": "PUSH1", - "value": "0x3" - }, - "11922": { - "op": "DUP2" - }, - "11923": { - "op": "GT" - }, - "11924": { - "op": "ISZERO" - }, - "11925": { - "op": "PUSH2", - "value": "0x2E9A" - }, - "11928": { - "op": "JUMPI" - }, - "11929": { - "op": "INVALID" - }, - "11930": { - "op": "JUMPDEST" - }, - "11931": { - "op": "SWAP1" - }, - "11932": { - "op": "MSTORE" - }, - "11933": { - "op": "SWAP1" - }, - "11934": { - "jump": "o", - "op": "JUMP" - }, - "11935": { - "op": "JUMPDEST" - }, - "11936": { - "op": "PUSH1", - "value": "0x40" - }, - "11938": { - "op": "MLOAD" - }, - "11939": { - "op": "DUP1" - }, - "11940": { - "op": "PUSH1", - "value": "0x80" - }, - "11942": { - "op": "ADD" - }, - "11943": { - "op": "PUSH1", - "value": "0x40" - }, - "11945": { - "op": "MSTORE" - }, - "11946": { - "op": "DUP1" - }, - "11947": { - "op": "PUSH1", - "value": "0x60" - }, - "11949": { - "op": "DUP2" - }, - "11950": { - "op": "MSTORE" - }, - "11951": { - "op": "PUSH1", - "value": "0x20" - }, - "11953": { - "op": "ADD" - }, - "11954": { - "op": "PUSH1", - "value": "0x60" - }, - "11956": { - "op": "DUP2" - }, - "11957": { - "op": "MSTORE" - }, - "11958": { - "op": "PUSH1", - "value": "0x20" - }, - "11960": { - "op": "ADD" - }, - "11961": { - "op": "PUSH1", - "value": "0x0" - }, - "11963": { - "op": "DUP2" - }, - "11964": { - "op": "MSTORE" - }, - "11965": { - "op": "PUSH1", - "value": "0x20" - }, - "11967": { - "op": "ADD" - }, - "11968": { - "op": "PUSH1", - "value": "0x0" - }, - "11970": { - "op": "DUP2" - }, - "11971": { - "op": "MSTORE" - }, - "11972": { - "op": "POP" - }, - "11973": { - "op": "SWAP1" - }, - "11974": { - "jump": "o", - "op": "JUMP" - }, - "11975": { - "op": "JUMPDEST" - }, - "11976": { - "op": "PUSH1", - "value": "0x0" - }, - "11978": { - "op": "DUP1" - }, - "11979": { - "op": "DUP4" - }, - "11980": { - "op": "PUSH1", - "value": "0x1F" - }, - "11982": { - "op": "DUP5" - }, - "11983": { - "op": "ADD" - }, - "11984": { - "op": "SLT" - }, - "11985": { - "op": "PUSH2", - "value": "0x2ED8" - }, - "11988": { - "op": "JUMPI" - }, - "11989": { - "op": "DUP1" - }, - "11990": { - "op": "DUP2" - }, - "11991": { - "op": "REVERT" - }, - "11992": { - "op": "JUMPDEST" - }, - "11993": { - "op": "POP" - }, - "11994": { - "op": "DUP2" - }, - "11995": { - "op": "CALLDATALOAD" - }, - "11996": { - "op": "PUSH1", - "value": "0x1" - }, - "11998": { - "op": "PUSH1", - "value": "0x1" - }, - "12000": { - "op": "PUSH1", - "value": "0x40" - }, - "12002": { - "op": "SHL" - }, - "12003": { - "op": "SUB" - }, - "12004": { - "op": "DUP2" - }, - "12005": { - "op": "GT" - }, - "12006": { - "op": "ISZERO" - }, - "12007": { - "op": "PUSH2", - "value": "0x2EEE" - }, - "12010": { - "op": "JUMPI" - }, - "12011": { - "op": "DUP2" - }, - "12012": { - "op": "DUP3" - }, - "12013": { - "op": "REVERT" - }, - "12014": { - "op": "JUMPDEST" - }, - "12015": { - "op": "PUSH1", - "value": "0x20" - }, - "12017": { - "op": "DUP4" - }, - "12018": { - "op": "ADD" - }, - "12019": { - "op": "SWAP2" - }, - "12020": { - "op": "POP" - }, - "12021": { - "op": "DUP4" - }, - "12022": { - "op": "PUSH1", - "value": "0x20" - }, - "12024": { - "op": "DUP1" - }, - "12025": { - "op": "DUP4" - }, - "12026": { - "op": "MUL" - }, - "12027": { - "op": "DUP6" - }, - "12028": { - "op": "ADD" - }, - "12029": { - "op": "ADD" - }, - "12030": { - "op": "GT" - }, - "12031": { - "op": "ISZERO" - }, - "12032": { - "op": "PUSH2", - "value": "0x1F06" - }, - "12035": { - "op": "JUMPI" - }, - "12036": { - "op": "PUSH1", - "value": "0x0" - }, - "12038": { - "op": "DUP1" - }, - "12039": { - "op": "REVERT" - }, - "12040": { - "op": "JUMPDEST" - }, - "12041": { - "op": "DUP1" - }, - "12042": { - "op": "MLOAD" - }, - "12043": { - "op": "PUSH1", - "value": "0x1" - }, - "12045": { - "op": "PUSH1", - "value": "0x1" - }, - "12047": { - "op": "PUSH1", - "value": "0x70" - }, - "12049": { - "op": "SHL" - }, - "12050": { - "op": "SUB" - }, - "12051": { - "op": "NOT" - }, - "12052": { - "op": "DUP2" - }, - "12053": { - "op": "AND" - }, - "12054": { - "op": "DUP2" - }, - "12055": { - "op": "EQ" - }, - "12056": { - "op": "PUSH2", - "value": "0x327" - }, - "12059": { - "op": "JUMPI" - }, - "12060": { - "op": "PUSH1", - "value": "0x0" - }, - "12062": { - "op": "DUP1" - }, - "12063": { - "op": "REVERT" - }, - "12064": { - "op": "JUMPDEST" - }, - "12065": { - "op": "PUSH1", - "value": "0x0" - }, - "12067": { - "op": "DUP1" - }, - "12068": { - "op": "DUP4" - }, - "12069": { - "op": "PUSH1", - "value": "0x1F" - }, - "12071": { - "op": "DUP5" - }, - "12072": { - "op": "ADD" - }, - "12073": { - "op": "SLT" - }, - "12074": { - "op": "PUSH2", - "value": "0x2F31" - }, - "12077": { - "op": "JUMPI" - }, - "12078": { - "op": "DUP2" - }, - "12079": { - "op": "DUP3" - }, - "12080": { - "op": "REVERT" - }, - "12081": { - "op": "JUMPDEST" - }, - "12082": { - "op": "POP" - }, - "12083": { - "op": "DUP2" - }, - "12084": { - "op": "CALLDATALOAD" - }, - "12085": { - "op": "PUSH1", - "value": "0x1" - }, - "12087": { - "op": "PUSH1", - "value": "0x1" - }, - "12089": { - "op": "PUSH1", - "value": "0x40" - }, - "12091": { - "op": "SHL" - }, - "12092": { - "op": "SUB" - }, - "12093": { - "op": "DUP2" - }, - "12094": { - "op": "GT" - }, - "12095": { - "op": "ISZERO" - }, - "12096": { - "op": "PUSH2", - "value": "0x2F47" - }, - "12099": { - "op": "JUMPI" - }, - "12100": { - "op": "DUP2" - }, - "12101": { - "op": "DUP3" - }, - "12102": { - "op": "REVERT" - }, - "12103": { - "op": "JUMPDEST" - }, - "12104": { - "op": "PUSH1", - "value": "0x20" - }, - "12106": { - "op": "DUP4" - }, - "12107": { - "op": "ADD" - }, - "12108": { - "op": "SWAP2" - }, - "12109": { - "op": "POP" - }, - "12110": { - "op": "DUP4" - }, - "12111": { - "op": "PUSH1", - "value": "0x20" - }, - "12113": { - "op": "DUP3" - }, - "12114": { - "op": "DUP6" - }, - "12115": { - "op": "ADD" - }, - "12116": { - "op": "ADD" - }, - "12117": { - "op": "GT" - }, - "12118": { - "op": "ISZERO" - }, - "12119": { - "op": "PUSH2", - "value": "0x1F06" - }, - "12122": { - "op": "JUMPI" - }, - "12123": { - "op": "PUSH1", - "value": "0x0" - }, - "12125": { - "op": "DUP1" - }, - "12126": { - "op": "REVERT" - }, - "12127": { - "op": "JUMPDEST" - }, - "12128": { - "op": "DUP1" - }, - "12129": { - "op": "MLOAD" - }, - "12130": { - "op": "PUSH2", - "value": "0x327" - }, - "12133": { - "op": "DUP2" - }, - "12134": { - "op": "PUSH2", - "value": "0x386F" - }, - "12137": { - "jump": "i", - "op": "JUMP" - }, - "12138": { - "op": "JUMPDEST" - }, - "12139": { - "op": "DUP1" - }, - "12140": { - "op": "MLOAD" - }, - "12141": { - "op": "PUSH2", - "value": "0x327" - }, - "12144": { - "op": "DUP2" - }, - "12145": { - "op": "PUSH2", - "value": "0x3892" - }, - "12148": { - "jump": "i", - "op": "JUMP" - }, - "12149": { - "op": "JUMPDEST" - }, - "12150": { - "op": "PUSH1", - "value": "0x0" - }, - "12152": { - "op": "PUSH1", - "value": "0x20" - }, - "12154": { - "op": "DUP3" - }, - "12155": { - "op": "DUP5" - }, - "12156": { - "op": "SUB" - }, - "12157": { - "op": "SLT" - }, - "12158": { - "op": "ISZERO" - }, - "12159": { - "op": "PUSH2", - "value": "0x2F86" - }, - "12162": { - "op": "JUMPI" - }, - "12163": { - "op": "DUP1" - }, - "12164": { - "op": "DUP2" - }, - "12165": { - "op": "REVERT" - }, - "12166": { - "op": "JUMPDEST" - }, - "12167": { - "op": "DUP2" - }, - "12168": { - "op": "CALLDATALOAD" - }, - "12169": { - "op": "PUSH2", - "value": "0x653" - }, - "12172": { - "op": "DUP2" - }, - "12173": { - "op": "PUSH2", - "value": "0x3841" - }, - "12176": { - "jump": "i", - "op": "JUMP" - }, - "12177": { - "op": "JUMPDEST" - }, - "12178": { - "op": "PUSH1", - "value": "0x0" - }, - "12180": { - "op": "DUP1" - }, - "12181": { - "op": "PUSH1", - "value": "0x40" - }, - "12183": { - "op": "DUP4" - }, - "12184": { - "op": "DUP6" - }, - "12185": { - "op": "SUB" - }, - "12186": { - "op": "SLT" - }, - "12187": { - "op": "ISZERO" - }, - "12188": { - "op": "PUSH2", - "value": "0x2FA3" - }, - "12191": { - "op": "JUMPI" - }, - "12192": { - "op": "DUP1" - }, - "12193": { - "op": "DUP2" - }, - "12194": { - "op": "REVERT" - }, - "12195": { - "op": "JUMPDEST" - }, - "12196": { - "op": "DUP3" - }, - "12197": { - "op": "CALLDATALOAD" - }, - "12198": { - "op": "PUSH2", - "value": "0x2FAE" - }, - "12201": { - "op": "DUP2" - }, - "12202": { - "op": "PUSH2", - "value": "0x3841" - }, - "12205": { - "jump": "i", - "op": "JUMP" - }, - "12206": { - "op": "JUMPDEST" - }, - "12207": { - "op": "SWAP2" - }, - "12208": { - "op": "POP" - }, - "12209": { - "op": "PUSH1", - "value": "0x20" - }, - "12211": { - "op": "DUP4" - }, - "12212": { - "op": "ADD" - }, - "12213": { - "op": "CALLDATALOAD" - }, - "12214": { - "op": "PUSH2", - "value": "0x2FBE" - }, - "12217": { - "op": "DUP2" - }, - "12218": { - "op": "PUSH2", - "value": "0x3841" - }, - "12221": { - "jump": "i", - "op": "JUMP" - }, - "12222": { - "op": "JUMPDEST" - }, - "12223": { - "op": "DUP1" - }, - "12224": { - "op": "SWAP2" - }, - "12225": { - "op": "POP" - }, - "12226": { - "op": "POP" - }, - "12227": { - "op": "SWAP3" - }, - "12228": { - "op": "POP" - }, - "12229": { - "op": "SWAP3" - }, - "12230": { - "op": "SWAP1" - }, - "12231": { - "op": "POP" - }, - "12232": { - "jump": "o", - "op": "JUMP" - }, - "12233": { - "op": "JUMPDEST" - }, - "12234": { - "op": "PUSH1", - "value": "0x0" - }, - "12236": { - "op": "DUP1" - }, - "12237": { - "op": "PUSH1", - "value": "0x0" - }, - "12239": { - "op": "DUP1" - }, - "12240": { - "op": "PUSH1", - "value": "0x0" - }, - "12242": { - "op": "DUP1" - }, - "12243": { - "op": "PUSH1", - "value": "0x0" - }, - "12245": { - "op": "DUP1" - }, - "12246": { - "op": "PUSH1", - "value": "0xA0" - }, - "12248": { - "op": "DUP10" - }, - "12249": { - "op": "DUP12" - }, - "12250": { - "op": "SUB" - }, - "12251": { - "op": "SLT" - }, - "12252": { - "op": "ISZERO" - }, - "12253": { - "op": "PUSH2", - "value": "0x2FE4" - }, - "12256": { - "op": "JUMPI" - }, - "12257": { - "op": "DUP4" - }, - "12258": { - "op": "DUP5" - }, - "12259": { - "op": "REVERT" - }, - "12260": { - "op": "JUMPDEST" - }, - "12261": { - "op": "DUP9" - }, - "12262": { - "op": "CALLDATALOAD" - }, - "12263": { - "op": "PUSH2", - "value": "0x2FEF" - }, - "12266": { - "op": "DUP2" - }, - "12267": { - "op": "PUSH2", - "value": "0x3841" - }, - "12270": { - "jump": "i", - "op": "JUMP" - }, - "12271": { - "op": "JUMPDEST" - }, - "12272": { - "op": "SWAP8" - }, - "12273": { - "op": "POP" - }, - "12274": { - "op": "PUSH1", - "value": "0x20" - }, - "12276": { - "op": "DUP10" - }, - "12277": { - "op": "ADD" - }, - "12278": { - "op": "CALLDATALOAD" - }, - "12279": { - "op": "PUSH2", - "value": "0x2FFF" - }, - "12282": { - "op": "DUP2" - }, - "12283": { - "op": "PUSH2", - "value": "0x3841" - }, - "12286": { - "jump": "i", - "op": "JUMP" - }, - "12287": { - "op": "JUMPDEST" - }, - "12288": { - "op": "SWAP7" - }, - "12289": { - "op": "POP" - }, - "12290": { - "op": "PUSH1", - "value": "0x40" - }, - "12292": { - "op": "DUP10" - }, - "12293": { - "op": "ADD" - }, - "12294": { - "op": "CALLDATALOAD" - }, - "12295": { - "op": "PUSH1", - "value": "0x1" - }, - "12297": { - "op": "PUSH1", - "value": "0x1" - }, - "12299": { - "op": "PUSH1", - "value": "0x40" - }, - "12301": { - "op": "SHL" - }, - "12302": { - "op": "SUB" - }, - "12303": { - "op": "DUP1" - }, - "12304": { - "op": "DUP3" - }, - "12305": { - "op": "GT" - }, - "12306": { - "op": "ISZERO" - }, - "12307": { - "op": "PUSH2", - "value": "0x301A" - }, - "12310": { - "op": "JUMPI" - }, - "12311": { - "op": "DUP6" - }, - "12312": { - "op": "DUP7" - }, - "12313": { - "op": "REVERT" - }, - "12314": { - "op": "JUMPDEST" - }, - "12315": { - "op": "PUSH2", - "value": "0x3026" - }, - "12318": { - "op": "DUP13" - }, - "12319": { - "op": "DUP4" - }, - "12320": { - "op": "DUP14" - }, - "12321": { - "op": "ADD" - }, - "12322": { - "op": "PUSH2", - "value": "0x2EC7" - }, - "12325": { - "jump": "i", - "op": "JUMP" - }, - "12326": { - "op": "JUMPDEST" - }, - "12327": { - "op": "SWAP1" - }, - "12328": { - "op": "SWAP9" - }, - "12329": { - "op": "POP" - }, - "12330": { - "op": "SWAP7" - }, - "12331": { - "op": "POP" - }, - "12332": { - "op": "PUSH1", - "value": "0x60" - }, - "12334": { - "op": "DUP12" - }, - "12335": { - "op": "ADD" - }, - "12336": { - "op": "CALLDATALOAD" - }, - "12337": { - "op": "SWAP2" - }, - "12338": { - "op": "POP" - }, - "12339": { - "op": "DUP1" - }, - "12340": { - "op": "DUP3" - }, - "12341": { - "op": "GT" - }, - "12342": { - "op": "ISZERO" - }, - "12343": { - "op": "PUSH2", - "value": "0x303E" - }, - "12346": { - "op": "JUMPI" - }, - "12347": { - "op": "DUP6" - }, - "12348": { - "op": "DUP7" - }, - "12349": { - "op": "REVERT" - }, - "12350": { - "op": "JUMPDEST" - }, - "12351": { - "op": "PUSH2", - "value": "0x304A" - }, - "12354": { - "op": "DUP13" - }, - "12355": { - "op": "DUP4" - }, - "12356": { - "op": "DUP14" - }, - "12357": { - "op": "ADD" - }, - "12358": { - "op": "PUSH2", - "value": "0x2EC7" - }, - "12361": { - "jump": "i", - "op": "JUMP" - }, - "12362": { - "op": "JUMPDEST" - }, - "12363": { - "op": "SWAP1" - }, - "12364": { - "op": "SWAP7" - }, - "12365": { - "op": "POP" - }, - "12366": { - "op": "SWAP5" - }, - "12367": { - "op": "POP" - }, - "12368": { - "op": "PUSH1", - "value": "0x80" - }, - "12370": { - "op": "DUP12" - }, - "12371": { - "op": "ADD" - }, - "12372": { - "op": "CALLDATALOAD" - }, - "12373": { - "op": "SWAP2" - }, - "12374": { - "op": "POP" - }, - "12375": { - "op": "DUP1" - }, - "12376": { - "op": "DUP3" - }, - "12377": { - "op": "GT" - }, - "12378": { - "op": "ISZERO" - }, - "12379": { - "op": "PUSH2", - "value": "0x3062" - }, - "12382": { - "op": "JUMPI" - }, - "12383": { - "op": "DUP4" - }, - "12384": { - "op": "DUP5" - }, - "12385": { - "op": "REVERT" - }, - "12386": { - "op": "JUMPDEST" - }, - "12387": { - "op": "POP" - }, - "12388": { - "op": "PUSH2", - "value": "0x306F" - }, - "12391": { - "op": "DUP12" - }, - "12392": { - "op": "DUP3" - }, - "12393": { - "op": "DUP13" - }, - "12394": { - "op": "ADD" - }, - "12395": { - "op": "PUSH2", - "value": "0x2F20" - }, - "12398": { - "jump": "i", - "op": "JUMP" - }, - "12399": { - "op": "JUMPDEST" - }, - "12400": { - "op": "SWAP10" - }, - "12401": { - "op": "SWAP13" - }, - "12402": { - "op": "SWAP9" - }, - "12403": { - "op": "SWAP12" - }, - "12404": { - "op": "POP" - }, - "12405": { - "op": "SWAP7" - }, - "12406": { - "op": "SWAP10" - }, - "12407": { - "op": "POP" - }, - "12408": { - "op": "SWAP5" - }, - "12409": { - "op": "SWAP8" - }, - "12410": { - "op": "SWAP4" - }, - "12411": { - "op": "SWAP7" - }, - "12412": { - "op": "SWAP3" - }, - "12413": { - "op": "SWAP6" - }, - "12414": { - "op": "SWAP5" - }, - "12415": { - "op": "POP" - }, - "12416": { - "op": "POP" - }, - "12417": { - "op": "POP" - }, - "12418": { - "jump": "o", - "op": "JUMP" - }, - "12419": { - "op": "JUMPDEST" - }, - "12420": { - "op": "PUSH1", - "value": "0x0" - }, - "12422": { - "op": "DUP1" - }, - "12423": { - "op": "PUSH1", - "value": "0x0" - }, - "12425": { - "op": "DUP1" - }, - "12426": { - "op": "PUSH1", - "value": "0x0" - }, - "12428": { - "op": "DUP1" - }, - "12429": { - "op": "PUSH1", - "value": "0xA0" - }, - "12431": { - "op": "DUP8" - }, - "12432": { - "op": "DUP10" - }, - "12433": { - "op": "SUB" - }, - "12434": { - "op": "SLT" - }, - "12435": { - "op": "ISZERO" - }, - "12436": { - "op": "PUSH2", - "value": "0x309B" - }, - "12439": { - "op": "JUMPI" - }, - "12440": { - "op": "DUP2" - }, - "12441": { - "op": "DUP3" - }, - "12442": { - "op": "REVERT" - }, - "12443": { - "op": "JUMPDEST" - }, - "12444": { - "op": "DUP7" - }, - "12445": { - "op": "CALLDATALOAD" - }, - "12446": { - "op": "PUSH2", - "value": "0x30A6" - }, - "12449": { - "op": "DUP2" - }, - "12450": { - "op": "PUSH2", - "value": "0x3841" - }, - "12453": { - "jump": "i", - "op": "JUMP" - }, - "12454": { - "op": "JUMPDEST" - }, - "12455": { - "op": "SWAP6" - }, - "12456": { - "op": "POP" - }, - "12457": { - "op": "PUSH1", - "value": "0x20" - }, - "12459": { - "op": "DUP8" - }, - "12460": { - "op": "ADD" - }, - "12461": { - "op": "CALLDATALOAD" - }, - "12462": { - "op": "PUSH2", - "value": "0x30B6" - }, - "12465": { - "op": "DUP2" - }, - "12466": { - "op": "PUSH2", - "value": "0x3841" - }, - "12469": { - "jump": "i", - "op": "JUMP" - }, - "12470": { - "op": "JUMPDEST" - }, - "12471": { - "op": "SWAP5" - }, - "12472": { - "op": "POP" - }, - "12473": { - "op": "PUSH1", - "value": "0x40" - }, - "12475": { - "op": "DUP8" - }, - "12476": { - "op": "ADD" - }, - "12477": { - "op": "CALLDATALOAD" - }, - "12478": { - "op": "SWAP4" - }, - "12479": { - "op": "POP" - }, - "12480": { - "op": "PUSH1", - "value": "0x60" - }, - "12482": { - "op": "DUP8" - }, - "12483": { - "op": "ADD" - }, - "12484": { - "op": "CALLDATALOAD" - }, - "12485": { - "op": "SWAP3" - }, - "12486": { - "op": "POP" - }, - "12487": { - "op": "PUSH1", - "value": "0x80" - }, - "12489": { - "op": "DUP8" - }, - "12490": { - "op": "ADD" - }, - "12491": { - "op": "CALLDATALOAD" - }, - "12492": { - "op": "PUSH1", - "value": "0x1" - }, - "12494": { - "op": "PUSH1", - "value": "0x1" - }, - "12496": { - "op": "PUSH1", - "value": "0x40" - }, - "12498": { - "op": "SHL" - }, - "12499": { - "op": "SUB" - }, - "12500": { - "op": "DUP2" - }, - "12501": { - "op": "GT" - }, - "12502": { - "op": "ISZERO" - }, - "12503": { - "op": "PUSH2", - "value": "0x30DE" - }, - "12506": { - "op": "JUMPI" - }, - "12507": { - "op": "DUP3" - }, - "12508": { - "op": "DUP4" - }, - "12509": { - "op": "REVERT" - }, - "12510": { - "op": "JUMPDEST" - }, - "12511": { - "op": "PUSH2", - "value": "0x30EA" - }, - "12514": { - "op": "DUP10" - }, - "12515": { - "op": "DUP3" - }, - "12516": { - "op": "DUP11" - }, - "12517": { - "op": "ADD" - }, - "12518": { - "op": "PUSH2", - "value": "0x2F20" - }, - "12521": { - "jump": "i", - "op": "JUMP" - }, - "12522": { - "op": "JUMPDEST" - }, - "12523": { - "op": "SWAP8" - }, - "12524": { - "op": "SWAP11" - }, - "12525": { - "op": "SWAP7" - }, - "12526": { - "op": "SWAP10" - }, - "12527": { - "op": "POP" - }, - "12528": { - "op": "SWAP5" - }, - "12529": { - "op": "SWAP8" - }, - "12530": { - "op": "POP" - }, - "12531": { - "op": "SWAP3" - }, - "12532": { - "op": "SWAP6" - }, - "12533": { - "op": "SWAP4" - }, - "12534": { - "op": "SWAP5" - }, - "12535": { - "op": "SWAP3" - }, - "12536": { - "op": "POP" - }, - "12537": { - "op": "POP" - }, - "12538": { - "op": "POP" - }, - "12539": { - "jump": "o", - "op": "JUMP" - }, - "12540": { - "op": "JUMPDEST" - }, - "12541": { - "op": "PUSH1", - "value": "0x0" - }, - "12543": { - "op": "DUP1" - }, - "12544": { - "op": "PUSH1", - "value": "0x40" - }, - "12546": { - "op": "DUP4" - }, - "12547": { - "op": "DUP6" - }, - "12548": { - "op": "SUB" - }, - "12549": { - "op": "SLT" - }, - "12550": { - "op": "ISZERO" - }, - "12551": { - "op": "PUSH2", - "value": "0x310E" - }, - "12554": { - "op": "JUMPI" - }, - "12555": { - "op": "DUP2" - }, - "12556": { - "op": "DUP3" - }, - "12557": { - "op": "REVERT" - }, - "12558": { - "op": "JUMPDEST" - }, - "12559": { - "op": "DUP3" - }, - "12560": { - "op": "CALLDATALOAD" - }, - "12561": { - "op": "PUSH2", - "value": "0x3119" - }, - "12564": { - "op": "DUP2" - }, - "12565": { - "op": "PUSH2", - "value": "0x3841" - }, - "12568": { - "jump": "i", - "op": "JUMP" - }, - "12569": { - "op": "JUMPDEST" - }, - "12570": { - "op": "SWAP2" - }, - "12571": { - "op": "POP" - }, - "12572": { - "op": "PUSH1", - "value": "0x20" - }, - "12574": { - "op": "DUP4" - }, - "12575": { - "op": "ADD" - }, - "12576": { - "op": "CALLDATALOAD" - }, - "12577": { - "op": "DUP1" - }, - "12578": { - "op": "ISZERO" - }, - "12579": { - "op": "ISZERO" - }, - "12580": { - "op": "DUP2" - }, - "12581": { - "op": "EQ" - }, - "12582": { - "op": "PUSH2", - "value": "0x2FBE" - }, - "12585": { - "op": "JUMPI" - }, - "12586": { - "op": "DUP2" - }, - "12587": { - "op": "DUP3" - }, - "12588": { - "op": "REVERT" - }, - "12589": { - "op": "JUMPDEST" - }, - "12590": { - "op": "PUSH1", - "value": "0x0" - }, - "12592": { - "op": "DUP1" - }, - "12593": { - "op": "PUSH1", - "value": "0x40" - }, - "12595": { - "op": "DUP4" - }, - "12596": { - "op": "DUP6" - }, - "12597": { - "op": "SUB" - }, - "12598": { - "op": "SLT" - }, - "12599": { - "op": "ISZERO" - }, - "12600": { - "op": "PUSH2", - "value": "0x313F" - }, - "12603": { - "op": "JUMPI" - }, - "12604": { - "op": "DUP2" - }, - "12605": { - "op": "DUP3" - }, - "12606": { - "op": "REVERT" - }, - "12607": { - "op": "JUMPDEST" - }, - "12608": { - "op": "DUP3" - }, - "12609": { - "op": "CALLDATALOAD" - }, - "12610": { - "op": "PUSH2", - "value": "0x314A" - }, - "12613": { - "op": "DUP2" - }, - "12614": { - "op": "PUSH2", - "value": "0x3841" - }, - "12617": { - "jump": "i", - "op": "JUMP" - }, - "12618": { - "op": "JUMPDEST" - }, - "12619": { - "op": "SWAP5" - }, - "12620": { - "op": "PUSH1", - "value": "0x20" - }, - "12622": { - "op": "SWAP4" - }, - "12623": { - "op": "SWAP1" - }, - "12624": { - "op": "SWAP4" - }, - "12625": { - "op": "ADD" - }, - "12626": { - "op": "CALLDATALOAD" - }, - "12627": { - "op": "SWAP4" - }, - "12628": { - "op": "POP" - }, - "12629": { - "op": "POP" - }, - "12630": { - "op": "POP" - }, - "12631": { - "jump": "o", - "op": "JUMP" - }, - "12632": { - "op": "JUMPDEST" - }, - "12633": { - "op": "PUSH1", - "value": "0x0" - }, - "12635": { - "op": "DUP1" - }, - "12636": { - "op": "PUSH1", - "value": "0x0" - }, - "12638": { - "op": "DUP1" - }, - "12639": { - "op": "PUSH1", - "value": "0x40" - }, - "12641": { - "op": "DUP6" - }, - "12642": { - "op": "DUP8" - }, - "12643": { - "op": "SUB" - }, - "12644": { - "op": "SLT" - }, - "12645": { - "op": "ISZERO" - }, - "12646": { - "op": "PUSH2", - "value": "0x316D" - }, - "12649": { - "op": "JUMPI" - }, - "12650": { - "op": "DUP2" - }, - "12651": { - "op": "DUP3" - }, - "12652": { - "op": "REVERT" - }, - "12653": { - "op": "JUMPDEST" - }, - "12654": { - "op": "DUP5" - }, - "12655": { - "op": "CALLDATALOAD" - }, - "12656": { - "op": "PUSH1", - "value": "0x1" - }, - "12658": { - "op": "PUSH1", - "value": "0x1" - }, - "12660": { - "op": "PUSH1", - "value": "0x40" - }, - "12662": { - "op": "SHL" - }, - "12663": { - "op": "SUB" - }, - "12664": { - "op": "DUP1" - }, - "12665": { - "op": "DUP3" - }, - "12666": { - "op": "GT" - }, - "12667": { - "op": "ISZERO" - }, - "12668": { - "op": "PUSH2", - "value": "0x3183" - }, - "12671": { - "op": "JUMPI" - }, - "12672": { - "op": "DUP4" - }, - "12673": { - "op": "DUP5" - }, - "12674": { - "op": "REVERT" - }, - "12675": { - "op": "JUMPDEST" - }, - "12676": { - "op": "PUSH2", - "value": "0x318F" - }, - "12679": { - "op": "DUP9" - }, - "12680": { - "op": "DUP4" - }, - "12681": { - "op": "DUP10" - }, - "12682": { - "op": "ADD" - }, - "12683": { - "op": "PUSH2", - "value": "0x2EC7" - }, - "12686": { - "jump": "i", - "op": "JUMP" - }, - "12687": { - "op": "JUMPDEST" - }, - "12688": { - "op": "SWAP1" - }, - "12689": { - "op": "SWAP7" - }, - "12690": { - "op": "POP" - }, - "12691": { - "op": "SWAP5" - }, - "12692": { - "op": "POP" - }, - "12693": { - "op": "PUSH1", - "value": "0x20" - }, - "12695": { - "op": "DUP8" - }, - "12696": { - "op": "ADD" - }, - "12697": { - "op": "CALLDATALOAD" - }, - "12698": { - "op": "SWAP2" - }, - "12699": { - "op": "POP" - }, - "12700": { - "op": "DUP1" - }, - "12701": { - "op": "DUP3" - }, - "12702": { - "op": "GT" - }, - "12703": { - "op": "ISZERO" - }, - "12704": { - "op": "PUSH2", - "value": "0x31A7" - }, - "12707": { - "op": "JUMPI" - }, - "12708": { - "op": "DUP4" - }, - "12709": { - "op": "DUP5" - }, - "12710": { - "op": "REVERT" - }, - "12711": { - "op": "JUMPDEST" - }, - "12712": { - "op": "POP" - }, - "12713": { - "op": "PUSH2", - "value": "0x31B4" - }, - "12716": { - "op": "DUP8" - }, - "12717": { - "op": "DUP3" - }, - "12718": { - "op": "DUP9" - }, - "12719": { - "op": "ADD" - }, - "12720": { - "op": "PUSH2", - "value": "0x2EC7" - }, - "12723": { - "jump": "i", - "op": "JUMP" - }, - "12724": { - "op": "JUMPDEST" - }, - "12725": { - "op": "SWAP6" - }, - "12726": { - "op": "SWAP9" - }, - "12727": { - "op": "SWAP5" - }, - "12728": { - "op": "SWAP8" - }, - "12729": { - "op": "POP" - }, - "12730": { - "op": "SWAP6" - }, - "12731": { - "op": "POP" - }, - "12732": { - "op": "POP" - }, - "12733": { - "op": "POP" - }, - "12734": { - "op": "POP" - }, - "12735": { - "jump": "o", - "op": "JUMP" - }, - "12736": { - "op": "JUMPDEST" - }, - "12737": { - "op": "PUSH1", - "value": "0x0" - }, - "12739": { - "op": "PUSH1", - "value": "0x20" - }, - "12741": { - "op": "DUP3" - }, - "12742": { - "op": "DUP5" - }, - "12743": { - "op": "SUB" - }, - "12744": { - "op": "SLT" - }, - "12745": { - "op": "ISZERO" - }, - "12746": { - "op": "PUSH2", - "value": "0x31D1" - }, - "12749": { - "op": "JUMPI" - }, - "12750": { - "op": "DUP1" - }, - "12751": { - "op": "DUP2" - }, - "12752": { - "op": "REVERT" - }, - "12753": { - "op": "JUMPDEST" - }, - "12754": { - "op": "POP" - }, - "12755": { - "op": "CALLDATALOAD" - }, - "12756": { - "op": "SWAP2" - }, - "12757": { - "op": "SWAP1" - }, - "12758": { - "op": "POP" - }, - "12759": { - "jump": "o", - "op": "JUMP" - }, - "12760": { - "op": "JUMPDEST" - }, - "12761": { - "op": "PUSH1", - "value": "0x0" - }, - "12763": { - "op": "PUSH1", - "value": "0x20" - }, - "12765": { - "op": "DUP3" - }, - "12766": { - "op": "DUP5" - }, - "12767": { - "op": "SUB" - }, - "12768": { - "op": "SLT" - }, - "12769": { - "op": "ISZERO" - }, - "12770": { - "op": "PUSH2", - "value": "0x31E9" - }, - "12773": { - "op": "JUMPI" - }, - "12774": { - "op": "DUP1" - }, - "12775": { - "op": "DUP2" - }, - "12776": { - "op": "REVERT" - }, - "12777": { - "op": "JUMPDEST" - }, - "12778": { - "op": "DUP2" - }, - "12779": { - "op": "CALLDATALOAD" - }, - "12780": { - "op": "PUSH2", - "value": "0x653" - }, - "12783": { - "op": "DUP2" - }, - "12784": { - "op": "PUSH2", - "value": "0x3859" - }, - "12787": { - "jump": "i", - "op": "JUMP" - }, - "12788": { - "op": "JUMPDEST" - }, - "12789": { - "op": "PUSH1", - "value": "0x0" - }, - "12791": { - "op": "PUSH1", - "value": "0x20" - }, - "12793": { - "op": "DUP3" - }, - "12794": { - "op": "DUP5" - }, - "12795": { - "op": "SUB" - }, - "12796": { - "op": "SLT" - }, - "12797": { - "op": "ISZERO" - }, - "12798": { - "op": "PUSH2", - "value": "0x3205" - }, - "12801": { - "op": "JUMPI" - }, - "12802": { - "op": "DUP1" - }, - "12803": { - "op": "DUP2" - }, - "12804": { - "op": "REVERT" - }, - "12805": { - "op": "JUMPDEST" - }, - "12806": { - "op": "DUP2" - }, - "12807": { - "op": "MLOAD" - }, - "12808": { - "op": "PUSH2", - "value": "0x653" - }, - "12811": { - "op": "DUP2" - }, - "12812": { - "op": "PUSH2", - "value": "0x3859" - }, - "12815": { - "jump": "i", - "op": "JUMP" - }, - "12816": { - "op": "JUMPDEST" - }, - "12817": { - "op": "PUSH1", - "value": "0x0" - }, - "12819": { - "op": "PUSH1", - "value": "0x20" - }, - "12821": { - "op": "DUP3" - }, - "12822": { - "op": "DUP5" - }, - "12823": { - "op": "SUB" - }, - "12824": { - "op": "SLT" - }, - "12825": { - "op": "ISZERO" - }, - "12826": { - "op": "PUSH2", - "value": "0x3221" - }, - "12829": { - "op": "JUMPI" - }, - "12830": { - "op": "DUP1" - }, - "12831": { - "op": "DUP2" - }, - "12832": { - "op": "REVERT" - }, - "12833": { - "op": "JUMPDEST" - }, - "12834": { - "op": "DUP2" - }, - "12835": { - "op": "MLOAD" - }, - "12836": { - "op": "PUSH1", - "value": "0x1" - }, - "12838": { - "op": "PUSH1", - "value": "0x1" - }, - "12840": { - "op": "PUSH1", - "value": "0x40" - }, - "12842": { - "op": "SHL" - }, - "12843": { - "op": "SUB" - }, - "12844": { - "op": "DUP1" - }, - "12845": { - "op": "DUP3" - }, - "12846": { - "op": "GT" - }, - "12847": { - "op": "ISZERO" - }, - "12848": { - "op": "PUSH2", - "value": "0x3237" - }, - "12851": { - "op": "JUMPI" - }, - "12852": { - "op": "DUP3" - }, - "12853": { - "op": "DUP4" - }, - "12854": { - "op": "REVERT" - }, - "12855": { - "op": "JUMPDEST" - }, - "12856": { - "op": "DUP2" - }, - "12857": { - "op": "DUP5" - }, - "12858": { - "op": "ADD" - }, - "12859": { - "op": "SWAP2" - }, - "12860": { - "op": "POP" - }, - "12861": { - "op": "DUP5" - }, - "12862": { - "op": "PUSH1", - "value": "0x1F" - }, - "12864": { - "op": "DUP4" - }, - "12865": { - "op": "ADD" - }, - "12866": { - "op": "SLT" - }, - "12867": { - "op": "PUSH2", - "value": "0x324A" - }, - "12870": { - "op": "JUMPI" - }, - "12871": { - "op": "DUP3" - }, - "12872": { - "op": "DUP4" - }, - "12873": { - "op": "REVERT" - }, - "12874": { - "op": "JUMPDEST" - }, - "12875": { - "op": "DUP2" - }, - "12876": { - "op": "MLOAD" - }, - "12877": { - "op": "DUP2" - }, - "12878": { - "op": "DUP2" - }, - "12879": { - "op": "GT" - }, - "12880": { - "op": "ISZERO" - }, - "12881": { - "op": "PUSH2", - "value": "0x3256" - }, - "12884": { - "op": "JUMPI" - }, - "12885": { - "op": "INVALID" - }, - "12886": { - "op": "JUMPDEST" - }, - "12887": { - "op": "PUSH1", - "value": "0x40" - }, - "12889": { - "op": "MLOAD" - }, - "12890": { - "op": "PUSH1", - "value": "0x1F" - }, - "12892": { - "op": "DUP3" - }, - "12893": { - "op": "ADD" - }, - "12894": { - "op": "PUSH1", - "value": "0x1F" - }, - "12896": { - "op": "NOT" - }, - "12897": { - "op": "AND" - }, - "12898": { - "op": "DUP2" - }, - "12899": { - "op": "ADD" - }, - "12900": { - "op": "PUSH1", - "value": "0x20" - }, - "12902": { - "op": "ADD" - }, - "12903": { - "op": "DUP4" - }, - "12904": { - "op": "DUP2" - }, - "12905": { - "op": "GT" - }, - "12906": { - "op": "DUP3" - }, - "12907": { - "op": "DUP3" - }, - "12908": { - "op": "LT" - }, - "12909": { - "op": "OR" - }, - "12910": { - "op": "ISZERO" - }, - "12911": { - "op": "PUSH2", - "value": "0x3274" - }, - "12914": { - "op": "JUMPI" - }, - "12915": { - "op": "INVALID" - }, - "12916": { - "op": "JUMPDEST" - }, - "12917": { - "op": "PUSH1", - "value": "0x40" - }, - "12919": { - "op": "MSTORE" - }, - "12920": { - "op": "DUP2" - }, - "12921": { - "op": "DUP2" - }, - "12922": { - "op": "MSTORE" - }, - "12923": { - "op": "DUP4" - }, - "12924": { - "op": "DUP3" - }, - "12925": { - "op": "ADD" - }, - "12926": { - "op": "PUSH1", - "value": "0x20" - }, - "12928": { - "op": "ADD" - }, - "12929": { - "op": "DUP8" - }, - "12930": { - "op": "LT" - }, - "12931": { - "op": "ISZERO" - }, - "12932": { - "op": "PUSH2", - "value": "0x328B" - }, - "12935": { - "op": "JUMPI" - }, - "12936": { - "op": "DUP5" - }, - "12937": { - "op": "DUP6" - }, - "12938": { - "op": "REVERT" - }, - "12939": { - "op": "JUMPDEST" - }, - "12940": { - "op": "PUSH2", - "value": "0x329C" - }, - "12943": { - "op": "DUP3" - }, - "12944": { - "op": "PUSH1", - "value": "0x20" - }, - "12946": { - "op": "DUP4" - }, - "12947": { - "op": "ADD" - }, - "12948": { - "op": "PUSH1", - "value": "0x20" - }, - "12950": { - "op": "DUP8" - }, - "12951": { - "op": "ADD" - }, - "12952": { - "op": "PUSH2", - "value": "0x3815" - }, - "12955": { - "jump": "i", - "op": "JUMP" - }, - "12956": { - "op": "JUMPDEST" - }, - "12957": { - "op": "SWAP7" - }, - "12958": { - "op": "SWAP6" - }, - "12959": { - "op": "POP" - }, - "12960": { - "op": "POP" - }, - "12961": { - "op": "POP" - }, - "12962": { - "op": "POP" - }, - "12963": { - "op": "POP" - }, - "12964": { - "op": "POP" - }, - "12965": { - "jump": "o", - "op": "JUMP" - }, - "12966": { - "op": "JUMPDEST" - }, - "12967": { - "op": "PUSH1", - "value": "0x0" - }, - "12969": { - "op": "PUSH1", - "value": "0xA0" - }, - "12971": { - "op": "DUP3" - }, - "12972": { - "op": "DUP5" - }, - "12973": { - "op": "SUB" - }, - "12974": { - "op": "SLT" - }, - "12975": { - "op": "ISZERO" - }, - "12976": { - "op": "PUSH2", - "value": "0x32B7" - }, - "12979": { - "op": "JUMPI" - }, - "12980": { - "op": "DUP1" - }, - "12981": { - "op": "DUP2" - }, - "12982": { - "op": "REVERT" - }, - "12983": { - "op": "JUMPDEST" - }, - "12984": { - "op": "PUSH1", - "value": "0x40" - }, - "12986": { - "op": "MLOAD" - }, - "12987": { - "op": "PUSH1", - "value": "0xA0" - }, - "12989": { - "op": "DUP2" - }, - "12990": { - "op": "ADD" - }, - "12991": { - "op": "DUP2" - }, - "12992": { - "op": "DUP2" - }, - "12993": { - "op": "LT" - }, - "12994": { - "op": "PUSH1", - "value": "0x1" - }, - "12996": { - "op": "PUSH1", - "value": "0x1" - }, - "12998": { - "op": "PUSH1", - "value": "0x40" - }, - "13000": { - "op": "SHL" - }, - "13001": { - "op": "SUB" - }, - "13002": { - "op": "DUP3" - }, - "13003": { - "op": "GT" - }, - "13004": { - "op": "OR" - }, - "13005": { - "op": "ISZERO" - }, - "13006": { - "op": "PUSH2", - "value": "0x32D3" - }, - "13009": { - "op": "JUMPI" - }, - "13010": { - "op": "INVALID" - }, - "13011": { - "op": "JUMPDEST" - }, - "13012": { - "op": "PUSH1", - "value": "0x40" - }, - "13014": { - "op": "MSTORE" - }, - "13015": { - "op": "DUP3" - }, - "13016": { - "op": "MLOAD" - }, - "13017": { - "op": "PUSH2", - "value": "0x32E1" - }, - "13020": { - "op": "DUP2" - }, - "13021": { - "op": "PUSH2", - "value": "0x387F" - }, - "13024": { - "jump": "i", - "op": "JUMP" - }, - "13025": { - "op": "JUMPDEST" - }, - "13026": { - "op": "DUP2" - }, - "13027": { - "op": "MSTORE" - }, - "13028": { - "op": "PUSH1", - "value": "0x20" - }, - "13030": { - "op": "DUP4" - }, - "13031": { - "op": "ADD" - }, - "13032": { - "op": "MLOAD" - }, - "13033": { - "op": "PUSH1", - "value": "0x1" - }, - "13035": { - "op": "PUSH1", - "value": "0x1" - }, - "13037": { - "op": "PUSH1", - "value": "0xF8" - }, - "13039": { - "op": "SHL" - }, - "13040": { - "op": "SUB" - }, - "13041": { - "op": "NOT" - }, - "13042": { - "op": "DUP2" - }, - "13043": { - "op": "AND" - }, - "13044": { - "op": "DUP2" - }, - "13045": { - "op": "EQ" - }, - "13046": { - "op": "PUSH2", - "value": "0x32FD" - }, - "13049": { - "op": "JUMPI" - }, - "13050": { - "op": "DUP3" - }, - "13051": { - "op": "DUP4" - }, - "13052": { - "op": "REVERT" - }, - "13053": { - "op": "JUMPDEST" - }, - "13054": { - "op": "PUSH1", - "value": "0x20" - }, - "13056": { - "op": "DUP3" - }, - "13057": { - "op": "ADD" - }, - "13058": { - "op": "MSTORE" - }, - "13059": { - "op": "PUSH2", - "value": "0x330E" - }, - "13062": { - "op": "PUSH1", - "value": "0x40" - }, - "13064": { - "op": "DUP5" - }, - "13065": { - "op": "ADD" - }, - "13066": { - "op": "PUSH2", - "value": "0x2F6A" - }, - "13069": { - "jump": "i", - "op": "JUMP" - }, - "13070": { - "op": "JUMPDEST" - }, - "13071": { - "op": "PUSH1", - "value": "0x40" - }, - "13073": { - "op": "DUP3" - }, - "13074": { - "op": "ADD" - }, - "13075": { - "op": "MSTORE" - }, - "13076": { - "op": "PUSH2", - "value": "0x331F" - }, - "13079": { - "op": "PUSH1", - "value": "0x60" - }, - "13081": { - "op": "DUP5" - }, - "13082": { - "op": "ADD" - }, - "13083": { - "op": "PUSH2", - "value": "0x2F5F" - }, - "13086": { - "jump": "i", - "op": "JUMP" - }, - "13087": { - "op": "JUMPDEST" - }, - "13088": { - "op": "PUSH1", - "value": "0x60" - }, - "13090": { - "op": "DUP3" - }, - "13091": { - "op": "ADD" - }, - "13092": { - "op": "MSTORE" - }, - "13093": { - "op": "PUSH2", - "value": "0x3330" - }, - "13096": { - "op": "PUSH1", - "value": "0x80" - }, - "13098": { - "op": "DUP5" - }, - "13099": { - "op": "ADD" - }, - "13100": { - "op": "PUSH2", - "value": "0x2F08" - }, - "13103": { - "jump": "i", - "op": "JUMP" - }, - "13104": { - "op": "JUMPDEST" - }, - "13105": { - "op": "PUSH1", - "value": "0x80" - }, - "13107": { - "op": "DUP3" - }, - "13108": { - "op": "ADD" - }, - "13109": { - "op": "MSTORE" - }, - "13110": { - "op": "SWAP4" - }, - "13111": { - "op": "SWAP3" - }, - "13112": { - "op": "POP" - }, - "13113": { - "op": "POP" - }, - "13114": { - "op": "POP" - }, - "13115": { - "jump": "o", - "op": "JUMP" - }, - "13116": { - "op": "JUMPDEST" - }, - "13117": { - "op": "PUSH1", - "value": "0x0" - }, - "13119": { - "op": "DUP1" - }, - "13120": { - "op": "PUSH1", - "value": "0x0" - }, - "13122": { - "op": "PUSH1", - "value": "0x60" - }, - "13124": { - "op": "DUP5" - }, - "13125": { - "op": "DUP7" - }, - "13126": { - "op": "SUB" - }, - "13127": { - "op": "SLT" - }, - "13128": { - "op": "ISZERO" - }, - "13129": { - "op": "PUSH2", - "value": "0x3350" - }, - "13132": { - "op": "JUMPI" - }, - "13133": { - "op": "DUP1" - }, - "13134": { - "op": "DUP2" - }, - "13135": { - "op": "REVERT" - }, - "13136": { - "op": "JUMPDEST" - }, - "13137": { - "op": "DUP4" - }, - "13138": { - "op": "CALLDATALOAD" - }, - "13139": { - "op": "PUSH2", - "value": "0x335B" - }, - "13142": { - "op": "DUP2" - }, - "13143": { - "op": "PUSH2", - "value": "0x386F" - }, - "13146": { - "jump": "i", - "op": "JUMP" - }, - "13147": { - "op": "JUMPDEST" - }, - "13148": { - "op": "SWAP3" - }, - "13149": { - "op": "POP" - }, - "13150": { - "op": "PUSH1", - "value": "0x20" - }, - "13152": { - "op": "DUP5" - }, - "13153": { - "op": "ADD" - }, - "13154": { - "op": "CALLDATALOAD" - }, - "13155": { - "op": "PUSH2", - "value": "0x336B" - }, - "13158": { - "op": "DUP2" - }, - "13159": { - "op": "PUSH2", - "value": "0x387F" - }, - "13162": { - "jump": "i", - "op": "JUMP" - }, - "13163": { - "op": "JUMPDEST" - }, - "13164": { - "op": "SWAP2" - }, - "13165": { - "op": "POP" - }, - "13166": { - "op": "PUSH1", - "value": "0x40" - }, - "13168": { - "op": "DUP5" - }, - "13169": { - "op": "ADD" - }, - "13170": { - "op": "CALLDATALOAD" - }, - "13171": { - "op": "PUSH2", - "value": "0x337B" - }, - "13174": { - "op": "DUP2" - }, - "13175": { - "op": "PUSH2", - "value": "0x3892" - }, - "13178": { - "jump": "i", - "op": "JUMP" - }, - "13179": { - "op": "JUMPDEST" - }, - "13180": { - "op": "DUP1" - }, - "13181": { - "op": "SWAP2" - }, - "13182": { - "op": "POP" - }, - "13183": { - "op": "POP" - }, - "13184": { - "op": "SWAP3" - }, - "13185": { - "op": "POP" - }, - "13186": { - "op": "SWAP3" - }, - "13187": { - "op": "POP" - }, - "13188": { - "op": "SWAP3" - }, - "13189": { - "jump": "o", - "op": "JUMP" - }, - "13190": { - "op": "JUMPDEST" - }, - "13191": { - "op": "DUP2" - }, - "13192": { - "op": "DUP4" - }, - "13193": { - "op": "MSTORE" - }, - "13194": { - "op": "PUSH1", - "value": "0x0" - }, - "13196": { - "op": "PUSH1", - "value": "0x1" - }, - "13198": { - "op": "PUSH1", - "value": "0x1" - }, - "13200": { - "op": "PUSH1", - "value": "0xFB" - }, - "13202": { - "op": "SHL" - }, - "13203": { - "op": "SUB" - }, - "13204": { - "op": "DUP4" - }, - "13205": { - "op": "GT" - }, - "13206": { - "op": "ISZERO" - }, - "13207": { - "op": "PUSH2", - "value": "0x339E" - }, - "13210": { - "op": "JUMPI" - }, - "13211": { - "op": "DUP1" - }, - "13212": { - "op": "DUP2" - }, - "13213": { - "op": "REVERT" - }, - "13214": { - "op": "JUMPDEST" - }, - "13215": { - "op": "PUSH1", - "value": "0x20" - }, - "13217": { - "op": "DUP4" - }, - "13218": { - "op": "MUL" - }, - "13219": { - "op": "DUP1" - }, - "13220": { - "op": "DUP4" - }, - "13221": { - "op": "PUSH1", - "value": "0x20" - }, - "13223": { - "op": "DUP8" - }, - "13224": { - "op": "ADD" - }, - "13225": { - "op": "CALLDATACOPY" - }, - "13226": { - "op": "SWAP4" - }, - "13227": { - "op": "SWAP1" - }, - "13228": { - "op": "SWAP4" - }, - "13229": { - "op": "ADD" - }, - "13230": { - "op": "PUSH1", - "value": "0x20" - }, - "13232": { - "op": "ADD" - }, - "13233": { - "op": "SWAP3" - }, - "13234": { - "op": "DUP4" - }, - "13235": { - "op": "MSTORE" - }, - "13236": { - "op": "POP" - }, - "13237": { - "op": "SWAP1" - }, - "13238": { - "op": "SWAP2" - }, - "13239": { - "op": "SWAP1" - }, - "13240": { - "op": "POP" - }, - "13241": { - "jump": "o", - "op": "JUMP" - }, - "13242": { - "op": "JUMPDEST" - }, - "13243": { - "op": "PUSH1", - "value": "0x0" - }, - "13245": { - "op": "DUP3" - }, - "13246": { - "op": "DUP5" - }, - "13247": { - "op": "MSTORE" - }, - "13248": { - "op": "DUP3" - }, - "13249": { - "op": "DUP3" - }, - "13250": { - "op": "PUSH1", - "value": "0x20" - }, - "13252": { - "op": "DUP7" - }, - "13253": { - "op": "ADD" - }, - "13254": { - "op": "CALLDATACOPY" - }, - "13255": { - "op": "DUP1" - }, - "13256": { - "op": "PUSH1", - "value": "0x20" - }, - "13258": { - "op": "DUP5" - }, - "13259": { - "op": "DUP7" - }, - "13260": { - "op": "ADD" - }, - "13261": { - "op": "ADD" - }, - "13262": { - "op": "MSTORE" - }, - "13263": { - "op": "PUSH1", - "value": "0x20" - }, - "13265": { - "op": "PUSH1", - "value": "0x1F" - }, - "13267": { - "op": "NOT" - }, - "13268": { - "op": "PUSH1", - "value": "0x1F" - }, - "13270": { - "op": "DUP6" - }, - "13271": { - "op": "ADD" - }, - "13272": { - "op": "AND" - }, - "13273": { - "op": "DUP6" - }, - "13274": { - "op": "ADD" - }, - "13275": { - "op": "ADD" - }, - "13276": { - "op": "SWAP1" - }, - "13277": { - "op": "POP" - }, - "13278": { - "op": "SWAP4" - }, - "13279": { - "op": "SWAP3" - }, - "13280": { - "op": "POP" - }, - "13281": { - "op": "POP" - }, - "13282": { - "op": "POP" - }, - "13283": { - "jump": "o", - "op": "JUMP" - }, - "13284": { - "op": "JUMPDEST" - }, - "13285": { - "op": "PUSH1", - "value": "0x0" - }, - "13287": { - "op": "DUP3" - }, - "13288": { - "op": "DUP5" - }, - "13289": { - "op": "DUP4" - }, - "13290": { - "op": "CALLDATACOPY" - }, - "13291": { - "op": "SWAP2" - }, - "13292": { - "op": "ADD" - }, - "13293": { - "op": "SWAP1" - }, - "13294": { - "op": "DUP2" - }, - "13295": { - "op": "MSTORE" - }, - "13296": { - "op": "SWAP2" - }, - "13297": { - "op": "SWAP1" - }, - "13298": { - "op": "POP" - }, - "13299": { - "jump": "o", - "op": "JUMP" - }, - "13300": { - "op": "JUMPDEST" - }, - "13301": { - "op": "PUSH1", - "value": "0x1" - }, - "13303": { - "op": "PUSH1", - "value": "0x1" - }, - "13305": { - "op": "PUSH1", - "value": "0xA0" - }, - "13307": { - "op": "SHL" - }, - "13308": { - "op": "SUB" - }, - "13309": { - "op": "SWAP2" - }, - "13310": { - "op": "SWAP1" - }, - "13311": { - "op": "SWAP2" - }, - "13312": { - "op": "AND" - }, - "13313": { - "op": "DUP2" - }, - "13314": { - "op": "MSTORE" - }, - "13315": { - "op": "PUSH1", - "value": "0x20" - }, - "13317": { - "op": "ADD" - }, - "13318": { - "op": "SWAP1" - }, - "13319": { - "jump": "o", - "op": "JUMP" - }, - "13320": { - "op": "JUMPDEST" - }, - "13321": { - "op": "PUSH1", - "value": "0x1" - }, - "13323": { - "op": "PUSH1", - "value": "0x1" - }, - "13325": { - "op": "PUSH1", - "value": "0xA0" - }, - "13327": { - "op": "SHL" - }, - "13328": { - "op": "SUB" - }, - "13329": { - "op": "DUP10" - }, - "13330": { - "op": "DUP2" - }, - "13331": { - "op": "AND" - }, - "13332": { - "op": "DUP3" - }, - "13333": { - "op": "MSTORE" - }, - "13334": { - "op": "DUP9" - }, - "13335": { - "op": "AND" - }, - "13336": { - "op": "PUSH1", - "value": "0x20" - }, - "13338": { - "op": "DUP3" - }, - "13339": { - "op": "ADD" - }, - "13340": { - "op": "MSTORE" - }, - "13341": { - "op": "PUSH1", - "value": "0xA0" - }, - "13343": { - "op": "PUSH1", - "value": "0x40" - }, - "13345": { - "op": "DUP3" - }, - "13346": { - "op": "ADD" - }, - "13347": { - "op": "DUP2" - }, - "13348": { - "op": "SWAP1" - }, - "13349": { - "op": "MSTORE" - }, - "13350": { - "op": "PUSH1", - "value": "0x0" - }, - "13352": { - "op": "SWAP1" - }, - "13353": { - "op": "PUSH2", - "value": "0x3435" - }, - "13356": { - "op": "SWAP1" - }, - "13357": { - "op": "DUP4" - }, - "13358": { - "op": "ADD" - }, - "13359": { - "op": "DUP9" - }, - "13360": { - "op": "DUP11" - }, - "13361": { - "op": "PUSH2", - "value": "0x3386" - }, - "13364": { - "jump": "i", - "op": "JUMP" - }, - "13365": { - "op": "JUMPDEST" - }, - "13366": { - "op": "DUP3" - }, - "13367": { - "op": "DUP2" - }, - "13368": { - "op": "SUB" - }, - "13369": { - "op": "PUSH1", - "value": "0x60" - }, - "13371": { - "op": "DUP5" - }, - "13372": { - "op": "ADD" - }, - "13373": { - "op": "MSTORE" - }, - "13374": { - "op": "PUSH2", - "value": "0x3448" - }, - "13377": { - "op": "DUP2" - }, - "13378": { - "op": "DUP8" - }, - "13379": { - "op": "DUP10" - }, - "13380": { - "op": "PUSH2", - "value": "0x3386" - }, - "13383": { - "jump": "i", - "op": "JUMP" - }, - "13384": { - "op": "JUMPDEST" - }, - "13385": { - "op": "SWAP1" - }, - "13386": { - "op": "POP" - }, - "13387": { - "op": "DUP3" - }, - "13388": { - "op": "DUP2" - }, - "13389": { - "op": "SUB" - }, - "13390": { - "op": "PUSH1", - "value": "0x80" - }, - "13392": { - "op": "DUP5" - }, - "13393": { - "op": "ADD" - }, - "13394": { - "op": "MSTORE" - }, - "13395": { - "op": "PUSH2", - "value": "0x345D" - }, - "13398": { - "op": "DUP2" - }, - "13399": { - "op": "DUP6" - }, - "13400": { - "op": "DUP8" - }, - "13401": { - "op": "PUSH2", - "value": "0x33BA" - }, - "13404": { - "jump": "i", - "op": "JUMP" - }, - "13405": { - "op": "JUMPDEST" - }, - "13406": { - "op": "SWAP12" - }, - "13407": { - "op": "SWAP11" - }, - "13408": { - "op": "POP" - }, - "13409": { - "op": "POP" - }, - "13410": { - "op": "POP" - }, - "13411": { - "op": "POP" - }, - "13412": { - "op": "POP" - }, - "13413": { - "op": "POP" - }, - "13414": { - "op": "POP" - }, - "13415": { - "op": "POP" - }, - "13416": { - "op": "POP" - }, - "13417": { - "op": "POP" - }, - "13418": { - "op": "POP" - }, - "13419": { - "jump": "o", - "op": "JUMP" - }, - "13420": { - "op": "JUMPDEST" - }, - "13421": { - "op": "PUSH1", - "value": "0x1" - }, - "13423": { - "op": "PUSH1", - "value": "0x1" - }, - "13425": { - "op": "PUSH1", - "value": "0xA0" - }, - "13427": { - "op": "SHL" - }, - "13428": { - "op": "SUB" - }, - "13429": { - "op": "DUP8" - }, - "13430": { - "op": "DUP2" - }, - "13431": { - "op": "AND" - }, - "13432": { - "op": "DUP3" - }, - "13433": { - "op": "MSTORE" - }, - "13434": { - "op": "DUP7" - }, - "13435": { - "op": "AND" - }, - "13436": { - "op": "PUSH1", - "value": "0x20" - }, - "13438": { - "op": "DUP3" - }, - "13439": { - "op": "ADD" - }, - "13440": { - "op": "MSTORE" - }, - "13441": { - "op": "PUSH1", - "value": "0x40" - }, - "13443": { - "op": "DUP2" - }, - "13444": { - "op": "ADD" - }, - "13445": { - "op": "DUP6" - }, - "13446": { - "op": "SWAP1" - }, - "13447": { - "op": "MSTORE" - }, - "13448": { - "op": "PUSH1", - "value": "0x60" - }, - "13450": { - "op": "DUP2" - }, - "13451": { - "op": "ADD" - }, - "13452": { - "op": "DUP5" - }, - "13453": { - "op": "SWAP1" - }, - "13454": { - "op": "MSTORE" - }, - "13455": { - "op": "PUSH1", - "value": "0xA0" - }, - "13457": { - "op": "PUSH1", - "value": "0x80" - }, - "13459": { - "op": "DUP3" - }, - "13460": { - "op": "ADD" - }, - "13461": { - "op": "DUP2" - }, - "13462": { - "op": "SWAP1" - }, - "13463": { - "op": "MSTORE" - }, - "13464": { - "op": "PUSH1", - "value": "0x0" - }, - "13466": { - "op": "SWAP1" - }, - "13467": { - "op": "PUSH2", - "value": "0x1965" - }, - "13470": { - "op": "SWAP1" - }, - "13471": { - "op": "DUP4" - }, - "13472": { - "op": "ADD" - }, - "13473": { - "op": "DUP5" - }, - "13474": { - "op": "DUP7" - }, - "13475": { - "op": "PUSH2", - "value": "0x33BA" - }, - "13478": { - "jump": "i", - "op": "JUMP" - }, - "13479": { - "op": "JUMPDEST" - }, - "13480": { - "op": "PUSH1", - "value": "0x1" - }, - "13482": { - "op": "PUSH1", - "value": "0x1" - }, - "13484": { - "op": "PUSH1", - "value": "0xA0" - }, - "13486": { - "op": "SHL" - }, - "13487": { - "op": "SUB" - }, - "13488": { - "op": "SWAP3" - }, - "13489": { - "op": "DUP4" - }, - "13490": { - "op": "AND" - }, - "13491": { - "op": "DUP2" - }, - "13492": { - "op": "MSTORE" - }, - "13493": { - "op": "SWAP2" - }, - "13494": { - "op": "AND" - }, - "13495": { - "op": "PUSH1", - "value": "0x20" - }, - "13497": { - "op": "DUP3" - }, - "13498": { - "op": "ADD" - }, - "13499": { - "op": "MSTORE" - }, - "13500": { - "op": "PUSH1", - "value": "0x40" - }, - "13502": { - "op": "ADD" - }, - "13503": { - "op": "SWAP1" - }, - "13504": { - "jump": "o", - "op": "JUMP" - }, - "13505": { - "op": "JUMPDEST" - }, - "13506": { - "op": "PUSH1", - "value": "0x1" - }, - "13508": { - "op": "PUSH1", - "value": "0x1" - }, - "13510": { - "op": "PUSH1", - "value": "0xA0" - }, - "13512": { - "op": "SHL" - }, - "13513": { - "op": "SUB" - }, - "13514": { - "op": "SWAP3" - }, - "13515": { - "op": "SWAP1" - }, - "13516": { - "op": "SWAP3" - }, - "13517": { - "op": "AND" - }, - "13518": { - "op": "DUP3" - }, - "13519": { - "op": "MSTORE" - }, - "13520": { - "op": "DUP1" - }, - "13521": { - "op": "MLOAD" - }, - "13522": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "13528": { - "op": "AND" - }, - "13529": { - "op": "PUSH1", - "value": "0x20" - }, - "13531": { - "op": "DUP1" - }, - "13532": { - "op": "DUP5" - }, - "13533": { - "op": "ADD" - }, - "13534": { - "op": "SWAP2" - }, - "13535": { - "op": "SWAP1" - }, - "13536": { - "op": "SWAP2" - }, - "13537": { - "op": "MSTORE" - }, - "13538": { - "op": "DUP2" - }, - "13539": { - "op": "ADD" - }, - "13540": { - "op": "MLOAD" - }, - "13541": { - "op": "PUSH1", - "value": "0x1" - }, - "13543": { - "op": "PUSH1", - "value": "0x1" - }, - "13545": { - "op": "PUSH1", - "value": "0xF8" - }, - "13547": { - "op": "SHL" - }, - "13548": { - "op": "SUB" - }, - "13549": { - "op": "NOT" - }, - "13550": { - "op": "AND" - }, - "13551": { - "op": "PUSH1", - "value": "0x40" - }, - "13553": { - "op": "DUP1" - }, - "13554": { - "op": "DUP5" - }, - "13555": { - "op": "ADD" - }, - "13556": { - "op": "SWAP2" - }, - "13557": { - "op": "SWAP1" - }, - "13558": { - "op": "SWAP2" - }, - "13559": { - "op": "MSTORE" - }, - "13560": { - "op": "DUP2" - }, - "13561": { - "op": "ADD" - }, - "13562": { - "op": "MLOAD" - }, - "13563": { - "op": "PUSH1", - "value": "0xFF" - }, - "13565": { - "op": "AND" - }, - "13566": { - "op": "PUSH1", - "value": "0x60" - }, - "13568": { - "op": "DUP1" - }, - "13569": { - "op": "DUP5" - }, - "13570": { - "op": "ADD" - }, - "13571": { - "op": "SWAP2" - }, - "13572": { - "op": "SWAP1" - }, - "13573": { - "op": "SWAP2" - }, - "13574": { - "op": "MSTORE" - }, - "13575": { - "op": "DUP2" - }, - "13576": { - "op": "ADD" - }, - "13577": { - "op": "MLOAD" - }, - "13578": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "13581": { - "op": "AND" - }, - "13582": { - "op": "PUSH1", - "value": "0x80" - }, - "13584": { - "op": "DUP1" - }, - "13585": { - "op": "DUP5" - }, - "13586": { - "op": "ADD" - }, - "13587": { - "op": "SWAP2" - }, - "13588": { - "op": "SWAP1" - }, - "13589": { - "op": "SWAP2" - }, - "13590": { - "op": "MSTORE" - }, - "13591": { - "op": "ADD" - }, - "13592": { - "op": "MLOAD" - }, - "13593": { - "op": "PUSH1", - "value": "0x1" - }, - "13595": { - "op": "PUSH1", - "value": "0x1" - }, - "13597": { - "op": "PUSH1", - "value": "0x70" - }, - "13599": { - "op": "SHL" - }, - "13600": { - "op": "SUB" - }, - "13601": { - "op": "NOT" - }, - "13602": { - "op": "AND" - }, - "13603": { - "op": "PUSH1", - "value": "0xA0" - }, - "13605": { - "op": "DUP3" - }, - "13606": { - "op": "ADD" - }, - "13607": { - "op": "MSTORE" - }, - "13608": { - "op": "PUSH1", - "value": "0xC0" - }, - "13610": { - "op": "ADD" - }, - "13611": { - "op": "SWAP1" - }, - "13612": { - "jump": "o", - "op": "JUMP" - }, - "13613": { - "op": "JUMPDEST" - }, - "13614": { - "op": "PUSH1", - "value": "0x20" - }, - "13616": { - "op": "DUP1" - }, - "13617": { - "op": "DUP3" - }, - "13618": { - "op": "MSTORE" - }, - "13619": { - "op": "DUP3" - }, - "13620": { - "op": "MLOAD" - }, - "13621": { - "op": "DUP3" - }, - "13622": { - "op": "DUP3" - }, - "13623": { - "op": "ADD" - }, - "13624": { - "op": "DUP2" - }, - "13625": { - "op": "SWAP1" - }, - "13626": { - "op": "MSTORE" - }, - "13627": { - "op": "PUSH1", - "value": "0x0" - }, - "13629": { - "op": "SWAP2" - }, - "13630": { - "op": "SWAP1" - }, - "13631": { - "op": "DUP5" - }, - "13632": { - "op": "DUP3" - }, - "13633": { - "op": "ADD" - }, - "13634": { - "op": "SWAP1" - }, - "13635": { - "op": "PUSH1", - "value": "0x40" - }, - "13637": { - "op": "DUP6" - }, - "13638": { - "op": "ADD" - }, - "13639": { - "op": "SWAP1" - }, - "13640": { - "op": "DUP5" - }, - "13641": { - "op": "JUMPDEST" - }, - "13642": { - "op": "DUP2" - }, - "13643": { - "op": "DUP2" - }, - "13644": { - "op": "LT" - }, - "13645": { - "op": "ISZERO" - }, - "13646": { - "op": "PUSH2", - "value": "0x3565" - }, - "13649": { - "op": "JUMPI" - }, - "13650": { - "op": "DUP4" - }, - "13651": { - "op": "MLOAD" - }, - "13652": { - "op": "DUP4" - }, - "13653": { - "op": "MSTORE" - }, - "13654": { - "op": "SWAP3" - }, - "13655": { - "op": "DUP5" - }, - "13656": { - "op": "ADD" - }, - "13657": { - "op": "SWAP3" - }, - "13658": { - "op": "SWAP2" - }, - "13659": { - "op": "DUP5" - }, - "13660": { - "op": "ADD" - }, - "13661": { - "op": "SWAP2" - }, - "13662": { - "op": "PUSH1", - "value": "0x1" - }, - "13664": { - "op": "ADD" - }, - "13665": { - "op": "PUSH2", - "value": "0x3549" - }, - "13668": { - "op": "JUMP" - }, - "13669": { - "op": "JUMPDEST" - }, - "13670": { - "op": "POP" - }, - "13671": { - "op": "SWAP1" - }, - "13672": { - "op": "SWAP7" - }, - "13673": { - "op": "SWAP6" - }, - "13674": { - "op": "POP" - }, - "13675": { - "op": "POP" - }, - "13676": { - "op": "POP" - }, - "13677": { - "op": "POP" - }, - "13678": { - "op": "POP" - }, - "13679": { - "op": "POP" - }, - "13680": { - "jump": "o", - "op": "JUMP" - }, - "13681": { - "op": "JUMPDEST" - }, - "13682": { - "op": "PUSH1", - "value": "0x20" - }, - "13684": { - "op": "DUP1" - }, - "13685": { - "op": "DUP3" - }, - "13686": { - "op": "MSTORE" - }, - "13687": { - "op": "DUP3" - }, - "13688": { - "op": "MLOAD" - }, - "13689": { - "op": "DUP3" - }, - "13690": { - "op": "DUP3" - }, - "13691": { - "op": "ADD" - }, - "13692": { - "op": "DUP2" - }, - "13693": { - "op": "SWAP1" - }, - "13694": { - "op": "MSTORE" - }, - "13695": { - "op": "PUSH1", - "value": "0x0" - }, - "13697": { - "op": "SWAP2" - }, - "13698": { - "op": "SWAP1" - }, - "13699": { - "op": "PUSH1", - "value": "0x40" - }, - "13701": { - "op": "SWAP1" - }, - "13702": { - "op": "DUP2" - }, - "13703": { - "op": "DUP6" - }, - "13704": { - "op": "ADD" - }, - "13705": { - "op": "SWAP1" - }, - "13706": { - "op": "DUP7" - }, - "13707": { - "op": "DUP5" - }, - "13708": { - "op": "ADD" - }, - "13709": { - "op": "DUP6" - }, - "13710": { - "op": "JUMPDEST" - }, - "13711": { - "op": "DUP3" - }, - "13712": { - "op": "DUP2" - }, - "13713": { - "op": "LT" - }, - "13714": { - "op": "ISZERO" - }, - "13715": { - "op": "PUSH2", - "value": "0x35E6" - }, - "13718": { - "op": "JUMPI" - }, - "13719": { - "op": "DUP2" - }, - "13720": { - "op": "MLOAD" - }, - "13721": { - "op": "DUP1" - }, - "13722": { - "op": "MLOAD" - }, - "13723": { - "op": "DUP6" - }, - "13724": { - "op": "MSTORE" - }, - "13725": { - "op": "DUP7" - }, - "13726": { - "op": "DUP2" - }, - "13727": { - "op": "ADD" - }, - "13728": { - "op": "MLOAD" - }, - "13729": { - "op": "DUP8" - }, - "13730": { - "op": "DUP7" - }, - "13731": { - "op": "ADD" - }, - "13732": { - "op": "MSTORE" - }, - "13733": { - "op": "DUP6" - }, - "13734": { - "op": "DUP2" - }, - "13735": { - "op": "ADD" - }, - "13736": { - "op": "MLOAD" - }, - "13737": { - "op": "DUP7" - }, - "13738": { - "op": "DUP7" - }, - "13739": { - "op": "ADD" - }, - "13740": { - "op": "MSTORE" - }, - "13741": { - "op": "PUSH1", - "value": "0x60" - }, - "13743": { - "op": "DUP1" - }, - "13744": { - "op": "DUP3" - }, - "13745": { - "op": "ADD" - }, - "13746": { - "op": "MLOAD" - }, - "13747": { - "op": "SWAP1" - }, - "13748": { - "op": "DUP7" - }, - "13749": { - "op": "ADD" - }, - "13750": { - "op": "MSTORE" - }, - "13751": { - "op": "PUSH1", - "value": "0x80" - }, - "13753": { - "op": "DUP1" - }, - "13754": { - "op": "DUP3" - }, - "13755": { - "op": "ADD" - }, - "13756": { - "op": "MLOAD" - }, - "13757": { - "op": "SWAP1" - }, - "13758": { - "op": "DUP7" - }, - "13759": { - "op": "ADD" - }, - "13760": { - "op": "MSTORE" - }, - "13761": { - "op": "PUSH1", - "value": "0xA0" - }, - "13763": { - "op": "SWAP1" - }, - "13764": { - "op": "DUP2" - }, - "13765": { - "op": "ADD" - }, - "13766": { - "op": "MLOAD" - }, - "13767": { - "op": "SWAP1" - }, - "13768": { - "op": "PUSH1", - "value": "0x4" - }, - "13770": { - "op": "DUP3" - }, - "13771": { - "op": "LT" - }, - "13772": { - "op": "PUSH2", - "value": "0x35D1" - }, - "13775": { - "op": "JUMPI" - }, - "13776": { - "op": "INVALID" - }, - "13777": { - "op": "JUMPDEST" - }, - "13778": { - "op": "DUP6" - }, - "13779": { - "op": "ADD" - }, - "13780": { - "op": "MSTORE" - }, - "13781": { - "op": "PUSH1", - "value": "0xC0" - }, - "13783": { - "op": "SWAP1" - }, - "13784": { - "op": "SWAP4" - }, - "13785": { - "op": "ADD" - }, - "13786": { - "op": "SWAP3" - }, - "13787": { - "op": "SWAP1" - }, - "13788": { - "op": "DUP6" - }, - "13789": { - "op": "ADD" - }, - "13790": { - "op": "SWAP1" - }, - "13791": { - "op": "PUSH1", - "value": "0x1" - }, - "13793": { - "op": "ADD" - }, - "13794": { - "op": "PUSH2", - "value": "0x358E" - }, - "13797": { - "op": "JUMP" - }, - "13798": { - "op": "JUMPDEST" - }, - "13799": { - "op": "POP" - }, - "13800": { - "op": "SWAP2" - }, - "13801": { - "op": "SWAP8" - }, - "13802": { - "op": "SWAP7" - }, - "13803": { - "op": "POP" - }, - "13804": { - "op": "POP" - }, - "13805": { - "op": "POP" - }, - "13806": { - "op": "POP" - }, - "13807": { - "op": "POP" - }, - "13808": { - "op": "POP" - }, - "13809": { - "op": "POP" - }, - "13810": { - "jump": "o", - "op": "JUMP" - }, - "13811": { - "op": "JUMPDEST" - }, - "13812": { - "op": "PUSH1", - "value": "0x0" - }, - "13814": { - "op": "PUSH1", - "value": "0x40" - }, - "13816": { - "op": "DUP3" - }, - "13817": { - "op": "MSTORE" - }, - "13818": { - "op": "PUSH2", - "value": "0x3607" - }, - "13821": { - "op": "PUSH1", - "value": "0x40" - }, - "13823": { - "op": "DUP4" - }, - "13824": { - "op": "ADD" - }, - "13825": { - "op": "DUP7" - }, - "13826": { - "op": "DUP9" - }, - "13827": { - "op": "PUSH2", - "value": "0x3386" - }, - "13830": { - "jump": "i", - "op": "JUMP" - }, - "13831": { - "op": "JUMPDEST" - }, - "13832": { - "op": "DUP3" - }, - "13833": { - "op": "DUP2" - }, - "13834": { - "op": "SUB" - }, - "13835": { - "op": "PUSH1", - "value": "0x20" - }, - "13837": { - "op": "DUP5" - }, - "13838": { - "op": "ADD" - }, - "13839": { - "op": "MSTORE" - }, - "13840": { - "op": "PUSH2", - "value": "0x361A" - }, - "13843": { - "op": "DUP2" - }, - "13844": { - "op": "DUP6" - }, - "13845": { - "op": "DUP8" - }, - "13846": { - "op": "PUSH2", - "value": "0x3386" - }, - "13849": { - "jump": "i", - "op": "JUMP" - }, - "13850": { - "op": "JUMPDEST" - }, - "13851": { - "op": "SWAP8" - }, - "13852": { - "op": "SWAP7" - }, - "13853": { - "op": "POP" - }, - "13854": { - "op": "POP" - }, - "13855": { - "op": "POP" - }, - "13856": { - "op": "POP" - }, - "13857": { - "op": "POP" - }, - "13858": { - "op": "POP" - }, - "13859": { - "op": "POP" - }, - "13860": { - "jump": "o", - "op": "JUMP" - }, - "13861": { - "op": "JUMPDEST" - }, - "13862": { - "op": "SWAP1" - }, - "13863": { - "op": "ISZERO" - }, - "13864": { - "op": "ISZERO" - }, - "13865": { - "op": "DUP2" - }, - "13866": { - "op": "MSTORE" - }, - "13867": { - "op": "PUSH1", - "value": "0x20" - }, - "13869": { - "op": "ADD" - }, - "13870": { - "op": "SWAP1" - }, - "13871": { - "jump": "o", - "op": "JUMP" - }, - "13872": { - "op": "JUMPDEST" - }, - "13873": { - "op": "SWAP1" - }, - "13874": { - "op": "DUP2" - }, - "13875": { - "op": "MSTORE" - }, - "13876": { - "op": "PUSH1", - "value": "0x20" - }, - "13878": { - "op": "ADD" - }, - "13879": { - "op": "SWAP1" - }, - "13880": { - "jump": "o", - "op": "JUMP" - }, - "13881": { - "op": "JUMPDEST" - }, - "13882": { - "op": "PUSH1", - "value": "0x0" - }, - "13884": { - "op": "PUSH1", - "value": "0x20" - }, - "13886": { - "op": "DUP3" - }, - "13887": { - "op": "MSTORE" - }, - "13888": { - "op": "DUP3" - }, - "13889": { - "op": "MLOAD" - }, - "13890": { - "op": "DUP1" - }, - "13891": { - "op": "PUSH1", - "value": "0x20" - }, - "13893": { - "op": "DUP5" - }, - "13894": { - "op": "ADD" - }, - "13895": { - "op": "MSTORE" - }, - "13896": { - "op": "PUSH2", - "value": "0x3658" - }, - "13899": { - "op": "DUP2" - }, - "13900": { - "op": "PUSH1", - "value": "0x40" - }, - "13902": { - "op": "DUP6" - }, - "13903": { - "op": "ADD" - }, - "13904": { - "op": "PUSH1", - "value": "0x20" - }, - "13906": { - "op": "DUP8" - }, - "13907": { - "op": "ADD" - }, - "13908": { - "op": "PUSH2", - "value": "0x3815" - }, - "13911": { - "jump": "i", - "op": "JUMP" - }, - "13912": { - "op": "JUMPDEST" - }, - "13913": { - "op": "PUSH1", - "value": "0x1F" - }, - "13915": { - "op": "ADD" - }, - "13916": { - "op": "PUSH1", - "value": "0x1F" - }, - "13918": { - "op": "NOT" - }, - "13919": { - "op": "AND" - }, - "13920": { - "op": "SWAP2" - }, - "13921": { - "op": "SWAP1" - }, - "13922": { - "op": "SWAP2" - }, - "13923": { - "op": "ADD" - }, - "13924": { - "op": "PUSH1", - "value": "0x40" - }, - "13926": { - "op": "ADD" - }, - "13927": { - "op": "SWAP3" - }, - "13928": { - "op": "SWAP2" - }, - "13929": { - "op": "POP" - }, - "13930": { - "op": "POP" - }, - "13931": { - "jump": "o", - "op": "JUMP" - }, - "13932": { - "op": "JUMPDEST" - }, - "13933": { - "op": "PUSH1", - "value": "0x20" - }, - "13935": { - "op": "DUP1" - }, - "13936": { - "op": "DUP3" - }, - "13937": { - "op": "MSTORE" - }, - "13938": { - "op": "PUSH1", - "value": "0xF" - }, - "13940": { - "op": "SWAP1" - }, - "13941": { - "op": "DUP3" - }, - "13942": { - "op": "ADD" - }, - "13943": { - "op": "MSTORE" - }, - "13944": { - "op": "PUSH15", - "value": "0x496E76616C69642061646472657373" - }, - "13960": { - "op": "PUSH1", - "value": "0x88" - }, - "13962": { - "op": "SHL" - }, - "13963": { - "op": "PUSH1", - "value": "0x40" - }, - "13965": { - "op": "DUP3" - }, - "13966": { - "op": "ADD" - }, - "13967": { - "op": "MSTORE" - }, - "13968": { - "op": "PUSH1", - "value": "0x60" - }, - "13970": { - "op": "ADD" - }, - "13971": { - "op": "SWAP1" - }, - "13972": { - "jump": "o", - "op": "JUMP" - }, - "13973": { - "op": "JUMPDEST" - }, - "13974": { - "op": "PUSH1", - "value": "0x20" - }, - "13976": { - "op": "DUP1" - }, - "13977": { - "op": "DUP3" - }, - "13978": { - "op": "MSTORE" - }, - "13979": { - "op": "PUSH1", - "value": "0x11" - }, - "13981": { - "op": "SWAP1" - }, - "13982": { - "op": "DUP3" - }, - "13983": { - "op": "ADD" - }, - "13984": { - "op": "MSTORE" - }, - "13985": { - "op": "PUSH17", - "value": "0x155B985D5D1A1BDC9A5E99590818D85B1B" - }, - "14003": { - "op": "PUSH1", - "value": "0x7A" - }, - "14005": { - "op": "SHL" - }, - "14006": { - "op": "PUSH1", - "value": "0x40" - }, - "14008": { - "op": "DUP3" - }, - "14009": { - "op": "ADD" - }, - "14010": { - "op": "MSTORE" - }, - "14011": { - "op": "PUSH1", - "value": "0x60" - }, - "14013": { - "op": "ADD" - }, - "14014": { - "op": "SWAP1" - }, - "14015": { - "jump": "o", - "op": "JUMP" - }, - "14016": { - "op": "JUMPDEST" - }, - "14017": { - "op": "PUSH1", - "value": "0x20" - }, - "14019": { - "op": "DUP1" - }, - "14020": { - "op": "DUP3" - }, - "14021": { - "op": "MSTORE" - }, - "14022": { - "op": "PUSH1", - "value": "0xC" - }, - "14024": { - "op": "SWAP1" - }, - "14025": { - "op": "DUP3" - }, - "14026": { - "op": "ADD" - }, - "14027": { - "op": "MSTORE" - }, - "14028": { - "op": "PUSH12", - "value": "0x155B985D5D1A1BDC9A5E9959" - }, - "14041": { - "op": "PUSH1", - "value": "0xA2" - }, - "14043": { - "op": "SHL" - }, - "14044": { - "op": "PUSH1", - "value": "0x40" - }, - "14046": { - "op": "DUP3" - }, - "14047": { - "op": "ADD" - }, - "14048": { - "op": "MSTORE" - }, - "14049": { - "op": "PUSH1", - "value": "0x60" - }, - "14051": { - "op": "ADD" - }, - "14052": { - "op": "SWAP1" - }, - "14053": { - "jump": "o", - "op": "JUMP" - }, - "14054": { - "op": "JUMPDEST" - }, - "14055": { - "op": "PUSH1", - "value": "0x20" - }, - "14057": { - "op": "DUP1" - }, - "14058": { - "op": "DUP3" - }, - "14059": { - "op": "MSTORE" - }, - "14060": { - "op": "PUSH1", - "value": "0xD" - }, - "14062": { - "op": "SWAP1" - }, - "14063": { - "op": "DUP3" - }, - "14064": { - "op": "ADD" - }, - "14065": { - "op": "MSTORE" - }, - "14066": { - "op": "PUSH13", - "value": "0x92DCECC2D8D2C840D2DCC8CAF" - }, - "14080": { - "op": "PUSH1", - "value": "0x9B" - }, - "14082": { - "op": "SHL" - }, - "14083": { - "op": "PUSH1", - "value": "0x40" - }, - "14085": { - "op": "DUP3" - }, - "14086": { - "op": "ADD" - }, - "14087": { - "op": "MSTORE" - }, - "14088": { - "op": "PUSH1", - "value": "0x60" - }, - "14090": { - "op": "ADD" - }, - "14091": { - "op": "SWAP1" - }, - "14092": { - "jump": "o", - "op": "JUMP" - }, - "14093": { - "op": "JUMPDEST" - }, - "14094": { - "op": "PUSH1", - "value": "0x20" - }, - "14096": { - "op": "DUP1" - }, - "14097": { - "op": "DUP3" - }, - "14098": { - "op": "MSTORE" - }, - "14099": { - "op": "PUSH1", - "value": "0x13" - }, - "14101": { - "op": "SWAP1" - }, - "14102": { - "op": "DUP3" - }, - "14103": { - "op": "ADD" - }, - "14104": { - "op": "MSTORE" - }, - "14105": { - "op": "PUSH19", - "value": "0x4163636F756E74206D75737420736574746C65" - }, - "14125": { - "op": "PUSH1", - "value": "0x68" - }, - "14127": { - "op": "SHL" - }, - "14128": { - "op": "PUSH1", - "value": "0x40" - }, - "14130": { - "op": "DUP3" - }, - "14131": { - "op": "ADD" - }, - "14132": { - "op": "MSTORE" - }, - "14133": { - "op": "PUSH1", - "value": "0x60" - }, - "14135": { - "op": "ADD" - }, - "14136": { - "op": "SWAP1" - }, - "14137": { - "jump": "o", - "op": "JUMP" - }, - "14138": { - "op": "JUMPDEST" - }, - "14139": { - "op": "PUSH1", - "value": "0x20" - }, - "14141": { - "op": "DUP1" - }, - "14142": { - "op": "DUP3" - }, - "14143": { - "op": "MSTORE" - }, - "14144": { - "op": "PUSH1", - "value": "0xF" - }, - "14146": { - "op": "SWAP1" - }, - "14147": { - "op": "DUP3" - }, - "14148": { - "op": "ADD" - }, - "14149": { - "op": "MSTORE" - }, - "14150": { - "op": "PUSH15", - "value": "0x4F766572206D617820617373657473" - }, - "14166": { - "op": "PUSH1", - "value": "0x88" - }, - "14168": { - "op": "SHL" - }, - "14169": { - "op": "PUSH1", - "value": "0x40" - }, - "14171": { - "op": "DUP3" - }, - "14172": { - "op": "ADD" - }, - "14173": { - "op": "MSTORE" - }, - "14174": { - "op": "PUSH1", - "value": "0x60" - }, - "14176": { - "op": "ADD" - }, - "14177": { - "op": "SWAP1" - }, - "14178": { - "jump": "o", - "op": "JUMP" - }, - "14179": { - "op": "JUMPDEST" - }, - "14180": { - "op": "PUSH1", - "value": "0x20" - }, - "14182": { - "op": "DUP1" - }, - "14183": { - "op": "DUP3" - }, - "14184": { - "op": "MSTORE" - }, - "14185": { - "op": "PUSH1", - "value": "0x10" - }, - "14187": { - "op": "SWAP1" - }, - "14188": { - "op": "DUP3" - }, - "14189": { - "op": "ADD" - }, - "14190": { - "op": "MSTORE" - }, - "14191": { - "op": "PUSH16", - "value": "0x496E76616C6964206D61747572697479" - }, - "14208": { - "op": "PUSH1", - "value": "0x80" - }, - "14210": { - "op": "SHL" - }, - "14211": { - "op": "PUSH1", - "value": "0x40" - }, - "14213": { - "op": "DUP3" - }, - "14214": { - "op": "ADD" - }, - "14215": { - "op": "MSTORE" - }, - "14216": { - "op": "PUSH1", - "value": "0x60" - }, - "14218": { - "op": "ADD" - }, - "14219": { - "op": "SWAP1" - }, - "14220": { - "jump": "o", - "op": "JUMP" - }, - "14221": { - "op": "JUMPDEST" - }, - "14222": { - "op": "PUSH1", - "value": "0x20" - }, - "14224": { - "op": "DUP1" - }, - "14225": { - "op": "DUP3" - }, - "14226": { - "op": "MSTORE" - }, - "14227": { - "op": "PUSH1", - "value": "0x12" - }, - "14229": { - "op": "SWAP1" - }, - "14230": { - "op": "DUP3" - }, - "14231": { - "op": "ADD" - }, - "14232": { - "op": "MSTORE" - }, - "14233": { - "op": "PUSH18", - "value": "0x12511CC81B5D5CDD081899481CDBDC9D1959" - }, - "14252": { - "op": "PUSH1", - "value": "0x72" - }, - "14254": { - "op": "SHL" - }, - "14255": { - "op": "PUSH1", - "value": "0x40" - }, - "14257": { - "op": "DUP3" - }, - "14258": { - "op": "ADD" - }, - "14259": { - "op": "MSTORE" - }, - "14260": { - "op": "PUSH1", - "value": "0x60" - }, - "14262": { - "op": "ADD" - }, - "14263": { - "op": "SWAP1" - }, - "14264": { - "jump": "o", - "op": "JUMP" - }, - "14265": { - "op": "JUMPDEST" - }, - "14266": { - "op": "PUSH1", - "value": "0x20" - }, - "14268": { - "op": "DUP1" - }, - "14269": { - "op": "DUP3" - }, - "14270": { - "op": "MSTORE" - }, - "14271": { - "op": "PUSH1", - "value": "0xC" - }, - "14273": { - "op": "SWAP1" - }, - "14274": { - "op": "DUP3" - }, - "14275": { - "op": "ADD" - }, - "14276": { - "op": "MSTORE" - }, - "14277": { - "op": "PUSH12", - "value": "0x139BDD081858D8D95C1D1959" - }, - "14290": { - "op": "PUSH1", - "value": "0xA2" - }, - "14292": { - "op": "SHL" - }, - "14293": { - "op": "PUSH1", - "value": "0x40" - }, - "14295": { - "op": "DUP3" - }, - "14296": { - "op": "ADD" - }, - "14297": { - "op": "MSTORE" - }, - "14298": { - "op": "PUSH1", - "value": "0x60" - }, - "14300": { - "op": "ADD" - }, - "14301": { - "op": "SWAP1" - }, - "14302": { - "jump": "o", - "op": "JUMP" - }, - "14303": { - "op": "JUMPDEST" - }, - "14304": { - "op": "SWAP2" - }, - "14305": { - "op": "DUP3" - }, - "14306": { - "op": "MSTORE" - }, - "14307": { - "op": "PUSH1", - "value": "0x20" - }, - "14309": { - "op": "DUP3" - }, - "14310": { - "op": "ADD" - }, - "14311": { - "op": "MSTORE" - }, - "14312": { - "op": "PUSH1", - "value": "0x40" - }, - "14314": { - "op": "ADD" - }, - "14315": { - "op": "SWAP1" - }, - "14316": { - "jump": "o", - "op": "JUMP" - }, - "14317": { - "op": "JUMPDEST" - }, - "14318": { - "op": "PUSH1", - "value": "0x0" - }, - "14320": { - "op": "DUP1" - }, - "14321": { - "op": "DUP6" - }, - "14322": { - "op": "DUP6" - }, - "14323": { - "op": "GT" - }, - "14324": { - "op": "ISZERO" - }, - "14325": { - "op": "PUSH2", - "value": "0x37FC" - }, - "14328": { - "op": "JUMPI" - }, - "14329": { - "op": "DUP2" - }, - "14330": { - "op": "DUP3" - }, - "14331": { - "op": "REVERT" - }, - "14332": { - "op": "JUMPDEST" - }, - "14333": { - "op": "DUP4" - }, - "14334": { - "op": "DUP7" - }, - "14335": { - "op": "GT" - }, - "14336": { - "op": "ISZERO" - }, - "14337": { - "op": "PUSH2", - "value": "0x3808" - }, - "14340": { - "op": "JUMPI" - }, - "14341": { - "op": "DUP2" - }, - "14342": { - "op": "DUP3" - }, - "14343": { - "op": "REVERT" - }, - "14344": { - "op": "JUMPDEST" - }, - "14345": { - "op": "POP" - }, - "14346": { - "op": "POP" - }, - "14347": { - "op": "DUP3" - }, - "14348": { - "op": "ADD" - }, - "14349": { - "op": "SWAP4" - }, - "14350": { - "op": "SWAP2" - }, - "14351": { - "op": "SWAP1" - }, - "14352": { - "op": "SWAP3" - }, - "14353": { - "op": "SUB" - }, - "14354": { - "op": "SWAP2" - }, - "14355": { - "op": "POP" - }, - "14356": { - "jump": "o", - "op": "JUMP" - }, - "14357": { - "op": "JUMPDEST" - }, - "14358": { - "op": "PUSH1", - "value": "0x0" - }, - "14360": { - "op": "JUMPDEST" - }, - "14361": { - "op": "DUP4" - }, - "14362": { - "op": "DUP2" - }, - "14363": { - "op": "LT" - }, - "14364": { - "op": "ISZERO" - }, - "14365": { - "op": "PUSH2", - "value": "0x3830" - }, - "14368": { - "op": "JUMPI" - }, - "14369": { - "op": "DUP2" - }, - "14370": { - "op": "DUP2" - }, - "14371": { - "op": "ADD" - }, - "14372": { - "op": "MLOAD" - }, - "14373": { - "op": "DUP4" - }, - "14374": { - "op": "DUP3" - }, - "14375": { - "op": "ADD" - }, - "14376": { - "op": "MSTORE" - }, - "14377": { - "op": "PUSH1", - "value": "0x20" - }, - "14379": { - "op": "ADD" - }, - "14380": { - "op": "PUSH2", - "value": "0x3818" - }, - "14383": { - "op": "JUMP" - }, - "14384": { - "op": "JUMPDEST" - }, - "14385": { - "op": "DUP4" - }, - "14386": { - "op": "DUP2" - }, - "14387": { - "op": "GT" - }, - "14388": { - "op": "ISZERO" - }, - "14389": { - "op": "PUSH2", - "value": "0x1632" - }, - "14392": { - "op": "JUMPI" - }, - "14393": { - "op": "POP" - }, - "14394": { - "op": "POP" - }, - "14395": { - "op": "PUSH1", - "value": "0x0" - }, - "14397": { - "op": "SWAP2" - }, - "14398": { - "op": "ADD" - }, - "14399": { - "op": "MSTORE" - }, - "14400": { - "jump": "o", - "op": "JUMP" - }, - "14401": { - "op": "JUMPDEST" - }, - "14402": { - "op": "PUSH1", - "value": "0x1" - }, - "14404": { - "op": "PUSH1", - "value": "0x1" - }, - "14406": { - "op": "PUSH1", - "value": "0xA0" - }, - "14408": { - "op": "SHL" - }, - "14409": { - "op": "SUB" - }, - "14410": { - "op": "DUP2" - }, - "14411": { - "op": "AND" - }, - "14412": { - "op": "DUP2" - }, - "14413": { - "op": "EQ" - }, - "14414": { - "op": "PUSH2", - "value": "0x3856" - }, - "14417": { - "op": "JUMPI" - }, - "14418": { - "op": "PUSH1", - "value": "0x0" - }, - "14420": { - "op": "DUP1" - }, - "14421": { - "op": "REVERT" - }, - "14422": { - "op": "JUMPDEST" - }, - "14423": { - "op": "POP" - }, - "14424": { - "jump": "o", - "op": "JUMP" - }, - "14425": { - "op": "JUMPDEST" - }, - "14426": { - "op": "PUSH1", - "value": "0x1" - }, - "14428": { - "op": "PUSH1", - "value": "0x1" - }, - "14430": { - "op": "PUSH1", - "value": "0xE0" - }, - "14432": { - "op": "SHL" - }, - "14433": { - "op": "SUB" - }, - "14434": { - "op": "NOT" - }, - "14435": { - "op": "DUP2" - }, - "14436": { - "op": "AND" - }, - "14437": { - "op": "DUP2" - }, - "14438": { - "op": "EQ" - }, - "14439": { - "op": "PUSH2", - "value": "0x3856" - }, - "14442": { - "op": "JUMPI" - }, - "14443": { - "op": "PUSH1", - "value": "0x0" - }, - "14445": { - "op": "DUP1" - }, - "14446": { - "op": "REVERT" - }, - "14447": { - "op": "JUMPDEST" - }, - "14448": { - "op": "PUSH2", - "value": "0xFFFF" - }, - "14451": { - "op": "DUP2" - }, - "14452": { - "op": "AND" - }, - "14453": { - "op": "DUP2" - }, - "14454": { - "op": "EQ" - }, - "14455": { - "op": "PUSH2", - "value": "0x3856" - }, - "14458": { - "op": "JUMPI" - }, - "14459": { - "op": "PUSH1", - "value": "0x0" - }, - "14461": { - "op": "DUP1" - }, - "14462": { - "op": "REVERT" - }, - "14463": { - "op": "JUMPDEST" - }, - "14464": { - "op": "PUSH5", - "value": "0xFFFFFFFFFF" - }, - "14470": { - "op": "DUP2" - }, - "14471": { - "op": "AND" - }, - "14472": { - "op": "DUP2" - }, - "14473": { - "op": "EQ" - }, - "14474": { - "op": "PUSH2", - "value": "0x3856" - }, - "14477": { - "op": "JUMPI" - }, - "14478": { - "op": "PUSH1", - "value": "0x0" - }, - "14480": { - "op": "DUP1" - }, - "14481": { - "op": "REVERT" - }, - "14482": { - "op": "JUMPDEST" - }, - "14483": { - "op": "PUSH1", - "value": "0xFF" - }, - "14485": { - "op": "DUP2" - }, - "14486": { - "op": "AND" - }, - "14487": { - "op": "DUP2" - }, - "14488": { - "op": "EQ" - }, - "14489": { - "op": "PUSH2", - "value": "0x3856" - }, - "14492": { - "op": "JUMPI" - }, - "14493": { - "op": "PUSH1", - "value": "0x0" - }, - "14495": { - "op": "DUP1" - }, - "14496": { - "op": "REVERT" - } - }, - "sha1": "9990855d2421ebb03f25cd2269aa560a54cf9b05", - "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./ActionGuards.sol\";\nimport \"../FreeCollateralExternal.sol\";\nimport \"../../global/StorageLayoutV1.sol\";\nimport \"../../math/SafeInt256.sol\";\nimport \"../../internal/AccountContextHandler.sol\";\nimport \"../../internal/portfolio/TransferAssets.sol\";\nimport \"../../internal/portfolio/PortfolioHandler.sol\";\nimport \"../../../interfaces/notional/NotionalProxy.sol\";\nimport \"../../../interfaces/IERC1155TokenReceiver.sol\";\nimport \"../../../interfaces/notional/nERC1155Interface.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\";\nimport \"@openzeppelin/contracts/utils/Address.sol\";\n\ncontract ERC1155Action is nERC1155Interface, ActionGuards {\n using SafeInt256 for int256;\n using AccountContextHandler for AccountContext;\n\n bytes4 internal constant ERC1155_ACCEPTED = bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"));\n bytes4 internal constant ERC1155_BATCH_ACCEPTED = bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"));\n\n function supportsInterface(bytes4 interfaceId) external pure override returns (bool) {\n return interfaceId == type(IERC1155).interfaceId;\n }\n\n /// @notice Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by\n /// this method do not show negative fCash balances because only unsigned integers are returned. They\n /// are represented by zero here. Use `signedBalanceOf` to get a signed return value.\n /// @param account account to get the id for\n /// @param id the ERC1155 id\n /// @return Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)\n function balanceOf(address account, uint256 id) public view override returns (uint256) {\n int256 notional = signedBalanceOf(account, id);\n return notional < 0 ? 0 : notional.toUint();\n }\n\n /// @notice Returns the balance of an ERC1155 id on an account.\n /// @param account account to get the id for\n /// @param id the ERC1155 id\n /// @return notional balance of the ERC1155 id as a signed integer\n function signedBalanceOf(address account, uint256 id) public view override returns (int256 notional) {\n AccountContext memory accountContext = AccountContextHandler.getAccountContext(account);\n\n if (accountContext.isBitmapEnabled()) {\n notional = _balanceInBitmap(account, accountContext.bitmapCurrencyId, id);\n } else {\n notional = _balanceInArray(\n PortfolioHandler.getSortedPortfolio(account, accountContext.assetArrayLength),\n id\n );\n }\n }\n\n /// @notice Returns the balance of a batch of accounts and ids.\n /// @param accounts array of accounts to get balances for\n /// @param ids array of ids to get balances for\n /// @return Returns an array of signed balances\n function signedBalanceOfBatch(address[] calldata accounts, uint256[] calldata ids)\n external\n view\n override\n returns (int256[] memory)\n {\n require(accounts.length == ids.length);\n int256[] memory amounts = new int256[](accounts.length);\n\n for (uint256 i; i < accounts.length; i++) {\n // This is pretty inefficient but gets the job done\n amounts[i] = signedBalanceOf(accounts[i], ids[i]);\n }\n\n return amounts;\n }\n\n /// @notice Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented\n /// as zero balances in the array. \n /// @param accounts array of accounts to get balances for\n /// @param ids array of ids to get balances for\n /// @return Returns an array of unsigned balances\n function balanceOfBatch(address[] calldata accounts, uint256[] calldata ids)\n external\n view\n override\n returns (uint256[] memory)\n {\n require(accounts.length == ids.length);\n uint256[] memory amounts = new uint256[](accounts.length);\n\n for (uint256 i; i < accounts.length; i++) {\n // This is pretty inefficient but gets the job done\n amounts[i] = balanceOf(accounts[i], ids[i]);\n }\n\n return amounts;\n }\n\n /// @dev Returns the balance from a bitmap given the id\n function _balanceInBitmap(\n address account,\n uint256 bitmapCurrencyId,\n uint256 id\n ) internal view returns (int256) {\n (uint256 currencyId, uint256 maturity, uint256 assetType) = TransferAssets.decodeAssetId(id);\n\n if (\n currencyId != bitmapCurrencyId ||\n assetType != Constants.FCASH_ASSET_TYPE\n ) {\n // Neither of these are possible for a bitmap group\n return 0;\n } else {\n return BitmapAssetsHandler.getifCashNotional(account, currencyId, maturity);\n }\n }\n\n /// @dev Searches an array for the matching asset\n function _balanceInArray(PortfolioAsset[] memory portfolio, uint256 id)\n internal\n pure\n returns (int256)\n {\n (uint256 currencyId, uint256 maturity, uint256 assetType) = TransferAssets.decodeAssetId(id);\n\n for (uint256 i; i < portfolio.length; i++) {\n PortfolioAsset memory asset = portfolio[i];\n if (\n asset.currencyId == currencyId &&\n asset.maturity == maturity &&\n asset.assetType == assetType\n ) return asset.notional;\n }\n }\n\n /// @notice Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash\n /// than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n /// @param from account to transfer from\n /// @param to account to transfer to\n /// @param id ERC1155 id of the asset\n /// @param amount amount to transfer\n /// @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n /// a trading action on Notional for the `from` address\n /// @dev emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled\n function safeTransferFrom(\n address from,\n address to,\n uint256 id,\n uint256 amount,\n bytes calldata data\n ) external payable override {\n // NOTE: there is no re-entrancy guard on this method because that would prevent a callback in \n // _checkPostTransferEvent. The external call to the receiver is done at the very end after all stateful\n // updates have occurred.\n _validateAccounts(from, to);\n\n // When amount is set to zero this method can be used as a way to execute trades via a transfer operator\n AccountContext memory fromContext;\n if (amount > 0) {\n PortfolioAsset[] memory assets = new PortfolioAsset[](1);\n PortfolioAsset memory asset = assets[0];\n\n (asset.currencyId, asset.maturity, asset.assetType) = TransferAssets.decodeAssetId(id);\n // This ensures that asset.notional is always a positive amount\n asset.notional = SafeInt256.toInt(amount);\n _requireValidMaturity(asset.currencyId, asset.maturity, block.timestamp);\n\n // prettier-ignore\n (fromContext, /* toContext */) = _transfer(from, to, assets);\n\n emit TransferSingle(msg.sender, from, to, id, amount);\n } else {\n fromContext = AccountContextHandler.getAccountContext(from);\n }\n\n // toContext is always empty here because we cannot have bidirectional transfers in `safeTransferFrom`\n AccountContext memory toContext;\n _checkPostTransferEvent(from, to, fromContext, toContext, data, false);\n\n // Do this external call at the end to prevent re-entrancy\n if (Address.isContract(to)) {\n require(\n IERC1155TokenReceiver(to).onERC1155Received(msg.sender, from, id, amount, data) ==\n ERC1155_ACCEPTED,\n \"Not accepted\"\n );\n }\n }\n\n /// @notice Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash\n /// than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n /// @param from account to transfer from\n /// @param to account to transfer to\n /// @param ids ERC1155 ids of the assets\n /// @param amounts amounts to transfer\n /// @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n /// a trading action on Notional for the `from` address\n /// @dev emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled\n function safeBatchTransferFrom(\n address from,\n address to,\n uint256[] calldata ids,\n uint256[] calldata amounts,\n bytes calldata data\n ) external payable override {\n // NOTE: there is no re-entrancy guard on this method because that would prevent a callback in \n // _checkPostTransferEvent. The external call to the receiver is done at the very end.\n _validateAccounts(from, to);\n\n (PortfolioAsset[] memory assets, bool toTransferNegative) = _decodeToAssets(ids, amounts);\n // When doing a bidirectional transfer must ensure that the `to` account has given approval\n // to msg.sender as well.\n if (toTransferNegative) require(isApprovedForAll(to, msg.sender), \"Unauthorized\");\n\n (AccountContext memory fromContext, AccountContext memory toContext) = _transfer(\n from,\n to,\n assets\n );\n\n _checkPostTransferEvent(from, to, fromContext, toContext, data, toTransferNegative);\n emit TransferBatch(msg.sender, from, to, ids, amounts);\n\n // Do this at the end to prevent re-entrancy\n if (Address.isContract(to)) {\n require(\n IERC1155TokenReceiver(to).onERC1155BatchReceived(\n msg.sender,\n from,\n ids,\n amounts,\n data\n ) == ERC1155_BATCH_ACCEPTED,\n \"Not accepted\"\n );\n }\n }\n\n /// @dev Validates accounts on transfer\n function _validateAccounts(address from, address to) private view {\n // Cannot transfer to self, cannot transfer to zero address\n require(from != to && to != address(0) && to != address(this), \"Invalid address\");\n // Authentication is valid\n require(msg.sender == from || isApprovedForAll(from, msg.sender), \"Unauthorized\");\n // nTokens will not accept transfers because they do not implement the ERC1155\n // receive method\n\n // Defensive check to ensure that an authorized operator does not call these methods\n // with an invalid `from` account\n requireValidAccount(from);\n }\n\n /// @notice Decodes ids and amounts to PortfolioAsset objects\n /// @param ids array of ERC1155 ids\n /// @param amounts amounts to transfer\n /// @return array of portfolio asset objects\n function decodeToAssets(uint256[] calldata ids, uint256[] calldata amounts)\n external\n view\n override\n returns (PortfolioAsset[] memory)\n {\n // prettier-ignore\n (PortfolioAsset[] memory assets, /* */) = _decodeToAssets(ids, amounts);\n return assets;\n }\n\n function _decodeToAssets(uint256[] calldata ids, uint256[] calldata amounts)\n internal\n view\n returns (PortfolioAsset[] memory, bool)\n {\n require(ids.length == amounts.length);\n bool toTransferNegative = false;\n PortfolioAsset[] memory assets = new PortfolioAsset[](ids.length);\n\n for (uint256 i; i < ids.length; i++) {\n // Require that ids are not duplicated, there is no valid reason to have duplicate ids\n if (i > 0) require(ids[i] > ids[i - 1], \"IDs must be sorted\");\n\n PortfolioAsset memory asset = assets[i];\n (asset.currencyId, asset.maturity, asset.assetType) = TransferAssets.decodeAssetId(ids[i]);\n\n _requireValidMaturity(asset.currencyId, asset.maturity, block.timestamp);\n // Although amounts is encoded as uint256 we allow it to be negative here. This will\n // allow for bidirectional transfers of fCash. Internally fCash assets are always stored\n // as int128 (for bitmap portfolio) or int88 (for array portfolio) so there is no potential\n // that a uint256 value that is greater than type(int256).max would actually valid.\n asset.notional = int256(amounts[i]);\n // If there is a negative transfer we mark it as such, this will force us to do a free collateral\n // check on the `to` address as well.\n if (asset.notional < 0) toTransferNegative = true;\n }\n\n return (assets, toTransferNegative);\n }\n\n /// @notice Encodes parameters into an ERC1155 id\n /// @param currencyId currency id of the asset\n /// @param maturity timestamp of the maturity\n /// @param assetType id of the asset type\n /// @return ERC1155 id\n function encodeToId(\n uint16 currencyId,\n uint40 maturity,\n uint8 assetType\n ) external pure override returns (uint256) {\n return TransferAssets.encodeAssetId(currencyId, maturity, assetType);\n }\n\n /// @dev Ensures that all maturities specified are valid for the currency id (i.e. they do not\n /// go past the max maturity date)\n function _requireValidMaturity(\n uint256 currencyId,\n uint256 maturity,\n uint256 blockTime\n ) private view {\n require(\n DateTime.isValidMaturity(CashGroup.getMaxMarketIndex(currencyId), maturity, blockTime),\n \"Invalid maturity\"\n );\n }\n\n /// @dev Internal asset transfer event between accounts\n function _transfer(\n address from,\n address to,\n PortfolioAsset[] memory assets\n ) internal returns (AccountContext memory, AccountContext memory) {\n // Finalize all parts of a transfer for each account separately. Settlement must happen\n // before the call to placeAssetsInAccount so that we load the proper portfolio state.\n AccountContext memory toContext = AccountContextHandler.getAccountContext(to);\n if (toContext.mustSettleAssets()) {\n toContext = SettleAssetsExternal.settleAccount(to, toContext);\n }\n toContext = TransferAssets.placeAssetsInAccount(to, toContext, assets);\n toContext.setAccountContext(to);\n\n // Will flip the sign of notional in the assets array in memory\n TransferAssets.invertNotionalAmountsInPlace(assets);\n\n // Now finalize the from account\n AccountContext memory fromContext = AccountContextHandler.getAccountContext(from);\n if (fromContext.mustSettleAssets()) {\n fromContext = SettleAssetsExternal.settleAccount(from, fromContext);\n }\n fromContext = TransferAssets.placeAssetsInAccount(from, fromContext, assets);\n fromContext.setAccountContext(from);\n\n return (fromContext, toContext);\n }\n\n /// @dev Checks post transfer events which will either be initiating one of the batch trading events or a free collateral\n /// check if required.\n function _checkPostTransferEvent(\n address from,\n address to,\n AccountContext memory fromContext,\n AccountContext memory toContext,\n bytes calldata data,\n bool toTransferNegative\n ) internal {\n bytes4 sig = 0;\n address transactedAccount = address(0);\n if (data.length >= 32) {\n // Method signature is not abi encoded so decode to bytes32 first and take the first 4 bytes. This works\n // because all the methods we want to call below require more than 32 bytes in the calldata\n bytes32 tmp = abi.decode(data, (bytes32));\n sig = bytes4(tmp);\n }\n\n // These are the only four methods allowed to occur in a post transfer event. These actions allow `from`\n // accounts to take any sort of trading action as a result of their transfer. All of these actions will\n // handle checking free collateral so no additional check is necessary here.\n if (\n sig == NotionalProxy.nTokenRedeem.selector ||\n sig == NotionalProxy.batchLend.selector ||\n sig == NotionalProxy.batchBalanceAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeAction.selector\n ) {\n transactedAccount = abi.decode(data[4:36], (address));\n // Ensure that the \"transactedAccount\" parameter of the call is set to the from address or the\n // to address. If it is the \"to\" address then ensure that the msg.sender has approval to\n // execute operations\n require(\n transactedAccount == from ||\n (transactedAccount == to && isApprovedForAll(to, msg.sender)),\n \"Unauthorized call\"\n );\n\n // We can only call back to Notional itself at this point, account context is already\n // stored and all three of the whitelisted methods above will check free collateral.\n (bool status, bytes memory result) = address(this).call{value: msg.value}(data);\n require(status, _getRevertMsg(result));\n }\n\n // The transacted account will have its free collateral checked above so there is\n // no need to recheck here.\n // If transactedAccount == 0 then will check fc\n // If transactedAccount == to then will check fc\n // If transactedAccount == from then will skip, prefer call above\n if (transactedAccount != from && fromContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(from);\n }\n\n // Check free collateral if the `to` account has taken on a negative fCash amount\n // If toTransferNegative is false then will not check\n // If transactedAccount == 0 then will check fc\n // If transactedAccount == from then will check fc\n // If transactedAccount == to then will skip, prefer call above\n if (toTransferNegative && transactedAccount != to && toContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(to);\n }\n }\n\n function _getRevertMsg(bytes memory _returnData) internal pure returns (string memory) {\n // If the _res length is less than 68, then the transaction failed silently (without a revert message)\n if (_returnData.length < 68) return \"Transaction reverted silently\";\n\n assembly {\n // Slice the sighash.\n _returnData := add(_returnData, 0x04)\n }\n return abi.decode(_returnData, (string)); // All that remains is the revert string\n }\n\n /// @notice Allows an account to set approval for an operator\n /// @param operator address of the operator\n /// @param approved state of the approval\n /// @dev emit:ApprovalForAll\n function setApprovalForAll(address operator, bool approved) external override {\n accountAuthorizedTransferOperator[msg.sender][operator] = approved;\n emit ApprovalForAll(msg.sender, operator, approved);\n }\n\n /// @notice Checks approval state for an account, will first check if global transfer operator is enabled\n /// before falling through to an account specific transfer operator.\n /// @param account address of the account\n /// @param operator address of the operator\n /// @return true for approved\n function isApprovedForAll(address account, address operator)\n public\n view\n override\n returns (bool)\n {\n if (globalTransferOperator[operator]) return true;\n\n return accountAuthorizedTransferOperator[account][operator];\n }\n\n /// @notice Get a list of deployed library addresses (sorted by library name)\n function getLibInfo() external view returns (address, address) {\n return (address(FreeCollateralExternal), address(SettleAssetsExternal));\n }\n}\n", - "sourceMap": "683:19633:30:-:0;;;;;;;;;;;;;;;;;;;", - "sourcePath": "contracts/external/actions/ERC1155Action.sol", - "type": "contract" -} +{ "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "indexed": false, "internalType": "uint256[]", "name": "values", "type": "uint256[]" } ], "name": "TransferBatch", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "TransferSingle", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "value", "type": "string" }, { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "URI", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" } ], "name": "balanceOfBatch", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" } ], "name": "decodeToAssets", "outputs": [ { "components": [ { "internalType": "uint256", "name": "currencyId", "type": "uint256" }, { "internalType": "uint256", "name": "maturity", "type": "uint256" }, { "internalType": "uint256", "name": "assetType", "type": "uint256" }, { "internalType": "int256", "name": "notional", "type": "int256" }, { "internalType": "uint256", "name": "storageSlot", "type": "uint256" }, { "internalType": "enum AssetStorageState", "name": "storageState", "type": "uint8" } ], "internalType": "struct PortfolioAsset[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "currencyId", "type": "uint16" }, { "internalType": "uint40", "name": "maturity", "type": "uint40" }, { "internalType": "uint8", "name": "assetType", "type": "uint8" } ], "name": "encodeToId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "getLibInfo", "outputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseGuardian", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseRouter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeBatchTransferFrom", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "signedBalanceOf", "outputs": [ { "internalType": "int256", "name": "notional", "type": "int256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" } ], "name": "signedBalanceOfBatch", "outputs": [ { "internalType": "int256[]", "name": "", "type": "int256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "pure", "type": "function" } ], "allSourcePaths": { "141": "interfaces/IEIP20NonStandard.sol", "142": "interfaces/IERC1155TokenReceiver.sol", "147": "interfaces/aave/ILendingPool.sol", "151": "interfaces/compound/CErc20Interface.sol", "152": "interfaces/compound/CEtherInterface.sol", "153": "interfaces/compound/CTokenInterface.sol", "155": "interfaces/notional/AssetRateAdapter.sol", "157": "interfaces/notional/IRewarder.sol", "16": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/utils/Address.sol", "164": "interfaces/notional/nERC1155Interface.sol", "21": "contracts/external/FreeCollateralExternal.sol", "22": "contracts/external/MigrateIncentives.sol", "25": "contracts/external/SettleAssetsExternal.sol", "28": "contracts/external/actions/ActionGuards.sol", "30": "contracts/external/actions/ERC1155Action.sol", "6": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/math/SafeMath.sol", "60": "contracts/global/Constants.sol", "61": "contracts/global/Deployments.sol", "62": "contracts/global/LibStorage.sol", "63": "contracts/global/StorageLayoutV1.sol", "65": "contracts/global/Types.sol", "66": "contracts/internal/AccountContextHandler.sol", "67": "contracts/internal/balances/BalanceHandler.sol", "68": "contracts/internal/balances/Incentives.sol", "69": "contracts/internal/balances/TokenHandler.sol", "70": "contracts/internal/balances/protocols/AaveHandler.sol", "71": "contracts/internal/balances/protocols/CompoundHandler.sol", "72": "contracts/internal/balances/protocols/GenericToken.sol", "76": "contracts/internal/markets/AssetRate.sol", "77": "contracts/internal/markets/CashGroup.sol", "78": "contracts/internal/markets/DateTime.sol", "79": "contracts/internal/markets/Market.sol", "80": "contracts/internal/nToken/nTokenCalculations.sol", "81": "contracts/internal/nToken/nTokenHandler.sol", "82": "contracts/internal/nToken/nTokenSupply.sol", "83": "contracts/internal/portfolio/BitmapAssetsHandler.sol", "84": "contracts/internal/portfolio/PortfolioHandler.sol", "85": "contracts/internal/portfolio/TransferAssets.sol", "86": "contracts/internal/settlement/SettleBitmapAssets.sol", "87": "contracts/internal/settlement/SettlePortfolioAssets.sol", "88": "contracts/internal/valuation/AssetHandler.sol", "89": "contracts/internal/valuation/ExchangeRate.sol", "90": "contracts/internal/valuation/FreeCollateral.sol", "91": "contracts/math/ABDKMath64x64.sol", "92": "contracts/math/Bitmap.sol", "93": "contracts/math/FloatingPoint56.sol", "94": "contracts/math/SafeInt256.sol" }, "ast": { "absolutePath": "contracts/external/actions/ERC1155Action.sol", "exportedSymbols": { "ABDKMath64x64": [ 44430 ], "AaveHandler": [ 26669 ], "AccountBalance": [ 57824 ], "AccountContext": [ 57743 ], "AccountContextHandler": [ 24055 ], "ActionGuards": [ 3662 ], "Address": [ 58950 ], "AggregatorInterface": [ 62384 ], "AggregatorV2V3Interface": [ 58997 ], "AggregatorV3Interface": [ 62430 ], "AssetHandler": [ 40067 ], "AssetRate": [ 30677 ], "AssetRateAdapter": [ 59041 ], "AssetRateParameters": [ 57639 ], "AssetRateStorage": [ 57707 ], "AssetStorageState": [ 57500 ], "BalanceAction": [ 57521 ], "BalanceActionWithTrades": [ 57537 ], "BalanceHandler": [ 25398 ], "BalanceState": [ 57632 ], "BalanceStorage": [ 57767 ], "BatchLend": [ 57508 ], "Bitmap": [ 44771 ], "BitmapAssetsHandler": [ 37096 ], "CErc20Interface": [ 59445 ], "CEtherInterface": [ 59757 ], "CTokenInterface": [ 59740 ], "CashGroup": [ 31956 ], "CashGroupParameters": [ 57648 ], "CashGroupSettings": [ 57732 ], "CompoundHandler": [ 26861 ], "Constants": [ 22832 ], "Context": [ 62453 ], "DateTime": [ 32595 ], "Deployments": [ 22839 ], "DepositActionType": [ 57495 ], "ERC1155Action": [ 6026 ], "ERC20": [ 60749 ], "ETHRate": [ 57613 ], "ETHRateStorage": [ 57702 ], "ExchangeRate": [ 40263 ], "FloatingPoint56": [ 44847 ], "FreeCollateral": [ 41676 ], "FreeCollateralExternal": [ 618 ], "GenericToken": [ 26993 ], "IAToken": [ 60771 ], "IATokenFull": [ 60806 ], "IEIP20NonStandard": [ 61875 ], "IERC1155": [ 58654 ], "IERC1155TokenReceiver": [ 58988 ], "IERC165": [ 62336 ], "IERC20": [ 59607 ], "ILendingPool": [ 60888 ], "IRewarder": [ 59057 ], "IScaledBalanceToken": [ 60796 ], "Incentives": [ 25585 ], "LendingPoolStorage": [ 60812 ], "LibStorage": [ 23238 ], "LiquidationFactors": [ 57591 ], "Market": [ 34509 ], "MarketParameters": [ 57678 ], "MarketStorage": [ 57787 ], "MigrateIncentives": [ 775 ], "NotionalCalculations": [ 57001 ], "NotionalGovernance": [ 58068 ], "NotionalProxy": [ 57468 ], "NotionalTreasury": [ 59529 ], "NotionalViews": [ 58520 ], "PortfolioAsset": [ 57661 ], "PortfolioAssetStorage": [ 57799 ], "PortfolioHandler": [ 38387 ], "PortfolioState": [ 57602 ], "SafeInt256": [ 45162 ], "SafeMath": [ 56637 ], "SettleAmount": [ 57542 ], "SettleAssetsExternal": [ 1878 ], "SettleBitmapAssets": [ 38867 ], "SettlePortfolioAssets": [ 39292 ], "SettlementRateStorage": [ 57774 ], "StorageLayoutV1": [ 23292 ], "Token": [ 57553 ], "TokenHandler": [ 26426 ], "TokenStorage": [ 57689 ], "TokenType": [ 57480 ], "TradeActionType": [ 57487 ], "TransferAssets": [ 38618 ], "ifCashStorage": [ 57790 ], "nERC1155Interface": [ 58229 ], "nTokenCalculations": [ 35079 ], "nTokenContext": [ 57758 ], "nTokenERC20": [ 59173 ], "nTokenHandler": [ 36105 ], "nTokenPortfolio": [ 57568 ], "nTokenSupply": [ 36407 ], "nTokenTotalSupplyStorage": [ 57813 ], "nTokenTotalSupplyStorage_deprecated": [ 57806 ] }, "id": 6027, "license": "GPL-3.0-only", "nodeType": "SourceUnit", "nodes": [ { "id": 4842, "literals": [ "solidity", "^", "0.7", ".0" ], "nodeType": "PragmaDirective", "src": "41:23:30" }, { "id": 4843, "literals": [ "abicoder", "v2" ], "nodeType": "PragmaDirective", "src": "65:19:30" }, { "absolutePath": "contracts/external/actions/ActionGuards.sol", "file": "./ActionGuards.sol", "id": 4844, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 3663, "src": "86:28:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/FreeCollateralExternal.sol", "file": "../FreeCollateralExternal.sol", "id": 4845, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 619, "src": "115:39:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/global/StorageLayoutV1.sol", "file": "../../global/StorageLayoutV1.sol", "id": 4846, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 23293, "src": "155:42:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/math/SafeInt256.sol", "file": "../../math/SafeInt256.sol", "id": 4847, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 45163, "src": "198:35:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/internal/AccountContextHandler.sol", "file": "../../internal/AccountContextHandler.sol", "id": 4848, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 24056, "src": "234:50:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/internal/portfolio/TransferAssets.sol", "file": "../../internal/portfolio/TransferAssets.sol", "id": 4849, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 38619, "src": "285:53:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/internal/portfolio/PortfolioHandler.sol", "file": "../../internal/portfolio/PortfolioHandler.sol", "id": 4850, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 38388, "src": "339:55:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/NotionalProxy.sol", "file": "../../../interfaces/notional/NotionalProxy.sol", "id": 4851, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 57469, "src": "395:56:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/IERC1155TokenReceiver.sol", "file": "../../../interfaces/IERC1155TokenReceiver.sol", "id": 4852, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 58989, "src": "452:55:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/nERC1155Interface.sol", "file": "../../../interfaces/notional/nERC1155Interface.sol", "id": 4853, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 58230, "src": "508:60:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/token/ERC1155/IERC1155.sol", "file": "@openzeppelin/contracts/token/ERC1155/IERC1155.sol", "id": 4854, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 58655, "src": "569:60:30", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/jwu/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/contracts/utils/Address.sol", "file": "@openzeppelin/contracts/utils/Address.sol", "id": 4855, "nodeType": "ImportDirective", "scope": 6027, "sourceUnit": 58951, "src": "630:51:30", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 4856, "name": "nERC1155Interface", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 58229, "src": "709:17:30", "typeDescriptions": { "typeIdentifier": "t_contract$_nERC1155Interface_$58229", "typeString": "contract nERC1155Interface" } }, "id": 4857, "nodeType": "InheritanceSpecifier", "src": "709:17:30" }, { "baseName": { "id": 4858, "name": "ActionGuards", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3662, "src": "728:12:30", "typeDescriptions": { "typeIdentifier": "t_contract$_ActionGuards_$3662", "typeString": "contract ActionGuards" } }, "id": 4859, "nodeType": "InheritanceSpecifier", "src": "728:12:30" } ], "contractDependencies": [ 3662, 23292, 58229 ], "contractKind": "contract", "fullyImplemented": true, "id": 6026, "linearizedBaseContracts": [ 6026, 3662, 23292, 58229 ], "name": "ERC1155Action", "nodeType": "ContractDefinition", "nodes": [ { "id": 4862, "libraryName": { "id": 4860, "name": "SafeInt256", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 45162, "src": "753:10:30", "typeDescriptions": { "typeIdentifier": "t_contract$_SafeInt256_$45162", "typeString": "library SafeInt256" } }, "nodeType": "UsingForDirective", "src": "747:28:30", "typeName": { "id": 4861, "name": "int256", "nodeType": "ElementaryTypeName", "src": "768:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } }, { "id": 4865, "libraryName": { "id": 4863, "name": "AccountContextHandler", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 24055, "src": "786:21:30", "typeDescriptions": { "typeIdentifier": "t_contract$_AccountContextHandler_$24055", "typeString": "library AccountContextHandler" } }, "nodeType": "UsingForDirective", "src": "780:47:30", "typeName": { "id": 4864, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "812:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } } }, { "constant": true, "id": 4873, "mutability": "constant", "name": "ERC1155_ACCEPTED", "nodeType": "VariableDeclaration", "scope": 6026, "src": "833:121:30", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 4866, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "833:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "value": { "arguments": [ { "arguments": [ { "hexValue": "6f6e45524331313535526563656976656428616464726573732c616464726573732c75696e743235362c75696e743235362c627974657329", "id": 4870, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "894:58:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_f23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97", "typeString": "literal_string \"onERC1155Received(address,address,uint256,uint256,bytes)\"" }, "value": "onERC1155Received(address,address,uint256,uint256,bytes)" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_f23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97", "typeString": "literal_string \"onERC1155Received(address,address,uint256,uint256,bytes)\"" } ], "id": 4869, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "884:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 4871, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "884:69:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 4868, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "877:6:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes4_$", "typeString": "type(bytes4)" }, "typeName": { "id": 4867, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "877:6:30", "typeDescriptions": {} } }, "id": 4872, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "877:77:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "visibility": "internal" }, { "constant": true, "id": 4881, "mutability": "constant", "name": "ERC1155_BATCH_ACCEPTED", "nodeType": "VariableDeclaration", "scope": 6026, "src": "960:136:30", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 4874, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "960:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "value": { "arguments": [ { "arguments": [ { "hexValue": "6f6e455243313135354261746368526563656976656428616464726573732c616464726573732c75696e743235365b5d2c75696e743235365b5d2c627974657329", "id": 4878, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1027:67:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_bc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621", "typeString": "literal_string \"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"" }, "value": "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_bc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621", "typeString": "literal_string \"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"" } ], "id": 4877, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "1017:9:30", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 4879, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1017:78:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 4876, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1010:6:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes4_$", "typeString": "type(bytes4)" }, "typeName": { "id": 4875, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "1010:6:30", "typeDescriptions": {} } }, "id": 4880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1010:86:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "visibility": "internal" }, { "baseFunctions": [ 58119 ], "body": { "id": 4896, "nodeType": "Block", "src": "1188:65:30", "statements": [ { "expression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 4894, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4889, "name": "interfaceId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4883, "src": "1205:11:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "arguments": [ { "id": 4891, "name": "IERC1155", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58654, "src": "1225:8:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_IERC1155_$58654_$", "typeString": "type(contract IERC1155)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_IERC1155_$58654_$", "typeString": "type(contract IERC1155)" } ], "id": 4890, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -27, "src": "1220:4:30", "typeDescriptions": { "typeIdentifier": "t_function_metatype_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 4892, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1220:14:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_magic_meta_type_t_contract$_IERC1155_$58654", "typeString": "type(contract IERC1155)" } }, "id": 4893, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "interfaceId", "nodeType": "MemberAccess", "src": "1220:26:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "1205:41:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 4888, "id": 4895, "nodeType": "Return", "src": "1198:48:30" } ] }, "functionSelector": "01ffc9a7", "id": 4897, "implemented": true, "kind": "function", "modifiers": [], "name": "supportsInterface", "nodeType": "FunctionDefinition", "overrides": { "id": 4885, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1164:8:30" }, "parameters": { "id": 4884, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4883, "mutability": "mutable", "name": "interfaceId", "nodeType": "VariableDeclaration", "scope": 4897, "src": "1130:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 4882, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "1130:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "visibility": "internal" } ], "src": "1129:20:30" }, "returnParameters": { "id": 4888, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4887, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4897, "src": "1182:4:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 4886, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1182:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "1181:6:30" }, "scope": 6026, "src": "1103:150:30", "stateMutability": "pure", "virtual": false, "visibility": "external" }, { "baseFunctions": [ 58128 ], "body": { "id": 4924, "nodeType": "Block", "src": "1829:116:30", "statements": [ { "assignments": [ 4909 ], "declarations": [ { "constant": false, "id": 4909, "mutability": "mutable", "name": "notional", "nodeType": "VariableDeclaration", "scope": 4924, "src": "1839:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4908, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1839:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 4914, "initialValue": { "arguments": [ { "id": 4911, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4900, "src": "1873:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 4912, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4902, "src": "1882:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 4910, "name": "signedBalanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4971, "src": "1857:15:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_int256_$", "typeString": "function (address,uint256) view returns (int256)" } }, "id": 4913, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1857:28:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "1839:46:30" }, { "expression": { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 4917, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 4915, "name": "notional", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4909, "src": "1902:8:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "hexValue": "30", "id": 4916, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1913:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1902:12:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4919, "name": "notional", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4909, "src": "1921:8:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4920, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toUint", "nodeType": "MemberAccess", "referencedDeclaration": 45101, "src": "1921:15:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$bound_to$_t_int256_$", "typeString": "function (int256) pure returns (uint256)" } }, "id": 4921, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1921:17:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 4922, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "1902:36:30", "trueExpression": { "hexValue": "30", "id": 4918, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1917:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 4907, "id": 4923, "nodeType": "Return", "src": "1895:43:30" } ] }, "documentation": { "id": 4898, "nodeType": "StructuredDocumentation", "src": "1259:478:30", "text": "@notice Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by\n this method do not show negative fCash balances because only unsigned integers are returned. They\n are represented by zero here. Use `signedBalanceOf` to get a signed return value.\n @param account account to get the id for\n @param id the ERC1155 id\n @return Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)" }, "functionSelector": "00fdd58e", "id": 4925, "implemented": true, "kind": "function", "modifiers": [], "name": "balanceOf", "nodeType": "FunctionDefinition", "overrides": { "id": 4904, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1802:8:30" }, "parameters": { "id": 4903, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4900, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4925, "src": "1761:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4899, "name": "address", "nodeType": "ElementaryTypeName", "src": "1761:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4902, "mutability": "mutable", "name": "id", "nodeType": "VariableDeclaration", "scope": 4925, "src": "1778:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4901, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1778:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1760:29:30" }, "returnParameters": { "id": 4907, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4906, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 4925, "src": "1820:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4905, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1820:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1819:9:30" }, "scope": 6026, "src": "1742:203:30", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "baseFunctions": [ 58149 ], "body": { "id": 4970, "nodeType": "Block", "src": "2273:436:30", "statements": [ { "assignments": [ 4937 ], "declarations": [ { "constant": false, "id": 4937, "mutability": "mutable", "name": "accountContext", "nodeType": "VariableDeclaration", "scope": 4970, "src": "2283:36:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 4936, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "2283:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 4942, "initialValue": { "arguments": [ { "id": 4940, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4928, "src": "2362:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 4938, "name": "AccountContextHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24055, "src": "2322:21:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", "typeString": "type(library AccountContextHandler)" } }, "id": 4939, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23345, "src": "2322:39:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) view returns (struct AccountContext memory)" } }, "id": 4941, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2322:48:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "2283:87:30" }, { "condition": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 4943, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4937, "src": "2385:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4944, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "isBitmapEnabled", "nodeType": "MemberAccess", "referencedDeclaration": 23385, "src": "2385:30:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) pure returns (bool)" } }, "id": 4945, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2385:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 4968, "nodeType": "Block", "src": "2523:180:30", "statements": [ { "expression": { "id": 4966, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4956, "name": "notional", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4934, "src": "2537:8:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "arguments": [ { "id": 4960, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4928, "src": "2617:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4961, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4937, "src": "2626:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4962, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "assetArrayLength", "nodeType": "MemberAccess", "referencedDeclaration": 57738, "src": "2626:31:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint8", "typeString": "uint8" } ], "expression": { "id": 4958, "name": "PortfolioHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38387, "src": "2581:16:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_PortfolioHandler_$38387_$", "typeString": "type(library PortfolioHandler)" } }, "id": 4959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getSortedPortfolio", "nodeType": "MemberAccess", "referencedDeclaration": 38099, "src": "2581:35:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint8_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", "typeString": "function (address,uint8) view returns (struct PortfolioAsset memory[] memory)" } }, "id": 4963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2581:77:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, { "id": 4964, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4930, "src": "2676:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 4957, "name": "_balanceInArray", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5198, "src": "2548:15:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_uint256_$returns$_t_int256_$", "typeString": "function (struct PortfolioAsset memory[] memory,uint256) pure returns (int256)" } }, "id": 4965, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2548:144:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "2537:155:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4967, "nodeType": "ExpressionStatement", "src": "2537:155:30" } ] }, "id": 4969, "nodeType": "IfStatement", "src": "2381:322:30", "trueBody": { "id": 4955, "nodeType": "Block", "src": "2419:98:30", "statements": [ { "expression": { "id": 4953, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 4946, "name": "notional", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4934, "src": "2433:8:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 4948, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4928, "src": "2461:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 4949, "name": "accountContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4937, "src": "2470:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 4950, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "bitmapCurrencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57740, "src": "2470:31:30", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 4951, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4930, "src": "2503:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 4947, "name": "_balanceInBitmap", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5139, "src": "2444:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_int256_$", "typeString": "function (address,uint256,uint256) view returns (int256)" } }, "id": 4952, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2444:62:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "2433:73:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4954, "nodeType": "ExpressionStatement", "src": "2433:73:30" } ] } } ] }, "documentation": { "id": 4926, "nodeType": "StructuredDocumentation", "src": "1951:216:30", "text": "@notice Returns the balance of an ERC1155 id on an account.\n @param account account to get the id for\n @param id the ERC1155 id\n @return notional balance of the ERC1155 id as a signed integer" }, "functionSelector": "0fac8f09", "id": 4971, "implemented": true, "kind": "function", "modifiers": [], "name": "signedBalanceOf", "nodeType": "FunctionDefinition", "overrides": { "id": 4932, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2238:8:30" }, "parameters": { "id": 4931, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4928, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 4971, "src": "2197:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 4927, "name": "address", "nodeType": "ElementaryTypeName", "src": "2197:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 4930, "mutability": "mutable", "name": "id", "nodeType": "VariableDeclaration", "scope": 4971, "src": "2214:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 4929, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2214:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "2196:29:30" }, "returnParameters": { "id": 4935, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4934, "mutability": "mutable", "name": "notional", "nodeType": "VariableDeclaration", "scope": 4971, "src": "2256:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 4933, "name": "int256", "nodeType": "ElementaryTypeName", "src": "2256:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "2255:17:30" }, "scope": 6026, "src": "2172:537:30", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "baseFunctions": [ 58161 ], "body": { "id": 5032, "nodeType": "Block", "src": "3117:335:30", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 4990, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 4986, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4975, "src": "3135:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 4987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "3135:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 4988, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4978, "src": "3154:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 4989, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "3154:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3135:29:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 4985, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "3127:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 4991, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3127:38:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 4992, "nodeType": "ExpressionStatement", "src": "3127:38:30" }, { "assignments": [ 4997 ], "declarations": [ { "constant": false, "id": 4997, "mutability": "mutable", "name": "amounts", "nodeType": "VariableDeclaration", "scope": 5032, "src": "3175:23:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[]" }, "typeName": { "baseType": { "id": 4995, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3175:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4996, "nodeType": "ArrayTypeName", "src": "3175:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", "typeString": "int256[]" } }, "visibility": "internal" } ], "id": 5004, "initialValue": { "arguments": [ { "expression": { "id": 5001, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4975, "src": "3214:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5002, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "3214:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5000, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", "src": "3201:12:30", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_int256_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (int256[] memory)" }, "typeName": { "baseType": { "id": 4998, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3205:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4999, "nodeType": "ArrayTypeName", "src": "3205:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", "typeString": "int256[]" } } }, "id": 5003, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3201:29:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[] memory" } }, "nodeType": "VariableDeclarationStatement", "src": "3175:55:30" }, { "body": { "id": 5028, "nodeType": "Block", "src": "3283:138:30", "statements": [ { "expression": { "id": 5026, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { "id": 5015, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4997, "src": "3361:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[] memory" } }, "id": 5017, "indexExpression": { "id": 5016, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5006, "src": "3369:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", "src": "3361:10:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "baseExpression": { "id": 5019, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4975, "src": "3390:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5021, "indexExpression": { "id": 5020, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5006, "src": "3399:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "3390:11:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "baseExpression": { "id": 5022, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4978, "src": "3403:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5024, "indexExpression": { "id": 5023, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5006, "src": "3407:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "3403:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5018, "name": "signedBalanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4971, "src": "3374:15:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_int256_$", "typeString": "function (address,uint256) view returns (int256)" } }, "id": 5025, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3374:36:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "3361:49:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 5027, "nodeType": "ExpressionStatement", "src": "3361:49:30" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5011, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5008, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5006, "src": "3257:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 5009, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4975, "src": "3261:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5010, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "3261:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3257:19:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5029, "initializationExpression": { "assignments": [ 5006 ], "declarations": [ { "constant": false, "id": 5006, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 5029, "src": "3246:9:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5005, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3246:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 5007, "nodeType": "VariableDeclarationStatement", "src": "3246:9:30" }, "loopExpression": { "expression": { "id": 5013, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "3278:3:30", "subExpression": { "id": 5012, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5006, "src": "3278:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5014, "nodeType": "ExpressionStatement", "src": "3278:3:30" }, "nodeType": "ForStatement", "src": "3241:180:30" }, { "expression": { "id": 5030, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4997, "src": "3438:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[] memory" } }, "functionReturnParameters": 4984, "id": 5031, "nodeType": "Return", "src": "3431:14:30" } ] }, "documentation": { "id": 4972, "nodeType": "StructuredDocumentation", "src": "2715:229:30", "text": "@notice Returns the balance of a batch of accounts and ids.\n @param accounts array of accounts to get balances for\n @param ids array of ids to get balances for\n @return Returns an array of signed balances" }, "functionSelector": "81a86855", "id": 5033, "implemented": true, "kind": "function", "modifiers": [], "name": "signedBalanceOfBatch", "nodeType": "FunctionDefinition", "overrides": { "id": 4980, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3070:8:30" }, "parameters": { "id": 4979, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4975, "mutability": "mutable", "name": "accounts", "nodeType": "VariableDeclaration", "scope": 5033, "src": "2979:27:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[]" }, "typeName": { "baseType": { "id": 4973, "name": "address", "nodeType": "ElementaryTypeName", "src": "2979:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 4974, "nodeType": "ArrayTypeName", "src": "2979:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, "id": 4978, "mutability": "mutable", "name": "ids", "nodeType": "VariableDeclaration", "scope": 5033, "src": "3008:22:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 4976, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3008:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 4977, "nodeType": "ArrayTypeName", "src": "3008:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "2978:53:30" }, "returnParameters": { "id": 4984, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 4983, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5033, "src": "3096:15:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[]" }, "typeName": { "baseType": { "id": 4981, "name": "int256", "nodeType": "ElementaryTypeName", "src": "3096:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 4982, "nodeType": "ArrayTypeName", "src": "3096:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", "typeString": "int256[]" } }, "visibility": "internal" } ], "src": "3095:17:30" }, "scope": 6026, "src": "2949:503:30", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "baseFunctions": [ 58140 ], "body": { "id": 5094, "nodeType": "Block", "src": "3946:331:30", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5052, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5048, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5037, "src": "3964:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5049, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "3964:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 5050, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5040, "src": "3983:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5051, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "3983:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3964:29:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 5047, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "3956:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 5053, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3956:38:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5054, "nodeType": "ExpressionStatement", "src": "3956:38:30" }, { "assignments": [ 5059 ], "declarations": [ { "constant": false, "id": 5059, "mutability": "mutable", "name": "amounts", "nodeType": "VariableDeclaration", "scope": 5094, "src": "4004:24:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5057, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4004:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5058, "nodeType": "ArrayTypeName", "src": "4004:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "id": 5066, "initialValue": { "arguments": [ { "expression": { "id": 5063, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5037, "src": "4045:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5064, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "4045:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5062, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", "src": "4031:13:30", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (uint256[] memory)" }, "typeName": { "baseType": { "id": 5060, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4035:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5061, "nodeType": "ArrayTypeName", "src": "4035:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } } }, "id": 5065, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4031:30:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, "nodeType": "VariableDeclarationStatement", "src": "4004:57:30" }, { "body": { "id": 5090, "nodeType": "Block", "src": "4114:132:30", "statements": [ { "expression": { "id": 5088, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { "id": 5077, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5059, "src": "4192:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, "id": 5079, "indexExpression": { "id": 5078, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5068, "src": "4200:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", "src": "4192:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "baseExpression": { "id": 5081, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5037, "src": "4215:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5083, "indexExpression": { "id": 5082, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5068, "src": "4224:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "4215:11:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "baseExpression": { "id": 5084, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5040, "src": "4228:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5086, "indexExpression": { "id": 5085, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5068, "src": "4232:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "4228:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5080, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4925, "src": "4205:9:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, "id": 5087, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4205:30:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "4192:43:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5089, "nodeType": "ExpressionStatement", "src": "4192:43:30" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5073, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5070, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5068, "src": "4088:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 5071, "name": "accounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5037, "src": "4092:8:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[] calldata" } }, "id": 5072, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "4092:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "4088:19:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5091, "initializationExpression": { "assignments": [ 5068 ], "declarations": [ { "constant": false, "id": 5068, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 5091, "src": "4077:9:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5067, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4077:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 5069, "nodeType": "VariableDeclarationStatement", "src": "4077:9:30" }, "loopExpression": { "expression": { "id": 5075, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "4109:3:30", "subExpression": { "id": 5074, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5068, "src": "4109:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5076, "nodeType": "ExpressionStatement", "src": "4109:3:30" }, "nodeType": "ForStatement", "src": "4072:174:30" }, { "expression": { "id": 5092, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5059, "src": "4263:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, "functionReturnParameters": 5046, "id": 5093, "nodeType": "Return", "src": "4256:14:30" } ] }, "documentation": { "id": 5034, "nodeType": "StructuredDocumentation", "src": "3458:320:30", "text": "@notice Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented\n as zero balances in the array. \n @param accounts array of accounts to get balances for\n @param ids array of ids to get balances for\n @return Returns an array of unsigned balances" }, "functionSelector": "4e1273f4", "id": 5095, "implemented": true, "kind": "function", "modifiers": [], "name": "balanceOfBatch", "nodeType": "FunctionDefinition", "overrides": { "id": 5042, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3898:8:30" }, "parameters": { "id": 5041, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5037, "mutability": "mutable", "name": "accounts", "nodeType": "VariableDeclaration", "scope": 5095, "src": "3807:27:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr", "typeString": "address[]" }, "typeName": { "baseType": { "id": 5035, "name": "address", "nodeType": "ElementaryTypeName", "src": "3807:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 5036, "nodeType": "ArrayTypeName", "src": "3807:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" } }, "visibility": "internal" }, { "constant": false, "id": 5040, "mutability": "mutable", "name": "ids", "nodeType": "VariableDeclaration", "scope": 5095, "src": "3836:22:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5038, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3836:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5039, "nodeType": "ArrayTypeName", "src": "3836:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "3806:53:30" }, "returnParameters": { "id": 5046, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5045, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5095, "src": "3924:16:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5043, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3924:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5044, "nodeType": "ArrayTypeName", "src": "3924:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "3923:18:30" }, "scope": 6026, "src": "3783:494:30", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { "id": 5138, "nodeType": "Block", "src": "4485:435:30", "statements": [ { "assignments": [ 5108, 5110, 5112 ], "declarations": [ { "constant": false, "id": 5108, "mutability": "mutable", "name": "currencyId", "nodeType": "VariableDeclaration", "scope": 5138, "src": "4496:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5107, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4496:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5110, "mutability": "mutable", "name": "maturity", "nodeType": "VariableDeclaration", "scope": 5138, "src": "4516:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5109, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4516:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5112, "mutability": "mutable", "name": "assetType", "nodeType": "VariableDeclaration", "scope": 5138, "src": "4534:17:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5111, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4534:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 5117, "initialValue": { "arguments": [ { "id": 5115, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5102, "src": "4584:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5113, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "4555:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5114, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "decodeAssetId", "nodeType": "MemberAccess", "referencedDeclaration": 38443, "src": "4555:28:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" } }, "id": 5116, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4555:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256)" } }, "nodeType": "VariableDeclarationStatement", "src": "4495:92:30" }, { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5125, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5120, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5118, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5108, "src": "4615:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 5119, "name": "bitmapCurrencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5100, "src": "4629:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "4615:30:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5121, "name": "assetType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5112, "src": "4661:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "expression": { "id": 5122, "name": "Constants", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 22832, "src": "4674:9:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", "typeString": "type(library Constants)" } }, "id": 5123, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "FCASH_ASSET_TYPE", "nodeType": "MemberAccess", "referencedDeclaration": 22762, "src": "4674:26:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "src": "4661:39:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4615:85:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 5136, "nodeType": "Block", "src": "4814:100:30", "statements": [ { "expression": { "arguments": [ { "id": 5131, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5098, "src": "4873:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5132, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5108, "src": "4882:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 5133, "name": "maturity", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5110, "src": "4894:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5129, "name": "BitmapAssetsHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37096, "src": "4835:19:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_BitmapAssetsHandler_$37096_$", "typeString": "type(library BitmapAssetsHandler)" } }, "id": 5130, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getifCashNotional", "nodeType": "MemberAccess", "referencedDeclaration": 36531, "src": "4835:37:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_int256_$", "typeString": "function (address,uint256,uint256) view returns (int256)" } }, "id": 5134, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "4835:68:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "functionReturnParameters": 5106, "id": 5135, "nodeType": "Return", "src": "4828:75:30" } ] }, "id": 5137, "nodeType": "IfStatement", "src": "4598:316:30", "trueBody": { "id": 5128, "nodeType": "Block", "src": "4711:97:30", "statements": [ { "expression": { "hexValue": "30", "id": 5126, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "4796:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "functionReturnParameters": 5106, "id": 5127, "nodeType": "Return", "src": "4789:8:30" } ] } } ] }, "documentation": { "id": 5096, "nodeType": "StructuredDocumentation", "src": "4283:55:30", "text": "@dev Returns the balance from a bitmap given the id" }, "id": 5139, "implemented": true, "kind": "function", "modifiers": [], "name": "_balanceInBitmap", "nodeType": "FunctionDefinition", "parameters": { "id": 5103, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5098, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 5139, "src": "4378:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5097, "name": "address", "nodeType": "ElementaryTypeName", "src": "4378:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5100, "mutability": "mutable", "name": "bitmapCurrencyId", "nodeType": "VariableDeclaration", "scope": 5139, "src": "4403:24:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5099, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4403:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5102, "mutability": "mutable", "name": "id", "nodeType": "VariableDeclaration", "scope": 5139, "src": "4437:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5101, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4437:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "4368:85:30" }, "returnParameters": { "id": 5106, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5105, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5139, "src": "4477:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 5104, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4477:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "4476:8:30" }, "scope": 6026, "src": "4343:577:30", "stateMutability": "view", "virtual": false, "visibility": "internal" }, { "body": { "id": 5197, "nodeType": "Block", "src": "5111:424:30", "statements": [ { "assignments": [ 5151, 5153, 5155 ], "declarations": [ { "constant": false, "id": 5151, "mutability": "mutable", "name": "currencyId", "nodeType": "VariableDeclaration", "scope": 5197, "src": "5122:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5150, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5122:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5153, "mutability": "mutable", "name": "maturity", "nodeType": "VariableDeclaration", "scope": 5197, "src": "5142:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5152, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5142:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5155, "mutability": "mutable", "name": "assetType", "nodeType": "VariableDeclaration", "scope": 5197, "src": "5160:17:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5154, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5160:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 5160, "initialValue": { "arguments": [ { "id": 5158, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5145, "src": "5210:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5156, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "5181:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5157, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "decodeAssetId", "nodeType": "MemberAccess", "referencedDeclaration": 38443, "src": "5181:28:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" } }, "id": 5159, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "5181:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256)" } }, "nodeType": "VariableDeclarationStatement", "src": "5121:92:30" }, { "body": { "id": 5195, "nodeType": "Block", "src": "5267:262:30", "statements": [ { "assignments": [ 5172 ], "declarations": [ { "constant": false, "id": 5172, "mutability": "mutable", "name": "asset", "nodeType": "VariableDeclaration", "scope": 5195, "src": "5281:27:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset" }, "typeName": { "id": 5171, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "5281:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "visibility": "internal" } ], "id": 5176, "initialValue": { "baseExpression": { "id": 5173, "name": "portfolio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5143, "src": "5311:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "id": 5175, "indexExpression": { "id": 5174, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5162, "src": "5321:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "5311:12:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "nodeType": "VariableDeclarationStatement", "src": "5281:42:30" }, { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5190, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5185, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5180, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5177, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5172, "src": "5358:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5178, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57650, "src": "5358:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5179, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5151, "src": "5378:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5358:30:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5184, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5181, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5172, "src": "5408:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5182, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "maturity", "nodeType": "MemberAccess", "referencedDeclaration": 57652, "src": "5408:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5183, "name": "maturity", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5153, "src": "5426:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5408:26:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5358:76:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5189, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5186, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5172, "src": "5454:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5187, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "assetType", "nodeType": "MemberAccess", "referencedDeclaration": 57654, "src": "5454:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5188, "name": "assetType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5155, "src": "5473:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5454:28:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5358:124:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5194, "nodeType": "IfStatement", "src": "5337:181:30", "trueBody": { "expression": { "expression": { "id": 5191, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5172, "src": "5504:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5192, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "notional", "nodeType": "MemberAccess", "referencedDeclaration": 57656, "src": "5504:14:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "functionReturnParameters": 5149, "id": 5193, "nodeType": "Return", "src": "5497:21:30" } } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5167, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5164, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5162, "src": "5240:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 5165, "name": "portfolio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5143, "src": "5244:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "id": 5166, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "5244:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5240:20:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5196, "initializationExpression": { "assignments": [ 5162 ], "declarations": [ { "constant": false, "id": 5162, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 5196, "src": "5229:9:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5161, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5229:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 5163, "nodeType": "VariableDeclarationStatement", "src": "5229:9:30" }, "loopExpression": { "expression": { "id": 5169, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "5262:3:30", "subExpression": { "id": 5168, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5162, "src": "5262:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5170, "nodeType": "ExpressionStatement", "src": "5262:3:30" }, "nodeType": "ForStatement", "src": "5224:305:30" } ] }, "documentation": { "id": 5140, "nodeType": "StructuredDocumentation", "src": "4926:49:30", "text": "@dev Searches an array for the matching asset" }, "id": 5198, "implemented": true, "kind": "function", "modifiers": [], "name": "_balanceInArray", "nodeType": "FunctionDefinition", "parameters": { "id": 5146, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5143, "mutability": "mutable", "name": "portfolio", "nodeType": "VariableDeclaration", "scope": 5198, "src": "5005:33:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5141, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "5005:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5142, "nodeType": "ArrayTypeName", "src": "5005:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" }, { "constant": false, "id": 5145, "mutability": "mutable", "name": "id", "nodeType": "VariableDeclaration", "scope": 5198, "src": "5040:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5144, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5040:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "5004:47:30" }, "returnParameters": { "id": 5149, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5148, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5198, "src": "5099:6:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 5147, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5099:6:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "5098:8:30" }, "scope": 6026, "src": "4980:555:30", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "baseFunctions": [ 58190 ], "body": { "id": 5335, "nodeType": "Block", "src": "6402:1746:30", "statements": [ { "expression": { "arguments": [ { "id": 5214, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5201, "src": "6681:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5215, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5203, "src": "6687:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 5213, "name": "_validateAccounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5480, "src": "6663:17:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address) view" } }, "id": 5216, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "6663:27:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5217, "nodeType": "ExpressionStatement", "src": "6663:27:30" }, { "assignments": [ 5219 ], "declarations": [ { "constant": false, "id": 5219, "mutability": "mutable", "name": "fromContext", "nodeType": "VariableDeclaration", "scope": 5335, "src": "6814:33:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5218, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "6814:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 5220, "nodeType": "VariableDeclarationStatement", "src": "6814:33:30" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5221, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5207, "src": "6861:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 5222, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "6870:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "6861:10:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 5298, "nodeType": "Block", "src": "7505:84:30", "statements": [ { "expression": { "id": 5296, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5291, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5219, "src": "7519:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5294, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5201, "src": "7573:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5292, "name": "AccountContextHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24055, "src": "7533:21:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", "typeString": "type(library AccountContextHandler)" } }, "id": 5293, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23345, "src": "7533:39:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) view returns (struct AccountContext memory)" } }, "id": 5295, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7533:45:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "src": "7519:59:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5297, "nodeType": "ExpressionStatement", "src": "7519:59:30" } ] }, "id": 5299, "nodeType": "IfStatement", "src": "6857:732:30", "trueBody": { "id": 5290, "nodeType": "Block", "src": "6873:626:30", "statements": [ { "assignments": [ 5227 ], "declarations": [ { "constant": false, "id": 5227, "mutability": "mutable", "name": "assets", "nodeType": "VariableDeclaration", "scope": 5290, "src": "6887:30:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5225, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "6887:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5226, "nodeType": "ArrayTypeName", "src": "6887:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" } ], "id": 5233, "initialValue": { "arguments": [ { "hexValue": "31", "id": 5231, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "6941:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" } ], "id": 5230, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", "src": "6920:20:30", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (struct PortfolioAsset memory[] memory)" }, "typeName": { "baseType": { "id": 5228, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "6924:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5229, "nodeType": "ArrayTypeName", "src": "6924:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } } }, "id": 5232, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "6920:23:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "nodeType": "VariableDeclarationStatement", "src": "6887:56:30" }, { "assignments": [ 5235 ], "declarations": [ { "constant": false, "id": 5235, "mutability": "mutable", "name": "asset", "nodeType": "VariableDeclaration", "scope": 5290, "src": "6957:27:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset" }, "typeName": { "id": 5234, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "6957:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "visibility": "internal" } ], "id": 5239, "initialValue": { "baseExpression": { "id": 5236, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5227, "src": "6987:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "id": 5238, "indexExpression": { "hexValue": "30", "id": 5237, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "6994:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "6987:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "nodeType": "VariableDeclarationStatement", "src": "6957:39:30" }, { "expression": { "id": 5252, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "expression": { "id": 5240, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5235, "src": "7012:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5242, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57650, "src": "7012:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5243, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5235, "src": "7030:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5244, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "maturity", "nodeType": "MemberAccess", "referencedDeclaration": 57652, "src": "7030:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5245, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5235, "src": "7046:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5246, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "assetType", "nodeType": "MemberAccess", "referencedDeclaration": 57654, "src": "7046:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 5247, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "7011:51:30", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5250, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5205, "src": "7094:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5248, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "7065:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5249, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "decodeAssetId", "nodeType": "MemberAccess", "referencedDeclaration": 38443, "src": "7065:28:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" } }, "id": 5251, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7065:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256)" } }, "src": "7011:86:30", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5253, "nodeType": "ExpressionStatement", "src": "7011:86:30" }, { "expression": { "id": 5261, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 5254, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5235, "src": "7187:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5256, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "notional", "nodeType": "MemberAccess", "referencedDeclaration": 57656, "src": "7187:14:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5259, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5207, "src": "7221:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5257, "name": "SafeInt256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45162, "src": "7204:10:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SafeInt256_$45162_$", "typeString": "type(library SafeInt256)" } }, "id": 5258, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "toInt", "nodeType": "MemberAccess", "referencedDeclaration": 45127, "src": "7204:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_int256_$", "typeString": "function (uint256) pure returns (int256)" } }, "id": 5260, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7204:24:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "7187:41:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 5262, "nodeType": "ExpressionStatement", "src": "7187:41:30" }, { "expression": { "arguments": [ { "expression": { "id": 5264, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5235, "src": "7264:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5265, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57650, "src": "7264:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5266, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5235, "src": "7282:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5267, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "maturity", "nodeType": "MemberAccess", "referencedDeclaration": 57652, "src": "7282:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5268, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, "src": "7298:5:30", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, "id": 5269, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", "src": "7298:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5263, "name": "_requireValidMaturity", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5673, "src": "7242:21:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256) view" } }, "id": 5270, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7242:72:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5271, "nodeType": "ExpressionStatement", "src": "7242:72:30" }, { "expression": { "id": 5279, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "id": 5272, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5219, "src": "7361:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, null ], "id": 5273, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "7360:30:30", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$__$", "typeString": "tuple(struct AccountContext memory,)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5275, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5201, "src": "7403:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5276, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5203, "src": "7409:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5277, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5227, "src": "7413:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } ], "id": 5274, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5769, "src": "7393:9:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,address,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory,struct AccountContext memory)" } }, "id": 5278, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7393:27:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" } }, "src": "7360:60:30", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5280, "nodeType": "ExpressionStatement", "src": "7360:60:30" }, { "eventCall": { "arguments": [ { "expression": { "id": 5282, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "7455:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5283, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "7455:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "id": 5284, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5201, "src": "7467:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5285, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5203, "src": "7473:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5286, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5205, "src": "7477:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 5287, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5207, "src": "7481:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5281, "name": "TransferSingle", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58084, "src": "7440:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,address,uint256,uint256)" } }, "id": 5288, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7440:48:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5289, "nodeType": "EmitStatement", "src": "7435:53:30" } ] } }, { "assignments": [ 5301 ], "declarations": [ { "constant": false, "id": 5301, "mutability": "mutable", "name": "toContext", "nodeType": "VariableDeclaration", "scope": 5335, "src": "7710:31:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5300, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "7710:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 5302, "nodeType": "VariableDeclarationStatement", "src": "7710:31:30" }, { "expression": { "arguments": [ { "id": 5304, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5201, "src": "7775:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5305, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5203, "src": "7781:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5306, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5219, "src": "7785:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5307, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5301, "src": "7798:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5308, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5209, "src": "7809:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, { "hexValue": "66616c7365", "id": 5309, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "7815:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 5303, "name": "_checkPostTransferEvent", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5932, "src": "7751:23:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bytes_calldata_ptr_$_t_bool_$returns$__$", "typeString": "function (address,address,struct AccountContext memory,struct AccountContext memory,bytes calldata,bool)" } }, "id": 5310, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7751:70:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5311, "nodeType": "ExpressionStatement", "src": "7751:70:30" }, { "condition": { "arguments": [ { "id": 5314, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5203, "src": "7922:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5312, "name": "Address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58950, "src": "7903:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Address_$58950_$", "typeString": "type(library Address)" } }, "id": 5313, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isContract", "nodeType": "MemberAccess", "referencedDeclaration": 58674, "src": "7903:18:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, "id": 5315, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7903:22:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5334, "nodeType": "IfStatement", "src": "7899:243:30", "trueBody": { "id": 5333, "nodeType": "Block", "src": "7927:215:30", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 5329, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "expression": { "id": 5321, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "8010:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5322, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "8010:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "id": 5323, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5201, "src": "8022:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5324, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5205, "src": "8028:2:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 5325, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5207, "src": "8032:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 5326, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5209, "src": "8040:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } ], "expression": { "arguments": [ { "id": 5318, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5203, "src": "7988:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 5317, "name": "IERC1155TokenReceiver", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58988, "src": "7966:21:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_IERC1155TokenReceiver_$58988_$", "typeString": "type(contract IERC1155TokenReceiver)" } }, "id": 5319, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7966:25:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_contract$_IERC1155TokenReceiver_$58988", "typeString": "contract IERC1155TokenReceiver" } }, "id": 5320, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "onERC1155Received", "nodeType": "MemberAccess", "referencedDeclaration": 58969, "src": "7966:43:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", "typeString": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" } }, "id": 5327, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7966:79:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5328, "name": "ERC1155_ACCEPTED", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4873, "src": "8069:16:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7966:119:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "4e6f74206163636570746564", "id": 5330, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8103:14:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", "typeString": "literal_string \"Not accepted\"" }, "value": "Not accepted" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", "typeString": "literal_string \"Not accepted\"" } ], "id": 5316, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "7941:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5331, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "7941:190:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5332, "nodeType": "ExpressionStatement", "src": "7941:190:30" } ] } } ] }, "documentation": { "id": 5199, "nodeType": "StructuredDocumentation", "src": "5541:683:30", "text": "@notice Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash\n than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n @param from account to transfer from\n @param to account to transfer to\n @param id ERC1155 id of the asset\n @param amount amount to transfer\n @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n a trading action on Notional for the `from` address\n @dev emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled" }, "functionSelector": "f242432a", "id": 5336, "implemented": true, "kind": "function", "modifiers": [], "name": "safeTransferFrom", "nodeType": "FunctionDefinition", "overrides": { "id": 5211, "nodeType": "OverrideSpecifier", "overrides": [], "src": "6393:8:30" }, "parameters": { "id": 5210, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5201, "mutability": "mutable", "name": "from", "nodeType": "VariableDeclaration", "scope": 5336, "src": "6264:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5200, "name": "address", "nodeType": "ElementaryTypeName", "src": "6264:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5203, "mutability": "mutable", "name": "to", "nodeType": "VariableDeclaration", "scope": 5336, "src": "6286:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5202, "name": "address", "nodeType": "ElementaryTypeName", "src": "6286:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5205, "mutability": "mutable", "name": "id", "nodeType": "VariableDeclaration", "scope": 5336, "src": "6306:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5204, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6306:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5207, "mutability": "mutable", "name": "amount", "nodeType": "VariableDeclaration", "scope": 5336, "src": "6326:14:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5206, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6326:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5209, "mutability": "mutable", "name": "data", "nodeType": "VariableDeclaration", "scope": 5336, "src": "6350:19:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { "id": 5208, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6350:5:30", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "6254:121:30" }, "returnParameters": { "id": 5212, "nodeType": "ParameterList", "parameters": [], "src": "6402:0:30" }, "scope": 6026, "src": "6229:1919:30", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ 58205 ], "body": { "id": 5431, "nodeType": "Block", "src": "9051:1298:30", "statements": [ { "expression": { "arguments": [ { "id": 5354, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5339, "src": "9278:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5355, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "9284:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 5353, "name": "_validateAccounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5480, "src": "9260:17:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address) view" } }, "id": 5356, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9260:27:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5357, "nodeType": "ExpressionStatement", "src": "9260:27:30" }, { "assignments": [ 5361, 5363 ], "declarations": [ { "constant": false, "id": 5361, "mutability": "mutable", "name": "assets", "nodeType": "VariableDeclaration", "scope": 5431, "src": "9299:30:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5359, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "9299:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5360, "nodeType": "ArrayTypeName", "src": "9299:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" }, { "constant": false, "id": 5363, "mutability": "mutable", "name": "toTransferNegative", "nodeType": "VariableDeclaration", "scope": 5431, "src": "9331:23:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5362, "name": "bool", "nodeType": "ElementaryTypeName", "src": "9331:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "id": 5368, "initialValue": { "arguments": [ { "id": 5365, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5344, "src": "9374:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, { "id": 5366, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5347, "src": "9379:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } ], "id": 5364, "name": "_decodeToAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5628, "src": "9358:15:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", "typeString": "function (uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory,bool)" } }, "id": 5367, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9358:29:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" } }, "nodeType": "VariableDeclarationStatement", "src": "9298:89:30" }, { "condition": { "id": 5369, "name": "toTransferNegative", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5363, "src": "9535:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5379, "nodeType": "IfStatement", "src": "9531:81:30", "trueBody": { "expression": { "arguments": [ { "arguments": [ { "id": 5372, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "9580:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 5373, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "9584:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5374, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "9584:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address_payable", "typeString": "address payable" } ], "id": 5371, "name": "isApprovedForAll", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6006, "src": "9563:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) view returns (bool)" } }, "id": 5375, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9563:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a6564", "id": 5376, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9597:14:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" }, "value": "Unauthorized" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" } ], "id": 5370, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "9555:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5377, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9555:57:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5378, "nodeType": "ExpressionStatement", "src": "9555:57:30" } }, { "assignments": [ 5381, 5383 ], "declarations": [ { "constant": false, "id": 5381, "mutability": "mutable", "name": "fromContext", "nodeType": "VariableDeclaration", "scope": 5431, "src": "9624:33:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5380, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "9624:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" }, { "constant": false, "id": 5383, "mutability": "mutable", "name": "toContext", "nodeType": "VariableDeclaration", "scope": 5431, "src": "9659:31:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5382, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "9659:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 5389, "initialValue": { "arguments": [ { "id": 5385, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5339, "src": "9717:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5386, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "9735:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5387, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5361, "src": "9751:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } ], "id": 5384, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5769, "src": "9694:9:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,address,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory,struct AccountContext memory)" } }, "id": 5388, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9694:73:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" } }, "nodeType": "VariableDeclarationStatement", "src": "9623:144:30" }, { "expression": { "arguments": [ { "id": 5391, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5339, "src": "9802:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5392, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "9808:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5393, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5381, "src": "9812:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5394, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5383, "src": "9825:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5395, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5349, "src": "9836:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, { "id": 5396, "name": "toTransferNegative", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5363, "src": "9842:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 5390, "name": "_checkPostTransferEvent", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5932, "src": "9778:23:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_bytes_calldata_ptr_$_t_bool_$returns$__$", "typeString": "function (address,address,struct AccountContext memory,struct AccountContext memory,bytes calldata,bool)" } }, "id": 5397, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9778:83:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5398, "nodeType": "ExpressionStatement", "src": "9778:83:30" }, { "eventCall": { "arguments": [ { "expression": { "id": 5400, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "9890:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "9890:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "id": 5402, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5339, "src": "9902:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5403, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "9908:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5404, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5344, "src": "9912:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, { "id": 5405, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5347, "src": "9917:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } ], "id": 5399, "name": "TransferBatch", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58098, "src": "9876:13:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", "typeString": "function (address,address,address,uint256[] memory,uint256[] memory)" } }, "id": 5406, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9876:49:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5407, "nodeType": "EmitStatement", "src": "9871:54:30" }, { "condition": { "arguments": [ { "id": 5410, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "10012:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5408, "name": "Address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58950, "src": "9993:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Address_$58950_$", "typeString": "type(library Address)" } }, "id": 5409, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isContract", "nodeType": "MemberAccess", "referencedDeclaration": 58674, "src": "9993:18:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, "id": 5411, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "9993:22:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5430, "nodeType": "IfStatement", "src": "9989:354:30", "trueBody": { "id": 5429, "nodeType": "Block", "src": "10017:326:30", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 5425, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "expression": { "id": 5417, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "10126:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5418, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "10126:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "id": 5419, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5339, "src": "10158:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5420, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5344, "src": "10184:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, { "id": 5421, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5347, "src": "10209:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, { "id": 5422, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5349, "src": "10238:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" }, { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } ], "expression": { "arguments": [ { "id": 5414, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5341, "src": "10078:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 5413, "name": "IERC1155TokenReceiver", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58988, "src": "10056:21:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_IERC1155TokenReceiver_$58988_$", "typeString": "type(contract IERC1155TokenReceiver)" } }, "id": 5415, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10056:25:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_contract$_IERC1155TokenReceiver_$58988", "typeString": "contract IERC1155TokenReceiver" } }, "id": 5416, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "onERC1155BatchReceived", "nodeType": "MemberAccess", "referencedDeclaration": 58987, "src": "10056:48:30", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", "typeString": "function (address,address,uint256[] memory,uint256[] memory,bytes memory) external returns (bytes4)" } }, "id": 5423, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10056:204:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5424, "name": "ERC1155_BATCH_ACCEPTED", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4881, "src": "10264:22:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "10056:230:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "4e6f74206163636570746564", "id": 5426, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10304:14:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", "typeString": "literal_string \"Not accepted\"" }, "value": "Not accepted" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_fadc5f22060668047a4e911336f5d0734fc86647a30251cd7b6b0511b7c2b797", "typeString": "literal_string \"Not accepted\"" } ], "id": 5412, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "10031:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5427, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10031:301:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5428, "nodeType": "ExpressionStatement", "src": "10031:301:30" } ] } } ] }, "documentation": { "id": 5337, "nodeType": "StructuredDocumentation", "src": "8154:690:30", "text": "@notice Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash\n than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n @param from account to transfer from\n @param to account to transfer to\n @param ids ERC1155 ids of the assets\n @param amounts amounts to transfer\n @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n a trading action on Notional for the `from` address\n @dev emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled" }, "functionSelector": "2eb2c2d6", "id": 5432, "implemented": true, "kind": "function", "modifiers": [], "name": "safeBatchTransferFrom", "nodeType": "FunctionDefinition", "overrides": { "id": 5351, "nodeType": "OverrideSpecifier", "overrides": [], "src": "9042:8:30" }, "parameters": { "id": 5350, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5339, "mutability": "mutable", "name": "from", "nodeType": "VariableDeclaration", "scope": 5432, "src": "8889:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5338, "name": "address", "nodeType": "ElementaryTypeName", "src": "8889:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5341, "mutability": "mutable", "name": "to", "nodeType": "VariableDeclaration", "scope": 5432, "src": "8911:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5340, "name": "address", "nodeType": "ElementaryTypeName", "src": "8911:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5344, "mutability": "mutable", "name": "ids", "nodeType": "VariableDeclaration", "scope": 5432, "src": "8931:22:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5342, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "8931:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5343, "nodeType": "ArrayTypeName", "src": "8931:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" }, { "constant": false, "id": 5347, "mutability": "mutable", "name": "amounts", "nodeType": "VariableDeclaration", "scope": 5432, "src": "8963:26:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5345, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "8963:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5346, "nodeType": "ArrayTypeName", "src": "8963:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" }, { "constant": false, "id": 5349, "mutability": "mutable", "name": "data", "nodeType": "VariableDeclaration", "scope": 5432, "src": "8999:19:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { "id": 5348, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8999:5:30", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "8879:145:30" }, "returnParameters": { "id": 5352, "nodeType": "ParameterList", "parameters": [], "src": "9051:0:30" }, "scope": 6026, "src": "8849:1500:30", "stateMutability": "payable", "virtual": false, "visibility": "external" }, { "body": { "id": 5479, "nodeType": "Block", "src": "10465:576:30", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5457, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5450, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5443, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5441, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5435, "src": "10551:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 5442, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5437, "src": "10559:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "10551:10:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5449, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5444, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5437, "src": "10565:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "arguments": [ { "hexValue": "30", "id": 5447, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "10579:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 5446, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "10571:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5445, "name": "address", "nodeType": "ElementaryTypeName", "src": "10571:7:30", "typeDescriptions": {} } }, "id": 5448, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10571:10:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "10565:16:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "10551:30:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5451, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5437, "src": "10585:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "arguments": [ { "id": 5454, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "10599:4:30", "typeDescriptions": { "typeIdentifier": "t_contract$_ERC1155Action_$6026", "typeString": "contract ERC1155Action" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_ERC1155Action_$6026", "typeString": "contract ERC1155Action" } ], "id": 5453, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "10591:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5452, "name": "address", "nodeType": "ElementaryTypeName", "src": "10591:7:30", "typeDescriptions": {} } }, "id": 5455, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10591:13:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "10585:19:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "10551:53:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "496e76616c69642061646472657373", "id": 5458, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10606:17:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1462473b7a4b33d32b109b815fd2324d00c9e5839b707ecf16d0ab5744f99226", "typeString": "literal_string \"Invalid address\"" }, "value": "Invalid address" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1462473b7a4b33d32b109b815fd2324d00c9e5839b707ecf16d0ab5744f99226", "typeString": "literal_string \"Invalid address\"" } ], "id": 5440, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "10543:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5459, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10543:81:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5460, "nodeType": "ExpressionStatement", "src": "10543:81:30" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5471, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5465, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5462, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "10677:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5463, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "10677:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5464, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5435, "src": "10691:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "10677:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "arguments": [ { "id": 5467, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5435, "src": "10716:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 5468, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "10722:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5469, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "10722:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address_payable", "typeString": "address payable" } ], "id": 5466, "name": "isApprovedForAll", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6006, "src": "10699:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) view returns (bool)" } }, "id": 5470, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10699:34:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "10677:56:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a6564", "id": 5472, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10735:14:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" }, "value": "Unauthorized" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1b2638459828301e8cd6c7c02856073bacf975379e0867f689bb14feacb780c5", "typeString": "literal_string \"Unauthorized\"" } ], "id": 5461, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "10669:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5473, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "10669:81:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5474, "nodeType": "ExpressionStatement", "src": "10669:81:30" }, { "expression": { "arguments": [ { "id": 5476, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5435, "src": "11029:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 5475, "name": "requireValidAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3661, "src": "11009:19:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$__$", "typeString": "function (address) view" } }, "id": 5477, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11009:25:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5478, "nodeType": "ExpressionStatement", "src": "11009:25:30" } ] }, "documentation": { "id": 5433, "nodeType": "StructuredDocumentation", "src": "10355:39:30", "text": "@dev Validates accounts on transfer" }, "id": 5480, "implemented": true, "kind": "function", "modifiers": [], "name": "_validateAccounts", "nodeType": "FunctionDefinition", "parameters": { "id": 5438, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5435, "mutability": "mutable", "name": "from", "nodeType": "VariableDeclaration", "scope": 5480, "src": "10426:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5434, "name": "address", "nodeType": "ElementaryTypeName", "src": "10426:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5437, "mutability": "mutable", "name": "to", "nodeType": "VariableDeclaration", "scope": 5480, "src": "10440:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5436, "name": "address", "nodeType": "ElementaryTypeName", "src": "10440:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "10425:26:30" }, "returnParameters": { "id": 5439, "nodeType": "ParameterList", "parameters": [], "src": "10465:0:30" }, "scope": 6026, "src": "10399:642:30", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "baseFunctions": [ 58217 ], "body": { "id": 5505, "nodeType": "Block", "src": "11414:138:30", "statements": [ { "assignments": [ 5497, null ], "declarations": [ { "constant": false, "id": 5497, "mutability": "mutable", "name": "assets", "nodeType": "VariableDeclaration", "scope": 5505, "src": "11452:30:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5495, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "11452:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5496, "nodeType": "ArrayTypeName", "src": "11452:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" }, null ], "id": 5502, "initialValue": { "arguments": [ { "id": 5499, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5484, "src": "11509:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, { "id": 5500, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5487, "src": "11514:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } ], "id": 5498, "name": "_decodeToAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5628, "src": "11493:15:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", "typeString": "function (uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory,bool)" } }, "id": 5501, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11493:29:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" } }, "nodeType": "VariableDeclarationStatement", "src": "11451:71:30" }, { "expression": { "id": 5503, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5497, "src": "11539:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "functionReturnParameters": 5493, "id": 5504, "nodeType": "Return", "src": "11532:13:30" } ] }, "documentation": { "id": 5481, "nodeType": "StructuredDocumentation", "src": "11047:193:30", "text": "@notice Decodes ids and amounts to PortfolioAsset objects\n @param ids array of ERC1155 ids\n @param amounts amounts to transfer\n @return array of portfolio asset objects" }, "functionSelector": "3fa6b808", "id": 5506, "implemented": true, "kind": "function", "modifiers": [], "name": "decodeToAssets", "nodeType": "FunctionDefinition", "overrides": { "id": 5489, "nodeType": "OverrideSpecifier", "overrides": [], "src": "11359:8:30" }, "parameters": { "id": 5488, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5484, "mutability": "mutable", "name": "ids", "nodeType": "VariableDeclaration", "scope": 5506, "src": "11269:22:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5482, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11269:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5483, "nodeType": "ArrayTypeName", "src": "11269:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" }, { "constant": false, "id": 5487, "mutability": "mutable", "name": "amounts", "nodeType": "VariableDeclaration", "scope": 5506, "src": "11293:26:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5485, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11293:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5486, "nodeType": "ArrayTypeName", "src": "11293:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "11268:52:30" }, "returnParameters": { "id": 5493, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5492, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5506, "src": "11385:23:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5490, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "11385:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5491, "nodeType": "ArrayTypeName", "src": "11385:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" } ], "src": "11384:25:30" }, "scope": 6026, "src": "11245:307:30", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "body": { "id": 5627, "nodeType": "Block", "src": "11717:1363:30", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5525, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5521, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5509, "src": "11735:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5522, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "11735:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 5523, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5512, "src": "11749:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5524, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "11749:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "11735:28:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 5520, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "11727:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 5526, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11727:37:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5527, "nodeType": "ExpressionStatement", "src": "11727:37:30" }, { "assignments": [ 5529 ], "declarations": [ { "constant": false, "id": 5529, "mutability": "mutable", "name": "toTransferNegative", "nodeType": "VariableDeclaration", "scope": 5627, "src": "11774:23:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5528, "name": "bool", "nodeType": "ElementaryTypeName", "src": "11774:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "id": 5531, "initialValue": { "hexValue": "66616c7365", "id": 5530, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "11800:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, "nodeType": "VariableDeclarationStatement", "src": "11774:31:30" }, { "assignments": [ 5535 ], "declarations": [ { "constant": false, "id": 5535, "mutability": "mutable", "name": "assets", "nodeType": "VariableDeclaration", "scope": 5627, "src": "11815:30:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5533, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "11815:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5534, "nodeType": "ArrayTypeName", "src": "11815:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" } ], "id": 5542, "initialValue": { "arguments": [ { "expression": { "id": 5539, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5509, "src": "11869:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5540, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "11869:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5538, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", "src": "11848:20:30", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (struct PortfolioAsset memory[] memory)" }, "typeName": { "baseType": { "id": 5536, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "11852:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5537, "nodeType": "ArrayTypeName", "src": "11852:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } } }, "id": 5541, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11848:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "nodeType": "VariableDeclarationStatement", "src": "11815:65:30" }, { "body": { "id": 5621, "nodeType": "Block", "src": "11928:1100:30", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5555, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5553, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "12045:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 5554, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "12049:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "12045:5:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5569, "nodeType": "IfStatement", "src": "12041:61:30", "trueBody": { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5565, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { "id": 5557, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5509, "src": "12060:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5559, "indexExpression": { "id": 5558, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "12064:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "12060:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "baseExpression": { "id": 5560, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5509, "src": "12069:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5564, "indexExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5563, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5561, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "12073:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "31", "id": 5562, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "12077:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "12073:5:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "12069:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "12060:19:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "494473206d75737420626520736f72746564", "id": 5566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12081:20:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a257b34c4dd73c1cfb471605b5c9265382a49f713f27dffe4296072792908496", "typeString": "literal_string \"IDs must be sorted\"" }, "value": "IDs must be sorted" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_a257b34c4dd73c1cfb471605b5c9265382a49f713f27dffe4296072792908496", "typeString": "literal_string \"IDs must be sorted\"" } ], "id": 5556, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "12052:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5567, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "12052:50:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5568, "nodeType": "ExpressionStatement", "src": "12052:50:30" } }, { "assignments": [ 5571 ], "declarations": [ { "constant": false, "id": 5571, "mutability": "mutable", "name": "asset", "nodeType": "VariableDeclaration", "scope": 5621, "src": "12117:27:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset" }, "typeName": { "id": 5570, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "12117:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "visibility": "internal" } ], "id": 5575, "initialValue": { "baseExpression": { "id": 5572, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5535, "src": "12147:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, "id": 5574, "indexExpression": { "id": 5573, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "12154:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "12147:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "nodeType": "VariableDeclarationStatement", "src": "12117:39:30" }, { "expression": { "id": 5590, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "components": [ { "expression": { "id": 5576, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12171:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5578, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57650, "src": "12171:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5579, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12189:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5580, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "maturity", "nodeType": "MemberAccess", "referencedDeclaration": 57652, "src": "12189:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5581, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12205:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5582, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "assetType", "nodeType": "MemberAccess", "referencedDeclaration": 57654, "src": "12205:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 5583, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", "src": "12170:51:30", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256)" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "baseExpression": { "id": 5586, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5509, "src": "12253:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5588, "indexExpression": { "id": 5587, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "12257:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "12253:6:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5584, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "12224:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5585, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "decodeAssetId", "nodeType": "MemberAccess", "referencedDeclaration": 38443, "src": "12224:28:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) pure returns (uint256,uint256,uint256)" } }, "id": 5589, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "12224:36:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256)" } }, "src": "12170:90:30", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5591, "nodeType": "ExpressionStatement", "src": "12170:90:30" }, { "expression": { "arguments": [ { "expression": { "id": 5593, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12297:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5594, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "currencyId", "nodeType": "MemberAccess", "referencedDeclaration": 57650, "src": "12297:16:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5595, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12315:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5596, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "maturity", "nodeType": "MemberAccess", "referencedDeclaration": 57652, "src": "12315:14:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "expression": { "id": 5597, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -4, "src": "12331:5:30", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, "id": 5598, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "timestamp", "nodeType": "MemberAccess", "src": "12331:15:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5592, "name": "_requireValidMaturity", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5673, "src": "12275:21:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256) view" } }, "id": 5599, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "12275:72:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5600, "nodeType": "ExpressionStatement", "src": "12275:72:30" }, { "expression": { "id": 5610, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "expression": { "id": 5601, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12759:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "notional", "nodeType": "MemberAccess", "referencedDeclaration": 57656, "src": "12759:14:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "baseExpression": { "id": 5606, "name": "amounts", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5512, "src": "12783:7:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5608, "indexExpression": { "id": 5607, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "12791:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "12783:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5605, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "12776:6:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 5604, "name": "int256", "nodeType": "ElementaryTypeName", "src": "12776:6:30", "typeDescriptions": {} } }, "id": 5609, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "12776:18:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "12759:35:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 5611, "nodeType": "ExpressionStatement", "src": "12759:35:30" }, { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 5615, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5612, "name": "asset", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5571, "src": "12972:5:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_memory_ptr", "typeString": "struct PortfolioAsset memory" } }, "id": 5613, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "notional", "nodeType": "MemberAccess", "referencedDeclaration": 57656, "src": "12972:14:30", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "hexValue": "30", "id": 5614, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "12989:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "12972:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5620, "nodeType": "IfStatement", "src": "12968:49:30", "trueBody": { "expression": { "id": 5618, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5616, "name": "toTransferNegative", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5529, "src": "12992:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "74727565", "id": 5617, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "13013:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "src": "12992:25:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5619, "nodeType": "ExpressionStatement", "src": "12992:25:30" } } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5549, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5546, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "11907:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 5547, "name": "ids", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5509, "src": "11911:3:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, "id": 5548, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "11911:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "11907:14:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5622, "initializationExpression": { "assignments": [ 5544 ], "declarations": [ { "constant": false, "id": 5544, "mutability": "mutable", "name": "i", "nodeType": "VariableDeclaration", "scope": 5622, "src": "11896:9:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5543, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11896:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 5545, "nodeType": "VariableDeclarationStatement", "src": "11896:9:30" }, "loopExpression": { "expression": { "id": 5551, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "11923:3:30", "subExpression": { "id": 5550, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5544, "src": "11923:1:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5552, "nodeType": "ExpressionStatement", "src": "11923:3:30" }, "nodeType": "ForStatement", "src": "11891:1137:30" }, { "expression": { "components": [ { "id": 5623, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5535, "src": "13046:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } }, { "id": 5624, "name": "toTransferNegative", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5529, "src": "13054:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "id": 5625, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "13045:28:30", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$_t_bool_$", "typeString": "tuple(struct PortfolioAsset memory[] memory,bool)" } }, "functionReturnParameters": 5519, "id": 5626, "nodeType": "Return", "src": "13038:35:30" } ] }, "id": 5628, "implemented": true, "kind": "function", "modifiers": [], "name": "_decodeToAssets", "nodeType": "FunctionDefinition", "parameters": { "id": 5513, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5509, "mutability": "mutable", "name": "ids", "nodeType": "VariableDeclaration", "scope": 5628, "src": "11583:22:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5507, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11583:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5508, "nodeType": "ArrayTypeName", "src": "11583:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" }, { "constant": false, "id": 5512, "mutability": "mutable", "name": "amounts", "nodeType": "VariableDeclaration", "scope": 5628, "src": "11607:26:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5510, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11607:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5511, "nodeType": "ArrayTypeName", "src": "11607:9:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "11582:52:30" }, "returnParameters": { "id": 5519, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5516, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5628, "src": "11682:23:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5514, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "11682:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5515, "nodeType": "ArrayTypeName", "src": "11682:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" }, { "constant": false, "id": 5518, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5628, "src": "11707:4:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5517, "name": "bool", "nodeType": "ElementaryTypeName", "src": "11707:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "11681:31:30" }, "scope": 6026, "src": "11558:1522:30", "stateMutability": "view", "virtual": false, "visibility": "internal" }, { "baseFunctions": [ 58228 ], "body": { "id": 5648, "nodeType": "Block", "src": "13458:85:30", "statements": [ { "expression": { "arguments": [ { "id": 5643, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5631, "src": "13504:10:30", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, { "id": 5644, "name": "maturity", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5633, "src": "13516:8:30", "typeDescriptions": { "typeIdentifier": "t_uint40", "typeString": "uint40" } }, { "id": 5645, "name": "assetType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5635, "src": "13526:9:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint16", "typeString": "uint16" }, { "typeIdentifier": "t_uint40", "typeString": "uint40" }, { "typeIdentifier": "t_uint8", "typeString": "uint8" } ], "expression": { "id": 5641, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "13475:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5642, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "encodeAssetId", "nodeType": "MemberAccess", "referencedDeclaration": 38522, "src": "13475:28:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) pure returns (uint256)" } }, "id": 5646, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13475:61:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 5640, "id": 5647, "nodeType": "Return", "src": "13468:68:30" } ] }, "documentation": { "id": 5629, "nodeType": "StructuredDocumentation", "src": "13086:223:30", "text": "@notice Encodes parameters into an ERC1155 id\n @param currencyId currency id of the asset\n @param maturity timestamp of the maturity\n @param assetType id of the asset type\n @return ERC1155 id" }, "functionSelector": "735a1dc8", "id": 5649, "implemented": true, "kind": "function", "modifiers": [], "name": "encodeToId", "nodeType": "FunctionDefinition", "overrides": { "id": 5637, "nodeType": "OverrideSpecifier", "overrides": [], "src": "13431:8:30" }, "parameters": { "id": 5636, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5631, "mutability": "mutable", "name": "currencyId", "nodeType": "VariableDeclaration", "scope": 5649, "src": "13343:17:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" }, "typeName": { "id": 5630, "name": "uint16", "nodeType": "ElementaryTypeName", "src": "13343:6:30", "typeDescriptions": { "typeIdentifier": "t_uint16", "typeString": "uint16" } }, "visibility": "internal" }, { "constant": false, "id": 5633, "mutability": "mutable", "name": "maturity", "nodeType": "VariableDeclaration", "scope": 5649, "src": "13370:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint40", "typeString": "uint40" }, "typeName": { "id": 5632, "name": "uint40", "nodeType": "ElementaryTypeName", "src": "13370:6:30", "typeDescriptions": { "typeIdentifier": "t_uint40", "typeString": "uint40" } }, "visibility": "internal" }, { "constant": false, "id": 5635, "mutability": "mutable", "name": "assetType", "nodeType": "VariableDeclaration", "scope": 5649, "src": "13395:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, "typeName": { "id": 5634, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "13395:5:30", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "visibility": "internal" } ], "src": "13333:83:30" }, "returnParameters": { "id": 5640, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5639, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5649, "src": "13449:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5638, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13449:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "13448:9:30" }, "scope": 6026, "src": "13314:229:30", "stateMutability": "pure", "virtual": false, "visibility": "external" }, { "body": { "id": 5672, "nodeType": "Block", "src": "13818:166:30", "statements": [ { "expression": { "arguments": [ { "arguments": [ { "arguments": [ { "id": 5664, "name": "currencyId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5652, "src": "13902:10:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5662, "name": "CashGroup", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 31956, "src": "13874:9:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_CashGroup_$31956_$", "typeString": "type(library CashGroup)" } }, "id": 5663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getMaxMarketIndex", "nodeType": "MemberAccess", "referencedDeclaration": 31440, "src": "13874:27:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint8_$", "typeString": "function (uint256) view returns (uint8)" } }, "id": 5665, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13874:39:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, { "id": 5666, "name": "maturity", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5654, "src": "13915:8:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 5667, "name": "blockTime", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5656, "src": "13925:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint8", "typeString": "uint8" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5660, "name": "DateTime", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 32595, "src": "13849:8:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_DateTime_$32595_$", "typeString": "type(library DateTime)" } }, "id": 5661, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isValidMaturity", "nodeType": "MemberAccess", "referencedDeclaration": 32200, "src": "13849:24:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256,uint256,uint256) pure returns (bool)" } }, "id": 5668, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13849:86:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "496e76616c6964206d61747572697479", "id": 5669, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13949:18:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_6ac8fa1ec1f45f2a4a2017eedf59db09ad3fe10b2748a8ca73a4b71f86bef54e", "typeString": "literal_string \"Invalid maturity\"" }, "value": "Invalid maturity" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_6ac8fa1ec1f45f2a4a2017eedf59db09ad3fe10b2748a8ca73a4b71f86bef54e", "typeString": "literal_string \"Invalid maturity\"" } ], "id": 5659, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "13828:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5670, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "13828:149:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5671, "nodeType": "ExpressionStatement", "src": "13828:149:30" } ] }, "documentation": { "id": 5650, "nodeType": "StructuredDocumentation", "src": "13549:133:30", "text": "@dev Ensures that all maturities specified are valid for the currency id (i.e. they do not\n go past the max maturity date)" }, "id": 5673, "implemented": true, "kind": "function", "modifiers": [], "name": "_requireValidMaturity", "nodeType": "FunctionDefinition", "parameters": { "id": 5657, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5652, "mutability": "mutable", "name": "currencyId", "nodeType": "VariableDeclaration", "scope": 5673, "src": "13727:18:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5651, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13727:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5654, "mutability": "mutable", "name": "maturity", "nodeType": "VariableDeclaration", "scope": 5673, "src": "13755:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5653, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13755:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 5656, "mutability": "mutable", "name": "blockTime", "nodeType": "VariableDeclaration", "scope": 5673, "src": "13781:17:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5655, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "13781:7:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "13717:87:30" }, "returnParameters": { "id": 5658, "nodeType": "ParameterList", "parameters": [], "src": "13818:0:30" }, "scope": 6026, "src": "13687:297:30", "stateMutability": "view", "virtual": false, "visibility": "private" }, { "body": { "id": 5768, "nodeType": "Block", "src": "14221:1112:30", "statements": [ { "assignments": [ 5689 ], "declarations": [ { "constant": false, "id": 5689, "mutability": "mutable", "name": "toContext", "nodeType": "VariableDeclaration", "scope": 5768, "src": "14422:31:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5688, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "14422:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 5694, "initialValue": { "arguments": [ { "id": 5692, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5678, "src": "14496:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5690, "name": "AccountContextHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24055, "src": "14456:21:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", "typeString": "type(library AccountContextHandler)" } }, "id": 5691, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23345, "src": "14456:39:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) view returns (struct AccountContext memory)" } }, "id": 5693, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14456:43:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "14422:77:30" }, { "condition": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 5695, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "14513:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "mustSettleAssets", "nodeType": "MemberAccess", "referencedDeclaration": 23510, "src": "14513:26:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) view returns (bool)" } }, "id": 5697, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14513:28:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5707, "nodeType": "IfStatement", "src": "14509:120:30", "trueBody": { "id": 5706, "nodeType": "Block", "src": "14543:86:30", "statements": [ { "expression": { "id": 5704, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5698, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "14557:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5701, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5678, "src": "14604:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5702, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "14608:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "expression": { "id": 5699, "name": "SettleAssetsExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1878, "src": "14569:20:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } }, "id": 5700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "settleAccount", "nodeType": "MemberAccess", "referencedDeclaration": 1877, "src": "14569:34:30", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" } }, "id": 5703, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14569:49:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "src": "14557:61:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5705, "nodeType": "ExpressionStatement", "src": "14557:61:30" } ] } }, { "expression": { "id": 5715, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5708, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "14638:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5711, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5678, "src": "14686:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5712, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "14690:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5713, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5681, "src": "14701:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } ], "expression": { "id": 5709, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "14650:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5710, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "placeAssetsInAccount", "nodeType": "MemberAccess", "referencedDeclaration": 38617, "src": "14650:35:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct AccountContext memory,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory)" } }, "id": 5714, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14650:58:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "src": "14638:70:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5716, "nodeType": "ExpressionStatement", "src": "14638:70:30" }, { "expression": { "arguments": [ { "id": 5720, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5678, "src": "14746:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5717, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "14718:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5719, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23372, "src": "14718:27:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory,address)" } }, "id": 5721, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14718:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5722, "nodeType": "ExpressionStatement", "src": "14718:31:30" }, { "expression": { "arguments": [ { "id": 5726, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5681, "src": "14876:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } ], "expression": { "id": 5723, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "14832:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "invertNotionalAmountsInPlace", "nodeType": "MemberAccess", "referencedDeclaration": 38554, "src": "14832:43:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$__$", "typeString": "function (struct PortfolioAsset memory[] memory) pure" } }, "id": 5727, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14832:51:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5728, "nodeType": "ExpressionStatement", "src": "14832:51:30" }, { "assignments": [ 5730 ], "declarations": [ { "constant": false, "id": 5730, "mutability": "mutable", "name": "fromContext", "nodeType": "VariableDeclaration", "scope": 5768, "src": "14935:33:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5729, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "14935:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "id": 5735, "initialValue": { "arguments": [ { "id": 5733, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5676, "src": "15011:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5731, "name": "AccountContextHandler", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24055, "src": "14971:21:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_AccountContextHandler_$24055_$", "typeString": "type(library AccountContextHandler)" } }, "id": 5732, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23345, "src": "14971:39:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address) view returns (struct AccountContext memory)" } }, "id": 5734, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "14971:45:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "VariableDeclarationStatement", "src": "14935:81:30" }, { "condition": { "arguments": [], "expression": { "argumentTypes": [], "expression": { "id": 5736, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15030:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5737, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "mustSettleAssets", "nodeType": "MemberAccess", "referencedDeclaration": 23510, "src": "15030:28:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory) view returns (bool)" } }, "id": 5738, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15030:30:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5748, "nodeType": "IfStatement", "src": "15026:128:30", "trueBody": { "id": 5747, "nodeType": "Block", "src": "15062:92:30", "statements": [ { "expression": { "id": 5745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5739, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15076:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5742, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5676, "src": "15125:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5743, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15131:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } ], "expression": { "id": 5740, "name": "SettleAssetsExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1878, "src": "15090:20:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } }, "id": 5741, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "settleAccount", "nodeType": "MemberAccess", "referencedDeclaration": 1877, "src": "15090:34:30", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct AccountContext memory) returns (struct AccountContext memory)" } }, "id": 5744, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15090:53:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "src": "15076:67:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5746, "nodeType": "ExpressionStatement", "src": "15076:67:30" } ] } }, { "expression": { "id": 5756, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5749, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15163:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5752, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5676, "src": "15213:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5753, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15219:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5754, "name": "assets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5681, "src": "15232:6:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" }, { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset memory[] memory" } ], "expression": { "id": 5750, "name": "TransferAssets", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 38618, "src": "15177:14:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_TransferAssets_$38618_$", "typeString": "type(library TransferAssets)" } }, "id": 5751, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "placeAssetsInAccount", "nodeType": "MemberAccess", "referencedDeclaration": 38617, "src": "15177:35:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_struct$_AccountContext_$57743_memory_ptr_$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (address,struct AccountContext memory,struct PortfolioAsset memory[] memory) returns (struct AccountContext memory)" } }, "id": 5755, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15177:62:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "src": "15163:76:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5757, "nodeType": "ExpressionStatement", "src": "15163:76:30" }, { "expression": { "arguments": [ { "id": 5761, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5676, "src": "15279:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5758, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15249:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5760, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAccountContext", "nodeType": "MemberAccess", "referencedDeclaration": 23372, "src": "15249:29:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_AccountContext_$57743_memory_ptr_$_t_address_$returns$__$bound_to$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "function (struct AccountContext memory,address)" } }, "id": 5762, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15249:35:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5763, "nodeType": "ExpressionStatement", "src": "15249:35:30" }, { "expression": { "components": [ { "id": 5764, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5730, "src": "15303:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, { "id": 5765, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5689, "src": "15316:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } } ], "id": 5766, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "15302:24:30", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_struct$_AccountContext_$57743_memory_ptr_$_t_struct$_AccountContext_$57743_memory_ptr_$", "typeString": "tuple(struct AccountContext memory,struct AccountContext memory)" } }, "functionReturnParameters": 5687, "id": 5767, "nodeType": "Return", "src": "15295:31:30" } ] }, "documentation": { "id": 5674, "nodeType": "StructuredDocumentation", "src": "13990:55:30", "text": "@dev Internal asset transfer event between accounts" }, "id": 5769, "implemented": true, "kind": "function", "modifiers": [], "name": "_transfer", "nodeType": "FunctionDefinition", "parameters": { "id": 5682, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5676, "mutability": "mutable", "name": "from", "nodeType": "VariableDeclaration", "scope": 5769, "src": "14078:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5675, "name": "address", "nodeType": "ElementaryTypeName", "src": "14078:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5678, "mutability": "mutable", "name": "to", "nodeType": "VariableDeclaration", "scope": 5769, "src": "14100:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5677, "name": "address", "nodeType": "ElementaryTypeName", "src": "14100:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5681, "mutability": "mutable", "name": "assets", "nodeType": "VariableDeclaration", "scope": 5769, "src": "14120:30:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr", "typeString": "struct PortfolioAsset[]" }, "typeName": { "baseType": { "id": 5679, "name": "PortfolioAsset", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57661, "src": "14120:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_PortfolioAsset_$57661_storage_ptr", "typeString": "struct PortfolioAsset" } }, "id": 5680, "nodeType": "ArrayTypeName", "src": "14120:16:30", "typeDescriptions": { "typeIdentifier": "t_array$_t_struct$_PortfolioAsset_$57661_storage_$dyn_storage_ptr", "typeString": "struct PortfolioAsset[]" } }, "visibility": "internal" } ], "src": "14068:88:30" }, "returnParameters": { "id": 5687, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5684, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5769, "src": "14175:21:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5683, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "14175:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" }, { "constant": false, "id": 5686, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5769, "src": "14198:21:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5685, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "14198:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" } ], "src": "14174:46:30" }, "scope": 6026, "src": "14050:1283:30", "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "body": { "id": 5931, "nodeType": "Block", "src": "15728:2847:30", "statements": [ { "assignments": [ 5786 ], "declarations": [ { "constant": false, "id": 5786, "mutability": "mutable", "name": "sig", "nodeType": "VariableDeclaration", "scope": 5931, "src": "15738:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 5785, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "15738:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "visibility": "internal" } ], "id": 5788, "initialValue": { "hexValue": "30", "id": 5787, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "15751:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "15738:14:30" }, { "assignments": [ 5790 ], "declarations": [ { "constant": false, "id": 5790, "mutability": "mutable", "name": "transactedAccount", "nodeType": "VariableDeclaration", "scope": 5931, "src": "15762:25:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5789, "name": "address", "nodeType": "ElementaryTypeName", "src": "15762:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "id": 5795, "initialValue": { "arguments": [ { "hexValue": "30", "id": 5793, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "15798:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 5792, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "15790:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5791, "name": "address", "nodeType": "ElementaryTypeName", "src": "15790:7:30", "typeDescriptions": {} } }, "id": 5794, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "15790:10:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "nodeType": "VariableDeclarationStatement", "src": "15762:38:30" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5796, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5780, "src": "15814:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, "id": 5797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "15814:11:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "hexValue": "3332", "id": 5798, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "15829:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_32_by_1", "typeString": "int_const 32" }, "value": "32" }, "src": "15814:17:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5818, "nodeType": "IfStatement", "src": "15810:341:30", "trueBody": { "id": 5817, "nodeType": "Block", "src": "15833:318:30", "statements": [ { "assignments": [ 5801 ], "declarations": [ { "constant": false, "id": 5801, "mutability": "mutable", "name": "tmp", "nodeType": "VariableDeclaration", "scope": 5817, "src": "16068:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 5800, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "16068:7:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "id": 5809, "initialValue": { "arguments": [ { "id": 5804, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5780, "src": "16093:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, { "components": [ { "id": 5806, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "16100:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { "id": 5805, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "16100:7:30", "typeDescriptions": {} } } ], "id": 5807, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "16099:9:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" }, { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" } ], "expression": { "id": 5802, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "16082:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5803, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "decode", "nodeType": "MemberAccess", "src": "16082:10:30", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5808, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "16082:27:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", "src": "16068:41:30" }, { "expression": { "id": 5815, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5810, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5786, "src": "16123:3:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 5813, "name": "tmp", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5801, "src": "16136:3:30", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 5812, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "16129:6:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes4_$", "typeString": "type(bytes4)" }, "typeName": { "id": 5811, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "16129:6:30", "typeDescriptions": {} } }, "id": 5814, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "16129:11:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "16123:17:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "id": 5816, "nodeType": "ExpressionStatement", "src": "16123:17:30" } ] } }, { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5841, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5829, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 5823, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5819, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5786, "src": "16488:3:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 5820, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "16495:13:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 5821, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenRedeem", "nodeType": "MemberAccess", "referencedDeclaration": 57243, "src": "16495:26:30", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$", "typeString": "function NotionalProxy.nTokenRedeem(address,uint16,uint96,bool,bool) returns (int256)" } }, "id": 5822, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "16495:35:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "16488:42:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 5828, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5824, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5786, "src": "16546:3:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 5825, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "16553:13:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 5826, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchLend", "nodeType": "MemberAccess", "referencedDeclaration": 57322, "src": "16553:23:30", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchLend(address,struct BatchLend calldata[] calldata)" } }, "id": 5827, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "16553:32:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "16546:39:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "16488:97:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 5834, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5830, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5786, "src": "16601:3:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 5831, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "16608:13:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 5832, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchBalanceAction", "nodeType": "MemberAccess", "referencedDeclaration": 57296, "src": "16608:32:30", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchBalanceAction(address,struct BalanceAction calldata[] calldata) payable" } }, "id": 5833, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "16608:41:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "16601:48:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "16488:161:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 5840, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5836, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5786, "src": "16665:3:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 5837, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "16672:13:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 5838, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchBalanceAndTradeAction", "nodeType": "MemberAccess", "referencedDeclaration": 57304, "src": "16672:40:30", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchBalanceAndTradeAction(address,struct BalanceActionWithTrades calldata[] calldata) payable" } }, "id": 5839, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "16672:49:30", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "16665:56:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "16488:233:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5896, "nodeType": "IfStatement", "src": "16471:1122:30", "trueBody": { "id": 5895, "nodeType": "Block", "src": "16732:861:30", "statements": [ { "expression": { "id": 5853, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 5842, "name": "transactedAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5790, "src": "16746:17:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "baseExpression": { "id": 5845, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5780, "src": "16777:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } }, "endExpression": { "hexValue": "3336", "id": 5847, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "16784:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_36_by_1", "typeString": "int_const 36" }, "value": "36" }, "id": 5848, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "IndexRangeAccess", "src": "16777:10:30", "startExpression": { "hexValue": "34", "id": 5846, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "16782:1:30", "typeDescriptions": { "typeIdentifier": "t_rational_4_by_1", "typeString": "int_const 4" }, "value": "4" }, "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr_slice", "typeString": "bytes calldata slice" } }, { "components": [ { "id": 5850, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "16790:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5849, "name": "address", "nodeType": "ElementaryTypeName", "src": "16790:7:30", "typeDescriptions": {} } } ], "id": 5851, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "16789:9:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_calldata_ptr_slice", "typeString": "bytes calldata slice" }, { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" } ], "expression": { "id": 5843, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "16766:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5844, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "decode", "nodeType": "MemberAccess", "src": "16766:10:30", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5852, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "16766:33:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "16746:53:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 5854, "nodeType": "ExpressionStatement", "src": "16746:53:30" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5869, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5858, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5856, "name": "transactedAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5790, "src": "17080:17:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5857, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5772, "src": "17101:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "17080:25:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "components": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5867, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5861, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5859, "name": "transactedAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5790, "src": "17130:17:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 5860, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5774, "src": "17151:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "17130:23:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "arguments": [ { "id": 5863, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5774, "src": "17174:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "expression": { "id": 5864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "17178:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "17178:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address_payable", "typeString": "address payable" } ], "id": 5862, "name": "isApprovedForAll", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6006, "src": "17157:16:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function (address,address) view returns (bool)" } }, "id": 5866, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17157:32:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "17130:59:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "id": 5868, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "17129:61:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "17080:110:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "556e617574686f72697a65642063616c6c", "id": 5870, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "17208:19:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1a5436ba012075fff97e2b17048f8d423c8fe77be340e9ac8781d174af9d057a", "typeString": "literal_string \"Unauthorized call\"" }, "value": "Unauthorized call" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_1a5436ba012075fff97e2b17048f8d423c8fe77be340e9ac8781d174af9d057a", "typeString": "literal_string \"Unauthorized call\"" } ], "id": 5855, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "17055:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5871, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17055:186:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5872, "nodeType": "ExpressionStatement", "src": "17055:186:30" }, { "assignments": [ 5874, 5876 ], "declarations": [ { "constant": false, "id": 5874, "mutability": "mutable", "name": "status", "nodeType": "VariableDeclaration", "scope": 5895, "src": "17452:11:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5873, "name": "bool", "nodeType": "ElementaryTypeName", "src": "17452:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, { "constant": false, "id": 5876, "mutability": "mutable", "name": "result", "nodeType": "VariableDeclaration", "scope": 5895, "src": "17465:19:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 5875, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "17465:5:30", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "id": 5887, "initialValue": { "arguments": [ { "id": 5885, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5780, "src": "17525:4:30", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes calldata" } ], "expression": { "arguments": [ { "id": 5879, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "17496:4:30", "typeDescriptions": { "typeIdentifier": "t_contract$_ERC1155Action_$6026", "typeString": "contract ERC1155Action" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_contract$_ERC1155Action_$6026", "typeString": "contract ERC1155Action" } ], "id": 5878, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "17488:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5877, "name": "address", "nodeType": "ElementaryTypeName", "src": "17488:7:30", "typeDescriptions": {} } }, "id": 5880, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17488:13:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 5881, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "call", "nodeType": "MemberAccess", "src": "17488:18:30", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, "id": 5884, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "names": [ "value" ], "nodeType": "FunctionCallOptions", "options": [ { "expression": { "id": 5882, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "17514:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5883, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", "src": "17514:9:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "src": "17488:36:30", "typeDescriptions": { "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, "id": 5886, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17488:42:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, "nodeType": "VariableDeclarationStatement", "src": "17451:79:30" }, { "expression": { "arguments": [ { "id": 5889, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5874, "src": "17552:6:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "arguments": [ { "id": 5891, "name": "result", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5876, "src": "17574:6:30", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "id": 5890, "name": "_getRevertMsg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5956, "src": "17560:13:30", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (bytes memory) pure returns (string memory)" } }, "id": 5892, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17560:21:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "id": 5888, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "17544:7:30", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 5893, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17544:38:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5894, "nodeType": "ExpressionStatement", "src": "17544:38:30" } ] } }, { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5904, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5899, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5897, "name": "transactedAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5790, "src": "17920:17:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 5898, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5772, "src": "17941:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "17920:25:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, "id": 5903, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5900, "name": "fromContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5776, "src": "17949:11:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5901, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "hasDebt", "nodeType": "MemberAccess", "referencedDeclaration": 57736, "src": "17949:19:30", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30783030", "id": 5902, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "17972:4:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0x00" }, "src": "17949:27:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "17920:56:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5912, "nodeType": "IfStatement", "src": "17916:144:30", "trueBody": { "id": 5911, "nodeType": "Block", "src": "17978:82:30", "statements": [ { "expression": { "arguments": [ { "id": 5908, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5772, "src": "18044:4:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5905, "name": "FreeCollateralExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 618, "src": "17992:22:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } }, "id": 5907, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "checkFreeCollateralAndRevert", "nodeType": "MemberAccess", "referencedDeclaration": 553, "src": "17992:51:30", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, "id": 5909, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "17992:57:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5910, "nodeType": "ExpressionStatement", "src": "17992:57:30" } ] } }, { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5922, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 5917, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5913, "name": "toTransferNegative", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5782, "src": "18413:18:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 5916, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 5914, "name": "transactedAccount", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5790, "src": "18435:17:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 5915, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5774, "src": "18456:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "18435:23:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "18413:45:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, "id": 5921, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5918, "name": "toContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5778, "src": "18462:9:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext memory" } }, "id": 5919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "hasDebt", "nodeType": "MemberAccess", "referencedDeclaration": 57736, "src": "18462:17:30", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30783030", "id": 5920, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "18483:4:30", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0x00" }, "src": "18462:25:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "18413:74:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5930, "nodeType": "IfStatement", "src": "18409:160:30", "trueBody": { "id": 5929, "nodeType": "Block", "src": "18489:80:30", "statements": [ { "expression": { "arguments": [ { "id": 5926, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5774, "src": "18555:2:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 5923, "name": "FreeCollateralExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 618, "src": "18503:22:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } }, "id": 5925, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "checkFreeCollateralAndRevert", "nodeType": "MemberAccess", "referencedDeclaration": 553, "src": "18503:51:30", "typeDescriptions": { "typeIdentifier": "t_function_delegatecall_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, "id": 5927, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18503:55:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5928, "nodeType": "ExpressionStatement", "src": "18503:55:30" } ] } } ] }, "documentation": { "id": 5770, "nodeType": "StructuredDocumentation", "src": "15339:148:30", "text": "@dev Checks post transfer events which will either be initiating one of the batch trading events or a free collateral\n check if required." }, "id": 5932, "implemented": true, "kind": "function", "modifiers": [], "name": "_checkPostTransferEvent", "nodeType": "FunctionDefinition", "parameters": { "id": 5783, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5772, "mutability": "mutable", "name": "from", "nodeType": "VariableDeclaration", "scope": 5932, "src": "15534:12:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5771, "name": "address", "nodeType": "ElementaryTypeName", "src": "15534:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5774, "mutability": "mutable", "name": "to", "nodeType": "VariableDeclaration", "scope": 5932, "src": "15556:10:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5773, "name": "address", "nodeType": "ElementaryTypeName", "src": "15556:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5776, "mutability": "mutable", "name": "fromContext", "nodeType": "VariableDeclaration", "scope": 5932, "src": "15576:33:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5775, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "15576:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" }, { "constant": false, "id": 5778, "mutability": "mutable", "name": "toContext", "nodeType": "VariableDeclaration", "scope": 5932, "src": "15619:31:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_memory_ptr", "typeString": "struct AccountContext" }, "typeName": { "id": 5777, "name": "AccountContext", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 57743, "src": "15619:14:30", "typeDescriptions": { "typeIdentifier": "t_struct$_AccountContext_$57743_storage_ptr", "typeString": "struct AccountContext" } }, "visibility": "internal" }, { "constant": false, "id": 5780, "mutability": "mutable", "name": "data", "nodeType": "VariableDeclaration", "scope": 5932, "src": "15660:19:30", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { "typeIdentifier": "t_bytes_calldata_ptr", "typeString": "bytes" }, "typeName": { "id": 5779, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15660:5:30", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" }, { "constant": false, "id": 5782, "mutability": "mutable", "name": "toTransferNegative", "nodeType": "VariableDeclaration", "scope": 5932, "src": "15689:23:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5781, "name": "bool", "nodeType": "ElementaryTypeName", "src": "15689:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "15524:194:30" }, "returnParameters": { "id": 5784, "nodeType": "ParameterList", "parameters": [], "src": "15728:0:30" }, "scope": 6026, "src": "15492:3083:30", "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "body": { "id": 5955, "nodeType": "Block", "src": "18668:400:30", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 5942, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 5939, "name": "_returnData", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5934, "src": "18793:11:30", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 5940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", "src": "18793:18:30", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "hexValue": "3638", "id": 5941, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "18814:2:30", "typeDescriptions": { "typeIdentifier": "t_rational_68_by_1", "typeString": "int_const 68" }, "value": "68" }, "src": "18793:23:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5945, "nodeType": "IfStatement", "src": "18789:67:30", "trueBody": { "expression": { "hexValue": "5472616e73616374696f6e2072657665727465642073696c656e746c79", "id": 5943, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "18825:31:30", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d0b1e7612ebe87924453e5d4581b9067879655587bae8a2dfee438433699b890", "typeString": "literal_string \"Transaction reverted silently\"" }, "value": "Transaction reverted silently" }, "functionReturnParameters": 5938, "id": 5944, "nodeType": "Return", "src": "18818:38:30" } }, { "AST": { "nodeType": "YulBlock", "src": "18876:95:30", "statements": [ { "nodeType": "YulAssignment", "src": "18924:37:30", "value": { "arguments": [ { "name": "_returnData", "nodeType": "YulIdentifier", "src": "18943:11:30" }, { "kind": "number", "nodeType": "YulLiteral", "src": "18956:4:30", "type": "", "value": "0x04" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", "src": "18939:3:30" }, "nodeType": "YulFunctionCall", "src": "18939:22:30" }, "variableNames": [ { "name": "_returnData", "nodeType": "YulIdentifier", "src": "18924:11:30" } ] } ] }, "evmVersion": "istanbul", "externalReferences": [ { "declaration": 5934, "isOffset": false, "isSlot": false, "src": "18924:11:30", "valueSize": 1 }, { "declaration": 5934, "isOffset": false, "isSlot": false, "src": "18943:11:30", "valueSize": 1 } ], "id": 5946, "nodeType": "InlineAssembly", "src": "18867:104:30" }, { "expression": { "arguments": [ { "id": 5949, "name": "_returnData", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5934, "src": "18998:11:30", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5951, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "19012:6:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": { "id": 5950, "name": "string", "nodeType": "ElementaryTypeName", "src": "19012:6:30", "typeDescriptions": {} } } ], "id": 5952, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "19011:8:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" } ], "expression": { "id": 5947, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "18987:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5948, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "decode", "nodeType": "MemberAccess", "src": "18987:10:30", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5953, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "18987:33:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5938, "id": 5954, "nodeType": "Return", "src": "18980:40:30" } ] }, "id": 5956, "implemented": true, "kind": "function", "modifiers": [], "name": "_getRevertMsg", "nodeType": "FunctionDefinition", "parameters": { "id": 5935, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5934, "mutability": "mutable", "name": "_returnData", "nodeType": "VariableDeclaration", "scope": 5956, "src": "18604:24:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 5933, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "18604:5:30", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "18603:26:30" }, "returnParameters": { "id": 5938, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5937, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 5956, "src": "18653:13:30", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5936, "name": "string", "nodeType": "ElementaryTypeName", "src": "18653:6:30", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "18652:15:30" }, "scope": 6026, "src": "18581:487:30", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "baseFunctions": [ 58168 ], "body": { "id": 5981, "nodeType": "Block", "src": "19345:144:30", "statements": [ { "expression": { "id": 5972, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { "baseExpression": { "id": 5965, "name": "accountAuthorizedTransferOperator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23281, "src": "19355:33:30", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", "typeString": "mapping(address => mapping(address => bool))" } }, "id": 5969, "indexExpression": { "expression": { "id": 5966, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "19389:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5967, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "19389:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "19355:45:30", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, "id": 5970, "indexExpression": { "id": 5968, "name": "operator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5959, "src": "19401:8:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", "src": "19355:55:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 5971, "name": "approved", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5961, "src": "19413:8:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "19355:66:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5973, "nodeType": "ExpressionStatement", "src": "19355:66:30" }, { "eventCall": { "arguments": [ { "expression": { "id": 5975, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "19451:3:30", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 5976, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "19451:10:30", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "id": 5977, "name": "operator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5959, "src": "19463:8:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 5978, "name": "approved", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5961, "src": "19473:8:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 5974, "name": "ApprovalForAll", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58106, "src": "19436:14:30", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,address,bool)" } }, "id": 5979, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "19436:46:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 5980, "nodeType": "EmitStatement", "src": "19431:51:30" } ] }, "documentation": { "id": 5957, "nodeType": "StructuredDocumentation", "src": "19074:188:30", "text": "@notice Allows an account to set approval for an operator\n @param operator address of the operator\n @param approved state of the approval\n @dev emit:ApprovalForAll" }, "functionSelector": "a22cb465", "id": 5982, "implemented": true, "kind": "function", "modifiers": [], "name": "setApprovalForAll", "nodeType": "FunctionDefinition", "overrides": { "id": 5963, "nodeType": "OverrideSpecifier", "overrides": [], "src": "19336:8:30" }, "parameters": { "id": 5962, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5959, "mutability": "mutable", "name": "operator", "nodeType": "VariableDeclaration", "scope": 5982, "src": "19294:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5958, "name": "address", "nodeType": "ElementaryTypeName", "src": "19294:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5961, "mutability": "mutable", "name": "approved", "nodeType": "VariableDeclaration", "scope": 5982, "src": "19312:13:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5960, "name": "bool", "nodeType": "ElementaryTypeName", "src": "19312:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "19293:33:30" }, "returnParameters": { "id": 5964, "nodeType": "ParameterList", "parameters": [], "src": "19345:0:30" }, "scope": 6026, "src": "19267:222:30", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ 58177 ], "body": { "id": 6005, "nodeType": "Block", "src": "19939:136:30", "statements": [ { "condition": { "baseExpression": { "id": 5993, "name": "globalTransferOperator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23275, "src": "19953:22:30", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, "id": 5995, "indexExpression": { "id": 5994, "name": "operator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5987, "src": "19976:8:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "19953:32:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5998, "nodeType": "IfStatement", "src": "19949:49:30", "trueBody": { "expression": { "hexValue": "74727565", "id": 5996, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "19994:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "functionReturnParameters": 5992, "id": 5997, "nodeType": "Return", "src": "19987:11:30" } }, { "expression": { "baseExpression": { "baseExpression": { "id": 5999, "name": "accountAuthorizedTransferOperator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23281, "src": "20016:33:30", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", "typeString": "mapping(address => mapping(address => bool))" } }, "id": 6001, "indexExpression": { "id": 6000, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5985, "src": "20050:7:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "20016:42:30", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, "id": 6003, "indexExpression": { "id": 6002, "name": "operator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5987, "src": "20059:8:30", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "20016:52:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 5992, "id": 6004, "nodeType": "Return", "src": "20009:59:30" } ] }, "documentation": { "id": 5983, "nodeType": "StructuredDocumentation", "src": "19495:306:30", "text": "@notice Checks approval state for an account, will first check if global transfer operator is enabled\n before falling through to an account specific transfer operator.\n @param account address of the account\n @param operator address of the operator\n @return true for approved" }, "functionSelector": "e985e9c5", "id": 6006, "implemented": true, "kind": "function", "modifiers": [], "name": "isApprovedForAll", "nodeType": "FunctionDefinition", "overrides": { "id": 5989, "nodeType": "OverrideSpecifier", "overrides": [], "src": "19903:8:30" }, "parameters": { "id": 5988, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5985, "mutability": "mutable", "name": "account", "nodeType": "VariableDeclaration", "scope": 6006, "src": "19832:15:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5984, "name": "address", "nodeType": "ElementaryTypeName", "src": "19832:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 5987, "mutability": "mutable", "name": "operator", "nodeType": "VariableDeclaration", "scope": 6006, "src": "19849:16:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5986, "name": "address", "nodeType": "ElementaryTypeName", "src": "19849:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "19831:35:30" }, "returnParameters": { "id": 5992, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5991, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 6006, "src": "19929:4:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5990, "name": "bool", "nodeType": "ElementaryTypeName", "src": "19929:4:30", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "19928:6:30" }, "scope": 6026, "src": "19806:269:30", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { "id": 6024, "nodeType": "Block", "src": "20226:88:30", "statements": [ { "expression": { "components": [ { "arguments": [ { "id": 6016, "name": "FreeCollateralExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 618, "src": "20252:22:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_FreeCollateralExternal_$618_$", "typeString": "type(library FreeCollateralExternal)" } ], "id": 6015, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "20244:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 6014, "name": "address", "nodeType": "ElementaryTypeName", "src": "20244:7:30", "typeDescriptions": {} } }, "id": 6017, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "20244:31:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "id": 6020, "name": "SettleAssetsExternal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1878, "src": "20285:20:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_contract$_SettleAssetsExternal_$1878_$", "typeString": "type(library SettleAssetsExternal)" } ], "id": 6019, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "20277:7:30", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 6018, "name": "address", "nodeType": "ElementaryTypeName", "src": "20277:7:30", "typeDescriptions": {} } }, "id": 6021, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "20277:29:30", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "id": 6022, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "20243:64:30", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_address_$_t_address_$", "typeString": "tuple(address,address)" } }, "functionReturnParameters": 6013, "id": 6023, "nodeType": "Return", "src": "20236:71:30" } ] }, "documentation": { "id": 6007, "nodeType": "StructuredDocumentation", "src": "20081:77:30", "text": "@notice Get a list of deployed library addresses (sorted by library name)" }, "functionSelector": "c4c96dae", "id": 6025, "implemented": true, "kind": "function", "modifiers": [], "name": "getLibInfo", "nodeType": "FunctionDefinition", "parameters": { "id": 6008, "nodeType": "ParameterList", "parameters": [], "src": "20182:2:30" }, "returnParameters": { "id": 6013, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6010, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 6025, "src": "20208:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 6009, "name": "address", "nodeType": "ElementaryTypeName", "src": "20208:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 6012, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 6025, "src": "20217:7:30", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 6011, "name": "address", "nodeType": "ElementaryTypeName", "src": "20217:7:30", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "20207:18:30" }, "scope": 6026, "src": "20163:151:30", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 6027, "src": "683:19633:30" } ], "src": "41:20276:30" }, "bytecode": "608060405234801561001057600080fd5b506138d7806100206000396000f3fe6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b734763672dEa3bF087929d5537B6BAfeB8e6938F467301713633a1b85a4a3d2f9430C68Bd4392c4a90eA9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b81527301713633a1b85a4a3d2f9430C68Bd4392c4a90eA90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b8152734763672dEa3bF087929d5537B6BAfeB8e6938F4690636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea264697066735822122004fb3323a9552ead7044be41b2d326c7c87d5f575bc1c147a7aba924aad314b464736f6c63430007060033", "bytecodeSha1": "ad542a50fd9521f9faf16216c20b79ea94d56047", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.7.6+commit.7338295f" }, "contractName": "ERC1155Action", "coverageMap": { "branches": { "141": {}, "142": {}, "147": {}, "151": {}, "152": {}, "153": {}, "155": {}, "157": {}, "16": {}, "164": {}, "21": {}, "22": {}, "25": {}, "28": { "ActionGuards.requireValidAccount": { "347": [ 1374, 1402, true ], "348": [ 1454, 1478, true ], "349": [ 1741, 1754, true ] } }, "30": { "ERC1155Action._balanceInArray": { "295": [ 5358, 5388, false ], "296": [ 5408, 5434, false ], "297": [ 5454, 5482, false ] }, "ERC1155Action._balanceInBitmap": { "293": [ 4615, 4645, true ], "294": [ 4661, 4700, false ] }, "ERC1155Action._checkPostTransferEvent": { "308": [ 15814, 15831, false ], "309": [ 16488, 16530, true ], "310": [ 16546, 16585, true ], "311": [ 16601, 16649, true ], "312": [ 16665, 16721, false ], "313": [ 17080, 17105, true ], "314": [ 17130, 17153, false ], "315": [ 17157, 17189, true ], "316": [ 17552, 17558, true ], "317": [ 17920, 17945, false ], "318": [ 17949, 17976, false ], "319": [ 18413, 18431, false ], "320": [ 18435, 18458, false ], "321": [ 18462, 18487, false ] }, "ERC1155Action._decodeToAssets": { "303": [ 11735, 11763, true ], "304": [ 12045, 12050, false ], "305": [ 12060, 12079, true ] }, "ERC1155Action._getRevertMsg": { "323": [ 18793, 18816, false ] }, "ERC1155Action._requireValidMaturity": { "322": [ 13849, 13935, true ] }, "ERC1155Action._transfer": { "306": [ 14513, 14541, false ], "307": [ 15030, 15060, false ] }, "ERC1155Action._validateAccounts": { "298": [ 10551, 10561, false ], "299": [ 10565, 10581, false ], "300": [ 10585, 10604, true ], "301": [ 10677, 10695, true ], "302": [ 10699, 10733, true ] }, "ERC1155Action.balanceOf": { "281": [ 1902, 1914, true ] }, "ERC1155Action.balanceOfBatch": { "287": [ 3964, 3993, true ] }, "ERC1155Action.isApprovedForAll": { "289": [ 19953, 19985, false ] }, "ERC1155Action.safeBatchTransferFrom": { "283": [ 9535, 9553, false ], "284": [ 9563, 9595, true ], "285": [ 9993, 10015, false ], "286": [ 10056, 10286, true ] }, "ERC1155Action.safeTransferFrom": { "290": [ 6861, 6871, false ], "291": [ 7903, 7925, false ], "292": [ 7966, 8085, true ] }, "ERC1155Action.signedBalanceOf": { "282": [ 2385, 2417, false ] }, "ERC1155Action.signedBalanceOfBatch": { "288": [ 3135, 3164, true ] } }, "6": { "SafeMath.add": { "444": [ 2794, 2800, true ] }, "SafeMath.sub": { "445": [ 3213, 3219, true ] } }, "60": {}, "61": {}, "62": {}, "63": {}, "65": {}, "66": { "AccountContextHandler._clearPortfolioActiveFlags": { "330": [ 9343, 9420, false ] }, "AccountContextHandler.mustSettleAssets": { "324": [ 3173, 3204, false ] }, "AccountContextHandler.setActiveCurrency": { "331": [ 5431, 5445, false ], "332": [ 5449, 5487, true ], "333": [ 5707, 5715, false ], "334": [ 5719, 5764, false ], "335": [ 6877, 6894, false ], "336": [ 6898, 6906, false ], "337": [ 7232, 7249, false ], "338": [ 7254, 7262, false ], "339": [ 7405, 7455, false ], "340": [ 7689, 7705, false ], "341": [ 7709, 7717, false ], "342": [ 8010, 8058, true ], "343": [ 8358, 8374, false ], "344": [ 8379, 8387, false ], "345": [ 8616, 8624, false ], "346": [ 8724, 8734, true ] }, "AccountContextHandler.storeAssetsAndUpdateContext": { "325": [ 10453, 10494, true ], "326": [ 10772, 10785, false ], "327": [ 10809, 10869, true ], "328": [ 11059, 11066, false ], "329": [ 11955, 11981, false ] } }, "67": {}, "68": {}, "69": {}, "70": {}, "71": {}, "72": {}, "76": {}, "77": {}, "78": { "DateTime.getBitNumFromMaturity": { "380": [ 4283, 4312, false ], "381": [ 4387, 4412, false ], "382": [ 4680, 4718, false ], "383": [ 4780, 4819, false ], "384": [ 5662, 5702, false ], "385": [ 6112, 6154, false ] }, "DateTime.getReferenceTime": { "372": [ 425, 455, true ] }, "DateTime.getTimeUTC0": { "371": [ 668, 689, true ] }, "DateTime.getTradedMarket": { "373": [ 1014, 1024, false ], "374": [ 1064, 1074, false ], "375": [ 1118, 1128, false ], "376": [ 1165, 1175, false ], "377": [ 1216, 1226, false ], "378": [ 1267, 1277, false ], "379": [ 1319, 1329, false ] }, "DateTime.isValidMaturity": { "370": [ 2568, 2590, false ] } }, "79": {}, "80": {}, "81": {}, "82": {}, "83": { "BitmapAssetsHandler.addMultipleifCashAssets": { "357": [ 1930, 1962, true ], "358": [ 2179, 2198, false ], "359": [ 2231, 2261, true ], "360": [ 2327, 2372, true ], "361": [ 2692, 2709, false ] }, "BitmapAssetsHandler.addifCashAsset": { "362": [ 3621, 3628, true ], "363": [ 3689, 3718, false ], "364": [ 3879, 3912, false ], "365": [ 3916, 3949, true ], "366": [ 4348, 4361, false ], "367": [ 4483, 4511, false ], "368": [ 4515, 4543, true ] }, "BitmapAssetsHandler.setAssetsBitmap": { "369": [ 1069, 1127, true ] } }, "84": { "PortfolioHandler._extendNewAssetArray": { "417": [ 5552, 5573, true ] }, "PortfolioHandler._loadAssetArray": { "387": [ 16955, 16985, true ] }, "PortfolioHandler._mergeAssetIntoArray": { "408": [ 1530, 1558, true ], "409": [ 1578, 1608, true ], "410": [ 1628, 1654, false ], "411": [ 1853, 1899, false ], "412": [ 1919, 1973, true ], "413": [ 2173, 2213, false ], "414": [ 2241, 2257, true ], "415": [ 2354, 2384, false ], "416": [ 2388, 2418, true ] }, "PortfolioHandler._storeAsset": { "425": [ 11735, 11755, false ], "426": [ 11759, 11803, true ], "427": [ 11864, 11882, false ], "428": [ 11886, 11920, true ], "429": [ 11978, 11997, false ], "430": [ 12001, 12055, true ], "431": [ 12108, 12141, false ], "432": [ 12145, 12178, true ] }, "PortfolioHandler._updatePortfolioContext": { "433": [ 11089, 11108, true ], "434": [ 11112, 11143, false ], "435": [ 11268, 11315, true ] }, "PortfolioHandler.addAsset": { "390": [ 3230, 3416, false ], "391": [ 3448, 3484, false ], "392": [ 3715, 3721, false ], "393": [ 3904, 3944, false ], "394": [ 3968, 3981, true ], "395": [ 4069, 4096, false ], "396": [ 4100, 4127, true ], "397": [ 4242, 4309, false ] }, "PortfolioHandler.addMultipleAssets": { "389": [ 914, 933, false ] }, "PortfolioHandler.buildPortfolioState": { "388": [ 15658, 15679, false ] }, "PortfolioHandler.deleteAsset": { "418": [ 12795, 12837, true ], "419": [ 12885, 12921, true ], "420": [ 13072, 13126, false ], "421": [ 13142, 13204, true ], "422": [ 13680, 13709, false ], "423": [ 13713, 13755, false ], "424": [ 13883, 13910, false ] }, "PortfolioHandler.getSortedPortfolio": { "386": [ 15082, 15100, false ] }, "PortfolioHandler.storeAssets": { "398": [ 7495, 7549, true ], "399": [ 7625, 7671, false ], "400": [ 7675, 7694, false ], "401": [ 8021, 8067, false ], "402": [ 8305, 8351, false ], "403": [ 9569, 9588, false ], "404": [ 9637, 9683, false ], "405": [ 9703, 9757, true ], "406": [ 10311, 10335, false ], "407": [ 10339, 10373, true ] } }, "85": { "TransferAssets.encodeAssetId": { "446": [ 1043, 1081, true ], "447": [ 1100, 1128, true ], "448": [ 1147, 1195, true ] }, "TransferAssets.placeAssetsInAccount": { "449": [ 2322, 2356, true ], "450": [ 2395, 2427, false ] } }, "86": {}, "87": {}, "88": { "AssetHandler.getSettlementDate": { "350": [ 1112, 1131, false ], "351": [ 1135, 1189, true ] } }, "89": {}, "90": {}, "91": {}, "92": { "Bitmap.isBitSet": { "352": [ 828, 838, false ], "353": [ 842, 854, true ] }, "Bitmap.setBit": { "354": [ 455, 465, false ], "355": [ 469, 481, true ], "356": [ 526, 531, false ] } }, "93": {}, "94": { "SafeInt256.add": { "443": [ 1511, 1539, true ] }, "SafeInt256.mul": { "438": [ 497, 504, false ], "439": [ 515, 521, true ], "440": [ 525, 535, true ], "441": [ 560, 566, true ], "442": [ 570, 580, true ] }, "SafeInt256.toInt": { "437": [ 2596, 2626, true ] }, "SafeInt256.toUint": { "436": [ 2473, 2479, true ] } } }, "statements": { "141": {}, "142": {}, "147": {}, "151": {}, "152": {}, "153": {}, "155": {}, "157": {}, "16": { "Address.isContract": { "65": [ 1109, 1124 ] } }, "164": {}, "21": {}, "22": {}, "25": {}, "28": { "ActionGuards.requireValidAccount": { "89": [ 1366, 1403 ], "90": [ 1446, 1479 ], "91": [ 1733, 1755 ] } }, "30": { "ERC1155Action._balanceInArray": { "39": [ 5497, 5518 ], "40": [ 5262, 5265 ] }, "ERC1155Action._balanceInBitmap": { "35": [ 4789, 4797 ], "36": [ 4828, 4903 ] }, "ERC1155Action._checkPostTransferEvent": { "60": [ 16746, 16799 ], "61": [ 17055, 17241 ], "62": [ 17544, 17582 ], "63": [ 17992, 18049 ], "64": [ 18503, 18558 ] }, "ERC1155Action._decodeToAssets": { "44": [ 11727, 11764 ], "45": [ 12052, 12102 ], "46": [ 12170, 12260 ], "47": [ 12275, 12347 ], "48": [ 12759, 12794 ], "49": [ 12992, 13017 ], "50": [ 11923, 11926 ], "51": [ 13038, 13073 ] }, "ERC1155Action._getRevertMsg": { "103": [ 18818, 18856 ], "104": [ 18980, 19020 ] }, "ERC1155Action._requireValidMaturity": { "74": [ 13828, 13977 ] }, "ERC1155Action._transfer": { "52": [ 14557, 14618 ], "53": [ 14638, 14708 ], "54": [ 14718, 14749 ], "55": [ 14832, 14883 ], "56": [ 15076, 15143 ], "57": [ 15163, 15239 ], "58": [ 15249, 15284 ], "59": [ 15295, 15326 ] }, "ERC1155Action._validateAccounts": { "41": [ 10543, 10624 ], "42": [ 10669, 10750 ], "43": [ 11009, 11034 ] }, "ERC1155Action.balanceOf": { "0": [ 1895, 1938 ] }, "ERC1155Action.balanceOfBatch": { "9": [ 3956, 3994 ], "10": [ 4192, 4235 ], "11": [ 4109, 4112 ], "12": [ 4256, 4270 ] }, "ERC1155Action.encodeToId": { "13": [ 13468, 13536 ] }, "ERC1155Action.getLibInfo": { "19": [ 20236, 20307 ] }, "ERC1155Action.isApprovedForAll": { "20": [ 19987, 19998 ], "21": [ 20009, 20068 ] }, "ERC1155Action.safeBatchTransferFrom": { "4": [ 9260, 9287 ], "5": [ 9555, 9612 ], "6": [ 9778, 9861 ], "7": [ 9871, 9925 ], "8": [ 10031, 10332 ] }, "ERC1155Action.safeTransferFrom": { "22": [ 6663, 6690 ], "23": [ 7011, 7097 ], "24": [ 7187, 7228 ], "25": [ 7242, 7314 ], "26": [ 7360, 7420 ], "27": [ 7435, 7488 ], "28": [ 7519, 7578 ], "29": [ 7751, 7821 ], "30": [ 7941, 8131 ] }, "ERC1155Action.setApprovalForAll": { "17": [ 19355, 19421 ], "18": [ 19431, 19482 ] }, "ERC1155Action.signedBalanceOf": { "2": [ 2433, 2506 ], "3": [ 2537, 2692 ] }, "ERC1155Action.signedBalanceOfBatch": { "14": [ 3127, 3165 ], "15": [ 3361, 3410 ], "16": [ 3278, 3281 ] }, "ERC1155Action.supportsInterface": { "1": [ 1198, 1246 ] } }, "6": { "SafeMath.add": { "151": [ 2786, 2832 ] }, "SafeMath.sub": { "279": [ 3205, 3254 ], "280": [ 3264, 3276 ] } }, "60": {}, "61": {}, "62": { "LibStorage._getStorageSlot": { "107": [ 8727, 8772 ] } }, "63": {}, "65": {}, "66": { "AccountContextHandler._clearPortfolioActiveFlags": { "195": [ 9497, 9550 ], "196": [ 9568, 9580 ], "197": [ 9608, 9629 ], "198": [ 9650, 9663 ] }, "AccountContextHandler.getAccountContext": { "33": [ 743, 764 ] }, "AccountContextHandler.isBitmapEnabled": { "34": [ 1219, 1262 ] }, "AccountContextHandler.mustSettleAssets": { "92": [ 3350, 3420 ], "93": [ 3649, 3735 ] }, "AccountContextHandler.setAccountContext": { "99": [ 1029, 1060 ], "100": [ 1070, 1104 ] }, "AccountContextHandler.setActiveCurrency": { "199": [ 5423, 5488 ], "200": [ 5766, 5773 ], "201": [ 6965, 7106 ], "202": [ 7124, 7131 ], "203": [ 7350, 7383 ], "204": [ 7457, 7478 ], "205": [ 7496, 7564 ], "206": [ 7582, 7589 ], "207": [ 8002, 8059 ], "208": [ 7737, 7817 ], "209": [ 8147, 8221 ], "210": [ 8239, 8246 ], "211": [ 8389, 8396 ], "212": [ 8410, 8470 ], "213": [ 8484, 8505 ], "214": [ 8519, 8530 ], "215": [ 8626, 8633 ], "216": [ 8716, 8735 ], "217": [ 8777, 8906 ] }, "AccountContextHandler.storeAssetsAndUpdateContext": { "129": [ 10389, 10435 ], "130": [ 10445, 10495 ], "131": [ 10541, 10591 ], "132": [ 10801, 10870 ], "133": [ 11082, 11156 ], "134": [ 11232, 11307 ], "135": [ 11426, 11519 ], "136": [ 12001, 12083 ], "137": [ 12151, 12198 ], "138": [ 12111, 12136 ] } }, "67": {}, "68": {}, "69": {}, "70": {}, "71": {}, "72": {}, "76": {}, "77": { "CashGroup._getCashGroupStorageBytes": { "140": [ 11458, 11482 ] }, "CashGroup.getMaxMarketIndex": { "105": [ 11714, 11750 ] } }, "78": { "DateTime.getBitNumFromMaturity": { "152": [ 4314, 4331 ], "153": [ 4414, 4431 ], "154": [ 4734, 4759 ], "155": [ 5306, 5641 ], "156": [ 5922, 6091 ], "157": [ 6377, 6552 ], "158": [ 6698, 6717 ] }, "DateTime.getReferenceTime": { "141": [ 417, 456 ], "142": [ 466, 516 ] }, "DateTime.getTimeUTC0": { "113": [ 660, 690 ], "114": [ 700, 736 ] }, "DateTime.getTradedMarket": { "143": [ 1026, 1050 ], "144": [ 1076, 1104 ], "145": [ 1130, 1151 ], "146": [ 1177, 1202 ], "147": [ 1228, 1253 ], "148": [ 1279, 1305 ], "149": [ 1331, 1357 ], "150": [ 1368, 1391 ] }, "DateTime.isValidMaturity": { "106": [ 2592, 2604 ] } }, "79": {}, "80": {}, "81": { "nTokenHandler.getNTokenContext": { "108": [ 1193, 1224 ], "109": [ 1234, 1299 ], "110": [ 1309, 1358 ], "111": [ 1368, 1411 ], "112": [ 1421, 1458 ] } }, "82": {}, "83": { "BitmapAssetsHandler.addMultipleifCashAssets": { "115": [ 1922, 1963 ], "116": [ 2200, 2208 ], "117": [ 2223, 2262 ], "118": [ 2319, 2373 ], "119": [ 2465, 2673 ], "120": [ 2727, 2801 ], "121": [ 2103, 2106 ] }, "BitmapAssetsHandler.addifCashAsset": { "159": [ 3613, 3629 ], "160": [ 3871, 3950 ], "161": [ 3997, 4039 ], "162": [ 4161, 4210 ], "163": [ 4239, 4289 ], "164": [ 4303, 4323 ], "165": [ 4475, 4544 ], "166": [ 4591, 4628 ], "167": [ 4643, 4691 ], "168": [ 4705, 4755 ], "169": [ 4776, 4791 ] }, "BitmapAssetsHandler.getAssetsBitmap": { "221": [ 882, 915 ] }, "BitmapAssetsHandler.getifCashNotional": { "75": [ 1629, 1681 ] }, "BitmapAssetsHandler.setAssetsBitmap": { "228": [ 1061, 1147 ], "229": [ 1266, 1307 ] } }, "84": { "PortfolioHandler._extendNewAssetArray": { "240": [ 5752, 5783 ], "241": [ 5733, 5736 ], "242": [ 5804, 5824 ] }, "PortfolioHandler._loadAssetArray": { "76": [ 16947, 16986 ], "77": [ 17584, 17626 ], "78": [ 17640, 17678 ], "79": [ 17692, 17732 ], "80": [ 17746, 17784 ], "81": [ 17798, 17822 ], "82": [ 17332, 17335 ] }, "PortfolioHandler._mergeAssetIntoArray": { "230": [ 1669, 1677 ], "231": [ 1828, 1987 ], "232": [ 2233, 2258 ], "233": [ 2346, 2419 ], "234": [ 2478, 2506 ], "235": [ 2520, 2565 ], "236": [ 2580, 2591 ], "237": [ 1433, 1436 ], "238": [ 2612, 2624 ] }, "PortfolioHandler._sortInPlace": { "83": [ 16250, 16338 ], "84": [ 16120, 16123 ], "85": [ 16565, 16608 ], "86": [ 16626, 16681 ], "87": [ 16699, 16702 ], "88": [ 16730, 16733 ] }, "PortfolioHandler._storeAsset": { "255": [ 11727, 11804 ], "256": [ 11856, 11921 ], "257": [ 11970, 12056 ], "258": [ 12100, 12179 ], "259": [ 12229, 12279 ], "260": [ 12289, 12335 ], "261": [ 12345, 12392 ], "262": [ 12402, 12447 ] }, "PortfolioHandler._updatePortfolioContext": { "263": [ 11159, 11190 ], "264": [ 11210, 11249 ], "265": [ 11260, 11316 ], "266": [ 11371, 11469 ], "267": [ 11480, 11539 ] }, "PortfolioHandler.addAsset": { "170": [ 3427, 3434 ], "171": [ 3723, 3730 ], "172": [ 3960, 3982 ], "173": [ 4061, 4128 ], "174": [ 4325, 4398 ], "175": [ 4780, 4812 ], "176": [ 4822, 4850 ], "177": [ 4860, 4890 ], "178": [ 4900, 4928 ], "179": [ 4938, 4988 ], "180": [ 4998, 5035 ] }, "PortfolioHandler.addMultipleAssets": { "126": [ 935, 943 ], "127": [ 958, 1143 ], "128": [ 838, 841 ] }, "PortfolioHandler.buildPortfolioState": { "122": [ 15681, 15693 ], "123": [ 15704, 15770 ], "124": [ 15780, 15822 ], "125": [ 15832, 15885 ] }, "PortfolioHandler.deleteAsset": { "243": [ 12787, 12838 ], "244": [ 12877, 12922 ], "245": [ 13051, 13214 ], "246": [ 13253, 13290 ], "247": [ 13775, 13804 ], "248": [ 13822, 13844 ], "249": [ 13587, 13590 ], "250": [ 14031, 14084 ], "251": [ 14098, 14105 ], "252": [ 14421, 14596 ], "253": [ 14606, 14657 ], "254": [ 14667, 14720 ] }, "PortfolioHandler.getSortedPortfolio": { "37": [ 15102, 15115 ], "38": [ 15126, 15146 ] }, "PortfolioHandler.storeAssets": { "181": [ 7487, 7550 ], "182": [ 7714, 7744 ], "183": [ 7255, 7258 ], "184": [ 8611, 8643 ], "185": [ 8820, 9055 ], "186": [ 7923, 7926 ], "187": [ 9590, 9598 ], "188": [ 9612, 9771 ], "189": [ 9823, 10038 ], "190": [ 10053, 10105 ], "191": [ 10119, 10142 ], "192": [ 9475, 9478 ], "193": [ 10303, 10374 ], "194": [ 10424, 10576 ] } }, "85": { "TransferAssets.decodeAssetId": { "70": [ 807, 836 ], "71": [ 771, 797 ], "72": [ 740, 761 ] }, "TransferAssets.encodeAssetId": { "66": [ 1035, 1082 ], "67": [ 1092, 1129 ], "68": [ 1139, 1196 ], "69": [ 1207, 1430 ] }, "TransferAssets.invertNotionalAmountsInPlace": { "101": [ 1691, 1736 ], "102": [ 1672, 1675 ] }, "TransferAssets.placeAssetsInAccount": { "94": [ 2314, 2380 ], "95": [ 2515, 2591 ], "96": [ 2876, 2916 ], "97": [ 3009, 3083 ], "98": [ 3104, 3125 ] } }, "86": {}, "87": {}, "88": { "AssetHandler.getSettlementDate": { "276": [ 1104, 1190 ], "277": [ 1365, 1386 ], "278": [ 1689, 1751 ] }, "AssetHandler.isLiquidityToken": { "239": [ 699, 830 ] } }, "89": {}, "90": {}, "91": {}, "92": { "Bitmap.isBitSet": { "222": [ 820, 855 ], "223": [ 894, 959 ] }, "Bitmap.setBit": { "225": [ 447, 482 ], "226": [ 547, 593 ], "227": [ 624, 671 ] }, "Bitmap.totalBitsSet": { "268": [ 1130, 1286 ], "269": [ 1296, 1452 ], "270": [ 1462, 1549 ], "271": [ 1559, 1715 ], "272": [ 1725, 1742 ], "273": [ 1752, 1769 ], "274": [ 1779, 1797 ], "275": [ 1807, 1844 ] } }, "93": {}, "94": { "SafeInt256.add": { "224": [ 1503, 1540 ] }, "SafeInt256.mul": { "218": [ 474, 483 ], "219": [ 506, 536 ], "220": [ 551, 581 ] }, "SafeInt256.neg": { "139": [ 1619, 1636 ] }, "SafeInt256.toInt": { "73": [ 2587, 2627 ] }, "SafeInt256.toUint": { "31": [ 2465, 2480 ], "32": [ 2490, 2507 ] } } } }, "dependencies": [ "ABDKMath64x64", "AaveHandler", "AccountContextHandler", "ActionGuards", "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/Address", "AssetHandler", "AssetRate", "AssetRateAdapter", "BalanceHandler", "Bitmap", "BitmapAssetsHandler", "CErc20Interface", "CEtherInterface", "CTokenInterface", "CashGroup", "CompoundHandler", "Constants", "DateTime", "Deployments", "ExchangeRate", "FloatingPoint56", "FreeCollateral", "FreeCollateralExternal", "GenericToken", "IEIP20NonStandard", "IERC1155TokenReceiver", "IRewarder", "Incentives", "LibStorage", "Market", "MigrateIncentives", "PortfolioHandler", "SafeInt256", "OpenZeppelin/openzeppelin-contracts@3.4.2-solc-0.7/SafeMath", "SettleAssetsExternal", "SettleBitmapAssets", "SettlePortfolioAssets", "StorageLayoutV1", "TokenHandler", "TransferAssets", "nERC1155Interface", "nTokenCalculations", "nTokenHandler", "nTokenSupply" ], "deployedBytecode": "6080604052600436106100e75760003560e01c8063735a1dc81161008a578063a22cb46511610059578063a22cb4651461026a578063c4c96dae1461028a578063e985e9c5146102ad578063f242432a146102cd576100e7565b8063735a1dc81461020057806381a868551461022057806382463367146102405780638da5cb5b14610255576100e7565b806324a3d622116100c657806324a3d6221461016f5780632eb2c2d6146101915780633fa6b808146101a65780634e1273f4146101d3576100e7565b8062fdd58e146100ec57806301ffc9a7146101225780630fac8f091461014f575b600080fd5b3480156100f857600080fd5b5061010c61010736600461312d565b6102e0565b6040516101199190613630565b60405180910390f35b34801561012e57600080fd5b5061014261013d3660046131d8565b610312565b6040516101199190613625565b34801561015b57600080fd5b5061010c61016a36600461312d565b61032c565b34801561017b57600080fd5b50610184610380565b60405161011991906133f4565b6101a461019f366004612fc9565b61038f565b005b3480156101b257600080fd5b506101c66101c1366004613158565b610557565b6040516101199190613571565b3480156101df57600080fd5b506101f36101ee366004613158565b610572565b604051610119919061352d565b34801561020c57600080fd5b5061010c61021b36600461333c565b610635565b34801561022c57600080fd5b506101f361023b366004613158565b61065a565b34801561024c57600080fd5b50610184610713565b34801561026157600080fd5b50610184610722565b34801561027657600080fd5b506101a46102853660046130fc565b610739565b34801561029657600080fd5b5061029f6107a8565b6040516101199291906134a7565b3480156102b957600080fd5b506101426102c8366004612f91565b6107d6565b6101a46102db366004613083565b61082e565b6000806102ed848461032c565b9050600081126103055761030081610a23565b610308565b60005b9150505b92915050565b6001600160e01b03198116636cdb3d1360e11b145b919050565b60008061033884610a36565b905061034381610ad7565b156103625761035b84826060015161ffff1685610ae4565b9150610379565b610308610373858360400151610b2f565b84610b58565b5092915050565b6002546001600160a01b031681565b6103998888610bde565b6000806103a888888888610c7e565b9150915080156103e1576103bc89336107d6565b6103e15760405162461bcd60e51b81526004016103d8906136c0565b60405180910390fd5b6000806103ef8c8c86610dc8565b915091506104028c8c84848a8a89610f68565b8a6001600160a01b03168c6001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8d8d8d8d60405161045594939291906135f3565b60405180910390a46104668b611246565b15610549577fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f66941466216001600160e01b0319168b6001600160a01b031663bc197c81338f8e8e8e8e8e8e6040518963ffffffff1660e01b81526004016104d0989796959493929190613408565b602060405180830381600087803b1580156104ea57600080fd5b505af11580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052291906131f4565b6001600160e01b031916146105495760405162461bcd60e51b81526004016103d8906137b9565b505050505050505050505050565b6060600061056786868686610c7e565b509695505050505050565b606083821461058057600080fd5b6000846001600160401b038111801561059857600080fd5b506040519080825280602002602001820160405280156105c2578160200160208202803683370190505b50905060005b8581101561062b5761060c8787838181106105df57fe5b90506020020160208101906105f49190612f75565b86868481811061060057fe5b905060200201356102e0565b82828151811061061857fe5b60209081029190910101526001016105c8565b5095945050505050565b60006106508461ffff168464ffffffffff168460ff1661124c565b90505b9392505050565b606083821461066857600080fd5b6000846001600160401b038111801561068057600080fd5b506040519080825280602002602001820160405280156106aa578160200160208202803683370190505b50905060005b8581101561062b576106f48787838181106106c757fe5b90506020020160208101906106dc9190612f75565b8686848181106106e857fe5b9050602002013561032c565b82828151811061070057fe5b60209081029190910101526001016106b0565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319061079c908590613625565b60405180910390a35050565b73__$841fddfe32830bb6dbc3a02d7f16c53722$__73__$f6541b0d362a0c7d99a2a29cd3d373d61b$__9091565b6001600160a01b03811660009081526006602052604081205460ff16156107ff5750600161030c565b506001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b6108388686610bde565b610840612e31565b831561093657604080516001808252818301909252600091816020015b610865612e5f565b81526020019060019003908161085d57905050905060008160008151811061088957fe5b6020026020010151905061089c876112a7565b6040840152602083015281526108b1866112c4565b6060820152805160208201516108c89190426112da565b6108d3898984610dc8565b5080935050876001600160a01b0316896001600160a01b0316336001600160a01b03167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628a8a6040516109279291906137df565b60405180910390a45050610942565b61093f87610a36565b90505b61094a612e31565b61095a8888848488886000610f68565b61096387611246565b15610a195760405163f23a6e6160e01b808252906001600160a01b0389169063f23a6e61906109a09033908d908c908c908c908c9060040161346c565b602060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f291906131f4565b6001600160e01b03191614610a195760405162461bcd60e51b81526004016103d8906137b9565b5050505050505050565b600080821215610a3257600080fd5b5090565b610a3e612e31565b6000610a48611311565b6001600160a01b039390931660009081526020938452604090819020815160a081018352905464ffffffffff8116825265010000000000810460f81b6001600160f81b03191695820195909552600160301b850460ff1691810191909152600160381b840461ffff166060820152600160481b90930460701b6001600160701b03191660808401525090919050565b6060015161ffff16151590565b600080600080610af3856112a7565b9250925092508583141580610b09575060018114155b15610b1a5760009350505050610653565b610b2587848461131e565b9350505050610653565b60606000610b3d8484611363565b90506001815111610b4f57905061030c565b6106538161147a565b600080600080610b67856112a7565b92509250925060005b8651811015610bd4576000878281518110610b8757fe5b60200260200101519050848160000151148015610ba75750838160200151145b8015610bb65750828160400151145b15610bcb5760600151945061030c9350505050565b50600101610b70565b5050505092915050565b806001600160a01b0316826001600160a01b031614158015610c0857506001600160a01b03811615155b8015610c1d57506001600160a01b0381163014155b610c395760405162461bcd60e51b81526004016103d89061366c565b336001600160a01b0383161480610c555750610c5582336107d6565b610c715760405162461bcd60e51b81526004016103d8906136c0565b610c7a82611638565b5050565b60606000848314610c8e57600080fd5b600080866001600160401b0381118015610ca757600080fd5b50604051908082528060200260200182016040528015610ce157816020015b610cce612e5f565b815260200190600190039081610cc65790505b50905060005b87811015610dbb578015610d3b57888860018303818110610d0457fe5b90506020020135898983818110610d1757fe5b9050602002013511610d3b5760405162461bcd60e51b81526004016103d89061378d565b6000828281518110610d4957fe5b60200260200101519050610d6e8a8a84818110610d6257fe5b905060200201356112a7565b604084015260208301819052818352610d889190426112da565b878783818110610d9457fe5b602002919091013560608301819052600013159050610db257600193505b50600101610ce7565b5097909650945050505050565b610dd0612e31565b610dd8612e31565b6000610de385610a36565b9050610dee81611683565b15610e7f576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610e2c90889085906004016134c1565b60a06040518083038186803b158015610e4457600080fd5b505af4158015610e58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7c91906132a6565b90505b610e8a8582866116d7565b9050610e968186611758565b610e9f8461185c565b6000610eaa87610a36565b9050610eb581611683565b15610f46576040516337b5fc2160e11b815273__$f6541b0d362a0c7d99a2a29cd3d373d61b$__90636f6bf84290610ef3908a9085906004016134c1565b60a06040518083038186803b158015610f0b57600080fd5b505af4158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4391906132a6565b90505b610f518782876116d7565b9050610f5d8188611758565b969095509350505050565b60008060208410610f85576000610f81858701876131c0565b9250505b6001600160e01b03198216636689064360e01b1480610fb457506001600160e01b03198216630541f52760e41b145b80610fcf57506001600160e01b03198216633735195360e11b145b80610fea57506001600160e01b03198216630276b64b60e01b145b156110fa57610ffd6024600486886137ed565b81019061100a9190612f75565b9050886001600160a01b0316816001600160a01b0316148061104d5750876001600160a01b0316816001600160a01b031614801561104d575061104d88336107d6565b6110695760405162461bcd60e51b81526004016103d890613695565b600080306001600160a01b03163488886040516110879291906133e4565b60006040518083038185875af1925050503d80600081146110c4576040519150601f19603f3d011682016040523d82523d6000602084013e6110c9565b606091505b5091509150816110d8826118ab565b906110f65760405162461bcd60e51b81526004016103d89190613639565b5050505b886001600160a01b0316816001600160a01b031614158015611129575060208701516001600160f81b03191615155b1561119657604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f90611165908c906004016133f4565b60006040518083038186803b15801561117d57600080fd5b505af4158015611191573d6000803e3d6000fd5b505050505b8280156111b55750876001600160a01b0316816001600160a01b031614155b80156111ce575060208601516001600160f81b03191615155b1561123b57604051636ccc642f60e01b815273__$841fddfe32830bb6dbc3a02d7f16c53722$__90636ccc642f9061120a908b906004016133f4565b60006040518083038186803b15801561122257600080fd5b505af4158015611236573d6000803e3d6000fd5b505050505b505050505050505050565b3b151590565b6000613fff84111561125d57600080fd5b64ffffffffff83111561126f57600080fd5b600882111561127d57600080fd5b5067ffff000000000000603084901b1665ffffffffff00600884901b161760ff8216179392505050565b61ffff603082901c169164ffffffffff600883901c169160ff1690565b60006001600160ff1b03821115610a3257600080fd5b6112f06112e68461190b565b60ff168383611921565b61130c5760405162461bcd60e51b81526004016103d890613763565b505050565b60008061030c6001611971565b60008061132961198a565b6001600160a01b03861660009081526020918252604080822087835283528082208683529092522054600f90810b900b9150509392505050565b606060108260ff16111561137657600080fd5b6000611380611997565b6001600160a01b038516600090815260208290526040812091925060ff85166001600160401b03811180156113b457600080fd5b506040519080825280602002602001820160405280156113ee57816020015b6113db612e5f565b8152602001906001900390816113d35790505b50905060005b8560ff1681101561062b57600083826010811061140d57fe5b019050600083838151811061141e57fe5b602090810291909101810151835461ffff8116825264ffffffffff620100008204169282019290925260ff600160381b8304166040820152600160401b909104600a90810b900b606082015260800191909152506001016113f4565b80516000816001600160401b038111801561149457600080fd5b506040519080825280602002602001820160405280156114be578160200160208202803683370190505b50905060005b8281101561151b5760008482815181106114da57fe5b602002602001015190506114fb81600001518260200151836040015161124c565b83838151811061150757fe5b6020908102919091010152506001016114c4565b5060015b8281101561163257805b600081118015611561575082818151811061154057fe5b602002602001015183600183038151811061155757fe5b6020026020010151115b156116295782818151811061157257fe5b602002602001015183600183038151811061158957fe5b60200260200101518460018403815181106115a057fe5b602002602001018584815181106115b357fe5b60200260200101828152508281525050508481815181106115d057fe5b60200260200101518560018303815181106115e757fe5b60200260200101518660018403815181106115fe57fe5b6020026020010187848151811061161157fe5b60209081029190910101919091525260001901611529565b5060010161151f565b50505050565b6001600160a01b03811661164b57600080fd5b6001600160a01b03811630141561166157600080fd5b600061166c826119a4565b5050505061ffff16905080600014610c7a57600080fd5b60004261168f83610ad7565b156116b05761169d81611a0d565b835164ffffffffff161091506103279050565b825164ffffffffff16158015906116cf5750825164ffffffffff168110155b915050610327565b6116df612e31565b6116e883611683565b156117055760405162461bcd60e51b81526004016103d89061370d565b61170e83610ad7565b156117235761171e848484611a2e565b611750565b60006117358585604001518551611af6565b90506117418184611b88565b61174e8486836000611be6565b505b509092915050565b6000611762611311565b6001600160a01b03831660008181526020838152604080832088518154938a0151838b015160608c015160808d015160701c600160481b027affffffffffffffffffffffffffffffffffff0000000000000000001961ffff909216600160381b0268ffff000000000000001960ff94909416600160301b0266ff0000000000001960f89690961c650100000000000265ff00000000001964ffffffffff90981664ffffffffff19909b169a909a1796909616989098179390931693909317169490941716929092179091555192935090917f6bd4b121bca854a191536a2ca891155c42ee2fb23f307fb34e8bc65cfcb5412e9190a2505050565b60005b8151811015610c7a5761188882828151811061187757fe5b602002602001015160600151611cbd565b82828151811061189457fe5b60209081029190910101516060015260010161185f565b60606044825110156118f1575060408051808201909152601d81527f5472616e73616374696f6e2072657665727465642073696c656e746c790000006020820152610327565b6004820191508180602001905181019061030c9190613210565b60008061191783611ccb565b60ff169392505050565b60008061192d83611ce8565b9050600061194461193d87611d04565b8390611da8565b90508085111561195957600092505050610653565b60006119658587611e02565b98975050505050505050565b6000620f424082601381111561198357fe5b0192915050565b60008061030c600c611971565b60008061030c600d611971565b6000806000806000806119b5611f0d565b6001600160a01b039097166000908152602097909752505060409094205461ffff81169563ffffffff62010000830481169650600160301b830416945060ff600160501b8304169350600160581b90910460d81b9150565b600062015180821015611a1f57600080fd5b62015180825b06909103919050565b611a3782610ad7565b611a4057600080fd5b606082015161ffff1660005b8251811015611aef576000838281518110611a6357fe5b60200260200101519050806060015160001415611a805750611ae7565b80518314611a8d57600080fd5b6040810151600114611a9e57600080fd5b6000611ac087858460200151896000015164ffffffffff168660600151611f1a565b90506000811215611ae457602086018051600160f81b176001600160f81b03191690525b50505b600101611a4c565b5050505050565b611afe612e9f565b611b06612e9f565b60ff8416611b15579050610653565b611b1f8585610b2f565b815260ff84166060820152826001600160401b0381118015611b4057600080fd5b50604051908082528060200260200182016040528015611b7a57816020015b611b67612e5f565b815260200190600190039081611b5f5790505b506020820152949350505050565b60005b815181101561130c576000828281518110611ba257fe5b60200260200101519050806060015160001415611bbf5750611bde565b611bdc848260000151836020015184604001518560600151612087565b505b600101611b8b565b6000808080611bf5868861218c565b64ffffffffff81168c5292965090945092509050611c1288611683565b15611c1c57600080fd5b60ff8216604089015284611c3b57600760ff83161115611c3b57600080fd5b8315611c5e57602088018051600160f81b176001600160f81b0319169052611c6d565b602088018051607f60f91b1690525b611c7a88608001516123cb565b6001600160701b031916608089015260005b831561123b5760f084901c818114611caf57611caf8a826001600160ff1b612446565b60109490941b939050611c8c565b600061030c60001983612645565b600080611cd6612693565b60009384526020525050604090205490565b60006276a700821015611cfa57600080fd5b6276a70082611a25565b60008160011415611d1957506276a700610327565b8160021415611d2c575062ed4e00610327565b8160031415611d4057506301da9c00610327565b8160041415611d5457506303b53800610327565b8160051415611d6857506309450c00610327565b8160061415611d7c575063128a1800610327565b8160071415611d9057506325143000610327565b60405162461bcd60e51b81526004016103d8906136e6565b600082820183811015610653576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000611e1085611a0d565b905062015180840615611e2a576000809250925050611f06565b838110611e3e576000809250925050611f06565b6201518081850304605a8111611e5b57925060019150611f069050565b6101688111611e9a576000620151806207e900840604820160591901905060068104605a0160068281611e8a57fe5b0660001494509450505050611f06565b6108708111611eca5760006201518062278d00840604820161016719019050601e8104608701601e8281611e8a57fe5b611de28111611efa576000620151806276a700840604820161086f19019050605a810460c301605a8281611e8a57fe5b61010060009350935050505b9250929050565b60008061030c6002611971565b600080611f2787876126a0565b90506000611f3361198a565b6001600160a01b0389166000908152602082815260408083208b845282528083208a8452909152812091925080611f6a888a611e02565b9150915080611f7857600080fd5b611f8285836126d5565b15612011578254600090611f9e908990600f90810b900b612705565b905060016001607f1b03198112801590611fbf575060016001607f1b038113155b611fc857600080fd5b83546001600160801b0319166001600160801b03600f83900b1617845580611ff957611ff68684600061271b565b95505b6120048c8c88612766565b955061207e945050505050565b86156120755760016001607f1b03198712801590612036575060016001607f1b038713155b61203f57600080fd5b82546001600160801b0319166001600160801b03600f89900b161783556120688583600161271b565b94506120758b8b87612766565b86955050505050505b95945050505050565b845161209690858585856127c0565b156120a057611aef565b6040850151156120cd5760006120bd8660200151868686866127c0565b905080156120cb5750611aef565b505b6120d6826128d9565b156120e95760008112156120e957600080fd5b6a7fffffffffffffffffffff19811280159061211057506a7fffffffffffffffffffff8113155b61211957600080fd5b8460200151518560400151141561213d5761213785602001516128ef565b60208601525b6000856020015186604001518151811061215357fe5b6020908102919091018101519586528501939093526040808501929092526060840152600060a090930192909252500180516001019052565b6000808080808080805b89515181101561221d5760008a6000015182815181106121b257fe5b602002602001015190506003808111156121c857fe5b8160a0015160038111156121d857fe5b14156121e357600080fd5b60028160a0015160038111156121f557fe5b1415801561220557506060810151155b15612214576122148b836129a7565b50600101612196565b5060005b8951518110156122c05760008a60000151828151811061223d57fe5b602002602001015190506002600381111561225457fe5b8160a00151600381111561226457fe5b1415612278576080810151600090556122b7565b60018160a00151600381111561228a57fe5b14156122a3576080810151806122a08382612af6565b50505b6122af81868686612c27565b919650945092505b50600101612221565b50606089015160006122d0611997565b6001600160a01b038b1660009081526020829052604081209192505b8c602001515181101561239a5760008d60200151828151811061230b57fe5b602002602001015190508060600151600014156123285750612392565b60028160a00151600381111561233a57fe5b14158015612358575060038160a00151600381111561235557fe5b14155b61236157600080fd5b61236d81898989612c27565b9199509750955061238a8184876010811061238457fe5b01612af6565b600185019450505b6001016122ec565b50601083111580156123b1575064ffffffffff8411155b6123ba57600080fd5b50939a929950975095509350505050565b6000807f7fff7fff7fff7fff7fff7fff7fff7fff7fff00000000000000000000000000008316815b6001600160701b031982161561243d57600160fe1b8281161415612427576001600160f01b03198216811c92909217916010015b6010826001600160701b031916901b91506123f3565b50909392505050565b8260001080156124585750613fff8311155b61246157600080fd5b818015612475575082846060015161ffff16145b1561247f57611632565b6080840151600090815b6001600160701b03198216156125fa5760f082901c613fff1686811480156124ae5750855b156124e657506080870180516001600160f01b0319861660109093029290921c919091176001600160701b0319169052506116329050565b86811480156124f3575085155b15612548576001600160f01b03198516199290921691600360fe1b8316612526576010836001600160701b031916901b92505b506001600160701b031991821660109091021c91909117166080850152611632565b86811180156125545750855b156125ae576080888101516001600160f01b031960f08a901b88178116601086021c9690961795911b161561258857600080fd5b506001600160701b03199182166001919091016010021c91909117166080850152611632565b86811180156125bb575085155b156125c95750505050611632565b506001600160f01b0319821660108281029190911c93909317929190911b6001600160801b03191690600101612489565b8461260757505050611632565b6009811061261457600080fd5b6001600160f01b031960f087901b85171660109091021c919091176001600160701b03191660808601525050505050565b8181026000198314156126755781158061266757508282828161266457fe5b05145b61267057600080fd5b61030c565b82158061268a57508183828161268757fe5b05145b61030c57600080fd5b60008061030c6009611971565b6000806126ab612c8a565b6001600160a01b038516600090815260209182526040808220868352909252205491505092915050565b6000600182101580156126ea57506101008211155b6126f357600080fd5b50600019011b600160ff1b9081161490565b8181018281121560008312151461030c57600080fd5b60006001831015801561273057506101008311155b61273957600080fd5b81156127525750600160ff1b60001983011c8317610653565b50600160ff1b60001983011c198316610653565b601461277182612c97565b111561278f5760405162461bcd60e51b81526004016103d89061373a565b6000612799612c8a565b6001600160a01b039094166000908152602094855260408082209482529390945250912055565b6000805b86518110156128cc5760008782815181106127db57fe5b602002602001015190508481604001511415806127f9575080518714155b80612808575085816020015114155b1561281357506128c4565b60028160a00151600381111561282557fe5b14158015612843575060038160a00151600381111561284057fe5b14155b61284c57600080fd5b606081015160009061285e9086612705565b9050612869866128d9565b1561287c57600081121561287c57600080fd5b6a7fffffffffffffffffffff1981128015906128a357506a7fffffffffffffffffffff8113155b6128ac57600080fd5b6060820152600160a0909101819052915061207e9050565b6001016127c4565b5060009695505050505050565b60006002821080159061030c5750506008101590565b606060008251600014612906578251600202612909565b60015b90506000816001600160401b038111801561292357600080fd5b5060405190808252806020026020018201604052801561295d57816020015b61294a612e5f565b8152602001906001900390816129425790505b50905060005b845181101561299f5784818151811061297857fe5b602002602001015182828151811061298c57fe5b6020908102919091010152600101612963565b509392505050565b81515181106129b557600080fd5b60008260600151116129c657600080fd5b6000826000015182815181106129d857fe5b60200260200101519050600260038111156129ef57fe5b8160a0015160038111156129ff57fe5b14158015612a1d575060038160a001516003811115612a1a57fe5b14155b612a2657600080fd5b606083018051600019019052600080805b855151811015612a9957600086600001518281518110612a5357fe5b60200260200101519050828160800151118015612a80575060028160a001516003811115612a7d57fe5b14155b15612a9057806080015192508193505b50600101612a37565b5081841415612ab2575050600260a09190910152610c7a565b600085600001518381518110612ac457fe5b602090810291909101015160808581018051918301805190915252600160a09182015260029401939093525050505050565b815115801590612b0957508151613fff10155b612b1257600080fd5b81602001516000108015612b2f5750602082015164ffffffffff10155b612b3857600080fd5b81604001516000108015612b5157506040820151600810155b612b5a57600080fd5b60608201516a7fffffffffffffffffffff1913801590612b89575060608201516a7fffffffffffffffffffff12155b612b9257600080fd5b8151815460208401516040850151606090950151600a0b6affffffffffffffffffffff16600160401b0272ffffffffffffffffffffff00000000000000001960ff909616600160381b0267ff000000000000001964ffffffffff909316620100000266ffffffffff00001961ffff90961661ffff19909516949094179490941692909217169190911792909216919091179055565b600080600080612c3688612d67565b9050841580612c4457508085115b15612c4d578094505b8680612c5d575060008860600151125b965061ffff861615612c6e57600080fd5b50509451939560109390931c60f09490941b9390931793509150565b60008061030c600b611971565b600181901c7f5555555555555555555555555555555555555555555555555555555555555555908116911601600281901c7f3333333333333333333333333333333333333333333333333333333333333333908116911601600481901c7f07070707070707070707070707070707070707070707070707070707070707079190911601600881901c7e0f000f000f000f000f000f000f000f000f000f000f000f000f000f000f000f908116911601601081901c01602081901c01604081901c01608081901c60ff90811691160190565b6000808260400151118015612d8157506040820151600810155b612d8a57600080fd5b6040820151600210612da157506020810151610327565b6000612db36001846040015103611d04565b6020840151909150610653906276a70090612dce9084612dd4565b90611da8565b600082821115612e2b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006003811115612e9a57fe5b905290565b6040518060800160405280606081526020016060815260200160008152602001600081525090565b60008083601f840112612ed8578081fd5b5081356001600160401b03811115612eee578182fd5b6020830191508360208083028501011115611f0657600080fd5b80516001600160701b03198116811461032757600080fd5b60008083601f840112612f31578182fd5b5081356001600160401b03811115612f47578182fd5b602083019150836020828501011115611f0657600080fd5b80516103278161386f565b805161032781613892565b600060208284031215612f86578081fd5b813561065381613841565b60008060408385031215612fa3578081fd5b8235612fae81613841565b91506020830135612fbe81613841565b809150509250929050565b60008060008060008060008060a0898b031215612fe4578384fd5b8835612fef81613841565b97506020890135612fff81613841565b965060408901356001600160401b038082111561301a578586fd5b6130268c838d01612ec7565b909850965060608b013591508082111561303e578586fd5b61304a8c838d01612ec7565b909650945060808b0135915080821115613062578384fd5b5061306f8b828c01612f20565b999c989b5096995094979396929594505050565b60008060008060008060a0878903121561309b578182fd5b86356130a681613841565b955060208701356130b681613841565b9450604087013593506060870135925060808701356001600160401b038111156130de578283fd5b6130ea89828a01612f20565b979a9699509497509295939492505050565b6000806040838503121561310e578182fd5b823561311981613841565b915060208301358015158114612fbe578182fd5b6000806040838503121561313f578182fd5b823561314a81613841565b946020939093013593505050565b6000806000806040858703121561316d578182fd5b84356001600160401b0380821115613183578384fd5b61318f88838901612ec7565b909650945060208701359150808211156131a7578384fd5b506131b487828801612ec7565b95989497509550505050565b6000602082840312156131d1578081fd5b5035919050565b6000602082840312156131e9578081fd5b813561065381613859565b600060208284031215613205578081fd5b815161065381613859565b600060208284031215613221578081fd5b81516001600160401b0380821115613237578283fd5b818401915084601f83011261324a578283fd5b81518181111561325657fe5b604051601f8201601f19168101602001838111828210171561327457fe5b60405281815283820160200187101561328b578485fd5b61329c826020830160208701613815565b9695505050505050565b600060a082840312156132b7578081fd5b60405160a081018181106001600160401b03821117156132d357fe5b60405282516132e18161387f565b815260208301516001600160f81b0319811681146132fd578283fd5b602082015261330e60408401612f6a565b604082015261331f60608401612f5f565b606082015261333060808401612f08565b60808201529392505050565b600080600060608486031215613350578081fd5b833561335b8161386f565b9250602084013561336b8161387f565b9150604084013561337b81613892565b809150509250925092565b81835260006001600160fb1b0383111561339e578081fd5b6020830280836020870137939093016020019283525090919050565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0389811682528816602082015260a060408201819052600090613435908301888a613386565b8281036060840152613448818789613386565b9050828103608084015261345d8185876133ba565b9b9a5050505050505050505050565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905260009061196590830184866133ba565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252805164ffffffffff166020808401919091528101516001600160f81b03191660408084019190915281015160ff1660608084019190915281015161ffff1660808084019190915201516001600160701b03191660a082015260c00190565b6020808252825182820181905260009190848201906040850190845b8181101561356557835183529284019291840191600101613549565b50909695505050505050565b602080825282518282018190526000919060409081850190868401855b828110156135e65781518051855286810151878601528581015186860152606080820151908601526080808201519086015260a09081015190600482106135d157fe5b85015260c0909301929085019060010161358e565b5091979650505050505050565b600060408252613607604083018688613386565b828103602084015261361a818587613386565b979650505050505050565b901515815260200190565b90815260200190565b6000602082528251806020840152613658816040850160208701613815565b601f01601f19169190910160400192915050565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b602080825260119082015270155b985d5d1a1bdc9a5e99590818d85b1b607a1b604082015260600190565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b604082015260600190565b6020808252600d908201526c092dcecc2d8d2c840d2dcc8caf609b1b604082015260600190565b6020808252601390820152724163636f756e74206d75737420736574746c6560681b604082015260600190565b6020808252600f908201526e4f766572206d61782061737365747360881b604082015260600190565b60208082526010908201526f496e76616c6964206d6174757269747960801b604082015260600190565b60208082526012908201527112511cc81b5d5cdd081899481cdbdc9d195960721b604082015260600190565b6020808252600c908201526b139bdd081858d8d95c1d195960a21b604082015260600190565b918252602082015260400190565b600080858511156137fc578182fd5b83861115613808578182fd5b5050820193919092039150565b60005b83811015613830578181015183820152602001613818565b838111156116325750506000910152565b6001600160a01b038116811461385657600080fd5b50565b6001600160e01b03198116811461385657600080fd5b61ffff8116811461385657600080fd5b64ffffffffff8116811461385657600080fd5b60ff8116811461385657600080fdfea26469706673582212201311160102a416b51764ab1c80f32cd638f4dde8c31d4ed5c592629d5fb648eb64736f6c63430007060033", "deployedSourceMap": "683:19633:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1742:203;;;;;;;;;;-1:-1:-1;1742:203:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1103:150;;;;;;;;;;-1:-1:-1;1103:150:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;2172:537::-;;;;;;;;;;-1:-1:-1;2172:537:30;;;;;:::i;:::-;;:::i;1035:28:63:-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;8849:1500:30:-;;;;;;:::i;:::-;;:::i;:::-;;11245:307;;;;;;;;;;-1:-1:-1;11245:307:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;3783:494::-;;;;;;;;;;-1:-1:-1;3783:494:30;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;13314:229::-;;;;;;;;;;-1:-1:-1;13314:229:30;;;;;:::i;:::-;;:::i;2949:503::-;;;;;;;;;;-1:-1:-1;2949:503:30;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;19267:222:30:-;;;;;;;;;;-1:-1:-1;19267:222:30;;;;;:::i;:::-;;:::i;20163:151::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;19806:269::-;;;;;;;;;;-1:-1:-1;19806:269:30;;;;;:::i;:::-;;:::i;6229:1919::-;;;;;;:::i;:::-;;:::i;1742:203::-;1820:7;1839:15;1857:28;1873:7;1882:2;1857:15;:28::i;:::-;1839:46;;1913:1;1902:8;:12;:36;;1921:17;:8;:15;:17::i;:::-;1902:36;;;1917:1;1902:36;1895:43;;;1742:203;;;;;:::o;1103:150::-;-1:-1:-1;;;;;;1205:41:30;;-1:-1:-1;;;1205:41:30;1103:150;;;;:::o;2172:537::-;2256:15;2283:36;2322:48;2362:7;2322:39;:48::i;:::-;2283:87;;2385:32;:14;:30;:32::i;:::-;2381:322;;;2444:62;2461:7;2470:14;:31;;;2444:62;;2503:2;2444:16;:62::i;:::-;2433:73;;2381:322;;;2548:144;2581:77;2617:7;2626:14;:31;;;2581:35;:77::i;:::-;2676:2;2548:15;:144::i;2381:322::-;2172:537;;;;;:::o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;8849:1500:30:-;9260:27;9278:4;9284:2;9260:17;:27::i;:::-;9299:30;9331:23;9358:29;9374:3;;9379:7;;9358:15;:29::i;:::-;9298:89;;;;9535:18;9531:81;;;9563:32;9580:2;9584:10;9563:16;:32::i;:::-;9555:57;;;;-1:-1:-1;;;9555:57:30;;;;;;;:::i;:::-;;;;;;;;;9624:33;9659:31;9694:73;9717:4;9735:2;9751:6;9694:9;:73::i;:::-;9623:144;;;;9778:83;9802:4;9808:2;9812:11;9825:9;9836:4;;9842:18;9778:23;:83::i;:::-;9908:2;-1:-1:-1;;;;;9876:49:30;9902:4;-1:-1:-1;;;;;9876:49:30;9890:10;-1:-1:-1;;;;;9876:49:30;;9912:3;;9917:7;;9876:49;;;;;;;;;:::i;:::-;;;;;;;;9993:22;10012:2;9993:18;:22::i;:::-;9989:354;;;1017:78;-1:-1:-1;;;;;10056:230:30;;10078:2;-1:-1:-1;;;;;10056:48:30;;10126:10;10158:4;10184:3;;10209:7;;10238:4;;10056:204;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;10056:230:30;;10031:301;;;;-1:-1:-1;;;10031:301:30;;;;;;;:::i;:::-;8849:1500;;;;;;;;;;;;:::o;11245:307::-;11385:23;11452:30;11493:29;11509:3;;11514:7;;11493:15;:29::i;:::-;-1:-1:-1;11451:71:30;11245:307;-1:-1:-1;;;;;;11245:307:30:o;3783:494::-;3924:16;3964:29;;;3956:38;;;;;;4004:24;4045:8;-1:-1:-1;;;;;4031:30:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4031:30:30;;4004:57;;4077:9;4072:174;4088:19;;;4072:174;;;4205:30;4215:8;;4224:1;4215:11;;;;;;;;;;;;;;;;;;;;:::i;:::-;4228:3;;4232:1;4228:6;;;;;;;;;;;;;4205:9;:30::i;:::-;4192:7;4200:1;4192:10;;;;;;;;;;;;;;;;;:43;4109:3;;4072:174;;;-1:-1:-1;4263:7:30;3783:494;-1:-1:-1;;;;;3783:494:30:o;13314:229::-;13449:7;13475:61;13504:10;13475:61;;13516:8;13475:61;;13526:9;13475:61;;:28;:61::i;:::-;13468:68;;13314:229;;;;;;:::o;2949:503::-;3096:15;3135:29;;;3127:38;;;;;;3175:23;3214:8;-1:-1:-1;;;;;3201:29:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3201:29:30;;3175:55;;3246:9;3241:180;3257:19;;;3241:180;;;3374:36;3390:8;;3399:1;3390:11;;;;;;;;;;;;;;;;;;;;:::i;:::-;3403:3;;3407:1;3403:6;;;;;;;;;;;;;3374:15;:36::i;:::-;3361:7;3369:1;3361:10;;;;;;;;;;;;;;;;;:49;3278:3;;3241:180;;920:26:63;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;19267:222:30:-;19389:10;19355:45;;;;:33;:45;;;;;;;;-1:-1:-1;;;;;19355:55:30;;;;;;;;;;;:66;;-1:-1:-1;;19355:66:30;;;;;;;19436:46;;19355:55;;19389:10;19436:46;;;;19355:66;;19436:46;:::i;:::-;;;;;;;;19267:222;;:::o;20163:151::-;20244:31;20277:29;20163:151;;:::o;19806:269::-;-1:-1:-1;;;;;19953:32:30;;19929:4;19953:32;;;:22;:32;;;;;;;;19949:49;;;-1:-1:-1;19994:4:30;19987:11;;19949:49;-1:-1:-1;;;;;;20016:42:30;;;;;;;:33;:42;;;;;;;;:52;;;;;;;;;;;;;;;19806:269::o;6229:1919::-;6663:27;6681:4;6687:2;6663:17;:27::i;:::-;6814:33;;:::i;:::-;6861:10;;6857:732;;6920:23;;;6941:1;6920:23;;;;;;;;;6887:30;;6920:23;;;;;;:::i;:::-;;;;;;;;;;;;;;;;6887:56;;6957:27;6987:6;6994:1;6987:9;;;;;;;;;;;;;;6957:39;;7065:32;7094:2;7065:28;:32::i;:::-;7046:15;;;7011:86;7030:14;;;7011:86;;;7204:24;7221:6;7204:16;:24::i;:::-;7187:14;;;:41;7264:16;;7282:14;;;;7242:72;;7264:16;7298:15;7242:21;:72::i;:::-;7393:27;7403:4;7409:2;7413:6;7393:9;:27::i;:::-;7360:60;;;;;7473:2;-1:-1:-1;;;;;7440:48:30;7467:4;-1:-1:-1;;;;;7440:48:30;7455:10;-1:-1:-1;;;;;7440:48:30;;7477:2;7481:6;7440:48;;;;;;;:::i;:::-;;;;;;;;6857:732;;;;;7533:45;7573:4;7533:39;:45::i;:::-;7519:59;;6857:732;7710:31;;:::i;:::-;7751:70;7775:4;7781:2;7785:11;7798:9;7809:4;;7815:5;7751:23;:70::i;:::-;7903:22;7922:2;7903:18;:22::i;:::-;7899:243;;;7966:79;;-1:-1:-1;;;7966:79:30;;;:119;-1:-1:-1;;;;;7966:43:30;;;;;:79;;8010:10;;8022:4;;8028:2;;8032:6;;8040:4;;;;7966:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;7966:119:30;;7941:190;;;;-1:-1:-1;;;7941:190:30;;;;;;;:::i;:::-;6229:1919;;;;;;;;:::o;2397:117:94:-;2446:7;2478:1;2473;:6;;2465:15;;;;;;-1:-1:-1;2505:1:94;2397:117::o;552:219:66:-;619:21;;:::i;:::-;652:48;703:30;:28;:30::i;:::-;-1:-1:-1;;;;;750:14:66;;;;;;;;;;;;;;;;;743:21;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;;;;-1:-1:-1;;;743:21:66;;;;;;;;-1:-1:-1;;;743:21:66;;;;;-1:-1:-1;;;;;;743:21:66;;;;;-1:-1:-1;743:21:66;;552:219;-1:-1:-1;552:219:66:o;1117:152::-;1226:31;;;:36;;;;;1117:152::o;4343:577:30:-;4477:6;4496:18;4516:16;4534:17;4555:32;4584:2;4555:28;:32::i;:::-;4495:92;;;;;;4629:16;4615:10;:30;;:85;;;-1:-1:-1;4700:1:60;4661:39:30;;;4615:85;4598:316;;;4796:1;4789:8;;;;;;;4598:316;4835:68;4873:7;4882:10;4894:8;4835:37;:68::i;:::-;4828:75;;;;;;;14791:385:84;14907:23;14946:30;14979:42;14995:7;15004:16;14979:15;:42::i;:::-;14946:75;;15099:1;15082:6;:13;:18;15078:37;;15109:6;-1:-1:-1;15102:13:84;;15078:37;15126:20;15139:6;15126:12;:20::i;4980:555:30:-;5099:6;5122:18;5142:16;5160:17;5181:32;5210:2;5181:28;:32::i;:::-;5121:92;;;;;;5229:9;5224:305;5244:9;:16;5240:1;:20;5224:305;;;5281:27;5311:9;5321:1;5311:12;;;;;;;;;;;;;;5281:42;;5378:10;5358:5;:16;;;:30;:76;;;;;5426:8;5408:5;:14;;;:26;5358:76;:124;;;;;5473:9;5454:5;:15;;;:28;5358:124;5337:181;;;5504:14;;;;-1:-1:-1;5497:21:30;;-1:-1:-1;;;;5497:21:30;5337:181;-1:-1:-1;5262:3:30;;5224:305;;;;4980:555;;;;;;;:::o;10399:642::-;10559:2;-1:-1:-1;;;;;10551:10:30;:4;-1:-1:-1;;;;;10551:10:30;;;:30;;;;-1:-1:-1;;;;;;10565:16:30;;;;10551:30;:53;;;;-1:-1:-1;;;;;;10585:19:30;;10599:4;10585:19;;10551:53;10543:81;;;;-1:-1:-1;;;10543:81:30;;;;;;;:::i;:::-;10677:10;-1:-1:-1;;;;;10677:18:30;;;;:56;;;10699:34;10716:4;10722:10;10699:16;:34::i;:::-;10669:81;;;;-1:-1:-1;;;10669:81:30;;;;;;;:::i;:::-;11009:25;11029:4;11009:19;:25::i;:::-;10399:642;;:::o;11558:1522::-;11682:23;11707:4;11735:28;;;11727:37;;;;;;11774:23;;11869:3;-1:-1:-1;;;;;11848:32:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;11815:65;;11896:9;11891:1137;11907:14;;;11891:1137;;;12045:5;;12041:61;;12069:3;;12077:1;12073;:5;12069:10;;;;;;;;;;;;;12060:3;;12064:1;12060:6;;;;;;;;;;;;;:19;12052:50;;;;-1:-1:-1;;;12052:50:30;;;;;;;:::i;:::-;12117:27;12147:6;12154:1;12147:9;;;;;;;;;;;;;;12117:39;;12224:36;12253:3;;12257:1;12253:6;;;;;;;;;;;;;12224:28;:36::i;:::-;12205:15;;;12170:90;12189:14;;;12170:90;;;;;;12275:72;;12170:90;12331:15;12275:21;:72::i;:::-;12783:7;;12791:1;12783:10;;;;;;;;;;;;;;12759:14;;;:35;;;12989:1;-1:-1:-1;12968:49:30;;-1:-1:-1;12968:49:30;;13013:4;12992:25;;12968:49;-1:-1:-1;11923:3:30;;11891:1137;;;-1:-1:-1;13046:6:30;13054:18;;-1:-1:-1;11558:1522:30;-1:-1:-1;;;;;11558:1522:30:o;14050:1283::-;14175:21;;:::i;:::-;14198;;:::i;:::-;14422:31;14456:43;14496:2;14456:39;:43::i;:::-;14422:77;;14513:28;:9;:26;:28::i;:::-;14509:120;;;14569:49;;-1:-1:-1;;;14569:49:30;;:20;;:34;;:49;;14604:2;;14608:9;;14569:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14557:61;;14509:120;14650:58;14686:2;14690:9;14701:6;14650:35;:58::i;:::-;14638:70;-1:-1:-1;14718:31:30;14638:70;14746:2;14718:27;:31::i;:::-;14832:51;14876:6;14832:43;:51::i;:::-;14935:33;14971:45;15011:4;14971:39;:45::i;:::-;14935:81;;15030:30;:11;:28;:30::i;:::-;15026:128;;;15090:53;;-1:-1:-1;;;15090:53:30;;:20;;:34;;:53;;15125:4;;15131:11;;15090:53;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15076:67;;15026:128;15177:62;15213:4;15219:11;15232:6;15177:35;:62::i;:::-;15163:76;-1:-1:-1;15249:35:30;15163:76;15279:4;15249:29;:35::i;:::-;15303:11;15316:9;;-1:-1:-1;14050:1283:30;-1:-1:-1;;;;14050:1283:30:o;15492:3083::-;15738:10;;15829:2;15814:17;;15810:341;;16068:11;16082:27;;;;16093:4;16082:27;:::i;:::-;16068:41;-1:-1:-1;;15810:341:30;-1:-1:-1;;;;;;16488:42:30;;-1:-1:-1;;;16488:42:30;;:97;;-1:-1:-1;;;;;;;16546:39:30;;-1:-1:-1;;;16546:39:30;16488:97;:161;;;-1:-1:-1;;;;;;;16601:48:30;;-1:-1:-1;;;16601:48:30;16488:161;:233;;;-1:-1:-1;;;;;;;16665:56:30;;-1:-1:-1;;;16665:56:30;16488:233;16471:1122;;;16777:10;16784:2;16782:1;16777:4;;:10;:::i;:::-;16766:33;;;;;;;:::i;:::-;16746:53;;17101:4;-1:-1:-1;;;;;17080:25:30;:17;-1:-1:-1;;;;;17080:25:30;;:110;;;;17151:2;-1:-1:-1;;;;;17130:23:30;:17;-1:-1:-1;;;;;17130:23:30;;:59;;;;;17157:32;17174:2;17178:10;17157:16;:32::i;:::-;17055:186;;;;-1:-1:-1;;;17055:186:30;;;;;;;:::i;:::-;17452:11;17465:19;17496:4;-1:-1:-1;;;;;17488:18:30;17514:9;17525:4;;17488:42;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17451:79;;;;17552:6;17560:21;17574:6;17560:13;:21::i;:::-;17544:38;;;;;-1:-1:-1;;;17544:38:30;;;;;;;;:::i;:::-;;16471:1122;;;17941:4;-1:-1:-1;;;;;17920:25:30;:17;-1:-1:-1;;;;;17920:25:30;;;:56;;;;-1:-1:-1;17949:19:30;;;;-1:-1:-1;;;;;;17949:27:30;;;17920:56;17916:144;;;17992:57;;-1:-1:-1;;;17992:57:30;;:22;;:51;;:57;;18044:4;;17992:57;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17916:144;18413:18;:45;;;;;18456:2;-1:-1:-1;;;;;18435:23:30;:17;-1:-1:-1;;;;;18435:23:30;;;18413:45;:74;;;;-1:-1:-1;18462:17:30;;;;-1:-1:-1;;;;;;18462:25:30;;;18413:74;18409:160;;;18503:55;;-1:-1:-1;;;18503:55:30;;:22;;:51;;:55;;18555:2;;18503:55;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18409:160;15492:3083;;;;;;;;;:::o;718:413:16:-;1078:20;1116:8;;;718:413::o;883:554:85:-;1016:7;5408:6:60;1043:38:85;;;1035:47;;;;;;1112:16;1100:28;;;1092:37;;;;;;4906:1:60;1147:48:85;;;1139:57;;;;;;-1:-1:-1;1252:42:85;1292:2;1252:42;;;;1319:39;1357:1;1319:39;;;;1251:108;1390:25;;;1251:165;883:554;;;;;:::o;541:302::-;807:29;833:2;827:8;;;807:29;;771:26;795:1;789:7;;;771:26;;740:21;;;541:302::o;2520:163:94:-;2569:6;-1:-1:-1;;;;;2596:1:94;:30;;2587:40;;;;;13687:297:30;13849:86;13874:39;13902:10;13874:27;:39::i;:::-;13849:86;;13915:8;13925:9;13849:24;:86::i;:::-;13828:149;;;;-1:-1:-1;;;13828:149:30;;;;;;;:::i;:::-;13687:297;;;:::o;1879:229:62:-;1940:48;2005:12;2020:41;2036:24;2020:15;:41::i;1320:368:83:-;1455:15;1482:99;1584:35;:33;:35::i;:::-;-1:-1:-1;;;;;1636:14:83;;;;;;;;;;;;;;:26;;;;;;;;:36;;;;;;;:45;;;;;1629:52;;;-1:-1:-1;;1320:368:83;;;;;:::o;16756:1107:84:-;16858:23;588:2;16955:6;:30;;;;16947:39;;;;;;16997:90;17090:37;:35;:37::i;:::-;-1:-1:-1;;;;;17204:14:84;;17137:64;17204:14;;;;;;;;;;16997:130;;-1:-1:-1;17261:28:84;;;-1:-1:-1;;;;;17261:28:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;17228:61;;17305:9;17300:533;17324:6;17320:10;;:1;:10;17300:533;;;17351:42;17396:12;17409:1;17396:15;;;;;;;;17351:60;;17425:27;17455:6;17462:1;17455:9;;;;;;;;;;;;;;;;;;;17603:23;;;;;17584:42;;17657:21;;;;;17640:14;;;:38;;;;17710:22;-1:-1:-1;;;17710:22:84;;;17692:15;;;:40;-1:-1:-1;;;17763:21:84;;;;;;;17746:38;;:14;;;:38;17798:17;;:24;;;;-1:-1:-1;17603:23:84;17332:3;17300:533;;15921:829;16015:13;;15998:14;16015:13;-1:-1:-1;;;;;16061:21:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16061:21:84;;16038:44;;16097:9;16092:257;16112:6;16108:1;:10;16092:257;;;16139:27;16169:6;16176:1;16169:9;;;;;;;;;;;;;;16139:39;;16259:79;16288:5;:16;;;16306:5;:14;;;16322:5;:15;;;16259:28;:79::i;:::-;16250:3;16254:1;16250:6;;;;;;;;;;;;;;;;;:88;-1:-1:-1;16120:3:84;;16092:257;;;-1:-1:-1;16403:1:84;16414:330;16425:6;16421:1;:10;16414:330;;;16459:1;16474:243;16485:1;16481;:5;:28;;;;;16503:3;16507:1;16503:6;;;;;;;;;;;;;;16490:3;16498:1;16494;:5;16490:10;;;;;;;;;;;;;;:19;16481:28;16474:243;;;16589:3;16593:1;16589:6;;;;;;;;;;;;;;16597:3;16605:1;16601;:5;16597:10;;;;;;;;;;;;;;16566:3;16574:1;16570;:5;16566:10;;;;;;;;;;;;;16578:3;16582:1;16578:6;;;;;;;;;;;;;16565:43;;;;;;;;;;16656:6;16663:1;16656:9;;;;;;;;;;;;;;16667:6;16678:1;16674;:5;16667:13;;;;;;;;;;;;;;16627:6;16638:1;16634;:5;16627:13;;;;;;;;;;;;;16642:6;16649:1;16642:9;;;;;;;;;;;;;;;;;16626:55;;;;;-1:-1:-1;;16699:3:84;16474:243;;;-1:-1:-1;16730:3:84;;16414:330;;;15921:829;;;;:::o;1296:466:28:-;-1:-1:-1;;;;;1374:28:28;;1366:37;;;;;;-1:-1:-1;;;;;1454:24:28;;1473:4;1454:24;;1446:33;;;;;;1503:16;1684:39;1715:7;1684:30;:39::i;:::-;1489:234;;;;;;;;1741:8;1753:1;1741:13;1733:22;;;;;3020:732:66;3107:4;3143:15;3173:31;3189:14;3173:15;:31::i;:::-;3169:577;;;3389:31;3410:9;3389:20;:31::i;:::-;3357:29;;:63;;;;-1:-1:-1;3350:70:66;;-1:-1:-1;3350:70:66;3169:577;3660:29;;3656:33;;;;;;:79;;-1:-1:-1;3693:29:66;;:42;;;-1:-1:-1;3693:42:66;3656:79;3649:86;;;;;1997:1135:85;2162:21;;:::i;:::-;2323:33;:14;:31;:33::i;:::-;2322:34;2314:66;;;;-1:-1:-1;;;2314:66:85;;;;;;;:::i;:::-;2395:32;:14;:30;:32::i;:::-;2391:703;;;2515:76;2559:7;2568:14;2584:6;2515:43;:76::i;:::-;2391:703;;;2622:36;2661:155;2715:7;2740:14;:31;;;2789:6;:13;2661:36;:155::i;:::-;2622:194;-1:-1:-1;2876:40:85;2622:194;2909:6;2876:32;:40::i;:::-;3009:74;:14;3052:7;3061:14;3077:5;3009:42;:74::i;:::-;2391:703;;-1:-1:-1;3111:14:85;;1997:1135;-1:-1:-1;;1997:1135:85:o;837:274:66:-;938:48;989:30;:28;:30::i;:::-;-1:-1:-1;;;;;1029:14:66;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;-1:-1:-1;;;1029:31:66;-1:-1:-1;;1029:31:66;;;;;;;-1:-1:-1;;1029:31:66;;;;-1:-1:-1;;1029:31:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:29;938:81;;-1:-1:-1;1029:14:66;;1075:29;;1029:14;1075:29;837:274;;;:::o;1543:210:85:-;1642:9;1637:110;1657:6;:13;1653:1;:17;1637:110;;;1712:24;:6;1719:1;1712:9;;;;;;;;;;;;;;:18;;;:22;:24::i;:::-;1691:6;1698:1;1691:9;;;;;;;;;;;;;;;;;;:18;;:45;1672:3;;1637:110;;18581:487:30;18653:13;18814:2;18793:11;:18;:23;18789:67;;;-1:-1:-1;18818:38:30;;;;;;;;;;;;;;;;;;;18789:67;18956:4;18943:11;18939:22;18924:37;;18998:11;18987:33;;;;;;;;;;;;:::i;11565:192:77:-;11635:5;11652:12;11667:37;11693:10;11667:25;:37::i;:::-;11727:22;;;;-1:-1:-1;;;11565:192:77:o;2224:524:78:-;2363:4;2379:12;2394:36;2420:9;2394:25;:36::i;:::-;2379:51;;2440:19;2462:50;2471:40;2496:14;2471:24;:40::i;:::-;2462:4;;:8;:50::i;:::-;2440:72;;2579:11;2568:8;:22;2564:40;;;2599:5;2592:12;;;;;;2564:40;2650:12;2666:51;2697:9;2708:8;2666:30;:51::i;:::-;2642:75;2224:524;-1:-1:-1;;;;;;;;2224:524:78:o;8450:329:62:-;8542:12;494:7;8742:9;8734:18;;;;;;;;:38;;8450:329;-1:-1:-1;;8450:329:62:o;5665:269::-;5730:87;5833:12;5848:39;5864:22;5848:15;:39::i;6020:263::-;6087:77;6180:12;6195:41;6211:24;6195:15;:41::i;728:737:81:-;836:17;867:35;916:27;957:22;993:17;1035:47;1085:36;:34;:36::i;:::-;-1:-1:-1;;;;;1163:19:81;;;1131:29;1163:19;;;;;;;;-1:-1:-1;;1163:19:81;;;;1206:18;;;;;1264:35;;;;;;;-1:-1:-1;;;;1331:27:81;;;;-1:-1:-1;1387:24:81;-1:-1:-1;;;1387:24:81;;;;-1:-1:-1;;;;1434:24:81;;;;;;-1:-1:-1;728:737:81:o;583:160:78:-;641:7;2399:5:60;668:4:78;:21;;660:30;;;;;;2399:5:60;715:4:78;:20;;707:29;;;;583:160;-1:-1:-1;583:160:78:o;1753:1065:83:-;1930:32;:14;:30;:32::i;:::-;1922:41;;;;;;2026:31;;;;2005:52;;:18;2068:744;2088:6;:13;2084:1;:17;2068:744;;;2122:27;2152:6;2159:1;2152:9;;;;;;;;;;;;;;2122:39;;2179:5;:14;;;2197:1;2179:19;2175:33;;;2200:8;;;2175:33;2231:16;;:30;;2223:39;;;;;;2327:15;;;;4700:1:60;2327:45:83;2319:54;;;;;;2430:20;2481:192;2513:7;2538:10;2566:5;:14;;;2598;:29;;;2481:192;;2645:5;:14;;;2481;:192::i;:::-;2465:208;;2708:1;2692:13;:17;2688:113;;;2752:22;;;;;-1:-1:-1;;;2752:49:83;-1:-1:-1;;;;;;2727:74:83;;;2688:113;2068:744;;;2103:3;;2068:744;;;;1753:1065;;;;:::o;15438:477:84:-;15584:21;;:::i;:::-;15617:27;;:::i;:::-;15658:21;;;15654:39;;15688:5;-1:-1:-1;15681:12:84;;15654:39;15725:45;15744:7;15753:16;15725:18;:45::i;:::-;15704:66;;15780:42;;;:23;;;:42;15871:13;-1:-1:-1;;;;;15850:35:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;15832:15:84;;;:53;:15;15438:477;-1:-1:-1;;;;15438:477:84:o;658:502::-;804:9;799:355;823:6;:13;819:1;:17;799:355;;;857:27;887:6;894:1;887:9;;;;;;;;;;;;;;857:39;;914:5;:14;;;932:1;914:19;910:33;;;935:8;;;910:33;958:185;984:14;1016:5;:16;;;1050:5;:14;;;1082:5;:15;;;1115:5;:14;;;958:8;:185::i;:::-;799:355;;838:3;;799:355;;9863:2352:66;10240:12;;;;10344:35;:14;10371:7;10344:26;:35::i;:::-;10389:46;;;;;10239:140;;-1:-1:-1;10239:140:66;;-1:-1:-1;10239:140:66;-1:-1:-1;10239:140:66;-1:-1:-1;10453:32:66;10389:14;10453:16;:32::i;:::-;:41;10445:50;;;;;;10541;;;:31;;;:50;10772:13;10767:141;;2023:1:60;10809:60:66;;;;;10801:69;;;;;;11059:7;11055:263;;;11107:22;;;;;-1:-1:-1;;;11107:49:66;-1:-1:-1;;;;;;11082:74:66;;;11055:263;;;11257:22;;;;;-1:-1:-1;;;11232:75:66;;;11055:263;11460:59;11487:14;:31;;;11460:26;:59::i;:::-;-1:-1:-1;;;;;;11426:93:66;:31;;;:93;11530:20;11560:649;11567:24;;11560:649;;11902:35;;;;11955:26;;;11951:147;;12001:82;12019:14;12035:10;12047:4;-1:-1:-1;;;12001:17:66;:82::i;:::-;12196:2;12173:25;;;;;12126:10;-1:-1:-1;11560:649:66;;1553:90:94;1599:8;1626:10;-1:-1:-1;;1634:1:94;1626:3;:10::i;11271:218:77:-;11348:12;11372:41;11416:32;:30;:32::i;:::-;11465:17;;;;;;-1:-1:-1;;11465:17:77;;;;;11271:218::o;330:193:78:-;398:7;2617:9:60;425:30:78;;;417:39;;;;;;2617:9:60;486::78;:29;;928:470;991:7;1014:5;1023:1;1014:10;1010:40;;;-1:-1:-1;2617:9:60;1026:24:78;;1010:40;1064:5;1073:1;1064:10;1060:44;;;-1:-1:-1;1083:21:78;1076:28;;1060:44;1118:5;1127:1;1118:10;1114:37;;;-1:-1:-1;2665:11:60;1130:21:78;;1114:37;1165:5;1174:1;1165:10;1161:41;;;-1:-1:-1;1184:18:78;1177:25;;1161:41;1216:5;1225:1;1216:10;1212:41;;;-1:-1:-1;1235:18:78;1228:25;;1212:41;1267:5;1276:1;1267:10;1263:42;;;-1:-1:-1;1286:19:78;1279:26;;1263:42;1319:5;1328:1;1319:10;1315:42;;;-1:-1:-1;1338:19:78;1331:26;;1315:42;1368:23;;-1:-1:-1;;;1368:23:78;;;;;;;:::i;2682:175:6:-;2740:7;2771:5;;;2794:6;;;;2786:46;;;;;-1:-1:-1;;;2786:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;4025:2699:78;4140:7;4149:4;4169:21;4193:22;4205:9;4193:11;:22::i;:::-;4169:46;-1:-1:-1;2399:5:60;4283:8:78;:24;:29;4279:52;;4322:1;4325:5;4314:17;;;;;;;4279:52;4404:8;4387:13;:25;4383:48;;4422:1;4425:5;4414:17;;;;;;;4383:48;2399:5:60;4556:24:78;;;4555:42;2984:2:60;4680:38:78;;4676:1887;;4742:10;-1:-1:-1;4754:4:78;;-1:-1:-1;4734:25:78;;-1:-1:-1;4734:25:78;4676:1887;3036:3:60;4780:10:78;:39;4776:1787;;5092:20;2399:5:60;2520:7;5212:30:78;;5211:68;5131:148;;-1:-1:-1;;5131:148:78;;-1:-1:-1;2776:1:60;5131:148:78;5528:37;3257:2:60;5500:65:78;2776:1:60;5584:12:78;:37;;;;;;5626:1;5583:44;5306:335;;;;;;;;;4776:1787;3090:4:60;5662:10:78;:40;5658:905;;5718:20;2399:5:60;2567:8;5839:31:78;;5838:69;5757:150;;-1:-1:-1;;5757:150:78;;-1:-1:-1;2825:2:60;5757:150:78;5976:38;3310:3:60;5947:67:78;2825:2:60;6033:12:78;:38;;;;5658:905;3147:4:60;6112:10:78;:42;6108:455;;6170:20;2399:5:60;2617:9;6292:33:78;;6291:71;6209:153;;-1:-1:-1;;6209:153:78;;-1:-1:-1;2877:2:60;6209:153:78;6433:40;3366:3:60;6402:71:78;2877:2:60;6492:12:78;:40;;;;6108:455;6706:3;6711:5;6698:19;;;;;;4025:2699;;;;;;:::o;2175:232:62:-;2241:47;2305:12;2320:40;2336:23;2320:15;:40::i;3016:1782:83:-;3200:6;3218:20;3241:36;3257:7;3266:10;3241:15;:36::i;:::-;3218:59;;3287:99;3389:35;:33;:35::i;:::-;-1:-1:-1;;;;;3468:14:83;;3434:31;3468:14;;;;;;;;;;;:26;;;;;;;;:36;;;;;;;;3287:137;;-1:-1:-1;3434:31:83;3547:56;3578:14;3495:8;3547:30;:56::i;:::-;3514:89;;;;3621:7;3613:16;;;;;;3689:29;:12;3711:6;3689:21;:29::i;:::-;3685:649;;;3838:18;;3802:20;;3825:32;;:8;;3838:18;;;;3825:32;;:12;:32::i;:::-;3802:55;-1:-1:-1;;;;;;;3879:33:83;-1:-1:-1;3879:33:83;;;:70;;-1:-1:-1;;;;;;3916:33:83;;;3879:70;3871:79;;;;;;3997:42;;-1:-1:-1;;;;;;3997:42:83;-1:-1:-1;;;;;3997:42:83;;;;;;;;;4119:106;;4176:34;:12;4196:6;4204:5;4176:19;:34::i;:::-;4161:49;;4119:106;4239:50;4255:7;4264:10;4276:12;4239:15;:50::i;:::-;4310:13;-1:-1:-1;4303:20:83;;-1:-1:-1;;;;;4303:20:83;3685:649;4348:13;;4344:422;;-1:-1:-1;;;;;;4483:28:83;-1:-1:-1;4483:28:83;;;:60;;-1:-1:-1;;;;;;4515:28:83;;;4483:60;4475:69;;;;;;4591:37;;-1:-1:-1;;;;;;4591:37:83;-1:-1:-1;;;;;4591:37:83;;;;;;;;4658:33;:12;4678:6;-1:-1:-1;4658:19:83;:33::i;:::-;4643:48;;4705:50;4721:7;4730:10;4742:12;4705:15;:50::i;:::-;4783:8;4776:15;;;;;;;3016:1782;;;;;;;;:::o;2971:2071:84:-;3268:27;;3230:186;;3313:10;3341:8;3367:9;3394:8;3230:20;:186::i;:::-;3171:263;;;3427:7;;3171:263;3448:32;;;;:36;3444:296;;3500:11;3514:183;3552:14;:24;;;3594:10;3622:8;3648:9;3675:8;3514:20;:183::i;:::-;3500:197;;3715:6;3711:19;;;3723:7;;;3711:19;3444:296;;3904:40;3934:9;3904:29;:40::i;:::-;3900:152;;;3980:1;3968:8;:13;;3960:22;;;;;;-1:-1:-1;;4069:27:84;;;;;:58;;-1:-1:-1;4112:15:84;4100:27;;;4069:58;4061:67;;;;;;4278:14;:24;;;:31;4242:14;:32;;;:67;4238:171;;;4352:46;4373:14;:24;;;4352:20;:46::i;:::-;4325:24;;;:73;4238:171;4679:30;4712:14;:24;;;4737:14;:32;;;4712:58;;;;;;;;;;;;;;;;;;;4780:32;;;4822:17;;:28;;;;4860:18;;;;:30;;;;4900:17;;;:28;-1:-1:-1;4938:21:84;;;;:50;;;;-1:-1:-1;4998:32:84;:37;;5034:1;4998:37;;;2971:2071::o;6460:4123::-;6583:4;;;;;;;;7195:574;7219:27;;:34;7215:38;;7195:574;;;7274:27;7304:14;:27;;;7332:1;7304:30;;;;;;;;;;;;;;7274:60;;7517:32;7495:54;;;;;;;;:5;:18;;;:54;;;;;;;;;;7487:63;;;;;;7647:24;7625:5;:18;;;:46;;;;;;;;;;:69;;;;-1:-1:-1;7675:14:84;;;;:19;7625:69;7621:138;;;7714:30;7726:14;7742:1;7714:11;:30::i;:::-;-1:-1:-1;7255:3:84;;7195:574;;;;7868:9;7863:1217;7887:27;;:34;7883:38;;7863:1217;;;7942:27;7972:14;:27;;;8000:1;7972:30;;;;;;;;;;;;;;7942:60;;8043:24;8021:46;;;;;;;;:5;:18;;;:46;;;;;;;;;8017:1053;;;8154:17;;;;8132:19;8220:25;;8198:65;;;8327:24;8305:5;:18;;;:46;;;;;;;;;8301:361;;;8461:17;;;;;8611:32;8461:5;:17;8611:11;:32::i;:::-;8301:361;;;8875:180;8920:5;8947:7;8976:25;9023:14;8875:23;:180::i;:::-;8820:235;;-1:-1:-1;8820:235:84;-1:-1:-1;8820:235:84;-1:-1:-1;8017:1053:84;-1:-1:-1;7923:3:84;;7863:1217;;;-1:-1:-1;9145:32:84;;;;9116:26;9280:37;:35;:37::i;:::-;-1:-1:-1;;;;;9394:14:84;;9327:64;9394:14;;;;;;;;;;9187:130;;-1:-1:-1;9418:735:84;9442:14;:24;;;:31;9438:1;:35;9418:735;;;9494:27;9524:14;:24;;;9549:1;9524:27;;;;;;;;;;;;;;9494:57;;9569:5;:14;;;9587:1;9569:19;9565:33;;;9590:8;;;9565:33;9659:24;9637:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;9725:32:84;9703:5;:18;;;:54;;;;;;;;;;9637:120;9612:159;;;;;;9878:160;9919:5;9942:7;9967:25;10010:14;9878:23;:160::i;:::-;9823:215;;-1:-1:-1;9823:215:84;-1:-1:-1;9823:215:84;-1:-1:-1;10053:52:84;10065:5;10072:12;10085:18;10072:32;;;;;;;;10053:11;:52::i;:::-;10141:1;10119:23;;;;9418:735;;9475:3;;9418:735;;;;10333:2;10311:18;:24;;:62;;;;-1:-1:-1;10357:16:84;10339:34;;;10311:62;10303:71;;;;;;-1:-1:-1;10445:7:84;;10466:25;;-1:-1:-1;10466:25:84;-1:-1:-1;10511:18:84;-1:-1:-1;6460:4123:84;-1:-1:-1;;;;6460:4123:84:o;8919:751:66:-;9004:7;;9150:24;9131:43;;9004:7;9302:338;-1:-1:-1;;;;;;9309:14:66;;;9302:338;;-1:-1:-1;;;9343:45:66;;;:77;9339:256;;;-1:-1:-1;;;;;;9516:23:66;;:33;;9506:44;;;;;9578:2;9568:12;9339:256;9627:2;9617:6;-1:-1:-1;;;;;9617:12:66;;;;9608:21;;9302:338;;;-1:-1:-1;9657:6:66;;8919:751;-1:-1:-1;;;8919:751:66:o;5247:3666::-;5435:10;5431:1;:14;:56;;;;-1:-1:-1;5408:6:60;5449:38:66;;;5431:56;5423:65;;;;;;5707:8;:57;;;;;5754:10;5719:14;:31;;;:45;;;5707:57;5703:70;;;5766:7;;5703:70;5824:31;;;;5783:14;;;6684:1857;-1:-1:-1;;;;;;6691:14:66;;;6684:1857;;6767:22;6743:47;;;5408:6:60;6743:47:66;6877:17;;;:29;;;;;6898:8;6877:29;6873:272;;;-1:-1:-1;7019:31:66;;;;;-1:-1:-1;;;;;;7074:14:66;;7102:2;7093:11;;;7074:31;;;;7019:87;;;;-1:-1:-1;;;;;;6965:141:66;;;-1:-1:-1;7124:7:66;;-1:-1:-1;7124:7:66;6873:272;7239:10;7232:3;:17;:30;;;;;7254:8;7253:9;7232:30;7228:375;;;-1:-1:-1;;;;;;7369:14:66;;7368:15;7359:24;;;;;-1:-1:-1;;;7405:50:66;;7401:77;;7476:2;7466:6;-1:-1:-1;;;;;7466:12:66;;;;7457:21;;7401:77;-1:-1:-1;;;;;;;7540:23:66;;;7560:2;7551:11;;;7540:23;7530:34;;;;7496:68;:31;;;:68;7582:7;;7228:375;7695:10;7689:3;:16;:28;;;;;7709:8;7689:28;7685:575;;;8046:3;8011:31;;;;-1:-1:-1;;;;;;7764:26:66;;;;:34;;7756:43;;7813:2;7804:11;;7756:60;7746:71;;;;;8011:38;;;8010:48;8002:57;;;;;;-1:-1:-1;;;;;;;8191:29:66;;;8212:1;8203:10;;;;8217:2;8202:17;8191:29;8181:40;;;;8147:74;:31;;;:74;8239:7;;7685:575;8364:10;8358:3;:16;:29;;;;;8379:8;8378:9;8358:29;8354:42;;;8389:7;;;;;;8354:42;-1:-1:-1;;;;;;;8429:23:66;;8466:2;8457:11;;;8429:40;;;;8419:51;;;;;8493:12;;;;-1:-1:-1;;;;;;8493:12:66;;8529:1;8519:11;6684:1857;;;8616:8;8611:22;;8626:7;;;;;8611:22;8733:1;8724:6;:10;8716:19;;;;;;-1:-1:-1;;;;;;8853:26:66;;;;:34;;8845:43;8902:2;8893:11;;;8845:60;8823:83;;;;-1:-1:-1;;;;;;8777:129:66;:31;;;:129;-1:-1:-1;5247:3666:66;;;;:::o;398:190:94:-;478:5;;;-1:-1:-1;;497:7:94;;493:88;;;515:6;;;:20;;;534:1;529;525;:5;;;;;;:10;515:20;506:30;;;;;;493:88;;;560:6;;;:20;;;579:1;574;570;:5;;;;;;:10;560:20;551:30;;;;;4677:217:62;4739:41;4796:12;4811:36;4827:19;4811:15;:36::i;656:266:83:-;741:20;773:61;837:35;:33;:35::i;:::-;-1:-1:-1;;;;;889:14:83;;;;;;;;;;;;;;:26;;;;;;;;;-1:-1:-1;;656:266:83;;;;:::o;732:234:92:-;804:4;837:1;828:5;:10;;:26;;;;;851:3;842:5;:12;;828:26;820:35;;;;;;-1:-1:-1;;;914:9:92;903:21;-1:-1:-1;;;902:39:92;;;901:58;;732:234::o;1427:120:94:-;1516:5;;;1511:16;;;;1483:8;1532:6;;;1511:28;1503:37;;;;;316:372:92;428:7;464:1;455:5;:10;;:26;;;;;478:3;469:5;:12;;455:26;447:35;;;;;;526:5;522:160;;;-1:-1:-1;;;;;;582:9:92;;564:28;554:39;;547:46;;522:160;-1:-1:-1;;;;;;660:9:92;;642:28;640:31;631:40;;624:47;;928:386:83;2215:2:60;1069:27:83;:12;:25;:27::i;:::-;:58;;1061:86;;;;-1:-1:-1;;;1061:86:83;;;;;;;:::i;:::-;1157:61;1221:35;:33;:35::i;:::-;-1:-1:-1;;;;;1266:14:83;;;;;;;;;;;;;;;:26;;;;;;;-1:-1:-1;1266:26:83;;:41;928:386::o;1166:1465:84:-;1374:4;;1390:1212;1414:10;:17;1410:1;:21;1390:1212;;;1452:27;1482:10;1493:1;1482:13;;;;;;;;;;;;;;1452:43;;1549:9;1530:5;:15;;;:28;;:78;;;-1:-1:-1;1578:16:84;;:30;;;1530:78;:124;;;;1646:8;1628:5;:14;;;:26;;1530:124;1509:168;;;1669:8;;;1509:168;1875:24;1853:5;:18;;;:46;;;;;;;;;;:120;;;;-1:-1:-1;1941:32:84;1919:5;:18;;;:54;;;;;;;;;;1853:120;1828:159;;;;;;2065:14;;;;2044:18;;2065:28;;2084:8;2065:18;:28::i;:::-;2044:49;;2173:40;2203:9;2173:29;:40::i;:::-;2169:163;;;2256:1;2241:11;:16;;2233:25;;;;;;-1:-1:-1;;2354:30:84;;;;;:64;;-1:-1:-1;2403:15:84;2388:30;;;2354:64;2346:73;;;;;;2478:14;;;:28;2541:24;2520:18;;;;:45;;;2541:24;-1:-1:-1;2580:11:84;;-1:-1:-1;2580:11:84;1390:1212;1433:3;;1390:1212;;;-1:-1:-1;2619:5:84;;1166:1465;-1:-1:-1;;;;;;1166:1465:84:o;615:222:88:-;683:4;4847:1:60;718:48:88;;;;;:112;;-1:-1:-1;;4906:1:60;-1:-1:-1;782:48:88;;615:222::o;5183:648:84:-;5294:23;5532:17;5552:9;:16;5572:1;5552:21;:48;;5580:9;:16;5599:1;5580:20;5552:48;;;5576:1;5552:48;5532:68;;5610:37;5671:9;-1:-1:-1;;;;;5650:31:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5610:71;;5696:9;5691:103;5715:9;:16;5711:1;:20;5691:103;;;5771:9;5781:1;5771:12;;;;;;;;;;;;;;5752:13;5766:1;5752:16;;;;;;;;;;;;;;;;;:31;5733:3;;5691:103;;;-1:-1:-1;5811:13:84;5183:648;-1:-1:-1;;;5183:648:84:o;12689:2038::-;12803:27;;:34;12795:42;;12787:51;;;;;;12920:1;12885:14;:32;;;:36;12877:45;;;;;;12969:35;13007:14;:27;;;13035:5;13007:34;;;;;;;;;;;;;;12969:72;;13102:24;13072:54;;;;;;;;:13;:26;;;:54;;;;;;;;;;:132;;;;-1:-1:-1;13172:32:84;13142:13;:26;;;:62;;;;;;;;;;13072:132;13051:163;;;;;;13253:32;;;:37;;-1:-1:-1;;13253:37:84;;;-1:-1:-1;;;13531:338:84;13551:27;;:34;13547:38;;13531:338;;;13606:23;13632:14;:27;;;13660:1;13632:30;;;;;;;;;;;;;;13606:56;;13696:13;13680:1;:13;;;:29;:75;;;;-1:-1:-1;13731:24:84;13713:1;:14;;;:42;;;;;;;;;;13680:75;13676:183;;;13791:1;:13;;;13775:29;;13843:1;13822:22;;13676:183;-1:-1:-1;13587:3:84;;13531:338;;;;13892:18;13883:5;:27;13879:236;;;-1:-1:-1;;14060:24:84;14031:26;;;;;:53;14098:7;;13879:236;14328:33;14364:14;:27;;;14392:18;14364:47;;;;;;;;;;;;;;;;;;14524:25;;;;;;14563:23;;;;;14421:175;;;;14633:24;14606;;;;:51;14696:24;14667:26;;:53;;;;-1:-1:-1;;;;;12689:2038:84:o;11592:862::-;11739:16;;11735:20;;;;:68;;-1:-1:-1;11759:16:84;;5408:6:60;-1:-1:-1;11759:44:84;11735:68;11727:77;;;;;;11868:5;:14;;;11864:1;:18;:56;;;;-1:-1:-1;11886:14:84;;;;11904:16;-1:-1:-1;11886:34:84;11864:56;11856:65;;;;;;11982:5;:15;;;11978:1;:19;:77;;;;-1:-1:-1;12001:15:84;;;;4906:1:60;-1:-1:-1;12001:54:84;11978:77;11970:86;;;;;;12127:14;;;;-1:-1:-1;;12108:33:84;;;;:70;;-1:-1:-1;12145:14:84;;;;12163:15;-1:-1:-1;12145:33:84;12108:70;12100:79;;;;;;12262:16;;12229:50;;12320:14;;;;12376:15;;;;12432:14;;;;;12402:45;;;;-1:-1:-1;;;12402:45:84;-1:-1:-1;;12345:47:84;;;;-1:-1:-1;;;12345:47:84;-1:-1:-1;;12289:46:84;;;;;;-1:-1:-1;;12229:50:84;;;;-1:-1:-1;;12229:50:84;;;;;;;12289:46;;;;;;;;12345:47;;;;;12402:45;;;;;;;;;;11592:862::o;10664:882::-;10896:4;10914:7;10935;10967:22;10992:25;:5;:23;:25::i;:::-;10967:50;-1:-1:-1;11089:19:84;;;:54;;;11129:14;11112;:31;11089:54;11085:116;;;11176:14;11159:31;;11085:116;11220:7;:29;;;;11248:1;11231:5;:14;;;:18;11220:29;11210:39;-1:-1:-1;11268:47:84;;;;11260:56;;;;;;-1:-1:-1;;11444:16:84;;11488:7;;11429:2;11400:31;;;;11465:3;11436:32;;;;11399:70;;;;;-1:-1:-1;11524:14:84;-1:-1:-1;10664:882:84:o;5315:243:62:-;5380:61;5457:12;5472:39;5488:22;5472:15;:39::i;1013:838:92:-;1215:1;1210:6;;;1219:66;1210:75;;;1135:70;;1134:152;1381:1;1376:6;;;1385:66;1376:75;;;1301:70;;1300:152;1547:1;1542:6;;;1471:66;1467:70;;;;1466:83;1644:1;1639:6;;;1648:66;1639:75;;;1564:70;;1563:152;1739:2;1734:7;;;1729:13;1766:2;1761:7;;;1756:13;1794:2;1789:7;;;1783:14;1833:3;1828:8;;;1839:4;1828:15;;;1815:8;;1814:30;;1013:838::o;1006:752:88:-;1085:7;1130:1;1112:5;:15;;;:19;:77;;;;-1:-1:-1;1135:15:88;;;;4906:1:60;-1:-1:-1;1135:54:88;1112:77;1104:86;;;;;;1309:15;;;;4847:1:60;-1:-1:-1;1305:81:88;;-1:-1:-1;1372:14:88;;;;1365:21;;1305:81;1397:20;1420:45;1463:1;1445:5;:15;;;:19;1420:24;:45::i;:::-;1696:14;;;;1397:68;;-1:-1:-1;1696:55:88;;2617:9:60;;1696:32:88;;1397:68;1696:18;:32::i;:::-;:36;;:55::i;3128:155:6:-;3186:7;3218:1;3213;:6;;3205:49;;;;;-1:-1:-1;;;3205:49:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3271:5:6;;;3128:155::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:400:168:-;;;147:3;140:4;132:6;128:17;124:27;114:2;;170:6;162;155:22;114:2;-1:-1:-1;198:20:168;;-1:-1:-1;;;;;230:30:168;;227:2;;;280:8;270;263:26;227:2;324:4;316:6;312:17;300:29;;387:3;380:4;372;364:6;360:17;352:6;348:30;344:41;341:50;338:2;;;404:1;401;394:12;419:195;500:13;;-1:-1:-1;;;;;;542:47:168;;532:58;;522:2;;604:1;601;594:12;619:377;;;736:3;729:4;721:6;717:17;713:27;703:2;;761:8;751;744:26;703:2;-1:-1:-1;791:20:168;;-1:-1:-1;;;;;823:30:168;;820:2;;;873:8;863;856:26;820:2;917:4;909:6;905:17;893:29;;969:3;962:4;953:6;945;941:19;937:30;934:39;931:2;;;986:1;983;976:12;1001:140;1081:13;;1103:32;1081:13;1103:32;:::i;1146:138::-;1225:13;;1247:31;1225:13;1247:31;:::i;1289:259::-;;1401:2;1389:9;1380:7;1376:23;1372:32;1369:2;;;1422:6;1414;1407:22;1369:2;1466:9;1453:23;1485:33;1512:5;1485:33;:::i;1825:402::-;;;1954:2;1942:9;1933:7;1929:23;1925:32;1922:2;;;1975:6;1967;1960:22;1922:2;2019:9;2006:23;2038:33;2065:5;2038:33;:::i;:::-;2090:5;-1:-1:-1;2147:2:168;2132:18;;2119:32;2160:35;2119:32;2160:35;:::i;:::-;2214:7;2204:17;;;1912:315;;;;;:::o;2232:1396::-;;;;;;;;;2501:3;2489:9;2480:7;2476:23;2472:33;2469:2;;;2523:6;2515;2508:22;2469:2;2567:9;2554:23;2586:33;2613:5;2586:33;:::i;:::-;2638:5;-1:-1:-1;2695:2:168;2680:18;;2667:32;2708:35;2667:32;2708:35;:::i;:::-;2762:7;-1:-1:-1;2820:2:168;2805:18;;2792:32;-1:-1:-1;;;;;2873:14:168;;;2870:2;;;2905:6;2897;2890:22;2870:2;2949:76;3017:7;3008:6;2997:9;2993:22;2949:76;:::i;:::-;3044:8;;-1:-1:-1;2923:102:168;-1:-1:-1;3132:2:168;3117:18;;3104:32;;-1:-1:-1;3148:16:168;;;3145:2;;;3182:6;3174;3167:22;3145:2;3226:78;3296:7;3285:8;3274:9;3270:24;3226:78;:::i;:::-;3323:8;;-1:-1:-1;3200:104:168;-1:-1:-1;3411:3:168;3396:19;;3383:33;;-1:-1:-1;3428:16:168;;;3425:2;;;3462:6;3454;3447:22;3425:2;;3506:62;3560:7;3549:8;3538:9;3534:24;3506:62;:::i;:::-;2459:1169;;;;-1:-1:-1;2459:1169:168;;-1:-1:-1;2459:1169:168;;;;;;3587:8;-1:-1:-1;;;2459:1169:168:o;3633:849::-;;;;;;;3832:3;3820:9;3811:7;3807:23;3803:33;3800:2;;;3854:6;3846;3839:22;3800:2;3898:9;3885:23;3917:33;3944:5;3917:33;:::i;:::-;3969:5;-1:-1:-1;4026:2:168;4011:18;;3998:32;4039:35;3998:32;4039:35;:::i;:::-;4093:7;-1:-1:-1;4147:2:168;4132:18;;4119:32;;-1:-1:-1;4198:2:168;4183:18;;4170:32;;-1:-1:-1;4253:3:168;4238:19;;4225:33;-1:-1:-1;;;;;4270:30:168;;4267:2;;;4318:6;4310;4303:22;4267:2;4362:60;4414:7;4405:6;4394:9;4390:22;4362:60;:::i;:::-;3790:692;;;;-1:-1:-1;3790:692:168;;-1:-1:-1;3790:692:168;;4441:8;;3790:692;-1:-1:-1;;;3790:692:168:o;4487:438::-;;;4613:2;4601:9;4592:7;4588:23;4584:32;4581:2;;;4634:6;4626;4619:22;4581:2;4678:9;4665:23;4697:33;4724:5;4697:33;:::i;:::-;4749:5;-1:-1:-1;4806:2:168;4791:18;;4778:32;4848:15;;4841:23;4829:36;;4819:2;;4884:6;4876;4869:22;4930:327;;;5059:2;5047:9;5038:7;5034:23;5030:32;5027:2;;;5080:6;5072;5065:22;5027:2;5124:9;5111:23;5143:33;5170:5;5143:33;:::i;:::-;5195:5;5247:2;5232:18;;;;5219:32;;-1:-1:-1;;;5017:240:168:o;5262:815::-;;;;;5461:2;5449:9;5440:7;5436:23;5432:32;5429:2;;;5482:6;5474;5467:22;5429:2;5527:9;5514:23;-1:-1:-1;;;;;5597:2:168;5589:6;5586:14;5583:2;;;5618:6;5610;5603:22;5583:2;5662:76;5730:7;5721:6;5710:9;5706:22;5662:76;:::i;:::-;5757:8;;-1:-1:-1;5636:102:168;-1:-1:-1;5845:2:168;5830:18;;5817:32;;-1:-1:-1;5861:16:168;;;5858:2;;;5895:6;5887;5880:22;5858:2;;5939:78;6009:7;5998:8;5987:9;5983:24;5939:78;:::i;:::-;5419:658;;;;-1:-1:-1;6036:8:168;-1:-1:-1;;;;5419:658:168:o;6902:190::-;;7014:2;7002:9;6993:7;6989:23;6985:32;6982:2;;;7035:6;7027;7020:22;6982:2;-1:-1:-1;7063:23:168;;6972:120;-1:-1:-1;6972:120:168:o;7097:257::-;;7208:2;7196:9;7187:7;7183:23;7179:32;7176:2;;;7229:6;7221;7214:22;7176:2;7273:9;7260:23;7292:32;7318:5;7292:32;:::i;7359:261::-;;7481:2;7469:9;7460:7;7456:23;7452:32;7449:2;;;7502:6;7494;7487:22;7449:2;7539:9;7533:16;7558:32;7584:5;7558:32;:::i;7625:876::-;;7758:2;7746:9;7737:7;7733:23;7729:32;7726:2;;;7779:6;7771;7764:22;7726:2;7817:9;7811:16;-1:-1:-1;;;;;7887:2:168;7879:6;7876:14;7873:2;;;7908:6;7900;7893:22;7873:2;7951:6;7940:9;7936:22;7926:32;;7996:7;7989:4;7985:2;7981:13;7977:27;7967:2;;8023:6;8015;8008:22;7967:2;8057;8051:9;8079:2;8075;8072:10;8069:2;;;8085:9;8069:2;8125;8119:9;8194:2;8175:13;;-1:-1:-1;;8171:27:168;8159:40;;8201:2;8155:49;8219:18;;;8239:22;;;8216:46;8213:2;;;8265:9;8213:2;8292;8285:22;8316:18;;;8353:11;;;8366:2;8349:20;8346:33;-1:-1:-1;8343:2:168;;;8397:6;8389;8382:22;8343:2;8415:55;8467:2;8462;8454:6;8450:15;8445:2;8441;8437:11;8415:55;:::i;:::-;8489:6;7716:785;-1:-1:-1;;;;;;7716:785:168:o;8506:952::-;;8662:3;8650:9;8641:7;8637:23;8633:33;8630:2;;;8684:6;8676;8669:22;8630:2;8722;8716:9;8764:3;8756:6;8752:16;8834:6;8822:10;8819:22;-1:-1:-1;;;;;8786:10:168;8783:34;8780:62;8777:2;;;8845:9;8777:2;8872;8865:22;8909:16;;8934:32;8909:16;8934:32;:::i;:::-;8975:21;;9041:2;9026:18;;9020:25;-1:-1:-1;;;;;;9076:27:168;;9064:40;;9054:2;;9123:6;9115;9108:22;9054:2;9160;9148:15;;9141:32;9206:49;9251:2;9236:18;;9206:49;:::i;:::-;9201:2;9193:6;9189:15;9182:74;9289:50;9335:2;9324:9;9320:18;9289:50;:::i;:::-;9284:2;9276:6;9272:15;9265:75;9374:52;9421:3;9410:9;9406:19;9374:52;:::i;:::-;9368:3;9356:16;;9349:78;9360:6;8620:838;-1:-1:-1;;;8620:838:168:o;9463:537::-;;;;9605:2;9593:9;9584:7;9580:23;9576:32;9573:2;;;9626:6;9618;9611:22;9573:2;9670:9;9657:23;9689:32;9715:5;9689:32;:::i;:::-;9740:5;-1:-1:-1;9797:2:168;9782:18;;9769:32;9810:34;9769:32;9810:34;:::i;:::-;9863:7;-1:-1:-1;9922:2:168;9907:18;;9894:32;9935:33;9894:32;9935:33;:::i;:::-;9987:7;9977:17;;;9563:437;;;;;:::o;10005:369::-;10099:19;;;10005:369;-1:-1:-1;;;;;10130:31:168;;10127:2;;;10176:3;10171;10164:16;10127:2;10219:4;10211:6;10207:17;10269:8;10262:5;10255:4;10250:3;10246:14;10233:45;10301:18;;;;10321:4;10297:29;10335:15;;;-1:-1:-1;10297:29:168;;10089:285;-1:-1:-1;10089:285:168:o;10379:270::-;;10469:6;10464:3;10457:19;10521:6;10514:5;10507:4;10502:3;10498:14;10485:43;10573:3;10566:4;10557:6;10552:3;10548:16;10544:27;10537:40;10638:4;10631:2;10627:7;10622:2;10614:6;10610:15;10606:29;10601:3;10597:39;10593:50;10586:57;;10447:202;;;;;:::o;10654:273::-;;10837:6;10829;10824:3;10811:33;10863:16;;10888:15;;;10863:16;10801:126;-1:-1:-1;10801:126:168:o;10932:211::-;-1:-1:-1;;;;;11104:32:168;;;;11086:51;;11074:2;11059:18;;11041:102::o;11356:929::-;-1:-1:-1;;;;;11791:15:168;;;11773:34;;11843:15;;11838:2;11823:18;;11816:43;11753:3;11890:2;11875:18;;11868:31;;;11356:929;;11922:80;;11982:19;;11974:6;11966;11922:80;:::i;:::-;12050:9;12042:6;12038:22;12033:2;12022:9;12018:18;12011:50;12084:67;12144:6;12136;12128;12084:67;:::i;:::-;12070:81;;12200:9;12192:6;12188:22;12182:3;12171:9;12167:19;12160:51;12228;12272:6;12264;12256;12228:51;:::i;:::-;12220:59;11725:560;-1:-1:-1;;;;;;;;;;;11725:560:168:o;12290:597::-;-1:-1:-1;;;;;12605:15:168;;;12587:34;;12657:15;;12652:2;12637:18;;12630:43;12704:2;12689:18;;12682:34;;;12747:2;12732:18;;12725:34;;;12567:3;12790;12775:19;;12768:32;;;12290:597;;12817:64;;12861:19;;12853:6;12845;12817:64;:::i;12892:304::-;-1:-1:-1;;;;;13122:15:168;;;13104:34;;13174:15;;13169:2;13154:18;;13147:43;13054:2;13039:18;;13021:175::o;13201:700::-;-1:-1:-1;;;;;13468:32:168;;;;13450:51;;13541:13;;13556:12;13537:32;13532:2;13517:18;;;13510:60;;;;13616:15;;13610:22;-1:-1:-1;;;;;;13606:42:168;13601:2;13586:18;;;13579:70;;;;13695:15;;13689:22;13643:3;13685:33;13680:2;13665:18;;;13658:61;;;;13766:15;;13760:22;13784:6;13756:35;13750:3;13735:19;;;13728:64;;;;13839:16;13833:23;-1:-1:-1;;;;;;13829:65:168;13488:3;13808:19;;13801:94;13437:3;13422:19;;13404:497::o;13906:633::-;14075:2;14127:21;;;14197:13;;14100:18;;;14219:22;;;13906:633;;14075:2;14298:15;;;;14272:2;14257:18;;;13906:633;14344:169;14358:6;14355:1;14352:13;14344:169;;;14419:13;;14407:26;;14488:15;;;;14453:12;;;;14380:1;14373:9;14344:169;;;-1:-1:-1;14530:3:168;;14055:484;-1:-1:-1;;;;;;14055:484:168:o;14544:1204::-;14781:2;14833:21;;;14903:13;;14806:18;;;14925:22;;;14544:1204;;14781:2;14966;;14984:18;;;;15025:15;;;14544:1204;15071:651;15085:6;15082:1;15079:13;15071:651;;;15144:13;;15182:9;;15170:22;;15232:11;;;15226:18;15212:12;;;15205:40;15285:11;;;15279:18;15265:12;;;15258:40;15321:4;15365:11;;;15359:18;15345:12;;;15338:40;15401:4;15445:11;;;15439:18;15425:12;;;15418:40;15481:4;15524:11;;;15518:18;;15576:1;15559:19;;15549:2;;15582:9;15549:2;15613:12;;15606:34;15669:4;15660:14;;;;15697:15;;;;15107:1;15100:9;15071:651;;;-1:-1:-1;15739:3:168;;14761:987;-1:-1:-1;;;;;;;14761:987:168:o;15753:531::-;;16030:2;16019:9;16012:21;16056:79;16131:2;16120:9;16116:18;16108:6;16100;16056:79;:::i;:::-;16183:9;16175:6;16171:22;16166:2;16155:9;16151:18;16144:50;16211:67;16271:6;16263;16255;16211:67;:::i;:::-;16203:75;16002:282;-1:-1:-1;;;;;;;16002:282:168:o;16929:187::-;17094:14;;17087:22;17069:41;;17057:2;17042:18;;17024:92::o;17121:175::-;17265:25;;;17253:2;17238:18;;17220:76::o;17301:383::-;;17450:2;17439:9;17432:21;17482:6;17476:13;17525:6;17520:2;17509:9;17505:18;17498:34;17541:66;17600:6;17595:2;17584:9;17580:18;17575:2;17567:6;17563:15;17541:66;:::i;:::-;17668:2;17647:15;-1:-1:-1;;17643:29:168;17628:45;;;;17675:2;17624:54;;17422:262;-1:-1:-1;;17422:262:168:o;17689:339::-;17891:2;17873:21;;;17930:2;17910:18;;;17903:30;-1:-1:-1;;;17964:2:168;17949:18;;17942:45;18019:2;18004:18;;17863:165::o;18033:341::-;18235:2;18217:21;;;18274:2;18254:18;;;18247:30;-1:-1:-1;;;18308:2:168;18293:18;;18286:47;18365:2;18350:18;;18207:167::o;18379:336::-;18581:2;18563:21;;;18620:2;18600:18;;;18593:30;-1:-1:-1;;;18654:2:168;18639:18;;18632:42;18706:2;18691:18;;18553:162::o;18720:337::-;18922:2;18904:21;;;18961:2;18941:18;;;18934:30;-1:-1:-1;;;18995:2:168;18980:18;;18973:43;19048:2;19033:18;;18894:163::o;19062:343::-;19264:2;19246:21;;;19303:2;19283:18;;;19276:30;-1:-1:-1;;;19337:2:168;19322:18;;19315:49;19396:2;19381:18;;19236:169::o;19410:339::-;19612:2;19594:21;;;19651:2;19631:18;;;19624:30;-1:-1:-1;;;19685:2:168;19670:18;;19663:45;19740:2;19725:18;;19584:165::o;19754:340::-;19956:2;19938:21;;;19995:2;19975:18;;;19968:30;-1:-1:-1;;;20029:2:168;20014:18;;20007:46;20085:2;20070:18;;19928:166::o;20099:342::-;20301:2;20283:21;;;20340:2;20320:18;;;20313:30;-1:-1:-1;;;20374:2:168;20359:18;;20352:48;20432:2;20417:18;;20273:168::o;20446:336::-;20648:2;20630:21;;;20687:2;20667:18;;;20660:30;-1:-1:-1;;;20721:2:168;20706:18;;20699:42;20773:2;20758:18;;20620:162::o;20969:248::-;21143:25;;;21199:2;21184:18;;21177:34;21131:2;21116:18;;21098:119::o;21222:363::-;;;21380:8;21368:10;21365:24;21362:2;;;21410:9;21399;21392:28;21362:2;21447:6;21437:8;21434:20;21431:2;;;21475:9;21464;21457:28;21431:2;-1:-1:-1;;21509:23:168;;;21554:25;;;;;-1:-1:-1;21352:233:168:o;21590:258::-;21662:1;21672:113;21686:6;21683:1;21680:13;21672:113;;;21762:11;;;21756:18;21743:11;;;21736:39;21708:2;21701:10;21672:113;;;21803:6;21800:1;21797:13;21794:2;;;-1:-1:-1;;21838:1:168;21820:16;;21813:27;21643:205::o;21853:133::-;-1:-1:-1;;;;;21930:31:168;;21920:42;;21910:2;;21976:1;21973;21966:12;21910:2;21900:86;:::o;21991:133::-;-1:-1:-1;;;;;;22067:32:168;;22057:43;;22047:2;;22114:1;22111;22104:12;22129:119;22216:6;22209:5;22205:18;22198:5;22195:29;22185:2;;22238:1;22235;22228:12;22253:125;22340:12;22333:5;22329:24;22322:5;22319:35;22309:2;;22368:1;22365;22358:12;22383:116;22469:4;22462:5;22458:16;22451:5;22448:27;22438:2;;22489:1;22486;22479:12", "language": "Solidity", "natspec": { "kind": "dev", "methods": { "balanceOf(address,uint256)": { "notice": "Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by this method do not show negative fCash balances because only unsigned integers are returned. They are represented by zero here. Use `signedBalanceOf` to get a signed return value.", "params": { "account": "account to get the id for", "id": "the ERC1155 id" }, "returns": { "_0": "Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)" } }, "balanceOfBatch(address[],uint256[])": { "notice": "Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented as zero balances in the array. ", "params": { "accounts": "array of accounts to get balances for", "ids": "array of ids to get balances for" }, "returns": { "_0": "Returns an array of unsigned balances" } }, "decodeToAssets(uint256[],uint256[])": { "notice": "Decodes ids and amounts to PortfolioAsset objects", "params": { "amounts": "amounts to transfer", "ids": "array of ERC1155 ids" }, "returns": { "_0": "array of portfolio asset objects" } }, "encodeToId(uint16,uint40,uint8)": { "notice": "Encodes parameters into an ERC1155 id", "params": { "assetType": "id of the asset type", "currencyId": "currency id of the asset", "maturity": "timestamp of the maturity" }, "returns": { "_0": "ERC1155 id" } }, "getLibInfo()": { "notice": "Get a list of deployed library addresses (sorted by library name)" }, "isApprovedForAll(address,address)": { "notice": "Checks approval state for an account, will first check if global transfer operator is enabled before falling through to an account specific transfer operator.", "params": { "account": "address of the account", "operator": "address of the operator" }, "returns": { "_0": "true for approved" } }, "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)": { "details": "emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled", "notice": "Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.", "params": { "amounts": "amounts to transfer", "data": "arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate a trading action on Notional for the `from` address", "from": "account to transfer from", "ids": "ERC1155 ids of the assets", "to": "account to transfer to" } }, "safeTransferFrom(address,address,uint256,uint256,bytes)": { "details": "emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled", "notice": "Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.", "params": { "amount": "amount to transfer", "data": "arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate a trading action on Notional for the `from` address", "from": "account to transfer from", "id": "ERC1155 id of the asset", "to": "account to transfer to" } }, "setApprovalForAll(address,bool)": { "details": "emit:ApprovalForAll", "notice": "Allows an account to set approval for an operator", "params": { "approved": "state of the approval", "operator": "address of the operator" } }, "signedBalanceOf(address,uint256)": { "notice": "Returns the balance of an ERC1155 id on an account.", "params": { "account": "account to get the id for", "id": "the ERC1155 id" }, "returns": { "notional": "balance of the ERC1155 id as a signed integer" } }, "signedBalanceOfBatch(address[],uint256[])": { "notice": "Returns the balance of a batch of accounts and ids.", "params": { "accounts": "array of accounts to get balances for", "ids": "array of ids to get balances for" }, "returns": { "_0": "Returns an array of signed balances" } } }, "version": 1 }, "offset": [ 683, 20316 ], "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xE7 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x735A1DC8 GT PUSH2 0x8A JUMPI DUP1 PUSH4 0xA22CB465 GT PUSH2 0x59 JUMPI DUP1 PUSH4 0xA22CB465 EQ PUSH2 0x26A JUMPI DUP1 PUSH4 0xC4C96DAE EQ PUSH2 0x28A JUMPI DUP1 PUSH4 0xE985E9C5 EQ PUSH2 0x2AD JUMPI DUP1 PUSH4 0xF242432A EQ PUSH2 0x2CD JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH4 0x735A1DC8 EQ PUSH2 0x200 JUMPI DUP1 PUSH4 0x81A86855 EQ PUSH2 0x220 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x240 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x255 JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH4 0x24A3D622 GT PUSH2 0xC6 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x16F JUMPI DUP1 PUSH4 0x2EB2C2D6 EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x3FA6B808 EQ PUSH2 0x1A6 JUMPI DUP1 PUSH4 0x4E1273F4 EQ PUSH2 0x1D3 JUMPI PUSH2 0xE7 JUMP JUMPDEST DUP1 PUSH3 0xFDD58E EQ PUSH2 0xEC JUMPI DUP1 PUSH4 0x1FFC9A7 EQ PUSH2 0x122 JUMPI DUP1 PUSH4 0xFAC8F09 EQ PUSH2 0x14F JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xF8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x107 CALLDATASIZE PUSH1 0x4 PUSH2 0x312D JUMP JUMPDEST PUSH2 0x2E0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3630 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x12E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x142 PUSH2 0x13D CALLDATASIZE PUSH1 0x4 PUSH2 0x31D8 JUMP JUMPDEST PUSH2 0x312 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3625 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x15B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x16A CALLDATASIZE PUSH1 0x4 PUSH2 0x312D JUMP JUMPDEST PUSH2 0x32C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x17B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x380 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x33F4 JUMP JUMPDEST PUSH2 0x1A4 PUSH2 0x19F CALLDATASIZE PUSH1 0x4 PUSH2 0x2FC9 JUMP JUMPDEST PUSH2 0x38F JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1B2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C6 PUSH2 0x1C1 CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x557 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x3571 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F3 PUSH2 0x1EE CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x572 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP2 SWAP1 PUSH2 0x352D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x20C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x10C PUSH2 0x21B CALLDATASIZE PUSH1 0x4 PUSH2 0x333C JUMP JUMPDEST PUSH2 0x635 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x22C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F3 PUSH2 0x23B CALLDATASIZE PUSH1 0x4 PUSH2 0x3158 JUMP JUMPDEST PUSH2 0x65A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x24C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x713 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x261 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x184 PUSH2 0x722 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x276 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1A4 PUSH2 0x285 CALLDATASIZE PUSH1 0x4 PUSH2 0x30FC JUMP JUMPDEST PUSH2 0x739 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x296 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x29F PUSH2 0x7A8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x119 SWAP3 SWAP2 SWAP1 PUSH2 0x34A7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x142 PUSH2 0x2C8 CALLDATASIZE PUSH1 0x4 PUSH2 0x2F91 JUMP JUMPDEST PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x1A4 PUSH2 0x2DB CALLDATASIZE PUSH1 0x4 PUSH2 0x3083 JUMP JUMPDEST PUSH2 0x82E JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2ED DUP5 DUP5 PUSH2 0x32C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT PUSH2 0x305 JUMPI PUSH2 0x300 DUP2 PUSH2 0xA23 JUMP JUMPDEST PUSH2 0x308 JUMP JUMPDEST PUSH1 0x0 JUMPDEST SWAP2 POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND PUSH4 0x6CDB3D13 PUSH1 0xE1 SHL EQ JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x338 DUP5 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0x343 DUP2 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x362 JUMPI PUSH2 0x35B DUP5 DUP3 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND DUP6 PUSH2 0xAE4 JUMP JUMPDEST SWAP2 POP PUSH2 0x379 JUMP JUMPDEST PUSH2 0x308 PUSH2 0x373 DUP6 DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0xB2F JUMP JUMPDEST DUP5 PUSH2 0xB58 JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH2 0x399 DUP9 DUP9 PUSH2 0xBDE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3A8 DUP9 DUP9 DUP9 DUP9 PUSH2 0xC7E JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP1 ISZERO PUSH2 0x3E1 JUMPI PUSH2 0x3BC DUP10 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x3E1 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36C0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x3EF DUP13 DUP13 DUP7 PUSH2 0xDC8 JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH2 0x402 DUP13 DUP13 DUP5 DUP5 DUP11 DUP11 DUP10 PUSH2 0xF68 JUMP JUMPDEST DUP11 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP13 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB DUP14 DUP14 DUP14 DUP14 PUSH1 0x40 MLOAD PUSH2 0x455 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x35F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x466 DUP12 PUSH2 0x1246 JUMP JUMPDEST ISZERO PUSH2 0x549 JUMPI PUSH32 0xBC197C819B3E337A6F9652DD10BECD7EEF83032AF3B9D958D3D42F6694146621 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND DUP12 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH4 0xBC197C81 CALLER DUP16 DUP15 DUP15 DUP15 DUP15 DUP15 DUP15 PUSH1 0x40 MLOAD DUP10 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D0 SWAP9 SWAP8 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3408 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x4FE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x522 SWAP2 SWAP1 PUSH2 0x31F4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND EQ PUSH2 0x549 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x37B9 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0x567 DUP7 DUP7 DUP7 DUP7 PUSH2 0xC7E JUMP JUMPDEST POP SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 DUP3 EQ PUSH2 0x580 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x598 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x5C2 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH2 0x60C DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x5DF JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x5F4 SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x600 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x2E0 JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x618 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x5C8 JUMP JUMPDEST POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x650 DUP5 PUSH2 0xFFFF AND DUP5 PUSH5 0xFFFFFFFFFF AND DUP5 PUSH1 0xFF AND PUSH2 0x124C JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 DUP4 DUP3 EQ PUSH2 0x668 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x680 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x6AA JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH2 0x6F4 DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0x6C7 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD PUSH1 0x20 DUP2 ADD SWAP1 PUSH2 0x6DC SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST DUP7 DUP7 DUP5 DUP2 DUP2 LT PUSH2 0x6E8 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x32C JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x700 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x6B0 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST CALLER PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x7 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 AND DUP1 DUP6 MSTORE SWAP3 MSTORE SWAP2 DUP3 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND DUP6 ISZERO ISZERO OR SWAP1 SSTORE SWAP1 MLOAD SWAP1 SWAP2 SWAP1 PUSH32 0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31 SWAP1 PUSH2 0x79C SWAP1 DUP6 SWAP1 PUSH2 0x3625 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH20 0x0 PUSH20 0x0 SWAP1 SWAP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x7FF JUMPI POP PUSH1 0x1 PUSH2 0x30C JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x7 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SWAP4 SWAP1 SWAP5 AND DUP3 MSTORE SWAP2 SWAP1 SWAP2 MSTORE KECCAK256 SLOAD PUSH1 0xFF AND SWAP1 JUMP JUMPDEST PUSH2 0x838 DUP7 DUP7 PUSH2 0xBDE JUMP JUMPDEST PUSH2 0x840 PUSH2 0x2E31 JUMP JUMPDEST DUP4 ISZERO PUSH2 0x936 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 DUP1 DUP3 MSTORE DUP2 DUP4 ADD SWAP1 SWAP3 MSTORE PUSH1 0x0 SWAP2 DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x865 PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x85D JUMPI SWAP1 POP POP SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x889 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x89C DUP8 PUSH2 0x12A7 JUMP JUMPDEST PUSH1 0x40 DUP5 ADD MSTORE PUSH1 0x20 DUP4 ADD MSTORE DUP2 MSTORE PUSH2 0x8B1 DUP7 PUSH2 0x12C4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE DUP1 MLOAD PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x8C8 SWAP2 SWAP1 TIMESTAMP PUSH2 0x12DA JUMP JUMPDEST PUSH2 0x8D3 DUP10 DUP10 DUP5 PUSH2 0xDC8 JUMP JUMPDEST POP DUP1 SWAP4 POP POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP10 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH32 0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62 DUP11 DUP11 PUSH1 0x40 MLOAD PUSH2 0x927 SWAP3 SWAP2 SWAP1 PUSH2 0x37DF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP POP PUSH2 0x942 JUMP JUMPDEST PUSH2 0x93F DUP8 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0x94A PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0x95A DUP9 DUP9 DUP5 DUP5 DUP9 DUP9 PUSH1 0x0 PUSH2 0xF68 JUMP JUMPDEST PUSH2 0x963 DUP8 PUSH2 0x1246 JUMP JUMPDEST ISZERO PUSH2 0xA19 JUMPI PUSH1 0x40 MLOAD PUSH4 0xF23A6E61 PUSH1 0xE0 SHL DUP1 DUP3 MSTORE SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND SWAP1 PUSH4 0xF23A6E61 SWAP1 PUSH2 0x9A0 SWAP1 CALLER SWAP1 DUP14 SWAP1 DUP13 SWAP1 DUP13 SWAP1 DUP13 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x346C JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x9BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x9CE JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x9F2 SWAP2 SWAP1 PUSH2 0x31F4 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND EQ PUSH2 0xA19 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x37B9 JUMP JUMPDEST POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SLT ISZERO PUSH2 0xA32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH2 0xA3E PUSH2 0x2E31 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA48 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP4 SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP4 DUP5 MSTORE PUSH1 0x40 SWAP1 DUP2 SWAP1 KECCAK256 DUP2 MLOAD PUSH1 0xA0 DUP2 ADD DUP4 MSTORE SWAP1 SLOAD PUSH5 0xFFFFFFFFFF DUP2 AND DUP3 MSTORE PUSH6 0x10000000000 DUP2 DIV PUSH1 0xF8 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP6 DUP3 ADD SWAP6 SWAP1 SWAP6 MSTORE PUSH1 0x1 PUSH1 0x30 SHL DUP6 DIV PUSH1 0xFF AND SWAP2 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x1 PUSH1 0x38 SHL DUP5 DIV PUSH2 0xFFFF AND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x48 SHL SWAP1 SWAP4 DIV PUSH1 0x70 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP5 ADD MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xAF3 DUP6 PUSH2 0x12A7 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP DUP6 DUP4 EQ ISZERO DUP1 PUSH2 0xB09 JUMPI POP PUSH1 0x1 DUP2 EQ ISZERO JUMPDEST ISZERO PUSH2 0xB1A JUMPI PUSH1 0x0 SWAP4 POP POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH2 0xB25 DUP8 DUP5 DUP5 PUSH2 0x131E JUMP JUMPDEST SWAP4 POP POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH2 0xB3D DUP5 DUP5 PUSH2 0x1363 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 DUP2 MLOAD GT PUSH2 0xB4F JUMPI SWAP1 POP PUSH2 0x30C JUMP JUMPDEST PUSH2 0x653 DUP2 PUSH2 0x147A JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0xB67 DUP6 PUSH2 0x12A7 JUMP JUMPDEST SWAP3 POP SWAP3 POP SWAP3 POP PUSH1 0x0 JUMPDEST DUP7 MLOAD DUP2 LT ISZERO PUSH2 0xBD4 JUMPI PUSH1 0x0 DUP8 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xB87 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP5 DUP2 PUSH1 0x0 ADD MLOAD EQ DUP1 ISZERO PUSH2 0xBA7 JUMPI POP DUP4 DUP2 PUSH1 0x20 ADD MLOAD EQ JUMPDEST DUP1 ISZERO PUSH2 0xBB6 JUMPI POP DUP3 DUP2 PUSH1 0x40 ADD MLOAD EQ JUMPDEST ISZERO PUSH2 0xBCB JUMPI PUSH1 0x60 ADD MLOAD SWAP5 POP PUSH2 0x30C SWAP4 POP POP POP POP JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xB70 JUMP JUMPDEST POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO DUP1 ISZERO PUSH2 0xC08 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ISZERO ISZERO JUMPDEST DUP1 ISZERO PUSH2 0xC1D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO JUMPDEST PUSH2 0xC39 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x366C JUMP JUMPDEST CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND EQ DUP1 PUSH2 0xC55 JUMPI POP PUSH2 0xC55 DUP3 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0xC71 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36C0 JUMP JUMPDEST PUSH2 0xC7A DUP3 PUSH2 0x1638 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP5 DUP4 EQ PUSH2 0xC8E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP7 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0xCA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xCE1 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xCCE PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xCC6 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP8 DUP2 LT ISZERO PUSH2 0xDBB JUMPI DUP1 ISZERO PUSH2 0xD3B JUMPI DUP9 DUP9 PUSH1 0x1 DUP4 SUB DUP2 DUP2 LT PUSH2 0xD04 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD DUP10 DUP10 DUP4 DUP2 DUP2 LT PUSH2 0xD17 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD GT PUSH2 0xD3B JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x378D JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xD49 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0xD6E DUP11 DUP11 DUP5 DUP2 DUP2 LT PUSH2 0xD62 JUMPI INVALID JUMPDEST SWAP1 POP PUSH1 0x20 MUL ADD CALLDATALOAD PUSH2 0x12A7 JUMP JUMPDEST PUSH1 0x40 DUP5 ADD MSTORE PUSH1 0x20 DUP4 ADD DUP2 SWAP1 MSTORE DUP2 DUP4 MSTORE PUSH2 0xD88 SWAP2 SWAP1 TIMESTAMP PUSH2 0x12DA JUMP JUMPDEST DUP8 DUP8 DUP4 DUP2 DUP2 LT PUSH2 0xD94 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL SWAP2 SWAP1 SWAP2 ADD CALLDATALOAD PUSH1 0x60 DUP4 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SGT ISZERO SWAP1 POP PUSH2 0xDB2 JUMPI PUSH1 0x1 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0xCE7 JUMP JUMPDEST POP SWAP8 SWAP1 SWAP7 POP SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH2 0xDD0 PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0xDD8 PUSH2 0x2E31 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xDE3 DUP6 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0xDEE DUP2 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0xE7F JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xE2C SWAP1 DUP9 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x34C1 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE44 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xE58 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xE7C SWAP2 SWAP1 PUSH2 0x32A6 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0xE8A DUP6 DUP3 DUP7 PUSH2 0x16D7 JUMP JUMPDEST SWAP1 POP PUSH2 0xE96 DUP2 DUP7 PUSH2 0x1758 JUMP JUMPDEST PUSH2 0xE9F DUP5 PUSH2 0x185C JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEAA DUP8 PUSH2 0xA36 JUMP JUMPDEST SWAP1 POP PUSH2 0xEB5 DUP2 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0xF46 JUMPI PUSH1 0x40 MLOAD PUSH4 0x37B5FC21 PUSH1 0xE1 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6F6BF842 SWAP1 PUSH2 0xEF3 SWAP1 DUP11 SWAP1 DUP6 SWAP1 PUSH1 0x4 ADD PUSH2 0x34C1 JUMP JUMPDEST PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF0B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xF1F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0xF43 SWAP2 SWAP1 PUSH2 0x32A6 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH2 0xF51 DUP8 DUP3 DUP8 PUSH2 0x16D7 JUMP JUMPDEST SWAP1 POP PUSH2 0xF5D DUP2 DUP9 PUSH2 0x1758 JUMP JUMPDEST SWAP7 SWAP1 SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP5 LT PUSH2 0xF85 JUMPI PUSH1 0x0 PUSH2 0xF81 DUP6 DUP8 ADD DUP8 PUSH2 0x31C0 JUMP JUMPDEST SWAP3 POP POP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x66890643 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0xFB4 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x541F527 PUSH1 0xE4 SHL EQ JUMPDEST DUP1 PUSH2 0xFCF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x37351953 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0xFEA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x276B64B PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x10FA JUMPI PUSH2 0xFFD PUSH1 0x24 PUSH1 0x4 DUP7 DUP9 PUSH2 0x37ED JUMP JUMPDEST DUP2 ADD SWAP1 PUSH2 0x100A SWAP2 SWAP1 PUSH2 0x2F75 JUMP JUMPDEST SWAP1 POP DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ DUP1 PUSH2 0x104D JUMPI POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ DUP1 ISZERO PUSH2 0x104D JUMPI POP PUSH2 0x104D DUP9 CALLER PUSH2 0x7D6 JUMP JUMPDEST PUSH2 0x1069 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x3695 JUMP JUMPDEST PUSH1 0x0 DUP1 ADDRESS PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND CALLVALUE DUP9 DUP9 PUSH1 0x40 MLOAD PUSH2 0x1087 SWAP3 SWAP2 SWAP1 PUSH2 0x33E4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP8 GAS CALL SWAP3 POP POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x10C4 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x10C9 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x10D8 DUP3 PUSH2 0x18AB JUMP JUMPDEST SWAP1 PUSH2 0x10F6 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP2 SWAP1 PUSH2 0x3639 JUMP JUMPDEST POP POP POP JUMPDEST DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO DUP1 ISZERO PUSH2 0x1129 JUMPI POP PUSH1 0x20 DUP8 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x1196 JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x1165 SWAP1 DUP13 SWAP1 PUSH1 0x4 ADD PUSH2 0x33F4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x117D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1191 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST DUP3 DUP1 ISZERO PUSH2 0x11B5 JUMPI POP DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND EQ ISZERO JUMPDEST DUP1 ISZERO PUSH2 0x11CE JUMPI POP PUSH1 0x20 DUP7 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND ISZERO ISZERO JUMPDEST ISZERO PUSH2 0x123B JUMPI PUSH1 0x40 MLOAD PUSH4 0x6CCC642F PUSH1 0xE0 SHL DUP2 MSTORE PUSH20 0x0 SWAP1 PUSH4 0x6CCC642F SWAP1 PUSH2 0x120A SWAP1 DUP12 SWAP1 PUSH1 0x4 ADD PUSH2 0x33F4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1222 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1236 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP JUMPDEST POP POP POP POP POP POP POP POP POP JUMP JUMPDEST EXTCODESIZE ISZERO ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFF DUP5 GT ISZERO PUSH2 0x125D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP4 GT ISZERO PUSH2 0x126F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x8 DUP3 GT ISZERO PUSH2 0x127D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH8 0xFFFF000000000000 PUSH1 0x30 DUP5 SWAP1 SHL AND PUSH6 0xFFFFFFFFFF00 PUSH1 0x8 DUP5 SWAP1 SHL AND OR PUSH1 0xFF DUP3 AND OR SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH2 0xFFFF PUSH1 0x30 DUP3 SWAP1 SHR AND SWAP2 PUSH5 0xFFFFFFFFFF PUSH1 0x8 DUP4 SWAP1 SHR AND SWAP2 PUSH1 0xFF AND SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL SUB DUP3 GT ISZERO PUSH2 0xA32 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x12F0 PUSH2 0x12E6 DUP5 PUSH2 0x190B JUMP JUMPDEST PUSH1 0xFF AND DUP4 DUP4 PUSH2 0x1921 JUMP JUMPDEST PUSH2 0x130C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x3763 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x1 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1329 PUSH2 0x198A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP2 DUP3 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP8 DUP4 MSTORE DUP4 MSTORE DUP1 DUP3 KECCAK256 DUP7 DUP4 MSTORE SWAP1 SWAP3 MSTORE KECCAK256 SLOAD PUSH1 0xF SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x10 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x1376 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1380 PUSH2 0x1997 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP PUSH1 0xFF DUP6 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x13B4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x13EE JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x13DB PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x13D3 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP6 PUSH1 0xFF AND DUP2 LT ISZERO PUSH2 0x62B JUMPI PUSH1 0x0 DUP4 DUP3 PUSH1 0x10 DUP2 LT PUSH2 0x140D JUMPI INVALID JUMPDEST ADD SWAP1 POP PUSH1 0x0 DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x141E JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD DUP4 SLOAD PUSH2 0xFFFF DUP2 AND DUP3 MSTORE PUSH5 0xFFFFFFFFFF PUSH3 0x10000 DUP3 DIV AND SWAP3 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0xFF PUSH1 0x1 PUSH1 0x38 SHL DUP4 DIV AND PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0x40 SHL SWAP1 SWAP2 DIV PUSH1 0xA SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP2 SWAP1 SWAP2 MSTORE POP PUSH1 0x1 ADD PUSH2 0x13F4 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x1494 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x14BE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY ADD SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x151B JUMPI PUSH1 0x0 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x14DA JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH2 0x14FB DUP2 PUSH1 0x0 ADD MLOAD DUP3 PUSH1 0x20 ADD MLOAD DUP4 PUSH1 0x40 ADD MLOAD PUSH2 0x124C JUMP JUMPDEST DUP4 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x1507 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE POP PUSH1 0x1 ADD PUSH2 0x14C4 JUMP JUMPDEST POP PUSH1 0x1 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x1632 JUMPI DUP1 JUMPDEST PUSH1 0x0 DUP2 GT DUP1 ISZERO PUSH2 0x1561 JUMPI POP DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x1540 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x1557 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x1629 JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x1572 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP4 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x1589 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15A0 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP6 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x15B3 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP3 DUP2 MSTORE POP DUP3 DUP2 MSTORE POP POP POP DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x15D0 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP6 PUSH1 0x1 DUP4 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15E7 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP7 PUSH1 0x1 DUP5 SUB DUP2 MLOAD DUP2 LT PUSH2 0x15FE JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP8 DUP5 DUP2 MLOAD DUP2 LT PUSH2 0x1611 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD SWAP2 SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x0 NOT ADD PUSH2 0x1529 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x151F JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH2 0x164B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND ADDRESS EQ ISZERO PUSH2 0x1661 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x166C DUP3 PUSH2 0x19A4 JUMP JUMPDEST POP POP POP POP PUSH2 0xFFFF AND SWAP1 POP DUP1 PUSH1 0x0 EQ PUSH2 0xC7A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 TIMESTAMP PUSH2 0x168F DUP4 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x16B0 JUMPI PUSH2 0x169D DUP2 PUSH2 0x1A0D JUMP JUMPDEST DUP4 MLOAD PUSH5 0xFFFFFFFFFF AND LT SWAP2 POP PUSH2 0x327 SWAP1 POP JUMP JUMPDEST DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND ISZERO DUP1 ISZERO SWAP1 PUSH2 0x16CF JUMPI POP DUP3 MLOAD PUSH5 0xFFFFFFFFFF AND DUP2 LT ISZERO JUMPDEST SWAP2 POP POP PUSH2 0x327 JUMP JUMPDEST PUSH2 0x16DF PUSH2 0x2E31 JUMP JUMPDEST PUSH2 0x16E8 DUP4 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0x1705 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x370D JUMP JUMPDEST PUSH2 0x170E DUP4 PUSH2 0xAD7 JUMP JUMPDEST ISZERO PUSH2 0x1723 JUMPI PUSH2 0x171E DUP5 DUP5 DUP5 PUSH2 0x1A2E JUMP JUMPDEST PUSH2 0x1750 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1735 DUP6 DUP6 PUSH1 0x40 ADD MLOAD DUP6 MLOAD PUSH2 0x1AF6 JUMP JUMPDEST SWAP1 POP PUSH2 0x1741 DUP2 DUP5 PUSH2 0x1B88 JUMP JUMPDEST PUSH2 0x174E DUP5 DUP7 DUP4 PUSH1 0x0 PUSH2 0x1BE6 JUMP JUMPDEST POP JUMPDEST POP SWAP1 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1762 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP4 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP9 MLOAD DUP2 SLOAD SWAP4 DUP11 ADD MLOAD DUP4 DUP12 ADD MLOAD PUSH1 0x60 DUP13 ADD MLOAD PUSH1 0x80 DUP14 ADD MLOAD PUSH1 0x70 SHR PUSH1 0x1 PUSH1 0x48 SHL MUL PUSH27 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000 NOT PUSH2 0xFFFF SWAP1 SWAP3 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH9 0xFFFF00000000000000 NOT PUSH1 0xFF SWAP5 SWAP1 SWAP5 AND PUSH1 0x1 PUSH1 0x30 SHL MUL PUSH7 0xFF000000000000 NOT PUSH1 0xF8 SWAP7 SWAP1 SWAP7 SHR PUSH6 0x10000000000 MUL PUSH6 0xFF0000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP9 AND PUSH5 0xFFFFFFFFFF NOT SWAP1 SWAP12 AND SWAP11 SWAP1 SWAP11 OR SWAP7 SWAP1 SWAP7 AND SWAP9 SWAP1 SWAP9 OR SWAP4 SWAP1 SWAP4 AND SWAP4 SWAP1 SWAP4 OR AND SWAP5 SWAP1 SWAP5 OR AND SWAP3 SWAP1 SWAP3 OR SWAP1 SWAP2 SSTORE MLOAD SWAP3 SWAP4 POP SWAP1 SWAP2 PUSH32 0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E SWAP2 SWAP1 LOG2 POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0xC7A JUMPI PUSH2 0x1888 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1877 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x60 ADD MLOAD PUSH2 0x1CBD JUMP JUMPDEST DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1894 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x60 ADD MSTORE PUSH1 0x1 ADD PUSH2 0x185F JUMP JUMPDEST PUSH1 0x60 PUSH1 0x44 DUP3 MLOAD LT ISZERO PUSH2 0x18F1 JUMPI POP PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE PUSH1 0x1D DUP2 MSTORE PUSH32 0x5472616E73616374696F6E2072657665727465642073696C656E746C79000000 PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x327 JUMP JUMPDEST PUSH1 0x4 DUP3 ADD SWAP2 POP DUP2 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x30C SWAP2 SWAP1 PUSH2 0x3210 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1917 DUP4 PUSH2 0x1CCB JUMP JUMPDEST PUSH1 0xFF AND SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x192D DUP4 PUSH2 0x1CE8 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1944 PUSH2 0x193D DUP8 PUSH2 0x1D04 JUMP JUMPDEST DUP4 SWAP1 PUSH2 0x1DA8 JUMP JUMPDEST SWAP1 POP DUP1 DUP6 GT ISZERO PUSH2 0x1959 JUMPI PUSH1 0x0 SWAP3 POP POP POP PUSH2 0x653 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1965 DUP6 DUP8 PUSH2 0x1E02 JUMP JUMPDEST SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xF4240 DUP3 PUSH1 0x13 DUP2 GT ISZERO PUSH2 0x1983 JUMPI INVALID JUMPDEST ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xC PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xD PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x19B5 PUSH2 0x1F0D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP8 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP8 SWAP1 SWAP8 MSTORE POP POP PUSH1 0x40 SWAP1 SWAP5 KECCAK256 SLOAD PUSH2 0xFFFF DUP2 AND SWAP6 PUSH4 0xFFFFFFFF PUSH3 0x10000 DUP4 DIV DUP2 AND SWAP7 POP PUSH1 0x1 PUSH1 0x30 SHL DUP4 DIV AND SWAP5 POP PUSH1 0xFF PUSH1 0x1 PUSH1 0x50 SHL DUP4 DIV AND SWAP4 POP PUSH1 0x1 PUSH1 0x58 SHL SWAP1 SWAP2 DIV PUSH1 0xD8 SHL SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x15180 DUP3 LT ISZERO PUSH2 0x1A1F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x15180 DUP3 JUMPDEST MOD SWAP1 SWAP2 SUB SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1A37 DUP3 PUSH2 0xAD7 JUMP JUMPDEST PUSH2 0x1A40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x0 JUMPDEST DUP3 MLOAD DUP2 LT ISZERO PUSH2 0x1AEF JUMPI PUSH1 0x0 DUP4 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1A63 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x1A80 JUMPI POP PUSH2 0x1AE7 JUMP JUMPDEST DUP1 MLOAD DUP4 EQ PUSH2 0x1A8D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP2 ADD MLOAD PUSH1 0x1 EQ PUSH2 0x1A9E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1AC0 DUP8 DUP6 DUP5 PUSH1 0x20 ADD MLOAD DUP10 PUSH1 0x0 ADD MLOAD PUSH5 0xFFFFFFFFFF AND DUP7 PUSH1 0x60 ADD MLOAD PUSH2 0x1F1A JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x1AE4 JUMPI PUSH1 0x20 DUP7 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE JUMPDEST POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x1A4C JUMP JUMPDEST POP POP POP POP POP JUMP JUMPDEST PUSH2 0x1AFE PUSH2 0x2E9F JUMP JUMPDEST PUSH2 0x1B06 PUSH2 0x2E9F JUMP JUMPDEST PUSH1 0xFF DUP5 AND PUSH2 0x1B15 JUMPI SWAP1 POP PUSH2 0x653 JUMP JUMPDEST PUSH2 0x1B1F DUP6 DUP6 PUSH2 0xB2F JUMP JUMPDEST DUP2 MSTORE PUSH1 0xFF DUP5 AND PUSH1 0x60 DUP3 ADD MSTORE DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x1B40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1B7A JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x1B67 PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x1B5F JUMPI SWAP1 POP JUMPDEST POP PUSH1 0x20 DUP3 ADD MSTORE SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x130C JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1BA2 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x1BBF JUMPI POP PUSH2 0x1BDE JUMP JUMPDEST PUSH2 0x1BDC DUP5 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x20 ADD MLOAD DUP5 PUSH1 0x40 ADD MLOAD DUP6 PUSH1 0x60 ADD MLOAD PUSH2 0x2087 JUMP JUMPDEST POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x1B8B JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 PUSH2 0x1BF5 DUP7 DUP9 PUSH2 0x218C JUMP JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP13 MSTORE SWAP3 SWAP7 POP SWAP1 SWAP5 POP SWAP3 POP SWAP1 POP PUSH2 0x1C12 DUP9 PUSH2 0x1683 JUMP JUMPDEST ISZERO PUSH2 0x1C1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP3 AND PUSH1 0x40 DUP10 ADD MSTORE DUP5 PUSH2 0x1C3B JUMPI PUSH1 0x7 PUSH1 0xFF DUP4 AND GT ISZERO PUSH2 0x1C3B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 ISZERO PUSH2 0x1C5E JUMPI PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0xF8 SHL OR PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND SWAP1 MSTORE PUSH2 0x1C6D JUMP JUMPDEST PUSH1 0x20 DUP9 ADD DUP1 MLOAD PUSH1 0x7F PUSH1 0xF9 SHL AND SWAP1 MSTORE JUMPDEST PUSH2 0x1C7A DUP9 PUSH1 0x80 ADD MLOAD PUSH2 0x23CB JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP10 ADD MSTORE PUSH1 0x0 JUMPDEST DUP4 ISZERO PUSH2 0x123B JUMPI PUSH1 0xF0 DUP5 SWAP1 SHR DUP2 DUP2 EQ PUSH2 0x1CAF JUMPI PUSH2 0x1CAF DUP11 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFF SHL PUSH2 0x2446 JUMP JUMPDEST PUSH1 0x10 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 POP PUSH2 0x1C8C JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C PUSH1 0x0 NOT DUP4 PUSH2 0x2645 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1CD6 PUSH2 0x2693 JUMP JUMPDEST PUSH1 0x0 SWAP4 DUP5 MSTORE PUSH1 0x20 MSTORE POP POP PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x76A700 DUP3 LT ISZERO PUSH2 0x1CFA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH3 0x76A700 DUP3 PUSH2 0x1A25 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 EQ ISZERO PUSH2 0x1D19 JUMPI POP PUSH3 0x76A700 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x2 EQ ISZERO PUSH2 0x1D2C JUMPI POP PUSH3 0xED4E00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x3 EQ ISZERO PUSH2 0x1D40 JUMPI POP PUSH4 0x1DA9C00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x4 EQ ISZERO PUSH2 0x1D54 JUMPI POP PUSH4 0x3B53800 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x5 EQ ISZERO PUSH2 0x1D68 JUMPI POP PUSH4 0x9450C00 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x6 EQ ISZERO PUSH2 0x1D7C JUMPI POP PUSH4 0x128A1800 PUSH2 0x327 JUMP JUMPDEST DUP2 PUSH1 0x7 EQ ISZERO PUSH2 0x1D90 JUMPI POP PUSH4 0x25143000 PUSH2 0x327 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x36E6 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x653 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH2 0x1E10 DUP6 PUSH2 0x1A0D JUMP JUMPDEST SWAP1 POP PUSH3 0x15180 DUP5 MOD ISZERO PUSH2 0x1E2A JUMPI PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP PUSH2 0x1F06 JUMP JUMPDEST DUP4 DUP2 LT PUSH2 0x1E3E JUMPI PUSH1 0x0 DUP1 SWAP3 POP SWAP3 POP POP PUSH2 0x1F06 JUMP JUMPDEST PUSH3 0x15180 DUP2 DUP6 SUB DIV PUSH1 0x5A DUP2 GT PUSH2 0x1E5B JUMPI SWAP3 POP PUSH1 0x1 SWAP2 POP PUSH2 0x1F06 SWAP1 POP JUMP JUMPDEST PUSH2 0x168 DUP2 GT PUSH2 0x1E9A JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x7E900 DUP5 MOD DIV DUP3 ADD PUSH1 0x59 NOT ADD SWAP1 POP PUSH1 0x6 DUP2 DIV PUSH1 0x5A ADD PUSH1 0x6 DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST MOD PUSH1 0x0 EQ SWAP5 POP SWAP5 POP POP POP POP PUSH2 0x1F06 JUMP JUMPDEST PUSH2 0x870 DUP2 GT PUSH2 0x1ECA JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x278D00 DUP5 MOD DIV DUP3 ADD PUSH2 0x167 NOT ADD SWAP1 POP PUSH1 0x1E DUP2 DIV PUSH1 0x87 ADD PUSH1 0x1E DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST PUSH2 0x1DE2 DUP2 GT PUSH2 0x1EFA JUMPI PUSH1 0x0 PUSH3 0x15180 PUSH3 0x76A700 DUP5 MOD DIV DUP3 ADD PUSH2 0x86F NOT ADD SWAP1 POP PUSH1 0x5A DUP2 DIV PUSH1 0xC3 ADD PUSH1 0x5A DUP3 DUP2 PUSH2 0x1E8A JUMPI INVALID JUMPDEST PUSH2 0x100 PUSH1 0x0 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x2 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1F27 DUP8 DUP8 PUSH2 0x26A0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1F33 PUSH2 0x198A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP12 DUP5 MSTORE DUP3 MSTORE DUP1 DUP4 KECCAK256 DUP11 DUP5 MSTORE SWAP1 SWAP2 MSTORE DUP2 KECCAK256 SWAP2 SWAP3 POP DUP1 PUSH2 0x1F6A DUP9 DUP11 PUSH2 0x1E02 JUMP JUMPDEST SWAP2 POP SWAP2 POP DUP1 PUSH2 0x1F78 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1F82 DUP6 DUP4 PUSH2 0x26D5 JUMP JUMPDEST ISZERO PUSH2 0x2011 JUMPI DUP3 SLOAD PUSH1 0x0 SWAP1 PUSH2 0x1F9E SWAP1 DUP10 SWAP1 PUSH1 0xF SWAP1 DUP2 SIGNEXTEND SWAP1 SIGNEXTEND PUSH2 0x2705 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x1FBF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB DUP2 SGT ISZERO JUMPDEST PUSH2 0x1FC8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB PUSH1 0xF DUP4 SWAP1 SIGNEXTEND AND OR DUP5 SSTORE DUP1 PUSH2 0x1FF9 JUMPI PUSH2 0x1FF6 DUP7 DUP5 PUSH1 0x0 PUSH2 0x271B JUMP JUMPDEST SWAP6 POP JUMPDEST PUSH2 0x2004 DUP13 DUP13 DUP9 PUSH2 0x2766 JUMP JUMPDEST SWAP6 POP PUSH2 0x207E SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP7 ISZERO PUSH2 0x2075 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB NOT DUP8 SLT DUP1 ISZERO SWAP1 PUSH2 0x2036 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x7F SHL SUB DUP8 SGT ISZERO JUMPDEST PUSH2 0x203F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB PUSH1 0xF DUP10 SWAP1 SIGNEXTEND AND OR DUP4 SSTORE PUSH2 0x2068 DUP6 DUP4 PUSH1 0x1 PUSH2 0x271B JUMP JUMPDEST SWAP5 POP PUSH2 0x2075 DUP12 DUP12 DUP8 PUSH2 0x2766 JUMP JUMPDEST DUP7 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST DUP5 MLOAD PUSH2 0x2096 SWAP1 DUP6 DUP6 DUP6 DUP6 PUSH2 0x27C0 JUMP JUMPDEST ISZERO PUSH2 0x20A0 JUMPI PUSH2 0x1AEF JUMP JUMPDEST PUSH1 0x40 DUP6 ADD MLOAD ISZERO PUSH2 0x20CD JUMPI PUSH1 0x0 PUSH2 0x20BD DUP7 PUSH1 0x20 ADD MLOAD DUP7 DUP7 DUP7 DUP7 PUSH2 0x27C0 JUMP JUMPDEST SWAP1 POP DUP1 ISZERO PUSH2 0x20CB JUMPI POP PUSH2 0x1AEF JUMP JUMPDEST POP JUMPDEST PUSH2 0x20D6 DUP3 PUSH2 0x28D9 JUMP JUMPDEST ISZERO PUSH2 0x20E9 JUMPI PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x20E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x2110 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP2 SGT ISZERO JUMPDEST PUSH2 0x2119 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP5 PUSH1 0x20 ADD MLOAD MLOAD DUP6 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x213D JUMPI PUSH2 0x2137 DUP6 PUSH1 0x20 ADD MLOAD PUSH2 0x28EF JUMP JUMPDEST PUSH1 0x20 DUP7 ADD MSTORE JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD DUP2 MLOAD DUP2 LT PUSH2 0x2153 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD DUP2 ADD MLOAD SWAP6 DUP7 MSTORE DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE PUSH1 0x40 DUP1 DUP6 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x60 DUP5 ADD MSTORE PUSH1 0x0 PUSH1 0xA0 SWAP1 SWAP4 ADD SWAP3 SWAP1 SWAP3 MSTORE POP ADD DUP1 MLOAD PUSH1 0x1 ADD SWAP1 MSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 DUP1 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x221D JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x21B2 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x21C8 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21D8 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x21E3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21F5 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2205 JUMPI POP PUSH1 0x60 DUP2 ADD MLOAD ISZERO JUMPDEST ISZERO PUSH2 0x2214 JUMPI PUSH2 0x2214 DUP12 DUP4 PUSH2 0x29A7 JUMP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2196 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST DUP10 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x22C0 JUMPI PUSH1 0x0 DUP11 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x223D JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2254 JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2264 JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x2278 JUMPI PUSH1 0x80 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 SSTORE PUSH2 0x22B7 JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x228A JUMPI INVALID JUMPDEST EQ ISZERO PUSH2 0x22A3 JUMPI PUSH1 0x80 DUP2 ADD MLOAD DUP1 PUSH2 0x22A0 DUP4 DUP3 PUSH2 0x2AF6 JUMP JUMPDEST POP POP JUMPDEST PUSH2 0x22AF DUP2 DUP7 DUP7 DUP7 PUSH2 0x2C27 JUMP JUMPDEST SWAP2 SWAP7 POP SWAP5 POP SWAP3 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2221 JUMP JUMPDEST POP PUSH1 0x60 DUP10 ADD MLOAD PUSH1 0x0 PUSH2 0x22D0 PUSH2 0x1997 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP12 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP3 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SWAP2 SWAP3 POP JUMPDEST DUP13 PUSH1 0x20 ADD MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x239A JUMPI PUSH1 0x0 DUP14 PUSH1 0x20 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x230B JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP1 PUSH1 0x60 ADD MLOAD PUSH1 0x0 EQ ISZERO PUSH2 0x2328 JUMPI POP PUSH2 0x2392 JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x233A JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2358 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2355 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x2361 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x236D DUP2 DUP10 DUP10 DUP10 PUSH2 0x2C27 JUMP JUMPDEST SWAP2 SWAP10 POP SWAP8 POP SWAP6 POP PUSH2 0x238A DUP2 DUP5 DUP8 PUSH1 0x10 DUP2 LT PUSH2 0x2384 JUMPI INVALID JUMPDEST ADD PUSH2 0x2AF6 JUMP JUMPDEST PUSH1 0x1 DUP6 ADD SWAP5 POP POP JUMPDEST PUSH1 0x1 ADD PUSH2 0x22EC JUMP JUMPDEST POP PUSH1 0x10 DUP4 GT ISZERO DUP1 ISZERO PUSH2 0x23B1 JUMPI POP PUSH5 0xFFFFFFFFFF DUP5 GT ISZERO JUMPDEST PUSH2 0x23BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP SWAP4 SWAP11 SWAP3 SWAP10 POP SWAP8 POP SWAP6 POP SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000 DUP4 AND DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x243D JUMPI PUSH1 0x1 PUSH1 0xFE SHL DUP3 DUP2 AND EQ ISZERO PUSH2 0x2427 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND DUP2 SHR SWAP3 SWAP1 SWAP3 OR SWAP2 PUSH1 0x10 ADD JUMPDEST PUSH1 0x10 DUP3 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP2 POP PUSH2 0x23F3 JUMP JUMPDEST POP SWAP1 SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP3 PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2458 JUMPI POP PUSH2 0x3FFF DUP4 GT ISZERO JUMPDEST PUSH2 0x2461 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 DUP1 ISZERO PUSH2 0x2475 JUMPI POP DUP3 DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0xFFFF AND EQ JUMPDEST ISZERO PUSH2 0x247F JUMPI PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x80 DUP5 ADD MLOAD PUSH1 0x0 SWAP1 DUP2 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP3 AND ISZERO PUSH2 0x25FA JUMPI PUSH1 0xF0 DUP3 SWAP1 SHR PUSH2 0x3FFF AND DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x24AE JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x24E6 JUMPI POP PUSH1 0x80 DUP8 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP7 AND PUSH1 0x10 SWAP1 SWAP4 MUL SWAP3 SWAP1 SWAP3 SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 MSTORE POP PUSH2 0x1632 SWAP1 POP JUMP JUMPDEST DUP7 DUP2 EQ DUP1 ISZERO PUSH2 0x24F3 JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x2548 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP6 AND NOT SWAP3 SWAP1 SWAP3 AND SWAP2 PUSH1 0x3 PUSH1 0xFE SHL DUP4 AND PUSH2 0x2526 JUMPI PUSH1 0x10 DUP4 PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND SWAP1 SHL SWAP3 POP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x1632 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x2554 JUMPI POP DUP6 JUMPDEST ISZERO PUSH2 0x25AE JUMPI PUSH1 0x80 DUP9 DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP11 SWAP1 SHL DUP9 OR DUP2 AND PUSH1 0x10 DUP7 MUL SHR SWAP7 SWAP1 SWAP7 OR SWAP6 SWAP2 SHL AND ISZERO PUSH2 0x2588 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT SWAP2 DUP3 AND PUSH1 0x1 SWAP2 SWAP1 SWAP2 ADD PUSH1 0x10 MUL SHR SWAP2 SWAP1 SWAP2 OR AND PUSH1 0x80 DUP6 ADD MSTORE PUSH2 0x1632 JUMP JUMPDEST DUP7 DUP2 GT DUP1 ISZERO PUSH2 0x25BB JUMPI POP DUP6 ISZERO JUMPDEST ISZERO PUSH2 0x25C9 JUMPI POP POP POP POP PUSH2 0x1632 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT DUP3 AND PUSH1 0x10 DUP3 DUP2 MUL SWAP2 SWAP1 SWAP2 SHR SWAP4 SWAP1 SWAP4 OR SWAP3 SWAP2 SWAP1 SWAP2 SHL PUSH1 0x1 PUSH1 0x1 PUSH1 0x80 SHL SUB NOT AND SWAP1 PUSH1 0x1 ADD PUSH2 0x2489 JUMP JUMPDEST DUP5 PUSH2 0x2607 JUMPI POP POP POP PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x9 DUP2 LT PUSH2 0x2614 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xF0 SHL SUB NOT PUSH1 0xF0 DUP8 SWAP1 SHL DUP6 OR AND PUSH1 0x10 SWAP1 SWAP2 MUL SHR SWAP2 SWAP1 SWAP2 OR PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0x80 DUP7 ADD MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 DUP2 MUL PUSH1 0x0 NOT DUP4 EQ ISZERO PUSH2 0x2675 JUMPI DUP2 ISZERO DUP1 PUSH2 0x2667 JUMPI POP DUP3 DUP3 DUP3 DUP2 PUSH2 0x2664 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x2670 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30C JUMP JUMPDEST DUP3 ISZERO DUP1 PUSH2 0x268A JUMPI POP DUP2 DUP4 DUP3 DUP2 PUSH2 0x2687 JUMPI INVALID JUMPDEST SDIV EQ JUMPDEST PUSH2 0x30C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0x9 PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x26AB PUSH2 0x2C8A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP2 DUP3 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 DUP7 DUP4 MSTORE SWAP1 SWAP3 MSTORE KECCAK256 SLOAD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 LT ISZERO DUP1 ISZERO PUSH2 0x26EA JUMPI POP PUSH2 0x100 DUP3 GT ISZERO JUMPDEST PUSH2 0x26F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x0 NOT ADD SHL PUSH1 0x1 PUSH1 0xFF SHL SWAP1 DUP2 AND EQ SWAP1 JUMP JUMPDEST DUP2 DUP2 ADD DUP3 DUP2 SLT ISZERO PUSH1 0x0 DUP4 SLT ISZERO EQ PUSH2 0x30C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP4 LT ISZERO DUP1 ISZERO PUSH2 0x2730 JUMPI POP PUSH2 0x100 DUP4 GT ISZERO JUMPDEST PUSH2 0x2739 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 ISZERO PUSH2 0x2752 JUMPI POP PUSH1 0x1 PUSH1 0xFF SHL PUSH1 0x0 NOT DUP4 ADD SHR DUP4 OR PUSH2 0x653 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0xFF SHL PUSH1 0x0 NOT DUP4 ADD SHR NOT DUP4 AND PUSH2 0x653 JUMP JUMPDEST PUSH1 0x14 PUSH2 0x2771 DUP3 PUSH2 0x2C97 JUMP JUMPDEST GT ISZERO PUSH2 0x278F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D8 SWAP1 PUSH2 0x373A JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2799 PUSH2 0x2C8A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 SWAP5 DUP6 MSTORE PUSH1 0x40 DUP1 DUP3 KECCAK256 SWAP5 DUP3 MSTORE SWAP4 SWAP1 SWAP5 MSTORE POP SWAP2 KECCAK256 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST DUP7 MLOAD DUP2 LT ISZERO PUSH2 0x28CC JUMPI PUSH1 0x0 DUP8 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x27DB JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP5 DUP2 PUSH1 0x40 ADD MLOAD EQ ISZERO DUP1 PUSH2 0x27F9 JUMPI POP DUP1 MLOAD DUP8 EQ ISZERO JUMPDEST DUP1 PUSH2 0x2808 JUMPI POP DUP6 DUP2 PUSH1 0x20 ADD MLOAD EQ ISZERO JUMPDEST ISZERO PUSH2 0x2813 JUMPI POP PUSH2 0x28C4 JUMP JUMPDEST PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2825 JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2843 JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2840 JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x284C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP2 ADD MLOAD PUSH1 0x0 SWAP1 PUSH2 0x285E SWAP1 DUP7 PUSH2 0x2705 JUMP JUMPDEST SWAP1 POP PUSH2 0x2869 DUP7 PUSH2 0x28D9 JUMP JUMPDEST ISZERO PUSH2 0x287C JUMPI PUSH1 0x0 DUP2 SLT ISZERO PUSH2 0x287C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT DUP2 SLT DUP1 ISZERO SWAP1 PUSH2 0x28A3 JUMPI POP PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF DUP2 SGT ISZERO JUMPDEST PUSH2 0x28AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP1 SWAP2 ADD DUP2 SWAP1 MSTORE SWAP2 POP PUSH2 0x207E SWAP1 POP JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x27C4 JUMP JUMPDEST POP PUSH1 0x0 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 LT DUP1 ISZERO SWAP1 PUSH2 0x30C JUMPI POP POP PUSH1 0x8 LT ISZERO SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 MLOAD PUSH1 0x0 EQ PUSH2 0x2906 JUMPI DUP3 MLOAD PUSH1 0x2 MUL PUSH2 0x2909 JUMP JUMPDEST PUSH1 0x1 JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT DUP1 ISZERO PUSH2 0x2923 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x295D JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x294A PUSH2 0x2E5F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x2942 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP5 MLOAD DUP2 LT ISZERO PUSH2 0x299F JUMPI DUP5 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x2978 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x298C JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH1 0x1 ADD PUSH2 0x2963 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP2 MLOAD MLOAD DUP2 LT PUSH2 0x29B5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x60 ADD MLOAD GT PUSH2 0x29C6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x29D8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x29EF JUMPI INVALID JUMPDEST DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x29FF JUMPI INVALID JUMPDEST EQ ISZERO DUP1 ISZERO PUSH2 0x2A1D JUMPI POP PUSH1 0x3 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A1A JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST PUSH2 0x2A26 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP4 ADD DUP1 MLOAD PUSH1 0x0 NOT ADD SWAP1 MSTORE PUSH1 0x0 DUP1 DUP1 JUMPDEST DUP6 MLOAD MLOAD DUP2 LT ISZERO PUSH2 0x2A99 JUMPI PUSH1 0x0 DUP7 PUSH1 0x0 ADD MLOAD DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2A53 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP DUP3 DUP2 PUSH1 0x80 ADD MLOAD GT DUP1 ISZERO PUSH2 0x2A80 JUMPI POP PUSH1 0x2 DUP2 PUSH1 0xA0 ADD MLOAD PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A7D JUMPI INVALID JUMPDEST EQ ISZERO JUMPDEST ISZERO PUSH2 0x2A90 JUMPI DUP1 PUSH1 0x80 ADD MLOAD SWAP3 POP DUP2 SWAP4 POP JUMPDEST POP PUSH1 0x1 ADD PUSH2 0x2A37 JUMP JUMPDEST POP DUP2 DUP5 EQ ISZERO PUSH2 0x2AB2 JUMPI POP POP PUSH1 0x2 PUSH1 0xA0 SWAP2 SWAP1 SWAP2 ADD MSTORE PUSH2 0xC7A JUMP JUMPDEST PUSH1 0x0 DUP6 PUSH1 0x0 ADD MLOAD DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x2AC4 JUMPI INVALID JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MLOAD PUSH1 0x80 DUP6 DUP2 ADD DUP1 MLOAD SWAP2 DUP4 ADD DUP1 MLOAD SWAP1 SWAP2 MSTORE MSTORE PUSH1 0x1 PUSH1 0xA0 SWAP2 DUP3 ADD MSTORE PUSH1 0x2 SWAP5 ADD SWAP4 SWAP1 SWAP4 MSTORE POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x2B09 JUMPI POP DUP2 MLOAD PUSH2 0x3FFF LT ISZERO JUMPDEST PUSH2 0x2B12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2B2F JUMPI POP PUSH1 0x20 DUP3 ADD MLOAD PUSH5 0xFFFFFFFFFF LT ISZERO JUMPDEST PUSH2 0x2B38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 PUSH1 0x40 ADD MLOAD PUSH1 0x0 LT DUP1 ISZERO PUSH2 0x2B51 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x2B5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF NOT SGT DUP1 ISZERO SWAP1 PUSH2 0x2B89 JUMPI POP PUSH1 0x60 DUP3 ADD MLOAD PUSH11 0x7FFFFFFFFFFFFFFFFFFFFF SLT ISZERO JUMPDEST PUSH2 0x2B92 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 MLOAD DUP2 SLOAD PUSH1 0x20 DUP5 ADD MLOAD PUSH1 0x40 DUP6 ADD MLOAD PUSH1 0x60 SWAP1 SWAP6 ADD MLOAD PUSH1 0xA SIGNEXTEND PUSH11 0xFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x40 SHL MUL PUSH19 0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000 NOT PUSH1 0xFF SWAP1 SWAP7 AND PUSH1 0x1 PUSH1 0x38 SHL MUL PUSH8 0xFF00000000000000 NOT PUSH5 0xFFFFFFFFFF SWAP1 SWAP4 AND PUSH3 0x10000 MUL PUSH7 0xFFFFFFFFFF0000 NOT PUSH2 0xFFFF SWAP1 SWAP7 AND PUSH2 0xFFFF NOT SWAP1 SWAP6 AND SWAP5 SWAP1 SWAP5 OR SWAP5 SWAP1 SWAP5 AND SWAP3 SWAP1 SWAP3 OR AND SWAP2 SWAP1 SWAP2 OR SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH2 0x2C36 DUP9 PUSH2 0x2D67 JUMP JUMPDEST SWAP1 POP DUP5 ISZERO DUP1 PUSH2 0x2C44 JUMPI POP DUP1 DUP6 GT JUMPDEST ISZERO PUSH2 0x2C4D JUMPI DUP1 SWAP5 POP JUMPDEST DUP7 DUP1 PUSH2 0x2C5D JUMPI POP PUSH1 0x0 DUP9 PUSH1 0x60 ADD MLOAD SLT JUMPDEST SWAP7 POP PUSH2 0xFFFF DUP7 AND ISZERO PUSH2 0x2C6E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP SWAP5 MLOAD SWAP4 SWAP6 PUSH1 0x10 SWAP4 SWAP1 SWAP4 SHR PUSH1 0xF0 SWAP5 SWAP1 SWAP5 SHL SWAP4 SWAP1 SWAP4 OR SWAP4 POP SWAP2 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x30C PUSH1 0xB PUSH2 0x1971 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SHR PUSH32 0x5555555555555555555555555555555555555555555555555555555555555555 SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x2 DUP2 SWAP1 SHR PUSH32 0x3333333333333333333333333333333333333333333333333333333333333333 SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x4 DUP2 SWAP1 SHR PUSH32 0x707070707070707070707070707070707070707070707070707070707070707 SWAP2 SWAP1 SWAP2 AND ADD PUSH1 0x8 DUP2 SWAP1 SHR PUSH31 0xF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F SWAP1 DUP2 AND SWAP2 AND ADD PUSH1 0x10 DUP2 SWAP1 SHR ADD PUSH1 0x20 DUP2 SWAP1 SHR ADD PUSH1 0x40 DUP2 SWAP1 SHR ADD PUSH1 0x80 DUP2 SWAP1 SHR PUSH1 0xFF SWAP1 DUP2 AND SWAP2 AND ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD GT DUP1 ISZERO PUSH2 0x2D81 JUMPI POP PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x8 LT ISZERO JUMPDEST PUSH2 0x2D8A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x40 DUP3 ADD MLOAD PUSH1 0x2 LT PUSH2 0x2DA1 JUMPI POP PUSH1 0x20 DUP2 ADD MLOAD PUSH2 0x327 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DB3 PUSH1 0x1 DUP5 PUSH1 0x40 ADD MLOAD SUB PUSH2 0x1D04 JUMP JUMPDEST PUSH1 0x20 DUP5 ADD MLOAD SWAP1 SWAP2 POP PUSH2 0x653 SWAP1 PUSH3 0x76A700 SWAP1 PUSH2 0x2DCE SWAP1 DUP5 PUSH2 0x2DD4 JUMP JUMPDEST SWAP1 PUSH2 0x1DA8 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x2E2B JUMPI PUSH1 0x40 DUP1 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x0 DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP2 SWAP1 MSTORE SWAP2 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP3 SWAP1 MSTORE PUSH1 0x80 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2E9A JUMPI INVALID JUMPDEST SWAP1 MSTORE SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2ED8 JUMPI DUP1 DUP2 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x2EEE JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP1 DUP4 MUL DUP6 ADD ADD GT ISZERO PUSH2 0x1F06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x327 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2F31 JUMPI DUP2 DUP3 REVERT JUMPDEST POP DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x2F47 JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 DUP6 ADD ADD GT ISZERO PUSH2 0x1F06 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 MLOAD PUSH2 0x327 DUP2 PUSH2 0x386F JUMP JUMPDEST DUP1 MLOAD PUSH2 0x327 DUP2 PUSH2 0x3892 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2F86 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x653 DUP2 PUSH2 0x3841 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2FA3 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x2FAE DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH2 0x2FBE DUP2 PUSH2 0x3841 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP10 DUP12 SUB SLT ISZERO PUSH2 0x2FE4 JUMPI DUP4 DUP5 REVERT JUMPDEST DUP9 CALLDATALOAD PUSH2 0x2FEF DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP8 POP PUSH1 0x20 DUP10 ADD CALLDATALOAD PUSH2 0x2FFF DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP7 POP PUSH1 0x40 DUP10 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x301A JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x3026 DUP13 DUP4 DUP14 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP9 POP SWAP7 POP PUSH1 0x60 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x303E JUMPI DUP6 DUP7 REVERT JUMPDEST PUSH2 0x304A DUP13 DUP4 DUP14 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x80 DUP12 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3062 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x306F DUP12 DUP3 DUP13 ADD PUSH2 0x2F20 JUMP JUMPDEST SWAP10 SWAP13 SWAP9 SWAP12 POP SWAP7 SWAP10 POP SWAP5 SWAP8 SWAP4 SWAP7 SWAP3 SWAP6 SWAP5 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0xA0 DUP8 DUP10 SUB SLT ISZERO PUSH2 0x309B JUMPI DUP2 DUP3 REVERT JUMPDEST DUP7 CALLDATALOAD PUSH2 0x30A6 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP6 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD PUSH2 0x30B6 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 DUP8 ADD CALLDATALOAD SWAP4 POP PUSH1 0x60 DUP8 ADD CALLDATALOAD SWAP3 POP PUSH1 0x80 DUP8 ADD CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH2 0x30DE JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0x30EA DUP10 DUP3 DUP11 ADD PUSH2 0x2F20 JUMP JUMPDEST SWAP8 SWAP11 SWAP7 SWAP10 POP SWAP5 SWAP8 POP SWAP3 SWAP6 SWAP4 SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x310E JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x3119 DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x2FBE JUMPI DUP2 DUP3 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x313F JUMPI DUP2 DUP3 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH2 0x314A DUP2 PUSH2 0x3841 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x40 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x316D JUMPI DUP2 DUP3 REVERT JUMPDEST DUP5 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x3183 JUMPI DUP4 DUP5 REVERT JUMPDEST PUSH2 0x318F DUP9 DUP4 DUP10 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP1 SWAP7 POP SWAP5 POP PUSH1 0x20 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x31A7 JUMPI DUP4 DUP5 REVERT JUMPDEST POP PUSH2 0x31B4 DUP8 DUP3 DUP9 ADD PUSH2 0x2EC7 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP6 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31D1 JUMPI DUP1 DUP2 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x31E9 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH2 0x653 DUP2 PUSH2 0x3859 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3205 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH2 0x653 DUP2 PUSH2 0x3859 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3221 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP1 DUP3 GT ISZERO PUSH2 0x3237 JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 DUP5 ADD SWAP2 POP DUP5 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x324A JUMPI DUP3 DUP4 REVERT JUMPDEST DUP2 MLOAD DUP2 DUP2 GT ISZERO PUSH2 0x3256 JUMPI INVALID JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP3 ADD PUSH1 0x1F NOT AND DUP2 ADD PUSH1 0x20 ADD DUP4 DUP2 GT DUP3 DUP3 LT OR ISZERO PUSH2 0x3274 JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP2 DUP2 MSTORE DUP4 DUP3 ADD PUSH1 0x20 ADD DUP8 LT ISZERO PUSH2 0x328B JUMPI DUP5 DUP6 REVERT JUMPDEST PUSH2 0x329C DUP3 PUSH1 0x20 DUP4 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x3815 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x32B7 JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH1 0xA0 DUP2 ADD DUP2 DUP2 LT PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP3 GT OR ISZERO PUSH2 0x32D3 JUMPI INVALID JUMPDEST PUSH1 0x40 MSTORE DUP3 MLOAD PUSH2 0x32E1 DUP2 PUSH2 0x387F JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 DUP4 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x32FD JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH1 0x20 DUP3 ADD MSTORE PUSH2 0x330E PUSH1 0x40 DUP5 ADD PUSH2 0x2F6A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD MSTORE PUSH2 0x331F PUSH1 0x60 DUP5 ADD PUSH2 0x2F5F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD MSTORE PUSH2 0x3330 PUSH1 0x80 DUP5 ADD PUSH2 0x2F08 JUMP JUMPDEST PUSH1 0x80 DUP3 ADD MSTORE SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x3350 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP4 CALLDATALOAD PUSH2 0x335B DUP2 PUSH2 0x386F JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH2 0x336B DUP2 PUSH2 0x387F JUMP JUMPDEST SWAP2 POP PUSH1 0x40 DUP5 ADD CALLDATALOAD PUSH2 0x337B DUP2 PUSH2 0x3892 JUMP JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST DUP2 DUP4 MSTORE PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xFB SHL SUB DUP4 GT ISZERO PUSH2 0x339E JUMPI DUP1 DUP2 REVERT JUMPDEST PUSH1 0x20 DUP4 MUL DUP1 DUP4 PUSH1 0x20 DUP8 ADD CALLDATACOPY SWAP4 SWAP1 SWAP4 ADD PUSH1 0x20 ADD SWAP3 DUP4 MSTORE POP SWAP1 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP5 MSTORE DUP3 DUP3 PUSH1 0x20 DUP7 ADD CALLDATACOPY DUP1 PUSH1 0x20 DUP5 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP6 ADD AND DUP6 ADD ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP5 DUP4 CALLDATACOPY SWAP2 ADD SWAP1 DUP2 MSTORE SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP10 DUP2 AND DUP3 MSTORE DUP9 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0xA0 PUSH1 0x40 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x3435 SWAP1 DUP4 ADD DUP9 DUP11 PUSH2 0x3386 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x60 DUP5 ADD MSTORE PUSH2 0x3448 DUP2 DUP8 DUP10 PUSH2 0x3386 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 SUB PUSH1 0x80 DUP5 ADD MSTORE PUSH2 0x345D DUP2 DUP6 DUP8 PUSH2 0x33BA JUMP JUMPDEST SWAP12 SWAP11 POP POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP8 DUP2 AND DUP3 MSTORE DUP7 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 DUP2 ADD DUP6 SWAP1 MSTORE PUSH1 0x60 DUP2 ADD DUP5 SWAP1 MSTORE PUSH1 0xA0 PUSH1 0x80 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP1 PUSH2 0x1965 SWAP1 DUP4 ADD DUP5 DUP7 PUSH2 0x33BA JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 DUP4 AND DUP2 MSTORE SWAP2 AND PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND DUP3 MSTORE DUP1 MLOAD PUSH5 0xFFFFFFFFFF AND PUSH1 0x20 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xF8 SHL SUB NOT AND PUSH1 0x40 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH1 0xFF AND PUSH1 0x60 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 ADD MLOAD PUSH2 0xFFFF AND PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x70 SHL SUB NOT AND PUSH1 0xA0 DUP3 ADD MSTORE PUSH1 0xC0 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 DUP5 DUP3 ADD SWAP1 PUSH1 0x40 DUP6 ADD SWAP1 DUP5 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3565 JUMPI DUP4 MLOAD DUP4 MSTORE SWAP3 DUP5 ADD SWAP3 SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x3549 JUMP JUMPDEST POP SWAP1 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 PUSH1 0x40 SWAP1 DUP2 DUP6 ADD SWAP1 DUP7 DUP5 ADD DUP6 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x35E6 JUMPI DUP2 MLOAD DUP1 MLOAD DUP6 MSTORE DUP7 DUP2 ADD MLOAD DUP8 DUP7 ADD MSTORE DUP6 DUP2 ADD MLOAD DUP7 DUP7 ADD MSTORE PUSH1 0x60 DUP1 DUP3 ADD MLOAD SWAP1 DUP7 ADD MSTORE PUSH1 0x80 DUP1 DUP3 ADD MLOAD SWAP1 DUP7 ADD MSTORE PUSH1 0xA0 SWAP1 DUP2 ADD MLOAD SWAP1 PUSH1 0x4 DUP3 LT PUSH2 0x35D1 JUMPI INVALID JUMPDEST DUP6 ADD MSTORE PUSH1 0xC0 SWAP1 SWAP4 ADD SWAP3 SWAP1 DUP6 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x358E JUMP JUMPDEST POP SWAP2 SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 MSTORE PUSH2 0x3607 PUSH1 0x40 DUP4 ADD DUP7 DUP9 PUSH2 0x3386 JUMP JUMPDEST DUP3 DUP2 SUB PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x361A DUP2 DUP6 DUP8 PUSH2 0x3386 JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 MSTORE DUP3 MLOAD DUP1 PUSH1 0x20 DUP5 ADD MSTORE PUSH2 0x3658 DUP2 PUSH1 0x40 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x3815 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x40 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xF SWAP1 DUP3 ADD MSTORE PUSH15 0x496E76616C69642061646472657373 PUSH1 0x88 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x11 SWAP1 DUP3 ADD MSTORE PUSH17 0x155B985D5D1A1BDC9A5E99590818D85B1B PUSH1 0x7A SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x155B985D5D1A1BDC9A5E9959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xD SWAP1 DUP3 ADD MSTORE PUSH13 0x92DCECC2D8D2C840D2DCC8CAF PUSH1 0x9B SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x13 SWAP1 DUP3 ADD MSTORE PUSH19 0x4163636F756E74206D75737420736574746C65 PUSH1 0x68 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xF SWAP1 DUP3 ADD MSTORE PUSH15 0x4F766572206D617820617373657473 PUSH1 0x88 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x10 SWAP1 DUP3 ADD MSTORE PUSH16 0x496E76616C6964206D61747572697479 PUSH1 0x80 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x12 SWAP1 DUP3 ADD MSTORE PUSH18 0x12511CC81B5D5CDD081899481CDBDC9D1959 PUSH1 0x72 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0xC SWAP1 DUP3 ADD MSTORE PUSH12 0x139BDD081858D8D95C1D1959 PUSH1 0xA2 SHL PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x60 ADD SWAP1 JUMP JUMPDEST SWAP2 DUP3 MSTORE PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x40 ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 DUP6 GT ISZERO PUSH2 0x37FC JUMPI DUP2 DUP3 REVERT JUMPDEST DUP4 DUP7 GT ISZERO PUSH2 0x3808 JUMPI DUP2 DUP3 REVERT JUMPDEST POP POP DUP3 ADD SWAP4 SWAP2 SWAP1 SWAP3 SUB SWAP2 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3830 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x3818 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1632 JUMPI POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xFFFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH5 0xFFFFFFFFFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0xFF DUP2 AND DUP2 EQ PUSH2 0x3856 JUMPI PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SGT GT AND ADD MUL LOG4 AND 0xB5 OR PUSH5 0xAB1C80F32C 0xD6 CODESIZE DELEGATECALL 0xDD 0xE8 0xC3 SAR 0x4E 0xD5 0xC5 SWAP3 PUSH3 0x9D5FB6 0x48 0xEB PUSH5 0x736F6C6343 STOP SMOD MOD STOP CALLER ", "pcMap": { "0": { "offset": [ 683, 20316 ], "op": "PUSH1", "path": "30", "value": "0x80" }, "2": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4": { "fn": null, "offset": [ 683, 20316 ], "op": "MSTORE", "path": "30" }, "5": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "7": { "fn": null, "offset": [ 683, 20316 ], "op": "CALLDATASIZE", "path": "30" }, "8": { "fn": null, "offset": [ 683, 20316 ], "op": "LT", "path": "30" }, "9": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0xE7" }, "12": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "13": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "15": { "fn": null, "offset": [ 683, 20316 ], "op": "CALLDATALOAD", "path": "30" }, "16": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH1", "path": "30", "value": "0xE0" }, "18": { "fn": null, "offset": [ 683, 20316 ], "op": "SHR", "path": "30" }, "19": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "20": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x735A1DC8" }, "25": { "fn": null, "offset": [ 683, 20316 ], "op": "GT", "path": "30" }, "26": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x8A" }, "29": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "30": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "31": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0xA22CB465" }, "36": { "fn": null, "offset": [ 683, 20316 ], "op": "GT", "path": "30" }, "37": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x59" }, "40": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "41": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "42": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0xA22CB465" }, "47": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "48": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x26A" }, "51": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "52": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "53": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0xC4C96DAE" }, "58": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "59": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x28A" }, "62": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "63": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "64": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0xE985E9C5" }, "69": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "70": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x2AD" }, "73": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "74": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "75": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0xF242432A" }, "80": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "81": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x2CD" }, "84": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "85": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0xE7" }, "88": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMP", "path": "30" }, "89": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPDEST", "path": "30" }, "90": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "91": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x735A1DC8" }, "96": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "97": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x200" }, "100": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "101": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "102": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x81A86855" }, "107": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "108": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x220" }, "111": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "112": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "113": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x82463367" }, "118": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "119": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x240" }, "122": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "123": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "124": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x8DA5CB5B" }, "129": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "130": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x255" }, "133": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "134": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0xE7" }, "137": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMP", "path": "30" }, "138": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPDEST", "path": "30" }, "139": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "140": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x24A3D622" }, "145": { "fn": null, "offset": [ 683, 20316 ], "op": "GT", "path": "30" }, "146": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0xC6" }, "149": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "150": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "151": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x24A3D622" }, "156": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "157": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x16F" }, "160": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "161": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "162": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x2EB2C2D6" }, "167": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "168": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x191" }, "171": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "172": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "173": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x3FA6B808" }, "178": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "179": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x1A6" }, "182": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "183": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "184": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x4E1273F4" }, "189": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "190": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x1D3" }, "193": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "194": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0xE7" }, "197": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMP", "path": "30" }, "198": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPDEST", "path": "30" }, "199": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "200": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH3", "path": "30", "value": "0xFDD58E" }, "204": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "205": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0xEC" }, "208": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "209": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "210": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0x1FFC9A7" }, "215": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "216": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x122" }, "219": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "220": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "221": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH4", "path": "30", "value": "0xFAC8F09" }, "226": { "fn": null, "offset": [ 683, 20316 ], "op": "EQ", "path": "30" }, "227": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH2", "path": "30", "value": "0x14F" }, "230": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPI", "path": "30" }, "231": { "fn": null, "offset": [ 683, 20316 ], "op": "JUMPDEST", "path": "30" }, "232": { "fn": null, "offset": [ 683, 20316 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "234": { "fn": null, "offset": [ 683, 20316 ], "op": "DUP1", "path": "30" }, "235": { "first_revert": true, "fn": null, "offset": [ 683, 20316 ], "op": "REVERT", "path": "30" }, "236": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "237": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "CALLVALUE", "path": "30" }, "238": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "DUP1", "path": "30" }, "239": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "ISZERO", "path": "30" }, "240": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0xF8" }, "243": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPI", "path": "30" }, "244": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "246": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "DUP1", "path": "30" }, "247": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "REVERT", "path": "30" }, "248": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "249": { "op": "POP" }, "250": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0x10C" }, "253": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0x107" }, "256": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "CALLDATASIZE", "path": "30" }, "257": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "259": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0x312D" }, "262": { "fn": "ERC1155Action.balanceOf", "jump": "i", "offset": [ 1742, 1945 ], "op": "JUMP", "path": "30" }, "263": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "264": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0x2E0" }, "267": { "fn": "ERC1155Action.balanceOf", "jump": "i", "offset": [ 1742, 1945 ], "op": "JUMP", "path": "30" }, "268": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "269": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "271": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "MLOAD", "path": "30" }, "272": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0x119" }, "275": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SWAP2", "path": "30" }, "276": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SWAP1", "path": "30" }, "277": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH2", "path": "30", "value": "0x3630" }, "280": { "fn": "ERC1155Action.balanceOf", "jump": "i", "offset": [ 1742, 1945 ], "op": "JUMP", "path": "30" }, "281": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "282": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "284": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "MLOAD", "path": "30" }, "285": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "DUP1", "path": "30" }, "286": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SWAP2", "path": "30" }, "287": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SUB", "path": "30" }, "288": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SWAP1", "path": "30" }, "289": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "RETURN", "path": "30" }, "290": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPDEST", "path": "30" }, "291": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "CALLVALUE", "path": "30" }, "292": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "DUP1", "path": "30" }, "293": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "ISZERO", "path": "30" }, "294": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x12E" }, "297": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPI", "path": "30" }, "298": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "300": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "DUP1", "path": "30" }, "301": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "REVERT", "path": "30" }, "302": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPDEST", "path": "30" }, "303": { "op": "POP" }, "304": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x142" }, "307": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x13D" }, "310": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "CALLDATASIZE", "path": "30" }, "311": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "313": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x31D8" }, "316": { "fn": "ERC1155Action.supportsInterface", "jump": "i", "offset": [ 1103, 1253 ], "op": "JUMP", "path": "30" }, "317": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPDEST", "path": "30" }, "318": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x312" }, "321": { "fn": "ERC1155Action.supportsInterface", "jump": "i", "offset": [ 1103, 1253 ], "op": "JUMP", "path": "30" }, "322": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPDEST", "path": "30" }, "323": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "325": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "MLOAD", "path": "30" }, "326": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x119" }, "329": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "SWAP2", "path": "30" }, "330": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "SWAP1", "path": "30" }, "331": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "PUSH2", "path": "30", "value": "0x3625" }, "334": { "fn": "ERC1155Action.supportsInterface", "jump": "i", "offset": [ 1103, 1253 ], "op": "JUMP", "path": "30" }, "335": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "JUMPDEST", "path": "30" }, "336": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "CALLVALUE", "path": "30" }, "337": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "DUP1", "path": "30" }, "338": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "ISZERO", "path": "30" }, "339": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH2", "path": "30", "value": "0x15B" }, "342": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "JUMPI", "path": "30" }, "343": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "345": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "DUP1", "path": "30" }, "346": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "REVERT", "path": "30" }, "347": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "JUMPDEST", "path": "30" }, "348": { "op": "POP" }, "349": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH2", "path": "30", "value": "0x10C" }, "352": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH2", "path": "30", "value": "0x16A" }, "355": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "CALLDATASIZE", "path": "30" }, "356": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "358": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH2", "path": "30", "value": "0x312D" }, "361": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2172, 2709 ], "op": "JUMP", "path": "30" }, "362": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "JUMPDEST", "path": "30" }, "363": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "PUSH2", "path": "30", "value": "0x32C" }, "366": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2172, 2709 ], "op": "JUMP", "path": "30" }, "367": { "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "368": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "CALLVALUE", "path": "63" }, "369": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "370": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "ISZERO", "path": "63" }, "371": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x17B" }, "374": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "JUMPI", "path": "63" }, "375": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "377": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "378": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "REVERT", "path": "63" }, "379": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "380": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "POP", "path": "63" }, "381": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x184" }, "384": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x380" }, "387": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "388": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "389": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x40" }, "391": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "MLOAD", "path": "63" }, "392": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x119" }, "395": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "SWAP2", "path": "63" }, "396": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "SWAP1", "path": "63" }, "397": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x33F4" }, "400": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "401": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "JUMPDEST", "path": "30" }, "402": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "PUSH2", "path": "30", "value": "0x1A4" }, "405": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "PUSH2", "path": "30", "value": "0x19F" }, "408": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "CALLDATASIZE", "path": "30" }, "409": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "411": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "PUSH2", "path": "30", "value": "0x2FC9" }, "414": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 8849, 10349 ], "op": "JUMP", "path": "30" }, "415": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "JUMPDEST", "path": "30" }, "416": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "PUSH2", "path": "30", "value": "0x38F" }, "419": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 8849, 10349 ], "op": "JUMP", "path": "30" }, "420": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "JUMPDEST", "path": "30" }, "421": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "STOP", "path": "30" }, "422": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "JUMPDEST", "path": "30" }, "423": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "CALLVALUE", "path": "30" }, "424": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "DUP1", "path": "30" }, "425": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "ISZERO", "path": "30" }, "426": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x1B2" }, "429": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "JUMPI", "path": "30" }, "430": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "432": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "DUP1", "path": "30" }, "433": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "REVERT", "path": "30" }, "434": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "JUMPDEST", "path": "30" }, "435": { "op": "POP" }, "436": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x1C6" }, "439": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x1C1" }, "442": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "CALLDATASIZE", "path": "30" }, "443": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "445": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x3158" }, "448": { "fn": "ERC1155Action.decodeToAssets", "jump": "i", "offset": [ 11245, 11552 ], "op": "JUMP", "path": "30" }, "449": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "JUMPDEST", "path": "30" }, "450": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x557" }, "453": { "fn": "ERC1155Action.decodeToAssets", "jump": "i", "offset": [ 11245, 11552 ], "op": "JUMP", "path": "30" }, "454": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "JUMPDEST", "path": "30" }, "455": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "457": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "MLOAD", "path": "30" }, "458": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x119" }, "461": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "SWAP2", "path": "30" }, "462": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "SWAP1", "path": "30" }, "463": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "PUSH2", "path": "30", "value": "0x3571" }, "466": { "fn": "ERC1155Action.decodeToAssets", "jump": "i", "offset": [ 11245, 11552 ], "op": "JUMP", "path": "30" }, "467": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "JUMPDEST", "path": "30" }, "468": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "CALLVALUE", "path": "30" }, "469": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "DUP1", "path": "30" }, "470": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "ISZERO", "path": "30" }, "471": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x1DF" }, "474": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "JUMPI", "path": "30" }, "475": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "477": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "DUP1", "path": "30" }, "478": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "REVERT", "path": "30" }, "479": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "JUMPDEST", "path": "30" }, "480": { "op": "POP" }, "481": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x1F3" }, "484": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x1EE" }, "487": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "CALLDATASIZE", "path": "30" }, "488": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "490": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x3158" }, "493": { "fn": "ERC1155Action.balanceOfBatch", "jump": "i", "offset": [ 3783, 4277 ], "op": "JUMP", "path": "30" }, "494": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "JUMPDEST", "path": "30" }, "495": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x572" }, "498": { "fn": "ERC1155Action.balanceOfBatch", "jump": "i", "offset": [ 3783, 4277 ], "op": "JUMP", "path": "30" }, "499": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "JUMPDEST", "path": "30" }, "500": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "502": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "MLOAD", "path": "30" }, "503": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x119" }, "506": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "SWAP2", "path": "30" }, "507": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "SWAP1", "path": "30" }, "508": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "PUSH2", "path": "30", "value": "0x352D" }, "511": { "fn": "ERC1155Action.balanceOfBatch", "jump": "i", "offset": [ 3783, 4277 ], "op": "JUMP", "path": "30" }, "512": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "JUMPDEST", "path": "30" }, "513": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "CALLVALUE", "path": "30" }, "514": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "DUP1", "path": "30" }, "515": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "ISZERO", "path": "30" }, "516": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH2", "path": "30", "value": "0x20C" }, "519": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "JUMPI", "path": "30" }, "520": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "522": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "DUP1", "path": "30" }, "523": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "REVERT", "path": "30" }, "524": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "JUMPDEST", "path": "30" }, "525": { "op": "POP" }, "526": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH2", "path": "30", "value": "0x10C" }, "529": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH2", "path": "30", "value": "0x21B" }, "532": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "CALLDATASIZE", "path": "30" }, "533": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "535": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH2", "path": "30", "value": "0x333C" }, "538": { "fn": "ERC1155Action.encodeToId", "jump": "i", "offset": [ 13314, 13543 ], "op": "JUMP", "path": "30" }, "539": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "JUMPDEST", "path": "30" }, "540": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "PUSH2", "path": "30", "value": "0x635" }, "543": { "fn": "ERC1155Action.encodeToId", "jump": "i", "offset": [ 13314, 13543 ], "op": "JUMP", "path": "30" }, "544": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "JUMPDEST", "path": "30" }, "545": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "CALLVALUE", "path": "30" }, "546": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "DUP1", "path": "30" }, "547": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "ISZERO", "path": "30" }, "548": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH2", "path": "30", "value": "0x22C" }, "551": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "JUMPI", "path": "30" }, "552": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "554": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "DUP1", "path": "30" }, "555": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "REVERT", "path": "30" }, "556": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "JUMPDEST", "path": "30" }, "557": { "op": "POP" }, "558": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH2", "path": "30", "value": "0x1F3" }, "561": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH2", "path": "30", "value": "0x23B" }, "564": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "CALLDATASIZE", "path": "30" }, "565": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "567": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH2", "path": "30", "value": "0x3158" }, "570": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "i", "offset": [ 2949, 3452 ], "op": "JUMP", "path": "30" }, "571": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "JUMPDEST", "path": "30" }, "572": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "PUSH2", "path": "30", "value": "0x65A" }, "575": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "i", "offset": [ 2949, 3452 ], "op": "JUMP", "path": "30" }, "576": { "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "577": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "CALLVALUE", "path": "63" }, "578": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "DUP1", "path": "63" }, "579": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "ISZERO", "path": "63" }, "580": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x24C" }, "583": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "JUMPI", "path": "63" }, "584": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "586": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "DUP1", "path": "63" }, "587": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "REVERT", "path": "63" }, "588": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "589": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "POP", "path": "63" }, "590": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x184" }, "593": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x713" }, "596": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "i", "offset": [ 920, 946 ], "op": "JUMP", "path": "63" }, "597": { "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "598": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "CALLVALUE", "path": "63" }, "599": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "DUP1", "path": "63" }, "600": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "ISZERO", "path": "63" }, "601": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x261" }, "604": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "JUMPI", "path": "63" }, "605": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "607": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "DUP1", "path": "63" }, "608": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "REVERT", "path": "63" }, "609": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "610": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "POP", "path": "63" }, "611": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x184" }, "614": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x722" }, "617": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "i", "offset": [ 811, 831 ], "op": "JUMP", "path": "63" }, "618": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "JUMPDEST", "path": "30" }, "619": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "CALLVALUE", "path": "30" }, "620": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "DUP1", "path": "30" }, "621": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "ISZERO", "path": "30" }, "622": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH2", "path": "30", "value": "0x276" }, "625": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "JUMPI", "path": "30" }, "626": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "628": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "DUP1", "path": "30" }, "629": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "REVERT", "path": "30" }, "630": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "JUMPDEST", "path": "30" }, "631": { "op": "POP" }, "632": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH2", "path": "30", "value": "0x1A4" }, "635": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH2", "path": "30", "value": "0x285" }, "638": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "CALLDATASIZE", "path": "30" }, "639": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "641": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH2", "path": "30", "value": "0x30FC" }, "644": { "fn": "ERC1155Action.setApprovalForAll", "jump": "i", "offset": [ 19267, 19489 ], "op": "JUMP", "path": "30" }, "645": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "JUMPDEST", "path": "30" }, "646": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "PUSH2", "path": "30", "value": "0x739" }, "649": { "fn": "ERC1155Action.setApprovalForAll", "jump": "i", "offset": [ 19267, 19489 ], "op": "JUMP", "path": "30" }, "650": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "JUMPDEST", "path": "30" }, "651": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "CALLVALUE", "path": "30" }, "652": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "DUP1", "path": "30" }, "653": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "ISZERO", "path": "30" }, "654": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH2", "path": "30", "value": "0x296" }, "657": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "JUMPI", "path": "30" }, "658": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "660": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "DUP1", "path": "30" }, "661": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "REVERT", "path": "30" }, "662": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "JUMPDEST", "path": "30" }, "663": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "POP", "path": "30" }, "664": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH2", "path": "30", "value": "0x29F" }, "667": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH2", "path": "30", "value": "0x7A8" }, "670": { "fn": "ERC1155Action.getLibInfo", "jump": "i", "offset": [ 20163, 20314 ], "op": "JUMP", "path": "30" }, "671": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "JUMPDEST", "path": "30" }, "672": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "674": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "MLOAD", "path": "30" }, "675": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH2", "path": "30", "value": "0x119" }, "678": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "SWAP3", "path": "30" }, "679": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "SWAP2", "path": "30" }, "680": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "SWAP1", "path": "30" }, "681": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "PUSH2", "path": "30", "value": "0x34A7" }, "684": { "fn": "ERC1155Action.getLibInfo", "jump": "i", "offset": [ 20163, 20314 ], "op": "JUMP", "path": "30" }, "685": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "JUMPDEST", "path": "30" }, "686": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "CALLVALUE", "path": "30" }, "687": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "DUP1", "path": "30" }, "688": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "ISZERO", "path": "30" }, "689": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH2", "path": "30", "value": "0x2B9" }, "692": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "JUMPI", "path": "30" }, "693": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "695": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "DUP1", "path": "30" }, "696": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "REVERT", "path": "30" }, "697": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "JUMPDEST", "path": "30" }, "698": { "op": "POP" }, "699": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH2", "path": "30", "value": "0x142" }, "702": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH2", "path": "30", "value": "0x2C8" }, "705": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "CALLDATASIZE", "path": "30" }, "706": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "708": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH2", "path": "30", "value": "0x2F91" }, "711": { "fn": "ERC1155Action.isApprovedForAll", "jump": "i", "offset": [ 19806, 20075 ], "op": "JUMP", "path": "30" }, "712": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "JUMPDEST", "path": "30" }, "713": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "PUSH2", "path": "30", "value": "0x7D6" }, "716": { "fn": "ERC1155Action.isApprovedForAll", "jump": "i", "offset": [ 19806, 20075 ], "op": "JUMP", "path": "30" }, "717": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "JUMPDEST", "path": "30" }, "718": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "PUSH2", "path": "30", "value": "0x1A4" }, "721": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "PUSH2", "path": "30", "value": "0x2DB" }, "724": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "CALLDATASIZE", "path": "30" }, "725": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "727": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "PUSH2", "path": "30", "value": "0x3083" }, "730": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 6229, 8148 ], "op": "JUMP", "path": "30" }, "731": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "JUMPDEST", "path": "30" }, "732": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "PUSH2", "path": "30", "value": "0x82E" }, "735": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 6229, 8148 ], "op": "JUMP", "path": "30" }, "736": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "737": { "fn": "ERC1155Action.balanceOf", "offset": [ 1820, 1827 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "739": { "fn": "ERC1155Action.balanceOf", "offset": [ 1839, 1854 ], "op": "DUP1", "path": "30" }, "740": { "fn": "ERC1155Action.balanceOf", "offset": [ 1857, 1885 ], "op": "PUSH2", "path": "30", "value": "0x2ED" }, "743": { "fn": "ERC1155Action.balanceOf", "offset": [ 1873, 1880 ], "op": "DUP5", "path": "30" }, "744": { "fn": "ERC1155Action.balanceOf", "offset": [ 1882, 1884 ], "op": "DUP5", "path": "30" }, "745": { "fn": "ERC1155Action.balanceOf", "offset": [ 1857, 1872 ], "op": "PUSH2", "path": "30", "value": "0x32C" }, "748": { "fn": "ERC1155Action.balanceOf", "jump": "i", "offset": [ 1857, 1885 ], "op": "JUMP", "path": "30" }, "749": { "fn": "ERC1155Action.balanceOf", "offset": [ 1857, 1885 ], "op": "JUMPDEST", "path": "30" }, "750": { "fn": "ERC1155Action.balanceOf", "offset": [ 1839, 1885 ], "op": "SWAP1", "path": "30" }, "751": { "fn": "ERC1155Action.balanceOf", "offset": [ 1839, 1885 ], "op": "POP", "path": "30" }, "752": { "fn": "ERC1155Action.balanceOf", "offset": [ 1913, 1914 ], "op": "PUSH1", "path": "30", "statement": 0, "value": "0x0" }, "754": { "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1910 ], "op": "DUP2", "path": "30" }, "755": { "branch": 281, "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1914 ], "op": "SLT", "path": "30" }, "756": { "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1938 ], "op": "PUSH2", "path": "30", "value": "0x305" }, "759": { "branch": 281, "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1938 ], "op": "JUMPI", "path": "30" }, "760": { "fn": "ERC1155Action.balanceOf", "offset": [ 1921, 1938 ], "op": "PUSH2", "path": "30", "value": "0x300" }, "763": { "fn": "ERC1155Action.balanceOf", "offset": [ 1921, 1929 ], "op": "DUP2", "path": "30" }, "764": { "fn": "ERC1155Action.balanceOf", "offset": [ 1921, 1936 ], "op": "PUSH2", "path": "30", "value": "0xA23" }, "767": { "fn": "ERC1155Action.balanceOf", "jump": "i", "offset": [ 1921, 1938 ], "op": "JUMP", "path": "30" }, "768": { "fn": "ERC1155Action.balanceOf", "offset": [ 1921, 1938 ], "op": "JUMPDEST", "path": "30" }, "769": { "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1938 ], "op": "PUSH2", "path": "30", "value": "0x308" }, "772": { "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1938 ], "op": "JUMP", "path": "30" }, "773": { "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1938 ], "op": "JUMPDEST", "path": "30" }, "774": { "fn": "ERC1155Action.balanceOf", "offset": [ 1917, 1918 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "776": { "fn": "ERC1155Action.balanceOf", "offset": [ 1902, 1938 ], "op": "JUMPDEST", "path": "30" }, "777": { "fn": "ERC1155Action.balanceOf", "offset": [ 1895, 1938 ], "op": "SWAP2", "path": "30" }, "778": { "fn": "ERC1155Action.balanceOf", "offset": [ 1895, 1938 ], "op": "POP", "path": "30" }, "779": { "fn": "ERC1155Action.balanceOf", "offset": [ 1895, 1938 ], "op": "POP", "path": "30" }, "780": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "JUMPDEST", "path": "30" }, "781": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SWAP3", "path": "30" }, "782": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "SWAP2", "path": "30" }, "783": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "POP", "path": "30" }, "784": { "fn": "ERC1155Action.balanceOf", "offset": [ 1742, 1945 ], "op": "POP", "path": "30" }, "785": { "fn": "ERC1155Action.balanceOf", "jump": "o", "offset": [ 1742, 1945 ], "op": "JUMP", "path": "30" }, "786": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPDEST", "path": "30" }, "787": { "op": "PUSH1", "value": "0x1" }, "789": { "op": "PUSH1", "value": "0x1" }, "791": { "op": "PUSH1", "value": "0xE0" }, "793": { "op": "SHL" }, "794": { "op": "SUB" }, "795": { "op": "NOT" }, "796": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1205, 1246 ], "op": "DUP2", "path": "30", "statement": 1 }, "797": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1205, 1246 ], "op": "AND", "path": "30" }, "798": { "op": "PUSH4", "value": "0x6CDB3D13" }, "803": { "op": "PUSH1", "value": "0xE1" }, "805": { "op": "SHL" }, "806": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1205, 1246 ], "op": "EQ", "path": "30" }, "807": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "JUMPDEST", "path": "30" }, "808": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "SWAP2", "path": "30" }, "809": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "SWAP1", "path": "30" }, "810": { "fn": "ERC1155Action.supportsInterface", "offset": [ 1103, 1253 ], "op": "POP", "path": "30" }, "811": { "fn": "ERC1155Action.supportsInterface", "jump": "o", "offset": [ 1103, 1253 ], "op": "JUMP", "path": "30" }, "812": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "JUMPDEST", "path": "30" }, "813": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2256, 2271 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "815": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2283, 2319 ], "op": "DUP1", "path": "30" }, "816": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2322, 2370 ], "op": "PUSH2", "path": "30", "value": "0x338" }, "819": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2362, 2369 ], "op": "DUP5", "path": "30" }, "820": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2322, 2361 ], "op": "PUSH2", "path": "30", "value": "0xA36" }, "823": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2322, 2370 ], "op": "JUMP", "path": "30" }, "824": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2322, 2370 ], "op": "JUMPDEST", "path": "30" }, "825": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2283, 2370 ], "op": "SWAP1", "path": "30" }, "826": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2283, 2370 ], "op": "POP", "path": "30" }, "827": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2385, 2417 ], "op": "PUSH2", "path": "30", "value": "0x343" }, "830": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2385, 2399 ], "op": "DUP2", "path": "30" }, "831": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2385, 2415 ], "op": "PUSH2", "path": "30", "value": "0xAD7" }, "834": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2385, 2417 ], "op": "JUMP", "path": "30" }, "835": { "branch": 282, "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2385, 2417 ], "op": "JUMPDEST", "path": "30" }, "836": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "ISZERO", "path": "30" }, "837": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "PUSH2", "path": "30", "value": "0x362" }, "840": { "branch": 282, "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "JUMPI", "path": "30" }, "841": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2444, 2506 ], "op": "PUSH2", "path": "30", "statement": 2, "value": "0x35B" }, "844": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2461, 2468 ], "op": "DUP5", "path": "30" }, "845": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2470, 2484 ], "op": "DUP3", "path": "30" }, "846": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2470, 2501 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "848": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2470, 2501 ], "op": "ADD", "path": "30" }, "849": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2470, 2501 ], "op": "MLOAD", "path": "30" }, "850": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2444, 2506 ], "op": "PUSH2", "path": "30", "value": "0xFFFF" }, "853": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2444, 2506 ], "op": "AND", "path": "30" }, "854": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2503, 2505 ], "op": "DUP6", "path": "30" }, "855": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2444, 2460 ], "op": "PUSH2", "path": "30", "value": "0xAE4" }, "858": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2444, 2506 ], "op": "JUMP", "path": "30" }, "859": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2444, 2506 ], "op": "JUMPDEST", "path": "30" }, "860": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2433, 2506 ], "op": "SWAP2", "path": "30" }, "861": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2433, 2506 ], "op": "POP", "path": "30" }, "862": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "PUSH2", "path": "30", "value": "0x379" }, "865": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "JUMP", "path": "30" }, "866": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "JUMPDEST", "path": "30" }, "867": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2548, 2692 ], "op": "PUSH2", "path": "30", "statement": 3, "value": "0x308" }, "870": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2581, 2658 ], "op": "PUSH2", "path": "30", "value": "0x373" }, "873": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2617, 2624 ], "op": "DUP6", "path": "30" }, "874": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2626, 2640 ], "op": "DUP4", "path": "30" }, "875": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2626, 2657 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "877": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2626, 2657 ], "op": "ADD", "path": "30" }, "878": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2626, 2657 ], "op": "MLOAD", "path": "30" }, "879": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2581, 2616 ], "op": "PUSH2", "path": "30", "value": "0xB2F" }, "882": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2581, 2658 ], "op": "JUMP", "path": "30" }, "883": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2581, 2658 ], "op": "JUMPDEST", "path": "30" }, "884": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2676, 2678 ], "op": "DUP5", "path": "30" }, "885": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2548, 2563 ], "op": "PUSH2", "path": "30", "value": "0xB58" }, "888": { "fn": "ERC1155Action.signedBalanceOf", "jump": "i", "offset": [ 2548, 2692 ], "op": "JUMP", "path": "30" }, "889": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2381, 2703 ], "op": "JUMPDEST", "path": "30" }, "890": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "POP", "path": "30" }, "891": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "SWAP3", "path": "30" }, "892": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "SWAP2", "path": "30" }, "893": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "POP", "path": "30" }, "894": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 2172, 2709 ], "op": "POP", "path": "30" }, "895": { "fn": "ERC1155Action.signedBalanceOf", "jump": "o", "offset": [ 2172, 2709 ], "op": "JUMP", "path": "30" }, "896": { "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "897": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x2" }, "899": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "SLOAD", "path": "63" }, "900": { "op": "PUSH1", "value": "0x1" }, "902": { "op": "PUSH1", "value": "0x1" }, "904": { "op": "PUSH1", "value": "0xA0" }, "906": { "op": "SHL" }, "907": { "op": "SUB" }, "908": { "offset": [ 1035, 1063 ], "op": "AND", "path": "63" }, "909": { "fn": "ERC1155Action.signedBalanceOf", "offset": [ 1035, 1063 ], "op": "DUP2", "path": "63" }, "910": { "fn": "ERC1155Action.signedBalanceOf", "jump": "o", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "911": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "JUMPDEST", "path": "30" }, "912": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9260, 9287 ], "op": "PUSH2", "path": "30", "statement": 4, "value": "0x399" }, "915": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9278, 9282 ], "op": "DUP9", "path": "30" }, "916": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9284, 9286 ], "op": "DUP9", "path": "30" }, "917": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9260, 9277 ], "op": "PUSH2", "path": "30", "value": "0xBDE" }, "920": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9260, 9287 ], "op": "JUMP", "path": "30" }, "921": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9260, 9287 ], "op": "JUMPDEST", "path": "30" }, "922": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9299, 9329 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "924": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9331, 9354 ], "op": "DUP1", "path": "30" }, "925": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9358, 9387 ], "op": "PUSH2", "path": "30", "value": "0x3A8" }, "928": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9374, 9377 ], "op": "DUP9", "path": "30" }, "929": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9374, 9377 ], "op": "DUP9", "path": "30" }, "930": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9379, 9386 ], "op": "DUP9", "path": "30" }, "931": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9379, 9386 ], "op": "DUP9", "path": "30" }, "932": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9358, 9373 ], "op": "PUSH2", "path": "30", "value": "0xC7E" }, "935": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9358, 9387 ], "op": "JUMP", "path": "30" }, "936": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9358, 9387 ], "op": "JUMPDEST", "path": "30" }, "937": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9298, 9387 ], "op": "SWAP2", "path": "30" }, "938": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9298, 9387 ], "op": "POP", "path": "30" }, "939": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9298, 9387 ], "op": "SWAP2", "path": "30" }, "940": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9298, 9387 ], "op": "POP", "path": "30" }, "941": { "branch": 283, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9535, 9553 ], "op": "DUP1", "path": "30" }, "942": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9531, 9612 ], "op": "ISZERO", "path": "30" }, "943": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9531, 9612 ], "op": "PUSH2", "path": "30", "value": "0x3E1" }, "946": { "branch": 283, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9531, 9612 ], "op": "JUMPI", "path": "30" }, "947": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9563, 9595 ], "op": "PUSH2", "path": "30", "statement": 5, "value": "0x3BC" }, "950": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9580, 9582 ], "op": "DUP10", "path": "30" }, "951": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9584, 9594 ], "op": "CALLER", "path": "30" }, "952": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9563, 9579 ], "op": "PUSH2", "path": "30", "value": "0x7D6" }, "955": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9563, 9595 ], "op": "JUMP", "path": "30" }, "956": { "branch": 284, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9563, 9595 ], "op": "JUMPDEST", "path": "30" }, "957": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "PUSH2", "path": "30", "value": "0x3E1" }, "960": { "branch": 284, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "JUMPI", "path": "30" }, "961": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "963": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "MLOAD", "path": "30" }, "964": { "op": "PUSH3", "value": "0x461BCD" }, "968": { "op": "PUSH1", "value": "0xE5" }, "970": { "op": "SHL" }, "971": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "DUP2", "path": "30" }, "972": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "MSTORE", "path": "30" }, "973": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "975": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "ADD", "path": "30" }, "976": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "979": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "SWAP1", "path": "30" }, "980": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "PUSH2", "path": "30", "value": "0x36C0" }, "983": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9555, 9612 ], "op": "JUMP", "path": "30" }, "984": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "JUMPDEST", "path": "30" }, "985": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "987": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "MLOAD", "path": "30" }, "988": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "DUP1", "path": "30" }, "989": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "SWAP2", "path": "30" }, "990": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "SUB", "path": "30" }, "991": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "SWAP1", "path": "30" }, "992": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "REVERT", "path": "30" }, "993": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9555, 9612 ], "op": "JUMPDEST", "path": "30" }, "994": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9624, 9657 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "996": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9659, 9690 ], "op": "DUP1", "path": "30" }, "997": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9694, 9767 ], "op": "PUSH2", "path": "30", "value": "0x3EF" }, "1000": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9717, 9721 ], "op": "DUP13", "path": "30" }, "1001": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9735, 9737 ], "op": "DUP13", "path": "30" }, "1002": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9751, 9757 ], "op": "DUP7", "path": "30" }, "1003": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9694, 9703 ], "op": "PUSH2", "path": "30", "value": "0xDC8" }, "1006": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9694, 9767 ], "op": "JUMP", "path": "30" }, "1007": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9694, 9767 ], "op": "JUMPDEST", "path": "30" }, "1008": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9623, 9767 ], "op": "SWAP2", "path": "30" }, "1009": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9623, 9767 ], "op": "POP", "path": "30" }, "1010": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9623, 9767 ], "op": "SWAP2", "path": "30" }, "1011": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9623, 9767 ], "op": "POP", "path": "30" }, "1012": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9778, 9861 ], "op": "PUSH2", "path": "30", "statement": 6, "value": "0x402" }, "1015": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9802, 9806 ], "op": "DUP13", "path": "30" }, "1016": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9808, 9810 ], "op": "DUP13", "path": "30" }, "1017": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9812, 9823 ], "op": "DUP5", "path": "30" }, "1018": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9825, 9834 ], "op": "DUP5", "path": "30" }, "1019": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9836, 9840 ], "op": "DUP11", "path": "30" }, "1020": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9836, 9840 ], "op": "DUP11", "path": "30" }, "1021": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9842, 9860 ], "op": "DUP10", "path": "30" }, "1022": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9778, 9801 ], "op": "PUSH2", "path": "30", "value": "0xF68" }, "1025": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9778, 9861 ], "op": "JUMP", "path": "30" }, "1026": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9778, 9861 ], "op": "JUMPDEST", "path": "30" }, "1027": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9908, 9910 ], "op": "DUP11", "path": "30", "statement": 7 }, "1028": { "op": "PUSH1", "value": "0x1" }, "1030": { "op": "PUSH1", "value": "0x1" }, "1032": { "op": "PUSH1", "value": "0xA0" }, "1034": { "op": "SHL" }, "1035": { "op": "SUB" }, "1036": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "AND", "path": "30" }, "1037": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9902, 9906 ], "op": "DUP13", "path": "30" }, "1038": { "op": "PUSH1", "value": "0x1" }, "1040": { "op": "PUSH1", "value": "0x1" }, "1042": { "op": "PUSH1", "value": "0xA0" }, "1044": { "op": "SHL" }, "1045": { "op": "SUB" }, "1046": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "AND", "path": "30" }, "1047": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9890, 9900 ], "op": "CALLER", "path": "30" }, "1048": { "op": "PUSH1", "value": "0x1" }, "1050": { "op": "PUSH1", "value": "0x1" }, "1052": { "op": "PUSH1", "value": "0xA0" }, "1054": { "op": "SHL" }, "1055": { "op": "SUB" }, "1056": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "AND", "path": "30" }, "1057": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "PUSH32", "path": "30", "value": "0x4A39DC06D4C0DBC64B70AF90FD698A233A518AA5D07E595D983B8C0526C8F7FB" }, "1090": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9912, 9915 ], "op": "DUP14", "path": "30" }, "1091": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9912, 9915 ], "op": "DUP14", "path": "30" }, "1092": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9917, 9924 ], "op": "DUP14", "path": "30" }, "1093": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9917, 9924 ], "op": "DUP14", "path": "30" }, "1094": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1096": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "MLOAD", "path": "30" }, "1097": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "PUSH2", "path": "30", "value": "0x455" }, "1100": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP5", "path": "30" }, "1101": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP4", "path": "30" }, "1102": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP3", "path": "30" }, "1103": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP2", "path": "30" }, "1104": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP1", "path": "30" }, "1105": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "PUSH2", "path": "30", "value": "0x35F3" }, "1108": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9876, 9925 ], "op": "JUMP", "path": "30" }, "1109": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "JUMPDEST", "path": "30" }, "1110": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1112": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "MLOAD", "path": "30" }, "1113": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "DUP1", "path": "30" }, "1114": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP2", "path": "30" }, "1115": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SUB", "path": "30" }, "1116": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "SWAP1", "path": "30" }, "1117": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9876, 9925 ], "op": "LOG4", "path": "30" }, "1118": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9993, 10015 ], "op": "PUSH2", "path": "30", "value": "0x466" }, "1121": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10012, 10014 ], "op": "DUP12", "path": "30" }, "1122": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9993, 10011 ], "op": "PUSH2", "path": "30", "value": "0x1246" }, "1125": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 9993, 10015 ], "op": "JUMP", "path": "30" }, "1126": { "branch": 285, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9993, 10015 ], "op": "JUMPDEST", "path": "30" }, "1127": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9989, 10343 ], "op": "ISZERO", "path": "30" }, "1128": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9989, 10343 ], "op": "PUSH2", "path": "30", "value": "0x549" }, "1131": { "branch": 285, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 9989, 10343 ], "op": "JUMPI", "path": "30" }, "1132": { "offset": [ 1017, 1095 ], "op": "PUSH32", "path": "30", "value": "0xBC197C819B3E337A6F9652DD10BECD7EEF83032AF3B9D958D3D42F6694146621" }, "1165": { "op": "PUSH1", "value": "0x1" }, "1167": { "op": "PUSH1", "value": "0x1" }, "1169": { "op": "PUSH1", "value": "0xE0" }, "1171": { "op": "SHL" }, "1172": { "op": "SUB" }, "1173": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10286 ], "op": "NOT", "path": "30", "statement": 8 }, "1174": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10286 ], "op": "AND", "path": "30" }, "1175": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10078, 10080 ], "op": "DUP12", "path": "30" }, "1176": { "op": "PUSH1", "value": "0x1" }, "1178": { "op": "PUSH1", "value": "0x1" }, "1180": { "op": "PUSH1", "value": "0xA0" }, "1182": { "op": "SHL" }, "1183": { "op": "SUB" }, "1184": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10104 ], "op": "AND", "path": "30" }, "1185": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10104 ], "op": "PUSH4", "path": "30", "value": "0xBC197C81" }, "1190": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10126, 10136 ], "op": "CALLER", "path": "30" }, "1191": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10158, 10162 ], "op": "DUP16", "path": "30" }, "1192": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10184, 10187 ], "op": "DUP15", "path": "30" }, "1193": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10184, 10187 ], "op": "DUP15", "path": "30" }, "1194": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10209, 10216 ], "op": "DUP15", "path": "30" }, "1195": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10209, 10216 ], "op": "DUP15", "path": "30" }, "1196": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10238, 10242 ], "op": "DUP15", "path": "30" }, "1197": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10238, 10242 ], "op": "DUP15", "path": "30" }, "1198": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1200": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "MLOAD", "path": "30" }, "1201": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP10", "path": "30" }, "1202": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH4", "path": "30", "value": "0xFFFFFFFF" }, "1207": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "AND", "path": "30" }, "1208": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0xE0" }, "1210": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SHL", "path": "30" }, "1211": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP2", "path": "30" }, "1212": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "MSTORE", "path": "30" }, "1213": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "1215": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ADD", "path": "30" }, "1216": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH2", "path": "30", "value": "0x4D0" }, "1219": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP9", "path": "30" }, "1220": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP8", "path": "30" }, "1221": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP7", "path": "30" }, "1222": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP6", "path": "30" }, "1223": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP5", "path": "30" }, "1224": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP4", "path": "30" }, "1225": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP3", "path": "30" }, "1226": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP2", "path": "30" }, "1227": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP1", "path": "30" }, "1228": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH2", "path": "30", "value": "0x3408" }, "1231": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 10056, 10260 ], "op": "JUMP", "path": "30" }, "1232": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "JUMPDEST", "path": "30" }, "1233": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1235": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1237": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "MLOAD", "path": "30" }, "1238": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1239": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP4", "path": "30" }, "1240": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SUB", "path": "30" }, "1241": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP2", "path": "30" }, "1242": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1244": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP8", "path": "30" }, "1245": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1246": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "EXTCODESIZE", "path": "30" }, "1247": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ISZERO", "path": "30" }, "1248": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1249": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ISZERO", "path": "30" }, "1250": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH2", "path": "30", "value": "0x4EA" }, "1253": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "JUMPI", "path": "30" }, "1254": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1256": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1257": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "REVERT", "path": "30" }, "1258": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "JUMPDEST", "path": "30" }, "1259": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "POP", "path": "30" }, "1260": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "GAS", "path": "30" }, "1261": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "CALL", "path": "30" }, "1262": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ISZERO", "path": "30" }, "1263": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1264": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ISZERO", "path": "30" }, "1265": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH2", "path": "30", "value": "0x4FE" }, "1268": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "JUMPI", "path": "30" }, "1269": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "RETURNDATASIZE", "path": "30" }, "1270": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1272": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1273": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "RETURNDATACOPY", "path": "30" }, "1274": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "RETURNDATASIZE", "path": "30" }, "1275": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1277": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "REVERT", "path": "30" }, "1278": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "JUMPDEST", "path": "30" }, "1279": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "POP", "path": "30" }, "1280": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "POP", "path": "30" }, "1281": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "POP", "path": "30" }, "1282": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "POP", "path": "30" }, "1283": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1285": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "MLOAD", "path": "30" }, "1286": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "RETURNDATASIZE", "path": "30" }, "1287": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "1289": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "NOT", "path": "30" }, "1290": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "1292": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP3", "path": "30" }, "1293": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ADD", "path": "30" }, "1294": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "AND", "path": "30" }, "1295": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP3", "path": "30" }, "1296": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ADD", "path": "30" }, "1297": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP1", "path": "30" }, "1298": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1300": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "MSTORE", "path": "30" }, "1301": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "POP", "path": "30" }, "1302": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "DUP2", "path": "30" }, "1303": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "ADD", "path": "30" }, "1304": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP1", "path": "30" }, "1305": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH2", "path": "30", "value": "0x522" }, "1308": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP2", "path": "30" }, "1309": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "SWAP1", "path": "30" }, "1310": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "PUSH2", "path": "30", "value": "0x31F4" }, "1313": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 10056, 10260 ], "op": "JUMP", "path": "30" }, "1314": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10260 ], "op": "JUMPDEST", "path": "30" }, "1315": { "op": "PUSH1", "value": "0x1" }, "1317": { "op": "PUSH1", "value": "0x1" }, "1319": { "op": "PUSH1", "value": "0xE0" }, "1321": { "op": "SHL" }, "1322": { "op": "SUB" }, "1323": { "op": "NOT" }, "1324": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10286 ], "op": "AND", "path": "30" }, "1325": { "branch": 286, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10056, 10286 ], "op": "EQ", "path": "30" }, "1326": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "PUSH2", "path": "30", "value": "0x549" }, "1329": { "branch": 286, "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "JUMPI", "path": "30" }, "1330": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1332": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "MLOAD", "path": "30" }, "1333": { "op": "PUSH3", "value": "0x461BCD" }, "1337": { "op": "PUSH1", "value": "0xE5" }, "1339": { "op": "SHL" }, "1340": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "DUP2", "path": "30" }, "1341": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "MSTORE", "path": "30" }, "1342": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "1344": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "ADD", "path": "30" }, "1345": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "1348": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "SWAP1", "path": "30" }, "1349": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "PUSH2", "path": "30", "value": "0x37B9" }, "1352": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "i", "offset": [ 10031, 10332 ], "op": "JUMP", "path": "30" }, "1353": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 10031, 10332 ], "op": "JUMPDEST", "path": "30" }, "1354": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1355": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1356": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1357": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1358": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1359": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1360": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1361": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1362": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1363": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1364": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1365": { "fn": "ERC1155Action.safeBatchTransferFrom", "offset": [ 8849, 10349 ], "op": "POP", "path": "30" }, "1366": { "fn": "ERC1155Action.safeBatchTransferFrom", "jump": "o", "offset": [ 8849, 10349 ], "op": "JUMP", "path": "30" }, "1367": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "JUMPDEST", "path": "30" }, "1368": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11385, 11408 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "1370": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11452, 11482 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1372": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11493, 11522 ], "op": "PUSH2", "path": "30", "value": "0x567" }, "1375": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11509, 11512 ], "op": "DUP7", "path": "30" }, "1376": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11509, 11512 ], "op": "DUP7", "path": "30" }, "1377": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11514, 11521 ], "op": "DUP7", "path": "30" }, "1378": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11514, 11521 ], "op": "DUP7", "path": "30" }, "1379": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11493, 11508 ], "op": "PUSH2", "path": "30", "value": "0xC7E" }, "1382": { "fn": "ERC1155Action.decodeToAssets", "jump": "i", "offset": [ 11493, 11522 ], "op": "JUMP", "path": "30" }, "1383": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11493, 11522 ], "op": "JUMPDEST", "path": "30" }, "1384": { "op": "POP" }, "1385": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11451, 11522 ], "op": "SWAP7", "path": "30" }, "1386": { "fn": "ERC1155Action.decodeToAssets", "offset": [ 11245, 11552 ], "op": "SWAP6", "path": "30" }, "1387": { "op": "POP" }, "1388": { "op": "POP" }, "1389": { "op": "POP" }, "1390": { "op": "POP" }, "1391": { "op": "POP" }, "1392": { "op": "POP" }, "1393": { "fn": "ERC1155Action.decodeToAssets", "jump": "o", "offset": [ 11245, 11552 ], "op": "JUMP", "path": "30" }, "1394": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "JUMPDEST", "path": "30" }, "1395": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3924, 3940 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "1397": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3964, 3993 ], "op": "DUP4", "path": "30", "statement": 9 }, "1398": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3964, 3993 ], "op": "DUP3", "path": "30" }, "1399": { "branch": 287, "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3964, 3993 ], "op": "EQ", "path": "30" }, "1400": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3956, 3994 ], "op": "PUSH2", "path": "30", "value": "0x580" }, "1403": { "branch": 287, "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3956, 3994 ], "op": "JUMPI", "path": "30" }, "1404": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3956, 3994 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1406": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3956, 3994 ], "op": "DUP1", "path": "30" }, "1407": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3956, 3994 ], "op": "REVERT", "path": "30" }, "1408": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3956, 3994 ], "op": "JUMPDEST", "path": "30" }, "1409": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4004, 4028 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1411": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4045, 4053 ], "op": "DUP5", "path": "30" }, "1412": { "op": "PUSH1", "value": "0x1" }, "1414": { "op": "PUSH1", "value": "0x1" }, "1416": { "op": "PUSH1", "value": "0x40" }, "1418": { "op": "SHL" }, "1419": { "op": "SUB" }, "1420": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP2", "path": "30" }, "1421": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "GT", "path": "30" }, "1422": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP1", "path": "30" }, "1423": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "ISZERO", "path": "30" }, "1424": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH2", "path": "30", "value": "0x598" }, "1427": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "JUMPI", "path": "30" }, "1428": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1430": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP1", "path": "30" }, "1431": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "REVERT", "path": "30" }, "1432": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "JUMPDEST", "path": "30" }, "1433": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "POP", "path": "30" }, "1434": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1436": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "MLOAD", "path": "30" }, "1437": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "SWAP1", "path": "30" }, "1438": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP1", "path": "30" }, "1439": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP3", "path": "30" }, "1440": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "MSTORE", "path": "30" }, "1441": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP1", "path": "30" }, "1442": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1444": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "MUL", "path": "30" }, "1445": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1447": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "ADD", "path": "30" }, "1448": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP3", "path": "30" }, "1449": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "ADD", "path": "30" }, "1450": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1452": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "MSTORE", "path": "30" }, "1453": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP1", "path": "30" }, "1454": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "ISZERO", "path": "30" }, "1455": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH2", "path": "30", "value": "0x5C2" }, "1458": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "JUMPI", "path": "30" }, "1459": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP2", "path": "30" }, "1460": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1462": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "ADD", "path": "30" }, "1463": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1465": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP3", "path": "30" }, "1466": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "MUL", "path": "30" }, "1467": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP1", "path": "30" }, "1468": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "CALLDATASIZE", "path": "30" }, "1469": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "DUP4", "path": "30" }, "1470": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "CALLDATACOPY", "path": "30" }, "1471": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "ADD", "path": "30" }, "1472": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "SWAP1", "path": "30" }, "1473": { "op": "POP" }, "1474": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "JUMPDEST", "path": "30" }, "1475": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4031, 4061 ], "op": "POP", "path": "30" }, "1476": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4004, 4061 ], "op": "SWAP1", "path": "30" }, "1477": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4004, 4061 ], "op": "POP", "path": "30" }, "1478": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4077, 4086 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1480": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "JUMPDEST", "path": "30" }, "1481": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4088, 4107 ], "op": "DUP6", "path": "30" }, "1482": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4088, 4107 ], "op": "DUP2", "path": "30" }, "1483": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4088, 4107 ], "op": "LT", "path": "30" }, "1484": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "ISZERO", "path": "30" }, "1485": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "PUSH2", "path": "30", "value": "0x62B" }, "1488": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "JUMPI", "path": "30" }, "1489": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4205, 4235 ], "op": "PUSH2", "path": "30", "statement": 10, "value": "0x60C" }, "1492": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4223 ], "op": "DUP8", "path": "30" }, "1493": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4223 ], "op": "DUP8", "path": "30" }, "1494": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4224, 4225 ], "op": "DUP4", "path": "30" }, "1495": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "DUP2", "path": "30" }, "1496": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "DUP2", "path": "30" }, "1497": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "LT", "path": "30" }, "1498": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "PUSH2", "path": "30", "value": "0x5DF" }, "1501": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "JUMPI", "path": "30" }, "1502": { "dev": "Index out of range", "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "INVALID", "path": "30" }, "1503": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "JUMPDEST", "path": "30" }, "1504": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "SWAP1", "path": "30" }, "1505": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "POP", "path": "30" }, "1506": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1508": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "MUL", "path": "30" }, "1509": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "ADD", "path": "30" }, "1510": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1512": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "DUP2", "path": "30" }, "1513": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "ADD", "path": "30" }, "1514": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "SWAP1", "path": "30" }, "1515": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "PUSH2", "path": "30", "value": "0x5F4" }, "1518": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "SWAP2", "path": "30" }, "1519": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "SWAP1", "path": "30" }, "1520": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "PUSH2", "path": "30", "value": "0x2F75" }, "1523": { "fn": "ERC1155Action.balanceOfBatch", "jump": "i", "offset": [ 4215, 4226 ], "op": "JUMP", "path": "30" }, "1524": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4215, 4226 ], "op": "JUMPDEST", "path": "30" }, "1525": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4231 ], "op": "DUP7", "path": "30" }, "1526": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4231 ], "op": "DUP7", "path": "30" }, "1527": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4232, 4233 ], "op": "DUP5", "path": "30" }, "1528": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "DUP2", "path": "30" }, "1529": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "DUP2", "path": "30" }, "1530": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "LT", "path": "30" }, "1531": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "PUSH2", "path": "30", "value": "0x600" }, "1534": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "JUMPI", "path": "30" }, "1535": { "dev": "Index out of range", "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "INVALID", "path": "30" }, "1536": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "JUMPDEST", "path": "30" }, "1537": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "SWAP1", "path": "30" }, "1538": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "POP", "path": "30" }, "1539": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1541": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "MUL", "path": "30" }, "1542": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "ADD", "path": "30" }, "1543": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4228, 4234 ], "op": "CALLDATALOAD", "path": "30" }, "1544": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4205, 4214 ], "op": "PUSH2", "path": "30", "value": "0x2E0" }, "1547": { "fn": "ERC1155Action.balanceOfBatch", "jump": "i", "offset": [ 4205, 4235 ], "op": "JUMP", "path": "30" }, "1548": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4205, 4235 ], "op": "JUMPDEST", "path": "30" }, "1549": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4199 ], "op": "DUP3", "path": "30" }, "1550": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4200, 4201 ], "op": "DUP3", "path": "30" }, "1551": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "DUP2", "path": "30" }, "1552": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "MLOAD", "path": "30" }, "1553": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "DUP2", "path": "30" }, "1554": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "LT", "path": "30" }, "1555": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "PUSH2", "path": "30", "value": "0x618" }, "1558": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "JUMPI", "path": "30" }, "1559": { "dev": "Index out of range", "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "INVALID", "path": "30" }, "1560": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "JUMPDEST", "path": "30" }, "1561": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1563": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "SWAP1", "path": "30" }, "1564": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "DUP2", "path": "30" }, "1565": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "MUL", "path": "30" }, "1566": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "SWAP2", "path": "30" }, "1567": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "SWAP1", "path": "30" }, "1568": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "SWAP2", "path": "30" }, "1569": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "ADD", "path": "30" }, "1570": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4202 ], "op": "ADD", "path": "30" }, "1571": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4192, 4235 ], "op": "MSTORE", "path": "30" }, "1572": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4109, 4112 ], "op": "PUSH1", "path": "30", "statement": 11, "value": "0x1" }, "1574": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4109, 4112 ], "op": "ADD", "path": "30" }, "1575": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "PUSH2", "path": "30", "value": "0x5C8" }, "1578": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "JUMP", "path": "30" }, "1579": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4072, 4246 ], "op": "JUMPDEST", "path": "30" }, "1580": { "op": "POP" }, "1581": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 4263, 4270 ], "op": "SWAP6", "path": "30", "statement": 12 }, "1582": { "fn": "ERC1155Action.balanceOfBatch", "offset": [ 3783, 4277 ], "op": "SWAP5", "path": "30" }, "1583": { "op": "POP" }, "1584": { "op": "POP" }, "1585": { "op": "POP" }, "1586": { "op": "POP" }, "1587": { "op": "POP" }, "1588": { "fn": "ERC1155Action.balanceOfBatch", "jump": "o", "offset": [ 3783, 4277 ], "op": "JUMP", "path": "30" }, "1589": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "JUMPDEST", "path": "30" }, "1590": { "fn": "ERC1155Action.encodeToId", "offset": [ 13449, 13456 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1592": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "PUSH2", "path": "30", "statement": 13, "value": "0x650" }, "1595": { "fn": "ERC1155Action.encodeToId", "offset": [ 13504, 13514 ], "op": "DUP5", "path": "30" }, "1596": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "PUSH2", "path": "30", "value": "0xFFFF" }, "1599": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "AND", "path": "30" }, "1600": { "fn": "ERC1155Action.encodeToId", "offset": [ 13516, 13524 ], "op": "DUP5", "path": "30" }, "1601": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "PUSH5", "path": "30", "value": "0xFFFFFFFFFF" }, "1607": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "AND", "path": "30" }, "1608": { "fn": "ERC1155Action.encodeToId", "offset": [ 13526, 13535 ], "op": "DUP5", "path": "30" }, "1609": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "PUSH1", "path": "30", "value": "0xFF" }, "1611": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "AND", "path": "30" }, "1612": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13503 ], "op": "PUSH2", "path": "30", "value": "0x124C" }, "1615": { "fn": "ERC1155Action.encodeToId", "jump": "i", "offset": [ 13475, 13536 ], "op": "JUMP", "path": "30" }, "1616": { "fn": "ERC1155Action.encodeToId", "offset": [ 13475, 13536 ], "op": "JUMPDEST", "path": "30" }, "1617": { "fn": "ERC1155Action.encodeToId", "offset": [ 13468, 13536 ], "op": "SWAP1", "path": "30" }, "1618": { "fn": "ERC1155Action.encodeToId", "offset": [ 13468, 13536 ], "op": "POP", "path": "30" }, "1619": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "JUMPDEST", "path": "30" }, "1620": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "SWAP4", "path": "30" }, "1621": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "SWAP3", "path": "30" }, "1622": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "POP", "path": "30" }, "1623": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "POP", "path": "30" }, "1624": { "fn": "ERC1155Action.encodeToId", "offset": [ 13314, 13543 ], "op": "POP", "path": "30" }, "1625": { "fn": "ERC1155Action.encodeToId", "jump": "o", "offset": [ 13314, 13543 ], "op": "JUMP", "path": "30" }, "1626": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 2949, 3452 ], "op": "JUMPDEST", "path": "30" }, "1627": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3096, 3111 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "1629": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3135, 3164 ], "op": "DUP4", "path": "30", "statement": 14 }, "1630": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3135, 3164 ], "op": "DUP3", "path": "30" }, "1631": { "branch": 288, "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3135, 3164 ], "op": "EQ", "path": "30" }, "1632": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3127, 3165 ], "op": "PUSH2", "path": "30", "value": "0x668" }, "1635": { "branch": 288, "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3127, 3165 ], "op": "JUMPI", "path": "30" }, "1636": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3127, 3165 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1638": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3127, 3165 ], "op": "DUP1", "path": "30" }, "1639": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3127, 3165 ], "op": "REVERT", "path": "30" }, "1640": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3127, 3165 ], "op": "JUMPDEST", "path": "30" }, "1641": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3175, 3198 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1643": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3214, 3222 ], "op": "DUP5", "path": "30" }, "1644": { "op": "PUSH1", "value": "0x1" }, "1646": { "op": "PUSH1", "value": "0x1" }, "1648": { "op": "PUSH1", "value": "0x40" }, "1650": { "op": "SHL" }, "1651": { "op": "SUB" }, "1652": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP2", "path": "30" }, "1653": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "GT", "path": "30" }, "1654": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP1", "path": "30" }, "1655": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "ISZERO", "path": "30" }, "1656": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH2", "path": "30", "value": "0x680" }, "1659": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "JUMPI", "path": "30" }, "1660": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1662": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP1", "path": "30" }, "1663": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "REVERT", "path": "30" }, "1664": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "JUMPDEST", "path": "30" }, "1665": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "POP", "path": "30" }, "1666": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1668": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "MLOAD", "path": "30" }, "1669": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "SWAP1", "path": "30" }, "1670": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP1", "path": "30" }, "1671": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP3", "path": "30" }, "1672": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "MSTORE", "path": "30" }, "1673": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP1", "path": "30" }, "1674": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1676": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "MUL", "path": "30" }, "1677": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1679": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "ADD", "path": "30" }, "1680": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP3", "path": "30" }, "1681": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "ADD", "path": "30" }, "1682": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1684": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "MSTORE", "path": "30" }, "1685": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP1", "path": "30" }, "1686": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "ISZERO", "path": "30" }, "1687": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH2", "path": "30", "value": "0x6AA" }, "1690": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "JUMPI", "path": "30" }, "1691": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP2", "path": "30" }, "1692": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1694": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "ADD", "path": "30" }, "1695": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1697": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP3", "path": "30" }, "1698": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "MUL", "path": "30" }, "1699": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP1", "path": "30" }, "1700": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "CALLDATASIZE", "path": "30" }, "1701": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "DUP4", "path": "30" }, "1702": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "CALLDATACOPY", "path": "30" }, "1703": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "ADD", "path": "30" }, "1704": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "SWAP1", "path": "30" }, "1705": { "op": "POP" }, "1706": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "JUMPDEST", "path": "30" }, "1707": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3201, 3230 ], "op": "POP", "path": "30" }, "1708": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3175, 3230 ], "op": "SWAP1", "path": "30" }, "1709": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3175, 3230 ], "op": "POP", "path": "30" }, "1710": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3246, 3255 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1712": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3241, 3421 ], "op": "JUMPDEST", "path": "30" }, "1713": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3257, 3276 ], "op": "DUP6", "path": "30" }, "1714": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3257, 3276 ], "op": "DUP2", "path": "30" }, "1715": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3257, 3276 ], "op": "LT", "path": "30" }, "1716": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3241, 3421 ], "op": "ISZERO", "path": "30" }, "1717": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3241, 3421 ], "op": "PUSH2", "path": "30", "value": "0x62B" }, "1720": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3241, 3421 ], "op": "JUMPI", "path": "30" }, "1721": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3374, 3410 ], "op": "PUSH2", "path": "30", "statement": 15, "value": "0x6F4" }, "1724": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3398 ], "op": "DUP8", "path": "30" }, "1725": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3398 ], "op": "DUP8", "path": "30" }, "1726": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3399, 3400 ], "op": "DUP4", "path": "30" }, "1727": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "DUP2", "path": "30" }, "1728": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "DUP2", "path": "30" }, "1729": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "LT", "path": "30" }, "1730": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "PUSH2", "path": "30", "value": "0x6C7" }, "1733": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "JUMPI", "path": "30" }, "1734": { "dev": "Index out of range", "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "INVALID", "path": "30" }, "1735": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "JUMPDEST", "path": "30" }, "1736": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "SWAP1", "path": "30" }, "1737": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "POP", "path": "30" }, "1738": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1740": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "MUL", "path": "30" }, "1741": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "ADD", "path": "30" }, "1742": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1744": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "DUP2", "path": "30" }, "1745": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "ADD", "path": "30" }, "1746": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "SWAP1", "path": "30" }, "1747": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "PUSH2", "path": "30", "value": "0x6DC" }, "1750": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "SWAP2", "path": "30" }, "1751": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "SWAP1", "path": "30" }, "1752": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "PUSH2", "path": "30", "value": "0x2F75" }, "1755": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "i", "offset": [ 3390, 3401 ], "op": "JUMP", "path": "30" }, "1756": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3390, 3401 ], "op": "JUMPDEST", "path": "30" }, "1757": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3406 ], "op": "DUP7", "path": "30" }, "1758": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3406 ], "op": "DUP7", "path": "30" }, "1759": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3407, 3408 ], "op": "DUP5", "path": "30" }, "1760": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "DUP2", "path": "30" }, "1761": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "DUP2", "path": "30" }, "1762": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "LT", "path": "30" }, "1763": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "PUSH2", "path": "30", "value": "0x6E8" }, "1766": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "JUMPI", "path": "30" }, "1767": { "dev": "Index out of range", "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "INVALID", "path": "30" }, "1768": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "JUMPDEST", "path": "30" }, "1769": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "SWAP1", "path": "30" }, "1770": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "POP", "path": "30" }, "1771": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1773": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "MUL", "path": "30" }, "1774": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "ADD", "path": "30" }, "1775": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3403, 3409 ], "op": "CALLDATALOAD", "path": "30" }, "1776": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3374, 3389 ], "op": "PUSH2", "path": "30", "value": "0x32C" }, "1779": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "i", "offset": [ 3374, 3410 ], "op": "JUMP", "path": "30" }, "1780": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3374, 3410 ], "op": "JUMPDEST", "path": "30" }, "1781": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3368 ], "op": "DUP3", "path": "30" }, "1782": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3369, 3370 ], "op": "DUP3", "path": "30" }, "1783": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "DUP2", "path": "30" }, "1784": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "MLOAD", "path": "30" }, "1785": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "DUP2", "path": "30" }, "1786": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "LT", "path": "30" }, "1787": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "PUSH2", "path": "30", "value": "0x700" }, "1790": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "JUMPI", "path": "30" }, "1791": { "dev": "Index out of range", "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "INVALID", "path": "30" }, "1792": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "JUMPDEST", "path": "30" }, "1793": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1795": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "SWAP1", "path": "30" }, "1796": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "DUP2", "path": "30" }, "1797": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "MUL", "path": "30" }, "1798": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "SWAP2", "path": "30" }, "1799": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "SWAP1", "path": "30" }, "1800": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "SWAP2", "path": "30" }, "1801": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "ADD", "path": "30" }, "1802": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3371 ], "op": "ADD", "path": "30" }, "1803": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3361, 3410 ], "op": "MSTORE", "path": "30" }, "1804": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3278, 3281 ], "op": "PUSH1", "path": "30", "statement": 16, "value": "0x1" }, "1806": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3278, 3281 ], "op": "ADD", "path": "30" }, "1807": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3241, 3421 ], "op": "PUSH2", "path": "30", "value": "0x6B0" }, "1810": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 3241, 3421 ], "op": "JUMP", "path": "30" }, "1811": { "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "1812": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "PUSH1", "path": "63", "value": "0x1" }, "1814": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "SLOAD", "path": "63" }, "1815": { "op": "PUSH1", "value": "0x1" }, "1817": { "op": "PUSH1", "value": "0x1" }, "1819": { "op": "PUSH1", "value": "0xA0" }, "1821": { "op": "SHL" }, "1822": { "op": "SUB" }, "1823": { "offset": [ 920, 946 ], "op": "AND", "path": "63" }, "1824": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 920, 946 ], "op": "DUP2", "path": "63" }, "1825": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "o", "offset": [ 920, 946 ], "op": "JUMP", "path": "63" }, "1826": { "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "1827": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "1829": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "SLOAD", "path": "63" }, "1830": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "PUSH5", "path": "63", "value": "0x100000000" }, "1836": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "SWAP1", "path": "63" }, "1837": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "DIV", "path": "63" }, "1838": { "op": "PUSH1", "value": "0x1" }, "1840": { "op": "PUSH1", "value": "0x1" }, "1842": { "op": "PUSH1", "value": "0xA0" }, "1844": { "op": "SHL" }, "1845": { "op": "SUB" }, "1846": { "offset": [ 811, 831 ], "op": "AND", "path": "63" }, "1847": { "fn": "ERC1155Action.signedBalanceOfBatch", "offset": [ 811, 831 ], "op": "DUP2", "path": "63" }, "1848": { "fn": "ERC1155Action.signedBalanceOfBatch", "jump": "o", "offset": [ 811, 831 ], "op": "JUMP", "path": "63" }, "1849": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "JUMPDEST", "path": "30" }, "1850": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19389, 19399 ], "op": "CALLER", "path": "30", "statement": 17 }, "1851": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "1853": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "DUP2", "path": "30" }, "1854": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "DUP2", "path": "30" }, "1855": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "MSTORE", "path": "30" }, "1856": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19388 ], "op": "PUSH1", "path": "30", "value": "0x7" }, "1858": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "1860": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "SWAP1", "path": "30" }, "1861": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "DUP2", "path": "30" }, "1862": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "MSTORE", "path": "30" }, "1863": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1865": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "DUP1", "path": "30" }, "1866": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "DUP4", "path": "30" }, "1867": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19400 ], "op": "KECCAK256", "path": "30" }, "1868": { "op": "PUSH1", "value": "0x1" }, "1870": { "op": "PUSH1", "value": "0x1" }, "1872": { "op": "PUSH1", "value": "0xA0" }, "1874": { "op": "SHL" }, "1875": { "op": "SUB" }, "1876": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "DUP8", "path": "30" }, "1877": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "AND", "path": "30" }, "1878": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "DUP1", "path": "30" }, "1879": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "DUP6", "path": "30" }, "1880": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "MSTORE", "path": "30" }, "1881": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "SWAP3", "path": "30" }, "1882": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "MSTORE", "path": "30" }, "1883": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "SWAP2", "path": "30" }, "1884": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "DUP3", "path": "30" }, "1885": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "SWAP1", "path": "30" }, "1886": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "KECCAK256", "path": "30" }, "1887": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "DUP1", "path": "30" }, "1888": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "SLOAD", "path": "30" }, "1889": { "op": "PUSH1", "value": "0xFF" }, "1891": { "op": "NOT" }, "1892": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "AND", "path": "30" }, "1893": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "DUP6", "path": "30" }, "1894": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "ISZERO", "path": "30" }, "1895": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "ISZERO", "path": "30" }, "1896": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "OR", "path": "30" }, "1897": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "SWAP1", "path": "30" }, "1898": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "SSTORE", "path": "30" }, "1899": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "SWAP1", "path": "30", "statement": 18 }, "1900": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "MLOAD", "path": "30" }, "1901": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "SWAP1", "path": "30" }, "1902": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19410 ], "op": "SWAP2", "path": "30" }, "1903": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19389, 19399 ], "op": "SWAP1", "path": "30" }, "1904": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "PUSH32", "path": "30", "value": "0x17307EAB39AB6107E8899845AD3D59BD9653F200F220920489CA2B5937696C31" }, "1937": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "SWAP1", "path": "30" }, "1938": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "PUSH2", "path": "30", "value": "0x79C" }, "1941": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "SWAP1", "path": "30" }, "1942": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "DUP6", "path": "30" }, "1943": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19355, 19421 ], "op": "SWAP1", "path": "30" }, "1944": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "PUSH2", "path": "30", "value": "0x3625" }, "1947": { "fn": "ERC1155Action.setApprovalForAll", "jump": "i", "offset": [ 19436, 19482 ], "op": "JUMP", "path": "30" }, "1948": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "JUMPDEST", "path": "30" }, "1949": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "1951": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "MLOAD", "path": "30" }, "1952": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "DUP1", "path": "30" }, "1953": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "SWAP2", "path": "30" }, "1954": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "SUB", "path": "30" }, "1955": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "SWAP1", "path": "30" }, "1956": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19436, 19482 ], "op": "LOG3", "path": "30" }, "1957": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "POP", "path": "30" }, "1958": { "fn": "ERC1155Action.setApprovalForAll", "offset": [ 19267, 19489 ], "op": "POP", "path": "30" }, "1959": { "fn": "ERC1155Action.setApprovalForAll", "jump": "o", "offset": [ 19267, 19489 ], "op": "JUMP", "path": "30" }, "1960": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "JUMPDEST", "path": "30" }, "1961": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20244, 20275 ], "op": "PUSH20", "path": "30", "statement": 19, "value": "0x0" }, "1982": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20277, 20306 ], "op": "PUSH20", "path": "30", "value": "0x0" }, "2003": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "SWAP1", "path": "30" }, "2004": { "fn": "ERC1155Action.getLibInfo", "offset": [ 20163, 20314 ], "op": "SWAP2", "path": "30" }, "2005": { "fn": "ERC1155Action.getLibInfo", "jump": "o", "offset": [ 20163, 20314 ], "op": "JUMP", "path": "30" }, "2006": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19806, 20075 ], "op": "JUMPDEST", "path": "30" }, "2007": { "op": "PUSH1", "value": "0x1" }, "2009": { "op": "PUSH1", "value": "0x1" }, "2011": { "op": "PUSH1", "value": "0xA0" }, "2013": { "op": "SHL" }, "2014": { "op": "SUB" }, "2015": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "DUP2", "path": "30" }, "2016": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "AND", "path": "30" }, "2017": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19929, 19933 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2019": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "SWAP1", "path": "30" }, "2020": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "DUP2", "path": "30" }, "2021": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "MSTORE", "path": "30" }, "2022": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19975 ], "op": "PUSH1", "path": "30", "value": "0x6" }, "2024": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2026": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "MSTORE", "path": "30" }, "2027": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2029": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "DUP2", "path": "30" }, "2030": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "KECCAK256", "path": "30" }, "2031": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "SLOAD", "path": "30" }, "2032": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "PUSH1", "path": "30", "value": "0xFF" }, "2034": { "branch": 289, "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19953, 19985 ], "op": "AND", "path": "30" }, "2035": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19949, 19998 ], "op": "ISZERO", "path": "30" }, "2036": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19949, 19998 ], "op": "PUSH2", "path": "30", "value": "0x7FF" }, "2039": { "branch": 289, "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19949, 19998 ], "op": "JUMPI", "path": "30" }, "2040": { "op": "POP" }, "2041": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19994, 19998 ], "op": "PUSH1", "path": "30", "statement": 20, "value": "0x1" }, "2043": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19987, 19998 ], "op": "PUSH2", "path": "30", "value": "0x30C" }, "2046": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19987, 19998 ], "op": "JUMP", "path": "30" }, "2047": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 19949, 19998 ], "op": "JUMPDEST", "path": "30" }, "2048": { "op": "POP" }, "2049": { "op": "PUSH1", "value": "0x1" }, "2051": { "op": "PUSH1", "value": "0x1" }, "2053": { "op": "PUSH1", "value": "0xA0" }, "2055": { "op": "SHL" }, "2056": { "op": "SUB" }, "2057": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "SWAP2", "path": "30", "statement": 21 }, "2058": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "DUP3", "path": "30" }, "2059": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "AND", "path": "30" }, "2060": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2062": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "SWAP1", "path": "30" }, "2063": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "DUP2", "path": "30" }, "2064": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "MSTORE", "path": "30" }, "2065": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20049 ], "op": "PUSH1", "path": "30", "value": "0x7" }, "2067": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2069": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "SWAP1", "path": "30" }, "2070": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "DUP2", "path": "30" }, "2071": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "MSTORE", "path": "30" }, "2072": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2074": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "DUP1", "path": "30" }, "2075": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "DUP4", "path": "30" }, "2076": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20058 ], "op": "KECCAK256", "path": "30" }, "2077": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP4", "path": "30" }, "2078": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP1", "path": "30" }, "2079": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP5", "path": "30" }, "2080": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "AND", "path": "30" }, "2081": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "DUP3", "path": "30" }, "2082": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "MSTORE", "path": "30" }, "2083": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP2", "path": "30" }, "2084": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP1", "path": "30" }, "2085": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP2", "path": "30" }, "2086": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "MSTORE", "path": "30" }, "2087": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "KECCAK256", "path": "30" }, "2088": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SLOAD", "path": "30" }, "2089": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "PUSH1", "path": "30", "value": "0xFF" }, "2091": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "AND", "path": "30" }, "2092": { "fn": "ERC1155Action.isApprovedForAll", "offset": [ 20016, 20068 ], "op": "SWAP1", "path": "30" }, "2093": { "fn": "ERC1155Action.isApprovedForAll", "jump": "o", "offset": [ 19806, 20075 ], "op": "JUMP", "path": "30" }, "2094": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "JUMPDEST", "path": "30" }, "2095": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6663, 6690 ], "op": "PUSH2", "path": "30", "statement": 22, "value": "0x838" }, "2098": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6681, 6685 ], "op": "DUP7", "path": "30" }, "2099": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6687, 6689 ], "op": "DUP7", "path": "30" }, "2100": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6663, 6680 ], "op": "PUSH2", "path": "30", "value": "0xBDE" }, "2103": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 6663, 6690 ], "op": "JUMP", "path": "30" }, "2104": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6663, 6690 ], "op": "JUMPDEST", "path": "30" }, "2105": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6814, 6847 ], "op": "PUSH2", "path": "30", "value": "0x840" }, "2108": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6814, 6847 ], "op": "PUSH2", "path": "30", "value": "0x2E31" }, "2111": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 6814, 6847 ], "op": "JUMP", "path": "30" }, "2112": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6814, 6847 ], "op": "JUMPDEST", "path": "30" }, "2113": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6861, 6871 ], "op": "DUP4", "path": "30" }, "2114": { "branch": 290, "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6861, 6871 ], "op": "ISZERO", "path": "30" }, "2115": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "PUSH2", "path": "30", "value": "0x936" }, "2118": { "branch": 290, "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "JUMPI", "path": "30" }, "2119": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2121": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP1", "path": "30" }, "2122": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "MLOAD", "path": "30" }, "2123": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6941, 6942 ], "op": "PUSH1", "path": "30", "value": "0x1" }, "2125": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP1", "path": "30" }, "2126": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP3", "path": "30" }, "2127": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "MSTORE", "path": "30" }, "2128": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP2", "path": "30" }, "2129": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP4", "path": "30" }, "2130": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "ADD", "path": "30" }, "2131": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SWAP1", "path": "30" }, "2132": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SWAP3", "path": "30" }, "2133": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "MSTORE", "path": "30" }, "2134": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6887, 6917 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2136": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6887, 6917 ], "op": "SWAP2", "path": "30" }, "2137": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP2", "path": "30" }, "2138": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2140": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "ADD", "path": "30" }, "2141": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "JUMPDEST", "path": "30" }, "2142": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH2", "path": "30", "value": "0x865" }, "2145": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH2", "path": "30", "value": "0x2E5F" }, "2148": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 6920, 6943 ], "op": "JUMP", "path": "30" }, "2149": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "JUMPDEST", "path": "30" }, "2150": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP2", "path": "30" }, "2151": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "MSTORE", "path": "30" }, "2152": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2154": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "ADD", "path": "30" }, "2155": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SWAP1", "path": "30" }, "2156": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH1", "path": "30", "value": "0x1" }, "2158": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SWAP1", "path": "30" }, "2159": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SUB", "path": "30" }, "2160": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SWAP1", "path": "30" }, "2161": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "DUP2", "path": "30" }, "2162": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "PUSH2", "path": "30", "value": "0x85D" }, "2165": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "JUMPI", "path": "30" }, "2166": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "SWAP1", "path": "30" }, "2167": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "POP", "path": "30" }, "2168": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6920, 6943 ], "op": "POP", "path": "30" }, "2169": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6887, 6943 ], "op": "SWAP1", "path": "30" }, "2170": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6887, 6943 ], "op": "POP", "path": "30" }, "2171": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6957, 6984 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2173": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6993 ], "op": "DUP2", "path": "30" }, "2174": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6994, 6995 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2176": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "DUP2", "path": "30" }, "2177": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "MLOAD", "path": "30" }, "2178": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "DUP2", "path": "30" }, "2179": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "LT", "path": "30" }, "2180": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "PUSH2", "path": "30", "value": "0x889" }, "2183": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "JUMPI", "path": "30" }, "2184": { "dev": "Index out of range", "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "INVALID", "path": "30" }, "2185": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "JUMPDEST", "path": "30" }, "2186": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2188": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "MUL", "path": "30" }, "2189": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2191": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "ADD", "path": "30" }, "2192": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "ADD", "path": "30" }, "2193": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6987, 6996 ], "op": "MLOAD", "path": "30" }, "2194": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6957, 6996 ], "op": "SWAP1", "path": "30" }, "2195": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6957, 6996 ], "op": "POP", "path": "30" }, "2196": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7065, 7097 ], "op": "PUSH2", "path": "30", "statement": 23, "value": "0x89C" }, "2199": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7094, 7096 ], "op": "DUP8", "path": "30" }, "2200": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7065, 7093 ], "op": "PUSH2", "path": "30", "value": "0x12A7" }, "2203": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7065, 7097 ], "op": "JUMP", "path": "30" }, "2204": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7065, 7097 ], "op": "JUMPDEST", "path": "30" }, "2205": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7046, 7061 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2207": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7046, 7061 ], "op": "DUP5", "path": "30" }, "2208": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7046, 7061 ], "op": "ADD", "path": "30" }, "2209": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7011, 7097 ], "op": "MSTORE", "path": "30" }, "2210": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7030, 7044 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2212": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7030, 7044 ], "op": "DUP4", "path": "30" }, "2213": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7030, 7044 ], "op": "ADD", "path": "30" }, "2214": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7011, 7097 ], "op": "MSTORE", "path": "30" }, "2215": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7011, 7097 ], "op": "DUP2", "path": "30" }, "2216": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7011, 7097 ], "op": "MSTORE", "path": "30" }, "2217": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7204, 7228 ], "op": "PUSH2", "path": "30", "statement": 24, "value": "0x8B1" }, "2220": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7221, 7227 ], "op": "DUP7", "path": "30" }, "2221": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7204, 7220 ], "op": "PUSH2", "path": "30", "value": "0x12C4" }, "2224": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7204, 7228 ], "op": "JUMP", "path": "30" }, "2225": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7204, 7228 ], "op": "JUMPDEST", "path": "30" }, "2226": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7187, 7201 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "2228": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7187, 7201 ], "op": "DUP3", "path": "30" }, "2229": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7187, 7201 ], "op": "ADD", "path": "30" }, "2230": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7187, 7228 ], "op": "MSTORE", "path": "30" }, "2231": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7264, 7280 ], "op": "DUP1", "path": "30", "statement": 25 }, "2232": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7264, 7280 ], "op": "MLOAD", "path": "30" }, "2233": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7282, 7296 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2235": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7282, 7296 ], "op": "DUP3", "path": "30" }, "2236": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7282, 7296 ], "op": "ADD", "path": "30" }, "2237": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7282, 7296 ], "op": "MLOAD", "path": "30" }, "2238": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7242, 7314 ], "op": "PUSH2", "path": "30", "value": "0x8C8" }, "2241": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7242, 7314 ], "op": "SWAP2", "path": "30" }, "2242": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7264, 7280 ], "op": "SWAP1", "path": "30" }, "2243": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7298, 7313 ], "op": "TIMESTAMP", "path": "30" }, "2244": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7242, 7263 ], "op": "PUSH2", "path": "30", "value": "0x12DA" }, "2247": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7242, 7314 ], "op": "JUMP", "path": "30" }, "2248": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7242, 7314 ], "op": "JUMPDEST", "path": "30" }, "2249": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7393, 7420 ], "op": "PUSH2", "path": "30", "statement": 26, "value": "0x8D3" }, "2252": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7403, 7407 ], "op": "DUP10", "path": "30" }, "2253": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7409, 7411 ], "op": "DUP10", "path": "30" }, "2254": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7413, 7419 ], "op": "DUP5", "path": "30" }, "2255": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7393, 7402 ], "op": "PUSH2", "path": "30", "value": "0xDC8" }, "2258": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7393, 7420 ], "op": "JUMP", "path": "30" }, "2259": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7393, 7420 ], "op": "JUMPDEST", "path": "30" }, "2260": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7360, 7420 ], "op": "POP", "path": "30" }, "2261": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7360, 7420 ], "op": "DUP1", "path": "30" }, "2262": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7360, 7420 ], "op": "SWAP4", "path": "30" }, "2263": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7360, 7420 ], "op": "POP", "path": "30" }, "2264": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7360, 7420 ], "op": "POP", "path": "30" }, "2265": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7473, 7475 ], "op": "DUP8", "path": "30", "statement": 27 }, "2266": { "op": "PUSH1", "value": "0x1" }, "2268": { "op": "PUSH1", "value": "0x1" }, "2270": { "op": "PUSH1", "value": "0xA0" }, "2272": { "op": "SHL" }, "2273": { "op": "SUB" }, "2274": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "AND", "path": "30" }, "2275": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7467, 7471 ], "op": "DUP10", "path": "30" }, "2276": { "op": "PUSH1", "value": "0x1" }, "2278": { "op": "PUSH1", "value": "0x1" }, "2280": { "op": "PUSH1", "value": "0xA0" }, "2282": { "op": "SHL" }, "2283": { "op": "SUB" }, "2284": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "AND", "path": "30" }, "2285": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7455, 7465 ], "op": "CALLER", "path": "30" }, "2286": { "op": "PUSH1", "value": "0x1" }, "2288": { "op": "PUSH1", "value": "0x1" }, "2290": { "op": "PUSH1", "value": "0xA0" }, "2292": { "op": "SHL" }, "2293": { "op": "SUB" }, "2294": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "AND", "path": "30" }, "2295": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "PUSH32", "path": "30", "value": "0xC3D58168C5AE7397731D063D5BBF3D657854427343F4C083240F7AACAA2D0F62" }, "2328": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7477, 7479 ], "op": "DUP11", "path": "30" }, "2329": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7481, 7487 ], "op": "DUP11", "path": "30" }, "2330": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2332": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "MLOAD", "path": "30" }, "2333": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "PUSH2", "path": "30", "value": "0x927" }, "2336": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "SWAP3", "path": "30" }, "2337": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "SWAP2", "path": "30" }, "2338": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "SWAP1", "path": "30" }, "2339": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "PUSH2", "path": "30", "value": "0x37DF" }, "2342": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7440, 7488 ], "op": "JUMP", "path": "30" }, "2343": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "JUMPDEST", "path": "30" }, "2344": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2346": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "MLOAD", "path": "30" }, "2347": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "DUP1", "path": "30" }, "2348": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "SWAP2", "path": "30" }, "2349": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "SUB", "path": "30" }, "2350": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "SWAP1", "path": "30" }, "2351": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7440, 7488 ], "op": "LOG4", "path": "30" }, "2352": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "POP", "path": "30" }, "2353": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "POP", "path": "30" }, "2354": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "PUSH2", "path": "30", "value": "0x942" }, "2357": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "JUMP", "path": "30" }, "2358": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "JUMPDEST", "path": "30" }, "2359": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7533, 7578 ], "op": "PUSH2", "path": "30", "statement": 28, "value": "0x93F" }, "2362": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7573, 7577 ], "op": "DUP8", "path": "30" }, "2363": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7533, 7572 ], "op": "PUSH2", "path": "30", "value": "0xA36" }, "2366": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7533, 7578 ], "op": "JUMP", "path": "30" }, "2367": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7533, 7578 ], "op": "JUMPDEST", "path": "30" }, "2368": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7519, 7578 ], "op": "SWAP1", "path": "30" }, "2369": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7519, 7578 ], "op": "POP", "path": "30" }, "2370": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6857, 7589 ], "op": "JUMPDEST", "path": "30" }, "2371": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7710, 7741 ], "op": "PUSH2", "path": "30", "value": "0x94A" }, "2374": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7710, 7741 ], "op": "PUSH2", "path": "30", "value": "0x2E31" }, "2377": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7710, 7741 ], "op": "JUMP", "path": "30" }, "2378": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7710, 7741 ], "op": "JUMPDEST", "path": "30" }, "2379": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7751, 7821 ], "op": "PUSH2", "path": "30", "statement": 29, "value": "0x95A" }, "2382": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7775, 7779 ], "op": "DUP9", "path": "30" }, "2383": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7781, 7783 ], "op": "DUP9", "path": "30" }, "2384": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7785, 7796 ], "op": "DUP5", "path": "30" }, "2385": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7798, 7807 ], "op": "DUP5", "path": "30" }, "2386": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7809, 7813 ], "op": "DUP9", "path": "30" }, "2387": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7809, 7813 ], "op": "DUP9", "path": "30" }, "2388": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7815, 7820 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2390": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7751, 7774 ], "op": "PUSH2", "path": "30", "value": "0xF68" }, "2393": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7751, 7821 ], "op": "JUMP", "path": "30" }, "2394": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7751, 7821 ], "op": "JUMPDEST", "path": "30" }, "2395": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7903, 7925 ], "op": "PUSH2", "path": "30", "value": "0x963" }, "2398": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7922, 7924 ], "op": "DUP8", "path": "30" }, "2399": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7903, 7921 ], "op": "PUSH2", "path": "30", "value": "0x1246" }, "2402": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7903, 7925 ], "op": "JUMP", "path": "30" }, "2403": { "branch": 291, "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7903, 7925 ], "op": "JUMPDEST", "path": "30" }, "2404": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7899, 8142 ], "op": "ISZERO", "path": "30" }, "2405": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7899, 8142 ], "op": "PUSH2", "path": "30", "value": "0xA19" }, "2408": { "branch": 291, "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7899, 8142 ], "op": "JUMPI", "path": "30" }, "2409": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "statement": 30, "value": "0x40" }, "2411": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "MLOAD", "path": "30" }, "2412": { "op": "PUSH4", "value": "0xF23A6E61" }, "2417": { "op": "PUSH1", "value": "0xE0" }, "2419": { "op": "SHL" }, "2420": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2421": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP3", "path": "30" }, "2422": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "MSTORE", "path": "30" }, "2423": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8085 ], "op": "SWAP1", "path": "30" }, "2424": { "op": "PUSH1", "value": "0x1" }, "2426": { "op": "PUSH1", "value": "0x1" }, "2428": { "op": "PUSH1", "value": "0xA0" }, "2430": { "op": "SHL" }, "2431": { "op": "SUB" }, "2432": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8009 ], "op": "DUP10", "path": "30" }, "2433": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8009 ], "op": "AND", "path": "30" }, "2434": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8009 ], "op": "SWAP1", "path": "30" }, "2435": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8009 ], "op": "PUSH4", "path": "30", "value": "0xF23A6E61" }, "2440": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8009 ], "op": "SWAP1", "path": "30" }, "2441": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH2", "path": "30", "value": "0x9A0" }, "2444": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "SWAP1", "path": "30" }, "2445": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8010, 8020 ], "op": "CALLER", "path": "30" }, "2446": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8010, 8020 ], "op": "SWAP1", "path": "30" }, "2447": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8022, 8026 ], "op": "DUP14", "path": "30" }, "2448": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8022, 8026 ], "op": "SWAP1", "path": "30" }, "2449": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8028, 8030 ], "op": "DUP13", "path": "30" }, "2450": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8028, 8030 ], "op": "SWAP1", "path": "30" }, "2451": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8032, 8038 ], "op": "DUP13", "path": "30" }, "2452": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8032, 8038 ], "op": "SWAP1", "path": "30" }, "2453": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8040, 8044 ], "op": "DUP13", "path": "30" }, "2454": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8040, 8044 ], "op": "SWAP1", "path": "30" }, "2455": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8040, 8044 ], "op": "DUP13", "path": "30" }, "2456": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 8040, 8044 ], "op": "SWAP1", "path": "30" }, "2457": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "2459": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ADD", "path": "30" }, "2460": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH2", "path": "30", "value": "0x346C" }, "2463": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7966, 8045 ], "op": "JUMP", "path": "30" }, "2464": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "JUMPDEST", "path": "30" }, "2465": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2467": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2469": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "MLOAD", "path": "30" }, "2470": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2471": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP4", "path": "30" }, "2472": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "SUB", "path": "30" }, "2473": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP2", "path": "30" }, "2474": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2476": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP8", "path": "30" }, "2477": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2478": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "EXTCODESIZE", "path": "30" }, "2479": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ISZERO", "path": "30" }, "2480": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2481": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ISZERO", "path": "30" }, "2482": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH2", "path": "30", "value": "0x9BA" }, "2485": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "JUMPI", "path": "30" }, "2486": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2488": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2489": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "REVERT", "path": "30" }, "2490": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "JUMPDEST", "path": "30" }, "2491": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "POP", "path": "30" }, "2492": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "GAS", "path": "30" }, "2493": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "CALL", "path": "30" }, "2494": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ISZERO", "path": "30" }, "2495": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2496": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ISZERO", "path": "30" }, "2497": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH2", "path": "30", "value": "0x9CE" }, "2500": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "JUMPI", "path": "30" }, "2501": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "RETURNDATASIZE", "path": "30" }, "2502": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2504": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2505": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "RETURNDATACOPY", "path": "30" }, "2506": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "RETURNDATASIZE", "path": "30" }, "2507": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2509": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "REVERT", "path": "30" }, "2510": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "JUMPDEST", "path": "30" }, "2511": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "POP", "path": "30" }, "2512": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "POP", "path": "30" }, "2513": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "POP", "path": "30" }, "2514": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "POP", "path": "30" }, "2515": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2517": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "MLOAD", "path": "30" }, "2518": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "RETURNDATASIZE", "path": "30" }, "2519": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "2521": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "NOT", "path": "30" }, "2522": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "2524": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP3", "path": "30" }, "2525": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ADD", "path": "30" }, "2526": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "AND", "path": "30" }, "2527": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP3", "path": "30" }, "2528": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ADD", "path": "30" }, "2529": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP1", "path": "30" }, "2530": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2532": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "MSTORE", "path": "30" }, "2533": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "POP", "path": "30" }, "2534": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "DUP2", "path": "30" }, "2535": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "ADD", "path": "30" }, "2536": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "SWAP1", "path": "30" }, "2537": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH2", "path": "30", "value": "0x9F2" }, "2540": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "SWAP2", "path": "30" }, "2541": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "SWAP1", "path": "30" }, "2542": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "PUSH2", "path": "30", "value": "0x31F4" }, "2545": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7966, 8045 ], "op": "JUMP", "path": "30" }, "2546": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8045 ], "op": "JUMPDEST", "path": "30" }, "2547": { "op": "PUSH1", "value": "0x1" }, "2549": { "op": "PUSH1", "value": "0x1" }, "2551": { "op": "PUSH1", "value": "0xE0" }, "2553": { "op": "SHL" }, "2554": { "op": "SUB" }, "2555": { "op": "NOT" }, "2556": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8085 ], "op": "AND", "path": "30" }, "2557": { "branch": 292, "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7966, 8085 ], "op": "EQ", "path": "30" }, "2558": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "PUSH2", "path": "30", "value": "0xA19" }, "2561": { "branch": 292, "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "JUMPI", "path": "30" }, "2562": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2564": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "MLOAD", "path": "30" }, "2565": { "op": "PUSH3", "value": "0x461BCD" }, "2569": { "op": "PUSH1", "value": "0xE5" }, "2571": { "op": "SHL" }, "2572": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "DUP2", "path": "30" }, "2573": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "MSTORE", "path": "30" }, "2574": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "2576": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "ADD", "path": "30" }, "2577": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "2580": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "SWAP1", "path": "30" }, "2581": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "PUSH2", "path": "30", "value": "0x37B9" }, "2584": { "fn": "ERC1155Action.safeTransferFrom", "jump": "i", "offset": [ 7941, 8131 ], "op": "JUMP", "path": "30" }, "2585": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 7941, 8131 ], "op": "JUMPDEST", "path": "30" }, "2586": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2587": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2588": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2589": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2590": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2591": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2592": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2593": { "fn": "ERC1155Action.safeTransferFrom", "offset": [ 6229, 8148 ], "op": "POP", "path": "30" }, "2594": { "fn": "ERC1155Action.safeTransferFrom", "jump": "o", "offset": [ 6229, 8148 ], "op": "JUMP", "path": "30" }, "2595": { "fn": "SafeInt256.toUint", "offset": [ 2397, 2514 ], "op": "JUMPDEST", "path": "94" }, "2596": { "fn": "SafeInt256.toUint", "offset": [ 2446, 2453 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "2598": { "fn": "SafeInt256.toUint", "offset": [ 2478, 2479 ], "op": "DUP1", "path": "94", "statement": 31 }, "2599": { "fn": "SafeInt256.toUint", "offset": [ 2473, 2474 ], "op": "DUP3", "path": "94" }, "2600": { "fn": "SafeInt256.toUint", "offset": [ 2473, 2479 ], "op": "SLT", "path": "94" }, "2601": { "branch": 436, "fn": "SafeInt256.toUint", "offset": [ 2473, 2479 ], "op": "ISZERO", "path": "94" }, "2602": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "PUSH2", "path": "94", "value": "0xA32" }, "2605": { "branch": 436, "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "JUMPI", "path": "94" }, "2606": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "2608": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "DUP1", "path": "94" }, "2609": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "REVERT", "path": "94" }, "2610": { "fn": "SafeInt256.toUint", "offset": [ 2465, 2480 ], "op": "JUMPDEST", "path": "94" }, "2611": { "op": "POP" }, "2612": { "fn": "SafeInt256.toUint", "offset": [ 2505, 2506 ], "op": "SWAP1", "path": "94", "statement": 32 }, "2613": { "fn": "SafeInt256.toUint", "jump": "o", "offset": [ 2397, 2514 ], "op": "JUMP", "path": "94" }, "2614": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 552, 771 ], "op": "JUMPDEST", "path": "66" }, "2615": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 619, 640 ], "op": "PUSH2", "path": "66", "value": "0xA3E" }, "2618": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 619, 640 ], "op": "PUSH2", "path": "66", "value": "0x2E31" }, "2621": { "fn": "AccountContextHandler.getAccountContext", "jump": "i", "offset": [ 619, 640 ], "op": "JUMP", "path": "66" }, "2622": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 619, 640 ], "op": "JUMPDEST", "path": "66" }, "2623": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 652, 700 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "2625": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 703, 733 ], "op": "PUSH2", "path": "66", "value": "0xA48" }, "2628": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 703, 731 ], "op": "PUSH2", "path": "66", "value": "0x1311" }, "2631": { "fn": "AccountContextHandler.getAccountContext", "jump": "i", "offset": [ 703, 733 ], "op": "JUMP", "path": "66" }, "2632": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 703, 733 ], "op": "JUMPDEST", "path": "66" }, "2633": { "op": "PUSH1", "value": "0x1" }, "2635": { "op": "PUSH1", "value": "0x1" }, "2637": { "op": "PUSH1", "value": "0xA0" }, "2639": { "op": "SHL" }, "2640": { "op": "SUB" }, "2641": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP4", "path": "66", "statement": 33 }, "2642": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "2643": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP4", "path": "66" }, "2644": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "AND", "path": "66" }, "2645": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "2647": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "2648": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "DUP2", "path": "66" }, "2649": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "MSTORE", "path": "66" }, "2650": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "PUSH1", "path": "66", "value": "0x20" }, "2652": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP4", "path": "66" }, "2653": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "DUP5", "path": "66" }, "2654": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "MSTORE", "path": "66" }, "2655": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "PUSH1", "path": "66", "value": "0x40" }, "2657": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "2658": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "DUP2", "path": "66" }, "2659": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "SWAP1", "path": "66" }, "2660": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 750, 764 ], "op": "KECCAK256", "path": "66" }, "2661": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "2662": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MLOAD", "path": "66" }, "2663": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0xA0" }, "2665": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "2666": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "2667": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP4", "path": "66" }, "2668": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "2669": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "2670": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SLOAD", "path": "66" }, "2671": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "2677": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "2678": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "2679": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP3", "path": "66" }, "2680": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "2681": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH6", "path": "66", "value": "0x10000000000" }, "2688": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "2689": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "2690": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0xF8" }, "2692": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SHL", "path": "66" }, "2693": { "op": "PUSH1", "value": "0x1" }, "2695": { "op": "PUSH1", "value": "0x1" }, "2697": { "op": "PUSH1", "value": "0xF8" }, "2699": { "op": "SHL" }, "2700": { "op": "SUB" }, "2701": { "op": "NOT" }, "2702": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "2703": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP6", "path": "66" }, "2704": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP3", "path": "66" }, "2705": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "2706": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP6", "path": "66" }, "2707": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "2708": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP6", "path": "66" }, "2709": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "2710": { "op": "PUSH1", "value": "0x1" }, "2712": { "op": "PUSH1", "value": "0x30" }, "2714": { "op": "SHL" }, "2715": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP6", "path": "66" }, "2716": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "2717": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0xFF" }, "2719": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "2720": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "2721": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP2", "path": "66" }, "2722": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "2723": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "2724": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "2725": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "2726": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "2727": { "op": "PUSH1", "value": "0x1" }, "2729": { "op": "PUSH1", "value": "0x38" }, "2731": { "op": "SHL" }, "2732": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP5", "path": "66" }, "2733": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "2734": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "2737": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "2738": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "2740": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP3", "path": "66" }, "2741": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "2742": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "2743": { "op": "PUSH1", "value": "0x1" }, "2745": { "op": "PUSH1", "value": "0x48" }, "2747": { "op": "SHL" }, "2748": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "2749": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP4", "path": "66" }, "2750": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DIV", "path": "66" }, "2751": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0x70" }, "2753": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SHL", "path": "66" }, "2754": { "op": "PUSH1", "value": "0x1" }, "2756": { "op": "PUSH1", "value": "0x1" }, "2758": { "op": "PUSH1", "value": "0x70" }, "2760": { "op": "SHL" }, "2761": { "op": "SUB" }, "2762": { "op": "NOT" }, "2763": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "AND", "path": "66" }, "2764": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "2766": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "DUP5", "path": "66" }, "2767": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "ADD", "path": "66" }, "2768": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "MSTORE", "path": "66" }, "2769": { "op": "POP" }, "2770": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP1", "path": "66" }, "2771": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 743, 764 ], "op": "SWAP2", "path": "66" }, "2772": { "fn": "AccountContextHandler.getAccountContext", "offset": [ 552, 771 ], "op": "SWAP1", "path": "66" }, "2773": { "op": "POP" }, "2774": { "fn": "AccountContextHandler.getAccountContext", "jump": "o", "offset": [ 552, 771 ], "op": "JUMP", "path": "66" }, "2775": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1117, 1269 ], "op": "JUMPDEST", "path": "66" }, "2776": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1257 ], "op": "PUSH1", "path": "66", "statement": 34, "value": "0x60" }, "2778": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1257 ], "op": "ADD", "path": "66" }, "2779": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1257 ], "op": "MLOAD", "path": "66" }, "2780": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "2783": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "AND", "path": "66" }, "2784": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "ISZERO", "path": "66" }, "2785": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "ISZERO", "path": "66" }, "2786": { "fn": "AccountContextHandler.isBitmapEnabled", "offset": [ 1226, 1262 ], "op": "SWAP1", "path": "66" }, "2787": { "fn": "AccountContextHandler.isBitmapEnabled", "jump": "o", "offset": [ 1117, 1269 ], "op": "JUMP", "path": "66" }, "2788": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4343, 4920 ], "op": "JUMPDEST", "path": "30" }, "2789": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4477, 4483 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2791": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4496, 4514 ], "op": "DUP1", "path": "30" }, "2792": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4516, 4532 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2794": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4534, 4551 ], "op": "DUP1", "path": "30" }, "2795": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4555, 4587 ], "op": "PUSH2", "path": "30", "value": "0xAF3" }, "2798": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4584, 4586 ], "op": "DUP6", "path": "30" }, "2799": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4555, 4583 ], "op": "PUSH2", "path": "30", "value": "0x12A7" }, "2802": { "fn": "ERC1155Action._balanceInBitmap", "jump": "i", "offset": [ 4555, 4587 ], "op": "JUMP", "path": "30" }, "2803": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4555, 4587 ], "op": "JUMPDEST", "path": "30" }, "2804": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4495, 4587 ], "op": "SWAP3", "path": "30" }, "2805": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4495, 4587 ], "op": "POP", "path": "30" }, "2806": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4495, 4587 ], "op": "SWAP3", "path": "30" }, "2807": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4495, 4587 ], "op": "POP", "path": "30" }, "2808": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4495, 4587 ], "op": "SWAP3", "path": "30" }, "2809": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4495, 4587 ], "op": "POP", "path": "30" }, "2810": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4629, 4645 ], "op": "DUP6", "path": "30" }, "2811": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4625 ], "op": "DUP4", "path": "30" }, "2812": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4645 ], "op": "EQ", "path": "30" }, "2813": { "branch": 293, "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4645 ], "op": "ISZERO", "path": "30" }, "2814": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4700 ], "op": "DUP1", "path": "30" }, "2815": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4700 ], "op": "PUSH2", "path": "30", "value": "0xB09" }, "2818": { "branch": 293, "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4700 ], "op": "JUMPI", "path": "30" }, "2819": { "op": "POP" }, "2820": { "offset": [ 4700, 4701 ], "op": "PUSH1", "path": "60", "value": "0x1" }, "2822": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4661, 4700 ], "op": "DUP2", "path": "30" }, "2823": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4661, 4700 ], "op": "EQ", "path": "30" }, "2824": { "branch": 294, "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4661, 4700 ], "op": "ISZERO", "path": "30" }, "2825": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4615, 4700 ], "op": "JUMPDEST", "path": "30" }, "2826": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4598, 4914 ], "op": "ISZERO", "path": "30" }, "2827": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4598, 4914 ], "op": "PUSH2", "path": "30", "value": "0xB1A" }, "2830": { "branch": 294, "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4598, 4914 ], "op": "JUMPI", "path": "30" }, "2831": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4796, 4797 ], "op": "PUSH1", "path": "30", "statement": 35, "value": "0x0" }, "2833": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "SWAP4", "path": "30" }, "2834": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "POP", "path": "30" }, "2835": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "POP", "path": "30" }, "2836": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "POP", "path": "30" }, "2837": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "POP", "path": "30" }, "2838": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "PUSH2", "path": "30", "value": "0x653" }, "2841": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4789, 4797 ], "op": "JUMP", "path": "30" }, "2842": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4598, 4914 ], "op": "JUMPDEST", "path": "30" }, "2843": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4835, 4903 ], "op": "PUSH2", "path": "30", "statement": 36, "value": "0xB25" }, "2846": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4873, 4880 ], "op": "DUP8", "path": "30" }, "2847": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4882, 4892 ], "op": "DUP5", "path": "30" }, "2848": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4894, 4902 ], "op": "DUP5", "path": "30" }, "2849": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4835, 4872 ], "op": "PUSH2", "path": "30", "value": "0x131E" }, "2852": { "fn": "ERC1155Action._balanceInBitmap", "jump": "i", "offset": [ 4835, 4903 ], "op": "JUMP", "path": "30" }, "2853": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4835, 4903 ], "op": "JUMPDEST", "path": "30" }, "2854": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "SWAP4", "path": "30" }, "2855": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "POP", "path": "30" }, "2856": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "POP", "path": "30" }, "2857": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "POP", "path": "30" }, "2858": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "POP", "path": "30" }, "2859": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "PUSH2", "path": "30", "value": "0x653" }, "2862": { "fn": "ERC1155Action._balanceInBitmap", "offset": [ 4828, 4903 ], "op": "JUMP", "path": "30" }, "2863": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14791, 15176 ], "op": "JUMPDEST", "path": "84" }, "2864": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14907, 14930 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "2866": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14946, 14976 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "2868": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14979, 15021 ], "op": "PUSH2", "path": "84", "value": "0xB3D" }, "2871": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14995, 15002 ], "op": "DUP5", "path": "84" }, "2872": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15004, 15020 ], "op": "DUP5", "path": "84" }, "2873": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14979, 14994 ], "op": "PUSH2", "path": "84", "value": "0x1363" }, "2876": { "fn": "PortfolioHandler.getSortedPortfolio", "jump": "i", "offset": [ 14979, 15021 ], "op": "JUMP", "path": "84" }, "2877": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14979, 15021 ], "op": "JUMPDEST", "path": "84" }, "2878": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14946, 15021 ], "op": "SWAP1", "path": "84" }, "2879": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 14946, 15021 ], "op": "POP", "path": "84" }, "2880": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15099, 15100 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "2882": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15082, 15088 ], "op": "DUP2", "path": "84" }, "2883": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15082, 15095 ], "op": "MLOAD", "path": "84" }, "2884": { "branch": 386, "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15082, 15100 ], "op": "GT", "path": "84" }, "2885": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15078, 15115 ], "op": "PUSH2", "path": "84", "value": "0xB4F" }, "2888": { "branch": 386, "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15078, 15115 ], "op": "JUMPI", "path": "84" }, "2889": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15109, 15115 ], "op": "SWAP1", "path": "84", "statement": 37 }, "2890": { "op": "POP" }, "2891": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15102, 15115 ], "op": "PUSH2", "path": "84", "value": "0x30C" }, "2894": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15102, 15115 ], "op": "JUMP", "path": "84" }, "2895": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15078, 15115 ], "op": "JUMPDEST", "path": "84" }, "2896": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15126, 15146 ], "op": "PUSH2", "path": "84", "statement": 38, "value": "0x653" }, "2899": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15139, 15145 ], "op": "DUP2", "path": "84" }, "2900": { "fn": "PortfolioHandler.getSortedPortfolio", "offset": [ 15126, 15138 ], "op": "PUSH2", "path": "84", "value": "0x147A" }, "2903": { "fn": "PortfolioHandler.getSortedPortfolio", "jump": "i", "offset": [ 15126, 15146 ], "op": "JUMP", "path": "84" }, "2904": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "JUMPDEST", "path": "30" }, "2905": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5099, 5105 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2907": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5122, 5140 ], "op": "DUP1", "path": "30" }, "2908": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5142, 5158 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2910": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5160, 5177 ], "op": "DUP1", "path": "30" }, "2911": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5181, 5213 ], "op": "PUSH2", "path": "30", "value": "0xB67" }, "2914": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5210, 5212 ], "op": "DUP6", "path": "30" }, "2915": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5181, 5209 ], "op": "PUSH2", "path": "30", "value": "0x12A7" }, "2918": { "fn": "ERC1155Action._balanceInArray", "jump": "i", "offset": [ 5181, 5213 ], "op": "JUMP", "path": "30" }, "2919": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5181, 5213 ], "op": "JUMPDEST", "path": "30" }, "2920": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5121, 5213 ], "op": "SWAP3", "path": "30" }, "2921": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5121, 5213 ], "op": "POP", "path": "30" }, "2922": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5121, 5213 ], "op": "SWAP3", "path": "30" }, "2923": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5121, 5213 ], "op": "POP", "path": "30" }, "2924": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5121, 5213 ], "op": "SWAP3", "path": "30" }, "2925": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5121, 5213 ], "op": "POP", "path": "30" }, "2926": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5229, 5238 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2928": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "JUMPDEST", "path": "30" }, "2929": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5244, 5253 ], "op": "DUP7", "path": "30" }, "2930": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5244, 5260 ], "op": "MLOAD", "path": "30" }, "2931": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5240, 5241 ], "op": "DUP2", "path": "30" }, "2932": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5240, 5260 ], "op": "LT", "path": "30" }, "2933": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "ISZERO", "path": "30" }, "2934": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "PUSH2", "path": "30", "value": "0xBD4" }, "2937": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "JUMPI", "path": "30" }, "2938": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5281, 5308 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2940": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5320 ], "op": "DUP8", "path": "30" }, "2941": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5321, 5322 ], "op": "DUP3", "path": "30" }, "2942": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "DUP2", "path": "30" }, "2943": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "MLOAD", "path": "30" }, "2944": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "DUP2", "path": "30" }, "2945": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "LT", "path": "30" }, "2946": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "PUSH2", "path": "30", "value": "0xB87" }, "2949": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "JUMPI", "path": "30" }, "2950": { "dev": "Index out of range", "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "INVALID", "path": "30" }, "2951": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "JUMPDEST", "path": "30" }, "2952": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2954": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "MUL", "path": "30" }, "2955": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2957": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "ADD", "path": "30" }, "2958": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "ADD", "path": "30" }, "2959": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5311, 5323 ], "op": "MLOAD", "path": "30" }, "2960": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5281, 5323 ], "op": "SWAP1", "path": "30" }, "2961": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5281, 5323 ], "op": "POP", "path": "30" }, "2962": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5378, 5388 ], "op": "DUP5", "path": "30" }, "2963": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5363 ], "op": "DUP2", "path": "30" }, "2964": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5374 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "2966": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5374 ], "op": "ADD", "path": "30" }, "2967": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5374 ], "op": "MLOAD", "path": "30" }, "2968": { "branch": 295, "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5388 ], "op": "EQ", "path": "30" }, "2969": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5434 ], "op": "DUP1", "path": "30" }, "2970": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5434 ], "op": "ISZERO", "path": "30" }, "2971": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5434 ], "op": "PUSH2", "path": "30", "value": "0xBA7" }, "2974": { "branch": 295, "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5434 ], "op": "JUMPI", "path": "30" }, "2975": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5434 ], "op": "POP", "path": "30" }, "2976": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5426, 5434 ], "op": "DUP4", "path": "30" }, "2977": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5408, 5413 ], "op": "DUP2", "path": "30" }, "2978": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5408, 5422 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "2980": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5408, 5422 ], "op": "ADD", "path": "30" }, "2981": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5408, 5422 ], "op": "MLOAD", "path": "30" }, "2982": { "branch": 296, "fn": "ERC1155Action._balanceInArray", "offset": [ 5408, 5434 ], "op": "EQ", "path": "30" }, "2983": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5434 ], "op": "JUMPDEST", "path": "30" }, "2984": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5482 ], "op": "DUP1", "path": "30" }, "2985": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5482 ], "op": "ISZERO", "path": "30" }, "2986": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5482 ], "op": "PUSH2", "path": "30", "value": "0xBB6" }, "2989": { "branch": 296, "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5482 ], "op": "JUMPI", "path": "30" }, "2990": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5482 ], "op": "POP", "path": "30" }, "2991": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5473, 5482 ], "op": "DUP3", "path": "30" }, "2992": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5454, 5459 ], "op": "DUP2", "path": "30" }, "2993": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5454, 5469 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "2995": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5454, 5469 ], "op": "ADD", "path": "30" }, "2996": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5454, 5469 ], "op": "MLOAD", "path": "30" }, "2997": { "branch": 297, "fn": "ERC1155Action._balanceInArray", "offset": [ 5454, 5482 ], "op": "EQ", "path": "30" }, "2998": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5358, 5482 ], "op": "JUMPDEST", "path": "30" }, "2999": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5337, 5518 ], "op": "ISZERO", "path": "30" }, "3000": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5337, 5518 ], "op": "PUSH2", "path": "30", "value": "0xBCB" }, "3003": { "branch": 297, "fn": "ERC1155Action._balanceInArray", "offset": [ 5337, 5518 ], "op": "JUMPI", "path": "30" }, "3004": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5504, 5518 ], "op": "PUSH1", "path": "30", "statement": 39, "value": "0x60" }, "3006": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5504, 5518 ], "op": "ADD", "path": "30" }, "3007": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5504, 5518 ], "op": "MLOAD", "path": "30" }, "3008": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5504, 5518 ], "op": "SWAP5", "path": "30" }, "3009": { "op": "POP" }, "3010": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5497, 5518 ], "op": "PUSH2", "path": "30", "value": "0x30C" }, "3013": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5497, 5518 ], "op": "SWAP4", "path": "30" }, "3014": { "op": "POP" }, "3015": { "op": "POP" }, "3016": { "op": "POP" }, "3017": { "op": "POP" }, "3018": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5497, 5518 ], "op": "JUMP", "path": "30" }, "3019": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5337, 5518 ], "op": "JUMPDEST", "path": "30" }, "3020": { "op": "POP" }, "3021": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5262, 5265 ], "op": "PUSH1", "path": "30", "statement": 40, "value": "0x1" }, "3023": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5262, 5265 ], "op": "ADD", "path": "30" }, "3024": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "PUSH2", "path": "30", "value": "0xB70" }, "3027": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "JUMP", "path": "30" }, "3028": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "JUMPDEST", "path": "30" }, "3029": { "fn": "ERC1155Action._balanceInArray", "offset": [ 5224, 5529 ], "op": "POP", "path": "30" }, "3030": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "POP", "path": "30" }, "3031": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "POP", "path": "30" }, "3032": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "POP", "path": "30" }, "3033": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "SWAP3", "path": "30" }, "3034": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "SWAP2", "path": "30" }, "3035": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "POP", "path": "30" }, "3036": { "fn": "ERC1155Action._balanceInArray", "offset": [ 4980, 5535 ], "op": "POP", "path": "30" }, "3037": { "fn": "ERC1155Action._balanceInArray", "jump": "o", "offset": [ 4980, 5535 ], "op": "JUMP", "path": "30" }, "3038": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10399, 11041 ], "op": "JUMPDEST", "path": "30" }, "3039": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10559, 10561 ], "op": "DUP1", "path": "30", "statement": 41 }, "3040": { "op": "PUSH1", "value": "0x1" }, "3042": { "op": "PUSH1", "value": "0x1" }, "3044": { "op": "PUSH1", "value": "0xA0" }, "3046": { "op": "SHL" }, "3047": { "op": "SUB" }, "3048": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10561 ], "op": "AND", "path": "30" }, "3049": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10555 ], "op": "DUP3", "path": "30" }, "3050": { "op": "PUSH1", "value": "0x1" }, "3052": { "op": "PUSH1", "value": "0x1" }, "3054": { "op": "PUSH1", "value": "0xA0" }, "3056": { "op": "SHL" }, "3057": { "op": "SUB" }, "3058": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10561 ], "op": "AND", "path": "30" }, "3059": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10561 ], "op": "EQ", "path": "30" }, "3060": { "branch": 298, "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10561 ], "op": "ISZERO", "path": "30" }, "3061": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10581 ], "op": "DUP1", "path": "30" }, "3062": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10581 ], "op": "ISZERO", "path": "30" }, "3063": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10581 ], "op": "PUSH2", "path": "30", "value": "0xC08" }, "3066": { "branch": 298, "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10581 ], "op": "JUMPI", "path": "30" }, "3067": { "op": "POP" }, "3068": { "op": "PUSH1", "value": "0x1" }, "3070": { "op": "PUSH1", "value": "0x1" }, "3072": { "op": "PUSH1", "value": "0xA0" }, "3074": { "op": "SHL" }, "3075": { "op": "SUB" }, "3076": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10565, 10581 ], "op": "DUP2", "path": "30" }, "3077": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10565, 10581 ], "op": "AND", "path": "30" }, "3078": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10565, 10581 ], "op": "ISZERO", "path": "30" }, "3079": { "branch": 299, "fn": "ERC1155Action._validateAccounts", "offset": [ 10565, 10581 ], "op": "ISZERO", "path": "30" }, "3080": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10581 ], "op": "JUMPDEST", "path": "30" }, "3081": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10604 ], "op": "DUP1", "path": "30" }, "3082": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10604 ], "op": "ISZERO", "path": "30" }, "3083": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10604 ], "op": "PUSH2", "path": "30", "value": "0xC1D" }, "3086": { "branch": 299, "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10604 ], "op": "JUMPI", "path": "30" }, "3087": { "op": "POP" }, "3088": { "op": "PUSH1", "value": "0x1" }, "3090": { "op": "PUSH1", "value": "0x1" }, "3092": { "op": "PUSH1", "value": "0xA0" }, "3094": { "op": "SHL" }, "3095": { "op": "SUB" }, "3096": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10585, 10604 ], "op": "DUP2", "path": "30" }, "3097": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10585, 10604 ], "op": "AND", "path": "30" }, "3098": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10599, 10603 ], "op": "ADDRESS", "path": "30" }, "3099": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10585, 10604 ], "op": "EQ", "path": "30" }, "3100": { "branch": 300, "fn": "ERC1155Action._validateAccounts", "offset": [ 10585, 10604 ], "op": "ISZERO", "path": "30" }, "3101": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10551, 10604 ], "op": "JUMPDEST", "path": "30" }, "3102": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "PUSH2", "path": "30", "value": "0xC39" }, "3105": { "branch": 300, "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "JUMPI", "path": "30" }, "3106": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3108": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "MLOAD", "path": "30" }, "3109": { "op": "PUSH3", "value": "0x461BCD" }, "3113": { "op": "PUSH1", "value": "0xE5" }, "3115": { "op": "SHL" }, "3116": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "DUP2", "path": "30" }, "3117": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "MSTORE", "path": "30" }, "3118": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "3120": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "ADD", "path": "30" }, "3121": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "3124": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "SWAP1", "path": "30" }, "3125": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "PUSH2", "path": "30", "value": "0x366C" }, "3128": { "fn": "ERC1155Action._validateAccounts", "jump": "i", "offset": [ 10543, 10624 ], "op": "JUMP", "path": "30" }, "3129": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10543, 10624 ], "op": "JUMPDEST", "path": "30" }, "3130": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10687 ], "op": "CALLER", "path": "30", "statement": 42 }, "3131": { "op": "PUSH1", "value": "0x1" }, "3133": { "op": "PUSH1", "value": "0x1" }, "3135": { "op": "PUSH1", "value": "0xA0" }, "3137": { "op": "SHL" }, "3138": { "op": "SUB" }, "3139": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10695 ], "op": "DUP4", "path": "30" }, "3140": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10695 ], "op": "AND", "path": "30" }, "3141": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10695 ], "op": "EQ", "path": "30" }, "3142": { "branch": 301, "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10695 ], "op": "DUP1", "path": "30" }, "3143": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10733 ], "op": "PUSH2", "path": "30", "value": "0xC55" }, "3146": { "branch": 301, "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10733 ], "op": "JUMPI", "path": "30" }, "3147": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10677, 10733 ], "op": "POP", "path": "30" }, "3148": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10699, 10733 ], "op": "PUSH2", "path": "30", "value": "0xC55" }, "3151": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10716, 10720 ], "op": "DUP3", "path": "30" }, "3152": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10722, 10732 ], "op": "CALLER", "path": "30" }, "3153": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10699, 10715 ], "op": "PUSH2", "path": "30", "value": "0x7D6" }, "3156": { "fn": "ERC1155Action._validateAccounts", "jump": "i", "offset": [ 10699, 10733 ], "op": "JUMP", "path": "30" }, "3157": { "branch": 302, "fn": "ERC1155Action._validateAccounts", "offset": [ 10699, 10733 ], "op": "JUMPDEST", "path": "30" }, "3158": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "PUSH2", "path": "30", "value": "0xC71" }, "3161": { "branch": 302, "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "JUMPI", "path": "30" }, "3162": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3164": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "MLOAD", "path": "30" }, "3165": { "op": "PUSH3", "value": "0x461BCD" }, "3169": { "op": "PUSH1", "value": "0xE5" }, "3171": { "op": "SHL" }, "3172": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "DUP2", "path": "30" }, "3173": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "MSTORE", "path": "30" }, "3174": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "3176": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "ADD", "path": "30" }, "3177": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "3180": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "SWAP1", "path": "30" }, "3181": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "PUSH2", "path": "30", "value": "0x36C0" }, "3184": { "fn": "ERC1155Action._validateAccounts", "jump": "i", "offset": [ 10669, 10750 ], "op": "JUMP", "path": "30" }, "3185": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10669, 10750 ], "op": "JUMPDEST", "path": "30" }, "3186": { "fn": "ERC1155Action._validateAccounts", "offset": [ 11009, 11034 ], "op": "PUSH2", "path": "30", "statement": 43, "value": "0xC7A" }, "3189": { "fn": "ERC1155Action._validateAccounts", "offset": [ 11029, 11033 ], "op": "DUP3", "path": "30" }, "3190": { "fn": "ERC1155Action._validateAccounts", "offset": [ 11009, 11028 ], "op": "PUSH2", "path": "30", "value": "0x1638" }, "3193": { "fn": "ERC1155Action._validateAccounts", "jump": "i", "offset": [ 11009, 11034 ], "op": "JUMP", "path": "30" }, "3194": { "fn": "ERC1155Action._validateAccounts", "offset": [ 11009, 11034 ], "op": "JUMPDEST", "path": "30" }, "3195": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10399, 11041 ], "op": "POP", "path": "30" }, "3196": { "fn": "ERC1155Action._validateAccounts", "offset": [ 10399, 11041 ], "op": "POP", "path": "30" }, "3197": { "fn": "ERC1155Action._validateAccounts", "jump": "o", "offset": [ 10399, 11041 ], "op": "JUMP", "path": "30" }, "3198": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11558, 13080 ], "op": "JUMPDEST", "path": "30" }, "3199": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11682, 11705 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "3201": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11707, 11711 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3203": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11735, 11763 ], "op": "DUP5", "path": "30", "statement": 44 }, "3204": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11735, 11763 ], "op": "DUP4", "path": "30" }, "3205": { "branch": 303, "fn": "ERC1155Action._decodeToAssets", "offset": [ 11735, 11763 ], "op": "EQ", "path": "30" }, "3206": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11727, 11764 ], "op": "PUSH2", "path": "30", "value": "0xC8E" }, "3209": { "branch": 303, "fn": "ERC1155Action._decodeToAssets", "offset": [ 11727, 11764 ], "op": "JUMPI", "path": "30" }, "3210": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11727, 11764 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3212": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11727, 11764 ], "op": "DUP1", "path": "30" }, "3213": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11727, 11764 ], "op": "REVERT", "path": "30" }, "3214": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11727, 11764 ], "op": "JUMPDEST", "path": "30" }, "3215": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11774, 11797 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3217": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11774, 11797 ], "op": "DUP1", "path": "30" }, "3218": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11869, 11872 ], "op": "DUP7", "path": "30" }, "3219": { "op": "PUSH1", "value": "0x1" }, "3221": { "op": "PUSH1", "value": "0x1" }, "3223": { "op": "PUSH1", "value": "0x40" }, "3225": { "op": "SHL" }, "3226": { "op": "SUB" }, "3227": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP2", "path": "30" }, "3228": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "GT", "path": "30" }, "3229": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP1", "path": "30" }, "3230": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "ISZERO", "path": "30" }, "3231": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH2", "path": "30", "value": "0xCA7" }, "3234": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPI", "path": "30" }, "3235": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3237": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP1", "path": "30" }, "3238": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "REVERT", "path": "30" }, "3239": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPDEST", "path": "30" }, "3240": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "POP", "path": "30" }, "3241": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3243": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "MLOAD", "path": "30" }, "3244": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "SWAP1", "path": "30" }, "3245": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP1", "path": "30" }, "3246": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP3", "path": "30" }, "3247": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "MSTORE", "path": "30" }, "3248": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP1", "path": "30" }, "3249": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3251": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "MUL", "path": "30" }, "3252": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3254": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "ADD", "path": "30" }, "3255": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP3", "path": "30" }, "3256": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "ADD", "path": "30" }, "3257": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3259": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "MSTORE", "path": "30" }, "3260": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP1", "path": "30" }, "3261": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "ISZERO", "path": "30" }, "3262": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH2", "path": "30", "value": "0xCE1" }, "3265": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPI", "path": "30" }, "3266": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP2", "path": "30" }, "3267": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3269": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "ADD", "path": "30" }, "3270": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPDEST", "path": "30" }, "3271": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH2", "path": "30", "value": "0xCCE" }, "3274": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH2", "path": "30", "value": "0x2E5F" }, "3277": { "fn": "ERC1155Action._decodeToAssets", "jump": "i", "offset": [ 11848, 11880 ], "op": "JUMP", "path": "30" }, "3278": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPDEST", "path": "30" }, "3279": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP2", "path": "30" }, "3280": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "MSTORE", "path": "30" }, "3281": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3283": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "ADD", "path": "30" }, "3284": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "SWAP1", "path": "30" }, "3285": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH1", "path": "30", "value": "0x1" }, "3287": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "SWAP1", "path": "30" }, "3288": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "SUB", "path": "30" }, "3289": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "SWAP1", "path": "30" }, "3290": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "DUP2", "path": "30" }, "3291": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "PUSH2", "path": "30", "value": "0xCC6" }, "3294": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPI", "path": "30" }, "3295": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "SWAP1", "path": "30" }, "3296": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "POP", "path": "30" }, "3297": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "JUMPDEST", "path": "30" }, "3298": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11848, 11880 ], "op": "POP", "path": "30" }, "3299": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11815, 11880 ], "op": "SWAP1", "path": "30" }, "3300": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11815, 11880 ], "op": "POP", "path": "30" }, "3301": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11896, 11905 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3303": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "JUMPDEST", "path": "30" }, "3304": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11907, 11921 ], "op": "DUP8", "path": "30" }, "3305": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11907, 11921 ], "op": "DUP2", "path": "30" }, "3306": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11907, 11921 ], "op": "LT", "path": "30" }, "3307": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "ISZERO", "path": "30" }, "3308": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "PUSH2", "path": "30", "value": "0xDBB" }, "3311": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "JUMPI", "path": "30" }, "3312": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12045, 12050 ], "op": "DUP1", "path": "30" }, "3313": { "branch": 304, "fn": "ERC1155Action._decodeToAssets", "offset": [ 12045, 12050 ], "op": "ISZERO", "path": "30" }, "3314": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12041, 12102 ], "op": "PUSH2", "path": "30", "value": "0xD3B" }, "3317": { "branch": 304, "fn": "ERC1155Action._decodeToAssets", "offset": [ 12041, 12102 ], "op": "JUMPI", "path": "30" }, "3318": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12072 ], "op": "DUP9", "path": "30", "statement": 45 }, "3319": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12072 ], "op": "DUP9", "path": "30" }, "3320": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12077, 12078 ], "op": "PUSH1", "path": "30", "value": "0x1" }, "3322": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12073, 12074 ], "op": "DUP4", "path": "30" }, "3323": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12073, 12078 ], "op": "SUB", "path": "30" }, "3324": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "DUP2", "path": "30" }, "3325": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "DUP2", "path": "30" }, "3326": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "LT", "path": "30" }, "3327": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "PUSH2", "path": "30", "value": "0xD04" }, "3330": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "JUMPI", "path": "30" }, "3331": { "dev": "Index out of range", "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "INVALID", "path": "30" }, "3332": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "JUMPDEST", "path": "30" }, "3333": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "SWAP1", "path": "30" }, "3334": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "POP", "path": "30" }, "3335": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3337": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "MUL", "path": "30" }, "3338": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "ADD", "path": "30" }, "3339": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12069, 12079 ], "op": "CALLDATALOAD", "path": "30" }, "3340": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12063 ], "op": "DUP10", "path": "30" }, "3341": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12063 ], "op": "DUP10", "path": "30" }, "3342": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12064, 12065 ], "op": "DUP4", "path": "30" }, "3343": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "DUP2", "path": "30" }, "3344": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "DUP2", "path": "30" }, "3345": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "LT", "path": "30" }, "3346": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "PUSH2", "path": "30", "value": "0xD17" }, "3349": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "JUMPI", "path": "30" }, "3350": { "dev": "Index out of range", "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "INVALID", "path": "30" }, "3351": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "JUMPDEST", "path": "30" }, "3352": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "SWAP1", "path": "30" }, "3353": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "POP", "path": "30" }, "3354": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3356": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "MUL", "path": "30" }, "3357": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "ADD", "path": "30" }, "3358": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12066 ], "op": "CALLDATALOAD", "path": "30" }, "3359": { "branch": 305, "fn": "ERC1155Action._decodeToAssets", "offset": [ 12060, 12079 ], "op": "GT", "path": "30" }, "3360": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "PUSH2", "path": "30", "value": "0xD3B" }, "3363": { "branch": 305, "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "JUMPI", "path": "30" }, "3364": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3366": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "MLOAD", "path": "30" }, "3367": { "op": "PUSH3", "value": "0x461BCD" }, "3371": { "op": "PUSH1", "value": "0xE5" }, "3373": { "op": "SHL" }, "3374": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "DUP2", "path": "30" }, "3375": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "MSTORE", "path": "30" }, "3376": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "3378": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "ADD", "path": "30" }, "3379": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "3382": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "SWAP1", "path": "30" }, "3383": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "PUSH2", "path": "30", "value": "0x378D" }, "3386": { "fn": "ERC1155Action._decodeToAssets", "jump": "i", "offset": [ 12052, 12102 ], "op": "JUMP", "path": "30" }, "3387": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12052, 12102 ], "op": "JUMPDEST", "path": "30" }, "3388": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12117, 12144 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3390": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12153 ], "op": "DUP3", "path": "30" }, "3391": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12154, 12155 ], "op": "DUP3", "path": "30" }, "3392": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "DUP2", "path": "30" }, "3393": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "MLOAD", "path": "30" }, "3394": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "DUP2", "path": "30" }, "3395": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "LT", "path": "30" }, "3396": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "PUSH2", "path": "30", "value": "0xD49" }, "3399": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "JUMPI", "path": "30" }, "3400": { "dev": "Index out of range", "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "INVALID", "path": "30" }, "3401": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "JUMPDEST", "path": "30" }, "3402": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3404": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "MUL", "path": "30" }, "3405": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3407": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "ADD", "path": "30" }, "3408": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "ADD", "path": "30" }, "3409": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12147, 12156 ], "op": "MLOAD", "path": "30" }, "3410": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12117, 12156 ], "op": "SWAP1", "path": "30" }, "3411": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12117, 12156 ], "op": "POP", "path": "30" }, "3412": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12224, 12260 ], "op": "PUSH2", "path": "30", "statement": 46, "value": "0xD6E" }, "3415": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12256 ], "op": "DUP11", "path": "30" }, "3416": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12256 ], "op": "DUP11", "path": "30" }, "3417": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12257, 12258 ], "op": "DUP5", "path": "30" }, "3418": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "DUP2", "path": "30" }, "3419": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "DUP2", "path": "30" }, "3420": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "LT", "path": "30" }, "3421": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "PUSH2", "path": "30", "value": "0xD62" }, "3424": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "JUMPI", "path": "30" }, "3425": { "dev": "Index out of range", "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "INVALID", "path": "30" }, "3426": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "JUMPDEST", "path": "30" }, "3427": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "SWAP1", "path": "30" }, "3428": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "POP", "path": "30" }, "3429": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3431": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "MUL", "path": "30" }, "3432": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "ADD", "path": "30" }, "3433": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12253, 12259 ], "op": "CALLDATALOAD", "path": "30" }, "3434": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12224, 12252 ], "op": "PUSH2", "path": "30", "value": "0x12A7" }, "3437": { "fn": "ERC1155Action._decodeToAssets", "jump": "i", "offset": [ 12224, 12260 ], "op": "JUMP", "path": "30" }, "3438": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12224, 12260 ], "op": "JUMPDEST", "path": "30" }, "3439": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12205, 12220 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3441": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12205, 12220 ], "op": "DUP5", "path": "30" }, "3442": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12205, 12220 ], "op": "ADD", "path": "30" }, "3443": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "MSTORE", "path": "30" }, "3444": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12189, 12203 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3446": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12189, 12203 ], "op": "DUP4", "path": "30" }, "3447": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12189, 12203 ], "op": "ADD", "path": "30" }, "3448": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "DUP2", "path": "30" }, "3449": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "SWAP1", "path": "30" }, "3450": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "MSTORE", "path": "30" }, "3451": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "DUP2", "path": "30" }, "3452": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "DUP4", "path": "30" }, "3453": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "MSTORE", "path": "30" }, "3454": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12275, 12347 ], "op": "PUSH2", "path": "30", "statement": 47, "value": "0xD88" }, "3457": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12275, 12347 ], "op": "SWAP2", "path": "30" }, "3458": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12170, 12260 ], "op": "SWAP1", "path": "30" }, "3459": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12331, 12346 ], "op": "TIMESTAMP", "path": "30" }, "3460": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12275, 12296 ], "op": "PUSH2", "path": "30", "value": "0x12DA" }, "3463": { "fn": "ERC1155Action._decodeToAssets", "jump": "i", "offset": [ 12275, 12347 ], "op": "JUMP", "path": "30" }, "3464": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12275, 12347 ], "op": "JUMPDEST", "path": "30" }, "3465": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12790 ], "op": "DUP8", "path": "30", "statement": 48 }, "3466": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12790 ], "op": "DUP8", "path": "30" }, "3467": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12791, 12792 ], "op": "DUP4", "path": "30" }, "3468": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "DUP2", "path": "30" }, "3469": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "DUP2", "path": "30" }, "3470": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "LT", "path": "30" }, "3471": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "PUSH2", "path": "30", "value": "0xD94" }, "3474": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "JUMPI", "path": "30" }, "3475": { "dev": "Index out of range", "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "INVALID", "path": "30" }, "3476": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "JUMPDEST", "path": "30" }, "3477": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3479": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "MUL", "path": "30" }, "3480": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "SWAP2", "path": "30" }, "3481": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "SWAP1", "path": "30" }, "3482": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "SWAP2", "path": "30" }, "3483": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "ADD", "path": "30" }, "3484": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12783, 12793 ], "op": "CALLDATALOAD", "path": "30" }, "3485": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12759, 12773 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "3487": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12759, 12773 ], "op": "DUP4", "path": "30" }, "3488": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12759, 12773 ], "op": "ADD", "path": "30" }, "3489": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12759, 12794 ], "op": "DUP2", "path": "30" }, "3490": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12759, 12794 ], "op": "SWAP1", "path": "30" }, "3491": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12759, 12794 ], "op": "MSTORE", "path": "30" }, "3492": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12989, 12990 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3494": { "op": "SGT" }, "3495": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12968, 13017 ], "op": "ISZERO", "path": "30" }, "3496": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12968, 13017 ], "op": "SWAP1", "path": "30" }, "3497": { "op": "POP" }, "3498": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12968, 13017 ], "op": "PUSH2", "path": "30", "value": "0xDB2" }, "3501": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12968, 13017 ], "op": "JUMPI", "path": "30" }, "3502": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 13013, 13017 ], "op": "PUSH1", "path": "30", "statement": 49, "value": "0x1" }, "3504": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12992, 13017 ], "op": "SWAP4", "path": "30" }, "3505": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12992, 13017 ], "op": "POP", "path": "30" }, "3506": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 12968, 13017 ], "op": "JUMPDEST", "path": "30" }, "3507": { "op": "POP" }, "3508": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11923, 11926 ], "op": "PUSH1", "path": "30", "statement": 50, "value": "0x1" }, "3510": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11923, 11926 ], "op": "ADD", "path": "30" }, "3511": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "PUSH2", "path": "30", "value": "0xCE7" }, "3514": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "JUMP", "path": "30" }, "3515": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11891, 13028 ], "op": "JUMPDEST", "path": "30" }, "3516": { "op": "POP" }, "3517": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 13046, 13052 ], "op": "SWAP8", "path": "30", "statement": 51 }, "3518": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 13054, 13072 ], "op": "SWAP1", "path": "30" }, "3519": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 13054, 13072 ], "op": "SWAP7", "path": "30" }, "3520": { "op": "POP" }, "3521": { "fn": "ERC1155Action._decodeToAssets", "offset": [ 11558, 13080 ], "op": "SWAP5", "path": "30" }, "3522": { "op": "POP" }, "3523": { "op": "POP" }, "3524": { "op": "POP" }, "3525": { "op": "POP" }, "3526": { "op": "POP" }, "3527": { "fn": "ERC1155Action._decodeToAssets", "jump": "o", "offset": [ 11558, 13080 ], "op": "JUMP", "path": "30" }, "3528": { "fn": "ERC1155Action._transfer", "offset": [ 14050, 15333 ], "op": "JUMPDEST", "path": "30" }, "3529": { "fn": "ERC1155Action._transfer", "offset": [ 14175, 14196 ], "op": "PUSH2", "path": "30", "value": "0xDD0" }, "3532": { "fn": "ERC1155Action._transfer", "offset": [ 14175, 14196 ], "op": "PUSH2", "path": "30", "value": "0x2E31" }, "3535": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14175, 14196 ], "op": "JUMP", "path": "30" }, "3536": { "fn": "ERC1155Action._transfer", "offset": [ 14175, 14196 ], "op": "JUMPDEST", "path": "30" }, "3537": { "fn": "ERC1155Action._transfer", "offset": [ 14198, 14219 ], "op": "PUSH2", "path": "30", "value": "0xDD8" }, "3540": { "fn": "ERC1155Action._transfer", "offset": [ 14198, 14219 ], "op": "PUSH2", "path": "30", "value": "0x2E31" }, "3543": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14198, 14219 ], "op": "JUMP", "path": "30" }, "3544": { "fn": "ERC1155Action._transfer", "offset": [ 14198, 14219 ], "op": "JUMPDEST", "path": "30" }, "3545": { "fn": "ERC1155Action._transfer", "offset": [ 14422, 14453 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3547": { "fn": "ERC1155Action._transfer", "offset": [ 14456, 14499 ], "op": "PUSH2", "path": "30", "value": "0xDE3" }, "3550": { "fn": "ERC1155Action._transfer", "offset": [ 14496, 14498 ], "op": "DUP6", "path": "30" }, "3551": { "fn": "ERC1155Action._transfer", "offset": [ 14456, 14495 ], "op": "PUSH2", "path": "30", "value": "0xA36" }, "3554": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14456, 14499 ], "op": "JUMP", "path": "30" }, "3555": { "fn": "ERC1155Action._transfer", "offset": [ 14456, 14499 ], "op": "JUMPDEST", "path": "30" }, "3556": { "fn": "ERC1155Action._transfer", "offset": [ 14422, 14499 ], "op": "SWAP1", "path": "30" }, "3557": { "fn": "ERC1155Action._transfer", "offset": [ 14422, 14499 ], "op": "POP", "path": "30" }, "3558": { "fn": "ERC1155Action._transfer", "offset": [ 14513, 14541 ], "op": "PUSH2", "path": "30", "value": "0xDEE" }, "3561": { "fn": "ERC1155Action._transfer", "offset": [ 14513, 14522 ], "op": "DUP2", "path": "30" }, "3562": { "fn": "ERC1155Action._transfer", "offset": [ 14513, 14539 ], "op": "PUSH2", "path": "30", "value": "0x1683" }, "3565": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14513, 14541 ], "op": "JUMP", "path": "30" }, "3566": { "branch": 306, "fn": "ERC1155Action._transfer", "offset": [ 14513, 14541 ], "op": "JUMPDEST", "path": "30" }, "3567": { "fn": "ERC1155Action._transfer", "offset": [ 14509, 14629 ], "op": "ISZERO", "path": "30" }, "3568": { "fn": "ERC1155Action._transfer", "offset": [ 14509, 14629 ], "op": "PUSH2", "path": "30", "value": "0xE7F" }, "3571": { "branch": 306, "fn": "ERC1155Action._transfer", "offset": [ 14509, 14629 ], "op": "JUMPI", "path": "30" }, "3572": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "statement": 52, "value": "0x40" }, "3574": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "MLOAD", "path": "30" }, "3575": { "op": "PUSH4", "value": "0x37B5FC21" }, "3580": { "op": "PUSH1", "value": "0xE1" }, "3582": { "op": "SHL" }, "3583": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP2", "path": "30" }, "3584": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "MSTORE", "path": "30" }, "3585": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14589 ], "op": "PUSH20", "path": "30", "value": "0x0" }, "3606": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14589 ], "op": "SWAP1", "path": "30" }, "3607": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14603 ], "op": "PUSH4", "path": "30", "value": "0x6F6BF842" }, "3612": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14603 ], "op": "SWAP1", "path": "30" }, "3613": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH2", "path": "30", "value": "0xE2C" }, "3616": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "SWAP1", "path": "30" }, "3617": { "fn": "ERC1155Action._transfer", "offset": [ 14604, 14606 ], "op": "DUP9", "path": "30" }, "3618": { "fn": "ERC1155Action._transfer", "offset": [ 14604, 14606 ], "op": "SWAP1", "path": "30" }, "3619": { "fn": "ERC1155Action._transfer", "offset": [ 14608, 14617 ], "op": "DUP6", "path": "30" }, "3620": { "fn": "ERC1155Action._transfer", "offset": [ 14608, 14617 ], "op": "SWAP1", "path": "30" }, "3621": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "3623": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ADD", "path": "30" }, "3624": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH2", "path": "30", "value": "0x34C1" }, "3627": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14569, 14618 ], "op": "JUMP", "path": "30" }, "3628": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "JUMPDEST", "path": "30" }, "3629": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0xA0" }, "3631": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3633": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "MLOAD", "path": "30" }, "3634": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3635": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP4", "path": "30" }, "3636": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "SUB", "path": "30" }, "3637": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP2", "path": "30" }, "3638": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP7", "path": "30" }, "3639": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3640": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "EXTCODESIZE", "path": "30" }, "3641": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ISZERO", "path": "30" }, "3642": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3643": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ISZERO", "path": "30" }, "3644": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH2", "path": "30", "value": "0xE44" }, "3647": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "JUMPI", "path": "30" }, "3648": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3650": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3651": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "REVERT", "path": "30" }, "3652": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "JUMPDEST", "path": "30" }, "3653": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "POP", "path": "30" }, "3654": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "GAS", "path": "30" }, "3655": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DELEGATECALL", "path": "30" }, "3656": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ISZERO", "path": "30" }, "3657": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3658": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ISZERO", "path": "30" }, "3659": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH2", "path": "30", "value": "0xE58" }, "3662": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "JUMPI", "path": "30" }, "3663": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "RETURNDATASIZE", "path": "30" }, "3664": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3666": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3667": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "RETURNDATACOPY", "path": "30" }, "3668": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "RETURNDATASIZE", "path": "30" }, "3669": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3671": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "REVERT", "path": "30" }, "3672": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "JUMPDEST", "path": "30" }, "3673": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "POP", "path": "30" }, "3674": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "POP", "path": "30" }, "3675": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "POP", "path": "30" }, "3676": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "POP", "path": "30" }, "3677": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3679": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "MLOAD", "path": "30" }, "3680": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "RETURNDATASIZE", "path": "30" }, "3681": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "3683": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "NOT", "path": "30" }, "3684": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "3686": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP3", "path": "30" }, "3687": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ADD", "path": "30" }, "3688": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "AND", "path": "30" }, "3689": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP3", "path": "30" }, "3690": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ADD", "path": "30" }, "3691": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP1", "path": "30" }, "3692": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3694": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "MSTORE", "path": "30" }, "3695": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "POP", "path": "30" }, "3696": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "DUP2", "path": "30" }, "3697": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "ADD", "path": "30" }, "3698": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "SWAP1", "path": "30" }, "3699": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH2", "path": "30", "value": "0xE7C" }, "3702": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "SWAP2", "path": "30" }, "3703": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "SWAP1", "path": "30" }, "3704": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "PUSH2", "path": "30", "value": "0x32A6" }, "3707": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14569, 14618 ], "op": "JUMP", "path": "30" }, "3708": { "fn": "ERC1155Action._transfer", "offset": [ 14569, 14618 ], "op": "JUMPDEST", "path": "30" }, "3709": { "fn": "ERC1155Action._transfer", "offset": [ 14557, 14618 ], "op": "SWAP1", "path": "30" }, "3710": { "fn": "ERC1155Action._transfer", "offset": [ 14557, 14618 ], "op": "POP", "path": "30" }, "3711": { "fn": "ERC1155Action._transfer", "offset": [ 14509, 14629 ], "op": "JUMPDEST", "path": "30" }, "3712": { "fn": "ERC1155Action._transfer", "offset": [ 14650, 14708 ], "op": "PUSH2", "path": "30", "statement": 53, "value": "0xE8A" }, "3715": { "fn": "ERC1155Action._transfer", "offset": [ 14686, 14688 ], "op": "DUP6", "path": "30" }, "3716": { "fn": "ERC1155Action._transfer", "offset": [ 14690, 14699 ], "op": "DUP3", "path": "30" }, "3717": { "fn": "ERC1155Action._transfer", "offset": [ 14701, 14707 ], "op": "DUP7", "path": "30" }, "3718": { "fn": "ERC1155Action._transfer", "offset": [ 14650, 14685 ], "op": "PUSH2", "path": "30", "value": "0x16D7" }, "3721": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14650, 14708 ], "op": "JUMP", "path": "30" }, "3722": { "fn": "ERC1155Action._transfer", "offset": [ 14650, 14708 ], "op": "JUMPDEST", "path": "30" }, "3723": { "fn": "ERC1155Action._transfer", "offset": [ 14638, 14708 ], "op": "SWAP1", "path": "30" }, "3724": { "op": "POP" }, "3725": { "fn": "ERC1155Action._transfer", "offset": [ 14718, 14749 ], "op": "PUSH2", "path": "30", "statement": 54, "value": "0xE96" }, "3728": { "fn": "ERC1155Action._transfer", "offset": [ 14638, 14708 ], "op": "DUP2", "path": "30" }, "3729": { "fn": "ERC1155Action._transfer", "offset": [ 14746, 14748 ], "op": "DUP7", "path": "30" }, "3730": { "fn": "ERC1155Action._transfer", "offset": [ 14718, 14745 ], "op": "PUSH2", "path": "30", "value": "0x1758" }, "3733": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14718, 14749 ], "op": "JUMP", "path": "30" }, "3734": { "fn": "ERC1155Action._transfer", "offset": [ 14718, 14749 ], "op": "JUMPDEST", "path": "30" }, "3735": { "fn": "ERC1155Action._transfer", "offset": [ 14832, 14883 ], "op": "PUSH2", "path": "30", "statement": 55, "value": "0xE9F" }, "3738": { "fn": "ERC1155Action._transfer", "offset": [ 14876, 14882 ], "op": "DUP5", "path": "30" }, "3739": { "fn": "ERC1155Action._transfer", "offset": [ 14832, 14875 ], "op": "PUSH2", "path": "30", "value": "0x185C" }, "3742": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14832, 14883 ], "op": "JUMP", "path": "30" }, "3743": { "fn": "ERC1155Action._transfer", "offset": [ 14832, 14883 ], "op": "JUMPDEST", "path": "30" }, "3744": { "fn": "ERC1155Action._transfer", "offset": [ 14935, 14968 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3746": { "fn": "ERC1155Action._transfer", "offset": [ 14971, 15016 ], "op": "PUSH2", "path": "30", "value": "0xEAA" }, "3749": { "fn": "ERC1155Action._transfer", "offset": [ 15011, 15015 ], "op": "DUP8", "path": "30" }, "3750": { "fn": "ERC1155Action._transfer", "offset": [ 14971, 15010 ], "op": "PUSH2", "path": "30", "value": "0xA36" }, "3753": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 14971, 15016 ], "op": "JUMP", "path": "30" }, "3754": { "fn": "ERC1155Action._transfer", "offset": [ 14971, 15016 ], "op": "JUMPDEST", "path": "30" }, "3755": { "fn": "ERC1155Action._transfer", "offset": [ 14935, 15016 ], "op": "SWAP1", "path": "30" }, "3756": { "fn": "ERC1155Action._transfer", "offset": [ 14935, 15016 ], "op": "POP", "path": "30" }, "3757": { "fn": "ERC1155Action._transfer", "offset": [ 15030, 15060 ], "op": "PUSH2", "path": "30", "value": "0xEB5" }, "3760": { "fn": "ERC1155Action._transfer", "offset": [ 15030, 15041 ], "op": "DUP2", "path": "30" }, "3761": { "fn": "ERC1155Action._transfer", "offset": [ 15030, 15058 ], "op": "PUSH2", "path": "30", "value": "0x1683" }, "3764": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 15030, 15060 ], "op": "JUMP", "path": "30" }, "3765": { "branch": 307, "fn": "ERC1155Action._transfer", "offset": [ 15030, 15060 ], "op": "JUMPDEST", "path": "30" }, "3766": { "fn": "ERC1155Action._transfer", "offset": [ 15026, 15154 ], "op": "ISZERO", "path": "30" }, "3767": { "fn": "ERC1155Action._transfer", "offset": [ 15026, 15154 ], "op": "PUSH2", "path": "30", "value": "0xF46" }, "3770": { "branch": 307, "fn": "ERC1155Action._transfer", "offset": [ 15026, 15154 ], "op": "JUMPI", "path": "30" }, "3771": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "statement": 56, "value": "0x40" }, "3773": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "MLOAD", "path": "30" }, "3774": { "op": "PUSH4", "value": "0x37B5FC21" }, "3779": { "op": "PUSH1", "value": "0xE1" }, "3781": { "op": "SHL" }, "3782": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP2", "path": "30" }, "3783": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "MSTORE", "path": "30" }, "3784": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15110 ], "op": "PUSH20", "path": "30", "value": "0x0" }, "3805": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15110 ], "op": "SWAP1", "path": "30" }, "3806": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15124 ], "op": "PUSH4", "path": "30", "value": "0x6F6BF842" }, "3811": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15124 ], "op": "SWAP1", "path": "30" }, "3812": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH2", "path": "30", "value": "0xEF3" }, "3815": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "SWAP1", "path": "30" }, "3816": { "fn": "ERC1155Action._transfer", "offset": [ 15125, 15129 ], "op": "DUP11", "path": "30" }, "3817": { "fn": "ERC1155Action._transfer", "offset": [ 15125, 15129 ], "op": "SWAP1", "path": "30" }, "3818": { "fn": "ERC1155Action._transfer", "offset": [ 15131, 15142 ], "op": "DUP6", "path": "30" }, "3819": { "fn": "ERC1155Action._transfer", "offset": [ 15131, 15142 ], "op": "SWAP1", "path": "30" }, "3820": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "3822": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ADD", "path": "30" }, "3823": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH2", "path": "30", "value": "0x34C1" }, "3826": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 15090, 15143 ], "op": "JUMP", "path": "30" }, "3827": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "JUMPDEST", "path": "30" }, "3828": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0xA0" }, "3830": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3832": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "MLOAD", "path": "30" }, "3833": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3834": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP4", "path": "30" }, "3835": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "SUB", "path": "30" }, "3836": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP2", "path": "30" }, "3837": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP7", "path": "30" }, "3838": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3839": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "EXTCODESIZE", "path": "30" }, "3840": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ISZERO", "path": "30" }, "3841": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3842": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ISZERO", "path": "30" }, "3843": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH2", "path": "30", "value": "0xF0B" }, "3846": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "JUMPI", "path": "30" }, "3847": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3849": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3850": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "REVERT", "path": "30" }, "3851": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "JUMPDEST", "path": "30" }, "3852": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "POP", "path": "30" }, "3853": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "GAS", "path": "30" }, "3854": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DELEGATECALL", "path": "30" }, "3855": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ISZERO", "path": "30" }, "3856": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3857": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ISZERO", "path": "30" }, "3858": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH2", "path": "30", "value": "0xF1F" }, "3861": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "JUMPI", "path": "30" }, "3862": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "RETURNDATASIZE", "path": "30" }, "3863": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3865": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3866": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "RETURNDATACOPY", "path": "30" }, "3867": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "RETURNDATASIZE", "path": "30" }, "3868": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3870": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "REVERT", "path": "30" }, "3871": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "JUMPDEST", "path": "30" }, "3872": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "POP", "path": "30" }, "3873": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "POP", "path": "30" }, "3874": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "POP", "path": "30" }, "3875": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "POP", "path": "30" }, "3876": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3878": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "MLOAD", "path": "30" }, "3879": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "RETURNDATASIZE", "path": "30" }, "3880": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "3882": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "NOT", "path": "30" }, "3883": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "3885": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP3", "path": "30" }, "3886": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ADD", "path": "30" }, "3887": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "AND", "path": "30" }, "3888": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP3", "path": "30" }, "3889": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ADD", "path": "30" }, "3890": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP1", "path": "30" }, "3891": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "3893": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "MSTORE", "path": "30" }, "3894": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "POP", "path": "30" }, "3895": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "DUP2", "path": "30" }, "3896": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "ADD", "path": "30" }, "3897": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "SWAP1", "path": "30" }, "3898": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH2", "path": "30", "value": "0xF43" }, "3901": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "SWAP2", "path": "30" }, "3902": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "SWAP1", "path": "30" }, "3903": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "PUSH2", "path": "30", "value": "0x32A6" }, "3906": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 15090, 15143 ], "op": "JUMP", "path": "30" }, "3907": { "fn": "ERC1155Action._transfer", "offset": [ 15090, 15143 ], "op": "JUMPDEST", "path": "30" }, "3908": { "fn": "ERC1155Action._transfer", "offset": [ 15076, 15143 ], "op": "SWAP1", "path": "30" }, "3909": { "fn": "ERC1155Action._transfer", "offset": [ 15076, 15143 ], "op": "POP", "path": "30" }, "3910": { "fn": "ERC1155Action._transfer", "offset": [ 15026, 15154 ], "op": "JUMPDEST", "path": "30" }, "3911": { "fn": "ERC1155Action._transfer", "offset": [ 15177, 15239 ], "op": "PUSH2", "path": "30", "statement": 57, "value": "0xF51" }, "3914": { "fn": "ERC1155Action._transfer", "offset": [ 15213, 15217 ], "op": "DUP8", "path": "30" }, "3915": { "fn": "ERC1155Action._transfer", "offset": [ 15219, 15230 ], "op": "DUP3", "path": "30" }, "3916": { "fn": "ERC1155Action._transfer", "offset": [ 15232, 15238 ], "op": "DUP8", "path": "30" }, "3917": { "fn": "ERC1155Action._transfer", "offset": [ 15177, 15212 ], "op": "PUSH2", "path": "30", "value": "0x16D7" }, "3920": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 15177, 15239 ], "op": "JUMP", "path": "30" }, "3921": { "fn": "ERC1155Action._transfer", "offset": [ 15177, 15239 ], "op": "JUMPDEST", "path": "30" }, "3922": { "fn": "ERC1155Action._transfer", "offset": [ 15163, 15239 ], "op": "SWAP1", "path": "30" }, "3923": { "op": "POP" }, "3924": { "fn": "ERC1155Action._transfer", "offset": [ 15249, 15284 ], "op": "PUSH2", "path": "30", "statement": 58, "value": "0xF5D" }, "3927": { "fn": "ERC1155Action._transfer", "offset": [ 15163, 15239 ], "op": "DUP2", "path": "30" }, "3928": { "fn": "ERC1155Action._transfer", "offset": [ 15279, 15283 ], "op": "DUP9", "path": "30" }, "3929": { "fn": "ERC1155Action._transfer", "offset": [ 15249, 15278 ], "op": "PUSH2", "path": "30", "value": "0x1758" }, "3932": { "fn": "ERC1155Action._transfer", "jump": "i", "offset": [ 15249, 15284 ], "op": "JUMP", "path": "30" }, "3933": { "fn": "ERC1155Action._transfer", "offset": [ 15249, 15284 ], "op": "JUMPDEST", "path": "30" }, "3934": { "fn": "ERC1155Action._transfer", "offset": [ 15303, 15314 ], "op": "SWAP7", "path": "30", "statement": 59 }, "3935": { "fn": "ERC1155Action._transfer", "offset": [ 15316, 15325 ], "op": "SWAP1", "path": "30" }, "3936": { "fn": "ERC1155Action._transfer", "offset": [ 15316, 15325 ], "op": "SWAP6", "path": "30" }, "3937": { "op": "POP" }, "3938": { "fn": "ERC1155Action._transfer", "offset": [ 14050, 15333 ], "op": "SWAP4", "path": "30" }, "3939": { "op": "POP" }, "3940": { "op": "POP" }, "3941": { "op": "POP" }, "3942": { "op": "POP" }, "3943": { "fn": "ERC1155Action._transfer", "jump": "o", "offset": [ 14050, 15333 ], "op": "JUMP", "path": "30" }, "3944": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "JUMPDEST", "path": "30" }, "3945": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15738, 15748 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3947": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15738, 15748 ], "op": "DUP1", "path": "30" }, "3948": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15829, 15831 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "3950": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15814, 15831 ], "op": "DUP5", "path": "30" }, "3951": { "branch": 308, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15814, 15831 ], "op": "LT", "path": "30" }, "3952": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15810, 16151 ], "op": "PUSH2", "path": "30", "value": "0xF85" }, "3955": { "branch": 308, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15810, 16151 ], "op": "JUMPI", "path": "30" }, "3956": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16068, 16079 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "3958": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16082, 16109 ], "op": "PUSH2", "path": "30", "value": "0xF81" }, "3961": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16082, 16109 ], "op": "DUP6", "path": "30" }, "3962": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16082, 16109 ], "op": "DUP8", "path": "30" }, "3963": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16082, 16109 ], "op": "ADD", "path": "30" }, "3964": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16093, 16097 ], "op": "DUP8", "path": "30" }, "3965": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16082, 16109 ], "op": "PUSH2", "path": "30", "value": "0x31C0" }, "3968": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 16082, 16109 ], "op": "JUMP", "path": "30" }, "3969": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16082, 16109 ], "op": "JUMPDEST", "path": "30" }, "3970": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16068, 16109 ], "op": "SWAP3", "path": "30" }, "3971": { "op": "POP" }, "3972": { "op": "POP" }, "3973": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15810, 16151 ], "op": "JUMPDEST", "path": "30" }, "3974": { "op": "PUSH1", "value": "0x1" }, "3976": { "op": "PUSH1", "value": "0x1" }, "3978": { "op": "PUSH1", "value": "0xE0" }, "3980": { "op": "SHL" }, "3981": { "op": "SUB" }, "3982": { "op": "NOT" }, "3983": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16530 ], "op": "DUP3", "path": "30" }, "3984": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16530 ], "op": "AND", "path": "30" }, "3985": { "op": "PUSH4", "value": "0x66890643" }, "3990": { "op": "PUSH1", "value": "0xE0" }, "3992": { "op": "SHL" }, "3993": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16530 ], "op": "EQ", "path": "30" }, "3994": { "branch": 309, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16530 ], "op": "DUP1", "path": "30" }, "3995": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16585 ], "op": "PUSH2", "path": "30", "value": "0xFB4" }, "3998": { "branch": 309, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16585 ], "op": "JUMPI", "path": "30" }, "3999": { "op": "POP" }, "4000": { "op": "PUSH1", "value": "0x1" }, "4002": { "op": "PUSH1", "value": "0x1" }, "4004": { "op": "PUSH1", "value": "0xE0" }, "4006": { "op": "SHL" }, "4007": { "op": "SUB" }, "4008": { "op": "NOT" }, "4009": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16546, 16585 ], "op": "DUP3", "path": "30" }, "4010": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16546, 16585 ], "op": "AND", "path": "30" }, "4011": { "op": "PUSH4", "value": "0x541F527" }, "4016": { "op": "PUSH1", "value": "0xE4" }, "4018": { "op": "SHL" }, "4019": { "branch": 310, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16546, 16585 ], "op": "EQ", "path": "30" }, "4020": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16585 ], "op": "JUMPDEST", "path": "30" }, "4021": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16649 ], "op": "DUP1", "path": "30" }, "4022": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16649 ], "op": "PUSH2", "path": "30", "value": "0xFCF" }, "4025": { "branch": 310, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16649 ], "op": "JUMPI", "path": "30" }, "4026": { "op": "POP" }, "4027": { "op": "PUSH1", "value": "0x1" }, "4029": { "op": "PUSH1", "value": "0x1" }, "4031": { "op": "PUSH1", "value": "0xE0" }, "4033": { "op": "SHL" }, "4034": { "op": "SUB" }, "4035": { "op": "NOT" }, "4036": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16601, 16649 ], "op": "DUP3", "path": "30" }, "4037": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16601, 16649 ], "op": "AND", "path": "30" }, "4038": { "op": "PUSH4", "value": "0x37351953" }, "4043": { "op": "PUSH1", "value": "0xE1" }, "4045": { "op": "SHL" }, "4046": { "branch": 311, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16601, 16649 ], "op": "EQ", "path": "30" }, "4047": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16649 ], "op": "JUMPDEST", "path": "30" }, "4048": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16721 ], "op": "DUP1", "path": "30" }, "4049": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16721 ], "op": "PUSH2", "path": "30", "value": "0xFEA" }, "4052": { "branch": 311, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16721 ], "op": "JUMPI", "path": "30" }, "4053": { "op": "POP" }, "4054": { "op": "PUSH1", "value": "0x1" }, "4056": { "op": "PUSH1", "value": "0x1" }, "4058": { "op": "PUSH1", "value": "0xE0" }, "4060": { "op": "SHL" }, "4061": { "op": "SUB" }, "4062": { "op": "NOT" }, "4063": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16665, 16721 ], "op": "DUP3", "path": "30" }, "4064": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16665, 16721 ], "op": "AND", "path": "30" }, "4065": { "op": "PUSH4", "value": "0x276B64B" }, "4070": { "op": "PUSH1", "value": "0xE0" }, "4072": { "op": "SHL" }, "4073": { "branch": 312, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16665, 16721 ], "op": "EQ", "path": "30" }, "4074": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16488, 16721 ], "op": "JUMPDEST", "path": "30" }, "4075": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16471, 17593 ], "op": "ISZERO", "path": "30" }, "4076": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16471, 17593 ], "op": "PUSH2", "path": "30", "value": "0x10FA" }, "4079": { "branch": 312, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16471, 17593 ], "op": "JUMPI", "path": "30" }, "4080": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16777, 16787 ], "op": "PUSH2", "path": "30", "statement": 60, "value": "0xFFD" }, "4083": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16784, 16786 ], "op": "PUSH1", "path": "30", "value": "0x24" }, "4085": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16782, 16783 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "4087": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16777, 16781 ], "op": "DUP7", "path": "30" }, "4088": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16777, 16781 ], "op": "DUP9", "path": "30" }, "4089": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16777, 16787 ], "op": "PUSH2", "path": "30", "value": "0x37ED" }, "4092": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 16777, 16787 ], "op": "JUMP", "path": "30" }, "4093": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16777, 16787 ], "op": "JUMPDEST", "path": "30" }, "4094": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "DUP2", "path": "30" }, "4095": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "ADD", "path": "30" }, "4096": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "SWAP1", "path": "30" }, "4097": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "PUSH2", "path": "30", "value": "0x100A" }, "4100": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "SWAP2", "path": "30" }, "4101": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "SWAP1", "path": "30" }, "4102": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "PUSH2", "path": "30", "value": "0x2F75" }, "4105": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 16766, 16799 ], "op": "JUMP", "path": "30" }, "4106": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16766, 16799 ], "op": "JUMPDEST", "path": "30" }, "4107": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16746, 16799 ], "op": "SWAP1", "path": "30" }, "4108": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16746, 16799 ], "op": "POP", "path": "30" }, "4109": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17101, 17105 ], "op": "DUP9", "path": "30", "statement": 61 }, "4110": { "op": "PUSH1", "value": "0x1" }, "4112": { "op": "PUSH1", "value": "0x1" }, "4114": { "op": "PUSH1", "value": "0xA0" }, "4116": { "op": "SHL" }, "4117": { "op": "SUB" }, "4118": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17105 ], "op": "AND", "path": "30" }, "4119": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17097 ], "op": "DUP2", "path": "30" }, "4120": { "op": "PUSH1", "value": "0x1" }, "4122": { "op": "PUSH1", "value": "0x1" }, "4124": { "op": "PUSH1", "value": "0xA0" }, "4126": { "op": "SHL" }, "4127": { "op": "SUB" }, "4128": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17105 ], "op": "AND", "path": "30" }, "4129": { "branch": 313, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17105 ], "op": "EQ", "path": "30" }, "4130": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17190 ], "op": "DUP1", "path": "30" }, "4131": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17190 ], "op": "PUSH2", "path": "30", "value": "0x104D" }, "4134": { "branch": 313, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17190 ], "op": "JUMPI", "path": "30" }, "4135": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17080, 17190 ], "op": "POP", "path": "30" }, "4136": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17151, 17153 ], "op": "DUP8", "path": "30" }, "4137": { "op": "PUSH1", "value": "0x1" }, "4139": { "op": "PUSH1", "value": "0x1" }, "4141": { "op": "PUSH1", "value": "0xA0" }, "4143": { "op": "SHL" }, "4144": { "op": "SUB" }, "4145": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17153 ], "op": "AND", "path": "30" }, "4146": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17147 ], "op": "DUP2", "path": "30" }, "4147": { "op": "PUSH1", "value": "0x1" }, "4149": { "op": "PUSH1", "value": "0x1" }, "4151": { "op": "PUSH1", "value": "0xA0" }, "4153": { "op": "SHL" }, "4154": { "op": "SUB" }, "4155": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17153 ], "op": "AND", "path": "30" }, "4156": { "branch": 314, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17153 ], "op": "EQ", "path": "30" }, "4157": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17189 ], "op": "DUP1", "path": "30" }, "4158": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17189 ], "op": "ISZERO", "path": "30" }, "4159": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17189 ], "op": "PUSH2", "path": "30", "value": "0x104D" }, "4162": { "branch": 314, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17189 ], "op": "JUMPI", "path": "30" }, "4163": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17130, 17189 ], "op": "POP", "path": "30" }, "4164": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17157, 17189 ], "op": "PUSH2", "path": "30", "value": "0x104D" }, "4167": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17174, 17176 ], "op": "DUP9", "path": "30" }, "4168": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17178, 17188 ], "op": "CALLER", "path": "30" }, "4169": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17157, 17173 ], "op": "PUSH2", "path": "30", "value": "0x7D6" }, "4172": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 17157, 17189 ], "op": "JUMP", "path": "30" }, "4173": { "branch": 315, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17157, 17189 ], "op": "JUMPDEST", "path": "30" }, "4174": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "PUSH2", "path": "30", "value": "0x1069" }, "4177": { "branch": 315, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "JUMPI", "path": "30" }, "4178": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4180": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "MLOAD", "path": "30" }, "4181": { "op": "PUSH3", "value": "0x461BCD" }, "4185": { "op": "PUSH1", "value": "0xE5" }, "4187": { "op": "SHL" }, "4188": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "DUP2", "path": "30" }, "4189": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "MSTORE", "path": "30" }, "4190": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "4192": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "ADD", "path": "30" }, "4193": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "4196": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "SWAP1", "path": "30" }, "4197": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "PUSH2", "path": "30", "value": "0x3695" }, "4200": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 17055, 17241 ], "op": "JUMP", "path": "30" }, "4201": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17055, 17241 ], "op": "JUMPDEST", "path": "30" }, "4202": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17452, 17463 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4204": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17465, 17484 ], "op": "DUP1", "path": "30" }, "4205": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17496, 17500 ], "op": "ADDRESS", "path": "30" }, "4206": { "op": "PUSH1", "value": "0x1" }, "4208": { "op": "PUSH1", "value": "0x1" }, "4210": { "op": "PUSH1", "value": "0xA0" }, "4212": { "op": "SHL" }, "4213": { "op": "SUB" }, "4214": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17506 ], "op": "AND", "path": "30" }, "4215": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17514, 17523 ], "op": "CALLVALUE", "path": "30" }, "4216": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17525, 17529 ], "op": "DUP9", "path": "30" }, "4217": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17525, 17529 ], "op": "DUP9", "path": "30" }, "4218": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4220": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "MLOAD", "path": "30" }, "4221": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH2", "path": "30", "value": "0x1087" }, "4224": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SWAP3", "path": "30" }, "4225": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SWAP2", "path": "30" }, "4226": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SWAP1", "path": "30" }, "4227": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH2", "path": "30", "value": "0x33E4" }, "4230": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 17488, 17530 ], "op": "JUMP", "path": "30" }, "4231": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "JUMPDEST", "path": "30" }, "4232": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4234": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4236": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "MLOAD", "path": "30" }, "4237": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP1", "path": "30" }, "4238": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP4", "path": "30" }, "4239": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SUB", "path": "30" }, "4240": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP2", "path": "30" }, "4241": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP6", "path": "30" }, "4242": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP8", "path": "30" }, "4243": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "GAS", "path": "30" }, "4244": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "CALL", "path": "30" }, "4245": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SWAP3", "path": "30" }, "4246": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "POP", "path": "30" }, "4247": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "POP", "path": "30" }, "4248": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "POP", "path": "30" }, "4249": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "RETURNDATASIZE", "path": "30" }, "4250": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP1", "path": "30" }, "4251": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4253": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP2", "path": "30" }, "4254": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "EQ", "path": "30" }, "4255": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH2", "path": "30", "value": "0x10C4" }, "4258": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "JUMPI", "path": "30" }, "4259": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4261": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "MLOAD", "path": "30" }, "4262": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SWAP2", "path": "30" }, "4263": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "POP", "path": "30" }, "4264": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x1F" }, "4266": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "NOT", "path": "30" }, "4267": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x3F" }, "4269": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "RETURNDATASIZE", "path": "30" }, "4270": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "ADD", "path": "30" }, "4271": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "AND", "path": "30" }, "4272": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP3", "path": "30" }, "4273": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "ADD", "path": "30" }, "4274": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4276": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "MSTORE", "path": "30" }, "4277": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "RETURNDATASIZE", "path": "30" }, "4278": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP3", "path": "30" }, "4279": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "MSTORE", "path": "30" }, "4280": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "RETURNDATASIZE", "path": "30" }, "4281": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4283": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "4285": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "DUP5", "path": "30" }, "4286": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "ADD", "path": "30" }, "4287": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "RETURNDATACOPY", "path": "30" }, "4288": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH2", "path": "30", "value": "0x10C9" }, "4291": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "JUMP", "path": "30" }, "4292": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "JUMPDEST", "path": "30" }, "4293": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "4295": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "SWAP2", "path": "30" }, "4296": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "POP", "path": "30" }, "4297": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "JUMPDEST", "path": "30" }, "4298": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17488, 17530 ], "op": "POP", "path": "30" }, "4299": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17451, 17530 ], "op": "SWAP2", "path": "30" }, "4300": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17451, 17530 ], "op": "POP", "path": "30" }, "4301": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17451, 17530 ], "op": "SWAP2", "path": "30" }, "4302": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17451, 17530 ], "op": "POP", "path": "30" }, "4303": { "branch": 316, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17552, 17558 ], "op": "DUP2", "path": "30", "statement": 62 }, "4304": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17560, 17581 ], "op": "PUSH2", "path": "30", "value": "0x10D8" }, "4307": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17574, 17580 ], "op": "DUP3", "path": "30" }, "4308": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17560, 17573 ], "op": "PUSH2", "path": "30", "value": "0x18AB" }, "4311": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 17560, 17581 ], "op": "JUMP", "path": "30" }, "4312": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17560, 17581 ], "op": "JUMPDEST", "path": "30" }, "4313": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "SWAP1", "path": "30" }, "4314": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "PUSH2", "path": "30", "value": "0x10F6" }, "4317": { "branch": 316, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "JUMPI", "path": "30" }, "4318": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4320": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "MLOAD", "path": "30" }, "4321": { "op": "PUSH3", "value": "0x461BCD" }, "4325": { "op": "PUSH1", "value": "0xE5" }, "4327": { "op": "SHL" }, "4328": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "DUP2", "path": "30" }, "4329": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "MSTORE", "path": "30" }, "4330": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "4332": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "ADD", "path": "30" }, "4333": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "4336": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "SWAP2", "path": "30" }, "4337": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "SWAP1", "path": "30" }, "4338": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "PUSH2", "path": "30", "value": "0x3639" }, "4341": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 17544, 17582 ], "op": "JUMP", "path": "30" }, "4342": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "JUMPDEST", "path": "30" }, "4343": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17544, 17582 ], "op": "POP", "path": "30" }, "4344": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16471, 17593 ], "op": "POP", "path": "30" }, "4345": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16471, 17593 ], "op": "POP", "path": "30" }, "4346": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 16471, 17593 ], "op": "JUMPDEST", "path": "30" }, "4347": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17941, 17945 ], "op": "DUP9", "path": "30" }, "4348": { "op": "PUSH1", "value": "0x1" }, "4350": { "op": "PUSH1", "value": "0x1" }, "4352": { "op": "PUSH1", "value": "0xA0" }, "4354": { "op": "SHL" }, "4355": { "op": "SUB" }, "4356": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17945 ], "op": "AND", "path": "30" }, "4357": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17937 ], "op": "DUP2", "path": "30" }, "4358": { "op": "PUSH1", "value": "0x1" }, "4360": { "op": "PUSH1", "value": "0x1" }, "4362": { "op": "PUSH1", "value": "0xA0" }, "4364": { "op": "SHL" }, "4365": { "op": "SUB" }, "4366": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17945 ], "op": "AND", "path": "30" }, "4367": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17945 ], "op": "EQ", "path": "30" }, "4368": { "branch": 317, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17945 ], "op": "ISZERO", "path": "30" }, "4369": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17976 ], "op": "DUP1", "path": "30" }, "4370": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17976 ], "op": "ISZERO", "path": "30" }, "4371": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17976 ], "op": "PUSH2", "path": "30", "value": "0x1129" }, "4374": { "branch": 317, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17976 ], "op": "JUMPI", "path": "30" }, "4375": { "op": "POP" }, "4376": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17968 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "4378": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17968 ], "op": "DUP8", "path": "30" }, "4379": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17968 ], "op": "ADD", "path": "30" }, "4380": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17968 ], "op": "MLOAD", "path": "30" }, "4381": { "op": "PUSH1", "value": "0x1" }, "4383": { "op": "PUSH1", "value": "0x1" }, "4385": { "op": "PUSH1", "value": "0xF8" }, "4387": { "op": "SHL" }, "4388": { "op": "SUB" }, "4389": { "op": "NOT" }, "4390": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17976 ], "op": "AND", "path": "30" }, "4391": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17976 ], "op": "ISZERO", "path": "30" }, "4392": { "branch": 318, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17949, 17976 ], "op": "ISZERO", "path": "30" }, "4393": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17920, 17976 ], "op": "JUMPDEST", "path": "30" }, "4394": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17916, 18060 ], "op": "ISZERO", "path": "30" }, "4395": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17916, 18060 ], "op": "PUSH2", "path": "30", "value": "0x1196" }, "4398": { "branch": 318, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17916, 18060 ], "op": "JUMPI", "path": "30" }, "4399": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "statement": 63, "value": "0x40" }, "4401": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "MLOAD", "path": "30" }, "4402": { "op": "PUSH4", "value": "0x6CCC642F" }, "4407": { "op": "PUSH1", "value": "0xE0" }, "4409": { "op": "SHL" }, "4410": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP2", "path": "30" }, "4411": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "MSTORE", "path": "30" }, "4412": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18014 ], "op": "PUSH20", "path": "30", "value": "0x0" }, "4433": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18014 ], "op": "SWAP1", "path": "30" }, "4434": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18043 ], "op": "PUSH4", "path": "30", "value": "0x6CCC642F" }, "4439": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18043 ], "op": "SWAP1", "path": "30" }, "4440": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH2", "path": "30", "value": "0x1165" }, "4443": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "SWAP1", "path": "30" }, "4444": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18044, 18048 ], "op": "DUP13", "path": "30" }, "4445": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18044, 18048 ], "op": "SWAP1", "path": "30" }, "4446": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "4448": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "ADD", "path": "30" }, "4449": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH2", "path": "30", "value": "0x33F4" }, "4452": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 17992, 18049 ], "op": "JUMP", "path": "30" }, "4453": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "JUMPDEST", "path": "30" }, "4454": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4456": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4458": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "MLOAD", "path": "30" }, "4459": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP1", "path": "30" }, "4460": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP4", "path": "30" }, "4461": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "SUB", "path": "30" }, "4462": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP2", "path": "30" }, "4463": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP7", "path": "30" }, "4464": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP1", "path": "30" }, "4465": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "EXTCODESIZE", "path": "30" }, "4466": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "ISZERO", "path": "30" }, "4467": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP1", "path": "30" }, "4468": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "ISZERO", "path": "30" }, "4469": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH2", "path": "30", "value": "0x117D" }, "4472": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "JUMPI", "path": "30" }, "4473": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4475": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP1", "path": "30" }, "4476": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "REVERT", "path": "30" }, "4477": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "JUMPDEST", "path": "30" }, "4478": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "POP", "path": "30" }, "4479": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "GAS", "path": "30" }, "4480": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DELEGATECALL", "path": "30" }, "4481": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "ISZERO", "path": "30" }, "4482": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP1", "path": "30" }, "4483": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "ISZERO", "path": "30" }, "4484": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH2", "path": "30", "value": "0x1191" }, "4487": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "JUMPI", "path": "30" }, "4488": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "RETURNDATASIZE", "path": "30" }, "4489": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4491": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "DUP1", "path": "30" }, "4492": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "RETURNDATACOPY", "path": "30" }, "4493": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "RETURNDATASIZE", "path": "30" }, "4494": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4496": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "REVERT", "path": "30" }, "4497": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "JUMPDEST", "path": "30" }, "4498": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "POP", "path": "30" }, "4499": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "POP", "path": "30" }, "4500": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "POP", "path": "30" }, "4501": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17992, 18049 ], "op": "POP", "path": "30" }, "4502": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 17916, 18060 ], "op": "JUMPDEST", "path": "30" }, "4503": { "branch": 319, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18431 ], "op": "DUP3", "path": "30" }, "4504": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18458 ], "op": "DUP1", "path": "30" }, "4505": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18458 ], "op": "ISZERO", "path": "30" }, "4506": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18458 ], "op": "PUSH2", "path": "30", "value": "0x11B5" }, "4509": { "branch": 319, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18458 ], "op": "JUMPI", "path": "30" }, "4510": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18458 ], "op": "POP", "path": "30" }, "4511": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18456, 18458 ], "op": "DUP8", "path": "30" }, "4512": { "op": "PUSH1", "value": "0x1" }, "4514": { "op": "PUSH1", "value": "0x1" }, "4516": { "op": "PUSH1", "value": "0xA0" }, "4518": { "op": "SHL" }, "4519": { "op": "SUB" }, "4520": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18435, 18458 ], "op": "AND", "path": "30" }, "4521": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18435, 18452 ], "op": "DUP2", "path": "30" }, "4522": { "op": "PUSH1", "value": "0x1" }, "4524": { "op": "PUSH1", "value": "0x1" }, "4526": { "op": "PUSH1", "value": "0xA0" }, "4528": { "op": "SHL" }, "4529": { "op": "SUB" }, "4530": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18435, 18458 ], "op": "AND", "path": "30" }, "4531": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18435, 18458 ], "op": "EQ", "path": "30" }, "4532": { "branch": 320, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18435, 18458 ], "op": "ISZERO", "path": "30" }, "4533": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18458 ], "op": "JUMPDEST", "path": "30" }, "4534": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18487 ], "op": "DUP1", "path": "30" }, "4535": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18487 ], "op": "ISZERO", "path": "30" }, "4536": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18487 ], "op": "PUSH2", "path": "30", "value": "0x11CE" }, "4539": { "branch": 320, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18487 ], "op": "JUMPI", "path": "30" }, "4540": { "op": "POP" }, "4541": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18479 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "4543": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18479 ], "op": "DUP7", "path": "30" }, "4544": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18479 ], "op": "ADD", "path": "30" }, "4545": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18479 ], "op": "MLOAD", "path": "30" }, "4546": { "op": "PUSH1", "value": "0x1" }, "4548": { "op": "PUSH1", "value": "0x1" }, "4550": { "op": "PUSH1", "value": "0xF8" }, "4552": { "op": "SHL" }, "4553": { "op": "SUB" }, "4554": { "op": "NOT" }, "4555": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18487 ], "op": "AND", "path": "30" }, "4556": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18487 ], "op": "ISZERO", "path": "30" }, "4557": { "branch": 321, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18462, 18487 ], "op": "ISZERO", "path": "30" }, "4558": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18413, 18487 ], "op": "JUMPDEST", "path": "30" }, "4559": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18409, 18569 ], "op": "ISZERO", "path": "30" }, "4560": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18409, 18569 ], "op": "PUSH2", "path": "30", "value": "0x123B" }, "4563": { "branch": 321, "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18409, 18569 ], "op": "JUMPI", "path": "30" }, "4564": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "statement": 64, "value": "0x40" }, "4566": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "MLOAD", "path": "30" }, "4567": { "op": "PUSH4", "value": "0x6CCC642F" }, "4572": { "op": "PUSH1", "value": "0xE0" }, "4574": { "op": "SHL" }, "4575": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP2", "path": "30" }, "4576": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "MSTORE", "path": "30" }, "4577": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18525 ], "op": "PUSH20", "path": "30", "value": "0x0" }, "4598": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18525 ], "op": "SWAP1", "path": "30" }, "4599": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18554 ], "op": "PUSH4", "path": "30", "value": "0x6CCC642F" }, "4604": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18554 ], "op": "SWAP1", "path": "30" }, "4605": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH2", "path": "30", "value": "0x120A" }, "4608": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "SWAP1", "path": "30" }, "4609": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18555, 18557 ], "op": "DUP12", "path": "30" }, "4610": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18555, 18557 ], "op": "SWAP1", "path": "30" }, "4611": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "4613": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "ADD", "path": "30" }, "4614": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH2", "path": "30", "value": "0x33F4" }, "4617": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "i", "offset": [ 18503, 18558 ], "op": "JUMP", "path": "30" }, "4618": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "JUMPDEST", "path": "30" }, "4619": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4621": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4623": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "MLOAD", "path": "30" }, "4624": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP1", "path": "30" }, "4625": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP4", "path": "30" }, "4626": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "SUB", "path": "30" }, "4627": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP2", "path": "30" }, "4628": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP7", "path": "30" }, "4629": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP1", "path": "30" }, "4630": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "EXTCODESIZE", "path": "30" }, "4631": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "ISZERO", "path": "30" }, "4632": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP1", "path": "30" }, "4633": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "ISZERO", "path": "30" }, "4634": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH2", "path": "30", "value": "0x1222" }, "4637": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "JUMPI", "path": "30" }, "4638": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4640": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP1", "path": "30" }, "4641": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "REVERT", "path": "30" }, "4642": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "JUMPDEST", "path": "30" }, "4643": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "POP", "path": "30" }, "4644": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "GAS", "path": "30" }, "4645": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DELEGATECALL", "path": "30" }, "4646": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "ISZERO", "path": "30" }, "4647": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP1", "path": "30" }, "4648": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "ISZERO", "path": "30" }, "4649": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH2", "path": "30", "value": "0x1236" }, "4652": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "JUMPI", "path": "30" }, "4653": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "RETURNDATASIZE", "path": "30" }, "4654": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4656": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "DUP1", "path": "30" }, "4657": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "RETURNDATACOPY", "path": "30" }, "4658": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "RETURNDATASIZE", "path": "30" }, "4659": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "PUSH1", "path": "30", "value": "0x0" }, "4661": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "REVERT", "path": "30" }, "4662": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "JUMPDEST", "path": "30" }, "4663": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "POP", "path": "30" }, "4664": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "POP", "path": "30" }, "4665": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "POP", "path": "30" }, "4666": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18503, 18558 ], "op": "POP", "path": "30" }, "4667": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 18409, 18569 ], "op": "JUMPDEST", "path": "30" }, "4668": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4669": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4670": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4671": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4672": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4673": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4674": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4675": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4676": { "fn": "ERC1155Action._checkPostTransferEvent", "offset": [ 15492, 18575 ], "op": "POP", "path": "30" }, "4677": { "fn": "ERC1155Action._checkPostTransferEvent", "jump": "o", "offset": [ 15492, 18575 ], "op": "JUMP", "path": "30" }, "4678": { "fn": "Address.isContract", "offset": [ 718, 1131 ], "op": "JUMPDEST", "path": "16" }, "4679": { "fn": "Address.isContract", "offset": [ 1078, 1098 ], "op": "EXTCODESIZE", "path": "16" }, "4680": { "fn": "Address.isContract", "offset": [ 1116, 1124 ], "op": "ISZERO", "path": "16", "statement": 65 }, "4681": { "fn": "Address.isContract", "offset": [ 1116, 1124 ], "op": "ISZERO", "path": "16" }, "4682": { "fn": "Address.isContract", "offset": [ 1116, 1124 ], "op": "SWAP1", "path": "16" }, "4683": { "fn": "Address.isContract", "jump": "o", "offset": [ 718, 1131 ], "op": "JUMP", "path": "16" }, "4684": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "JUMPDEST", "path": "85" }, "4685": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1016, 1023 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "4687": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "4690": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1043, 1081 ], "op": "DUP5", "path": "85", "statement": 66 }, "4691": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1043, 1081 ], "op": "GT", "path": "85" }, "4692": { "branch": 446, "fn": "TransferAssets.encodeAssetId", "offset": [ 1043, 1081 ], "op": "ISZERO", "path": "85" }, "4693": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "PUSH2", "path": "85", "value": "0x125D" }, "4696": { "branch": 446, "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "JUMPI", "path": "85" }, "4697": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "4699": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "DUP1", "path": "85" }, "4700": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "REVERT", "path": "85" }, "4701": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1035, 1082 ], "op": "JUMPDEST", "path": "85" }, "4702": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1112, 1128 ], "op": "PUSH5", "path": "85", "statement": 67, "value": "0xFFFFFFFFFF" }, "4708": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1100, 1128 ], "op": "DUP4", "path": "85" }, "4709": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1100, 1128 ], "op": "GT", "path": "85" }, "4710": { "branch": 447, "fn": "TransferAssets.encodeAssetId", "offset": [ 1100, 1128 ], "op": "ISZERO", "path": "85" }, "4711": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "PUSH2", "path": "85", "value": "0x126F" }, "4714": { "branch": 447, "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "JUMPI", "path": "85" }, "4715": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "4717": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "DUP1", "path": "85" }, "4718": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "REVERT", "path": "85" }, "4719": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1092, 1129 ], "op": "JUMPDEST", "path": "85" }, "4720": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "4722": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1147, 1195 ], "op": "DUP3", "path": "85", "statement": 68 }, "4723": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1147, 1195 ], "op": "GT", "path": "85" }, "4724": { "branch": 448, "fn": "TransferAssets.encodeAssetId", "offset": [ 1147, 1195 ], "op": "ISZERO", "path": "85" }, "4725": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "PUSH2", "path": "85", "value": "0x127D" }, "4728": { "branch": 448, "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "JUMPI", "path": "85" }, "4729": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "4731": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "DUP1", "path": "85" }, "4732": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "REVERT", "path": "85" }, "4733": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1139, 1196 ], "op": "JUMPDEST", "path": "85" }, "4734": { "op": "POP" }, "4735": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "PUSH8", "path": "85", "statement": 69, "value": "0xFFFF000000000000" }, "4744": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1292, 1294 ], "op": "PUSH1", "path": "85", "value": "0x30" }, "4746": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "DUP5", "path": "85" }, "4747": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "SWAP1", "path": "85" }, "4748": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "SHL", "path": "85" }, "4749": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1252, 1294 ], "op": "AND", "path": "85" }, "4750": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "PUSH6", "path": "85", "value": "0xFFFFFFFFFF00" }, "4757": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1357, 1358 ], "op": "PUSH1", "path": "85", "value": "0x8" }, "4759": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "DUP5", "path": "85" }, "4760": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "SWAP1", "path": "85" }, "4761": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "SHL", "path": "85" }, "4762": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1319, 1358 ], "op": "AND", "path": "85" }, "4763": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1251, 1359 ], "op": "OR", "path": "85" }, "4764": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1390, 1415 ], "op": "PUSH1", "path": "85", "value": "0xFF" }, "4766": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1390, 1415 ], "op": "DUP3", "path": "85" }, "4767": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1390, 1415 ], "op": "AND", "path": "85" }, "4768": { "fn": "TransferAssets.encodeAssetId", "offset": [ 1251, 1416 ], "op": "OR", "path": "85" }, "4769": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "SWAP4", "path": "85" }, "4770": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "SWAP3", "path": "85" }, "4771": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "POP", "path": "85" }, "4772": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "POP", "path": "85" }, "4773": { "fn": "TransferAssets.encodeAssetId", "offset": [ 883, 1437 ], "op": "POP", "path": "85" }, "4774": { "fn": "TransferAssets.encodeAssetId", "jump": "o", "offset": [ 883, 1437 ], "op": "JUMP", "path": "85" }, "4775": { "fn": "TransferAssets.decodeAssetId", "offset": [ 541, 843 ], "op": "JUMPDEST", "path": "85" }, "4776": { "fn": "TransferAssets.decodeAssetId", "offset": [ 807, 836 ], "op": "PUSH2", "path": "85", "statement": 70, "value": "0xFFFF" }, "4779": { "fn": "TransferAssets.decodeAssetId", "offset": [ 833, 835 ], "op": "PUSH1", "path": "85", "value": "0x30" }, "4781": { "fn": "TransferAssets.decodeAssetId", "offset": [ 827, 835 ], "op": "DUP3", "path": "85" }, "4782": { "fn": "TransferAssets.decodeAssetId", "offset": [ 827, 835 ], "op": "SWAP1", "path": "85" }, "4783": { "fn": "TransferAssets.decodeAssetId", "offset": [ 827, 835 ], "op": "SHR", "path": "85" }, "4784": { "fn": "TransferAssets.decodeAssetId", "offset": [ 807, 836 ], "op": "AND", "path": "85" }, "4785": { "fn": "TransferAssets.decodeAssetId", "offset": [ 807, 836 ], "op": "SWAP2", "path": "85" }, "4786": { "fn": "TransferAssets.decodeAssetId", "offset": [ 771, 797 ], "op": "PUSH5", "path": "85", "statement": 71, "value": "0xFFFFFFFFFF" }, "4792": { "fn": "TransferAssets.decodeAssetId", "offset": [ 795, 796 ], "op": "PUSH1", "path": "85", "value": "0x8" }, "4794": { "fn": "TransferAssets.decodeAssetId", "offset": [ 789, 796 ], "op": "DUP4", "path": "85" }, "4795": { "fn": "TransferAssets.decodeAssetId", "offset": [ 789, 796 ], "op": "SWAP1", "path": "85" }, "4796": { "fn": "TransferAssets.decodeAssetId", "offset": [ 789, 796 ], "op": "SHR", "path": "85" }, "4797": { "fn": "TransferAssets.decodeAssetId", "offset": [ 771, 797 ], "op": "AND", "path": "85" }, "4798": { "fn": "TransferAssets.decodeAssetId", "offset": [ 771, 797 ], "op": "SWAP2", "path": "85" }, "4799": { "fn": "TransferAssets.decodeAssetId", "offset": [ 740, 761 ], "op": "PUSH1", "path": "85", "statement": 72, "value": "0xFF" }, "4801": { "fn": "TransferAssets.decodeAssetId", "offset": [ 740, 761 ], "op": "AND", "path": "85" }, "4802": { "fn": "TransferAssets.decodeAssetId", "offset": [ 740, 761 ], "op": "SWAP1", "path": "85" }, "4803": { "fn": "TransferAssets.decodeAssetId", "jump": "o", "offset": [ 541, 843 ], "op": "JUMP", "path": "85" }, "4804": { "fn": "SafeInt256.toInt", "offset": [ 2520, 2683 ], "op": "JUMPDEST", "path": "94" }, "4805": { "fn": "SafeInt256.toInt", "offset": [ 2569, 2575 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "4807": { "op": "PUSH1", "value": "0x1" }, "4809": { "op": "PUSH1", "value": "0x1" }, "4811": { "op": "PUSH1", "value": "0xFF" }, "4813": { "op": "SHL" }, "4814": { "op": "SUB" }, "4815": { "fn": "SafeInt256.toInt", "offset": [ 2596, 2597 ], "op": "DUP3", "path": "94", "statement": 73 }, "4816": { "fn": "SafeInt256.toInt", "offset": [ 2596, 2626 ], "op": "GT", "path": "94" }, "4817": { "branch": 437, "fn": "SafeInt256.toInt", "offset": [ 2596, 2626 ], "op": "ISZERO", "path": "94" }, "4818": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "PUSH2", "path": "94", "value": "0xA32" }, "4821": { "branch": 437, "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "JUMPI", "path": "94" }, "4822": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "4824": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "DUP1", "path": "94" }, "4825": { "fn": "SafeInt256.toInt", "offset": [ 2587, 2627 ], "op": "REVERT", "path": "94" }, "4826": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13687, 13984 ], "op": "JUMPDEST", "path": "30" }, "4827": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13849, 13935 ], "op": "PUSH2", "path": "30", "statement": 74, "value": "0x12F0" }, "4830": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13874, 13913 ], "op": "PUSH2", "path": "30", "value": "0x12E6" }, "4833": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13902, 13912 ], "op": "DUP5", "path": "30" }, "4834": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13874, 13901 ], "op": "PUSH2", "path": "30", "value": "0x190B" }, "4837": { "fn": "ERC1155Action._requireValidMaturity", "jump": "i", "offset": [ 13874, 13913 ], "op": "JUMP", "path": "30" }, "4838": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13874, 13913 ], "op": "JUMPDEST", "path": "30" }, "4839": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13849, 13935 ], "op": "PUSH1", "path": "30", "value": "0xFF" }, "4841": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13849, 13935 ], "op": "AND", "path": "30" }, "4842": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13915, 13923 ], "op": "DUP4", "path": "30" }, "4843": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13925, 13934 ], "op": "DUP4", "path": "30" }, "4844": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13849, 13873 ], "op": "PUSH2", "path": "30", "value": "0x1921" }, "4847": { "fn": "ERC1155Action._requireValidMaturity", "jump": "i", "offset": [ 13849, 13935 ], "op": "JUMP", "path": "30" }, "4848": { "branch": 322, "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13849, 13935 ], "op": "JUMPDEST", "path": "30" }, "4849": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "PUSH2", "path": "30", "value": "0x130C" }, "4852": { "branch": 322, "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "JUMPI", "path": "30" }, "4853": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "PUSH1", "path": "30", "value": "0x40" }, "4855": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "MLOAD", "path": "30" }, "4856": { "op": "PUSH3", "value": "0x461BCD" }, "4860": { "op": "PUSH1", "value": "0xE5" }, "4862": { "op": "SHL" }, "4863": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "DUP2", "path": "30" }, "4864": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "MSTORE", "path": "30" }, "4865": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "4867": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "ADD", "path": "30" }, "4868": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "PUSH2", "path": "30", "value": "0x3D8" }, "4871": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "SWAP1", "path": "30" }, "4872": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "PUSH2", "path": "30", "value": "0x3763" }, "4875": { "fn": "ERC1155Action._requireValidMaturity", "jump": "i", "offset": [ 13828, 13977 ], "op": "JUMP", "path": "30" }, "4876": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13828, 13977 ], "op": "JUMPDEST", "path": "30" }, "4877": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13687, 13984 ], "op": "POP", "path": "30" }, "4878": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13687, 13984 ], "op": "POP", "path": "30" }, "4879": { "fn": "ERC1155Action._requireValidMaturity", "offset": [ 13687, 13984 ], "op": "POP", "path": "30" }, "4880": { "fn": "ERC1155Action._requireValidMaturity", "jump": "o", "offset": [ 13687, 13984 ], "op": "JUMP", "path": "30" }, "4881": { "fn": "LibStorage.getAccountStorage", "offset": [ 1879, 2108 ], "op": "JUMPDEST", "path": "62" }, "4882": { "fn": "LibStorage.getAccountStorage", "offset": [ 1940, 1988 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "4884": { "fn": "LibStorage.getAccountStorage", "offset": [ 2005, 2017 ], "op": "DUP1", "path": "62" }, "4885": { "fn": "LibStorage.getAccountStorage", "offset": [ 2020, 2061 ], "op": "PUSH2", "path": "62", "value": "0x30C" }, "4888": { "fn": "LibStorage.getAccountStorage", "offset": [ 2036, 2060 ], "op": "PUSH1", "path": "62", "value": "0x1" }, "4890": { "fn": "LibStorage.getAccountStorage", "offset": [ 2020, 2035 ], "op": "PUSH2", "path": "62", "value": "0x1971" }, "4893": { "fn": "LibStorage.getAccountStorage", "jump": "i", "offset": [ 2020, 2061 ], "op": "JUMP", "path": "62" }, "4894": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1320, 1688 ], "op": "JUMPDEST", "path": "83" }, "4895": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1455, 1470 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "4897": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1482, 1581 ], "op": "DUP1", "path": "83" }, "4898": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1584, 1619 ], "op": "PUSH2", "path": "83", "value": "0x1329" }, "4901": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1584, 1617 ], "op": "PUSH2", "path": "83", "value": "0x198A" }, "4904": { "fn": "BitmapAssetsHandler.getifCashNotional", "jump": "i", "offset": [ 1584, 1619 ], "op": "JUMP", "path": "83" }, "4905": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1584, 1619 ], "op": "JUMPDEST", "path": "83" }, "4906": { "op": "PUSH1", "value": "0x1" }, "4908": { "op": "PUSH1", "value": "0x1" }, "4910": { "op": "PUSH1", "value": "0xA0" }, "4912": { "op": "SHL" }, "4913": { "op": "SUB" }, "4914": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "DUP7", "path": "83", "statement": 75 }, "4915": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "AND", "path": "83" }, "4916": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "4918": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "SWAP1", "path": "83" }, "4919": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "DUP2", "path": "83" }, "4920": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "MSTORE", "path": "83" }, "4921": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "4923": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "SWAP2", "path": "83" }, "4924": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "DUP3", "path": "83" }, "4925": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "MSTORE", "path": "83" }, "4926": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "PUSH1", "path": "83", "value": "0x40" }, "4928": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "DUP1", "path": "83" }, "4929": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "DUP3", "path": "83" }, "4930": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1650 ], "op": "KECCAK256", "path": "83" }, "4931": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "DUP8", "path": "83" }, "4932": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "DUP4", "path": "83" }, "4933": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "MSTORE", "path": "83" }, "4934": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "DUP4", "path": "83" }, "4935": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "MSTORE", "path": "83" }, "4936": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "DUP1", "path": "83" }, "4937": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "DUP3", "path": "83" }, "4938": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1662 ], "op": "KECCAK256", "path": "83" }, "4939": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "DUP7", "path": "83" }, "4940": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "DUP4", "path": "83" }, "4941": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "MSTORE", "path": "83" }, "4942": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "SWAP1", "path": "83" }, "4943": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "SWAP3", "path": "83" }, "4944": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "MSTORE", "path": "83" }, "4945": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1672 ], "op": "KECCAK256", "path": "83" }, "4946": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1681 ], "op": "SLOAD", "path": "83" }, "4947": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1681 ], "op": "PUSH1", "path": "83", "value": "0xF" }, "4949": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1681 ], "op": "SWAP1", "path": "83" }, "4950": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1681 ], "op": "DUP2", "path": "83" }, "4951": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1636, 1681 ], "op": "SIGNEXTEND", "path": "83" }, "4952": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1629, 1681 ], "op": "SWAP1", "path": "83" }, "4953": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1629, 1681 ], "op": "SIGNEXTEND", "path": "83" }, "4954": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1629, 1681 ], "op": "SWAP2", "path": "83" }, "4955": { "op": "POP" }, "4956": { "op": "POP" }, "4957": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1320, 1688 ], "op": "SWAP4", "path": "83" }, "4958": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1320, 1688 ], "op": "SWAP3", "path": "83" }, "4959": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1320, 1688 ], "op": "POP", "path": "83" }, "4960": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1320, 1688 ], "op": "POP", "path": "83" }, "4961": { "fn": "BitmapAssetsHandler.getifCashNotional", "offset": [ 1320, 1688 ], "op": "POP", "path": "83" }, "4962": { "fn": "BitmapAssetsHandler.getifCashNotional", "jump": "o", "offset": [ 1320, 1688 ], "op": "JUMP", "path": "83" }, "4963": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16756, 17863 ], "op": "JUMPDEST", "path": "84" }, "4964": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16858, 16881 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "4966": { "offset": [ 588, 590 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "4968": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16961 ], "op": "DUP3", "path": "84", "statement": 76 }, "4969": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "4971": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "AND", "path": "84" }, "4972": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "GT", "path": "84" }, "4973": { "branch": 387, "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16955, 16985 ], "op": "ISZERO", "path": "84" }, "4974": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "PUSH2", "path": "84", "value": "0x1376" }, "4977": { "branch": 387, "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "JUMPI", "path": "84" }, "4978": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "4980": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "DUP1", "path": "84" }, "4981": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "REVERT", "path": "84" }, "4982": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16947, 16986 ], "op": "JUMPDEST", "path": "84" }, "4983": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16997, 17087 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "4985": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17090, 17127 ], "op": "PUSH2", "path": "84", "value": "0x1380" }, "4988": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17090, 17125 ], "op": "PUSH2", "path": "84", "value": "0x1997" }, "4991": { "fn": "PortfolioHandler._loadAssetArray", "jump": "i", "offset": [ 17090, 17127 ], "op": "JUMP", "path": "84" }, "4992": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17090, 17127 ], "op": "JUMPDEST", "path": "84" }, "4993": { "op": "PUSH1", "value": "0x1" }, "4995": { "op": "PUSH1", "value": "0x1" }, "4997": { "op": "PUSH1", "value": "0xA0" }, "4999": { "op": "SHL" }, "5000": { "op": "SUB" }, "5001": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP6", "path": "84" }, "5002": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "AND", "path": "84" }, "5003": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17137, 17201 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5005": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "SWAP1", "path": "84" }, "5006": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP2", "path": "84" }, "5007": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "MSTORE", "path": "84" }, "5008": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5010": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP3", "path": "84" }, "5011": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "SWAP1", "path": "84" }, "5012": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "MSTORE", "path": "84" }, "5013": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5015": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "DUP2", "path": "84" }, "5016": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17204, 17218 ], "op": "KECCAK256", "path": "84" }, "5017": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16997, 17127 ], "op": "SWAP2", "path": "84" }, "5018": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 16997, 17127 ], "op": "SWAP3", "path": "84" }, "5019": { "op": "POP" }, "5020": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "5022": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP6", "path": "84" }, "5023": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "AND", "path": "84" }, "5024": { "op": "PUSH1", "value": "0x1" }, "5026": { "op": "PUSH1", "value": "0x1" }, "5028": { "op": "PUSH1", "value": "0x40" }, "5030": { "op": "SHL" }, "5031": { "op": "SUB" }, "5032": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "5033": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "GT", "path": "84" }, "5034": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "5035": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ISZERO", "path": "84" }, "5036": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x13B4" }, "5039": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPI", "path": "84" }, "5040": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5042": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "5043": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "REVERT", "path": "84" }, "5044": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "5045": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "POP", "path": "84" }, "5046": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5048": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MLOAD", "path": "84" }, "5049": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "5050": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "5051": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP3", "path": "84" }, "5052": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MSTORE", "path": "84" }, "5053": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "5054": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5056": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MUL", "path": "84" }, "5057": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5059": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "5060": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP3", "path": "84" }, "5061": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "5062": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5064": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MSTORE", "path": "84" }, "5065": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP1", "path": "84" }, "5066": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ISZERO", "path": "84" }, "5067": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x13EE" }, "5070": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPI", "path": "84" }, "5071": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "5072": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5074": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "5075": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "5076": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x13DB" }, "5079": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x2E5F" }, "5082": { "fn": "PortfolioHandler._loadAssetArray", "jump": "i", "offset": [ 17261, 17289 ], "op": "JUMP", "path": "84" }, "5083": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "5084": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "5085": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "MSTORE", "path": "84" }, "5086": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5088": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "ADD", "path": "84" }, "5089": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "5090": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5092": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "5093": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SUB", "path": "84" }, "5094": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "5095": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "DUP2", "path": "84" }, "5096": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "PUSH2", "path": "84", "value": "0x13D3" }, "5099": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPI", "path": "84" }, "5100": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "SWAP1", "path": "84" }, "5101": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "POP", "path": "84" }, "5102": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "JUMPDEST", "path": "84" }, "5103": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17261, 17289 ], "op": "POP", "path": "84" }, "5104": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17228, 17289 ], "op": "SWAP1", "path": "84" }, "5105": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17228, 17289 ], "op": "POP", "path": "84" }, "5106": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17305, 17314 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5108": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMPDEST", "path": "84" }, "5109": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17324, 17330 ], "op": "DUP6", "path": "84" }, "5110": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17330 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "5112": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17330 ], "op": "AND", "path": "84" }, "5113": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17321 ], "op": "DUP2", "path": "84" }, "5114": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17320, 17330 ], "op": "LT", "path": "84" }, "5115": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "ISZERO", "path": "84" }, "5116": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "PUSH2", "path": "84", "value": "0x62B" }, "5119": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMPI", "path": "84" }, "5120": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17351, 17393 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5122": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17408 ], "op": "DUP4", "path": "84" }, "5123": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17409, 17410 ], "op": "DUP3", "path": "84" }, "5124": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "5126": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "DUP2", "path": "84" }, "5127": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "LT", "path": "84" }, "5128": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "PUSH2", "path": "84", "value": "0x140D" }, "5131": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "JUMPI", "path": "84" }, "5132": { "dev": "Index out of range", "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "INVALID", "path": "84" }, "5133": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "JUMPDEST", "path": "84" }, "5134": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17396, 17411 ], "op": "ADD", "path": "84" }, "5135": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17351, 17411 ], "op": "SWAP1", "path": "84" }, "5136": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17351, 17411 ], "op": "POP", "path": "84" }, "5137": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17425, 17452 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5139": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17461 ], "op": "DUP4", "path": "84" }, "5140": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17462, 17463 ], "op": "DUP4", "path": "84" }, "5141": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "5142": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "MLOAD", "path": "84" }, "5143": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "5144": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "LT", "path": "84" }, "5145": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "PUSH2", "path": "84", "value": "0x141E" }, "5148": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "JUMPI", "path": "84" }, "5149": { "dev": "Index out of range", "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "INVALID", "path": "84" }, "5150": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "JUMPDEST", "path": "84" }, "5151": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5153": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP1", "path": "84" }, "5154": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "5155": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "MUL", "path": "84" }, "5156": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP2", "path": "84" }, "5157": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP1", "path": "84" }, "5158": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "SWAP2", "path": "84" }, "5159": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "ADD", "path": "84" }, "5160": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "DUP2", "path": "84" }, "5161": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "ADD", "path": "84" }, "5162": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17455, 17464 ], "op": "MLOAD", "path": "84" }, "5163": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "DUP4", "path": "84", "statement": 77 }, "5164": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "SLOAD", "path": "84" }, "5165": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "PUSH2", "path": "84", "value": "0xFFFF" }, "5168": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "DUP2", "path": "84" }, "5169": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "AND", "path": "84" }, "5170": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17584, 17626 ], "op": "DUP3", "path": "84" }, "5171": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17584, 17626 ], "op": "MSTORE", "path": "84" }, "5172": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "PUSH5", "path": "84", "statement": 78, "value": "0xFFFFFFFFFF" }, "5178": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "PUSH3", "path": "84", "value": "0x10000" }, "5182": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "DUP3", "path": "84" }, "5183": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "DIV", "path": "84" }, "5184": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17657, 17678 ], "op": "AND", "path": "84" }, "5185": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17654 ], "op": "SWAP3", "path": "84" }, "5186": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17654 ], "op": "DUP3", "path": "84" }, "5187": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17654 ], "op": "ADD", "path": "84" }, "5188": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "SWAP3", "path": "84" }, "5189": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "SWAP1", "path": "84" }, "5190": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "SWAP3", "path": "84" }, "5191": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17640, 17678 ], "op": "MSTORE", "path": "84" }, "5192": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "PUSH1", "path": "84", "statement": 79, "value": "0xFF" }, "5194": { "op": "PUSH1", "value": "0x1" }, "5196": { "op": "PUSH1", "value": "0x38" }, "5198": { "op": "SHL" }, "5199": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "DUP4", "path": "84" }, "5200": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "DIV", "path": "84" }, "5201": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17710, 17732 ], "op": "AND", "path": "84" }, "5202": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17707 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5204": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17707 ], "op": "DUP3", "path": "84" }, "5205": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17707 ], "op": "ADD", "path": "84" }, "5206": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17692, 17732 ], "op": "MSTORE", "path": "84" }, "5207": { "op": "PUSH1", "value": "0x1" }, "5209": { "op": "PUSH1", "value": "0x40" }, "5211": { "op": "SHL" }, "5212": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SWAP1", "path": "84", "statement": 80 }, "5213": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SWAP2", "path": "84" }, "5214": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "DIV", "path": "84" }, "5215": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "PUSH1", "path": "84", "value": "0xA" }, "5217": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SWAP1", "path": "84" }, "5218": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "DUP2", "path": "84" }, "5219": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17763, 17784 ], "op": "SIGNEXTEND", "path": "84" }, "5220": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17784 ], "op": "SWAP1", "path": "84" }, "5221": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17784 ], "op": "SIGNEXTEND", "path": "84" }, "5222": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17760 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "5224": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17760 ], "op": "DUP3", "path": "84" }, "5225": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17760 ], "op": "ADD", "path": "84" }, "5226": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17746, 17784 ], "op": "MSTORE", "path": "84" }, "5227": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17815 ], "op": "PUSH1", "path": "84", "statement": 81, "value": "0x80" }, "5229": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17815 ], "op": "ADD", "path": "84" }, "5230": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "SWAP2", "path": "84" }, "5231": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "SWAP1", "path": "84" }, "5232": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "SWAP2", "path": "84" }, "5233": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17798, 17822 ], "op": "MSTORE", "path": "84" }, "5234": { "op": "POP" }, "5235": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17603, 17626 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5237": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17332, 17335 ], "op": "ADD", "path": "84", "statement": 82 }, "5238": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "PUSH2", "path": "84", "value": "0x13F4" }, "5241": { "fn": "PortfolioHandler._loadAssetArray", "offset": [ 17300, 17833 ], "op": "JUMP", "path": "84" }, "5242": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15921, 16750 ], "op": "JUMPDEST", "path": "84" }, "5243": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16015, 16028 ], "op": "DUP1", "path": "84" }, "5244": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16015, 16028 ], "op": "MLOAD", "path": "84" }, "5245": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15998, 16012 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5247": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16015, 16028 ], "op": "DUP2", "path": "84" }, "5248": { "op": "PUSH1", "value": "0x1" }, "5250": { "op": "PUSH1", "value": "0x1" }, "5252": { "op": "PUSH1", "value": "0x40" }, "5254": { "op": "SHL" }, "5255": { "op": "SUB" }, "5256": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP2", "path": "84" }, "5257": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "GT", "path": "84" }, "5258": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "5259": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ISZERO", "path": "84" }, "5260": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH2", "path": "84", "value": "0x1494" }, "5263": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPI", "path": "84" }, "5264": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5266": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "5267": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "REVERT", "path": "84" }, "5268": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPDEST", "path": "84" }, "5269": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "POP", "path": "84" }, "5270": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5272": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MLOAD", "path": "84" }, "5273": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "SWAP1", "path": "84" }, "5274": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "5275": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP3", "path": "84" }, "5276": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MSTORE", "path": "84" }, "5277": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "5278": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5280": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MUL", "path": "84" }, "5281": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5283": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "5284": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP3", "path": "84" }, "5285": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "5286": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5288": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MSTORE", "path": "84" }, "5289": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "5290": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ISZERO", "path": "84" }, "5291": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH2", "path": "84", "value": "0x14BE" }, "5294": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPI", "path": "84" }, "5295": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP2", "path": "84" }, "5296": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5298": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "5299": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5301": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP3", "path": "84" }, "5302": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "MUL", "path": "84" }, "5303": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP1", "path": "84" }, "5304": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "CALLDATASIZE", "path": "84" }, "5305": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "DUP4", "path": "84" }, "5306": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "CALLDATACOPY", "path": "84" }, "5307": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "ADD", "path": "84" }, "5308": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "SWAP1", "path": "84" }, "5309": { "op": "POP" }, "5310": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "JUMPDEST", "path": "84" }, "5311": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16061, 16082 ], "op": "POP", "path": "84" }, "5312": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16038, 16082 ], "op": "SWAP1", "path": "84" }, "5313": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16038, 16082 ], "op": "POP", "path": "84" }, "5314": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16097, 16106 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5316": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMPDEST", "path": "84" }, "5317": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16112, 16118 ], "op": "DUP3", "path": "84" }, "5318": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16108, 16109 ], "op": "DUP2", "path": "84" }, "5319": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16108, 16118 ], "op": "LT", "path": "84" }, "5320": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "ISZERO", "path": "84" }, "5321": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "PUSH2", "path": "84", "value": "0x151B" }, "5324": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMPI", "path": "84" }, "5325": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16139, 16166 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5327": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16175 ], "op": "DUP5", "path": "84" }, "5328": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16176, 16177 ], "op": "DUP3", "path": "84" }, "5329": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "DUP2", "path": "84" }, "5330": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "MLOAD", "path": "84" }, "5331": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "DUP2", "path": "84" }, "5332": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "LT", "path": "84" }, "5333": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "PUSH2", "path": "84", "value": "0x14DA" }, "5336": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "JUMPI", "path": "84" }, "5337": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "INVALID", "path": "84" }, "5338": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "JUMPDEST", "path": "84" }, "5339": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5341": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "MUL", "path": "84" }, "5342": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5344": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "ADD", "path": "84" }, "5345": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "ADD", "path": "84" }, "5346": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16169, 16178 ], "op": "MLOAD", "path": "84" }, "5347": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16139, 16178 ], "op": "SWAP1", "path": "84" }, "5348": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16139, 16178 ], "op": "POP", "path": "84" }, "5349": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16259, 16338 ], "op": "PUSH2", "path": "84", "statement": 83, "value": "0x14FB" }, "5352": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16293 ], "op": "DUP2", "path": "84" }, "5353": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16304 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5355": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16304 ], "op": "ADD", "path": "84" }, "5356": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16288, 16304 ], "op": "MLOAD", "path": "84" }, "5357": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16311 ], "op": "DUP3", "path": "84" }, "5358": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16320 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5360": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16320 ], "op": "ADD", "path": "84" }, "5361": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16306, 16320 ], "op": "MLOAD", "path": "84" }, "5362": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16327 ], "op": "DUP4", "path": "84" }, "5363": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16337 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "5365": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16337 ], "op": "ADD", "path": "84" }, "5366": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16322, 16337 ], "op": "MLOAD", "path": "84" }, "5367": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16259, 16287 ], "op": "PUSH2", "path": "84", "value": "0x124C" }, "5370": { "fn": "PortfolioHandler._sortInPlace", "jump": "i", "offset": [ 16259, 16338 ], "op": "JUMP", "path": "84" }, "5371": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16259, 16338 ], "op": "JUMPDEST", "path": "84" }, "5372": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16253 ], "op": "DUP4", "path": "84" }, "5373": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16254, 16255 ], "op": "DUP4", "path": "84" }, "5374": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "DUP2", "path": "84" }, "5375": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "MLOAD", "path": "84" }, "5376": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "DUP2", "path": "84" }, "5377": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "LT", "path": "84" }, "5378": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "PUSH2", "path": "84", "value": "0x1507" }, "5381": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "JUMPI", "path": "84" }, "5382": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "INVALID", "path": "84" }, "5383": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "JUMPDEST", "path": "84" }, "5384": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5386": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP1", "path": "84" }, "5387": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "DUP2", "path": "84" }, "5388": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "MUL", "path": "84" }, "5389": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP2", "path": "84" }, "5390": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP1", "path": "84" }, "5391": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "SWAP2", "path": "84" }, "5392": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "ADD", "path": "84" }, "5393": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16256 ], "op": "ADD", "path": "84" }, "5394": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16250, 16338 ], "op": "MSTORE", "path": "84" }, "5395": { "op": "POP" }, "5396": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16120, 16123 ], "op": "PUSH1", "path": "84", "statement": 84, "value": "0x1" }, "5398": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16120, 16123 ], "op": "ADD", "path": "84" }, "5399": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "PUSH2", "path": "84", "value": "0x14C4" }, "5402": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMP", "path": "84" }, "5403": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16092, 16349 ], "op": "JUMPDEST", "path": "84" }, "5404": { "op": "POP" }, "5405": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16403, 16404 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5407": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMPDEST", "path": "84" }, "5408": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16425, 16431 ], "op": "DUP3", "path": "84" }, "5409": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16421, 16422 ], "op": "DUP2", "path": "84" }, "5410": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16421, 16431 ], "op": "LT", "path": "84" }, "5411": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "ISZERO", "path": "84" }, "5412": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "PUSH2", "path": "84", "value": "0x1632" }, "5415": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMPI", "path": "84" }, "5416": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16459, 16460 ], "op": "DUP1", "path": "84" }, "5417": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMPDEST", "path": "84" }, "5418": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16485, 16486 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "5420": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16482 ], "op": "DUP2", "path": "84" }, "5421": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16486 ], "op": "GT", "path": "84" }, "5422": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "DUP1", "path": "84" }, "5423": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "ISZERO", "path": "84" }, "5424": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "PUSH2", "path": "84", "value": "0x1561" }, "5427": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "JUMPI", "path": "84" }, "5428": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "POP", "path": "84" }, "5429": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16506 ], "op": "DUP3", "path": "84" }, "5430": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16507, 16508 ], "op": "DUP2", "path": "84" }, "5431": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "DUP2", "path": "84" }, "5432": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "MLOAD", "path": "84" }, "5433": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "DUP2", "path": "84" }, "5434": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "LT", "path": "84" }, "5435": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "PUSH2", "path": "84", "value": "0x1540" }, "5438": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "JUMPI", "path": "84" }, "5439": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "INVALID", "path": "84" }, "5440": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "JUMPDEST", "path": "84" }, "5441": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5443": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "MUL", "path": "84" }, "5444": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5446": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "ADD", "path": "84" }, "5447": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "ADD", "path": "84" }, "5448": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16503, 16509 ], "op": "MLOAD", "path": "84" }, "5449": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16493 ], "op": "DUP4", "path": "84" }, "5450": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16498, 16499 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5452": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16494, 16495 ], "op": "DUP4", "path": "84" }, "5453": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16494, 16499 ], "op": "SUB", "path": "84" }, "5454": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "DUP2", "path": "84" }, "5455": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "MLOAD", "path": "84" }, "5456": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "DUP2", "path": "84" }, "5457": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "LT", "path": "84" }, "5458": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "PUSH2", "path": "84", "value": "0x1557" }, "5461": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "JUMPI", "path": "84" }, "5462": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "INVALID", "path": "84" }, "5463": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "JUMPDEST", "path": "84" }, "5464": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5466": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "MUL", "path": "84" }, "5467": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5469": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "ADD", "path": "84" }, "5470": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "ADD", "path": "84" }, "5471": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16500 ], "op": "MLOAD", "path": "84" }, "5472": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16490, 16509 ], "op": "GT", "path": "84" }, "5473": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16481, 16509 ], "op": "JUMPDEST", "path": "84" }, "5474": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "ISZERO", "path": "84" }, "5475": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "PUSH2", "path": "84", "value": "0x1629" }, "5478": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMPI", "path": "84" }, "5479": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16592 ], "op": "DUP3", "path": "84", "statement": 85 }, "5480": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16593, 16594 ], "op": "DUP2", "path": "84" }, "5481": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "DUP2", "path": "84" }, "5482": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "MLOAD", "path": "84" }, "5483": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "DUP2", "path": "84" }, "5484": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "LT", "path": "84" }, "5485": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "PUSH2", "path": "84", "value": "0x1572" }, "5488": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "JUMPI", "path": "84" }, "5489": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "INVALID", "path": "84" }, "5490": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "JUMPDEST", "path": "84" }, "5491": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5493": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "MUL", "path": "84" }, "5494": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5496": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "ADD", "path": "84" }, "5497": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "ADD", "path": "84" }, "5498": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16589, 16595 ], "op": "MLOAD", "path": "84" }, "5499": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16600 ], "op": "DUP4", "path": "84" }, "5500": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16605, 16606 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5502": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16601, 16602 ], "op": "DUP4", "path": "84" }, "5503": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16601, 16606 ], "op": "SUB", "path": "84" }, "5504": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "DUP2", "path": "84" }, "5505": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "MLOAD", "path": "84" }, "5506": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "DUP2", "path": "84" }, "5507": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "LT", "path": "84" }, "5508": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "PUSH2", "path": "84", "value": "0x1589" }, "5511": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "JUMPI", "path": "84" }, "5512": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "INVALID", "path": "84" }, "5513": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "JUMPDEST", "path": "84" }, "5514": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5516": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "MUL", "path": "84" }, "5517": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5519": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "ADD", "path": "84" }, "5520": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "ADD", "path": "84" }, "5521": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16597, 16607 ], "op": "MLOAD", "path": "84" }, "5522": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16569 ], "op": "DUP5", "path": "84" }, "5523": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16574, 16575 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5525": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16570, 16571 ], "op": "DUP5", "path": "84" }, "5526": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16570, 16575 ], "op": "SUB", "path": "84" }, "5527": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "DUP2", "path": "84" }, "5528": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "MLOAD", "path": "84" }, "5529": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "DUP2", "path": "84" }, "5530": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "LT", "path": "84" }, "5531": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "PUSH2", "path": "84", "value": "0x15A0" }, "5534": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "JUMPI", "path": "84" }, "5535": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "INVALID", "path": "84" }, "5536": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "JUMPDEST", "path": "84" }, "5537": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5539": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "MUL", "path": "84" }, "5540": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5542": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "ADD", "path": "84" }, "5543": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16566, 16576 ], "op": "ADD", "path": "84" }, "5544": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16581 ], "op": "DUP6", "path": "84" }, "5545": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16582, 16583 ], "op": "DUP5", "path": "84" }, "5546": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "DUP2", "path": "84" }, "5547": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "MLOAD", "path": "84" }, "5548": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "DUP2", "path": "84" }, "5549": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "LT", "path": "84" }, "5550": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "PUSH2", "path": "84", "value": "0x15B3" }, "5553": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "JUMPI", "path": "84" }, "5554": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "INVALID", "path": "84" }, "5555": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "JUMPDEST", "path": "84" }, "5556": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5558": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "MUL", "path": "84" }, "5559": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5561": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "ADD", "path": "84" }, "5562": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16578, 16584 ], "op": "ADD", "path": "84" }, "5563": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP3", "path": "84" }, "5564": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP2", "path": "84" }, "5565": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "MSTORE", "path": "84" }, "5566": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "5567": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP3", "path": "84" }, "5568": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "DUP2", "path": "84" }, "5569": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "MSTORE", "path": "84" }, "5570": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "5571": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "5572": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16565, 16608 ], "op": "POP", "path": "84" }, "5573": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16662 ], "op": "DUP5", "path": "84", "statement": 86 }, "5574": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16663, 16664 ], "op": "DUP2", "path": "84" }, "5575": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "DUP2", "path": "84" }, "5576": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "MLOAD", "path": "84" }, "5577": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "DUP2", "path": "84" }, "5578": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "LT", "path": "84" }, "5579": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "PUSH2", "path": "84", "value": "0x15D0" }, "5582": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "JUMPI", "path": "84" }, "5583": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "INVALID", "path": "84" }, "5584": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "JUMPDEST", "path": "84" }, "5585": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5587": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "MUL", "path": "84" }, "5588": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5590": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "ADD", "path": "84" }, "5591": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "ADD", "path": "84" }, "5592": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16656, 16665 ], "op": "MLOAD", "path": "84" }, "5593": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16673 ], "op": "DUP6", "path": "84" }, "5594": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16678, 16679 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5596": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16674, 16675 ], "op": "DUP4", "path": "84" }, "5597": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16674, 16679 ], "op": "SUB", "path": "84" }, "5598": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "DUP2", "path": "84" }, "5599": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "MLOAD", "path": "84" }, "5600": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "DUP2", "path": "84" }, "5601": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "LT", "path": "84" }, "5602": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "PUSH2", "path": "84", "value": "0x15E7" }, "5605": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "JUMPI", "path": "84" }, "5606": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "INVALID", "path": "84" }, "5607": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "JUMPDEST", "path": "84" }, "5608": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5610": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "MUL", "path": "84" }, "5611": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5613": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "ADD", "path": "84" }, "5614": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "ADD", "path": "84" }, "5615": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16667, 16680 ], "op": "MLOAD", "path": "84" }, "5616": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16633 ], "op": "DUP7", "path": "84" }, "5617": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16638, 16639 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "5619": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16634, 16635 ], "op": "DUP5", "path": "84" }, "5620": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16634, 16639 ], "op": "SUB", "path": "84" }, "5621": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "DUP2", "path": "84" }, "5622": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "MLOAD", "path": "84" }, "5623": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "DUP2", "path": "84" }, "5624": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "LT", "path": "84" }, "5625": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "PUSH2", "path": "84", "value": "0x15FE" }, "5628": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "JUMPI", "path": "84" }, "5629": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "INVALID", "path": "84" }, "5630": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "JUMPDEST", "path": "84" }, "5631": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5633": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "MUL", "path": "84" }, "5634": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5636": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "ADD", "path": "84" }, "5637": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16627, 16640 ], "op": "ADD", "path": "84" }, "5638": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16648 ], "op": "DUP8", "path": "84" }, "5639": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16649, 16650 ], "op": "DUP5", "path": "84" }, "5640": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "DUP2", "path": "84" }, "5641": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "MLOAD", "path": "84" }, "5642": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "DUP2", "path": "84" }, "5643": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "LT", "path": "84" }, "5644": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "PUSH2", "path": "84", "value": "0x1611" }, "5647": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "JUMPI", "path": "84" }, "5648": { "dev": "Index out of range", "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "INVALID", "path": "84" }, "5649": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "JUMPDEST", "path": "84" }, "5650": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "5652": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP1", "path": "84" }, "5653": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "DUP2", "path": "84" }, "5654": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "MUL", "path": "84" }, "5655": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP2", "path": "84" }, "5656": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP1", "path": "84" }, "5657": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "SWAP2", "path": "84" }, "5658": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "ADD", "path": "84" }, "5659": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16642, 16651 ], "op": "ADD", "path": "84" }, "5660": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "SWAP2", "path": "84" }, "5661": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "SWAP1", "path": "84" }, "5662": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "SWAP2", "path": "84" }, "5663": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "MSTORE", "path": "84" }, "5664": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16626, 16681 ], "op": "MSTORE", "path": "84" }, "5665": { "op": "PUSH1", "value": "0x0" }, "5667": { "op": "NOT" }, "5668": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16699, 16702 ], "op": "ADD", "path": "84", "statement": 87 }, "5669": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "PUSH2", "path": "84", "value": "0x1529" }, "5672": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMP", "path": "84" }, "5673": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16474, 16717 ], "op": "JUMPDEST", "path": "84" }, "5674": { "op": "POP" }, "5675": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16730, 16733 ], "op": "PUSH1", "path": "84", "statement": 88, "value": "0x1" }, "5677": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16730, 16733 ], "op": "ADD", "path": "84" }, "5678": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "PUSH2", "path": "84", "value": "0x151F" }, "5681": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMP", "path": "84" }, "5682": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 16414, 16744 ], "op": "JUMPDEST", "path": "84" }, "5683": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15921, 16750 ], "op": "POP", "path": "84" }, "5684": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15921, 16750 ], "op": "POP", "path": "84" }, "5685": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15921, 16750 ], "op": "POP", "path": "84" }, "5686": { "fn": "PortfolioHandler._sortInPlace", "offset": [ 15921, 16750 ], "op": "POP", "path": "84" }, "5687": { "fn": "PortfolioHandler._sortInPlace", "jump": "o", "offset": [ 15921, 16750 ], "op": "JUMP", "path": "84" }, "5688": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1296, 1762 ], "op": "JUMPDEST", "path": "28" }, "5689": { "op": "PUSH1", "value": "0x1" }, "5691": { "op": "PUSH1", "value": "0x1" }, "5693": { "op": "PUSH1", "value": "0xA0" }, "5695": { "op": "SHL" }, "5696": { "op": "SUB" }, "5697": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1374, 1402 ], "op": "DUP2", "path": "28", "statement": 89 }, "5698": { "branch": 347, "fn": "ActionGuards.requireValidAccount", "offset": [ 1374, 1402 ], "op": "AND", "path": "28" }, "5699": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "PUSH2", "path": "28", "value": "0x164B" }, "5702": { "branch": 347, "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "JUMPI", "path": "28" }, "5703": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "5705": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "DUP1", "path": "28" }, "5706": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "REVERT", "path": "28" }, "5707": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1366, 1403 ], "op": "JUMPDEST", "path": "28" }, "5708": { "op": "PUSH1", "value": "0x1" }, "5710": { "op": "PUSH1", "value": "0x1" }, "5712": { "op": "PUSH1", "value": "0xA0" }, "5714": { "op": "SHL" }, "5715": { "op": "SUB" }, "5716": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "DUP2", "path": "28", "statement": 90 }, "5717": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "AND", "path": "28" }, "5718": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1473, 1477 ], "op": "ADDRESS", "path": "28" }, "5719": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "EQ", "path": "28" }, "5720": { "branch": 348, "fn": "ActionGuards.requireValidAccount", "offset": [ 1454, 1478 ], "op": "ISZERO", "path": "28" }, "5721": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "PUSH2", "path": "28", "value": "0x1661" }, "5724": { "branch": 348, "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "JUMPI", "path": "28" }, "5725": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "5727": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "DUP1", "path": "28" }, "5728": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "REVERT", "path": "28" }, "5729": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1446, 1479 ], "op": "JUMPDEST", "path": "28" }, "5730": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1503, 1519 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "5732": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1684, 1723 ], "op": "PUSH2", "path": "28", "value": "0x166C" }, "5735": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1715, 1722 ], "op": "DUP3", "path": "28" }, "5736": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1684, 1714 ], "op": "PUSH2", "path": "28", "value": "0x19A4" }, "5739": { "fn": "ActionGuards.requireValidAccount", "jump": "i", "offset": [ 1684, 1723 ], "op": "JUMP", "path": "28" }, "5740": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1684, 1723 ], "op": "JUMPDEST", "path": "28" }, "5741": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "5742": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "5743": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "5744": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "5745": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "PUSH2", "path": "28", "value": "0xFFFF" }, "5748": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "AND", "path": "28" }, "5749": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "SWAP1", "path": "28" }, "5750": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1489, 1723 ], "op": "POP", "path": "28" }, "5751": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1741, 1749 ], "op": "DUP1", "path": "28", "statement": 91 }, "5752": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1753, 1754 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "5754": { "branch": 349, "fn": "ActionGuards.requireValidAccount", "offset": [ 1741, 1754 ], "op": "EQ", "path": "28" }, "5755": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "PUSH2", "path": "28", "value": "0xC7A" }, "5758": { "branch": 349, "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "JUMPI", "path": "28" }, "5759": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "PUSH1", "path": "28", "value": "0x0" }, "5761": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "DUP1", "path": "28" }, "5762": { "fn": "ActionGuards.requireValidAccount", "offset": [ 1733, 1755 ], "op": "REVERT", "path": "28" }, "5763": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3020, 3752 ], "op": "JUMPDEST", "path": "66" }, "5764": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3107, 3111 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5766": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3143, 3158 ], "op": "TIMESTAMP", "path": "66" }, "5767": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3173, 3204 ], "op": "PUSH2", "path": "66", "value": "0x168F" }, "5770": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3189, 3203 ], "op": "DUP4", "path": "66" }, "5771": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3173, 3188 ], "op": "PUSH2", "path": "66", "value": "0xAD7" }, "5774": { "fn": "AccountContextHandler.mustSettleAssets", "jump": "i", "offset": [ 3173, 3204 ], "op": "JUMP", "path": "66" }, "5775": { "branch": 324, "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3173, 3204 ], "op": "JUMPDEST", "path": "66" }, "5776": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "ISZERO", "path": "66" }, "5777": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "PUSH2", "path": "66", "value": "0x16B0" }, "5780": { "branch": 324, "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "JUMPI", "path": "66" }, "5781": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3389, 3420 ], "op": "PUSH2", "path": "66", "statement": 92, "value": "0x169D" }, "5784": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3410, 3419 ], "op": "DUP2", "path": "66" }, "5785": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3389, 3409 ], "op": "PUSH2", "path": "66", "value": "0x1A0D" }, "5788": { "fn": "AccountContextHandler.mustSettleAssets", "jump": "i", "offset": [ 3389, 3420 ], "op": "JUMP", "path": "66" }, "5789": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3389, 3420 ], "op": "JUMPDEST", "path": "66" }, "5790": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3386 ], "op": "DUP4", "path": "66" }, "5791": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3386 ], "op": "MLOAD", "path": "66" }, "5792": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "5798": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "AND", "path": "66" }, "5799": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "LT", "path": "66" }, "5800": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3357, 3420 ], "op": "SWAP2", "path": "66" }, "5801": { "op": "POP" }, "5802": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3350, 3420 ], "op": "PUSH2", "path": "66", "value": "0x327" }, "5805": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3350, 3420 ], "op": "SWAP1", "path": "66" }, "5806": { "op": "POP" }, "5807": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3350, 3420 ], "op": "JUMP", "path": "66" }, "5808": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3169, 3746 ], "op": "JUMPDEST", "path": "66" }, "5809": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3660, 3689 ], "op": "DUP3", "path": "66", "statement": 93 }, "5810": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3660, 3689 ], "op": "MLOAD", "path": "66" }, "5811": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "5817": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "AND", "path": "66" }, "5818": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "ISZERO", "path": "66" }, "5819": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "DUP1", "path": "66" }, "5820": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "ISZERO", "path": "66" }, "5821": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3689 ], "op": "SWAP1", "path": "66" }, "5822": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3735 ], "op": "PUSH2", "path": "66", "value": "0x16CF" }, "5825": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3735 ], "op": "JUMPI", "path": "66" }, "5826": { "op": "POP" }, "5827": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3722 ], "op": "DUP3", "path": "66" }, "5828": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3722 ], "op": "MLOAD", "path": "66" }, "5829": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "5835": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "AND", "path": "66" }, "5836": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "DUP2", "path": "66" }, "5837": { "op": "LT" }, "5838": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3693, 3735 ], "op": "ISZERO", "path": "66" }, "5839": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3656, 3735 ], "op": "JUMPDEST", "path": "66" }, "5840": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "SWAP2", "path": "66" }, "5841": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "POP", "path": "66" }, "5842": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "POP", "path": "66" }, "5843": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "PUSH2", "path": "66", "value": "0x327" }, "5846": { "fn": "AccountContextHandler.mustSettleAssets", "offset": [ 3649, 3735 ], "op": "JUMP", "path": "66" }, "5847": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 1997, 3132 ], "op": "JUMPDEST", "path": "85" }, "5848": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2162, 2183 ], "op": "PUSH2", "path": "85", "value": "0x16DF" }, "5851": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2162, 2183 ], "op": "PUSH2", "path": "85", "value": "0x2E31" }, "5854": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2162, 2183 ], "op": "JUMP", "path": "85" }, "5855": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2162, 2183 ], "op": "JUMPDEST", "path": "85" }, "5856": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2323, 2356 ], "op": "PUSH2", "path": "85", "statement": 94, "value": "0x16E8" }, "5859": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2323, 2337 ], "op": "DUP4", "path": "85" }, "5860": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2323, 2354 ], "op": "PUSH2", "path": "85", "value": "0x1683" }, "5863": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2323, 2356 ], "op": "JUMP", "path": "85" }, "5864": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2323, 2356 ], "op": "JUMPDEST", "path": "85" }, "5865": { "branch": 449, "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2322, 2356 ], "op": "ISZERO", "path": "85" }, "5866": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "PUSH2", "path": "85", "value": "0x1705" }, "5869": { "branch": 449, "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "JUMPI", "path": "85" }, "5870": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "PUSH1", "path": "85", "value": "0x40" }, "5872": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "MLOAD", "path": "85" }, "5873": { "op": "PUSH3", "value": "0x461BCD" }, "5877": { "op": "PUSH1", "value": "0xE5" }, "5879": { "op": "SHL" }, "5880": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "DUP2", "path": "85" }, "5881": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "MSTORE", "path": "85" }, "5882": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "PUSH1", "path": "85", "value": "0x4" }, "5884": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "ADD", "path": "85" }, "5885": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "PUSH2", "path": "85", "value": "0x3D8" }, "5888": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "SWAP1", "path": "85" }, "5889": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "PUSH2", "path": "85", "value": "0x370D" }, "5892": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2314, 2380 ], "op": "JUMP", "path": "85" }, "5893": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2314, 2380 ], "op": "JUMPDEST", "path": "85" }, "5894": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2395, 2427 ], "op": "PUSH2", "path": "85", "value": "0x170E" }, "5897": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2395, 2409 ], "op": "DUP4", "path": "85" }, "5898": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2395, 2425 ], "op": "PUSH2", "path": "85", "value": "0xAD7" }, "5901": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2395, 2427 ], "op": "JUMP", "path": "85" }, "5902": { "branch": 450, "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2395, 2427 ], "op": "JUMPDEST", "path": "85" }, "5903": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "ISZERO", "path": "85" }, "5904": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "PUSH2", "path": "85", "value": "0x1723" }, "5907": { "branch": 450, "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "JUMPI", "path": "85" }, "5908": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2515, 2591 ], "op": "PUSH2", "path": "85", "statement": 95, "value": "0x171E" }, "5911": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2559, 2566 ], "op": "DUP5", "path": "85" }, "5912": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2568, 2582 ], "op": "DUP5", "path": "85" }, "5913": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2584, 2590 ], "op": "DUP5", "path": "85" }, "5914": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2515, 2558 ], "op": "PUSH2", "path": "85", "value": "0x1A2E" }, "5917": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2515, 2591 ], "op": "JUMP", "path": "85" }, "5918": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2515, 2591 ], "op": "JUMPDEST", "path": "85" }, "5919": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "PUSH2", "path": "85", "value": "0x1750" }, "5922": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "JUMP", "path": "85" }, "5923": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "JUMPDEST", "path": "85" }, "5924": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2622, 2658 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "5926": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2661, 2816 ], "op": "PUSH2", "path": "85", "value": "0x1735" }, "5929": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2715, 2722 ], "op": "DUP6", "path": "85" }, "5930": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2740, 2754 ], "op": "DUP6", "path": "85" }, "5931": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2740, 2771 ], "op": "PUSH1", "path": "85", "value": "0x40" }, "5933": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2740, 2771 ], "op": "ADD", "path": "85" }, "5934": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2740, 2771 ], "op": "MLOAD", "path": "85" }, "5935": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2789, 2795 ], "op": "DUP6", "path": "85" }, "5936": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2789, 2802 ], "op": "MLOAD", "path": "85" }, "5937": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2661, 2697 ], "op": "PUSH2", "path": "85", "value": "0x1AF6" }, "5940": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2661, 2816 ], "op": "JUMP", "path": "85" }, "5941": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2661, 2816 ], "op": "JUMPDEST", "path": "85" }, "5942": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2622, 2816 ], "op": "SWAP1", "path": "85" }, "5943": { "op": "POP" }, "5944": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2876, 2916 ], "op": "PUSH2", "path": "85", "statement": 96, "value": "0x1741" }, "5947": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2622, 2816 ], "op": "DUP2", "path": "85" }, "5948": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2909, 2915 ], "op": "DUP5", "path": "85" }, "5949": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2876, 2908 ], "op": "PUSH2", "path": "85", "value": "0x1B88" }, "5952": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 2876, 2916 ], "op": "JUMP", "path": "85" }, "5953": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2876, 2916 ], "op": "JUMPDEST", "path": "85" }, "5954": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3009, 3083 ], "op": "PUSH2", "path": "85", "statement": 97, "value": "0x174E" }, "5957": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3009, 3023 ], "op": "DUP5", "path": "85" }, "5958": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3052, 3059 ], "op": "DUP7", "path": "85" }, "5959": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3061, 3075 ], "op": "DUP4", "path": "85" }, "5960": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3077, 3082 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "5962": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3009, 3051 ], "op": "PUSH2", "path": "85", "value": "0x1BE6" }, "5965": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "i", "offset": [ 3009, 3083 ], "op": "JUMP", "path": "85" }, "5966": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3009, 3083 ], "op": "JUMPDEST", "path": "85" }, "5967": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "POP", "path": "85" }, "5968": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 2391, 3094 ], "op": "JUMPDEST", "path": "85" }, "5969": { "op": "POP" }, "5970": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3111, 3125 ], "op": "SWAP1", "path": "85", "statement": 98 }, "5971": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 3111, 3125 ], "op": "SWAP3", "path": "85" }, "5972": { "fn": "TransferAssets.placeAssetsInAccount", "offset": [ 1997, 3132 ], "op": "SWAP2", "path": "85" }, "5973": { "op": "POP" }, "5974": { "op": "POP" }, "5975": { "fn": "TransferAssets.placeAssetsInAccount", "jump": "o", "offset": [ 1997, 3132 ], "op": "JUMP", "path": "85" }, "5976": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "JUMPDEST", "path": "66" }, "5977": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 938, 986 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5979": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 989, 1019 ], "op": "PUSH2", "path": "66", "value": "0x1762" }, "5982": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 989, 1017 ], "op": "PUSH2", "path": "66", "value": "0x1311" }, "5985": { "fn": "AccountContextHandler.setAccountContext", "jump": "i", "offset": [ 989, 1019 ], "op": "JUMP", "path": "66" }, "5986": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 989, 1019 ], "op": "JUMPDEST", "path": "66" }, "5987": { "op": "PUSH1", "value": "0x1" }, "5989": { "op": "PUSH1", "value": "0x1" }, "5991": { "op": "PUSH1", "value": "0xA0" }, "5993": { "op": "SHL" }, "5994": { "op": "SUB" }, "5995": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP4", "path": "66", "statement": 99 }, "5996": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "AND", "path": "66" }, "5997": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "5999": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP2", "path": "66" }, "6000": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP2", "path": "66" }, "6001": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "MSTORE", "path": "66" }, "6002": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "PUSH1", "path": "66", "value": "0x20" }, "6004": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP4", "path": "66" }, "6005": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP2", "path": "66" }, "6006": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "MSTORE", "path": "66" }, "6007": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "PUSH1", "path": "66", "value": "0x40" }, "6009": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP1", "path": "66" }, "6010": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "DUP4", "path": "66" }, "6011": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "KECCAK256", "path": "66" }, "6012": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP9", "path": "66" }, "6013": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "6014": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP2", "path": "66" }, "6015": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SLOAD", "path": "66" }, "6016": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "6017": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP11", "path": "66" }, "6018": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "6019": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "6020": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP4", "path": "66" }, "6021": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP12", "path": "66" }, "6022": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "6023": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "6024": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "6026": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP13", "path": "66" }, "6027": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "6028": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "6029": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "6031": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "DUP14", "path": "66" }, "6032": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "ADD", "path": "66" }, "6033": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MLOAD", "path": "66" }, "6034": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0x70" }, "6036": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SHR", "path": "66" }, "6037": { "op": "PUSH1", "value": "0x1" }, "6039": { "op": "PUSH1", "value": "0x48" }, "6041": { "op": "SHL" }, "6042": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "6043": { "op": "PUSH27", "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000" }, "6071": { "op": "NOT" }, "6072": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "6075": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6076": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP3", "path": "66" }, "6077": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6078": { "op": "PUSH1", "value": "0x1" }, "6080": { "op": "PUSH1", "value": "0x38" }, "6082": { "op": "SHL" }, "6083": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "6084": { "op": "PUSH9", "value": "0xFFFF00000000000000" }, "6094": { "op": "NOT" }, "6095": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0xFF" }, "6097": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "6098": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6099": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "6100": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6101": { "op": "PUSH1", "value": "0x1" }, "6103": { "op": "PUSH1", "value": "0x30" }, "6105": { "op": "SHL" }, "6106": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "6107": { "op": "PUSH7", "value": "0xFF000000000000" }, "6115": { "op": "NOT" }, "6116": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH1", "path": "66", "value": "0xF8" }, "6118": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "6119": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6120": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "6121": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SHR", "path": "66" }, "6122": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH6", "path": "66", "value": "0x10000000000" }, "6129": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "MUL", "path": "66" }, "6130": { "op": "PUSH6", "value": "0xFF0000000000" }, "6137": { "op": "NOT" }, "6138": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "PUSH5", "path": "66", "value": "0xFFFFFFFFFF" }, "6144": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6145": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP9", "path": "66" }, "6146": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6147": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "6153": { "op": "NOT" }, "6154": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6155": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP12", "path": "66" }, "6156": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6157": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP11", "path": "66" }, "6158": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6159": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP11", "path": "66" }, "6160": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "6161": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "6162": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6163": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP7", "path": "66" }, "6164": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6165": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP9", "path": "66" }, "6166": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6167": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP9", "path": "66" }, "6168": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "6169": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "6170": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6171": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "6172": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6173": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "6174": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6175": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP4", "path": "66" }, "6176": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "6177": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6178": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "6179": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6180": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP5", "path": "66" }, "6181": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "6182": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "AND", "path": "66" }, "6183": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP3", "path": "66" }, "6184": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6185": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP3", "path": "66" }, "6186": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "OR", "path": "66" }, "6187": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP1", "path": "66" }, "6188": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SWAP2", "path": "66" }, "6189": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1060 ], "op": "SSTORE", "path": "66" }, "6190": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "MLOAD", "path": "66", "statement": 100 }, "6191": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 938, 1019 ], "op": "SWAP3", "path": "66" }, "6192": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 938, 1019 ], "op": "SWAP4", "path": "66" }, "6193": { "op": "POP" }, "6194": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "SWAP1", "path": "66" }, "6195": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "SWAP2", "path": "66" }, "6196": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "PUSH32", "path": "66", "value": "0x6BD4B121BCA854A191536A2CA891155C42EE2FB23F307FB34E8BC65CFCB5412E" }, "6229": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "SWAP2", "path": "66" }, "6230": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1029, 1043 ], "op": "SWAP1", "path": "66" }, "6231": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 1075, 1104 ], "op": "LOG2", "path": "66" }, "6232": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "POP", "path": "66" }, "6233": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "POP", "path": "66" }, "6234": { "fn": "AccountContextHandler.setAccountContext", "offset": [ 837, 1111 ], "op": "POP", "path": "66" }, "6235": { "fn": "AccountContextHandler.setAccountContext", "jump": "o", "offset": [ 837, 1111 ], "op": "JUMP", "path": "66" }, "6236": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1543, 1753 ], "op": "JUMPDEST", "path": "85" }, "6237": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1642, 1651 ], "op": "PUSH1", "path": "85", "value": "0x0" }, "6239": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1637, 1747 ], "op": "JUMPDEST", "path": "85" }, "6240": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1657, 1663 ], "op": "DUP2", "path": "85" }, "6241": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1657, 1670 ], "op": "MLOAD", "path": "85" }, "6242": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1653, 1654 ], "op": "DUP2", "path": "85" }, "6243": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1653, 1670 ], "op": "LT", "path": "85" }, "6244": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1637, 1747 ], "op": "ISZERO", "path": "85" }, "6245": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1637, 1747 ], "op": "PUSH2", "path": "85", "value": "0xC7A" }, "6248": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1637, 1747 ], "op": "JUMPI", "path": "85" }, "6249": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1736 ], "op": "PUSH2", "path": "85", "statement": 101, "value": "0x1888" }, "6252": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1718 ], "op": "DUP3", "path": "85" }, "6253": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1719, 1720 ], "op": "DUP3", "path": "85" }, "6254": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "DUP2", "path": "85" }, "6255": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "MLOAD", "path": "85" }, "6256": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "DUP2", "path": "85" }, "6257": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "LT", "path": "85" }, "6258": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "PUSH2", "path": "85", "value": "0x1877" }, "6261": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "JUMPI", "path": "85" }, "6262": { "dev": "Index out of range", "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "INVALID", "path": "85" }, "6263": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "JUMPDEST", "path": "85" }, "6264": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "PUSH1", "path": "85", "value": "0x20" }, "6266": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "MUL", "path": "85" }, "6267": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "PUSH1", "path": "85", "value": "0x20" }, "6269": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "ADD", "path": "85" }, "6270": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "ADD", "path": "85" }, "6271": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1721 ], "op": "MLOAD", "path": "85" }, "6272": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1730 ], "op": "PUSH1", "path": "85", "value": "0x60" }, "6274": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1730 ], "op": "ADD", "path": "85" }, "6275": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1730 ], "op": "MLOAD", "path": "85" }, "6276": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1734 ], "op": "PUSH2", "path": "85", "value": "0x1CBD" }, "6279": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "jump": "i", "offset": [ 1712, 1736 ], "op": "JUMP", "path": "85" }, "6280": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1712, 1736 ], "op": "JUMPDEST", "path": "85" }, "6281": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1697 ], "op": "DUP3", "path": "85" }, "6282": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1698, 1699 ], "op": "DUP3", "path": "85" }, "6283": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "DUP2", "path": "85" }, "6284": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "MLOAD", "path": "85" }, "6285": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "DUP2", "path": "85" }, "6286": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "LT", "path": "85" }, "6287": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "PUSH2", "path": "85", "value": "0x1894" }, "6290": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "JUMPI", "path": "85" }, "6291": { "dev": "Index out of range", "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "INVALID", "path": "85" }, "6292": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "JUMPDEST", "path": "85" }, "6293": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "PUSH1", "path": "85", "value": "0x20" }, "6295": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "SWAP1", "path": "85" }, "6296": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "DUP2", "path": "85" }, "6297": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "MUL", "path": "85" }, "6298": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "SWAP2", "path": "85" }, "6299": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "SWAP1", "path": "85" }, "6300": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "SWAP2", "path": "85" }, "6301": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "ADD", "path": "85" }, "6302": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "ADD", "path": "85" }, "6303": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1700 ], "op": "MLOAD", "path": "85" }, "6304": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1709 ], "op": "PUSH1", "path": "85", "value": "0x60" }, "6306": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1709 ], "op": "ADD", "path": "85" }, "6307": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1691, 1736 ], "op": "MSTORE", "path": "85" }, "6308": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1672, 1675 ], "op": "PUSH1", "path": "85", "statement": 102, "value": "0x1" }, "6310": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1672, 1675 ], "op": "ADD", "path": "85" }, "6311": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1637, 1747 ], "op": "PUSH2", "path": "85", "value": "0x185F" }, "6314": { "fn": "TransferAssets.invertNotionalAmountsInPlace", "offset": [ 1637, 1747 ], "op": "JUMP", "path": "85" }, "6315": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18581, 19068 ], "op": "JUMPDEST", "path": "30" }, "6316": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18653, 18666 ], "op": "PUSH1", "path": "30", "value": "0x60" }, "6318": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18814, 18816 ], "op": "PUSH1", "path": "30", "value": "0x44" }, "6320": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18793, 18804 ], "op": "DUP3", "path": "30" }, "6321": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18793, 18811 ], "op": "MLOAD", "path": "30" }, "6322": { "branch": 323, "fn": "ERC1155Action._getRevertMsg", "offset": [ 18793, 18816 ], "op": "LT", "path": "30" }, "6323": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18789, 18856 ], "op": "ISZERO", "path": "30" }, "6324": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18789, 18856 ], "op": "PUSH2", "path": "30", "value": "0x18F1" }, "6327": { "branch": 323, "fn": "ERC1155Action._getRevertMsg", "offset": [ 18789, 18856 ], "op": "JUMPI", "path": "30" }, "6328": { "op": "POP" }, "6329": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "PUSH1", "path": "30", "statement": 103, "value": "0x40" }, "6331": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "DUP1", "path": "30" }, "6332": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "MLOAD", "path": "30" }, "6333": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "DUP1", "path": "30" }, "6334": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "DUP3", "path": "30" }, "6335": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "ADD", "path": "30" }, "6336": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "SWAP1", "path": "30" }, "6337": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "SWAP2", "path": "30" }, "6338": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "MSTORE", "path": "30" }, "6339": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "PUSH1", "path": "30", "value": "0x1D" }, "6341": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "DUP2", "path": "30" }, "6342": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "MSTORE", "path": "30" }, "6343": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "PUSH32", "path": "30", "value": "0x5472616E73616374696F6E2072657665727465642073696C656E746C79000000" }, "6376": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "6378": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "DUP3", "path": "30" }, "6379": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "ADD", "path": "30" }, "6380": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "MSTORE", "path": "30" }, "6381": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "PUSH2", "path": "30", "value": "0x327" }, "6384": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18818, 18856 ], "op": "JUMP", "path": "30" }, "6385": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18789, 18856 ], "op": "JUMPDEST", "path": "30" }, "6386": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18956, 18960 ], "op": "PUSH1", "path": "30", "value": "0x4" }, "6388": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18943, 18954 ], "op": "DUP3", "path": "30" }, "6389": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18939, 18961 ], "op": "ADD", "path": "30" }, "6390": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18924, 18961 ], "op": "SWAP2", "path": "30" }, "6391": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18924, 18961 ], "op": "POP", "path": "30" }, "6392": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18998, 19009 ], "op": "DUP2", "path": "30", "statement": 104 }, "6393": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "DUP1", "path": "30" }, "6394": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "PUSH1", "path": "30", "value": "0x20" }, "6396": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "ADD", "path": "30" }, "6397": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "SWAP1", "path": "30" }, "6398": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "MLOAD", "path": "30" }, "6399": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "DUP2", "path": "30" }, "6400": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "ADD", "path": "30" }, "6401": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "SWAP1", "path": "30" }, "6402": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "PUSH2", "path": "30", "value": "0x30C" }, "6405": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "SWAP2", "path": "30" }, "6406": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "SWAP1", "path": "30" }, "6407": { "fn": "ERC1155Action._getRevertMsg", "offset": [ 18987, 19020 ], "op": "PUSH2", "path": "30", "value": "0x3210" }, "6410": { "fn": "ERC1155Action._getRevertMsg", "jump": "i", "offset": [ 18987, 19020 ], "op": "JUMP", "path": "30" }, "6411": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11565, 11757 ], "op": "JUMPDEST", "path": "77" }, "6412": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11635, 11640 ], "op": "PUSH1", "path": "77", "value": "0x0" }, "6414": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11652, 11664 ], "op": "DUP1", "path": "77" }, "6415": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11667, 11704 ], "op": "PUSH2", "path": "77", "value": "0x1917" }, "6418": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11693, 11703 ], "op": "DUP4", "path": "77" }, "6419": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11667, 11692 ], "op": "PUSH2", "path": "77", "value": "0x1CCB" }, "6422": { "fn": "CashGroup.getMaxMarketIndex", "jump": "i", "offset": [ 11667, 11704 ], "op": "JUMP", "path": "77" }, "6423": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11667, 11704 ], "op": "JUMPDEST", "path": "77" }, "6424": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11727, 11749 ], "op": "PUSH1", "path": "77", "statement": 105, "value": "0xFF" }, "6426": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11727, 11749 ], "op": "AND", "path": "77" }, "6427": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11727, 11749 ], "op": "SWAP4", "path": "77" }, "6428": { "fn": "CashGroup.getMaxMarketIndex", "offset": [ 11727, 11749 ], "op": "SWAP3", "path": "77" }, "6429": { "op": "POP" }, "6430": { "op": "POP" }, "6431": { "op": "POP" }, "6432": { "fn": "CashGroup.getMaxMarketIndex", "jump": "o", "offset": [ 11565, 11757 ], "op": "JUMP", "path": "77" }, "6433": { "fn": "DateTime.isValidMaturity", "offset": [ 2224, 2748 ], "op": "JUMPDEST", "path": "78" }, "6434": { "fn": "DateTime.isValidMaturity", "offset": [ 2363, 2367 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "6436": { "fn": "DateTime.isValidMaturity", "offset": [ 2379, 2391 ], "op": "DUP1", "path": "78" }, "6437": { "fn": "DateTime.isValidMaturity", "offset": [ 2394, 2430 ], "op": "PUSH2", "path": "78", "value": "0x192D" }, "6440": { "fn": "DateTime.isValidMaturity", "offset": [ 2420, 2429 ], "op": "DUP4", "path": "78" }, "6441": { "fn": "DateTime.isValidMaturity", "offset": [ 2394, 2419 ], "op": "PUSH2", "path": "78", "value": "0x1CE8" }, "6444": { "fn": "DateTime.isValidMaturity", "jump": "i", "offset": [ 2394, 2430 ], "op": "JUMP", "path": "78" }, "6445": { "fn": "DateTime.isValidMaturity", "offset": [ 2394, 2430 ], "op": "JUMPDEST", "path": "78" }, "6446": { "fn": "DateTime.isValidMaturity", "offset": [ 2379, 2430 ], "op": "SWAP1", "path": "78" }, "6447": { "fn": "DateTime.isValidMaturity", "offset": [ 2379, 2430 ], "op": "POP", "path": "78" }, "6448": { "fn": "DateTime.isValidMaturity", "offset": [ 2440, 2459 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "6450": { "fn": "DateTime.isValidMaturity", "offset": [ 2462, 2512 ], "op": "PUSH2", "path": "78", "value": "0x1944" }, "6453": { "fn": "DateTime.isValidMaturity", "offset": [ 2471, 2511 ], "op": "PUSH2", "path": "78", "value": "0x193D" }, "6456": { "fn": "DateTime.isValidMaturity", "offset": [ 2496, 2510 ], "op": "DUP8", "path": "78" }, "6457": { "fn": "DateTime.isValidMaturity", "offset": [ 2471, 2495 ], "op": "PUSH2", "path": "78", "value": "0x1D04" }, "6460": { "fn": "DateTime.isValidMaturity", "jump": "i", "offset": [ 2471, 2511 ], "op": "JUMP", "path": "78" }, "6461": { "fn": "DateTime.isValidMaturity", "offset": [ 2471, 2511 ], "op": "JUMPDEST", "path": "78" }, "6462": { "fn": "DateTime.isValidMaturity", "offset": [ 2462, 2466 ], "op": "DUP4", "path": "78" }, "6463": { "fn": "DateTime.isValidMaturity", "offset": [ 2462, 2466 ], "op": "SWAP1", "path": "78" }, "6464": { "fn": "DateTime.isValidMaturity", "offset": [ 2462, 2470 ], "op": "PUSH2", "path": "78", "value": "0x1DA8" }, "6467": { "fn": "DateTime.isValidMaturity", "jump": "i", "offset": [ 2462, 2512 ], "op": "JUMP", "path": "78" }, "6468": { "fn": "DateTime.isValidMaturity", "offset": [ 2462, 2512 ], "op": "JUMPDEST", "path": "78" }, "6469": { "fn": "DateTime.isValidMaturity", "offset": [ 2440, 2512 ], "op": "SWAP1", "path": "78" }, "6470": { "fn": "DateTime.isValidMaturity", "offset": [ 2440, 2512 ], "op": "POP", "path": "78" }, "6471": { "fn": "DateTime.isValidMaturity", "offset": [ 2579, 2590 ], "op": "DUP1", "path": "78" }, "6472": { "fn": "DateTime.isValidMaturity", "offset": [ 2568, 2576 ], "op": "DUP6", "path": "78" }, "6473": { "branch": 370, "fn": "DateTime.isValidMaturity", "offset": [ 2568, 2590 ], "op": "GT", "path": "78" }, "6474": { "fn": "DateTime.isValidMaturity", "offset": [ 2564, 2604 ], "op": "ISZERO", "path": "78" }, "6475": { "fn": "DateTime.isValidMaturity", "offset": [ 2564, 2604 ], "op": "PUSH2", "path": "78", "value": "0x1959" }, "6478": { "branch": 370, "fn": "DateTime.isValidMaturity", "offset": [ 2564, 2604 ], "op": "JUMPI", "path": "78" }, "6479": { "fn": "DateTime.isValidMaturity", "offset": [ 2599, 2604 ], "op": "PUSH1", "path": "78", "statement": 106, "value": "0x0" }, "6481": { "fn": "DateTime.isValidMaturity", "offset": [ 2592, 2604 ], "op": "SWAP3", "path": "78" }, "6482": { "fn": "DateTime.isValidMaturity", "offset": [ 2592, 2604 ], "op": "POP", "path": "78" }, "6483": { "fn": "DateTime.isValidMaturity", "offset": [ 2592, 2604 ], "op": "POP", "path": "78" }, "6484": { "fn": "DateTime.isValidMaturity", "offset": [ 2592, 2604 ], "op": "POP", "path": "78" }, "6485": { "fn": "DateTime.isValidMaturity", "offset": [ 2592, 2604 ], "op": "PUSH2", "path": "78", "value": "0x653" }, "6488": { "fn": "DateTime.isValidMaturity", "offset": [ 2592, 2604 ], "op": "JUMP", "path": "78" }, "6489": { "fn": "DateTime.isValidMaturity", "offset": [ 2564, 2604 ], "op": "JUMPDEST", "path": "78" }, "6490": { "fn": "DateTime.isValidMaturity", "offset": [ 2650, 2662 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "6492": { "fn": "DateTime.isValidMaturity", "offset": [ 2666, 2717 ], "op": "PUSH2", "path": "78", "value": "0x1965" }, "6495": { "fn": "DateTime.isValidMaturity", "offset": [ 2697, 2706 ], "op": "DUP6", "path": "78" }, "6496": { "fn": "DateTime.isValidMaturity", "offset": [ 2708, 2716 ], "op": "DUP8", "path": "78" }, "6497": { "fn": "DateTime.isValidMaturity", "offset": [ 2666, 2696 ], "op": "PUSH2", "path": "78", "value": "0x1E02" }, "6500": { "fn": "DateTime.isValidMaturity", "jump": "i", "offset": [ 2666, 2717 ], "op": "JUMP", "path": "78" }, "6501": { "fn": "DateTime.isValidMaturity", "offset": [ 2666, 2717 ], "op": "JUMPDEST", "path": "78" }, "6502": { "fn": "DateTime.isValidMaturity", "offset": [ 2642, 2717 ], "op": "SWAP9", "path": "78" }, "6503": { "fn": "DateTime.isValidMaturity", "offset": [ 2224, 2748 ], "op": "SWAP8", "path": "78" }, "6504": { "op": "POP" }, "6505": { "op": "POP" }, "6506": { "op": "POP" }, "6507": { "op": "POP" }, "6508": { "op": "POP" }, "6509": { "op": "POP" }, "6510": { "op": "POP" }, "6511": { "op": "POP" }, "6512": { "fn": "DateTime.isValidMaturity", "jump": "o", "offset": [ 2224, 2748 ], "op": "JUMP", "path": "78" }, "6513": { "fn": "LibStorage._getStorageSlot", "offset": [ 8450, 8779 ], "op": "JUMPDEST", "path": "62" }, "6514": { "fn": "LibStorage._getStorageSlot", "offset": [ 8542, 8554 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "6516": { "offset": [ 494, 501 ], "op": "PUSH3", "path": "62", "value": "0xF4240" }, "6520": { "fn": "LibStorage._getStorageSlot", "offset": [ 8742, 8751 ], "op": "DUP3", "path": "62", "statement": 107 }, "6521": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "PUSH1", "path": "62", "value": "0x13" }, "6523": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "DUP2", "path": "62" }, "6524": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "GT", "path": "62" }, "6525": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "ISZERO", "path": "62" }, "6526": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "PUSH2", "path": "62", "value": "0x1983" }, "6529": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "JUMPI", "path": "62" }, "6530": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "INVALID", "path": "62" }, "6531": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8752 ], "op": "JUMPDEST", "path": "62" }, "6532": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8772 ], "op": "ADD", "path": "62" }, "6533": { "fn": "LibStorage._getStorageSlot", "offset": [ 8734, 8772 ], "op": "SWAP3", "path": "62" }, "6534": { "fn": "LibStorage._getStorageSlot", "offset": [ 8450, 8779 ], "op": "SWAP2", "path": "62" }, "6535": { "op": "POP" }, "6536": { "op": "POP" }, "6537": { "fn": "LibStorage._getStorageSlot", "jump": "o", "offset": [ 8450, 8779 ], "op": "JUMP", "path": "62" }, "6538": { "fn": "LibStorage.getifCashBitmapStorage", "offset": [ 5665, 5934 ], "op": "JUMPDEST", "path": "62" }, "6539": { "fn": "LibStorage.getifCashBitmapStorage", "offset": [ 5730, 5817 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "6541": { "fn": "LibStorage.getifCashBitmapStorage", "offset": [ 5833, 5845 ], "op": "DUP1", "path": "62" }, "6542": { "fn": "LibStorage.getifCashBitmapStorage", "offset": [ 5848, 5887 ], "op": "PUSH2", "path": "62", "value": "0x30C" }, "6545": { "fn": "LibStorage.getifCashBitmapStorage", "offset": [ 5864, 5886 ], "op": "PUSH1", "path": "62", "value": "0xC" }, "6547": { "fn": "LibStorage.getifCashBitmapStorage", "offset": [ 5848, 5863 ], "op": "PUSH2", "path": "62", "value": "0x1971" }, "6550": { "fn": "LibStorage.getifCashBitmapStorage", "jump": "i", "offset": [ 5848, 5887 ], "op": "JUMP", "path": "62" }, "6551": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6020, 6283 ], "op": "JUMPDEST", "path": "62" }, "6552": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6087, 6164 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "6554": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6180, 6192 ], "op": "DUP1", "path": "62" }, "6555": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6195, 6236 ], "op": "PUSH2", "path": "62", "value": "0x30C" }, "6558": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6211, 6235 ], "op": "PUSH1", "path": "62", "value": "0xD" }, "6560": { "fn": "LibStorage.getPortfolioArrayStorage", "offset": [ 6195, 6210 ], "op": "PUSH2", "path": "62", "value": "0x1971" }, "6563": { "fn": "LibStorage.getPortfolioArrayStorage", "jump": "i", "offset": [ 6195, 6236 ], "op": "JUMP", "path": "62" }, "6564": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 728, 1465 ], "op": "JUMPDEST", "path": "81" }, "6565": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 836, 853 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "6567": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 867, 902 ], "op": "DUP1", "path": "81" }, "6568": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 916, 943 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "6570": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 957, 979 ], "op": "DUP1", "path": "81" }, "6571": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 993, 1010 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "6573": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1035, 1082 ], "op": "DUP1", "path": "81" }, "6574": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1085, 1121 ], "op": "PUSH2", "path": "81", "value": "0x19B5" }, "6577": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1085, 1119 ], "op": "PUSH2", "path": "81", "value": "0x1F0D" }, "6580": { "fn": "nTokenHandler.getNTokenContext", "jump": "i", "offset": [ 1085, 1121 ], "op": "JUMP", "path": "81" }, "6581": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1085, 1121 ], "op": "JUMPDEST", "path": "81" }, "6582": { "op": "PUSH1", "value": "0x1" }, "6584": { "op": "PUSH1", "value": "0x1" }, "6586": { "op": "PUSH1", "value": "0xA0" }, "6588": { "op": "SHL" }, "6589": { "op": "SUB" }, "6590": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6591": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP8", "path": "81" }, "6592": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "AND", "path": "81" }, "6593": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1131, 1160 ], "op": "PUSH1", "path": "81", "value": "0x0" }, "6595": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6596": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "DUP2", "path": "81" }, "6597": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "MSTORE", "path": "81" }, "6598": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "PUSH1", "path": "81", "value": "0x20" }, "6600": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP8", "path": "81" }, "6601": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6602": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP8", "path": "81" }, "6603": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "MSTORE", "path": "81" }, "6604": { "op": "POP" }, "6605": { "op": "POP" }, "6606": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "PUSH1", "path": "81", "value": "0x40" }, "6608": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP1", "path": "81" }, "6609": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "SWAP5", "path": "81" }, "6610": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1163, 1182 ], "op": "KECCAK256", "path": "81" }, "6611": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "SLOAD", "path": "81", "statement": 108 }, "6612": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "PUSH2", "path": "81", "value": "0xFFFF" }, "6615": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "DUP2", "path": "81" }, "6616": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "AND", "path": "81" }, "6617": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1206, 1224 ], "op": "SWAP6", "path": "81" }, "6618": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "PUSH4", "path": "81", "statement": 109, "value": "0xFFFFFFFF" }, "6623": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "PUSH3", "path": "81", "value": "0x10000" }, "6627": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "DUP4", "path": "81" }, "6628": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "DIV", "path": "81" }, "6629": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "DUP2", "path": "81" }, "6630": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "AND", "path": "81" }, "6631": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1264, 1299 ], "op": "SWAP7", "path": "81" }, "6632": { "op": "POP" }, "6633": { "op": "PUSH1", "value": "0x1" }, "6635": { "op": "PUSH1", "value": "0x30" }, "6637": { "op": "SHL" }, "6638": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "DUP4", "path": "81", "statement": 110 }, "6639": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "DIV", "path": "81" }, "6640": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "AND", "path": "81" }, "6641": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1331, 1358 ], "op": "SWAP5", "path": "81" }, "6642": { "op": "POP" }, "6643": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "PUSH1", "path": "81", "statement": 111, "value": "0xFF" }, "6645": { "op": "PUSH1", "value": "0x1" }, "6647": { "op": "PUSH1", "value": "0x50" }, "6649": { "op": "SHL" }, "6650": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "DUP4", "path": "81" }, "6651": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "DIV", "path": "81" }, "6652": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "AND", "path": "81" }, "6653": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1387, 1411 ], "op": "SWAP4", "path": "81" }, "6654": { "op": "POP" }, "6655": { "op": "PUSH1", "value": "0x1" }, "6657": { "op": "PUSH1", "value": "0x58" }, "6659": { "op": "SHL" }, "6660": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SWAP1", "path": "81", "statement": 112 }, "6661": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SWAP2", "path": "81" }, "6662": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "DIV", "path": "81" }, "6663": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "PUSH1", "path": "81", "value": "0xD8" }, "6665": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SHL", "path": "81" }, "6666": { "fn": "nTokenHandler.getNTokenContext", "offset": [ 1434, 1458 ], "op": "SWAP2", "path": "81" }, "6667": { "op": "POP" }, "6668": { "fn": "nTokenHandler.getNTokenContext", "jump": "o", "offset": [ 728, 1465 ], "op": "JUMP", "path": "81" }, "6669": { "fn": "DateTime.getTimeUTC0", "offset": [ 583, 743 ], "op": "JUMPDEST", "path": "78" }, "6670": { "fn": "DateTime.getTimeUTC0", "offset": [ 641, 648 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "6672": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "6676": { "fn": "DateTime.getTimeUTC0", "offset": [ 668, 672 ], "op": "DUP3", "path": "78", "statement": 113 }, "6677": { "fn": "DateTime.getTimeUTC0", "offset": [ 668, 689 ], "op": "LT", "path": "78" }, "6678": { "branch": 371, "fn": "DateTime.getTimeUTC0", "offset": [ 668, 689 ], "op": "ISZERO", "path": "78" }, "6679": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "PUSH2", "path": "78", "value": "0x1A1F" }, "6682": { "branch": 371, "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "JUMPI", "path": "78" }, "6683": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "6685": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "DUP1", "path": "78" }, "6686": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "REVERT", "path": "78" }, "6687": { "fn": "DateTime.getTimeUTC0", "offset": [ 660, 690 ], "op": "JUMPDEST", "path": "78" }, "6688": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "6692": { "fn": "DateTime.getTimeUTC0", "offset": [ 715, 719 ], "op": "DUP3", "path": "78", "statement": 114 }, "6693": { "fn": "DateTime.getTimeUTC0", "offset": [ 715, 735 ], "op": "JUMPDEST", "path": "78" }, "6694": { "fn": "DateTime.getTimeUTC0", "offset": [ 715, 735 ], "op": "MOD", "path": "78" }, "6695": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SWAP1", "path": "78" }, "6696": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SWAP2", "path": "78" }, "6697": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SUB", "path": "78" }, "6698": { "fn": "DateTime.getTimeUTC0", "offset": [ 707, 736 ], "op": "SWAP2", "path": "78" }, "6699": { "fn": "DateTime.getTimeUTC0", "offset": [ 583, 743 ], "op": "SWAP1", "path": "78" }, "6700": { "op": "POP" }, "6701": { "fn": "DateTime.getTimeUTC0", "jump": "o", "offset": [ 583, 743 ], "op": "JUMP", "path": "78" }, "6702": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1753, 2818 ], "op": "JUMPDEST", "path": "83" }, "6703": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1930, 1962 ], "op": "PUSH2", "path": "83", "statement": 115, "value": "0x1A37" }, "6706": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1930, 1944 ], "op": "DUP3", "path": "83" }, "6707": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1930, 1960 ], "op": "PUSH2", "path": "83", "value": "0xAD7" }, "6710": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "jump": "i", "offset": [ 1930, 1962 ], "op": "JUMP", "path": "83" }, "6711": { "branch": 357, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1930, 1962 ], "op": "JUMPDEST", "path": "83" }, "6712": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1922, 1963 ], "op": "PUSH2", "path": "83", "value": "0x1A40" }, "6715": { "branch": 357, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1922, 1963 ], "op": "JUMPI", "path": "83" }, "6716": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1922, 1963 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6718": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1922, 1963 ], "op": "DUP1", "path": "83" }, "6719": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1922, 1963 ], "op": "REVERT", "path": "83" }, "6720": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1922, 1963 ], "op": "JUMPDEST", "path": "83" }, "6721": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2026, 2057 ], "op": "PUSH1", "path": "83", "value": "0x60" }, "6723": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2026, 2057 ], "op": "DUP3", "path": "83" }, "6724": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2026, 2057 ], "op": "ADD", "path": "83" }, "6725": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2026, 2057 ], "op": "MLOAD", "path": "83" }, "6726": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2005, 2057 ], "op": "PUSH2", "path": "83", "value": "0xFFFF" }, "6729": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2005, 2057 ], "op": "AND", "path": "83" }, "6730": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2005, 2023 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6732": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "JUMPDEST", "path": "83" }, "6733": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2088, 2094 ], "op": "DUP3", "path": "83" }, "6734": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2088, 2101 ], "op": "MLOAD", "path": "83" }, "6735": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2084, 2085 ], "op": "DUP2", "path": "83" }, "6736": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2084, 2101 ], "op": "LT", "path": "83" }, "6737": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "ISZERO", "path": "83" }, "6738": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "PUSH2", "path": "83", "value": "0x1AEF" }, "6741": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "JUMPI", "path": "83" }, "6742": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2122, 2149 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6744": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2158 ], "op": "DUP4", "path": "83" }, "6745": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2159, 2160 ], "op": "DUP3", "path": "83" }, "6746": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "DUP2", "path": "83" }, "6747": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "MLOAD", "path": "83" }, "6748": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "DUP2", "path": "83" }, "6749": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "LT", "path": "83" }, "6750": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "PUSH2", "path": "83", "value": "0x1A63" }, "6753": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "JUMPI", "path": "83" }, "6754": { "dev": "Index out of range", "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "INVALID", "path": "83" }, "6755": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "JUMPDEST", "path": "83" }, "6756": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "6758": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "MUL", "path": "83" }, "6759": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "6761": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "ADD", "path": "83" }, "6762": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "ADD", "path": "83" }, "6763": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2152, 2161 ], "op": "MLOAD", "path": "83" }, "6764": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2122, 2161 ], "op": "SWAP1", "path": "83" }, "6765": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2122, 2161 ], "op": "POP", "path": "83" }, "6766": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2179, 2184 ], "op": "DUP1", "path": "83" }, "6767": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2179, 2193 ], "op": "PUSH1", "path": "83", "value": "0x60" }, "6769": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2179, 2193 ], "op": "ADD", "path": "83" }, "6770": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2179, 2193 ], "op": "MLOAD", "path": "83" }, "6771": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2197, 2198 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6773": { "branch": 358, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2179, 2198 ], "op": "EQ", "path": "83" }, "6774": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2175, 2208 ], "op": "ISZERO", "path": "83" }, "6775": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2175, 2208 ], "op": "PUSH2", "path": "83", "value": "0x1A80" }, "6778": { "branch": 358, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2175, 2208 ], "op": "JUMPI", "path": "83" }, "6779": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2200, 2208 ], "op": "POP", "path": "83", "statement": 116 }, "6780": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2200, 2208 ], "op": "PUSH2", "path": "83", "value": "0x1AE7" }, "6783": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2200, 2208 ], "op": "JUMP", "path": "83" }, "6784": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2175, 2208 ], "op": "JUMPDEST", "path": "83" }, "6785": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2231, 2247 ], "op": "DUP1", "path": "83", "statement": 117 }, "6786": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2231, 2247 ], "op": "MLOAD", "path": "83" }, "6787": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2231, 2261 ], "op": "DUP4", "path": "83" }, "6788": { "branch": 359, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2231, 2261 ], "op": "EQ", "path": "83" }, "6789": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2223, 2262 ], "op": "PUSH2", "path": "83", "value": "0x1A8D" }, "6792": { "branch": 359, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2223, 2262 ], "op": "JUMPI", "path": "83" }, "6793": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2223, 2262 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6795": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2223, 2262 ], "op": "DUP1", "path": "83" }, "6796": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2223, 2262 ], "op": "REVERT", "path": "83" }, "6797": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2223, 2262 ], "op": "JUMPDEST", "path": "83" }, "6798": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2327, 2342 ], "op": "PUSH1", "path": "83", "statement": 118, "value": "0x40" }, "6800": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2327, 2342 ], "op": "DUP2", "path": "83" }, "6801": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2327, 2342 ], "op": "ADD", "path": "83" }, "6802": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2327, 2342 ], "op": "MLOAD", "path": "83" }, "6803": { "offset": [ 4700, 4701 ], "op": "PUSH1", "path": "60", "value": "0x1" }, "6805": { "branch": 360, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2327, 2372 ], "op": "EQ", "path": "83" }, "6806": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2319, 2373 ], "op": "PUSH2", "path": "83", "value": "0x1A9E" }, "6809": { "branch": 360, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2319, 2373 ], "op": "JUMPI", "path": "83" }, "6810": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2319, 2373 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6812": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2319, 2373 ], "op": "DUP1", "path": "83" }, "6813": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2319, 2373 ], "op": "REVERT", "path": "83" }, "6814": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2319, 2373 ], "op": "JUMPDEST", "path": "83" }, "6815": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2430, 2450 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6817": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2481, 2673 ], "op": "PUSH2", "path": "83", "statement": 119, "value": "0x1AC0" }, "6820": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2513, 2520 ], "op": "DUP8", "path": "83" }, "6821": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2538, 2548 ], "op": "DUP6", "path": "83" }, "6822": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2566, 2571 ], "op": "DUP5", "path": "83" }, "6823": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2566, 2580 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "6825": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2566, 2580 ], "op": "ADD", "path": "83" }, "6826": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2566, 2580 ], "op": "MLOAD", "path": "83" }, "6827": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2598, 2612 ], "op": "DUP10", "path": "83" }, "6828": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2598, 2627 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6830": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2598, 2627 ], "op": "ADD", "path": "83" }, "6831": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2598, 2627 ], "op": "MLOAD", "path": "83" }, "6832": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2481, 2673 ], "op": "PUSH5", "path": "83", "value": "0xFFFFFFFFFF" }, "6838": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2481, 2673 ], "op": "AND", "path": "83" }, "6839": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2645, 2650 ], "op": "DUP7", "path": "83" }, "6840": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2645, 2659 ], "op": "PUSH1", "path": "83", "value": "0x60" }, "6842": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2645, 2659 ], "op": "ADD", "path": "83" }, "6843": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2645, 2659 ], "op": "MLOAD", "path": "83" }, "6844": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2481, 2495 ], "op": "PUSH2", "path": "83", "value": "0x1F1A" }, "6847": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "jump": "i", "offset": [ 2481, 2673 ], "op": "JUMP", "path": "83" }, "6848": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2481, 2673 ], "op": "JUMPDEST", "path": "83" }, "6849": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2465, 2673 ], "op": "SWAP1", "path": "83" }, "6850": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2465, 2673 ], "op": "POP", "path": "83" }, "6851": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2708, 2709 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "6853": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2692, 2705 ], "op": "DUP2", "path": "83" }, "6854": { "branch": 361, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2692, 2709 ], "op": "SLT", "path": "83" }, "6855": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2688, 2801 ], "op": "ISZERO", "path": "83" }, "6856": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2688, 2801 ], "op": "PUSH2", "path": "83", "value": "0x1AE4" }, "6859": { "branch": 361, "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2688, 2801 ], "op": "JUMPI", "path": "83" }, "6860": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2752, 2774 ], "op": "PUSH1", "path": "83", "statement": 120, "value": "0x20" }, "6862": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2752, 2774 ], "op": "DUP7", "path": "83" }, "6863": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2752, 2774 ], "op": "ADD", "path": "83" }, "6864": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2752, 2774 ], "op": "DUP1", "path": "83" }, "6865": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2752, 2774 ], "op": "MLOAD", "path": "83" }, "6866": { "op": "PUSH1", "value": "0x1" }, "6868": { "op": "PUSH1", "value": "0xF8" }, "6870": { "op": "SHL" }, "6871": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2752, 2801 ], "op": "OR", "path": "83" }, "6872": { "op": "PUSH1", "value": "0x1" }, "6874": { "op": "PUSH1", "value": "0x1" }, "6876": { "op": "PUSH1", "value": "0xF8" }, "6878": { "op": "SHL" }, "6879": { "op": "SUB" }, "6880": { "op": "NOT" }, "6881": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2727, 2801 ], "op": "AND", "path": "83" }, "6882": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2727, 2801 ], "op": "SWAP1", "path": "83" }, "6883": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2727, 2801 ], "op": "MSTORE", "path": "83" }, "6884": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2688, 2801 ], "op": "JUMPDEST", "path": "83" }, "6885": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "POP", "path": "83" }, "6886": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "POP", "path": "83" }, "6887": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "JUMPDEST", "path": "83" }, "6888": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2103, 2106 ], "op": "PUSH1", "path": "83", "statement": 121, "value": "0x1" }, "6890": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2103, 2106 ], "op": "ADD", "path": "83" }, "6891": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "PUSH2", "path": "83", "value": "0x1A4C" }, "6894": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "JUMP", "path": "83" }, "6895": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "JUMPDEST", "path": "83" }, "6896": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 2068, 2812 ], "op": "POP", "path": "83" }, "6897": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1753, 2818 ], "op": "POP", "path": "83" }, "6898": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1753, 2818 ], "op": "POP", "path": "83" }, "6899": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1753, 2818 ], "op": "POP", "path": "83" }, "6900": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "offset": [ 1753, 2818 ], "op": "POP", "path": "83" }, "6901": { "fn": "BitmapAssetsHandler.addMultipleifCashAssets", "jump": "o", "offset": [ 1753, 2818 ], "op": "JUMP", "path": "83" }, "6902": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15438, 15915 ], "op": "JUMPDEST", "path": "84" }, "6903": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15584, 15605 ], "op": "PUSH2", "path": "84", "value": "0x1AFE" }, "6906": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15584, 15605 ], "op": "PUSH2", "path": "84", "value": "0x2E9F" }, "6909": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15584, 15605 ], "op": "JUMP", "path": "84" }, "6910": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15584, 15605 ], "op": "JUMPDEST", "path": "84" }, "6911": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15617, 15644 ], "op": "PUSH2", "path": "84", "value": "0x1B06" }, "6914": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15617, 15644 ], "op": "PUSH2", "path": "84", "value": "0x2E9F" }, "6917": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15617, 15644 ], "op": "JUMP", "path": "84" }, "6918": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15617, 15644 ], "op": "JUMPDEST", "path": "84" }, "6919": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15658, 15679 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "6921": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15658, 15679 ], "op": "DUP5", "path": "84" }, "6922": { "branch": 388, "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15658, 15679 ], "op": "AND", "path": "84" }, "6923": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15654, 15693 ], "op": "PUSH2", "path": "84", "value": "0x1B15" }, "6926": { "branch": 388, "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15654, 15693 ], "op": "JUMPI", "path": "84" }, "6927": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15688, 15693 ], "op": "SWAP1", "path": "84", "statement": 122 }, "6928": { "op": "POP" }, "6929": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15681, 15693 ], "op": "PUSH2", "path": "84", "value": "0x653" }, "6932": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15681, 15693 ], "op": "JUMP", "path": "84" }, "6933": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15654, 15693 ], "op": "JUMPDEST", "path": "84" }, "6934": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15725, 15770 ], "op": "PUSH2", "path": "84", "statement": 123, "value": "0x1B1F" }, "6937": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15744, 15751 ], "op": "DUP6", "path": "84" }, "6938": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15753, 15769 ], "op": "DUP6", "path": "84" }, "6939": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15725, 15743 ], "op": "PUSH2", "path": "84", "value": "0xB2F" }, "6942": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15725, 15770 ], "op": "JUMP", "path": "84" }, "6943": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15725, 15770 ], "op": "JUMPDEST", "path": "84" }, "6944": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15704, 15770 ], "op": "DUP2", "path": "84" }, "6945": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15704, 15770 ], "op": "MSTORE", "path": "84" }, "6946": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "PUSH1", "path": "84", "statement": 124, "value": "0xFF" }, "6948": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "DUP5", "path": "84" }, "6949": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "AND", "path": "84" }, "6950": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15803 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "6952": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15803 ], "op": "DUP3", "path": "84" }, "6953": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15803 ], "op": "ADD", "path": "84" }, "6954": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15780, 15822 ], "op": "MSTORE", "path": "84" }, "6955": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15871, 15884 ], "op": "DUP3", "path": "84", "statement": 125 }, "6956": { "op": "PUSH1", "value": "0x1" }, "6958": { "op": "PUSH1", "value": "0x1" }, "6960": { "op": "PUSH1", "value": "0x40" }, "6962": { "op": "SHL" }, "6963": { "op": "SUB" }, "6964": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "6965": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "GT", "path": "84" }, "6966": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "6967": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ISZERO", "path": "84" }, "6968": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0x1B40" }, "6971": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPI", "path": "84" }, "6972": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "6974": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "6975": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "REVERT", "path": "84" }, "6976": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "6977": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "POP", "path": "84" }, "6978": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "6980": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MLOAD", "path": "84" }, "6981": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "6982": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "6983": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP3", "path": "84" }, "6984": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MSTORE", "path": "84" }, "6985": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "6986": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "6988": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MUL", "path": "84" }, "6989": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "6991": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "6992": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP3", "path": "84" }, "6993": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "6994": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "6996": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MSTORE", "path": "84" }, "6997": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP1", "path": "84" }, "6998": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ISZERO", "path": "84" }, "6999": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0x1B7A" }, "7002": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPI", "path": "84" }, "7003": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "7004": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "7006": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "7007": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "7008": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0x1B67" }, "7011": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0x2E5F" }, "7014": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "i", "offset": [ 15850, 15885 ], "op": "JUMP", "path": "84" }, "7015": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "7016": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "7017": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "MSTORE", "path": "84" }, "7018": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "7020": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "ADD", "path": "84" }, "7021": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "7022": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "7024": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "7025": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SUB", "path": "84" }, "7026": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "7027": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "DUP2", "path": "84" }, "7028": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "PUSH2", "path": "84", "value": "0x1B5F" }, "7031": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPI", "path": "84" }, "7032": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "SWAP1", "path": "84" }, "7033": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "POP", "path": "84" }, "7034": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15850, 15885 ], "op": "JUMPDEST", "path": "84" }, "7035": { "op": "POP" }, "7036": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "7038": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "DUP3", "path": "84" }, "7039": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "ADD", "path": "84" }, "7040": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15885 ], "op": "MSTORE", "path": "84" }, "7041": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15832, 15847 ], "op": "SWAP5", "path": "84" }, "7042": { "fn": "PortfolioHandler.buildPortfolioState", "offset": [ 15438, 15915 ], "op": "SWAP4", "path": "84" }, "7043": { "op": "POP" }, "7044": { "op": "POP" }, "7045": { "op": "POP" }, "7046": { "op": "POP" }, "7047": { "fn": "PortfolioHandler.buildPortfolioState", "jump": "o", "offset": [ 15438, 15915 ], "op": "JUMP", "path": "84" }, "7048": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 658, 1160 ], "op": "JUMPDEST", "path": "84" }, "7049": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 804, 813 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "7051": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "JUMPDEST", "path": "84" }, "7052": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 823, 829 ], "op": "DUP2", "path": "84" }, "7053": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 823, 836 ], "op": "MLOAD", "path": "84" }, "7054": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 819, 820 ], "op": "DUP2", "path": "84" }, "7055": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 819, 836 ], "op": "LT", "path": "84" }, "7056": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "ISZERO", "path": "84" }, "7057": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "PUSH2", "path": "84", "value": "0x130C" }, "7060": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "JUMPI", "path": "84" }, "7061": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 857, 884 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "7063": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 893 ], "op": "DUP3", "path": "84" }, "7064": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 894, 895 ], "op": "DUP3", "path": "84" }, "7065": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "DUP2", "path": "84" }, "7066": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "MLOAD", "path": "84" }, "7067": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "DUP2", "path": "84" }, "7068": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "LT", "path": "84" }, "7069": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "PUSH2", "path": "84", "value": "0x1BA2" }, "7072": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "JUMPI", "path": "84" }, "7073": { "dev": "Index out of range", "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "INVALID", "path": "84" }, "7074": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "JUMPDEST", "path": "84" }, "7075": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "7077": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "MUL", "path": "84" }, "7078": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "7080": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "ADD", "path": "84" }, "7081": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "ADD", "path": "84" }, "7082": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 887, 896 ], "op": "MLOAD", "path": "84" }, "7083": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 857, 896 ], "op": "SWAP1", "path": "84" }, "7084": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 857, 896 ], "op": "POP", "path": "84" }, "7085": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 914, 919 ], "op": "DUP1", "path": "84" }, "7086": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 914, 928 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "7088": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 914, 928 ], "op": "ADD", "path": "84" }, "7089": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 914, 928 ], "op": "MLOAD", "path": "84" }, "7090": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 932, 933 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "7092": { "branch": 389, "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 914, 933 ], "op": "EQ", "path": "84" }, "7093": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 910, 943 ], "op": "ISZERO", "path": "84" }, "7094": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 910, 943 ], "op": "PUSH2", "path": "84", "value": "0x1BBF" }, "7097": { "branch": 389, "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 910, 943 ], "op": "JUMPI", "path": "84" }, "7098": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 935, 943 ], "op": "POP", "path": "84", "statement": 126 }, "7099": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 935, 943 ], "op": "PUSH2", "path": "84", "value": "0x1BDE" }, "7102": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 935, 943 ], "op": "JUMP", "path": "84" }, "7103": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 910, 943 ], "op": "JUMPDEST", "path": "84" }, "7104": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 958, 1143 ], "op": "PUSH2", "path": "84", "statement": 127, "value": "0x1BDC" }, "7107": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 984, 998 ], "op": "DUP5", "path": "84" }, "7108": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1016, 1021 ], "op": "DUP3", "path": "84" }, "7109": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1016, 1032 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "7111": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1016, 1032 ], "op": "ADD", "path": "84" }, "7112": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1016, 1032 ], "op": "MLOAD", "path": "84" }, "7113": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1050, 1055 ], "op": "DUP4", "path": "84" }, "7114": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1050, 1064 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "7116": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1050, 1064 ], "op": "ADD", "path": "84" }, "7117": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1050, 1064 ], "op": "MLOAD", "path": "84" }, "7118": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1082, 1087 ], "op": "DUP5", "path": "84" }, "7119": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1082, 1097 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "7121": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1082, 1097 ], "op": "ADD", "path": "84" }, "7122": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1082, 1097 ], "op": "MLOAD", "path": "84" }, "7123": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1115, 1120 ], "op": "DUP6", "path": "84" }, "7124": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1115, 1129 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "7126": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1115, 1129 ], "op": "ADD", "path": "84" }, "7127": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 1115, 1129 ], "op": "MLOAD", "path": "84" }, "7128": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 958, 966 ], "op": "PUSH2", "path": "84", "value": "0x2087" }, "7131": { "fn": "PortfolioHandler.addMultipleAssets", "jump": "i", "offset": [ 958, 1143 ], "op": "JUMP", "path": "84" }, "7132": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 958, 1143 ], "op": "JUMPDEST", "path": "84" }, "7133": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "POP", "path": "84" }, "7134": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "JUMPDEST", "path": "84" }, "7135": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 838, 841 ], "op": "PUSH1", "path": "84", "statement": 128, "value": "0x1" }, "7137": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 838, 841 ], "op": "ADD", "path": "84" }, "7138": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "PUSH2", "path": "84", "value": "0x1B8B" }, "7141": { "fn": "PortfolioHandler.addMultipleAssets", "offset": [ 799, 1154 ], "op": "JUMP", "path": "84" }, "7142": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 9863, 12215 ], "op": "JUMPDEST", "path": "66" }, "7143": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "7145": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "DUP1", "path": "66" }, "7146": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "DUP1", "path": "66" }, "7147": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10240, 10252 ], "op": "DUP1", "path": "66" }, "7148": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10379 ], "op": "PUSH2", "path": "66", "value": "0x1BF5" }, "7151": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10358 ], "op": "DUP7", "path": "66" }, "7152": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10371, 10378 ], "op": "DUP9", "path": "66" }, "7153": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10370 ], "op": "PUSH2", "path": "66", "value": "0x218C" }, "7156": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 10344, 10379 ], "op": "JUMP", "path": "66" }, "7157": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10344, 10379 ], "op": "JUMPDEST", "path": "66" }, "7158": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "PUSH5", "path": "66", "statement": 129, "value": "0xFFFFFFFFFF" }, "7164": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "DUP2", "path": "66" }, "7165": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "AND", "path": "66" }, "7166": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "DUP13", "path": "66" }, "7167": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10435 ], "op": "MSTORE", "path": "66" }, "7168": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP3", "path": "66" }, "7169": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP7", "path": "66" }, "7170": { "op": "POP" }, "7171": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP1", "path": "66" }, "7172": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP5", "path": "66" }, "7173": { "op": "POP" }, "7174": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP3", "path": "66" }, "7175": { "op": "POP" }, "7176": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10239, 10379 ], "op": "SWAP1", "path": "66" }, "7177": { "op": "POP" }, "7178": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10485 ], "op": "PUSH2", "path": "66", "statement": 130, "value": "0x1C12" }, "7181": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10389, 10403 ], "op": "DUP9", "path": "66" }, "7182": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10469 ], "op": "PUSH2", "path": "66", "value": "0x1683" }, "7185": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 10453, 10485 ], "op": "JUMP", "path": "66" }, "7186": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10485 ], "op": "JUMPDEST", "path": "66" }, "7187": { "branch": 325, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10453, 10494 ], "op": "ISZERO", "path": "66" }, "7188": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "PUSH2", "path": "66", "value": "0x1C1C" }, "7191": { "branch": 325, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "JUMPI", "path": "66" }, "7192": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "7194": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "DUP1", "path": "66" }, "7195": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "REVERT", "path": "66" }, "7196": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10445, 10495 ], "op": "JUMPDEST", "path": "66" }, "7197": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "PUSH1", "path": "66", "statement": 131, "value": "0xFF" }, "7199": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "DUP3", "path": "66" }, "7200": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "AND", "path": "66" }, "7201": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10572 ], "op": "PUSH1", "path": "66", "value": "0x40" }, "7203": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10572 ], "op": "DUP10", "path": "66" }, "7204": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10572 ], "op": "ADD", "path": "66" }, "7205": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10541, 10591 ], "op": "MSTORE", "path": "66" }, "7206": { "branch": 326, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10772, 10785 ], "op": "DUP5", "path": "66" }, "7207": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10767, 10908 ], "op": "PUSH2", "path": "66", "value": "0x1C3B" }, "7210": { "branch": 326, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10767, 10908 ], "op": "JUMPI", "path": "66" }, "7211": { "offset": [ 2023, 2024 ], "op": "PUSH1", "path": "60", "value": "0x7" }, "7213": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "PUSH1", "path": "66", "statement": 132, "value": "0xFF" }, "7215": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "DUP4", "path": "66" }, "7216": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "AND", "path": "66" }, "7217": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "GT", "path": "66" }, "7218": { "branch": 327, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10809, 10869 ], "op": "ISZERO", "path": "66" }, "7219": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "PUSH2", "path": "66", "value": "0x1C3B" }, "7222": { "branch": 327, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "JUMPI", "path": "66" }, "7223": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "7225": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "DUP1", "path": "66" }, "7226": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "REVERT", "path": "66" }, "7227": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 10801, 10870 ], "op": "JUMPDEST", "path": "66" }, "7228": { "branch": 328, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11059, 11066 ], "op": "DUP4", "path": "66" }, "7229": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "ISZERO", "path": "66" }, "7230": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "PUSH2", "path": "66", "value": "0x1C5E" }, "7233": { "branch": 328, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMPI", "path": "66" }, "7234": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "PUSH1", "path": "66", "statement": 133, "value": "0x20" }, "7236": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "DUP9", "path": "66" }, "7237": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "ADD", "path": "66" }, "7238": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "DUP1", "path": "66" }, "7239": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11129 ], "op": "MLOAD", "path": "66" }, "7240": { "op": "PUSH1", "value": "0x1" }, "7242": { "op": "PUSH1", "value": "0xF8" }, "7244": { "op": "SHL" }, "7245": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11107, 11156 ], "op": "OR", "path": "66" }, "7246": { "op": "PUSH1", "value": "0x1" }, "7248": { "op": "PUSH1", "value": "0x1" }, "7250": { "op": "PUSH1", "value": "0xF8" }, "7252": { "op": "SHL" }, "7253": { "op": "SUB" }, "7254": { "op": "NOT" }, "7255": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11082, 11156 ], "op": "AND", "path": "66" }, "7256": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11082, 11156 ], "op": "SWAP1", "path": "66" }, "7257": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11082, 11156 ], "op": "MSTORE", "path": "66" }, "7258": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "PUSH2", "path": "66", "value": "0x1C6D" }, "7261": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMP", "path": "66" }, "7262": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMPDEST", "path": "66" }, "7263": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "PUSH1", "path": "66", "statement": 134, "value": "0x20" }, "7265": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "DUP9", "path": "66" }, "7266": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "ADD", "path": "66" }, "7267": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "DUP1", "path": "66" }, "7268": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11257, 11279 ], "op": "MLOAD", "path": "66" }, "7269": { "op": "PUSH1", "value": "0x7F" }, "7271": { "op": "PUSH1", "value": "0xF9" }, "7273": { "op": "SHL" }, "7274": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11232, 11307 ], "op": "AND", "path": "66" }, "7275": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11232, 11307 ], "op": "SWAP1", "path": "66" }, "7276": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11232, 11307 ], "op": "MSTORE", "path": "66" }, "7277": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11055, 11318 ], "op": "JUMPDEST", "path": "66" }, "7278": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11460, 11519 ], "op": "PUSH2", "path": "66", "statement": 135, "value": "0x1C7A" }, "7281": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11501 ], "op": "DUP9", "path": "66" }, "7282": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11518 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "7284": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11518 ], "op": "ADD", "path": "66" }, "7285": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11487, 11518 ], "op": "MLOAD", "path": "66" }, "7286": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11460, 11486 ], "op": "PUSH2", "path": "66", "value": "0x23CB" }, "7289": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 11460, 11519 ], "op": "JUMP", "path": "66" }, "7290": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11460, 11519 ], "op": "JUMPDEST", "path": "66" }, "7291": { "op": "PUSH1", "value": "0x1" }, "7293": { "op": "PUSH1", "value": "0x1" }, "7295": { "op": "PUSH1", "value": "0x70" }, "7297": { "op": "SHL" }, "7298": { "op": "SUB" }, "7299": { "op": "NOT" }, "7300": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11519 ], "op": "AND", "path": "66" }, "7301": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11457 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "7303": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11457 ], "op": "DUP10", "path": "66" }, "7304": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11457 ], "op": "ADD", "path": "66" }, "7305": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11426, 11519 ], "op": "MSTORE", "path": "66" }, "7306": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11530, 11550 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "7308": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMPDEST", "path": "66" }, "7309": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11567, 11591 ], "op": "DUP4", "path": "66" }, "7310": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11567, 11591 ], "op": "ISZERO", "path": "66" }, "7311": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "PUSH2", "path": "66", "value": "0x123B" }, "7314": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMPI", "path": "66" }, "7315": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "PUSH1", "path": "66", "value": "0xF0" }, "7317": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "DUP5", "path": "66" }, "7318": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "SWAP1", "path": "66" }, "7319": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11902, 11937 ], "op": "SHR", "path": "66" }, "7320": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11955, 11981 ], "op": "DUP2", "path": "66" }, "7321": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11955, 11981 ], "op": "DUP2", "path": "66" }, "7322": { "branch": 329, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11955, 11981 ], "op": "EQ", "path": "66" }, "7323": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11951, 12098 ], "op": "PUSH2", "path": "66", "value": "0x1CAF" }, "7326": { "branch": 329, "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11951, 12098 ], "op": "JUMPI", "path": "66" }, "7327": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12001, 12083 ], "op": "PUSH2", "path": "66", "statement": 136, "value": "0x1CAF" }, "7330": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12019, 12033 ], "op": "DUP11", "path": "66" }, "7331": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12035, 12045 ], "op": "DUP3", "path": "66" }, "7332": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12047, 12051 ], "op": "PUSH1", "path": "66", "value": "0x1" }, "7334": { "op": "PUSH1", "value": "0x1" }, "7336": { "op": "PUSH1", "value": "0xFF" }, "7338": { "op": "SHL" }, "7339": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12001, 12018 ], "op": "PUSH2", "path": "66", "value": "0x2446" }, "7342": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "jump": "i", "offset": [ 12001, 12083 ], "op": "JUMP", "path": "66" }, "7343": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12001, 12083 ], "op": "JUMPDEST", "path": "66" }, "7344": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12196, 12198 ], "op": "PUSH1", "path": "66", "statement": 137, "value": "0x10" }, "7346": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP5", "path": "66" }, "7347": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP1", "path": "66" }, "7348": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP5", "path": "66" }, "7349": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SHL", "path": "66" }, "7350": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12173, 12198 ], "op": "SWAP4", "path": "66" }, "7351": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 12126, 12136 ], "op": "SWAP1", "path": "66", "statement": 138 }, "7352": { "op": "POP" }, "7353": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "PUSH2", "path": "66", "value": "0x1C8C" }, "7356": { "fn": "AccountContextHandler.storeAssetsAndUpdateContext", "offset": [ 11560, 12209 ], "op": "JUMP", "path": "66" }, "7357": { "fn": "SafeInt256.neg", "offset": [ 1553, 1643 ], "op": "JUMPDEST", "path": "94" }, "7358": { "fn": "SafeInt256.neg", "offset": [ 1599, 1607 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "7360": { "fn": "SafeInt256.neg", "offset": [ 1626, 1636 ], "op": "PUSH2", "path": "94", "statement": 139, "value": "0x30C" }, "7363": { "op": "PUSH1", "value": "0x0" }, "7365": { "op": "NOT" }, "7366": { "fn": "SafeInt256.neg", "offset": [ 1634, 1635 ], "op": "DUP4", "path": "94" }, "7367": { "fn": "SafeInt256.neg", "offset": [ 1626, 1629 ], "op": "PUSH2", "path": "94", "value": "0x2645" }, "7370": { "fn": "SafeInt256.neg", "jump": "i", "offset": [ 1626, 1636 ], "op": "JUMP", "path": "94" }, "7371": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11271, 11489 ], "op": "JUMPDEST", "path": "77" }, "7372": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11348, 11360 ], "op": "PUSH1", "path": "77", "value": "0x0" }, "7374": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11372, 11413 ], "op": "DUP1", "path": "77" }, "7375": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11416, 11448 ], "op": "PUSH2", "path": "77", "value": "0x1CD6" }, "7378": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11416, 11446 ], "op": "PUSH2", "path": "77", "value": "0x2693" }, "7381": { "fn": "CashGroup._getCashGroupStorageBytes", "jump": "i", "offset": [ 11416, 11448 ], "op": "JUMP", "path": "77" }, "7382": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11416, 11448 ], "op": "JUMPDEST", "path": "77" }, "7383": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "PUSH1", "path": "77", "statement": 140, "value": "0x0" }, "7385": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "SWAP4", "path": "77" }, "7386": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "DUP5", "path": "77" }, "7387": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "MSTORE", "path": "77" }, "7388": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "PUSH1", "path": "77", "value": "0x20" }, "7390": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "MSTORE", "path": "77" }, "7391": { "op": "POP" }, "7392": { "op": "POP" }, "7393": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "PUSH1", "path": "77", "value": "0x40" }, "7395": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "SWAP1", "path": "77" }, "7396": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "KECCAK256", "path": "77" }, "7397": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "SLOAD", "path": "77" }, "7398": { "fn": "CashGroup._getCashGroupStorageBytes", "offset": [ 11465, 11482 ], "op": "SWAP1", "path": "77" }, "7399": { "fn": "CashGroup._getCashGroupStorageBytes", "jump": "o", "offset": [ 11271, 11489 ], "op": "JUMP", "path": "77" }, "7400": { "fn": "DateTime.getReferenceTime", "offset": [ 330, 523 ], "op": "JUMPDEST", "path": "78" }, "7401": { "fn": "DateTime.getReferenceTime", "offset": [ 398, 405 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7403": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "7407": { "fn": "DateTime.getReferenceTime", "offset": [ 425, 455 ], "op": "DUP3", "path": "78", "statement": 141 }, "7408": { "fn": "DateTime.getReferenceTime", "offset": [ 425, 455 ], "op": "LT", "path": "78" }, "7409": { "branch": 372, "fn": "DateTime.getReferenceTime", "offset": [ 425, 455 ], "op": "ISZERO", "path": "78" }, "7410": { "fn": "DateTime.getReferenceTime", "offset": [ 417, 456 ], "op": "PUSH2", "path": "78", "value": "0x1CFA" }, "7413": { "branch": 372, "fn": "DateTime.getReferenceTime", "offset": [ 417, 456 ], "op": "JUMPI", "path": "78" }, "7414": { "fn": "DateTime.getReferenceTime", "offset": [ 417, 456 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7416": { "fn": "DateTime.getReferenceTime", "offset": [ 417, 456 ], "op": "DUP1", "path": "78" }, "7417": { "fn": "DateTime.getReferenceTime", "offset": [ 417, 456 ], "op": "REVERT", "path": "78" }, "7418": { "fn": "DateTime.getReferenceTime", "offset": [ 417, 456 ], "op": "JUMPDEST", "path": "78" }, "7419": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "7423": { "fn": "DateTime.getReferenceTime", "offset": [ 486, 495 ], "op": "DUP3", "path": "78", "statement": 142 }, "7424": { "fn": "DateTime.getReferenceTime", "offset": [ 486, 515 ], "op": "PUSH2", "path": "78", "value": "0x1A25" }, "7427": { "fn": "DateTime.getReferenceTime", "offset": [ 486, 515 ], "op": "JUMP", "path": "78" }, "7428": { "fn": "DateTime.getTradedMarket", "offset": [ 928, 1398 ], "op": "JUMPDEST", "path": "78" }, "7429": { "fn": "DateTime.getTradedMarket", "offset": [ 991, 998 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7431": { "fn": "DateTime.getTradedMarket", "offset": [ 1014, 1019 ], "op": "DUP2", "path": "78" }, "7432": { "fn": "DateTime.getTradedMarket", "offset": [ 1023, 1024 ], "op": "PUSH1", "path": "78", "value": "0x1" }, "7434": { "branch": 373, "fn": "DateTime.getTradedMarket", "offset": [ 1014, 1024 ], "op": "EQ", "path": "78" }, "7435": { "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "ISZERO", "path": "78" }, "7436": { "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "PUSH2", "path": "78", "value": "0x1D19" }, "7439": { "branch": 373, "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "JUMPI", "path": "78" }, "7440": { "op": "POP" }, "7441": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "7445": { "fn": "DateTime.getTradedMarket", "offset": [ 1026, 1050 ], "op": "PUSH2", "path": "78", "statement": 143, "value": "0x327" }, "7448": { "fn": "DateTime.getTradedMarket", "offset": [ 1026, 1050 ], "op": "JUMP", "path": "78" }, "7449": { "fn": "DateTime.getTradedMarket", "offset": [ 1010, 1050 ], "op": "JUMPDEST", "path": "78" }, "7450": { "fn": "DateTime.getTradedMarket", "offset": [ 1064, 1069 ], "op": "DUP2", "path": "78" }, "7451": { "fn": "DateTime.getTradedMarket", "offset": [ 1073, 1074 ], "op": "PUSH1", "path": "78", "value": "0x2" }, "7453": { "branch": 374, "fn": "DateTime.getTradedMarket", "offset": [ 1064, 1074 ], "op": "EQ", "path": "78" }, "7454": { "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "ISZERO", "path": "78" }, "7455": { "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "PUSH2", "path": "78", "value": "0x1D2C" }, "7458": { "branch": 374, "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "JUMPI", "path": "78" }, "7459": { "op": "POP" }, "7460": { "fn": "DateTime.getTradedMarket", "offset": [ 1083, 1104 ], "op": "PUSH3", "path": "78", "statement": 144, "value": "0xED4E00" }, "7464": { "fn": "DateTime.getTradedMarket", "offset": [ 1076, 1104 ], "op": "PUSH2", "path": "78", "value": "0x327" }, "7467": { "fn": "DateTime.getTradedMarket", "offset": [ 1076, 1104 ], "op": "JUMP", "path": "78" }, "7468": { "fn": "DateTime.getTradedMarket", "offset": [ 1060, 1104 ], "op": "JUMPDEST", "path": "78" }, "7469": { "fn": "DateTime.getTradedMarket", "offset": [ 1118, 1123 ], "op": "DUP2", "path": "78" }, "7470": { "fn": "DateTime.getTradedMarket", "offset": [ 1127, 1128 ], "op": "PUSH1", "path": "78", "value": "0x3" }, "7472": { "branch": 375, "fn": "DateTime.getTradedMarket", "offset": [ 1118, 1128 ], "op": "EQ", "path": "78" }, "7473": { "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "ISZERO", "path": "78" }, "7474": { "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "PUSH2", "path": "78", "value": "0x1D40" }, "7477": { "branch": 375, "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "JUMPI", "path": "78" }, "7478": { "op": "POP" }, "7479": { "offset": [ 2665, 2676 ], "op": "PUSH4", "path": "60", "value": "0x1DA9C00" }, "7484": { "fn": "DateTime.getTradedMarket", "offset": [ 1130, 1151 ], "op": "PUSH2", "path": "78", "statement": 145, "value": "0x327" }, "7487": { "fn": "DateTime.getTradedMarket", "offset": [ 1130, 1151 ], "op": "JUMP", "path": "78" }, "7488": { "fn": "DateTime.getTradedMarket", "offset": [ 1114, 1151 ], "op": "JUMPDEST", "path": "78" }, "7489": { "fn": "DateTime.getTradedMarket", "offset": [ 1165, 1170 ], "op": "DUP2", "path": "78" }, "7490": { "fn": "DateTime.getTradedMarket", "offset": [ 1174, 1175 ], "op": "PUSH1", "path": "78", "value": "0x4" }, "7492": { "branch": 376, "fn": "DateTime.getTradedMarket", "offset": [ 1165, 1175 ], "op": "EQ", "path": "78" }, "7493": { "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "ISZERO", "path": "78" }, "7494": { "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "PUSH2", "path": "78", "value": "0x1D54" }, "7497": { "branch": 376, "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "JUMPI", "path": "78" }, "7498": { "op": "POP" }, "7499": { "fn": "DateTime.getTradedMarket", "offset": [ 1184, 1202 ], "op": "PUSH4", "path": "78", "statement": 146, "value": "0x3B53800" }, "7504": { "fn": "DateTime.getTradedMarket", "offset": [ 1177, 1202 ], "op": "PUSH2", "path": "78", "value": "0x327" }, "7507": { "fn": "DateTime.getTradedMarket", "offset": [ 1177, 1202 ], "op": "JUMP", "path": "78" }, "7508": { "fn": "DateTime.getTradedMarket", "offset": [ 1161, 1202 ], "op": "JUMPDEST", "path": "78" }, "7509": { "fn": "DateTime.getTradedMarket", "offset": [ 1216, 1221 ], "op": "DUP2", "path": "78" }, "7510": { "fn": "DateTime.getTradedMarket", "offset": [ 1225, 1226 ], "op": "PUSH1", "path": "78", "value": "0x5" }, "7512": { "branch": 377, "fn": "DateTime.getTradedMarket", "offset": [ 1216, 1226 ], "op": "EQ", "path": "78" }, "7513": { "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "ISZERO", "path": "78" }, "7514": { "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "PUSH2", "path": "78", "value": "0x1D68" }, "7517": { "branch": 377, "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "JUMPI", "path": "78" }, "7518": { "op": "POP" }, "7519": { "fn": "DateTime.getTradedMarket", "offset": [ 1235, 1253 ], "op": "PUSH4", "path": "78", "statement": 147, "value": "0x9450C00" }, "7524": { "fn": "DateTime.getTradedMarket", "offset": [ 1228, 1253 ], "op": "PUSH2", "path": "78", "value": "0x327" }, "7527": { "fn": "DateTime.getTradedMarket", "offset": [ 1228, 1253 ], "op": "JUMP", "path": "78" }, "7528": { "fn": "DateTime.getTradedMarket", "offset": [ 1212, 1253 ], "op": "JUMPDEST", "path": "78" }, "7529": { "fn": "DateTime.getTradedMarket", "offset": [ 1267, 1272 ], "op": "DUP2", "path": "78" }, "7530": { "fn": "DateTime.getTradedMarket", "offset": [ 1276, 1277 ], "op": "PUSH1", "path": "78", "value": "0x6" }, "7532": { "branch": 378, "fn": "DateTime.getTradedMarket", "offset": [ 1267, 1277 ], "op": "EQ", "path": "78" }, "7533": { "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "ISZERO", "path": "78" }, "7534": { "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "PUSH2", "path": "78", "value": "0x1D7C" }, "7537": { "branch": 378, "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "JUMPI", "path": "78" }, "7538": { "op": "POP" }, "7539": { "fn": "DateTime.getTradedMarket", "offset": [ 1286, 1305 ], "op": "PUSH4", "path": "78", "statement": 148, "value": "0x128A1800" }, "7544": { "fn": "DateTime.getTradedMarket", "offset": [ 1279, 1305 ], "op": "PUSH2", "path": "78", "value": "0x327" }, "7547": { "fn": "DateTime.getTradedMarket", "offset": [ 1279, 1305 ], "op": "JUMP", "path": "78" }, "7548": { "fn": "DateTime.getTradedMarket", "offset": [ 1263, 1305 ], "op": "JUMPDEST", "path": "78" }, "7549": { "fn": "DateTime.getTradedMarket", "offset": [ 1319, 1324 ], "op": "DUP2", "path": "78" }, "7550": { "fn": "DateTime.getTradedMarket", "offset": [ 1328, 1329 ], "op": "PUSH1", "path": "78", "value": "0x7" }, "7552": { "branch": 379, "fn": "DateTime.getTradedMarket", "offset": [ 1319, 1329 ], "op": "EQ", "path": "78" }, "7553": { "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "ISZERO", "path": "78" }, "7554": { "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "PUSH2", "path": "78", "value": "0x1D90" }, "7557": { "branch": 379, "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "JUMPI", "path": "78" }, "7558": { "op": "POP" }, "7559": { "fn": "DateTime.getTradedMarket", "offset": [ 1338, 1357 ], "op": "PUSH4", "path": "78", "statement": 149, "value": "0x25143000" }, "7564": { "fn": "DateTime.getTradedMarket", "offset": [ 1331, 1357 ], "op": "PUSH2", "path": "78", "value": "0x327" }, "7567": { "fn": "DateTime.getTradedMarket", "offset": [ 1331, 1357 ], "op": "JUMP", "path": "78" }, "7568": { "fn": "DateTime.getTradedMarket", "offset": [ 1315, 1357 ], "op": "JUMPDEST", "path": "78" }, "7569": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH1", "path": "78", "statement": 150, "value": "0x40" }, "7571": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "MLOAD", "path": "78" }, "7572": { "op": "PUSH3", "value": "0x461BCD" }, "7576": { "op": "PUSH1", "value": "0xE5" }, "7578": { "op": "SHL" }, "7579": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "DUP2", "path": "78" }, "7580": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "MSTORE", "path": "78" }, "7581": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH1", "path": "78", "value": "0x4" }, "7583": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "ADD", "path": "78" }, "7584": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH2", "path": "78", "value": "0x3D8" }, "7587": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "SWAP1", "path": "78" }, "7588": { "fn": "DateTime.getTradedMarket", "offset": [ 1368, 1391 ], "op": "PUSH2", "path": "78", "value": "0x36E6" }, "7591": { "fn": "DateTime.getTradedMarket", "jump": "i", "offset": [ 1368, 1391 ], "op": "JUMP", "path": "78" }, "7592": { "fn": "SafeMath.add", "offset": [ 2682, 2857 ], "op": "JUMPDEST", "path": "6" }, "7593": { "fn": "SafeMath.add", "offset": [ 2740, 2747 ], "op": "PUSH1", "path": "6", "value": "0x0" }, "7595": { "fn": "SafeMath.add", "offset": [ 2771, 2776 ], "op": "DUP3", "path": "6" }, "7596": { "fn": "SafeMath.add", "offset": [ 2771, 2776 ], "op": "DUP3", "path": "6" }, "7597": { "fn": "SafeMath.add", "offset": [ 2771, 2776 ], "op": "ADD", "path": "6" }, "7598": { "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "DUP4", "path": "6", "statement": 151 }, "7599": { "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "DUP2", "path": "6" }, "7600": { "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "LT", "path": "6" }, "7601": { "branch": 444, "fn": "SafeMath.add", "offset": [ 2794, 2800 ], "op": "ISZERO", "path": "6" }, "7602": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH2", "path": "6", "value": "0x653" }, "7605": { "branch": 444, "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "JUMPI", "path": "6" }, "7606": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "7608": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP1", "path": "6" }, "7609": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MLOAD", "path": "6" }, "7610": { "op": "PUSH3", "value": "0x461BCD" }, "7614": { "op": "PUSH1", "value": "0xE5" }, "7616": { "op": "SHL" }, "7617": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP2", "path": "6" }, "7618": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "7619": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "7621": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x4" }, "7623": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP3", "path": "6" }, "7624": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "7625": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "7626": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x1B" }, "7628": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x24" }, "7630": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP3", "path": "6" }, "7631": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "7632": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "7633": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH32", "path": "6", "value": "0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000" }, "7666": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x44" }, "7668": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP3", "path": "6" }, "7669": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "7670": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MSTORE", "path": "6" }, "7671": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "7672": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "MLOAD", "path": "6" }, "7673": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "7674": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "DUP2", "path": "6" }, "7675": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "7676": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SUB", "path": "6" }, "7677": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "PUSH1", "path": "6", "value": "0x64" }, "7679": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "ADD", "path": "6" }, "7680": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "SWAP1", "path": "6" }, "7681": { "fn": "SafeMath.add", "offset": [ 2786, 2832 ], "op": "REVERT", "path": "6" }, "7682": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "JUMPDEST", "path": "78" }, "7683": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4140, 4147 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7685": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4149, 4153 ], "op": "DUP1", "path": "78" }, "7686": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4169, 4190 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7688": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4193, 4215 ], "op": "PUSH2", "path": "78", "value": "0x1E10" }, "7691": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4205, 4214 ], "op": "DUP6", "path": "78" }, "7692": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4193, 4204 ], "op": "PUSH2", "path": "78", "value": "0x1A0D" }, "7695": { "fn": "DateTime.getBitNumFromMaturity", "jump": "i", "offset": [ 4193, 4215 ], "op": "JUMP", "path": "78" }, "7696": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4193, 4215 ], "op": "JUMPDEST", "path": "78" }, "7697": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4169, 4215 ], "op": "SWAP1", "path": "78" }, "7698": { "op": "POP" }, "7699": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "7703": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4283, 4291 ], "op": "DUP5", "path": "78" }, "7704": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4283, 4307 ], "op": "MOD", "path": "78" }, "7705": { "branch": 380, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4283, 4312 ], "op": "ISZERO", "path": "78" }, "7706": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4279, 4331 ], "op": "PUSH2", "path": "78", "value": "0x1E2A" }, "7709": { "branch": 380, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4279, 4331 ], "op": "JUMPI", "path": "78" }, "7710": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4322, 4323 ], "op": "PUSH1", "path": "78", "statement": 152, "value": "0x0" }, "7712": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4325, 4330 ], "op": "DUP1", "path": "78" }, "7713": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "SWAP3", "path": "78" }, "7714": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "POP", "path": "78" }, "7715": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "SWAP3", "path": "78" }, "7716": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "POP", "path": "78" }, "7717": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "POP", "path": "78" }, "7718": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "PUSH2", "path": "78", "value": "0x1F06" }, "7721": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4314, 4331 ], "op": "JUMP", "path": "78" }, "7722": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4279, 4331 ], "op": "JUMPDEST", "path": "78" }, "7723": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4404, 4412 ], "op": "DUP4", "path": "78" }, "7724": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4387, 4400 ], "op": "DUP2", "path": "78" }, "7725": { "branch": 381, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4387, 4412 ], "op": "LT", "path": "78" }, "7726": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4383, 4431 ], "op": "PUSH2", "path": "78", "value": "0x1E3E" }, "7729": { "branch": 381, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4383, 4431 ], "op": "JUMPI", "path": "78" }, "7730": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4422, 4423 ], "op": "PUSH1", "path": "78", "statement": 153, "value": "0x0" }, "7732": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4425, 4430 ], "op": "DUP1", "path": "78" }, "7733": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "SWAP3", "path": "78" }, "7734": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "POP", "path": "78" }, "7735": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "SWAP3", "path": "78" }, "7736": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "POP", "path": "78" }, "7737": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "POP", "path": "78" }, "7738": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "PUSH2", "path": "78", "value": "0x1F06" }, "7741": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4414, 4431 ], "op": "JUMP", "path": "78" }, "7742": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4383, 4431 ], "op": "JUMPDEST", "path": "78" }, "7743": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "7747": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4556, 4580 ], "op": "DUP2", "path": "78" }, "7748": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4556, 4580 ], "op": "DUP6", "path": "78" }, "7749": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4556, 4580 ], "op": "SUB", "path": "78" }, "7750": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4555, 4597 ], "op": "DIV", "path": "78" }, "7751": { "offset": [ 2984, 2986 ], "op": "PUSH1", "path": "60", "value": "0x5A" }, "7753": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4680, 4718 ], "op": "DUP2", "path": "78" }, "7754": { "branch": 382, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4680, 4718 ], "op": "GT", "path": "78" }, "7755": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4676, 6563 ], "op": "PUSH2", "path": "78", "value": "0x1E5B" }, "7758": { "branch": 382, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4676, 6563 ], "op": "JUMPI", "path": "78" }, "7759": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4742, 4752 ], "op": "SWAP3", "path": "78", "statement": 154 }, "7760": { "op": "POP" }, "7761": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4754, 4758 ], "op": "PUSH1", "path": "78", "value": "0x1" }, "7763": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4754, 4758 ], "op": "SWAP2", "path": "78" }, "7764": { "op": "POP" }, "7765": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4734, 4759 ], "op": "PUSH2", "path": "78", "value": "0x1F06" }, "7768": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4734, 4759 ], "op": "SWAP1", "path": "78" }, "7769": { "op": "POP" }, "7770": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4734, 4759 ], "op": "JUMP", "path": "78" }, "7771": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4676, 6563 ], "op": "JUMPDEST", "path": "78" }, "7772": { "offset": [ 3036, 3039 ], "op": "PUSH2", "path": "60", "value": "0x168" }, "7775": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4780, 4790 ], "op": "DUP2", "path": "78" }, "7776": { "branch": 383, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4780, 4819 ], "op": "GT", "path": "78" }, "7777": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4776, 6563 ], "op": "PUSH2", "path": "78", "value": "0x1E9A" }, "7780": { "branch": 383, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4776, 6563 ], "op": "JUMPI", "path": "78" }, "7781": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5092, 5112 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7783": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "7787": { "offset": [ 2520, 2527 ], "op": "PUSH3", "path": "60", "value": "0x7E900" }, "7791": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5212, 5242 ], "op": "DUP5", "path": "78" }, "7792": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5212, 5242 ], "op": "MOD", "path": "78" }, "7793": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5211, 5279 ], "op": "DIV", "path": "78" }, "7794": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5131, 5279 ], "op": "DUP3", "path": "78" }, "7795": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5131, 5279 ], "op": "ADD", "path": "78" }, "7796": { "op": "PUSH1", "value": "0x59" }, "7798": { "op": "NOT" }, "7799": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5131, 5279 ], "op": "ADD", "path": "78" }, "7800": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5131, 5279 ], "op": "SWAP1", "path": "78" }, "7801": { "op": "POP" }, "7802": { "offset": [ 2776, 2777 ], "op": "PUSH1", "path": "60", "value": "0x6" }, "7804": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5131, 5279 ], "op": "DUP2", "path": "78" }, "7805": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5528, 5565 ], "op": "DIV", "path": "78", "statement": 155 }, "7806": { "offset": [ 3257, 3259 ], "op": "PUSH1", "path": "60", "value": "0x5A" }, "7808": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5500, 5565 ], "op": "ADD", "path": "78" }, "7809": { "offset": [ 2776, 2777 ], "op": "PUSH1", "path": "60", "value": "0x6" }, "7811": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5596 ], "op": "DUP3", "path": "78" }, "7812": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5621 ], "op": "DUP2", "path": "78" }, "7813": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5621 ], "op": "PUSH2", "path": "78", "value": "0x1E8A" }, "7816": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5621 ], "op": "JUMPI", "path": "78" }, "7817": { "dev": "Modulus by zero", "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5621 ], "op": "INVALID", "path": "78" }, "7818": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5621 ], "op": "JUMPDEST", "path": "78" }, "7819": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5584, 5621 ], "op": "MOD", "path": "78" }, "7820": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5626, 5627 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7822": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5583, 5627 ], "op": "EQ", "path": "78" }, "7823": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "SWAP5", "path": "78" }, "7824": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "POP", "path": "78" }, "7825": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "SWAP5", "path": "78" }, "7826": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "POP", "path": "78" }, "7827": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "POP", "path": "78" }, "7828": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "POP", "path": "78" }, "7829": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "POP", "path": "78" }, "7830": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "PUSH2", "path": "78", "value": "0x1F06" }, "7833": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5306, 5641 ], "op": "JUMP", "path": "78" }, "7834": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4776, 6563 ], "op": "JUMPDEST", "path": "78" }, "7835": { "offset": [ 3090, 3094 ], "op": "PUSH2", "path": "60", "value": "0x870" }, "7838": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5662, 5672 ], "op": "DUP2", "path": "78" }, "7839": { "branch": 384, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5662, 5702 ], "op": "GT", "path": "78" }, "7840": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5658, 6563 ], "op": "PUSH2", "path": "78", "value": "0x1ECA" }, "7843": { "branch": 384, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5658, 6563 ], "op": "JUMPI", "path": "78" }, "7844": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5718, 5738 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7846": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "7850": { "offset": [ 2567, 2575 ], "op": "PUSH3", "path": "60", "value": "0x278D00" }, "7854": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5839, 5870 ], "op": "DUP5", "path": "78" }, "7855": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5839, 5870 ], "op": "MOD", "path": "78" }, "7856": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5838, 5907 ], "op": "DIV", "path": "78" }, "7857": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5757, 5907 ], "op": "DUP3", "path": "78" }, "7858": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5757, 5907 ], "op": "ADD", "path": "78" }, "7859": { "op": "PUSH2", "value": "0x167" }, "7862": { "op": "NOT" }, "7863": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5757, 5907 ], "op": "ADD", "path": "78" }, "7864": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5757, 5907 ], "op": "SWAP1", "path": "78" }, "7865": { "op": "POP" }, "7866": { "offset": [ 2825, 2827 ], "op": "PUSH1", "path": "60", "value": "0x1E" }, "7868": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5757, 5907 ], "op": "DUP2", "path": "78" }, "7869": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5976, 6014 ], "op": "DIV", "path": "78", "statement": 156 }, "7870": { "offset": [ 3310, 3313 ], "op": "PUSH1", "path": "60", "value": "0x87" }, "7872": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5947, 6014 ], "op": "ADD", "path": "78" }, "7873": { "offset": [ 2825, 2827 ], "op": "PUSH1", "path": "60", "value": "0x1E" }, "7875": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6033, 6045 ], "op": "DUP3", "path": "78" }, "7876": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6033, 6071 ], "op": "DUP2", "path": "78" }, "7877": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6033, 6071 ], "op": "PUSH2", "path": "78", "value": "0x1E8A" }, "7880": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6033, 6071 ], "op": "JUMPI", "path": "78" }, "7881": { "dev": "Modulus by zero", "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6033, 6071 ], "op": "INVALID", "path": "78" }, "7882": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 5658, 6563 ], "op": "JUMPDEST", "path": "78" }, "7883": { "offset": [ 3147, 3151 ], "op": "PUSH2", "path": "60", "value": "0x1DE2" }, "7886": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6112, 6122 ], "op": "DUP2", "path": "78" }, "7887": { "branch": 385, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6112, 6154 ], "op": "GT", "path": "78" }, "7888": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6108, 6563 ], "op": "PUSH2", "path": "78", "value": "0x1EFA" }, "7891": { "branch": 385, "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6108, 6563 ], "op": "JUMPI", "path": "78" }, "7892": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6170, 6190 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7894": { "offset": [ 2399, 2404 ], "op": "PUSH3", "path": "60", "value": "0x15180" }, "7898": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "7902": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6292, 6325 ], "op": "DUP5", "path": "78" }, "7903": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6292, 6325 ], "op": "MOD", "path": "78" }, "7904": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6291, 6362 ], "op": "DIV", "path": "78" }, "7905": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6209, 6362 ], "op": "DUP3", "path": "78" }, "7906": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6209, 6362 ], "op": "ADD", "path": "78" }, "7907": { "op": "PUSH2", "value": "0x86F" }, "7910": { "op": "NOT" }, "7911": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6209, 6362 ], "op": "ADD", "path": "78" }, "7912": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6209, 6362 ], "op": "SWAP1", "path": "78" }, "7913": { "op": "POP" }, "7914": { "offset": [ 2877, 2879 ], "op": "PUSH1", "path": "60", "value": "0x5A" }, "7916": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6209, 6362 ], "op": "DUP2", "path": "78" }, "7917": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6433, 6473 ], "op": "DIV", "path": "78", "statement": 157 }, "7918": { "offset": [ 3366, 3369 ], "op": "PUSH1", "path": "60", "value": "0xC3" }, "7920": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6402, 6473 ], "op": "ADD", "path": "78" }, "7921": { "offset": [ 2877, 2879 ], "op": "PUSH1", "path": "60", "value": "0x5A" }, "7923": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6492, 6504 ], "op": "DUP3", "path": "78" }, "7924": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6492, 6532 ], "op": "DUP2", "path": "78" }, "7925": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6492, 6532 ], "op": "PUSH2", "path": "78", "value": "0x1E8A" }, "7928": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6492, 6532 ], "op": "JUMPI", "path": "78" }, "7929": { "dev": "Modulus by zero", "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6492, 6532 ], "op": "INVALID", "path": "78" }, "7930": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6108, 6563 ], "op": "JUMPDEST", "path": "78" }, "7931": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6706, 6709 ], "op": "PUSH2", "path": "78", "statement": 158, "value": "0x100" }, "7934": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6711, 6716 ], "op": "PUSH1", "path": "78", "value": "0x0" }, "7936": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6698, 6717 ], "op": "SWAP4", "path": "78" }, "7937": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6698, 6717 ], "op": "POP", "path": "78" }, "7938": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6698, 6717 ], "op": "SWAP4", "path": "78" }, "7939": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6698, 6717 ], "op": "POP", "path": "78" }, "7940": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6698, 6717 ], "op": "POP", "path": "78" }, "7941": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 6698, 6717 ], "op": "POP", "path": "78" }, "7942": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "JUMPDEST", "path": "78" }, "7943": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "SWAP3", "path": "78" }, "7944": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "POP", "path": "78" }, "7945": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "SWAP3", "path": "78" }, "7946": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "SWAP1", "path": "78" }, "7947": { "fn": "DateTime.getBitNumFromMaturity", "offset": [ 4025, 6724 ], "op": "POP", "path": "78" }, "7948": { "fn": "DateTime.getBitNumFromMaturity", "jump": "o", "offset": [ 4025, 6724 ], "op": "JUMP", "path": "78" }, "7949": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2175, 2407 ], "op": "JUMPDEST", "path": "62" }, "7950": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2241, 2288 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "7952": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2305, 2317 ], "op": "DUP1", "path": "62" }, "7953": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2320, 2360 ], "op": "PUSH2", "path": "62", "value": "0x30C" }, "7956": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2336, 2359 ], "op": "PUSH1", "path": "62", "value": "0x2" }, "7958": { "fn": "LibStorage.getNTokenContextStorage", "offset": [ 2320, 2335 ], "op": "PUSH2", "path": "62", "value": "0x1971" }, "7961": { "fn": "LibStorage.getNTokenContextStorage", "jump": "i", "offset": [ 2320, 2360 ], "op": "JUMP", "path": "62" }, "7962": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "JUMPDEST", "path": "83" }, "7963": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3200, 3206 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "7965": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3218, 3238 ], "op": "DUP1", "path": "83" }, "7966": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3241, 3277 ], "op": "PUSH2", "path": "83", "value": "0x1F27" }, "7969": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3257, 3264 ], "op": "DUP8", "path": "83" }, "7970": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3266, 3276 ], "op": "DUP8", "path": "83" }, "7971": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3241, 3256 ], "op": "PUSH2", "path": "83", "value": "0x26A0" }, "7974": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 3241, 3277 ], "op": "JUMP", "path": "83" }, "7975": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3241, 3277 ], "op": "JUMPDEST", "path": "83" }, "7976": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3218, 3277 ], "op": "SWAP1", "path": "83" }, "7977": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3218, 3277 ], "op": "POP", "path": "83" }, "7978": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3287, 3386 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "7980": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3389, 3424 ], "op": "PUSH2", "path": "83", "value": "0x1F33" }, "7983": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3389, 3422 ], "op": "PUSH2", "path": "83", "value": "0x198A" }, "7986": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 3389, 3424 ], "op": "JUMP", "path": "83" }, "7987": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3389, 3424 ], "op": "JUMPDEST", "path": "83" }, "7988": { "op": "PUSH1", "value": "0x1" }, "7990": { "op": "PUSH1", "value": "0x1" }, "7992": { "op": "PUSH1", "value": "0xA0" }, "7994": { "op": "SHL" }, "7995": { "op": "SUB" }, "7996": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "DUP10", "path": "83" }, "7997": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "AND", "path": "83" }, "7998": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3434, 3465 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "8000": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "SWAP1", "path": "83" }, "8001": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "DUP2", "path": "83" }, "8002": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "MSTORE", "path": "83" }, "8003": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "8005": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "DUP3", "path": "83" }, "8006": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "DUP2", "path": "83" }, "8007": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "MSTORE", "path": "83" }, "8008": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "PUSH1", "path": "83", "value": "0x40" }, "8010": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "DUP1", "path": "83" }, "8011": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "DUP4", "path": "83" }, "8012": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3482 ], "op": "KECCAK256", "path": "83" }, "8013": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "DUP12", "path": "83" }, "8014": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "DUP5", "path": "83" }, "8015": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "MSTORE", "path": "83" }, "8016": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "DUP3", "path": "83" }, "8017": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "MSTORE", "path": "83" }, "8018": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "DUP1", "path": "83" }, "8019": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "DUP4", "path": "83" }, "8020": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3494 ], "op": "KECCAK256", "path": "83" }, "8021": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "DUP11", "path": "83" }, "8022": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "DUP5", "path": "83" }, "8023": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "MSTORE", "path": "83" }, "8024": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "SWAP1", "path": "83" }, "8025": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "SWAP2", "path": "83" }, "8026": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "MSTORE", "path": "83" }, "8027": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "DUP2", "path": "83" }, "8028": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3468, 3504 ], "op": "KECCAK256", "path": "83" }, "8029": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3287, 3424 ], "op": "SWAP2", "path": "83" }, "8030": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3287, 3424 ], "op": "SWAP3", "path": "83" }, "8031": { "op": "POP" }, "8032": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3434, 3465 ], "op": "DUP1", "path": "83" }, "8033": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3547, 3603 ], "op": "PUSH2", "path": "83", "value": "0x1F6A" }, "8036": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3578, 3592 ], "op": "DUP9", "path": "83" }, "8037": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3495, 3503 ], "op": "DUP11", "path": "83" }, "8038": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3547, 3577 ], "op": "PUSH2", "path": "83", "value": "0x1E02" }, "8041": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 3547, 3603 ], "op": "JUMP", "path": "83" }, "8042": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3547, 3603 ], "op": "JUMPDEST", "path": "83" }, "8043": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3514, 3603 ], "op": "SWAP2", "path": "83" }, "8044": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3514, 3603 ], "op": "POP", "path": "83" }, "8045": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3514, 3603 ], "op": "SWAP2", "path": "83" }, "8046": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3514, 3603 ], "op": "POP", "path": "83" }, "8047": { "branch": 362, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3621, 3628 ], "op": "DUP1", "path": "83", "statement": 159 }, "8048": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3613, 3629 ], "op": "PUSH2", "path": "83", "value": "0x1F78" }, "8051": { "branch": 362, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3613, 3629 ], "op": "JUMPI", "path": "83" }, "8052": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3613, 3629 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "8054": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3613, 3629 ], "op": "DUP1", "path": "83" }, "8055": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3613, 3629 ], "op": "REVERT", "path": "83" }, "8056": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3613, 3629 ], "op": "JUMPDEST", "path": "83" }, "8057": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3689, 3718 ], "op": "PUSH2", "path": "83", "value": "0x1F82" }, "8060": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3689, 3701 ], "op": "DUP6", "path": "83" }, "8061": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3711, 3717 ], "op": "DUP4", "path": "83" }, "8062": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3689, 3710 ], "op": "PUSH2", "path": "83", "value": "0x26D5" }, "8065": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 3689, 3718 ], "op": "JUMP", "path": "83" }, "8066": { "branch": 363, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3689, 3718 ], "op": "JUMPDEST", "path": "83" }, "8067": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3685, 4334 ], "op": "ISZERO", "path": "83" }, "8068": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3685, 4334 ], "op": "PUSH2", "path": "83", "value": "0x2011" }, "8071": { "branch": 363, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3685, 4334 ], "op": "JUMPI", "path": "83" }, "8072": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3838, 3856 ], "op": "DUP3", "path": "83" }, "8073": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3838, 3856 ], "op": "SLOAD", "path": "83" }, "8074": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3802, 3822 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "8076": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3802, 3822 ], "op": "SWAP1", "path": "83" }, "8077": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3857 ], "op": "PUSH2", "path": "83", "value": "0x1F9E" }, "8080": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3857 ], "op": "SWAP1", "path": "83" }, "8081": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3833 ], "op": "DUP10", "path": "83" }, "8082": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3833 ], "op": "SWAP1", "path": "83" }, "8083": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3838, 3856 ], "op": "PUSH1", "path": "83", "value": "0xF" }, "8085": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3838, 3856 ], "op": "SWAP1", "path": "83" }, "8086": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3838, 3856 ], "op": "DUP2", "path": "83" }, "8087": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3838, 3856 ], "op": "SIGNEXTEND", "path": "83" }, "8088": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3857 ], "op": "SWAP1", "path": "83" }, "8089": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3857 ], "op": "SIGNEXTEND", "path": "83" }, "8090": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3837 ], "op": "PUSH2", "path": "83", "value": "0x2705" }, "8093": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 3825, 3857 ], "op": "JUMP", "path": "83" }, "8094": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3825, 3857 ], "op": "JUMPDEST", "path": "83" }, "8095": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3802, 3857 ], "op": "SWAP1", "path": "83" }, "8096": { "op": "POP" }, "8097": { "op": "PUSH1", "value": "0x1" }, "8099": { "op": "PUSH1", "value": "0x1" }, "8101": { "op": "PUSH1", "value": "0x7F" }, "8103": { "op": "SHL" }, "8104": { "op": "SUB" }, "8105": { "op": "NOT" }, "8106": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3912 ], "op": "DUP2", "path": "83", "statement": 160 }, "8107": { "op": "SLT" }, "8108": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3912 ], "op": "DUP1", "path": "83" }, "8109": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3912 ], "op": "ISZERO", "path": "83" }, "8110": { "branch": 364, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3912 ], "op": "SWAP1", "path": "83" }, "8111": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3949 ], "op": "PUSH2", "path": "83", "value": "0x1FBF" }, "8114": { "branch": 364, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3949 ], "op": "JUMPI", "path": "83" }, "8115": { "op": "POP" }, "8116": { "op": "PUSH1", "value": "0x1" }, "8118": { "op": "PUSH1", "value": "0x1" }, "8120": { "op": "PUSH1", "value": "0x7F" }, "8122": { "op": "SHL" }, "8123": { "op": "SUB" }, "8124": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3916, 3949 ], "op": "DUP2", "path": "83" }, "8125": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3916, 3949 ], "op": "SGT", "path": "83" }, "8126": { "branch": 365, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3916, 3949 ], "op": "ISZERO", "path": "83" }, "8127": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3879, 3949 ], "op": "JUMPDEST", "path": "83" }, "8128": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3871, 3950 ], "op": "PUSH2", "path": "83", "value": "0x1FC8" }, "8131": { "branch": 365, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3871, 3950 ], "op": "JUMPI", "path": "83" }, "8132": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3871, 3950 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "8134": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3871, 3950 ], "op": "DUP1", "path": "83" }, "8135": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3871, 3950 ], "op": "REVERT", "path": "83" }, "8136": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3871, 3950 ], "op": "JUMPDEST", "path": "83" }, "8137": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "DUP4", "path": "83", "statement": 161 }, "8138": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "SLOAD", "path": "83" }, "8139": { "op": "PUSH1", "value": "0x1" }, "8141": { "op": "PUSH1", "value": "0x1" }, "8143": { "op": "PUSH1", "value": "0x80" }, "8145": { "op": "SHL" }, "8146": { "op": "SUB" }, "8147": { "op": "NOT" }, "8148": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "AND", "path": "83" }, "8149": { "op": "PUSH1", "value": "0x1" }, "8151": { "op": "PUSH1", "value": "0x1" }, "8153": { "op": "PUSH1", "value": "0x80" }, "8155": { "op": "SHL" }, "8156": { "op": "SUB" }, "8157": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "PUSH1", "path": "83", "value": "0xF" }, "8159": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "DUP4", "path": "83" }, "8160": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "SWAP1", "path": "83" }, "8161": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "SIGNEXTEND", "path": "83" }, "8162": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "AND", "path": "83" }, "8163": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "OR", "path": "83" }, "8164": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "DUP5", "path": "83" }, "8165": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "SSTORE", "path": "83" }, "8166": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3997, 4039 ], "op": "DUP1", "path": "83" }, "8167": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4119, 4225 ], "op": "PUSH2", "path": "83", "value": "0x1FF9" }, "8170": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4119, 4225 ], "op": "JUMPI", "path": "83" }, "8171": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4176, 4210 ], "op": "PUSH2", "path": "83", "statement": 162, "value": "0x1FF6" }, "8174": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4176, 4188 ], "op": "DUP7", "path": "83" }, "8175": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4196, 4202 ], "op": "DUP5", "path": "83" }, "8176": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4204, 4209 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "8178": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4176, 4195 ], "op": "PUSH2", "path": "83", "value": "0x271B" }, "8181": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 4176, 4210 ], "op": "JUMP", "path": "83" }, "8182": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4176, 4210 ], "op": "JUMPDEST", "path": "83" }, "8183": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4161, 4210 ], "op": "SWAP6", "path": "83" }, "8184": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4161, 4210 ], "op": "POP", "path": "83" }, "8185": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4119, 4225 ], "op": "JUMPDEST", "path": "83" }, "8186": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4239, 4289 ], "op": "PUSH2", "path": "83", "statement": 163, "value": "0x2004" }, "8189": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4255, 4262 ], "op": "DUP13", "path": "83" }, "8190": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4264, 4274 ], "op": "DUP13", "path": "83" }, "8191": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4276, 4288 ], "op": "DUP9", "path": "83" }, "8192": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4239, 4254 ], "op": "PUSH2", "path": "83", "value": "0x2766" }, "8195": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 4239, 4289 ], "op": "JUMP", "path": "83" }, "8196": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4239, 4289 ], "op": "JUMPDEST", "path": "83" }, "8197": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4310, 4323 ], "op": "SWAP6", "path": "83", "statement": 164 }, "8198": { "op": "POP" }, "8199": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4303, 4323 ], "op": "PUSH2", "path": "83", "value": "0x207E" }, "8202": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4303, 4323 ], "op": "SWAP5", "path": "83" }, "8203": { "op": "POP" }, "8204": { "op": "POP" }, "8205": { "op": "POP" }, "8206": { "op": "POP" }, "8207": { "op": "POP" }, "8208": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4303, 4323 ], "op": "JUMP", "path": "83" }, "8209": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3685, 4334 ], "op": "JUMPDEST", "path": "83" }, "8210": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4348, 4361 ], "op": "DUP7", "path": "83" }, "8211": { "branch": 366, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4348, 4361 ], "op": "ISZERO", "path": "83" }, "8212": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4344, 4766 ], "op": "PUSH2", "path": "83", "value": "0x2075" }, "8215": { "branch": 366, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4344, 4766 ], "op": "JUMPI", "path": "83" }, "8216": { "op": "PUSH1", "value": "0x1" }, "8218": { "op": "PUSH1", "value": "0x1" }, "8220": { "op": "PUSH1", "value": "0x7F" }, "8222": { "op": "SHL" }, "8223": { "op": "SUB" }, "8224": { "op": "NOT" }, "8225": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4511 ], "op": "DUP8", "path": "83", "statement": 165 }, "8226": { "op": "SLT" }, "8227": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4511 ], "op": "DUP1", "path": "83" }, "8228": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4511 ], "op": "ISZERO", "path": "83" }, "8229": { "branch": 367, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4511 ], "op": "SWAP1", "path": "83" }, "8230": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4543 ], "op": "PUSH2", "path": "83", "value": "0x2036" }, "8233": { "branch": 367, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4543 ], "op": "JUMPI", "path": "83" }, "8234": { "op": "POP" }, "8235": { "op": "PUSH1", "value": "0x1" }, "8237": { "op": "PUSH1", "value": "0x1" }, "8239": { "op": "PUSH1", "value": "0x7F" }, "8241": { "op": "SHL" }, "8242": { "op": "SUB" }, "8243": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4515, 4543 ], "op": "DUP8", "path": "83" }, "8244": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4515, 4543 ], "op": "SGT", "path": "83" }, "8245": { "branch": 368, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4515, 4543 ], "op": "ISZERO", "path": "83" }, "8246": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4483, 4543 ], "op": "JUMPDEST", "path": "83" }, "8247": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4475, 4544 ], "op": "PUSH2", "path": "83", "value": "0x203F" }, "8250": { "branch": 368, "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4475, 4544 ], "op": "JUMPI", "path": "83" }, "8251": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4475, 4544 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "8253": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4475, 4544 ], "op": "DUP1", "path": "83" }, "8254": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4475, 4544 ], "op": "REVERT", "path": "83" }, "8255": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4475, 4544 ], "op": "JUMPDEST", "path": "83" }, "8256": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "DUP3", "path": "83", "statement": 166 }, "8257": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "SLOAD", "path": "83" }, "8258": { "op": "PUSH1", "value": "0x1" }, "8260": { "op": "PUSH1", "value": "0x1" }, "8262": { "op": "PUSH1", "value": "0x80" }, "8264": { "op": "SHL" }, "8265": { "op": "SUB" }, "8266": { "op": "NOT" }, "8267": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "AND", "path": "83" }, "8268": { "op": "PUSH1", "value": "0x1" }, "8270": { "op": "PUSH1", "value": "0x1" }, "8272": { "op": "PUSH1", "value": "0x80" }, "8274": { "op": "SHL" }, "8275": { "op": "SUB" }, "8276": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "PUSH1", "path": "83", "value": "0xF" }, "8278": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "DUP10", "path": "83" }, "8279": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "SWAP1", "path": "83" }, "8280": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "SIGNEXTEND", "path": "83" }, "8281": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "AND", "path": "83" }, "8282": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "OR", "path": "83" }, "8283": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "DUP4", "path": "83" }, "8284": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4591, 4628 ], "op": "SSTORE", "path": "83" }, "8285": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4658, 4691 ], "op": "PUSH2", "path": "83", "statement": 167, "value": "0x2068" }, "8288": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4658, 4670 ], "op": "DUP6", "path": "83" }, "8289": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4678, 4684 ], "op": "DUP4", "path": "83" }, "8290": { "op": "PUSH1", "value": "0x1" }, "8292": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4658, 4677 ], "op": "PUSH2", "path": "83", "value": "0x271B" }, "8295": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 4658, 4691 ], "op": "JUMP", "path": "83" }, "8296": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4658, 4691 ], "op": "JUMPDEST", "path": "83" }, "8297": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4643, 4691 ], "op": "SWAP5", "path": "83" }, "8298": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4643, 4691 ], "op": "POP", "path": "83" }, "8299": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4705, 4755 ], "op": "PUSH2", "path": "83", "statement": 168, "value": "0x2075" }, "8302": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4721, 4728 ], "op": "DUP12", "path": "83" }, "8303": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4730, 4740 ], "op": "DUP12", "path": "83" }, "8304": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4742, 4754 ], "op": "DUP8", "path": "83" }, "8305": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4705, 4720 ], "op": "PUSH2", "path": "83", "value": "0x2766" }, "8308": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "i", "offset": [ 4705, 4755 ], "op": "JUMP", "path": "83" }, "8309": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4705, 4755 ], "op": "JUMPDEST", "path": "83" }, "8310": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4783, 4791 ], "op": "DUP7", "path": "83", "statement": 169 }, "8311": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "SWAP6", "path": "83" }, "8312": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "POP", "path": "83" }, "8313": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "POP", "path": "83" }, "8314": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "POP", "path": "83" }, "8315": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "POP", "path": "83" }, "8316": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "POP", "path": "83" }, "8317": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 4776, 4791 ], "op": "POP", "path": "83" }, "8318": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "JUMPDEST", "path": "83" }, "8319": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "SWAP6", "path": "83" }, "8320": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "SWAP5", "path": "83" }, "8321": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "POP", "path": "83" }, "8322": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "POP", "path": "83" }, "8323": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "POP", "path": "83" }, "8324": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "POP", "path": "83" }, "8325": { "fn": "BitmapAssetsHandler.addifCashAsset", "offset": [ 3016, 4798 ], "op": "POP", "path": "83" }, "8326": { "fn": "BitmapAssetsHandler.addifCashAsset", "jump": "o", "offset": [ 3016, 4798 ], "op": "JUMP", "path": "83" }, "8327": { "fn": "PortfolioHandler.addAsset", "offset": [ 2971, 5042 ], "op": "JUMPDEST", "path": "84" }, "8328": { "fn": "PortfolioHandler.addAsset", "offset": [ 3268, 3295 ], "op": "DUP5", "path": "84" }, "8329": { "fn": "PortfolioHandler.addAsset", "offset": [ 3268, 3295 ], "op": "MLOAD", "path": "84" }, "8330": { "fn": "PortfolioHandler.addAsset", "offset": [ 3230, 3416 ], "op": "PUSH2", "path": "84", "value": "0x2096" }, "8333": { "fn": "PortfolioHandler.addAsset", "offset": [ 3230, 3416 ], "op": "SWAP1", "path": "84" }, "8334": { "fn": "PortfolioHandler.addAsset", "offset": [ 3313, 3323 ], "op": "DUP6", "path": "84" }, "8335": { "fn": "PortfolioHandler.addAsset", "offset": [ 3341, 3349 ], "op": "DUP6", "path": "84" }, "8336": { "fn": "PortfolioHandler.addAsset", "offset": [ 3367, 3376 ], "op": "DUP6", "path": "84" }, "8337": { "fn": "PortfolioHandler.addAsset", "offset": [ 3394, 3402 ], "op": "DUP6", "path": "84" }, "8338": { "fn": "PortfolioHandler.addAsset", "offset": [ 3230, 3250 ], "op": "PUSH2", "path": "84", "value": "0x27C0" }, "8341": { "fn": "PortfolioHandler.addAsset", "jump": "i", "offset": [ 3230, 3416 ], "op": "JUMP", "path": "84" }, "8342": { "branch": 390, "fn": "PortfolioHandler.addAsset", "offset": [ 3230, 3416 ], "op": "JUMPDEST", "path": "84" }, "8343": { "fn": "PortfolioHandler.addAsset", "offset": [ 3171, 3434 ], "op": "ISZERO", "path": "84" }, "8344": { "fn": "PortfolioHandler.addAsset", "offset": [ 3171, 3434 ], "op": "PUSH2", "path": "84", "value": "0x20A0" }, "8347": { "branch": 390, "fn": "PortfolioHandler.addAsset", "offset": [ 3171, 3434 ], "op": "JUMPI", "path": "84" }, "8348": { "fn": "PortfolioHandler.addAsset", "offset": [ 3427, 3434 ], "op": "PUSH2", "path": "84", "statement": 170, "value": "0x1AEF" }, "8351": { "fn": "PortfolioHandler.addAsset", "offset": [ 3427, 3434 ], "op": "JUMP", "path": "84" }, "8352": { "fn": "PortfolioHandler.addAsset", "offset": [ 3171, 3434 ], "op": "JUMPDEST", "path": "84" }, "8353": { "fn": "PortfolioHandler.addAsset", "offset": [ 3448, 3480 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "8355": { "fn": "PortfolioHandler.addAsset", "offset": [ 3448, 3480 ], "op": "DUP6", "path": "84" }, "8356": { "fn": "PortfolioHandler.addAsset", "offset": [ 3448, 3480 ], "op": "ADD", "path": "84" }, "8357": { "fn": "PortfolioHandler.addAsset", "offset": [ 3448, 3480 ], "op": "MLOAD", "path": "84" }, "8358": { "branch": 391, "fn": "PortfolioHandler.addAsset", "offset": [ 3448, 3484 ], "op": "ISZERO", "path": "84" }, "8359": { "fn": "PortfolioHandler.addAsset", "offset": [ 3444, 3740 ], "op": "PUSH2", "path": "84", "value": "0x20CD" }, "8362": { "branch": 391, "fn": "PortfolioHandler.addAsset", "offset": [ 3444, 3740 ], "op": "JUMPI", "path": "84" }, "8363": { "fn": "PortfolioHandler.addAsset", "offset": [ 3500, 3511 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8365": { "fn": "PortfolioHandler.addAsset", "offset": [ 3514, 3697 ], "op": "PUSH2", "path": "84", "value": "0x20BD" }, "8368": { "fn": "PortfolioHandler.addAsset", "offset": [ 3552, 3566 ], "op": "DUP7", "path": "84" }, "8369": { "fn": "PortfolioHandler.addAsset", "offset": [ 3552, 3576 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8371": { "fn": "PortfolioHandler.addAsset", "offset": [ 3552, 3576 ], "op": "ADD", "path": "84" }, "8372": { "fn": "PortfolioHandler.addAsset", "offset": [ 3552, 3576 ], "op": "MLOAD", "path": "84" }, "8373": { "fn": "PortfolioHandler.addAsset", "offset": [ 3594, 3604 ], "op": "DUP7", "path": "84" }, "8374": { "fn": "PortfolioHandler.addAsset", "offset": [ 3622, 3630 ], "op": "DUP7", "path": "84" }, "8375": { "fn": "PortfolioHandler.addAsset", "offset": [ 3648, 3657 ], "op": "DUP7", "path": "84" }, "8376": { "fn": "PortfolioHandler.addAsset", "offset": [ 3675, 3683 ], "op": "DUP7", "path": "84" }, "8377": { "fn": "PortfolioHandler.addAsset", "offset": [ 3514, 3534 ], "op": "PUSH2", "path": "84", "value": "0x27C0" }, "8380": { "fn": "PortfolioHandler.addAsset", "jump": "i", "offset": [ 3514, 3697 ], "op": "JUMP", "path": "84" }, "8381": { "fn": "PortfolioHandler.addAsset", "offset": [ 3514, 3697 ], "op": "JUMPDEST", "path": "84" }, "8382": { "fn": "PortfolioHandler.addAsset", "offset": [ 3500, 3697 ], "op": "SWAP1", "path": "84" }, "8383": { "fn": "PortfolioHandler.addAsset", "offset": [ 3500, 3697 ], "op": "POP", "path": "84" }, "8384": { "branch": 392, "fn": "PortfolioHandler.addAsset", "offset": [ 3715, 3721 ], "op": "DUP1", "path": "84" }, "8385": { "fn": "PortfolioHandler.addAsset", "offset": [ 3711, 3730 ], "op": "ISZERO", "path": "84" }, "8386": { "fn": "PortfolioHandler.addAsset", "offset": [ 3711, 3730 ], "op": "PUSH2", "path": "84", "value": "0x20CB" }, "8389": { "branch": 392, "fn": "PortfolioHandler.addAsset", "offset": [ 3711, 3730 ], "op": "JUMPI", "path": "84" }, "8390": { "fn": "PortfolioHandler.addAsset", "offset": [ 3723, 3730 ], "op": "POP", "path": "84", "statement": 171 }, "8391": { "fn": "PortfolioHandler.addAsset", "offset": [ 3723, 3730 ], "op": "PUSH2", "path": "84", "value": "0x1AEF" }, "8394": { "fn": "PortfolioHandler.addAsset", "offset": [ 3723, 3730 ], "op": "JUMP", "path": "84" }, "8395": { "fn": "PortfolioHandler.addAsset", "offset": [ 3711, 3730 ], "op": "JUMPDEST", "path": "84" }, "8396": { "fn": "PortfolioHandler.addAsset", "offset": [ 3444, 3740 ], "op": "POP", "path": "84" }, "8397": { "fn": "PortfolioHandler.addAsset", "offset": [ 3444, 3740 ], "op": "JUMPDEST", "path": "84" }, "8398": { "fn": "PortfolioHandler.addAsset", "offset": [ 3904, 3944 ], "op": "PUSH2", "path": "84", "value": "0x20D6" }, "8401": { "fn": "PortfolioHandler.addAsset", "offset": [ 3934, 3943 ], "op": "DUP3", "path": "84" }, "8402": { "fn": "PortfolioHandler.addAsset", "offset": [ 3904, 3933 ], "op": "PUSH2", "path": "84", "value": "0x28D9" }, "8405": { "fn": "PortfolioHandler.addAsset", "jump": "i", "offset": [ 3904, 3944 ], "op": "JUMP", "path": "84" }, "8406": { "branch": 393, "fn": "PortfolioHandler.addAsset", "offset": [ 3904, 3944 ], "op": "JUMPDEST", "path": "84" }, "8407": { "fn": "PortfolioHandler.addAsset", "offset": [ 3900, 4052 ], "op": "ISZERO", "path": "84" }, "8408": { "fn": "PortfolioHandler.addAsset", "offset": [ 3900, 4052 ], "op": "PUSH2", "path": "84", "value": "0x20E9" }, "8411": { "branch": 393, "fn": "PortfolioHandler.addAsset", "offset": [ 3900, 4052 ], "op": "JUMPI", "path": "84" }, "8412": { "fn": "PortfolioHandler.addAsset", "offset": [ 3980, 3981 ], "op": "PUSH1", "path": "84", "statement": 172, "value": "0x0" }, "8414": { "fn": "PortfolioHandler.addAsset", "offset": [ 3968, 3976 ], "op": "DUP2", "path": "84" }, "8415": { "fn": "PortfolioHandler.addAsset", "offset": [ 3968, 3981 ], "op": "SLT", "path": "84" }, "8416": { "branch": 394, "fn": "PortfolioHandler.addAsset", "offset": [ 3968, 3981 ], "op": "ISZERO", "path": "84" }, "8417": { "fn": "PortfolioHandler.addAsset", "offset": [ 3960, 3982 ], "op": "PUSH2", "path": "84", "value": "0x20E9" }, "8420": { "branch": 394, "fn": "PortfolioHandler.addAsset", "offset": [ 3960, 3982 ], "op": "JUMPI", "path": "84" }, "8421": { "fn": "PortfolioHandler.addAsset", "offset": [ 3960, 3982 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8423": { "fn": "PortfolioHandler.addAsset", "offset": [ 3960, 3982 ], "op": "DUP1", "path": "84" }, "8424": { "fn": "PortfolioHandler.addAsset", "offset": [ 3960, 3982 ], "op": "REVERT", "path": "84" }, "8425": { "fn": "PortfolioHandler.addAsset", "offset": [ 3960, 3982 ], "op": "JUMPDEST", "path": "84" }, "8426": { "op": "PUSH11", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "8438": { "op": "NOT" }, "8439": { "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4096 ], "op": "DUP2", "path": "84", "statement": 173 }, "8440": { "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4096 ], "op": "SLT", "path": "84" }, "8441": { "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4096 ], "op": "DUP1", "path": "84" }, "8442": { "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4096 ], "op": "ISZERO", "path": "84" }, "8443": { "branch": 395, "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4096 ], "op": "SWAP1", "path": "84" }, "8444": { "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4127 ], "op": "PUSH2", "path": "84", "value": "0x2110" }, "8447": { "branch": 395, "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4127 ], "op": "JUMPI", "path": "84" }, "8448": { "op": "POP" }, "8449": { "fn": "PortfolioHandler.addAsset", "offset": [ 4112, 4127 ], "op": "PUSH11", "path": "84", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "8461": { "fn": "PortfolioHandler.addAsset", "offset": [ 4100, 4127 ], "op": "DUP2", "path": "84" }, "8462": { "fn": "PortfolioHandler.addAsset", "offset": [ 4100, 4127 ], "op": "SGT", "path": "84" }, "8463": { "branch": 396, "fn": "PortfolioHandler.addAsset", "offset": [ 4100, 4127 ], "op": "ISZERO", "path": "84" }, "8464": { "fn": "PortfolioHandler.addAsset", "offset": [ 4069, 4127 ], "op": "JUMPDEST", "path": "84" }, "8465": { "fn": "PortfolioHandler.addAsset", "offset": [ 4061, 4128 ], "op": "PUSH2", "path": "84", "value": "0x2119" }, "8468": { "branch": 396, "fn": "PortfolioHandler.addAsset", "offset": [ 4061, 4128 ], "op": "JUMPI", "path": "84" }, "8469": { "fn": "PortfolioHandler.addAsset", "offset": [ 4061, 4128 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8471": { "fn": "PortfolioHandler.addAsset", "offset": [ 4061, 4128 ], "op": "DUP1", "path": "84" }, "8472": { "fn": "PortfolioHandler.addAsset", "offset": [ 4061, 4128 ], "op": "REVERT", "path": "84" }, "8473": { "fn": "PortfolioHandler.addAsset", "offset": [ 4061, 4128 ], "op": "JUMPDEST", "path": "84" }, "8474": { "fn": "PortfolioHandler.addAsset", "offset": [ 4278, 4292 ], "op": "DUP5", "path": "84" }, "8475": { "fn": "PortfolioHandler.addAsset", "offset": [ 4278, 4302 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8477": { "fn": "PortfolioHandler.addAsset", "offset": [ 4278, 4302 ], "op": "ADD", "path": "84" }, "8478": { "fn": "PortfolioHandler.addAsset", "offset": [ 4278, 4302 ], "op": "MLOAD", "path": "84" }, "8479": { "fn": "PortfolioHandler.addAsset", "offset": [ 4278, 4309 ], "op": "MLOAD", "path": "84" }, "8480": { "fn": "PortfolioHandler.addAsset", "offset": [ 4242, 4256 ], "op": "DUP6", "path": "84" }, "8481": { "fn": "PortfolioHandler.addAsset", "offset": [ 4242, 4274 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "8483": { "fn": "PortfolioHandler.addAsset", "offset": [ 4242, 4274 ], "op": "ADD", "path": "84" }, "8484": { "fn": "PortfolioHandler.addAsset", "offset": [ 4242, 4274 ], "op": "MLOAD", "path": "84" }, "8485": { "branch": 397, "fn": "PortfolioHandler.addAsset", "offset": [ 4242, 4309 ], "op": "EQ", "path": "84" }, "8486": { "fn": "PortfolioHandler.addAsset", "offset": [ 4238, 4409 ], "op": "ISZERO", "path": "84" }, "8487": { "fn": "PortfolioHandler.addAsset", "offset": [ 4238, 4409 ], "op": "PUSH2", "path": "84", "value": "0x213D" }, "8490": { "branch": 397, "fn": "PortfolioHandler.addAsset", "offset": [ 4238, 4409 ], "op": "JUMPI", "path": "84" }, "8491": { "fn": "PortfolioHandler.addAsset", "offset": [ 4352, 4398 ], "op": "PUSH2", "path": "84", "statement": 174, "value": "0x2137" }, "8494": { "fn": "PortfolioHandler.addAsset", "offset": [ 4373, 4387 ], "op": "DUP6", "path": "84" }, "8495": { "fn": "PortfolioHandler.addAsset", "offset": [ 4373, 4397 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8497": { "fn": "PortfolioHandler.addAsset", "offset": [ 4373, 4397 ], "op": "ADD", "path": "84" }, "8498": { "fn": "PortfolioHandler.addAsset", "offset": [ 4373, 4397 ], "op": "MLOAD", "path": "84" }, "8499": { "fn": "PortfolioHandler.addAsset", "offset": [ 4352, 4372 ], "op": "PUSH2", "path": "84", "value": "0x28EF" }, "8502": { "fn": "PortfolioHandler.addAsset", "jump": "i", "offset": [ 4352, 4398 ], "op": "JUMP", "path": "84" }, "8503": { "fn": "PortfolioHandler.addAsset", "offset": [ 4352, 4398 ], "op": "JUMPDEST", "path": "84" }, "8504": { "fn": "PortfolioHandler.addAsset", "offset": [ 4325, 4349 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8506": { "fn": "PortfolioHandler.addAsset", "offset": [ 4325, 4349 ], "op": "DUP7", "path": "84" }, "8507": { "fn": "PortfolioHandler.addAsset", "offset": [ 4325, 4349 ], "op": "ADD", "path": "84" }, "8508": { "fn": "PortfolioHandler.addAsset", "offset": [ 4325, 4398 ], "op": "MSTORE", "path": "84" }, "8509": { "fn": "PortfolioHandler.addAsset", "offset": [ 4238, 4409 ], "op": "JUMPDEST", "path": "84" }, "8510": { "fn": "PortfolioHandler.addAsset", "offset": [ 4679, 4709 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8512": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4726 ], "op": "DUP6", "path": "84" }, "8513": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4736 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8515": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4736 ], "op": "ADD", "path": "84" }, "8516": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4736 ], "op": "MLOAD", "path": "84" }, "8517": { "fn": "PortfolioHandler.addAsset", "offset": [ 4737, 4751 ], "op": "DUP7", "path": "84" }, "8518": { "fn": "PortfolioHandler.addAsset", "offset": [ 4737, 4769 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "8520": { "fn": "PortfolioHandler.addAsset", "offset": [ 4737, 4769 ], "op": "ADD", "path": "84" }, "8521": { "fn": "PortfolioHandler.addAsset", "offset": [ 4737, 4769 ], "op": "MLOAD", "path": "84" }, "8522": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "DUP2", "path": "84" }, "8523": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "MLOAD", "path": "84" }, "8524": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "DUP2", "path": "84" }, "8525": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "LT", "path": "84" }, "8526": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "PUSH2", "path": "84", "value": "0x2153" }, "8529": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "JUMPI", "path": "84" }, "8530": { "dev": "Index out of range", "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "INVALID", "path": "84" }, "8531": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "JUMPDEST", "path": "84" }, "8532": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8534": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "SWAP1", "path": "84" }, "8535": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "DUP2", "path": "84" }, "8536": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "MUL", "path": "84" }, "8537": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "SWAP2", "path": "84" }, "8538": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "SWAP1", "path": "84" }, "8539": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "SWAP2", "path": "84" }, "8540": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "ADD", "path": "84" }, "8541": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "DUP2", "path": "84" }, "8542": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "ADD", "path": "84" }, "8543": { "fn": "PortfolioHandler.addAsset", "offset": [ 4712, 4770 ], "op": "MLOAD", "path": "84" }, "8544": { "fn": "PortfolioHandler.addAsset", "offset": [ 4780, 4812 ], "op": "SWAP6", "path": "84", "statement": 175 }, "8545": { "fn": "PortfolioHandler.addAsset", "offset": [ 4780, 4812 ], "op": "DUP7", "path": "84" }, "8546": { "fn": "PortfolioHandler.addAsset", "offset": [ 4780, 4812 ], "op": "MSTORE", "path": "84" }, "8547": { "fn": "PortfolioHandler.addAsset", "offset": [ 4822, 4839 ], "op": "DUP6", "path": "84", "statement": 176 }, "8548": { "fn": "PortfolioHandler.addAsset", "offset": [ 4822, 4839 ], "op": "ADD", "path": "84" }, "8549": { "fn": "PortfolioHandler.addAsset", "offset": [ 4822, 4850 ], "op": "SWAP4", "path": "84" }, "8550": { "fn": "PortfolioHandler.addAsset", "offset": [ 4822, 4850 ], "op": "SWAP1", "path": "84" }, "8551": { "fn": "PortfolioHandler.addAsset", "offset": [ 4822, 4850 ], "op": "SWAP4", "path": "84" }, "8552": { "fn": "PortfolioHandler.addAsset", "offset": [ 4822, 4850 ], "op": "MSTORE", "path": "84" }, "8553": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4878 ], "op": "PUSH1", "path": "84", "statement": 177, "value": "0x40" }, "8555": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4878 ], "op": "DUP1", "path": "84" }, "8556": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4878 ], "op": "DUP6", "path": "84" }, "8557": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4878 ], "op": "ADD", "path": "84" }, "8558": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4890 ], "op": "SWAP3", "path": "84" }, "8559": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4890 ], "op": "SWAP1", "path": "84" }, "8560": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4890 ], "op": "SWAP3", "path": "84" }, "8561": { "fn": "PortfolioHandler.addAsset", "offset": [ 4860, 4890 ], "op": "MSTORE", "path": "84" }, "8562": { "fn": "PortfolioHandler.addAsset", "offset": [ 4900, 4917 ], "op": "PUSH1", "path": "84", "statement": 178, "value": "0x60" }, "8564": { "fn": "PortfolioHandler.addAsset", "offset": [ 4900, 4917 ], "op": "DUP5", "path": "84" }, "8565": { "fn": "PortfolioHandler.addAsset", "offset": [ 4900, 4917 ], "op": "ADD", "path": "84" }, "8566": { "fn": "PortfolioHandler.addAsset", "offset": [ 4900, 4928 ], "op": "MSTORE", "path": "84" }, "8567": { "op": "PUSH1", "value": "0x0" }, "8569": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4959 ], "op": "PUSH1", "path": "84", "statement": 179, "value": "0xA0" }, "8571": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4959 ], "op": "SWAP1", "path": "84" }, "8572": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4959 ], "op": "SWAP4", "path": "84" }, "8573": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4959 ], "op": "ADD", "path": "84" }, "8574": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4988 ], "op": "SWAP3", "path": "84" }, "8575": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4988 ], "op": "SWAP1", "path": "84" }, "8576": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4988 ], "op": "SWAP3", "path": "84" }, "8577": { "fn": "PortfolioHandler.addAsset", "offset": [ 4938, 4988 ], "op": "MSTORE", "path": "84" }, "8578": { "op": "POP" }, "8579": { "fn": "PortfolioHandler.addAsset", "offset": [ 4998, 5030 ], "op": "ADD", "path": "84", "statement": 180 }, "8580": { "fn": "PortfolioHandler.addAsset", "offset": [ 4998, 5035 ], "op": "DUP1", "path": "84" }, "8581": { "fn": "PortfolioHandler.addAsset", "offset": [ 4998, 5035 ], "op": "MLOAD", "path": "84" }, "8582": { "fn": "PortfolioHandler.addAsset", "offset": [ 5034, 5035 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "8584": { "fn": "PortfolioHandler.addAsset", "offset": [ 4998, 5035 ], "op": "ADD", "path": "84" }, "8585": { "fn": "PortfolioHandler.addAsset", "offset": [ 4998, 5035 ], "op": "SWAP1", "path": "84" }, "8586": { "fn": "PortfolioHandler.addAsset", "offset": [ 4998, 5035 ], "op": "MSTORE", "path": "84" }, "8587": { "fn": "PortfolioHandler.addAsset", "jump": "o", "offset": [ 2971, 5042 ], "op": "JUMP", "path": "84" }, "8588": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6460, 10583 ], "op": "JUMPDEST", "path": "84" }, "8589": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8591": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8592": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8593": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8594": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8595": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8596": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8597": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6583, 6587 ], "op": "DUP1", "path": "84" }, "8598": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMPDEST", "path": "84" }, "8599": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7219, 7246 ], "op": "DUP10", "path": "84" }, "8600": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7219, 7246 ], "op": "MLOAD", "path": "84" }, "8601": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7219, 7253 ], "op": "MLOAD", "path": "84" }, "8602": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7215, 7253 ], "op": "DUP2", "path": "84" }, "8603": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7215, 7253 ], "op": "LT", "path": "84" }, "8604": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "ISZERO", "path": "84" }, "8605": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "PUSH2", "path": "84", "value": "0x221D" }, "8608": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMPI", "path": "84" }, "8609": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7274, 7301 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8611": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7318 ], "op": "DUP11", "path": "84" }, "8612": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7331 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8614": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7331 ], "op": "ADD", "path": "84" }, "8615": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7331 ], "op": "MLOAD", "path": "84" }, "8616": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7332, 7333 ], "op": "DUP3", "path": "84" }, "8617": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "DUP2", "path": "84" }, "8618": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "MLOAD", "path": "84" }, "8619": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "DUP2", "path": "84" }, "8620": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "LT", "path": "84" }, "8621": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "PUSH2", "path": "84", "value": "0x21B2" }, "8624": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "JUMPI", "path": "84" }, "8625": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "INVALID", "path": "84" }, "8626": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "JUMPDEST", "path": "84" }, "8627": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8629": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "MUL", "path": "84" }, "8630": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8632": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "ADD", "path": "84" }, "8633": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "ADD", "path": "84" }, "8634": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7304, 7334 ], "op": "MLOAD", "path": "84" }, "8635": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7274, 7334 ], "op": "SWAP1", "path": "84" }, "8636": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7274, 7334 ], "op": "POP", "path": "84" }, "8637": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7517, 7549 ], "op": "PUSH1", "path": "84", "statement": 181, "value": "0x3" }, "8639": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "DUP1", "path": "84" }, "8640": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "DUP2", "path": "84" }, "8641": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "GT", "path": "84" }, "8642": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "ISZERO", "path": "84" }, "8643": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "PUSH2", "path": "84", "value": "0x21C8" }, "8646": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPI", "path": "84" }, "8647": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "INVALID", "path": "84" }, "8648": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPDEST", "path": "84" }, "8649": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7500 ], "op": "DUP2", "path": "84" }, "8650": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7513 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "8652": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7513 ], "op": "ADD", "path": "84" }, "8653": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7513 ], "op": "MLOAD", "path": "84" }, "8654": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "8656": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "DUP2", "path": "84" }, "8657": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "GT", "path": "84" }, "8658": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "ISZERO", "path": "84" }, "8659": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "PUSH2", "path": "84", "value": "0x21D8" }, "8662": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPI", "path": "84" }, "8663": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "INVALID", "path": "84" }, "8664": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "JUMPDEST", "path": "84" }, "8665": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "EQ", "path": "84" }, "8666": { "branch": 398, "fn": "PortfolioHandler.storeAssets", "offset": [ 7495, 7549 ], "op": "ISZERO", "path": "84" }, "8667": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "PUSH2", "path": "84", "value": "0x21E3" }, "8670": { "branch": 398, "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "JUMPI", "path": "84" }, "8671": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8673": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "DUP1", "path": "84" }, "8674": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "REVERT", "path": "84" }, "8675": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7487, 7550 ], "op": "JUMPDEST", "path": "84" }, "8676": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7647, 7671 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "8678": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7630 ], "op": "DUP2", "path": "84" }, "8679": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7643 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "8681": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7643 ], "op": "ADD", "path": "84" }, "8682": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7643 ], "op": "MLOAD", "path": "84" }, "8683": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "8685": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "DUP2", "path": "84" }, "8686": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "GT", "path": "84" }, "8687": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "ISZERO", "path": "84" }, "8688": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "PUSH2", "path": "84", "value": "0x21F5" }, "8691": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "JUMPI", "path": "84" }, "8692": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "INVALID", "path": "84" }, "8693": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "JUMPDEST", "path": "84" }, "8694": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "EQ", "path": "84" }, "8695": { "branch": 399, "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7671 ], "op": "ISZERO", "path": "84" }, "8696": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "DUP1", "path": "84" }, "8697": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "ISZERO", "path": "84" }, "8698": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "PUSH2", "path": "84", "value": "0x2205" }, "8701": { "branch": 399, "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "JUMPI", "path": "84" }, "8702": { "op": "POP" }, "8703": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "8705": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "DUP2", "path": "84" }, "8706": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "ADD", "path": "84" }, "8707": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7689 ], "op": "MLOAD", "path": "84" }, "8708": { "branch": 400, "fn": "PortfolioHandler.storeAssets", "offset": [ 7675, 7694 ], "op": "ISZERO", "path": "84" }, "8709": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7625, 7694 ], "op": "JUMPDEST", "path": "84" }, "8710": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7621, 7759 ], "op": "ISZERO", "path": "84" }, "8711": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7621, 7759 ], "op": "PUSH2", "path": "84", "value": "0x2214" }, "8714": { "branch": 400, "fn": "PortfolioHandler.storeAssets", "offset": [ 7621, 7759 ], "op": "JUMPI", "path": "84" }, "8715": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7714, 7744 ], "op": "PUSH2", "path": "84", "statement": 182, "value": "0x2214" }, "8718": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7726, 7740 ], "op": "DUP12", "path": "84" }, "8719": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7742, 7743 ], "op": "DUP4", "path": "84" }, "8720": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7714, 7725 ], "op": "PUSH2", "path": "84", "value": "0x29A7" }, "8723": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 7714, 7744 ], "op": "JUMP", "path": "84" }, "8724": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7714, 7744 ], "op": "JUMPDEST", "path": "84" }, "8725": { "op": "POP" }, "8726": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7255, 7258 ], "op": "PUSH1", "path": "84", "statement": 183, "value": "0x1" }, "8728": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7255, 7258 ], "op": "ADD", "path": "84" }, "8729": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "PUSH2", "path": "84", "value": "0x2196" }, "8732": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMP", "path": "84" }, "8733": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "JUMPDEST", "path": "84" }, "8734": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7195, 7769 ], "op": "POP", "path": "84" }, "8735": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7868, 7877 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8737": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMPDEST", "path": "84" }, "8738": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7887, 7914 ], "op": "DUP10", "path": "84" }, "8739": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7887, 7914 ], "op": "MLOAD", "path": "84" }, "8740": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7887, 7921 ], "op": "MLOAD", "path": "84" }, "8741": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7883, 7921 ], "op": "DUP2", "path": "84" }, "8742": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7883, 7921 ], "op": "LT", "path": "84" }, "8743": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "ISZERO", "path": "84" }, "8744": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "PUSH2", "path": "84", "value": "0x22C0" }, "8747": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMPI", "path": "84" }, "8748": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7942, 7969 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8750": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7986 ], "op": "DUP11", "path": "84" }, "8751": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7999 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8753": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7999 ], "op": "ADD", "path": "84" }, "8754": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 7999 ], "op": "MLOAD", "path": "84" }, "8755": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8000, 8001 ], "op": "DUP3", "path": "84" }, "8756": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "DUP2", "path": "84" }, "8757": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "MLOAD", "path": "84" }, "8758": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "DUP2", "path": "84" }, "8759": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "LT", "path": "84" }, "8760": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "PUSH2", "path": "84", "value": "0x223D" }, "8763": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "JUMPI", "path": "84" }, "8764": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "INVALID", "path": "84" }, "8765": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "JUMPDEST", "path": "84" }, "8766": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8768": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "MUL", "path": "84" }, "8769": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8771": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "ADD", "path": "84" }, "8772": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "ADD", "path": "84" }, "8773": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7972, 8002 ], "op": "MLOAD", "path": "84" }, "8774": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7942, 8002 ], "op": "SWAP1", "path": "84" }, "8775": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7942, 8002 ], "op": "POP", "path": "84" }, "8776": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8043, 8067 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "8778": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "8780": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "DUP2", "path": "84" }, "8781": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "GT", "path": "84" }, "8782": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "ISZERO", "path": "84" }, "8783": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH2", "path": "84", "value": "0x2254" }, "8786": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPI", "path": "84" }, "8787": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "INVALID", "path": "84" }, "8788": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPDEST", "path": "84" }, "8789": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8026 ], "op": "DUP2", "path": "84" }, "8790": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8039 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "8792": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8039 ], "op": "ADD", "path": "84" }, "8793": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8039 ], "op": "MLOAD", "path": "84" }, "8794": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "8796": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "DUP2", "path": "84" }, "8797": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "GT", "path": "84" }, "8798": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "ISZERO", "path": "84" }, "8799": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "PUSH2", "path": "84", "value": "0x2264" }, "8802": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPI", "path": "84" }, "8803": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "INVALID", "path": "84" }, "8804": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "JUMPDEST", "path": "84" }, "8805": { "branch": 401, "fn": "PortfolioHandler.storeAssets", "offset": [ 8021, 8067 ], "op": "EQ", "path": "84" }, "8806": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "ISZERO", "path": "84" }, "8807": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "PUSH2", "path": "84", "value": "0x2278" }, "8810": { "branch": 401, "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "JUMPI", "path": "84" }, "8811": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "8813": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "DUP2", "path": "84" }, "8814": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "ADD", "path": "84" }, "8815": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8154, 8171 ], "op": "MLOAD", "path": "84" }, "8816": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8132, 8151 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8818": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8220, 8245 ], "op": "SWAP1", "path": "84" }, "8819": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8220, 8245 ], "op": "SSTORE", "path": "84" }, "8820": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8198, 8263 ], "op": "PUSH2", "path": "84", "value": "0x22B7" }, "8823": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8198, 8263 ], "op": "JUMP", "path": "84" }, "8824": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8198, 8263 ], "op": "JUMPDEST", "path": "84" }, "8825": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8327, 8351 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "8827": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8310 ], "op": "DUP2", "path": "84" }, "8828": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8323 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "8830": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8323 ], "op": "ADD", "path": "84" }, "8831": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8323 ], "op": "MLOAD", "path": "84" }, "8832": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "8834": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "DUP2", "path": "84" }, "8835": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "GT", "path": "84" }, "8836": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "ISZERO", "path": "84" }, "8837": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "PUSH2", "path": "84", "value": "0x228A" }, "8840": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "JUMPI", "path": "84" }, "8841": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "INVALID", "path": "84" }, "8842": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "JUMPDEST", "path": "84" }, "8843": { "branch": 402, "fn": "PortfolioHandler.storeAssets", "offset": [ 8305, 8351 ], "op": "EQ", "path": "84" }, "8844": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "ISZERO", "path": "84" }, "8845": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "PUSH2", "path": "84", "value": "0x22A3" }, "8848": { "branch": 402, "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "JUMPI", "path": "84" }, "8849": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "8851": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "DUP2", "path": "84" }, "8852": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "ADD", "path": "84" }, "8853": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "MLOAD", "path": "84" }, "8854": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "DUP1", "path": "84" }, "8855": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8611, 8643 ], "op": "PUSH2", "path": "84", "statement": 184, "value": "0x22A0" }, "8858": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8466 ], "op": "DUP4", "path": "84" }, "8859": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8461, 8478 ], "op": "DUP3", "path": "84" }, "8860": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8611, 8622 ], "op": "PUSH2", "path": "84", "value": "0x2AF6" }, "8863": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 8611, 8643 ], "op": "JUMP", "path": "84" }, "8864": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8611, 8643 ], "op": "JUMPDEST", "path": "84" }, "8865": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "POP", "path": "84" }, "8866": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "POP", "path": "84" }, "8867": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8301, 8662 ], "op": "JUMPDEST", "path": "84" }, "8868": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8875, 9055 ], "op": "PUSH2", "path": "84", "statement": 185, "value": "0x22AF" }, "8871": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8920, 8925 ], "op": "DUP2", "path": "84" }, "8872": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8947, 8954 ], "op": "DUP7", "path": "84" }, "8873": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8976, 9001 ], "op": "DUP7", "path": "84" }, "8874": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9023, 9037 ], "op": "DUP7", "path": "84" }, "8875": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8875, 8898 ], "op": "PUSH2", "path": "84", "value": "0x2C27" }, "8878": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 8875, 9055 ], "op": "JUMP", "path": "84" }, "8879": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8875, 9055 ], "op": "JUMPDEST", "path": "84" }, "8880": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP2", "path": "84" }, "8881": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP7", "path": "84" }, "8882": { "op": "POP" }, "8883": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP5", "path": "84" }, "8884": { "op": "POP" }, "8885": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8820, 9055 ], "op": "SWAP3", "path": "84" }, "8886": { "op": "POP" }, "8887": { "fn": "PortfolioHandler.storeAssets", "offset": [ 8017, 9070 ], "op": "JUMPDEST", "path": "84" }, "8888": { "op": "POP" }, "8889": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7923, 7926 ], "op": "PUSH1", "path": "84", "statement": 186, "value": "0x1" }, "8891": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7923, 7926 ], "op": "ADD", "path": "84" }, "8892": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "PUSH2", "path": "84", "value": "0x2221" }, "8895": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMP", "path": "84" }, "8896": { "fn": "PortfolioHandler.storeAssets", "offset": [ 7863, 9080 ], "op": "JUMPDEST", "path": "84" }, "8897": { "op": "POP" }, "8898": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "8900": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "DUP10", "path": "84" }, "8901": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "ADD", "path": "84" }, "8902": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9145, 9177 ], "op": "MLOAD", "path": "84" }, "8903": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9116, 9142 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8905": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9280, 9317 ], "op": "PUSH2", "path": "84", "value": "0x22D0" }, "8908": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9280, 9315 ], "op": "PUSH2", "path": "84", "value": "0x1997" }, "8911": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 9280, 9317 ], "op": "JUMP", "path": "84" }, "8912": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9280, 9317 ], "op": "JUMPDEST", "path": "84" }, "8913": { "op": "PUSH1", "value": "0x1" }, "8915": { "op": "PUSH1", "value": "0x1" }, "8917": { "op": "PUSH1", "value": "0xA0" }, "8919": { "op": "SHL" }, "8920": { "op": "SUB" }, "8921": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP12", "path": "84" }, "8922": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "AND", "path": "84" }, "8923": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9327, 9391 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8925": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "SWAP1", "path": "84" }, "8926": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP2", "path": "84" }, "8927": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "MSTORE", "path": "84" }, "8928": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8930": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP3", "path": "84" }, "8931": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "SWAP1", "path": "84" }, "8932": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "MSTORE", "path": "84" }, "8933": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "8935": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "DUP2", "path": "84" }, "8936": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9394, 9408 ], "op": "KECCAK256", "path": "84" }, "8937": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9187, 9317 ], "op": "SWAP2", "path": "84" }, "8938": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9187, 9317 ], "op": "SWAP3", "path": "84" }, "8939": { "op": "POP" }, "8940": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPDEST", "path": "84" }, "8941": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9456 ], "op": "DUP13", "path": "84" }, "8942": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9466 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8944": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9466 ], "op": "ADD", "path": "84" }, "8945": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9466 ], "op": "MLOAD", "path": "84" }, "8946": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9442, 9473 ], "op": "MLOAD", "path": "84" }, "8947": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9438, 9439 ], "op": "DUP2", "path": "84" }, "8948": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9438, 9473 ], "op": "LT", "path": "84" }, "8949": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "ISZERO", "path": "84" }, "8950": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "PUSH2", "path": "84", "value": "0x239A" }, "8953": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPI", "path": "84" }, "8954": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9494, 9521 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8956": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9538 ], "op": "DUP14", "path": "84" }, "8957": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9548 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8959": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9548 ], "op": "ADD", "path": "84" }, "8960": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9548 ], "op": "MLOAD", "path": "84" }, "8961": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9549, 9550 ], "op": "DUP3", "path": "84" }, "8962": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "DUP2", "path": "84" }, "8963": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "MLOAD", "path": "84" }, "8964": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "DUP2", "path": "84" }, "8965": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "LT", "path": "84" }, "8966": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "PUSH2", "path": "84", "value": "0x230B" }, "8969": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "JUMPI", "path": "84" }, "8970": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "INVALID", "path": "84" }, "8971": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "JUMPDEST", "path": "84" }, "8972": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8974": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "MUL", "path": "84" }, "8975": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "8977": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "ADD", "path": "84" }, "8978": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "ADD", "path": "84" }, "8979": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9524, 9551 ], "op": "MLOAD", "path": "84" }, "8980": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9494, 9551 ], "op": "SWAP1", "path": "84" }, "8981": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9494, 9551 ], "op": "POP", "path": "84" }, "8982": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9574 ], "op": "DUP1", "path": "84" }, "8983": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9583 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "8985": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9583 ], "op": "ADD", "path": "84" }, "8986": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9583 ], "op": "MLOAD", "path": "84" }, "8987": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9587, 9588 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "8989": { "branch": 403, "fn": "PortfolioHandler.storeAssets", "offset": [ 9569, 9588 ], "op": "EQ", "path": "84" }, "8990": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "ISZERO", "path": "84" }, "8991": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "PUSH2", "path": "84", "value": "0x2328" }, "8994": { "branch": 403, "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "JUMPI", "path": "84" }, "8995": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9590, 9598 ], "op": "POP", "path": "84", "statement": 187 }, "8996": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9590, 9598 ], "op": "PUSH2", "path": "84", "value": "0x2392" }, "8999": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9590, 9598 ], "op": "JUMP", "path": "84" }, "9000": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9565, 9598 ], "op": "JUMPDEST", "path": "84" }, "9001": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9659, 9683 ], "op": "PUSH1", "path": "84", "statement": 188, "value": "0x2" }, "9003": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9642 ], "op": "DUP2", "path": "84" }, "9004": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9655 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9006": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9655 ], "op": "ADD", "path": "84" }, "9007": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9655 ], "op": "MLOAD", "path": "84" }, "9008": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9010": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "DUP2", "path": "84" }, "9011": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "GT", "path": "84" }, "9012": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "ISZERO", "path": "84" }, "9013": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "PUSH2", "path": "84", "value": "0x233A" }, "9016": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "JUMPI", "path": "84" }, "9017": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "INVALID", "path": "84" }, "9018": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "JUMPDEST", "path": "84" }, "9019": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "EQ", "path": "84" }, "9020": { "branch": 404, "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9683 ], "op": "ISZERO", "path": "84" }, "9021": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "DUP1", "path": "84" }, "9022": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "ISZERO", "path": "84" }, "9023": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "PUSH2", "path": "84", "value": "0x2358" }, "9026": { "branch": 404, "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "JUMPI", "path": "84" }, "9027": { "op": "POP" }, "9028": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9725, 9757 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9030": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9708 ], "op": "DUP2", "path": "84" }, "9031": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9721 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "9033": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9721 ], "op": "ADD", "path": "84" }, "9034": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9721 ], "op": "MLOAD", "path": "84" }, "9035": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "9037": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "DUP2", "path": "84" }, "9038": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "GT", "path": "84" }, "9039": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "ISZERO", "path": "84" }, "9040": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "PUSH2", "path": "84", "value": "0x2355" }, "9043": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "JUMPI", "path": "84" }, "9044": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "INVALID", "path": "84" }, "9045": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "JUMPDEST", "path": "84" }, "9046": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "EQ", "path": "84" }, "9047": { "branch": 405, "fn": "PortfolioHandler.storeAssets", "offset": [ 9703, 9757 ], "op": "ISZERO", "path": "84" }, "9048": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9637, 9757 ], "op": "JUMPDEST", "path": "84" }, "9049": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "PUSH2", "path": "84", "value": "0x2361" }, "9052": { "branch": 405, "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "JUMPI", "path": "84" }, "9053": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9055": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "DUP1", "path": "84" }, "9056": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "REVERT", "path": "84" }, "9057": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9612, 9771 ], "op": "JUMPDEST", "path": "84" }, "9058": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9878, 10038 ], "op": "PUSH2", "path": "84", "statement": 189, "value": "0x236D" }, "9061": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9919, 9924 ], "op": "DUP2", "path": "84" }, "9062": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9942, 9949 ], "op": "DUP10", "path": "84" }, "9063": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9967, 9992 ], "op": "DUP10", "path": "84" }, "9064": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10010, 10024 ], "op": "DUP10", "path": "84" }, "9065": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9878, 9901 ], "op": "PUSH2", "path": "84", "value": "0x2C27" }, "9068": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 9878, 10038 ], "op": "JUMP", "path": "84" }, "9069": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9878, 10038 ], "op": "JUMPDEST", "path": "84" }, "9070": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP2", "path": "84" }, "9071": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP10", "path": "84" }, "9072": { "op": "POP" }, "9073": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP8", "path": "84" }, "9074": { "op": "POP" }, "9075": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9823, 10038 ], "op": "SWAP6", "path": "84" }, "9076": { "op": "POP" }, "9077": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10053, 10105 ], "op": "PUSH2", "path": "84", "statement": 190, "value": "0x238A" }, "9080": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10065, 10070 ], "op": "DUP2", "path": "84" }, "9081": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10084 ], "op": "DUP5", "path": "84" }, "9082": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10085, 10103 ], "op": "DUP8", "path": "84" }, "9083": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "9085": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "DUP2", "path": "84" }, "9086": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "LT", "path": "84" }, "9087": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "PUSH2", "path": "84", "value": "0x2384" }, "9090": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "JUMPI", "path": "84" }, "9091": { "dev": "Index out of range", "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "INVALID", "path": "84" }, "9092": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "JUMPDEST", "path": "84" }, "9093": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10072, 10104 ], "op": "ADD", "path": "84" }, "9094": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10053, 10064 ], "op": "PUSH2", "path": "84", "value": "0x2AF6" }, "9097": { "fn": "PortfolioHandler.storeAssets", "jump": "i", "offset": [ 10053, 10105 ], "op": "JUMP", "path": "84" }, "9098": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10053, 10105 ], "op": "JUMPDEST", "path": "84" }, "9099": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10141, 10142 ], "op": "PUSH1", "path": "84", "statement": 191, "value": "0x1" }, "9101": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "DUP6", "path": "84" }, "9102": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "ADD", "path": "84" }, "9103": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "SWAP5", "path": "84" }, "9104": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10119, 10142 ], "op": "POP", "path": "84" }, "9105": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "POP", "path": "84" }, "9106": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPDEST", "path": "84" }, "9107": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9475, 9478 ], "op": "PUSH1", "path": "84", "statement": 192, "value": "0x1" }, "9109": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9475, 9478 ], "op": "ADD", "path": "84" }, "9110": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "PUSH2", "path": "84", "value": "0x22EC" }, "9113": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMP", "path": "84" }, "9114": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "JUMPDEST", "path": "84" }, "9115": { "fn": "PortfolioHandler.storeAssets", "offset": [ 9418, 10153 ], "op": "POP", "path": "84" }, "9116": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10333, 10335 ], "op": "PUSH1", "path": "84", "statement": 193, "value": "0x10" }, "9118": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10329 ], "op": "DUP4", "path": "84" }, "9119": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10335 ], "op": "GT", "path": "84" }, "9120": { "branch": 406, "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10335 ], "op": "ISZERO", "path": "84" }, "9121": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "DUP1", "path": "84" }, "9122": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "ISZERO", "path": "84" }, "9123": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "PUSH2", "path": "84", "value": "0x23B1" }, "9126": { "branch": 406, "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "JUMPI", "path": "84" }, "9127": { "op": "POP" }, "9128": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10357, 10373 ], "op": "PUSH5", "path": "84", "value": "0xFFFFFFFFFF" }, "9134": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10339, 10373 ], "op": "DUP5", "path": "84" }, "9135": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10339, 10373 ], "op": "GT", "path": "84" }, "9136": { "branch": 407, "fn": "PortfolioHandler.storeAssets", "offset": [ 10339, 10373 ], "op": "ISZERO", "path": "84" }, "9137": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10311, 10373 ], "op": "JUMPDEST", "path": "84" }, "9138": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "PUSH2", "path": "84", "value": "0x23BA" }, "9141": { "branch": 407, "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "JUMPI", "path": "84" }, "9142": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "9144": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "DUP1", "path": "84" }, "9145": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "REVERT", "path": "84" }, "9146": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10303, 10374 ], "op": "JUMPDEST", "path": "84" }, "9147": { "op": "POP" }, "9148": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10445, 10452 ], "op": "SWAP4", "path": "84", "statement": 194 }, "9149": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10445, 10452 ], "op": "SWAP11", "path": "84" }, "9150": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10466, 10491 ], "op": "SWAP3", "path": "84" }, "9151": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10466, 10491 ], "op": "SWAP10", "path": "84" }, "9152": { "op": "POP" }, "9153": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10466, 10491 ], "op": "SWAP8", "path": "84" }, "9154": { "op": "POP" }, "9155": { "fn": "PortfolioHandler.storeAssets", "offset": [ 10511, 10529 ], "op": "SWAP6", "path": "84" }, "9156": { "op": "POP" }, "9157": { "fn": "PortfolioHandler.storeAssets", "offset": [ 6460, 10583 ], "op": "SWAP4", "path": "84" }, "9158": { "op": "POP" }, "9159": { "op": "POP" }, "9160": { "op": "POP" }, "9161": { "op": "POP" }, "9162": { "fn": "PortfolioHandler.storeAssets", "jump": "o", "offset": [ 6460, 10583 ], "op": "JUMP", "path": "84" }, "9163": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 8919, 9670 ], "op": "JUMPDEST", "path": "66" }, "9164": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9004, 9011 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9166": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9004, 9011 ], "op": "DUP1", "path": "66" }, "9167": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9150, 9174 ], "op": "PUSH32", "path": "66", "value": "0x7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF0000000000000000000000000000" }, "9200": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9131, 9174 ], "op": "DUP4", "path": "66" }, "9201": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9131, 9174 ], "op": "AND", "path": "66" }, "9202": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9004, 9011 ], "op": "DUP2", "path": "66" }, "9203": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMPDEST", "path": "66" }, "9204": { "op": "PUSH1", "value": "0x1" }, "9206": { "op": "PUSH1", "value": "0x1" }, "9208": { "op": "PUSH1", "value": "0x70" }, "9210": { "op": "SHL" }, "9211": { "op": "SUB" }, "9212": { "op": "NOT" }, "9213": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9309, 9323 ], "op": "DUP3", "path": "66" }, "9214": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9309, 9323 ], "op": "AND", "path": "66" }, "9215": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9309, 9323 ], "op": "ISZERO", "path": "66" }, "9216": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "PUSH2", "path": "66", "value": "0x243D" }, "9219": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMPI", "path": "66" }, "9220": { "op": "PUSH1", "value": "0x1" }, "9222": { "op": "PUSH1", "value": "0xFE" }, "9224": { "op": "SHL" }, "9225": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9388 ], "op": "DUP3", "path": "66" }, "9226": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9388 ], "op": "DUP2", "path": "66" }, "9227": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9388 ], "op": "AND", "path": "66" }, "9228": { "branch": 330, "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9343, 9420 ], "op": "EQ", "path": "66" }, "9229": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "ISZERO", "path": "66" }, "9230": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "PUSH2", "path": "66", "value": "0x2427" }, "9233": { "branch": 330, "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "JUMPI", "path": "66" }, "9234": { "op": "PUSH1", "value": "0x1" }, "9236": { "op": "PUSH1", "value": "0x1" }, "9238": { "op": "PUSH1", "value": "0xF0" }, "9240": { "op": "SHL" }, "9241": { "op": "SUB" }, "9242": { "op": "NOT" }, "9243": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9539 ], "op": "DUP3", "path": "66", "statement": 195 }, "9244": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9539 ], "op": "AND", "path": "66" }, "9245": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9549 ], "op": "DUP2", "path": "66" }, "9246": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9516, 9549 ], "op": "SHR", "path": "66" }, "9247": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP3", "path": "66" }, "9248": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP1", "path": "66" }, "9249": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP3", "path": "66" }, "9250": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "OR", "path": "66" }, "9251": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9506, 9550 ], "op": "SWAP2", "path": "66" }, "9252": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9578, 9580 ], "op": "PUSH1", "path": "66", "statement": 196, "value": "0x10" }, "9254": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9568, 9580 ], "op": "ADD", "path": "66" }, "9255": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9339, 9595 ], "op": "JUMPDEST", "path": "66" }, "9256": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9627, 9629 ], "op": "PUSH1", "path": "66", "statement": 197, "value": "0x10" }, "9258": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9623 ], "op": "DUP3", "path": "66" }, "9259": { "op": "PUSH1", "value": "0x1" }, "9261": { "op": "PUSH1", "value": "0x1" }, "9263": { "op": "PUSH1", "value": "0x70" }, "9265": { "op": "SHL" }, "9266": { "op": "SUB" }, "9267": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "NOT", "path": "66" }, "9268": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "AND", "path": "66" }, "9269": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "SWAP1", "path": "66" }, "9270": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9617, 9629 ], "op": "SHL", "path": "66" }, "9271": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9608, 9629 ], "op": "SWAP2", "path": "66" }, "9272": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9608, 9629 ], "op": "POP", "path": "66" }, "9273": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "PUSH2", "path": "66", "value": "0x23F3" }, "9276": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMP", "path": "66" }, "9277": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9302, 9640 ], "op": "JUMPDEST", "path": "66" }, "9278": { "op": "POP" }, "9279": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9657, 9663 ], "op": "SWAP1", "path": "66", "statement": 198 }, "9280": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 9657, 9663 ], "op": "SWAP4", "path": "66" }, "9281": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "offset": [ 8919, 9670 ], "op": "SWAP3", "path": "66" }, "9282": { "op": "POP" }, "9283": { "op": "POP" }, "9284": { "op": "POP" }, "9285": { "fn": "AccountContextHandler._clearPortfolioActiveFlags", "jump": "o", "offset": [ 8919, 9670 ], "op": "JUMP", "path": "66" }, "9286": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "JUMPDEST", "path": "66" }, "9287": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5435, 5445 ], "op": "DUP3", "path": "66", "statement": 199 }, "9288": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5432 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9290": { "branch": 331, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5445 ], "op": "LT", "path": "66" }, "9291": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "DUP1", "path": "66" }, "9292": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "ISZERO", "path": "66" }, "9293": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "PUSH2", "path": "66", "value": "0x2458" }, "9296": { "branch": 331, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "JUMPI", "path": "66" }, "9297": { "op": "POP" }, "9298": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "9301": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5449, 5487 ], "op": "DUP4", "path": "66" }, "9302": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5449, 5487 ], "op": "GT", "path": "66" }, "9303": { "branch": 332, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5449, 5487 ], "op": "ISZERO", "path": "66" }, "9304": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5431, 5487 ], "op": "JUMPDEST", "path": "66" }, "9305": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "PUSH2", "path": "66", "value": "0x2461" }, "9308": { "branch": 332, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "JUMPI", "path": "66" }, "9309": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9311": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "DUP1", "path": "66" }, "9312": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "REVERT", "path": "66" }, "9313": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5423, 5488 ], "op": "JUMPDEST", "path": "66" }, "9314": { "branch": 333, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5715 ], "op": "DUP2", "path": "66" }, "9315": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "DUP1", "path": "66" }, "9316": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "ISZERO", "path": "66" }, "9317": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "PUSH2", "path": "66", "value": "0x2475" }, "9320": { "branch": 333, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "JUMPI", "path": "66" }, "9321": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "POP", "path": "66" }, "9322": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5754, 5764 ], "op": "DUP3", "path": "66" }, "9323": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5733 ], "op": "DUP5", "path": "66" }, "9324": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5750 ], "op": "PUSH1", "path": "66", "value": "0x60" }, "9326": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5750 ], "op": "ADD", "path": "66" }, "9327": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5750 ], "op": "MLOAD", "path": "66" }, "9328": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5764 ], "op": "PUSH2", "path": "66", "value": "0xFFFF" }, "9331": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5764 ], "op": "AND", "path": "66" }, "9332": { "branch": 334, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5719, 5764 ], "op": "EQ", "path": "66" }, "9333": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5707, 5764 ], "op": "JUMPDEST", "path": "66" }, "9334": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "ISZERO", "path": "66" }, "9335": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "PUSH2", "path": "66", "value": "0x247F" }, "9338": { "branch": 334, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "JUMPI", "path": "66" }, "9339": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5766, 5773 ], "op": "PUSH2", "path": "66", "statement": 200, "value": "0x1632" }, "9342": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5766, 5773 ], "op": "JUMP", "path": "66" }, "9343": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5703, 5773 ], "op": "JUMPDEST", "path": "66" }, "9344": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "9346": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "DUP5", "path": "66" }, "9347": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "ADD", "path": "66" }, "9348": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5824, 5855 ], "op": "MLOAD", "path": "66" }, "9349": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5783, 5797 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9351": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5783, 5797 ], "op": "SWAP1", "path": "66" }, "9352": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5783, 5797 ], "op": "DUP2", "path": "66" }, "9353": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMPDEST", "path": "66" }, "9354": { "op": "PUSH1", "value": "0x1" }, "9356": { "op": "PUSH1", "value": "0x1" }, "9358": { "op": "PUSH1", "value": "0x70" }, "9360": { "op": "SHL" }, "9361": { "op": "SUB" }, "9362": { "op": "NOT" }, "9363": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6691, 6705 ], "op": "DUP3", "path": "66" }, "9364": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6691, 6705 ], "op": "AND", "path": "66" }, "9365": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6691, 6705 ], "op": "ISZERO", "path": "66" }, "9366": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "PUSH2", "path": "66", "value": "0x25FA" }, "9369": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMPI", "path": "66" }, "9370": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6767, 6789 ], "op": "PUSH1", "path": "66", "value": "0xF0" }, "9372": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "DUP3", "path": "66" }, "9373": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "SWAP1", "path": "66" }, "9374": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "SHR", "path": "66" }, "9375": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "9378": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6743, 6790 ], "op": "AND", "path": "66" }, "9379": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6894 ], "op": "DUP7", "path": "66" }, "9380": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6894 ], "op": "DUP2", "path": "66" }, "9381": { "branch": 335, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6894 ], "op": "EQ", "path": "66" }, "9382": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "DUP1", "path": "66" }, "9383": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "ISZERO", "path": "66" }, "9384": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "PUSH2", "path": "66", "value": "0x24AE" }, "9387": { "branch": 335, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "JUMPI", "path": "66" }, "9388": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "POP", "path": "66" }, "9389": { "branch": 336, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6898, 6906 ], "op": "DUP6", "path": "66" }, "9390": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6877, 6906 ], "op": "JUMPDEST", "path": "66" }, "9391": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "ISZERO", "path": "66" }, "9392": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "PUSH2", "path": "66", "value": "0x24E6" }, "9395": { "branch": 336, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "JUMPI", "path": "66" }, "9396": { "op": "POP" }, "9397": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "PUSH1", "path": "66", "statement": 201, "value": "0x80" }, "9399": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "DUP8", "path": "66" }, "9400": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "ADD", "path": "66" }, "9401": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "DUP1", "path": "66" }, "9402": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7050 ], "op": "MLOAD", "path": "66" }, "9403": { "op": "PUSH1", "value": "0x1" }, "9405": { "op": "PUSH1", "value": "0x1" }, "9407": { "op": "PUSH1", "value": "0xF0" }, "9409": { "op": "SHL" }, "9410": { "op": "SUB" }, "9411": { "op": "NOT" }, "9412": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7088 ], "op": "DUP7", "path": "66" }, "9413": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7088 ], "op": "AND", "path": "66" }, "9414": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7102, 7104 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9416": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7093, 7104 ], "op": "SWAP1", "path": "66" }, "9417": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7093, 7104 ], "op": "SWAP4", "path": "66" }, "9418": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7093, 7104 ], "op": "MUL", "path": "66" }, "9419": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SWAP3", "path": "66" }, "9420": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SWAP1", "path": "66" }, "9421": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SWAP3", "path": "66" }, "9422": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7074, 7105 ], "op": "SHR", "path": "66" }, "9423": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "SWAP2", "path": "66" }, "9424": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "SWAP1", "path": "66" }, "9425": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "SWAP2", "path": "66" }, "9426": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7019, 7106 ], "op": "OR", "path": "66" }, "9427": { "op": "PUSH1", "value": "0x1" }, "9429": { "op": "PUSH1", "value": "0x1" }, "9431": { "op": "PUSH1", "value": "0x70" }, "9433": { "op": "SHL" }, "9434": { "op": "SUB" }, "9435": { "op": "NOT" }, "9436": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6965, 7106 ], "op": "AND", "path": "66" }, "9437": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6965, 7106 ], "op": "SWAP1", "path": "66" }, "9438": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6965, 7106 ], "op": "MSTORE", "path": "66" }, "9439": { "op": "POP" }, "9440": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7124, 7131 ], "op": "PUSH2", "path": "66", "statement": 202, "value": "0x1632" }, "9443": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7124, 7131 ], "op": "SWAP1", "path": "66" }, "9444": { "op": "POP" }, "9445": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7124, 7131 ], "op": "JUMP", "path": "66" }, "9446": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6873, 7145 ], "op": "JUMPDEST", "path": "66" }, "9447": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7239, 7249 ], "op": "DUP7", "path": "66" }, "9448": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7235 ], "op": "DUP2", "path": "66" }, "9449": { "branch": 337, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7249 ], "op": "EQ", "path": "66" }, "9450": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "DUP1", "path": "66" }, "9451": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "ISZERO", "path": "66" }, "9452": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "PUSH2", "path": "66", "value": "0x24F3" }, "9455": { "branch": 337, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "JUMPI", "path": "66" }, "9456": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "POP", "path": "66" }, "9457": { "branch": 338, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7254, 7262 ], "op": "DUP6", "path": "66" }, "9458": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7253, 7262 ], "op": "ISZERO", "path": "66" }, "9459": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7232, 7262 ], "op": "JUMPDEST", "path": "66" }, "9460": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "ISZERO", "path": "66" }, "9461": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "PUSH2", "path": "66", "value": "0x2548" }, "9464": { "branch": 338, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "JUMPI", "path": "66" }, "9465": { "op": "PUSH1", "value": "0x1" }, "9467": { "op": "PUSH1", "value": "0x1" }, "9469": { "op": "PUSH1", "value": "0xF0" }, "9471": { "op": "SHL" }, "9472": { "op": "SUB" }, "9473": { "op": "NOT" }, "9474": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7369, 7383 ], "op": "DUP6", "path": "66", "statement": 203 }, "9475": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7369, 7383 ], "op": "AND", "path": "66" }, "9476": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7368, 7383 ], "op": "NOT", "path": "66" }, "9477": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP3", "path": "66" }, "9478": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP1", "path": "66" }, "9479": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP3", "path": "66" }, "9480": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "AND", "path": "66" }, "9481": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7359, 7383 ], "op": "SWAP2", "path": "66" }, "9482": { "op": "PUSH1", "value": "0x3" }, "9484": { "op": "PUSH1", "value": "0xFE" }, "9486": { "op": "SHL" }, "9487": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7405, 7455 ], "op": "DUP4", "path": "66" }, "9488": { "branch": 339, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7405, 7455 ], "op": "AND", "path": "66" }, "9489": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7401, 7478 ], "op": "PUSH2", "path": "66", "value": "0x2526" }, "9492": { "branch": 339, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7401, 7478 ], "op": "JUMPI", "path": "66" }, "9493": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7476, 7478 ], "op": "PUSH1", "path": "66", "statement": 204, "value": "0x10" }, "9495": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7472 ], "op": "DUP4", "path": "66" }, "9496": { "op": "PUSH1", "value": "0x1" }, "9498": { "op": "PUSH1", "value": "0x1" }, "9500": { "op": "PUSH1", "value": "0x70" }, "9502": { "op": "SHL" }, "9503": { "op": "SUB" }, "9504": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "NOT", "path": "66" }, "9505": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "AND", "path": "66" }, "9506": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "SWAP1", "path": "66" }, "9507": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7466, 7478 ], "op": "SHL", "path": "66" }, "9508": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7457, 7478 ], "op": "SWAP3", "path": "66" }, "9509": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7457, 7478 ], "op": "POP", "path": "66" }, "9510": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7401, 7478 ], "op": "JUMPDEST", "path": "66" }, "9511": { "op": "POP" }, "9512": { "op": "PUSH1", "value": "0x1" }, "9514": { "op": "PUSH1", "value": "0x1" }, "9516": { "op": "PUSH1", "value": "0x70" }, "9518": { "op": "SHL" }, "9519": { "op": "SUB" }, "9520": { "op": "NOT" }, "9521": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "SWAP2", "path": "66", "statement": 205 }, "9522": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "DUP3", "path": "66" }, "9523": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "AND", "path": "66" }, "9524": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7560, 7562 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9526": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7551, 7562 ], "op": "SWAP1", "path": "66" }, "9527": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7551, 7562 ], "op": "SWAP2", "path": "66" }, "9528": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7551, 7562 ], "op": "MUL", "path": "66" }, "9529": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7540, 7563 ], "op": "SHR", "path": "66" }, "9530": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "SWAP2", "path": "66" }, "9531": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "SWAP1", "path": "66" }, "9532": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "SWAP2", "path": "66" }, "9533": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7530, 7564 ], "op": "OR", "path": "66" }, "9534": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7564 ], "op": "AND", "path": "66" }, "9535": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7527 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "9537": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7527 ], "op": "DUP6", "path": "66" }, "9538": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7527 ], "op": "ADD", "path": "66" }, "9539": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7496, 7564 ], "op": "MSTORE", "path": "66" }, "9540": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7582, 7589 ], "op": "PUSH2", "path": "66", "statement": 206, "value": "0x1632" }, "9543": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7582, 7589 ], "op": "JUMP", "path": "66" }, "9544": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7228, 7603 ], "op": "JUMPDEST", "path": "66" }, "9545": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7695, 7705 ], "op": "DUP7", "path": "66" }, "9546": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7692 ], "op": "DUP2", "path": "66" }, "9547": { "branch": 340, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7705 ], "op": "GT", "path": "66" }, "9548": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "DUP1", "path": "66" }, "9549": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "ISZERO", "path": "66" }, "9550": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "PUSH2", "path": "66", "value": "0x2554" }, "9553": { "branch": 340, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "JUMPI", "path": "66" }, "9554": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "POP", "path": "66" }, "9555": { "branch": 341, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7709, 7717 ], "op": "DUP6", "path": "66" }, "9556": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7689, 7717 ], "op": "JUMPDEST", "path": "66" }, "9557": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "ISZERO", "path": "66" }, "9558": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "PUSH2", "path": "66", "value": "0x25AE" }, "9561": { "branch": 341, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "JUMPI", "path": "66" }, "9562": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8046, 8049 ], "op": "PUSH1", "path": "66", "statement": 207, "value": "0x80" }, "9564": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "DUP9", "path": "66" }, "9565": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "DUP2", "path": "66" }, "9566": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "ADD", "path": "66" }, "9567": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8042 ], "op": "MLOAD", "path": "66" }, "9568": { "op": "PUSH1", "value": "0x1" }, "9570": { "op": "PUSH1", "value": "0x1" }, "9572": { "op": "PUSH1", "value": "0xF0" }, "9574": { "op": "SHL" }, "9575": { "op": "SUB" }, "9576": { "op": "NOT" }, "9577": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "PUSH1", "path": "66", "statement": 208, "value": "0xF0" }, "9579": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "DUP11", "path": "66" }, "9580": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "SWAP1", "path": "66" }, "9581": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7790 ], "op": "SHL", "path": "66" }, "9582": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7798 ], "op": "DUP9", "path": "66" }, "9583": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7764, 7798 ], "op": "OR", "path": "66" }, "9584": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7756, 7799 ], "op": "DUP2", "path": "66" }, "9585": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7756, 7799 ], "op": "AND", "path": "66" }, "9586": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7813, 7815 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9588": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7804, 7815 ], "op": "DUP7", "path": "66" }, "9589": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7804, 7815 ], "op": "MUL", "path": "66" }, "9590": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7756, 7816 ], "op": "SHR", "path": "66" }, "9591": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP7", "path": "66" }, "9592": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP1", "path": "66" }, "9593": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP7", "path": "66" }, "9594": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "OR", "path": "66" }, "9595": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7746, 7817 ], "op": "SWAP6", "path": "66" }, "9596": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8049 ], "op": "SWAP2", "path": "66" }, "9597": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8049 ], "op": "SHL", "path": "66" }, "9598": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8011, 8049 ], "op": "AND", "path": "66" }, "9599": { "branch": 342, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8010, 8058 ], "op": "ISZERO", "path": "66" }, "9600": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "PUSH2", "path": "66", "value": "0x2588" }, "9603": { "branch": 342, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "JUMPI", "path": "66" }, "9604": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9606": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "DUP1", "path": "66" }, "9607": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "REVERT", "path": "66" }, "9608": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8002, 8059 ], "op": "JUMPDEST", "path": "66" }, "9609": { "op": "POP" }, "9610": { "op": "PUSH1", "value": "0x1" }, "9612": { "op": "PUSH1", "value": "0x1" }, "9614": { "op": "PUSH1", "value": "0x70" }, "9616": { "op": "SHL" }, "9617": { "op": "SUB" }, "9618": { "op": "NOT" }, "9619": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "SWAP2", "path": "66", "statement": 209 }, "9620": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "DUP3", "path": "66" }, "9621": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "AND", "path": "66" }, "9622": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8212, 8213 ], "op": "PUSH1", "path": "66", "value": "0x1" }, "9624": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "SWAP2", "path": "66" }, "9625": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "SWAP1", "path": "66" }, "9626": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "SWAP2", "path": "66" }, "9627": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8203, 8213 ], "op": "ADD", "path": "66" }, "9628": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8217, 8219 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9630": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8202, 8219 ], "op": "MUL", "path": "66" }, "9631": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8191, 8220 ], "op": "SHR", "path": "66" }, "9632": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "SWAP2", "path": "66" }, "9633": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "SWAP1", "path": "66" }, "9634": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "SWAP2", "path": "66" }, "9635": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8181, 8221 ], "op": "OR", "path": "66" }, "9636": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8221 ], "op": "AND", "path": "66" }, "9637": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8178 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "9639": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8178 ], "op": "DUP6", "path": "66" }, "9640": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8178 ], "op": "ADD", "path": "66" }, "9641": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8147, 8221 ], "op": "MSTORE", "path": "66" }, "9642": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8239, 8246 ], "op": "PUSH2", "path": "66", "statement": 210, "value": "0x1632" }, "9645": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8239, 8246 ], "op": "JUMP", "path": "66" }, "9646": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 7685, 8260 ], "op": "JUMPDEST", "path": "66" }, "9647": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8364, 8374 ], "op": "DUP7", "path": "66" }, "9648": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8361 ], "op": "DUP2", "path": "66" }, "9649": { "branch": 343, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8374 ], "op": "GT", "path": "66" }, "9650": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "DUP1", "path": "66" }, "9651": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "ISZERO", "path": "66" }, "9652": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "PUSH2", "path": "66", "value": "0x25BB" }, "9655": { "branch": 343, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "JUMPI", "path": "66" }, "9656": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "POP", "path": "66" }, "9657": { "branch": 344, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8379, 8387 ], "op": "DUP6", "path": "66" }, "9658": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8378, 8387 ], "op": "ISZERO", "path": "66" }, "9659": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8358, 8387 ], "op": "JUMPDEST", "path": "66" }, "9660": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "ISZERO", "path": "66" }, "9661": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "PUSH2", "path": "66", "value": "0x25C9" }, "9664": { "branch": 344, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "JUMPI", "path": "66" }, "9665": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66", "statement": 211 }, "9666": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66" }, "9667": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66" }, "9668": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "POP", "path": "66" }, "9669": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "PUSH2", "path": "66", "value": "0x1632" }, "9672": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8389, 8396 ], "op": "JUMP", "path": "66" }, "9673": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8354, 8396 ], "op": "JUMPDEST", "path": "66" }, "9674": { "op": "POP" }, "9675": { "op": "PUSH1", "value": "0x1" }, "9677": { "op": "PUSH1", "value": "0x1" }, "9679": { "op": "PUSH1", "value": "0xF0" }, "9681": { "op": "SHL" }, "9682": { "op": "SUB" }, "9683": { "op": "NOT" }, "9684": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8452 ], "op": "DUP3", "path": "66", "statement": 212 }, "9685": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8452 ], "op": "AND", "path": "66" }, "9686": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8466, 8468 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9688": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8457, 8468 ], "op": "DUP3", "path": "66" }, "9689": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8457, 8468 ], "op": "DUP2", "path": "66" }, "9690": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8457, 8468 ], "op": "MUL", "path": "66" }, "9691": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SWAP2", "path": "66" }, "9692": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SWAP1", "path": "66" }, "9693": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SWAP2", "path": "66" }, "9694": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8429, 8469 ], "op": "SHR", "path": "66" }, "9695": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP4", "path": "66" }, "9696": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP1", "path": "66" }, "9697": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP4", "path": "66" }, "9698": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "OR", "path": "66" }, "9699": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8419, 8470 ], "op": "SWAP3", "path": "66" }, "9700": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP2", "path": "66", "statement": 213 }, "9701": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP1", "path": "66" }, "9702": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP2", "path": "66" }, "9703": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SHL", "path": "66" }, "9704": { "op": "PUSH1", "value": "0x1" }, "9706": { "op": "PUSH1", "value": "0x1" }, "9708": { "op": "PUSH1", "value": "0x80" }, "9710": { "op": "SHL" }, "9711": { "op": "SUB" }, "9712": { "op": "NOT" }, "9713": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "AND", "path": "66" }, "9714": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8493, 8505 ], "op": "SWAP1", "path": "66" }, "9715": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8529, 8530 ], "op": "PUSH1", "path": "66", "statement": 214, "value": "0x1" }, "9717": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8519, 8530 ], "op": "ADD", "path": "66" }, "9718": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "PUSH2", "path": "66", "value": "0x2489" }, "9721": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMP", "path": "66" }, "9722": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 6684, 8541 ], "op": "JUMPDEST", "path": "66" }, "9723": { "branch": 345, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8616, 8624 ], "op": "DUP5", "path": "66" }, "9724": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8611, 8633 ], "op": "PUSH2", "path": "66", "value": "0x2607" }, "9727": { "branch": 345, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8611, 8633 ], "op": "JUMPI", "path": "66" }, "9728": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "POP", "path": "66", "statement": 215 }, "9729": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "POP", "path": "66" }, "9730": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "POP", "path": "66" }, "9731": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "PUSH2", "path": "66", "value": "0x1632" }, "9734": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8626, 8633 ], "op": "JUMP", "path": "66" }, "9735": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8611, 8633 ], "op": "JUMPDEST", "path": "66" }, "9736": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8733, 8734 ], "op": "PUSH1", "path": "66", "statement": 216, "value": "0x9" }, "9738": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8724, 8730 ], "op": "DUP2", "path": "66" }, "9739": { "branch": 346, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8724, 8734 ], "op": "LT", "path": "66" }, "9740": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "PUSH2", "path": "66", "value": "0x2614" }, "9743": { "branch": 346, "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "JUMPI", "path": "66" }, "9744": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "PUSH1", "path": "66", "value": "0x0" }, "9746": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "DUP1", "path": "66" }, "9747": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "REVERT", "path": "66" }, "9748": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8716, 8735 ], "op": "JUMPDEST", "path": "66" }, "9749": { "op": "PUSH1", "value": "0x1" }, "9751": { "op": "PUSH1", "value": "0x1" }, "9753": { "op": "PUSH1", "value": "0xF0" }, "9755": { "op": "SHL" }, "9756": { "op": "SUB" }, "9757": { "op": "NOT" }, "9758": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "PUSH1", "path": "66", "statement": 217, "value": "0xF0" }, "9760": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "DUP8", "path": "66" }, "9761": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "SWAP1", "path": "66" }, "9762": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8879 ], "op": "SHL", "path": "66" }, "9763": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8887 ], "op": "DUP6", "path": "66" }, "9764": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8853, 8887 ], "op": "OR", "path": "66" }, "9765": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8845, 8888 ], "op": "AND", "path": "66" }, "9766": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8902, 8904 ], "op": "PUSH1", "path": "66", "value": "0x10" }, "9768": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8893, 8904 ], "op": "SWAP1", "path": "66" }, "9769": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8893, 8904 ], "op": "SWAP2", "path": "66" }, "9770": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8893, 8904 ], "op": "MUL", "path": "66" }, "9771": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8845, 8905 ], "op": "SHR", "path": "66" }, "9772": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "SWAP2", "path": "66" }, "9773": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "SWAP1", "path": "66" }, "9774": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "SWAP2", "path": "66" }, "9775": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8823, 8906 ], "op": "OR", "path": "66" }, "9776": { "op": "PUSH1", "value": "0x1" }, "9778": { "op": "PUSH1", "value": "0x1" }, "9780": { "op": "PUSH1", "value": "0x70" }, "9782": { "op": "SHL" }, "9783": { "op": "SUB" }, "9784": { "op": "NOT" }, "9785": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8906 ], "op": "AND", "path": "66" }, "9786": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8808 ], "op": "PUSH1", "path": "66", "value": "0x80" }, "9788": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8808 ], "op": "DUP7", "path": "66" }, "9789": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8808 ], "op": "ADD", "path": "66" }, "9790": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 8777, 8906 ], "op": "MSTORE", "path": "66" }, "9791": { "op": "POP" }, "9792": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9793": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9794": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9795": { "fn": "AccountContextHandler.setActiveCurrency", "offset": [ 5247, 8913 ], "op": "POP", "path": "66" }, "9796": { "fn": "AccountContextHandler.setActiveCurrency", "jump": "o", "offset": [ 5247, 8913 ], "op": "JUMP", "path": "66" }, "9797": { "fn": "SafeInt256.mul", "offset": [ 398, 588 ], "op": "JUMPDEST", "path": "94" }, "9798": { "fn": "SafeInt256.mul", "offset": [ 478, 483 ], "op": "DUP2", "path": "94", "statement": 218 }, "9799": { "fn": "SafeInt256.mul", "offset": [ 478, 483 ], "op": "DUP2", "path": "94" }, "9800": { "fn": "SafeInt256.mul", "offset": [ 478, 483 ], "op": "MUL", "path": "94" }, "9801": { "op": "PUSH1", "value": "0x0" }, "9803": { "op": "NOT" }, "9804": { "fn": "SafeInt256.mul", "offset": [ 497, 504 ], "op": "DUP4", "path": "94" }, "9805": { "branch": 438, "fn": "SafeInt256.mul", "offset": [ 497, 504 ], "op": "EQ", "path": "94" }, "9806": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "ISZERO", "path": "94" }, "9807": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "PUSH2", "path": "94", "value": "0x2675" }, "9810": { "branch": 438, "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "JUMPI", "path": "94" }, "9811": { "fn": "SafeInt256.mul", "offset": [ 515, 521 ], "op": "DUP2", "path": "94", "statement": 219 }, "9812": { "fn": "SafeInt256.mul", "offset": [ 515, 521 ], "op": "ISZERO", "path": "94" }, "9813": { "branch": 439, "fn": "SafeInt256.mul", "offset": [ 515, 521 ], "op": "DUP1", "path": "94" }, "9814": { "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "PUSH2", "path": "94", "value": "0x2667" }, "9817": { "branch": 439, "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "JUMPI", "path": "94" }, "9818": { "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "POP", "path": "94" }, "9819": { "fn": "SafeInt256.mul", "offset": [ 534, 535 ], "op": "DUP3", "path": "94" }, "9820": { "fn": "SafeInt256.mul", "offset": [ 529, 530 ], "op": "DUP3", "path": "94" }, "9821": { "fn": "SafeInt256.mul", "offset": [ 525, 526 ], "op": "DUP3", "path": "94" }, "9822": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "DUP2", "path": "94" }, "9823": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "PUSH2", "path": "94", "value": "0x2664" }, "9826": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "JUMPI", "path": "94" }, "9827": { "dev": "Division by zero", "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "INVALID", "path": "94" }, "9828": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "JUMPDEST", "path": "94" }, "9829": { "fn": "SafeInt256.mul", "offset": [ 525, 530 ], "op": "SDIV", "path": "94" }, "9830": { "branch": 440, "fn": "SafeInt256.mul", "offset": [ 525, 535 ], "op": "EQ", "path": "94" }, "9831": { "fn": "SafeInt256.mul", "offset": [ 515, 535 ], "op": "JUMPDEST", "path": "94" }, "9832": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "PUSH2", "path": "94", "value": "0x2670" }, "9835": { "branch": 440, "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "JUMPI", "path": "94" }, "9836": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "9838": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "DUP1", "path": "94" }, "9839": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "REVERT", "path": "94" }, "9840": { "fn": "SafeInt256.mul", "offset": [ 506, 536 ], "op": "JUMPDEST", "path": "94" }, "9841": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "PUSH2", "path": "94", "value": "0x30C" }, "9844": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "JUMP", "path": "94" }, "9845": { "fn": "SafeInt256.mul", "offset": [ 493, 581 ], "op": "JUMPDEST", "path": "94" }, "9846": { "fn": "SafeInt256.mul", "offset": [ 560, 566 ], "op": "DUP3", "path": "94", "statement": 220 }, "9847": { "fn": "SafeInt256.mul", "offset": [ 560, 566 ], "op": "ISZERO", "path": "94" }, "9848": { "branch": 441, "fn": "SafeInt256.mul", "offset": [ 560, 566 ], "op": "DUP1", "path": "94" }, "9849": { "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "PUSH2", "path": "94", "value": "0x268A" }, "9852": { "branch": 441, "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "JUMPI", "path": "94" }, "9853": { "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "POP", "path": "94" }, "9854": { "fn": "SafeInt256.mul", "offset": [ 579, 580 ], "op": "DUP2", "path": "94" }, "9855": { "fn": "SafeInt256.mul", "offset": [ 574, 575 ], "op": "DUP4", "path": "94" }, "9856": { "fn": "SafeInt256.mul", "offset": [ 570, 571 ], "op": "DUP3", "path": "94" }, "9857": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "DUP2", "path": "94" }, "9858": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "PUSH2", "path": "94", "value": "0x2687" }, "9861": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "JUMPI", "path": "94" }, "9862": { "dev": "Division by zero", "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "INVALID", "path": "94" }, "9863": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "JUMPDEST", "path": "94" }, "9864": { "fn": "SafeInt256.mul", "offset": [ 570, 575 ], "op": "SDIV", "path": "94" }, "9865": { "branch": 442, "fn": "SafeInt256.mul", "offset": [ 570, 580 ], "op": "EQ", "path": "94" }, "9866": { "fn": "SafeInt256.mul", "offset": [ 560, 580 ], "op": "JUMPDEST", "path": "94" }, "9867": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "PUSH2", "path": "94", "value": "0x30C" }, "9870": { "branch": 442, "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "JUMPI", "path": "94" }, "9871": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "9873": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "DUP1", "path": "94" }, "9874": { "fn": "SafeInt256.mul", "offset": [ 551, 581 ], "op": "REVERT", "path": "94" }, "9875": { "fn": "LibStorage.getCashGroupStorage", "offset": [ 4677, 4894 ], "op": "JUMPDEST", "path": "62" }, "9876": { "fn": "LibStorage.getCashGroupStorage", "offset": [ 4739, 4780 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "9878": { "fn": "LibStorage.getCashGroupStorage", "offset": [ 4796, 4808 ], "op": "DUP1", "path": "62" }, "9879": { "fn": "LibStorage.getCashGroupStorage", "offset": [ 4811, 4847 ], "op": "PUSH2", "path": "62", "value": "0x30C" }, "9882": { "fn": "LibStorage.getCashGroupStorage", "offset": [ 4827, 4846 ], "op": "PUSH1", "path": "62", "value": "0x9" }, "9884": { "fn": "LibStorage.getCashGroupStorage", "offset": [ 4811, 4826 ], "op": "PUSH2", "path": "62", "value": "0x1971" }, "9887": { "fn": "LibStorage.getCashGroupStorage", "jump": "i", "offset": [ 4811, 4847 ], "op": "JUMP", "path": "62" }, "9888": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 656, 922 ], "op": "JUMPDEST", "path": "83" }, "9889": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 741, 761 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "9891": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 773, 834 ], "op": "DUP1", "path": "83" }, "9892": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 837, 872 ], "op": "PUSH2", "path": "83", "value": "0x26AB" }, "9895": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 837, 870 ], "op": "PUSH2", "path": "83", "value": "0x2C8A" }, "9898": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "jump": "i", "offset": [ 837, 872 ], "op": "JUMP", "path": "83" }, "9899": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 837, 872 ], "op": "JUMPDEST", "path": "83" }, "9900": { "op": "PUSH1", "value": "0x1" }, "9902": { "op": "PUSH1", "value": "0x1" }, "9904": { "op": "PUSH1", "value": "0xA0" }, "9906": { "op": "SHL" }, "9907": { "op": "SUB" }, "9908": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "DUP6", "path": "83", "statement": 221 }, "9909": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "AND", "path": "83" }, "9910": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "9912": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "SWAP1", "path": "83" }, "9913": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "DUP2", "path": "83" }, "9914": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "MSTORE", "path": "83" }, "9915": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "9917": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "SWAP2", "path": "83" }, "9918": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "DUP3", "path": "83" }, "9919": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "MSTORE", "path": "83" }, "9920": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "PUSH1", "path": "83", "value": "0x40" }, "9922": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "DUP1", "path": "83" }, "9923": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "DUP3", "path": "83" }, "9924": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 903 ], "op": "KECCAK256", "path": "83" }, "9925": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "DUP7", "path": "83" }, "9926": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "DUP4", "path": "83" }, "9927": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "MSTORE", "path": "83" }, "9928": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "SWAP1", "path": "83" }, "9929": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "SWAP3", "path": "83" }, "9930": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "MSTORE", "path": "83" }, "9931": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "KECCAK256", "path": "83" }, "9932": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "SLOAD", "path": "83" }, "9933": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 889, 915 ], "op": "SWAP2", "path": "83" }, "9934": { "op": "POP" }, "9935": { "op": "POP" }, "9936": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 656, 922 ], "op": "SWAP3", "path": "83" }, "9937": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 656, 922 ], "op": "SWAP2", "path": "83" }, "9938": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 656, 922 ], "op": "POP", "path": "83" }, "9939": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "offset": [ 656, 922 ], "op": "POP", "path": "83" }, "9940": { "fn": "BitmapAssetsHandler.getAssetsBitmap", "jump": "o", "offset": [ 656, 922 ], "op": "JUMP", "path": "83" }, "9941": { "fn": "Bitmap.isBitSet", "offset": [ 732, 966 ], "op": "JUMPDEST", "path": "92" }, "9942": { "fn": "Bitmap.isBitSet", "offset": [ 804, 808 ], "op": "PUSH1", "path": "92", "value": "0x0" }, "9944": { "fn": "Bitmap.isBitSet", "offset": [ 837, 838 ], "op": "PUSH1", "path": "92", "statement": 222, "value": "0x1" }, "9946": { "fn": "Bitmap.isBitSet", "offset": [ 828, 833 ], "op": "DUP3", "path": "92" }, "9947": { "fn": "Bitmap.isBitSet", "offset": [ 828, 838 ], "op": "LT", "path": "92" }, "9948": { "branch": 352, "fn": "Bitmap.isBitSet", "offset": [ 828, 838 ], "op": "ISZERO", "path": "92" }, "9949": { "fn": "Bitmap.isBitSet", "offset": [ 828, 854 ], "op": "DUP1", "path": "92" }, "9950": { "fn": "Bitmap.isBitSet", "offset": [ 828, 854 ], "op": "ISZERO", "path": "92" }, "9951": { "fn": "Bitmap.isBitSet", "offset": [ 828, 854 ], "op": "PUSH2", "path": "92", "value": "0x26EA" }, "9954": { "branch": 352, "fn": "Bitmap.isBitSet", "offset": [ 828, 854 ], "op": "JUMPI", "path": "92" }, "9955": { "fn": "Bitmap.isBitSet", "offset": [ 828, 854 ], "op": "POP", "path": "92" }, "9956": { "fn": "Bitmap.isBitSet", "offset": [ 851, 854 ], "op": "PUSH2", "path": "92", "value": "0x100" }, "9959": { "fn": "Bitmap.isBitSet", "offset": [ 842, 847 ], "op": "DUP3", "path": "92" }, "9960": { "fn": "Bitmap.isBitSet", "offset": [ 842, 854 ], "op": "GT", "path": "92" }, "9961": { "branch": 353, "fn": "Bitmap.isBitSet", "offset": [ 842, 854 ], "op": "ISZERO", "path": "92" }, "9962": { "fn": "Bitmap.isBitSet", "offset": [ 828, 854 ], "op": "JUMPDEST", "path": "92" }, "9963": { "fn": "Bitmap.isBitSet", "offset": [ 820, 855 ], "op": "PUSH2", "path": "92", "value": "0x26F3" }, "9966": { "branch": 353, "fn": "Bitmap.isBitSet", "offset": [ 820, 855 ], "op": "JUMPI", "path": "92" }, "9967": { "fn": "Bitmap.isBitSet", "offset": [ 820, 855 ], "op": "PUSH1", "path": "92", "value": "0x0" }, "9969": { "fn": "Bitmap.isBitSet", "offset": [ 820, 855 ], "op": "DUP1", "path": "92" }, "9970": { "fn": "Bitmap.isBitSet", "offset": [ 820, 855 ], "op": "REVERT", "path": "92" }, "9971": { "fn": "Bitmap.isBitSet", "offset": [ 820, 855 ], "op": "JUMPDEST", "path": "92" }, "9972": { "op": "POP" }, "9973": { "op": "PUSH1", "value": "0x0" }, "9975": { "op": "NOT" }, "9976": { "fn": "Bitmap.isBitSet", "offset": [ 914, 923 ], "op": "ADD", "path": "92", "statement": 223 }, "9977": { "fn": "Bitmap.isBitSet", "offset": [ 903, 924 ], "op": "SHL", "path": "92" }, "9978": { "op": "PUSH1", "value": "0x1" }, "9980": { "op": "PUSH1", "value": "0xFF" }, "9982": { "op": "SHL" }, "9983": { "fn": "Bitmap.isBitSet", "offset": [ 902, 941 ], "op": "SWAP1", "path": "92" }, "9984": { "fn": "Bitmap.isBitSet", "offset": [ 902, 941 ], "op": "DUP2", "path": "92" }, "9985": { "fn": "Bitmap.isBitSet", "offset": [ 902, 941 ], "op": "AND", "path": "92" }, "9986": { "fn": "Bitmap.isBitSet", "offset": [ 901, 959 ], "op": "EQ", "path": "92" }, "9987": { "fn": "Bitmap.isBitSet", "offset": [ 901, 959 ], "op": "SWAP1", "path": "92" }, "9988": { "fn": "Bitmap.isBitSet", "jump": "o", "offset": [ 732, 966 ], "op": "JUMP", "path": "92" }, "9989": { "fn": "SafeInt256.add", "offset": [ 1427, 1547 ], "op": "JUMPDEST", "path": "94" }, "9990": { "fn": "SafeInt256.add", "offset": [ 1516, 1521 ], "op": "DUP2", "path": "94", "statement": 224 }, "9991": { "fn": "SafeInt256.add", "offset": [ 1516, 1521 ], "op": "DUP2", "path": "94" }, "9992": { "fn": "SafeInt256.add", "offset": [ 1516, 1521 ], "op": "ADD", "path": "94" }, "9993": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "DUP3", "path": "94" }, "9994": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "DUP2", "path": "94" }, "9995": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "SLT", "path": "94" }, "9996": { "fn": "SafeInt256.add", "offset": [ 1511, 1527 ], "op": "ISZERO", "path": "94" }, "9997": { "fn": "SafeInt256.add", "offset": [ 1483, 1491 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "9999": { "fn": "SafeInt256.add", "offset": [ 1532, 1538 ], "op": "DUP4", "path": "94" }, "10000": { "fn": "SafeInt256.add", "offset": [ 1532, 1538 ], "op": "SLT", "path": "94" }, "10001": { "fn": "SafeInt256.add", "offset": [ 1532, 1538 ], "op": "ISZERO", "path": "94" }, "10002": { "branch": 443, "fn": "SafeInt256.add", "offset": [ 1511, 1539 ], "op": "EQ", "path": "94" }, "10003": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "PUSH2", "path": "94", "value": "0x30C" }, "10006": { "branch": 443, "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "JUMPI", "path": "94" }, "10007": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "PUSH1", "path": "94", "value": "0x0" }, "10009": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "DUP1", "path": "94" }, "10010": { "fn": "SafeInt256.add", "offset": [ 1503, 1540 ], "op": "REVERT", "path": "94" }, "10011": { "fn": "Bitmap.setBit", "offset": [ 316, 688 ], "op": "JUMPDEST", "path": "92" }, "10012": { "fn": "Bitmap.setBit", "offset": [ 428, 435 ], "op": "PUSH1", "path": "92", "value": "0x0" }, "10014": { "fn": "Bitmap.setBit", "offset": [ 464, 465 ], "op": "PUSH1", "path": "92", "statement": 225, "value": "0x1" }, "10016": { "fn": "Bitmap.setBit", "offset": [ 455, 460 ], "op": "DUP4", "path": "92" }, "10017": { "fn": "Bitmap.setBit", "offset": [ 455, 465 ], "op": "LT", "path": "92" }, "10018": { "branch": 354, "fn": "Bitmap.setBit", "offset": [ 455, 465 ], "op": "ISZERO", "path": "92" }, "10019": { "fn": "Bitmap.setBit", "offset": [ 455, 481 ], "op": "DUP1", "path": "92" }, "10020": { "fn": "Bitmap.setBit", "offset": [ 455, 481 ], "op": "ISZERO", "path": "92" }, "10021": { "fn": "Bitmap.setBit", "offset": [ 455, 481 ], "op": "PUSH2", "path": "92", "value": "0x2730" }, "10024": { "branch": 354, "fn": "Bitmap.setBit", "offset": [ 455, 481 ], "op": "JUMPI", "path": "92" }, "10025": { "fn": "Bitmap.setBit", "offset": [ 455, 481 ], "op": "POP", "path": "92" }, "10026": { "fn": "Bitmap.setBit", "offset": [ 478, 481 ], "op": "PUSH2", "path": "92", "value": "0x100" }, "10029": { "fn": "Bitmap.setBit", "offset": [ 469, 474 ], "op": "DUP4", "path": "92" }, "10030": { "fn": "Bitmap.setBit", "offset": [ 469, 481 ], "op": "GT", "path": "92" }, "10031": { "branch": 355, "fn": "Bitmap.setBit", "offset": [ 469, 481 ], "op": "ISZERO", "path": "92" }, "10032": { "fn": "Bitmap.setBit", "offset": [ 455, 481 ], "op": "JUMPDEST", "path": "92" }, "10033": { "fn": "Bitmap.setBit", "offset": [ 447, 482 ], "op": "PUSH2", "path": "92", "value": "0x2739" }, "10036": { "branch": 355, "fn": "Bitmap.setBit", "offset": [ 447, 482 ], "op": "JUMPI", "path": "92" }, "10037": { "fn": "Bitmap.setBit", "offset": [ 447, 482 ], "op": "PUSH1", "path": "92", "value": "0x0" }, "10039": { "fn": "Bitmap.setBit", "offset": [ 447, 482 ], "op": "DUP1", "path": "92" }, "10040": { "fn": "Bitmap.setBit", "offset": [ 447, 482 ], "op": "REVERT", "path": "92" }, "10041": { "fn": "Bitmap.setBit", "offset": [ 447, 482 ], "op": "JUMPDEST", "path": "92" }, "10042": { "branch": 356, "fn": "Bitmap.setBit", "offset": [ 526, 531 ], "op": "DUP2", "path": "92" }, "10043": { "fn": "Bitmap.setBit", "offset": [ 522, 682 ], "op": "ISZERO", "path": "92" }, "10044": { "fn": "Bitmap.setBit", "offset": [ 522, 682 ], "op": "PUSH2", "path": "92", "value": "0x2752" }, "10047": { "branch": 356, "fn": "Bitmap.setBit", "offset": [ 522, 682 ], "op": "JUMPI", "path": "92" }, "10048": { "op": "POP" }, "10049": { "op": "PUSH1", "value": "0x1" }, "10051": { "op": "PUSH1", "value": "0xFF" }, "10053": { "op": "SHL" }, "10054": { "op": "PUSH1", "value": "0x0" }, "10056": { "op": "NOT" }, "10057": { "fn": "Bitmap.setBit", "offset": [ 582, 591 ], "op": "DUP4", "path": "92", "statement": 226 }, "10058": { "fn": "Bitmap.setBit", "offset": [ 582, 591 ], "op": "ADD", "path": "92" }, "10059": { "fn": "Bitmap.setBit", "offset": [ 564, 592 ], "op": "SHR", "path": "92" }, "10060": { "fn": "Bitmap.setBit", "offset": [ 554, 593 ], "op": "DUP4", "path": "92" }, "10061": { "fn": "Bitmap.setBit", "offset": [ 554, 593 ], "op": "OR", "path": "92" }, "10062": { "fn": "Bitmap.setBit", "offset": [ 547, 593 ], "op": "PUSH2", "path": "92", "value": "0x653" }, "10065": { "fn": "Bitmap.setBit", "offset": [ 547, 593 ], "op": "JUMP", "path": "92" }, "10066": { "fn": "Bitmap.setBit", "offset": [ 522, 682 ], "op": "JUMPDEST", "path": "92" }, "10067": { "op": "POP" }, "10068": { "op": "PUSH1", "value": "0x1" }, "10070": { "op": "PUSH1", "value": "0xFF" }, "10072": { "op": "SHL" }, "10073": { "op": "PUSH1", "value": "0x0" }, "10075": { "op": "NOT" }, "10076": { "fn": "Bitmap.setBit", "offset": [ 660, 669 ], "op": "DUP4", "path": "92", "statement": 227 }, "10077": { "fn": "Bitmap.setBit", "offset": [ 660, 669 ], "op": "ADD", "path": "92" }, "10078": { "fn": "Bitmap.setBit", "offset": [ 642, 670 ], "op": "SHR", "path": "92" }, "10079": { "fn": "Bitmap.setBit", "offset": [ 640, 671 ], "op": "NOT", "path": "92" }, "10080": { "fn": "Bitmap.setBit", "offset": [ 631, 671 ], "op": "DUP4", "path": "92" }, "10081": { "fn": "Bitmap.setBit", "offset": [ 631, 671 ], "op": "AND", "path": "92" }, "10082": { "fn": "Bitmap.setBit", "offset": [ 624, 671 ], "op": "PUSH2", "path": "92", "value": "0x653" }, "10085": { "fn": "Bitmap.setBit", "offset": [ 624, 671 ], "op": "JUMP", "path": "92" }, "10086": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 928, 1314 ], "op": "JUMPDEST", "path": "83" }, "10087": { "offset": [ 2215, 2217 ], "op": "PUSH1", "path": "60", "value": "0x14" }, "10089": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1069, 1096 ], "op": "PUSH2", "path": "83", "statement": 228, "value": "0x2771" }, "10092": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1069, 1081 ], "op": "DUP3", "path": "83" }, "10093": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1069, 1094 ], "op": "PUSH2", "path": "83", "value": "0x2C97" }, "10096": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "jump": "i", "offset": [ 1069, 1096 ], "op": "JUMP", "path": "83" }, "10097": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1069, 1096 ], "op": "JUMPDEST", "path": "83" }, "10098": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1069, 1127 ], "op": "GT", "path": "83" }, "10099": { "branch": 369, "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1069, 1127 ], "op": "ISZERO", "path": "83" }, "10100": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "PUSH2", "path": "83", "value": "0x278F" }, "10103": { "branch": 369, "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "JUMPI", "path": "83" }, "10104": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "PUSH1", "path": "83", "value": "0x40" }, "10106": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "MLOAD", "path": "83" }, "10107": { "op": "PUSH3", "value": "0x461BCD" }, "10111": { "op": "PUSH1", "value": "0xE5" }, "10113": { "op": "SHL" }, "10114": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "DUP2", "path": "83" }, "10115": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "MSTORE", "path": "83" }, "10116": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "PUSH1", "path": "83", "value": "0x4" }, "10118": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "ADD", "path": "83" }, "10119": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "PUSH2", "path": "83", "value": "0x3D8" }, "10122": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "SWAP1", "path": "83" }, "10123": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "PUSH2", "path": "83", "value": "0x373A" }, "10126": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "jump": "i", "offset": [ 1061, 1147 ], "op": "JUMP", "path": "83" }, "10127": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1061, 1147 ], "op": "JUMPDEST", "path": "83" }, "10128": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1157, 1218 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "10130": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1221, 1256 ], "op": "PUSH2", "path": "83", "value": "0x2799" }, "10133": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1221, 1254 ], "op": "PUSH2", "path": "83", "value": "0x2C8A" }, "10136": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "jump": "i", "offset": [ 1221, 1256 ], "op": "JUMP", "path": "83" }, "10137": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1221, 1256 ], "op": "JUMPDEST", "path": "83" }, "10138": { "op": "PUSH1", "value": "0x1" }, "10140": { "op": "PUSH1", "value": "0x1" }, "10142": { "op": "PUSH1", "value": "0xA0" }, "10144": { "op": "SHL" }, "10145": { "op": "SUB" }, "10146": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "SWAP1", "path": "83", "statement": 229 }, "10147": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "SWAP5", "path": "83" }, "10148": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "AND", "path": "83" }, "10149": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "PUSH1", "path": "83", "value": "0x0" }, "10151": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "SWAP1", "path": "83" }, "10152": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "DUP2", "path": "83" }, "10153": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "MSTORE", "path": "83" }, "10154": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "PUSH1", "path": "83", "value": "0x20" }, "10156": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "SWAP5", "path": "83" }, "10157": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "DUP6", "path": "83" }, "10158": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "MSTORE", "path": "83" }, "10159": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "PUSH1", "path": "83", "value": "0x40" }, "10161": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "DUP1", "path": "83" }, "10162": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "DUP3", "path": "83" }, "10163": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1280 ], "op": "KECCAK256", "path": "83" }, "10164": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "SWAP5", "path": "83" }, "10165": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "DUP3", "path": "83" }, "10166": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "MSTORE", "path": "83" }, "10167": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "SWAP4", "path": "83" }, "10168": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "SWAP1", "path": "83" }, "10169": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "SWAP5", "path": "83" }, "10170": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "MSTORE", "path": "83" }, "10171": { "op": "POP" }, "10172": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "SWAP2", "path": "83" }, "10173": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1292 ], "op": "KECCAK256", "path": "83" }, "10174": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "offset": [ 1266, 1307 ], "op": "SSTORE", "path": "83" }, "10175": { "fn": "BitmapAssetsHandler.setAssetsBitmap", "jump": "o", "offset": [ 928, 1314 ], "op": "JUMP", "path": "83" }, "10176": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1166, 2631 ], "op": "JUMPDEST", "path": "84" }, "10177": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1374, 1378 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10179": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1374, 1378 ], "op": "DUP1", "path": "84" }, "10180": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "JUMPDEST", "path": "84" }, "10181": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1414, 1424 ], "op": "DUP7", "path": "84" }, "10182": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1414, 1431 ], "op": "MLOAD", "path": "84" }, "10183": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1410, 1411 ], "op": "DUP2", "path": "84" }, "10184": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1410, 1431 ], "op": "LT", "path": "84" }, "10185": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "ISZERO", "path": "84" }, "10186": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "PUSH2", "path": "84", "value": "0x28CC" }, "10189": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "JUMPI", "path": "84" }, "10190": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1452, 1479 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10192": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1492 ], "op": "DUP8", "path": "84" }, "10193": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1493, 1494 ], "op": "DUP3", "path": "84" }, "10194": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "DUP2", "path": "84" }, "10195": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "MLOAD", "path": "84" }, "10196": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "DUP2", "path": "84" }, "10197": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "LT", "path": "84" }, "10198": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "PUSH2", "path": "84", "value": "0x27DB" }, "10201": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "JUMPI", "path": "84" }, "10202": { "dev": "Index out of range", "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "INVALID", "path": "84" }, "10203": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "JUMPDEST", "path": "84" }, "10204": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10206": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "MUL", "path": "84" }, "10207": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10209": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "ADD", "path": "84" }, "10210": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "ADD", "path": "84" }, "10211": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1482, 1495 ], "op": "MLOAD", "path": "84" }, "10212": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1452, 1495 ], "op": "SWAP1", "path": "84" }, "10213": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1452, 1495 ], "op": "POP", "path": "84" }, "10214": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1549, 1558 ], "op": "DUP5", "path": "84" }, "10215": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1535 ], "op": "DUP2", "path": "84" }, "10216": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1545 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10218": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1545 ], "op": "ADD", "path": "84" }, "10219": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1545 ], "op": "MLOAD", "path": "84" }, "10220": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1558 ], "op": "EQ", "path": "84" }, "10221": { "branch": 408, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1558 ], "op": "ISZERO", "path": "84" }, "10222": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1608 ], "op": "DUP1", "path": "84" }, "10223": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1608 ], "op": "PUSH2", "path": "84", "value": "0x27F9" }, "10226": { "branch": 408, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1608 ], "op": "JUMPI", "path": "84" }, "10227": { "op": "POP" }, "10228": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1578, 1594 ], "op": "DUP1", "path": "84" }, "10229": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1578, 1594 ], "op": "MLOAD", "path": "84" }, "10230": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1578, 1608 ], "op": "DUP8", "path": "84" }, "10231": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1578, 1608 ], "op": "EQ", "path": "84" }, "10232": { "branch": 409, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1578, 1608 ], "op": "ISZERO", "path": "84" }, "10233": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1608 ], "op": "JUMPDEST", "path": "84" }, "10234": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1654 ], "op": "DUP1", "path": "84" }, "10235": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1654 ], "op": "PUSH2", "path": "84", "value": "0x2808" }, "10238": { "branch": 409, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1654 ], "op": "JUMPI", "path": "84" }, "10239": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1654 ], "op": "POP", "path": "84" }, "10240": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1646, 1654 ], "op": "DUP6", "path": "84" }, "10241": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1628, 1633 ], "op": "DUP2", "path": "84" }, "10242": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1628, 1642 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10244": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1628, 1642 ], "op": "ADD", "path": "84" }, "10245": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1628, 1642 ], "op": "MLOAD", "path": "84" }, "10246": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1628, 1654 ], "op": "EQ", "path": "84" }, "10247": { "branch": 410, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1628, 1654 ], "op": "ISZERO", "path": "84" }, "10248": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1530, 1654 ], "op": "JUMPDEST", "path": "84" }, "10249": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1509, 1677 ], "op": "ISZERO", "path": "84" }, "10250": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1509, 1677 ], "op": "PUSH2", "path": "84", "value": "0x2813" }, "10253": { "branch": 410, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1509, 1677 ], "op": "JUMPI", "path": "84" }, "10254": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1669, 1677 ], "op": "POP", "path": "84", "statement": 230 }, "10255": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1669, 1677 ], "op": "PUSH2", "path": "84", "value": "0x28C4" }, "10258": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1669, 1677 ], "op": "JUMP", "path": "84" }, "10259": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1509, 1677 ], "op": "JUMPDEST", "path": "84" }, "10260": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1875, 1899 ], "op": "PUSH1", "path": "84", "statement": 231, "value": "0x2" }, "10262": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1858 ], "op": "DUP2", "path": "84" }, "10263": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1871 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10265": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1871 ], "op": "ADD", "path": "84" }, "10266": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1871 ], "op": "MLOAD", "path": "84" }, "10267": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10269": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "DUP2", "path": "84" }, "10270": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "GT", "path": "84" }, "10271": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "ISZERO", "path": "84" }, "10272": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "PUSH2", "path": "84", "value": "0x2825" }, "10275": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "JUMPI", "path": "84" }, "10276": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "INVALID", "path": "84" }, "10277": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "JUMPDEST", "path": "84" }, "10278": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "EQ", "path": "84" }, "10279": { "branch": 411, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1899 ], "op": "ISZERO", "path": "84" }, "10280": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1973 ], "op": "DUP1", "path": "84" }, "10281": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1973 ], "op": "ISZERO", "path": "84" }, "10282": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1973 ], "op": "PUSH2", "path": "84", "value": "0x2843" }, "10285": { "branch": 411, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1973 ], "op": "JUMPI", "path": "84" }, "10286": { "op": "POP" }, "10287": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1941, 1973 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10289": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1924 ], "op": "DUP2", "path": "84" }, "10290": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1937 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10292": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1937 ], "op": "ADD", "path": "84" }, "10293": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1937 ], "op": "MLOAD", "path": "84" }, "10294": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10296": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "DUP2", "path": "84" }, "10297": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "GT", "path": "84" }, "10298": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "ISZERO", "path": "84" }, "10299": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "PUSH2", "path": "84", "value": "0x2840" }, "10302": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "JUMPI", "path": "84" }, "10303": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "INVALID", "path": "84" }, "10304": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "JUMPDEST", "path": "84" }, "10305": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "EQ", "path": "84" }, "10306": { "branch": 412, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1919, 1973 ], "op": "ISZERO", "path": "84" }, "10307": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1853, 1973 ], "op": "JUMPDEST", "path": "84" }, "10308": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1828, 1987 ], "op": "PUSH2", "path": "84", "value": "0x284C" }, "10311": { "branch": 412, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1828, 1987 ], "op": "JUMPI", "path": "84" }, "10312": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1828, 1987 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10314": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1828, 1987 ], "op": "DUP1", "path": "84" }, "10315": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1828, 1987 ], "op": "REVERT", "path": "84" }, "10316": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1828, 1987 ], "op": "JUMPDEST", "path": "84" }, "10317": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2079 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "10319": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2079 ], "op": "DUP2", "path": "84" }, "10320": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2079 ], "op": "ADD", "path": "84" }, "10321": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2079 ], "op": "MLOAD", "path": "84" }, "10322": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2044, 2062 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10324": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2044, 2062 ], "op": "SWAP1", "path": "84" }, "10325": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2093 ], "op": "PUSH2", "path": "84", "value": "0x285E" }, "10328": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2093 ], "op": "SWAP1", "path": "84" }, "10329": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2084, 2092 ], "op": "DUP7", "path": "84" }, "10330": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2083 ], "op": "PUSH2", "path": "84", "value": "0x2705" }, "10333": { "fn": "PortfolioHandler._mergeAssetIntoArray", "jump": "i", "offset": [ 2065, 2093 ], "op": "JUMP", "path": "84" }, "10334": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2065, 2093 ], "op": "JUMPDEST", "path": "84" }, "10335": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2044, 2093 ], "op": "SWAP1", "path": "84" }, "10336": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2044, 2093 ], "op": "POP", "path": "84" }, "10337": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2173, 2213 ], "op": "PUSH2", "path": "84", "value": "0x2869" }, "10340": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2203, 2212 ], "op": "DUP7", "path": "84" }, "10341": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2173, 2202 ], "op": "PUSH2", "path": "84", "value": "0x28D9" }, "10344": { "fn": "PortfolioHandler._mergeAssetIntoArray", "jump": "i", "offset": [ 2173, 2213 ], "op": "JUMP", "path": "84" }, "10345": { "branch": 413, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2173, 2213 ], "op": "JUMPDEST", "path": "84" }, "10346": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2169, 2332 ], "op": "ISZERO", "path": "84" }, "10347": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2169, 2332 ], "op": "PUSH2", "path": "84", "value": "0x287C" }, "10350": { "branch": 413, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2169, 2332 ], "op": "JUMPI", "path": "84" }, "10351": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2256, 2257 ], "op": "PUSH1", "path": "84", "statement": 232, "value": "0x0" }, "10353": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2241, 2252 ], "op": "DUP2", "path": "84" }, "10354": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2241, 2257 ], "op": "SLT", "path": "84" }, "10355": { "branch": 414, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2241, 2257 ], "op": "ISZERO", "path": "84" }, "10356": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2233, 2258 ], "op": "PUSH2", "path": "84", "value": "0x287C" }, "10359": { "branch": 414, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2233, 2258 ], "op": "JUMPI", "path": "84" }, "10360": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2233, 2258 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10362": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2233, 2258 ], "op": "DUP1", "path": "84" }, "10363": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2233, 2258 ], "op": "REVERT", "path": "84" }, "10364": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2233, 2258 ], "op": "JUMPDEST", "path": "84" }, "10365": { "op": "PUSH11", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "10377": { "op": "NOT" }, "10378": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2384 ], "op": "DUP2", "path": "84", "statement": 233 }, "10379": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2384 ], "op": "SLT", "path": "84" }, "10380": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2384 ], "op": "DUP1", "path": "84" }, "10381": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2384 ], "op": "ISZERO", "path": "84" }, "10382": { "branch": 415, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2384 ], "op": "SWAP1", "path": "84" }, "10383": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2418 ], "op": "PUSH2", "path": "84", "value": "0x28A3" }, "10386": { "branch": 415, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2418 ], "op": "JUMPI", "path": "84" }, "10387": { "op": "POP" }, "10388": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2403, 2418 ], "op": "PUSH11", "path": "84", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "10400": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2388, 2418 ], "op": "DUP2", "path": "84" }, "10401": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2388, 2418 ], "op": "SGT", "path": "84" }, "10402": { "branch": 416, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2388, 2418 ], "op": "ISZERO", "path": "84" }, "10403": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2354, 2418 ], "op": "JUMPDEST", "path": "84" }, "10404": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2346, 2419 ], "op": "PUSH2", "path": "84", "value": "0x28AC" }, "10407": { "branch": 416, "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2346, 2419 ], "op": "JUMPI", "path": "84" }, "10408": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2346, 2419 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10410": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2346, 2419 ], "op": "DUP1", "path": "84" }, "10411": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2346, 2419 ], "op": "REVERT", "path": "84" }, "10412": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2346, 2419 ], "op": "JUMPDEST", "path": "84" }, "10413": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2478, 2492 ], "op": "PUSH1", "path": "84", "statement": 234, "value": "0x60" }, "10415": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2478, 2492 ], "op": "DUP3", "path": "84" }, "10416": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2478, 2492 ], "op": "ADD", "path": "84" }, "10417": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2478, 2506 ], "op": "MSTORE", "path": "84" }, "10418": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2541, 2565 ], "op": "PUSH1", "path": "84", "statement": 235, "value": "0x1" }, "10420": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2538 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10422": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2538 ], "op": "SWAP1", "path": "84" }, "10423": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2538 ], "op": "SWAP2", "path": "84" }, "10424": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2538 ], "op": "ADD", "path": "84" }, "10425": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2565 ], "op": "DUP2", "path": "84" }, "10426": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2565 ], "op": "SWAP1", "path": "84" }, "10427": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2520, 2565 ], "op": "MSTORE", "path": "84" }, "10428": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2541, 2565 ], "op": "SWAP2", "path": "84" }, "10429": { "op": "POP" }, "10430": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2580, 2591 ], "op": "PUSH2", "path": "84", "statement": 236, "value": "0x207E" }, "10433": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2580, 2591 ], "op": "SWAP1", "path": "84" }, "10434": { "op": "POP" }, "10435": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2580, 2591 ], "op": "JUMP", "path": "84" }, "10436": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "JUMPDEST", "path": "84" }, "10437": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1433, 1436 ], "op": "PUSH1", "path": "84", "statement": 237, "value": "0x1" }, "10439": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1433, 1436 ], "op": "ADD", "path": "84" }, "10440": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "PUSH2", "path": "84", "value": "0x27C4" }, "10443": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "JUMP", "path": "84" }, "10444": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1390, 2602 ], "op": "JUMPDEST", "path": "84" }, "10445": { "op": "POP" }, "10446": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2619, 2624 ], "op": "PUSH1", "path": "84", "statement": 238, "value": "0x0" }, "10448": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 2619, 2624 ], "op": "SWAP7", "path": "84" }, "10449": { "fn": "PortfolioHandler._mergeAssetIntoArray", "offset": [ 1166, 2631 ], "op": "SWAP6", "path": "84" }, "10450": { "op": "POP" }, "10451": { "op": "POP" }, "10452": { "op": "POP" }, "10453": { "op": "POP" }, "10454": { "op": "POP" }, "10455": { "op": "POP" }, "10456": { "fn": "PortfolioHandler._mergeAssetIntoArray", "jump": "o", "offset": [ 1166, 2631 ], "op": "JUMP", "path": "84" }, "10457": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 615, 837 ], "op": "JUMPDEST", "path": "88" }, "10458": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 683, 687 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "10460": { "offset": [ 4847, 4848 ], "op": "PUSH1", "path": "60", "value": "0x2" }, "10462": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 766 ], "op": "DUP3", "path": "88", "statement": 239 }, "10463": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 766 ], "op": "LT", "path": "88" }, "10464": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 766 ], "op": "DUP1", "path": "88" }, "10465": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 766 ], "op": "ISZERO", "path": "88" }, "10466": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 766 ], "op": "SWAP1", "path": "88" }, "10467": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 830 ], "op": "PUSH2", "path": "88", "value": "0x30C" }, "10470": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 718, 830 ], "op": "JUMPI", "path": "88" }, "10471": { "op": "POP" }, "10472": { "op": "POP" }, "10473": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "10475": { "op": "LT" }, "10476": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 782, 830 ], "op": "ISZERO", "path": "88" }, "10477": { "fn": "AssetHandler.isLiquidityToken", "offset": [ 782, 830 ], "op": "SWAP1", "path": "88" }, "10478": { "fn": "AssetHandler.isLiquidityToken", "jump": "o", "offset": [ 615, 837 ], "op": "JUMP", "path": "88" }, "10479": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5183, 5831 ], "op": "JUMPDEST", "path": "84" }, "10480": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5294, 5317 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "10482": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5532, 5549 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10484": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5561 ], "op": "DUP3", "path": "84" }, "10485": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5568 ], "op": "MLOAD", "path": "84" }, "10486": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5572, 5573 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10488": { "branch": 417, "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5573 ], "op": "EQ", "path": "84" }, "10489": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5600 ], "op": "PUSH2", "path": "84", "value": "0x2906" }, "10492": { "branch": 417, "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5600 ], "op": "JUMPI", "path": "84" }, "10493": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5580, 5589 ], "op": "DUP3", "path": "84" }, "10494": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5580, 5596 ], "op": "MLOAD", "path": "84" }, "10495": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5599, 5600 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "10497": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5580, 5600 ], "op": "MUL", "path": "84" }, "10498": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5600 ], "op": "PUSH2", "path": "84", "value": "0x2909" }, "10501": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5600 ], "op": "JUMP", "path": "84" }, "10502": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5600 ], "op": "JUMPDEST", "path": "84" }, "10503": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5576, 5577 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10505": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5552, 5600 ], "op": "JUMPDEST", "path": "84" }, "10506": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5532, 5600 ], "op": "SWAP1", "path": "84" }, "10507": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5532, 5600 ], "op": "POP", "path": "84" }, "10508": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5610, 5647 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10510": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5671, 5680 ], "op": "DUP2", "path": "84" }, "10511": { "op": "PUSH1", "value": "0x1" }, "10513": { "op": "PUSH1", "value": "0x1" }, "10515": { "op": "PUSH1", "value": "0x40" }, "10517": { "op": "SHL" }, "10518": { "op": "SUB" }, "10519": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP2", "path": "84" }, "10520": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "GT", "path": "84" }, "10521": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP1", "path": "84" }, "10522": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "ISZERO", "path": "84" }, "10523": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH2", "path": "84", "value": "0x2923" }, "10526": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPI", "path": "84" }, "10527": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10529": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP1", "path": "84" }, "10530": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "REVERT", "path": "84" }, "10531": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPDEST", "path": "84" }, "10532": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "POP", "path": "84" }, "10533": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10535": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "MLOAD", "path": "84" }, "10536": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "SWAP1", "path": "84" }, "10537": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP1", "path": "84" }, "10538": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP3", "path": "84" }, "10539": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "MSTORE", "path": "84" }, "10540": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP1", "path": "84" }, "10541": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10543": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "MUL", "path": "84" }, "10544": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10546": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "ADD", "path": "84" }, "10547": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP3", "path": "84" }, "10548": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "ADD", "path": "84" }, "10549": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "10551": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "MSTORE", "path": "84" }, "10552": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP1", "path": "84" }, "10553": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "ISZERO", "path": "84" }, "10554": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH2", "path": "84", "value": "0x295D" }, "10557": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPI", "path": "84" }, "10558": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP2", "path": "84" }, "10559": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10561": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "ADD", "path": "84" }, "10562": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPDEST", "path": "84" }, "10563": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH2", "path": "84", "value": "0x294A" }, "10566": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH2", "path": "84", "value": "0x2E5F" }, "10569": { "fn": "PortfolioHandler._extendNewAssetArray", "jump": "i", "offset": [ 5650, 5681 ], "op": "JUMP", "path": "84" }, "10570": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPDEST", "path": "84" }, "10571": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP2", "path": "84" }, "10572": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "MSTORE", "path": "84" }, "10573": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10575": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "ADD", "path": "84" }, "10576": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "SWAP1", "path": "84" }, "10577": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH1", "path": "84", "value": "0x1" }, "10579": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "SWAP1", "path": "84" }, "10580": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "SUB", "path": "84" }, "10581": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "SWAP1", "path": "84" }, "10582": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "DUP2", "path": "84" }, "10583": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "PUSH2", "path": "84", "value": "0x2942" }, "10586": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPI", "path": "84" }, "10587": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "SWAP1", "path": "84" }, "10588": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "POP", "path": "84" }, "10589": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "JUMPDEST", "path": "84" }, "10590": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5650, 5681 ], "op": "POP", "path": "84" }, "10591": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5610, 5681 ], "op": "SWAP1", "path": "84" }, "10592": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5610, 5681 ], "op": "POP", "path": "84" }, "10593": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5696, 5705 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10595": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "JUMPDEST", "path": "84" }, "10596": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5715, 5724 ], "op": "DUP5", "path": "84" }, "10597": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5715, 5731 ], "op": "MLOAD", "path": "84" }, "10598": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5711, 5712 ], "op": "DUP2", "path": "84" }, "10599": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5711, 5731 ], "op": "LT", "path": "84" }, "10600": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "ISZERO", "path": "84" }, "10601": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "PUSH2", "path": "84", "value": "0x299F" }, "10604": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "JUMPI", "path": "84" }, "10605": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5780 ], "op": "DUP5", "path": "84", "statement": 240 }, "10606": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5781, 5782 ], "op": "DUP2", "path": "84" }, "10607": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "DUP2", "path": "84" }, "10608": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "MLOAD", "path": "84" }, "10609": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "DUP2", "path": "84" }, "10610": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "LT", "path": "84" }, "10611": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "PUSH2", "path": "84", "value": "0x2978" }, "10614": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "JUMPI", "path": "84" }, "10615": { "dev": "Index out of range", "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "INVALID", "path": "84" }, "10616": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "JUMPDEST", "path": "84" }, "10617": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10619": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "MUL", "path": "84" }, "10620": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10622": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "ADD", "path": "84" }, "10623": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "ADD", "path": "84" }, "10624": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5771, 5783 ], "op": "MLOAD", "path": "84" }, "10625": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5765 ], "op": "DUP3", "path": "84" }, "10626": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5766, 5767 ], "op": "DUP3", "path": "84" }, "10627": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "DUP2", "path": "84" }, "10628": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "MLOAD", "path": "84" }, "10629": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "DUP2", "path": "84" }, "10630": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "LT", "path": "84" }, "10631": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "PUSH2", "path": "84", "value": "0x298C" }, "10634": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "JUMPI", "path": "84" }, "10635": { "dev": "Index out of range", "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "INVALID", "path": "84" }, "10636": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "JUMPDEST", "path": "84" }, "10637": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10639": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "SWAP1", "path": "84" }, "10640": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "DUP2", "path": "84" }, "10641": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "MUL", "path": "84" }, "10642": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "SWAP2", "path": "84" }, "10643": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "SWAP1", "path": "84" }, "10644": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "SWAP2", "path": "84" }, "10645": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "ADD", "path": "84" }, "10646": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5768 ], "op": "ADD", "path": "84" }, "10647": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5752, 5783 ], "op": "MSTORE", "path": "84" }, "10648": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5733, 5736 ], "op": "PUSH1", "path": "84", "statement": 241, "value": "0x1" }, "10650": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5733, 5736 ], "op": "ADD", "path": "84" }, "10651": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "PUSH2", "path": "84", "value": "0x2963" }, "10654": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "JUMP", "path": "84" }, "10655": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5691, 5794 ], "op": "JUMPDEST", "path": "84" }, "10656": { "op": "POP" }, "10657": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5811, 5824 ], "op": "SWAP4", "path": "84", "statement": 242 }, "10658": { "fn": "PortfolioHandler._extendNewAssetArray", "offset": [ 5183, 5831 ], "op": "SWAP3", "path": "84" }, "10659": { "op": "POP" }, "10660": { "op": "POP" }, "10661": { "op": "POP" }, "10662": { "fn": "PortfolioHandler._extendNewAssetArray", "jump": "o", "offset": [ 5183, 5831 ], "op": "JUMP", "path": "84" }, "10663": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12689, 14727 ], "op": "JUMPDEST", "path": "84" }, "10664": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12803, 12830 ], "op": "DUP2", "path": "84", "statement": 243 }, "10665": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12803, 12830 ], "op": "MLOAD", "path": "84" }, "10666": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12803, 12837 ], "op": "MLOAD", "path": "84" }, "10667": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12795, 12837 ], "op": "DUP2", "path": "84" }, "10668": { "branch": 418, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12795, 12837 ], "op": "LT", "path": "84" }, "10669": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "PUSH2", "path": "84", "value": "0x29B5" }, "10672": { "branch": 418, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "JUMPI", "path": "84" }, "10673": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10675": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "DUP1", "path": "84" }, "10676": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "REVERT", "path": "84" }, "10677": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12787, 12838 ], "op": "JUMPDEST", "path": "84" }, "10678": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12920, 12921 ], "op": "PUSH1", "path": "84", "statement": 244, "value": "0x0" }, "10680": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12899 ], "op": "DUP3", "path": "84" }, "10681": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12917 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "10683": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12917 ], "op": "ADD", "path": "84" }, "10684": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12917 ], "op": "MLOAD", "path": "84" }, "10685": { "branch": 419, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12885, 12921 ], "op": "GT", "path": "84" }, "10686": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "PUSH2", "path": "84", "value": "0x29C6" }, "10689": { "branch": 419, "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "JUMPI", "path": "84" }, "10690": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10692": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "DUP1", "path": "84" }, "10693": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "REVERT", "path": "84" }, "10694": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12877, 12922 ], "op": "JUMPDEST", "path": "84" }, "10695": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12969, 13004 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10697": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13021 ], "op": "DUP3", "path": "84" }, "10698": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13034 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10700": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13034 ], "op": "ADD", "path": "84" }, "10701": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13034 ], "op": "MLOAD", "path": "84" }, "10702": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13035, 13040 ], "op": "DUP3", "path": "84" }, "10703": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "DUP2", "path": "84" }, "10704": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "MLOAD", "path": "84" }, "10705": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "DUP2", "path": "84" }, "10706": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "LT", "path": "84" }, "10707": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "PUSH2", "path": "84", "value": "0x29D8" }, "10710": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "JUMPI", "path": "84" }, "10711": { "dev": "Index out of range", "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "INVALID", "path": "84" }, "10712": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "JUMPDEST", "path": "84" }, "10713": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10715": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "MUL", "path": "84" }, "10716": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10718": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "ADD", "path": "84" }, "10719": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "ADD", "path": "84" }, "10720": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13007, 13041 ], "op": "MLOAD", "path": "84" }, "10721": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12969, 13041 ], "op": "SWAP1", "path": "84" }, "10722": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 12969, 13041 ], "op": "POP", "path": "84" }, "10723": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13102, 13126 ], "op": "PUSH1", "path": "84", "statement": 245, "value": "0x2" }, "10725": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10727": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "DUP2", "path": "84" }, "10728": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "GT", "path": "84" }, "10729": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "ISZERO", "path": "84" }, "10730": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH2", "path": "84", "value": "0x29EF" }, "10733": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPI", "path": "84" }, "10734": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "INVALID", "path": "84" }, "10735": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPDEST", "path": "84" }, "10736": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13085 ], "op": "DUP2", "path": "84" }, "10737": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13098 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10739": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13098 ], "op": "ADD", "path": "84" }, "10740": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13098 ], "op": "MLOAD", "path": "84" }, "10741": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10743": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "DUP2", "path": "84" }, "10744": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "GT", "path": "84" }, "10745": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "ISZERO", "path": "84" }, "10746": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "PUSH2", "path": "84", "value": "0x29FF" }, "10749": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPI", "path": "84" }, "10750": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "INVALID", "path": "84" }, "10751": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "JUMPDEST", "path": "84" }, "10752": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "EQ", "path": "84" }, "10753": { "branch": 420, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13126 ], "op": "ISZERO", "path": "84" }, "10754": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "DUP1", "path": "84" }, "10755": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "ISZERO", "path": "84" }, "10756": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "PUSH2", "path": "84", "value": "0x2A1D" }, "10759": { "branch": 420, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "JUMPI", "path": "84" }, "10760": { "op": "POP" }, "10761": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13172, 13204 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10763": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13155 ], "op": "DUP2", "path": "84" }, "10764": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13168 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10766": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13168 ], "op": "ADD", "path": "84" }, "10767": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13168 ], "op": "MLOAD", "path": "84" }, "10768": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10770": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "DUP2", "path": "84" }, "10771": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "GT", "path": "84" }, "10772": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "ISZERO", "path": "84" }, "10773": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "PUSH2", "path": "84", "value": "0x2A1A" }, "10776": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "JUMPI", "path": "84" }, "10777": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "INVALID", "path": "84" }, "10778": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "JUMPDEST", "path": "84" }, "10779": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "EQ", "path": "84" }, "10780": { "branch": 421, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13142, 13204 ], "op": "ISZERO", "path": "84" }, "10781": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13072, 13204 ], "op": "JUMPDEST", "path": "84" }, "10782": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "PUSH2", "path": "84", "value": "0x2A26" }, "10785": { "branch": 421, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "JUMPI", "path": "84" }, "10786": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10788": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "DUP1", "path": "84" }, "10789": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "REVERT", "path": "84" }, "10790": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13051, 13214 ], "op": "JUMPDEST", "path": "84" }, "10791": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13285 ], "op": "PUSH1", "path": "84", "statement": 246, "value": "0x60" }, "10793": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13285 ], "op": "DUP4", "path": "84" }, "10794": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13285 ], "op": "ADD", "path": "84" }, "10795": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "DUP1", "path": "84" }, "10796": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "MLOAD", "path": "84" }, "10797": { "op": "PUSH1", "value": "0x0" }, "10799": { "op": "NOT" }, "10800": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "ADD", "path": "84" }, "10801": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "SWAP1", "path": "84" }, "10802": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13253, 13290 ], "op": "MSTORE", "path": "84" }, "10803": { "op": "PUSH1", "value": "0x0" }, "10805": { "op": "DUP1" }, "10806": { "op": "DUP1" }, "10807": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMPDEST", "path": "84" }, "10808": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13551, 13578 ], "op": "DUP6", "path": "84" }, "10809": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13551, 13578 ], "op": "MLOAD", "path": "84" }, "10810": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13551, 13585 ], "op": "MLOAD", "path": "84" }, "10811": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13547, 13585 ], "op": "DUP2", "path": "84" }, "10812": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13547, 13585 ], "op": "LT", "path": "84" }, "10813": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "ISZERO", "path": "84" }, "10814": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "PUSH2", "path": "84", "value": "0x2A99" }, "10817": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMPI", "path": "84" }, "10818": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13606, 13629 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10820": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13646 ], "op": "DUP7", "path": "84" }, "10821": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13659 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10823": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13659 ], "op": "ADD", "path": "84" }, "10824": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13659 ], "op": "MLOAD", "path": "84" }, "10825": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13660, 13661 ], "op": "DUP3", "path": "84" }, "10826": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "DUP2", "path": "84" }, "10827": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "MLOAD", "path": "84" }, "10828": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "DUP2", "path": "84" }, "10829": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "LT", "path": "84" }, "10830": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "PUSH2", "path": "84", "value": "0x2A53" }, "10833": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "JUMPI", "path": "84" }, "10834": { "dev": "Index out of range", "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "INVALID", "path": "84" }, "10835": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "JUMPDEST", "path": "84" }, "10836": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10838": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "MUL", "path": "84" }, "10839": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10841": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "ADD", "path": "84" }, "10842": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "ADD", "path": "84" }, "10843": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13632, 13662 ], "op": "MLOAD", "path": "84" }, "10844": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13606, 13662 ], "op": "SWAP1", "path": "84" }, "10845": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13606, 13662 ], "op": "POP", "path": "84" }, "10846": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13696, 13709 ], "op": "DUP3", "path": "84" }, "10847": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13681 ], "op": "DUP2", "path": "84" }, "10848": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13693 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "10850": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13693 ], "op": "ADD", "path": "84" }, "10851": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13693 ], "op": "MLOAD", "path": "84" }, "10852": { "branch": 422, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13709 ], "op": "GT", "path": "84" }, "10853": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "DUP1", "path": "84" }, "10854": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "ISZERO", "path": "84" }, "10855": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "PUSH2", "path": "84", "value": "0x2A80" }, "10858": { "branch": 422, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "JUMPI", "path": "84" }, "10859": { "op": "POP" }, "10860": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13731, 13755 ], "op": "PUSH1", "path": "84", "value": "0x2" }, "10862": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13714 ], "op": "DUP2", "path": "84" }, "10863": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13727 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10865": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13727 ], "op": "ADD", "path": "84" }, "10866": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13727 ], "op": "MLOAD", "path": "84" }, "10867": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "PUSH1", "path": "84", "value": "0x3" }, "10869": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "DUP2", "path": "84" }, "10870": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "GT", "path": "84" }, "10871": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "ISZERO", "path": "84" }, "10872": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "PUSH2", "path": "84", "value": "0x2A7D" }, "10875": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "JUMPI", "path": "84" }, "10876": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "INVALID", "path": "84" }, "10877": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "JUMPDEST", "path": "84" }, "10878": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "EQ", "path": "84" }, "10879": { "branch": 423, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13713, 13755 ], "op": "ISZERO", "path": "84" }, "10880": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13680, 13755 ], "op": "JUMPDEST", "path": "84" }, "10881": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "ISZERO", "path": "84" }, "10882": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "PUSH2", "path": "84", "value": "0x2A90" }, "10885": { "branch": 423, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "JUMPI", "path": "84" }, "10886": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13792 ], "op": "DUP1", "path": "84", "statement": 247 }, "10887": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13804 ], "op": "PUSH1", "path": "84", "value": "0x80" }, "10889": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13804 ], "op": "ADD", "path": "84" }, "10890": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13791, 13804 ], "op": "MLOAD", "path": "84" }, "10891": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13775, 13804 ], "op": "SWAP3", "path": "84" }, "10892": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13775, 13804 ], "op": "POP", "path": "84" }, "10893": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13843, 13844 ], "op": "DUP2", "path": "84", "statement": 248 }, "10894": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13822, 13844 ], "op": "SWAP4", "path": "84" }, "10895": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13822, 13844 ], "op": "POP", "path": "84" }, "10896": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13676, 13859 ], "op": "JUMPDEST", "path": "84" }, "10897": { "op": "POP" }, "10898": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13587, 13590 ], "op": "PUSH1", "path": "84", "statement": 249, "value": "0x1" }, "10900": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13587, 13590 ], "op": "ADD", "path": "84" }, "10901": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "PUSH2", "path": "84", "value": "0x2A37" }, "10904": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMP", "path": "84" }, "10905": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "JUMPDEST", "path": "84" }, "10906": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13531, 13869 ], "op": "POP", "path": "84" }, "10907": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13892, 13910 ], "op": "DUP2", "path": "84" }, "10908": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13883, 13888 ], "op": "DUP5", "path": "84" }, "10909": { "branch": 424, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13883, 13910 ], "op": "EQ", "path": "84" }, "10910": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "ISZERO", "path": "84" }, "10911": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "PUSH2", "path": "84", "value": "0x2AB2" }, "10914": { "branch": 424, "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "JUMPI", "path": "84" }, "10915": { "op": "POP" }, "10916": { "op": "POP" }, "10917": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14060, 14084 ], "op": "PUSH1", "path": "84", "statement": 250, "value": "0x2" }, "10919": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10921": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "SWAP2", "path": "84" }, "10922": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "SWAP1", "path": "84" }, "10923": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "SWAP2", "path": "84" }, "10924": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14057 ], "op": "ADD", "path": "84" }, "10925": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14031, 14084 ], "op": "MSTORE", "path": "84" }, "10926": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14098, 14105 ], "op": "PUSH2", "path": "84", "statement": 251, "value": "0xC7A" }, "10929": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14098, 14105 ], "op": "JUMP", "path": "84" }, "10930": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 13879, 14115 ], "op": "JUMPDEST", "path": "84" }, "10931": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14328, 14361 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10933": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14378 ], "op": "DUP6", "path": "84" }, "10934": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14391 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "10936": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14391 ], "op": "ADD", "path": "84" }, "10937": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14391 ], "op": "MLOAD", "path": "84" }, "10938": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14392, 14410 ], "op": "DUP4", "path": "84" }, "10939": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "DUP2", "path": "84" }, "10940": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "MLOAD", "path": "84" }, "10941": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "DUP2", "path": "84" }, "10942": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "LT", "path": "84" }, "10943": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "PUSH2", "path": "84", "value": "0x2AC4" }, "10946": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "JUMPI", "path": "84" }, "10947": { "dev": "Index out of range", "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "INVALID", "path": "84" }, "10948": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "JUMPDEST", "path": "84" }, "10949": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "10951": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP1", "path": "84" }, "10952": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "DUP2", "path": "84" }, "10953": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "MUL", "path": "84" }, "10954": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP2", "path": "84" }, "10955": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP1", "path": "84" }, "10956": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "SWAP2", "path": "84" }, "10957": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "ADD", "path": "84" }, "10958": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "ADD", "path": "84" }, "10959": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14364, 14411 ], "op": "MLOAD", "path": "84" }, "10960": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "PUSH1", "path": "84", "statement": 252, "value": "0x80" }, "10962": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "DUP6", "path": "84" }, "10963": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "DUP2", "path": "84" }, "10964": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "ADD", "path": "84" }, "10965": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "DUP1", "path": "84" }, "10966": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14524, 14549 ], "op": "MLOAD", "path": "84" }, "10967": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "SWAP2", "path": "84" }, "10968": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "DUP4", "path": "84" }, "10969": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "ADD", "path": "84" }, "10970": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "DUP1", "path": "84" }, "10971": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14563, 14586 ], "op": "MLOAD", "path": "84" }, "10972": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "SWAP1", "path": "84" }, "10973": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "SWAP2", "path": "84" }, "10974": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "MSTORE", "path": "84" }, "10975": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14421, 14596 ], "op": "MSTORE", "path": "84" }, "10976": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14633, 14657 ], "op": "PUSH1", "path": "84", "statement": 253, "value": "0x1" }, "10978": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "PUSH1", "path": "84", "value": "0xA0" }, "10980": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "SWAP2", "path": "84" }, "10981": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "DUP3", "path": "84" }, "10982": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14630 ], "op": "ADD", "path": "84" }, "10983": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14606, 14657 ], "op": "MSTORE", "path": "84" }, "10984": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14696, 14720 ], "op": "PUSH1", "path": "84", "statement": 254, "value": "0x2" }, "10986": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14693 ], "op": "SWAP5", "path": "84" }, "10987": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14693 ], "op": "ADD", "path": "84" }, "10988": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "SWAP4", "path": "84" }, "10989": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "SWAP1", "path": "84" }, "10990": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "SWAP4", "path": "84" }, "10991": { "fn": "PortfolioHandler.deleteAsset", "offset": [ 14667, 14720 ], "op": "MSTORE", "path": "84" }, "10992": { "op": "POP" }, "10993": { "op": "POP" }, "10994": { "op": "POP" }, "10995": { "op": "POP" }, "10996": { "op": "POP" }, "10997": { "fn": "PortfolioHandler.deleteAsset", "jump": "o", "offset": [ 12689, 14727 ], "op": "JUMP", "path": "84" }, "10998": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11592, 12454 ], "op": "JUMPDEST", "path": "84" }, "10999": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11739, 11755 ], "op": "DUP2", "path": "84", "statement": 255 }, "11000": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11739, 11755 ], "op": "MLOAD", "path": "84" }, "11001": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "ISZERO", "path": "84" }, "11002": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "DUP1", "path": "84" }, "11003": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "ISZERO", "path": "84" }, "11004": { "branch": 425, "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11755 ], "op": "SWAP1", "path": "84" }, "11005": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11803 ], "op": "PUSH2", "path": "84", "value": "0x2B09" }, "11008": { "branch": 425, "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11803 ], "op": "JUMPI", "path": "84" }, "11009": { "op": "POP" }, "11010": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11759, 11775 ], "op": "DUP2", "path": "84" }, "11011": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11759, 11775 ], "op": "MLOAD", "path": "84" }, "11012": { "offset": [ 5408, 5414 ], "op": "PUSH2", "path": "60", "value": "0x3FFF" }, "11015": { "op": "LT" }, "11016": { "branch": 426, "fn": "PortfolioHandler._storeAsset", "offset": [ 11759, 11803 ], "op": "ISZERO", "path": "84" }, "11017": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11735, 11803 ], "op": "JUMPDEST", "path": "84" }, "11018": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "PUSH2", "path": "84", "value": "0x2B12" }, "11021": { "branch": 426, "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "JUMPI", "path": "84" }, "11022": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11024": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "DUP1", "path": "84" }, "11025": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "REVERT", "path": "84" }, "11026": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11727, 11804 ], "op": "JUMPDEST", "path": "84" }, "11027": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11873 ], "op": "DUP2", "path": "84", "statement": 256 }, "11028": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11882 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11030": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11882 ], "op": "ADD", "path": "84" }, "11031": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11868, 11882 ], "op": "MLOAD", "path": "84" }, "11032": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11865 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11034": { "branch": 427, "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11882 ], "op": "LT", "path": "84" }, "11035": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "DUP1", "path": "84" }, "11036": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "ISZERO", "path": "84" }, "11037": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "PUSH2", "path": "84", "value": "0x2B2F" }, "11040": { "branch": 427, "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "JUMPI", "path": "84" }, "11041": { "op": "POP" }, "11042": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "PUSH1", "path": "84", "value": "0x20" }, "11044": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "DUP3", "path": "84" }, "11045": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "ADD", "path": "84" }, "11046": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11900 ], "op": "MLOAD", "path": "84" }, "11047": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11904, 11920 ], "op": "PUSH5", "path": "84", "value": "0xFFFFFFFFFF" }, "11053": { "op": "LT" }, "11054": { "branch": 428, "fn": "PortfolioHandler._storeAsset", "offset": [ 11886, 11920 ], "op": "ISZERO", "path": "84" }, "11055": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11864, 11920 ], "op": "JUMPDEST", "path": "84" }, "11056": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "PUSH2", "path": "84", "value": "0x2B38" }, "11059": { "branch": 428, "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "JUMPI", "path": "84" }, "11060": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11062": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "DUP1", "path": "84" }, "11063": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "REVERT", "path": "84" }, "11064": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11856, 11921 ], "op": "JUMPDEST", "path": "84" }, "11065": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11987 ], "op": "DUP2", "path": "84", "statement": 257 }, "11066": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11997 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "11068": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11997 ], "op": "ADD", "path": "84" }, "11069": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11982, 11997 ], "op": "MLOAD", "path": "84" }, "11070": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 11979 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11072": { "branch": 429, "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 11997 ], "op": "LT", "path": "84" }, "11073": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "DUP1", "path": "84" }, "11074": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "ISZERO", "path": "84" }, "11075": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "PUSH2", "path": "84", "value": "0x2B51" }, "11078": { "branch": 429, "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "JUMPI", "path": "84" }, "11079": { "op": "POP" }, "11080": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "PUSH1", "path": "84", "value": "0x40" }, "11082": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "DUP3", "path": "84" }, "11083": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "ADD", "path": "84" }, "11084": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12016 ], "op": "MLOAD", "path": "84" }, "11085": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "11087": { "op": "LT" }, "11088": { "branch": 430, "fn": "PortfolioHandler._storeAsset", "offset": [ 12001, 12055 ], "op": "ISZERO", "path": "84" }, "11089": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11978, 12055 ], "op": "JUMPDEST", "path": "84" }, "11090": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "PUSH2", "path": "84", "value": "0x2B5A" }, "11093": { "branch": 430, "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "JUMPI", "path": "84" }, "11094": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11096": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "DUP1", "path": "84" }, "11097": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "REVERT", "path": "84" }, "11098": { "fn": "PortfolioHandler._storeAsset", "offset": [ 11970, 12056 ], "op": "JUMPDEST", "path": "84" }, "11099": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "PUSH1", "path": "84", "statement": 258, "value": "0x60" }, "11101": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "DUP3", "path": "84" }, "11102": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "ADD", "path": "84" }, "11103": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12127, 12141 ], "op": "MLOAD", "path": "84" }, "11104": { "op": "PUSH11", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "11116": { "op": "NOT" }, "11117": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "SGT", "path": "84" }, "11118": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "DUP1", "path": "84" }, "11119": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "ISZERO", "path": "84" }, "11120": { "branch": 431, "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12141 ], "op": "SWAP1", "path": "84" }, "11121": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12178 ], "op": "PUSH2", "path": "84", "value": "0x2B89" }, "11124": { "branch": 431, "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12178 ], "op": "JUMPI", "path": "84" }, "11125": { "op": "POP" }, "11126": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "11128": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "DUP3", "path": "84" }, "11129": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "ADD", "path": "84" }, "11130": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12159 ], "op": "MLOAD", "path": "84" }, "11131": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12163, 12178 ], "op": "PUSH11", "path": "84", "value": "0x7FFFFFFFFFFFFFFFFFFFFF" }, "11143": { "op": "SLT" }, "11144": { "branch": 432, "fn": "PortfolioHandler._storeAsset", "offset": [ 12145, 12178 ], "op": "ISZERO", "path": "84" }, "11145": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12108, 12178 ], "op": "JUMPDEST", "path": "84" }, "11146": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "PUSH2", "path": "84", "value": "0x2B92" }, "11149": { "branch": 432, "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "JUMPI", "path": "84" }, "11150": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11152": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "DUP1", "path": "84" }, "11153": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "REVERT", "path": "84" }, "11154": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12100, 12179 ], "op": "JUMPDEST", "path": "84" }, "11155": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12262, 12278 ], "op": "DUP2", "path": "84", "statement": 259 }, "11156": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12262, 12278 ], "op": "MLOAD", "path": "84" }, "11157": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "DUP2", "path": "84" }, "11158": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SLOAD", "path": "84" }, "11159": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "PUSH1", "path": "84", "statement": 260, "value": "0x20" }, "11161": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "DUP5", "path": "84" }, "11162": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "ADD", "path": "84" }, "11163": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12320, 12334 ], "op": "MLOAD", "path": "84" }, "11164": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "PUSH1", "path": "84", "statement": 261, "value": "0x40" }, "11166": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "DUP6", "path": "84" }, "11167": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "ADD", "path": "84" }, "11168": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12376, 12391 ], "op": "MLOAD", "path": "84" }, "11169": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "PUSH1", "path": "84", "statement": 262, "value": "0x60" }, "11171": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "SWAP1", "path": "84" }, "11172": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "SWAP6", "path": "84" }, "11173": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "ADD", "path": "84" }, "11174": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12432, 12446 ], "op": "MLOAD", "path": "84" }, "11175": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "PUSH1", "path": "84", "value": "0xA" }, "11177": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SIGNEXTEND", "path": "84" }, "11178": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "PUSH11", "path": "84", "value": "0xFFFFFFFFFFFFFFFFFFFFFF" }, "11190": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "AND", "path": "84" }, "11191": { "op": "PUSH1", "value": "0x1" }, "11193": { "op": "PUSH1", "value": "0x40" }, "11195": { "op": "SHL" }, "11196": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "MUL", "path": "84" }, "11197": { "op": "PUSH19", "value": "0xFFFFFFFFFFFFFFFFFFFFFF0000000000000000" }, "11217": { "op": "NOT" }, "11218": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "PUSH1", "path": "84", "value": "0xFF" }, "11220": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP1", "path": "84" }, "11221": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP7", "path": "84" }, "11222": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "AND", "path": "84" }, "11223": { "op": "PUSH1", "value": "0x1" }, "11225": { "op": "PUSH1", "value": "0x38" }, "11227": { "op": "SHL" }, "11228": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "MUL", "path": "84" }, "11229": { "op": "PUSH8", "value": "0xFF00000000000000" }, "11238": { "op": "NOT" }, "11239": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "PUSH5", "path": "84", "value": "0xFFFFFFFFFF" }, "11245": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP1", "path": "84" }, "11246": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP4", "path": "84" }, "11247": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "AND", "path": "84" }, "11248": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "PUSH3", "path": "84", "value": "0x10000" }, "11252": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "MUL", "path": "84" }, "11253": { "op": "PUSH7", "value": "0xFFFFFFFFFF0000" }, "11261": { "op": "NOT" }, "11262": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "PUSH2", "path": "84", "value": "0xFFFF" }, "11265": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP1", "path": "84" }, "11266": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP7", "path": "84" }, "11267": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "AND", "path": "84" }, "11268": { "op": "PUSH2", "value": "0xFFFF" }, "11271": { "op": "NOT" }, "11272": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP1", "path": "84" }, "11273": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP6", "path": "84" }, "11274": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "AND", "path": "84" }, "11275": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP5", "path": "84" }, "11276": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP1", "path": "84" }, "11277": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "SWAP5", "path": "84" }, "11278": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12229, 12279 ], "op": "OR", "path": "84" }, "11279": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP5", "path": "84" }, "11280": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP1", "path": "84" }, "11281": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP5", "path": "84" }, "11282": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "AND", "path": "84" }, "11283": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP3", "path": "84" }, "11284": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP1", "path": "84" }, "11285": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "SWAP3", "path": "84" }, "11286": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12289, 12335 ], "op": "OR", "path": "84" }, "11287": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "AND", "path": "84" }, "11288": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP2", "path": "84" }, "11289": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP1", "path": "84" }, "11290": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "SWAP2", "path": "84" }, "11291": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12345, 12392 ], "op": "OR", "path": "84" }, "11292": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP3", "path": "84" }, "11293": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP1", "path": "84" }, "11294": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP3", "path": "84" }, "11295": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "AND", "path": "84" }, "11296": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP2", "path": "84" }, "11297": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP1", "path": "84" }, "11298": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP2", "path": "84" }, "11299": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "OR", "path": "84" }, "11300": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SWAP1", "path": "84" }, "11301": { "fn": "PortfolioHandler._storeAsset", "offset": [ 12402, 12447 ], "op": "SSTORE", "path": "84" }, "11302": { "fn": "PortfolioHandler._storeAsset", "jump": "o", "offset": [ 11592, 12454 ], "op": "JUMP", "path": "84" }, "11303": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10664, 11546 ], "op": "JUMPDEST", "path": "84" }, "11304": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10896, 10900 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11306": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10914, 10921 ], "op": "DUP1", "path": "84" }, "11307": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10935, 10942 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11309": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10967, 10989 ], "op": "DUP1", "path": "84" }, "11310": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 11017 ], "op": "PUSH2", "path": "84", "value": "0x2C36" }, "11313": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 10997 ], "op": "DUP9", "path": "84" }, "11314": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 11015 ], "op": "PUSH2", "path": "84", "value": "0x2D67" }, "11317": { "fn": "PortfolioHandler._updatePortfolioContext", "jump": "i", "offset": [ 10992, 11017 ], "op": "JUMP", "path": "84" }, "11318": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10992, 11017 ], "op": "JUMPDEST", "path": "84" }, "11319": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 10967, 11017 ], "op": "SWAP1", "path": "84" }, "11320": { "op": "POP" }, "11321": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11108 ], "op": "DUP5", "path": "84" }, "11322": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11108 ], "op": "ISZERO", "path": "84" }, "11323": { "branch": 433, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11108 ], "op": "DUP1", "path": "84" }, "11324": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "PUSH2", "path": "84", "value": "0x2C44" }, "11327": { "branch": 433, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "JUMPI", "path": "84" }, "11328": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "POP", "path": "84" }, "11329": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11129, 11143 ], "op": "DUP1", "path": "84" }, "11330": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11112, 11126 ], "op": "DUP6", "path": "84" }, "11331": { "branch": 434, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11112, 11143 ], "op": "GT", "path": "84" }, "11332": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11089, 11143 ], "op": "JUMPDEST", "path": "84" }, "11333": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "ISZERO", "path": "84" }, "11334": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "PUSH2", "path": "84", "value": "0x2C4D" }, "11337": { "branch": 434, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "JUMPI", "path": "84" }, "11338": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11176, 11190 ], "op": "DUP1", "path": "84", "statement": 263 }, "11339": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11159, 11190 ], "op": "SWAP5", "path": "84" }, "11340": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11159, 11190 ], "op": "POP", "path": "84" }, "11341": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11085, 11201 ], "op": "JUMPDEST", "path": "84" }, "11342": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11227 ], "op": "DUP7", "path": "84", "statement": 264 }, "11343": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "DUP1", "path": "84" }, "11344": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "PUSH2", "path": "84", "value": "0x2C5D" }, "11347": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "JUMPI", "path": "84" }, "11348": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "POP", "path": "84" }, "11349": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11248, 11249 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11351": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11236 ], "op": "DUP9", "path": "84" }, "11352": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11245 ], "op": "PUSH1", "path": "84", "value": "0x60" }, "11354": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11245 ], "op": "ADD", "path": "84" }, "11355": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11245 ], "op": "MLOAD", "path": "84" }, "11356": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11231, 11249 ], "op": "SLT", "path": "84" }, "11357": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11220, 11249 ], "op": "JUMPDEST", "path": "84" }, "11358": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11210, 11249 ], "op": "SWAP7", "path": "84" }, "11359": { "op": "POP" }, "11360": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "PUSH2", "path": "84", "statement": 265, "value": "0xFFFF" }, "11363": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "DUP7", "path": "84" }, "11364": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "AND", "path": "84" }, "11365": { "branch": 435, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11268, 11315 ], "op": "ISZERO", "path": "84" }, "11366": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "PUSH2", "path": "84", "value": "0x2C6E" }, "11369": { "branch": 435, "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "JUMPI", "path": "84" }, "11370": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "PUSH1", "path": "84", "value": "0x0" }, "11372": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "DUP1", "path": "84" }, "11373": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "REVERT", "path": "84" }, "11374": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11260, 11316 ], "op": "JUMPDEST", "path": "84" }, "11375": { "op": "POP" }, "11376": { "op": "POP" }, "11377": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11444, 11460 ], "op": "SWAP5", "path": "84", "statement": 266 }, "11378": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11444, 11460 ], "op": "MLOAD", "path": "84" }, "11379": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11488, 11495 ], "op": "SWAP4", "path": "84", "statement": 267 }, "11380": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11488, 11495 ], "op": "SWAP6", "path": "84" }, "11381": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11429, 11431 ], "op": "PUSH1", "path": "84", "value": "0x10" }, "11383": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SWAP4", "path": "84" }, "11384": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SWAP1", "path": "84" }, "11385": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SWAP4", "path": "84" }, "11386": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11400, 11431 ], "op": "SHR", "path": "84" }, "11387": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11465, 11468 ], "op": "PUSH1", "path": "84", "value": "0xF0" }, "11389": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SWAP5", "path": "84" }, "11390": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SWAP1", "path": "84" }, "11391": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SWAP5", "path": "84" }, "11392": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11436, 11468 ], "op": "SHL", "path": "84" }, "11393": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP4", "path": "84" }, "11394": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP1", "path": "84" }, "11395": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP4", "path": "84" }, "11396": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "OR", "path": "84" }, "11397": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11399, 11469 ], "op": "SWAP4", "path": "84" }, "11398": { "op": "POP" }, "11399": { "fn": "PortfolioHandler._updatePortfolioContext", "offset": [ 11524, 11538 ], "op": "SWAP2", "path": "84" }, "11400": { "op": "POP" }, "11401": { "fn": "PortfolioHandler._updatePortfolioContext", "jump": "o", "offset": [ 10664, 11546 ], "op": "JUMP", "path": "84" }, "11402": { "fn": "LibStorage.getAssetsBitmapStorage", "offset": [ 5315, 5558 ], "op": "JUMPDEST", "path": "62" }, "11403": { "fn": "LibStorage.getAssetsBitmapStorage", "offset": [ 5380, 5441 ], "op": "PUSH1", "path": "62", "value": "0x0" }, "11405": { "fn": "LibStorage.getAssetsBitmapStorage", "offset": [ 5457, 5469 ], "op": "DUP1", "path": "62" }, "11406": { "fn": "LibStorage.getAssetsBitmapStorage", "offset": [ 5472, 5511 ], "op": "PUSH2", "path": "62", "value": "0x30C" }, "11409": { "fn": "LibStorage.getAssetsBitmapStorage", "offset": [ 5488, 5510 ], "op": "PUSH1", "path": "62", "value": "0xB" }, "11411": { "fn": "LibStorage.getAssetsBitmapStorage", "offset": [ 5472, 5487 ], "op": "PUSH2", "path": "62", "value": "0x1971" }, "11414": { "fn": "LibStorage.getAssetsBitmapStorage", "jump": "i", "offset": [ 5472, 5511 ], "op": "JUMP", "path": "62" }, "11415": { "fn": "Bitmap.totalBitsSet", "offset": [ 1013, 1851 ], "op": "JUMPDEST", "path": "92" }, "11416": { "fn": "Bitmap.totalBitsSet", "offset": [ 1215, 1216 ], "op": "PUSH1", "path": "92", "statement": 268, "value": "0x1" }, "11418": { "fn": "Bitmap.totalBitsSet", "offset": [ 1210, 1216 ], "op": "DUP2", "path": "92" }, "11419": { "fn": "Bitmap.totalBitsSet", "offset": [ 1210, 1216 ], "op": "SWAP1", "path": "92" }, "11420": { "fn": "Bitmap.totalBitsSet", "offset": [ 1210, 1216 ], "op": "SHR", "path": "92" }, "11421": { "fn": "Bitmap.totalBitsSet", "offset": [ 1219, 1285 ], "op": "PUSH32", "path": "92", "value": "0x5555555555555555555555555555555555555555555555555555555555555555" }, "11454": { "fn": "Bitmap.totalBitsSet", "offset": [ 1210, 1285 ], "op": "SWAP1", "path": "92" }, "11455": { "fn": "Bitmap.totalBitsSet", "offset": [ 1210, 1285 ], "op": "DUP2", "path": "92" }, "11456": { "fn": "Bitmap.totalBitsSet", "offset": [ 1210, 1285 ], "op": "AND", "path": "92" }, "11457": { "fn": "Bitmap.totalBitsSet", "offset": [ 1135, 1205 ], "op": "SWAP2", "path": "92" }, "11458": { "fn": "Bitmap.totalBitsSet", "offset": [ 1135, 1205 ], "op": "AND", "path": "92" }, "11459": { "fn": "Bitmap.totalBitsSet", "offset": [ 1134, 1286 ], "op": "ADD", "path": "92" }, "11460": { "fn": "Bitmap.totalBitsSet", "offset": [ 1381, 1382 ], "op": "PUSH1", "path": "92", "statement": 269, "value": "0x2" }, "11462": { "fn": "Bitmap.totalBitsSet", "offset": [ 1376, 1382 ], "op": "DUP2", "path": "92" }, "11463": { "fn": "Bitmap.totalBitsSet", "offset": [ 1376, 1382 ], "op": "SWAP1", "path": "92" }, "11464": { "fn": "Bitmap.totalBitsSet", "offset": [ 1376, 1382 ], "op": "SHR", "path": "92" }, "11465": { "fn": "Bitmap.totalBitsSet", "offset": [ 1385, 1451 ], "op": "PUSH32", "path": "92", "value": "0x3333333333333333333333333333333333333333333333333333333333333333" }, "11498": { "fn": "Bitmap.totalBitsSet", "offset": [ 1376, 1451 ], "op": "SWAP1", "path": "92" }, "11499": { "fn": "Bitmap.totalBitsSet", "offset": [ 1376, 1451 ], "op": "DUP2", "path": "92" }, "11500": { "fn": "Bitmap.totalBitsSet", "offset": [ 1376, 1451 ], "op": "AND", "path": "92" }, "11501": { "fn": "Bitmap.totalBitsSet", "offset": [ 1301, 1371 ], "op": "SWAP2", "path": "92" }, "11502": { "fn": "Bitmap.totalBitsSet", "offset": [ 1301, 1371 ], "op": "AND", "path": "92" }, "11503": { "fn": "Bitmap.totalBitsSet", "offset": [ 1300, 1452 ], "op": "ADD", "path": "92" }, "11504": { "fn": "Bitmap.totalBitsSet", "offset": [ 1547, 1548 ], "op": "PUSH1", "path": "92", "statement": 270, "value": "0x4" }, "11506": { "fn": "Bitmap.totalBitsSet", "offset": [ 1542, 1548 ], "op": "DUP2", "path": "92" }, "11507": { "fn": "Bitmap.totalBitsSet", "offset": [ 1542, 1548 ], "op": "SWAP1", "path": "92" }, "11508": { "fn": "Bitmap.totalBitsSet", "offset": [ 1542, 1548 ], "op": "SHR", "path": "92" }, "11509": { "fn": "Bitmap.totalBitsSet", "offset": [ 1471, 1537 ], "op": "PUSH32", "path": "92", "value": "0x707070707070707070707070707070707070707070707070707070707070707" }, "11542": { "fn": "Bitmap.totalBitsSet", "offset": [ 1467, 1537 ], "op": "SWAP2", "path": "92" }, "11543": { "fn": "Bitmap.totalBitsSet", "offset": [ 1467, 1537 ], "op": "SWAP1", "path": "92" }, "11544": { "fn": "Bitmap.totalBitsSet", "offset": [ 1467, 1537 ], "op": "SWAP2", "path": "92" }, "11545": { "fn": "Bitmap.totalBitsSet", "offset": [ 1467, 1537 ], "op": "AND", "path": "92" }, "11546": { "fn": "Bitmap.totalBitsSet", "offset": [ 1466, 1549 ], "op": "ADD", "path": "92" }, "11547": { "fn": "Bitmap.totalBitsSet", "offset": [ 1644, 1645 ], "op": "PUSH1", "path": "92", "statement": 271, "value": "0x8" }, "11549": { "fn": "Bitmap.totalBitsSet", "offset": [ 1639, 1645 ], "op": "DUP2", "path": "92" }, "11550": { "fn": "Bitmap.totalBitsSet", "offset": [ 1639, 1645 ], "op": "SWAP1", "path": "92" }, "11551": { "fn": "Bitmap.totalBitsSet", "offset": [ 1639, 1645 ], "op": "SHR", "path": "92" }, "11552": { "fn": "Bitmap.totalBitsSet", "offset": [ 1648, 1714 ], "op": "PUSH31", "path": "92", "value": "0xF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F" }, "11584": { "fn": "Bitmap.totalBitsSet", "offset": [ 1639, 1714 ], "op": "SWAP1", "path": "92" }, "11585": { "fn": "Bitmap.totalBitsSet", "offset": [ 1639, 1714 ], "op": "DUP2", "path": "92" }, "11586": { "fn": "Bitmap.totalBitsSet", "offset": [ 1639, 1714 ], "op": "AND", "path": "92" }, "11587": { "fn": "Bitmap.totalBitsSet", "offset": [ 1564, 1634 ], "op": "SWAP2", "path": "92" }, "11588": { "fn": "Bitmap.totalBitsSet", "offset": [ 1564, 1634 ], "op": "AND", "path": "92" }, "11589": { "fn": "Bitmap.totalBitsSet", "offset": [ 1563, 1715 ], "op": "ADD", "path": "92" }, "11590": { "fn": "Bitmap.totalBitsSet", "offset": [ 1739, 1741 ], "op": "PUSH1", "path": "92", "statement": 272, "value": "0x10" }, "11592": { "fn": "Bitmap.totalBitsSet", "offset": [ 1734, 1741 ], "op": "DUP2", "path": "92" }, "11593": { "fn": "Bitmap.totalBitsSet", "offset": [ 1734, 1741 ], "op": "SWAP1", "path": "92" }, "11594": { "fn": "Bitmap.totalBitsSet", "offset": [ 1734, 1741 ], "op": "SHR", "path": "92" }, "11595": { "fn": "Bitmap.totalBitsSet", "offset": [ 1729, 1742 ], "op": "ADD", "path": "92" }, "11596": { "fn": "Bitmap.totalBitsSet", "offset": [ 1766, 1768 ], "op": "PUSH1", "path": "92", "statement": 273, "value": "0x20" }, "11598": { "fn": "Bitmap.totalBitsSet", "offset": [ 1761, 1768 ], "op": "DUP2", "path": "92" }, "11599": { "fn": "Bitmap.totalBitsSet", "offset": [ 1761, 1768 ], "op": "SWAP1", "path": "92" }, "11600": { "fn": "Bitmap.totalBitsSet", "offset": [ 1761, 1768 ], "op": "SHR", "path": "92" }, "11601": { "fn": "Bitmap.totalBitsSet", "offset": [ 1756, 1769 ], "op": "ADD", "path": "92" }, "11602": { "fn": "Bitmap.totalBitsSet", "offset": [ 1794, 1796 ], "op": "PUSH1", "path": "92", "statement": 274, "value": "0x40" }, "11604": { "fn": "Bitmap.totalBitsSet", "offset": [ 1789, 1796 ], "op": "DUP2", "path": "92" }, "11605": { "fn": "Bitmap.totalBitsSet", "offset": [ 1789, 1796 ], "op": "SWAP1", "path": "92" }, "11606": { "fn": "Bitmap.totalBitsSet", "offset": [ 1789, 1796 ], "op": "SHR", "path": "92" }, "11607": { "fn": "Bitmap.totalBitsSet", "offset": [ 1783, 1797 ], "op": "ADD", "path": "92" }, "11608": { "fn": "Bitmap.totalBitsSet", "offset": [ 1833, 1836 ], "op": "PUSH1", "path": "92", "statement": 275, "value": "0x80" }, "11610": { "fn": "Bitmap.totalBitsSet", "offset": [ 1828, 1836 ], "op": "DUP2", "path": "92" }, "11611": { "fn": "Bitmap.totalBitsSet", "offset": [ 1828, 1836 ], "op": "SWAP1", "path": "92" }, "11612": { "fn": "Bitmap.totalBitsSet", "offset": [ 1828, 1836 ], "op": "SHR", "path": "92" }, "11613": { "fn": "Bitmap.totalBitsSet", "offset": [ 1839, 1843 ], "op": "PUSH1", "path": "92", "value": "0xFF" }, "11615": { "fn": "Bitmap.totalBitsSet", "offset": [ 1828, 1843 ], "op": "SWAP1", "path": "92" }, "11616": { "fn": "Bitmap.totalBitsSet", "offset": [ 1828, 1843 ], "op": "DUP2", "path": "92" }, "11617": { "fn": "Bitmap.totalBitsSet", "offset": [ 1828, 1843 ], "op": "AND", "path": "92" }, "11618": { "fn": "Bitmap.totalBitsSet", "offset": [ 1815, 1823 ], "op": "SWAP2", "path": "92" }, "11619": { "fn": "Bitmap.totalBitsSet", "offset": [ 1815, 1823 ], "op": "AND", "path": "92" }, "11620": { "fn": "Bitmap.totalBitsSet", "offset": [ 1814, 1844 ], "op": "ADD", "path": "92" }, "11621": { "fn": "Bitmap.totalBitsSet", "offset": [ 1814, 1844 ], "op": "SWAP1", "path": "92" }, "11622": { "fn": "Bitmap.totalBitsSet", "jump": "o", "offset": [ 1013, 1851 ], "op": "JUMP", "path": "92" }, "11623": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1006, 1758 ], "op": "JUMPDEST", "path": "88" }, "11624": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1085, 1092 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "11626": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1130, 1131 ], "op": "DUP1", "path": "88", "statement": 276 }, "11627": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1117 ], "op": "DUP3", "path": "88" }, "11628": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1127 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "11630": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1127 ], "op": "ADD", "path": "88" }, "11631": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1127 ], "op": "MLOAD", "path": "88" }, "11632": { "branch": 350, "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1131 ], "op": "GT", "path": "88" }, "11633": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "DUP1", "path": "88" }, "11634": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "ISZERO", "path": "88" }, "11635": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "PUSH2", "path": "88", "value": "0x2D81" }, "11638": { "branch": 350, "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "JUMPI", "path": "88" }, "11639": { "op": "POP" }, "11640": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "11642": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "DUP3", "path": "88" }, "11643": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "ADD", "path": "88" }, "11644": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1150 ], "op": "MLOAD", "path": "88" }, "11645": { "offset": [ 4906, 4907 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "11647": { "op": "LT" }, "11648": { "branch": 351, "fn": "AssetHandler.getSettlementDate", "offset": [ 1135, 1189 ], "op": "ISZERO", "path": "88" }, "11649": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1112, 1189 ], "op": "JUMPDEST", "path": "88" }, "11650": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "PUSH2", "path": "88", "value": "0x2D8A" }, "11653": { "branch": 351, "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "JUMPI", "path": "88" }, "11654": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "11656": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "DUP1", "path": "88" }, "11657": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "REVERT", "path": "88" }, "11658": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1104, 1190 ], "op": "JUMPDEST", "path": "88" }, "11659": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "11661": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "DUP3", "path": "88" }, "11662": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "ADD", "path": "88" }, "11663": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1309, 1324 ], "op": "MLOAD", "path": "88" }, "11664": { "offset": [ 4847, 4848 ], "op": "PUSH1", "path": "60", "value": "0x2" }, "11666": { "op": "LT" }, "11667": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1305, 1386 ], "op": "PUSH2", "path": "88", "value": "0x2DA1" }, "11670": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1305, 1386 ], "op": "JUMPI", "path": "88" }, "11671": { "op": "POP" }, "11672": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "PUSH1", "path": "88", "statement": 277, "value": "0x20" }, "11674": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "DUP2", "path": "88" }, "11675": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "ADD", "path": "88" }, "11676": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1372, 1386 ], "op": "MLOAD", "path": "88" }, "11677": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1365, 1386 ], "op": "PUSH2", "path": "88", "value": "0x327" }, "11680": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1365, 1386 ], "op": "JUMP", "path": "88" }, "11681": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1305, 1386 ], "op": "JUMPDEST", "path": "88" }, "11682": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1417 ], "op": "PUSH1", "path": "88", "value": "0x0" }, "11684": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1420, 1465 ], "op": "PUSH2", "path": "88", "value": "0x2DB3" }, "11687": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1463, 1464 ], "op": "PUSH1", "path": "88", "value": "0x1" }, "11689": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1450 ], "op": "DUP5", "path": "88" }, "11690": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1460 ], "op": "PUSH1", "path": "88", "value": "0x40" }, "11692": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1460 ], "op": "ADD", "path": "88" }, "11693": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1460 ], "op": "MLOAD", "path": "88" }, "11694": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1445, 1464 ], "op": "SUB", "path": "88" }, "11695": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1420, 1444 ], "op": "PUSH2", "path": "88", "value": "0x1D04" }, "11698": { "fn": "AssetHandler.getSettlementDate", "jump": "i", "offset": [ 1420, 1465 ], "op": "JUMP", "path": "88" }, "11699": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1420, 1465 ], "op": "JUMPDEST", "path": "88" }, "11700": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "PUSH1", "path": "88", "statement": 278, "value": "0x20" }, "11702": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "DUP5", "path": "88" }, "11703": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "ADD", "path": "88" }, "11704": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1710 ], "op": "MLOAD", "path": "88" }, "11705": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1465 ], "op": "SWAP1", "path": "88" }, "11706": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1465 ], "op": "SWAP2", "path": "88" }, "11707": { "op": "POP" }, "11708": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1751 ], "op": "PUSH2", "path": "88", "value": "0x653" }, "11711": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1751 ], "op": "SWAP1", "path": "88" }, "11712": { "offset": [ 2617, 2626 ], "op": "PUSH3", "path": "60", "value": "0x76A700" }, "11716": { "fn": "AssetHandler.getSettlementDate", "offset": [ 2617, 2626 ], "op": "SWAP1", "path": "60" }, "11717": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1728 ], "op": "PUSH2", "path": "88", "value": "0x2DCE" }, "11720": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1728 ], "op": "SWAP1", "path": "88" }, "11721": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1397, 1465 ], "op": "DUP5", "path": "88" }, "11722": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1714 ], "op": "PUSH2", "path": "88", "value": "0x2DD4" }, "11725": { "fn": "AssetHandler.getSettlementDate", "jump": "i", "offset": [ 1696, 1728 ], "op": "JUMP", "path": "88" }, "11726": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1728 ], "op": "JUMPDEST", "path": "88" }, "11727": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1732 ], "op": "SWAP1", "path": "88" }, "11728": { "fn": "AssetHandler.getSettlementDate", "offset": [ 1696, 1732 ], "op": "PUSH2", "path": "88", "value": "0x1DA8" }, "11731": { "fn": "AssetHandler.getSettlementDate", "jump": "i", "offset": [ 1696, 1751 ], "op": "JUMP", "path": "88" }, "11732": { "fn": "SafeMath.sub", "offset": [ 3128, 3283 ], "op": "JUMPDEST", "path": "6" }, "11733": { "fn": "SafeMath.sub", "offset": [ 3186, 3193 ], "op": "PUSH1", "path": "6", "value": "0x0" }, "11735": { "fn": "SafeMath.sub", "offset": [ 3218, 3219 ], "op": "DUP3", "path": "6", "statement": 279 }, "11736": { "fn": "SafeMath.sub", "offset": [ 3213, 3214 ], "op": "DUP3", "path": "6" }, "11737": { "fn": "SafeMath.sub", "offset": [ 3213, 3219 ], "op": "GT", "path": "6" }, "11738": { "branch": 445, "fn": "SafeMath.sub", "offset": [ 3213, 3219 ], "op": "ISZERO", "path": "6" }, "11739": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH2", "path": "6", "value": "0x2E2B" }, "11742": { "branch": 445, "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "JUMPI", "path": "6" }, "11743": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x40" }, "11745": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP1", "path": "6" }, "11746": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MLOAD", "path": "6" }, "11747": { "op": "PUSH3", "value": "0x461BCD" }, "11751": { "op": "PUSH1", "value": "0xE5" }, "11753": { "op": "SHL" }, "11754": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP2", "path": "6" }, "11755": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "11756": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x20" }, "11758": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x4" }, "11760": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP3", "path": "6" }, "11761": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "11762": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "11763": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x1E" }, "11765": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x24" }, "11767": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP3", "path": "6" }, "11768": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "11769": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "11770": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH32", "path": "6", "value": "0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000" }, "11803": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x44" }, "11805": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP3", "path": "6" }, "11806": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "11807": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MSTORE", "path": "6" }, "11808": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "11809": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "MLOAD", "path": "6" }, "11810": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "11811": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "DUP2", "path": "6" }, "11812": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "11813": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SUB", "path": "6" }, "11814": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "PUSH1", "path": "6", "value": "0x64" }, "11816": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "ADD", "path": "6" }, "11817": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "SWAP1", "path": "6" }, "11818": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "REVERT", "path": "6" }, "11819": { "fn": "SafeMath.sub", "offset": [ 3205, 3254 ], "op": "JUMPDEST", "path": "6" }, "11820": { "op": "POP" }, "11821": { "fn": "SafeMath.sub", "offset": [ 3271, 3276 ], "op": "SWAP1", "path": "6", "statement": 280 }, "11822": { "fn": "SafeMath.sub", "offset": [ 3271, 3276 ], "op": "SUB", "path": "6" }, "11823": { "fn": "SafeMath.sub", "offset": [ 3271, 3276 ], "op": "SWAP1", "path": "6" }, "11824": { "fn": "SafeMath.sub", "jump": "o", "offset": [ 3128, 3283 ], "op": "JUMP", "path": "6" }, "11825": { "op": "JUMPDEST" }, "11826": { "op": "PUSH1", "value": "0x40" }, "11828": { "op": "DUP1" }, "11829": { "op": "MLOAD" }, "11830": { "op": "PUSH1", "value": "0xA0" }, "11832": { "op": "DUP2" }, "11833": { "op": "ADD" }, "11834": { "op": "DUP3" }, "11835": { "op": "MSTORE" }, "11836": { "op": "PUSH1", "value": "0x0" }, "11838": { "op": "DUP1" }, "11839": { "op": "DUP3" }, "11840": { "op": "MSTORE" }, "11841": { "op": "PUSH1", "value": "0x20" }, "11843": { "op": "DUP3" }, "11844": { "op": "ADD" }, "11845": { "op": "DUP2" }, "11846": { "op": "SWAP1" }, "11847": { "op": "MSTORE" }, "11848": { "op": "SWAP2" }, "11849": { "op": "DUP2" }, "11850": { "op": "ADD" }, "11851": { "op": "DUP3" }, "11852": { "op": "SWAP1" }, "11853": { "op": "MSTORE" }, "11854": { "op": "PUSH1", "value": "0x60" }, "11856": { "op": "DUP2" }, "11857": { "op": "ADD" }, "11858": { "op": "DUP3" }, "11859": { "op": "SWAP1" }, "11860": { "op": "MSTORE" }, "11861": { "op": "PUSH1", "value": "0x80" }, "11863": { "op": "DUP2" }, "11864": { "op": "ADD" }, "11865": { "op": "SWAP2" }, "11866": { "op": "SWAP1" }, "11867": { "op": "SWAP2" }, "11868": { "op": "MSTORE" }, "11869": { "op": "SWAP1" }, "11870": { "jump": "o", "op": "JUMP" }, "11871": { "op": "JUMPDEST" }, "11872": { "op": "PUSH1", "value": "0x40" }, "11874": { "op": "MLOAD" }, "11875": { "op": "DUP1" }, "11876": { "op": "PUSH1", "value": "0xC0" }, "11878": { "op": "ADD" }, "11879": { "op": "PUSH1", "value": "0x40" }, "11881": { "op": "MSTORE" }, "11882": { "op": "DUP1" }, "11883": { "op": "PUSH1", "value": "0x0" }, "11885": { "op": "DUP2" }, "11886": { "op": "MSTORE" }, "11887": { "op": "PUSH1", "value": "0x20" }, "11889": { "op": "ADD" }, "11890": { "op": "PUSH1", "value": "0x0" }, "11892": { "op": "DUP2" }, "11893": { "op": "MSTORE" }, "11894": { "op": "PUSH1", "value": "0x20" }, "11896": { "op": "ADD" }, "11897": { "op": "PUSH1", "value": "0x0" }, "11899": { "op": "DUP2" }, "11900": { "op": "MSTORE" }, "11901": { "op": "PUSH1", "value": "0x20" }, "11903": { "op": "ADD" }, "11904": { "op": "PUSH1", "value": "0x0" }, "11906": { "op": "DUP2" }, "11907": { "op": "MSTORE" }, "11908": { "op": "PUSH1", "value": "0x20" }, "11910": { "op": "ADD" }, "11911": { "op": "PUSH1", "value": "0x0" }, "11913": { "op": "DUP2" }, "11914": { "op": "MSTORE" }, "11915": { "op": "PUSH1", "value": "0x20" }, "11917": { "op": "ADD" }, "11918": { "op": "PUSH1", "value": "0x0" }, "11920": { "op": "PUSH1", "value": "0x3" }, "11922": { "op": "DUP2" }, "11923": { "op": "GT" }, "11924": { "op": "ISZERO" }, "11925": { "op": "PUSH2", "value": "0x2E9A" }, "11928": { "op": "JUMPI" }, "11929": { "op": "INVALID" }, "11930": { "op": "JUMPDEST" }, "11931": { "op": "SWAP1" }, "11932": { "op": "MSTORE" }, "11933": { "op": "SWAP1" }, "11934": { "jump": "o", "op": "JUMP" }, "11935": { "op": "JUMPDEST" }, "11936": { "op": "PUSH1", "value": "0x40" }, "11938": { "op": "MLOAD" }, "11939": { "op": "DUP1" }, "11940": { "op": "PUSH1", "value": "0x80" }, "11942": { "op": "ADD" }, "11943": { "op": "PUSH1", "value": "0x40" }, "11945": { "op": "MSTORE" }, "11946": { "op": "DUP1" }, "11947": { "op": "PUSH1", "value": "0x60" }, "11949": { "op": "DUP2" }, "11950": { "op": "MSTORE" }, "11951": { "op": "PUSH1", "value": "0x20" }, "11953": { "op": "ADD" }, "11954": { "op": "PUSH1", "value": "0x60" }, "11956": { "op": "DUP2" }, "11957": { "op": "MSTORE" }, "11958": { "op": "PUSH1", "value": "0x20" }, "11960": { "op": "ADD" }, "11961": { "op": "PUSH1", "value": "0x0" }, "11963": { "op": "DUP2" }, "11964": { "op": "MSTORE" }, "11965": { "op": "PUSH1", "value": "0x20" }, "11967": { "op": "ADD" }, "11968": { "op": "PUSH1", "value": "0x0" }, "11970": { "op": "DUP2" }, "11971": { "op": "MSTORE" }, "11972": { "op": "POP" }, "11973": { "op": "SWAP1" }, "11974": { "jump": "o", "op": "JUMP" }, "11975": { "op": "JUMPDEST" }, "11976": { "op": "PUSH1", "value": "0x0" }, "11978": { "op": "DUP1" }, "11979": { "op": "DUP4" }, "11980": { "op": "PUSH1", "value": "0x1F" }, "11982": { "op": "DUP5" }, "11983": { "op": "ADD" }, "11984": { "op": "SLT" }, "11985": { "op": "PUSH2", "value": "0x2ED8" }, "11988": { "op": "JUMPI" }, "11989": { "op": "DUP1" }, "11990": { "op": "DUP2" }, "11991": { "op": "REVERT" }, "11992": { "op": "JUMPDEST" }, "11993": { "op": "POP" }, "11994": { "op": "DUP2" }, "11995": { "op": "CALLDATALOAD" }, "11996": { "op": "PUSH1", "value": "0x1" }, "11998": { "op": "PUSH1", "value": "0x1" }, "12000": { "op": "PUSH1", "value": "0x40" }, "12002": { "op": "SHL" }, "12003": { "op": "SUB" }, "12004": { "op": "DUP2" }, "12005": { "op": "GT" }, "12006": { "op": "ISZERO" }, "12007": { "op": "PUSH2", "value": "0x2EEE" }, "12010": { "op": "JUMPI" }, "12011": { "op": "DUP2" }, "12012": { "op": "DUP3" }, "12013": { "op": "REVERT" }, "12014": { "op": "JUMPDEST" }, "12015": { "op": "PUSH1", "value": "0x20" }, "12017": { "op": "DUP4" }, "12018": { "op": "ADD" }, "12019": { "op": "SWAP2" }, "12020": { "op": "POP" }, "12021": { "op": "DUP4" }, "12022": { "op": "PUSH1", "value": "0x20" }, "12024": { "op": "DUP1" }, "12025": { "op": "DUP4" }, "12026": { "op": "MUL" }, "12027": { "op": "DUP6" }, "12028": { "op": "ADD" }, "12029": { "op": "ADD" }, "12030": { "op": "GT" }, "12031": { "op": "ISZERO" }, "12032": { "op": "PUSH2", "value": "0x1F06" }, "12035": { "op": "JUMPI" }, "12036": { "op": "PUSH1", "value": "0x0" }, "12038": { "op": "DUP1" }, "12039": { "op": "REVERT" }, "12040": { "op": "JUMPDEST" }, "12041": { "op": "DUP1" }, "12042": { "op": "MLOAD" }, "12043": { "op": "PUSH1", "value": "0x1" }, "12045": { "op": "PUSH1", "value": "0x1" }, "12047": { "op": "PUSH1", "value": "0x70" }, "12049": { "op": "SHL" }, "12050": { "op": "SUB" }, "12051": { "op": "NOT" }, "12052": { "op": "DUP2" }, "12053": { "op": "AND" }, "12054": { "op": "DUP2" }, "12055": { "op": "EQ" }, "12056": { "op": "PUSH2", "value": "0x327" }, "12059": { "op": "JUMPI" }, "12060": { "op": "PUSH1", "value": "0x0" }, "12062": { "op": "DUP1" }, "12063": { "op": "REVERT" }, "12064": { "op": "JUMPDEST" }, "12065": { "op": "PUSH1", "value": "0x0" }, "12067": { "op": "DUP1" }, "12068": { "op": "DUP4" }, "12069": { "op": "PUSH1", "value": "0x1F" }, "12071": { "op": "DUP5" }, "12072": { "op": "ADD" }, "12073": { "op": "SLT" }, "12074": { "op": "PUSH2", "value": "0x2F31" }, "12077": { "op": "JUMPI" }, "12078": { "op": "DUP2" }, "12079": { "op": "DUP3" }, "12080": { "op": "REVERT" }, "12081": { "op": "JUMPDEST" }, "12082": { "op": "POP" }, "12083": { "op": "DUP2" }, "12084": { "op": "CALLDATALOAD" }, "12085": { "op": "PUSH1", "value": "0x1" }, "12087": { "op": "PUSH1", "value": "0x1" }, "12089": { "op": "PUSH1", "value": "0x40" }, "12091": { "op": "SHL" }, "12092": { "op": "SUB" }, "12093": { "op": "DUP2" }, "12094": { "op": "GT" }, "12095": { "op": "ISZERO" }, "12096": { "op": "PUSH2", "value": "0x2F47" }, "12099": { "op": "JUMPI" }, "12100": { "op": "DUP2" }, "12101": { "op": "DUP3" }, "12102": { "op": "REVERT" }, "12103": { "op": "JUMPDEST" }, "12104": { "op": "PUSH1", "value": "0x20" }, "12106": { "op": "DUP4" }, "12107": { "op": "ADD" }, "12108": { "op": "SWAP2" }, "12109": { "op": "POP" }, "12110": { "op": "DUP4" }, "12111": { "op": "PUSH1", "value": "0x20" }, "12113": { "op": "DUP3" }, "12114": { "op": "DUP6" }, "12115": { "op": "ADD" }, "12116": { "op": "ADD" }, "12117": { "op": "GT" }, "12118": { "op": "ISZERO" }, "12119": { "op": "PUSH2", "value": "0x1F06" }, "12122": { "op": "JUMPI" }, "12123": { "op": "PUSH1", "value": "0x0" }, "12125": { "op": "DUP1" }, "12126": { "op": "REVERT" }, "12127": { "op": "JUMPDEST" }, "12128": { "op": "DUP1" }, "12129": { "op": "MLOAD" }, "12130": { "op": "PUSH2", "value": "0x327" }, "12133": { "op": "DUP2" }, "12134": { "op": "PUSH2", "value": "0x386F" }, "12137": { "jump": "i", "op": "JUMP" }, "12138": { "op": "JUMPDEST" }, "12139": { "op": "DUP1" }, "12140": { "op": "MLOAD" }, "12141": { "op": "PUSH2", "value": "0x327" }, "12144": { "op": "DUP2" }, "12145": { "op": "PUSH2", "value": "0x3892" }, "12148": { "jump": "i", "op": "JUMP" }, "12149": { "op": "JUMPDEST" }, "12150": { "op": "PUSH1", "value": "0x0" }, "12152": { "op": "PUSH1", "value": "0x20" }, "12154": { "op": "DUP3" }, "12155": { "op": "DUP5" }, "12156": { "op": "SUB" }, "12157": { "op": "SLT" }, "12158": { "op": "ISZERO" }, "12159": { "op": "PUSH2", "value": "0x2F86" }, "12162": { "op": "JUMPI" }, "12163": { "op": "DUP1" }, "12164": { "op": "DUP2" }, "12165": { "op": "REVERT" }, "12166": { "op": "JUMPDEST" }, "12167": { "op": "DUP2" }, "12168": { "op": "CALLDATALOAD" }, "12169": { "op": "PUSH2", "value": "0x653" }, "12172": { "op": "DUP2" }, "12173": { "op": "PUSH2", "value": "0x3841" }, "12176": { "jump": "i", "op": "JUMP" }, "12177": { "op": "JUMPDEST" }, "12178": { "op": "PUSH1", "value": "0x0" }, "12180": { "op": "DUP1" }, "12181": { "op": "PUSH1", "value": "0x40" }, "12183": { "op": "DUP4" }, "12184": { "op": "DUP6" }, "12185": { "op": "SUB" }, "12186": { "op": "SLT" }, "12187": { "op": "ISZERO" }, "12188": { "op": "PUSH2", "value": "0x2FA3" }, "12191": { "op": "JUMPI" }, "12192": { "op": "DUP1" }, "12193": { "op": "DUP2" }, "12194": { "op": "REVERT" }, "12195": { "op": "JUMPDEST" }, "12196": { "op": "DUP3" }, "12197": { "op": "CALLDATALOAD" }, "12198": { "op": "PUSH2", "value": "0x2FAE" }, "12201": { "op": "DUP2" }, "12202": { "op": "PUSH2", "value": "0x3841" }, "12205": { "jump": "i", "op": "JUMP" }, "12206": { "op": "JUMPDEST" }, "12207": { "op": "SWAP2" }, "12208": { "op": "POP" }, "12209": { "op": "PUSH1", "value": "0x20" }, "12211": { "op": "DUP4" }, "12212": { "op": "ADD" }, "12213": { "op": "CALLDATALOAD" }, "12214": { "op": "PUSH2", "value": "0x2FBE" }, "12217": { "op": "DUP2" }, "12218": { "op": "PUSH2", "value": "0x3841" }, "12221": { "jump": "i", "op": "JUMP" }, "12222": { "op": "JUMPDEST" }, "12223": { "op": "DUP1" }, "12224": { "op": "SWAP2" }, "12225": { "op": "POP" }, "12226": { "op": "POP" }, "12227": { "op": "SWAP3" }, "12228": { "op": "POP" }, "12229": { "op": "SWAP3" }, "12230": { "op": "SWAP1" }, "12231": { "op": "POP" }, "12232": { "jump": "o", "op": "JUMP" }, "12233": { "op": "JUMPDEST" }, "12234": { "op": "PUSH1", "value": "0x0" }, "12236": { "op": "DUP1" }, "12237": { "op": "PUSH1", "value": "0x0" }, "12239": { "op": "DUP1" }, "12240": { "op": "PUSH1", "value": "0x0" }, "12242": { "op": "DUP1" }, "12243": { "op": "PUSH1", "value": "0x0" }, "12245": { "op": "DUP1" }, "12246": { "op": "PUSH1", "value": "0xA0" }, "12248": { "op": "DUP10" }, "12249": { "op": "DUP12" }, "12250": { "op": "SUB" }, "12251": { "op": "SLT" }, "12252": { "op": "ISZERO" }, "12253": { "op": "PUSH2", "value": "0x2FE4" }, "12256": { "op": "JUMPI" }, "12257": { "op": "DUP4" }, "12258": { "op": "DUP5" }, "12259": { "op": "REVERT" }, "12260": { "op": "JUMPDEST" }, "12261": { "op": "DUP9" }, "12262": { "op": "CALLDATALOAD" }, "12263": { "op": "PUSH2", "value": "0x2FEF" }, "12266": { "op": "DUP2" }, "12267": { "op": "PUSH2", "value": "0x3841" }, "12270": { "jump": "i", "op": "JUMP" }, "12271": { "op": "JUMPDEST" }, "12272": { "op": "SWAP8" }, "12273": { "op": "POP" }, "12274": { "op": "PUSH1", "value": "0x20" }, "12276": { "op": "DUP10" }, "12277": { "op": "ADD" }, "12278": { "op": "CALLDATALOAD" }, "12279": { "op": "PUSH2", "value": "0x2FFF" }, "12282": { "op": "DUP2" }, "12283": { "op": "PUSH2", "value": "0x3841" }, "12286": { "jump": "i", "op": "JUMP" }, "12287": { "op": "JUMPDEST" }, "12288": { "op": "SWAP7" }, "12289": { "op": "POP" }, "12290": { "op": "PUSH1", "value": "0x40" }, "12292": { "op": "DUP10" }, "12293": { "op": "ADD" }, "12294": { "op": "CALLDATALOAD" }, "12295": { "op": "PUSH1", "value": "0x1" }, "12297": { "op": "PUSH1", "value": "0x1" }, "12299": { "op": "PUSH1", "value": "0x40" }, "12301": { "op": "SHL" }, "12302": { "op": "SUB" }, "12303": { "op": "DUP1" }, "12304": { "op": "DUP3" }, "12305": { "op": "GT" }, "12306": { "op": "ISZERO" }, "12307": { "op": "PUSH2", "value": "0x301A" }, "12310": { "op": "JUMPI" }, "12311": { "op": "DUP6" }, "12312": { "op": "DUP7" }, "12313": { "op": "REVERT" }, "12314": { "op": "JUMPDEST" }, "12315": { "op": "PUSH2", "value": "0x3026" }, "12318": { "op": "DUP13" }, "12319": { "op": "DUP4" }, "12320": { "op": "DUP14" }, "12321": { "op": "ADD" }, "12322": { "op": "PUSH2", "value": "0x2EC7" }, "12325": { "jump": "i", "op": "JUMP" }, "12326": { "op": "JUMPDEST" }, "12327": { "op": "SWAP1" }, "12328": { "op": "SWAP9" }, "12329": { "op": "POP" }, "12330": { "op": "SWAP7" }, "12331": { "op": "POP" }, "12332": { "op": "PUSH1", "value": "0x60" }, "12334": { "op": "DUP12" }, "12335": { "op": "ADD" }, "12336": { "op": "CALLDATALOAD" }, "12337": { "op": "SWAP2" }, "12338": { "op": "POP" }, "12339": { "op": "DUP1" }, "12340": { "op": "DUP3" }, "12341": { "op": "GT" }, "12342": { "op": "ISZERO" }, "12343": { "op": "PUSH2", "value": "0x303E" }, "12346": { "op": "JUMPI" }, "12347": { "op": "DUP6" }, "12348": { "op": "DUP7" }, "12349": { "op": "REVERT" }, "12350": { "op": "JUMPDEST" }, "12351": { "op": "PUSH2", "value": "0x304A" }, "12354": { "op": "DUP13" }, "12355": { "op": "DUP4" }, "12356": { "op": "DUP14" }, "12357": { "op": "ADD" }, "12358": { "op": "PUSH2", "value": "0x2EC7" }, "12361": { "jump": "i", "op": "JUMP" }, "12362": { "op": "JUMPDEST" }, "12363": { "op": "SWAP1" }, "12364": { "op": "SWAP7" }, "12365": { "op": "POP" }, "12366": { "op": "SWAP5" }, "12367": { "op": "POP" }, "12368": { "op": "PUSH1", "value": "0x80" }, "12370": { "op": "DUP12" }, "12371": { "op": "ADD" }, "12372": { "op": "CALLDATALOAD" }, "12373": { "op": "SWAP2" }, "12374": { "op": "POP" }, "12375": { "op": "DUP1" }, "12376": { "op": "DUP3" }, "12377": { "op": "GT" }, "12378": { "op": "ISZERO" }, "12379": { "op": "PUSH2", "value": "0x3062" }, "12382": { "op": "JUMPI" }, "12383": { "op": "DUP4" }, "12384": { "op": "DUP5" }, "12385": { "op": "REVERT" }, "12386": { "op": "JUMPDEST" }, "12387": { "op": "POP" }, "12388": { "op": "PUSH2", "value": "0x306F" }, "12391": { "op": "DUP12" }, "12392": { "op": "DUP3" }, "12393": { "op": "DUP13" }, "12394": { "op": "ADD" }, "12395": { "op": "PUSH2", "value": "0x2F20" }, "12398": { "jump": "i", "op": "JUMP" }, "12399": { "op": "JUMPDEST" }, "12400": { "op": "SWAP10" }, "12401": { "op": "SWAP13" }, "12402": { "op": "SWAP9" }, "12403": { "op": "SWAP12" }, "12404": { "op": "POP" }, "12405": { "op": "SWAP7" }, "12406": { "op": "SWAP10" }, "12407": { "op": "POP" }, "12408": { "op": "SWAP5" }, "12409": { "op": "SWAP8" }, "12410": { "op": "SWAP4" }, "12411": { "op": "SWAP7" }, "12412": { "op": "SWAP3" }, "12413": { "op": "SWAP6" }, "12414": { "op": "SWAP5" }, "12415": { "op": "POP" }, "12416": { "op": "POP" }, "12417": { "op": "POP" }, "12418": { "jump": "o", "op": "JUMP" }, "12419": { "op": "JUMPDEST" }, "12420": { "op": "PUSH1", "value": "0x0" }, "12422": { "op": "DUP1" }, "12423": { "op": "PUSH1", "value": "0x0" }, "12425": { "op": "DUP1" }, "12426": { "op": "PUSH1", "value": "0x0" }, "12428": { "op": "DUP1" }, "12429": { "op": "PUSH1", "value": "0xA0" }, "12431": { "op": "DUP8" }, "12432": { "op": "DUP10" }, "12433": { "op": "SUB" }, "12434": { "op": "SLT" }, "12435": { "op": "ISZERO" }, "12436": { "op": "PUSH2", "value": "0x309B" }, "12439": { "op": "JUMPI" }, "12440": { "op": "DUP2" }, "12441": { "op": "DUP3" }, "12442": { "op": "REVERT" }, "12443": { "op": "JUMPDEST" }, "12444": { "op": "DUP7" }, "12445": { "op": "CALLDATALOAD" }, "12446": { "op": "PUSH2", "value": "0x30A6" }, "12449": { "op": "DUP2" }, "12450": { "op": "PUSH2", "value": "0x3841" }, "12453": { "jump": "i", "op": "JUMP" }, "12454": { "op": "JUMPDEST" }, "12455": { "op": "SWAP6" }, "12456": { "op": "POP" }, "12457": { "op": "PUSH1", "value": "0x20" }, "12459": { "op": "DUP8" }, "12460": { "op": "ADD" }, "12461": { "op": "CALLDATALOAD" }, "12462": { "op": "PUSH2", "value": "0x30B6" }, "12465": { "op": "DUP2" }, "12466": { "op": "PUSH2", "value": "0x3841" }, "12469": { "jump": "i", "op": "JUMP" }, "12470": { "op": "JUMPDEST" }, "12471": { "op": "SWAP5" }, "12472": { "op": "POP" }, "12473": { "op": "PUSH1", "value": "0x40" }, "12475": { "op": "DUP8" }, "12476": { "op": "ADD" }, "12477": { "op": "CALLDATALOAD" }, "12478": { "op": "SWAP4" }, "12479": { "op": "POP" }, "12480": { "op": "PUSH1", "value": "0x60" }, "12482": { "op": "DUP8" }, "12483": { "op": "ADD" }, "12484": { "op": "CALLDATALOAD" }, "12485": { "op": "SWAP3" }, "12486": { "op": "POP" }, "12487": { "op": "PUSH1", "value": "0x80" }, "12489": { "op": "DUP8" }, "12490": { "op": "ADD" }, "12491": { "op": "CALLDATALOAD" }, "12492": { "op": "PUSH1", "value": "0x1" }, "12494": { "op": "PUSH1", "value": "0x1" }, "12496": { "op": "PUSH1", "value": "0x40" }, "12498": { "op": "SHL" }, "12499": { "op": "SUB" }, "12500": { "op": "DUP2" }, "12501": { "op": "GT" }, "12502": { "op": "ISZERO" }, "12503": { "op": "PUSH2", "value": "0x30DE" }, "12506": { "op": "JUMPI" }, "12507": { "op": "DUP3" }, "12508": { "op": "DUP4" }, "12509": { "op": "REVERT" }, "12510": { "op": "JUMPDEST" }, "12511": { "op": "PUSH2", "value": "0x30EA" }, "12514": { "op": "DUP10" }, "12515": { "op": "DUP3" }, "12516": { "op": "DUP11" }, "12517": { "op": "ADD" }, "12518": { "op": "PUSH2", "value": "0x2F20" }, "12521": { "jump": "i", "op": "JUMP" }, "12522": { "op": "JUMPDEST" }, "12523": { "op": "SWAP8" }, "12524": { "op": "SWAP11" }, "12525": { "op": "SWAP7" }, "12526": { "op": "SWAP10" }, "12527": { "op": "POP" }, "12528": { "op": "SWAP5" }, "12529": { "op": "SWAP8" }, "12530": { "op": "POP" }, "12531": { "op": "SWAP3" }, "12532": { "op": "SWAP6" }, "12533": { "op": "SWAP4" }, "12534": { "op": "SWAP5" }, "12535": { "op": "SWAP3" }, "12536": { "op": "POP" }, "12537": { "op": "POP" }, "12538": { "op": "POP" }, "12539": { "jump": "o", "op": "JUMP" }, "12540": { "op": "JUMPDEST" }, "12541": { "op": "PUSH1", "value": "0x0" }, "12543": { "op": "DUP1" }, "12544": { "op": "PUSH1", "value": "0x40" }, "12546": { "op": "DUP4" }, "12547": { "op": "DUP6" }, "12548": { "op": "SUB" }, "12549": { "op": "SLT" }, "12550": { "op": "ISZERO" }, "12551": { "op": "PUSH2", "value": "0x310E" }, "12554": { "op": "JUMPI" }, "12555": { "op": "DUP2" }, "12556": { "op": "DUP3" }, "12557": { "op": "REVERT" }, "12558": { "op": "JUMPDEST" }, "12559": { "op": "DUP3" }, "12560": { "op": "CALLDATALOAD" }, "12561": { "op": "PUSH2", "value": "0x3119" }, "12564": { "op": "DUP2" }, "12565": { "op": "PUSH2", "value": "0x3841" }, "12568": { "jump": "i", "op": "JUMP" }, "12569": { "op": "JUMPDEST" }, "12570": { "op": "SWAP2" }, "12571": { "op": "POP" }, "12572": { "op": "PUSH1", "value": "0x20" }, "12574": { "op": "DUP4" }, "12575": { "op": "ADD" }, "12576": { "op": "CALLDATALOAD" }, "12577": { "op": "DUP1" }, "12578": { "op": "ISZERO" }, "12579": { "op": "ISZERO" }, "12580": { "op": "DUP2" }, "12581": { "op": "EQ" }, "12582": { "op": "PUSH2", "value": "0x2FBE" }, "12585": { "op": "JUMPI" }, "12586": { "op": "DUP2" }, "12587": { "op": "DUP3" }, "12588": { "op": "REVERT" }, "12589": { "op": "JUMPDEST" }, "12590": { "op": "PUSH1", "value": "0x0" }, "12592": { "op": "DUP1" }, "12593": { "op": "PUSH1", "value": "0x40" }, "12595": { "op": "DUP4" }, "12596": { "op": "DUP6" }, "12597": { "op": "SUB" }, "12598": { "op": "SLT" }, "12599": { "op": "ISZERO" }, "12600": { "op": "PUSH2", "value": "0x313F" }, "12603": { "op": "JUMPI" }, "12604": { "op": "DUP2" }, "12605": { "op": "DUP3" }, "12606": { "op": "REVERT" }, "12607": { "op": "JUMPDEST" }, "12608": { "op": "DUP3" }, "12609": { "op": "CALLDATALOAD" }, "12610": { "op": "PUSH2", "value": "0x314A" }, "12613": { "op": "DUP2" }, "12614": { "op": "PUSH2", "value": "0x3841" }, "12617": { "jump": "i", "op": "JUMP" }, "12618": { "op": "JUMPDEST" }, "12619": { "op": "SWAP5" }, "12620": { "op": "PUSH1", "value": "0x20" }, "12622": { "op": "SWAP4" }, "12623": { "op": "SWAP1" }, "12624": { "op": "SWAP4" }, "12625": { "op": "ADD" }, "12626": { "op": "CALLDATALOAD" }, "12627": { "op": "SWAP4" }, "12628": { "op": "POP" }, "12629": { "op": "POP" }, "12630": { "op": "POP" }, "12631": { "jump": "o", "op": "JUMP" }, "12632": { "op": "JUMPDEST" }, "12633": { "op": "PUSH1", "value": "0x0" }, "12635": { "op": "DUP1" }, "12636": { "op": "PUSH1", "value": "0x0" }, "12638": { "op": "DUP1" }, "12639": { "op": "PUSH1", "value": "0x40" }, "12641": { "op": "DUP6" }, "12642": { "op": "DUP8" }, "12643": { "op": "SUB" }, "12644": { "op": "SLT" }, "12645": { "op": "ISZERO" }, "12646": { "op": "PUSH2", "value": "0x316D" }, "12649": { "op": "JUMPI" }, "12650": { "op": "DUP2" }, "12651": { "op": "DUP3" }, "12652": { "op": "REVERT" }, "12653": { "op": "JUMPDEST" }, "12654": { "op": "DUP5" }, "12655": { "op": "CALLDATALOAD" }, "12656": { "op": "PUSH1", "value": "0x1" }, "12658": { "op": "PUSH1", "value": "0x1" }, "12660": { "op": "PUSH1", "value": "0x40" }, "12662": { "op": "SHL" }, "12663": { "op": "SUB" }, "12664": { "op": "DUP1" }, "12665": { "op": "DUP3" }, "12666": { "op": "GT" }, "12667": { "op": "ISZERO" }, "12668": { "op": "PUSH2", "value": "0x3183" }, "12671": { "op": "JUMPI" }, "12672": { "op": "DUP4" }, "12673": { "op": "DUP5" }, "12674": { "op": "REVERT" }, "12675": { "op": "JUMPDEST" }, "12676": { "op": "PUSH2", "value": "0x318F" }, "12679": { "op": "DUP9" }, "12680": { "op": "DUP4" }, "12681": { "op": "DUP10" }, "12682": { "op": "ADD" }, "12683": { "op": "PUSH2", "value": "0x2EC7" }, "12686": { "jump": "i", "op": "JUMP" }, "12687": { "op": "JUMPDEST" }, "12688": { "op": "SWAP1" }, "12689": { "op": "SWAP7" }, "12690": { "op": "POP" }, "12691": { "op": "SWAP5" }, "12692": { "op": "POP" }, "12693": { "op": "PUSH1", "value": "0x20" }, "12695": { "op": "DUP8" }, "12696": { "op": "ADD" }, "12697": { "op": "CALLDATALOAD" }, "12698": { "op": "SWAP2" }, "12699": { "op": "POP" }, "12700": { "op": "DUP1" }, "12701": { "op": "DUP3" }, "12702": { "op": "GT" }, "12703": { "op": "ISZERO" }, "12704": { "op": "PUSH2", "value": "0x31A7" }, "12707": { "op": "JUMPI" }, "12708": { "op": "DUP4" }, "12709": { "op": "DUP5" }, "12710": { "op": "REVERT" }, "12711": { "op": "JUMPDEST" }, "12712": { "op": "POP" }, "12713": { "op": "PUSH2", "value": "0x31B4" }, "12716": { "op": "DUP8" }, "12717": { "op": "DUP3" }, "12718": { "op": "DUP9" }, "12719": { "op": "ADD" }, "12720": { "op": "PUSH2", "value": "0x2EC7" }, "12723": { "jump": "i", "op": "JUMP" }, "12724": { "op": "JUMPDEST" }, "12725": { "op": "SWAP6" }, "12726": { "op": "SWAP9" }, "12727": { "op": "SWAP5" }, "12728": { "op": "SWAP8" }, "12729": { "op": "POP" }, "12730": { "op": "SWAP6" }, "12731": { "op": "POP" }, "12732": { "op": "POP" }, "12733": { "op": "POP" }, "12734": { "op": "POP" }, "12735": { "jump": "o", "op": "JUMP" }, "12736": { "op": "JUMPDEST" }, "12737": { "op": "PUSH1", "value": "0x0" }, "12739": { "op": "PUSH1", "value": "0x20" }, "12741": { "op": "DUP3" }, "12742": { "op": "DUP5" }, "12743": { "op": "SUB" }, "12744": { "op": "SLT" }, "12745": { "op": "ISZERO" }, "12746": { "op": "PUSH2", "value": "0x31D1" }, "12749": { "op": "JUMPI" }, "12750": { "op": "DUP1" }, "12751": { "op": "DUP2" }, "12752": { "op": "REVERT" }, "12753": { "op": "JUMPDEST" }, "12754": { "op": "POP" }, "12755": { "op": "CALLDATALOAD" }, "12756": { "op": "SWAP2" }, "12757": { "op": "SWAP1" }, "12758": { "op": "POP" }, "12759": { "jump": "o", "op": "JUMP" }, "12760": { "op": "JUMPDEST" }, "12761": { "op": "PUSH1", "value": "0x0" }, "12763": { "op": "PUSH1", "value": "0x20" }, "12765": { "op": "DUP3" }, "12766": { "op": "DUP5" }, "12767": { "op": "SUB" }, "12768": { "op": "SLT" }, "12769": { "op": "ISZERO" }, "12770": { "op": "PUSH2", "value": "0x31E9" }, "12773": { "op": "JUMPI" }, "12774": { "op": "DUP1" }, "12775": { "op": "DUP2" }, "12776": { "op": "REVERT" }, "12777": { "op": "JUMPDEST" }, "12778": { "op": "DUP2" }, "12779": { "op": "CALLDATALOAD" }, "12780": { "op": "PUSH2", "value": "0x653" }, "12783": { "op": "DUP2" }, "12784": { "op": "PUSH2", "value": "0x3859" }, "12787": { "jump": "i", "op": "JUMP" }, "12788": { "op": "JUMPDEST" }, "12789": { "op": "PUSH1", "value": "0x0" }, "12791": { "op": "PUSH1", "value": "0x20" }, "12793": { "op": "DUP3" }, "12794": { "op": "DUP5" }, "12795": { "op": "SUB" }, "12796": { "op": "SLT" }, "12797": { "op": "ISZERO" }, "12798": { "op": "PUSH2", "value": "0x3205" }, "12801": { "op": "JUMPI" }, "12802": { "op": "DUP1" }, "12803": { "op": "DUP2" }, "12804": { "op": "REVERT" }, "12805": { "op": "JUMPDEST" }, "12806": { "op": "DUP2" }, "12807": { "op": "MLOAD" }, "12808": { "op": "PUSH2", "value": "0x653" }, "12811": { "op": "DUP2" }, "12812": { "op": "PUSH2", "value": "0x3859" }, "12815": { "jump": "i", "op": "JUMP" }, "12816": { "op": "JUMPDEST" }, "12817": { "op": "PUSH1", "value": "0x0" }, "12819": { "op": "PUSH1", "value": "0x20" }, "12821": { "op": "DUP3" }, "12822": { "op": "DUP5" }, "12823": { "op": "SUB" }, "12824": { "op": "SLT" }, "12825": { "op": "ISZERO" }, "12826": { "op": "PUSH2", "value": "0x3221" }, "12829": { "op": "JUMPI" }, "12830": { "op": "DUP1" }, "12831": { "op": "DUP2" }, "12832": { "op": "REVERT" }, "12833": { "op": "JUMPDEST" }, "12834": { "op": "DUP2" }, "12835": { "op": "MLOAD" }, "12836": { "op": "PUSH1", "value": "0x1" }, "12838": { "op": "PUSH1", "value": "0x1" }, "12840": { "op": "PUSH1", "value": "0x40" }, "12842": { "op": "SHL" }, "12843": { "op": "SUB" }, "12844": { "op": "DUP1" }, "12845": { "op": "DUP3" }, "12846": { "op": "GT" }, "12847": { "op": "ISZERO" }, "12848": { "op": "PUSH2", "value": "0x3237" }, "12851": { "op": "JUMPI" }, "12852": { "op": "DUP3" }, "12853": { "op": "DUP4" }, "12854": { "op": "REVERT" }, "12855": { "op": "JUMPDEST" }, "12856": { "op": "DUP2" }, "12857": { "op": "DUP5" }, "12858": { "op": "ADD" }, "12859": { "op": "SWAP2" }, "12860": { "op": "POP" }, "12861": { "op": "DUP5" }, "12862": { "op": "PUSH1", "value": "0x1F" }, "12864": { "op": "DUP4" }, "12865": { "op": "ADD" }, "12866": { "op": "SLT" }, "12867": { "op": "PUSH2", "value": "0x324A" }, "12870": { "op": "JUMPI" }, "12871": { "op": "DUP3" }, "12872": { "op": "DUP4" }, "12873": { "op": "REVERT" }, "12874": { "op": "JUMPDEST" }, "12875": { "op": "DUP2" }, "12876": { "op": "MLOAD" }, "12877": { "op": "DUP2" }, "12878": { "op": "DUP2" }, "12879": { "op": "GT" }, "12880": { "op": "ISZERO" }, "12881": { "op": "PUSH2", "value": "0x3256" }, "12884": { "op": "JUMPI" }, "12885": { "op": "INVALID" }, "12886": { "op": "JUMPDEST" }, "12887": { "op": "PUSH1", "value": "0x40" }, "12889": { "op": "MLOAD" }, "12890": { "op": "PUSH1", "value": "0x1F" }, "12892": { "op": "DUP3" }, "12893": { "op": "ADD" }, "12894": { "op": "PUSH1", "value": "0x1F" }, "12896": { "op": "NOT" }, "12897": { "op": "AND" }, "12898": { "op": "DUP2" }, "12899": { "op": "ADD" }, "12900": { "op": "PUSH1", "value": "0x20" }, "12902": { "op": "ADD" }, "12903": { "op": "DUP4" }, "12904": { "op": "DUP2" }, "12905": { "op": "GT" }, "12906": { "op": "DUP3" }, "12907": { "op": "DUP3" }, "12908": { "op": "LT" }, "12909": { "op": "OR" }, "12910": { "op": "ISZERO" }, "12911": { "op": "PUSH2", "value": "0x3274" }, "12914": { "op": "JUMPI" }, "12915": { "op": "INVALID" }, "12916": { "op": "JUMPDEST" }, "12917": { "op": "PUSH1", "value": "0x40" }, "12919": { "op": "MSTORE" }, "12920": { "op": "DUP2" }, "12921": { "op": "DUP2" }, "12922": { "op": "MSTORE" }, "12923": { "op": "DUP4" }, "12924": { "op": "DUP3" }, "12925": { "op": "ADD" }, "12926": { "op": "PUSH1", "value": "0x20" }, "12928": { "op": "ADD" }, "12929": { "op": "DUP8" }, "12930": { "op": "LT" }, "12931": { "op": "ISZERO" }, "12932": { "op": "PUSH2", "value": "0x328B" }, "12935": { "op": "JUMPI" }, "12936": { "op": "DUP5" }, "12937": { "op": "DUP6" }, "12938": { "op": "REVERT" }, "12939": { "op": "JUMPDEST" }, "12940": { "op": "PUSH2", "value": "0x329C" }, "12943": { "op": "DUP3" }, "12944": { "op": "PUSH1", "value": "0x20" }, "12946": { "op": "DUP4" }, "12947": { "op": "ADD" }, "12948": { "op": "PUSH1", "value": "0x20" }, "12950": { "op": "DUP8" }, "12951": { "op": "ADD" }, "12952": { "op": "PUSH2", "value": "0x3815" }, "12955": { "jump": "i", "op": "JUMP" }, "12956": { "op": "JUMPDEST" }, "12957": { "op": "SWAP7" }, "12958": { "op": "SWAP6" }, "12959": { "op": "POP" }, "12960": { "op": "POP" }, "12961": { "op": "POP" }, "12962": { "op": "POP" }, "12963": { "op": "POP" }, "12964": { "op": "POP" }, "12965": { "jump": "o", "op": "JUMP" }, "12966": { "op": "JUMPDEST" }, "12967": { "op": "PUSH1", "value": "0x0" }, "12969": { "op": "PUSH1", "value": "0xA0" }, "12971": { "op": "DUP3" }, "12972": { "op": "DUP5" }, "12973": { "op": "SUB" }, "12974": { "op": "SLT" }, "12975": { "op": "ISZERO" }, "12976": { "op": "PUSH2", "value": "0x32B7" }, "12979": { "op": "JUMPI" }, "12980": { "op": "DUP1" }, "12981": { "op": "DUP2" }, "12982": { "op": "REVERT" }, "12983": { "op": "JUMPDEST" }, "12984": { "op": "PUSH1", "value": "0x40" }, "12986": { "op": "MLOAD" }, "12987": { "op": "PUSH1", "value": "0xA0" }, "12989": { "op": "DUP2" }, "12990": { "op": "ADD" }, "12991": { "op": "DUP2" }, "12992": { "op": "DUP2" }, "12993": { "op": "LT" }, "12994": { "op": "PUSH1", "value": "0x1" }, "12996": { "op": "PUSH1", "value": "0x1" }, "12998": { "op": "PUSH1", "value": "0x40" }, "13000": { "op": "SHL" }, "13001": { "op": "SUB" }, "13002": { "op": "DUP3" }, "13003": { "op": "GT" }, "13004": { "op": "OR" }, "13005": { "op": "ISZERO" }, "13006": { "op": "PUSH2", "value": "0x32D3" }, "13009": { "op": "JUMPI" }, "13010": { "op": "INVALID" }, "13011": { "op": "JUMPDEST" }, "13012": { "op": "PUSH1", "value": "0x40" }, "13014": { "op": "MSTORE" }, "13015": { "op": "DUP3" }, "13016": { "op": "MLOAD" }, "13017": { "op": "PUSH2", "value": "0x32E1" }, "13020": { "op": "DUP2" }, "13021": { "op": "PUSH2", "value": "0x387F" }, "13024": { "jump": "i", "op": "JUMP" }, "13025": { "op": "JUMPDEST" }, "13026": { "op": "DUP2" }, "13027": { "op": "MSTORE" }, "13028": { "op": "PUSH1", "value": "0x20" }, "13030": { "op": "DUP4" }, "13031": { "op": "ADD" }, "13032": { "op": "MLOAD" }, "13033": { "op": "PUSH1", "value": "0x1" }, "13035": { "op": "PUSH1", "value": "0x1" }, "13037": { "op": "PUSH1", "value": "0xF8" }, "13039": { "op": "SHL" }, "13040": { "op": "SUB" }, "13041": { "op": "NOT" }, "13042": { "op": "DUP2" }, "13043": { "op": "AND" }, "13044": { "op": "DUP2" }, "13045": { "op": "EQ" }, "13046": { "op": "PUSH2", "value": "0x32FD" }, "13049": { "op": "JUMPI" }, "13050": { "op": "DUP3" }, "13051": { "op": "DUP4" }, "13052": { "op": "REVERT" }, "13053": { "op": "JUMPDEST" }, "13054": { "op": "PUSH1", "value": "0x20" }, "13056": { "op": "DUP3" }, "13057": { "op": "ADD" }, "13058": { "op": "MSTORE" }, "13059": { "op": "PUSH2", "value": "0x330E" }, "13062": { "op": "PUSH1", "value": "0x40" }, "13064": { "op": "DUP5" }, "13065": { "op": "ADD" }, "13066": { "op": "PUSH2", "value": "0x2F6A" }, "13069": { "jump": "i", "op": "JUMP" }, "13070": { "op": "JUMPDEST" }, "13071": { "op": "PUSH1", "value": "0x40" }, "13073": { "op": "DUP3" }, "13074": { "op": "ADD" }, "13075": { "op": "MSTORE" }, "13076": { "op": "PUSH2", "value": "0x331F" }, "13079": { "op": "PUSH1", "value": "0x60" }, "13081": { "op": "DUP5" }, "13082": { "op": "ADD" }, "13083": { "op": "PUSH2", "value": "0x2F5F" }, "13086": { "jump": "i", "op": "JUMP" }, "13087": { "op": "JUMPDEST" }, "13088": { "op": "PUSH1", "value": "0x60" }, "13090": { "op": "DUP3" }, "13091": { "op": "ADD" }, "13092": { "op": "MSTORE" }, "13093": { "op": "PUSH2", "value": "0x3330" }, "13096": { "op": "PUSH1", "value": "0x80" }, "13098": { "op": "DUP5" }, "13099": { "op": "ADD" }, "13100": { "op": "PUSH2", "value": "0x2F08" }, "13103": { "jump": "i", "op": "JUMP" }, "13104": { "op": "JUMPDEST" }, "13105": { "op": "PUSH1", "value": "0x80" }, "13107": { "op": "DUP3" }, "13108": { "op": "ADD" }, "13109": { "op": "MSTORE" }, "13110": { "op": "SWAP4" }, "13111": { "op": "SWAP3" }, "13112": { "op": "POP" }, "13113": { "op": "POP" }, "13114": { "op": "POP" }, "13115": { "jump": "o", "op": "JUMP" }, "13116": { "op": "JUMPDEST" }, "13117": { "op": "PUSH1", "value": "0x0" }, "13119": { "op": "DUP1" }, "13120": { "op": "PUSH1", "value": "0x0" }, "13122": { "op": "PUSH1", "value": "0x60" }, "13124": { "op": "DUP5" }, "13125": { "op": "DUP7" }, "13126": { "op": "SUB" }, "13127": { "op": "SLT" }, "13128": { "op": "ISZERO" }, "13129": { "op": "PUSH2", "value": "0x3350" }, "13132": { "op": "JUMPI" }, "13133": { "op": "DUP1" }, "13134": { "op": "DUP2" }, "13135": { "op": "REVERT" }, "13136": { "op": "JUMPDEST" }, "13137": { "op": "DUP4" }, "13138": { "op": "CALLDATALOAD" }, "13139": { "op": "PUSH2", "value": "0x335B" }, "13142": { "op": "DUP2" }, "13143": { "op": "PUSH2", "value": "0x386F" }, "13146": { "jump": "i", "op": "JUMP" }, "13147": { "op": "JUMPDEST" }, "13148": { "op": "SWAP3" }, "13149": { "op": "POP" }, "13150": { "op": "PUSH1", "value": "0x20" }, "13152": { "op": "DUP5" }, "13153": { "op": "ADD" }, "13154": { "op": "CALLDATALOAD" }, "13155": { "op": "PUSH2", "value": "0x336B" }, "13158": { "op": "DUP2" }, "13159": { "op": "PUSH2", "value": "0x387F" }, "13162": { "jump": "i", "op": "JUMP" }, "13163": { "op": "JUMPDEST" }, "13164": { "op": "SWAP2" }, "13165": { "op": "POP" }, "13166": { "op": "PUSH1", "value": "0x40" }, "13168": { "op": "DUP5" }, "13169": { "op": "ADD" }, "13170": { "op": "CALLDATALOAD" }, "13171": { "op": "PUSH2", "value": "0x337B" }, "13174": { "op": "DUP2" }, "13175": { "op": "PUSH2", "value": "0x3892" }, "13178": { "jump": "i", "op": "JUMP" }, "13179": { "op": "JUMPDEST" }, "13180": { "op": "DUP1" }, "13181": { "op": "SWAP2" }, "13182": { "op": "POP" }, "13183": { "op": "POP" }, "13184": { "op": "SWAP3" }, "13185": { "op": "POP" }, "13186": { "op": "SWAP3" }, "13187": { "op": "POP" }, "13188": { "op": "SWAP3" }, "13189": { "jump": "o", "op": "JUMP" }, "13190": { "op": "JUMPDEST" }, "13191": { "op": "DUP2" }, "13192": { "op": "DUP4" }, "13193": { "op": "MSTORE" }, "13194": { "op": "PUSH1", "value": "0x0" }, "13196": { "op": "PUSH1", "value": "0x1" }, "13198": { "op": "PUSH1", "value": "0x1" }, "13200": { "op": "PUSH1", "value": "0xFB" }, "13202": { "op": "SHL" }, "13203": { "op": "SUB" }, "13204": { "op": "DUP4" }, "13205": { "op": "GT" }, "13206": { "op": "ISZERO" }, "13207": { "op": "PUSH2", "value": "0x339E" }, "13210": { "op": "JUMPI" }, "13211": { "op": "DUP1" }, "13212": { "op": "DUP2" }, "13213": { "op": "REVERT" }, "13214": { "op": "JUMPDEST" }, "13215": { "op": "PUSH1", "value": "0x20" }, "13217": { "op": "DUP4" }, "13218": { "op": "MUL" }, "13219": { "op": "DUP1" }, "13220": { "op": "DUP4" }, "13221": { "op": "PUSH1", "value": "0x20" }, "13223": { "op": "DUP8" }, "13224": { "op": "ADD" }, "13225": { "op": "CALLDATACOPY" }, "13226": { "op": "SWAP4" }, "13227": { "op": "SWAP1" }, "13228": { "op": "SWAP4" }, "13229": { "op": "ADD" }, "13230": { "op": "PUSH1", "value": "0x20" }, "13232": { "op": "ADD" }, "13233": { "op": "SWAP3" }, "13234": { "op": "DUP4" }, "13235": { "op": "MSTORE" }, "13236": { "op": "POP" }, "13237": { "op": "SWAP1" }, "13238": { "op": "SWAP2" }, "13239": { "op": "SWAP1" }, "13240": { "op": "POP" }, "13241": { "jump": "o", "op": "JUMP" }, "13242": { "op": "JUMPDEST" }, "13243": { "op": "PUSH1", "value": "0x0" }, "13245": { "op": "DUP3" }, "13246": { "op": "DUP5" }, "13247": { "op": "MSTORE" }, "13248": { "op": "DUP3" }, "13249": { "op": "DUP3" }, "13250": { "op": "PUSH1", "value": "0x20" }, "13252": { "op": "DUP7" }, "13253": { "op": "ADD" }, "13254": { "op": "CALLDATACOPY" }, "13255": { "op": "DUP1" }, "13256": { "op": "PUSH1", "value": "0x20" }, "13258": { "op": "DUP5" }, "13259": { "op": "DUP7" }, "13260": { "op": "ADD" }, "13261": { "op": "ADD" }, "13262": { "op": "MSTORE" }, "13263": { "op": "PUSH1", "value": "0x20" }, "13265": { "op": "PUSH1", "value": "0x1F" }, "13267": { "op": "NOT" }, "13268": { "op": "PUSH1", "value": "0x1F" }, "13270": { "op": "DUP6" }, "13271": { "op": "ADD" }, "13272": { "op": "AND" }, "13273": { "op": "DUP6" }, "13274": { "op": "ADD" }, "13275": { "op": "ADD" }, "13276": { "op": "SWAP1" }, "13277": { "op": "POP" }, "13278": { "op": "SWAP4" }, "13279": { "op": "SWAP3" }, "13280": { "op": "POP" }, "13281": { "op": "POP" }, "13282": { "op": "POP" }, "13283": { "jump": "o", "op": "JUMP" }, "13284": { "op": "JUMPDEST" }, "13285": { "op": "PUSH1", "value": "0x0" }, "13287": { "op": "DUP3" }, "13288": { "op": "DUP5" }, "13289": { "op": "DUP4" }, "13290": { "op": "CALLDATACOPY" }, "13291": { "op": "SWAP2" }, "13292": { "op": "ADD" }, "13293": { "op": "SWAP1" }, "13294": { "op": "DUP2" }, "13295": { "op": "MSTORE" }, "13296": { "op": "SWAP2" }, "13297": { "op": "SWAP1" }, "13298": { "op": "POP" }, "13299": { "jump": "o", "op": "JUMP" }, "13300": { "op": "JUMPDEST" }, "13301": { "op": "PUSH1", "value": "0x1" }, "13303": { "op": "PUSH1", "value": "0x1" }, "13305": { "op": "PUSH1", "value": "0xA0" }, "13307": { "op": "SHL" }, "13308": { "op": "SUB" }, "13309": { "op": "SWAP2" }, "13310": { "op": "SWAP1" }, "13311": { "op": "SWAP2" }, "13312": { "op": "AND" }, "13313": { "op": "DUP2" }, "13314": { "op": "MSTORE" }, "13315": { "op": "PUSH1", "value": "0x20" }, "13317": { "op": "ADD" }, "13318": { "op": "SWAP1" }, "13319": { "jump": "o", "op": "JUMP" }, "13320": { "op": "JUMPDEST" }, "13321": { "op": "PUSH1", "value": "0x1" }, "13323": { "op": "PUSH1", "value": "0x1" }, "13325": { "op": "PUSH1", "value": "0xA0" }, "13327": { "op": "SHL" }, "13328": { "op": "SUB" }, "13329": { "op": "DUP10" }, "13330": { "op": "DUP2" }, "13331": { "op": "AND" }, "13332": { "op": "DUP3" }, "13333": { "op": "MSTORE" }, "13334": { "op": "DUP9" }, "13335": { "op": "AND" }, "13336": { "op": "PUSH1", "value": "0x20" }, "13338": { "op": "DUP3" }, "13339": { "op": "ADD" }, "13340": { "op": "MSTORE" }, "13341": { "op": "PUSH1", "value": "0xA0" }, "13343": { "op": "PUSH1", "value": "0x40" }, "13345": { "op": "DUP3" }, "13346": { "op": "ADD" }, "13347": { "op": "DUP2" }, "13348": { "op": "SWAP1" }, "13349": { "op": "MSTORE" }, "13350": { "op": "PUSH1", "value": "0x0" }, "13352": { "op": "SWAP1" }, "13353": { "op": "PUSH2", "value": "0x3435" }, "13356": { "op": "SWAP1" }, "13357": { "op": "DUP4" }, "13358": { "op": "ADD" }, "13359": { "op": "DUP9" }, "13360": { "op": "DUP11" }, "13361": { "op": "PUSH2", "value": "0x3386" }, "13364": { "jump": "i", "op": "JUMP" }, "13365": { "op": "JUMPDEST" }, "13366": { "op": "DUP3" }, "13367": { "op": "DUP2" }, "13368": { "op": "SUB" }, "13369": { "op": "PUSH1", "value": "0x60" }, "13371": { "op": "DUP5" }, "13372": { "op": "ADD" }, "13373": { "op": "MSTORE" }, "13374": { "op": "PUSH2", "value": "0x3448" }, "13377": { "op": "DUP2" }, "13378": { "op": "DUP8" }, "13379": { "op": "DUP10" }, "13380": { "op": "PUSH2", "value": "0x3386" }, "13383": { "jump": "i", "op": "JUMP" }, "13384": { "op": "JUMPDEST" }, "13385": { "op": "SWAP1" }, "13386": { "op": "POP" }, "13387": { "op": "DUP3" }, "13388": { "op": "DUP2" }, "13389": { "op": "SUB" }, "13390": { "op": "PUSH1", "value": "0x80" }, "13392": { "op": "DUP5" }, "13393": { "op": "ADD" }, "13394": { "op": "MSTORE" }, "13395": { "op": "PUSH2", "value": "0x345D" }, "13398": { "op": "DUP2" }, "13399": { "op": "DUP6" }, "13400": { "op": "DUP8" }, "13401": { "op": "PUSH2", "value": "0x33BA" }, "13404": { "jump": "i", "op": "JUMP" }, "13405": { "op": "JUMPDEST" }, "13406": { "op": "SWAP12" }, "13407": { "op": "SWAP11" }, "13408": { "op": "POP" }, "13409": { "op": "POP" }, "13410": { "op": "POP" }, "13411": { "op": "POP" }, "13412": { "op": "POP" }, "13413": { "op": "POP" }, "13414": { "op": "POP" }, "13415": { "op": "POP" }, "13416": { "op": "POP" }, "13417": { "op": "POP" }, "13418": { "op": "POP" }, "13419": { "jump": "o", "op": "JUMP" }, "13420": { "op": "JUMPDEST" }, "13421": { "op": "PUSH1", "value": "0x1" }, "13423": { "op": "PUSH1", "value": "0x1" }, "13425": { "op": "PUSH1", "value": "0xA0" }, "13427": { "op": "SHL" }, "13428": { "op": "SUB" }, "13429": { "op": "DUP8" }, "13430": { "op": "DUP2" }, "13431": { "op": "AND" }, "13432": { "op": "DUP3" }, "13433": { "op": "MSTORE" }, "13434": { "op": "DUP7" }, "13435": { "op": "AND" }, "13436": { "op": "PUSH1", "value": "0x20" }, "13438": { "op": "DUP3" }, "13439": { "op": "ADD" }, "13440": { "op": "MSTORE" }, "13441": { "op": "PUSH1", "value": "0x40" }, "13443": { "op": "DUP2" }, "13444": { "op": "ADD" }, "13445": { "op": "DUP6" }, "13446": { "op": "SWAP1" }, "13447": { "op": "MSTORE" }, "13448": { "op": "PUSH1", "value": "0x60" }, "13450": { "op": "DUP2" }, "13451": { "op": "ADD" }, "13452": { "op": "DUP5" }, "13453": { "op": "SWAP1" }, "13454": { "op": "MSTORE" }, "13455": { "op": "PUSH1", "value": "0xA0" }, "13457": { "op": "PUSH1", "value": "0x80" }, "13459": { "op": "DUP3" }, "13460": { "op": "ADD" }, "13461": { "op": "DUP2" }, "13462": { "op": "SWAP1" }, "13463": { "op": "MSTORE" }, "13464": { "op": "PUSH1", "value": "0x0" }, "13466": { "op": "SWAP1" }, "13467": { "op": "PUSH2", "value": "0x1965" }, "13470": { "op": "SWAP1" }, "13471": { "op": "DUP4" }, "13472": { "op": "ADD" }, "13473": { "op": "DUP5" }, "13474": { "op": "DUP7" }, "13475": { "op": "PUSH2", "value": "0x33BA" }, "13478": { "jump": "i", "op": "JUMP" }, "13479": { "op": "JUMPDEST" }, "13480": { "op": "PUSH1", "value": "0x1" }, "13482": { "op": "PUSH1", "value": "0x1" }, "13484": { "op": "PUSH1", "value": "0xA0" }, "13486": { "op": "SHL" }, "13487": { "op": "SUB" }, "13488": { "op": "SWAP3" }, "13489": { "op": "DUP4" }, "13490": { "op": "AND" }, "13491": { "op": "DUP2" }, "13492": { "op": "MSTORE" }, "13493": { "op": "SWAP2" }, "13494": { "op": "AND" }, "13495": { "op": "PUSH1", "value": "0x20" }, "13497": { "op": "DUP3" }, "13498": { "op": "ADD" }, "13499": { "op": "MSTORE" }, "13500": { "op": "PUSH1", "value": "0x40" }, "13502": { "op": "ADD" }, "13503": { "op": "SWAP1" }, "13504": { "jump": "o", "op": "JUMP" }, "13505": { "op": "JUMPDEST" }, "13506": { "op": "PUSH1", "value": "0x1" }, "13508": { "op": "PUSH1", "value": "0x1" }, "13510": { "op": "PUSH1", "value": "0xA0" }, "13512": { "op": "SHL" }, "13513": { "op": "SUB" }, "13514": { "op": "SWAP3" }, "13515": { "op": "SWAP1" }, "13516": { "op": "SWAP3" }, "13517": { "op": "AND" }, "13518": { "op": "DUP3" }, "13519": { "op": "MSTORE" }, "13520": { "op": "DUP1" }, "13521": { "op": "MLOAD" }, "13522": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "13528": { "op": "AND" }, "13529": { "op": "PUSH1", "value": "0x20" }, "13531": { "op": "DUP1" }, "13532": { "op": "DUP5" }, "13533": { "op": "ADD" }, "13534": { "op": "SWAP2" }, "13535": { "op": "SWAP1" }, "13536": { "op": "SWAP2" }, "13537": { "op": "MSTORE" }, "13538": { "op": "DUP2" }, "13539": { "op": "ADD" }, "13540": { "op": "MLOAD" }, "13541": { "op": "PUSH1", "value": "0x1" }, "13543": { "op": "PUSH1", "value": "0x1" }, "13545": { "op": "PUSH1", "value": "0xF8" }, "13547": { "op": "SHL" }, "13548": { "op": "SUB" }, "13549": { "op": "NOT" }, "13550": { "op": "AND" }, "13551": { "op": "PUSH1", "value": "0x40" }, "13553": { "op": "DUP1" }, "13554": { "op": "DUP5" }, "13555": { "op": "ADD" }, "13556": { "op": "SWAP2" }, "13557": { "op": "SWAP1" }, "13558": { "op": "SWAP2" }, "13559": { "op": "MSTORE" }, "13560": { "op": "DUP2" }, "13561": { "op": "ADD" }, "13562": { "op": "MLOAD" }, "13563": { "op": "PUSH1", "value": "0xFF" }, "13565": { "op": "AND" }, "13566": { "op": "PUSH1", "value": "0x60" }, "13568": { "op": "DUP1" }, "13569": { "op": "DUP5" }, "13570": { "op": "ADD" }, "13571": { "op": "SWAP2" }, "13572": { "op": "SWAP1" }, "13573": { "op": "SWAP2" }, "13574": { "op": "MSTORE" }, "13575": { "op": "DUP2" }, "13576": { "op": "ADD" }, "13577": { "op": "MLOAD" }, "13578": { "op": "PUSH2", "value": "0xFFFF" }, "13581": { "op": "AND" }, "13582": { "op": "PUSH1", "value": "0x80" }, "13584": { "op": "DUP1" }, "13585": { "op": "DUP5" }, "13586": { "op": "ADD" }, "13587": { "op": "SWAP2" }, "13588": { "op": "SWAP1" }, "13589": { "op": "SWAP2" }, "13590": { "op": "MSTORE" }, "13591": { "op": "ADD" }, "13592": { "op": "MLOAD" }, "13593": { "op": "PUSH1", "value": "0x1" }, "13595": { "op": "PUSH1", "value": "0x1" }, "13597": { "op": "PUSH1", "value": "0x70" }, "13599": { "op": "SHL" }, "13600": { "op": "SUB" }, "13601": { "op": "NOT" }, "13602": { "op": "AND" }, "13603": { "op": "PUSH1", "value": "0xA0" }, "13605": { "op": "DUP3" }, "13606": { "op": "ADD" }, "13607": { "op": "MSTORE" }, "13608": { "op": "PUSH1", "value": "0xC0" }, "13610": { "op": "ADD" }, "13611": { "op": "SWAP1" }, "13612": { "jump": "o", "op": "JUMP" }, "13613": { "op": "JUMPDEST" }, "13614": { "op": "PUSH1", "value": "0x20" }, "13616": { "op": "DUP1" }, "13617": { "op": "DUP3" }, "13618": { "op": "MSTORE" }, "13619": { "op": "DUP3" }, "13620": { "op": "MLOAD" }, "13621": { "op": "DUP3" }, "13622": { "op": "DUP3" }, "13623": { "op": "ADD" }, "13624": { "op": "DUP2" }, "13625": { "op": "SWAP1" }, "13626": { "op": "MSTORE" }, "13627": { "op": "PUSH1", "value": "0x0" }, "13629": { "op": "SWAP2" }, "13630": { "op": "SWAP1" }, "13631": { "op": "DUP5" }, "13632": { "op": "DUP3" }, "13633": { "op": "ADD" }, "13634": { "op": "SWAP1" }, "13635": { "op": "PUSH1", "value": "0x40" }, "13637": { "op": "DUP6" }, "13638": { "op": "ADD" }, "13639": { "op": "SWAP1" }, "13640": { "op": "DUP5" }, "13641": { "op": "JUMPDEST" }, "13642": { "op": "DUP2" }, "13643": { "op": "DUP2" }, "13644": { "op": "LT" }, "13645": { "op": "ISZERO" }, "13646": { "op": "PUSH2", "value": "0x3565" }, "13649": { "op": "JUMPI" }, "13650": { "op": "DUP4" }, "13651": { "op": "MLOAD" }, "13652": { "op": "DUP4" }, "13653": { "op": "MSTORE" }, "13654": { "op": "SWAP3" }, "13655": { "op": "DUP5" }, "13656": { "op": "ADD" }, "13657": { "op": "SWAP3" }, "13658": { "op": "SWAP2" }, "13659": { "op": "DUP5" }, "13660": { "op": "ADD" }, "13661": { "op": "SWAP2" }, "13662": { "op": "PUSH1", "value": "0x1" }, "13664": { "op": "ADD" }, "13665": { "op": "PUSH2", "value": "0x3549" }, "13668": { "op": "JUMP" }, "13669": { "op": "JUMPDEST" }, "13670": { "op": "POP" }, "13671": { "op": "SWAP1" }, "13672": { "op": "SWAP7" }, "13673": { "op": "SWAP6" }, "13674": { "op": "POP" }, "13675": { "op": "POP" }, "13676": { "op": "POP" }, "13677": { "op": "POP" }, "13678": { "op": "POP" }, "13679": { "op": "POP" }, "13680": { "jump": "o", "op": "JUMP" }, "13681": { "op": "JUMPDEST" }, "13682": { "op": "PUSH1", "value": "0x20" }, "13684": { "op": "DUP1" }, "13685": { "op": "DUP3" }, "13686": { "op": "MSTORE" }, "13687": { "op": "DUP3" }, "13688": { "op": "MLOAD" }, "13689": { "op": "DUP3" }, "13690": { "op": "DUP3" }, "13691": { "op": "ADD" }, "13692": { "op": "DUP2" }, "13693": { "op": "SWAP1" }, "13694": { "op": "MSTORE" }, "13695": { "op": "PUSH1", "value": "0x0" }, "13697": { "op": "SWAP2" }, "13698": { "op": "SWAP1" }, "13699": { "op": "PUSH1", "value": "0x40" }, "13701": { "op": "SWAP1" }, "13702": { "op": "DUP2" }, "13703": { "op": "DUP6" }, "13704": { "op": "ADD" }, "13705": { "op": "SWAP1" }, "13706": { "op": "DUP7" }, "13707": { "op": "DUP5" }, "13708": { "op": "ADD" }, "13709": { "op": "DUP6" }, "13710": { "op": "JUMPDEST" }, "13711": { "op": "DUP3" }, "13712": { "op": "DUP2" }, "13713": { "op": "LT" }, "13714": { "op": "ISZERO" }, "13715": { "op": "PUSH2", "value": "0x35E6" }, "13718": { "op": "JUMPI" }, "13719": { "op": "DUP2" }, "13720": { "op": "MLOAD" }, "13721": { "op": "DUP1" }, "13722": { "op": "MLOAD" }, "13723": { "op": "DUP6" }, "13724": { "op": "MSTORE" }, "13725": { "op": "DUP7" }, "13726": { "op": "DUP2" }, "13727": { "op": "ADD" }, "13728": { "op": "MLOAD" }, "13729": { "op": "DUP8" }, "13730": { "op": "DUP7" }, "13731": { "op": "ADD" }, "13732": { "op": "MSTORE" }, "13733": { "op": "DUP6" }, "13734": { "op": "DUP2" }, "13735": { "op": "ADD" }, "13736": { "op": "MLOAD" }, "13737": { "op": "DUP7" }, "13738": { "op": "DUP7" }, "13739": { "op": "ADD" }, "13740": { "op": "MSTORE" }, "13741": { "op": "PUSH1", "value": "0x60" }, "13743": { "op": "DUP1" }, "13744": { "op": "DUP3" }, "13745": { "op": "ADD" }, "13746": { "op": "MLOAD" }, "13747": { "op": "SWAP1" }, "13748": { "op": "DUP7" }, "13749": { "op": "ADD" }, "13750": { "op": "MSTORE" }, "13751": { "op": "PUSH1", "value": "0x80" }, "13753": { "op": "DUP1" }, "13754": { "op": "DUP3" }, "13755": { "op": "ADD" }, "13756": { "op": "MLOAD" }, "13757": { "op": "SWAP1" }, "13758": { "op": "DUP7" }, "13759": { "op": "ADD" }, "13760": { "op": "MSTORE" }, "13761": { "op": "PUSH1", "value": "0xA0" }, "13763": { "op": "SWAP1" }, "13764": { "op": "DUP2" }, "13765": { "op": "ADD" }, "13766": { "op": "MLOAD" }, "13767": { "op": "SWAP1" }, "13768": { "op": "PUSH1", "value": "0x4" }, "13770": { "op": "DUP3" }, "13771": { "op": "LT" }, "13772": { "op": "PUSH2", "value": "0x35D1" }, "13775": { "op": "JUMPI" }, "13776": { "op": "INVALID" }, "13777": { "op": "JUMPDEST" }, "13778": { "op": "DUP6" }, "13779": { "op": "ADD" }, "13780": { "op": "MSTORE" }, "13781": { "op": "PUSH1", "value": "0xC0" }, "13783": { "op": "SWAP1" }, "13784": { "op": "SWAP4" }, "13785": { "op": "ADD" }, "13786": { "op": "SWAP3" }, "13787": { "op": "SWAP1" }, "13788": { "op": "DUP6" }, "13789": { "op": "ADD" }, "13790": { "op": "SWAP1" }, "13791": { "op": "PUSH1", "value": "0x1" }, "13793": { "op": "ADD" }, "13794": { "op": "PUSH2", "value": "0x358E" }, "13797": { "op": "JUMP" }, "13798": { "op": "JUMPDEST" }, "13799": { "op": "POP" }, "13800": { "op": "SWAP2" }, "13801": { "op": "SWAP8" }, "13802": { "op": "SWAP7" }, "13803": { "op": "POP" }, "13804": { "op": "POP" }, "13805": { "op": "POP" }, "13806": { "op": "POP" }, "13807": { "op": "POP" }, "13808": { "op": "POP" }, "13809": { "op": "POP" }, "13810": { "jump": "o", "op": "JUMP" }, "13811": { "op": "JUMPDEST" }, "13812": { "op": "PUSH1", "value": "0x0" }, "13814": { "op": "PUSH1", "value": "0x40" }, "13816": { "op": "DUP3" }, "13817": { "op": "MSTORE" }, "13818": { "op": "PUSH2", "value": "0x3607" }, "13821": { "op": "PUSH1", "value": "0x40" }, "13823": { "op": "DUP4" }, "13824": { "op": "ADD" }, "13825": { "op": "DUP7" }, "13826": { "op": "DUP9" }, "13827": { "op": "PUSH2", "value": "0x3386" }, "13830": { "jump": "i", "op": "JUMP" }, "13831": { "op": "JUMPDEST" }, "13832": { "op": "DUP3" }, "13833": { "op": "DUP2" }, "13834": { "op": "SUB" }, "13835": { "op": "PUSH1", "value": "0x20" }, "13837": { "op": "DUP5" }, "13838": { "op": "ADD" }, "13839": { "op": "MSTORE" }, "13840": { "op": "PUSH2", "value": "0x361A" }, "13843": { "op": "DUP2" }, "13844": { "op": "DUP6" }, "13845": { "op": "DUP8" }, "13846": { "op": "PUSH2", "value": "0x3386" }, "13849": { "jump": "i", "op": "JUMP" }, "13850": { "op": "JUMPDEST" }, "13851": { "op": "SWAP8" }, "13852": { "op": "SWAP7" }, "13853": { "op": "POP" }, "13854": { "op": "POP" }, "13855": { "op": "POP" }, "13856": { "op": "POP" }, "13857": { "op": "POP" }, "13858": { "op": "POP" }, "13859": { "op": "POP" }, "13860": { "jump": "o", "op": "JUMP" }, "13861": { "op": "JUMPDEST" }, "13862": { "op": "SWAP1" }, "13863": { "op": "ISZERO" }, "13864": { "op": "ISZERO" }, "13865": { "op": "DUP2" }, "13866": { "op": "MSTORE" }, "13867": { "op": "PUSH1", "value": "0x20" }, "13869": { "op": "ADD" }, "13870": { "op": "SWAP1" }, "13871": { "jump": "o", "op": "JUMP" }, "13872": { "op": "JUMPDEST" }, "13873": { "op": "SWAP1" }, "13874": { "op": "DUP2" }, "13875": { "op": "MSTORE" }, "13876": { "op": "PUSH1", "value": "0x20" }, "13878": { "op": "ADD" }, "13879": { "op": "SWAP1" }, "13880": { "jump": "o", "op": "JUMP" }, "13881": { "op": "JUMPDEST" }, "13882": { "op": "PUSH1", "value": "0x0" }, "13884": { "op": "PUSH1", "value": "0x20" }, "13886": { "op": "DUP3" }, "13887": { "op": "MSTORE" }, "13888": { "op": "DUP3" }, "13889": { "op": "MLOAD" }, "13890": { "op": "DUP1" }, "13891": { "op": "PUSH1", "value": "0x20" }, "13893": { "op": "DUP5" }, "13894": { "op": "ADD" }, "13895": { "op": "MSTORE" }, "13896": { "op": "PUSH2", "value": "0x3658" }, "13899": { "op": "DUP2" }, "13900": { "op": "PUSH1", "value": "0x40" }, "13902": { "op": "DUP6" }, "13903": { "op": "ADD" }, "13904": { "op": "PUSH1", "value": "0x20" }, "13906": { "op": "DUP8" }, "13907": { "op": "ADD" }, "13908": { "op": "PUSH2", "value": "0x3815" }, "13911": { "jump": "i", "op": "JUMP" }, "13912": { "op": "JUMPDEST" }, "13913": { "op": "PUSH1", "value": "0x1F" }, "13915": { "op": "ADD" }, "13916": { "op": "PUSH1", "value": "0x1F" }, "13918": { "op": "NOT" }, "13919": { "op": "AND" }, "13920": { "op": "SWAP2" }, "13921": { "op": "SWAP1" }, "13922": { "op": "SWAP2" }, "13923": { "op": "ADD" }, "13924": { "op": "PUSH1", "value": "0x40" }, "13926": { "op": "ADD" }, "13927": { "op": "SWAP3" }, "13928": { "op": "SWAP2" }, "13929": { "op": "POP" }, "13930": { "op": "POP" }, "13931": { "jump": "o", "op": "JUMP" }, "13932": { "op": "JUMPDEST" }, "13933": { "op": "PUSH1", "value": "0x20" }, "13935": { "op": "DUP1" }, "13936": { "op": "DUP3" }, "13937": { "op": "MSTORE" }, "13938": { "op": "PUSH1", "value": "0xF" }, "13940": { "op": "SWAP1" }, "13941": { "op": "DUP3" }, "13942": { "op": "ADD" }, "13943": { "op": "MSTORE" }, "13944": { "op": "PUSH15", "value": "0x496E76616C69642061646472657373" }, "13960": { "op": "PUSH1", "value": "0x88" }, "13962": { "op": "SHL" }, "13963": { "op": "PUSH1", "value": "0x40" }, "13965": { "op": "DUP3" }, "13966": { "op": "ADD" }, "13967": { "op": "MSTORE" }, "13968": { "op": "PUSH1", "value": "0x60" }, "13970": { "op": "ADD" }, "13971": { "op": "SWAP1" }, "13972": { "jump": "o", "op": "JUMP" }, "13973": { "op": "JUMPDEST" }, "13974": { "op": "PUSH1", "value": "0x20" }, "13976": { "op": "DUP1" }, "13977": { "op": "DUP3" }, "13978": { "op": "MSTORE" }, "13979": { "op": "PUSH1", "value": "0x11" }, "13981": { "op": "SWAP1" }, "13982": { "op": "DUP3" }, "13983": { "op": "ADD" }, "13984": { "op": "MSTORE" }, "13985": { "op": "PUSH17", "value": "0x155B985D5D1A1BDC9A5E99590818D85B1B" }, "14003": { "op": "PUSH1", "value": "0x7A" }, "14005": { "op": "SHL" }, "14006": { "op": "PUSH1", "value": "0x40" }, "14008": { "op": "DUP3" }, "14009": { "op": "ADD" }, "14010": { "op": "MSTORE" }, "14011": { "op": "PUSH1", "value": "0x60" }, "14013": { "op": "ADD" }, "14014": { "op": "SWAP1" }, "14015": { "jump": "o", "op": "JUMP" }, "14016": { "op": "JUMPDEST" }, "14017": { "op": "PUSH1", "value": "0x20" }, "14019": { "op": "DUP1" }, "14020": { "op": "DUP3" }, "14021": { "op": "MSTORE" }, "14022": { "op": "PUSH1", "value": "0xC" }, "14024": { "op": "SWAP1" }, "14025": { "op": "DUP3" }, "14026": { "op": "ADD" }, "14027": { "op": "MSTORE" }, "14028": { "op": "PUSH12", "value": "0x155B985D5D1A1BDC9A5E9959" }, "14041": { "op": "PUSH1", "value": "0xA2" }, "14043": { "op": "SHL" }, "14044": { "op": "PUSH1", "value": "0x40" }, "14046": { "op": "DUP3" }, "14047": { "op": "ADD" }, "14048": { "op": "MSTORE" }, "14049": { "op": "PUSH1", "value": "0x60" }, "14051": { "op": "ADD" }, "14052": { "op": "SWAP1" }, "14053": { "jump": "o", "op": "JUMP" }, "14054": { "op": "JUMPDEST" }, "14055": { "op": "PUSH1", "value": "0x20" }, "14057": { "op": "DUP1" }, "14058": { "op": "DUP3" }, "14059": { "op": "MSTORE" }, "14060": { "op": "PUSH1", "value": "0xD" }, "14062": { "op": "SWAP1" }, "14063": { "op": "DUP3" }, "14064": { "op": "ADD" }, "14065": { "op": "MSTORE" }, "14066": { "op": "PUSH13", "value": "0x92DCECC2D8D2C840D2DCC8CAF" }, "14080": { "op": "PUSH1", "value": "0x9B" }, "14082": { "op": "SHL" }, "14083": { "op": "PUSH1", "value": "0x40" }, "14085": { "op": "DUP3" }, "14086": { "op": "ADD" }, "14087": { "op": "MSTORE" }, "14088": { "op": "PUSH1", "value": "0x60" }, "14090": { "op": "ADD" }, "14091": { "op": "SWAP1" }, "14092": { "jump": "o", "op": "JUMP" }, "14093": { "op": "JUMPDEST" }, "14094": { "op": "PUSH1", "value": "0x20" }, "14096": { "op": "DUP1" }, "14097": { "op": "DUP3" }, "14098": { "op": "MSTORE" }, "14099": { "op": "PUSH1", "value": "0x13" }, "14101": { "op": "SWAP1" }, "14102": { "op": "DUP3" }, "14103": { "op": "ADD" }, "14104": { "op": "MSTORE" }, "14105": { "op": "PUSH19", "value": "0x4163636F756E74206D75737420736574746C65" }, "14125": { "op": "PUSH1", "value": "0x68" }, "14127": { "op": "SHL" }, "14128": { "op": "PUSH1", "value": "0x40" }, "14130": { "op": "DUP3" }, "14131": { "op": "ADD" }, "14132": { "op": "MSTORE" }, "14133": { "op": "PUSH1", "value": "0x60" }, "14135": { "op": "ADD" }, "14136": { "op": "SWAP1" }, "14137": { "jump": "o", "op": "JUMP" }, "14138": { "op": "JUMPDEST" }, "14139": { "op": "PUSH1", "value": "0x20" }, "14141": { "op": "DUP1" }, "14142": { "op": "DUP3" }, "14143": { "op": "MSTORE" }, "14144": { "op": "PUSH1", "value": "0xF" }, "14146": { "op": "SWAP1" }, "14147": { "op": "DUP3" }, "14148": { "op": "ADD" }, "14149": { "op": "MSTORE" }, "14150": { "op": "PUSH15", "value": "0x4F766572206D617820617373657473" }, "14166": { "op": "PUSH1", "value": "0x88" }, "14168": { "op": "SHL" }, "14169": { "op": "PUSH1", "value": "0x40" }, "14171": { "op": "DUP3" }, "14172": { "op": "ADD" }, "14173": { "op": "MSTORE" }, "14174": { "op": "PUSH1", "value": "0x60" }, "14176": { "op": "ADD" }, "14177": { "op": "SWAP1" }, "14178": { "jump": "o", "op": "JUMP" }, "14179": { "op": "JUMPDEST" }, "14180": { "op": "PUSH1", "value": "0x20" }, "14182": { "op": "DUP1" }, "14183": { "op": "DUP3" }, "14184": { "op": "MSTORE" }, "14185": { "op": "PUSH1", "value": "0x10" }, "14187": { "op": "SWAP1" }, "14188": { "op": "DUP3" }, "14189": { "op": "ADD" }, "14190": { "op": "MSTORE" }, "14191": { "op": "PUSH16", "value": "0x496E76616C6964206D61747572697479" }, "14208": { "op": "PUSH1", "value": "0x80" }, "14210": { "op": "SHL" }, "14211": { "op": "PUSH1", "value": "0x40" }, "14213": { "op": "DUP3" }, "14214": { "op": "ADD" }, "14215": { "op": "MSTORE" }, "14216": { "op": "PUSH1", "value": "0x60" }, "14218": { "op": "ADD" }, "14219": { "op": "SWAP1" }, "14220": { "jump": "o", "op": "JUMP" }, "14221": { "op": "JUMPDEST" }, "14222": { "op": "PUSH1", "value": "0x20" }, "14224": { "op": "DUP1" }, "14225": { "op": "DUP3" }, "14226": { "op": "MSTORE" }, "14227": { "op": "PUSH1", "value": "0x12" }, "14229": { "op": "SWAP1" }, "14230": { "op": "DUP3" }, "14231": { "op": "ADD" }, "14232": { "op": "MSTORE" }, "14233": { "op": "PUSH18", "value": "0x12511CC81B5D5CDD081899481CDBDC9D1959" }, "14252": { "op": "PUSH1", "value": "0x72" }, "14254": { "op": "SHL" }, "14255": { "op": "PUSH1", "value": "0x40" }, "14257": { "op": "DUP3" }, "14258": { "op": "ADD" }, "14259": { "op": "MSTORE" }, "14260": { "op": "PUSH1", "value": "0x60" }, "14262": { "op": "ADD" }, "14263": { "op": "SWAP1" }, "14264": { "jump": "o", "op": "JUMP" }, "14265": { "op": "JUMPDEST" }, "14266": { "op": "PUSH1", "value": "0x20" }, "14268": { "op": "DUP1" }, "14269": { "op": "DUP3" }, "14270": { "op": "MSTORE" }, "14271": { "op": "PUSH1", "value": "0xC" }, "14273": { "op": "SWAP1" }, "14274": { "op": "DUP3" }, "14275": { "op": "ADD" }, "14276": { "op": "MSTORE" }, "14277": { "op": "PUSH12", "value": "0x139BDD081858D8D95C1D1959" }, "14290": { "op": "PUSH1", "value": "0xA2" }, "14292": { "op": "SHL" }, "14293": { "op": "PUSH1", "value": "0x40" }, "14295": { "op": "DUP3" }, "14296": { "op": "ADD" }, "14297": { "op": "MSTORE" }, "14298": { "op": "PUSH1", "value": "0x60" }, "14300": { "op": "ADD" }, "14301": { "op": "SWAP1" }, "14302": { "jump": "o", "op": "JUMP" }, "14303": { "op": "JUMPDEST" }, "14304": { "op": "SWAP2" }, "14305": { "op": "DUP3" }, "14306": { "op": "MSTORE" }, "14307": { "op": "PUSH1", "value": "0x20" }, "14309": { "op": "DUP3" }, "14310": { "op": "ADD" }, "14311": { "op": "MSTORE" }, "14312": { "op": "PUSH1", "value": "0x40" }, "14314": { "op": "ADD" }, "14315": { "op": "SWAP1" }, "14316": { "jump": "o", "op": "JUMP" }, "14317": { "op": "JUMPDEST" }, "14318": { "op": "PUSH1", "value": "0x0" }, "14320": { "op": "DUP1" }, "14321": { "op": "DUP6" }, "14322": { "op": "DUP6" }, "14323": { "op": "GT" }, "14324": { "op": "ISZERO" }, "14325": { "op": "PUSH2", "value": "0x37FC" }, "14328": { "op": "JUMPI" }, "14329": { "op": "DUP2" }, "14330": { "op": "DUP3" }, "14331": { "op": "REVERT" }, "14332": { "op": "JUMPDEST" }, "14333": { "op": "DUP4" }, "14334": { "op": "DUP7" }, "14335": { "op": "GT" }, "14336": { "op": "ISZERO" }, "14337": { "op": "PUSH2", "value": "0x3808" }, "14340": { "op": "JUMPI" }, "14341": { "op": "DUP2" }, "14342": { "op": "DUP3" }, "14343": { "op": "REVERT" }, "14344": { "op": "JUMPDEST" }, "14345": { "op": "POP" }, "14346": { "op": "POP" }, "14347": { "op": "DUP3" }, "14348": { "op": "ADD" }, "14349": { "op": "SWAP4" }, "14350": { "op": "SWAP2" }, "14351": { "op": "SWAP1" }, "14352": { "op": "SWAP3" }, "14353": { "op": "SUB" }, "14354": { "op": "SWAP2" }, "14355": { "op": "POP" }, "14356": { "jump": "o", "op": "JUMP" }, "14357": { "op": "JUMPDEST" }, "14358": { "op": "PUSH1", "value": "0x0" }, "14360": { "op": "JUMPDEST" }, "14361": { "op": "DUP4" }, "14362": { "op": "DUP2" }, "14363": { "op": "LT" }, "14364": { "op": "ISZERO" }, "14365": { "op": "PUSH2", "value": "0x3830" }, "14368": { "op": "JUMPI" }, "14369": { "op": "DUP2" }, "14370": { "op": "DUP2" }, "14371": { "op": "ADD" }, "14372": { "op": "MLOAD" }, "14373": { "op": "DUP4" }, "14374": { "op": "DUP3" }, "14375": { "op": "ADD" }, "14376": { "op": "MSTORE" }, "14377": { "op": "PUSH1", "value": "0x20" }, "14379": { "op": "ADD" }, "14380": { "op": "PUSH2", "value": "0x3818" }, "14383": { "op": "JUMP" }, "14384": { "op": "JUMPDEST" }, "14385": { "op": "DUP4" }, "14386": { "op": "DUP2" }, "14387": { "op": "GT" }, "14388": { "op": "ISZERO" }, "14389": { "op": "PUSH2", "value": "0x1632" }, "14392": { "op": "JUMPI" }, "14393": { "op": "POP" }, "14394": { "op": "POP" }, "14395": { "op": "PUSH1", "value": "0x0" }, "14397": { "op": "SWAP2" }, "14398": { "op": "ADD" }, "14399": { "op": "MSTORE" }, "14400": { "jump": "o", "op": "JUMP" }, "14401": { "op": "JUMPDEST" }, "14402": { "op": "PUSH1", "value": "0x1" }, "14404": { "op": "PUSH1", "value": "0x1" }, "14406": { "op": "PUSH1", "value": "0xA0" }, "14408": { "op": "SHL" }, "14409": { "op": "SUB" }, "14410": { "op": "DUP2" }, "14411": { "op": "AND" }, "14412": { "op": "DUP2" }, "14413": { "op": "EQ" }, "14414": { "op": "PUSH2", "value": "0x3856" }, "14417": { "op": "JUMPI" }, "14418": { "op": "PUSH1", "value": "0x0" }, "14420": { "op": "DUP1" }, "14421": { "op": "REVERT" }, "14422": { "op": "JUMPDEST" }, "14423": { "op": "POP" }, "14424": { "jump": "o", "op": "JUMP" }, "14425": { "op": "JUMPDEST" }, "14426": { "op": "PUSH1", "value": "0x1" }, "14428": { "op": "PUSH1", "value": "0x1" }, "14430": { "op": "PUSH1", "value": "0xE0" }, "14432": { "op": "SHL" }, "14433": { "op": "SUB" }, "14434": { "op": "NOT" }, "14435": { "op": "DUP2" }, "14436": { "op": "AND" }, "14437": { "op": "DUP2" }, "14438": { "op": "EQ" }, "14439": { "op": "PUSH2", "value": "0x3856" }, "14442": { "op": "JUMPI" }, "14443": { "op": "PUSH1", "value": "0x0" }, "14445": { "op": "DUP1" }, "14446": { "op": "REVERT" }, "14447": { "op": "JUMPDEST" }, "14448": { "op": "PUSH2", "value": "0xFFFF" }, "14451": { "op": "DUP2" }, "14452": { "op": "AND" }, "14453": { "op": "DUP2" }, "14454": { "op": "EQ" }, "14455": { "op": "PUSH2", "value": "0x3856" }, "14458": { "op": "JUMPI" }, "14459": { "op": "PUSH1", "value": "0x0" }, "14461": { "op": "DUP1" }, "14462": { "op": "REVERT" }, "14463": { "op": "JUMPDEST" }, "14464": { "op": "PUSH5", "value": "0xFFFFFFFFFF" }, "14470": { "op": "DUP2" }, "14471": { "op": "AND" }, "14472": { "op": "DUP2" }, "14473": { "op": "EQ" }, "14474": { "op": "PUSH2", "value": "0x3856" }, "14477": { "op": "JUMPI" }, "14478": { "op": "PUSH1", "value": "0x0" }, "14480": { "op": "DUP1" }, "14481": { "op": "REVERT" }, "14482": { "op": "JUMPDEST" }, "14483": { "op": "PUSH1", "value": "0xFF" }, "14485": { "op": "DUP2" }, "14486": { "op": "AND" }, "14487": { "op": "DUP2" }, "14488": { "op": "EQ" }, "14489": { "op": "PUSH2", "value": "0x3856" }, "14492": { "op": "JUMPI" }, "14493": { "op": "PUSH1", "value": "0x0" }, "14495": { "op": "DUP1" }, "14496": { "op": "REVERT" } }, "sha1": "9990855d2421ebb03f25cd2269aa560a54cf9b05", "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./ActionGuards.sol\";\nimport \"../FreeCollateralExternal.sol\";\nimport \"../../global/StorageLayoutV1.sol\";\nimport \"../../math/SafeInt256.sol\";\nimport \"../../internal/AccountContextHandler.sol\";\nimport \"../../internal/portfolio/TransferAssets.sol\";\nimport \"../../internal/portfolio/PortfolioHandler.sol\";\nimport \"../../../interfaces/notional/NotionalProxy.sol\";\nimport \"../../../interfaces/IERC1155TokenReceiver.sol\";\nimport \"../../../interfaces/notional/nERC1155Interface.sol\";\nimport \"@openzeppelin/contracts/token/ERC1155/IERC1155.sol\";\nimport \"@openzeppelin/contracts/utils/Address.sol\";\n\ncontract ERC1155Action is nERC1155Interface, ActionGuards {\n using SafeInt256 for int256;\n using AccountContextHandler for AccountContext;\n\n bytes4 internal constant ERC1155_ACCEPTED = bytes4(keccak256(\"onERC1155Received(address,address,uint256,uint256,bytes)\"));\n bytes4 internal constant ERC1155_BATCH_ACCEPTED = bytes4(keccak256(\"onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)\"));\n\n function supportsInterface(bytes4 interfaceId) external pure override returns (bool) {\n return interfaceId == type(IERC1155).interfaceId;\n }\n\n /// @notice Returns the balance of an ERC1155 id on an account. WARNING: the balances returned by\n /// this method do not show negative fCash balances because only unsigned integers are returned. They\n /// are represented by zero here. Use `signedBalanceOf` to get a signed return value.\n /// @param account account to get the id for\n /// @param id the ERC1155 id\n /// @return Balance of the ERC1155 id as an unsigned integer (negative fCash balances return zero)\n function balanceOf(address account, uint256 id) public view override returns (uint256) {\n int256 notional = signedBalanceOf(account, id);\n return notional < 0 ? 0 : notional.toUint();\n }\n\n /// @notice Returns the balance of an ERC1155 id on an account.\n /// @param account account to get the id for\n /// @param id the ERC1155 id\n /// @return notional balance of the ERC1155 id as a signed integer\n function signedBalanceOf(address account, uint256 id) public view override returns (int256 notional) {\n AccountContext memory accountContext = AccountContextHandler.getAccountContext(account);\n\n if (accountContext.isBitmapEnabled()) {\n notional = _balanceInBitmap(account, accountContext.bitmapCurrencyId, id);\n } else {\n notional = _balanceInArray(\n PortfolioHandler.getSortedPortfolio(account, accountContext.assetArrayLength),\n id\n );\n }\n }\n\n /// @notice Returns the balance of a batch of accounts and ids.\n /// @param accounts array of accounts to get balances for\n /// @param ids array of ids to get balances for\n /// @return Returns an array of signed balances\n function signedBalanceOfBatch(address[] calldata accounts, uint256[] calldata ids)\n external\n view\n override\n returns (int256[] memory)\n {\n require(accounts.length == ids.length);\n int256[] memory amounts = new int256[](accounts.length);\n\n for (uint256 i; i < accounts.length; i++) {\n // This is pretty inefficient but gets the job done\n amounts[i] = signedBalanceOf(accounts[i], ids[i]);\n }\n\n return amounts;\n }\n\n /// @notice Returns the balance of a batch of accounts and ids. WARNING: negative fCash balances are represented\n /// as zero balances in the array. \n /// @param accounts array of accounts to get balances for\n /// @param ids array of ids to get balances for\n /// @return Returns an array of unsigned balances\n function balanceOfBatch(address[] calldata accounts, uint256[] calldata ids)\n external\n view\n override\n returns (uint256[] memory)\n {\n require(accounts.length == ids.length);\n uint256[] memory amounts = new uint256[](accounts.length);\n\n for (uint256 i; i < accounts.length; i++) {\n // This is pretty inefficient but gets the job done\n amounts[i] = balanceOf(accounts[i], ids[i]);\n }\n\n return amounts;\n }\n\n /// @dev Returns the balance from a bitmap given the id\n function _balanceInBitmap(\n address account,\n uint256 bitmapCurrencyId,\n uint256 id\n ) internal view returns (int256) {\n (uint256 currencyId, uint256 maturity, uint256 assetType) = TransferAssets.decodeAssetId(id);\n\n if (\n currencyId != bitmapCurrencyId ||\n assetType != Constants.FCASH_ASSET_TYPE\n ) {\n // Neither of these are possible for a bitmap group\n return 0;\n } else {\n return BitmapAssetsHandler.getifCashNotional(account, currencyId, maturity);\n }\n }\n\n /// @dev Searches an array for the matching asset\n function _balanceInArray(PortfolioAsset[] memory portfolio, uint256 id)\n internal\n pure\n returns (int256)\n {\n (uint256 currencyId, uint256 maturity, uint256 assetType) = TransferAssets.decodeAssetId(id);\n\n for (uint256 i; i < portfolio.length; i++) {\n PortfolioAsset memory asset = portfolio[i];\n if (\n asset.currencyId == currencyId &&\n asset.maturity == maturity &&\n asset.assetType == assetType\n ) return asset.notional;\n }\n }\n\n /// @notice Transfer of a single fCash or liquidity token asset between accounts. Allows `from` account to transfer more fCash\n /// than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n /// @param from account to transfer from\n /// @param to account to transfer to\n /// @param id ERC1155 id of the asset\n /// @param amount amount to transfer\n /// @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n /// a trading action on Notional for the `from` address\n /// @dev emit:TransferSingle, emit:AccountContextUpdate, emit:AccountSettled\n function safeTransferFrom(\n address from,\n address to,\n uint256 id,\n uint256 amount,\n bytes calldata data\n ) external payable override {\n // NOTE: there is no re-entrancy guard on this method because that would prevent a callback in \n // _checkPostTransferEvent. The external call to the receiver is done at the very end after all stateful\n // updates have occurred.\n _validateAccounts(from, to);\n\n // When amount is set to zero this method can be used as a way to execute trades via a transfer operator\n AccountContext memory fromContext;\n if (amount > 0) {\n PortfolioAsset[] memory assets = new PortfolioAsset[](1);\n PortfolioAsset memory asset = assets[0];\n\n (asset.currencyId, asset.maturity, asset.assetType) = TransferAssets.decodeAssetId(id);\n // This ensures that asset.notional is always a positive amount\n asset.notional = SafeInt256.toInt(amount);\n _requireValidMaturity(asset.currencyId, asset.maturity, block.timestamp);\n\n // prettier-ignore\n (fromContext, /* toContext */) = _transfer(from, to, assets);\n\n emit TransferSingle(msg.sender, from, to, id, amount);\n } else {\n fromContext = AccountContextHandler.getAccountContext(from);\n }\n\n // toContext is always empty here because we cannot have bidirectional transfers in `safeTransferFrom`\n AccountContext memory toContext;\n _checkPostTransferEvent(from, to, fromContext, toContext, data, false);\n\n // Do this external call at the end to prevent re-entrancy\n if (Address.isContract(to)) {\n require(\n IERC1155TokenReceiver(to).onERC1155Received(msg.sender, from, id, amount, data) ==\n ERC1155_ACCEPTED,\n \"Not accepted\"\n );\n }\n }\n\n /// @notice Transfer of a batch of fCash or liquidity token assets between accounts. Allows `from` account to transfer more fCash\n /// than they have as long as they pass a subsequent free collateral check. This enables OTC trading of fCash assets.\n /// @param from account to transfer from\n /// @param to account to transfer to\n /// @param ids ERC1155 ids of the assets\n /// @param amounts amounts to transfer\n /// @param data arbitrary data passed to ERC1155Receiver (if contract) and if properly specified can be used to initiate\n /// a trading action on Notional for the `from` address\n /// @dev emit:TransferBatch, emit:AccountContextUpdate, emit:AccountSettled\n function safeBatchTransferFrom(\n address from,\n address to,\n uint256[] calldata ids,\n uint256[] calldata amounts,\n bytes calldata data\n ) external payable override {\n // NOTE: there is no re-entrancy guard on this method because that would prevent a callback in \n // _checkPostTransferEvent. The external call to the receiver is done at the very end.\n _validateAccounts(from, to);\n\n (PortfolioAsset[] memory assets, bool toTransferNegative) = _decodeToAssets(ids, amounts);\n // When doing a bidirectional transfer must ensure that the `to` account has given approval\n // to msg.sender as well.\n if (toTransferNegative) require(isApprovedForAll(to, msg.sender), \"Unauthorized\");\n\n (AccountContext memory fromContext, AccountContext memory toContext) = _transfer(\n from,\n to,\n assets\n );\n\n _checkPostTransferEvent(from, to, fromContext, toContext, data, toTransferNegative);\n emit TransferBatch(msg.sender, from, to, ids, amounts);\n\n // Do this at the end to prevent re-entrancy\n if (Address.isContract(to)) {\n require(\n IERC1155TokenReceiver(to).onERC1155BatchReceived(\n msg.sender,\n from,\n ids,\n amounts,\n data\n ) == ERC1155_BATCH_ACCEPTED,\n \"Not accepted\"\n );\n }\n }\n\n /// @dev Validates accounts on transfer\n function _validateAccounts(address from, address to) private view {\n // Cannot transfer to self, cannot transfer to zero address\n require(from != to && to != address(0) && to != address(this), \"Invalid address\");\n // Authentication is valid\n require(msg.sender == from || isApprovedForAll(from, msg.sender), \"Unauthorized\");\n // nTokens will not accept transfers because they do not implement the ERC1155\n // receive method\n\n // Defensive check to ensure that an authorized operator does not call these methods\n // with an invalid `from` account\n requireValidAccount(from);\n }\n\n /// @notice Decodes ids and amounts to PortfolioAsset objects\n /// @param ids array of ERC1155 ids\n /// @param amounts amounts to transfer\n /// @return array of portfolio asset objects\n function decodeToAssets(uint256[] calldata ids, uint256[] calldata amounts)\n external\n view\n override\n returns (PortfolioAsset[] memory)\n {\n // prettier-ignore\n (PortfolioAsset[] memory assets, /* */) = _decodeToAssets(ids, amounts);\n return assets;\n }\n\n function _decodeToAssets(uint256[] calldata ids, uint256[] calldata amounts)\n internal\n view\n returns (PortfolioAsset[] memory, bool)\n {\n require(ids.length == amounts.length);\n bool toTransferNegative = false;\n PortfolioAsset[] memory assets = new PortfolioAsset[](ids.length);\n\n for (uint256 i; i < ids.length; i++) {\n // Require that ids are not duplicated, there is no valid reason to have duplicate ids\n if (i > 0) require(ids[i] > ids[i - 1], \"IDs must be sorted\");\n\n PortfolioAsset memory asset = assets[i];\n (asset.currencyId, asset.maturity, asset.assetType) = TransferAssets.decodeAssetId(ids[i]);\n\n _requireValidMaturity(asset.currencyId, asset.maturity, block.timestamp);\n // Although amounts is encoded as uint256 we allow it to be negative here. This will\n // allow for bidirectional transfers of fCash. Internally fCash assets are always stored\n // as int128 (for bitmap portfolio) or int88 (for array portfolio) so there is no potential\n // that a uint256 value that is greater than type(int256).max would actually valid.\n asset.notional = int256(amounts[i]);\n // If there is a negative transfer we mark it as such, this will force us to do a free collateral\n // check on the `to` address as well.\n if (asset.notional < 0) toTransferNegative = true;\n }\n\n return (assets, toTransferNegative);\n }\n\n /// @notice Encodes parameters into an ERC1155 id\n /// @param currencyId currency id of the asset\n /// @param maturity timestamp of the maturity\n /// @param assetType id of the asset type\n /// @return ERC1155 id\n function encodeToId(\n uint16 currencyId,\n uint40 maturity,\n uint8 assetType\n ) external pure override returns (uint256) {\n return TransferAssets.encodeAssetId(currencyId, maturity, assetType);\n }\n\n /// @dev Ensures that all maturities specified are valid for the currency id (i.e. they do not\n /// go past the max maturity date)\n function _requireValidMaturity(\n uint256 currencyId,\n uint256 maturity,\n uint256 blockTime\n ) private view {\n require(\n DateTime.isValidMaturity(CashGroup.getMaxMarketIndex(currencyId), maturity, blockTime),\n \"Invalid maturity\"\n );\n }\n\n /// @dev Internal asset transfer event between accounts\n function _transfer(\n address from,\n address to,\n PortfolioAsset[] memory assets\n ) internal returns (AccountContext memory, AccountContext memory) {\n // Finalize all parts of a transfer for each account separately. Settlement must happen\n // before the call to placeAssetsInAccount so that we load the proper portfolio state.\n AccountContext memory toContext = AccountContextHandler.getAccountContext(to);\n if (toContext.mustSettleAssets()) {\n toContext = SettleAssetsExternal.settleAccount(to, toContext);\n }\n toContext = TransferAssets.placeAssetsInAccount(to, toContext, assets);\n toContext.setAccountContext(to);\n\n // Will flip the sign of notional in the assets array in memory\n TransferAssets.invertNotionalAmountsInPlace(assets);\n\n // Now finalize the from account\n AccountContext memory fromContext = AccountContextHandler.getAccountContext(from);\n if (fromContext.mustSettleAssets()) {\n fromContext = SettleAssetsExternal.settleAccount(from, fromContext);\n }\n fromContext = TransferAssets.placeAssetsInAccount(from, fromContext, assets);\n fromContext.setAccountContext(from);\n\n return (fromContext, toContext);\n }\n\n /// @dev Checks post transfer events which will either be initiating one of the batch trading events or a free collateral\n /// check if required.\n function _checkPostTransferEvent(\n address from,\n address to,\n AccountContext memory fromContext,\n AccountContext memory toContext,\n bytes calldata data,\n bool toTransferNegative\n ) internal {\n bytes4 sig = 0;\n address transactedAccount = address(0);\n if (data.length >= 32) {\n // Method signature is not abi encoded so decode to bytes32 first and take the first 4 bytes. This works\n // because all the methods we want to call below require more than 32 bytes in the calldata\n bytes32 tmp = abi.decode(data, (bytes32));\n sig = bytes4(tmp);\n }\n\n // These are the only four methods allowed to occur in a post transfer event. These actions allow `from`\n // accounts to take any sort of trading action as a result of their transfer. All of these actions will\n // handle checking free collateral so no additional check is necessary here.\n if (\n sig == NotionalProxy.nTokenRedeem.selector ||\n sig == NotionalProxy.batchLend.selector ||\n sig == NotionalProxy.batchBalanceAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeAction.selector\n ) {\n transactedAccount = abi.decode(data[4:36], (address));\n // Ensure that the \"transactedAccount\" parameter of the call is set to the from address or the\n // to address. If it is the \"to\" address then ensure that the msg.sender has approval to\n // execute operations\n require(\n transactedAccount == from ||\n (transactedAccount == to && isApprovedForAll(to, msg.sender)),\n \"Unauthorized call\"\n );\n\n // We can only call back to Notional itself at this point, account context is already\n // stored and all three of the whitelisted methods above will check free collateral.\n (bool status, bytes memory result) = address(this).call{value: msg.value}(data);\n require(status, _getRevertMsg(result));\n }\n\n // The transacted account will have its free collateral checked above so there is\n // no need to recheck here.\n // If transactedAccount == 0 then will check fc\n // If transactedAccount == to then will check fc\n // If transactedAccount == from then will skip, prefer call above\n if (transactedAccount != from && fromContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(from);\n }\n\n // Check free collateral if the `to` account has taken on a negative fCash amount\n // If toTransferNegative is false then will not check\n // If transactedAccount == 0 then will check fc\n // If transactedAccount == from then will check fc\n // If transactedAccount == to then will skip, prefer call above\n if (toTransferNegative && transactedAccount != to && toContext.hasDebt != 0x00) {\n FreeCollateralExternal.checkFreeCollateralAndRevert(to);\n }\n }\n\n function _getRevertMsg(bytes memory _returnData) internal pure returns (string memory) {\n // If the _res length is less than 68, then the transaction failed silently (without a revert message)\n if (_returnData.length < 68) return \"Transaction reverted silently\";\n\n assembly {\n // Slice the sighash.\n _returnData := add(_returnData, 0x04)\n }\n return abi.decode(_returnData, (string)); // All that remains is the revert string\n }\n\n /// @notice Allows an account to set approval for an operator\n /// @param operator address of the operator\n /// @param approved state of the approval\n /// @dev emit:ApprovalForAll\n function setApprovalForAll(address operator, bool approved) external override {\n accountAuthorizedTransferOperator[msg.sender][operator] = approved;\n emit ApprovalForAll(msg.sender, operator, approved);\n }\n\n /// @notice Checks approval state for an account, will first check if global transfer operator is enabled\n /// before falling through to an account specific transfer operator.\n /// @param account address of the account\n /// @param operator address of the operator\n /// @return true for approved\n function isApprovedForAll(address account, address operator)\n public\n view\n override\n returns (bool)\n {\n if (globalTransferOperator[operator]) return true;\n\n return accountAuthorizedTransferOperator[account][operator];\n }\n\n /// @notice Get a list of deployed library addresses (sorted by library name)\n function getLibInfo() external view returns (address, address) {\n return (address(FreeCollateralExternal), address(SettleAssetsExternal));\n }\n}\n", "sourceMap": "683:19633:30:-:0;;;;;;;;;;;;;;;;;;;", "sourcePath": "contracts/external/actions/ERC1155Action.sol", "type": "contract" } diff --git a/external/abi/notional/Router.json b/external/abi/notional/Router.json index 50d67e338..34032f936 100644 --- a/external/abi/notional/Router.json +++ b/external/abi/notional/Router.json @@ -1,25958 +1 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "governance_", - "type": "address" - }, - { - "internalType": "address", - "name": "views_", - "type": "address" - }, - { - "internalType": "address", - "name": "initializeMarket_", - "type": "address" - }, - { - "internalType": "address", - "name": "nTokenActions_", - "type": "address" - }, - { - "internalType": "address", - "name": "batchAction_", - "type": "address" - }, - { - "internalType": "address", - "name": "accountAction_", - "type": "address" - }, - { - "internalType": "address", - "name": "erc1155_", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidateCurrency_", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidatefCash_", - "type": "address" - }, - { - "internalType": "address", - "name": "cETH_", - "type": "address" - }, - { - "internalType": "address", - "name": "treasury_", - "type": "address" - }, - { - "internalType": "address", - "name": "calculationViews_", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [], - "name": "ACCOUNT_ACTION", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BATCH_ACTION", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "CALCULATION_VIEWS", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "ERC1155", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "GOVERNANCE", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "INITIALIZE_MARKET", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "LIQUIDATE_CURRENCY", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "LIQUIDATE_FCASH", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "NTOKEN_ACTIONS", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "TREASURY", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "VIEWS", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "cETH", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "sig", - "type": "bytes4" - } - ], - "name": "getRouterImplementation", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner_", - "type": "address" - }, - { - "internalType": "address", - "name": "pauseRouter_", - "type": "address" - }, - { - "internalType": "address", - "name": "pauseGuardian_", - "type": "address" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pauseGuardian", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pauseRouter", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "allSourcePaths": { - "24": "contracts/external/Router.sol", - "60": "contracts/global/Constants.sol", - "63": "contracts/global/StorageLayoutV1.sol", - "65": "contracts/global/Types.sol" - }, - "ast": { - "absolutePath": "contracts/external/Router.sol", - "exportedSymbols": { - "ABDKMath64x64": [ - 44430 - ], - "AaveHandler": [ - 26669 - ], - "AccountBalance": [ - 57824 - ], - "AccountContext": [ - 57743 - ], - "AccountContextHandler": [ - 24055 - ], - "ActionGuards": [ - 3662 - ], - "AggregatorInterface": [ - 62384 - ], - "AggregatorV2V3Interface": [ - 58997 - ], - "AggregatorV3Interface": [ - 62430 - ], - "AssetHandler": [ - 40067 - ], - "AssetRate": [ - 30677 - ], - "AssetRateAdapter": [ - 59041 - ], - "AssetRateParameters": [ - 57639 - ], - "AssetRateStorage": [ - 57707 - ], - "AssetStorageState": [ - 57500 - ], - "BalanceAction": [ - 57521 - ], - "BalanceActionWithTrades": [ - 57537 - ], - "BalanceHandler": [ - 25398 - ], - "BalanceState": [ - 57632 - ], - "BalanceStorage": [ - 57767 - ], - "BatchLend": [ - 57508 - ], - "Bitmap": [ - 44771 - ], - "BitmapAssetsHandler": [ - 37096 - ], - "CErc20Interface": [ - 59445 - ], - "CEtherInterface": [ - 59757 - ], - "CTokenInterface": [ - 59740 - ], - "CashGroup": [ - 31956 - ], - "CashGroupParameters": [ - 57648 - ], - "CashGroupSettings": [ - 57732 - ], - "CompoundHandler": [ - 26861 - ], - "Constants": [ - 22832 - ], - "Context": [ - 62453 - ], - "DateTime": [ - 32595 - ], - "Deployments": [ - 22839 - ], - "DepositActionType": [ - 57495 - ], - "ERC20": [ - 60749 - ], - "ETHRate": [ - 57613 - ], - "ETHRateStorage": [ - 57702 - ], - "ExchangeRate": [ - 40263 - ], - "FloatingPoint56": [ - 44847 - ], - "FreeCollateral": [ - 41676 - ], - "FreeCollateralExternal": [ - 618 - ], - "GenericToken": [ - 26993 - ], - "IAToken": [ - 60771 - ], - "IATokenFull": [ - 60806 - ], - "IEIP20NonStandard": [ - 61875 - ], - "IERC20": [ - 59607 - ], - "ILendingPool": [ - 60888 - ], - "IRewarder": [ - 59057 - ], - "IScaledBalanceToken": [ - 60796 - ], - "Incentives": [ - 25585 - ], - "LendingPoolStorage": [ - 60812 - ], - "LibStorage": [ - 23238 - ], - "LiquidationFactors": [ - 57591 - ], - "Market": [ - 34509 - ], - "MarketParameters": [ - 57678 - ], - "MarketStorage": [ - 57787 - ], - "MigrateIncentives": [ - 775 - ], - "NotionalCalculations": [ - 57001 - ], - "NotionalGovernance": [ - 58068 - ], - "NotionalProxy": [ - 57468 - ], - "NotionalTreasury": [ - 59529 - ], - "NotionalViews": [ - 58520 - ], - "PortfolioAsset": [ - 57661 - ], - "PortfolioAssetStorage": [ - 57799 - ], - "PortfolioHandler": [ - 38387 - ], - "PortfolioState": [ - 57602 - ], - "Router": [ - 1734 - ], - "SafeCast": [ - 56950 - ], - "SafeInt256": [ - 45162 - ], - "SafeMath": [ - 56637 - ], - "SettleAmount": [ - 57542 - ], - "SettleAssetsExternal": [ - 1878 - ], - "SettleBitmapAssets": [ - 38867 - ], - "SettlePortfolioAssets": [ - 39292 - ], - "SettlementRateStorage": [ - 57774 - ], - "StorageLayoutV1": [ - 23292 - ], - "Token": [ - 57553 - ], - "TokenHandler": [ - 26426 - ], - "TokenStorage": [ - 57689 - ], - "TokenType": [ - 57480 - ], - "TradeActionType": [ - 57487 - ], - "TransferAssets": [ - 38618 - ], - "ifCashStorage": [ - 57790 - ], - "nERC1155Interface": [ - 58229 - ], - "nTokenAction": [ - 12193 - ], - "nTokenCalculations": [ - 35079 - ], - "nTokenContext": [ - 57758 - ], - "nTokenERC20": [ - 59173 - ], - "nTokenHandler": [ - 36105 - ], - "nTokenMintAction": [ - 12854 - ], - "nTokenPortfolio": [ - 57568 - ], - "nTokenSupply": [ - 36407 - ], - "nTokenTotalSupplyStorage": [ - 57813 - ], - "nTokenTotalSupplyStorage_deprecated": [ - 57806 - ] - }, - "id": 1735, - "license": "GPL-3.0-only", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1058, - "literals": [ - "solidity", - "^", - "0.7", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "41:23:24" - }, - { - "id": 1059, - "literals": [ - "abicoder", - "v2" - ], - "nodeType": "PragmaDirective", - "src": "65:19:24" - }, - { - "absolutePath": "contracts/external/actions/nTokenAction.sol", - "file": "./actions/nTokenAction.sol", - "id": 1060, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 12194, - "src": "86:36:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/external/actions/nTokenMintAction.sol", - "file": "./actions/nTokenMintAction.sol", - "id": 1061, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 12855, - "src": "123:40:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/global/StorageLayoutV1.sol", - "file": "../global/StorageLayoutV1.sol", - "id": 1062, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 23293, - "src": "164:39:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "contracts/global/Types.sol", - "file": "../global/Types.sol", - "id": 1063, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 57825, - "src": "204:29:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/NotionalProxy.sol", - "file": "../../interfaces/notional/NotionalProxy.sol", - "id": 1064, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 57469, - "src": "234:53:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/nERC1155Interface.sol", - "file": "../../interfaces/notional/nERC1155Interface.sol", - "id": 1065, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 58230, - "src": "288:57:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/NotionalGovernance.sol", - "file": "../../interfaces/notional/NotionalGovernance.sol", - "id": 1066, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 58069, - "src": "346:58:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "interfaces/notional/NotionalCalculations.sol", - "file": "../../interfaces/notional/NotionalCalculations.sol", - "id": 1067, - "nodeType": "ImportDirective", - "scope": 1735, - "sourceUnit": 57002, - "src": "405:60:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1069, - "name": "StorageLayoutV1", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 23292, - "src": "1075:15:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_StorageLayoutV1_$23292", - "typeString": "contract StorageLayoutV1" - } - }, - "id": 1070, - "nodeType": "InheritanceSpecifier", - "src": "1075:15:24" - } - ], - "contractDependencies": [ - 23292 - ], - "contractKind": "contract", - "documentation": { - "id": 1068, - "nodeType": "StructuredDocumentation", - "src": "467:588:24", - "text": " @notice Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage\n will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing\n contracts.\n This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also\n allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a\n new Router with the new hardcoded addresses will then be deployed and upgraded into place." - }, - "fullyImplemented": true, - "id": 1734, - "linearizedBaseContracts": [ - 1734, - 23292 - ], - "name": "Router", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "14627834", - "id": 1072, - "mutability": "immutable", - "name": "GOVERNANCE", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1175:35:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1071, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1175:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "0c4e7935", - "id": 1074, - "mutability": "immutable", - "name": "VIEWS", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1216:30:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1073, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1216:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "dcc1a738", - "id": 1076, - "mutability": "immutable", - "name": "INITIALIZE_MARKET", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1252:42:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1075, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1252:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "15beeb93", - "id": 1078, - "mutability": "immutable", - "name": "NTOKEN_ACTIONS", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1300:39:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1077, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1300:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "6d7cdbbf", - "id": 1080, - "mutability": "immutable", - "name": "BATCH_ACTION", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1345:37:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1079, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1345:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "6009b8e6", - "id": 1082, - "mutability": "immutable", - "name": "ACCOUNT_ACTION", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1388:39:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1081, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1388:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "2d255471", - "id": 1084, - "mutability": "immutable", - "name": "ERC1155", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1433:32:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1083, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1433:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "2be75895", - "id": 1086, - "mutability": "immutable", - "name": "LIQUIDATE_CURRENCY", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1471:43:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1085, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1471:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "206109b5", - "id": 1088, - "mutability": "immutable", - "name": "LIQUIDATE_FCASH", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1520:40:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1087, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1520:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "a1b4d011", - "id": 1090, - "mutability": "immutable", - "name": "cETH", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1566:29:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1089, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1566:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "2d2c5565", - "id": 1092, - "mutability": "immutable", - "name": "TREASURY", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1601:33:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1091, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1601:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "72d27134", - "id": 1094, - "mutability": "immutable", - "name": "CALCULATION_VIEWS", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1640:42:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1093, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1640:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 1096, - "mutability": "immutable", - "name": "DEPLOYER", - "nodeType": "VariableDeclaration", - "scope": 1734, - "src": "1688:34:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1095, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1688:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "body": { - "id": 1180, - "nodeType": "Block", - "src": "2109:603:24", - "statements": [ - { - "expression": { - "id": 1125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1123, - "name": "GOVERNANCE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1072, - "src": "2119:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1124, - "name": "governance_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1098, - "src": "2132:11:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2119:24:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1126, - "nodeType": "ExpressionStatement", - "src": "2119:24:24" - }, - { - "expression": { - "id": 1129, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1127, - "name": "VIEWS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1074, - "src": "2153:5:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1128, - "name": "views_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1100, - "src": "2161:6:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2153:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1130, - "nodeType": "ExpressionStatement", - "src": "2153:14:24" - }, - { - "expression": { - "id": 1133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1131, - "name": "INITIALIZE_MARKET", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1076, - "src": "2177:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1132, - "name": "initializeMarket_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "2197:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2177:37:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1134, - "nodeType": "ExpressionStatement", - "src": "2177:37:24" - }, - { - "expression": { - "id": 1137, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1135, - "name": "NTOKEN_ACTIONS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1078, - "src": "2224:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1136, - "name": "nTokenActions_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1104, - "src": "2241:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2224:31:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1138, - "nodeType": "ExpressionStatement", - "src": "2224:31:24" - }, - { - "expression": { - "id": 1141, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1139, - "name": "BATCH_ACTION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1080, - "src": "2265:12:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1140, - "name": "batchAction_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1106, - "src": "2280:12:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2265:27:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1142, - "nodeType": "ExpressionStatement", - "src": "2265:27:24" - }, - { - "expression": { - "id": 1145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1143, - "name": "ACCOUNT_ACTION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1082, - "src": "2302:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1144, - "name": "accountAction_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1108, - "src": "2319:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2302:31:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1146, - "nodeType": "ExpressionStatement", - "src": "2302:31:24" - }, - { - "expression": { - "id": 1149, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1147, - "name": "ERC1155", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "2343:7:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1148, - "name": "erc1155_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1110, - "src": "2353:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2343:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1150, - "nodeType": "ExpressionStatement", - "src": "2343:18:24" - }, - { - "expression": { - "id": 1153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1151, - "name": "LIQUIDATE_CURRENCY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1086, - "src": "2371:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1152, - "name": "liquidateCurrency_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1112, - "src": "2392:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2371:39:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1154, - "nodeType": "ExpressionStatement", - "src": "2371:39:24" - }, - { - "expression": { - "id": 1157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1155, - "name": "LIQUIDATE_FCASH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1088, - "src": "2420:15:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1156, - "name": "liquidatefCash_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1114, - "src": "2438:15:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2420:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1158, - "nodeType": "ExpressionStatement", - "src": "2420:33:24" - }, - { - "expression": { - "id": 1161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1159, - "name": "cETH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1090, - "src": "2463:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1160, - "name": "cETH_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1116, - "src": "2470:5:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2463:12:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1162, - "nodeType": "ExpressionStatement", - "src": "2463:12:24" - }, - { - "expression": { - "id": 1166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1163, - "name": "DEPLOYER", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1096, - "src": "2485:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1164, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2496:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2496:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "2485:21:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1167, - "nodeType": "ExpressionStatement", - "src": "2485:21:24" - }, - { - "expression": { - "id": 1170, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1168, - "name": "TREASURY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "2516:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1169, - "name": "treasury_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2527:9:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2516:20:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1171, - "nodeType": "ExpressionStatement", - "src": "2516:20:24" - }, - { - "expression": { - "id": 1174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1172, - "name": "CALCULATION_VIEWS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1094, - "src": "2546:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1173, - "name": "calculationViews_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "2566:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2546:37:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1175, - "nodeType": "ExpressionStatement", - "src": "2546:37:24" - }, - { - "expression": { - "id": 1178, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1176, - "name": "hasInitialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23249, - "src": "2684:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 1177, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2701:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2684:21:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1179, - "nodeType": "ExpressionStatement", - "src": "2684:21:24" - } - ] - }, - "id": 1181, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1121, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1098, - "mutability": "mutable", - "name": "governance_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1750:19:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1097, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1750:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1100, - "mutability": "mutable", - "name": "views_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1779:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1099, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1779:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1102, - "mutability": "mutable", - "name": "initializeMarket_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1803:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1101, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1803:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1104, - "mutability": "mutable", - "name": "nTokenActions_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1838:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1103, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1838:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1106, - "mutability": "mutable", - "name": "batchAction_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1870:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1105, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1870:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1108, - "mutability": "mutable", - "name": "accountAction_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1900:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1107, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1900:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1110, - "mutability": "mutable", - "name": "erc1155_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1932:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1109, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1932:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1112, - "mutability": "mutable", - "name": "liquidateCurrency_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1958:26:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1111, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1958:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1114, - "mutability": "mutable", - "name": "liquidatefCash_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "1994:23:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1113, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1994:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1116, - "mutability": "mutable", - "name": "cETH_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "2027:13:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1115, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2027:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1118, - "mutability": "mutable", - "name": "treasury_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "2050:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1117, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2050:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1120, - "mutability": "mutable", - "name": "calculationViews_", - "nodeType": "VariableDeclaration", - "scope": 1181, - "src": "2077:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1119, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2077:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1740:368:24" - }, - "returnParameters": { - "id": 1122, - "nodeType": "ParameterList", - "parameters": [], - "src": "2109:0:24" - }, - "scope": 1734, - "src": "1729:983:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1269, - "nodeType": "Block", - "src": "2807:1337:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1191, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2880:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2880:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1193, - "name": "DEPLOYER", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1096, - "src": "2894:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2880:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "id": 1196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "2906:15:24", - "subExpression": { - "id": 1195, - "name": "hasInitialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23249, - "src": "2907:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2880:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1190, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2872:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1198, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2872:50:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1199, - "nodeType": "ExpressionStatement", - "src": "2872:50:24" - }, - { - "expression": { - "id": 1203, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1200, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23251, - "src": "3056:5:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 1201, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3064:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3064:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "3056:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1204, - "nodeType": "ExpressionStatement", - "src": "3056:18:24" - }, - { - "assignments": [ - 1206, - null - ], - "declarations": [ - { - "constant": false, - "id": 1206, - "mutability": "mutable", - "name": "status", - "nodeType": "VariableDeclaration", - "scope": 1269, - "src": "3247:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1205, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3247:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 1248, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "expression": { - "id": 1214, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "3370:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1215, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "listCurrency", - "nodeType": "MemberAccess", - "referencedDeclaration": 57948, - "src": "3370:31:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$_t_uint16_$", - "typeString": "function NotionalGovernance.listCurrency(struct TokenStorage calldata,struct TokenStorage calldata,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8) returns (uint16)" - } - }, - "id": 1216, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "3370:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "arguments": [ - { - "id": 1218, - "name": "cETH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1090, - "src": "3445:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "hexValue": "66616c7365", - "id": 1219, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3451:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "expression": { - "id": 1220, - "name": "TokenType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57480, - "src": "3458:9:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_TokenType_$57480_$", - "typeString": "type(enum TokenType)" - } - }, - "id": 1221, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "cETH", - "nodeType": "MemberAccess", - "src": "3458:14:24", - "typeDescriptions": { - "typeIdentifier": "t_enum$_TokenType_$57480", - "typeString": "enum TokenType" - } - }, - { - "expression": { - "id": 1222, - "name": "Constants", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 22832, - "src": "3474:9:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", - "typeString": "type(library Constants)" - } - }, - "id": 1223, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "CETH_DECIMAL_PLACES", - "nodeType": "MemberAccess", - "referencedDeclaration": 22572, - "src": "3474:29:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "hexValue": "30", - "id": 1224, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3505:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_enum$_TokenType_$57480", - "typeString": "enum TokenType" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1217, - "name": "TokenStorage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57689, - "src": "3432:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_TokenStorage_$57689_storage_ptr_$", - "typeString": "type(struct TokenStorage storage pointer)" - } - }, - "id": 1225, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3432:75:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", - "typeString": "struct TokenStorage memory" - } - }, - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 1229, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3600:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1228, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3592:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1227, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3592:7:24", - "typeDescriptions": {} - } - }, - "id": 1230, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3592:10:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "hexValue": "66616c7365", - "id": 1231, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3604:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "expression": { - "id": 1232, - "name": "TokenType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57480, - "src": "3611:9:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_enum$_TokenType_$57480_$", - "typeString": "type(enum TokenType)" - } - }, - "id": 1233, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "Ether", - "nodeType": "MemberAccess", - "src": "3611:15:24", - "typeDescriptions": { - "typeIdentifier": "t_enum$_TokenType_$57480", - "typeString": "enum TokenType" - } - }, - { - "expression": { - "id": 1234, - "name": "Constants", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 22832, - "src": "3628:9:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", - "typeString": "type(library Constants)" - } - }, - "id": 1235, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ETH_DECIMAL_PLACES", - "nodeType": "MemberAccess", - "referencedDeclaration": 22584, - "src": "3628:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "hexValue": "30", - "id": 1236, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3658:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_enum$_TokenType_$57480", - "typeString": "enum TokenType" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1226, - "name": "TokenStorage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57689, - "src": "3579:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_TokenStorage_$57689_storage_ptr_$", - "typeString": "type(struct TokenStorage storage pointer)" - } - }, - "id": 1237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3579:81:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", - "typeString": "struct TokenStorage memory" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 1240, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3690:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 1239, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3682:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1238, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3682:7:24", - "typeDescriptions": {} - } - }, - "id": 1241, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3682:10:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "hexValue": "66616c7365", - "id": 1242, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3714:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "hexValue": "313333", - "id": 1243, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3741:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_133_by_1", - "typeString": "int_const 133" - }, - "value": "133" - }, - { - "hexValue": "3735", - "id": 1244, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3801:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_75_by_1", - "typeString": "int_const 75" - }, - "value": "75" - }, - { - "hexValue": "313038", - "id": 1245, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3841:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_108_by_1", - "typeString": "int_const 108" - }, - "value": "108" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", - "typeString": "struct TokenStorage memory" - }, - { - "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", - "typeString": "struct TokenStorage memory" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_rational_133_by_1", - "typeString": "int_const 133" - }, - { - "typeIdentifier": "t_rational_75_by_1", - "typeString": "int_const 75" - }, - { - "typeIdentifier": "t_rational_108_by_1", - "typeString": "int_const 108" - } - ], - "expression": { - "id": 1212, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "3326:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1213, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeWithSelector", - "nodeType": "MemberAccess", - "src": "3326:22:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes4) pure returns (bytes memory)" - } - }, - "id": 1246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3326:564:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "arguments": [ - { - "id": 1209, - "name": "GOVERNANCE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1072, - "src": "3284:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1208, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3276:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1207, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3276:7:24", - "typeDescriptions": {} - } - }, - "id": 1210, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3276:19:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1211, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "delegatecall", - "nodeType": "MemberAccess", - "src": "3276:32:24", - "typeDescriptions": { - "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) returns (bool,bytes memory)" - } - }, - "id": 1247, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3276:628:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3246:658:24" - }, - { - "expression": { - "arguments": [ - { - "id": 1250, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1206, - "src": "3922:6:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1249, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "3914:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3914:15:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1252, - "nodeType": "ExpressionStatement", - "src": "3914:15:24" - }, - { - "expression": { - "id": 1255, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1253, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23251, - "src": "3940:5:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1254, - "name": "owner_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1183, - "src": "3948:6:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3940:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1256, - "nodeType": "ExpressionStatement", - "src": "3940:14:24" - }, - { - "expression": { - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1257, - "name": "pauseRouter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23253, - "src": "4038:11:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1258, - "name": "pauseRouter_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1185, - "src": "4052:12:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4038:26:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1260, - "nodeType": "ExpressionStatement", - "src": "4038:26:24" - }, - { - "expression": { - "id": 1263, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1261, - "name": "pauseGuardian", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23255, - "src": "4074:13:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1262, - "name": "pauseGuardian_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1187, - "src": "4090:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4074:30:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1264, - "nodeType": "ExpressionStatement", - "src": "4074:30:24" - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1267, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1265, - "name": "hasInitialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 23249, - "src": "4115:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "74727565", - "id": 1266, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4133:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "4115:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1268, - "nodeType": "ExpressionStatement", - "src": "4115:22:24" - } - ] - }, - "functionSelector": "c0c53b8b", - "id": 1270, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "initialize", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1188, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1183, - "mutability": "mutable", - "name": "owner_", - "nodeType": "VariableDeclaration", - "scope": 1270, - "src": "2738:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1182, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2738:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1185, - "mutability": "mutable", - "name": "pauseRouter_", - "nodeType": "VariableDeclaration", - "scope": 1270, - "src": "2754:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1184, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2754:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1187, - "mutability": "mutable", - "name": "pauseGuardian_", - "nodeType": "VariableDeclaration", - "scope": 1270, - "src": "2776:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1186, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2776:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2737:62:24" - }, - "returnParameters": { - "id": 1189, - "nodeType": "ParameterList", - "parameters": [], - "src": "2807:0:24" - }, - "scope": 1734, - "src": "2718:1426:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1713, - "nodeType": "Block", - "src": "4385:5440:24", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1300, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1288, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1282, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1278, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4412:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1279, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "4419:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1280, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchBalanceAction", - "nodeType": "MemberAccess", - "referencedDeclaration": 57296, - "src": "4419:32:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchBalanceAction(address,struct BalanceAction calldata[] calldata) payable" - } - }, - "id": 1281, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4419:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4412:48:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1283, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4476:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1284, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "4483:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1285, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchBalanceAndTradeAction", - "nodeType": "MemberAccess", - "referencedDeclaration": 57304, - "src": "4483:40:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchBalanceAndTradeAction(address,struct BalanceActionWithTrades calldata[] calldata) payable" - } - }, - "id": 1286, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4483:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4476:56:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4412:120:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1289, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4548:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1290, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "4555:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1291, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchBalanceAndTradeActionWithCallback", - "nodeType": "MemberAccess", - "referencedDeclaration": 57314, - "src": "4555:52:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchBalanceAndTradeActionWithCallback(address,struct BalanceActionWithTrades calldata[] calldata,bytes calldata) payable" - } - }, - "id": 1292, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4555:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4548:68:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4412:204:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1299, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1295, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4632:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1296, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "4639:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1297, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "batchLend", - "nodeType": "MemberAccess", - "referencedDeclaration": 57322, - "src": "4639:23:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalProxy.batchLend(address,struct BatchLend calldata[] calldata)" - } - }, - "id": 1298, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4639:32:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4632:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4412:259:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1332, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1326, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1320, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1308, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1304, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4749:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1305, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "4756:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1306, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenTotalSupply", - "nodeType": "MemberAccess", - "referencedDeclaration": 11541, - "src": "4756:30:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_address_$returns$_t_uint256_$", - "typeString": "function nTokenAction.nTokenTotalSupply(address) view returns (uint256)" - } - }, - "id": 1307, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4756:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4749:46:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1309, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4811:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1310, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "4818:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1311, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenBalanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 11572, - "src": "4818:28:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_address_$returns$_t_uint256_$", - "typeString": "function nTokenAction.nTokenBalanceOf(uint16,address) view returns (uint256)" - } - }, - "id": 1312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4818:37:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4811:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:106:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1315, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4871:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1316, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "4878:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1317, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenTransferAllowance", - "nodeType": "MemberAccess", - "referencedDeclaration": 11610, - "src": "4878:36:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_address_$_t_address_$returns$_t_uint256_$", - "typeString": "function nTokenAction.nTokenTransferAllowance(uint16,address,address) view returns (uint256)" - } - }, - "id": 1318, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4878:45:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4871:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:174:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1325, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1321, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "4939:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1322, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "4946:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1323, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenTransferApprove", - "nodeType": "MemberAccess", - "referencedDeclaration": 11662, - "src": "4946:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function nTokenAction.nTokenTransferApprove(uint16,address,address,uint256) returns (bool)" - } - }, - "id": 1324, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4946:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4939:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:240:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1327, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5005:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1328, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "5012:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1329, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenTransfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 11711, - "src": "5012:27:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function nTokenAction.nTokenTransfer(uint16,address,address,uint256) returns (bool)" - } - }, - "id": 1330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5012:36:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5005:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:299:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1337, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1333, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5064:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1334, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "5071:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1335, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenTransferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 11822, - "src": "5071:31:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function nTokenAction.nTokenTransferFrom(uint16,address,address,address,uint256) returns (bool)" - } - }, - "id": 1336, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5071:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5064:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:362:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1339, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5127:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1340, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "5134:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1341, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenClaimIncentives", - "nodeType": "MemberAccess", - "referencedDeclaration": 11961, - "src": "5134:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$__$returns$_t_uint256_$", - "typeString": "function nTokenAction.nTokenClaimIncentives() returns (uint256)" - } - }, - "id": 1342, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5134:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5127:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:428:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1345, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5193:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1346, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "5200:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1347, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenTransferApproveAll", - "nodeType": "MemberAccess", - "referencedDeclaration": 11852, - "src": "5200:37:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function nTokenAction.nTokenTransferApproveAll(address,uint256) returns (bool)" - } - }, - "id": 1348, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5200:46:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5193:53:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:497:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1355, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1351, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5262:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1352, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "5269:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1353, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenPresentValueAssetDenominated", - "nodeType": "MemberAccess", - "referencedDeclaration": 11979, - "src": "5269:47:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$returns$_t_int256_$", - "typeString": "function nTokenAction.nTokenPresentValueAssetDenominated(uint16) view returns (int256)" - } - }, - "id": 1354, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5269:56:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5262:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:576:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1357, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5341:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1358, - "name": "nTokenAction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 12193, - "src": "5348:12:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", - "typeString": "type(contract nTokenAction)" - } - }, - "id": 1359, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenPresentValueUnderlyingDenominated", - "nodeType": "MemberAccess", - "referencedDeclaration": 12004, - "src": "5348:52:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$returns$_t_int256_$", - "typeString": "function nTokenAction.nTokenPresentValueUnderlyingDenominated(uint16) view returns (int256)" - } - }, - "id": 1360, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5348:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5341:68:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4749:660:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1382, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1376, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1366, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5489:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1367, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "5496:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1368, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "depositUnderlyingToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 57265, - "src": "5496:36:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_uint16_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function NotionalProxy.depositUnderlyingToken(address,uint16,uint256) payable returns (uint256)" - } - }, - "id": 1369, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5496:45:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5489:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1371, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5557:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1372, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "5564:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1373, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "depositAssetToken", - "nodeType": "MemberAccess", - "referencedDeclaration": 57276, - "src": "5564:31:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function NotionalProxy.depositAssetToken(address,uint16,uint256) returns (uint256)" - } - }, - "id": 1374, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5564:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5557:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5489:115:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1377, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5620:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1378, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "5627:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1379, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "withdraw", - "nodeType": "MemberAccess", - "referencedDeclaration": 57287, - "src": "5627:22:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint88_$_t_bool_$returns$_t_uint256_$", - "typeString": "function NotionalProxy.withdraw(uint16,uint88,bool) returns (uint256)" - } - }, - "id": 1380, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5627:31:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5620:38:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5489:169:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1387, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1383, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5674:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1384, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "5681:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1385, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "settleAccount", - "nodeType": "MemberAccess", - "referencedDeclaration": 57254, - "src": "5681:27:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function NotionalProxy.settleAccount(address)" - } - }, - "id": 1386, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5681:36:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5674:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5489:228:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1393, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1389, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5733:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1390, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "5740:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1391, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenRedeem", - "nodeType": "MemberAccess", - "referencedDeclaration": 57243, - "src": "5740:26:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$", - "typeString": "function NotionalProxy.nTokenRedeem(address,uint16,uint96,bool,bool) returns (int256)" - } - }, - "id": 1392, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5740:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5733:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5489:286:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1395, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5791:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1396, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "5798:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1397, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "enableBitmapCurrency", - "nodeType": "MemberAccess", - "referencedDeclaration": 57249, - "src": "5798:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$returns$__$", - "typeString": "function NotionalProxy.enableBitmapCurrency(uint16)" - } - }, - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5798:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5791:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5489:352:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1462, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1456, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1450, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1444, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1404, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5921:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1405, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "5928:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1406, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "supportsInterface", - "nodeType": "MemberAccess", - "referencedDeclaration": 58119, - "src": "5928:35:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_pure$_t_bytes4_$returns$_t_bool_$", - "typeString": "function nERC1155Interface.supportsInterface(bytes4) pure returns (bool)" - } - }, - "id": 1407, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5928:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5921:51:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1413, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1409, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "5988:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1410, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "5995:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1411, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 58128, - "src": "5995:27:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function nERC1155Interface.balanceOf(address,uint256) view returns (uint256)" - } - }, - "id": 1412, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5995:36:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5988:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:110:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1415, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6047:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1416, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6054:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1417, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "balanceOfBatch", - "nodeType": "MemberAccess", - "referencedDeclaration": 58140, - "src": "6054:32:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_array$_t_address_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", - "typeString": "function nERC1155Interface.balanceOfBatch(address[] calldata,uint256[] calldata) view returns (uint256[] memory)" - } - }, - "id": 1418, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6054:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6047:48:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:174:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1425, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1421, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6111:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1422, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6118:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1423, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "signedBalanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 58149, - "src": "6118:33:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_int256_$", - "typeString": "function nERC1155Interface.signedBalanceOf(address,uint256) view returns (int256)" - } - }, - "id": 1424, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6118:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6111:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:239:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1431, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1427, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6176:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1428, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6183:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1429, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "signedBalanceOfBatch", - "nodeType": "MemberAccess", - "referencedDeclaration": 58161, - "src": "6183:38:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_array$_t_address_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$", - "typeString": "function nERC1155Interface.signedBalanceOfBatch(address[] calldata,uint256[] calldata) view returns (int256[] memory)" - } - }, - "id": 1430, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6183:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6176:54:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:309:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1437, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1433, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6246:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1434, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6253:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1435, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "safeTransferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 58190, - "src": "6253:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_calldata_ptr_$returns$__$", - "typeString": "function nERC1155Interface.safeTransferFrom(address,address,uint256,uint256,bytes calldata) payable" - } - }, - "id": 1436, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6253:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6246:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:375:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1439, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6312:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1440, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6319:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "safeBatchTransferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 58205, - "src": "6319:39:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", - "typeString": "function nERC1155Interface.safeBatchTransferFrom(address,address,uint256[] calldata,uint256[] calldata,bytes calldata) payable" - } - }, - "id": 1442, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6319:48:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6312:55:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:446:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1449, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1445, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6383:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1446, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6390:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1447, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "decodeToAssets", - "nodeType": "MemberAccess", - "referencedDeclaration": 58217, - "src": "6390:32:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function nERC1155Interface.decodeToAssets(uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory)" - } - }, - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6390:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6383:48:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:510:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1451, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6447:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1452, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6454:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1453, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeToId", - "nodeType": "MemberAccess", - "referencedDeclaration": 58228, - "src": "6454:28:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_pure$_t_uint16_$_t_uint40_$_t_uint8_$returns$_t_uint256_$", - "typeString": "function nERC1155Interface.encodeToId(uint16,uint40,uint8) pure returns (uint256)" - } - }, - "id": 1454, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6454:37:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6447:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:570:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1461, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1457, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6507:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1458, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6514:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1459, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "setApprovalForAll", - "nodeType": "MemberAccess", - "referencedDeclaration": 58168, - "src": "6514:35:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", - "typeString": "function nERC1155Interface.setApprovalForAll(address,bool)" - } - }, - "id": 1460, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6514:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6507:51:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:637:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1463, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6574:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1464, - "name": "nERC1155Interface", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58229, - "src": "6581:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", - "typeString": "type(contract nERC1155Interface)" - } - }, - "id": 1465, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "isApprovedForAll", - "nodeType": "MemberAccess", - "referencedDeclaration": 58177, - "src": "6581:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function nERC1155Interface.isApprovedForAll(address,address) view returns (bool)" - } - }, - "id": 1466, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6581:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6574:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5921:703:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1494, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1488, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1482, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1476, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1472, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6697:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1473, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "6704:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1474, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "liquidateLocalCurrency", - "nodeType": "MemberAccess", - "referencedDeclaration": 57349, - "src": "6704:36:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$returns$_t_int256_$_t_int256_$", - "typeString": "function NotionalProxy.liquidateLocalCurrency(address,uint16,uint96) returns (int256,int256)" - } - }, - "id": 1475, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6704:45:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6697:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1481, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1477, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6765:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1478, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "6772:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1479, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "liquidateCollateralCurrency", - "nodeType": "MemberAccess", - "referencedDeclaration": 57391, - "src": "6772:41:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_uint128_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$_t_int256_$_t_int256_$", - "typeString": "function NotionalProxy.liquidateCollateralCurrency(address,uint16,uint16,uint128,uint96,bool,bool) returns (int256,int256,int256)" - } - }, - "id": 1480, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6772:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6765:57:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6697:125:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1483, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6838:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1484, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "6845:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1485, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "calculateLocalCurrencyLiquidation", - "nodeType": "MemberAccess", - "referencedDeclaration": 57336, - "src": "6845:47:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$returns$_t_int256_$_t_int256_$", - "typeString": "function NotionalProxy.calculateLocalCurrencyLiquidation(address,uint16,uint96) returns (int256,int256)" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6845:56:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6838:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6697:204:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1489, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "6917:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1490, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "6924:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1491, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "calculateCollateralCurrencyLiquidation", - "nodeType": "MemberAccess", - "referencedDeclaration": 57368, - "src": "6924:52:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_uint128_$_t_uint96_$returns$_t_int256_$_t_int256_$_t_int256_$", - "typeString": "function NotionalProxy.calculateCollateralCurrencyLiquidation(address,uint16,uint16,uint128,uint96) returns (int256,int256,int256)" - } - }, - "id": 1492, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "6924:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "6917:68:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6697:288:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1520, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1508, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1498, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7069:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1499, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "7076:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1500, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "liquidatefCashLocal", - "nodeType": "MemberAccess", - "referencedDeclaration": 57427, - "src": "7076:33:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", - "typeString": "function NotionalProxy.liquidatefCashLocal(address,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" - } - }, - "id": 1501, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7076:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7069:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1507, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1503, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7134:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1504, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "7141:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1505, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "liquidatefCashCrossCurrency", - "nodeType": "MemberAccess", - "referencedDeclaration": 57467, - "src": "7141:41:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", - "typeString": "function NotionalProxy.liquidatefCashCrossCurrency(address,uint16,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" - } - }, - "id": 1506, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7141:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7134:57:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7069:122:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1513, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1509, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7207:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1510, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "7214:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1511, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "calculatefCashLocalLiquidation", - "nodeType": "MemberAccess", - "referencedDeclaration": 57409, - "src": "7214:44:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", - "typeString": "function NotionalProxy.calculatefCashLocalLiquidation(address,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7214:53:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7207:60:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7069:198:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1515, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7283:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1516, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "7290:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1517, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "calculatefCashCrossCurrencyLiquidation", - "nodeType": "MemberAccess", - "referencedDeclaration": 57447, - "src": "7290:52:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", - "typeString": "function NotionalProxy.calculatefCashCrossCurrencyLiquidation(address,uint16,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" - } - }, - "id": 1518, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7290:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7283:68:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7069:282:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1524, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7432:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1525, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "7439:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1526, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "initializeMarkets", - "nodeType": "MemberAccess", - "referencedDeclaration": 57222, - "src": "7439:31:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_bool_$returns$__$", - "typeString": "function NotionalProxy.initializeMarkets(uint16,bool)" - } - }, - "id": 1527, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7439:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7432:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1533, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1529, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7495:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1530, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "7502:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1531, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "sweepCashIntoMarkets", - "nodeType": "MemberAccess", - "referencedDeclaration": 57227, - "src": "7502:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$returns$__$", - "typeString": "function NotionalProxy.sweepCashIntoMarkets(uint16)" - } - }, - "id": 1532, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7502:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7495:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7432:113:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1638, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1620, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1608, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1584, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1578, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1560, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1554, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1548, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1542, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1538, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7628:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1539, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "7635:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1540, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "listCurrency", - "nodeType": "MemberAccess", - "referencedDeclaration": 57948, - "src": "7635:31:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$_t_uint16_$", - "typeString": "function NotionalGovernance.listCurrency(struct TokenStorage calldata,struct TokenStorage calldata,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8) returns (uint16)" - } - }, - "id": 1541, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7635:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7628:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1543, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7691:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1544, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "7698:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1545, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "enableCashGroup", - "nodeType": "MemberAccess", - "referencedDeclaration": 57968, - "src": "7698:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AssetRateAdapter_$59041_$_t_struct$_CashGroupSettings_$57732_calldata_ptr_$_t_string_calldata_ptr_$_t_string_calldata_ptr_$returns$__$", - "typeString": "function NotionalGovernance.enableCashGroup(uint16,contract AssetRateAdapter,struct CashGroupSettings calldata,string calldata,string calldata)" - } - }, - "id": 1546, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7698:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7691:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:113:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1549, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7757:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1550, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "7764:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1551, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateCashGroup", - "nodeType": "MemberAccess", - "referencedDeclaration": 58019, - "src": "7764:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_struct$_CashGroupSettings_$57732_calldata_ptr_$returns$__$", - "typeString": "function NotionalGovernance.updateCashGroup(uint16,struct CashGroupSettings calldata)" - } - }, - "id": 1552, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7764:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7757:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:179:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1555, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7823:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1556, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "7830:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1557, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateAssetRate", - "nodeType": "MemberAccess", - "referencedDeclaration": 58026, - "src": "7830:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AssetRateAdapter_$59041_$returns$__$", - "typeString": "function NotionalGovernance.updateAssetRate(uint16,contract AssetRateAdapter)" - } - }, - "id": 1558, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7830:43:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7823:50:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:245:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1565, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1561, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7889:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1562, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "7896:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1563, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateETHRate", - "nodeType": "MemberAccess", - "referencedDeclaration": 58041, - "src": "7896:32:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$__$", - "typeString": "function NotionalGovernance.updateETHRate(uint16,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8)" - } - }, - "id": 1564, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7896:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7889:48:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:309:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1571, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1567, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "7953:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1568, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "7960:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1569, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "transferOwnership", - "nodeType": "MemberAccess", - "referencedDeclaration": 57919, - "src": "7960:36:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", - "typeString": "function NotionalGovernance.transferOwnership(address,bool)" - } - }, - "id": 1570, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "7960:45:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "7953:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:377:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1573, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8021:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1574, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8028:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "claimOwnership", - "nodeType": "MemberAccess", - "referencedDeclaration": 57922, - "src": "8028:33:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$__$returns$__$", - "typeString": "function NotionalGovernance.claimOwnership()" - } - }, - "id": 1576, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8028:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8021:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:442:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1579, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8086:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1580, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8093:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateIncentiveEmissionRate", - "nodeType": "MemberAccess", - "referencedDeclaration": 57997, - "src": "8093:46:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint32_$returns$__$", - "typeString": "function NotionalGovernance.updateIncentiveEmissionRate(uint16,uint32)" - } - }, - "id": 1582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8093:55:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8086:62:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:520:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1585, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8164:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1586, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8171:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1587, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateMaxCollateralBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 57955, - "src": "8171:45:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint72_$returns$__$", - "typeString": "function NotionalGovernance.updateMaxCollateralBalance(uint16,uint72)" - } - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8171:54:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8164:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:597:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1595, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1591, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8241:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1592, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8248:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1593, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateDepositParameters", - "nodeType": "MemberAccess", - "referencedDeclaration": 57979, - "src": "8248:42:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_array$_t_uint32_$dyn_calldata_ptr_$_t_array$_t_uint32_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalGovernance.updateDepositParameters(uint16,uint32[] calldata,uint32[] calldata)" - } - }, - "id": 1594, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8248:51:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8241:58:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:671:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1601, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1597, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8315:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1598, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8322:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1599, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateInitializationParameters", - "nodeType": "MemberAccess", - "referencedDeclaration": 57990, - "src": "8322:49:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_array$_t_uint32_$dyn_calldata_ptr_$_t_array$_t_uint32_$dyn_calldata_ptr_$returns$__$", - "typeString": "function NotionalGovernance.updateInitializationParameters(uint16,uint32[] calldata,uint32[] calldata)" - } - }, - "id": 1600, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8322:58:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8315:65:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:752:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1607, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1603, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8396:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1604, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8403:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateTokenCollateralParameters", - "nodeType": "MemberAccess", - "referencedDeclaration": 58012, - "src": "8403:50:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint8_$_t_uint8_$_t_uint8_$_t_uint8_$_t_uint8_$returns$__$", - "typeString": "function NotionalGovernance.updateTokenCollateralParameters(uint16,uint8,uint8,uint8,uint8,uint8)" - } - }, - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8403:59:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8396:66:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:834:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1609, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8478:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1610, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8485:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1611, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateGlobalTransferOperator", - "nodeType": "MemberAccess", - "referencedDeclaration": 58048, - "src": "8485:47:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", - "typeString": "function NotionalGovernance.updateGlobalTransferOperator(address,bool)" - } - }, - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8485:56:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8478:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:913:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1615, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8557:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1616, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8564:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1617, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "updateAuthorizedCallbackContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 58055, - "src": "8564:51:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", - "typeString": "function NotionalGovernance.updateAuthorizedCallbackContract(address,bool)" - } - }, - "id": 1618, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8564:60:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8557:67:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:996:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1621, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8640:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1622, - "name": "NotionalGovernance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 58068, - "src": "8647:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", - "typeString": "type(contract NotionalGovernance)" - } - }, - "id": 1623, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "setLendingPool", - "nodeType": "MemberAccess", - "referencedDeclaration": 58060, - "src": "8647:33:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_contract$_ILendingPool_$60888_$returns$__$", - "typeString": "function NotionalGovernance.setLendingPool(contract ILendingPool)" - } - }, - "id": 1624, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8647:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8640:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:1061:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1631, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1627, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8705:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1628, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "8712:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1629, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "upgradeTo", - "nodeType": "MemberAccess", - "referencedDeclaration": 57187, - "src": "8712:23:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function NotionalProxy.upgradeTo(address)" - } - }, - "id": 1630, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8712:32:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8705:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:1116:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1633, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8760:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1634, - "name": "NotionalProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57468, - "src": "8767:13:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", - "typeString": "type(contract NotionalProxy)" - } - }, - "id": 1635, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "upgradeToAndCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 57194, - "src": "8767:30:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function NotionalProxy.upgradeToAndCall(address,bytes memory) payable" - } - }, - "id": 1636, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8767:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8760:46:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7628:1178:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1664, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1658, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1642, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8882:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1643, - "name": "NotionalTreasury", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 59529, - "src": "8889:16:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", - "typeString": "type(contract NotionalTreasury)" - } - }, - "id": 1644, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "claimCOMPAndTransfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 59500, - "src": "8889:37:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_array$_t_address_$dyn_calldata_ptr_$returns$_t_uint256_$", - "typeString": "function NotionalTreasury.claimCOMPAndTransfer(address[] calldata) returns (uint256)" - } - }, - "id": 1645, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8889:46:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8882:53:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1647, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "8951:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1648, - "name": "NotionalTreasury", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 59529, - "src": "8958:16:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", - "typeString": "type(contract NotionalTreasury)" - } - }, - "id": 1649, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "transferReserveToTreasury", - "nodeType": "MemberAccess", - "referencedDeclaration": 59509, - "src": "8958:42:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_array$_t_uint16_$dyn_calldata_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", - "typeString": "function NotionalTreasury.transferReserveToTreasury(uint16[] calldata) returns (uint256[] memory)" - } - }, - "id": 1650, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "8958:51:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "8951:58:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8882:127:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1657, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1653, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9025:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1654, - "name": "NotionalTreasury", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 59529, - "src": "9032:16:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", - "typeString": "type(contract NotionalTreasury)" - } - }, - "id": 1655, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "setTreasuryManager", - "nodeType": "MemberAccess", - "referencedDeclaration": 59514, - "src": "9032:35:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function NotionalTreasury.setTreasuryManager(address)" - } - }, - "id": 1656, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9032:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9025:51:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8882:194:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1659, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9092:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1660, - "name": "NotionalTreasury", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 59529, - "src": "9099:16:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", - "typeString": "type(contract NotionalTreasury)" - } - }, - "id": 1661, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "setReserveBuffer", - "nodeType": "MemberAccess", - "referencedDeclaration": 59521, - "src": "9099:33:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint256_$returns$__$", - "typeString": "function NotionalTreasury.setReserveBuffer(uint16,uint256)" - } - }, - "id": 1662, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9099:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9092:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8882:259:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1665, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9157:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1666, - "name": "NotionalTreasury", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 59529, - "src": "9164:16:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", - "typeString": "type(contract NotionalTreasury)" - } - }, - "id": 1667, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "setReserveCashBalance", - "nodeType": "MemberAccess", - "referencedDeclaration": 59528, - "src": "9164:38:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_int256_$returns$__$", - "typeString": "function NotionalTreasury.setReserveCashBalance(uint16,int256)" - } - }, - "id": 1668, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9164:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9157:54:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8882:329:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1674, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9285:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1675, - "name": "NotionalCalculations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57001, - "src": "9292:20:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", - "typeString": "type(contract NotionalCalculations)" - } - }, - "id": 1676, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "calculateNTokensToMint", - "nodeType": "MemberAccess", - "referencedDeclaration": 56963, - "src": "9292:43:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_uint88_$returns$_t_uint256_$", - "typeString": "function NotionalCalculations.calculateNTokensToMint(uint16,uint88) view returns (uint256)" - } - }, - "id": 1677, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9292:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9285:59:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1683, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1679, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9360:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1680, - "name": "NotionalCalculations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57001, - "src": "9367:20:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", - "typeString": "type(contract NotionalCalculations)" - } - }, - "id": 1681, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "getfCashAmountGivenCashAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 56976, - "src": "9367:50:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_int88_$_t_uint256_$_t_uint256_$returns$_t_int256_$", - "typeString": "function NotionalCalculations.getfCashAmountGivenCashAmount(uint16,int88,uint256,uint256) view returns (int256)" - } - }, - "id": 1682, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9367:59:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9360:66:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "9285:141:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1689, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1685, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9442:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1686, - "name": "NotionalCalculations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57001, - "src": "9449:20:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", - "typeString": "type(contract NotionalCalculations)" - } - }, - "id": 1687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "getCashAmountGivenfCashAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 56991, - "src": "9449:50:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_int88_$_t_uint256_$_t_uint256_$returns$_t_int256_$_t_int256_$", - "typeString": "function NotionalCalculations.getCashAmountGivenfCashAmount(uint16,int88,uint256,uint256) view returns (int256,int256)" - } - }, - "id": 1688, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9449:59:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9442:66:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "9285:223:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1691, - "name": "sig", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1273, - "src": "9524:3:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1692, - "name": "NotionalCalculations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57001, - "src": "9531:20:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", - "typeString": "type(contract NotionalCalculations)" - } - }, - "id": 1693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "nTokenGetClaimableIncentives", - "nodeType": "MemberAccess", - "referencedDeclaration": 57000, - "src": "9531:49:24", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function NotionalCalculations.nTokenGetClaimableIncentives(address,uint256) view returns (uint256)" - } - }, - "id": 1694, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "9531:58:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "9524:65:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "9285:304:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1702, - "nodeType": "Block", - "src": "9655:164:24", - "statements": [ - { - "expression": { - "id": 1700, - "name": "VIEWS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1074, - "src": "9803:5:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1701, - "nodeType": "Return", - "src": "9796:12:24" - } - ] - }, - "id": 1703, - "nodeType": "IfStatement", - "src": "9268:551:24", - "trueBody": { - "id": 1699, - "nodeType": "Block", - "src": "9600:49:24", - "statements": [ - { - "expression": { - "id": 1697, - "name": "CALCULATION_VIEWS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1094, - "src": "9621:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1698, - "nodeType": "Return", - "src": "9614:24:24" - } - ] - } - }, - "id": 1704, - "nodeType": "IfStatement", - "src": "8865:954:24", - "trueBody": { - "id": 1673, - "nodeType": "Block", - "src": "9222:40:24", - "statements": [ - { - "expression": { - "id": 1671, - "name": "TREASURY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "9243:8:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1672, - "nodeType": "Return", - "src": "9236:15:24" - } - ] - } - }, - "id": 1705, - "nodeType": "IfStatement", - "src": "7611:2208:24", - "trueBody": { - "id": 1641, - "nodeType": "Block", - "src": "8817:42:24", - "statements": [ - { - "expression": { - "id": 1639, - "name": "GOVERNANCE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1072, - "src": "8838:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1640, - "nodeType": "Return", - "src": "8831:17:24" - } - ] - } - }, - "id": 1706, - "nodeType": "IfStatement", - "src": "7415:2404:24", - "trueBody": { - "id": 1537, - "nodeType": "Block", - "src": "7556:49:24", - "statements": [ - { - "expression": { - "id": 1535, - "name": "INITIALIZE_MARKET", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1076, - "src": "7577:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1536, - "nodeType": "Return", - "src": "7570:24:24" - } - ] - } - }, - "id": 1707, - "nodeType": "IfStatement", - "src": "7052:2767:24", - "trueBody": { - "id": 1523, - "nodeType": "Block", - "src": "7362:47:24", - "statements": [ - { - "expression": { - "id": 1521, - "name": "LIQUIDATE_FCASH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1088, - "src": "7383:15:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1522, - "nodeType": "Return", - "src": "7376:22:24" - } - ] - } - }, - "id": 1708, - "nodeType": "IfStatement", - "src": "6680:3139:24", - "trueBody": { - "id": 1497, - "nodeType": "Block", - "src": "6996:50:24", - "statements": [ - { - "expression": { - "id": 1495, - "name": "LIQUIDATE_CURRENCY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1086, - "src": "7017:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1496, - "nodeType": "Return", - "src": "7010:25:24" - } - ] - } - }, - "id": 1709, - "nodeType": "IfStatement", - "src": "5904:3915:24", - "trueBody": { - "id": 1471, - "nodeType": "Block", - "src": "6635:39:24", - "statements": [ - { - "expression": { - "id": 1469, - "name": "ERC1155", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "6656:7:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1470, - "nodeType": "Return", - "src": "6649:14:24" - } - ] - } - }, - "id": 1710, - "nodeType": "IfStatement", - "src": "5472:4347:24", - "trueBody": { - "id": 1403, - "nodeType": "Block", - "src": "5852:46:24", - "statements": [ - { - "expression": { - "id": 1401, - "name": "ACCOUNT_ACTION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1082, - "src": "5873:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1402, - "nodeType": "Return", - "src": "5866:21:24" - } - ] - } - }, - "id": 1711, - "nodeType": "IfStatement", - "src": "4732:5087:24", - "trueBody": { - "id": 1365, - "nodeType": "Block", - "src": "5420:46:24", - "statements": [ - { - "expression": { - "id": 1363, - "name": "NTOKEN_ACTIONS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1078, - "src": "5441:14:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1364, - "nodeType": "Return", - "src": "5434:21:24" - } - ] - } - }, - "id": 1712, - "nodeType": "IfStatement", - "src": "4395:5424:24", - "trueBody": { - "id": 1303, - "nodeType": "Block", - "src": "4682:44:24", - "statements": [ - { - "expression": { - "id": 1301, - "name": "BATCH_ACTION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1080, - "src": "4703:12:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1277, - "id": 1302, - "nodeType": "Return", - "src": "4696:19:24" - } - ] - } - } - ] - }, - "documentation": { - "id": 1271, - "nodeType": "StructuredDocumentation", - "src": "4150:155:24", - "text": "@notice Returns the implementation contract for the method signature\n @param sig method signature to call\n @return implementation address" - }, - "functionSelector": "76e1df48", - "id": 1714, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRouterImplementation", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1274, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1273, - "mutability": "mutable", - "name": "sig", - "nodeType": "VariableDeclaration", - "scope": 1714, - "src": "4343:10:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1272, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "4343:6:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "4342:12:24" - }, - "returnParameters": { - "id": 1277, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1276, - "mutability": "mutable", - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1714, - "src": "4376:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1275, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4376:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4375:9:24" - }, - "scope": 1734, - "src": "4310:5515:24", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1721, - "nodeType": "Block", - "src": "10056:919:24", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "10131:838:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10384:1:24", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10387:1:24", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "calldatasize", - "nodeType": "YulIdentifier", - "src": "10390:12:24" - }, - "nodeType": "YulFunctionCall", - "src": "10390:14:24" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "10371:12:24" - }, - "nodeType": "YulFunctionCall", - "src": "10371:34:24" - }, - "nodeType": "YulExpressionStatement", - "src": "10371:34:24" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10532:74:24", - "value": { - "arguments": [ - { - "arguments": [], - "functionName": { - "name": "gas", - "nodeType": "YulIdentifier", - "src": "10559:3:24" - }, - "nodeType": "YulFunctionCall", - "src": "10559:5:24" - }, - { - "name": "implementation", - "nodeType": "YulIdentifier", - "src": "10566:14:24" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10582:1:24", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "calldatasize", - "nodeType": "YulIdentifier", - "src": "10585:12:24" - }, - "nodeType": "YulFunctionCall", - "src": "10585:14:24" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10601:1:24", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10604:1:24", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "delegatecall", - "nodeType": "YulIdentifier", - "src": "10546:12:24" - }, - "nodeType": "YulFunctionCall", - "src": "10546:60:24" - }, - "variables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "10536:6:24", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10674:1:24", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10677:1:24", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "returndatasize", - "nodeType": "YulIdentifier", - "src": "10680:14:24" - }, - "nodeType": "YulFunctionCall", - "src": "10680:16:24" - } - ], - "functionName": { - "name": "returndatacopy", - "nodeType": "YulIdentifier", - "src": "10659:14:24" - }, - "nodeType": "YulFunctionCall", - "src": "10659:38:24" - }, - "nodeType": "YulExpressionStatement", - "src": "10659:38:24" - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10800:67:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10829:1:24", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "returndatasize", - "nodeType": "YulIdentifier", - "src": "10832:14:24" - }, - "nodeType": "YulFunctionCall", - "src": "10832:16:24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10822:6:24" - }, - "nodeType": "YulFunctionCall", - "src": "10822:27:24" - }, - "nodeType": "YulExpressionStatement", - "src": "10822:27:24" - } - ] - }, - "nodeType": "YulCase", - "src": "10793:74:24", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10798:1:24", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10892:67:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10921:1:24", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "returndatasize", - "nodeType": "YulIdentifier", - "src": "10924:14:24" - }, - "nodeType": "YulFunctionCall", - "src": "10924:16:24" - } - ], - "functionName": { - "name": "return", - "nodeType": "YulIdentifier", - "src": "10914:6:24" - }, - "nodeType": "YulFunctionCall", - "src": "10914:27:24" - }, - "nodeType": "YulExpressionStatement", - "src": "10914:27:24" - } - ] - }, - "nodeType": "YulCase", - "src": "10884:75:24", - "value": "default" - } - ], - "expression": { - "name": "result", - "nodeType": "YulIdentifier", - "src": "10718:6:24" - }, - "nodeType": "YulSwitch", - "src": "10711:248:24" - } - ] - }, - "evmVersion": "istanbul", - "externalReferences": [ - { - "declaration": 1717, - "isOffset": false, - "isSlot": false, - "src": "10566:14:24", - "valueSize": 1 - } - ], - "id": 1720, - "nodeType": "InlineAssembly", - "src": "10122:847:24" - } - ] - }, - "documentation": { - "id": 1715, - "nodeType": "StructuredDocumentation", - "src": "9831:169:24", - "text": "@dev Delegates the current call to `implementation`.\n This function does not return to its internal call site, it will return directly to the external caller." - }, - "id": 1722, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_delegate", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1718, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1717, - "mutability": "mutable", - "name": "implementation", - "nodeType": "VariableDeclaration", - "scope": 1722, - "src": "10024:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1716, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10024:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "10023:24:24" - }, - "returnParameters": { - "id": 1719, - "nodeType": "ParameterList", - "parameters": [], - "src": "10056:0:24" - }, - "scope": 1734, - "src": "10005:970:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1732, - "nodeType": "Block", - "src": "11009:60:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 1727, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "11053:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1728, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sig", - "nodeType": "MemberAccess", - "src": "11053:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - ], - "id": 1726, - "name": "getRouterImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1714, - "src": "11029:23:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_address_$", - "typeString": "function (bytes4) view returns (address)" - } - }, - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11029:32:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1725, - "name": "_delegate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1722, - "src": "11019:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11019:43:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1731, - "nodeType": "ExpressionStatement", - "src": "11019:43:24" - } - ] - }, - "id": 1733, - "implemented": true, - "kind": "fallback", - "modifiers": [], - "name": "", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1723, - "nodeType": "ParameterList", - "parameters": [], - "src": "10989:2:24" - }, - "returnParameters": { - "id": 1724, - "nodeType": "ParameterList", - "parameters": [], - "src": "11009:0:24" - }, - "scope": 1734, - "src": "10981:88:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1735, - "src": "1056:10103:24" - } - ], - "src": "41:11119:24" - }, - "bytecode": "6102206040523480156200001257600080fd5b50604051620013ee380380620013ee8339810160408190526200003591620000e0565b6001600160601b031960609c8d1b81166080529a8c1b8b1660a052988b1b8a1660c052968a1b891660e05294891b88166101005292881b87166101205290871b861661014052861b851661016052851b841661018052841b83166101a05233841b61020052831b82166101c05290911b166101e0526000805463ff00000019166301000000179055620001d4565b80516001600160a01b0381168114620000db57600080fd5b919050565b6000806000806000806000806000806000806101808d8f03121562000103578788fd5b6200010e8d620000c3565b9b506200011e60208e01620000c3565b9a506200012e60408e01620000c3565b99506200013e60608e01620000c3565b98506200014e60808e01620000c3565b97506200015e60a08e01620000c3565b96506200016e60c08e01620000c3565b95506200017e60e08e01620000c3565b94506200018f6101008e01620000c3565b9350620001a06101208e01620000c3565b9250620001b16101408e01620000c3565b9150620001c26101608e01620000c3565b90509295989b509295989b509295989b565b60805160601c60a05160601c60c05160601c60e05160601c6101005160601c6101205160601c6101405160601c6101605160601c6101805160601c6101a05160601c6101c05160601c6101e05160601c6102005160601c611122620002cc60003980610d49525080610b0d5280610cd2525080610a7c5280610c66525080610d1c5280610dba5250806107855280610beb5250806106f45280610c1e5250806106635280610c425250806105165280610c8a52508061031d5280610cae5250806104505280610bc75250806107e05280610f4c525080610b345280610b7f5250806109d05280610ba35280610de652506111226000f3fe6080604052600436106100fe5760003560e01c80636009b8e6116100955780638246336711610064578063824633671461023a5780638da5cb5b1461024f578063a1b4d01114610264578063c0c53b8b14610279578063dcc1a73814610299576100fe565b80636009b8e6146101db5780636d7cdbbf146101f057806372d271341461020557806376e1df481461021a576100fe565b806324a3d622116100d157806324a3d622146101875780632be758951461019c5780632d255471146101b15780632d2c5565146101c6576100fe565b80630c4e79351461011d578063146278341461014857806315beeb931461015d578063206109b514610172575b61011b6101166000356001600160e01b0319166102ae565b610b59565b005b34801561012957600080fd5b50610132610b7d565b60405161013f919061107f565b60405180910390f35b34801561015457600080fd5b50610132610ba1565b34801561016957600080fd5b50610132610bc5565b34801561017e57600080fd5b50610132610be9565b34801561019357600080fd5b50610132610c0d565b3480156101a857600080fd5b50610132610c1c565b3480156101bd57600080fd5b50610132610c40565b3480156101d257600080fd5b50610132610c64565b3480156101e757600080fd5b50610132610c88565b3480156101fc57600080fd5b50610132610cac565b34801561021157600080fd5b50610132610cd0565b34801561022657600080fd5b50610132610235366004610fc7565b6102ae565b34801561024657600080fd5b50610132610cf4565b34801561025b57600080fd5b50610132610d03565b34801561027057600080fd5b50610132610d1a565b34801561028557600080fd5b5061011b610294366004610f85565b610d3e565b3480156102a557600080fd5b50610132610f4a565b60006001600160e01b03198216633735195360e11b14806102df57506001600160e01b03198216630276b64b60e01b145b806102fa57506001600160e01b03198216635950d8e960e01b145b8061031557506001600160e01b03198216630541f52760e41b145b1561034157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a96e86f60e01b148061037057506001600160e01b0319821663a78dbfff60e01b145b8061038b57506001600160e01b03198216637db31ab960e01b145b806103a657506001600160e01b0319821663184e005360e11b145b806103c157506001600160e01b031982166318ae40d760e01b145b806103dc57506001600160e01b03198216634425384960e11b145b806103f757506001600160e01b03198216636d6503d360e11b145b8061041257506001600160e01b031982166305c1d97560e31b145b8061042d57506001600160e01b03198216631a05bce160e01b145b8061044857506001600160e01b03198216633b2987b360e01b145b1561047457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632890fb6560e01b14806104a357506001600160e01b0319821663b8a6945560e01b145b806104bd57506001600160e01b03198216625e665d60e31b145b806104d857506001600160e01b0319821663f667f89760e01b145b806104f357506001600160e01b03198216636689064360e01b145b8061050e57506001600160e01b031982166309c9794560e41b145b1561053a57507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b031982166301ffc9a760e01b148061056857506001600160e01b03198216627eeac760e11b145b8061058357506001600160e01b031982166313849cfd60e21b145b8061059e57506001600160e01b03198216630fac8f0960e01b145b806105b957506001600160e01b031982166381a8685560e01b145b806105d457506001600160e01b03198216637921219560e11b145b806105ef57506001600160e01b03198216631759616b60e11b145b8061060a57506001600160e01b031982166307f4d70160e31b145b8061062557506001600160e01b03198216630e6b43b960e31b145b8061064057506001600160e01b0319821663a22cb46560e01b145b8061065b57506001600160e01b0319821663e985e9c560e01b145b1561068757507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632d10e6eb60e01b14806106b657506001600160e01b03198216636633af3960e01b145b806106d157506001600160e01b0319821663e3e7cb4f60e01b145b806106ec57506001600160e01b03198216639a600eeb60e01b145b1561071857507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216631ff7aefd60e21b148061074757506001600160e01b0319821663e816469d60e01b145b8061076257506001600160e01b03198216630fb281d960e01b145b8061077d57506001600160e01b0319821663fa37e39560e01b145b156107a957507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216630343819360e61b14806107d857506001600160e01b03198216635db6eac760e11b145b1561080457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637abaf27160e11b148061083357506001600160e01b0319821663e31051a160e01b145b8061084e57506001600160e01b0319821663a11a429360e01b145b8061086957506001600160e01b03198216630528476560e51b145b8061088457506001600160e01b0319821663315cb2b960e21b145b8061089f57506001600160e01b03198216632c90b94d60e21b145b806108ba57506001600160e01b031982166309ce3c1960e31b145b806108d557506001600160e01b031982166354ebde2960e11b145b806108f057506001600160e01b031982166398dcbc2360e01b145b8061090b57506001600160e01b031982166333eabd1d60e21b145b8061092657506001600160e01b0319821663413f2c5f60e01b145b8061094157506001600160e01b03198216630d0da86760e21b145b8061095c57506001600160e01b0319821663353abc5d60e01b145b8061097757506001600160e01b0319821663fa17b5f160e01b145b8061099257506001600160e01b0319821663113aa8b160e01b145b806109ad57506001600160e01b03198216631b2ce7f360e11b145b806109c857506001600160e01b0319821663278f794360e11b145b156109f457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637d6dbff760e11b1480610a2357506001600160e01b03198216636d7a00eb60e01b145b80610a3e57506001600160e01b03198216637f23d4f960e11b145b80610a5957506001600160e01b0319821663239cec8f60e21b145b80610a7457506001600160e01b031982166312adc47b60e01b145b15610aa057507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a09a2a360e01b1480610acf57506001600160e01b03198216638355e89560e01b145b80610aea57506001600160e01b0319821663094614df60e01b145b80610b0557506001600160e01b03198216634beb6d9760e11b145b15610b3157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b507f00000000000000000000000000000000000000000000000000000000000000005b919050565b3660008037600080366000845af43d6000803e808015610b78573d6000f35b3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6002546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610d8057506000546301000000900460ff16155b610d8957600080fd5b60008054640100000000600160c01b03191633640100000000021781556040805160a0810182526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081168252602082018490527f00000000000000000000000000000000000000000000000000000000000000001691637abaf27160e11b9190810160028152600860208083019190915260006040928301819052825160a081018452818152918201529081016003815260126020820152600060409182018190529051610e6f939291908190608590604b90606c90602401611093565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ead9190611046565b600060405180830381855af49150503d8060008114610ee8576040519150601f19603f3d011682016040523d82523d6000602084013e610eed565b606091505b5050905080610efb57600080fd5b50600080546001600160a01b0394851664010000000002640100000000600160c01b0319909116179055600180549284166001600160a01b031993841617905560028054919093169116179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b80356001600160a01b0381168114610b5457600080fd5b600080600060608486031215610f99578283fd5b610fa284610f6e565b9250610fb060208501610f6e565b9150610fbe60408501610f6e565b90509250925092565b600060208284031215610fd8578081fd5b81356001600160e01b031981168114610fef578182fd5b9392505050565b80516001600160a01b0316825260208082015115159083015260408101516006811061101e57fe5b604083015260608181015160ff169083015260809081015168ffffffffffffffffff16910152565b60008251815b81811015611066576020818601810151858301520161104c565b818111156110745782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6101e081016110a2828a610ff6565b6110af60a0830189610ff6565b6001600160a01b039690961661014082015293151561016085015260ff9283166101808501529082166101a0840152166101c0909101529291505056fea26469706673582212203297c764dc6ad3f1b84384a7a27deb87fba8bfa8567881c47a81ca18ac28b6ff64736f6c63430007060033", - "bytecodeSha1": "1ee90eab3fe828251afc0d7472b9288567c5741e", - "compiler": { - "evm_version": "istanbul", - "optimizer": { - "enabled": true, - "runs": 200 - }, - "version": "0.7.6+commit.7338295f" - }, - "contractName": "Router", - "coverageMap": { - "branches": { - "24": { - "Router.getRouterImplementation": { - "18": [ - 4412, - 4460, - true - ], - "19": [ - 4476, - 4532, - true - ], - "20": [ - 4548, - 4616, - true - ], - "21": [ - 4632, - 4671, - false - ], - "22": [ - 4749, - 4795, - true - ], - "23": [ - 4811, - 4855, - true - ], - "24": [ - 4871, - 4923, - true - ], - "25": [ - 4939, - 4989, - true - ], - "26": [ - 5005, - 5048, - true - ], - "27": [ - 5064, - 5111, - true - ], - "28": [ - 5127, - 5177, - true - ], - "29": [ - 5193, - 5246, - true - ], - "30": [ - 5262, - 5325, - true - ], - "31": [ - 5341, - 5409, - false - ], - "32": [ - 5489, - 5541, - true - ], - "33": [ - 5557, - 5604, - true - ], - "34": [ - 5620, - 5658, - true - ], - "35": [ - 5674, - 5717, - true - ], - "36": [ - 5733, - 5775, - true - ], - "37": [ - 5791, - 5841, - false - ], - "38": [ - 5921, - 5972, - true - ], - "39": [ - 5988, - 6031, - true - ], - "40": [ - 6047, - 6095, - true - ], - "41": [ - 6111, - 6160, - true - ], - "42": [ - 6176, - 6230, - true - ], - "43": [ - 6246, - 6296, - true - ], - "44": [ - 6312, - 6367, - true - ], - "45": [ - 6383, - 6431, - true - ], - "46": [ - 6447, - 6491, - true - ], - "47": [ - 6507, - 6558, - true - ], - "48": [ - 6574, - 6624, - false - ], - "49": [ - 6697, - 6749, - true - ], - "50": [ - 6765, - 6822, - true - ], - "51": [ - 6838, - 6901, - true - ], - "52": [ - 6917, - 6985, - false - ], - "53": [ - 7069, - 7118, - true - ], - "54": [ - 7134, - 7191, - true - ], - "55": [ - 7207, - 7267, - true - ], - "56": [ - 7283, - 7351, - false - ], - "57": [ - 7432, - 7479, - true - ], - "58": [ - 7495, - 7545, - false - ], - "59": [ - 7628, - 7675, - true - ], - "60": [ - 7691, - 7741, - true - ], - "61": [ - 7757, - 7807, - true - ], - "62": [ - 7823, - 7873, - true - ], - "63": [ - 7889, - 7937, - true - ], - "64": [ - 7953, - 8005, - true - ], - "65": [ - 8021, - 8070, - true - ], - "66": [ - 8086, - 8148, - true - ], - "67": [ - 8164, - 8225, - true - ], - "68": [ - 8241, - 8299, - true - ], - "69": [ - 8315, - 8380, - true - ], - "70": [ - 8396, - 8462, - true - ], - "71": [ - 8478, - 8541, - true - ], - "72": [ - 8557, - 8624, - true - ], - "73": [ - 8640, - 8689, - true - ], - "74": [ - 8705, - 8744, - true - ], - "75": [ - 8760, - 8806, - false - ], - "76": [ - 8882, - 8935, - true - ], - "77": [ - 8951, - 9009, - true - ], - "78": [ - 9025, - 9076, - true - ], - "79": [ - 9092, - 9141, - true - ], - "80": [ - 9157, - 9211, - false - ], - "81": [ - 9285, - 9344, - true - ], - "82": [ - 9360, - 9426, - true - ], - "83": [ - 9442, - 9508, - true - ], - "84": [ - 9524, - 9589, - false - ] - }, - "Router.initialize": { - "85": [ - 2880, - 2902, - false - ], - "86": [ - 2907, - 2921, - true - ], - "87": [ - 3922, - 3928, - true - ] - } - }, - "60": {}, - "63": {}, - "65": {} - }, - "statements": { - "24": { - "Router.": { - "0": [ - 11019, - 11062 - ] - }, - "Router.getRouterImplementation": { - "1": [ - 4696, - 4715 - ], - "2": [ - 5434, - 5455 - ], - "3": [ - 5866, - 5887 - ], - "4": [ - 6649, - 6663 - ], - "5": [ - 7010, - 7035 - ], - "6": [ - 7376, - 7398 - ], - "7": [ - 7570, - 7594 - ], - "8": [ - 8831, - 8848 - ], - "9": [ - 9236, - 9251 - ], - "10": [ - 9614, - 9638 - ], - "11": [ - 9796, - 9808 - ] - }, - "Router.initialize": { - "12": [ - 2872, - 2922 - ], - "13": [ - 3056, - 3074 - ], - "14": [ - 3914, - 3929 - ], - "15": [ - 3940, - 3954 - ], - "16": [ - 4038, - 4064 - ], - "17": [ - 4074, - 4104 - ] - } - }, - "60": {}, - "63": {}, - "65": {} - } - }, - "dependencies": [ - "Constants", - "StorageLayoutV1" - ], - "deployedBytecode": "6080604052600436106100fe5760003560e01c80636009b8e6116100955780638246336711610064578063824633671461023a5780638da5cb5b1461024f578063a1b4d01114610264578063c0c53b8b14610279578063dcc1a73814610299576100fe565b80636009b8e6146101db5780636d7cdbbf146101f057806372d271341461020557806376e1df481461021a576100fe565b806324a3d622116100d157806324a3d622146101875780632be758951461019c5780632d255471146101b15780632d2c5565146101c6576100fe565b80630c4e79351461011d578063146278341461014857806315beeb931461015d578063206109b514610172575b61011b6101166000356001600160e01b0319166102ae565b610b59565b005b34801561012957600080fd5b50610132610b7d565b60405161013f919061107f565b60405180910390f35b34801561015457600080fd5b50610132610ba1565b34801561016957600080fd5b50610132610bc5565b34801561017e57600080fd5b50610132610be9565b34801561019357600080fd5b50610132610c0d565b3480156101a857600080fd5b50610132610c1c565b3480156101bd57600080fd5b50610132610c40565b3480156101d257600080fd5b50610132610c64565b3480156101e757600080fd5b50610132610c88565b3480156101fc57600080fd5b50610132610cac565b34801561021157600080fd5b50610132610cd0565b34801561022657600080fd5b50610132610235366004610fc7565b6102ae565b34801561024657600080fd5b50610132610cf4565b34801561025b57600080fd5b50610132610d03565b34801561027057600080fd5b50610132610d1a565b34801561028557600080fd5b5061011b610294366004610f85565b610d3e565b3480156102a557600080fd5b50610132610f4a565b60006001600160e01b03198216633735195360e11b14806102df57506001600160e01b03198216630276b64b60e01b145b806102fa57506001600160e01b03198216635950d8e960e01b145b8061031557506001600160e01b03198216630541f52760e41b145b1561034157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a96e86f60e01b148061037057506001600160e01b0319821663a78dbfff60e01b145b8061038b57506001600160e01b03198216637db31ab960e01b145b806103a657506001600160e01b0319821663184e005360e11b145b806103c157506001600160e01b031982166318ae40d760e01b145b806103dc57506001600160e01b03198216634425384960e11b145b806103f757506001600160e01b03198216636d6503d360e11b145b8061041257506001600160e01b031982166305c1d97560e31b145b8061042d57506001600160e01b03198216631a05bce160e01b145b8061044857506001600160e01b03198216633b2987b360e01b145b1561047457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632890fb6560e01b14806104a357506001600160e01b0319821663b8a6945560e01b145b806104bd57506001600160e01b03198216625e665d60e31b145b806104d857506001600160e01b0319821663f667f89760e01b145b806104f357506001600160e01b03198216636689064360e01b145b8061050e57506001600160e01b031982166309c9794560e41b145b1561053a57507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b031982166301ffc9a760e01b148061056857506001600160e01b03198216627eeac760e11b145b8061058357506001600160e01b031982166313849cfd60e21b145b8061059e57506001600160e01b03198216630fac8f0960e01b145b806105b957506001600160e01b031982166381a8685560e01b145b806105d457506001600160e01b03198216637921219560e11b145b806105ef57506001600160e01b03198216631759616b60e11b145b8061060a57506001600160e01b031982166307f4d70160e31b145b8061062557506001600160e01b03198216630e6b43b960e31b145b8061064057506001600160e01b0319821663a22cb46560e01b145b8061065b57506001600160e01b0319821663e985e9c560e01b145b1561068757507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632d10e6eb60e01b14806106b657506001600160e01b03198216636633af3960e01b145b806106d157506001600160e01b0319821663e3e7cb4f60e01b145b806106ec57506001600160e01b03198216639a600eeb60e01b145b1561071857507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216631ff7aefd60e21b148061074757506001600160e01b0319821663e816469d60e01b145b8061076257506001600160e01b03198216630fb281d960e01b145b8061077d57506001600160e01b0319821663fa37e39560e01b145b156107a957507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216630343819360e61b14806107d857506001600160e01b03198216635db6eac760e11b145b1561080457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637abaf27160e11b148061083357506001600160e01b0319821663e31051a160e01b145b8061084e57506001600160e01b0319821663a11a429360e01b145b8061086957506001600160e01b03198216630528476560e51b145b8061088457506001600160e01b0319821663315cb2b960e21b145b8061089f57506001600160e01b03198216632c90b94d60e21b145b806108ba57506001600160e01b031982166309ce3c1960e31b145b806108d557506001600160e01b031982166354ebde2960e11b145b806108f057506001600160e01b031982166398dcbc2360e01b145b8061090b57506001600160e01b031982166333eabd1d60e21b145b8061092657506001600160e01b0319821663413f2c5f60e01b145b8061094157506001600160e01b03198216630d0da86760e21b145b8061095c57506001600160e01b0319821663353abc5d60e01b145b8061097757506001600160e01b0319821663fa17b5f160e01b145b8061099257506001600160e01b0319821663113aa8b160e01b145b806109ad57506001600160e01b03198216631b2ce7f360e11b145b806109c857506001600160e01b0319821663278f794360e11b145b156109f457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637d6dbff760e11b1480610a2357506001600160e01b03198216636d7a00eb60e01b145b80610a3e57506001600160e01b03198216637f23d4f960e11b145b80610a5957506001600160e01b0319821663239cec8f60e21b145b80610a7457506001600160e01b031982166312adc47b60e01b145b15610aa057507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a09a2a360e01b1480610acf57506001600160e01b03198216638355e89560e01b145b80610aea57506001600160e01b0319821663094614df60e01b145b80610b0557506001600160e01b03198216634beb6d9760e11b145b15610b3157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b507f00000000000000000000000000000000000000000000000000000000000000005b919050565b3660008037600080366000845af43d6000803e808015610b78573d6000f35b3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6002546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610d8057506000546301000000900460ff16155b610d8957600080fd5b60008054640100000000600160c01b03191633640100000000021781556040805160a0810182526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081168252602082018490527f00000000000000000000000000000000000000000000000000000000000000001691637abaf27160e11b9190810160028152600860208083019190915260006040928301819052825160a081018452818152918201529081016003815260126020820152600060409182018190529051610e6f939291908190608590604b90606c90602401611093565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ead9190611046565b600060405180830381855af49150503d8060008114610ee8576040519150601f19603f3d011682016040523d82523d6000602084013e610eed565b606091505b5050905080610efb57600080fd5b50600080546001600160a01b0394851664010000000002640100000000600160c01b0319909116179055600180549284166001600160a01b031993841617905560028054919093169116179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b80356001600160a01b0381168114610b5457600080fd5b600080600060608486031215610f99578283fd5b610fa284610f6e565b9250610fb060208501610f6e565b9150610fbe60408501610f6e565b90509250925092565b600060208284031215610fd8578081fd5b81356001600160e01b031981168114610fef578182fd5b9392505050565b80516001600160a01b0316825260208082015115159083015260408101516006811061101e57fe5b604083015260608181015160ff169083015260809081015168ffffffffffffffffff16910152565b60008251815b81811015611066576020818601810151858301520161104c565b818111156110745782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6101e081016110a2828a610ff6565b6110af60a0830189610ff6565b6001600160a01b039690961661014082015293151561016085015260ff9283166101808501529082166101a0840152166101c0909101529291505056fea26469706673582212203297c764dc6ad3f1b84384a7a27deb87fba8bfa8567881c47a81ca18ac28b6ff64736f6c63430007060033", - "deployedSourceMap": "1056:10103:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11019:43;11029:32;11053:7;;-1:-1:-1;;;;;;11053:7:24;11029:23;:32::i;:::-;11019:9;:43::i;:::-;1056:10103;1216:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1175:35;;;;;;;;;;;;;:::i;1300:39::-;;;;;;;;;;;;;:::i;1520:40::-;;;;;;;;;;;;;:::i;1035:28:63:-;;;;;;;;;;;;;:::i;1471:43:24:-;;;;;;;;;;;;;:::i;1433:32::-;;;;;;;;;;;;;:::i;1601:33::-;;;;;;;;;;;;;:::i;1388:39::-;;;;;;;;;;;;;:::i;1345:37::-;;;;;;;;;;;;;:::i;1640:42::-;;;;;;;;;;;;;:::i;4310:5515::-;;;;;;;;;;-1:-1:-1;4310:5515:24;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;1566:29:24:-;;;;;;;;;;;;;:::i;2718:1426::-;;;;;;;;;;-1:-1:-1;2718:1426:24;;;;;:::i;:::-;;:::i;1252:42::-;;;;;;;;;;;;;:::i;4310:5515::-;4376:7;-1:-1:-1;;;;;;4412:48:24;;-1:-1:-1;;;4412:48:24;;:120;;-1:-1:-1;;;;;;;4476:56:24;;-1:-1:-1;;;4476:56:24;4412:120;:204;;;-1:-1:-1;;;;;;;4548:68:24;;-1:-1:-1;;;4548:68:24;4412:204;:259;;;-1:-1:-1;;;;;;;4632:39:24;;-1:-1:-1;;;4632:39:24;4412:259;4395:5424;;;-1:-1:-1;4703:12:24;4696:19;;4395:5424;-1:-1:-1;;;;;;4749:46:24;;-1:-1:-1;;;4749:46:24;;:106;;-1:-1:-1;;;;;;;4811:44:24;;-1:-1:-1;;;4811:44:24;4749:106;:174;;;-1:-1:-1;;;;;;;4871:52:24;;-1:-1:-1;;;4871:52:24;4749:174;:240;;;-1:-1:-1;;;;;;;4939:50:24;;-1:-1:-1;;;4939:50:24;4749:240;:299;;;-1:-1:-1;;;;;;;5005:43:24;;-1:-1:-1;;;5005:43:24;4749:299;:362;;;-1:-1:-1;;;;;;;5064:47:24;;-1:-1:-1;;;5064:47:24;4749:362;:428;;;-1:-1:-1;;;;;;;5127:50:24;;-1:-1:-1;;;5127:50:24;4749:428;:497;;;-1:-1:-1;;;;;;;5193:53:24;;-1:-1:-1;;;5193:53:24;4749:497;:576;;;-1:-1:-1;;;;;;;5262:63:24;;-1:-1:-1;;;5262:63:24;4749:576;:660;;;-1:-1:-1;;;;;;;5341:68:24;;-1:-1:-1;;;5341:68:24;4749:660;4732:5087;;;-1:-1:-1;5441:14:24;5434:21;;4732:5087;-1:-1:-1;;;;;;5489:52:24;;-1:-1:-1;;;5489:52:24;;:115;;-1:-1:-1;;;;;;;5557:47:24;;-1:-1:-1;;;5557:47:24;5489:115;:169;;;-1:-1:-1;;;;;;;5620:38:24;;-1:-1:-1;;;5620:38:24;5489:169;:228;;;-1:-1:-1;;;;;;;5674:43:24;;-1:-1:-1;;;5674:43:24;5489:228;:286;;;-1:-1:-1;;;;;;;5733:42:24;;-1:-1:-1;;;5733:42:24;5489:286;:352;;;-1:-1:-1;;;;;;;5791:50:24;;-1:-1:-1;;;5791:50:24;5489:352;5472:4347;;;-1:-1:-1;5873:14:24;5866:21;;5472:4347;-1:-1:-1;;;;;;5921:51:24;;-1:-1:-1;;;5921:51:24;;:110;;-1:-1:-1;;;;;;;5988:43:24;;-1:-1:-1;;;5988:43:24;5921:110;:174;;;-1:-1:-1;;;;;;;6047:48:24;;-1:-1:-1;;;6047:48:24;5921:174;:239;;;-1:-1:-1;;;;;;;6111:49:24;;-1:-1:-1;;;6111:49:24;5921:239;:309;;;-1:-1:-1;;;;;;;6176:54:24;;-1:-1:-1;;;6176:54:24;5921:309;:375;;;-1:-1:-1;;;;;;;6246:50:24;;-1:-1:-1;;;6246:50:24;5921:375;:446;;;-1:-1:-1;;;;;;;6312:55:24;;-1:-1:-1;;;6312:55:24;5921:446;:510;;;-1:-1:-1;;;;;;;6383:48:24;;-1:-1:-1;;;6383:48:24;5921:510;:570;;;-1:-1:-1;;;;;;;6447:44:24;;-1:-1:-1;;;6447:44:24;5921:570;:637;;;-1:-1:-1;;;;;;;6507:51:24;;-1:-1:-1;;;6507:51:24;5921:637;:703;;;-1:-1:-1;;;;;;;6574:50:24;;-1:-1:-1;;;6574:50:24;5921:703;5904:3915;;;-1:-1:-1;6656:7:24;6649:14;;5904:3915;-1:-1:-1;;;;;;6697:52:24;;-1:-1:-1;;;6697:52:24;;:125;;-1:-1:-1;;;;;;;6765:57:24;;-1:-1:-1;;;6765:57:24;6697:125;:204;;;-1:-1:-1;;;;;;;6838:63:24;;-1:-1:-1;;;6838:63:24;6697:204;:288;;;-1:-1:-1;;;;;;;6917:68:24;;-1:-1:-1;;;6917:68:24;6697:288;6680:3139;;;-1:-1:-1;7017:18:24;7010:25;;6680:3139;-1:-1:-1;;;;;;7069:49:24;;-1:-1:-1;;;7069:49:24;;:122;;-1:-1:-1;;;;;;;7134:57:24;;-1:-1:-1;;;7134:57:24;7069:122;:198;;;-1:-1:-1;;;;;;;7207:60:24;;-1:-1:-1;;;7207:60:24;7069:198;:282;;;-1:-1:-1;;;;;;;7283:68:24;;-1:-1:-1;;;7283:68:24;7069:282;7052:2767;;;-1:-1:-1;7383:15:24;7376:22;;7052:2767;-1:-1:-1;;;;;;7432:47:24;;-1:-1:-1;;;7432:47:24;;:113;;-1:-1:-1;;;;;;;7495:50:24;;-1:-1:-1;;;7495:50:24;7432:113;7415:2404;;;-1:-1:-1;7577:17:24;7570:24;;7415:2404;-1:-1:-1;;;;;;7628:47:24;;-1:-1:-1;;;7628:47:24;;:113;;-1:-1:-1;;;;;;;7691:50:24;;-1:-1:-1;;;7691:50:24;7628:113;:179;;;-1:-1:-1;;;;;;;7757:50:24;;-1:-1:-1;;;7757:50:24;7628:179;:245;;;-1:-1:-1;;;;;;;7823:50:24;;-1:-1:-1;;;7823:50:24;7628:245;:309;;;-1:-1:-1;;;;;;;7889:48:24;;-1:-1:-1;;;7889:48:24;7628:309;:377;;;-1:-1:-1;;;;;;;7953:52:24;;-1:-1:-1;;;7953:52:24;7628:377;:442;;;-1:-1:-1;;;;;;;8021:49:24;;-1:-1:-1;;;8021:49:24;7628:442;:520;;;-1:-1:-1;;;;;;;8086:62:24;;-1:-1:-1;;;8086:62:24;7628:520;:597;;;-1:-1:-1;;;;;;;8164:61:24;;-1:-1:-1;;;8164:61:24;7628:597;:671;;;-1:-1:-1;;;;;;;8241:58:24;;-1:-1:-1;;;8241:58:24;7628:671;:752;;;-1:-1:-1;;;;;;;8315:65:24;;-1:-1:-1;;;8315:65:24;7628:752;:834;;;-1:-1:-1;;;;;;;8396:66:24;;-1:-1:-1;;;8396:66:24;7628:834;:913;;;-1:-1:-1;;;;;;;8478:63:24;;-1:-1:-1;;;8478:63:24;7628:913;:996;;;-1:-1:-1;;;;;;;8557:67:24;;-1:-1:-1;;;8557:67:24;7628:996;:1061;;;-1:-1:-1;;;;;;;8640:49:24;;-1:-1:-1;;;8640:49:24;7628:1061;:1116;;;-1:-1:-1;;;;;;;8705:39:24;;-1:-1:-1;;;8705:39:24;7628:1116;:1178;;;-1:-1:-1;;;;;;;8760:46:24;;-1:-1:-1;;;8760:46:24;7628:1178;7611:2208;;;-1:-1:-1;8838:10:24;8831:17;;7611:2208;-1:-1:-1;;;;;;8882:53:24;;-1:-1:-1;;;8882:53:24;;:127;;-1:-1:-1;;;;;;;8951:58:24;;-1:-1:-1;;;8951:58:24;8882:127;:194;;;-1:-1:-1;;;;;;;9025:51:24;;-1:-1:-1;;;9025:51:24;8882:194;:259;;;-1:-1:-1;;;;;;;9092:49:24;;-1:-1:-1;;;9092:49:24;8882:259;:329;;;-1:-1:-1;;;;;;;9157:54:24;;-1:-1:-1;;;9157:54:24;8882:329;8865:954;;;-1:-1:-1;9243:8:24;9236:15;;8865:954;-1:-1:-1;;;;;;9285:59:24;;-1:-1:-1;;;9285:59:24;;:141;;-1:-1:-1;;;;;;;9360:66:24;;-1:-1:-1;;;9360:66:24;9285:141;:223;;;-1:-1:-1;;;;;;;9442:66:24;;-1:-1:-1;;;9442:66:24;9285:223;:304;;;-1:-1:-1;;;;;;;9524:65:24;;-1:-1:-1;;;9524:65:24;9285:304;9268:551;;;-1:-1:-1;9621:17:24;9614:24;;9268:551;-1:-1:-1;9803:5:24;9268:551;4310:5515;;;:::o;10005:970::-;10390:14;10387:1;10384;10371:34;10604:1;10601;10585:14;10582:1;10566:14;10559:5;10546:60;10680:16;10677:1;10674;10659:38;10718:6;10793:74;;;;10924:16;10921:1;10914:27;10793:74;10832:16;10829:1;10822:27;1216:30;;;:::o;1175:35::-;;;:::o;1300:39::-;;;:::o;1520:40::-;;;:::o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;1471:43:24:-;;;:::o;1433:32::-;;;:::o;1601:33::-;;;:::o;1388:39::-;;;:::o;1345:37::-;;;:::o;1640:42::-;;;:::o;920:26:63:-;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;1566:29:24:-;;;:::o;2718:1426::-;2880:10;-1:-1:-1;;;;;2894:8:24;2880:22;;:41;;;;-1:-1:-1;2907:14:24;;;;;;;2906:15;2880:41;2872:50;;;;;;3056:5;:18;;-1:-1:-1;;;;;;3056:18:24;3064:10;3056:18;;;;;3432:75;;;;;;;;-1:-1:-1;;;;;3445:4:24;3432:75;;;;;;;;;;3284:10;3276:32;;-1:-1:-1;;;3370:40:24;3432:75;;;3458:14;3432:75;;217:1:60;3432:75:24;;;;;;;;-1:-1:-1;3432:75:24;;;;;;;3579:81;;;;;;;;;;;;;;;;;3611:15;3579:81;;659:2:60;3579:81:24;;;;-1:-1:-1;3579:81:24;;;;;;;3326:564;;;;;;-1:-1:-1;;;3741:3:24;;3801:2;;3841:3;;3326:564;;;:::i;:::-;;;;-1:-1:-1;;3326:564:24;;;;;;;;;;;;;;-1:-1:-1;;;;;3326:564:24;-1:-1:-1;;;;;;3326:564:24;;;;;;;;;;3276:628;;;;3326:564;3276:628;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3246:658;;;3922:6;3914:15;;;;;;-1:-1:-1;3940:5:24;:14;;-1:-1:-1;;;;;3940:14:24;;;;;-1:-1:-1;;;;;;3940:14:24;;;;;;-1:-1:-1;4038:26:24;;;;;-1:-1:-1;;;;;;4038:26:24;;;;;;4074:13;:30;;;;;;;;;;;2718:1426::o;1252:42::-;;;:::o;14:175:168:-;84:20;;-1:-1:-1;;;;;133:31:168;;123:42;;113:2;;179:1;176;169:12;194:350;;;;340:2;328:9;319:7;315:23;311:32;308:2;;;361:6;353;346:22;308:2;389:31;410:9;389:31;:::i;:::-;379:41;;439:40;475:2;464:9;460:18;439:40;:::i;:::-;429:50;;498:40;534:2;523:9;519:18;498:40;:::i;:::-;488:50;;298:246;;;;;:::o;549:306::-;;660:2;648:9;639:7;635:23;631:32;628:2;;;681:6;673;666:22;628:2;712:23;;-1:-1:-1;;;;;;764:32:168;;754:43;;744:2;;816:6;808;801:22;744:2;844:5;618:237;-1:-1:-1;;;618:237:168:o;860:498::-;945:12;;-1:-1:-1;;;;;941:38:168;929:51;;1043:4;1032:16;;;1026:23;1019:31;1012:39;996:14;;;989:63;1098:4;1087:16;;1081:23;1140:1;1123:19;;1113:2;;1146:9;1113:2;1182:4;1173:14;;1166:36;1255:4;1244:16;;;1238:23;1263:4;1234:34;1218:14;;;1211:58;1322:4;1311:16;;;1305:23;1330:20;1301:50;1285:14;;1278:74;919:439::o;1363:430::-;;1530:6;1524:13;1555:3;1567:129;1581:6;1578:1;1575:13;1567:129;;;1679:4;1663:14;;;1659:25;;1653:32;1640:11;;;1633:53;1596:12;1567:129;;;1714:6;1711:1;1708:13;1705:2;;;1749:3;1740:6;1735:3;1731:16;1724:29;1705:2;-1:-1:-1;1771:16:168;;;;;1500:293;-1:-1:-1;;1500:293:168:o;1798:203::-;-1:-1:-1;;;;;1962:32:168;;;;1944:51;;1932:2;1917:18;;1899:102::o;2006:896::-;2465:3;2450:19;;2478:52;2454:9;2512:6;2478:52;:::i;:::-;2539:62;2596:3;2585:9;2581:19;2573:6;2539:62;:::i;:::-;-1:-1:-1;;;;;2638:32:168;;;;2632:3;2617:19;;2610:61;2715:14;;2708:22;2702:3;2687:19;;2680:51;2780:4;2768:17;;;2762:3;2747:19;;2740:46;2823:17;;;2817:3;2802:19;;2795:46;2878:17;2872:3;2857:19;;;2850:46;2432:470;;-1:-1:-1;;2432:470:168:o", - "language": "Solidity", - "natspec": { - "kind": "dev", - "methods": { - "getRouterImplementation(bytes4)": { - "notice": "Returns the implementation contract for the method signature", - "params": { - "sig": "method signature to call" - }, - "returns": { - "_0": "implementation address" - } - } - }, - "notice": "Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing contracts. This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a new Router with the new hardcoded addresses will then be deployed and upgraded into place.", - "version": 1 - }, - "offset": [ - 1056, - 11159 - ], - "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xFE JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6009B8E6 GT PUSH2 0x95 JUMPI DUP1 PUSH4 0x82463367 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x23A JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xA1B4D011 EQ PUSH2 0x264 JUMPI DUP1 PUSH4 0xC0C53B8B EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xDCC1A738 EQ PUSH2 0x299 JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0x6009B8E6 EQ PUSH2 0x1DB JUMPI DUP1 PUSH4 0x6D7CDBBF EQ PUSH2 0x1F0 JUMPI DUP1 PUSH4 0x72D27134 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0x76E1DF48 EQ PUSH2 0x21A JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0x24A3D622 GT PUSH2 0xD1 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x187 JUMPI DUP1 PUSH4 0x2BE75895 EQ PUSH2 0x19C JUMPI DUP1 PUSH4 0x2D255471 EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x2D2C5565 EQ PUSH2 0x1C6 JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0xC4E7935 EQ PUSH2 0x11D JUMPI DUP1 PUSH4 0x14627834 EQ PUSH2 0x148 JUMPI DUP1 PUSH4 0x15BEEB93 EQ PUSH2 0x15D JUMPI DUP1 PUSH4 0x206109B5 EQ PUSH2 0x172 JUMPI JUMPDEST PUSH2 0x11B PUSH2 0x116 PUSH1 0x0 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND PUSH2 0x2AE JUMP JUMPDEST PUSH2 0xB59 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x129 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xB7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x13F SWAP2 SWAP1 PUSH2 0x107F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x154 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBA1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x169 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBC5 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBE9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x193 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC0D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1A8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC1C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC40 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC64 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC88 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCAC JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCD0 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x226 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0x235 CALLDATASIZE PUSH1 0x4 PUSH2 0xFC7 JUMP JUMPDEST PUSH2 0x2AE JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x246 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCF4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x25B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xD03 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x270 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xD1A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x285 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x11B PUSH2 0x294 CALLDATASIZE PUSH1 0x4 PUSH2 0xF85 JUMP JUMPDEST PUSH2 0xD3E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xF4A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x37351953 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0x2DF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x276B64B PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x2FA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5950D8E9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x315 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x541F527 PUSH1 0xE4 SHL EQ JUMPDEST ISZERO PUSH2 0x341 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6A96E86F PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x370 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA78DBFFF PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x38B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7DB31AB9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x3A6 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x184E0053 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x3C1 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x18AE40D7 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x3DC JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x44253849 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x3F7 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6D6503D3 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x412 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5C1D975 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x42D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1A05BCE1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x448 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x3B2987B3 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x474 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2890FB65 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x4A3 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xB8A69455 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x4BD JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH3 0x5E665D PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x4D8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xF667F897 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x4F3 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x66890643 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x50E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9C97945 PUSH1 0xE4 SHL EQ JUMPDEST ISZERO PUSH2 0x53A JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1FFC9A7 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x568 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH3 0x7EEAC7 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x583 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x13849CFD PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x59E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFAC8F09 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x5B9 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x81A86855 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x5D4 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x79212195 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x5EF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1759616B PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x60A JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7F4D701 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x625 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE6B43B9 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x640 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA22CB465 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x65B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE985E9C5 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x687 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2D10E6EB PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x6B6 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6633AF39 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x6D1 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE3E7CB4F PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x6EC JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9A600EEB PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x718 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1FF7AEFD PUSH1 0xE2 SHL EQ DUP1 PUSH2 0x747 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE816469D PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x762 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFB281D9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x77D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFA37E395 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x7A9 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x3438193 PUSH1 0xE6 SHL EQ DUP1 PUSH2 0x7D8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5DB6EAC7 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0x804 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7ABAF271 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0x833 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE31051A1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x84E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA11A4293 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x869 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5284765 PUSH1 0xE5 SHL EQ JUMPDEST DUP1 PUSH2 0x884 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x315CB2B9 PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x89F JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2C90B94D PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x8BA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9CE3C19 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x8D5 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x54EBDE29 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x8F0 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x98DCBC23 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x90B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x33EABD1D PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x926 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x413F2C5F PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x941 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xD0DA867 PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x95C JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x353ABC5D PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x977 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFA17B5F1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x992 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x113AA8B1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x9AD JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1B2CE7F3 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x9C8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x278F7943 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0x9F4 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7D6DBFF7 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0xA23 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6D7A00EB PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xA3E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7F23D4F9 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0xA59 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x239CEC8F PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0xA74 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x12ADC47B PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0xAA0 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6A09A2A3 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0xACF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x8355E895 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xAEA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x94614DF PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xB05 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x4BEB6D97 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0xB31 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST POP PUSH32 0x0 JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST CALLDATASIZE PUSH1 0x0 DUP1 CALLDATACOPY PUSH1 0x0 DUP1 CALLDATASIZE PUSH1 0x0 DUP5 GAS DELEGATECALL RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY DUP1 DUP1 ISZERO PUSH2 0xB78 JUMPI RETURNDATASIZE PUSH1 0x0 RETURN JUMPDEST RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND EQ DUP1 ISZERO PUSH2 0xD80 JUMPI POP PUSH1 0x0 SLOAD PUSH4 0x1000000 SWAP1 DIV PUSH1 0xFF AND ISZERO JUMPDEST PUSH2 0xD89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH5 0x100000000 PUSH1 0x1 PUSH1 0xC0 SHL SUB NOT AND CALLER PUSH5 0x100000000 MUL OR DUP2 SSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP5 SWAP1 MSTORE PUSH32 0x0 AND SWAP2 PUSH4 0x7ABAF271 PUSH1 0xE1 SHL SWAP2 SWAP1 DUP2 ADD PUSH1 0x2 DUP2 MSTORE PUSH1 0x8 PUSH1 0x20 DUP1 DUP4 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x0 PUSH1 0x40 SWAP3 DUP4 ADD DUP2 SWAP1 MSTORE DUP3 MLOAD PUSH1 0xA0 DUP2 ADD DUP5 MSTORE DUP2 DUP2 MSTORE SWAP2 DUP3 ADD MSTORE SWAP1 DUP2 ADD PUSH1 0x3 DUP2 MSTORE PUSH1 0x12 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH1 0x40 SWAP2 DUP3 ADD DUP2 SWAP1 MSTORE SWAP1 MLOAD PUSH2 0xE6F SWAP4 SWAP3 SWAP2 SWAP1 DUP2 SWAP1 PUSH1 0x85 SWAP1 PUSH1 0x4B SWAP1 PUSH1 0x6C SWAP1 PUSH1 0x24 ADD PUSH2 0x1093 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 DUP2 MSTORE PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT SWAP1 SWAP5 AND SWAP4 SWAP1 SWAP4 OR SWAP1 SWAP3 MSTORE SWAP1 MLOAD PUSH2 0xEAD SWAP2 SWAP1 PUSH2 0x1046 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xEE8 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xEED JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0xEFB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND PUSH5 0x100000000 MUL PUSH5 0x100000000 PUSH1 0x1 PUSH1 0xC0 SHL SUB NOT SWAP1 SWAP2 AND OR SWAP1 SSTORE PUSH1 0x1 DUP1 SLOAD SWAP3 DUP5 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT SWAP4 DUP5 AND OR SWAP1 SSTORE PUSH1 0x2 DUP1 SLOAD SWAP2 SWAP1 SWAP4 AND SWAP2 AND OR SWAP1 SSTORE JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xB54 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xF99 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0xFA2 DUP5 PUSH2 0xF6E JUMP JUMPDEST SWAP3 POP PUSH2 0xFB0 PUSH1 0x20 DUP6 ADD PUSH2 0xF6E JUMP JUMPDEST SWAP2 POP PUSH2 0xFBE PUSH1 0x40 DUP6 ADD PUSH2 0xF6E JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xFD8 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0xFEF JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP3 MSTORE PUSH1 0x20 DUP1 DUP3 ADD MLOAD ISZERO ISZERO SWAP1 DUP4 ADD MSTORE PUSH1 0x40 DUP2 ADD MLOAD PUSH1 0x6 DUP2 LT PUSH2 0x101E JUMPI INVALID JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP2 DUP2 ADD MLOAD PUSH1 0xFF AND SWAP1 DUP4 ADD MSTORE PUSH1 0x80 SWAP1 DUP2 ADD MLOAD PUSH9 0xFFFFFFFFFFFFFFFFFF AND SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD DUP2 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1066 JUMPI PUSH1 0x20 DUP2 DUP7 ADD DUP2 ADD MLOAD DUP6 DUP4 ADD MSTORE ADD PUSH2 0x104C JUMP JUMPDEST DUP2 DUP2 GT ISZERO PUSH2 0x1074 JUMPI DUP3 DUP3 DUP6 ADD MSTORE JUMPDEST POP SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH2 0x1E0 DUP2 ADD PUSH2 0x10A2 DUP3 DUP11 PUSH2 0xFF6 JUMP JUMPDEST PUSH2 0x10AF PUSH1 0xA0 DUP4 ADD DUP10 PUSH2 0xFF6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP7 SWAP1 SWAP7 AND PUSH2 0x140 DUP3 ADD MSTORE SWAP4 ISZERO ISZERO PUSH2 0x160 DUP6 ADD MSTORE PUSH1 0xFF SWAP3 DUP4 AND PUSH2 0x180 DUP6 ADD MSTORE SWAP1 DUP3 AND PUSH2 0x1A0 DUP5 ADD MSTORE AND PUSH2 0x1C0 SWAP1 SWAP2 ADD MSTORE SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 ORIGIN SWAP8 0xC7 PUSH5 0xDC6AD3F1B8 NUMBER DUP5 0xA7 LOG2 PUSH30 0xEB87FBA8BFA8567881C47A81CA18AC28B6FF64736F6C6343000706003300 ", - "pcMap": { - "0": { - "offset": [ - 1056, - 11159 - ], - "op": "PUSH1", - "path": "24", - "value": "0x80" - }, - "2": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "4": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "MSTORE", - "path": "24" - }, - "5": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH1", - "path": "24", - "value": "0x4" - }, - "7": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "CALLDATASIZE", - "path": "24" - }, - "8": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "LT", - "path": "24" - }, - "9": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0xFE" - }, - "12": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "13": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "15": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "CALLDATALOAD", - "path": "24" - }, - "16": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH1", - "path": "24", - "value": "0xE0" - }, - "18": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "SHR", - "path": "24" - }, - "19": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "20": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x6009B8E6" - }, - "25": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "GT", - "path": "24" - }, - "26": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x95" - }, - "29": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "30": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "31": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x82463367" - }, - "36": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "GT", - "path": "24" - }, - "37": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x64" - }, - "40": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "41": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "42": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x82463367" - }, - "47": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "48": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x23A" - }, - "51": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "52": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "53": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x8DA5CB5B" - }, - "58": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "59": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x24F" - }, - "62": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "63": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "64": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0xA1B4D011" - }, - "69": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "70": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x264" - }, - "73": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "74": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "75": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0xC0C53B8B" - }, - "80": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "81": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x279" - }, - "84": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "85": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "86": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0xDCC1A738" - }, - "91": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "92": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x299" - }, - "95": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "96": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0xFE" - }, - "99": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMP", - "path": "24" - }, - "100": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPDEST", - "path": "24" - }, - "101": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "102": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x6009B8E6" - }, - "107": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "108": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1DB" - }, - "111": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "112": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "113": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x6D7CDBBF" - }, - "118": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "119": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1F0" - }, - "122": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "123": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "124": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x72D27134" - }, - "129": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "130": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x205" - }, - "133": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "134": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "135": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x76E1DF48" - }, - "140": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "141": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x21A" - }, - "144": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "145": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0xFE" - }, - "148": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMP", - "path": "24" - }, - "149": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPDEST", - "path": "24" - }, - "150": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "151": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x24A3D622" - }, - "156": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "GT", - "path": "24" - }, - "157": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0xD1" - }, - "160": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "161": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "162": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x24A3D622" - }, - "167": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "168": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x187" - }, - "171": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "172": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "173": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x2BE75895" - }, - "178": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "179": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x19C" - }, - "182": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "183": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "184": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x2D255471" - }, - "189": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "190": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1B1" - }, - "193": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "194": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "195": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x2D2C5565" - }, - "200": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "201": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1C6" - }, - "204": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "205": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0xFE" - }, - "208": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMP", - "path": "24" - }, - "209": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPDEST", - "path": "24" - }, - "210": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "211": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0xC4E7935" - }, - "216": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "217": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x11D" - }, - "220": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "221": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "222": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x14627834" - }, - "227": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "228": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x148" - }, - "231": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "232": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "233": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x15BEEB93" - }, - "238": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "239": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x15D" - }, - "242": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "243": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "DUP1", - "path": "24" - }, - "244": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH4", - "path": "24", - "value": "0x206109B5" - }, - "249": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "EQ", - "path": "24" - }, - "250": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "PUSH2", - "path": "24", - "value": "0x172" - }, - "253": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPI", - "path": "24" - }, - "254": { - "fn": null, - "offset": [ - 1056, - 11159 - ], - "op": "JUMPDEST", - "path": "24" - }, - "255": { - "fn": "Router.", - "offset": [ - 11019, - 11062 - ], - "op": "PUSH2", - "path": "24", - "statement": 0, - "value": "0x11B" - }, - "258": { - "fn": "Router.", - "offset": [ - 11029, - 11061 - ], - "op": "PUSH2", - "path": "24", - "value": "0x116" - }, - "261": { - "fn": "Router.", - "offset": [ - 11053, - 11060 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "263": { - "fn": "Router.", - "offset": [ - 11053, - 11060 - ], - "op": "CALLDATALOAD", - "path": "24" - }, - "264": { - "op": "PUSH1", - "value": "0x1" - }, - "266": { - "op": "PUSH1", - "value": "0x1" - }, - "268": { - "op": "PUSH1", - "value": "0xE0" - }, - "270": { - "op": "SHL" - }, - "271": { - "op": "SUB" - }, - "272": { - "op": "NOT" - }, - "273": { - "fn": "Router.", - "offset": [ - 11053, - 11060 - ], - "op": "AND", - "path": "24" - }, - "274": { - "fn": "Router.", - "offset": [ - 11029, - 11052 - ], - "op": "PUSH2", - "path": "24", - "value": "0x2AE" - }, - "277": { - "fn": "Router.", - "jump": "i", - "offset": [ - 11029, - 11061 - ], - "op": "JUMP", - "path": "24" - }, - "278": { - "fn": "Router.", - "offset": [ - 11029, - 11061 - ], - "op": "JUMPDEST", - "path": "24" - }, - "279": { - "fn": "Router.", - "offset": [ - 11019, - 11028 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB59" - }, - "282": { - "fn": "Router.", - "jump": "i", - "offset": [ - 11019, - 11062 - ], - "op": "JUMP", - "path": "24" - }, - "283": { - "fn": "Router.", - "offset": [ - 11019, - 11062 - ], - "op": "JUMPDEST", - "path": "24" - }, - "284": { - "offset": [ - 1056, - 11159 - ], - "op": "STOP", - "path": "24" - }, - "285": { - "offset": [ - 1216, - 1246 - ], - "op": "JUMPDEST", - "path": "24" - }, - "286": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "CALLVALUE", - "path": "24" - }, - "287": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "DUP1", - "path": "24" - }, - "288": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "ISZERO", - "path": "24" - }, - "289": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH2", - "path": "24", - "value": "0x129" - }, - "292": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "JUMPI", - "path": "24" - }, - "293": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "295": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "DUP1", - "path": "24" - }, - "296": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "REVERT", - "path": "24" - }, - "297": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "JUMPDEST", - "path": "24" - }, - "298": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "POP", - "path": "24" - }, - "299": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "302": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB7D" - }, - "305": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1216, - 1246 - ], - "op": "JUMP", - "path": "24" - }, - "306": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "JUMPDEST", - "path": "24" - }, - "307": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "309": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "MLOAD", - "path": "24" - }, - "310": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH2", - "path": "24", - "value": "0x13F" - }, - "313": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "SWAP2", - "path": "24" - }, - "314": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "SWAP1", - "path": "24" - }, - "315": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH2", - "path": "24", - "value": "0x107F" - }, - "318": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1216, - 1246 - ], - "op": "JUMP", - "path": "24" - }, - "319": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "JUMPDEST", - "path": "24" - }, - "320": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "322": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "MLOAD", - "path": "24" - }, - "323": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "DUP1", - "path": "24" - }, - "324": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "SWAP2", - "path": "24" - }, - "325": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "SUB", - "path": "24" - }, - "326": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "SWAP1", - "path": "24" - }, - "327": { - "fn": "Router.", - "offset": [ - 1216, - 1246 - ], - "op": "RETURN", - "path": "24" - }, - "328": { - "offset": [ - 1175, - 1210 - ], - "op": "JUMPDEST", - "path": "24" - }, - "329": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "CALLVALUE", - "path": "24" - }, - "330": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "DUP1", - "path": "24" - }, - "331": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "ISZERO", - "path": "24" - }, - "332": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "PUSH2", - "path": "24", - "value": "0x154" - }, - "335": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "JUMPI", - "path": "24" - }, - "336": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "338": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "DUP1", - "path": "24" - }, - "339": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "REVERT", - "path": "24" - }, - "340": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "JUMPDEST", - "path": "24" - }, - "341": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "POP", - "path": "24" - }, - "342": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "345": { - "fn": "Router.", - "offset": [ - 1175, - 1210 - ], - "op": "PUSH2", - "path": "24", - "value": "0xBA1" - }, - "348": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1175, - 1210 - ], - "op": "JUMP", - "path": "24" - }, - "349": { - "offset": [ - 1300, - 1339 - ], - "op": "JUMPDEST", - "path": "24" - }, - "350": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "CALLVALUE", - "path": "24" - }, - "351": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "DUP1", - "path": "24" - }, - "352": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "ISZERO", - "path": "24" - }, - "353": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "PUSH2", - "path": "24", - "value": "0x169" - }, - "356": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "JUMPI", - "path": "24" - }, - "357": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "359": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "DUP1", - "path": "24" - }, - "360": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "REVERT", - "path": "24" - }, - "361": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "JUMPDEST", - "path": "24" - }, - "362": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "POP", - "path": "24" - }, - "363": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "366": { - "fn": "Router.", - "offset": [ - 1300, - 1339 - ], - "op": "PUSH2", - "path": "24", - "value": "0xBC5" - }, - "369": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1300, - 1339 - ], - "op": "JUMP", - "path": "24" - }, - "370": { - "offset": [ - 1520, - 1560 - ], - "op": "JUMPDEST", - "path": "24" - }, - "371": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "CALLVALUE", - "path": "24" - }, - "372": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "DUP1", - "path": "24" - }, - "373": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "ISZERO", - "path": "24" - }, - "374": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "PUSH2", - "path": "24", - "value": "0x17E" - }, - "377": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "JUMPI", - "path": "24" - }, - "378": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "380": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "DUP1", - "path": "24" - }, - "381": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "REVERT", - "path": "24" - }, - "382": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "JUMPDEST", - "path": "24" - }, - "383": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "POP", - "path": "24" - }, - "384": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "387": { - "fn": "Router.", - "offset": [ - 1520, - 1560 - ], - "op": "PUSH2", - "path": "24", - "value": "0xBE9" - }, - "390": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1520, - 1560 - ], - "op": "JUMP", - "path": "24" - }, - "391": { - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "392": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "CALLVALUE", - "path": "63" - }, - "393": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "394": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "ISZERO", - "path": "63" - }, - "395": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x193" - }, - "398": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPI", - "path": "63" - }, - "399": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "401": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "DUP1", - "path": "63" - }, - "402": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "REVERT", - "path": "63" - }, - "403": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "404": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "POP", - "path": "63" - }, - "405": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0x132" - }, - "408": { - "fn": "Router.", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH2", - "path": "63", - "value": "0xC0D" - }, - "411": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "412": { - "offset": [ - 1471, - 1514 - ], - "op": "JUMPDEST", - "path": "24" - }, - "413": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "CALLVALUE", - "path": "24" - }, - "414": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "DUP1", - "path": "24" - }, - "415": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "ISZERO", - "path": "24" - }, - "416": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1A8" - }, - "419": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "JUMPI", - "path": "24" - }, - "420": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "422": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "DUP1", - "path": "24" - }, - "423": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "REVERT", - "path": "24" - }, - "424": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "JUMPDEST", - "path": "24" - }, - "425": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "POP", - "path": "24" - }, - "426": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "429": { - "fn": "Router.", - "offset": [ - 1471, - 1514 - ], - "op": "PUSH2", - "path": "24", - "value": "0xC1C" - }, - "432": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1471, - 1514 - ], - "op": "JUMP", - "path": "24" - }, - "433": { - "offset": [ - 1433, - 1465 - ], - "op": "JUMPDEST", - "path": "24" - }, - "434": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "CALLVALUE", - "path": "24" - }, - "435": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "DUP1", - "path": "24" - }, - "436": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "ISZERO", - "path": "24" - }, - "437": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1BD" - }, - "440": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "JUMPI", - "path": "24" - }, - "441": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "443": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "DUP1", - "path": "24" - }, - "444": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "REVERT", - "path": "24" - }, - "445": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "JUMPDEST", - "path": "24" - }, - "446": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "POP", - "path": "24" - }, - "447": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "450": { - "fn": "Router.", - "offset": [ - 1433, - 1465 - ], - "op": "PUSH2", - "path": "24", - "value": "0xC40" - }, - "453": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1433, - 1465 - ], - "op": "JUMP", - "path": "24" - }, - "454": { - "offset": [ - 1601, - 1634 - ], - "op": "JUMPDEST", - "path": "24" - }, - "455": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "CALLVALUE", - "path": "24" - }, - "456": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "DUP1", - "path": "24" - }, - "457": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "ISZERO", - "path": "24" - }, - "458": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1D2" - }, - "461": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "JUMPI", - "path": "24" - }, - "462": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "464": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "DUP1", - "path": "24" - }, - "465": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "REVERT", - "path": "24" - }, - "466": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "JUMPDEST", - "path": "24" - }, - "467": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "POP", - "path": "24" - }, - "468": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "471": { - "fn": "Router.", - "offset": [ - 1601, - 1634 - ], - "op": "PUSH2", - "path": "24", - "value": "0xC64" - }, - "474": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1601, - 1634 - ], - "op": "JUMP", - "path": "24" - }, - "475": { - "offset": [ - 1388, - 1427 - ], - "op": "JUMPDEST", - "path": "24" - }, - "476": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "CALLVALUE", - "path": "24" - }, - "477": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "DUP1", - "path": "24" - }, - "478": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "ISZERO", - "path": "24" - }, - "479": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1E7" - }, - "482": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "JUMPI", - "path": "24" - }, - "483": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "485": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "DUP1", - "path": "24" - }, - "486": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "REVERT", - "path": "24" - }, - "487": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "JUMPDEST", - "path": "24" - }, - "488": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "POP", - "path": "24" - }, - "489": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "492": { - "fn": "Router.", - "offset": [ - 1388, - 1427 - ], - "op": "PUSH2", - "path": "24", - "value": "0xC88" - }, - "495": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1388, - 1427 - ], - "op": "JUMP", - "path": "24" - }, - "496": { - "offset": [ - 1345, - 1382 - ], - "op": "JUMPDEST", - "path": "24" - }, - "497": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "CALLVALUE", - "path": "24" - }, - "498": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "DUP1", - "path": "24" - }, - "499": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "ISZERO", - "path": "24" - }, - "500": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1FC" - }, - "503": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "JUMPI", - "path": "24" - }, - "504": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "506": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "DUP1", - "path": "24" - }, - "507": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "REVERT", - "path": "24" - }, - "508": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "JUMPDEST", - "path": "24" - }, - "509": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "POP", - "path": "24" - }, - "510": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "513": { - "fn": "Router.", - "offset": [ - 1345, - 1382 - ], - "op": "PUSH2", - "path": "24", - "value": "0xCAC" - }, - "516": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1345, - 1382 - ], - "op": "JUMP", - "path": "24" - }, - "517": { - "offset": [ - 1640, - 1682 - ], - "op": "JUMPDEST", - "path": "24" - }, - "518": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "CALLVALUE", - "path": "24" - }, - "519": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "DUP1", - "path": "24" - }, - "520": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "ISZERO", - "path": "24" - }, - "521": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "PUSH2", - "path": "24", - "value": "0x211" - }, - "524": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "JUMPI", - "path": "24" - }, - "525": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "527": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "DUP1", - "path": "24" - }, - "528": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "REVERT", - "path": "24" - }, - "529": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "JUMPDEST", - "path": "24" - }, - "530": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "POP", - "path": "24" - }, - "531": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "534": { - "fn": "Router.", - "offset": [ - 1640, - 1682 - ], - "op": "PUSH2", - "path": "24", - "value": "0xCD0" - }, - "537": { - "fn": "Router.", - "jump": "i", - "offset": [ - 1640, - 1682 - ], - "op": "JUMP", - "path": "24" - }, - "538": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "JUMPDEST", - "path": "24" - }, - "539": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "CALLVALUE", - "path": "24" - }, - "540": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "DUP1", - "path": "24" - }, - "541": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "ISZERO", - "path": "24" - }, - "542": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH2", - "path": "24", - "value": "0x226" - }, - "545": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "JUMPI", - "path": "24" - }, - "546": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "548": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "DUP1", - "path": "24" - }, - "549": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "REVERT", - "path": "24" - }, - "550": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "JUMPDEST", - "path": "24" - }, - "551": { - "op": "POP" - }, - "552": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "555": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH2", - "path": "24", - "value": "0x235" - }, - "558": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "CALLDATASIZE", - "path": "24" - }, - "559": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH1", - "path": "24", - "value": "0x4" - }, - "561": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH2", - "path": "24", - "value": "0xFC7" - }, - "564": { - "fn": "Router.getRouterImplementation", - "jump": "i", - "offset": [ - 4310, - 9825 - ], - "op": "JUMP", - "path": "24" - }, - "565": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "JUMPDEST", - "path": "24" - }, - "566": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "PUSH2", - "path": "24", - "value": "0x2AE" - }, - "569": { - "fn": "Router.getRouterImplementation", - "jump": "i", - "offset": [ - 4310, - 9825 - ], - "op": "JUMP", - "path": "24" - }, - "570": { - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "571": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "CALLVALUE", - "path": "63" - }, - "572": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "DUP1", - "path": "63" - }, - "573": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "ISZERO", - "path": "63" - }, - "574": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x246" - }, - "577": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "JUMPI", - "path": "63" - }, - "578": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "580": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "DUP1", - "path": "63" - }, - "581": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "REVERT", - "path": "63" - }, - "582": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "583": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "POP", - "path": "63" - }, - "584": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0x132" - }, - "587": { - "fn": "Router.getRouterImplementation", - "offset": [ - 920, - 946 - ], - "op": "PUSH2", - "path": "63", - "value": "0xCF4" - }, - "590": { - "fn": "Router.getRouterImplementation", - "jump": "i", - "offset": [ - 920, - 946 - ], - "op": "JUMP", - "path": "63" - }, - "591": { - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "592": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "CALLVALUE", - "path": "63" - }, - "593": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "DUP1", - "path": "63" - }, - "594": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "ISZERO", - "path": "63" - }, - "595": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x25B" - }, - "598": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "JUMPI", - "path": "63" - }, - "599": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "601": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "DUP1", - "path": "63" - }, - "602": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "REVERT", - "path": "63" - }, - "603": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "604": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "POP", - "path": "63" - }, - "605": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0x132" - }, - "608": { - "fn": "Router.getRouterImplementation", - "offset": [ - 811, - 831 - ], - "op": "PUSH2", - "path": "63", - "value": "0xD03" - }, - "611": { - "fn": "Router.getRouterImplementation", - "jump": "i", - "offset": [ - 811, - 831 - ], - "op": "JUMP", - "path": "63" - }, - "612": { - "offset": [ - 1566, - 1595 - ], - "op": "JUMPDEST", - "path": "24" - }, - "613": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "CALLVALUE", - "path": "24" - }, - "614": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "DUP1", - "path": "24" - }, - "615": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "ISZERO", - "path": "24" - }, - "616": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "PUSH2", - "path": "24", - "value": "0x270" - }, - "619": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "JUMPI", - "path": "24" - }, - "620": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "622": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "DUP1", - "path": "24" - }, - "623": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "REVERT", - "path": "24" - }, - "624": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "JUMPDEST", - "path": "24" - }, - "625": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "POP", - "path": "24" - }, - "626": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "629": { - "fn": "Router.getRouterImplementation", - "offset": [ - 1566, - 1595 - ], - "op": "PUSH2", - "path": "24", - "value": "0xD1A" - }, - "632": { - "fn": "Router.getRouterImplementation", - "jump": "i", - "offset": [ - 1566, - 1595 - ], - "op": "JUMP", - "path": "24" - }, - "633": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "JUMPDEST", - "path": "24" - }, - "634": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "CALLVALUE", - "path": "24" - }, - "635": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "DUP1", - "path": "24" - }, - "636": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "ISZERO", - "path": "24" - }, - "637": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH2", - "path": "24", - "value": "0x285" - }, - "640": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "JUMPI", - "path": "24" - }, - "641": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "643": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "DUP1", - "path": "24" - }, - "644": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "REVERT", - "path": "24" - }, - "645": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "JUMPDEST", - "path": "24" - }, - "646": { - "op": "POP" - }, - "647": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH2", - "path": "24", - "value": "0x11B" - }, - "650": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH2", - "path": "24", - "value": "0x294" - }, - "653": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "CALLDATASIZE", - "path": "24" - }, - "654": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH1", - "path": "24", - "value": "0x4" - }, - "656": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH2", - "path": "24", - "value": "0xF85" - }, - "659": { - "fn": "Router.initialize", - "jump": "i", - "offset": [ - 2718, - 4144 - ], - "op": "JUMP", - "path": "24" - }, - "660": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "JUMPDEST", - "path": "24" - }, - "661": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "PUSH2", - "path": "24", - "value": "0xD3E" - }, - "664": { - "fn": "Router.initialize", - "jump": "i", - "offset": [ - 2718, - 4144 - ], - "op": "JUMP", - "path": "24" - }, - "665": { - "offset": [ - 1252, - 1294 - ], - "op": "JUMPDEST", - "path": "24" - }, - "666": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "CALLVALUE", - "path": "24" - }, - "667": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "DUP1", - "path": "24" - }, - "668": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "ISZERO", - "path": "24" - }, - "669": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH2", - "path": "24", - "value": "0x2A5" - }, - "672": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "JUMPI", - "path": "24" - }, - "673": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "675": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "DUP1", - "path": "24" - }, - "676": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "REVERT", - "path": "24" - }, - "677": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "JUMPDEST", - "path": "24" - }, - "678": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "POP", - "path": "24" - }, - "679": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH2", - "path": "24", - "value": "0x132" - }, - "682": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH2", - "path": "24", - "value": "0xF4A" - }, - "685": { - "fn": "Router.initialize", - "jump": "i", - "offset": [ - 1252, - 1294 - ], - "op": "JUMP", - "path": "24" - }, - "686": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "JUMPDEST", - "path": "24" - }, - "687": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4376, - 4383 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "689": { - "op": "PUSH1", - "value": "0x1" - }, - "691": { - "op": "PUSH1", - "value": "0x1" - }, - "693": { - "op": "PUSH1", - "value": "0xE0" - }, - "695": { - "op": "SHL" - }, - "696": { - "op": "SUB" - }, - "697": { - "op": "NOT" - }, - "698": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4460 - ], - "op": "DUP3", - "path": "24" - }, - "699": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4460 - ], - "op": "AND", - "path": "24" - }, - "700": { - "op": "PUSH4", - "value": "0x37351953" - }, - "705": { - "op": "PUSH1", - "value": "0xE1" - }, - "707": { - "op": "SHL" - }, - "708": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4460 - ], - "op": "EQ", - "path": "24" - }, - "709": { - "branch": 18, - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4460 - ], - "op": "DUP1", - "path": "24" - }, - "710": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4532 - ], - "op": "PUSH2", - "path": "24", - "value": "0x2DF" - }, - "713": { - "branch": 18, - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4532 - ], - "op": "JUMPI", - "path": "24" - }, - "714": { - "op": "POP" - }, - "715": { - "op": "PUSH1", - "value": "0x1" - }, - "717": { - "op": "PUSH1", - "value": "0x1" - }, - "719": { - "op": "PUSH1", - "value": "0xE0" - }, - "721": { - "op": "SHL" - }, - "722": { - "op": "SUB" - }, - "723": { - "op": "NOT" - }, - "724": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4476, - 4532 - ], - "op": "DUP3", - "path": "24" - }, - "725": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4476, - 4532 - ], - "op": "AND", - "path": "24" - }, - "726": { - "op": "PUSH4", - "value": "0x276B64B" - }, - "731": { - "op": "PUSH1", - "value": "0xE0" - }, - "733": { - "op": "SHL" - }, - "734": { - "branch": 19, - "fn": "Router.getRouterImplementation", - "offset": [ - 4476, - 4532 - ], - "op": "EQ", - "path": "24" - }, - "735": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4532 - ], - "op": "JUMPDEST", - "path": "24" - }, - "736": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4616 - ], - "op": "DUP1", - "path": "24" - }, - "737": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4616 - ], - "op": "PUSH2", - "path": "24", - "value": "0x2FA" - }, - "740": { - "branch": 19, - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4616 - ], - "op": "JUMPI", - "path": "24" - }, - "741": { - "op": "POP" - }, - "742": { - "op": "PUSH1", - "value": "0x1" - }, - "744": { - "op": "PUSH1", - "value": "0x1" - }, - "746": { - "op": "PUSH1", - "value": "0xE0" - }, - "748": { - "op": "SHL" - }, - "749": { - "op": "SUB" - }, - "750": { - "op": "NOT" - }, - "751": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4548, - 4616 - ], - "op": "DUP3", - "path": "24" - }, - "752": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4548, - 4616 - ], - "op": "AND", - "path": "24" - }, - "753": { - "op": "PUSH4", - "value": "0x5950D8E9" - }, - "758": { - "op": "PUSH1", - "value": "0xE0" - }, - "760": { - "op": "SHL" - }, - "761": { - "branch": 20, - "fn": "Router.getRouterImplementation", - "offset": [ - 4548, - 4616 - ], - "op": "EQ", - "path": "24" - }, - "762": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4616 - ], - "op": "JUMPDEST", - "path": "24" - }, - "763": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4671 - ], - "op": "DUP1", - "path": "24" - }, - "764": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4671 - ], - "op": "PUSH2", - "path": "24", - "value": "0x315" - }, - "767": { - "branch": 20, - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4671 - ], - "op": "JUMPI", - "path": "24" - }, - "768": { - "op": "POP" - }, - "769": { - "op": "PUSH1", - "value": "0x1" - }, - "771": { - "op": "PUSH1", - "value": "0x1" - }, - "773": { - "op": "PUSH1", - "value": "0xE0" - }, - "775": { - "op": "SHL" - }, - "776": { - "op": "SUB" - }, - "777": { - "op": "NOT" - }, - "778": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4632, - 4671 - ], - "op": "DUP3", - "path": "24" - }, - "779": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4632, - 4671 - ], - "op": "AND", - "path": "24" - }, - "780": { - "op": "PUSH4", - "value": "0x541F527" - }, - "785": { - "op": "PUSH1", - "value": "0xE4" - }, - "787": { - "op": "SHL" - }, - "788": { - "branch": 21, - "fn": "Router.getRouterImplementation", - "offset": [ - 4632, - 4671 - ], - "op": "EQ", - "path": "24" - }, - "789": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4412, - 4671 - ], - "op": "JUMPDEST", - "path": "24" - }, - "790": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4395, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "791": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4395, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x341" - }, - "794": { - "branch": 21, - "fn": "Router.getRouterImplementation", - "offset": [ - 4395, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "795": { - "op": "POP" - }, - "796": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4703, - 4715 - ], - "op": "PUSH32", - "path": "24", - "statement": 1, - "value": "0x0" - }, - "829": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4696, - 4715 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "832": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4696, - 4715 - ], - "op": "JUMP", - "path": "24" - }, - "833": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4395, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "834": { - "op": "PUSH1", - "value": "0x1" - }, - "836": { - "op": "PUSH1", - "value": "0x1" - }, - "838": { - "op": "PUSH1", - "value": "0xE0" - }, - "840": { - "op": "SHL" - }, - "841": { - "op": "SUB" - }, - "842": { - "op": "NOT" - }, - "843": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4795 - ], - "op": "DUP3", - "path": "24" - }, - "844": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4795 - ], - "op": "AND", - "path": "24" - }, - "845": { - "op": "PUSH4", - "value": "0x6A96E86F" - }, - "850": { - "op": "PUSH1", - "value": "0xE0" - }, - "852": { - "op": "SHL" - }, - "853": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4795 - ], - "op": "EQ", - "path": "24" - }, - "854": { - "branch": 22, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4795 - ], - "op": "DUP1", - "path": "24" - }, - "855": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4855 - ], - "op": "PUSH2", - "path": "24", - "value": "0x370" - }, - "858": { - "branch": 22, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4855 - ], - "op": "JUMPI", - "path": "24" - }, - "859": { - "op": "POP" - }, - "860": { - "op": "PUSH1", - "value": "0x1" - }, - "862": { - "op": "PUSH1", - "value": "0x1" - }, - "864": { - "op": "PUSH1", - "value": "0xE0" - }, - "866": { - "op": "SHL" - }, - "867": { - "op": "SUB" - }, - "868": { - "op": "NOT" - }, - "869": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4811, - 4855 - ], - "op": "DUP3", - "path": "24" - }, - "870": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4811, - 4855 - ], - "op": "AND", - "path": "24" - }, - "871": { - "op": "PUSH4", - "value": "0xA78DBFFF" - }, - "876": { - "op": "PUSH1", - "value": "0xE0" - }, - "878": { - "op": "SHL" - }, - "879": { - "branch": 23, - "fn": "Router.getRouterImplementation", - "offset": [ - 4811, - 4855 - ], - "op": "EQ", - "path": "24" - }, - "880": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4855 - ], - "op": "JUMPDEST", - "path": "24" - }, - "881": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4923 - ], - "op": "DUP1", - "path": "24" - }, - "882": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4923 - ], - "op": "PUSH2", - "path": "24", - "value": "0x38B" - }, - "885": { - "branch": 23, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4923 - ], - "op": "JUMPI", - "path": "24" - }, - "886": { - "op": "POP" - }, - "887": { - "op": "PUSH1", - "value": "0x1" - }, - "889": { - "op": "PUSH1", - "value": "0x1" - }, - "891": { - "op": "PUSH1", - "value": "0xE0" - }, - "893": { - "op": "SHL" - }, - "894": { - "op": "SUB" - }, - "895": { - "op": "NOT" - }, - "896": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4871, - 4923 - ], - "op": "DUP3", - "path": "24" - }, - "897": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4871, - 4923 - ], - "op": "AND", - "path": "24" - }, - "898": { - "op": "PUSH4", - "value": "0x7DB31AB9" - }, - "903": { - "op": "PUSH1", - "value": "0xE0" - }, - "905": { - "op": "SHL" - }, - "906": { - "branch": 24, - "fn": "Router.getRouterImplementation", - "offset": [ - 4871, - 4923 - ], - "op": "EQ", - "path": "24" - }, - "907": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4923 - ], - "op": "JUMPDEST", - "path": "24" - }, - "908": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4989 - ], - "op": "DUP1", - "path": "24" - }, - "909": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4989 - ], - "op": "PUSH2", - "path": "24", - "value": "0x3A6" - }, - "912": { - "branch": 24, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4989 - ], - "op": "JUMPI", - "path": "24" - }, - "913": { - "op": "POP" - }, - "914": { - "op": "PUSH1", - "value": "0x1" - }, - "916": { - "op": "PUSH1", - "value": "0x1" - }, - "918": { - "op": "PUSH1", - "value": "0xE0" - }, - "920": { - "op": "SHL" - }, - "921": { - "op": "SUB" - }, - "922": { - "op": "NOT" - }, - "923": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4939, - 4989 - ], - "op": "DUP3", - "path": "24" - }, - "924": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4939, - 4989 - ], - "op": "AND", - "path": "24" - }, - "925": { - "op": "PUSH4", - "value": "0x184E0053" - }, - "930": { - "op": "PUSH1", - "value": "0xE1" - }, - "932": { - "op": "SHL" - }, - "933": { - "branch": 25, - "fn": "Router.getRouterImplementation", - "offset": [ - 4939, - 4989 - ], - "op": "EQ", - "path": "24" - }, - "934": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 4989 - ], - "op": "JUMPDEST", - "path": "24" - }, - "935": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5048 - ], - "op": "DUP1", - "path": "24" - }, - "936": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5048 - ], - "op": "PUSH2", - "path": "24", - "value": "0x3C1" - }, - "939": { - "branch": 25, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5048 - ], - "op": "JUMPI", - "path": "24" - }, - "940": { - "op": "POP" - }, - "941": { - "op": "PUSH1", - "value": "0x1" - }, - "943": { - "op": "PUSH1", - "value": "0x1" - }, - "945": { - "op": "PUSH1", - "value": "0xE0" - }, - "947": { - "op": "SHL" - }, - "948": { - "op": "SUB" - }, - "949": { - "op": "NOT" - }, - "950": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5005, - 5048 - ], - "op": "DUP3", - "path": "24" - }, - "951": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5005, - 5048 - ], - "op": "AND", - "path": "24" - }, - "952": { - "op": "PUSH4", - "value": "0x18AE40D7" - }, - "957": { - "op": "PUSH1", - "value": "0xE0" - }, - "959": { - "op": "SHL" - }, - "960": { - "branch": 26, - "fn": "Router.getRouterImplementation", - "offset": [ - 5005, - 5048 - ], - "op": "EQ", - "path": "24" - }, - "961": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5048 - ], - "op": "JUMPDEST", - "path": "24" - }, - "962": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5111 - ], - "op": "DUP1", - "path": "24" - }, - "963": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5111 - ], - "op": "PUSH2", - "path": "24", - "value": "0x3DC" - }, - "966": { - "branch": 26, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5111 - ], - "op": "JUMPI", - "path": "24" - }, - "967": { - "op": "POP" - }, - "968": { - "op": "PUSH1", - "value": "0x1" - }, - "970": { - "op": "PUSH1", - "value": "0x1" - }, - "972": { - "op": "PUSH1", - "value": "0xE0" - }, - "974": { - "op": "SHL" - }, - "975": { - "op": "SUB" - }, - "976": { - "op": "NOT" - }, - "977": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5064, - 5111 - ], - "op": "DUP3", - "path": "24" - }, - "978": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5064, - 5111 - ], - "op": "AND", - "path": "24" - }, - "979": { - "op": "PUSH4", - "value": "0x44253849" - }, - "984": { - "op": "PUSH1", - "value": "0xE1" - }, - "986": { - "op": "SHL" - }, - "987": { - "branch": 27, - "fn": "Router.getRouterImplementation", - "offset": [ - 5064, - 5111 - ], - "op": "EQ", - "path": "24" - }, - "988": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5111 - ], - "op": "JUMPDEST", - "path": "24" - }, - "989": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5177 - ], - "op": "DUP1", - "path": "24" - }, - "990": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5177 - ], - "op": "PUSH2", - "path": "24", - "value": "0x3F7" - }, - "993": { - "branch": 27, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5177 - ], - "op": "JUMPI", - "path": "24" - }, - "994": { - "op": "POP" - }, - "995": { - "op": "PUSH1", - "value": "0x1" - }, - "997": { - "op": "PUSH1", - "value": "0x1" - }, - "999": { - "op": "PUSH1", - "value": "0xE0" - }, - "1001": { - "op": "SHL" - }, - "1002": { - "op": "SUB" - }, - "1003": { - "op": "NOT" - }, - "1004": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5127, - 5177 - ], - "op": "DUP3", - "path": "24" - }, - "1005": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5127, - 5177 - ], - "op": "AND", - "path": "24" - }, - "1006": { - "op": "PUSH4", - "value": "0x6D6503D3" - }, - "1011": { - "op": "PUSH1", - "value": "0xE1" - }, - "1013": { - "op": "SHL" - }, - "1014": { - "branch": 28, - "fn": "Router.getRouterImplementation", - "offset": [ - 5127, - 5177 - ], - "op": "EQ", - "path": "24" - }, - "1015": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5177 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1016": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5246 - ], - "op": "DUP1", - "path": "24" - }, - "1017": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5246 - ], - "op": "PUSH2", - "path": "24", - "value": "0x412" - }, - "1020": { - "branch": 28, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5246 - ], - "op": "JUMPI", - "path": "24" - }, - "1021": { - "op": "POP" - }, - "1022": { - "op": "PUSH1", - "value": "0x1" - }, - "1024": { - "op": "PUSH1", - "value": "0x1" - }, - "1026": { - "op": "PUSH1", - "value": "0xE0" - }, - "1028": { - "op": "SHL" - }, - "1029": { - "op": "SUB" - }, - "1030": { - "op": "NOT" - }, - "1031": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5193, - 5246 - ], - "op": "DUP3", - "path": "24" - }, - "1032": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5193, - 5246 - ], - "op": "AND", - "path": "24" - }, - "1033": { - "op": "PUSH4", - "value": "0x5C1D975" - }, - "1038": { - "op": "PUSH1", - "value": "0xE3" - }, - "1040": { - "op": "SHL" - }, - "1041": { - "branch": 29, - "fn": "Router.getRouterImplementation", - "offset": [ - 5193, - 5246 - ], - "op": "EQ", - "path": "24" - }, - "1042": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5246 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1043": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5325 - ], - "op": "DUP1", - "path": "24" - }, - "1044": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5325 - ], - "op": "PUSH2", - "path": "24", - "value": "0x42D" - }, - "1047": { - "branch": 29, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5325 - ], - "op": "JUMPI", - "path": "24" - }, - "1048": { - "op": "POP" - }, - "1049": { - "op": "PUSH1", - "value": "0x1" - }, - "1051": { - "op": "PUSH1", - "value": "0x1" - }, - "1053": { - "op": "PUSH1", - "value": "0xE0" - }, - "1055": { - "op": "SHL" - }, - "1056": { - "op": "SUB" - }, - "1057": { - "op": "NOT" - }, - "1058": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5262, - 5325 - ], - "op": "DUP3", - "path": "24" - }, - "1059": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5262, - 5325 - ], - "op": "AND", - "path": "24" - }, - "1060": { - "op": "PUSH4", - "value": "0x1A05BCE1" - }, - "1065": { - "op": "PUSH1", - "value": "0xE0" - }, - "1067": { - "op": "SHL" - }, - "1068": { - "branch": 30, - "fn": "Router.getRouterImplementation", - "offset": [ - 5262, - 5325 - ], - "op": "EQ", - "path": "24" - }, - "1069": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5325 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1070": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5409 - ], - "op": "DUP1", - "path": "24" - }, - "1071": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5409 - ], - "op": "PUSH2", - "path": "24", - "value": "0x448" - }, - "1074": { - "branch": 30, - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5409 - ], - "op": "JUMPI", - "path": "24" - }, - "1075": { - "op": "POP" - }, - "1076": { - "op": "PUSH1", - "value": "0x1" - }, - "1078": { - "op": "PUSH1", - "value": "0x1" - }, - "1080": { - "op": "PUSH1", - "value": "0xE0" - }, - "1082": { - "op": "SHL" - }, - "1083": { - "op": "SUB" - }, - "1084": { - "op": "NOT" - }, - "1085": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5341, - 5409 - ], - "op": "DUP3", - "path": "24" - }, - "1086": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5341, - 5409 - ], - "op": "AND", - "path": "24" - }, - "1087": { - "op": "PUSH4", - "value": "0x3B2987B3" - }, - "1092": { - "op": "PUSH1", - "value": "0xE0" - }, - "1094": { - "op": "SHL" - }, - "1095": { - "branch": 31, - "fn": "Router.getRouterImplementation", - "offset": [ - 5341, - 5409 - ], - "op": "EQ", - "path": "24" - }, - "1096": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4749, - 5409 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1097": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4732, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "1098": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4732, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x474" - }, - "1101": { - "branch": 31, - "fn": "Router.getRouterImplementation", - "offset": [ - 4732, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "1102": { - "op": "POP" - }, - "1103": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5441, - 5455 - ], - "op": "PUSH32", - "path": "24", - "statement": 2, - "value": "0x0" - }, - "1136": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5434, - 5455 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "1139": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5434, - 5455 - ], - "op": "JUMP", - "path": "24" - }, - "1140": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4732, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1141": { - "op": "PUSH1", - "value": "0x1" - }, - "1143": { - "op": "PUSH1", - "value": "0x1" - }, - "1145": { - "op": "PUSH1", - "value": "0xE0" - }, - "1147": { - "op": "SHL" - }, - "1148": { - "op": "SUB" - }, - "1149": { - "op": "NOT" - }, - "1150": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5541 - ], - "op": "DUP3", - "path": "24" - }, - "1151": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5541 - ], - "op": "AND", - "path": "24" - }, - "1152": { - "op": "PUSH4", - "value": "0x2890FB65" - }, - "1157": { - "op": "PUSH1", - "value": "0xE0" - }, - "1159": { - "op": "SHL" - }, - "1160": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5541 - ], - "op": "EQ", - "path": "24" - }, - "1161": { - "branch": 32, - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5541 - ], - "op": "DUP1", - "path": "24" - }, - "1162": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5604 - ], - "op": "PUSH2", - "path": "24", - "value": "0x4A3" - }, - "1165": { - "branch": 32, - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5604 - ], - "op": "JUMPI", - "path": "24" - }, - "1166": { - "op": "POP" - }, - "1167": { - "op": "PUSH1", - "value": "0x1" - }, - "1169": { - "op": "PUSH1", - "value": "0x1" - }, - "1171": { - "op": "PUSH1", - "value": "0xE0" - }, - "1173": { - "op": "SHL" - }, - "1174": { - "op": "SUB" - }, - "1175": { - "op": "NOT" - }, - "1176": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5557, - 5604 - ], - "op": "DUP3", - "path": "24" - }, - "1177": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5557, - 5604 - ], - "op": "AND", - "path": "24" - }, - "1178": { - "op": "PUSH4", - "value": "0xB8A69455" - }, - "1183": { - "op": "PUSH1", - "value": "0xE0" - }, - "1185": { - "op": "SHL" - }, - "1186": { - "branch": 33, - "fn": "Router.getRouterImplementation", - "offset": [ - 5557, - 5604 - ], - "op": "EQ", - "path": "24" - }, - "1187": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5604 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1188": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5658 - ], - "op": "DUP1", - "path": "24" - }, - "1189": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5658 - ], - "op": "PUSH2", - "path": "24", - "value": "0x4BD" - }, - "1192": { - "branch": 33, - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5658 - ], - "op": "JUMPI", - "path": "24" - }, - "1193": { - "op": "POP" - }, - "1194": { - "op": "PUSH1", - "value": "0x1" - }, - "1196": { - "op": "PUSH1", - "value": "0x1" - }, - "1198": { - "op": "PUSH1", - "value": "0xE0" - }, - "1200": { - "op": "SHL" - }, - "1201": { - "op": "SUB" - }, - "1202": { - "op": "NOT" - }, - "1203": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5620, - 5658 - ], - "op": "DUP3", - "path": "24" - }, - "1204": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5620, - 5658 - ], - "op": "AND", - "path": "24" - }, - "1205": { - "op": "PUSH3", - "value": "0x5E665D" - }, - "1209": { - "op": "PUSH1", - "value": "0xE3" - }, - "1211": { - "op": "SHL" - }, - "1212": { - "branch": 34, - "fn": "Router.getRouterImplementation", - "offset": [ - 5620, - 5658 - ], - "op": "EQ", - "path": "24" - }, - "1213": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5658 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1214": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5717 - ], - "op": "DUP1", - "path": "24" - }, - "1215": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5717 - ], - "op": "PUSH2", - "path": "24", - "value": "0x4D8" - }, - "1218": { - "branch": 34, - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5717 - ], - "op": "JUMPI", - "path": "24" - }, - "1219": { - "op": "POP" - }, - "1220": { - "op": "PUSH1", - "value": "0x1" - }, - "1222": { - "op": "PUSH1", - "value": "0x1" - }, - "1224": { - "op": "PUSH1", - "value": "0xE0" - }, - "1226": { - "op": "SHL" - }, - "1227": { - "op": "SUB" - }, - "1228": { - "op": "NOT" - }, - "1229": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5674, - 5717 - ], - "op": "DUP3", - "path": "24" - }, - "1230": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5674, - 5717 - ], - "op": "AND", - "path": "24" - }, - "1231": { - "op": "PUSH4", - "value": "0xF667F897" - }, - "1236": { - "op": "PUSH1", - "value": "0xE0" - }, - "1238": { - "op": "SHL" - }, - "1239": { - "branch": 35, - "fn": "Router.getRouterImplementation", - "offset": [ - 5674, - 5717 - ], - "op": "EQ", - "path": "24" - }, - "1240": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5717 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1241": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5775 - ], - "op": "DUP1", - "path": "24" - }, - "1242": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5775 - ], - "op": "PUSH2", - "path": "24", - "value": "0x4F3" - }, - "1245": { - "branch": 35, - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5775 - ], - "op": "JUMPI", - "path": "24" - }, - "1246": { - "op": "POP" - }, - "1247": { - "op": "PUSH1", - "value": "0x1" - }, - "1249": { - "op": "PUSH1", - "value": "0x1" - }, - "1251": { - "op": "PUSH1", - "value": "0xE0" - }, - "1253": { - "op": "SHL" - }, - "1254": { - "op": "SUB" - }, - "1255": { - "op": "NOT" - }, - "1256": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5733, - 5775 - ], - "op": "DUP3", - "path": "24" - }, - "1257": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5733, - 5775 - ], - "op": "AND", - "path": "24" - }, - "1258": { - "op": "PUSH4", - "value": "0x66890643" - }, - "1263": { - "op": "PUSH1", - "value": "0xE0" - }, - "1265": { - "op": "SHL" - }, - "1266": { - "branch": 36, - "fn": "Router.getRouterImplementation", - "offset": [ - 5733, - 5775 - ], - "op": "EQ", - "path": "24" - }, - "1267": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5775 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1268": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5841 - ], - "op": "DUP1", - "path": "24" - }, - "1269": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5841 - ], - "op": "PUSH2", - "path": "24", - "value": "0x50E" - }, - "1272": { - "branch": 36, - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5841 - ], - "op": "JUMPI", - "path": "24" - }, - "1273": { - "op": "POP" - }, - "1274": { - "op": "PUSH1", - "value": "0x1" - }, - "1276": { - "op": "PUSH1", - "value": "0x1" - }, - "1278": { - "op": "PUSH1", - "value": "0xE0" - }, - "1280": { - "op": "SHL" - }, - "1281": { - "op": "SUB" - }, - "1282": { - "op": "NOT" - }, - "1283": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5791, - 5841 - ], - "op": "DUP3", - "path": "24" - }, - "1284": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5791, - 5841 - ], - "op": "AND", - "path": "24" - }, - "1285": { - "op": "PUSH4", - "value": "0x9C97945" - }, - "1290": { - "op": "PUSH1", - "value": "0xE4" - }, - "1292": { - "op": "SHL" - }, - "1293": { - "branch": 37, - "fn": "Router.getRouterImplementation", - "offset": [ - 5791, - 5841 - ], - "op": "EQ", - "path": "24" - }, - "1294": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5489, - 5841 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1295": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5472, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "1296": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5472, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x53A" - }, - "1299": { - "branch": 37, - "fn": "Router.getRouterImplementation", - "offset": [ - 5472, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "1300": { - "op": "POP" - }, - "1301": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5873, - 5887 - ], - "op": "PUSH32", - "path": "24", - "statement": 3, - "value": "0x0" - }, - "1334": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5866, - 5887 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "1337": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5866, - 5887 - ], - "op": "JUMP", - "path": "24" - }, - "1338": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5472, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1339": { - "op": "PUSH1", - "value": "0x1" - }, - "1341": { - "op": "PUSH1", - "value": "0x1" - }, - "1343": { - "op": "PUSH1", - "value": "0xE0" - }, - "1345": { - "op": "SHL" - }, - "1346": { - "op": "SUB" - }, - "1347": { - "op": "NOT" - }, - "1348": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 5972 - ], - "op": "DUP3", - "path": "24" - }, - "1349": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 5972 - ], - "op": "AND", - "path": "24" - }, - "1350": { - "op": "PUSH4", - "value": "0x1FFC9A7" - }, - "1355": { - "op": "PUSH1", - "value": "0xE0" - }, - "1357": { - "op": "SHL" - }, - "1358": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 5972 - ], - "op": "EQ", - "path": "24" - }, - "1359": { - "branch": 38, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 5972 - ], - "op": "DUP1", - "path": "24" - }, - "1360": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6031 - ], - "op": "PUSH2", - "path": "24", - "value": "0x568" - }, - "1363": { - "branch": 38, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6031 - ], - "op": "JUMPI", - "path": "24" - }, - "1364": { - "op": "POP" - }, - "1365": { - "op": "PUSH1", - "value": "0x1" - }, - "1367": { - "op": "PUSH1", - "value": "0x1" - }, - "1369": { - "op": "PUSH1", - "value": "0xE0" - }, - "1371": { - "op": "SHL" - }, - "1372": { - "op": "SUB" - }, - "1373": { - "op": "NOT" - }, - "1374": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5988, - 6031 - ], - "op": "DUP3", - "path": "24" - }, - "1375": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5988, - 6031 - ], - "op": "AND", - "path": "24" - }, - "1376": { - "op": "PUSH3", - "value": "0x7EEAC7" - }, - "1380": { - "op": "PUSH1", - "value": "0xE1" - }, - "1382": { - "op": "SHL" - }, - "1383": { - "branch": 39, - "fn": "Router.getRouterImplementation", - "offset": [ - 5988, - 6031 - ], - "op": "EQ", - "path": "24" - }, - "1384": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6031 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1385": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6095 - ], - "op": "DUP1", - "path": "24" - }, - "1386": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6095 - ], - "op": "PUSH2", - "path": "24", - "value": "0x583" - }, - "1389": { - "branch": 39, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6095 - ], - "op": "JUMPI", - "path": "24" - }, - "1390": { - "op": "POP" - }, - "1391": { - "op": "PUSH1", - "value": "0x1" - }, - "1393": { - "op": "PUSH1", - "value": "0x1" - }, - "1395": { - "op": "PUSH1", - "value": "0xE0" - }, - "1397": { - "op": "SHL" - }, - "1398": { - "op": "SUB" - }, - "1399": { - "op": "NOT" - }, - "1400": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6047, - 6095 - ], - "op": "DUP3", - "path": "24" - }, - "1401": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6047, - 6095 - ], - "op": "AND", - "path": "24" - }, - "1402": { - "op": "PUSH4", - "value": "0x13849CFD" - }, - "1407": { - "op": "PUSH1", - "value": "0xE2" - }, - "1409": { - "op": "SHL" - }, - "1410": { - "branch": 40, - "fn": "Router.getRouterImplementation", - "offset": [ - 6047, - 6095 - ], - "op": "EQ", - "path": "24" - }, - "1411": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6095 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1412": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6160 - ], - "op": "DUP1", - "path": "24" - }, - "1413": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6160 - ], - "op": "PUSH2", - "path": "24", - "value": "0x59E" - }, - "1416": { - "branch": 40, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6160 - ], - "op": "JUMPI", - "path": "24" - }, - "1417": { - "op": "POP" - }, - "1418": { - "op": "PUSH1", - "value": "0x1" - }, - "1420": { - "op": "PUSH1", - "value": "0x1" - }, - "1422": { - "op": "PUSH1", - "value": "0xE0" - }, - "1424": { - "op": "SHL" - }, - "1425": { - "op": "SUB" - }, - "1426": { - "op": "NOT" - }, - "1427": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6111, - 6160 - ], - "op": "DUP3", - "path": "24" - }, - "1428": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6111, - 6160 - ], - "op": "AND", - "path": "24" - }, - "1429": { - "op": "PUSH4", - "value": "0xFAC8F09" - }, - "1434": { - "op": "PUSH1", - "value": "0xE0" - }, - "1436": { - "op": "SHL" - }, - "1437": { - "branch": 41, - "fn": "Router.getRouterImplementation", - "offset": [ - 6111, - 6160 - ], - "op": "EQ", - "path": "24" - }, - "1438": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6160 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1439": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6230 - ], - "op": "DUP1", - "path": "24" - }, - "1440": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6230 - ], - "op": "PUSH2", - "path": "24", - "value": "0x5B9" - }, - "1443": { - "branch": 41, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6230 - ], - "op": "JUMPI", - "path": "24" - }, - "1444": { - "op": "POP" - }, - "1445": { - "op": "PUSH1", - "value": "0x1" - }, - "1447": { - "op": "PUSH1", - "value": "0x1" - }, - "1449": { - "op": "PUSH1", - "value": "0xE0" - }, - "1451": { - "op": "SHL" - }, - "1452": { - "op": "SUB" - }, - "1453": { - "op": "NOT" - }, - "1454": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6176, - 6230 - ], - "op": "DUP3", - "path": "24" - }, - "1455": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6176, - 6230 - ], - "op": "AND", - "path": "24" - }, - "1456": { - "op": "PUSH4", - "value": "0x81A86855" - }, - "1461": { - "op": "PUSH1", - "value": "0xE0" - }, - "1463": { - "op": "SHL" - }, - "1464": { - "branch": 42, - "fn": "Router.getRouterImplementation", - "offset": [ - 6176, - 6230 - ], - "op": "EQ", - "path": "24" - }, - "1465": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6230 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1466": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6296 - ], - "op": "DUP1", - "path": "24" - }, - "1467": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6296 - ], - "op": "PUSH2", - "path": "24", - "value": "0x5D4" - }, - "1470": { - "branch": 42, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6296 - ], - "op": "JUMPI", - "path": "24" - }, - "1471": { - "op": "POP" - }, - "1472": { - "op": "PUSH1", - "value": "0x1" - }, - "1474": { - "op": "PUSH1", - "value": "0x1" - }, - "1476": { - "op": "PUSH1", - "value": "0xE0" - }, - "1478": { - "op": "SHL" - }, - "1479": { - "op": "SUB" - }, - "1480": { - "op": "NOT" - }, - "1481": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6246, - 6296 - ], - "op": "DUP3", - "path": "24" - }, - "1482": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6246, - 6296 - ], - "op": "AND", - "path": "24" - }, - "1483": { - "op": "PUSH4", - "value": "0x79212195" - }, - "1488": { - "op": "PUSH1", - "value": "0xE1" - }, - "1490": { - "op": "SHL" - }, - "1491": { - "branch": 43, - "fn": "Router.getRouterImplementation", - "offset": [ - 6246, - 6296 - ], - "op": "EQ", - "path": "24" - }, - "1492": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6296 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1493": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6367 - ], - "op": "DUP1", - "path": "24" - }, - "1494": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6367 - ], - "op": "PUSH2", - "path": "24", - "value": "0x5EF" - }, - "1497": { - "branch": 43, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6367 - ], - "op": "JUMPI", - "path": "24" - }, - "1498": { - "op": "POP" - }, - "1499": { - "op": "PUSH1", - "value": "0x1" - }, - "1501": { - "op": "PUSH1", - "value": "0x1" - }, - "1503": { - "op": "PUSH1", - "value": "0xE0" - }, - "1505": { - "op": "SHL" - }, - "1506": { - "op": "SUB" - }, - "1507": { - "op": "NOT" - }, - "1508": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6312, - 6367 - ], - "op": "DUP3", - "path": "24" - }, - "1509": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6312, - 6367 - ], - "op": "AND", - "path": "24" - }, - "1510": { - "op": "PUSH4", - "value": "0x1759616B" - }, - "1515": { - "op": "PUSH1", - "value": "0xE1" - }, - "1517": { - "op": "SHL" - }, - "1518": { - "branch": 44, - "fn": "Router.getRouterImplementation", - "offset": [ - 6312, - 6367 - ], - "op": "EQ", - "path": "24" - }, - "1519": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6367 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1520": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6431 - ], - "op": "DUP1", - "path": "24" - }, - "1521": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6431 - ], - "op": "PUSH2", - "path": "24", - "value": "0x60A" - }, - "1524": { - "branch": 44, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6431 - ], - "op": "JUMPI", - "path": "24" - }, - "1525": { - "op": "POP" - }, - "1526": { - "op": "PUSH1", - "value": "0x1" - }, - "1528": { - "op": "PUSH1", - "value": "0x1" - }, - "1530": { - "op": "PUSH1", - "value": "0xE0" - }, - "1532": { - "op": "SHL" - }, - "1533": { - "op": "SUB" - }, - "1534": { - "op": "NOT" - }, - "1535": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6383, - 6431 - ], - "op": "DUP3", - "path": "24" - }, - "1536": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6383, - 6431 - ], - "op": "AND", - "path": "24" - }, - "1537": { - "op": "PUSH4", - "value": "0x7F4D701" - }, - "1542": { - "op": "PUSH1", - "value": "0xE3" - }, - "1544": { - "op": "SHL" - }, - "1545": { - "branch": 45, - "fn": "Router.getRouterImplementation", - "offset": [ - 6383, - 6431 - ], - "op": "EQ", - "path": "24" - }, - "1546": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6431 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1547": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6491 - ], - "op": "DUP1", - "path": "24" - }, - "1548": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6491 - ], - "op": "PUSH2", - "path": "24", - "value": "0x625" - }, - "1551": { - "branch": 45, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6491 - ], - "op": "JUMPI", - "path": "24" - }, - "1552": { - "op": "POP" - }, - "1553": { - "op": "PUSH1", - "value": "0x1" - }, - "1555": { - "op": "PUSH1", - "value": "0x1" - }, - "1557": { - "op": "PUSH1", - "value": "0xE0" - }, - "1559": { - "op": "SHL" - }, - "1560": { - "op": "SUB" - }, - "1561": { - "op": "NOT" - }, - "1562": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6447, - 6491 - ], - "op": "DUP3", - "path": "24" - }, - "1563": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6447, - 6491 - ], - "op": "AND", - "path": "24" - }, - "1564": { - "op": "PUSH4", - "value": "0xE6B43B9" - }, - "1569": { - "op": "PUSH1", - "value": "0xE3" - }, - "1571": { - "op": "SHL" - }, - "1572": { - "branch": 46, - "fn": "Router.getRouterImplementation", - "offset": [ - 6447, - 6491 - ], - "op": "EQ", - "path": "24" - }, - "1573": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6491 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1574": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6558 - ], - "op": "DUP1", - "path": "24" - }, - "1575": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6558 - ], - "op": "PUSH2", - "path": "24", - "value": "0x640" - }, - "1578": { - "branch": 46, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6558 - ], - "op": "JUMPI", - "path": "24" - }, - "1579": { - "op": "POP" - }, - "1580": { - "op": "PUSH1", - "value": "0x1" - }, - "1582": { - "op": "PUSH1", - "value": "0x1" - }, - "1584": { - "op": "PUSH1", - "value": "0xE0" - }, - "1586": { - "op": "SHL" - }, - "1587": { - "op": "SUB" - }, - "1588": { - "op": "NOT" - }, - "1589": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6507, - 6558 - ], - "op": "DUP3", - "path": "24" - }, - "1590": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6507, - 6558 - ], - "op": "AND", - "path": "24" - }, - "1591": { - "op": "PUSH4", - "value": "0xA22CB465" - }, - "1596": { - "op": "PUSH1", - "value": "0xE0" - }, - "1598": { - "op": "SHL" - }, - "1599": { - "branch": 47, - "fn": "Router.getRouterImplementation", - "offset": [ - 6507, - 6558 - ], - "op": "EQ", - "path": "24" - }, - "1600": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6558 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1601": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6624 - ], - "op": "DUP1", - "path": "24" - }, - "1602": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6624 - ], - "op": "PUSH2", - "path": "24", - "value": "0x65B" - }, - "1605": { - "branch": 47, - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6624 - ], - "op": "JUMPI", - "path": "24" - }, - "1606": { - "op": "POP" - }, - "1607": { - "op": "PUSH1", - "value": "0x1" - }, - "1609": { - "op": "PUSH1", - "value": "0x1" - }, - "1611": { - "op": "PUSH1", - "value": "0xE0" - }, - "1613": { - "op": "SHL" - }, - "1614": { - "op": "SUB" - }, - "1615": { - "op": "NOT" - }, - "1616": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6574, - 6624 - ], - "op": "DUP3", - "path": "24" - }, - "1617": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6574, - 6624 - ], - "op": "AND", - "path": "24" - }, - "1618": { - "op": "PUSH4", - "value": "0xE985E9C5" - }, - "1623": { - "op": "PUSH1", - "value": "0xE0" - }, - "1625": { - "op": "SHL" - }, - "1626": { - "branch": 48, - "fn": "Router.getRouterImplementation", - "offset": [ - 6574, - 6624 - ], - "op": "EQ", - "path": "24" - }, - "1627": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5921, - 6624 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1628": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5904, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "1629": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5904, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x687" - }, - "1632": { - "branch": 48, - "fn": "Router.getRouterImplementation", - "offset": [ - 5904, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "1633": { - "op": "POP" - }, - "1634": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6656, - 6663 - ], - "op": "PUSH32", - "path": "24", - "statement": 4, - "value": "0x0" - }, - "1667": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6649, - 6663 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "1670": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6649, - 6663 - ], - "op": "JUMP", - "path": "24" - }, - "1671": { - "fn": "Router.getRouterImplementation", - "offset": [ - 5904, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1672": { - "op": "PUSH1", - "value": "0x1" - }, - "1674": { - "op": "PUSH1", - "value": "0x1" - }, - "1676": { - "op": "PUSH1", - "value": "0xE0" - }, - "1678": { - "op": "SHL" - }, - "1679": { - "op": "SUB" - }, - "1680": { - "op": "NOT" - }, - "1681": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6749 - ], - "op": "DUP3", - "path": "24" - }, - "1682": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6749 - ], - "op": "AND", - "path": "24" - }, - "1683": { - "op": "PUSH4", - "value": "0x2D10E6EB" - }, - "1688": { - "op": "PUSH1", - "value": "0xE0" - }, - "1690": { - "op": "SHL" - }, - "1691": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6749 - ], - "op": "EQ", - "path": "24" - }, - "1692": { - "branch": 49, - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6749 - ], - "op": "DUP1", - "path": "24" - }, - "1693": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6822 - ], - "op": "PUSH2", - "path": "24", - "value": "0x6B6" - }, - "1696": { - "branch": 49, - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6822 - ], - "op": "JUMPI", - "path": "24" - }, - "1697": { - "op": "POP" - }, - "1698": { - "op": "PUSH1", - "value": "0x1" - }, - "1700": { - "op": "PUSH1", - "value": "0x1" - }, - "1702": { - "op": "PUSH1", - "value": "0xE0" - }, - "1704": { - "op": "SHL" - }, - "1705": { - "op": "SUB" - }, - "1706": { - "op": "NOT" - }, - "1707": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6765, - 6822 - ], - "op": "DUP3", - "path": "24" - }, - "1708": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6765, - 6822 - ], - "op": "AND", - "path": "24" - }, - "1709": { - "op": "PUSH4", - "value": "0x6633AF39" - }, - "1714": { - "op": "PUSH1", - "value": "0xE0" - }, - "1716": { - "op": "SHL" - }, - "1717": { - "branch": 50, - "fn": "Router.getRouterImplementation", - "offset": [ - 6765, - 6822 - ], - "op": "EQ", - "path": "24" - }, - "1718": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6822 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1719": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6901 - ], - "op": "DUP1", - "path": "24" - }, - "1720": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6901 - ], - "op": "PUSH2", - "path": "24", - "value": "0x6D1" - }, - "1723": { - "branch": 50, - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6901 - ], - "op": "JUMPI", - "path": "24" - }, - "1724": { - "op": "POP" - }, - "1725": { - "op": "PUSH1", - "value": "0x1" - }, - "1727": { - "op": "PUSH1", - "value": "0x1" - }, - "1729": { - "op": "PUSH1", - "value": "0xE0" - }, - "1731": { - "op": "SHL" - }, - "1732": { - "op": "SUB" - }, - "1733": { - "op": "NOT" - }, - "1734": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6838, - 6901 - ], - "op": "DUP3", - "path": "24" - }, - "1735": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6838, - 6901 - ], - "op": "AND", - "path": "24" - }, - "1736": { - "op": "PUSH4", - "value": "0xE3E7CB4F" - }, - "1741": { - "op": "PUSH1", - "value": "0xE0" - }, - "1743": { - "op": "SHL" - }, - "1744": { - "branch": 51, - "fn": "Router.getRouterImplementation", - "offset": [ - 6838, - 6901 - ], - "op": "EQ", - "path": "24" - }, - "1745": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6901 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1746": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6985 - ], - "op": "DUP1", - "path": "24" - }, - "1747": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6985 - ], - "op": "PUSH2", - "path": "24", - "value": "0x6EC" - }, - "1750": { - "branch": 51, - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6985 - ], - "op": "JUMPI", - "path": "24" - }, - "1751": { - "op": "POP" - }, - "1752": { - "op": "PUSH1", - "value": "0x1" - }, - "1754": { - "op": "PUSH1", - "value": "0x1" - }, - "1756": { - "op": "PUSH1", - "value": "0xE0" - }, - "1758": { - "op": "SHL" - }, - "1759": { - "op": "SUB" - }, - "1760": { - "op": "NOT" - }, - "1761": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6917, - 6985 - ], - "op": "DUP3", - "path": "24" - }, - "1762": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6917, - 6985 - ], - "op": "AND", - "path": "24" - }, - "1763": { - "op": "PUSH4", - "value": "0x9A600EEB" - }, - "1768": { - "op": "PUSH1", - "value": "0xE0" - }, - "1770": { - "op": "SHL" - }, - "1771": { - "branch": 52, - "fn": "Router.getRouterImplementation", - "offset": [ - 6917, - 6985 - ], - "op": "EQ", - "path": "24" - }, - "1772": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6697, - 6985 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1773": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6680, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "1774": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6680, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x718" - }, - "1777": { - "branch": 52, - "fn": "Router.getRouterImplementation", - "offset": [ - 6680, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "1778": { - "op": "POP" - }, - "1779": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7017, - 7035 - ], - "op": "PUSH32", - "path": "24", - "statement": 5, - "value": "0x0" - }, - "1812": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7010, - 7035 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "1815": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7010, - 7035 - ], - "op": "JUMP", - "path": "24" - }, - "1816": { - "fn": "Router.getRouterImplementation", - "offset": [ - 6680, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1817": { - "op": "PUSH1", - "value": "0x1" - }, - "1819": { - "op": "PUSH1", - "value": "0x1" - }, - "1821": { - "op": "PUSH1", - "value": "0xE0" - }, - "1823": { - "op": "SHL" - }, - "1824": { - "op": "SUB" - }, - "1825": { - "op": "NOT" - }, - "1826": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7118 - ], - "op": "DUP3", - "path": "24" - }, - "1827": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7118 - ], - "op": "AND", - "path": "24" - }, - "1828": { - "op": "PUSH4", - "value": "0x1FF7AEFD" - }, - "1833": { - "op": "PUSH1", - "value": "0xE2" - }, - "1835": { - "op": "SHL" - }, - "1836": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7118 - ], - "op": "EQ", - "path": "24" - }, - "1837": { - "branch": 53, - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7118 - ], - "op": "DUP1", - "path": "24" - }, - "1838": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7191 - ], - "op": "PUSH2", - "path": "24", - "value": "0x747" - }, - "1841": { - "branch": 53, - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7191 - ], - "op": "JUMPI", - "path": "24" - }, - "1842": { - "op": "POP" - }, - "1843": { - "op": "PUSH1", - "value": "0x1" - }, - "1845": { - "op": "PUSH1", - "value": "0x1" - }, - "1847": { - "op": "PUSH1", - "value": "0xE0" - }, - "1849": { - "op": "SHL" - }, - "1850": { - "op": "SUB" - }, - "1851": { - "op": "NOT" - }, - "1852": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7134, - 7191 - ], - "op": "DUP3", - "path": "24" - }, - "1853": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7134, - 7191 - ], - "op": "AND", - "path": "24" - }, - "1854": { - "op": "PUSH4", - "value": "0xE816469D" - }, - "1859": { - "op": "PUSH1", - "value": "0xE0" - }, - "1861": { - "op": "SHL" - }, - "1862": { - "branch": 54, - "fn": "Router.getRouterImplementation", - "offset": [ - 7134, - 7191 - ], - "op": "EQ", - "path": "24" - }, - "1863": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7191 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1864": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7267 - ], - "op": "DUP1", - "path": "24" - }, - "1865": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7267 - ], - "op": "PUSH2", - "path": "24", - "value": "0x762" - }, - "1868": { - "branch": 54, - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7267 - ], - "op": "JUMPI", - "path": "24" - }, - "1869": { - "op": "POP" - }, - "1870": { - "op": "PUSH1", - "value": "0x1" - }, - "1872": { - "op": "PUSH1", - "value": "0x1" - }, - "1874": { - "op": "PUSH1", - "value": "0xE0" - }, - "1876": { - "op": "SHL" - }, - "1877": { - "op": "SUB" - }, - "1878": { - "op": "NOT" - }, - "1879": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7207, - 7267 - ], - "op": "DUP3", - "path": "24" - }, - "1880": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7207, - 7267 - ], - "op": "AND", - "path": "24" - }, - "1881": { - "op": "PUSH4", - "value": "0xFB281D9" - }, - "1886": { - "op": "PUSH1", - "value": "0xE0" - }, - "1888": { - "op": "SHL" - }, - "1889": { - "branch": 55, - "fn": "Router.getRouterImplementation", - "offset": [ - 7207, - 7267 - ], - "op": "EQ", - "path": "24" - }, - "1890": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7267 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1891": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7351 - ], - "op": "DUP1", - "path": "24" - }, - "1892": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7351 - ], - "op": "PUSH2", - "path": "24", - "value": "0x77D" - }, - "1895": { - "branch": 55, - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7351 - ], - "op": "JUMPI", - "path": "24" - }, - "1896": { - "op": "POP" - }, - "1897": { - "op": "PUSH1", - "value": "0x1" - }, - "1899": { - "op": "PUSH1", - "value": "0x1" - }, - "1901": { - "op": "PUSH1", - "value": "0xE0" - }, - "1903": { - "op": "SHL" - }, - "1904": { - "op": "SUB" - }, - "1905": { - "op": "NOT" - }, - "1906": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7283, - 7351 - ], - "op": "DUP3", - "path": "24" - }, - "1907": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7283, - 7351 - ], - "op": "AND", - "path": "24" - }, - "1908": { - "op": "PUSH4", - "value": "0xFA37E395" - }, - "1913": { - "op": "PUSH1", - "value": "0xE0" - }, - "1915": { - "op": "SHL" - }, - "1916": { - "branch": 56, - "fn": "Router.getRouterImplementation", - "offset": [ - 7283, - 7351 - ], - "op": "EQ", - "path": "24" - }, - "1917": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7069, - 7351 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1918": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7052, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "1919": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7052, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x7A9" - }, - "1922": { - "branch": 56, - "fn": "Router.getRouterImplementation", - "offset": [ - 7052, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "1923": { - "op": "POP" - }, - "1924": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7383, - 7398 - ], - "op": "PUSH32", - "path": "24", - "statement": 6, - "value": "0x0" - }, - "1957": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7376, - 7398 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "1960": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7376, - 7398 - ], - "op": "JUMP", - "path": "24" - }, - "1961": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7052, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "1962": { - "op": "PUSH1", - "value": "0x1" - }, - "1964": { - "op": "PUSH1", - "value": "0x1" - }, - "1966": { - "op": "PUSH1", - "value": "0xE0" - }, - "1968": { - "op": "SHL" - }, - "1969": { - "op": "SUB" - }, - "1970": { - "op": "NOT" - }, - "1971": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7479 - ], - "op": "DUP3", - "path": "24" - }, - "1972": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7479 - ], - "op": "AND", - "path": "24" - }, - "1973": { - "op": "PUSH4", - "value": "0x3438193" - }, - "1978": { - "op": "PUSH1", - "value": "0xE6" - }, - "1980": { - "op": "SHL" - }, - "1981": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7479 - ], - "op": "EQ", - "path": "24" - }, - "1982": { - "branch": 57, - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7479 - ], - "op": "DUP1", - "path": "24" - }, - "1983": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7545 - ], - "op": "PUSH2", - "path": "24", - "value": "0x7D8" - }, - "1986": { - "branch": 57, - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7545 - ], - "op": "JUMPI", - "path": "24" - }, - "1987": { - "op": "POP" - }, - "1988": { - "op": "PUSH1", - "value": "0x1" - }, - "1990": { - "op": "PUSH1", - "value": "0x1" - }, - "1992": { - "op": "PUSH1", - "value": "0xE0" - }, - "1994": { - "op": "SHL" - }, - "1995": { - "op": "SUB" - }, - "1996": { - "op": "NOT" - }, - "1997": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7495, - 7545 - ], - "op": "DUP3", - "path": "24" - }, - "1998": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7495, - 7545 - ], - "op": "AND", - "path": "24" - }, - "1999": { - "op": "PUSH4", - "value": "0x5DB6EAC7" - }, - "2004": { - "op": "PUSH1", - "value": "0xE1" - }, - "2006": { - "op": "SHL" - }, - "2007": { - "branch": 58, - "fn": "Router.getRouterImplementation", - "offset": [ - 7495, - 7545 - ], - "op": "EQ", - "path": "24" - }, - "2008": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7432, - 7545 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2009": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7415, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "2010": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7415, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x804" - }, - "2013": { - "branch": 58, - "fn": "Router.getRouterImplementation", - "offset": [ - 7415, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "2014": { - "op": "POP" - }, - "2015": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7577, - 7594 - ], - "op": "PUSH32", - "path": "24", - "statement": 7, - "value": "0x0" - }, - "2048": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7570, - 7594 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "2051": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7570, - 7594 - ], - "op": "JUMP", - "path": "24" - }, - "2052": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7415, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2053": { - "op": "PUSH1", - "value": "0x1" - }, - "2055": { - "op": "PUSH1", - "value": "0x1" - }, - "2057": { - "op": "PUSH1", - "value": "0xE0" - }, - "2059": { - "op": "SHL" - }, - "2060": { - "op": "SUB" - }, - "2061": { - "op": "NOT" - }, - "2062": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7675 - ], - "op": "DUP3", - "path": "24" - }, - "2063": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7675 - ], - "op": "AND", - "path": "24" - }, - "2064": { - "op": "PUSH4", - "value": "0x7ABAF271" - }, - "2069": { - "op": "PUSH1", - "value": "0xE1" - }, - "2071": { - "op": "SHL" - }, - "2072": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7675 - ], - "op": "EQ", - "path": "24" - }, - "2073": { - "branch": 59, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7675 - ], - "op": "DUP1", - "path": "24" - }, - "2074": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7741 - ], - "op": "PUSH2", - "path": "24", - "value": "0x833" - }, - "2077": { - "branch": 59, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7741 - ], - "op": "JUMPI", - "path": "24" - }, - "2078": { - "op": "POP" - }, - "2079": { - "op": "PUSH1", - "value": "0x1" - }, - "2081": { - "op": "PUSH1", - "value": "0x1" - }, - "2083": { - "op": "PUSH1", - "value": "0xE0" - }, - "2085": { - "op": "SHL" - }, - "2086": { - "op": "SUB" - }, - "2087": { - "op": "NOT" - }, - "2088": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7691, - 7741 - ], - "op": "DUP3", - "path": "24" - }, - "2089": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7691, - 7741 - ], - "op": "AND", - "path": "24" - }, - "2090": { - "op": "PUSH4", - "value": "0xE31051A1" - }, - "2095": { - "op": "PUSH1", - "value": "0xE0" - }, - "2097": { - "op": "SHL" - }, - "2098": { - "branch": 60, - "fn": "Router.getRouterImplementation", - "offset": [ - 7691, - 7741 - ], - "op": "EQ", - "path": "24" - }, - "2099": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7741 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2100": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7807 - ], - "op": "DUP1", - "path": "24" - }, - "2101": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7807 - ], - "op": "PUSH2", - "path": "24", - "value": "0x84E" - }, - "2104": { - "branch": 60, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7807 - ], - "op": "JUMPI", - "path": "24" - }, - "2105": { - "op": "POP" - }, - "2106": { - "op": "PUSH1", - "value": "0x1" - }, - "2108": { - "op": "PUSH1", - "value": "0x1" - }, - "2110": { - "op": "PUSH1", - "value": "0xE0" - }, - "2112": { - "op": "SHL" - }, - "2113": { - "op": "SUB" - }, - "2114": { - "op": "NOT" - }, - "2115": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7757, - 7807 - ], - "op": "DUP3", - "path": "24" - }, - "2116": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7757, - 7807 - ], - "op": "AND", - "path": "24" - }, - "2117": { - "op": "PUSH4", - "value": "0xA11A4293" - }, - "2122": { - "op": "PUSH1", - "value": "0xE0" - }, - "2124": { - "op": "SHL" - }, - "2125": { - "branch": 61, - "fn": "Router.getRouterImplementation", - "offset": [ - 7757, - 7807 - ], - "op": "EQ", - "path": "24" - }, - "2126": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7807 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2127": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7873 - ], - "op": "DUP1", - "path": "24" - }, - "2128": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7873 - ], - "op": "PUSH2", - "path": "24", - "value": "0x869" - }, - "2131": { - "branch": 61, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7873 - ], - "op": "JUMPI", - "path": "24" - }, - "2132": { - "op": "POP" - }, - "2133": { - "op": "PUSH1", - "value": "0x1" - }, - "2135": { - "op": "PUSH1", - "value": "0x1" - }, - "2137": { - "op": "PUSH1", - "value": "0xE0" - }, - "2139": { - "op": "SHL" - }, - "2140": { - "op": "SUB" - }, - "2141": { - "op": "NOT" - }, - "2142": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7823, - 7873 - ], - "op": "DUP3", - "path": "24" - }, - "2143": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7823, - 7873 - ], - "op": "AND", - "path": "24" - }, - "2144": { - "op": "PUSH4", - "value": "0x5284765" - }, - "2149": { - "op": "PUSH1", - "value": "0xE5" - }, - "2151": { - "op": "SHL" - }, - "2152": { - "branch": 62, - "fn": "Router.getRouterImplementation", - "offset": [ - 7823, - 7873 - ], - "op": "EQ", - "path": "24" - }, - "2153": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7873 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2154": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7937 - ], - "op": "DUP1", - "path": "24" - }, - "2155": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7937 - ], - "op": "PUSH2", - "path": "24", - "value": "0x884" - }, - "2158": { - "branch": 62, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7937 - ], - "op": "JUMPI", - "path": "24" - }, - "2159": { - "op": "POP" - }, - "2160": { - "op": "PUSH1", - "value": "0x1" - }, - "2162": { - "op": "PUSH1", - "value": "0x1" - }, - "2164": { - "op": "PUSH1", - "value": "0xE0" - }, - "2166": { - "op": "SHL" - }, - "2167": { - "op": "SUB" - }, - "2168": { - "op": "NOT" - }, - "2169": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7889, - 7937 - ], - "op": "DUP3", - "path": "24" - }, - "2170": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7889, - 7937 - ], - "op": "AND", - "path": "24" - }, - "2171": { - "op": "PUSH4", - "value": "0x315CB2B9" - }, - "2176": { - "op": "PUSH1", - "value": "0xE2" - }, - "2178": { - "op": "SHL" - }, - "2179": { - "branch": 63, - "fn": "Router.getRouterImplementation", - "offset": [ - 7889, - 7937 - ], - "op": "EQ", - "path": "24" - }, - "2180": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 7937 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2181": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8005 - ], - "op": "DUP1", - "path": "24" - }, - "2182": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8005 - ], - "op": "PUSH2", - "path": "24", - "value": "0x89F" - }, - "2185": { - "branch": 63, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8005 - ], - "op": "JUMPI", - "path": "24" - }, - "2186": { - "op": "POP" - }, - "2187": { - "op": "PUSH1", - "value": "0x1" - }, - "2189": { - "op": "PUSH1", - "value": "0x1" - }, - "2191": { - "op": "PUSH1", - "value": "0xE0" - }, - "2193": { - "op": "SHL" - }, - "2194": { - "op": "SUB" - }, - "2195": { - "op": "NOT" - }, - "2196": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7953, - 8005 - ], - "op": "DUP3", - "path": "24" - }, - "2197": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7953, - 8005 - ], - "op": "AND", - "path": "24" - }, - "2198": { - "op": "PUSH4", - "value": "0x2C90B94D" - }, - "2203": { - "op": "PUSH1", - "value": "0xE2" - }, - "2205": { - "op": "SHL" - }, - "2206": { - "branch": 64, - "fn": "Router.getRouterImplementation", - "offset": [ - 7953, - 8005 - ], - "op": "EQ", - "path": "24" - }, - "2207": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8005 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2208": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8070 - ], - "op": "DUP1", - "path": "24" - }, - "2209": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8070 - ], - "op": "PUSH2", - "path": "24", - "value": "0x8BA" - }, - "2212": { - "branch": 64, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8070 - ], - "op": "JUMPI", - "path": "24" - }, - "2213": { - "op": "POP" - }, - "2214": { - "op": "PUSH1", - "value": "0x1" - }, - "2216": { - "op": "PUSH1", - "value": "0x1" - }, - "2218": { - "op": "PUSH1", - "value": "0xE0" - }, - "2220": { - "op": "SHL" - }, - "2221": { - "op": "SUB" - }, - "2222": { - "op": "NOT" - }, - "2223": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8021, - 8070 - ], - "op": "DUP3", - "path": "24" - }, - "2224": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8021, - 8070 - ], - "op": "AND", - "path": "24" - }, - "2225": { - "op": "PUSH4", - "value": "0x9CE3C19" - }, - "2230": { - "op": "PUSH1", - "value": "0xE3" - }, - "2232": { - "op": "SHL" - }, - "2233": { - "branch": 65, - "fn": "Router.getRouterImplementation", - "offset": [ - 8021, - 8070 - ], - "op": "EQ", - "path": "24" - }, - "2234": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8070 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2235": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8148 - ], - "op": "DUP1", - "path": "24" - }, - "2236": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8148 - ], - "op": "PUSH2", - "path": "24", - "value": "0x8D5" - }, - "2239": { - "branch": 65, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8148 - ], - "op": "JUMPI", - "path": "24" - }, - "2240": { - "op": "POP" - }, - "2241": { - "op": "PUSH1", - "value": "0x1" - }, - "2243": { - "op": "PUSH1", - "value": "0x1" - }, - "2245": { - "op": "PUSH1", - "value": "0xE0" - }, - "2247": { - "op": "SHL" - }, - "2248": { - "op": "SUB" - }, - "2249": { - "op": "NOT" - }, - "2250": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8086, - 8148 - ], - "op": "DUP3", - "path": "24" - }, - "2251": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8086, - 8148 - ], - "op": "AND", - "path": "24" - }, - "2252": { - "op": "PUSH4", - "value": "0x54EBDE29" - }, - "2257": { - "op": "PUSH1", - "value": "0xE1" - }, - "2259": { - "op": "SHL" - }, - "2260": { - "branch": 66, - "fn": "Router.getRouterImplementation", - "offset": [ - 8086, - 8148 - ], - "op": "EQ", - "path": "24" - }, - "2261": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8148 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2262": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8225 - ], - "op": "DUP1", - "path": "24" - }, - "2263": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8225 - ], - "op": "PUSH2", - "path": "24", - "value": "0x8F0" - }, - "2266": { - "branch": 66, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8225 - ], - "op": "JUMPI", - "path": "24" - }, - "2267": { - "op": "POP" - }, - "2268": { - "op": "PUSH1", - "value": "0x1" - }, - "2270": { - "op": "PUSH1", - "value": "0x1" - }, - "2272": { - "op": "PUSH1", - "value": "0xE0" - }, - "2274": { - "op": "SHL" - }, - "2275": { - "op": "SUB" - }, - "2276": { - "op": "NOT" - }, - "2277": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8164, - 8225 - ], - "op": "DUP3", - "path": "24" - }, - "2278": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8164, - 8225 - ], - "op": "AND", - "path": "24" - }, - "2279": { - "op": "PUSH4", - "value": "0x98DCBC23" - }, - "2284": { - "op": "PUSH1", - "value": "0xE0" - }, - "2286": { - "op": "SHL" - }, - "2287": { - "branch": 67, - "fn": "Router.getRouterImplementation", - "offset": [ - 8164, - 8225 - ], - "op": "EQ", - "path": "24" - }, - "2288": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8225 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2289": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8299 - ], - "op": "DUP1", - "path": "24" - }, - "2290": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8299 - ], - "op": "PUSH2", - "path": "24", - "value": "0x90B" - }, - "2293": { - "branch": 67, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8299 - ], - "op": "JUMPI", - "path": "24" - }, - "2294": { - "op": "POP" - }, - "2295": { - "op": "PUSH1", - "value": "0x1" - }, - "2297": { - "op": "PUSH1", - "value": "0x1" - }, - "2299": { - "op": "PUSH1", - "value": "0xE0" - }, - "2301": { - "op": "SHL" - }, - "2302": { - "op": "SUB" - }, - "2303": { - "op": "NOT" - }, - "2304": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8241, - 8299 - ], - "op": "DUP3", - "path": "24" - }, - "2305": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8241, - 8299 - ], - "op": "AND", - "path": "24" - }, - "2306": { - "op": "PUSH4", - "value": "0x33EABD1D" - }, - "2311": { - "op": "PUSH1", - "value": "0xE2" - }, - "2313": { - "op": "SHL" - }, - "2314": { - "branch": 68, - "fn": "Router.getRouterImplementation", - "offset": [ - 8241, - 8299 - ], - "op": "EQ", - "path": "24" - }, - "2315": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8299 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2316": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8380 - ], - "op": "DUP1", - "path": "24" - }, - "2317": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8380 - ], - "op": "PUSH2", - "path": "24", - "value": "0x926" - }, - "2320": { - "branch": 68, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8380 - ], - "op": "JUMPI", - "path": "24" - }, - "2321": { - "op": "POP" - }, - "2322": { - "op": "PUSH1", - "value": "0x1" - }, - "2324": { - "op": "PUSH1", - "value": "0x1" - }, - "2326": { - "op": "PUSH1", - "value": "0xE0" - }, - "2328": { - "op": "SHL" - }, - "2329": { - "op": "SUB" - }, - "2330": { - "op": "NOT" - }, - "2331": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8315, - 8380 - ], - "op": "DUP3", - "path": "24" - }, - "2332": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8315, - 8380 - ], - "op": "AND", - "path": "24" - }, - "2333": { - "op": "PUSH4", - "value": "0x413F2C5F" - }, - "2338": { - "op": "PUSH1", - "value": "0xE0" - }, - "2340": { - "op": "SHL" - }, - "2341": { - "branch": 69, - "fn": "Router.getRouterImplementation", - "offset": [ - 8315, - 8380 - ], - "op": "EQ", - "path": "24" - }, - "2342": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8380 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2343": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8462 - ], - "op": "DUP1", - "path": "24" - }, - "2344": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8462 - ], - "op": "PUSH2", - "path": "24", - "value": "0x941" - }, - "2347": { - "branch": 69, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8462 - ], - "op": "JUMPI", - "path": "24" - }, - "2348": { - "op": "POP" - }, - "2349": { - "op": "PUSH1", - "value": "0x1" - }, - "2351": { - "op": "PUSH1", - "value": "0x1" - }, - "2353": { - "op": "PUSH1", - "value": "0xE0" - }, - "2355": { - "op": "SHL" - }, - "2356": { - "op": "SUB" - }, - "2357": { - "op": "NOT" - }, - "2358": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8396, - 8462 - ], - "op": "DUP3", - "path": "24" - }, - "2359": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8396, - 8462 - ], - "op": "AND", - "path": "24" - }, - "2360": { - "op": "PUSH4", - "value": "0xD0DA867" - }, - "2365": { - "op": "PUSH1", - "value": "0xE2" - }, - "2367": { - "op": "SHL" - }, - "2368": { - "branch": 70, - "fn": "Router.getRouterImplementation", - "offset": [ - 8396, - 8462 - ], - "op": "EQ", - "path": "24" - }, - "2369": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8462 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2370": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8541 - ], - "op": "DUP1", - "path": "24" - }, - "2371": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8541 - ], - "op": "PUSH2", - "path": "24", - "value": "0x95C" - }, - "2374": { - "branch": 70, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8541 - ], - "op": "JUMPI", - "path": "24" - }, - "2375": { - "op": "POP" - }, - "2376": { - "op": "PUSH1", - "value": "0x1" - }, - "2378": { - "op": "PUSH1", - "value": "0x1" - }, - "2380": { - "op": "PUSH1", - "value": "0xE0" - }, - "2382": { - "op": "SHL" - }, - "2383": { - "op": "SUB" - }, - "2384": { - "op": "NOT" - }, - "2385": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8478, - 8541 - ], - "op": "DUP3", - "path": "24" - }, - "2386": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8478, - 8541 - ], - "op": "AND", - "path": "24" - }, - "2387": { - "op": "PUSH4", - "value": "0x353ABC5D" - }, - "2392": { - "op": "PUSH1", - "value": "0xE0" - }, - "2394": { - "op": "SHL" - }, - "2395": { - "branch": 71, - "fn": "Router.getRouterImplementation", - "offset": [ - 8478, - 8541 - ], - "op": "EQ", - "path": "24" - }, - "2396": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8541 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2397": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8624 - ], - "op": "DUP1", - "path": "24" - }, - "2398": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8624 - ], - "op": "PUSH2", - "path": "24", - "value": "0x977" - }, - "2401": { - "branch": 71, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8624 - ], - "op": "JUMPI", - "path": "24" - }, - "2402": { - "op": "POP" - }, - "2403": { - "op": "PUSH1", - "value": "0x1" - }, - "2405": { - "op": "PUSH1", - "value": "0x1" - }, - "2407": { - "op": "PUSH1", - "value": "0xE0" - }, - "2409": { - "op": "SHL" - }, - "2410": { - "op": "SUB" - }, - "2411": { - "op": "NOT" - }, - "2412": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8557, - 8624 - ], - "op": "DUP3", - "path": "24" - }, - "2413": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8557, - 8624 - ], - "op": "AND", - "path": "24" - }, - "2414": { - "op": "PUSH4", - "value": "0xFA17B5F1" - }, - "2419": { - "op": "PUSH1", - "value": "0xE0" - }, - "2421": { - "op": "SHL" - }, - "2422": { - "branch": 72, - "fn": "Router.getRouterImplementation", - "offset": [ - 8557, - 8624 - ], - "op": "EQ", - "path": "24" - }, - "2423": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8624 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2424": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8689 - ], - "op": "DUP1", - "path": "24" - }, - "2425": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8689 - ], - "op": "PUSH2", - "path": "24", - "value": "0x992" - }, - "2428": { - "branch": 72, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8689 - ], - "op": "JUMPI", - "path": "24" - }, - "2429": { - "op": "POP" - }, - "2430": { - "op": "PUSH1", - "value": "0x1" - }, - "2432": { - "op": "PUSH1", - "value": "0x1" - }, - "2434": { - "op": "PUSH1", - "value": "0xE0" - }, - "2436": { - "op": "SHL" - }, - "2437": { - "op": "SUB" - }, - "2438": { - "op": "NOT" - }, - "2439": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8640, - 8689 - ], - "op": "DUP3", - "path": "24" - }, - "2440": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8640, - 8689 - ], - "op": "AND", - "path": "24" - }, - "2441": { - "op": "PUSH4", - "value": "0x113AA8B1" - }, - "2446": { - "op": "PUSH1", - "value": "0xE0" - }, - "2448": { - "op": "SHL" - }, - "2449": { - "branch": 73, - "fn": "Router.getRouterImplementation", - "offset": [ - 8640, - 8689 - ], - "op": "EQ", - "path": "24" - }, - "2450": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8689 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2451": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8744 - ], - "op": "DUP1", - "path": "24" - }, - "2452": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8744 - ], - "op": "PUSH2", - "path": "24", - "value": "0x9AD" - }, - "2455": { - "branch": 73, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8744 - ], - "op": "JUMPI", - "path": "24" - }, - "2456": { - "op": "POP" - }, - "2457": { - "op": "PUSH1", - "value": "0x1" - }, - "2459": { - "op": "PUSH1", - "value": "0x1" - }, - "2461": { - "op": "PUSH1", - "value": "0xE0" - }, - "2463": { - "op": "SHL" - }, - "2464": { - "op": "SUB" - }, - "2465": { - "op": "NOT" - }, - "2466": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8705, - 8744 - ], - "op": "DUP3", - "path": "24" - }, - "2467": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8705, - 8744 - ], - "op": "AND", - "path": "24" - }, - "2468": { - "op": "PUSH4", - "value": "0x1B2CE7F3" - }, - "2473": { - "op": "PUSH1", - "value": "0xE1" - }, - "2475": { - "op": "SHL" - }, - "2476": { - "branch": 74, - "fn": "Router.getRouterImplementation", - "offset": [ - 8705, - 8744 - ], - "op": "EQ", - "path": "24" - }, - "2477": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8744 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2478": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8806 - ], - "op": "DUP1", - "path": "24" - }, - "2479": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8806 - ], - "op": "PUSH2", - "path": "24", - "value": "0x9C8" - }, - "2482": { - "branch": 74, - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8806 - ], - "op": "JUMPI", - "path": "24" - }, - "2483": { - "op": "POP" - }, - "2484": { - "op": "PUSH1", - "value": "0x1" - }, - "2486": { - "op": "PUSH1", - "value": "0x1" - }, - "2488": { - "op": "PUSH1", - "value": "0xE0" - }, - "2490": { - "op": "SHL" - }, - "2491": { - "op": "SUB" - }, - "2492": { - "op": "NOT" - }, - "2493": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8760, - 8806 - ], - "op": "DUP3", - "path": "24" - }, - "2494": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8760, - 8806 - ], - "op": "AND", - "path": "24" - }, - "2495": { - "op": "PUSH4", - "value": "0x278F7943" - }, - "2500": { - "op": "PUSH1", - "value": "0xE1" - }, - "2502": { - "op": "SHL" - }, - "2503": { - "branch": 75, - "fn": "Router.getRouterImplementation", - "offset": [ - 8760, - 8806 - ], - "op": "EQ", - "path": "24" - }, - "2504": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7628, - 8806 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2505": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7611, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "2506": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7611, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0x9F4" - }, - "2509": { - "branch": 75, - "fn": "Router.getRouterImplementation", - "offset": [ - 7611, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "2510": { - "op": "POP" - }, - "2511": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8838, - 8848 - ], - "op": "PUSH32", - "path": "24", - "statement": 8, - "value": "0x0" - }, - "2544": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8831, - 8848 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "2547": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8831, - 8848 - ], - "op": "JUMP", - "path": "24" - }, - "2548": { - "fn": "Router.getRouterImplementation", - "offset": [ - 7611, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2549": { - "op": "PUSH1", - "value": "0x1" - }, - "2551": { - "op": "PUSH1", - "value": "0x1" - }, - "2553": { - "op": "PUSH1", - "value": "0xE0" - }, - "2555": { - "op": "SHL" - }, - "2556": { - "op": "SUB" - }, - "2557": { - "op": "NOT" - }, - "2558": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 8935 - ], - "op": "DUP3", - "path": "24" - }, - "2559": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 8935 - ], - "op": "AND", - "path": "24" - }, - "2560": { - "op": "PUSH4", - "value": "0x7D6DBFF7" - }, - "2565": { - "op": "PUSH1", - "value": "0xE1" - }, - "2567": { - "op": "SHL" - }, - "2568": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 8935 - ], - "op": "EQ", - "path": "24" - }, - "2569": { - "branch": 76, - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 8935 - ], - "op": "DUP1", - "path": "24" - }, - "2570": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9009 - ], - "op": "PUSH2", - "path": "24", - "value": "0xA23" - }, - "2573": { - "branch": 76, - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9009 - ], - "op": "JUMPI", - "path": "24" - }, - "2574": { - "op": "POP" - }, - "2575": { - "op": "PUSH1", - "value": "0x1" - }, - "2577": { - "op": "PUSH1", - "value": "0x1" - }, - "2579": { - "op": "PUSH1", - "value": "0xE0" - }, - "2581": { - "op": "SHL" - }, - "2582": { - "op": "SUB" - }, - "2583": { - "op": "NOT" - }, - "2584": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8951, - 9009 - ], - "op": "DUP3", - "path": "24" - }, - "2585": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8951, - 9009 - ], - "op": "AND", - "path": "24" - }, - "2586": { - "op": "PUSH4", - "value": "0x6D7A00EB" - }, - "2591": { - "op": "PUSH1", - "value": "0xE0" - }, - "2593": { - "op": "SHL" - }, - "2594": { - "branch": 77, - "fn": "Router.getRouterImplementation", - "offset": [ - 8951, - 9009 - ], - "op": "EQ", - "path": "24" - }, - "2595": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9009 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2596": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9076 - ], - "op": "DUP1", - "path": "24" - }, - "2597": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9076 - ], - "op": "PUSH2", - "path": "24", - "value": "0xA3E" - }, - "2600": { - "branch": 77, - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9076 - ], - "op": "JUMPI", - "path": "24" - }, - "2601": { - "op": "POP" - }, - "2602": { - "op": "PUSH1", - "value": "0x1" - }, - "2604": { - "op": "PUSH1", - "value": "0x1" - }, - "2606": { - "op": "PUSH1", - "value": "0xE0" - }, - "2608": { - "op": "SHL" - }, - "2609": { - "op": "SUB" - }, - "2610": { - "op": "NOT" - }, - "2611": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9025, - 9076 - ], - "op": "DUP3", - "path": "24" - }, - "2612": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9025, - 9076 - ], - "op": "AND", - "path": "24" - }, - "2613": { - "op": "PUSH4", - "value": "0x7F23D4F9" - }, - "2618": { - "op": "PUSH1", - "value": "0xE1" - }, - "2620": { - "op": "SHL" - }, - "2621": { - "branch": 78, - "fn": "Router.getRouterImplementation", - "offset": [ - 9025, - 9076 - ], - "op": "EQ", - "path": "24" - }, - "2622": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9076 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2623": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9141 - ], - "op": "DUP1", - "path": "24" - }, - "2624": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9141 - ], - "op": "PUSH2", - "path": "24", - "value": "0xA59" - }, - "2627": { - "branch": 78, - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9141 - ], - "op": "JUMPI", - "path": "24" - }, - "2628": { - "op": "POP" - }, - "2629": { - "op": "PUSH1", - "value": "0x1" - }, - "2631": { - "op": "PUSH1", - "value": "0x1" - }, - "2633": { - "op": "PUSH1", - "value": "0xE0" - }, - "2635": { - "op": "SHL" - }, - "2636": { - "op": "SUB" - }, - "2637": { - "op": "NOT" - }, - "2638": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9092, - 9141 - ], - "op": "DUP3", - "path": "24" - }, - "2639": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9092, - 9141 - ], - "op": "AND", - "path": "24" - }, - "2640": { - "op": "PUSH4", - "value": "0x239CEC8F" - }, - "2645": { - "op": "PUSH1", - "value": "0xE2" - }, - "2647": { - "op": "SHL" - }, - "2648": { - "branch": 79, - "fn": "Router.getRouterImplementation", - "offset": [ - 9092, - 9141 - ], - "op": "EQ", - "path": "24" - }, - "2649": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9141 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2650": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9211 - ], - "op": "DUP1", - "path": "24" - }, - "2651": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9211 - ], - "op": "PUSH2", - "path": "24", - "value": "0xA74" - }, - "2654": { - "branch": 79, - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9211 - ], - "op": "JUMPI", - "path": "24" - }, - "2655": { - "op": "POP" - }, - "2656": { - "op": "PUSH1", - "value": "0x1" - }, - "2658": { - "op": "PUSH1", - "value": "0x1" - }, - "2660": { - "op": "PUSH1", - "value": "0xE0" - }, - "2662": { - "op": "SHL" - }, - "2663": { - "op": "SUB" - }, - "2664": { - "op": "NOT" - }, - "2665": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9157, - 9211 - ], - "op": "DUP3", - "path": "24" - }, - "2666": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9157, - 9211 - ], - "op": "AND", - "path": "24" - }, - "2667": { - "op": "PUSH4", - "value": "0x12ADC47B" - }, - "2672": { - "op": "PUSH1", - "value": "0xE0" - }, - "2674": { - "op": "SHL" - }, - "2675": { - "branch": 80, - "fn": "Router.getRouterImplementation", - "offset": [ - 9157, - 9211 - ], - "op": "EQ", - "path": "24" - }, - "2676": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8882, - 9211 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2677": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8865, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "2678": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8865, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0xAA0" - }, - "2681": { - "branch": 80, - "fn": "Router.getRouterImplementation", - "offset": [ - 8865, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "2682": { - "op": "POP" - }, - "2683": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9243, - 9251 - ], - "op": "PUSH32", - "path": "24", - "statement": 9, - "value": "0x0" - }, - "2716": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9236, - 9251 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "2719": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9236, - 9251 - ], - "op": "JUMP", - "path": "24" - }, - "2720": { - "fn": "Router.getRouterImplementation", - "offset": [ - 8865, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2721": { - "op": "PUSH1", - "value": "0x1" - }, - "2723": { - "op": "PUSH1", - "value": "0x1" - }, - "2725": { - "op": "PUSH1", - "value": "0xE0" - }, - "2727": { - "op": "SHL" - }, - "2728": { - "op": "SUB" - }, - "2729": { - "op": "NOT" - }, - "2730": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9344 - ], - "op": "DUP3", - "path": "24" - }, - "2731": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9344 - ], - "op": "AND", - "path": "24" - }, - "2732": { - "op": "PUSH4", - "value": "0x6A09A2A3" - }, - "2737": { - "op": "PUSH1", - "value": "0xE0" - }, - "2739": { - "op": "SHL" - }, - "2740": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9344 - ], - "op": "EQ", - "path": "24" - }, - "2741": { - "branch": 81, - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9344 - ], - "op": "DUP1", - "path": "24" - }, - "2742": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9426 - ], - "op": "PUSH2", - "path": "24", - "value": "0xACF" - }, - "2745": { - "branch": 81, - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9426 - ], - "op": "JUMPI", - "path": "24" - }, - "2746": { - "op": "POP" - }, - "2747": { - "op": "PUSH1", - "value": "0x1" - }, - "2749": { - "op": "PUSH1", - "value": "0x1" - }, - "2751": { - "op": "PUSH1", - "value": "0xE0" - }, - "2753": { - "op": "SHL" - }, - "2754": { - "op": "SUB" - }, - "2755": { - "op": "NOT" - }, - "2756": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9360, - 9426 - ], - "op": "DUP3", - "path": "24" - }, - "2757": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9360, - 9426 - ], - "op": "AND", - "path": "24" - }, - "2758": { - "op": "PUSH4", - "value": "0x8355E895" - }, - "2763": { - "op": "PUSH1", - "value": "0xE0" - }, - "2765": { - "op": "SHL" - }, - "2766": { - "branch": 82, - "fn": "Router.getRouterImplementation", - "offset": [ - 9360, - 9426 - ], - "op": "EQ", - "path": "24" - }, - "2767": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9426 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2768": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9508 - ], - "op": "DUP1", - "path": "24" - }, - "2769": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9508 - ], - "op": "PUSH2", - "path": "24", - "value": "0xAEA" - }, - "2772": { - "branch": 82, - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9508 - ], - "op": "JUMPI", - "path": "24" - }, - "2773": { - "op": "POP" - }, - "2774": { - "op": "PUSH1", - "value": "0x1" - }, - "2776": { - "op": "PUSH1", - "value": "0x1" - }, - "2778": { - "op": "PUSH1", - "value": "0xE0" - }, - "2780": { - "op": "SHL" - }, - "2781": { - "op": "SUB" - }, - "2782": { - "op": "NOT" - }, - "2783": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9442, - 9508 - ], - "op": "DUP3", - "path": "24" - }, - "2784": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9442, - 9508 - ], - "op": "AND", - "path": "24" - }, - "2785": { - "op": "PUSH4", - "value": "0x94614DF" - }, - "2790": { - "op": "PUSH1", - "value": "0xE0" - }, - "2792": { - "op": "SHL" - }, - "2793": { - "branch": 83, - "fn": "Router.getRouterImplementation", - "offset": [ - 9442, - 9508 - ], - "op": "EQ", - "path": "24" - }, - "2794": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9508 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2795": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9589 - ], - "op": "DUP1", - "path": "24" - }, - "2796": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9589 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB05" - }, - "2799": { - "branch": 83, - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9589 - ], - "op": "JUMPI", - "path": "24" - }, - "2800": { - "op": "POP" - }, - "2801": { - "op": "PUSH1", - "value": "0x1" - }, - "2803": { - "op": "PUSH1", - "value": "0x1" - }, - "2805": { - "op": "PUSH1", - "value": "0xE0" - }, - "2807": { - "op": "SHL" - }, - "2808": { - "op": "SUB" - }, - "2809": { - "op": "NOT" - }, - "2810": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9524, - 9589 - ], - "op": "DUP3", - "path": "24" - }, - "2811": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9524, - 9589 - ], - "op": "AND", - "path": "24" - }, - "2812": { - "op": "PUSH4", - "value": "0x4BEB6D97" - }, - "2817": { - "op": "PUSH1", - "value": "0xE1" - }, - "2819": { - "op": "SHL" - }, - "2820": { - "branch": 84, - "fn": "Router.getRouterImplementation", - "offset": [ - 9524, - 9589 - ], - "op": "EQ", - "path": "24" - }, - "2821": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9285, - 9589 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2822": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9268, - 9819 - ], - "op": "ISZERO", - "path": "24" - }, - "2823": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9268, - 9819 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB31" - }, - "2826": { - "branch": 84, - "fn": "Router.getRouterImplementation", - "offset": [ - 9268, - 9819 - ], - "op": "JUMPI", - "path": "24" - }, - "2827": { - "op": "POP" - }, - "2828": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9621, - 9638 - ], - "op": "PUSH32", - "path": "24", - "statement": 10, - "value": "0x0" - }, - "2861": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9614, - 9638 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB54" - }, - "2864": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9614, - 9638 - ], - "op": "JUMP", - "path": "24" - }, - "2865": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9268, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2866": { - "op": "POP" - }, - "2867": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9803, - 9808 - ], - "op": "PUSH32", - "path": "24", - "statement": 11, - "value": "0x0" - }, - "2900": { - "fn": "Router.getRouterImplementation", - "offset": [ - 9268, - 9819 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2901": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "SWAP2", - "path": "24" - }, - "2902": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "SWAP1", - "path": "24" - }, - "2903": { - "fn": "Router.getRouterImplementation", - "offset": [ - 4310, - 9825 - ], - "op": "POP", - "path": "24" - }, - "2904": { - "fn": "Router.getRouterImplementation", - "jump": "o", - "offset": [ - 4310, - 9825 - ], - "op": "JUMP", - "path": "24" - }, - "2905": { - "fn": "Router._delegate", - "offset": [ - 10005, - 10975 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2906": { - "fn": "Router._delegate", - "offset": [ - 10390, - 10404 - ], - "op": "CALLDATASIZE", - "path": "24" - }, - "2907": { - "fn": "Router._delegate", - "offset": [ - 10387, - 10388 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "2909": { - "fn": "Router._delegate", - "offset": [ - 10384, - 10385 - ], - "op": "DUP1", - "path": "24" - }, - "2910": { - "fn": "Router._delegate", - "offset": [ - 10371, - 10405 - ], - "op": "CALLDATACOPY", - "path": "24" - }, - "2911": { - "fn": "Router._delegate", - "offset": [ - 10604, - 10605 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "2913": { - "fn": "Router._delegate", - "offset": [ - 10601, - 10602 - ], - "op": "DUP1", - "path": "24" - }, - "2914": { - "fn": "Router._delegate", - "offset": [ - 10585, - 10599 - ], - "op": "CALLDATASIZE", - "path": "24" - }, - "2915": { - "fn": "Router._delegate", - "offset": [ - 10582, - 10583 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "2917": { - "fn": "Router._delegate", - "offset": [ - 10566, - 10580 - ], - "op": "DUP5", - "path": "24" - }, - "2918": { - "fn": "Router._delegate", - "offset": [ - 10559, - 10564 - ], - "op": "GAS", - "path": "24" - }, - "2919": { - "fn": "Router._delegate", - "offset": [ - 10546, - 10606 - ], - "op": "DELEGATECALL", - "path": "24" - }, - "2920": { - "fn": "Router._delegate", - "offset": [ - 10680, - 10696 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "2921": { - "fn": "Router._delegate", - "offset": [ - 10677, - 10678 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "2923": { - "fn": "Router._delegate", - "offset": [ - 10674, - 10675 - ], - "op": "DUP1", - "path": "24" - }, - "2924": { - "fn": "Router._delegate", - "offset": [ - 10659, - 10697 - ], - "op": "RETURNDATACOPY", - "path": "24" - }, - "2925": { - "fn": "Router._delegate", - "offset": [ - 10718, - 10724 - ], - "op": "DUP1", - "path": "24" - }, - "2926": { - "fn": "Router._delegate", - "offset": [ - 10793, - 10867 - ], - "op": "DUP1", - "path": "24" - }, - "2927": { - "fn": "Router._delegate", - "offset": [ - 10793, - 10867 - ], - "op": "ISZERO", - "path": "24" - }, - "2928": { - "fn": "Router._delegate", - "offset": [ - 10793, - 10867 - ], - "op": "PUSH2", - "path": "24", - "value": "0xB78" - }, - "2931": { - "fn": "Router._delegate", - "offset": [ - 10793, - 10867 - ], - "op": "JUMPI", - "path": "24" - }, - "2932": { - "fn": "Router._delegate", - "offset": [ - 10924, - 10940 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "2933": { - "fn": "Router._delegate", - "offset": [ - 10921, - 10922 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "2935": { - "fn": "Router._delegate", - "offset": [ - 10914, - 10941 - ], - "op": "RETURN", - "path": "24" - }, - "2936": { - "fn": "Router._delegate", - "offset": [ - 10793, - 10867 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2937": { - "fn": "Router._delegate", - "offset": [ - 10832, - 10848 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "2938": { - "fn": "Router._delegate", - "offset": [ - 10829, - 10830 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "2940": { - "fn": "Router._delegate", - "offset": [ - 10822, - 10849 - ], - "op": "REVERT", - "path": "24" - }, - "2941": { - "offset": [ - 1216, - 1246 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2942": { - "fn": "Router._delegate", - "offset": [ - 1216, - 1246 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "2975": { - "fn": "Router._delegate", - "offset": [ - 1216, - 1246 - ], - "op": "DUP2", - "path": "24" - }, - "2976": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1216, - 1246 - ], - "op": "JUMP", - "path": "24" - }, - "2977": { - "offset": [ - 1175, - 1210 - ], - "op": "JUMPDEST", - "path": "24" - }, - "2978": { - "fn": "Router._delegate", - "offset": [ - 1175, - 1210 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3011": { - "fn": "Router._delegate", - "offset": [ - 1175, - 1210 - ], - "op": "DUP2", - "path": "24" - }, - "3012": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1175, - 1210 - ], - "op": "JUMP", - "path": "24" - }, - "3013": { - "offset": [ - 1300, - 1339 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3014": { - "fn": "Router._delegate", - "offset": [ - 1300, - 1339 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3047": { - "fn": "Router._delegate", - "offset": [ - 1300, - 1339 - ], - "op": "DUP2", - "path": "24" - }, - "3048": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1300, - 1339 - ], - "op": "JUMP", - "path": "24" - }, - "3049": { - "offset": [ - 1520, - 1560 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3050": { - "fn": "Router._delegate", - "offset": [ - 1520, - 1560 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3083": { - "fn": "Router._delegate", - "offset": [ - 1520, - 1560 - ], - "op": "DUP2", - "path": "24" - }, - "3084": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1520, - 1560 - ], - "op": "JUMP", - "path": "24" - }, - "3085": { - "offset": [ - 1035, - 1063 - ], - "op": "JUMPDEST", - "path": "63" - }, - "3086": { - "fn": "Router._delegate", - "offset": [ - 1035, - 1063 - ], - "op": "PUSH1", - "path": "63", - "value": "0x2" - }, - "3088": { - "fn": "Router._delegate", - "offset": [ - 1035, - 1063 - ], - "op": "SLOAD", - "path": "63" - }, - "3089": { - "op": "PUSH1", - "value": "0x1" - }, - "3091": { - "op": "PUSH1", - "value": "0x1" - }, - "3093": { - "op": "PUSH1", - "value": "0xA0" - }, - "3095": { - "op": "SHL" - }, - "3096": { - "op": "SUB" - }, - "3097": { - "offset": [ - 1035, - 1063 - ], - "op": "AND", - "path": "63" - }, - "3098": { - "fn": "Router._delegate", - "offset": [ - 1035, - 1063 - ], - "op": "DUP2", - "path": "63" - }, - "3099": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1035, - 1063 - ], - "op": "JUMP", - "path": "63" - }, - "3100": { - "offset": [ - 1471, - 1514 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3101": { - "fn": "Router._delegate", - "offset": [ - 1471, - 1514 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3134": { - "fn": "Router._delegate", - "offset": [ - 1471, - 1514 - ], - "op": "DUP2", - "path": "24" - }, - "3135": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1471, - 1514 - ], - "op": "JUMP", - "path": "24" - }, - "3136": { - "offset": [ - 1433, - 1465 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3137": { - "fn": "Router._delegate", - "offset": [ - 1433, - 1465 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3170": { - "fn": "Router._delegate", - "offset": [ - 1433, - 1465 - ], - "op": "DUP2", - "path": "24" - }, - "3171": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1433, - 1465 - ], - "op": "JUMP", - "path": "24" - }, - "3172": { - "offset": [ - 1601, - 1634 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3173": { - "fn": "Router._delegate", - "offset": [ - 1601, - 1634 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3206": { - "fn": "Router._delegate", - "offset": [ - 1601, - 1634 - ], - "op": "DUP2", - "path": "24" - }, - "3207": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1601, - 1634 - ], - "op": "JUMP", - "path": "24" - }, - "3208": { - "offset": [ - 1388, - 1427 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3209": { - "fn": "Router._delegate", - "offset": [ - 1388, - 1427 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3242": { - "fn": "Router._delegate", - "offset": [ - 1388, - 1427 - ], - "op": "DUP2", - "path": "24" - }, - "3243": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1388, - 1427 - ], - "op": "JUMP", - "path": "24" - }, - "3244": { - "offset": [ - 1345, - 1382 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3245": { - "fn": "Router._delegate", - "offset": [ - 1345, - 1382 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3278": { - "fn": "Router._delegate", - "offset": [ - 1345, - 1382 - ], - "op": "DUP2", - "path": "24" - }, - "3279": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1345, - 1382 - ], - "op": "JUMP", - "path": "24" - }, - "3280": { - "offset": [ - 1640, - 1682 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3281": { - "fn": "Router._delegate", - "offset": [ - 1640, - 1682 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3314": { - "fn": "Router._delegate", - "offset": [ - 1640, - 1682 - ], - "op": "DUP2", - "path": "24" - }, - "3315": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1640, - 1682 - ], - "op": "JUMP", - "path": "24" - }, - "3316": { - "offset": [ - 920, - 946 - ], - "op": "JUMPDEST", - "path": "63" - }, - "3317": { - "fn": "Router._delegate", - "offset": [ - 920, - 946 - ], - "op": "PUSH1", - "path": "63", - "value": "0x1" - }, - "3319": { - "fn": "Router._delegate", - "offset": [ - 920, - 946 - ], - "op": "SLOAD", - "path": "63" - }, - "3320": { - "op": "PUSH1", - "value": "0x1" - }, - "3322": { - "op": "PUSH1", - "value": "0x1" - }, - "3324": { - "op": "PUSH1", - "value": "0xA0" - }, - "3326": { - "op": "SHL" - }, - "3327": { - "op": "SUB" - }, - "3328": { - "offset": [ - 920, - 946 - ], - "op": "AND", - "path": "63" - }, - "3329": { - "fn": "Router._delegate", - "offset": [ - 920, - 946 - ], - "op": "DUP2", - "path": "63" - }, - "3330": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 920, - 946 - ], - "op": "JUMP", - "path": "63" - }, - "3331": { - "offset": [ - 811, - 831 - ], - "op": "JUMPDEST", - "path": "63" - }, - "3332": { - "fn": "Router._delegate", - "offset": [ - 811, - 831 - ], - "op": "PUSH1", - "path": "63", - "value": "0x0" - }, - "3334": { - "fn": "Router._delegate", - "offset": [ - 811, - 831 - ], - "op": "SLOAD", - "path": "63" - }, - "3335": { - "fn": "Router._delegate", - "offset": [ - 811, - 831 - ], - "op": "PUSH5", - "path": "63", - "value": "0x100000000" - }, - "3341": { - "fn": "Router._delegate", - "offset": [ - 811, - 831 - ], - "op": "SWAP1", - "path": "63" - }, - "3342": { - "fn": "Router._delegate", - "offset": [ - 811, - 831 - ], - "op": "DIV", - "path": "63" - }, - "3343": { - "op": "PUSH1", - "value": "0x1" - }, - "3345": { - "op": "PUSH1", - "value": "0x1" - }, - "3347": { - "op": "PUSH1", - "value": "0xA0" - }, - "3349": { - "op": "SHL" - }, - "3350": { - "op": "SUB" - }, - "3351": { - "offset": [ - 811, - 831 - ], - "op": "AND", - "path": "63" - }, - "3352": { - "fn": "Router._delegate", - "offset": [ - 811, - 831 - ], - "op": "DUP2", - "path": "63" - }, - "3353": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 811, - 831 - ], - "op": "JUMP", - "path": "63" - }, - "3354": { - "offset": [ - 1566, - 1595 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3355": { - "fn": "Router._delegate", - "offset": [ - 1566, - 1595 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3388": { - "fn": "Router._delegate", - "offset": [ - 1566, - 1595 - ], - "op": "DUP2", - "path": "24" - }, - "3389": { - "fn": "Router._delegate", - "jump": "o", - "offset": [ - 1566, - 1595 - ], - "op": "JUMP", - "path": "24" - }, - "3390": { - "fn": "Router.initialize", - "offset": [ - 2718, - 4144 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3391": { - "fn": "Router.initialize", - "offset": [ - 2880, - 2890 - ], - "op": "CALLER", - "path": "24", - "statement": 12 - }, - "3392": { - "op": "PUSH1", - "value": "0x1" - }, - "3394": { - "op": "PUSH1", - "value": "0x1" - }, - "3396": { - "op": "PUSH1", - "value": "0xA0" - }, - "3398": { - "op": "SHL" - }, - "3399": { - "op": "SUB" - }, - "3400": { - "fn": "Router.initialize", - "offset": [ - 2894, - 2902 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3433": { - "fn": "Router.initialize", - "offset": [ - 2880, - 2902 - ], - "op": "AND", - "path": "24" - }, - "3434": { - "branch": 85, - "fn": "Router.initialize", - "offset": [ - 2880, - 2902 - ], - "op": "EQ", - "path": "24" - }, - "3435": { - "fn": "Router.initialize", - "offset": [ - 2880, - 2921 - ], - "op": "DUP1", - "path": "24" - }, - "3436": { - "fn": "Router.initialize", - "offset": [ - 2880, - 2921 - ], - "op": "ISZERO", - "path": "24" - }, - "3437": { - "fn": "Router.initialize", - "offset": [ - 2880, - 2921 - ], - "op": "PUSH2", - "path": "24", - "value": "0xD80" - }, - "3440": { - "branch": 85, - "fn": "Router.initialize", - "offset": [ - 2880, - 2921 - ], - "op": "JUMPI", - "path": "24" - }, - "3441": { - "op": "POP" - }, - "3442": { - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "3444": { - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "SLOAD", - "path": "24" - }, - "3445": { - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "PUSH4", - "path": "24", - "value": "0x1000000" - }, - "3450": { - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "SWAP1", - "path": "24" - }, - "3451": { - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "DIV", - "path": "24" - }, - "3452": { - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "PUSH1", - "path": "24", - "value": "0xFF" - }, - "3454": { - "branch": 86, - "fn": "Router.initialize", - "offset": [ - 2907, - 2921 - ], - "op": "AND", - "path": "24" - }, - "3455": { - "fn": "Router.initialize", - "offset": [ - 2906, - 2921 - ], - "op": "ISZERO", - "path": "24" - }, - "3456": { - "fn": "Router.initialize", - "offset": [ - 2880, - 2921 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3457": { - "fn": "Router.initialize", - "offset": [ - 2872, - 2922 - ], - "op": "PUSH2", - "path": "24", - "value": "0xD89" - }, - "3460": { - "branch": 86, - "fn": "Router.initialize", - "offset": [ - 2872, - 2922 - ], - "op": "JUMPI", - "path": "24" - }, - "3461": { - "fn": "Router.initialize", - "offset": [ - 2872, - 2922 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "3463": { - "fn": "Router.initialize", - "offset": [ - 2872, - 2922 - ], - "op": "DUP1", - "path": "24" - }, - "3464": { - "fn": "Router.initialize", - "offset": [ - 2872, - 2922 - ], - "op": "REVERT", - "path": "24" - }, - "3465": { - "fn": "Router.initialize", - "offset": [ - 2872, - 2922 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3466": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3061 - ], - "op": "PUSH1", - "path": "24", - "statement": 13, - "value": "0x0" - }, - "3468": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "DUP1", - "path": "24" - }, - "3469": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "SLOAD", - "path": "24" - }, - "3470": { - "op": "PUSH5", - "value": "0x100000000" - }, - "3476": { - "op": "PUSH1", - "value": "0x1" - }, - "3478": { - "op": "PUSH1", - "value": "0xC0" - }, - "3480": { - "op": "SHL" - }, - "3481": { - "op": "SUB" - }, - "3482": { - "op": "NOT" - }, - "3483": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "AND", - "path": "24" - }, - "3484": { - "fn": "Router.initialize", - "offset": [ - 3064, - 3074 - ], - "op": "CALLER", - "path": "24" - }, - "3485": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "PUSH5", - "path": "24", - "value": "0x100000000" - }, - "3491": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "MUL", - "path": "24" - }, - "3492": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "OR", - "path": "24" - }, - "3493": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "DUP2", - "path": "24" - }, - "3494": { - "fn": "Router.initialize", - "offset": [ - 3056, - 3074 - ], - "op": "SSTORE", - "path": "24" - }, - "3495": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3497": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP1", - "path": "24" - }, - "3498": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MLOAD", - "path": "24" - }, - "3499": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "PUSH1", - "path": "24", - "value": "0xA0" - }, - "3501": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP2", - "path": "24" - }, - "3502": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "ADD", - "path": "24" - }, - "3503": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP3", - "path": "24" - }, - "3504": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MSTORE", - "path": "24" - }, - "3505": { - "op": "PUSH1", - "value": "0x1" - }, - "3507": { - "op": "PUSH1", - "value": "0x1" - }, - "3509": { - "op": "PUSH1", - "value": "0xA0" - }, - "3511": { - "op": "SHL" - }, - "3512": { - "op": "SUB" - }, - "3513": { - "fn": "Router.initialize", - "offset": [ - 3445, - 3449 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3546": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP2", - "path": "24" - }, - "3547": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "AND", - "path": "24" - }, - "3548": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP3", - "path": "24" - }, - "3549": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MSTORE", - "path": "24" - }, - "3550": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "PUSH1", - "path": "24", - "value": "0x20" - }, - "3552": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP3", - "path": "24" - }, - "3553": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "ADD", - "path": "24" - }, - "3554": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP5", - "path": "24" - }, - "3555": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP1", - "path": "24" - }, - "3556": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MSTORE", - "path": "24" - }, - "3557": { - "fn": "Router.initialize", - "offset": [ - 3284, - 3294 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3590": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3308 - ], - "op": "AND", - "path": "24" - }, - "3591": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3308 - ], - "op": "SWAP2", - "path": "24" - }, - "3592": { - "op": "PUSH4", - "value": "0x7ABAF271" - }, - "3597": { - "op": "PUSH1", - "value": "0xE1" - }, - "3599": { - "op": "SHL" - }, - "3600": { - "fn": "Router.initialize", - "offset": [ - 3370, - 3410 - ], - "op": "SWAP2", - "path": "24" - }, - "3601": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP1", - "path": "24" - }, - "3602": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP2", - "path": "24" - }, - "3603": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "ADD", - "path": "24" - }, - "3604": { - "fn": "Router.initialize", - "offset": [ - 3458, - 3472 - ], - "op": "PUSH1", - "path": "24", - "value": "0x2" - }, - "3606": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP2", - "path": "24" - }, - "3607": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MSTORE", - "path": "24" - }, - "3608": { - "offset": [ - 217, - 218 - ], - "op": "PUSH1", - "path": "60", - "value": "0x8" - }, - "3610": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "PUSH1", - "path": "24", - "value": "0x20" - }, - "3612": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP1", - "path": "24" - }, - "3613": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP4", - "path": "24" - }, - "3614": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "ADD", - "path": "24" - }, - "3615": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP2", - "path": "24" - }, - "3616": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP1", - "path": "24" - }, - "3617": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP2", - "path": "24" - }, - "3618": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MSTORE", - "path": "24" - }, - "3619": { - "op": "PUSH1", - "value": "0x0" - }, - "3621": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3623": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP3", - "path": "24" - }, - "3624": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP4", - "path": "24" - }, - "3625": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "ADD", - "path": "24" - }, - "3626": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "DUP2", - "path": "24" - }, - "3627": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "SWAP1", - "path": "24" - }, - "3628": { - "fn": "Router.initialize", - "offset": [ - 3432, - 3507 - ], - "op": "MSTORE", - "path": "24" - }, - "3629": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP3", - "path": "24" - }, - "3630": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MLOAD", - "path": "24" - }, - "3631": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "PUSH1", - "path": "24", - "value": "0xA0" - }, - "3633": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP2", - "path": "24" - }, - "3634": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "ADD", - "path": "24" - }, - "3635": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP5", - "path": "24" - }, - "3636": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MSTORE", - "path": "24" - }, - "3637": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP2", - "path": "24" - }, - "3638": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP2", - "path": "24" - }, - "3639": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MSTORE", - "path": "24" - }, - "3640": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "SWAP2", - "path": "24" - }, - "3641": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP3", - "path": "24" - }, - "3642": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "ADD", - "path": "24" - }, - "3643": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MSTORE", - "path": "24" - }, - "3644": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "SWAP1", - "path": "24" - }, - "3645": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP2", - "path": "24" - }, - "3646": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "ADD", - "path": "24" - }, - "3647": { - "fn": "Router.initialize", - "offset": [ - 3611, - 3626 - ], - "op": "PUSH1", - "path": "24", - "value": "0x3" - }, - "3649": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP2", - "path": "24" - }, - "3650": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MSTORE", - "path": "24" - }, - "3651": { - "offset": [ - 659, - 661 - ], - "op": "PUSH1", - "path": "60", - "value": "0x12" - }, - "3653": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "PUSH1", - "path": "24", - "value": "0x20" - }, - "3655": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP3", - "path": "24" - }, - "3656": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "ADD", - "path": "24" - }, - "3657": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MSTORE", - "path": "24" - }, - "3658": { - "op": "PUSH1", - "value": "0x0" - }, - "3660": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3662": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "SWAP2", - "path": "24" - }, - "3663": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP3", - "path": "24" - }, - "3664": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "ADD", - "path": "24" - }, - "3665": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "DUP2", - "path": "24" - }, - "3666": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "SWAP1", - "path": "24" - }, - "3667": { - "fn": "Router.initialize", - "offset": [ - 3579, - 3660 - ], - "op": "MSTORE", - "path": "24" - }, - "3668": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP1", - "path": "24" - }, - "3669": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "MLOAD", - "path": "24" - }, - "3670": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "PUSH2", - "path": "24", - "value": "0xE6F" - }, - "3673": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP4", - "path": "24" - }, - "3674": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP3", - "path": "24" - }, - "3675": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP2", - "path": "24" - }, - "3676": { - "op": "SWAP1" - }, - "3677": { - "op": "DUP2" - }, - "3678": { - "op": "SWAP1" - }, - "3679": { - "fn": "Router.initialize", - "offset": [ - 3741, - 3744 - ], - "op": "PUSH1", - "path": "24", - "value": "0x85" - }, - "3681": { - "fn": "Router.initialize", - "offset": [ - 3741, - 3744 - ], - "op": "SWAP1", - "path": "24" - }, - "3682": { - "fn": "Router.initialize", - "offset": [ - 3801, - 3803 - ], - "op": "PUSH1", - "path": "24", - "value": "0x4B" - }, - "3684": { - "fn": "Router.initialize", - "offset": [ - 3801, - 3803 - ], - "op": "SWAP1", - "path": "24" - }, - "3685": { - "fn": "Router.initialize", - "offset": [ - 3841, - 3844 - ], - "op": "PUSH1", - "path": "24", - "value": "0x6C" - }, - "3687": { - "fn": "Router.initialize", - "offset": [ - 3841, - 3844 - ], - "op": "SWAP1", - "path": "24" - }, - "3688": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "PUSH1", - "path": "24", - "value": "0x24" - }, - "3690": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "ADD", - "path": "24" - }, - "3691": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1093" - }, - "3694": { - "fn": "Router.initialize", - "jump": "i", - "offset": [ - 3326, - 3890 - ], - "op": "JUMP", - "path": "24" - }, - "3695": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3696": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3698": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP1", - "path": "24" - }, - "3699": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "MLOAD", - "path": "24" - }, - "3700": { - "op": "PUSH1", - "value": "0x1F" - }, - "3702": { - "op": "NOT" - }, - "3703": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP2", - "path": "24" - }, - "3704": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP5", - "path": "24" - }, - "3705": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SUB", - "path": "24" - }, - "3706": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "ADD", - "path": "24" - }, - "3707": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP2", - "path": "24" - }, - "3708": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "MSTORE", - "path": "24" - }, - "3709": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP2", - "path": "24" - }, - "3710": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP2", - "path": "24" - }, - "3711": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "MSTORE", - "path": "24" - }, - "3712": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "PUSH1", - "path": "24", - "value": "0x20" - }, - "3714": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP3", - "path": "24" - }, - "3715": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "ADD", - "path": "24" - }, - "3716": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "DUP1", - "path": "24" - }, - "3717": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "MLOAD", - "path": "24" - }, - "3718": { - "op": "PUSH1", - "value": "0x1" - }, - "3720": { - "op": "PUSH1", - "value": "0x1" - }, - "3722": { - "op": "PUSH1", - "value": "0xE0" - }, - "3724": { - "op": "SHL" - }, - "3725": { - "op": "SUB" - }, - "3726": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "AND", - "path": "24" - }, - "3727": { - "op": "PUSH1", - "value": "0x1" - }, - "3729": { - "op": "PUSH1", - "value": "0x1" - }, - "3731": { - "op": "PUSH1", - "value": "0xE0" - }, - "3733": { - "op": "SHL" - }, - "3734": { - "op": "SUB" - }, - "3735": { - "op": "NOT" - }, - "3736": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP1", - "path": "24" - }, - "3737": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP5", - "path": "24" - }, - "3738": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "AND", - "path": "24" - }, - "3739": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP4", - "path": "24" - }, - "3740": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP1", - "path": "24" - }, - "3741": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP4", - "path": "24" - }, - "3742": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "OR", - "path": "24" - }, - "3743": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP1", - "path": "24" - }, - "3744": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP3", - "path": "24" - }, - "3745": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "MSTORE", - "path": "24" - }, - "3746": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "SWAP1", - "path": "24" - }, - "3747": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "MLOAD", - "path": "24" - }, - "3748": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH2", - "path": "24", - "value": "0xEAD" - }, - "3751": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "SWAP2", - "path": "24" - }, - "3752": { - "fn": "Router.initialize", - "offset": [ - 3326, - 3890 - ], - "op": "SWAP1", - "path": "24" - }, - "3753": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH2", - "path": "24", - "value": "0x1046" - }, - "3756": { - "fn": "Router.initialize", - "jump": "i", - "offset": [ - 3276, - 3904 - ], - "op": "JUMP", - "path": "24" - }, - "3757": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3758": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "3760": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3762": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "MLOAD", - "path": "24" - }, - "3763": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP1", - "path": "24" - }, - "3764": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP4", - "path": "24" - }, - "3765": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "SUB", - "path": "24" - }, - "3766": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP2", - "path": "24" - }, - "3767": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP6", - "path": "24" - }, - "3768": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "GAS", - "path": "24" - }, - "3769": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DELEGATECALL", - "path": "24" - }, - "3770": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "SWAP2", - "path": "24" - }, - "3771": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3772": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3773": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "3774": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP1", - "path": "24" - }, - "3775": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "3777": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP2", - "path": "24" - }, - "3778": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "EQ", - "path": "24" - }, - "3779": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH2", - "path": "24", - "value": "0xEE8" - }, - "3782": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "JUMPI", - "path": "24" - }, - "3783": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3785": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "MLOAD", - "path": "24" - }, - "3786": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "SWAP2", - "path": "24" - }, - "3787": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3788": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x1F" - }, - "3790": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "NOT", - "path": "24" - }, - "3791": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x3F" - }, - "3793": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "3794": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "ADD", - "path": "24" - }, - "3795": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "AND", - "path": "24" - }, - "3796": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP3", - "path": "24" - }, - "3797": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "ADD", - "path": "24" - }, - "3798": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x40" - }, - "3800": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "MSTORE", - "path": "24" - }, - "3801": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "3802": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP3", - "path": "24" - }, - "3803": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "MSTORE", - "path": "24" - }, - "3804": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "RETURNDATASIZE", - "path": "24" - }, - "3805": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "3807": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x20" - }, - "3809": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "DUP5", - "path": "24" - }, - "3810": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "ADD", - "path": "24" - }, - "3811": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "RETURNDATACOPY", - "path": "24" - }, - "3812": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH2", - "path": "24", - "value": "0xEED" - }, - "3815": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "JUMP", - "path": "24" - }, - "3816": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3817": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "PUSH1", - "path": "24", - "value": "0x60" - }, - "3819": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "SWAP2", - "path": "24" - }, - "3820": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3821": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3822": { - "fn": "Router.initialize", - "offset": [ - 3276, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3823": { - "fn": "Router.initialize", - "offset": [ - 3246, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3824": { - "fn": "Router.initialize", - "offset": [ - 3246, - 3904 - ], - "op": "SWAP1", - "path": "24" - }, - "3825": { - "fn": "Router.initialize", - "offset": [ - 3246, - 3904 - ], - "op": "POP", - "path": "24" - }, - "3826": { - "branch": 87, - "fn": "Router.initialize", - "offset": [ - 3922, - 3928 - ], - "op": "DUP1", - "path": "24", - "statement": 14 - }, - "3827": { - "fn": "Router.initialize", - "offset": [ - 3914, - 3929 - ], - "op": "PUSH2", - "path": "24", - "value": "0xEFB" - }, - "3830": { - "branch": 87, - "fn": "Router.initialize", - "offset": [ - 3914, - 3929 - ], - "op": "JUMPI", - "path": "24" - }, - "3831": { - "fn": "Router.initialize", - "offset": [ - 3914, - 3929 - ], - "op": "PUSH1", - "path": "24", - "value": "0x0" - }, - "3833": { - "fn": "Router.initialize", - "offset": [ - 3914, - 3929 - ], - "op": "DUP1", - "path": "24" - }, - "3834": { - "fn": "Router.initialize", - "offset": [ - 3914, - 3929 - ], - "op": "REVERT", - "path": "24" - }, - "3835": { - "fn": "Router.initialize", - "offset": [ - 3914, - 3929 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3836": { - "op": "POP" - }, - "3837": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3945 - ], - "op": "PUSH1", - "path": "24", - "statement": 15, - "value": "0x0" - }, - "3839": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "DUP1", - "path": "24" - }, - "3840": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "SLOAD", - "path": "24" - }, - "3841": { - "op": "PUSH1", - "value": "0x1" - }, - "3843": { - "op": "PUSH1", - "value": "0x1" - }, - "3845": { - "op": "PUSH1", - "value": "0xA0" - }, - "3847": { - "op": "SHL" - }, - "3848": { - "op": "SUB" - }, - "3849": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "SWAP5", - "path": "24" - }, - "3850": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "DUP6", - "path": "24" - }, - "3851": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "AND", - "path": "24" - }, - "3852": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "PUSH5", - "path": "24", - "value": "0x100000000" - }, - "3858": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "MUL", - "path": "24" - }, - "3859": { - "op": "PUSH5", - "value": "0x100000000" - }, - "3865": { - "op": "PUSH1", - "value": "0x1" - }, - "3867": { - "op": "PUSH1", - "value": "0xC0" - }, - "3869": { - "op": "SHL" - }, - "3870": { - "op": "SUB" - }, - "3871": { - "op": "NOT" - }, - "3872": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "SWAP1", - "path": "24" - }, - "3873": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "SWAP2", - "path": "24" - }, - "3874": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "AND", - "path": "24" - }, - "3875": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "OR", - "path": "24" - }, - "3876": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "SWAP1", - "path": "24" - }, - "3877": { - "fn": "Router.initialize", - "offset": [ - 3940, - 3954 - ], - "op": "SSTORE", - "path": "24" - }, - "3878": { - "op": "PUSH1", - "value": "0x1" - }, - "3880": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "DUP1", - "path": "24", - "statement": 16 - }, - "3881": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "SLOAD", - "path": "24" - }, - "3882": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "SWAP3", - "path": "24" - }, - "3883": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "DUP5", - "path": "24" - }, - "3884": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "AND", - "path": "24" - }, - "3885": { - "op": "PUSH1", - "value": "0x1" - }, - "3887": { - "op": "PUSH1", - "value": "0x1" - }, - "3889": { - "op": "PUSH1", - "value": "0xA0" - }, - "3891": { - "op": "SHL" - }, - "3892": { - "op": "SUB" - }, - "3893": { - "op": "NOT" - }, - "3894": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "SWAP4", - "path": "24" - }, - "3895": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "DUP5", - "path": "24" - }, - "3896": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "AND", - "path": "24" - }, - "3897": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "OR", - "path": "24" - }, - "3898": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "SWAP1", - "path": "24" - }, - "3899": { - "fn": "Router.initialize", - "offset": [ - 4038, - 4064 - ], - "op": "SSTORE", - "path": "24" - }, - "3900": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4087 - ], - "op": "PUSH1", - "path": "24", - "statement": 17, - "value": "0x2" - }, - "3902": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "DUP1", - "path": "24" - }, - "3903": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SLOAD", - "path": "24" - }, - "3904": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SWAP2", - "path": "24" - }, - "3905": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SWAP1", - "path": "24" - }, - "3906": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SWAP4", - "path": "24" - }, - "3907": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "AND", - "path": "24" - }, - "3908": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SWAP2", - "path": "24" - }, - "3909": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "AND", - "path": "24" - }, - "3910": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "OR", - "path": "24" - }, - "3911": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SWAP1", - "path": "24" - }, - "3912": { - "fn": "Router.initialize", - "offset": [ - 4074, - 4104 - ], - "op": "SSTORE", - "path": "24" - }, - "3913": { - "fn": "Router.initialize", - "jump": "o", - "offset": [ - 2718, - 4144 - ], - "op": "JUMP", - "path": "24" - }, - "3914": { - "offset": [ - 1252, - 1294 - ], - "op": "JUMPDEST", - "path": "24" - }, - "3915": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "PUSH32", - "path": "24", - "value": "0x0" - }, - "3948": { - "fn": "Router.initialize", - "offset": [ - 1252, - 1294 - ], - "op": "DUP2", - "path": "24" - }, - "3949": { - "fn": "Router.initialize", - "jump": "o", - "offset": [ - 1252, - 1294 - ], - "op": "JUMP", - "path": "24" - }, - "3950": { - "op": "JUMPDEST" - }, - "3951": { - "op": "DUP1" - }, - "3952": { - "op": "CALLDATALOAD" - }, - "3953": { - "op": "PUSH1", - "value": "0x1" - }, - "3955": { - "op": "PUSH1", - "value": "0x1" - }, - "3957": { - "op": "PUSH1", - "value": "0xA0" - }, - "3959": { - "op": "SHL" - }, - "3960": { - "op": "SUB" - }, - "3961": { - "op": "DUP2" - }, - "3962": { - "op": "AND" - }, - "3963": { - "op": "DUP2" - }, - "3964": { - "op": "EQ" - }, - "3965": { - "op": "PUSH2", - "value": "0xB54" - }, - "3968": { - "op": "JUMPI" - }, - "3969": { - "op": "PUSH1", - "value": "0x0" - }, - "3971": { - "op": "DUP1" - }, - "3972": { - "op": "REVERT" - }, - "3973": { - "op": "JUMPDEST" - }, - "3974": { - "op": "PUSH1", - "value": "0x0" - }, - "3976": { - "op": "DUP1" - }, - "3977": { - "op": "PUSH1", - "value": "0x0" - }, - "3979": { - "op": "PUSH1", - "value": "0x60" - }, - "3981": { - "op": "DUP5" - }, - "3982": { - "op": "DUP7" - }, - "3983": { - "op": "SUB" - }, - "3984": { - "op": "SLT" - }, - "3985": { - "op": "ISZERO" - }, - "3986": { - "op": "PUSH2", - "value": "0xF99" - }, - "3989": { - "op": "JUMPI" - }, - "3990": { - "op": "DUP3" - }, - "3991": { - "op": "DUP4" - }, - "3992": { - "op": "REVERT" - }, - "3993": { - "op": "JUMPDEST" - }, - "3994": { - "op": "PUSH2", - "value": "0xFA2" - }, - "3997": { - "op": "DUP5" - }, - "3998": { - "op": "PUSH2", - "value": "0xF6E" - }, - "4001": { - "jump": "i", - "op": "JUMP" - }, - "4002": { - "op": "JUMPDEST" - }, - "4003": { - "op": "SWAP3" - }, - "4004": { - "op": "POP" - }, - "4005": { - "op": "PUSH2", - "value": "0xFB0" - }, - "4008": { - "op": "PUSH1", - "value": "0x20" - }, - "4010": { - "op": "DUP6" - }, - "4011": { - "op": "ADD" - }, - "4012": { - "op": "PUSH2", - "value": "0xF6E" - }, - "4015": { - "jump": "i", - "op": "JUMP" - }, - "4016": { - "op": "JUMPDEST" - }, - "4017": { - "op": "SWAP2" - }, - "4018": { - "op": "POP" - }, - "4019": { - "op": "PUSH2", - "value": "0xFBE" - }, - "4022": { - "op": "PUSH1", - "value": "0x40" - }, - "4024": { - "op": "DUP6" - }, - "4025": { - "op": "ADD" - }, - "4026": { - "op": "PUSH2", - "value": "0xF6E" - }, - "4029": { - "jump": "i", - "op": "JUMP" - }, - "4030": { - "op": "JUMPDEST" - }, - "4031": { - "op": "SWAP1" - }, - "4032": { - "op": "POP" - }, - "4033": { - "op": "SWAP3" - }, - "4034": { - "op": "POP" - }, - "4035": { - "op": "SWAP3" - }, - "4036": { - "op": "POP" - }, - "4037": { - "op": "SWAP3" - }, - "4038": { - "jump": "o", - "op": "JUMP" - }, - "4039": { - "op": "JUMPDEST" - }, - "4040": { - "op": "PUSH1", - "value": "0x0" - }, - "4042": { - "op": "PUSH1", - "value": "0x20" - }, - "4044": { - "op": "DUP3" - }, - "4045": { - "op": "DUP5" - }, - "4046": { - "op": "SUB" - }, - "4047": { - "op": "SLT" - }, - "4048": { - "op": "ISZERO" - }, - "4049": { - "op": "PUSH2", - "value": "0xFD8" - }, - "4052": { - "op": "JUMPI" - }, - "4053": { - "op": "DUP1" - }, - "4054": { - "op": "DUP2" - }, - "4055": { - "op": "REVERT" - }, - "4056": { - "op": "JUMPDEST" - }, - "4057": { - "op": "DUP2" - }, - "4058": { - "op": "CALLDATALOAD" - }, - "4059": { - "op": "PUSH1", - "value": "0x1" - }, - "4061": { - "op": "PUSH1", - "value": "0x1" - }, - "4063": { - "op": "PUSH1", - "value": "0xE0" - }, - "4065": { - "op": "SHL" - }, - "4066": { - "op": "SUB" - }, - "4067": { - "op": "NOT" - }, - "4068": { - "op": "DUP2" - }, - "4069": { - "op": "AND" - }, - "4070": { - "op": "DUP2" - }, - "4071": { - "op": "EQ" - }, - "4072": { - "op": "PUSH2", - "value": "0xFEF" - }, - "4075": { - "op": "JUMPI" - }, - "4076": { - "op": "DUP2" - }, - "4077": { - "op": "DUP3" - }, - "4078": { - "op": "REVERT" - }, - "4079": { - "op": "JUMPDEST" - }, - "4080": { - "op": "SWAP4" - }, - "4081": { - "op": "SWAP3" - }, - "4082": { - "op": "POP" - }, - "4083": { - "op": "POP" - }, - "4084": { - "op": "POP" - }, - "4085": { - "jump": "o", - "op": "JUMP" - }, - "4086": { - "op": "JUMPDEST" - }, - "4087": { - "op": "DUP1" - }, - "4088": { - "op": "MLOAD" - }, - "4089": { - "op": "PUSH1", - "value": "0x1" - }, - "4091": { - "op": "PUSH1", - "value": "0x1" - }, - "4093": { - "op": "PUSH1", - "value": "0xA0" - }, - "4095": { - "op": "SHL" - }, - "4096": { - "op": "SUB" - }, - "4097": { - "op": "AND" - }, - "4098": { - "op": "DUP3" - }, - "4099": { - "op": "MSTORE" - }, - "4100": { - "op": "PUSH1", - "value": "0x20" - }, - "4102": { - "op": "DUP1" - }, - "4103": { - "op": "DUP3" - }, - "4104": { - "op": "ADD" - }, - "4105": { - "op": "MLOAD" - }, - "4106": { - "op": "ISZERO" - }, - "4107": { - "op": "ISZERO" - }, - "4108": { - "op": "SWAP1" - }, - "4109": { - "op": "DUP4" - }, - "4110": { - "op": "ADD" - }, - "4111": { - "op": "MSTORE" - }, - "4112": { - "op": "PUSH1", - "value": "0x40" - }, - "4114": { - "op": "DUP2" - }, - "4115": { - "op": "ADD" - }, - "4116": { - "op": "MLOAD" - }, - "4117": { - "op": "PUSH1", - "value": "0x6" - }, - "4119": { - "op": "DUP2" - }, - "4120": { - "op": "LT" - }, - "4121": { - "op": "PUSH2", - "value": "0x101E" - }, - "4124": { - "op": "JUMPI" - }, - "4125": { - "op": "INVALID" - }, - "4126": { - "op": "JUMPDEST" - }, - "4127": { - "op": "PUSH1", - "value": "0x40" - }, - "4129": { - "op": "DUP4" - }, - "4130": { - "op": "ADD" - }, - "4131": { - "op": "MSTORE" - }, - "4132": { - "op": "PUSH1", - "value": "0x60" - }, - "4134": { - "op": "DUP2" - }, - "4135": { - "op": "DUP2" - }, - "4136": { - "op": "ADD" - }, - "4137": { - "op": "MLOAD" - }, - "4138": { - "op": "PUSH1", - "value": "0xFF" - }, - "4140": { - "op": "AND" - }, - "4141": { - "op": "SWAP1" - }, - "4142": { - "op": "DUP4" - }, - "4143": { - "op": "ADD" - }, - "4144": { - "op": "MSTORE" - }, - "4145": { - "op": "PUSH1", - "value": "0x80" - }, - "4147": { - "op": "SWAP1" - }, - "4148": { - "op": "DUP2" - }, - "4149": { - "op": "ADD" - }, - "4150": { - "op": "MLOAD" - }, - "4151": { - "op": "PUSH9", - "value": "0xFFFFFFFFFFFFFFFFFF" - }, - "4161": { - "op": "AND" - }, - "4162": { - "op": "SWAP2" - }, - "4163": { - "op": "ADD" - }, - "4164": { - "op": "MSTORE" - }, - "4165": { - "jump": "o", - "op": "JUMP" - }, - "4166": { - "op": "JUMPDEST" - }, - "4167": { - "op": "PUSH1", - "value": "0x0" - }, - "4169": { - "op": "DUP3" - }, - "4170": { - "op": "MLOAD" - }, - "4171": { - "op": "DUP2" - }, - "4172": { - "op": "JUMPDEST" - }, - "4173": { - "op": "DUP2" - }, - "4174": { - "op": "DUP2" - }, - "4175": { - "op": "LT" - }, - "4176": { - "op": "ISZERO" - }, - "4177": { - "op": "PUSH2", - "value": "0x1066" - }, - "4180": { - "op": "JUMPI" - }, - "4181": { - "op": "PUSH1", - "value": "0x20" - }, - "4183": { - "op": "DUP2" - }, - "4184": { - "op": "DUP7" - }, - "4185": { - "op": "ADD" - }, - "4186": { - "op": "DUP2" - }, - "4187": { - "op": "ADD" - }, - "4188": { - "op": "MLOAD" - }, - "4189": { - "op": "DUP6" - }, - "4190": { - "op": "DUP4" - }, - "4191": { - "op": "ADD" - }, - "4192": { - "op": "MSTORE" - }, - "4193": { - "op": "ADD" - }, - "4194": { - "op": "PUSH2", - "value": "0x104C" - }, - "4197": { - "op": "JUMP" - }, - "4198": { - "op": "JUMPDEST" - }, - "4199": { - "op": "DUP2" - }, - "4200": { - "op": "DUP2" - }, - "4201": { - "op": "GT" - }, - "4202": { - "op": "ISZERO" - }, - "4203": { - "op": "PUSH2", - "value": "0x1074" - }, - "4206": { - "op": "JUMPI" - }, - "4207": { - "op": "DUP3" - }, - "4208": { - "op": "DUP3" - }, - "4209": { - "op": "DUP6" - }, - "4210": { - "op": "ADD" - }, - "4211": { - "op": "MSTORE" - }, - "4212": { - "op": "JUMPDEST" - }, - "4213": { - "op": "POP" - }, - "4214": { - "op": "SWAP2" - }, - "4215": { - "op": "SWAP1" - }, - "4216": { - "op": "SWAP2" - }, - "4217": { - "op": "ADD" - }, - "4218": { - "op": "SWAP3" - }, - "4219": { - "op": "SWAP2" - }, - "4220": { - "op": "POP" - }, - "4221": { - "op": "POP" - }, - "4222": { - "jump": "o", - "op": "JUMP" - }, - "4223": { - "op": "JUMPDEST" - }, - "4224": { - "op": "PUSH1", - "value": "0x1" - }, - "4226": { - "op": "PUSH1", - "value": "0x1" - }, - "4228": { - "op": "PUSH1", - "value": "0xA0" - }, - "4230": { - "op": "SHL" - }, - "4231": { - "op": "SUB" - }, - "4232": { - "op": "SWAP2" - }, - "4233": { - "op": "SWAP1" - }, - "4234": { - "op": "SWAP2" - }, - "4235": { - "op": "AND" - }, - "4236": { - "op": "DUP2" - }, - "4237": { - "op": "MSTORE" - }, - "4238": { - "op": "PUSH1", - "value": "0x20" - }, - "4240": { - "op": "ADD" - }, - "4241": { - "op": "SWAP1" - }, - "4242": { - "jump": "o", - "op": "JUMP" - }, - "4243": { - "op": "JUMPDEST" - }, - "4244": { - "op": "PUSH2", - "value": "0x1E0" - }, - "4247": { - "op": "DUP2" - }, - "4248": { - "op": "ADD" - }, - "4249": { - "op": "PUSH2", - "value": "0x10A2" - }, - "4252": { - "op": "DUP3" - }, - "4253": { - "op": "DUP11" - }, - "4254": { - "op": "PUSH2", - "value": "0xFF6" - }, - "4257": { - "jump": "i", - "op": "JUMP" - }, - "4258": { - "op": "JUMPDEST" - }, - "4259": { - "op": "PUSH2", - "value": "0x10AF" - }, - "4262": { - "op": "PUSH1", - "value": "0xA0" - }, - "4264": { - "op": "DUP4" - }, - "4265": { - "op": "ADD" - }, - "4266": { - "op": "DUP10" - }, - "4267": { - "op": "PUSH2", - "value": "0xFF6" - }, - "4270": { - "jump": "i", - "op": "JUMP" - }, - "4271": { - "op": "JUMPDEST" - }, - "4272": { - "op": "PUSH1", - "value": "0x1" - }, - "4274": { - "op": "PUSH1", - "value": "0x1" - }, - "4276": { - "op": "PUSH1", - "value": "0xA0" - }, - "4278": { - "op": "SHL" - }, - "4279": { - "op": "SUB" - }, - "4280": { - "op": "SWAP7" - }, - "4281": { - "op": "SWAP1" - }, - "4282": { - "op": "SWAP7" - }, - "4283": { - "op": "AND" - }, - "4284": { - "op": "PUSH2", - "value": "0x140" - }, - "4287": { - "op": "DUP3" - }, - "4288": { - "op": "ADD" - }, - "4289": { - "op": "MSTORE" - }, - "4290": { - "op": "SWAP4" - }, - "4291": { - "op": "ISZERO" - }, - "4292": { - "op": "ISZERO" - }, - "4293": { - "op": "PUSH2", - "value": "0x160" - }, - "4296": { - "op": "DUP6" - }, - "4297": { - "op": "ADD" - }, - "4298": { - "op": "MSTORE" - }, - "4299": { - "op": "PUSH1", - "value": "0xFF" - }, - "4301": { - "op": "SWAP3" - }, - "4302": { - "op": "DUP4" - }, - "4303": { - "op": "AND" - }, - "4304": { - "op": "PUSH2", - "value": "0x180" - }, - "4307": { - "op": "DUP6" - }, - "4308": { - "op": "ADD" - }, - "4309": { - "op": "MSTORE" - }, - "4310": { - "op": "SWAP1" - }, - "4311": { - "op": "DUP3" - }, - "4312": { - "op": "AND" - }, - "4313": { - "op": "PUSH2", - "value": "0x1A0" - }, - "4316": { - "op": "DUP5" - }, - "4317": { - "op": "ADD" - }, - "4318": { - "op": "MSTORE" - }, - "4319": { - "op": "AND" - }, - "4320": { - "op": "PUSH2", - "value": "0x1C0" - }, - "4323": { - "op": "SWAP1" - }, - "4324": { - "op": "SWAP2" - }, - "4325": { - "op": "ADD" - }, - "4326": { - "op": "MSTORE" - }, - "4327": { - "op": "SWAP3" - }, - "4328": { - "op": "SWAP2" - }, - "4329": { - "op": "POP" - }, - "4330": { - "op": "POP" - }, - "4331": { - "jump": "o", - "op": "JUMP" - } - }, - "sha1": "632e5f1f49977cd3cee56a5488db9c3285ba2b9c", - "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./actions/nTokenAction.sol\";\nimport \"./actions/nTokenMintAction.sol\";\nimport \"../global/StorageLayoutV1.sol\";\nimport \"../global/Types.sol\";\nimport \"../../interfaces/notional/NotionalProxy.sol\";\nimport \"../../interfaces/notional/nERC1155Interface.sol\";\nimport \"../../interfaces/notional/NotionalGovernance.sol\";\nimport \"../../interfaces/notional/NotionalCalculations.sol\";\n\n/**\n * @notice Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage\n * will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing\n * contracts.\n *\n * This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also\n * allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a\n * new Router with the new hardcoded addresses will then be deployed and upgraded into place.\n */\ncontract Router is StorageLayoutV1 {\n // These contract addresses cannot be changed once set by the constructor\n address public immutable GOVERNANCE;\n address public immutable VIEWS;\n address public immutable INITIALIZE_MARKET;\n address public immutable NTOKEN_ACTIONS;\n address public immutable BATCH_ACTION;\n address public immutable ACCOUNT_ACTION;\n address public immutable ERC1155;\n address public immutable LIQUIDATE_CURRENCY;\n address public immutable LIQUIDATE_FCASH;\n address public immutable cETH;\n address public immutable TREASURY;\n address public immutable CALCULATION_VIEWS;\n address private immutable DEPLOYER;\n\n constructor(\n address governance_,\n address views_,\n address initializeMarket_,\n address nTokenActions_,\n address batchAction_,\n address accountAction_,\n address erc1155_,\n address liquidateCurrency_,\n address liquidatefCash_,\n address cETH_,\n address treasury_,\n address calculationViews_\n ) {\n GOVERNANCE = governance_;\n VIEWS = views_;\n INITIALIZE_MARKET = initializeMarket_;\n NTOKEN_ACTIONS = nTokenActions_;\n BATCH_ACTION = batchAction_;\n ACCOUNT_ACTION = accountAction_;\n ERC1155 = erc1155_;\n LIQUIDATE_CURRENCY = liquidateCurrency_;\n LIQUIDATE_FCASH = liquidatefCash_;\n cETH = cETH_;\n DEPLOYER = msg.sender;\n TREASURY = treasury_;\n CALCULATION_VIEWS = calculationViews_;\n\n // This will lock everyone from calling initialize on the implementation contract\n hasInitialized = true;\n }\n\n function initialize(address owner_, address pauseRouter_, address pauseGuardian_) public {\n // Check that only the deployer can initialize\n require(msg.sender == DEPLOYER && !hasInitialized);\n\n // Allow list currency to be called by this contract for the purposes of\n // initializing ETH as a currency\n owner = msg.sender;\n // List ETH as currency id == 1, NOTE: return value is ignored here\n\n // FIXME: on non-mainnet deployments we should be using WETH instead here...\n (bool status, ) =\n address(GOVERNANCE).delegatecall(\n abi.encodeWithSelector(\n NotionalGovernance.listCurrency.selector,\n TokenStorage(cETH, false, TokenType.cETH, Constants.CETH_DECIMAL_PLACES, 0),\n // No underlying set for cETH\n TokenStorage(address(0), false, TokenType.Ether, Constants.ETH_DECIMAL_PLACES, 0),\n address(0),\n false,\n 133, // Initial settings of 133% buffer\n 75, // 75% haircut\n 108 // 8% liquidation discount\n )\n );\n require(status);\n\n owner = owner_;\n // The pause guardian may downgrade the router to the pauseRouter\n pauseRouter = pauseRouter_;\n pauseGuardian = pauseGuardian_;\n\n hasInitialized == true;\n }\n\n /// @notice Returns the implementation contract for the method signature\n /// @param sig method signature to call\n /// @return implementation address\n function getRouterImplementation(bytes4 sig) public view returns (address) {\n if (\n sig == NotionalProxy.batchBalanceAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeActionWithCallback.selector ||\n sig == NotionalProxy.batchLend.selector\n ) {\n return BATCH_ACTION;\n } else if (\n sig == nTokenAction.nTokenTotalSupply.selector ||\n sig == nTokenAction.nTokenBalanceOf.selector ||\n sig == nTokenAction.nTokenTransferAllowance.selector ||\n sig == nTokenAction.nTokenTransferApprove.selector ||\n sig == nTokenAction.nTokenTransfer.selector ||\n sig == nTokenAction.nTokenTransferFrom.selector ||\n sig == nTokenAction.nTokenClaimIncentives.selector ||\n sig == nTokenAction.nTokenTransferApproveAll.selector ||\n sig == nTokenAction.nTokenPresentValueAssetDenominated.selector ||\n sig == nTokenAction.nTokenPresentValueUnderlyingDenominated.selector\n ) {\n return NTOKEN_ACTIONS;\n } else if (\n sig == NotionalProxy.depositUnderlyingToken.selector ||\n sig == NotionalProxy.depositAssetToken.selector ||\n sig == NotionalProxy.withdraw.selector ||\n sig == NotionalProxy.settleAccount.selector ||\n sig == NotionalProxy.nTokenRedeem.selector ||\n sig == NotionalProxy.enableBitmapCurrency.selector\n ) {\n return ACCOUNT_ACTION;\n } else if (\n sig == nERC1155Interface.supportsInterface.selector ||\n sig == nERC1155Interface.balanceOf.selector ||\n sig == nERC1155Interface.balanceOfBatch.selector ||\n sig == nERC1155Interface.signedBalanceOf.selector ||\n sig == nERC1155Interface.signedBalanceOfBatch.selector ||\n sig == nERC1155Interface.safeTransferFrom.selector ||\n sig == nERC1155Interface.safeBatchTransferFrom.selector ||\n sig == nERC1155Interface.decodeToAssets.selector ||\n sig == nERC1155Interface.encodeToId.selector ||\n sig == nERC1155Interface.setApprovalForAll.selector ||\n sig == nERC1155Interface.isApprovedForAll.selector\n ) {\n return ERC1155;\n } else if (\n sig == NotionalProxy.liquidateLocalCurrency.selector ||\n sig == NotionalProxy.liquidateCollateralCurrency.selector ||\n sig == NotionalProxy.calculateLocalCurrencyLiquidation.selector ||\n sig == NotionalProxy.calculateCollateralCurrencyLiquidation.selector\n ) {\n return LIQUIDATE_CURRENCY;\n } else if (\n sig == NotionalProxy.liquidatefCashLocal.selector ||\n sig == NotionalProxy.liquidatefCashCrossCurrency.selector ||\n sig == NotionalProxy.calculatefCashLocalLiquidation.selector ||\n sig == NotionalProxy.calculatefCashCrossCurrencyLiquidation.selector\n ) {\n return LIQUIDATE_FCASH;\n } else if (\n sig == NotionalProxy.initializeMarkets.selector ||\n sig == NotionalProxy.sweepCashIntoMarkets.selector\n ) {\n return INITIALIZE_MARKET;\n } else if (\n sig == NotionalGovernance.listCurrency.selector ||\n sig == NotionalGovernance.enableCashGroup.selector ||\n sig == NotionalGovernance.updateCashGroup.selector ||\n sig == NotionalGovernance.updateAssetRate.selector ||\n sig == NotionalGovernance.updateETHRate.selector ||\n sig == NotionalGovernance.transferOwnership.selector ||\n sig == NotionalGovernance.claimOwnership.selector ||\n sig == NotionalGovernance.updateIncentiveEmissionRate.selector ||\n sig == NotionalGovernance.updateMaxCollateralBalance.selector ||\n sig == NotionalGovernance.updateDepositParameters.selector ||\n sig == NotionalGovernance.updateInitializationParameters.selector ||\n sig == NotionalGovernance.updateTokenCollateralParameters.selector ||\n sig == NotionalGovernance.updateGlobalTransferOperator.selector ||\n sig == NotionalGovernance.updateAuthorizedCallbackContract.selector ||\n sig == NotionalGovernance.setLendingPool.selector ||\n sig == NotionalProxy.upgradeTo.selector ||\n sig == NotionalProxy.upgradeToAndCall.selector\n ) {\n return GOVERNANCE;\n } else if (\n sig == NotionalTreasury.claimCOMPAndTransfer.selector ||\n sig == NotionalTreasury.transferReserveToTreasury.selector ||\n sig == NotionalTreasury.setTreasuryManager.selector ||\n sig == NotionalTreasury.setReserveBuffer.selector ||\n sig == NotionalTreasury.setReserveCashBalance.selector\n ) {\n return TREASURY;\n } else if (\n sig == NotionalCalculations.calculateNTokensToMint.selector ||\n sig == NotionalCalculations.getfCashAmountGivenCashAmount.selector ||\n sig == NotionalCalculations.getCashAmountGivenfCashAmount.selector ||\n sig == NotionalCalculations.nTokenGetClaimableIncentives.selector\n ) {\n return CALCULATION_VIEWS;\n } else {\n // If not found then delegate to views. This will revert if there is no method on\n // the view contract\n return VIEWS;\n }\n }\n\n /// @dev Delegates the current call to `implementation`.\n /// This function does not return to its internal call site, it will return directly to the external caller.\n function _delegate(address implementation) private {\n // solhint-disable-next-line no-inline-assembly\n assembly {\n // Copy msg.data. We take full control of memory in this inline assembly\n // block because it will not return to Solidity code. We overwrite the\n // Solidity scratch pad at memory position 0.\n calldatacopy(0, 0, calldatasize())\n\n // Call the implementation.\n // out and outsize are 0 because we don't know the size yet.\n let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)\n\n // Copy the returned data.\n returndatacopy(0, 0, returndatasize())\n\n switch result\n // delegatecall returns 0 on error.\n case 0 {\n revert(0, returndatasize())\n }\n default {\n return(0, returndatasize())\n }\n }\n }\n\n fallback() external payable {\n _delegate(getRouterImplementation(msg.sig));\n }\n\n // NOTE: receive() is overridden in \"nProxy\" to allow for eth transfers to succeed\n}\n", - "sourceMap": "1056:10103:24:-:0;;;1729:983;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;2119:24:24;;;;;;;;2153:14;;;;;;;2177:37;;;;;;;2224:31;;;;;;;2265:27;;;;;;;2302:31;;;;;;;2343:18;;;;;;;2371:39;;;;;;2420:33;;;;;;2463:12;;;;;;2496:10;2485:21;;;;2516:20;;;;;;2546:37;;;;;;2684:14;:21;;-1:-1:-1;;2684:21:24;;;;;1056:10103;;14:179:168;95:13;;-1:-1:-1;;;;;137:31:168;;127:42;;117:2;;183:1;180;173:12;117:2;76:117;;;:::o;198:1190::-;;;;;;;;;;;;;510:3;498:9;489:7;485:23;481:33;478:2;;;532:6;524;517:22;478:2;560:42;592:9;560:42;:::i;:::-;550:52;;621:51;668:2;657:9;653:18;621:51;:::i;:::-;611:61;;691:51;738:2;727:9;723:18;691:51;:::i;:::-;681:61;;761:51;808:2;797:9;793:18;761:51;:::i;:::-;751:61;;831:52;878:3;867:9;863:19;831:52;:::i;:::-;821:62;;902:52;949:3;938:9;934:19;902:52;:::i;:::-;892:62;;973:52;1020:3;1009:9;1005:19;973:52;:::i;:::-;963:62;;1044:52;1091:3;1080:9;1076:19;1044:52;:::i;:::-;1034:62;;1115:52;1162:3;1151:9;1147:19;1115:52;:::i;:::-;1105:62;;1186:52;1233:3;1222:9;1218:19;1186:52;:::i;:::-;1176:62;;1258:52;1305:3;1294:9;1290:19;1258:52;:::i;:::-;1247:63;;1330:52;1377:3;1366:9;1362:19;1330:52;:::i;:::-;1319:63;;468:920;;;;;;;;;;;;;;:::o;:::-;1056:10103:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", - "sourcePath": "contracts/external/Router.sol", - "type": "contract" -} \ No newline at end of file +{ "abi": [ { "inputs": [ { "internalType": "address", "name": "governance_", "type": "address" }, { "internalType": "address", "name": "views_", "type": "address" }, { "internalType": "address", "name": "initializeMarket_", "type": "address" }, { "internalType": "address", "name": "nTokenActions_", "type": "address" }, { "internalType": "address", "name": "batchAction_", "type": "address" }, { "internalType": "address", "name": "accountAction_", "type": "address" }, { "internalType": "address", "name": "erc1155_", "type": "address" }, { "internalType": "address", "name": "liquidateCurrency_", "type": "address" }, { "internalType": "address", "name": "liquidatefCash_", "type": "address" }, { "internalType": "address", "name": "cETH_", "type": "address" }, { "internalType": "address", "name": "treasury_", "type": "address" }, { "internalType": "address", "name": "calculationViews_", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [], "name": "ACCOUNT_ACTION", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "BATCH_ACTION", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "CALCULATION_VIEWS", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ERC1155", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "GOVERNANCE", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "INITIALIZE_MARKET", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "LIQUIDATE_CURRENCY", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "LIQUIDATE_FCASH", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "NTOKEN_ACTIONS", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TREASURY", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "VIEWS", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "cETH", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "sig", "type": "bytes4" } ], "name": "getRouterImplementation", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner_", "type": "address" }, { "internalType": "address", "name": "pauseRouter_", "type": "address" }, { "internalType": "address", "name": "pauseGuardian_", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseGuardian", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseRouter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ], "allSourcePaths": { "24": "contracts/external/Router.sol", "60": "contracts/global/Constants.sol", "63": "contracts/global/StorageLayoutV1.sol", "65": "contracts/global/Types.sol" }, "ast": { "absolutePath": "contracts/external/Router.sol", "exportedSymbols": { "ABDKMath64x64": [ 44430 ], "AaveHandler": [ 26669 ], "AccountBalance": [ 57824 ], "AccountContext": [ 57743 ], "AccountContextHandler": [ 24055 ], "ActionGuards": [ 3662 ], "AggregatorInterface": [ 62384 ], "AggregatorV2V3Interface": [ 58997 ], "AggregatorV3Interface": [ 62430 ], "AssetHandler": [ 40067 ], "AssetRate": [ 30677 ], "AssetRateAdapter": [ 59041 ], "AssetRateParameters": [ 57639 ], "AssetRateStorage": [ 57707 ], "AssetStorageState": [ 57500 ], "BalanceAction": [ 57521 ], "BalanceActionWithTrades": [ 57537 ], "BalanceHandler": [ 25398 ], "BalanceState": [ 57632 ], "BalanceStorage": [ 57767 ], "BatchLend": [ 57508 ], "Bitmap": [ 44771 ], "BitmapAssetsHandler": [ 37096 ], "CErc20Interface": [ 59445 ], "CEtherInterface": [ 59757 ], "CTokenInterface": [ 59740 ], "CashGroup": [ 31956 ], "CashGroupParameters": [ 57648 ], "CashGroupSettings": [ 57732 ], "CompoundHandler": [ 26861 ], "Constants": [ 22832 ], "Context": [ 62453 ], "DateTime": [ 32595 ], "Deployments": [ 22839 ], "DepositActionType": [ 57495 ], "ERC20": [ 60749 ], "ETHRate": [ 57613 ], "ETHRateStorage": [ 57702 ], "ExchangeRate": [ 40263 ], "FloatingPoint56": [ 44847 ], "FreeCollateral": [ 41676 ], "FreeCollateralExternal": [ 618 ], "GenericToken": [ 26993 ], "IAToken": [ 60771 ], "IATokenFull": [ 60806 ], "IEIP20NonStandard": [ 61875 ], "IERC20": [ 59607 ], "ILendingPool": [ 60888 ], "IRewarder": [ 59057 ], "IScaledBalanceToken": [ 60796 ], "Incentives": [ 25585 ], "LendingPoolStorage": [ 60812 ], "LibStorage": [ 23238 ], "LiquidationFactors": [ 57591 ], "Market": [ 34509 ], "MarketParameters": [ 57678 ], "MarketStorage": [ 57787 ], "MigrateIncentives": [ 775 ], "NotionalCalculations": [ 57001 ], "NotionalGovernance": [ 58068 ], "NotionalProxy": [ 57468 ], "NotionalTreasury": [ 59529 ], "NotionalViews": [ 58520 ], "PortfolioAsset": [ 57661 ], "PortfolioAssetStorage": [ 57799 ], "PortfolioHandler": [ 38387 ], "PortfolioState": [ 57602 ], "Router": [ 1734 ], "SafeCast": [ 56950 ], "SafeInt256": [ 45162 ], "SafeMath": [ 56637 ], "SettleAmount": [ 57542 ], "SettleAssetsExternal": [ 1878 ], "SettleBitmapAssets": [ 38867 ], "SettlePortfolioAssets": [ 39292 ], "SettlementRateStorage": [ 57774 ], "StorageLayoutV1": [ 23292 ], "Token": [ 57553 ], "TokenHandler": [ 26426 ], "TokenStorage": [ 57689 ], "TokenType": [ 57480 ], "TradeActionType": [ 57487 ], "TransferAssets": [ 38618 ], "ifCashStorage": [ 57790 ], "nERC1155Interface": [ 58229 ], "nTokenAction": [ 12193 ], "nTokenCalculations": [ 35079 ], "nTokenContext": [ 57758 ], "nTokenERC20": [ 59173 ], "nTokenHandler": [ 36105 ], "nTokenMintAction": [ 12854 ], "nTokenPortfolio": [ 57568 ], "nTokenSupply": [ 36407 ], "nTokenTotalSupplyStorage": [ 57813 ], "nTokenTotalSupplyStorage_deprecated": [ 57806 ] }, "id": 1735, "license": "GPL-3.0-only", "nodeType": "SourceUnit", "nodes": [ { "id": 1058, "literals": [ "solidity", "^", "0.7", ".0" ], "nodeType": "PragmaDirective", "src": "41:23:24" }, { "id": 1059, "literals": [ "abicoder", "v2" ], "nodeType": "PragmaDirective", "src": "65:19:24" }, { "absolutePath": "contracts/external/actions/nTokenAction.sol", "file": "./actions/nTokenAction.sol", "id": 1060, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 12194, "src": "86:36:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/external/actions/nTokenMintAction.sol", "file": "./actions/nTokenMintAction.sol", "id": 1061, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 12855, "src": "123:40:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/global/StorageLayoutV1.sol", "file": "../global/StorageLayoutV1.sol", "id": 1062, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 23293, "src": "164:39:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "contracts/global/Types.sol", "file": "../global/Types.sol", "id": 1063, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 57825, "src": "204:29:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/NotionalProxy.sol", "file": "../../interfaces/notional/NotionalProxy.sol", "id": 1064, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 57469, "src": "234:53:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/nERC1155Interface.sol", "file": "../../interfaces/notional/nERC1155Interface.sol", "id": 1065, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 58230, "src": "288:57:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/NotionalGovernance.sol", "file": "../../interfaces/notional/NotionalGovernance.sol", "id": 1066, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 58069, "src": "346:58:24", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "interfaces/notional/NotionalCalculations.sol", "file": "../../interfaces/notional/NotionalCalculations.sol", "id": 1067, "nodeType": "ImportDirective", "scope": 1735, "sourceUnit": 57002, "src": "405:60:24", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 1069, "name": "StorageLayoutV1", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 23292, "src": "1075:15:24", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageLayoutV1_$23292", "typeString": "contract StorageLayoutV1" } }, "id": 1070, "nodeType": "InheritanceSpecifier", "src": "1075:15:24" } ], "contractDependencies": [ 23292 ], "contractKind": "contract", "documentation": { "id": 1068, "nodeType": "StructuredDocumentation", "src": "467:588:24", "text": " @notice Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage\n will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing\n contracts.\n This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also\n allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a\n new Router with the new hardcoded addresses will then be deployed and upgraded into place." }, "fullyImplemented": true, "id": 1734, "linearizedBaseContracts": [ 1734, 23292 ], "name": "Router", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "functionSelector": "14627834", "id": 1072, "mutability": "immutable", "name": "GOVERNANCE", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1175:35:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1071, "name": "address", "nodeType": "ElementaryTypeName", "src": "1175:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "0c4e7935", "id": 1074, "mutability": "immutable", "name": "VIEWS", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1216:30:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1073, "name": "address", "nodeType": "ElementaryTypeName", "src": "1216:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "dcc1a738", "id": 1076, "mutability": "immutable", "name": "INITIALIZE_MARKET", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1252:42:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1075, "name": "address", "nodeType": "ElementaryTypeName", "src": "1252:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "15beeb93", "id": 1078, "mutability": "immutable", "name": "NTOKEN_ACTIONS", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1300:39:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1077, "name": "address", "nodeType": "ElementaryTypeName", "src": "1300:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "6d7cdbbf", "id": 1080, "mutability": "immutable", "name": "BATCH_ACTION", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1345:37:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1079, "name": "address", "nodeType": "ElementaryTypeName", "src": "1345:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "6009b8e6", "id": 1082, "mutability": "immutable", "name": "ACCOUNT_ACTION", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1388:39:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1081, "name": "address", "nodeType": "ElementaryTypeName", "src": "1388:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "2d255471", "id": 1084, "mutability": "immutable", "name": "ERC1155", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1433:32:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1083, "name": "address", "nodeType": "ElementaryTypeName", "src": "1433:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "2be75895", "id": 1086, "mutability": "immutable", "name": "LIQUIDATE_CURRENCY", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1471:43:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1085, "name": "address", "nodeType": "ElementaryTypeName", "src": "1471:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "206109b5", "id": 1088, "mutability": "immutable", "name": "LIQUIDATE_FCASH", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1520:40:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1087, "name": "address", "nodeType": "ElementaryTypeName", "src": "1520:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "a1b4d011", "id": 1090, "mutability": "immutable", "name": "cETH", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1566:29:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1089, "name": "address", "nodeType": "ElementaryTypeName", "src": "1566:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "2d2c5565", "id": 1092, "mutability": "immutable", "name": "TREASURY", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1601:33:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1091, "name": "address", "nodeType": "ElementaryTypeName", "src": "1601:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "functionSelector": "72d27134", "id": 1094, "mutability": "immutable", "name": "CALCULATION_VIEWS", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1640:42:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1093, "name": "address", "nodeType": "ElementaryTypeName", "src": "1640:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "public" }, { "constant": false, "id": 1096, "mutability": "immutable", "name": "DEPLOYER", "nodeType": "VariableDeclaration", "scope": 1734, "src": "1688:34:24", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1095, "name": "address", "nodeType": "ElementaryTypeName", "src": "1688:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "private" }, { "body": { "id": 1180, "nodeType": "Block", "src": "2109:603:24", "statements": [ { "expression": { "id": 1125, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1123, "name": "GOVERNANCE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1072, "src": "2119:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1124, "name": "governance_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1098, "src": "2132:11:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2119:24:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1126, "nodeType": "ExpressionStatement", "src": "2119:24:24" }, { "expression": { "id": 1129, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1127, "name": "VIEWS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1074, "src": "2153:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1128, "name": "views_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1100, "src": "2161:6:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2153:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1130, "nodeType": "ExpressionStatement", "src": "2153:14:24" }, { "expression": { "id": 1133, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1131, "name": "INITIALIZE_MARKET", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1076, "src": "2177:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1132, "name": "initializeMarket_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1102, "src": "2197:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2177:37:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1134, "nodeType": "ExpressionStatement", "src": "2177:37:24" }, { "expression": { "id": 1137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1135, "name": "NTOKEN_ACTIONS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1078, "src": "2224:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1136, "name": "nTokenActions_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1104, "src": "2241:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2224:31:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1138, "nodeType": "ExpressionStatement", "src": "2224:31:24" }, { "expression": { "id": 1141, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1139, "name": "BATCH_ACTION", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1080, "src": "2265:12:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1140, "name": "batchAction_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1106, "src": "2280:12:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2265:27:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1142, "nodeType": "ExpressionStatement", "src": "2265:27:24" }, { "expression": { "id": 1145, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1143, "name": "ACCOUNT_ACTION", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1082, "src": "2302:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1144, "name": "accountAction_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1108, "src": "2319:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2302:31:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1146, "nodeType": "ExpressionStatement", "src": "2302:31:24" }, { "expression": { "id": 1149, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1147, "name": "ERC1155", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1084, "src": "2343:7:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1148, "name": "erc1155_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1110, "src": "2353:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2343:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1150, "nodeType": "ExpressionStatement", "src": "2343:18:24" }, { "expression": { "id": 1153, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1151, "name": "LIQUIDATE_CURRENCY", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1086, "src": "2371:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1152, "name": "liquidateCurrency_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1112, "src": "2392:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2371:39:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1154, "nodeType": "ExpressionStatement", "src": "2371:39:24" }, { "expression": { "id": 1157, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1155, "name": "LIQUIDATE_FCASH", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1088, "src": "2420:15:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1156, "name": "liquidatefCash_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1114, "src": "2438:15:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2420:33:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1158, "nodeType": "ExpressionStatement", "src": "2420:33:24" }, { "expression": { "id": 1161, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1159, "name": "cETH", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1090, "src": "2463:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1160, "name": "cETH_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1116, "src": "2470:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2463:12:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1162, "nodeType": "ExpressionStatement", "src": "2463:12:24" }, { "expression": { "id": 1166, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1163, "name": "DEPLOYER", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1096, "src": "2485:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { "id": 1164, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "2496:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 1165, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "2496:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "2485:21:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1167, "nodeType": "ExpressionStatement", "src": "2485:21:24" }, { "expression": { "id": 1170, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1168, "name": "TREASURY", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1092, "src": "2516:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1169, "name": "treasury_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1118, "src": "2527:9:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2516:20:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1171, "nodeType": "ExpressionStatement", "src": "2516:20:24" }, { "expression": { "id": 1174, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1172, "name": "CALCULATION_VIEWS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1094, "src": "2546:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1173, "name": "calculationViews_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1120, "src": "2566:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2546:37:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1175, "nodeType": "ExpressionStatement", "src": "2546:37:24" }, { "expression": { "id": 1178, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1176, "name": "hasInitialized", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23249, "src": "2684:14:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "74727565", "id": 1177, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "2701:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "src": "2684:21:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1179, "nodeType": "ExpressionStatement", "src": "2684:21:24" } ] }, "id": 1181, "implemented": true, "kind": "constructor", "modifiers": [], "name": "", "nodeType": "FunctionDefinition", "parameters": { "id": 1121, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1098, "mutability": "mutable", "name": "governance_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1750:19:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1097, "name": "address", "nodeType": "ElementaryTypeName", "src": "1750:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1100, "mutability": "mutable", "name": "views_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1779:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1099, "name": "address", "nodeType": "ElementaryTypeName", "src": "1779:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1102, "mutability": "mutable", "name": "initializeMarket_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1803:25:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1101, "name": "address", "nodeType": "ElementaryTypeName", "src": "1803:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1104, "mutability": "mutable", "name": "nTokenActions_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1838:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1103, "name": "address", "nodeType": "ElementaryTypeName", "src": "1838:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1106, "mutability": "mutable", "name": "batchAction_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1870:20:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1105, "name": "address", "nodeType": "ElementaryTypeName", "src": "1870:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1108, "mutability": "mutable", "name": "accountAction_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1900:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1107, "name": "address", "nodeType": "ElementaryTypeName", "src": "1900:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1110, "mutability": "mutable", "name": "erc1155_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1932:16:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1109, "name": "address", "nodeType": "ElementaryTypeName", "src": "1932:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1112, "mutability": "mutable", "name": "liquidateCurrency_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1958:26:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1111, "name": "address", "nodeType": "ElementaryTypeName", "src": "1958:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1114, "mutability": "mutable", "name": "liquidatefCash_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "1994:23:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1113, "name": "address", "nodeType": "ElementaryTypeName", "src": "1994:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1116, "mutability": "mutable", "name": "cETH_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "2027:13:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1115, "name": "address", "nodeType": "ElementaryTypeName", "src": "2027:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1118, "mutability": "mutable", "name": "treasury_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "2050:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1117, "name": "address", "nodeType": "ElementaryTypeName", "src": "2050:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1120, "mutability": "mutable", "name": "calculationViews_", "nodeType": "VariableDeclaration", "scope": 1181, "src": "2077:25:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1119, "name": "address", "nodeType": "ElementaryTypeName", "src": "2077:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "1740:368:24" }, "returnParameters": { "id": 1122, "nodeType": "ParameterList", "parameters": [], "src": "2109:0:24" }, "scope": 1734, "src": "1729:983:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { "id": 1269, "nodeType": "Block", "src": "2807:1337:24", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 1194, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 1191, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "2880:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 1192, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "2880:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 1193, "name": "DEPLOYER", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1096, "src": "2894:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "2880:22:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "id": 1196, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "2906:15:24", "subExpression": { "id": 1195, "name": "hasInitialized", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23249, "src": "2907:14:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "2880:41:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 1190, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "2872:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 1198, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "2872:50:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1199, "nodeType": "ExpressionStatement", "src": "2872:50:24" }, { "expression": { "id": 1203, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1200, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23251, "src": "3056:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "expression": { "id": 1201, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "3064:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 1202, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "src": "3064:10:24", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "src": "3056:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1204, "nodeType": "ExpressionStatement", "src": "3056:18:24" }, { "assignments": [ 1206, null ], "declarations": [ { "constant": false, "id": 1206, "mutability": "mutable", "name": "status", "nodeType": "VariableDeclaration", "scope": 1269, "src": "3247:11:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 1205, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3247:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, null ], "id": 1248, "initialValue": { "arguments": [ { "arguments": [ { "expression": { "expression": { "id": 1214, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "3370:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1215, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "listCurrency", "nodeType": "MemberAccess", "referencedDeclaration": 57948, "src": "3370:31:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$_t_uint16_$", "typeString": "function NotionalGovernance.listCurrency(struct TokenStorage calldata,struct TokenStorage calldata,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8) returns (uint16)" } }, "id": 1216, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "3370:40:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, { "arguments": [ { "id": 1218, "name": "cETH", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1090, "src": "3445:4:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "hexValue": "66616c7365", "id": 1219, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "3451:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, { "expression": { "id": 1220, "name": "TokenType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57480, "src": "3458:9:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_TokenType_$57480_$", "typeString": "type(enum TokenType)" } }, "id": 1221, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "cETH", "nodeType": "MemberAccess", "src": "3458:14:24", "typeDescriptions": { "typeIdentifier": "t_enum$_TokenType_$57480", "typeString": "enum TokenType" } }, { "expression": { "id": 1222, "name": "Constants", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 22832, "src": "3474:9:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", "typeString": "type(library Constants)" } }, "id": 1223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "CETH_DECIMAL_PLACES", "nodeType": "MemberAccess", "referencedDeclaration": 22572, "src": "3474:29:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, { "hexValue": "30", "id": 1224, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3505:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_enum$_TokenType_$57480", "typeString": "enum TokenType" }, { "typeIdentifier": "t_uint8", "typeString": "uint8" }, { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 1217, "name": "TokenStorage", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57689, "src": "3432:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_struct$_TokenStorage_$57689_storage_ptr_$", "typeString": "type(struct TokenStorage storage pointer)" } }, "id": 1225, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3432:75:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", "typeString": "struct TokenStorage memory" } }, { "arguments": [ { "arguments": [ { "hexValue": "30", "id": 1229, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3600:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 1228, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3592:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 1227, "name": "address", "nodeType": "ElementaryTypeName", "src": "3592:7:24", "typeDescriptions": {} } }, "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3592:10:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "hexValue": "66616c7365", "id": 1231, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "3604:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, { "expression": { "id": 1232, "name": "TokenType", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57480, "src": "3611:9:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_enum$_TokenType_$57480_$", "typeString": "type(enum TokenType)" } }, "id": 1233, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "Ether", "nodeType": "MemberAccess", "src": "3611:15:24", "typeDescriptions": { "typeIdentifier": "t_enum$_TokenType_$57480", "typeString": "enum TokenType" } }, { "expression": { "id": 1234, "name": "Constants", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 22832, "src": "3628:9:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Constants_$22832_$", "typeString": "type(library Constants)" } }, "id": 1235, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "ETH_DECIMAL_PLACES", "nodeType": "MemberAccess", "referencedDeclaration": 22584, "src": "3628:28:24", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, { "hexValue": "30", "id": 1236, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3658:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_enum$_TokenType_$57480", "typeString": "enum TokenType" }, { "typeIdentifier": "t_uint8", "typeString": "uint8" }, { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 1226, "name": "TokenStorage", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57689, "src": "3579:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_struct$_TokenStorage_$57689_storage_ptr_$", "typeString": "type(struct TokenStorage storage pointer)" } }, "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3579:81:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", "typeString": "struct TokenStorage memory" } }, { "arguments": [ { "hexValue": "30", "id": 1240, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3690:1:24", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" } ], "id": 1239, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3682:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 1238, "name": "address", "nodeType": "ElementaryTypeName", "src": "3682:7:24", "typeDescriptions": {} } }, "id": 1241, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3682:10:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, { "hexValue": "66616c7365", "id": 1242, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "3714:5:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, { "hexValue": "313333", "id": 1243, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3741:3:24", "typeDescriptions": { "typeIdentifier": "t_rational_133_by_1", "typeString": "int_const 133" }, "value": "133" }, { "hexValue": "3735", "id": 1244, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3801:2:24", "typeDescriptions": { "typeIdentifier": "t_rational_75_by_1", "typeString": "int_const 75" }, "value": "75" }, { "hexValue": "313038", "id": 1245, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3841:3:24", "typeDescriptions": { "typeIdentifier": "t_rational_108_by_1", "typeString": "int_const 108" }, "value": "108" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, { "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", "typeString": "struct TokenStorage memory" }, { "typeIdentifier": "t_struct$_TokenStorage_$57689_memory_ptr", "typeString": "struct TokenStorage memory" }, { "typeIdentifier": "t_address_payable", "typeString": "address payable" }, { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_rational_133_by_1", "typeString": "int_const 133" }, { "typeIdentifier": "t_rational_75_by_1", "typeString": "int_const 75" }, { "typeIdentifier": "t_rational_108_by_1", "typeString": "int_const 108" } ], "expression": { "id": 1212, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "3326:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 1213, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "encodeWithSelector", "nodeType": "MemberAccess", "src": "3326:22:24", "typeDescriptions": { "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", "typeString": "function (bytes4) pure returns (bytes memory)" } }, "id": 1246, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3326:564:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "expression": { "arguments": [ { "id": 1209, "name": "GOVERNANCE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1072, "src": "3284:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 1208, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3276:7:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", "src": "3276:7:24", "typeDescriptions": {} } }, "id": 1210, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3276:19:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1211, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "delegatecall", "nodeType": "MemberAccess", "src": "3276:32:24", "typeDescriptions": { "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "function (bytes memory) returns (bool,bytes memory)" } }, "id": 1247, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3276:628:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, "nodeType": "VariableDeclarationStatement", "src": "3246:658:24" }, { "expression": { "arguments": [ { "id": 1250, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1206, "src": "3922:6:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 1249, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "3914:7:24", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 1251, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "3914:15:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1252, "nodeType": "ExpressionStatement", "src": "3914:15:24" }, { "expression": { "id": 1255, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1253, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23251, "src": "3940:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1254, "name": "owner_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1183, "src": "3948:6:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "3940:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1256, "nodeType": "ExpressionStatement", "src": "3940:14:24" }, { "expression": { "id": 1259, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1257, "name": "pauseRouter", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23253, "src": "4038:11:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1258, "name": "pauseRouter_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1185, "src": "4052:12:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "4038:26:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1260, "nodeType": "ExpressionStatement", "src": "4038:26:24" }, { "expression": { "id": 1263, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 1261, "name": "pauseGuardian", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23255, "src": "4074:13:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "id": 1262, "name": "pauseGuardian_", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1187, "src": "4090:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "4074:30:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 1264, "nodeType": "ExpressionStatement", "src": "4074:30:24" }, { "expression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1267, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1265, "name": "hasInitialized", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 23249, "src": "4115:14:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "hexValue": "74727565", "id": 1266, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "4133:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "src": "4115:22:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1268, "nodeType": "ExpressionStatement", "src": "4115:22:24" } ] }, "functionSelector": "c0c53b8b", "id": 1270, "implemented": true, "kind": "function", "modifiers": [], "name": "initialize", "nodeType": "FunctionDefinition", "parameters": { "id": 1188, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1183, "mutability": "mutable", "name": "owner_", "nodeType": "VariableDeclaration", "scope": 1270, "src": "2738:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1182, "name": "address", "nodeType": "ElementaryTypeName", "src": "2738:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1185, "mutability": "mutable", "name": "pauseRouter_", "nodeType": "VariableDeclaration", "scope": 1270, "src": "2754:20:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1184, "name": "address", "nodeType": "ElementaryTypeName", "src": "2754:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1187, "mutability": "mutable", "name": "pauseGuardian_", "nodeType": "VariableDeclaration", "scope": 1270, "src": "2776:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1186, "name": "address", "nodeType": "ElementaryTypeName", "src": "2776:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "2737:62:24" }, "returnParameters": { "id": 1189, "nodeType": "ParameterList", "parameters": [], "src": "2807:0:24" }, "scope": 1734, "src": "2718:1426:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { "id": 1713, "nodeType": "Block", "src": "4385:5440:24", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1282, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1278, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4412:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1279, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "4419:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1280, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchBalanceAction", "nodeType": "MemberAccess", "referencedDeclaration": 57296, "src": "4419:32:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceAction_$57521_calldata_ptr_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchBalanceAction(address,struct BalanceAction calldata[] calldata) payable" } }, "id": 1281, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4419:41:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4412:48:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1287, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1283, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4476:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1284, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "4483:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1285, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchBalanceAndTradeAction", "nodeType": "MemberAccess", "referencedDeclaration": 57304, "src": "4483:40:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchBalanceAndTradeAction(address,struct BalanceActionWithTrades calldata[] calldata) payable" } }, "id": 1286, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4483:49:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4476:56:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4412:120:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1293, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1289, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4548:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1290, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "4555:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1291, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchBalanceAndTradeActionWithCallback", "nodeType": "MemberAccess", "referencedDeclaration": 57314, "src": "4555:52:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_array$_t_struct$_BalanceActionWithTrades_$57537_calldata_ptr_$dyn_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchBalanceAndTradeActionWithCallback(address,struct BalanceActionWithTrades calldata[] calldata,bytes calldata) payable" } }, "id": 1292, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4555:61:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4548:68:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4412:204:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1295, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4632:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1296, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "4639:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1297, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "batchLend", "nodeType": "MemberAccess", "referencedDeclaration": 57322, "src": "4639:23:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_BatchLend_$57508_calldata_ptr_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalProxy.batchLend(address,struct BatchLend calldata[] calldata)" } }, "id": 1298, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4639:32:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4632:39:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4412:259:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1362, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1356, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1350, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1344, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1332, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1320, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1314, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1308, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1304, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4749:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1305, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "4756:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1306, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenTotalSupply", "nodeType": "MemberAccess", "referencedDeclaration": 11541, "src": "4756:30:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_address_$returns$_t_uint256_$", "typeString": "function nTokenAction.nTokenTotalSupply(address) view returns (uint256)" } }, "id": 1307, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4756:39:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4749:46:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1313, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1309, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4811:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1310, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "4818:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1311, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenBalanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 11572, "src": "4818:28:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_address_$returns$_t_uint256_$", "typeString": "function nTokenAction.nTokenBalanceOf(uint16,address) view returns (uint256)" } }, "id": 1312, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4818:37:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4811:44:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:106:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1319, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1315, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4871:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1316, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "4878:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1317, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenTransferAllowance", "nodeType": "MemberAccess", "referencedDeclaration": 11610, "src": "4878:36:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function nTokenAction.nTokenTransferAllowance(uint16,address,address) view returns (uint256)" } }, "id": 1318, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4878:45:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4871:52:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:174:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1321, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "4939:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1322, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "4946:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1323, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenTransferApprove", "nodeType": "MemberAccess", "referencedDeclaration": 11662, "src": "4946:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function nTokenAction.nTokenTransferApprove(uint16,address,address,uint256) returns (bool)" } }, "id": 1324, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "4946:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "4939:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:240:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1331, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1327, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5005:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1328, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "5012:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1329, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenTransfer", "nodeType": "MemberAccess", "referencedDeclaration": 11711, "src": "5012:27:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function nTokenAction.nTokenTransfer(uint16,address,address,uint256) returns (bool)" } }, "id": 1330, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5012:36:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5005:43:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:299:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1337, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1333, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5064:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1334, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "5071:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1335, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenTransferFrom", "nodeType": "MemberAccess", "referencedDeclaration": 11822, "src": "5071:31:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_address_$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function nTokenAction.nTokenTransferFrom(uint16,address,address,address,uint256) returns (bool)" } }, "id": 1336, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5071:40:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5064:47:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:362:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1343, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1339, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5127:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1340, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "5134:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1341, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenClaimIncentives", "nodeType": "MemberAccess", "referencedDeclaration": 11961, "src": "5134:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$__$returns$_t_uint256_$", "typeString": "function nTokenAction.nTokenClaimIncentives() returns (uint256)" } }, "id": 1342, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5134:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5127:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:428:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1349, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1345, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5193:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1346, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "5200:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1347, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenTransferApproveAll", "nodeType": "MemberAccess", "referencedDeclaration": 11852, "src": "5200:37:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function nTokenAction.nTokenTransferApproveAll(address,uint256) returns (bool)" } }, "id": 1348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5200:46:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5193:53:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:497:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1355, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1351, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5262:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1352, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "5269:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1353, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenPresentValueAssetDenominated", "nodeType": "MemberAccess", "referencedDeclaration": 11979, "src": "5269:47:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$returns$_t_int256_$", "typeString": "function nTokenAction.nTokenPresentValueAssetDenominated(uint16) view returns (int256)" } }, "id": 1354, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5269:56:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5262:63:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:576:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1361, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1357, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5341:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1358, "name": "nTokenAction", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 12193, "src": "5348:12:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nTokenAction_$12193_$", "typeString": "type(contract nTokenAction)" } }, "id": 1359, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenPresentValueUnderlyingDenominated", "nodeType": "MemberAccess", "referencedDeclaration": 12004, "src": "5348:52:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$returns$_t_int256_$", "typeString": "function nTokenAction.nTokenPresentValueUnderlyingDenominated(uint16) view returns (int256)" } }, "id": 1360, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5348:61:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5341:68:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4749:660:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1400, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1394, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1388, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1382, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1376, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1370, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1366, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5489:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1367, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "5496:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1368, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "depositUnderlyingToken", "nodeType": "MemberAccess", "referencedDeclaration": 57265, "src": "5496:36:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_uint16_$_t_uint256_$returns$_t_uint256_$", "typeString": "function NotionalProxy.depositUnderlyingToken(address,uint16,uint256) payable returns (uint256)" } }, "id": 1369, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5496:45:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5489:52:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1375, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1371, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5557:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1372, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "5564:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1373, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "depositAssetToken", "nodeType": "MemberAccess", "referencedDeclaration": 57276, "src": "5564:31:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint256_$returns$_t_uint256_$", "typeString": "function NotionalProxy.depositAssetToken(address,uint16,uint256) returns (uint256)" } }, "id": 1374, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5564:40:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5557:47:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5489:115:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1381, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1377, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5620:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1378, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "5627:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1379, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "withdraw", "nodeType": "MemberAccess", "referencedDeclaration": 57287, "src": "5627:22:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint88_$_t_bool_$returns$_t_uint256_$", "typeString": "function NotionalProxy.withdraw(uint16,uint88,bool) returns (uint256)" } }, "id": 1380, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5627:31:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5620:38:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5489:169:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1387, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1383, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5674:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1384, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "5681:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1385, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "settleAccount", "nodeType": "MemberAccess", "referencedDeclaration": 57254, "src": "5681:27:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", "typeString": "function NotionalProxy.settleAccount(address)" } }, "id": 1386, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5681:36:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5674:43:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5489:228:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1393, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1389, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5733:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1390, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "5740:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1391, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenRedeem", "nodeType": "MemberAccess", "referencedDeclaration": 57243, "src": "5740:26:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$", "typeString": "function NotionalProxy.nTokenRedeem(address,uint16,uint96,bool,bool) returns (int256)" } }, "id": 1392, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5740:35:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5733:42:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5489:286:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1399, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1395, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5791:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1396, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "5798:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1397, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "enableBitmapCurrency", "nodeType": "MemberAccess", "referencedDeclaration": 57249, "src": "5798:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$returns$__$", "typeString": "function NotionalProxy.enableBitmapCurrency(uint16)" } }, "id": 1398, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5798:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5791:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5489:352:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1468, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1462, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1450, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1444, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1438, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1432, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1426, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1420, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1414, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1408, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1404, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5921:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1405, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "5928:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1406, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "supportsInterface", "nodeType": "MemberAccess", "referencedDeclaration": 58119, "src": "5928:35:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_pure$_t_bytes4_$returns$_t_bool_$", "typeString": "function nERC1155Interface.supportsInterface(bytes4) pure returns (bool)" } }, "id": 1407, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5928:44:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5921:51:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1413, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1409, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "5988:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1410, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "5995:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1411, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 58128, "src": "5995:27:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function nERC1155Interface.balanceOf(address,uint256) view returns (uint256)" } }, "id": 1412, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "5995:36:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "5988:43:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:110:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1419, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1415, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6047:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1416, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6054:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1417, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "balanceOfBatch", "nodeType": "MemberAccess", "referencedDeclaration": 58140, "src": "6054:32:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_array$_t_address_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "function nERC1155Interface.balanceOfBatch(address[] calldata,uint256[] calldata) view returns (uint256[] memory)" } }, "id": 1418, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6054:41:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6047:48:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:174:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1425, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1421, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6111:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1422, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6118:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1423, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "signedBalanceOf", "nodeType": "MemberAccess", "referencedDeclaration": 58149, "src": "6118:33:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_int256_$", "typeString": "function nERC1155Interface.signedBalanceOf(address,uint256) view returns (int256)" } }, "id": 1424, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6118:42:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6111:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:239:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1431, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1427, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6176:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1428, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6183:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "signedBalanceOfBatch", "nodeType": "MemberAccess", "referencedDeclaration": 58161, "src": "6183:38:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_array$_t_address_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$", "typeString": "function nERC1155Interface.signedBalanceOfBatch(address[] calldata,uint256[] calldata) view returns (int256[] memory)" } }, "id": 1430, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6183:47:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6176:54:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:309:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1437, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1433, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6246:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1434, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6253:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1435, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "safeTransferFrom", "nodeType": "MemberAccess", "referencedDeclaration": 58190, "src": "6253:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_calldata_ptr_$returns$__$", "typeString": "function nERC1155Interface.safeTransferFrom(address,address,uint256,uint256,bytes calldata) payable" } }, "id": 1436, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6253:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6246:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:375:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1443, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1439, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6312:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1440, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6319:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1441, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "safeBatchTransferFrom", "nodeType": "MemberAccess", "referencedDeclaration": 58205, "src": "6319:39:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_bytes_calldata_ptr_$returns$__$", "typeString": "function nERC1155Interface.safeBatchTransferFrom(address,address,uint256[] calldata,uint256[] calldata,bytes calldata) payable" } }, "id": 1442, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6319:48:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6312:55:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:446:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1449, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1445, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6383:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1446, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6390:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1447, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "decodeToAssets", "nodeType": "MemberAccess", "referencedDeclaration": 58217, "src": "6390:32:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_struct$_PortfolioAsset_$57661_memory_ptr_$dyn_memory_ptr_$", "typeString": "function nERC1155Interface.decodeToAssets(uint256[] calldata,uint256[] calldata) view returns (struct PortfolioAsset memory[] memory)" } }, "id": 1448, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6390:41:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6383:48:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:510:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1455, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1451, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6447:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1452, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6454:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1453, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "encodeToId", "nodeType": "MemberAccess", "referencedDeclaration": 58228, "src": "6454:28:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_pure$_t_uint16_$_t_uint40_$_t_uint8_$returns$_t_uint256_$", "typeString": "function nERC1155Interface.encodeToId(uint16,uint40,uint8) pure returns (uint256)" } }, "id": 1454, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6454:37:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6447:44:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:570:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1461, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1457, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6507:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1458, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6514:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1459, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "setApprovalForAll", "nodeType": "MemberAccess", "referencedDeclaration": 58168, "src": "6514:35:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function nERC1155Interface.setApprovalForAll(address,bool)" } }, "id": 1460, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6514:44:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6507:51:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:637:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1467, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1463, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6574:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1464, "name": "nERC1155Interface", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58229, "src": "6581:17:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_nERC1155Interface_$58229_$", "typeString": "type(contract nERC1155Interface)" } }, "id": 1465, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "isApprovedForAll", "nodeType": "MemberAccess", "referencedDeclaration": 58177, "src": "6581:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_address_$_t_address_$returns$_t_bool_$", "typeString": "function nERC1155Interface.isApprovedForAll(address,address) view returns (bool)" } }, "id": 1466, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6581:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6574:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "5921:703:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1494, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1488, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1482, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1476, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1472, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6697:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1473, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "6704:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1474, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "liquidateLocalCurrency", "nodeType": "MemberAccess", "referencedDeclaration": 57349, "src": "6704:36:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$returns$_t_int256_$_t_int256_$", "typeString": "function NotionalProxy.liquidateLocalCurrency(address,uint16,uint96) returns (int256,int256)" } }, "id": 1475, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6704:45:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6697:52:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1481, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1477, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6765:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1478, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "6772:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1479, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "liquidateCollateralCurrency", "nodeType": "MemberAccess", "referencedDeclaration": 57391, "src": "6772:41:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_uint128_$_t_uint96_$_t_bool_$_t_bool_$returns$_t_int256_$_t_int256_$_t_int256_$", "typeString": "function NotionalProxy.liquidateCollateralCurrency(address,uint16,uint16,uint128,uint96,bool,bool) returns (int256,int256,int256)" } }, "id": 1480, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6772:50:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6765:57:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "6697:125:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1487, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1483, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6838:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1484, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "6845:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1485, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "calculateLocalCurrencyLiquidation", "nodeType": "MemberAccess", "referencedDeclaration": 57336, "src": "6845:47:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint96_$returns$_t_int256_$_t_int256_$", "typeString": "function NotionalProxy.calculateLocalCurrencyLiquidation(address,uint16,uint96) returns (int256,int256)" } }, "id": 1486, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6845:56:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6838:63:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "6697:204:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1493, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1489, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "6917:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1490, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "6924:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1491, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "calculateCollateralCurrencyLiquidation", "nodeType": "MemberAccess", "referencedDeclaration": 57368, "src": "6924:52:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_uint128_$_t_uint96_$returns$_t_int256_$_t_int256_$_t_int256_$", "typeString": "function NotionalProxy.calculateCollateralCurrencyLiquidation(address,uint16,uint16,uint128,uint96) returns (int256,int256,int256)" } }, "id": 1492, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "6924:61:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "6917:68:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "6697:288:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1520, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1514, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1508, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1502, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1498, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7069:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1499, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "7076:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1500, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "liquidatefCashLocal", "nodeType": "MemberAccess", "referencedDeclaration": 57427, "src": "7076:33:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", "typeString": "function NotionalProxy.liquidatefCashLocal(address,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" } }, "id": 1501, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7076:42:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7069:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1507, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1503, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7134:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1504, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "7141:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1505, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "liquidatefCashCrossCurrency", "nodeType": "MemberAccess", "referencedDeclaration": 57467, "src": "7141:41:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", "typeString": "function NotionalProxy.liquidatefCashCrossCurrency(address,uint16,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" } }, "id": 1506, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7141:50:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7134:57:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7069:122:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1513, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1509, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7207:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1510, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "7214:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1511, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "calculatefCashLocalLiquidation", "nodeType": "MemberAccess", "referencedDeclaration": 57409, "src": "7214:44:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", "typeString": "function NotionalProxy.calculatefCashLocalLiquidation(address,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" } }, "id": 1512, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7214:53:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7207:60:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7069:198:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1519, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1515, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7283:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1516, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "7290:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1517, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "calculatefCashCrossCurrencyLiquidation", "nodeType": "MemberAccess", "referencedDeclaration": 57447, "src": "7290:52:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_uint16_$_t_uint16_$_t_array$_t_uint256_$dyn_calldata_ptr_$_t_array$_t_uint256_$dyn_calldata_ptr_$returns$_t_array$_t_int256_$dyn_memory_ptr_$_t_int256_$", "typeString": "function NotionalProxy.calculatefCashCrossCurrencyLiquidation(address,uint16,uint16,uint256[] calldata,uint256[] calldata) returns (int256[] memory,int256)" } }, "id": 1518, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7290:61:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7283:68:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7069:282:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1534, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1528, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1524, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7432:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1525, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "7439:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1526, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "initializeMarkets", "nodeType": "MemberAccess", "referencedDeclaration": 57222, "src": "7439:31:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_bool_$returns$__$", "typeString": "function NotionalProxy.initializeMarkets(uint16,bool)" } }, "id": 1527, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7439:40:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7432:47:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1533, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1529, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7495:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1530, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "7502:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1531, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "sweepCashIntoMarkets", "nodeType": "MemberAccess", "referencedDeclaration": 57227, "src": "7502:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$returns$__$", "typeString": "function NotionalProxy.sweepCashIntoMarkets(uint16)" } }, "id": 1532, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7502:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7495:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7432:113:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1638, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1632, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1626, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1614, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1608, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1602, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1596, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1590, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1584, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1578, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1566, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1560, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1554, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1548, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1542, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1538, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7628:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1539, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "7635:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1540, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "listCurrency", "nodeType": "MemberAccess", "referencedDeclaration": 57948, "src": "7635:31:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_struct$_TokenStorage_$57689_calldata_ptr_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$_t_uint16_$", "typeString": "function NotionalGovernance.listCurrency(struct TokenStorage calldata,struct TokenStorage calldata,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8) returns (uint16)" } }, "id": 1541, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7635:40:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7628:47:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1547, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1543, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7691:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1544, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "7698:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1545, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "enableCashGroup", "nodeType": "MemberAccess", "referencedDeclaration": 57968, "src": "7698:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AssetRateAdapter_$59041_$_t_struct$_CashGroupSettings_$57732_calldata_ptr_$_t_string_calldata_ptr_$_t_string_calldata_ptr_$returns$__$", "typeString": "function NotionalGovernance.enableCashGroup(uint16,contract AssetRateAdapter,struct CashGroupSettings calldata,string calldata,string calldata)" } }, "id": 1546, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7698:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7691:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:113:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1553, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1549, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7757:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1550, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "7764:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1551, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateCashGroup", "nodeType": "MemberAccess", "referencedDeclaration": 58019, "src": "7764:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_struct$_CashGroupSettings_$57732_calldata_ptr_$returns$__$", "typeString": "function NotionalGovernance.updateCashGroup(uint16,struct CashGroupSettings calldata)" } }, "id": 1552, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7764:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7757:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:179:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1559, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1555, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7823:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1556, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "7830:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1557, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateAssetRate", "nodeType": "MemberAccess", "referencedDeclaration": 58026, "src": "7830:34:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AssetRateAdapter_$59041_$returns$__$", "typeString": "function NotionalGovernance.updateAssetRate(uint16,contract AssetRateAdapter)" } }, "id": 1558, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7830:43:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7823:50:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:245:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1565, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1561, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7889:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1562, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "7896:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1563, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateETHRate", "nodeType": "MemberAccess", "referencedDeclaration": 58041, "src": "7896:32:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_contract$_AggregatorV2V3Interface_$58997_$_t_bool_$_t_uint8_$_t_uint8_$_t_uint8_$returns$__$", "typeString": "function NotionalGovernance.updateETHRate(uint16,contract AggregatorV2V3Interface,bool,uint8,uint8,uint8)" } }, "id": 1564, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7896:41:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7889:48:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:309:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1571, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1567, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "7953:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1568, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "7960:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1569, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "transferOwnership", "nodeType": "MemberAccess", "referencedDeclaration": 57919, "src": "7960:36:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function NotionalGovernance.transferOwnership(address,bool)" } }, "id": 1570, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "7960:45:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "7953:52:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:377:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1577, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1573, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8021:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1574, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8028:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1575, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "claimOwnership", "nodeType": "MemberAccess", "referencedDeclaration": 57922, "src": "8028:33:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$__$returns$__$", "typeString": "function NotionalGovernance.claimOwnership()" } }, "id": 1576, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8028:42:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8021:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:442:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1583, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1579, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8086:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1580, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8093:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1581, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateIncentiveEmissionRate", "nodeType": "MemberAccess", "referencedDeclaration": 57997, "src": "8093:46:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint32_$returns$__$", "typeString": "function NotionalGovernance.updateIncentiveEmissionRate(uint16,uint32)" } }, "id": 1582, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8093:55:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8086:62:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:520:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1589, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1585, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8164:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1586, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8171:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1587, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateMaxCollateralBalance", "nodeType": "MemberAccess", "referencedDeclaration": 57955, "src": "8171:45:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint72_$returns$__$", "typeString": "function NotionalGovernance.updateMaxCollateralBalance(uint16,uint72)" } }, "id": 1588, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8171:54:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8164:61:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:597:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1595, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1591, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8241:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1592, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8248:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1593, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateDepositParameters", "nodeType": "MemberAccess", "referencedDeclaration": 57979, "src": "8248:42:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_array$_t_uint32_$dyn_calldata_ptr_$_t_array$_t_uint32_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalGovernance.updateDepositParameters(uint16,uint32[] calldata,uint32[] calldata)" } }, "id": 1594, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8248:51:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8241:58:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:671:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1601, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1597, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8315:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1598, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8322:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1599, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateInitializationParameters", "nodeType": "MemberAccess", "referencedDeclaration": 57990, "src": "8322:49:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_array$_t_uint32_$dyn_calldata_ptr_$_t_array$_t_uint32_$dyn_calldata_ptr_$returns$__$", "typeString": "function NotionalGovernance.updateInitializationParameters(uint16,uint32[] calldata,uint32[] calldata)" } }, "id": 1600, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8322:58:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8315:65:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:752:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1607, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1603, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8396:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1604, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8403:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1605, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateTokenCollateralParameters", "nodeType": "MemberAccess", "referencedDeclaration": 58012, "src": "8403:50:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint8_$_t_uint8_$_t_uint8_$_t_uint8_$_t_uint8_$returns$__$", "typeString": "function NotionalGovernance.updateTokenCollateralParameters(uint16,uint8,uint8,uint8,uint8,uint8)" } }, "id": 1606, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8403:59:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8396:66:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:834:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1609, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8478:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1610, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8485:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1611, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateGlobalTransferOperator", "nodeType": "MemberAccess", "referencedDeclaration": 58048, "src": "8485:47:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function NotionalGovernance.updateGlobalTransferOperator(address,bool)" } }, "id": 1612, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8485:56:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8478:63:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:913:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1619, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1615, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8557:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1616, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8564:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1617, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "updateAuthorizedCallbackContract", "nodeType": "MemberAccess", "referencedDeclaration": 58055, "src": "8564:51:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function NotionalGovernance.updateAuthorizedCallbackContract(address,bool)" } }, "id": 1618, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8564:60:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8557:67:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:996:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1625, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1621, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8640:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1622, "name": "NotionalGovernance", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 58068, "src": "8647:18:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalGovernance_$58068_$", "typeString": "type(contract NotionalGovernance)" } }, "id": 1623, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "setLendingPool", "nodeType": "MemberAccess", "referencedDeclaration": 58060, "src": "8647:33:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_contract$_ILendingPool_$60888_$returns$__$", "typeString": "function NotionalGovernance.setLendingPool(contract ILendingPool)" } }, "id": 1624, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8647:42:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8640:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:1061:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1631, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1627, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8705:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1628, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "8712:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1629, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "upgradeTo", "nodeType": "MemberAccess", "referencedDeclaration": 57187, "src": "8712:23:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", "typeString": "function NotionalProxy.upgradeTo(address)" } }, "id": 1630, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8712:32:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8705:39:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:1116:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1637, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1633, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8760:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1634, "name": "NotionalProxy", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57468, "src": "8767:13:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalProxy_$57468_$", "typeString": "type(contract NotionalProxy)" } }, "id": 1635, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "upgradeToAndCall", "nodeType": "MemberAccess", "referencedDeclaration": 57194, "src": "8767:30:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function NotionalProxy.upgradeToAndCall(address,bytes memory) payable" } }, "id": 1636, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8767:39:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8760:46:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "7628:1178:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1670, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1664, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1658, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1652, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1646, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1642, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8882:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1643, "name": "NotionalTreasury", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 59529, "src": "8889:16:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", "typeString": "type(contract NotionalTreasury)" } }, "id": 1644, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "claimCOMPAndTransfer", "nodeType": "MemberAccess", "referencedDeclaration": 59500, "src": "8889:37:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_array$_t_address_$dyn_calldata_ptr_$returns$_t_uint256_$", "typeString": "function NotionalTreasury.claimCOMPAndTransfer(address[] calldata) returns (uint256)" } }, "id": 1645, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8889:46:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8882:53:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1647, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "8951:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1648, "name": "NotionalTreasury", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 59529, "src": "8958:16:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", "typeString": "type(contract NotionalTreasury)" } }, "id": 1649, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "transferReserveToTreasury", "nodeType": "MemberAccess", "referencedDeclaration": 59509, "src": "8958:42:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_array$_t_uint16_$dyn_calldata_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "function NotionalTreasury.transferReserveToTreasury(uint16[] calldata) returns (uint256[] memory)" } }, "id": 1650, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "8958:51:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "8951:58:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "8882:127:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1653, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9025:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1654, "name": "NotionalTreasury", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 59529, "src": "9032:16:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", "typeString": "type(contract NotionalTreasury)" } }, "id": 1655, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "setTreasuryManager", "nodeType": "MemberAccess", "referencedDeclaration": 59514, "src": "9032:35:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", "typeString": "function NotionalTreasury.setTreasuryManager(address)" } }, "id": 1656, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9032:44:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9025:51:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "8882:194:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1659, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9092:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1660, "name": "NotionalTreasury", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 59529, "src": "9099:16:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", "typeString": "type(contract NotionalTreasury)" } }, "id": 1661, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "setReserveBuffer", "nodeType": "MemberAccess", "referencedDeclaration": 59521, "src": "9099:33:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_uint256_$returns$__$", "typeString": "function NotionalTreasury.setReserveBuffer(uint16,uint256)" } }, "id": 1662, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9099:42:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9092:49:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "8882:259:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1669, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1665, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9157:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1666, "name": "NotionalTreasury", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 59529, "src": "9164:16:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalTreasury_$59529_$", "typeString": "type(contract NotionalTreasury)" } }, "id": 1667, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "setReserveCashBalance", "nodeType": "MemberAccess", "referencedDeclaration": 59528, "src": "9164:38:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_nonpayable$_t_uint16_$_t_int256_$returns$__$", "typeString": "function NotionalTreasury.setReserveCashBalance(uint16,int256)" } }, "id": 1668, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9164:47:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9157:54:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "8882:329:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "condition": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1696, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1690, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 1684, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1678, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1674, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9285:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1675, "name": "NotionalCalculations", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57001, "src": "9292:20:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", "typeString": "type(contract NotionalCalculations)" } }, "id": 1676, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "calculateNTokensToMint", "nodeType": "MemberAccess", "referencedDeclaration": 56963, "src": "9292:43:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_uint88_$returns$_t_uint256_$", "typeString": "function NotionalCalculations.calculateNTokensToMint(uint16,uint88) view returns (uint256)" } }, "id": 1677, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9292:52:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9285:59:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1679, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9360:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1680, "name": "NotionalCalculations", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57001, "src": "9367:20:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", "typeString": "type(contract NotionalCalculations)" } }, "id": 1681, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "getfCashAmountGivenCashAmount", "nodeType": "MemberAccess", "referencedDeclaration": 56976, "src": "9367:50:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_int88_$_t_uint256_$_t_uint256_$returns$_t_int256_$", "typeString": "function NotionalCalculations.getfCashAmountGivenCashAmount(uint16,int88,uint256,uint256) view returns (int256)" } }, "id": 1682, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9367:59:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9360:66:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "9285:141:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1689, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1685, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9442:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1686, "name": "NotionalCalculations", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57001, "src": "9449:20:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", "typeString": "type(contract NotionalCalculations)" } }, "id": 1687, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "getCashAmountGivenfCashAmount", "nodeType": "MemberAccess", "referencedDeclaration": 56991, "src": "9449:50:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_uint16_$_t_int88_$_t_uint256_$_t_uint256_$returns$_t_int256_$_t_int256_$", "typeString": "function NotionalCalculations.getCashAmountGivenfCashAmount(uint16,int88,uint256,uint256) view returns (int256,int256)" } }, "id": 1688, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9449:59:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9442:66:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "9285:223:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "||", "rightExpression": { "commonType": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "id": 1695, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1691, "name": "sig", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1273, "src": "9524:3:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "expression": { "id": 1692, "name": "NotionalCalculations", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 57001, "src": "9531:20:24", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_NotionalCalculations_$57001_$", "typeString": "type(contract NotionalCalculations)" } }, "id": 1693, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "nTokenGetClaimableIncentives", "nodeType": "MemberAccess", "referencedDeclaration": 57000, "src": "9531:49:24", "typeDescriptions": { "typeIdentifier": "t_function_declaration_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function NotionalCalculations.nTokenGetClaimableIncentives(address,uint256) view returns (uint256)" } }, "id": 1694, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "src": "9531:58:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "src": "9524:65:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "9285:304:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 1702, "nodeType": "Block", "src": "9655:164:24", "statements": [ { "expression": { "id": 1700, "name": "VIEWS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1074, "src": "9803:5:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1701, "nodeType": "Return", "src": "9796:12:24" } ] }, "id": 1703, "nodeType": "IfStatement", "src": "9268:551:24", "trueBody": { "id": 1699, "nodeType": "Block", "src": "9600:49:24", "statements": [ { "expression": { "id": 1697, "name": "CALCULATION_VIEWS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1094, "src": "9621:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1698, "nodeType": "Return", "src": "9614:24:24" } ] } }, "id": 1704, "nodeType": "IfStatement", "src": "8865:954:24", "trueBody": { "id": 1673, "nodeType": "Block", "src": "9222:40:24", "statements": [ { "expression": { "id": 1671, "name": "TREASURY", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1092, "src": "9243:8:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1672, "nodeType": "Return", "src": "9236:15:24" } ] } }, "id": 1705, "nodeType": "IfStatement", "src": "7611:2208:24", "trueBody": { "id": 1641, "nodeType": "Block", "src": "8817:42:24", "statements": [ { "expression": { "id": 1639, "name": "GOVERNANCE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1072, "src": "8838:10:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1640, "nodeType": "Return", "src": "8831:17:24" } ] } }, "id": 1706, "nodeType": "IfStatement", "src": "7415:2404:24", "trueBody": { "id": 1537, "nodeType": "Block", "src": "7556:49:24", "statements": [ { "expression": { "id": 1535, "name": "INITIALIZE_MARKET", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1076, "src": "7577:17:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1536, "nodeType": "Return", "src": "7570:24:24" } ] } }, "id": 1707, "nodeType": "IfStatement", "src": "7052:2767:24", "trueBody": { "id": 1523, "nodeType": "Block", "src": "7362:47:24", "statements": [ { "expression": { "id": 1521, "name": "LIQUIDATE_FCASH", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1088, "src": "7383:15:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1522, "nodeType": "Return", "src": "7376:22:24" } ] } }, "id": 1708, "nodeType": "IfStatement", "src": "6680:3139:24", "trueBody": { "id": 1497, "nodeType": "Block", "src": "6996:50:24", "statements": [ { "expression": { "id": 1495, "name": "LIQUIDATE_CURRENCY", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1086, "src": "7017:18:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1496, "nodeType": "Return", "src": "7010:25:24" } ] } }, "id": 1709, "nodeType": "IfStatement", "src": "5904:3915:24", "trueBody": { "id": 1471, "nodeType": "Block", "src": "6635:39:24", "statements": [ { "expression": { "id": 1469, "name": "ERC1155", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1084, "src": "6656:7:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1470, "nodeType": "Return", "src": "6649:14:24" } ] } }, "id": 1710, "nodeType": "IfStatement", "src": "5472:4347:24", "trueBody": { "id": 1403, "nodeType": "Block", "src": "5852:46:24", "statements": [ { "expression": { "id": 1401, "name": "ACCOUNT_ACTION", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1082, "src": "5873:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1402, "nodeType": "Return", "src": "5866:21:24" } ] } }, "id": 1711, "nodeType": "IfStatement", "src": "4732:5087:24", "trueBody": { "id": 1365, "nodeType": "Block", "src": "5420:46:24", "statements": [ { "expression": { "id": 1363, "name": "NTOKEN_ACTIONS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1078, "src": "5441:14:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1364, "nodeType": "Return", "src": "5434:21:24" } ] } }, "id": 1712, "nodeType": "IfStatement", "src": "4395:5424:24", "trueBody": { "id": 1303, "nodeType": "Block", "src": "4682:44:24", "statements": [ { "expression": { "id": 1301, "name": "BATCH_ACTION", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1080, "src": "4703:12:24", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "functionReturnParameters": 1277, "id": 1302, "nodeType": "Return", "src": "4696:19:24" } ] } } ] }, "documentation": { "id": 1271, "nodeType": "StructuredDocumentation", "src": "4150:155:24", "text": "@notice Returns the implementation contract for the method signature\n @param sig method signature to call\n @return implementation address" }, "functionSelector": "76e1df48", "id": 1714, "implemented": true, "kind": "function", "modifiers": [], "name": "getRouterImplementation", "nodeType": "FunctionDefinition", "parameters": { "id": 1274, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1273, "mutability": "mutable", "name": "sig", "nodeType": "VariableDeclaration", "scope": 1714, "src": "4343:10:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 1272, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "4343:6:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "visibility": "internal" } ], "src": "4342:12:24" }, "returnParameters": { "id": 1277, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1276, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "scope": 1714, "src": "4376:7:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1275, "name": "address", "nodeType": "ElementaryTypeName", "src": "4376:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "4375:9:24" }, "scope": 1734, "src": "4310:5515:24", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { "id": 1721, "nodeType": "Block", "src": "10056:919:24", "statements": [ { "AST": { "nodeType": "YulBlock", "src": "10131:838:24", "statements": [ { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "10384:1:24", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", "src": "10387:1:24", "type": "", "value": "0" }, { "arguments": [], "functionName": { "name": "calldatasize", "nodeType": "YulIdentifier", "src": "10390:12:24" }, "nodeType": "YulFunctionCall", "src": "10390:14:24" } ], "functionName": { "name": "calldatacopy", "nodeType": "YulIdentifier", "src": "10371:12:24" }, "nodeType": "YulFunctionCall", "src": "10371:34:24" }, "nodeType": "YulExpressionStatement", "src": "10371:34:24" }, { "nodeType": "YulVariableDeclaration", "src": "10532:74:24", "value": { "arguments": [ { "arguments": [], "functionName": { "name": "gas", "nodeType": "YulIdentifier", "src": "10559:3:24" }, "nodeType": "YulFunctionCall", "src": "10559:5:24" }, { "name": "implementation", "nodeType": "YulIdentifier", "src": "10566:14:24" }, { "kind": "number", "nodeType": "YulLiteral", "src": "10582:1:24", "type": "", "value": "0" }, { "arguments": [], "functionName": { "name": "calldatasize", "nodeType": "YulIdentifier", "src": "10585:12:24" }, "nodeType": "YulFunctionCall", "src": "10585:14:24" }, { "kind": "number", "nodeType": "YulLiteral", "src": "10601:1:24", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", "src": "10604:1:24", "type": "", "value": "0" } ], "functionName": { "name": "delegatecall", "nodeType": "YulIdentifier", "src": "10546:12:24" }, "nodeType": "YulFunctionCall", "src": "10546:60:24" }, "variables": [ { "name": "result", "nodeType": "YulTypedName", "src": "10536:6:24", "type": "" } ] }, { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "10674:1:24", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", "src": "10677:1:24", "type": "", "value": "0" }, { "arguments": [], "functionName": { "name": "returndatasize", "nodeType": "YulIdentifier", "src": "10680:14:24" }, "nodeType": "YulFunctionCall", "src": "10680:16:24" } ], "functionName": { "name": "returndatacopy", "nodeType": "YulIdentifier", "src": "10659:14:24" }, "nodeType": "YulFunctionCall", "src": "10659:38:24" }, "nodeType": "YulExpressionStatement", "src": "10659:38:24" }, { "cases": [ { "body": { "nodeType": "YulBlock", "src": "10800:67:24", "statements": [ { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "10829:1:24", "type": "", "value": "0" }, { "arguments": [], "functionName": { "name": "returndatasize", "nodeType": "YulIdentifier", "src": "10832:14:24" }, "nodeType": "YulFunctionCall", "src": "10832:16:24" } ], "functionName": { "name": "revert", "nodeType": "YulIdentifier", "src": "10822:6:24" }, "nodeType": "YulFunctionCall", "src": "10822:27:24" }, "nodeType": "YulExpressionStatement", "src": "10822:27:24" } ] }, "nodeType": "YulCase", "src": "10793:74:24", "value": { "kind": "number", "nodeType": "YulLiteral", "src": "10798:1:24", "type": "", "value": "0" } }, { "body": { "nodeType": "YulBlock", "src": "10892:67:24", "statements": [ { "expression": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "10921:1:24", "type": "", "value": "0" }, { "arguments": [], "functionName": { "name": "returndatasize", "nodeType": "YulIdentifier", "src": "10924:14:24" }, "nodeType": "YulFunctionCall", "src": "10924:16:24" } ], "functionName": { "name": "return", "nodeType": "YulIdentifier", "src": "10914:6:24" }, "nodeType": "YulFunctionCall", "src": "10914:27:24" }, "nodeType": "YulExpressionStatement", "src": "10914:27:24" } ] }, "nodeType": "YulCase", "src": "10884:75:24", "value": "default" } ], "expression": { "name": "result", "nodeType": "YulIdentifier", "src": "10718:6:24" }, "nodeType": "YulSwitch", "src": "10711:248:24" } ] }, "evmVersion": "istanbul", "externalReferences": [ { "declaration": 1717, "isOffset": false, "isSlot": false, "src": "10566:14:24", "valueSize": 1 } ], "id": 1720, "nodeType": "InlineAssembly", "src": "10122:847:24" } ] }, "documentation": { "id": 1715, "nodeType": "StructuredDocumentation", "src": "9831:169:24", "text": "@dev Delegates the current call to `implementation`.\n This function does not return to its internal call site, it will return directly to the external caller." }, "id": 1722, "implemented": true, "kind": "function", "modifiers": [], "name": "_delegate", "nodeType": "FunctionDefinition", "parameters": { "id": 1718, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1717, "mutability": "mutable", "name": "implementation", "nodeType": "VariableDeclaration", "scope": 1722, "src": "10024:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1716, "name": "address", "nodeType": "ElementaryTypeName", "src": "10024:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "10023:24:24" }, "returnParameters": { "id": 1719, "nodeType": "ParameterList", "parameters": [], "src": "10056:0:24" }, "scope": 1734, "src": "10005:970:24", "stateMutability": "nonpayable", "virtual": false, "visibility": "private" }, { "body": { "id": 1732, "nodeType": "Block", "src": "11009:60:24", "statements": [ { "expression": { "arguments": [ { "arguments": [ { "expression": { "id": 1727, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -15, "src": "11053:3:24", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, "id": 1728, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sig", "nodeType": "MemberAccess", "src": "11053:7:24", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } ], "id": 1726, "name": "getRouterImplementation", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1714, "src": "11029:23:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_address_$", "typeString": "function (bytes4) view returns (address)" } }, "id": 1729, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11029:32:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 1725, "name": "_delegate", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1722, "src": "11019:9:24", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, "id": 1730, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "11019:43:24", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1731, "nodeType": "ExpressionStatement", "src": "11019:43:24" } ] }, "id": 1733, "implemented": true, "kind": "fallback", "modifiers": [], "name": "", "nodeType": "FunctionDefinition", "parameters": { "id": 1723, "nodeType": "ParameterList", "parameters": [], "src": "10989:2:24" }, "returnParameters": { "id": 1724, "nodeType": "ParameterList", "parameters": [], "src": "11009:0:24" }, "scope": 1734, "src": "10981:88:24", "stateMutability": "payable", "virtual": false, "visibility": "external" } ], "scope": 1735, "src": "1056:10103:24" } ], "src": "41:11119:24" }, "bytecode": "6102206040523480156200001257600080fd5b50604051620013ee380380620013ee8339810160408190526200003591620000e0565b6001600160601b031960609c8d1b81166080529a8c1b8b1660a052988b1b8a1660c052968a1b891660e05294891b88166101005292881b87166101205290871b861661014052861b851661016052851b841661018052841b83166101a05233841b61020052831b82166101c05290911b166101e0526000805463ff00000019166301000000179055620001d4565b80516001600160a01b0381168114620000db57600080fd5b919050565b6000806000806000806000806000806000806101808d8f03121562000103578788fd5b6200010e8d620000c3565b9b506200011e60208e01620000c3565b9a506200012e60408e01620000c3565b99506200013e60608e01620000c3565b98506200014e60808e01620000c3565b97506200015e60a08e01620000c3565b96506200016e60c08e01620000c3565b95506200017e60e08e01620000c3565b94506200018f6101008e01620000c3565b9350620001a06101208e01620000c3565b9250620001b16101408e01620000c3565b9150620001c26101608e01620000c3565b90509295989b509295989b509295989b565b60805160601c60a05160601c60c05160601c60e05160601c6101005160601c6101205160601c6101405160601c6101605160601c6101805160601c6101a05160601c6101c05160601c6101e05160601c6102005160601c611122620002cc60003980610d49525080610b0d5280610cd2525080610a7c5280610c66525080610d1c5280610dba5250806107855280610beb5250806106f45280610c1e5250806106635280610c425250806105165280610c8a52508061031d5280610cae5250806104505280610bc75250806107e05280610f4c525080610b345280610b7f5250806109d05280610ba35280610de652506111226000f3fe6080604052600436106100fe5760003560e01c80636009b8e6116100955780638246336711610064578063824633671461023a5780638da5cb5b1461024f578063a1b4d01114610264578063c0c53b8b14610279578063dcc1a73814610299576100fe565b80636009b8e6146101db5780636d7cdbbf146101f057806372d271341461020557806376e1df481461021a576100fe565b806324a3d622116100d157806324a3d622146101875780632be758951461019c5780632d255471146101b15780632d2c5565146101c6576100fe565b80630c4e79351461011d578063146278341461014857806315beeb931461015d578063206109b514610172575b61011b6101166000356001600160e01b0319166102ae565b610b59565b005b34801561012957600080fd5b50610132610b7d565b60405161013f919061107f565b60405180910390f35b34801561015457600080fd5b50610132610ba1565b34801561016957600080fd5b50610132610bc5565b34801561017e57600080fd5b50610132610be9565b34801561019357600080fd5b50610132610c0d565b3480156101a857600080fd5b50610132610c1c565b3480156101bd57600080fd5b50610132610c40565b3480156101d257600080fd5b50610132610c64565b3480156101e757600080fd5b50610132610c88565b3480156101fc57600080fd5b50610132610cac565b34801561021157600080fd5b50610132610cd0565b34801561022657600080fd5b50610132610235366004610fc7565b6102ae565b34801561024657600080fd5b50610132610cf4565b34801561025b57600080fd5b50610132610d03565b34801561027057600080fd5b50610132610d1a565b34801561028557600080fd5b5061011b610294366004610f85565b610d3e565b3480156102a557600080fd5b50610132610f4a565b60006001600160e01b03198216633735195360e11b14806102df57506001600160e01b03198216630276b64b60e01b145b806102fa57506001600160e01b03198216635950d8e960e01b145b8061031557506001600160e01b03198216630541f52760e41b145b1561034157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a96e86f60e01b148061037057506001600160e01b0319821663a78dbfff60e01b145b8061038b57506001600160e01b03198216637db31ab960e01b145b806103a657506001600160e01b0319821663184e005360e11b145b806103c157506001600160e01b031982166318ae40d760e01b145b806103dc57506001600160e01b03198216634425384960e11b145b806103f757506001600160e01b03198216636d6503d360e11b145b8061041257506001600160e01b031982166305c1d97560e31b145b8061042d57506001600160e01b03198216631a05bce160e01b145b8061044857506001600160e01b03198216633b2987b360e01b145b1561047457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632890fb6560e01b14806104a357506001600160e01b0319821663b8a6945560e01b145b806104bd57506001600160e01b03198216625e665d60e31b145b806104d857506001600160e01b0319821663f667f89760e01b145b806104f357506001600160e01b03198216636689064360e01b145b8061050e57506001600160e01b031982166309c9794560e41b145b1561053a57507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b031982166301ffc9a760e01b148061056857506001600160e01b03198216627eeac760e11b145b8061058357506001600160e01b031982166313849cfd60e21b145b8061059e57506001600160e01b03198216630fac8f0960e01b145b806105b957506001600160e01b031982166381a8685560e01b145b806105d457506001600160e01b03198216637921219560e11b145b806105ef57506001600160e01b03198216631759616b60e11b145b8061060a57506001600160e01b031982166307f4d70160e31b145b8061062557506001600160e01b03198216630e6b43b960e31b145b8061064057506001600160e01b0319821663a22cb46560e01b145b8061065b57506001600160e01b0319821663e985e9c560e01b145b1561068757507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632d10e6eb60e01b14806106b657506001600160e01b03198216636633af3960e01b145b806106d157506001600160e01b0319821663e3e7cb4f60e01b145b806106ec57506001600160e01b03198216639a600eeb60e01b145b1561071857507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216631ff7aefd60e21b148061074757506001600160e01b0319821663e816469d60e01b145b8061076257506001600160e01b03198216630fb281d960e01b145b8061077d57506001600160e01b0319821663fa37e39560e01b145b156107a957507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216630343819360e61b14806107d857506001600160e01b03198216635db6eac760e11b145b1561080457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637abaf27160e11b148061083357506001600160e01b0319821663e31051a160e01b145b8061084e57506001600160e01b0319821663a11a429360e01b145b8061086957506001600160e01b03198216630528476560e51b145b8061088457506001600160e01b0319821663315cb2b960e21b145b8061089f57506001600160e01b03198216632c90b94d60e21b145b806108ba57506001600160e01b031982166309ce3c1960e31b145b806108d557506001600160e01b031982166354ebde2960e11b145b806108f057506001600160e01b031982166398dcbc2360e01b145b8061090b57506001600160e01b031982166333eabd1d60e21b145b8061092657506001600160e01b0319821663413f2c5f60e01b145b8061094157506001600160e01b03198216630d0da86760e21b145b8061095c57506001600160e01b0319821663353abc5d60e01b145b8061097757506001600160e01b0319821663fa17b5f160e01b145b8061099257506001600160e01b0319821663113aa8b160e01b145b806109ad57506001600160e01b03198216631b2ce7f360e11b145b806109c857506001600160e01b0319821663278f794360e11b145b156109f457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637d6dbff760e11b1480610a2357506001600160e01b03198216636d7a00eb60e01b145b80610a3e57506001600160e01b03198216637f23d4f960e11b145b80610a5957506001600160e01b0319821663239cec8f60e21b145b80610a7457506001600160e01b031982166312adc47b60e01b145b15610aa057507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a09a2a360e01b1480610acf57506001600160e01b03198216638355e89560e01b145b80610aea57506001600160e01b0319821663094614df60e01b145b80610b0557506001600160e01b03198216634beb6d9760e11b145b15610b3157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b507f00000000000000000000000000000000000000000000000000000000000000005b919050565b3660008037600080366000845af43d6000803e808015610b78573d6000f35b3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6002546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610d8057506000546301000000900460ff16155b610d8957600080fd5b60008054640100000000600160c01b03191633640100000000021781556040805160a0810182526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081168252602082018490527f00000000000000000000000000000000000000000000000000000000000000001691637abaf27160e11b9190810160028152600860208083019190915260006040928301819052825160a081018452818152918201529081016003815260126020820152600060409182018190529051610e6f939291908190608590604b90606c90602401611093565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ead9190611046565b600060405180830381855af49150503d8060008114610ee8576040519150601f19603f3d011682016040523d82523d6000602084013e610eed565b606091505b5050905080610efb57600080fd5b50600080546001600160a01b0394851664010000000002640100000000600160c01b0319909116179055600180549284166001600160a01b031993841617905560028054919093169116179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b80356001600160a01b0381168114610b5457600080fd5b600080600060608486031215610f99578283fd5b610fa284610f6e565b9250610fb060208501610f6e565b9150610fbe60408501610f6e565b90509250925092565b600060208284031215610fd8578081fd5b81356001600160e01b031981168114610fef578182fd5b9392505050565b80516001600160a01b0316825260208082015115159083015260408101516006811061101e57fe5b604083015260608181015160ff169083015260809081015168ffffffffffffffffff16910152565b60008251815b81811015611066576020818601810151858301520161104c565b818111156110745782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6101e081016110a2828a610ff6565b6110af60a0830189610ff6565b6001600160a01b039690961661014082015293151561016085015260ff9283166101808501529082166101a0840152166101c0909101529291505056fea26469706673582212203297c764dc6ad3f1b84384a7a27deb87fba8bfa8567881c47a81ca18ac28b6ff64736f6c63430007060033", "bytecodeSha1": "1ee90eab3fe828251afc0d7472b9288567c5741e", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.7.6+commit.7338295f" }, "contractName": "Router", "coverageMap": { "branches": { "24": { "Router.getRouterImplementation": { "18": [ 4412, 4460, true ], "19": [ 4476, 4532, true ], "20": [ 4548, 4616, true ], "21": [ 4632, 4671, false ], "22": [ 4749, 4795, true ], "23": [ 4811, 4855, true ], "24": [ 4871, 4923, true ], "25": [ 4939, 4989, true ], "26": [ 5005, 5048, true ], "27": [ 5064, 5111, true ], "28": [ 5127, 5177, true ], "29": [ 5193, 5246, true ], "30": [ 5262, 5325, true ], "31": [ 5341, 5409, false ], "32": [ 5489, 5541, true ], "33": [ 5557, 5604, true ], "34": [ 5620, 5658, true ], "35": [ 5674, 5717, true ], "36": [ 5733, 5775, true ], "37": [ 5791, 5841, false ], "38": [ 5921, 5972, true ], "39": [ 5988, 6031, true ], "40": [ 6047, 6095, true ], "41": [ 6111, 6160, true ], "42": [ 6176, 6230, true ], "43": [ 6246, 6296, true ], "44": [ 6312, 6367, true ], "45": [ 6383, 6431, true ], "46": [ 6447, 6491, true ], "47": [ 6507, 6558, true ], "48": [ 6574, 6624, false ], "49": [ 6697, 6749, true ], "50": [ 6765, 6822, true ], "51": [ 6838, 6901, true ], "52": [ 6917, 6985, false ], "53": [ 7069, 7118, true ], "54": [ 7134, 7191, true ], "55": [ 7207, 7267, true ], "56": [ 7283, 7351, false ], "57": [ 7432, 7479, true ], "58": [ 7495, 7545, false ], "59": [ 7628, 7675, true ], "60": [ 7691, 7741, true ], "61": [ 7757, 7807, true ], "62": [ 7823, 7873, true ], "63": [ 7889, 7937, true ], "64": [ 7953, 8005, true ], "65": [ 8021, 8070, true ], "66": [ 8086, 8148, true ], "67": [ 8164, 8225, true ], "68": [ 8241, 8299, true ], "69": [ 8315, 8380, true ], "70": [ 8396, 8462, true ], "71": [ 8478, 8541, true ], "72": [ 8557, 8624, true ], "73": [ 8640, 8689, true ], "74": [ 8705, 8744, true ], "75": [ 8760, 8806, false ], "76": [ 8882, 8935, true ], "77": [ 8951, 9009, true ], "78": [ 9025, 9076, true ], "79": [ 9092, 9141, true ], "80": [ 9157, 9211, false ], "81": [ 9285, 9344, true ], "82": [ 9360, 9426, true ], "83": [ 9442, 9508, true ], "84": [ 9524, 9589, false ] }, "Router.initialize": { "85": [ 2880, 2902, false ], "86": [ 2907, 2921, true ], "87": [ 3922, 3928, true ] } }, "60": {}, "63": {}, "65": {} }, "statements": { "24": { "Router.": { "0": [ 11019, 11062 ] }, "Router.getRouterImplementation": { "1": [ 4696, 4715 ], "2": [ 5434, 5455 ], "3": [ 5866, 5887 ], "4": [ 6649, 6663 ], "5": [ 7010, 7035 ], "6": [ 7376, 7398 ], "7": [ 7570, 7594 ], "8": [ 8831, 8848 ], "9": [ 9236, 9251 ], "10": [ 9614, 9638 ], "11": [ 9796, 9808 ] }, "Router.initialize": { "12": [ 2872, 2922 ], "13": [ 3056, 3074 ], "14": [ 3914, 3929 ], "15": [ 3940, 3954 ], "16": [ 4038, 4064 ], "17": [ 4074, 4104 ] } }, "60": {}, "63": {}, "65": {} } }, "dependencies": [ "Constants", "StorageLayoutV1" ], "deployedBytecode": "6080604052600436106100fe5760003560e01c80636009b8e6116100955780638246336711610064578063824633671461023a5780638da5cb5b1461024f578063a1b4d01114610264578063c0c53b8b14610279578063dcc1a73814610299576100fe565b80636009b8e6146101db5780636d7cdbbf146101f057806372d271341461020557806376e1df481461021a576100fe565b806324a3d622116100d157806324a3d622146101875780632be758951461019c5780632d255471146101b15780632d2c5565146101c6576100fe565b80630c4e79351461011d578063146278341461014857806315beeb931461015d578063206109b514610172575b61011b6101166000356001600160e01b0319166102ae565b610b59565b005b34801561012957600080fd5b50610132610b7d565b60405161013f919061107f565b60405180910390f35b34801561015457600080fd5b50610132610ba1565b34801561016957600080fd5b50610132610bc5565b34801561017e57600080fd5b50610132610be9565b34801561019357600080fd5b50610132610c0d565b3480156101a857600080fd5b50610132610c1c565b3480156101bd57600080fd5b50610132610c40565b3480156101d257600080fd5b50610132610c64565b3480156101e757600080fd5b50610132610c88565b3480156101fc57600080fd5b50610132610cac565b34801561021157600080fd5b50610132610cd0565b34801561022657600080fd5b50610132610235366004610fc7565b6102ae565b34801561024657600080fd5b50610132610cf4565b34801561025b57600080fd5b50610132610d03565b34801561027057600080fd5b50610132610d1a565b34801561028557600080fd5b5061011b610294366004610f85565b610d3e565b3480156102a557600080fd5b50610132610f4a565b60006001600160e01b03198216633735195360e11b14806102df57506001600160e01b03198216630276b64b60e01b145b806102fa57506001600160e01b03198216635950d8e960e01b145b8061031557506001600160e01b03198216630541f52760e41b145b1561034157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a96e86f60e01b148061037057506001600160e01b0319821663a78dbfff60e01b145b8061038b57506001600160e01b03198216637db31ab960e01b145b806103a657506001600160e01b0319821663184e005360e11b145b806103c157506001600160e01b031982166318ae40d760e01b145b806103dc57506001600160e01b03198216634425384960e11b145b806103f757506001600160e01b03198216636d6503d360e11b145b8061041257506001600160e01b031982166305c1d97560e31b145b8061042d57506001600160e01b03198216631a05bce160e01b145b8061044857506001600160e01b03198216633b2987b360e01b145b1561047457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632890fb6560e01b14806104a357506001600160e01b0319821663b8a6945560e01b145b806104bd57506001600160e01b03198216625e665d60e31b145b806104d857506001600160e01b0319821663f667f89760e01b145b806104f357506001600160e01b03198216636689064360e01b145b8061050e57506001600160e01b031982166309c9794560e41b145b1561053a57507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b031982166301ffc9a760e01b148061056857506001600160e01b03198216627eeac760e11b145b8061058357506001600160e01b031982166313849cfd60e21b145b8061059e57506001600160e01b03198216630fac8f0960e01b145b806105b957506001600160e01b031982166381a8685560e01b145b806105d457506001600160e01b03198216637921219560e11b145b806105ef57506001600160e01b03198216631759616b60e11b145b8061060a57506001600160e01b031982166307f4d70160e31b145b8061062557506001600160e01b03198216630e6b43b960e31b145b8061064057506001600160e01b0319821663a22cb46560e01b145b8061065b57506001600160e01b0319821663e985e9c560e01b145b1561068757507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216632d10e6eb60e01b14806106b657506001600160e01b03198216636633af3960e01b145b806106d157506001600160e01b0319821663e3e7cb4f60e01b145b806106ec57506001600160e01b03198216639a600eeb60e01b145b1561071857507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216631ff7aefd60e21b148061074757506001600160e01b0319821663e816469d60e01b145b8061076257506001600160e01b03198216630fb281d960e01b145b8061077d57506001600160e01b0319821663fa37e39560e01b145b156107a957507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216630343819360e61b14806107d857506001600160e01b03198216635db6eac760e11b145b1561080457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637abaf27160e11b148061083357506001600160e01b0319821663e31051a160e01b145b8061084e57506001600160e01b0319821663a11a429360e01b145b8061086957506001600160e01b03198216630528476560e51b145b8061088457506001600160e01b0319821663315cb2b960e21b145b8061089f57506001600160e01b03198216632c90b94d60e21b145b806108ba57506001600160e01b031982166309ce3c1960e31b145b806108d557506001600160e01b031982166354ebde2960e11b145b806108f057506001600160e01b031982166398dcbc2360e01b145b8061090b57506001600160e01b031982166333eabd1d60e21b145b8061092657506001600160e01b0319821663413f2c5f60e01b145b8061094157506001600160e01b03198216630d0da86760e21b145b8061095c57506001600160e01b0319821663353abc5d60e01b145b8061097757506001600160e01b0319821663fa17b5f160e01b145b8061099257506001600160e01b0319821663113aa8b160e01b145b806109ad57506001600160e01b03198216631b2ce7f360e11b145b806109c857506001600160e01b0319821663278f794360e11b145b156109f457507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216637d6dbff760e11b1480610a2357506001600160e01b03198216636d7a00eb60e01b145b80610a3e57506001600160e01b03198216637f23d4f960e11b145b80610a5957506001600160e01b0319821663239cec8f60e21b145b80610a7457506001600160e01b031982166312adc47b60e01b145b15610aa057507f0000000000000000000000000000000000000000000000000000000000000000610b54565b6001600160e01b03198216636a09a2a360e01b1480610acf57506001600160e01b03198216638355e89560e01b145b80610aea57506001600160e01b0319821663094614df60e01b145b80610b0557506001600160e01b03198216634beb6d9760e11b145b15610b3157507f0000000000000000000000000000000000000000000000000000000000000000610b54565b507f00000000000000000000000000000000000000000000000000000000000000005b919050565b3660008037600080366000845af43d6000803e808015610b78573d6000f35b3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6002546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b031681565b60005464010000000090046001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610d8057506000546301000000900460ff16155b610d8957600080fd5b60008054640100000000600160c01b03191633640100000000021781556040805160a0810182526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081168252602082018490527f00000000000000000000000000000000000000000000000000000000000000001691637abaf27160e11b9190810160028152600860208083019190915260006040928301819052825160a081018452818152918201529081016003815260126020820152600060409182018190529051610e6f939291908190608590604b90606c90602401611093565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ead9190611046565b600060405180830381855af49150503d8060008114610ee8576040519150601f19603f3d011682016040523d82523d6000602084013e610eed565b606091505b5050905080610efb57600080fd5b50600080546001600160a01b0394851664010000000002640100000000600160c01b0319909116179055600180549284166001600160a01b031993841617905560028054919093169116179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b80356001600160a01b0381168114610b5457600080fd5b600080600060608486031215610f99578283fd5b610fa284610f6e565b9250610fb060208501610f6e565b9150610fbe60408501610f6e565b90509250925092565b600060208284031215610fd8578081fd5b81356001600160e01b031981168114610fef578182fd5b9392505050565b80516001600160a01b0316825260208082015115159083015260408101516006811061101e57fe5b604083015260608181015160ff169083015260809081015168ffffffffffffffffff16910152565b60008251815b81811015611066576020818601810151858301520161104c565b818111156110745782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6101e081016110a2828a610ff6565b6110af60a0830189610ff6565b6001600160a01b039690961661014082015293151561016085015260ff9283166101808501529082166101a0840152166101c0909101529291505056fea26469706673582212203297c764dc6ad3f1b84384a7a27deb87fba8bfa8567881c47a81ca18ac28b6ff64736f6c63430007060033", "deployedSourceMap": "1056:10103:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11019:43;11029:32;11053:7;;-1:-1:-1;;;;;;11053:7:24;11029:23;:32::i;:::-;11019:9;:43::i;:::-;1056:10103;1216:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1175:35;;;;;;;;;;;;;:::i;1300:39::-;;;;;;;;;;;;;:::i;1520:40::-;;;;;;;;;;;;;:::i;1035:28:63:-;;;;;;;;;;;;;:::i;1471:43:24:-;;;;;;;;;;;;;:::i;1433:32::-;;;;;;;;;;;;;:::i;1601:33::-;;;;;;;;;;;;;:::i;1388:39::-;;;;;;;;;;;;;:::i;1345:37::-;;;;;;;;;;;;;:::i;1640:42::-;;;;;;;;;;;;;:::i;4310:5515::-;;;;;;;;;;-1:-1:-1;4310:5515:24;;;;;:::i;:::-;;:::i;920:26:63:-;;;;;;;;;;;;;:::i;811:20::-;;;;;;;;;;;;;:::i;1566:29:24:-;;;;;;;;;;;;;:::i;2718:1426::-;;;;;;;;;;-1:-1:-1;2718:1426:24;;;;;:::i;:::-;;:::i;1252:42::-;;;;;;;;;;;;;:::i;4310:5515::-;4376:7;-1:-1:-1;;;;;;4412:48:24;;-1:-1:-1;;;4412:48:24;;:120;;-1:-1:-1;;;;;;;4476:56:24;;-1:-1:-1;;;4476:56:24;4412:120;:204;;;-1:-1:-1;;;;;;;4548:68:24;;-1:-1:-1;;;4548:68:24;4412:204;:259;;;-1:-1:-1;;;;;;;4632:39:24;;-1:-1:-1;;;4632:39:24;4412:259;4395:5424;;;-1:-1:-1;4703:12:24;4696:19;;4395:5424;-1:-1:-1;;;;;;4749:46:24;;-1:-1:-1;;;4749:46:24;;:106;;-1:-1:-1;;;;;;;4811:44:24;;-1:-1:-1;;;4811:44:24;4749:106;:174;;;-1:-1:-1;;;;;;;4871:52:24;;-1:-1:-1;;;4871:52:24;4749:174;:240;;;-1:-1:-1;;;;;;;4939:50:24;;-1:-1:-1;;;4939:50:24;4749:240;:299;;;-1:-1:-1;;;;;;;5005:43:24;;-1:-1:-1;;;5005:43:24;4749:299;:362;;;-1:-1:-1;;;;;;;5064:47:24;;-1:-1:-1;;;5064:47:24;4749:362;:428;;;-1:-1:-1;;;;;;;5127:50:24;;-1:-1:-1;;;5127:50:24;4749:428;:497;;;-1:-1:-1;;;;;;;5193:53:24;;-1:-1:-1;;;5193:53:24;4749:497;:576;;;-1:-1:-1;;;;;;;5262:63:24;;-1:-1:-1;;;5262:63:24;4749:576;:660;;;-1:-1:-1;;;;;;;5341:68:24;;-1:-1:-1;;;5341:68:24;4749:660;4732:5087;;;-1:-1:-1;5441:14:24;5434:21;;4732:5087;-1:-1:-1;;;;;;5489:52:24;;-1:-1:-1;;;5489:52:24;;:115;;-1:-1:-1;;;;;;;5557:47:24;;-1:-1:-1;;;5557:47:24;5489:115;:169;;;-1:-1:-1;;;;;;;5620:38:24;;-1:-1:-1;;;5620:38:24;5489:169;:228;;;-1:-1:-1;;;;;;;5674:43:24;;-1:-1:-1;;;5674:43:24;5489:228;:286;;;-1:-1:-1;;;;;;;5733:42:24;;-1:-1:-1;;;5733:42:24;5489:286;:352;;;-1:-1:-1;;;;;;;5791:50:24;;-1:-1:-1;;;5791:50:24;5489:352;5472:4347;;;-1:-1:-1;5873:14:24;5866:21;;5472:4347;-1:-1:-1;;;;;;5921:51:24;;-1:-1:-1;;;5921:51:24;;:110;;-1:-1:-1;;;;;;;5988:43:24;;-1:-1:-1;;;5988:43:24;5921:110;:174;;;-1:-1:-1;;;;;;;6047:48:24;;-1:-1:-1;;;6047:48:24;5921:174;:239;;;-1:-1:-1;;;;;;;6111:49:24;;-1:-1:-1;;;6111:49:24;5921:239;:309;;;-1:-1:-1;;;;;;;6176:54:24;;-1:-1:-1;;;6176:54:24;5921:309;:375;;;-1:-1:-1;;;;;;;6246:50:24;;-1:-1:-1;;;6246:50:24;5921:375;:446;;;-1:-1:-1;;;;;;;6312:55:24;;-1:-1:-1;;;6312:55:24;5921:446;:510;;;-1:-1:-1;;;;;;;6383:48:24;;-1:-1:-1;;;6383:48:24;5921:510;:570;;;-1:-1:-1;;;;;;;6447:44:24;;-1:-1:-1;;;6447:44:24;5921:570;:637;;;-1:-1:-1;;;;;;;6507:51:24;;-1:-1:-1;;;6507:51:24;5921:637;:703;;;-1:-1:-1;;;;;;;6574:50:24;;-1:-1:-1;;;6574:50:24;5921:703;5904:3915;;;-1:-1:-1;6656:7:24;6649:14;;5904:3915;-1:-1:-1;;;;;;6697:52:24;;-1:-1:-1;;;6697:52:24;;:125;;-1:-1:-1;;;;;;;6765:57:24;;-1:-1:-1;;;6765:57:24;6697:125;:204;;;-1:-1:-1;;;;;;;6838:63:24;;-1:-1:-1;;;6838:63:24;6697:204;:288;;;-1:-1:-1;;;;;;;6917:68:24;;-1:-1:-1;;;6917:68:24;6697:288;6680:3139;;;-1:-1:-1;7017:18:24;7010:25;;6680:3139;-1:-1:-1;;;;;;7069:49:24;;-1:-1:-1;;;7069:49:24;;:122;;-1:-1:-1;;;;;;;7134:57:24;;-1:-1:-1;;;7134:57:24;7069:122;:198;;;-1:-1:-1;;;;;;;7207:60:24;;-1:-1:-1;;;7207:60:24;7069:198;:282;;;-1:-1:-1;;;;;;;7283:68:24;;-1:-1:-1;;;7283:68:24;7069:282;7052:2767;;;-1:-1:-1;7383:15:24;7376:22;;7052:2767;-1:-1:-1;;;;;;7432:47:24;;-1:-1:-1;;;7432:47:24;;:113;;-1:-1:-1;;;;;;;7495:50:24;;-1:-1:-1;;;7495:50:24;7432:113;7415:2404;;;-1:-1:-1;7577:17:24;7570:24;;7415:2404;-1:-1:-1;;;;;;7628:47:24;;-1:-1:-1;;;7628:47:24;;:113;;-1:-1:-1;;;;;;;7691:50:24;;-1:-1:-1;;;7691:50:24;7628:113;:179;;;-1:-1:-1;;;;;;;7757:50:24;;-1:-1:-1;;;7757:50:24;7628:179;:245;;;-1:-1:-1;;;;;;;7823:50:24;;-1:-1:-1;;;7823:50:24;7628:245;:309;;;-1:-1:-1;;;;;;;7889:48:24;;-1:-1:-1;;;7889:48:24;7628:309;:377;;;-1:-1:-1;;;;;;;7953:52:24;;-1:-1:-1;;;7953:52:24;7628:377;:442;;;-1:-1:-1;;;;;;;8021:49:24;;-1:-1:-1;;;8021:49:24;7628:442;:520;;;-1:-1:-1;;;;;;;8086:62:24;;-1:-1:-1;;;8086:62:24;7628:520;:597;;;-1:-1:-1;;;;;;;8164:61:24;;-1:-1:-1;;;8164:61:24;7628:597;:671;;;-1:-1:-1;;;;;;;8241:58:24;;-1:-1:-1;;;8241:58:24;7628:671;:752;;;-1:-1:-1;;;;;;;8315:65:24;;-1:-1:-1;;;8315:65:24;7628:752;:834;;;-1:-1:-1;;;;;;;8396:66:24;;-1:-1:-1;;;8396:66:24;7628:834;:913;;;-1:-1:-1;;;;;;;8478:63:24;;-1:-1:-1;;;8478:63:24;7628:913;:996;;;-1:-1:-1;;;;;;;8557:67:24;;-1:-1:-1;;;8557:67:24;7628:996;:1061;;;-1:-1:-1;;;;;;;8640:49:24;;-1:-1:-1;;;8640:49:24;7628:1061;:1116;;;-1:-1:-1;;;;;;;8705:39:24;;-1:-1:-1;;;8705:39:24;7628:1116;:1178;;;-1:-1:-1;;;;;;;8760:46:24;;-1:-1:-1;;;8760:46:24;7628:1178;7611:2208;;;-1:-1:-1;8838:10:24;8831:17;;7611:2208;-1:-1:-1;;;;;;8882:53:24;;-1:-1:-1;;;8882:53:24;;:127;;-1:-1:-1;;;;;;;8951:58:24;;-1:-1:-1;;;8951:58:24;8882:127;:194;;;-1:-1:-1;;;;;;;9025:51:24;;-1:-1:-1;;;9025:51:24;8882:194;:259;;;-1:-1:-1;;;;;;;9092:49:24;;-1:-1:-1;;;9092:49:24;8882:259;:329;;;-1:-1:-1;;;;;;;9157:54:24;;-1:-1:-1;;;9157:54:24;8882:329;8865:954;;;-1:-1:-1;9243:8:24;9236:15;;8865:954;-1:-1:-1;;;;;;9285:59:24;;-1:-1:-1;;;9285:59:24;;:141;;-1:-1:-1;;;;;;;9360:66:24;;-1:-1:-1;;;9360:66:24;9285:141;:223;;;-1:-1:-1;;;;;;;9442:66:24;;-1:-1:-1;;;9442:66:24;9285:223;:304;;;-1:-1:-1;;;;;;;9524:65:24;;-1:-1:-1;;;9524:65:24;9285:304;9268:551;;;-1:-1:-1;9621:17:24;9614:24;;9268:551;-1:-1:-1;9803:5:24;9268:551;4310:5515;;;:::o;10005:970::-;10390:14;10387:1;10384;10371:34;10604:1;10601;10585:14;10582:1;10566:14;10559:5;10546:60;10680:16;10677:1;10674;10659:38;10718:6;10793:74;;;;10924:16;10921:1;10914:27;10793:74;10832:16;10829:1;10822:27;1216:30;;;:::o;1175:35::-;;;:::o;1300:39::-;;;:::o;1520:40::-;;;:::o;1035:28:63:-;;;-1:-1:-1;;;;;1035:28:63;;:::o;1471:43:24:-;;;:::o;1433:32::-;;;:::o;1601:33::-;;;:::o;1388:39::-;;;:::o;1345:37::-;;;:::o;1640:42::-;;;:::o;920:26:63:-;;;-1:-1:-1;;;;;920:26:63;;:::o;811:20::-;;;;;;-1:-1:-1;;;;;811:20:63;;:::o;1566:29:24:-;;;:::o;2718:1426::-;2880:10;-1:-1:-1;;;;;2894:8:24;2880:22;;:41;;;;-1:-1:-1;2907:14:24;;;;;;;2906:15;2880:41;2872:50;;;;;;3056:5;:18;;-1:-1:-1;;;;;;3056:18:24;3064:10;3056:18;;;;;3432:75;;;;;;;;-1:-1:-1;;;;;3445:4:24;3432:75;;;;;;;;;;3284:10;3276:32;;-1:-1:-1;;;3370:40:24;3432:75;;;3458:14;3432:75;;217:1:60;3432:75:24;;;;;;;;-1:-1:-1;3432:75:24;;;;;;;3579:81;;;;;;;;;;;;;;;;;3611:15;3579:81;;659:2:60;3579:81:24;;;;-1:-1:-1;3579:81:24;;;;;;;3326:564;;;;;;-1:-1:-1;;;3741:3:24;;3801:2;;3841:3;;3326:564;;;:::i;:::-;;;;-1:-1:-1;;3326:564:24;;;;;;;;;;;;;;-1:-1:-1;;;;;3326:564:24;-1:-1:-1;;;;;;3326:564:24;;;;;;;;;;3276:628;;;;3326:564;3276:628;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3246:658;;;3922:6;3914:15;;;;;;-1:-1:-1;3940:5:24;:14;;-1:-1:-1;;;;;3940:14:24;;;;;-1:-1:-1;;;;;;3940:14:24;;;;;;-1:-1:-1;4038:26:24;;;;;-1:-1:-1;;;;;;4038:26:24;;;;;;4074:13;:30;;;;;;;;;;;2718:1426::o;1252:42::-;;;:::o;14:175:168:-;84:20;;-1:-1:-1;;;;;133:31:168;;123:42;;113:2;;179:1;176;169:12;194:350;;;;340:2;328:9;319:7;315:23;311:32;308:2;;;361:6;353;346:22;308:2;389:31;410:9;389:31;:::i;:::-;379:41;;439:40;475:2;464:9;460:18;439:40;:::i;:::-;429:50;;498:40;534:2;523:9;519:18;498:40;:::i;:::-;488:50;;298:246;;;;;:::o;549:306::-;;660:2;648:9;639:7;635:23;631:32;628:2;;;681:6;673;666:22;628:2;712:23;;-1:-1:-1;;;;;;764:32:168;;754:43;;744:2;;816:6;808;801:22;744:2;844:5;618:237;-1:-1:-1;;;618:237:168:o;860:498::-;945:12;;-1:-1:-1;;;;;941:38:168;929:51;;1043:4;1032:16;;;1026:23;1019:31;1012:39;996:14;;;989:63;1098:4;1087:16;;1081:23;1140:1;1123:19;;1113:2;;1146:9;1113:2;1182:4;1173:14;;1166:36;1255:4;1244:16;;;1238:23;1263:4;1234:34;1218:14;;;1211:58;1322:4;1311:16;;;1305:23;1330:20;1301:50;1285:14;;1278:74;919:439::o;1363:430::-;;1530:6;1524:13;1555:3;1567:129;1581:6;1578:1;1575:13;1567:129;;;1679:4;1663:14;;;1659:25;;1653:32;1640:11;;;1633:53;1596:12;1567:129;;;1714:6;1711:1;1708:13;1705:2;;;1749:3;1740:6;1735:3;1731:16;1724:29;1705:2;-1:-1:-1;1771:16:168;;;;;1500:293;-1:-1:-1;;1500:293:168:o;1798:203::-;-1:-1:-1;;;;;1962:32:168;;;;1944:51;;1932:2;1917:18;;1899:102::o;2006:896::-;2465:3;2450:19;;2478:52;2454:9;2512:6;2478:52;:::i;:::-;2539:62;2596:3;2585:9;2581:19;2573:6;2539:62;:::i;:::-;-1:-1:-1;;;;;2638:32:168;;;;2632:3;2617:19;;2610:61;2715:14;;2708:22;2702:3;2687:19;;2680:51;2780:4;2768:17;;;2762:3;2747:19;;2740:46;2823:17;;;2817:3;2802:19;;2795:46;2878:17;2872:3;2857:19;;;2850:46;2432:470;;-1:-1:-1;;2432:470:168:o", "language": "Solidity", "natspec": { "kind": "dev", "methods": { "getRouterImplementation(bytes4)": { "notice": "Returns the implementation contract for the method signature", "params": { "sig": "method signature to call" }, "returns": { "_0": "implementation address" } } }, "notice": "Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing contracts. This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a new Router with the new hardcoded addresses will then be deployed and upgraded into place.", "version": 1 }, "offset": [ 1056, 11159 ], "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xFE JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6009B8E6 GT PUSH2 0x95 JUMPI DUP1 PUSH4 0x82463367 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0x82463367 EQ PUSH2 0x23A JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xA1B4D011 EQ PUSH2 0x264 JUMPI DUP1 PUSH4 0xC0C53B8B EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xDCC1A738 EQ PUSH2 0x299 JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0x6009B8E6 EQ PUSH2 0x1DB JUMPI DUP1 PUSH4 0x6D7CDBBF EQ PUSH2 0x1F0 JUMPI DUP1 PUSH4 0x72D27134 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0x76E1DF48 EQ PUSH2 0x21A JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0x24A3D622 GT PUSH2 0xD1 JUMPI DUP1 PUSH4 0x24A3D622 EQ PUSH2 0x187 JUMPI DUP1 PUSH4 0x2BE75895 EQ PUSH2 0x19C JUMPI DUP1 PUSH4 0x2D255471 EQ PUSH2 0x1B1 JUMPI DUP1 PUSH4 0x2D2C5565 EQ PUSH2 0x1C6 JUMPI PUSH2 0xFE JUMP JUMPDEST DUP1 PUSH4 0xC4E7935 EQ PUSH2 0x11D JUMPI DUP1 PUSH4 0x14627834 EQ PUSH2 0x148 JUMPI DUP1 PUSH4 0x15BEEB93 EQ PUSH2 0x15D JUMPI DUP1 PUSH4 0x206109B5 EQ PUSH2 0x172 JUMPI JUMPDEST PUSH2 0x11B PUSH2 0x116 PUSH1 0x0 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT AND PUSH2 0x2AE JUMP JUMPDEST PUSH2 0xB59 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x129 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xB7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x13F SWAP2 SWAP1 PUSH2 0x107F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x154 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBA1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x169 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBC5 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x17E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xBE9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x193 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC0D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1A8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC1C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC40 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC64 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1E7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xC88 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1FC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCAC JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x211 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCD0 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x226 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0x235 CALLDATASIZE PUSH1 0x4 PUSH2 0xFC7 JUMP JUMPDEST PUSH2 0x2AE JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x246 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xCF4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x25B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xD03 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x270 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xD1A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x285 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x11B PUSH2 0x294 CALLDATASIZE PUSH1 0x4 PUSH2 0xF85 JUMP JUMPDEST PUSH2 0xD3E JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2A5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x132 PUSH2 0xF4A JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x37351953 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0x2DF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x276B64B PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x2FA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5950D8E9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x315 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x541F527 PUSH1 0xE4 SHL EQ JUMPDEST ISZERO PUSH2 0x341 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6A96E86F PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x370 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA78DBFFF PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x38B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7DB31AB9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x3A6 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x184E0053 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x3C1 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x18AE40D7 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x3DC JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x44253849 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x3F7 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6D6503D3 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x412 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5C1D975 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x42D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1A05BCE1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x448 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x3B2987B3 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x474 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2890FB65 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x4A3 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xB8A69455 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x4BD JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH3 0x5E665D PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x4D8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xF667F897 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x4F3 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x66890643 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x50E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9C97945 PUSH1 0xE4 SHL EQ JUMPDEST ISZERO PUSH2 0x53A JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1FFC9A7 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x568 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH3 0x7EEAC7 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x583 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x13849CFD PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x59E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFAC8F09 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x5B9 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x81A86855 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x5D4 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x79212195 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x5EF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1759616B PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x60A JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7F4D701 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x625 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE6B43B9 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x640 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA22CB465 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x65B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE985E9C5 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x687 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2D10E6EB PUSH1 0xE0 SHL EQ DUP1 PUSH2 0x6B6 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6633AF39 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x6D1 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE3E7CB4F PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x6EC JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9A600EEB PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x718 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1FF7AEFD PUSH1 0xE2 SHL EQ DUP1 PUSH2 0x747 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE816469D PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x762 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFB281D9 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x77D JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFA37E395 PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0x7A9 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x3438193 PUSH1 0xE6 SHL EQ DUP1 PUSH2 0x7D8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5DB6EAC7 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0x804 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7ABAF271 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0x833 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xE31051A1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x84E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xA11A4293 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x869 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x5284765 PUSH1 0xE5 SHL EQ JUMPDEST DUP1 PUSH2 0x884 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x315CB2B9 PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x89F JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x2C90B94D PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x8BA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x9CE3C19 PUSH1 0xE3 SHL EQ JUMPDEST DUP1 PUSH2 0x8D5 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x54EBDE29 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x8F0 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x98DCBC23 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x90B JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x33EABD1D PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x926 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x413F2C5F PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x941 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xD0DA867 PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0x95C JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x353ABC5D PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x977 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0xFA17B5F1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x992 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x113AA8B1 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0x9AD JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x1B2CE7F3 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0x9C8 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x278F7943 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0x9F4 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7D6DBFF7 PUSH1 0xE1 SHL EQ DUP1 PUSH2 0xA23 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6D7A00EB PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xA3E JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x7F23D4F9 PUSH1 0xE1 SHL EQ JUMPDEST DUP1 PUSH2 0xA59 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x239CEC8F PUSH1 0xE2 SHL EQ JUMPDEST DUP1 PUSH2 0xA74 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x12ADC47B PUSH1 0xE0 SHL EQ JUMPDEST ISZERO PUSH2 0xAA0 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x6A09A2A3 PUSH1 0xE0 SHL EQ DUP1 PUSH2 0xACF JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x8355E895 PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xAEA JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x94614DF PUSH1 0xE0 SHL EQ JUMPDEST DUP1 PUSH2 0xB05 JUMPI POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP3 AND PUSH4 0x4BEB6D97 PUSH1 0xE1 SHL EQ JUMPDEST ISZERO PUSH2 0xB31 JUMPI POP PUSH32 0x0 PUSH2 0xB54 JUMP JUMPDEST POP PUSH32 0x0 JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST CALLDATASIZE PUSH1 0x0 DUP1 CALLDATACOPY PUSH1 0x0 DUP1 CALLDATASIZE PUSH1 0x0 DUP5 GAS DELEGATECALL RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY DUP1 DUP1 ISZERO PUSH2 0xB78 JUMPI RETURNDATASIZE PUSH1 0x0 RETURN JUMPDEST RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x0 SLOAD PUSH5 0x100000000 SWAP1 DIV PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST CALLER PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 AND EQ DUP1 ISZERO PUSH2 0xD80 JUMPI POP PUSH1 0x0 SLOAD PUSH4 0x1000000 SWAP1 DIV PUSH1 0xFF AND ISZERO JUMPDEST PUSH2 0xD89 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH5 0x100000000 PUSH1 0x1 PUSH1 0xC0 SHL SUB NOT AND CALLER PUSH5 0x100000000 MUL OR DUP2 SSTORE PUSH1 0x40 DUP1 MLOAD PUSH1 0xA0 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB PUSH32 0x0 DUP2 AND DUP3 MSTORE PUSH1 0x20 DUP3 ADD DUP5 SWAP1 MSTORE PUSH32 0x0 AND SWAP2 PUSH4 0x7ABAF271 PUSH1 0xE1 SHL SWAP2 SWAP1 DUP2 ADD PUSH1 0x2 DUP2 MSTORE PUSH1 0x8 PUSH1 0x20 DUP1 DUP4 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x0 PUSH1 0x40 SWAP3 DUP4 ADD DUP2 SWAP1 MSTORE DUP3 MLOAD PUSH1 0xA0 DUP2 ADD DUP5 MSTORE DUP2 DUP2 MSTORE SWAP2 DUP3 ADD MSTORE SWAP1 DUP2 ADD PUSH1 0x3 DUP2 MSTORE PUSH1 0x12 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 PUSH1 0x40 SWAP2 DUP3 ADD DUP2 SWAP1 MSTORE SWAP1 MLOAD PUSH2 0xE6F SWAP4 SWAP3 SWAP2 SWAP1 DUP2 SWAP1 PUSH1 0x85 SWAP1 PUSH1 0x4B SWAP1 PUSH1 0x6C SWAP1 PUSH1 0x24 ADD PUSH2 0x1093 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1F NOT DUP2 DUP5 SUB ADD DUP2 MSTORE SWAP2 DUP2 MSTORE PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT SWAP1 SWAP5 AND SWAP4 SWAP1 SWAP4 OR SWAP1 SWAP3 MSTORE SWAP1 MLOAD PUSH2 0xEAD SWAP2 SWAP1 PUSH2 0x1046 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0xEE8 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0xEED JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0xEFB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP5 DUP6 AND PUSH5 0x100000000 MUL PUSH5 0x100000000 PUSH1 0x1 PUSH1 0xC0 SHL SUB NOT SWAP1 SWAP2 AND OR SWAP1 SSTORE PUSH1 0x1 DUP1 SLOAD SWAP3 DUP5 AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT SWAP4 DUP5 AND OR SWAP1 SSTORE PUSH1 0x2 DUP1 SLOAD SWAP2 SWAP1 SWAP4 AND SWAP2 AND OR SWAP1 SSTORE JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0xB54 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0xF99 JUMPI DUP3 DUP4 REVERT JUMPDEST PUSH2 0xFA2 DUP5 PUSH2 0xF6E JUMP JUMPDEST SWAP3 POP PUSH2 0xFB0 PUSH1 0x20 DUP6 ADD PUSH2 0xF6E JUMP JUMPDEST SWAP2 POP PUSH2 0xFBE PUSH1 0x40 DUP6 ADD PUSH2 0xF6E JUMP JUMPDEST SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xFD8 JUMPI DUP1 DUP2 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xE0 SHL SUB NOT DUP2 AND DUP2 EQ PUSH2 0xFEF JUMPI DUP2 DUP3 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP3 MSTORE PUSH1 0x20 DUP1 DUP3 ADD MLOAD ISZERO ISZERO SWAP1 DUP4 ADD MSTORE PUSH1 0x40 DUP2 ADD MLOAD PUSH1 0x6 DUP2 LT PUSH2 0x101E JUMPI INVALID JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE PUSH1 0x60 DUP2 DUP2 ADD MLOAD PUSH1 0xFF AND SWAP1 DUP4 ADD MSTORE PUSH1 0x80 SWAP1 DUP2 ADD MLOAD PUSH9 0xFFFFFFFFFFFFFFFFFF AND SWAP2 ADD MSTORE JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD DUP2 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1066 JUMPI PUSH1 0x20 DUP2 DUP7 ADD DUP2 ADD MLOAD DUP6 DUP4 ADD MSTORE ADD PUSH2 0x104C JUMP JUMPDEST DUP2 DUP2 GT ISZERO PUSH2 0x1074 JUMPI DUP3 DUP3 DUP6 ADD MSTORE JUMPDEST POP SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 JUMP JUMPDEST PUSH2 0x1E0 DUP2 ADD PUSH2 0x10A2 DUP3 DUP11 PUSH2 0xFF6 JUMP JUMPDEST PUSH2 0x10AF PUSH1 0xA0 DUP4 ADD DUP10 PUSH2 0xFF6 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP7 SWAP1 SWAP7 AND PUSH2 0x140 DUP3 ADD MSTORE SWAP4 ISZERO ISZERO PUSH2 0x160 DUP6 ADD MSTORE PUSH1 0xFF SWAP3 DUP4 AND PUSH2 0x180 DUP6 ADD MSTORE SWAP1 DUP3 AND PUSH2 0x1A0 DUP5 ADD MSTORE AND PUSH2 0x1C0 SWAP1 SWAP2 ADD MSTORE SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 ORIGIN SWAP8 0xC7 PUSH5 0xDC6AD3F1B8 NUMBER DUP5 0xA7 LOG2 PUSH30 0xEB87FBA8BFA8567881C47A81CA18AC28B6FF64736F6C6343000706003300 ", "pcMap": { "0": { "offset": [ 1056, 11159 ], "op": "PUSH1", "path": "24", "value": "0x80" }, "2": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "4": { "fn": null, "offset": [ 1056, 11159 ], "op": "MSTORE", "path": "24" }, "5": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH1", "path": "24", "value": "0x4" }, "7": { "fn": null, "offset": [ 1056, 11159 ], "op": "CALLDATASIZE", "path": "24" }, "8": { "fn": null, "offset": [ 1056, 11159 ], "op": "LT", "path": "24" }, "9": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0xFE" }, "12": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "13": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "15": { "fn": null, "offset": [ 1056, 11159 ], "op": "CALLDATALOAD", "path": "24" }, "16": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH1", "path": "24", "value": "0xE0" }, "18": { "fn": null, "offset": [ 1056, 11159 ], "op": "SHR", "path": "24" }, "19": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "20": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x6009B8E6" }, "25": { "fn": null, "offset": [ 1056, 11159 ], "op": "GT", "path": "24" }, "26": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x95" }, "29": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "30": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "31": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x82463367" }, "36": { "fn": null, "offset": [ 1056, 11159 ], "op": "GT", "path": "24" }, "37": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x64" }, "40": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "41": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "42": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x82463367" }, "47": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "48": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x23A" }, "51": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "52": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "53": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x8DA5CB5B" }, "58": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "59": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x24F" }, "62": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "63": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "64": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0xA1B4D011" }, "69": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "70": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x264" }, "73": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "74": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "75": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0xC0C53B8B" }, "80": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "81": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x279" }, "84": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "85": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "86": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0xDCC1A738" }, "91": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "92": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x299" }, "95": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "96": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0xFE" }, "99": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMP", "path": "24" }, "100": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPDEST", "path": "24" }, "101": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "102": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x6009B8E6" }, "107": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "108": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x1DB" }, "111": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "112": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "113": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x6D7CDBBF" }, "118": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "119": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x1F0" }, "122": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "123": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "124": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x72D27134" }, "129": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "130": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x205" }, "133": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "134": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "135": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x76E1DF48" }, "140": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "141": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x21A" }, "144": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "145": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0xFE" }, "148": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMP", "path": "24" }, "149": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPDEST", "path": "24" }, "150": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "151": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x24A3D622" }, "156": { "fn": null, "offset": [ 1056, 11159 ], "op": "GT", "path": "24" }, "157": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0xD1" }, "160": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "161": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "162": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x24A3D622" }, "167": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "168": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x187" }, "171": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "172": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "173": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x2BE75895" }, "178": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "179": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x19C" }, "182": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "183": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "184": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x2D255471" }, "189": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "190": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x1B1" }, "193": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "194": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "195": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x2D2C5565" }, "200": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "201": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x1C6" }, "204": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "205": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0xFE" }, "208": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMP", "path": "24" }, "209": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPDEST", "path": "24" }, "210": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "211": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0xC4E7935" }, "216": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "217": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x11D" }, "220": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "221": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "222": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x14627834" }, "227": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "228": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x148" }, "231": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "232": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "233": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x15BEEB93" }, "238": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "239": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x15D" }, "242": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "243": { "fn": null, "offset": [ 1056, 11159 ], "op": "DUP1", "path": "24" }, "244": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH4", "path": "24", "value": "0x206109B5" }, "249": { "fn": null, "offset": [ 1056, 11159 ], "op": "EQ", "path": "24" }, "250": { "fn": null, "offset": [ 1056, 11159 ], "op": "PUSH2", "path": "24", "value": "0x172" }, "253": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPI", "path": "24" }, "254": { "fn": null, "offset": [ 1056, 11159 ], "op": "JUMPDEST", "path": "24" }, "255": { "fn": "Router.", "offset": [ 11019, 11062 ], "op": "PUSH2", "path": "24", "statement": 0, "value": "0x11B" }, "258": { "fn": "Router.", "offset": [ 11029, 11061 ], "op": "PUSH2", "path": "24", "value": "0x116" }, "261": { "fn": "Router.", "offset": [ 11053, 11060 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "263": { "fn": "Router.", "offset": [ 11053, 11060 ], "op": "CALLDATALOAD", "path": "24" }, "264": { "op": "PUSH1", "value": "0x1" }, "266": { "op": "PUSH1", "value": "0x1" }, "268": { "op": "PUSH1", "value": "0xE0" }, "270": { "op": "SHL" }, "271": { "op": "SUB" }, "272": { "op": "NOT" }, "273": { "fn": "Router.", "offset": [ 11053, 11060 ], "op": "AND", "path": "24" }, "274": { "fn": "Router.", "offset": [ 11029, 11052 ], "op": "PUSH2", "path": "24", "value": "0x2AE" }, "277": { "fn": "Router.", "jump": "i", "offset": [ 11029, 11061 ], "op": "JUMP", "path": "24" }, "278": { "fn": "Router.", "offset": [ 11029, 11061 ], "op": "JUMPDEST", "path": "24" }, "279": { "fn": "Router.", "offset": [ 11019, 11028 ], "op": "PUSH2", "path": "24", "value": "0xB59" }, "282": { "fn": "Router.", "jump": "i", "offset": [ 11019, 11062 ], "op": "JUMP", "path": "24" }, "283": { "fn": "Router.", "offset": [ 11019, 11062 ], "op": "JUMPDEST", "path": "24" }, "284": { "offset": [ 1056, 11159 ], "op": "STOP", "path": "24" }, "285": { "offset": [ 1216, 1246 ], "op": "JUMPDEST", "path": "24" }, "286": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "CALLVALUE", "path": "24" }, "287": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "DUP1", "path": "24" }, "288": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "ISZERO", "path": "24" }, "289": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH2", "path": "24", "value": "0x129" }, "292": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "JUMPI", "path": "24" }, "293": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "295": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "DUP1", "path": "24" }, "296": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "REVERT", "path": "24" }, "297": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "JUMPDEST", "path": "24" }, "298": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "POP", "path": "24" }, "299": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "302": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH2", "path": "24", "value": "0xB7D" }, "305": { "fn": "Router.", "jump": "i", "offset": [ 1216, 1246 ], "op": "JUMP", "path": "24" }, "306": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "JUMPDEST", "path": "24" }, "307": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "309": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "MLOAD", "path": "24" }, "310": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH2", "path": "24", "value": "0x13F" }, "313": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "SWAP2", "path": "24" }, "314": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "SWAP1", "path": "24" }, "315": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH2", "path": "24", "value": "0x107F" }, "318": { "fn": "Router.", "jump": "i", "offset": [ 1216, 1246 ], "op": "JUMP", "path": "24" }, "319": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "JUMPDEST", "path": "24" }, "320": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "322": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "MLOAD", "path": "24" }, "323": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "DUP1", "path": "24" }, "324": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "SWAP2", "path": "24" }, "325": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "SUB", "path": "24" }, "326": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "SWAP1", "path": "24" }, "327": { "fn": "Router.", "offset": [ 1216, 1246 ], "op": "RETURN", "path": "24" }, "328": { "offset": [ 1175, 1210 ], "op": "JUMPDEST", "path": "24" }, "329": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "CALLVALUE", "path": "24" }, "330": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "DUP1", "path": "24" }, "331": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "ISZERO", "path": "24" }, "332": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "PUSH2", "path": "24", "value": "0x154" }, "335": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "JUMPI", "path": "24" }, "336": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "338": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "DUP1", "path": "24" }, "339": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "REVERT", "path": "24" }, "340": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "JUMPDEST", "path": "24" }, "341": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "POP", "path": "24" }, "342": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "345": { "fn": "Router.", "offset": [ 1175, 1210 ], "op": "PUSH2", "path": "24", "value": "0xBA1" }, "348": { "fn": "Router.", "jump": "i", "offset": [ 1175, 1210 ], "op": "JUMP", "path": "24" }, "349": { "offset": [ 1300, 1339 ], "op": "JUMPDEST", "path": "24" }, "350": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "CALLVALUE", "path": "24" }, "351": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "DUP1", "path": "24" }, "352": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "ISZERO", "path": "24" }, "353": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "PUSH2", "path": "24", "value": "0x169" }, "356": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "JUMPI", "path": "24" }, "357": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "359": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "DUP1", "path": "24" }, "360": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "REVERT", "path": "24" }, "361": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "JUMPDEST", "path": "24" }, "362": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "POP", "path": "24" }, "363": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "366": { "fn": "Router.", "offset": [ 1300, 1339 ], "op": "PUSH2", "path": "24", "value": "0xBC5" }, "369": { "fn": "Router.", "jump": "i", "offset": [ 1300, 1339 ], "op": "JUMP", "path": "24" }, "370": { "offset": [ 1520, 1560 ], "op": "JUMPDEST", "path": "24" }, "371": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "CALLVALUE", "path": "24" }, "372": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "DUP1", "path": "24" }, "373": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "ISZERO", "path": "24" }, "374": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "PUSH2", "path": "24", "value": "0x17E" }, "377": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "JUMPI", "path": "24" }, "378": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "380": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "DUP1", "path": "24" }, "381": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "REVERT", "path": "24" }, "382": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "JUMPDEST", "path": "24" }, "383": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "POP", "path": "24" }, "384": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "387": { "fn": "Router.", "offset": [ 1520, 1560 ], "op": "PUSH2", "path": "24", "value": "0xBE9" }, "390": { "fn": "Router.", "jump": "i", "offset": [ 1520, 1560 ], "op": "JUMP", "path": "24" }, "391": { "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "392": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "CALLVALUE", "path": "63" }, "393": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "394": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "ISZERO", "path": "63" }, "395": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x193" }, "398": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "JUMPI", "path": "63" }, "399": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "401": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "DUP1", "path": "63" }, "402": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "REVERT", "path": "63" }, "403": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "404": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "POP", "path": "63" }, "405": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0x132" }, "408": { "fn": "Router.", "offset": [ 1035, 1063 ], "op": "PUSH2", "path": "63", "value": "0xC0D" }, "411": { "fn": "Router.", "jump": "i", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "412": { "offset": [ 1471, 1514 ], "op": "JUMPDEST", "path": "24" }, "413": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "CALLVALUE", "path": "24" }, "414": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "DUP1", "path": "24" }, "415": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "ISZERO", "path": "24" }, "416": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "PUSH2", "path": "24", "value": "0x1A8" }, "419": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "JUMPI", "path": "24" }, "420": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "422": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "DUP1", "path": "24" }, "423": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "REVERT", "path": "24" }, "424": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "JUMPDEST", "path": "24" }, "425": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "POP", "path": "24" }, "426": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "429": { "fn": "Router.", "offset": [ 1471, 1514 ], "op": "PUSH2", "path": "24", "value": "0xC1C" }, "432": { "fn": "Router.", "jump": "i", "offset": [ 1471, 1514 ], "op": "JUMP", "path": "24" }, "433": { "offset": [ 1433, 1465 ], "op": "JUMPDEST", "path": "24" }, "434": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "CALLVALUE", "path": "24" }, "435": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "DUP1", "path": "24" }, "436": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "ISZERO", "path": "24" }, "437": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "PUSH2", "path": "24", "value": "0x1BD" }, "440": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "JUMPI", "path": "24" }, "441": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "443": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "DUP1", "path": "24" }, "444": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "REVERT", "path": "24" }, "445": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "JUMPDEST", "path": "24" }, "446": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "POP", "path": "24" }, "447": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "450": { "fn": "Router.", "offset": [ 1433, 1465 ], "op": "PUSH2", "path": "24", "value": "0xC40" }, "453": { "fn": "Router.", "jump": "i", "offset": [ 1433, 1465 ], "op": "JUMP", "path": "24" }, "454": { "offset": [ 1601, 1634 ], "op": "JUMPDEST", "path": "24" }, "455": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "CALLVALUE", "path": "24" }, "456": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "DUP1", "path": "24" }, "457": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "ISZERO", "path": "24" }, "458": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "PUSH2", "path": "24", "value": "0x1D2" }, "461": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "JUMPI", "path": "24" }, "462": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "464": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "DUP1", "path": "24" }, "465": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "REVERT", "path": "24" }, "466": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "JUMPDEST", "path": "24" }, "467": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "POP", "path": "24" }, "468": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "471": { "fn": "Router.", "offset": [ 1601, 1634 ], "op": "PUSH2", "path": "24", "value": "0xC64" }, "474": { "fn": "Router.", "jump": "i", "offset": [ 1601, 1634 ], "op": "JUMP", "path": "24" }, "475": { "offset": [ 1388, 1427 ], "op": "JUMPDEST", "path": "24" }, "476": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "CALLVALUE", "path": "24" }, "477": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "DUP1", "path": "24" }, "478": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "ISZERO", "path": "24" }, "479": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "PUSH2", "path": "24", "value": "0x1E7" }, "482": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "JUMPI", "path": "24" }, "483": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "485": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "DUP1", "path": "24" }, "486": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "REVERT", "path": "24" }, "487": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "JUMPDEST", "path": "24" }, "488": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "POP", "path": "24" }, "489": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "492": { "fn": "Router.", "offset": [ 1388, 1427 ], "op": "PUSH2", "path": "24", "value": "0xC88" }, "495": { "fn": "Router.", "jump": "i", "offset": [ 1388, 1427 ], "op": "JUMP", "path": "24" }, "496": { "offset": [ 1345, 1382 ], "op": "JUMPDEST", "path": "24" }, "497": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "CALLVALUE", "path": "24" }, "498": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "DUP1", "path": "24" }, "499": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "ISZERO", "path": "24" }, "500": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "PUSH2", "path": "24", "value": "0x1FC" }, "503": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "JUMPI", "path": "24" }, "504": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "506": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "DUP1", "path": "24" }, "507": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "REVERT", "path": "24" }, "508": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "JUMPDEST", "path": "24" }, "509": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "POP", "path": "24" }, "510": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "513": { "fn": "Router.", "offset": [ 1345, 1382 ], "op": "PUSH2", "path": "24", "value": "0xCAC" }, "516": { "fn": "Router.", "jump": "i", "offset": [ 1345, 1382 ], "op": "JUMP", "path": "24" }, "517": { "offset": [ 1640, 1682 ], "op": "JUMPDEST", "path": "24" }, "518": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "CALLVALUE", "path": "24" }, "519": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "DUP1", "path": "24" }, "520": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "ISZERO", "path": "24" }, "521": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "PUSH2", "path": "24", "value": "0x211" }, "524": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "JUMPI", "path": "24" }, "525": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "527": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "DUP1", "path": "24" }, "528": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "REVERT", "path": "24" }, "529": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "JUMPDEST", "path": "24" }, "530": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "POP", "path": "24" }, "531": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "534": { "fn": "Router.", "offset": [ 1640, 1682 ], "op": "PUSH2", "path": "24", "value": "0xCD0" }, "537": { "fn": "Router.", "jump": "i", "offset": [ 1640, 1682 ], "op": "JUMP", "path": "24" }, "538": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "JUMPDEST", "path": "24" }, "539": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "CALLVALUE", "path": "24" }, "540": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "DUP1", "path": "24" }, "541": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "ISZERO", "path": "24" }, "542": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH2", "path": "24", "value": "0x226" }, "545": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "JUMPI", "path": "24" }, "546": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "548": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "DUP1", "path": "24" }, "549": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "REVERT", "path": "24" }, "550": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "JUMPDEST", "path": "24" }, "551": { "op": "POP" }, "552": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "555": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH2", "path": "24", "value": "0x235" }, "558": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "CALLDATASIZE", "path": "24" }, "559": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH1", "path": "24", "value": "0x4" }, "561": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH2", "path": "24", "value": "0xFC7" }, "564": { "fn": "Router.getRouterImplementation", "jump": "i", "offset": [ 4310, 9825 ], "op": "JUMP", "path": "24" }, "565": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "JUMPDEST", "path": "24" }, "566": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "PUSH2", "path": "24", "value": "0x2AE" }, "569": { "fn": "Router.getRouterImplementation", "jump": "i", "offset": [ 4310, 9825 ], "op": "JUMP", "path": "24" }, "570": { "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "571": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "CALLVALUE", "path": "63" }, "572": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "DUP1", "path": "63" }, "573": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "ISZERO", "path": "63" }, "574": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x246" }, "577": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "JUMPI", "path": "63" }, "578": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "580": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "DUP1", "path": "63" }, "581": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "REVERT", "path": "63" }, "582": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "583": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "POP", "path": "63" }, "584": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0x132" }, "587": { "fn": "Router.getRouterImplementation", "offset": [ 920, 946 ], "op": "PUSH2", "path": "63", "value": "0xCF4" }, "590": { "fn": "Router.getRouterImplementation", "jump": "i", "offset": [ 920, 946 ], "op": "JUMP", "path": "63" }, "591": { "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "592": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "CALLVALUE", "path": "63" }, "593": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "DUP1", "path": "63" }, "594": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "ISZERO", "path": "63" }, "595": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x25B" }, "598": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "JUMPI", "path": "63" }, "599": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "601": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "DUP1", "path": "63" }, "602": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "REVERT", "path": "63" }, "603": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "604": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "POP", "path": "63" }, "605": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0x132" }, "608": { "fn": "Router.getRouterImplementation", "offset": [ 811, 831 ], "op": "PUSH2", "path": "63", "value": "0xD03" }, "611": { "fn": "Router.getRouterImplementation", "jump": "i", "offset": [ 811, 831 ], "op": "JUMP", "path": "63" }, "612": { "offset": [ 1566, 1595 ], "op": "JUMPDEST", "path": "24" }, "613": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "CALLVALUE", "path": "24" }, "614": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "DUP1", "path": "24" }, "615": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "ISZERO", "path": "24" }, "616": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "PUSH2", "path": "24", "value": "0x270" }, "619": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "JUMPI", "path": "24" }, "620": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "622": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "DUP1", "path": "24" }, "623": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "REVERT", "path": "24" }, "624": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "JUMPDEST", "path": "24" }, "625": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "POP", "path": "24" }, "626": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "629": { "fn": "Router.getRouterImplementation", "offset": [ 1566, 1595 ], "op": "PUSH2", "path": "24", "value": "0xD1A" }, "632": { "fn": "Router.getRouterImplementation", "jump": "i", "offset": [ 1566, 1595 ], "op": "JUMP", "path": "24" }, "633": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "JUMPDEST", "path": "24" }, "634": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "CALLVALUE", "path": "24" }, "635": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "DUP1", "path": "24" }, "636": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "ISZERO", "path": "24" }, "637": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH2", "path": "24", "value": "0x285" }, "640": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "JUMPI", "path": "24" }, "641": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "643": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "DUP1", "path": "24" }, "644": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "REVERT", "path": "24" }, "645": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "JUMPDEST", "path": "24" }, "646": { "op": "POP" }, "647": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH2", "path": "24", "value": "0x11B" }, "650": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH2", "path": "24", "value": "0x294" }, "653": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "CALLDATASIZE", "path": "24" }, "654": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH1", "path": "24", "value": "0x4" }, "656": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH2", "path": "24", "value": "0xF85" }, "659": { "fn": "Router.initialize", "jump": "i", "offset": [ 2718, 4144 ], "op": "JUMP", "path": "24" }, "660": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "JUMPDEST", "path": "24" }, "661": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "PUSH2", "path": "24", "value": "0xD3E" }, "664": { "fn": "Router.initialize", "jump": "i", "offset": [ 2718, 4144 ], "op": "JUMP", "path": "24" }, "665": { "offset": [ 1252, 1294 ], "op": "JUMPDEST", "path": "24" }, "666": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "CALLVALUE", "path": "24" }, "667": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "DUP1", "path": "24" }, "668": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "ISZERO", "path": "24" }, "669": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "PUSH2", "path": "24", "value": "0x2A5" }, "672": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "JUMPI", "path": "24" }, "673": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "675": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "DUP1", "path": "24" }, "676": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "REVERT", "path": "24" }, "677": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "JUMPDEST", "path": "24" }, "678": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "POP", "path": "24" }, "679": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "PUSH2", "path": "24", "value": "0x132" }, "682": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "PUSH2", "path": "24", "value": "0xF4A" }, "685": { "fn": "Router.initialize", "jump": "i", "offset": [ 1252, 1294 ], "op": "JUMP", "path": "24" }, "686": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "JUMPDEST", "path": "24" }, "687": { "fn": "Router.getRouterImplementation", "offset": [ 4376, 4383 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "689": { "op": "PUSH1", "value": "0x1" }, "691": { "op": "PUSH1", "value": "0x1" }, "693": { "op": "PUSH1", "value": "0xE0" }, "695": { "op": "SHL" }, "696": { "op": "SUB" }, "697": { "op": "NOT" }, "698": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4460 ], "op": "DUP3", "path": "24" }, "699": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4460 ], "op": "AND", "path": "24" }, "700": { "op": "PUSH4", "value": "0x37351953" }, "705": { "op": "PUSH1", "value": "0xE1" }, "707": { "op": "SHL" }, "708": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4460 ], "op": "EQ", "path": "24" }, "709": { "branch": 18, "fn": "Router.getRouterImplementation", "offset": [ 4412, 4460 ], "op": "DUP1", "path": "24" }, "710": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4532 ], "op": "PUSH2", "path": "24", "value": "0x2DF" }, "713": { "branch": 18, "fn": "Router.getRouterImplementation", "offset": [ 4412, 4532 ], "op": "JUMPI", "path": "24" }, "714": { "op": "POP" }, "715": { "op": "PUSH1", "value": "0x1" }, "717": { "op": "PUSH1", "value": "0x1" }, "719": { "op": "PUSH1", "value": "0xE0" }, "721": { "op": "SHL" }, "722": { "op": "SUB" }, "723": { "op": "NOT" }, "724": { "fn": "Router.getRouterImplementation", "offset": [ 4476, 4532 ], "op": "DUP3", "path": "24" }, "725": { "fn": "Router.getRouterImplementation", "offset": [ 4476, 4532 ], "op": "AND", "path": "24" }, "726": { "op": "PUSH4", "value": "0x276B64B" }, "731": { "op": "PUSH1", "value": "0xE0" }, "733": { "op": "SHL" }, "734": { "branch": 19, "fn": "Router.getRouterImplementation", "offset": [ 4476, 4532 ], "op": "EQ", "path": "24" }, "735": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4532 ], "op": "JUMPDEST", "path": "24" }, "736": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4616 ], "op": "DUP1", "path": "24" }, "737": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4616 ], "op": "PUSH2", "path": "24", "value": "0x2FA" }, "740": { "branch": 19, "fn": "Router.getRouterImplementation", "offset": [ 4412, 4616 ], "op": "JUMPI", "path": "24" }, "741": { "op": "POP" }, "742": { "op": "PUSH1", "value": "0x1" }, "744": { "op": "PUSH1", "value": "0x1" }, "746": { "op": "PUSH1", "value": "0xE0" }, "748": { "op": "SHL" }, "749": { "op": "SUB" }, "750": { "op": "NOT" }, "751": { "fn": "Router.getRouterImplementation", "offset": [ 4548, 4616 ], "op": "DUP3", "path": "24" }, "752": { "fn": "Router.getRouterImplementation", "offset": [ 4548, 4616 ], "op": "AND", "path": "24" }, "753": { "op": "PUSH4", "value": "0x5950D8E9" }, "758": { "op": "PUSH1", "value": "0xE0" }, "760": { "op": "SHL" }, "761": { "branch": 20, "fn": "Router.getRouterImplementation", "offset": [ 4548, 4616 ], "op": "EQ", "path": "24" }, "762": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4616 ], "op": "JUMPDEST", "path": "24" }, "763": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4671 ], "op": "DUP1", "path": "24" }, "764": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4671 ], "op": "PUSH2", "path": "24", "value": "0x315" }, "767": { "branch": 20, "fn": "Router.getRouterImplementation", "offset": [ 4412, 4671 ], "op": "JUMPI", "path": "24" }, "768": { "op": "POP" }, "769": { "op": "PUSH1", "value": "0x1" }, "771": { "op": "PUSH1", "value": "0x1" }, "773": { "op": "PUSH1", "value": "0xE0" }, "775": { "op": "SHL" }, "776": { "op": "SUB" }, "777": { "op": "NOT" }, "778": { "fn": "Router.getRouterImplementation", "offset": [ 4632, 4671 ], "op": "DUP3", "path": "24" }, "779": { "fn": "Router.getRouterImplementation", "offset": [ 4632, 4671 ], "op": "AND", "path": "24" }, "780": { "op": "PUSH4", "value": "0x541F527" }, "785": { "op": "PUSH1", "value": "0xE4" }, "787": { "op": "SHL" }, "788": { "branch": 21, "fn": "Router.getRouterImplementation", "offset": [ 4632, 4671 ], "op": "EQ", "path": "24" }, "789": { "fn": "Router.getRouterImplementation", "offset": [ 4412, 4671 ], "op": "JUMPDEST", "path": "24" }, "790": { "fn": "Router.getRouterImplementation", "offset": [ 4395, 9819 ], "op": "ISZERO", "path": "24" }, "791": { "fn": "Router.getRouterImplementation", "offset": [ 4395, 9819 ], "op": "PUSH2", "path": "24", "value": "0x341" }, "794": { "branch": 21, "fn": "Router.getRouterImplementation", "offset": [ 4395, 9819 ], "op": "JUMPI", "path": "24" }, "795": { "op": "POP" }, "796": { "fn": "Router.getRouterImplementation", "offset": [ 4703, 4715 ], "op": "PUSH32", "path": "24", "statement": 1, "value": "0x0" }, "829": { "fn": "Router.getRouterImplementation", "offset": [ 4696, 4715 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "832": { "fn": "Router.getRouterImplementation", "offset": [ 4696, 4715 ], "op": "JUMP", "path": "24" }, "833": { "fn": "Router.getRouterImplementation", "offset": [ 4395, 9819 ], "op": "JUMPDEST", "path": "24" }, "834": { "op": "PUSH1", "value": "0x1" }, "836": { "op": "PUSH1", "value": "0x1" }, "838": { "op": "PUSH1", "value": "0xE0" }, "840": { "op": "SHL" }, "841": { "op": "SUB" }, "842": { "op": "NOT" }, "843": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4795 ], "op": "DUP3", "path": "24" }, "844": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4795 ], "op": "AND", "path": "24" }, "845": { "op": "PUSH4", "value": "0x6A96E86F" }, "850": { "op": "PUSH1", "value": "0xE0" }, "852": { "op": "SHL" }, "853": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4795 ], "op": "EQ", "path": "24" }, "854": { "branch": 22, "fn": "Router.getRouterImplementation", "offset": [ 4749, 4795 ], "op": "DUP1", "path": "24" }, "855": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4855 ], "op": "PUSH2", "path": "24", "value": "0x370" }, "858": { "branch": 22, "fn": "Router.getRouterImplementation", "offset": [ 4749, 4855 ], "op": "JUMPI", "path": "24" }, "859": { "op": "POP" }, "860": { "op": "PUSH1", "value": "0x1" }, "862": { "op": "PUSH1", "value": "0x1" }, "864": { "op": "PUSH1", "value": "0xE0" }, "866": { "op": "SHL" }, "867": { "op": "SUB" }, "868": { "op": "NOT" }, "869": { "fn": "Router.getRouterImplementation", "offset": [ 4811, 4855 ], "op": "DUP3", "path": "24" }, "870": { "fn": "Router.getRouterImplementation", "offset": [ 4811, 4855 ], "op": "AND", "path": "24" }, "871": { "op": "PUSH4", "value": "0xA78DBFFF" }, "876": { "op": "PUSH1", "value": "0xE0" }, "878": { "op": "SHL" }, "879": { "branch": 23, "fn": "Router.getRouterImplementation", "offset": [ 4811, 4855 ], "op": "EQ", "path": "24" }, "880": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4855 ], "op": "JUMPDEST", "path": "24" }, "881": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4923 ], "op": "DUP1", "path": "24" }, "882": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4923 ], "op": "PUSH2", "path": "24", "value": "0x38B" }, "885": { "branch": 23, "fn": "Router.getRouterImplementation", "offset": [ 4749, 4923 ], "op": "JUMPI", "path": "24" }, "886": { "op": "POP" }, "887": { "op": "PUSH1", "value": "0x1" }, "889": { "op": "PUSH1", "value": "0x1" }, "891": { "op": "PUSH1", "value": "0xE0" }, "893": { "op": "SHL" }, "894": { "op": "SUB" }, "895": { "op": "NOT" }, "896": { "fn": "Router.getRouterImplementation", "offset": [ 4871, 4923 ], "op": "DUP3", "path": "24" }, "897": { "fn": "Router.getRouterImplementation", "offset": [ 4871, 4923 ], "op": "AND", "path": "24" }, "898": { "op": "PUSH4", "value": "0x7DB31AB9" }, "903": { "op": "PUSH1", "value": "0xE0" }, "905": { "op": "SHL" }, "906": { "branch": 24, "fn": "Router.getRouterImplementation", "offset": [ 4871, 4923 ], "op": "EQ", "path": "24" }, "907": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4923 ], "op": "JUMPDEST", "path": "24" }, "908": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4989 ], "op": "DUP1", "path": "24" }, "909": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4989 ], "op": "PUSH2", "path": "24", "value": "0x3A6" }, "912": { "branch": 24, "fn": "Router.getRouterImplementation", "offset": [ 4749, 4989 ], "op": "JUMPI", "path": "24" }, "913": { "op": "POP" }, "914": { "op": "PUSH1", "value": "0x1" }, "916": { "op": "PUSH1", "value": "0x1" }, "918": { "op": "PUSH1", "value": "0xE0" }, "920": { "op": "SHL" }, "921": { "op": "SUB" }, "922": { "op": "NOT" }, "923": { "fn": "Router.getRouterImplementation", "offset": [ 4939, 4989 ], "op": "DUP3", "path": "24" }, "924": { "fn": "Router.getRouterImplementation", "offset": [ 4939, 4989 ], "op": "AND", "path": "24" }, "925": { "op": "PUSH4", "value": "0x184E0053" }, "930": { "op": "PUSH1", "value": "0xE1" }, "932": { "op": "SHL" }, "933": { "branch": 25, "fn": "Router.getRouterImplementation", "offset": [ 4939, 4989 ], "op": "EQ", "path": "24" }, "934": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 4989 ], "op": "JUMPDEST", "path": "24" }, "935": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5048 ], "op": "DUP1", "path": "24" }, "936": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5048 ], "op": "PUSH2", "path": "24", "value": "0x3C1" }, "939": { "branch": 25, "fn": "Router.getRouterImplementation", "offset": [ 4749, 5048 ], "op": "JUMPI", "path": "24" }, "940": { "op": "POP" }, "941": { "op": "PUSH1", "value": "0x1" }, "943": { "op": "PUSH1", "value": "0x1" }, "945": { "op": "PUSH1", "value": "0xE0" }, "947": { "op": "SHL" }, "948": { "op": "SUB" }, "949": { "op": "NOT" }, "950": { "fn": "Router.getRouterImplementation", "offset": [ 5005, 5048 ], "op": "DUP3", "path": "24" }, "951": { "fn": "Router.getRouterImplementation", "offset": [ 5005, 5048 ], "op": "AND", "path": "24" }, "952": { "op": "PUSH4", "value": "0x18AE40D7" }, "957": { "op": "PUSH1", "value": "0xE0" }, "959": { "op": "SHL" }, "960": { "branch": 26, "fn": "Router.getRouterImplementation", "offset": [ 5005, 5048 ], "op": "EQ", "path": "24" }, "961": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5048 ], "op": "JUMPDEST", "path": "24" }, "962": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5111 ], "op": "DUP1", "path": "24" }, "963": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5111 ], "op": "PUSH2", "path": "24", "value": "0x3DC" }, "966": { "branch": 26, "fn": "Router.getRouterImplementation", "offset": [ 4749, 5111 ], "op": "JUMPI", "path": "24" }, "967": { "op": "POP" }, "968": { "op": "PUSH1", "value": "0x1" }, "970": { "op": "PUSH1", "value": "0x1" }, "972": { "op": "PUSH1", "value": "0xE0" }, "974": { "op": "SHL" }, "975": { "op": "SUB" }, "976": { "op": "NOT" }, "977": { "fn": "Router.getRouterImplementation", "offset": [ 5064, 5111 ], "op": "DUP3", "path": "24" }, "978": { "fn": "Router.getRouterImplementation", "offset": [ 5064, 5111 ], "op": "AND", "path": "24" }, "979": { "op": "PUSH4", "value": "0x44253849" }, "984": { "op": "PUSH1", "value": "0xE1" }, "986": { "op": "SHL" }, "987": { "branch": 27, "fn": "Router.getRouterImplementation", "offset": [ 5064, 5111 ], "op": "EQ", "path": "24" }, "988": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5111 ], "op": "JUMPDEST", "path": "24" }, "989": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5177 ], "op": "DUP1", "path": "24" }, "990": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5177 ], "op": "PUSH2", "path": "24", "value": "0x3F7" }, "993": { "branch": 27, "fn": "Router.getRouterImplementation", "offset": [ 4749, 5177 ], "op": "JUMPI", "path": "24" }, "994": { "op": "POP" }, "995": { "op": "PUSH1", "value": "0x1" }, "997": { "op": "PUSH1", "value": "0x1" }, "999": { "op": "PUSH1", "value": "0xE0" }, "1001": { "op": "SHL" }, "1002": { "op": "SUB" }, "1003": { "op": "NOT" }, "1004": { "fn": "Router.getRouterImplementation", "offset": [ 5127, 5177 ], "op": "DUP3", "path": "24" }, "1005": { "fn": "Router.getRouterImplementation", "offset": [ 5127, 5177 ], "op": "AND", "path": "24" }, "1006": { "op": "PUSH4", "value": "0x6D6503D3" }, "1011": { "op": "PUSH1", "value": "0xE1" }, "1013": { "op": "SHL" }, "1014": { "branch": 28, "fn": "Router.getRouterImplementation", "offset": [ 5127, 5177 ], "op": "EQ", "path": "24" }, "1015": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5177 ], "op": "JUMPDEST", "path": "24" }, "1016": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5246 ], "op": "DUP1", "path": "24" }, "1017": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5246 ], "op": "PUSH2", "path": "24", "value": "0x412" }, "1020": { "branch": 28, "fn": "Router.getRouterImplementation", "offset": [ 4749, 5246 ], "op": "JUMPI", "path": "24" }, "1021": { "op": "POP" }, "1022": { "op": "PUSH1", "value": "0x1" }, "1024": { "op": "PUSH1", "value": "0x1" }, "1026": { "op": "PUSH1", "value": "0xE0" }, "1028": { "op": "SHL" }, "1029": { "op": "SUB" }, "1030": { "op": "NOT" }, "1031": { "fn": "Router.getRouterImplementation", "offset": [ 5193, 5246 ], "op": "DUP3", "path": "24" }, "1032": { "fn": "Router.getRouterImplementation", "offset": [ 5193, 5246 ], "op": "AND", "path": "24" }, "1033": { "op": "PUSH4", "value": "0x5C1D975" }, "1038": { "op": "PUSH1", "value": "0xE3" }, "1040": { "op": "SHL" }, "1041": { "branch": 29, "fn": "Router.getRouterImplementation", "offset": [ 5193, 5246 ], "op": "EQ", "path": "24" }, "1042": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5246 ], "op": "JUMPDEST", "path": "24" }, "1043": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5325 ], "op": "DUP1", "path": "24" }, "1044": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5325 ], "op": "PUSH2", "path": "24", "value": "0x42D" }, "1047": { "branch": 29, "fn": "Router.getRouterImplementation", "offset": [ 4749, 5325 ], "op": "JUMPI", "path": "24" }, "1048": { "op": "POP" }, "1049": { "op": "PUSH1", "value": "0x1" }, "1051": { "op": "PUSH1", "value": "0x1" }, "1053": { "op": "PUSH1", "value": "0xE0" }, "1055": { "op": "SHL" }, "1056": { "op": "SUB" }, "1057": { "op": "NOT" }, "1058": { "fn": "Router.getRouterImplementation", "offset": [ 5262, 5325 ], "op": "DUP3", "path": "24" }, "1059": { "fn": "Router.getRouterImplementation", "offset": [ 5262, 5325 ], "op": "AND", "path": "24" }, "1060": { "op": "PUSH4", "value": "0x1A05BCE1" }, "1065": { "op": "PUSH1", "value": "0xE0" }, "1067": { "op": "SHL" }, "1068": { "branch": 30, "fn": "Router.getRouterImplementation", "offset": [ 5262, 5325 ], "op": "EQ", "path": "24" }, "1069": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5325 ], "op": "JUMPDEST", "path": "24" }, "1070": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5409 ], "op": "DUP1", "path": "24" }, "1071": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5409 ], "op": "PUSH2", "path": "24", "value": "0x448" }, "1074": { "branch": 30, "fn": "Router.getRouterImplementation", "offset": [ 4749, 5409 ], "op": "JUMPI", "path": "24" }, "1075": { "op": "POP" }, "1076": { "op": "PUSH1", "value": "0x1" }, "1078": { "op": "PUSH1", "value": "0x1" }, "1080": { "op": "PUSH1", "value": "0xE0" }, "1082": { "op": "SHL" }, "1083": { "op": "SUB" }, "1084": { "op": "NOT" }, "1085": { "fn": "Router.getRouterImplementation", "offset": [ 5341, 5409 ], "op": "DUP3", "path": "24" }, "1086": { "fn": "Router.getRouterImplementation", "offset": [ 5341, 5409 ], "op": "AND", "path": "24" }, "1087": { "op": "PUSH4", "value": "0x3B2987B3" }, "1092": { "op": "PUSH1", "value": "0xE0" }, "1094": { "op": "SHL" }, "1095": { "branch": 31, "fn": "Router.getRouterImplementation", "offset": [ 5341, 5409 ], "op": "EQ", "path": "24" }, "1096": { "fn": "Router.getRouterImplementation", "offset": [ 4749, 5409 ], "op": "JUMPDEST", "path": "24" }, "1097": { "fn": "Router.getRouterImplementation", "offset": [ 4732, 9819 ], "op": "ISZERO", "path": "24" }, "1098": { "fn": "Router.getRouterImplementation", "offset": [ 4732, 9819 ], "op": "PUSH2", "path": "24", "value": "0x474" }, "1101": { "branch": 31, "fn": "Router.getRouterImplementation", "offset": [ 4732, 9819 ], "op": "JUMPI", "path": "24" }, "1102": { "op": "POP" }, "1103": { "fn": "Router.getRouterImplementation", "offset": [ 5441, 5455 ], "op": "PUSH32", "path": "24", "statement": 2, "value": "0x0" }, "1136": { "fn": "Router.getRouterImplementation", "offset": [ 5434, 5455 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "1139": { "fn": "Router.getRouterImplementation", "offset": [ 5434, 5455 ], "op": "JUMP", "path": "24" }, "1140": { "fn": "Router.getRouterImplementation", "offset": [ 4732, 9819 ], "op": "JUMPDEST", "path": "24" }, "1141": { "op": "PUSH1", "value": "0x1" }, "1143": { "op": "PUSH1", "value": "0x1" }, "1145": { "op": "PUSH1", "value": "0xE0" }, "1147": { "op": "SHL" }, "1148": { "op": "SUB" }, "1149": { "op": "NOT" }, "1150": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5541 ], "op": "DUP3", "path": "24" }, "1151": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5541 ], "op": "AND", "path": "24" }, "1152": { "op": "PUSH4", "value": "0x2890FB65" }, "1157": { "op": "PUSH1", "value": "0xE0" }, "1159": { "op": "SHL" }, "1160": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5541 ], "op": "EQ", "path": "24" }, "1161": { "branch": 32, "fn": "Router.getRouterImplementation", "offset": [ 5489, 5541 ], "op": "DUP1", "path": "24" }, "1162": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5604 ], "op": "PUSH2", "path": "24", "value": "0x4A3" }, "1165": { "branch": 32, "fn": "Router.getRouterImplementation", "offset": [ 5489, 5604 ], "op": "JUMPI", "path": "24" }, "1166": { "op": "POP" }, "1167": { "op": "PUSH1", "value": "0x1" }, "1169": { "op": "PUSH1", "value": "0x1" }, "1171": { "op": "PUSH1", "value": "0xE0" }, "1173": { "op": "SHL" }, "1174": { "op": "SUB" }, "1175": { "op": "NOT" }, "1176": { "fn": "Router.getRouterImplementation", "offset": [ 5557, 5604 ], "op": "DUP3", "path": "24" }, "1177": { "fn": "Router.getRouterImplementation", "offset": [ 5557, 5604 ], "op": "AND", "path": "24" }, "1178": { "op": "PUSH4", "value": "0xB8A69455" }, "1183": { "op": "PUSH1", "value": "0xE0" }, "1185": { "op": "SHL" }, "1186": { "branch": 33, "fn": "Router.getRouterImplementation", "offset": [ 5557, 5604 ], "op": "EQ", "path": "24" }, "1187": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5604 ], "op": "JUMPDEST", "path": "24" }, "1188": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5658 ], "op": "DUP1", "path": "24" }, "1189": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5658 ], "op": "PUSH2", "path": "24", "value": "0x4BD" }, "1192": { "branch": 33, "fn": "Router.getRouterImplementation", "offset": [ 5489, 5658 ], "op": "JUMPI", "path": "24" }, "1193": { "op": "POP" }, "1194": { "op": "PUSH1", "value": "0x1" }, "1196": { "op": "PUSH1", "value": "0x1" }, "1198": { "op": "PUSH1", "value": "0xE0" }, "1200": { "op": "SHL" }, "1201": { "op": "SUB" }, "1202": { "op": "NOT" }, "1203": { "fn": "Router.getRouterImplementation", "offset": [ 5620, 5658 ], "op": "DUP3", "path": "24" }, "1204": { "fn": "Router.getRouterImplementation", "offset": [ 5620, 5658 ], "op": "AND", "path": "24" }, "1205": { "op": "PUSH3", "value": "0x5E665D" }, "1209": { "op": "PUSH1", "value": "0xE3" }, "1211": { "op": "SHL" }, "1212": { "branch": 34, "fn": "Router.getRouterImplementation", "offset": [ 5620, 5658 ], "op": "EQ", "path": "24" }, "1213": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5658 ], "op": "JUMPDEST", "path": "24" }, "1214": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5717 ], "op": "DUP1", "path": "24" }, "1215": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5717 ], "op": "PUSH2", "path": "24", "value": "0x4D8" }, "1218": { "branch": 34, "fn": "Router.getRouterImplementation", "offset": [ 5489, 5717 ], "op": "JUMPI", "path": "24" }, "1219": { "op": "POP" }, "1220": { "op": "PUSH1", "value": "0x1" }, "1222": { "op": "PUSH1", "value": "0x1" }, "1224": { "op": "PUSH1", "value": "0xE0" }, "1226": { "op": "SHL" }, "1227": { "op": "SUB" }, "1228": { "op": "NOT" }, "1229": { "fn": "Router.getRouterImplementation", "offset": [ 5674, 5717 ], "op": "DUP3", "path": "24" }, "1230": { "fn": "Router.getRouterImplementation", "offset": [ 5674, 5717 ], "op": "AND", "path": "24" }, "1231": { "op": "PUSH4", "value": "0xF667F897" }, "1236": { "op": "PUSH1", "value": "0xE0" }, "1238": { "op": "SHL" }, "1239": { "branch": 35, "fn": "Router.getRouterImplementation", "offset": [ 5674, 5717 ], "op": "EQ", "path": "24" }, "1240": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5717 ], "op": "JUMPDEST", "path": "24" }, "1241": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5775 ], "op": "DUP1", "path": "24" }, "1242": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5775 ], "op": "PUSH2", "path": "24", "value": "0x4F3" }, "1245": { "branch": 35, "fn": "Router.getRouterImplementation", "offset": [ 5489, 5775 ], "op": "JUMPI", "path": "24" }, "1246": { "op": "POP" }, "1247": { "op": "PUSH1", "value": "0x1" }, "1249": { "op": "PUSH1", "value": "0x1" }, "1251": { "op": "PUSH1", "value": "0xE0" }, "1253": { "op": "SHL" }, "1254": { "op": "SUB" }, "1255": { "op": "NOT" }, "1256": { "fn": "Router.getRouterImplementation", "offset": [ 5733, 5775 ], "op": "DUP3", "path": "24" }, "1257": { "fn": "Router.getRouterImplementation", "offset": [ 5733, 5775 ], "op": "AND", "path": "24" }, "1258": { "op": "PUSH4", "value": "0x66890643" }, "1263": { "op": "PUSH1", "value": "0xE0" }, "1265": { "op": "SHL" }, "1266": { "branch": 36, "fn": "Router.getRouterImplementation", "offset": [ 5733, 5775 ], "op": "EQ", "path": "24" }, "1267": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5775 ], "op": "JUMPDEST", "path": "24" }, "1268": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5841 ], "op": "DUP1", "path": "24" }, "1269": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5841 ], "op": "PUSH2", "path": "24", "value": "0x50E" }, "1272": { "branch": 36, "fn": "Router.getRouterImplementation", "offset": [ 5489, 5841 ], "op": "JUMPI", "path": "24" }, "1273": { "op": "POP" }, "1274": { "op": "PUSH1", "value": "0x1" }, "1276": { "op": "PUSH1", "value": "0x1" }, "1278": { "op": "PUSH1", "value": "0xE0" }, "1280": { "op": "SHL" }, "1281": { "op": "SUB" }, "1282": { "op": "NOT" }, "1283": { "fn": "Router.getRouterImplementation", "offset": [ 5791, 5841 ], "op": "DUP3", "path": "24" }, "1284": { "fn": "Router.getRouterImplementation", "offset": [ 5791, 5841 ], "op": "AND", "path": "24" }, "1285": { "op": "PUSH4", "value": "0x9C97945" }, "1290": { "op": "PUSH1", "value": "0xE4" }, "1292": { "op": "SHL" }, "1293": { "branch": 37, "fn": "Router.getRouterImplementation", "offset": [ 5791, 5841 ], "op": "EQ", "path": "24" }, "1294": { "fn": "Router.getRouterImplementation", "offset": [ 5489, 5841 ], "op": "JUMPDEST", "path": "24" }, "1295": { "fn": "Router.getRouterImplementation", "offset": [ 5472, 9819 ], "op": "ISZERO", "path": "24" }, "1296": { "fn": "Router.getRouterImplementation", "offset": [ 5472, 9819 ], "op": "PUSH2", "path": "24", "value": "0x53A" }, "1299": { "branch": 37, "fn": "Router.getRouterImplementation", "offset": [ 5472, 9819 ], "op": "JUMPI", "path": "24" }, "1300": { "op": "POP" }, "1301": { "fn": "Router.getRouterImplementation", "offset": [ 5873, 5887 ], "op": "PUSH32", "path": "24", "statement": 3, "value": "0x0" }, "1334": { "fn": "Router.getRouterImplementation", "offset": [ 5866, 5887 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "1337": { "fn": "Router.getRouterImplementation", "offset": [ 5866, 5887 ], "op": "JUMP", "path": "24" }, "1338": { "fn": "Router.getRouterImplementation", "offset": [ 5472, 9819 ], "op": "JUMPDEST", "path": "24" }, "1339": { "op": "PUSH1", "value": "0x1" }, "1341": { "op": "PUSH1", "value": "0x1" }, "1343": { "op": "PUSH1", "value": "0xE0" }, "1345": { "op": "SHL" }, "1346": { "op": "SUB" }, "1347": { "op": "NOT" }, "1348": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 5972 ], "op": "DUP3", "path": "24" }, "1349": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 5972 ], "op": "AND", "path": "24" }, "1350": { "op": "PUSH4", "value": "0x1FFC9A7" }, "1355": { "op": "PUSH1", "value": "0xE0" }, "1357": { "op": "SHL" }, "1358": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 5972 ], "op": "EQ", "path": "24" }, "1359": { "branch": 38, "fn": "Router.getRouterImplementation", "offset": [ 5921, 5972 ], "op": "DUP1", "path": "24" }, "1360": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6031 ], "op": "PUSH2", "path": "24", "value": "0x568" }, "1363": { "branch": 38, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6031 ], "op": "JUMPI", "path": "24" }, "1364": { "op": "POP" }, "1365": { "op": "PUSH1", "value": "0x1" }, "1367": { "op": "PUSH1", "value": "0x1" }, "1369": { "op": "PUSH1", "value": "0xE0" }, "1371": { "op": "SHL" }, "1372": { "op": "SUB" }, "1373": { "op": "NOT" }, "1374": { "fn": "Router.getRouterImplementation", "offset": [ 5988, 6031 ], "op": "DUP3", "path": "24" }, "1375": { "fn": "Router.getRouterImplementation", "offset": [ 5988, 6031 ], "op": "AND", "path": "24" }, "1376": { "op": "PUSH3", "value": "0x7EEAC7" }, "1380": { "op": "PUSH1", "value": "0xE1" }, "1382": { "op": "SHL" }, "1383": { "branch": 39, "fn": "Router.getRouterImplementation", "offset": [ 5988, 6031 ], "op": "EQ", "path": "24" }, "1384": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6031 ], "op": "JUMPDEST", "path": "24" }, "1385": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6095 ], "op": "DUP1", "path": "24" }, "1386": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6095 ], "op": "PUSH2", "path": "24", "value": "0x583" }, "1389": { "branch": 39, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6095 ], "op": "JUMPI", "path": "24" }, "1390": { "op": "POP" }, "1391": { "op": "PUSH1", "value": "0x1" }, "1393": { "op": "PUSH1", "value": "0x1" }, "1395": { "op": "PUSH1", "value": "0xE0" }, "1397": { "op": "SHL" }, "1398": { "op": "SUB" }, "1399": { "op": "NOT" }, "1400": { "fn": "Router.getRouterImplementation", "offset": [ 6047, 6095 ], "op": "DUP3", "path": "24" }, "1401": { "fn": "Router.getRouterImplementation", "offset": [ 6047, 6095 ], "op": "AND", "path": "24" }, "1402": { "op": "PUSH4", "value": "0x13849CFD" }, "1407": { "op": "PUSH1", "value": "0xE2" }, "1409": { "op": "SHL" }, "1410": { "branch": 40, "fn": "Router.getRouterImplementation", "offset": [ 6047, 6095 ], "op": "EQ", "path": "24" }, "1411": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6095 ], "op": "JUMPDEST", "path": "24" }, "1412": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6160 ], "op": "DUP1", "path": "24" }, "1413": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6160 ], "op": "PUSH2", "path": "24", "value": "0x59E" }, "1416": { "branch": 40, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6160 ], "op": "JUMPI", "path": "24" }, "1417": { "op": "POP" }, "1418": { "op": "PUSH1", "value": "0x1" }, "1420": { "op": "PUSH1", "value": "0x1" }, "1422": { "op": "PUSH1", "value": "0xE0" }, "1424": { "op": "SHL" }, "1425": { "op": "SUB" }, "1426": { "op": "NOT" }, "1427": { "fn": "Router.getRouterImplementation", "offset": [ 6111, 6160 ], "op": "DUP3", "path": "24" }, "1428": { "fn": "Router.getRouterImplementation", "offset": [ 6111, 6160 ], "op": "AND", "path": "24" }, "1429": { "op": "PUSH4", "value": "0xFAC8F09" }, "1434": { "op": "PUSH1", "value": "0xE0" }, "1436": { "op": "SHL" }, "1437": { "branch": 41, "fn": "Router.getRouterImplementation", "offset": [ 6111, 6160 ], "op": "EQ", "path": "24" }, "1438": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6160 ], "op": "JUMPDEST", "path": "24" }, "1439": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6230 ], "op": "DUP1", "path": "24" }, "1440": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6230 ], "op": "PUSH2", "path": "24", "value": "0x5B9" }, "1443": { "branch": 41, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6230 ], "op": "JUMPI", "path": "24" }, "1444": { "op": "POP" }, "1445": { "op": "PUSH1", "value": "0x1" }, "1447": { "op": "PUSH1", "value": "0x1" }, "1449": { "op": "PUSH1", "value": "0xE0" }, "1451": { "op": "SHL" }, "1452": { "op": "SUB" }, "1453": { "op": "NOT" }, "1454": { "fn": "Router.getRouterImplementation", "offset": [ 6176, 6230 ], "op": "DUP3", "path": "24" }, "1455": { "fn": "Router.getRouterImplementation", "offset": [ 6176, 6230 ], "op": "AND", "path": "24" }, "1456": { "op": "PUSH4", "value": "0x81A86855" }, "1461": { "op": "PUSH1", "value": "0xE0" }, "1463": { "op": "SHL" }, "1464": { "branch": 42, "fn": "Router.getRouterImplementation", "offset": [ 6176, 6230 ], "op": "EQ", "path": "24" }, "1465": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6230 ], "op": "JUMPDEST", "path": "24" }, "1466": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6296 ], "op": "DUP1", "path": "24" }, "1467": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6296 ], "op": "PUSH2", "path": "24", "value": "0x5D4" }, "1470": { "branch": 42, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6296 ], "op": "JUMPI", "path": "24" }, "1471": { "op": "POP" }, "1472": { "op": "PUSH1", "value": "0x1" }, "1474": { "op": "PUSH1", "value": "0x1" }, "1476": { "op": "PUSH1", "value": "0xE0" }, "1478": { "op": "SHL" }, "1479": { "op": "SUB" }, "1480": { "op": "NOT" }, "1481": { "fn": "Router.getRouterImplementation", "offset": [ 6246, 6296 ], "op": "DUP3", "path": "24" }, "1482": { "fn": "Router.getRouterImplementation", "offset": [ 6246, 6296 ], "op": "AND", "path": "24" }, "1483": { "op": "PUSH4", "value": "0x79212195" }, "1488": { "op": "PUSH1", "value": "0xE1" }, "1490": { "op": "SHL" }, "1491": { "branch": 43, "fn": "Router.getRouterImplementation", "offset": [ 6246, 6296 ], "op": "EQ", "path": "24" }, "1492": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6296 ], "op": "JUMPDEST", "path": "24" }, "1493": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6367 ], "op": "DUP1", "path": "24" }, "1494": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6367 ], "op": "PUSH2", "path": "24", "value": "0x5EF" }, "1497": { "branch": 43, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6367 ], "op": "JUMPI", "path": "24" }, "1498": { "op": "POP" }, "1499": { "op": "PUSH1", "value": "0x1" }, "1501": { "op": "PUSH1", "value": "0x1" }, "1503": { "op": "PUSH1", "value": "0xE0" }, "1505": { "op": "SHL" }, "1506": { "op": "SUB" }, "1507": { "op": "NOT" }, "1508": { "fn": "Router.getRouterImplementation", "offset": [ 6312, 6367 ], "op": "DUP3", "path": "24" }, "1509": { "fn": "Router.getRouterImplementation", "offset": [ 6312, 6367 ], "op": "AND", "path": "24" }, "1510": { "op": "PUSH4", "value": "0x1759616B" }, "1515": { "op": "PUSH1", "value": "0xE1" }, "1517": { "op": "SHL" }, "1518": { "branch": 44, "fn": "Router.getRouterImplementation", "offset": [ 6312, 6367 ], "op": "EQ", "path": "24" }, "1519": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6367 ], "op": "JUMPDEST", "path": "24" }, "1520": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6431 ], "op": "DUP1", "path": "24" }, "1521": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6431 ], "op": "PUSH2", "path": "24", "value": "0x60A" }, "1524": { "branch": 44, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6431 ], "op": "JUMPI", "path": "24" }, "1525": { "op": "POP" }, "1526": { "op": "PUSH1", "value": "0x1" }, "1528": { "op": "PUSH1", "value": "0x1" }, "1530": { "op": "PUSH1", "value": "0xE0" }, "1532": { "op": "SHL" }, "1533": { "op": "SUB" }, "1534": { "op": "NOT" }, "1535": { "fn": "Router.getRouterImplementation", "offset": [ 6383, 6431 ], "op": "DUP3", "path": "24" }, "1536": { "fn": "Router.getRouterImplementation", "offset": [ 6383, 6431 ], "op": "AND", "path": "24" }, "1537": { "op": "PUSH4", "value": "0x7F4D701" }, "1542": { "op": "PUSH1", "value": "0xE3" }, "1544": { "op": "SHL" }, "1545": { "branch": 45, "fn": "Router.getRouterImplementation", "offset": [ 6383, 6431 ], "op": "EQ", "path": "24" }, "1546": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6431 ], "op": "JUMPDEST", "path": "24" }, "1547": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6491 ], "op": "DUP1", "path": "24" }, "1548": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6491 ], "op": "PUSH2", "path": "24", "value": "0x625" }, "1551": { "branch": 45, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6491 ], "op": "JUMPI", "path": "24" }, "1552": { "op": "POP" }, "1553": { "op": "PUSH1", "value": "0x1" }, "1555": { "op": "PUSH1", "value": "0x1" }, "1557": { "op": "PUSH1", "value": "0xE0" }, "1559": { "op": "SHL" }, "1560": { "op": "SUB" }, "1561": { "op": "NOT" }, "1562": { "fn": "Router.getRouterImplementation", "offset": [ 6447, 6491 ], "op": "DUP3", "path": "24" }, "1563": { "fn": "Router.getRouterImplementation", "offset": [ 6447, 6491 ], "op": "AND", "path": "24" }, "1564": { "op": "PUSH4", "value": "0xE6B43B9" }, "1569": { "op": "PUSH1", "value": "0xE3" }, "1571": { "op": "SHL" }, "1572": { "branch": 46, "fn": "Router.getRouterImplementation", "offset": [ 6447, 6491 ], "op": "EQ", "path": "24" }, "1573": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6491 ], "op": "JUMPDEST", "path": "24" }, "1574": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6558 ], "op": "DUP1", "path": "24" }, "1575": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6558 ], "op": "PUSH2", "path": "24", "value": "0x640" }, "1578": { "branch": 46, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6558 ], "op": "JUMPI", "path": "24" }, "1579": { "op": "POP" }, "1580": { "op": "PUSH1", "value": "0x1" }, "1582": { "op": "PUSH1", "value": "0x1" }, "1584": { "op": "PUSH1", "value": "0xE0" }, "1586": { "op": "SHL" }, "1587": { "op": "SUB" }, "1588": { "op": "NOT" }, "1589": { "fn": "Router.getRouterImplementation", "offset": [ 6507, 6558 ], "op": "DUP3", "path": "24" }, "1590": { "fn": "Router.getRouterImplementation", "offset": [ 6507, 6558 ], "op": "AND", "path": "24" }, "1591": { "op": "PUSH4", "value": "0xA22CB465" }, "1596": { "op": "PUSH1", "value": "0xE0" }, "1598": { "op": "SHL" }, "1599": { "branch": 47, "fn": "Router.getRouterImplementation", "offset": [ 6507, 6558 ], "op": "EQ", "path": "24" }, "1600": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6558 ], "op": "JUMPDEST", "path": "24" }, "1601": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6624 ], "op": "DUP1", "path": "24" }, "1602": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6624 ], "op": "PUSH2", "path": "24", "value": "0x65B" }, "1605": { "branch": 47, "fn": "Router.getRouterImplementation", "offset": [ 5921, 6624 ], "op": "JUMPI", "path": "24" }, "1606": { "op": "POP" }, "1607": { "op": "PUSH1", "value": "0x1" }, "1609": { "op": "PUSH1", "value": "0x1" }, "1611": { "op": "PUSH1", "value": "0xE0" }, "1613": { "op": "SHL" }, "1614": { "op": "SUB" }, "1615": { "op": "NOT" }, "1616": { "fn": "Router.getRouterImplementation", "offset": [ 6574, 6624 ], "op": "DUP3", "path": "24" }, "1617": { "fn": "Router.getRouterImplementation", "offset": [ 6574, 6624 ], "op": "AND", "path": "24" }, "1618": { "op": "PUSH4", "value": "0xE985E9C5" }, "1623": { "op": "PUSH1", "value": "0xE0" }, "1625": { "op": "SHL" }, "1626": { "branch": 48, "fn": "Router.getRouterImplementation", "offset": [ 6574, 6624 ], "op": "EQ", "path": "24" }, "1627": { "fn": "Router.getRouterImplementation", "offset": [ 5921, 6624 ], "op": "JUMPDEST", "path": "24" }, "1628": { "fn": "Router.getRouterImplementation", "offset": [ 5904, 9819 ], "op": "ISZERO", "path": "24" }, "1629": { "fn": "Router.getRouterImplementation", "offset": [ 5904, 9819 ], "op": "PUSH2", "path": "24", "value": "0x687" }, "1632": { "branch": 48, "fn": "Router.getRouterImplementation", "offset": [ 5904, 9819 ], "op": "JUMPI", "path": "24" }, "1633": { "op": "POP" }, "1634": { "fn": "Router.getRouterImplementation", "offset": [ 6656, 6663 ], "op": "PUSH32", "path": "24", "statement": 4, "value": "0x0" }, "1667": { "fn": "Router.getRouterImplementation", "offset": [ 6649, 6663 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "1670": { "fn": "Router.getRouterImplementation", "offset": [ 6649, 6663 ], "op": "JUMP", "path": "24" }, "1671": { "fn": "Router.getRouterImplementation", "offset": [ 5904, 9819 ], "op": "JUMPDEST", "path": "24" }, "1672": { "op": "PUSH1", "value": "0x1" }, "1674": { "op": "PUSH1", "value": "0x1" }, "1676": { "op": "PUSH1", "value": "0xE0" }, "1678": { "op": "SHL" }, "1679": { "op": "SUB" }, "1680": { "op": "NOT" }, "1681": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6749 ], "op": "DUP3", "path": "24" }, "1682": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6749 ], "op": "AND", "path": "24" }, "1683": { "op": "PUSH4", "value": "0x2D10E6EB" }, "1688": { "op": "PUSH1", "value": "0xE0" }, "1690": { "op": "SHL" }, "1691": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6749 ], "op": "EQ", "path": "24" }, "1692": { "branch": 49, "fn": "Router.getRouterImplementation", "offset": [ 6697, 6749 ], "op": "DUP1", "path": "24" }, "1693": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6822 ], "op": "PUSH2", "path": "24", "value": "0x6B6" }, "1696": { "branch": 49, "fn": "Router.getRouterImplementation", "offset": [ 6697, 6822 ], "op": "JUMPI", "path": "24" }, "1697": { "op": "POP" }, "1698": { "op": "PUSH1", "value": "0x1" }, "1700": { "op": "PUSH1", "value": "0x1" }, "1702": { "op": "PUSH1", "value": "0xE0" }, "1704": { "op": "SHL" }, "1705": { "op": "SUB" }, "1706": { "op": "NOT" }, "1707": { "fn": "Router.getRouterImplementation", "offset": [ 6765, 6822 ], "op": "DUP3", "path": "24" }, "1708": { "fn": "Router.getRouterImplementation", "offset": [ 6765, 6822 ], "op": "AND", "path": "24" }, "1709": { "op": "PUSH4", "value": "0x6633AF39" }, "1714": { "op": "PUSH1", "value": "0xE0" }, "1716": { "op": "SHL" }, "1717": { "branch": 50, "fn": "Router.getRouterImplementation", "offset": [ 6765, 6822 ], "op": "EQ", "path": "24" }, "1718": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6822 ], "op": "JUMPDEST", "path": "24" }, "1719": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6901 ], "op": "DUP1", "path": "24" }, "1720": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6901 ], "op": "PUSH2", "path": "24", "value": "0x6D1" }, "1723": { "branch": 50, "fn": "Router.getRouterImplementation", "offset": [ 6697, 6901 ], "op": "JUMPI", "path": "24" }, "1724": { "op": "POP" }, "1725": { "op": "PUSH1", "value": "0x1" }, "1727": { "op": "PUSH1", "value": "0x1" }, "1729": { "op": "PUSH1", "value": "0xE0" }, "1731": { "op": "SHL" }, "1732": { "op": "SUB" }, "1733": { "op": "NOT" }, "1734": { "fn": "Router.getRouterImplementation", "offset": [ 6838, 6901 ], "op": "DUP3", "path": "24" }, "1735": { "fn": "Router.getRouterImplementation", "offset": [ 6838, 6901 ], "op": "AND", "path": "24" }, "1736": { "op": "PUSH4", "value": "0xE3E7CB4F" }, "1741": { "op": "PUSH1", "value": "0xE0" }, "1743": { "op": "SHL" }, "1744": { "branch": 51, "fn": "Router.getRouterImplementation", "offset": [ 6838, 6901 ], "op": "EQ", "path": "24" }, "1745": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6901 ], "op": "JUMPDEST", "path": "24" }, "1746": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6985 ], "op": "DUP1", "path": "24" }, "1747": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6985 ], "op": "PUSH2", "path": "24", "value": "0x6EC" }, "1750": { "branch": 51, "fn": "Router.getRouterImplementation", "offset": [ 6697, 6985 ], "op": "JUMPI", "path": "24" }, "1751": { "op": "POP" }, "1752": { "op": "PUSH1", "value": "0x1" }, "1754": { "op": "PUSH1", "value": "0x1" }, "1756": { "op": "PUSH1", "value": "0xE0" }, "1758": { "op": "SHL" }, "1759": { "op": "SUB" }, "1760": { "op": "NOT" }, "1761": { "fn": "Router.getRouterImplementation", "offset": [ 6917, 6985 ], "op": "DUP3", "path": "24" }, "1762": { "fn": "Router.getRouterImplementation", "offset": [ 6917, 6985 ], "op": "AND", "path": "24" }, "1763": { "op": "PUSH4", "value": "0x9A600EEB" }, "1768": { "op": "PUSH1", "value": "0xE0" }, "1770": { "op": "SHL" }, "1771": { "branch": 52, "fn": "Router.getRouterImplementation", "offset": [ 6917, 6985 ], "op": "EQ", "path": "24" }, "1772": { "fn": "Router.getRouterImplementation", "offset": [ 6697, 6985 ], "op": "JUMPDEST", "path": "24" }, "1773": { "fn": "Router.getRouterImplementation", "offset": [ 6680, 9819 ], "op": "ISZERO", "path": "24" }, "1774": { "fn": "Router.getRouterImplementation", "offset": [ 6680, 9819 ], "op": "PUSH2", "path": "24", "value": "0x718" }, "1777": { "branch": 52, "fn": "Router.getRouterImplementation", "offset": [ 6680, 9819 ], "op": "JUMPI", "path": "24" }, "1778": { "op": "POP" }, "1779": { "fn": "Router.getRouterImplementation", "offset": [ 7017, 7035 ], "op": "PUSH32", "path": "24", "statement": 5, "value": "0x0" }, "1812": { "fn": "Router.getRouterImplementation", "offset": [ 7010, 7035 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "1815": { "fn": "Router.getRouterImplementation", "offset": [ 7010, 7035 ], "op": "JUMP", "path": "24" }, "1816": { "fn": "Router.getRouterImplementation", "offset": [ 6680, 9819 ], "op": "JUMPDEST", "path": "24" }, "1817": { "op": "PUSH1", "value": "0x1" }, "1819": { "op": "PUSH1", "value": "0x1" }, "1821": { "op": "PUSH1", "value": "0xE0" }, "1823": { "op": "SHL" }, "1824": { "op": "SUB" }, "1825": { "op": "NOT" }, "1826": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7118 ], "op": "DUP3", "path": "24" }, "1827": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7118 ], "op": "AND", "path": "24" }, "1828": { "op": "PUSH4", "value": "0x1FF7AEFD" }, "1833": { "op": "PUSH1", "value": "0xE2" }, "1835": { "op": "SHL" }, "1836": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7118 ], "op": "EQ", "path": "24" }, "1837": { "branch": 53, "fn": "Router.getRouterImplementation", "offset": [ 7069, 7118 ], "op": "DUP1", "path": "24" }, "1838": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7191 ], "op": "PUSH2", "path": "24", "value": "0x747" }, "1841": { "branch": 53, "fn": "Router.getRouterImplementation", "offset": [ 7069, 7191 ], "op": "JUMPI", "path": "24" }, "1842": { "op": "POP" }, "1843": { "op": "PUSH1", "value": "0x1" }, "1845": { "op": "PUSH1", "value": "0x1" }, "1847": { "op": "PUSH1", "value": "0xE0" }, "1849": { "op": "SHL" }, "1850": { "op": "SUB" }, "1851": { "op": "NOT" }, "1852": { "fn": "Router.getRouterImplementation", "offset": [ 7134, 7191 ], "op": "DUP3", "path": "24" }, "1853": { "fn": "Router.getRouterImplementation", "offset": [ 7134, 7191 ], "op": "AND", "path": "24" }, "1854": { "op": "PUSH4", "value": "0xE816469D" }, "1859": { "op": "PUSH1", "value": "0xE0" }, "1861": { "op": "SHL" }, "1862": { "branch": 54, "fn": "Router.getRouterImplementation", "offset": [ 7134, 7191 ], "op": "EQ", "path": "24" }, "1863": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7191 ], "op": "JUMPDEST", "path": "24" }, "1864": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7267 ], "op": "DUP1", "path": "24" }, "1865": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7267 ], "op": "PUSH2", "path": "24", "value": "0x762" }, "1868": { "branch": 54, "fn": "Router.getRouterImplementation", "offset": [ 7069, 7267 ], "op": "JUMPI", "path": "24" }, "1869": { "op": "POP" }, "1870": { "op": "PUSH1", "value": "0x1" }, "1872": { "op": "PUSH1", "value": "0x1" }, "1874": { "op": "PUSH1", "value": "0xE0" }, "1876": { "op": "SHL" }, "1877": { "op": "SUB" }, "1878": { "op": "NOT" }, "1879": { "fn": "Router.getRouterImplementation", "offset": [ 7207, 7267 ], "op": "DUP3", "path": "24" }, "1880": { "fn": "Router.getRouterImplementation", "offset": [ 7207, 7267 ], "op": "AND", "path": "24" }, "1881": { "op": "PUSH4", "value": "0xFB281D9" }, "1886": { "op": "PUSH1", "value": "0xE0" }, "1888": { "op": "SHL" }, "1889": { "branch": 55, "fn": "Router.getRouterImplementation", "offset": [ 7207, 7267 ], "op": "EQ", "path": "24" }, "1890": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7267 ], "op": "JUMPDEST", "path": "24" }, "1891": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7351 ], "op": "DUP1", "path": "24" }, "1892": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7351 ], "op": "PUSH2", "path": "24", "value": "0x77D" }, "1895": { "branch": 55, "fn": "Router.getRouterImplementation", "offset": [ 7069, 7351 ], "op": "JUMPI", "path": "24" }, "1896": { "op": "POP" }, "1897": { "op": "PUSH1", "value": "0x1" }, "1899": { "op": "PUSH1", "value": "0x1" }, "1901": { "op": "PUSH1", "value": "0xE0" }, "1903": { "op": "SHL" }, "1904": { "op": "SUB" }, "1905": { "op": "NOT" }, "1906": { "fn": "Router.getRouterImplementation", "offset": [ 7283, 7351 ], "op": "DUP3", "path": "24" }, "1907": { "fn": "Router.getRouterImplementation", "offset": [ 7283, 7351 ], "op": "AND", "path": "24" }, "1908": { "op": "PUSH4", "value": "0xFA37E395" }, "1913": { "op": "PUSH1", "value": "0xE0" }, "1915": { "op": "SHL" }, "1916": { "branch": 56, "fn": "Router.getRouterImplementation", "offset": [ 7283, 7351 ], "op": "EQ", "path": "24" }, "1917": { "fn": "Router.getRouterImplementation", "offset": [ 7069, 7351 ], "op": "JUMPDEST", "path": "24" }, "1918": { "fn": "Router.getRouterImplementation", "offset": [ 7052, 9819 ], "op": "ISZERO", "path": "24" }, "1919": { "fn": "Router.getRouterImplementation", "offset": [ 7052, 9819 ], "op": "PUSH2", "path": "24", "value": "0x7A9" }, "1922": { "branch": 56, "fn": "Router.getRouterImplementation", "offset": [ 7052, 9819 ], "op": "JUMPI", "path": "24" }, "1923": { "op": "POP" }, "1924": { "fn": "Router.getRouterImplementation", "offset": [ 7383, 7398 ], "op": "PUSH32", "path": "24", "statement": 6, "value": "0x0" }, "1957": { "fn": "Router.getRouterImplementation", "offset": [ 7376, 7398 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "1960": { "fn": "Router.getRouterImplementation", "offset": [ 7376, 7398 ], "op": "JUMP", "path": "24" }, "1961": { "fn": "Router.getRouterImplementation", "offset": [ 7052, 9819 ], "op": "JUMPDEST", "path": "24" }, "1962": { "op": "PUSH1", "value": "0x1" }, "1964": { "op": "PUSH1", "value": "0x1" }, "1966": { "op": "PUSH1", "value": "0xE0" }, "1968": { "op": "SHL" }, "1969": { "op": "SUB" }, "1970": { "op": "NOT" }, "1971": { "fn": "Router.getRouterImplementation", "offset": [ 7432, 7479 ], "op": "DUP3", "path": "24" }, "1972": { "fn": "Router.getRouterImplementation", "offset": [ 7432, 7479 ], "op": "AND", "path": "24" }, "1973": { "op": "PUSH4", "value": "0x3438193" }, "1978": { "op": "PUSH1", "value": "0xE6" }, "1980": { "op": "SHL" }, "1981": { "fn": "Router.getRouterImplementation", "offset": [ 7432, 7479 ], "op": "EQ", "path": "24" }, "1982": { "branch": 57, "fn": "Router.getRouterImplementation", "offset": [ 7432, 7479 ], "op": "DUP1", "path": "24" }, "1983": { "fn": "Router.getRouterImplementation", "offset": [ 7432, 7545 ], "op": "PUSH2", "path": "24", "value": "0x7D8" }, "1986": { "branch": 57, "fn": "Router.getRouterImplementation", "offset": [ 7432, 7545 ], "op": "JUMPI", "path": "24" }, "1987": { "op": "POP" }, "1988": { "op": "PUSH1", "value": "0x1" }, "1990": { "op": "PUSH1", "value": "0x1" }, "1992": { "op": "PUSH1", "value": "0xE0" }, "1994": { "op": "SHL" }, "1995": { "op": "SUB" }, "1996": { "op": "NOT" }, "1997": { "fn": "Router.getRouterImplementation", "offset": [ 7495, 7545 ], "op": "DUP3", "path": "24" }, "1998": { "fn": "Router.getRouterImplementation", "offset": [ 7495, 7545 ], "op": "AND", "path": "24" }, "1999": { "op": "PUSH4", "value": "0x5DB6EAC7" }, "2004": { "op": "PUSH1", "value": "0xE1" }, "2006": { "op": "SHL" }, "2007": { "branch": 58, "fn": "Router.getRouterImplementation", "offset": [ 7495, 7545 ], "op": "EQ", "path": "24" }, "2008": { "fn": "Router.getRouterImplementation", "offset": [ 7432, 7545 ], "op": "JUMPDEST", "path": "24" }, "2009": { "fn": "Router.getRouterImplementation", "offset": [ 7415, 9819 ], "op": "ISZERO", "path": "24" }, "2010": { "fn": "Router.getRouterImplementation", "offset": [ 7415, 9819 ], "op": "PUSH2", "path": "24", "value": "0x804" }, "2013": { "branch": 58, "fn": "Router.getRouterImplementation", "offset": [ 7415, 9819 ], "op": "JUMPI", "path": "24" }, "2014": { "op": "POP" }, "2015": { "fn": "Router.getRouterImplementation", "offset": [ 7577, 7594 ], "op": "PUSH32", "path": "24", "statement": 7, "value": "0x0" }, "2048": { "fn": "Router.getRouterImplementation", "offset": [ 7570, 7594 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "2051": { "fn": "Router.getRouterImplementation", "offset": [ 7570, 7594 ], "op": "JUMP", "path": "24" }, "2052": { "fn": "Router.getRouterImplementation", "offset": [ 7415, 9819 ], "op": "JUMPDEST", "path": "24" }, "2053": { "op": "PUSH1", "value": "0x1" }, "2055": { "op": "PUSH1", "value": "0x1" }, "2057": { "op": "PUSH1", "value": "0xE0" }, "2059": { "op": "SHL" }, "2060": { "op": "SUB" }, "2061": { "op": "NOT" }, "2062": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7675 ], "op": "DUP3", "path": "24" }, "2063": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7675 ], "op": "AND", "path": "24" }, "2064": { "op": "PUSH4", "value": "0x7ABAF271" }, "2069": { "op": "PUSH1", "value": "0xE1" }, "2071": { "op": "SHL" }, "2072": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7675 ], "op": "EQ", "path": "24" }, "2073": { "branch": 59, "fn": "Router.getRouterImplementation", "offset": [ 7628, 7675 ], "op": "DUP1", "path": "24" }, "2074": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7741 ], "op": "PUSH2", "path": "24", "value": "0x833" }, "2077": { "branch": 59, "fn": "Router.getRouterImplementation", "offset": [ 7628, 7741 ], "op": "JUMPI", "path": "24" }, "2078": { "op": "POP" }, "2079": { "op": "PUSH1", "value": "0x1" }, "2081": { "op": "PUSH1", "value": "0x1" }, "2083": { "op": "PUSH1", "value": "0xE0" }, "2085": { "op": "SHL" }, "2086": { "op": "SUB" }, "2087": { "op": "NOT" }, "2088": { "fn": "Router.getRouterImplementation", "offset": [ 7691, 7741 ], "op": "DUP3", "path": "24" }, "2089": { "fn": "Router.getRouterImplementation", "offset": [ 7691, 7741 ], "op": "AND", "path": "24" }, "2090": { "op": "PUSH4", "value": "0xE31051A1" }, "2095": { "op": "PUSH1", "value": "0xE0" }, "2097": { "op": "SHL" }, "2098": { "branch": 60, "fn": "Router.getRouterImplementation", "offset": [ 7691, 7741 ], "op": "EQ", "path": "24" }, "2099": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7741 ], "op": "JUMPDEST", "path": "24" }, "2100": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7807 ], "op": "DUP1", "path": "24" }, "2101": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7807 ], "op": "PUSH2", "path": "24", "value": "0x84E" }, "2104": { "branch": 60, "fn": "Router.getRouterImplementation", "offset": [ 7628, 7807 ], "op": "JUMPI", "path": "24" }, "2105": { "op": "POP" }, "2106": { "op": "PUSH1", "value": "0x1" }, "2108": { "op": "PUSH1", "value": "0x1" }, "2110": { "op": "PUSH1", "value": "0xE0" }, "2112": { "op": "SHL" }, "2113": { "op": "SUB" }, "2114": { "op": "NOT" }, "2115": { "fn": "Router.getRouterImplementation", "offset": [ 7757, 7807 ], "op": "DUP3", "path": "24" }, "2116": { "fn": "Router.getRouterImplementation", "offset": [ 7757, 7807 ], "op": "AND", "path": "24" }, "2117": { "op": "PUSH4", "value": "0xA11A4293" }, "2122": { "op": "PUSH1", "value": "0xE0" }, "2124": { "op": "SHL" }, "2125": { "branch": 61, "fn": "Router.getRouterImplementation", "offset": [ 7757, 7807 ], "op": "EQ", "path": "24" }, "2126": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7807 ], "op": "JUMPDEST", "path": "24" }, "2127": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7873 ], "op": "DUP1", "path": "24" }, "2128": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7873 ], "op": "PUSH2", "path": "24", "value": "0x869" }, "2131": { "branch": 61, "fn": "Router.getRouterImplementation", "offset": [ 7628, 7873 ], "op": "JUMPI", "path": "24" }, "2132": { "op": "POP" }, "2133": { "op": "PUSH1", "value": "0x1" }, "2135": { "op": "PUSH1", "value": "0x1" }, "2137": { "op": "PUSH1", "value": "0xE0" }, "2139": { "op": "SHL" }, "2140": { "op": "SUB" }, "2141": { "op": "NOT" }, "2142": { "fn": "Router.getRouterImplementation", "offset": [ 7823, 7873 ], "op": "DUP3", "path": "24" }, "2143": { "fn": "Router.getRouterImplementation", "offset": [ 7823, 7873 ], "op": "AND", "path": "24" }, "2144": { "op": "PUSH4", "value": "0x5284765" }, "2149": { "op": "PUSH1", "value": "0xE5" }, "2151": { "op": "SHL" }, "2152": { "branch": 62, "fn": "Router.getRouterImplementation", "offset": [ 7823, 7873 ], "op": "EQ", "path": "24" }, "2153": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7873 ], "op": "JUMPDEST", "path": "24" }, "2154": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7937 ], "op": "DUP1", "path": "24" }, "2155": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7937 ], "op": "PUSH2", "path": "24", "value": "0x884" }, "2158": { "branch": 62, "fn": "Router.getRouterImplementation", "offset": [ 7628, 7937 ], "op": "JUMPI", "path": "24" }, "2159": { "op": "POP" }, "2160": { "op": "PUSH1", "value": "0x1" }, "2162": { "op": "PUSH1", "value": "0x1" }, "2164": { "op": "PUSH1", "value": "0xE0" }, "2166": { "op": "SHL" }, "2167": { "op": "SUB" }, "2168": { "op": "NOT" }, "2169": { "fn": "Router.getRouterImplementation", "offset": [ 7889, 7937 ], "op": "DUP3", "path": "24" }, "2170": { "fn": "Router.getRouterImplementation", "offset": [ 7889, 7937 ], "op": "AND", "path": "24" }, "2171": { "op": "PUSH4", "value": "0x315CB2B9" }, "2176": { "op": "PUSH1", "value": "0xE2" }, "2178": { "op": "SHL" }, "2179": { "branch": 63, "fn": "Router.getRouterImplementation", "offset": [ 7889, 7937 ], "op": "EQ", "path": "24" }, "2180": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 7937 ], "op": "JUMPDEST", "path": "24" }, "2181": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8005 ], "op": "DUP1", "path": "24" }, "2182": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8005 ], "op": "PUSH2", "path": "24", "value": "0x89F" }, "2185": { "branch": 63, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8005 ], "op": "JUMPI", "path": "24" }, "2186": { "op": "POP" }, "2187": { "op": "PUSH1", "value": "0x1" }, "2189": { "op": "PUSH1", "value": "0x1" }, "2191": { "op": "PUSH1", "value": "0xE0" }, "2193": { "op": "SHL" }, "2194": { "op": "SUB" }, "2195": { "op": "NOT" }, "2196": { "fn": "Router.getRouterImplementation", "offset": [ 7953, 8005 ], "op": "DUP3", "path": "24" }, "2197": { "fn": "Router.getRouterImplementation", "offset": [ 7953, 8005 ], "op": "AND", "path": "24" }, "2198": { "op": "PUSH4", "value": "0x2C90B94D" }, "2203": { "op": "PUSH1", "value": "0xE2" }, "2205": { "op": "SHL" }, "2206": { "branch": 64, "fn": "Router.getRouterImplementation", "offset": [ 7953, 8005 ], "op": "EQ", "path": "24" }, "2207": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8005 ], "op": "JUMPDEST", "path": "24" }, "2208": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8070 ], "op": "DUP1", "path": "24" }, "2209": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8070 ], "op": "PUSH2", "path": "24", "value": "0x8BA" }, "2212": { "branch": 64, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8070 ], "op": "JUMPI", "path": "24" }, "2213": { "op": "POP" }, "2214": { "op": "PUSH1", "value": "0x1" }, "2216": { "op": "PUSH1", "value": "0x1" }, "2218": { "op": "PUSH1", "value": "0xE0" }, "2220": { "op": "SHL" }, "2221": { "op": "SUB" }, "2222": { "op": "NOT" }, "2223": { "fn": "Router.getRouterImplementation", "offset": [ 8021, 8070 ], "op": "DUP3", "path": "24" }, "2224": { "fn": "Router.getRouterImplementation", "offset": [ 8021, 8070 ], "op": "AND", "path": "24" }, "2225": { "op": "PUSH4", "value": "0x9CE3C19" }, "2230": { "op": "PUSH1", "value": "0xE3" }, "2232": { "op": "SHL" }, "2233": { "branch": 65, "fn": "Router.getRouterImplementation", "offset": [ 8021, 8070 ], "op": "EQ", "path": "24" }, "2234": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8070 ], "op": "JUMPDEST", "path": "24" }, "2235": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8148 ], "op": "DUP1", "path": "24" }, "2236": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8148 ], "op": "PUSH2", "path": "24", "value": "0x8D5" }, "2239": { "branch": 65, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8148 ], "op": "JUMPI", "path": "24" }, "2240": { "op": "POP" }, "2241": { "op": "PUSH1", "value": "0x1" }, "2243": { "op": "PUSH1", "value": "0x1" }, "2245": { "op": "PUSH1", "value": "0xE0" }, "2247": { "op": "SHL" }, "2248": { "op": "SUB" }, "2249": { "op": "NOT" }, "2250": { "fn": "Router.getRouterImplementation", "offset": [ 8086, 8148 ], "op": "DUP3", "path": "24" }, "2251": { "fn": "Router.getRouterImplementation", "offset": [ 8086, 8148 ], "op": "AND", "path": "24" }, "2252": { "op": "PUSH4", "value": "0x54EBDE29" }, "2257": { "op": "PUSH1", "value": "0xE1" }, "2259": { "op": "SHL" }, "2260": { "branch": 66, "fn": "Router.getRouterImplementation", "offset": [ 8086, 8148 ], "op": "EQ", "path": "24" }, "2261": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8148 ], "op": "JUMPDEST", "path": "24" }, "2262": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8225 ], "op": "DUP1", "path": "24" }, "2263": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8225 ], "op": "PUSH2", "path": "24", "value": "0x8F0" }, "2266": { "branch": 66, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8225 ], "op": "JUMPI", "path": "24" }, "2267": { "op": "POP" }, "2268": { "op": "PUSH1", "value": "0x1" }, "2270": { "op": "PUSH1", "value": "0x1" }, "2272": { "op": "PUSH1", "value": "0xE0" }, "2274": { "op": "SHL" }, "2275": { "op": "SUB" }, "2276": { "op": "NOT" }, "2277": { "fn": "Router.getRouterImplementation", "offset": [ 8164, 8225 ], "op": "DUP3", "path": "24" }, "2278": { "fn": "Router.getRouterImplementation", "offset": [ 8164, 8225 ], "op": "AND", "path": "24" }, "2279": { "op": "PUSH4", "value": "0x98DCBC23" }, "2284": { "op": "PUSH1", "value": "0xE0" }, "2286": { "op": "SHL" }, "2287": { "branch": 67, "fn": "Router.getRouterImplementation", "offset": [ 8164, 8225 ], "op": "EQ", "path": "24" }, "2288": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8225 ], "op": "JUMPDEST", "path": "24" }, "2289": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8299 ], "op": "DUP1", "path": "24" }, "2290": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8299 ], "op": "PUSH2", "path": "24", "value": "0x90B" }, "2293": { "branch": 67, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8299 ], "op": "JUMPI", "path": "24" }, "2294": { "op": "POP" }, "2295": { "op": "PUSH1", "value": "0x1" }, "2297": { "op": "PUSH1", "value": "0x1" }, "2299": { "op": "PUSH1", "value": "0xE0" }, "2301": { "op": "SHL" }, "2302": { "op": "SUB" }, "2303": { "op": "NOT" }, "2304": { "fn": "Router.getRouterImplementation", "offset": [ 8241, 8299 ], "op": "DUP3", "path": "24" }, "2305": { "fn": "Router.getRouterImplementation", "offset": [ 8241, 8299 ], "op": "AND", "path": "24" }, "2306": { "op": "PUSH4", "value": "0x33EABD1D" }, "2311": { "op": "PUSH1", "value": "0xE2" }, "2313": { "op": "SHL" }, "2314": { "branch": 68, "fn": "Router.getRouterImplementation", "offset": [ 8241, 8299 ], "op": "EQ", "path": "24" }, "2315": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8299 ], "op": "JUMPDEST", "path": "24" }, "2316": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8380 ], "op": "DUP1", "path": "24" }, "2317": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8380 ], "op": "PUSH2", "path": "24", "value": "0x926" }, "2320": { "branch": 68, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8380 ], "op": "JUMPI", "path": "24" }, "2321": { "op": "POP" }, "2322": { "op": "PUSH1", "value": "0x1" }, "2324": { "op": "PUSH1", "value": "0x1" }, "2326": { "op": "PUSH1", "value": "0xE0" }, "2328": { "op": "SHL" }, "2329": { "op": "SUB" }, "2330": { "op": "NOT" }, "2331": { "fn": "Router.getRouterImplementation", "offset": [ 8315, 8380 ], "op": "DUP3", "path": "24" }, "2332": { "fn": "Router.getRouterImplementation", "offset": [ 8315, 8380 ], "op": "AND", "path": "24" }, "2333": { "op": "PUSH4", "value": "0x413F2C5F" }, "2338": { "op": "PUSH1", "value": "0xE0" }, "2340": { "op": "SHL" }, "2341": { "branch": 69, "fn": "Router.getRouterImplementation", "offset": [ 8315, 8380 ], "op": "EQ", "path": "24" }, "2342": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8380 ], "op": "JUMPDEST", "path": "24" }, "2343": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8462 ], "op": "DUP1", "path": "24" }, "2344": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8462 ], "op": "PUSH2", "path": "24", "value": "0x941" }, "2347": { "branch": 69, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8462 ], "op": "JUMPI", "path": "24" }, "2348": { "op": "POP" }, "2349": { "op": "PUSH1", "value": "0x1" }, "2351": { "op": "PUSH1", "value": "0x1" }, "2353": { "op": "PUSH1", "value": "0xE0" }, "2355": { "op": "SHL" }, "2356": { "op": "SUB" }, "2357": { "op": "NOT" }, "2358": { "fn": "Router.getRouterImplementation", "offset": [ 8396, 8462 ], "op": "DUP3", "path": "24" }, "2359": { "fn": "Router.getRouterImplementation", "offset": [ 8396, 8462 ], "op": "AND", "path": "24" }, "2360": { "op": "PUSH4", "value": "0xD0DA867" }, "2365": { "op": "PUSH1", "value": "0xE2" }, "2367": { "op": "SHL" }, "2368": { "branch": 70, "fn": "Router.getRouterImplementation", "offset": [ 8396, 8462 ], "op": "EQ", "path": "24" }, "2369": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8462 ], "op": "JUMPDEST", "path": "24" }, "2370": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8541 ], "op": "DUP1", "path": "24" }, "2371": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8541 ], "op": "PUSH2", "path": "24", "value": "0x95C" }, "2374": { "branch": 70, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8541 ], "op": "JUMPI", "path": "24" }, "2375": { "op": "POP" }, "2376": { "op": "PUSH1", "value": "0x1" }, "2378": { "op": "PUSH1", "value": "0x1" }, "2380": { "op": "PUSH1", "value": "0xE0" }, "2382": { "op": "SHL" }, "2383": { "op": "SUB" }, "2384": { "op": "NOT" }, "2385": { "fn": "Router.getRouterImplementation", "offset": [ 8478, 8541 ], "op": "DUP3", "path": "24" }, "2386": { "fn": "Router.getRouterImplementation", "offset": [ 8478, 8541 ], "op": "AND", "path": "24" }, "2387": { "op": "PUSH4", "value": "0x353ABC5D" }, "2392": { "op": "PUSH1", "value": "0xE0" }, "2394": { "op": "SHL" }, "2395": { "branch": 71, "fn": "Router.getRouterImplementation", "offset": [ 8478, 8541 ], "op": "EQ", "path": "24" }, "2396": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8541 ], "op": "JUMPDEST", "path": "24" }, "2397": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8624 ], "op": "DUP1", "path": "24" }, "2398": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8624 ], "op": "PUSH2", "path": "24", "value": "0x977" }, "2401": { "branch": 71, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8624 ], "op": "JUMPI", "path": "24" }, "2402": { "op": "POP" }, "2403": { "op": "PUSH1", "value": "0x1" }, "2405": { "op": "PUSH1", "value": "0x1" }, "2407": { "op": "PUSH1", "value": "0xE0" }, "2409": { "op": "SHL" }, "2410": { "op": "SUB" }, "2411": { "op": "NOT" }, "2412": { "fn": "Router.getRouterImplementation", "offset": [ 8557, 8624 ], "op": "DUP3", "path": "24" }, "2413": { "fn": "Router.getRouterImplementation", "offset": [ 8557, 8624 ], "op": "AND", "path": "24" }, "2414": { "op": "PUSH4", "value": "0xFA17B5F1" }, "2419": { "op": "PUSH1", "value": "0xE0" }, "2421": { "op": "SHL" }, "2422": { "branch": 72, "fn": "Router.getRouterImplementation", "offset": [ 8557, 8624 ], "op": "EQ", "path": "24" }, "2423": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8624 ], "op": "JUMPDEST", "path": "24" }, "2424": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8689 ], "op": "DUP1", "path": "24" }, "2425": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8689 ], "op": "PUSH2", "path": "24", "value": "0x992" }, "2428": { "branch": 72, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8689 ], "op": "JUMPI", "path": "24" }, "2429": { "op": "POP" }, "2430": { "op": "PUSH1", "value": "0x1" }, "2432": { "op": "PUSH1", "value": "0x1" }, "2434": { "op": "PUSH1", "value": "0xE0" }, "2436": { "op": "SHL" }, "2437": { "op": "SUB" }, "2438": { "op": "NOT" }, "2439": { "fn": "Router.getRouterImplementation", "offset": [ 8640, 8689 ], "op": "DUP3", "path": "24" }, "2440": { "fn": "Router.getRouterImplementation", "offset": [ 8640, 8689 ], "op": "AND", "path": "24" }, "2441": { "op": "PUSH4", "value": "0x113AA8B1" }, "2446": { "op": "PUSH1", "value": "0xE0" }, "2448": { "op": "SHL" }, "2449": { "branch": 73, "fn": "Router.getRouterImplementation", "offset": [ 8640, 8689 ], "op": "EQ", "path": "24" }, "2450": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8689 ], "op": "JUMPDEST", "path": "24" }, "2451": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8744 ], "op": "DUP1", "path": "24" }, "2452": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8744 ], "op": "PUSH2", "path": "24", "value": "0x9AD" }, "2455": { "branch": 73, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8744 ], "op": "JUMPI", "path": "24" }, "2456": { "op": "POP" }, "2457": { "op": "PUSH1", "value": "0x1" }, "2459": { "op": "PUSH1", "value": "0x1" }, "2461": { "op": "PUSH1", "value": "0xE0" }, "2463": { "op": "SHL" }, "2464": { "op": "SUB" }, "2465": { "op": "NOT" }, "2466": { "fn": "Router.getRouterImplementation", "offset": [ 8705, 8744 ], "op": "DUP3", "path": "24" }, "2467": { "fn": "Router.getRouterImplementation", "offset": [ 8705, 8744 ], "op": "AND", "path": "24" }, "2468": { "op": "PUSH4", "value": "0x1B2CE7F3" }, "2473": { "op": "PUSH1", "value": "0xE1" }, "2475": { "op": "SHL" }, "2476": { "branch": 74, "fn": "Router.getRouterImplementation", "offset": [ 8705, 8744 ], "op": "EQ", "path": "24" }, "2477": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8744 ], "op": "JUMPDEST", "path": "24" }, "2478": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8806 ], "op": "DUP1", "path": "24" }, "2479": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8806 ], "op": "PUSH2", "path": "24", "value": "0x9C8" }, "2482": { "branch": 74, "fn": "Router.getRouterImplementation", "offset": [ 7628, 8806 ], "op": "JUMPI", "path": "24" }, "2483": { "op": "POP" }, "2484": { "op": "PUSH1", "value": "0x1" }, "2486": { "op": "PUSH1", "value": "0x1" }, "2488": { "op": "PUSH1", "value": "0xE0" }, "2490": { "op": "SHL" }, "2491": { "op": "SUB" }, "2492": { "op": "NOT" }, "2493": { "fn": "Router.getRouterImplementation", "offset": [ 8760, 8806 ], "op": "DUP3", "path": "24" }, "2494": { "fn": "Router.getRouterImplementation", "offset": [ 8760, 8806 ], "op": "AND", "path": "24" }, "2495": { "op": "PUSH4", "value": "0x278F7943" }, "2500": { "op": "PUSH1", "value": "0xE1" }, "2502": { "op": "SHL" }, "2503": { "branch": 75, "fn": "Router.getRouterImplementation", "offset": [ 8760, 8806 ], "op": "EQ", "path": "24" }, "2504": { "fn": "Router.getRouterImplementation", "offset": [ 7628, 8806 ], "op": "JUMPDEST", "path": "24" }, "2505": { "fn": "Router.getRouterImplementation", "offset": [ 7611, 9819 ], "op": "ISZERO", "path": "24" }, "2506": { "fn": "Router.getRouterImplementation", "offset": [ 7611, 9819 ], "op": "PUSH2", "path": "24", "value": "0x9F4" }, "2509": { "branch": 75, "fn": "Router.getRouterImplementation", "offset": [ 7611, 9819 ], "op": "JUMPI", "path": "24" }, "2510": { "op": "POP" }, "2511": { "fn": "Router.getRouterImplementation", "offset": [ 8838, 8848 ], "op": "PUSH32", "path": "24", "statement": 8, "value": "0x0" }, "2544": { "fn": "Router.getRouterImplementation", "offset": [ 8831, 8848 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "2547": { "fn": "Router.getRouterImplementation", "offset": [ 8831, 8848 ], "op": "JUMP", "path": "24" }, "2548": { "fn": "Router.getRouterImplementation", "offset": [ 7611, 9819 ], "op": "JUMPDEST", "path": "24" }, "2549": { "op": "PUSH1", "value": "0x1" }, "2551": { "op": "PUSH1", "value": "0x1" }, "2553": { "op": "PUSH1", "value": "0xE0" }, "2555": { "op": "SHL" }, "2556": { "op": "SUB" }, "2557": { "op": "NOT" }, "2558": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 8935 ], "op": "DUP3", "path": "24" }, "2559": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 8935 ], "op": "AND", "path": "24" }, "2560": { "op": "PUSH4", "value": "0x7D6DBFF7" }, "2565": { "op": "PUSH1", "value": "0xE1" }, "2567": { "op": "SHL" }, "2568": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 8935 ], "op": "EQ", "path": "24" }, "2569": { "branch": 76, "fn": "Router.getRouterImplementation", "offset": [ 8882, 8935 ], "op": "DUP1", "path": "24" }, "2570": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9009 ], "op": "PUSH2", "path": "24", "value": "0xA23" }, "2573": { "branch": 76, "fn": "Router.getRouterImplementation", "offset": [ 8882, 9009 ], "op": "JUMPI", "path": "24" }, "2574": { "op": "POP" }, "2575": { "op": "PUSH1", "value": "0x1" }, "2577": { "op": "PUSH1", "value": "0x1" }, "2579": { "op": "PUSH1", "value": "0xE0" }, "2581": { "op": "SHL" }, "2582": { "op": "SUB" }, "2583": { "op": "NOT" }, "2584": { "fn": "Router.getRouterImplementation", "offset": [ 8951, 9009 ], "op": "DUP3", "path": "24" }, "2585": { "fn": "Router.getRouterImplementation", "offset": [ 8951, 9009 ], "op": "AND", "path": "24" }, "2586": { "op": "PUSH4", "value": "0x6D7A00EB" }, "2591": { "op": "PUSH1", "value": "0xE0" }, "2593": { "op": "SHL" }, "2594": { "branch": 77, "fn": "Router.getRouterImplementation", "offset": [ 8951, 9009 ], "op": "EQ", "path": "24" }, "2595": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9009 ], "op": "JUMPDEST", "path": "24" }, "2596": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9076 ], "op": "DUP1", "path": "24" }, "2597": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9076 ], "op": "PUSH2", "path": "24", "value": "0xA3E" }, "2600": { "branch": 77, "fn": "Router.getRouterImplementation", "offset": [ 8882, 9076 ], "op": "JUMPI", "path": "24" }, "2601": { "op": "POP" }, "2602": { "op": "PUSH1", "value": "0x1" }, "2604": { "op": "PUSH1", "value": "0x1" }, "2606": { "op": "PUSH1", "value": "0xE0" }, "2608": { "op": "SHL" }, "2609": { "op": "SUB" }, "2610": { "op": "NOT" }, "2611": { "fn": "Router.getRouterImplementation", "offset": [ 9025, 9076 ], "op": "DUP3", "path": "24" }, "2612": { "fn": "Router.getRouterImplementation", "offset": [ 9025, 9076 ], "op": "AND", "path": "24" }, "2613": { "op": "PUSH4", "value": "0x7F23D4F9" }, "2618": { "op": "PUSH1", "value": "0xE1" }, "2620": { "op": "SHL" }, "2621": { "branch": 78, "fn": "Router.getRouterImplementation", "offset": [ 9025, 9076 ], "op": "EQ", "path": "24" }, "2622": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9076 ], "op": "JUMPDEST", "path": "24" }, "2623": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9141 ], "op": "DUP1", "path": "24" }, "2624": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9141 ], "op": "PUSH2", "path": "24", "value": "0xA59" }, "2627": { "branch": 78, "fn": "Router.getRouterImplementation", "offset": [ 8882, 9141 ], "op": "JUMPI", "path": "24" }, "2628": { "op": "POP" }, "2629": { "op": "PUSH1", "value": "0x1" }, "2631": { "op": "PUSH1", "value": "0x1" }, "2633": { "op": "PUSH1", "value": "0xE0" }, "2635": { "op": "SHL" }, "2636": { "op": "SUB" }, "2637": { "op": "NOT" }, "2638": { "fn": "Router.getRouterImplementation", "offset": [ 9092, 9141 ], "op": "DUP3", "path": "24" }, "2639": { "fn": "Router.getRouterImplementation", "offset": [ 9092, 9141 ], "op": "AND", "path": "24" }, "2640": { "op": "PUSH4", "value": "0x239CEC8F" }, "2645": { "op": "PUSH1", "value": "0xE2" }, "2647": { "op": "SHL" }, "2648": { "branch": 79, "fn": "Router.getRouterImplementation", "offset": [ 9092, 9141 ], "op": "EQ", "path": "24" }, "2649": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9141 ], "op": "JUMPDEST", "path": "24" }, "2650": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9211 ], "op": "DUP1", "path": "24" }, "2651": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9211 ], "op": "PUSH2", "path": "24", "value": "0xA74" }, "2654": { "branch": 79, "fn": "Router.getRouterImplementation", "offset": [ 8882, 9211 ], "op": "JUMPI", "path": "24" }, "2655": { "op": "POP" }, "2656": { "op": "PUSH1", "value": "0x1" }, "2658": { "op": "PUSH1", "value": "0x1" }, "2660": { "op": "PUSH1", "value": "0xE0" }, "2662": { "op": "SHL" }, "2663": { "op": "SUB" }, "2664": { "op": "NOT" }, "2665": { "fn": "Router.getRouterImplementation", "offset": [ 9157, 9211 ], "op": "DUP3", "path": "24" }, "2666": { "fn": "Router.getRouterImplementation", "offset": [ 9157, 9211 ], "op": "AND", "path": "24" }, "2667": { "op": "PUSH4", "value": "0x12ADC47B" }, "2672": { "op": "PUSH1", "value": "0xE0" }, "2674": { "op": "SHL" }, "2675": { "branch": 80, "fn": "Router.getRouterImplementation", "offset": [ 9157, 9211 ], "op": "EQ", "path": "24" }, "2676": { "fn": "Router.getRouterImplementation", "offset": [ 8882, 9211 ], "op": "JUMPDEST", "path": "24" }, "2677": { "fn": "Router.getRouterImplementation", "offset": [ 8865, 9819 ], "op": "ISZERO", "path": "24" }, "2678": { "fn": "Router.getRouterImplementation", "offset": [ 8865, 9819 ], "op": "PUSH2", "path": "24", "value": "0xAA0" }, "2681": { "branch": 80, "fn": "Router.getRouterImplementation", "offset": [ 8865, 9819 ], "op": "JUMPI", "path": "24" }, "2682": { "op": "POP" }, "2683": { "fn": "Router.getRouterImplementation", "offset": [ 9243, 9251 ], "op": "PUSH32", "path": "24", "statement": 9, "value": "0x0" }, "2716": { "fn": "Router.getRouterImplementation", "offset": [ 9236, 9251 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "2719": { "fn": "Router.getRouterImplementation", "offset": [ 9236, 9251 ], "op": "JUMP", "path": "24" }, "2720": { "fn": "Router.getRouterImplementation", "offset": [ 8865, 9819 ], "op": "JUMPDEST", "path": "24" }, "2721": { "op": "PUSH1", "value": "0x1" }, "2723": { "op": "PUSH1", "value": "0x1" }, "2725": { "op": "PUSH1", "value": "0xE0" }, "2727": { "op": "SHL" }, "2728": { "op": "SUB" }, "2729": { "op": "NOT" }, "2730": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9344 ], "op": "DUP3", "path": "24" }, "2731": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9344 ], "op": "AND", "path": "24" }, "2732": { "op": "PUSH4", "value": "0x6A09A2A3" }, "2737": { "op": "PUSH1", "value": "0xE0" }, "2739": { "op": "SHL" }, "2740": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9344 ], "op": "EQ", "path": "24" }, "2741": { "branch": 81, "fn": "Router.getRouterImplementation", "offset": [ 9285, 9344 ], "op": "DUP1", "path": "24" }, "2742": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9426 ], "op": "PUSH2", "path": "24", "value": "0xACF" }, "2745": { "branch": 81, "fn": "Router.getRouterImplementation", "offset": [ 9285, 9426 ], "op": "JUMPI", "path": "24" }, "2746": { "op": "POP" }, "2747": { "op": "PUSH1", "value": "0x1" }, "2749": { "op": "PUSH1", "value": "0x1" }, "2751": { "op": "PUSH1", "value": "0xE0" }, "2753": { "op": "SHL" }, "2754": { "op": "SUB" }, "2755": { "op": "NOT" }, "2756": { "fn": "Router.getRouterImplementation", "offset": [ 9360, 9426 ], "op": "DUP3", "path": "24" }, "2757": { "fn": "Router.getRouterImplementation", "offset": [ 9360, 9426 ], "op": "AND", "path": "24" }, "2758": { "op": "PUSH4", "value": "0x8355E895" }, "2763": { "op": "PUSH1", "value": "0xE0" }, "2765": { "op": "SHL" }, "2766": { "branch": 82, "fn": "Router.getRouterImplementation", "offset": [ 9360, 9426 ], "op": "EQ", "path": "24" }, "2767": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9426 ], "op": "JUMPDEST", "path": "24" }, "2768": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9508 ], "op": "DUP1", "path": "24" }, "2769": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9508 ], "op": "PUSH2", "path": "24", "value": "0xAEA" }, "2772": { "branch": 82, "fn": "Router.getRouterImplementation", "offset": [ 9285, 9508 ], "op": "JUMPI", "path": "24" }, "2773": { "op": "POP" }, "2774": { "op": "PUSH1", "value": "0x1" }, "2776": { "op": "PUSH1", "value": "0x1" }, "2778": { "op": "PUSH1", "value": "0xE0" }, "2780": { "op": "SHL" }, "2781": { "op": "SUB" }, "2782": { "op": "NOT" }, "2783": { "fn": "Router.getRouterImplementation", "offset": [ 9442, 9508 ], "op": "DUP3", "path": "24" }, "2784": { "fn": "Router.getRouterImplementation", "offset": [ 9442, 9508 ], "op": "AND", "path": "24" }, "2785": { "op": "PUSH4", "value": "0x94614DF" }, "2790": { "op": "PUSH1", "value": "0xE0" }, "2792": { "op": "SHL" }, "2793": { "branch": 83, "fn": "Router.getRouterImplementation", "offset": [ 9442, 9508 ], "op": "EQ", "path": "24" }, "2794": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9508 ], "op": "JUMPDEST", "path": "24" }, "2795": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9589 ], "op": "DUP1", "path": "24" }, "2796": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9589 ], "op": "PUSH2", "path": "24", "value": "0xB05" }, "2799": { "branch": 83, "fn": "Router.getRouterImplementation", "offset": [ 9285, 9589 ], "op": "JUMPI", "path": "24" }, "2800": { "op": "POP" }, "2801": { "op": "PUSH1", "value": "0x1" }, "2803": { "op": "PUSH1", "value": "0x1" }, "2805": { "op": "PUSH1", "value": "0xE0" }, "2807": { "op": "SHL" }, "2808": { "op": "SUB" }, "2809": { "op": "NOT" }, "2810": { "fn": "Router.getRouterImplementation", "offset": [ 9524, 9589 ], "op": "DUP3", "path": "24" }, "2811": { "fn": "Router.getRouterImplementation", "offset": [ 9524, 9589 ], "op": "AND", "path": "24" }, "2812": { "op": "PUSH4", "value": "0x4BEB6D97" }, "2817": { "op": "PUSH1", "value": "0xE1" }, "2819": { "op": "SHL" }, "2820": { "branch": 84, "fn": "Router.getRouterImplementation", "offset": [ 9524, 9589 ], "op": "EQ", "path": "24" }, "2821": { "fn": "Router.getRouterImplementation", "offset": [ 9285, 9589 ], "op": "JUMPDEST", "path": "24" }, "2822": { "fn": "Router.getRouterImplementation", "offset": [ 9268, 9819 ], "op": "ISZERO", "path": "24" }, "2823": { "fn": "Router.getRouterImplementation", "offset": [ 9268, 9819 ], "op": "PUSH2", "path": "24", "value": "0xB31" }, "2826": { "branch": 84, "fn": "Router.getRouterImplementation", "offset": [ 9268, 9819 ], "op": "JUMPI", "path": "24" }, "2827": { "op": "POP" }, "2828": { "fn": "Router.getRouterImplementation", "offset": [ 9621, 9638 ], "op": "PUSH32", "path": "24", "statement": 10, "value": "0x0" }, "2861": { "fn": "Router.getRouterImplementation", "offset": [ 9614, 9638 ], "op": "PUSH2", "path": "24", "value": "0xB54" }, "2864": { "fn": "Router.getRouterImplementation", "offset": [ 9614, 9638 ], "op": "JUMP", "path": "24" }, "2865": { "fn": "Router.getRouterImplementation", "offset": [ 9268, 9819 ], "op": "JUMPDEST", "path": "24" }, "2866": { "op": "POP" }, "2867": { "fn": "Router.getRouterImplementation", "offset": [ 9803, 9808 ], "op": "PUSH32", "path": "24", "statement": 11, "value": "0x0" }, "2900": { "fn": "Router.getRouterImplementation", "offset": [ 9268, 9819 ], "op": "JUMPDEST", "path": "24" }, "2901": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "SWAP2", "path": "24" }, "2902": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "SWAP1", "path": "24" }, "2903": { "fn": "Router.getRouterImplementation", "offset": [ 4310, 9825 ], "op": "POP", "path": "24" }, "2904": { "fn": "Router.getRouterImplementation", "jump": "o", "offset": [ 4310, 9825 ], "op": "JUMP", "path": "24" }, "2905": { "fn": "Router._delegate", "offset": [ 10005, 10975 ], "op": "JUMPDEST", "path": "24" }, "2906": { "fn": "Router._delegate", "offset": [ 10390, 10404 ], "op": "CALLDATASIZE", "path": "24" }, "2907": { "fn": "Router._delegate", "offset": [ 10387, 10388 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "2909": { "fn": "Router._delegate", "offset": [ 10384, 10385 ], "op": "DUP1", "path": "24" }, "2910": { "fn": "Router._delegate", "offset": [ 10371, 10405 ], "op": "CALLDATACOPY", "path": "24" }, "2911": { "fn": "Router._delegate", "offset": [ 10604, 10605 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "2913": { "fn": "Router._delegate", "offset": [ 10601, 10602 ], "op": "DUP1", "path": "24" }, "2914": { "fn": "Router._delegate", "offset": [ 10585, 10599 ], "op": "CALLDATASIZE", "path": "24" }, "2915": { "fn": "Router._delegate", "offset": [ 10582, 10583 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "2917": { "fn": "Router._delegate", "offset": [ 10566, 10580 ], "op": "DUP5", "path": "24" }, "2918": { "fn": "Router._delegate", "offset": [ 10559, 10564 ], "op": "GAS", "path": "24" }, "2919": { "fn": "Router._delegate", "offset": [ 10546, 10606 ], "op": "DELEGATECALL", "path": "24" }, "2920": { "fn": "Router._delegate", "offset": [ 10680, 10696 ], "op": "RETURNDATASIZE", "path": "24" }, "2921": { "fn": "Router._delegate", "offset": [ 10677, 10678 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "2923": { "fn": "Router._delegate", "offset": [ 10674, 10675 ], "op": "DUP1", "path": "24" }, "2924": { "fn": "Router._delegate", "offset": [ 10659, 10697 ], "op": "RETURNDATACOPY", "path": "24" }, "2925": { "fn": "Router._delegate", "offset": [ 10718, 10724 ], "op": "DUP1", "path": "24" }, "2926": { "fn": "Router._delegate", "offset": [ 10793, 10867 ], "op": "DUP1", "path": "24" }, "2927": { "fn": "Router._delegate", "offset": [ 10793, 10867 ], "op": "ISZERO", "path": "24" }, "2928": { "fn": "Router._delegate", "offset": [ 10793, 10867 ], "op": "PUSH2", "path": "24", "value": "0xB78" }, "2931": { "fn": "Router._delegate", "offset": [ 10793, 10867 ], "op": "JUMPI", "path": "24" }, "2932": { "fn": "Router._delegate", "offset": [ 10924, 10940 ], "op": "RETURNDATASIZE", "path": "24" }, "2933": { "fn": "Router._delegate", "offset": [ 10921, 10922 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "2935": { "fn": "Router._delegate", "offset": [ 10914, 10941 ], "op": "RETURN", "path": "24" }, "2936": { "fn": "Router._delegate", "offset": [ 10793, 10867 ], "op": "JUMPDEST", "path": "24" }, "2937": { "fn": "Router._delegate", "offset": [ 10832, 10848 ], "op": "RETURNDATASIZE", "path": "24" }, "2938": { "fn": "Router._delegate", "offset": [ 10829, 10830 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "2940": { "fn": "Router._delegate", "offset": [ 10822, 10849 ], "op": "REVERT", "path": "24" }, "2941": { "offset": [ 1216, 1246 ], "op": "JUMPDEST", "path": "24" }, "2942": { "fn": "Router._delegate", "offset": [ 1216, 1246 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "2975": { "fn": "Router._delegate", "offset": [ 1216, 1246 ], "op": "DUP2", "path": "24" }, "2976": { "fn": "Router._delegate", "jump": "o", "offset": [ 1216, 1246 ], "op": "JUMP", "path": "24" }, "2977": { "offset": [ 1175, 1210 ], "op": "JUMPDEST", "path": "24" }, "2978": { "fn": "Router._delegate", "offset": [ 1175, 1210 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3011": { "fn": "Router._delegate", "offset": [ 1175, 1210 ], "op": "DUP2", "path": "24" }, "3012": { "fn": "Router._delegate", "jump": "o", "offset": [ 1175, 1210 ], "op": "JUMP", "path": "24" }, "3013": { "offset": [ 1300, 1339 ], "op": "JUMPDEST", "path": "24" }, "3014": { "fn": "Router._delegate", "offset": [ 1300, 1339 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3047": { "fn": "Router._delegate", "offset": [ 1300, 1339 ], "op": "DUP2", "path": "24" }, "3048": { "fn": "Router._delegate", "jump": "o", "offset": [ 1300, 1339 ], "op": "JUMP", "path": "24" }, "3049": { "offset": [ 1520, 1560 ], "op": "JUMPDEST", "path": "24" }, "3050": { "fn": "Router._delegate", "offset": [ 1520, 1560 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3083": { "fn": "Router._delegate", "offset": [ 1520, 1560 ], "op": "DUP2", "path": "24" }, "3084": { "fn": "Router._delegate", "jump": "o", "offset": [ 1520, 1560 ], "op": "JUMP", "path": "24" }, "3085": { "offset": [ 1035, 1063 ], "op": "JUMPDEST", "path": "63" }, "3086": { "fn": "Router._delegate", "offset": [ 1035, 1063 ], "op": "PUSH1", "path": "63", "value": "0x2" }, "3088": { "fn": "Router._delegate", "offset": [ 1035, 1063 ], "op": "SLOAD", "path": "63" }, "3089": { "op": "PUSH1", "value": "0x1" }, "3091": { "op": "PUSH1", "value": "0x1" }, "3093": { "op": "PUSH1", "value": "0xA0" }, "3095": { "op": "SHL" }, "3096": { "op": "SUB" }, "3097": { "offset": [ 1035, 1063 ], "op": "AND", "path": "63" }, "3098": { "fn": "Router._delegate", "offset": [ 1035, 1063 ], "op": "DUP2", "path": "63" }, "3099": { "fn": "Router._delegate", "jump": "o", "offset": [ 1035, 1063 ], "op": "JUMP", "path": "63" }, "3100": { "offset": [ 1471, 1514 ], "op": "JUMPDEST", "path": "24" }, "3101": { "fn": "Router._delegate", "offset": [ 1471, 1514 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3134": { "fn": "Router._delegate", "offset": [ 1471, 1514 ], "op": "DUP2", "path": "24" }, "3135": { "fn": "Router._delegate", "jump": "o", "offset": [ 1471, 1514 ], "op": "JUMP", "path": "24" }, "3136": { "offset": [ 1433, 1465 ], "op": "JUMPDEST", "path": "24" }, "3137": { "fn": "Router._delegate", "offset": [ 1433, 1465 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3170": { "fn": "Router._delegate", "offset": [ 1433, 1465 ], "op": "DUP2", "path": "24" }, "3171": { "fn": "Router._delegate", "jump": "o", "offset": [ 1433, 1465 ], "op": "JUMP", "path": "24" }, "3172": { "offset": [ 1601, 1634 ], "op": "JUMPDEST", "path": "24" }, "3173": { "fn": "Router._delegate", "offset": [ 1601, 1634 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3206": { "fn": "Router._delegate", "offset": [ 1601, 1634 ], "op": "DUP2", "path": "24" }, "3207": { "fn": "Router._delegate", "jump": "o", "offset": [ 1601, 1634 ], "op": "JUMP", "path": "24" }, "3208": { "offset": [ 1388, 1427 ], "op": "JUMPDEST", "path": "24" }, "3209": { "fn": "Router._delegate", "offset": [ 1388, 1427 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3242": { "fn": "Router._delegate", "offset": [ 1388, 1427 ], "op": "DUP2", "path": "24" }, "3243": { "fn": "Router._delegate", "jump": "o", "offset": [ 1388, 1427 ], "op": "JUMP", "path": "24" }, "3244": { "offset": [ 1345, 1382 ], "op": "JUMPDEST", "path": "24" }, "3245": { "fn": "Router._delegate", "offset": [ 1345, 1382 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3278": { "fn": "Router._delegate", "offset": [ 1345, 1382 ], "op": "DUP2", "path": "24" }, "3279": { "fn": "Router._delegate", "jump": "o", "offset": [ 1345, 1382 ], "op": "JUMP", "path": "24" }, "3280": { "offset": [ 1640, 1682 ], "op": "JUMPDEST", "path": "24" }, "3281": { "fn": "Router._delegate", "offset": [ 1640, 1682 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3314": { "fn": "Router._delegate", "offset": [ 1640, 1682 ], "op": "DUP2", "path": "24" }, "3315": { "fn": "Router._delegate", "jump": "o", "offset": [ 1640, 1682 ], "op": "JUMP", "path": "24" }, "3316": { "offset": [ 920, 946 ], "op": "JUMPDEST", "path": "63" }, "3317": { "fn": "Router._delegate", "offset": [ 920, 946 ], "op": "PUSH1", "path": "63", "value": "0x1" }, "3319": { "fn": "Router._delegate", "offset": [ 920, 946 ], "op": "SLOAD", "path": "63" }, "3320": { "op": "PUSH1", "value": "0x1" }, "3322": { "op": "PUSH1", "value": "0x1" }, "3324": { "op": "PUSH1", "value": "0xA0" }, "3326": { "op": "SHL" }, "3327": { "op": "SUB" }, "3328": { "offset": [ 920, 946 ], "op": "AND", "path": "63" }, "3329": { "fn": "Router._delegate", "offset": [ 920, 946 ], "op": "DUP2", "path": "63" }, "3330": { "fn": "Router._delegate", "jump": "o", "offset": [ 920, 946 ], "op": "JUMP", "path": "63" }, "3331": { "offset": [ 811, 831 ], "op": "JUMPDEST", "path": "63" }, "3332": { "fn": "Router._delegate", "offset": [ 811, 831 ], "op": "PUSH1", "path": "63", "value": "0x0" }, "3334": { "fn": "Router._delegate", "offset": [ 811, 831 ], "op": "SLOAD", "path": "63" }, "3335": { "fn": "Router._delegate", "offset": [ 811, 831 ], "op": "PUSH5", "path": "63", "value": "0x100000000" }, "3341": { "fn": "Router._delegate", "offset": [ 811, 831 ], "op": "SWAP1", "path": "63" }, "3342": { "fn": "Router._delegate", "offset": [ 811, 831 ], "op": "DIV", "path": "63" }, "3343": { "op": "PUSH1", "value": "0x1" }, "3345": { "op": "PUSH1", "value": "0x1" }, "3347": { "op": "PUSH1", "value": "0xA0" }, "3349": { "op": "SHL" }, "3350": { "op": "SUB" }, "3351": { "offset": [ 811, 831 ], "op": "AND", "path": "63" }, "3352": { "fn": "Router._delegate", "offset": [ 811, 831 ], "op": "DUP2", "path": "63" }, "3353": { "fn": "Router._delegate", "jump": "o", "offset": [ 811, 831 ], "op": "JUMP", "path": "63" }, "3354": { "offset": [ 1566, 1595 ], "op": "JUMPDEST", "path": "24" }, "3355": { "fn": "Router._delegate", "offset": [ 1566, 1595 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3388": { "fn": "Router._delegate", "offset": [ 1566, 1595 ], "op": "DUP2", "path": "24" }, "3389": { "fn": "Router._delegate", "jump": "o", "offset": [ 1566, 1595 ], "op": "JUMP", "path": "24" }, "3390": { "fn": "Router.initialize", "offset": [ 2718, 4144 ], "op": "JUMPDEST", "path": "24" }, "3391": { "fn": "Router.initialize", "offset": [ 2880, 2890 ], "op": "CALLER", "path": "24", "statement": 12 }, "3392": { "op": "PUSH1", "value": "0x1" }, "3394": { "op": "PUSH1", "value": "0x1" }, "3396": { "op": "PUSH1", "value": "0xA0" }, "3398": { "op": "SHL" }, "3399": { "op": "SUB" }, "3400": { "fn": "Router.initialize", "offset": [ 2894, 2902 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3433": { "fn": "Router.initialize", "offset": [ 2880, 2902 ], "op": "AND", "path": "24" }, "3434": { "branch": 85, "fn": "Router.initialize", "offset": [ 2880, 2902 ], "op": "EQ", "path": "24" }, "3435": { "fn": "Router.initialize", "offset": [ 2880, 2921 ], "op": "DUP1", "path": "24" }, "3436": { "fn": "Router.initialize", "offset": [ 2880, 2921 ], "op": "ISZERO", "path": "24" }, "3437": { "fn": "Router.initialize", "offset": [ 2880, 2921 ], "op": "PUSH2", "path": "24", "value": "0xD80" }, "3440": { "branch": 85, "fn": "Router.initialize", "offset": [ 2880, 2921 ], "op": "JUMPI", "path": "24" }, "3441": { "op": "POP" }, "3442": { "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "3444": { "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "SLOAD", "path": "24" }, "3445": { "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "PUSH4", "path": "24", "value": "0x1000000" }, "3450": { "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "SWAP1", "path": "24" }, "3451": { "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "DIV", "path": "24" }, "3452": { "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "PUSH1", "path": "24", "value": "0xFF" }, "3454": { "branch": 86, "fn": "Router.initialize", "offset": [ 2907, 2921 ], "op": "AND", "path": "24" }, "3455": { "fn": "Router.initialize", "offset": [ 2906, 2921 ], "op": "ISZERO", "path": "24" }, "3456": { "fn": "Router.initialize", "offset": [ 2880, 2921 ], "op": "JUMPDEST", "path": "24" }, "3457": { "fn": "Router.initialize", "offset": [ 2872, 2922 ], "op": "PUSH2", "path": "24", "value": "0xD89" }, "3460": { "branch": 86, "fn": "Router.initialize", "offset": [ 2872, 2922 ], "op": "JUMPI", "path": "24" }, "3461": { "fn": "Router.initialize", "offset": [ 2872, 2922 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "3463": { "fn": "Router.initialize", "offset": [ 2872, 2922 ], "op": "DUP1", "path": "24" }, "3464": { "fn": "Router.initialize", "offset": [ 2872, 2922 ], "op": "REVERT", "path": "24" }, "3465": { "fn": "Router.initialize", "offset": [ 2872, 2922 ], "op": "JUMPDEST", "path": "24" }, "3466": { "fn": "Router.initialize", "offset": [ 3056, 3061 ], "op": "PUSH1", "path": "24", "statement": 13, "value": "0x0" }, "3468": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "DUP1", "path": "24" }, "3469": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "SLOAD", "path": "24" }, "3470": { "op": "PUSH5", "value": "0x100000000" }, "3476": { "op": "PUSH1", "value": "0x1" }, "3478": { "op": "PUSH1", "value": "0xC0" }, "3480": { "op": "SHL" }, "3481": { "op": "SUB" }, "3482": { "op": "NOT" }, "3483": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "AND", "path": "24" }, "3484": { "fn": "Router.initialize", "offset": [ 3064, 3074 ], "op": "CALLER", "path": "24" }, "3485": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "PUSH5", "path": "24", "value": "0x100000000" }, "3491": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "MUL", "path": "24" }, "3492": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "OR", "path": "24" }, "3493": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "DUP2", "path": "24" }, "3494": { "fn": "Router.initialize", "offset": [ 3056, 3074 ], "op": "SSTORE", "path": "24" }, "3495": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3497": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP1", "path": "24" }, "3498": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MLOAD", "path": "24" }, "3499": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "PUSH1", "path": "24", "value": "0xA0" }, "3501": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP2", "path": "24" }, "3502": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "ADD", "path": "24" }, "3503": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP3", "path": "24" }, "3504": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MSTORE", "path": "24" }, "3505": { "op": "PUSH1", "value": "0x1" }, "3507": { "op": "PUSH1", "value": "0x1" }, "3509": { "op": "PUSH1", "value": "0xA0" }, "3511": { "op": "SHL" }, "3512": { "op": "SUB" }, "3513": { "fn": "Router.initialize", "offset": [ 3445, 3449 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3546": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP2", "path": "24" }, "3547": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "AND", "path": "24" }, "3548": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP3", "path": "24" }, "3549": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MSTORE", "path": "24" }, "3550": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "PUSH1", "path": "24", "value": "0x20" }, "3552": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP3", "path": "24" }, "3553": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "ADD", "path": "24" }, "3554": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP5", "path": "24" }, "3555": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP1", "path": "24" }, "3556": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MSTORE", "path": "24" }, "3557": { "fn": "Router.initialize", "offset": [ 3284, 3294 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3590": { "fn": "Router.initialize", "offset": [ 3276, 3308 ], "op": "AND", "path": "24" }, "3591": { "fn": "Router.initialize", "offset": [ 3276, 3308 ], "op": "SWAP2", "path": "24" }, "3592": { "op": "PUSH4", "value": "0x7ABAF271" }, "3597": { "op": "PUSH1", "value": "0xE1" }, "3599": { "op": "SHL" }, "3600": { "fn": "Router.initialize", "offset": [ 3370, 3410 ], "op": "SWAP2", "path": "24" }, "3601": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP1", "path": "24" }, "3602": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP2", "path": "24" }, "3603": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "ADD", "path": "24" }, "3604": { "fn": "Router.initialize", "offset": [ 3458, 3472 ], "op": "PUSH1", "path": "24", "value": "0x2" }, "3606": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP2", "path": "24" }, "3607": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MSTORE", "path": "24" }, "3608": { "offset": [ 217, 218 ], "op": "PUSH1", "path": "60", "value": "0x8" }, "3610": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "PUSH1", "path": "24", "value": "0x20" }, "3612": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP1", "path": "24" }, "3613": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP4", "path": "24" }, "3614": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "ADD", "path": "24" }, "3615": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP2", "path": "24" }, "3616": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP1", "path": "24" }, "3617": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP2", "path": "24" }, "3618": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MSTORE", "path": "24" }, "3619": { "op": "PUSH1", "value": "0x0" }, "3621": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3623": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP3", "path": "24" }, "3624": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP4", "path": "24" }, "3625": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "ADD", "path": "24" }, "3626": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "DUP2", "path": "24" }, "3627": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "SWAP1", "path": "24" }, "3628": { "fn": "Router.initialize", "offset": [ 3432, 3507 ], "op": "MSTORE", "path": "24" }, "3629": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP3", "path": "24" }, "3630": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MLOAD", "path": "24" }, "3631": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "PUSH1", "path": "24", "value": "0xA0" }, "3633": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP2", "path": "24" }, "3634": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "ADD", "path": "24" }, "3635": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP5", "path": "24" }, "3636": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MSTORE", "path": "24" }, "3637": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP2", "path": "24" }, "3638": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP2", "path": "24" }, "3639": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MSTORE", "path": "24" }, "3640": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "SWAP2", "path": "24" }, "3641": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP3", "path": "24" }, "3642": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "ADD", "path": "24" }, "3643": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MSTORE", "path": "24" }, "3644": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "SWAP1", "path": "24" }, "3645": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP2", "path": "24" }, "3646": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "ADD", "path": "24" }, "3647": { "fn": "Router.initialize", "offset": [ 3611, 3626 ], "op": "PUSH1", "path": "24", "value": "0x3" }, "3649": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP2", "path": "24" }, "3650": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MSTORE", "path": "24" }, "3651": { "offset": [ 659, 661 ], "op": "PUSH1", "path": "60", "value": "0x12" }, "3653": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "PUSH1", "path": "24", "value": "0x20" }, "3655": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP3", "path": "24" }, "3656": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "ADD", "path": "24" }, "3657": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MSTORE", "path": "24" }, "3658": { "op": "PUSH1", "value": "0x0" }, "3660": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3662": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "SWAP2", "path": "24" }, "3663": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP3", "path": "24" }, "3664": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "ADD", "path": "24" }, "3665": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "DUP2", "path": "24" }, "3666": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "SWAP1", "path": "24" }, "3667": { "fn": "Router.initialize", "offset": [ 3579, 3660 ], "op": "MSTORE", "path": "24" }, "3668": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP1", "path": "24" }, "3669": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "MLOAD", "path": "24" }, "3670": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "PUSH2", "path": "24", "value": "0xE6F" }, "3673": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP4", "path": "24" }, "3674": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP3", "path": "24" }, "3675": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP2", "path": "24" }, "3676": { "op": "SWAP1" }, "3677": { "op": "DUP2" }, "3678": { "op": "SWAP1" }, "3679": { "fn": "Router.initialize", "offset": [ 3741, 3744 ], "op": "PUSH1", "path": "24", "value": "0x85" }, "3681": { "fn": "Router.initialize", "offset": [ 3741, 3744 ], "op": "SWAP1", "path": "24" }, "3682": { "fn": "Router.initialize", "offset": [ 3801, 3803 ], "op": "PUSH1", "path": "24", "value": "0x4B" }, "3684": { "fn": "Router.initialize", "offset": [ 3801, 3803 ], "op": "SWAP1", "path": "24" }, "3685": { "fn": "Router.initialize", "offset": [ 3841, 3844 ], "op": "PUSH1", "path": "24", "value": "0x6C" }, "3687": { "fn": "Router.initialize", "offset": [ 3841, 3844 ], "op": "SWAP1", "path": "24" }, "3688": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "PUSH1", "path": "24", "value": "0x24" }, "3690": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "ADD", "path": "24" }, "3691": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "PUSH2", "path": "24", "value": "0x1093" }, "3694": { "fn": "Router.initialize", "jump": "i", "offset": [ 3326, 3890 ], "op": "JUMP", "path": "24" }, "3695": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "JUMPDEST", "path": "24" }, "3696": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3698": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP1", "path": "24" }, "3699": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "MLOAD", "path": "24" }, "3700": { "op": "PUSH1", "value": "0x1F" }, "3702": { "op": "NOT" }, "3703": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP2", "path": "24" }, "3704": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP5", "path": "24" }, "3705": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SUB", "path": "24" }, "3706": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "ADD", "path": "24" }, "3707": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP2", "path": "24" }, "3708": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "MSTORE", "path": "24" }, "3709": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP2", "path": "24" }, "3710": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP2", "path": "24" }, "3711": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "MSTORE", "path": "24" }, "3712": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "PUSH1", "path": "24", "value": "0x20" }, "3714": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP3", "path": "24" }, "3715": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "ADD", "path": "24" }, "3716": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "DUP1", "path": "24" }, "3717": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "MLOAD", "path": "24" }, "3718": { "op": "PUSH1", "value": "0x1" }, "3720": { "op": "PUSH1", "value": "0x1" }, "3722": { "op": "PUSH1", "value": "0xE0" }, "3724": { "op": "SHL" }, "3725": { "op": "SUB" }, "3726": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "AND", "path": "24" }, "3727": { "op": "PUSH1", "value": "0x1" }, "3729": { "op": "PUSH1", "value": "0x1" }, "3731": { "op": "PUSH1", "value": "0xE0" }, "3733": { "op": "SHL" }, "3734": { "op": "SUB" }, "3735": { "op": "NOT" }, "3736": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP1", "path": "24" }, "3737": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP5", "path": "24" }, "3738": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "AND", "path": "24" }, "3739": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP4", "path": "24" }, "3740": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP1", "path": "24" }, "3741": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP4", "path": "24" }, "3742": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "OR", "path": "24" }, "3743": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP1", "path": "24" }, "3744": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP3", "path": "24" }, "3745": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "MSTORE", "path": "24" }, "3746": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "SWAP1", "path": "24" }, "3747": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "MLOAD", "path": "24" }, "3748": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH2", "path": "24", "value": "0xEAD" }, "3751": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "SWAP2", "path": "24" }, "3752": { "fn": "Router.initialize", "offset": [ 3326, 3890 ], "op": "SWAP1", "path": "24" }, "3753": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH2", "path": "24", "value": "0x1046" }, "3756": { "fn": "Router.initialize", "jump": "i", "offset": [ 3276, 3904 ], "op": "JUMP", "path": "24" }, "3757": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "JUMPDEST", "path": "24" }, "3758": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "3760": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3762": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "MLOAD", "path": "24" }, "3763": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP1", "path": "24" }, "3764": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP4", "path": "24" }, "3765": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "SUB", "path": "24" }, "3766": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP2", "path": "24" }, "3767": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP6", "path": "24" }, "3768": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "GAS", "path": "24" }, "3769": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DELEGATECALL", "path": "24" }, "3770": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "SWAP2", "path": "24" }, "3771": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "POP", "path": "24" }, "3772": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "POP", "path": "24" }, "3773": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "RETURNDATASIZE", "path": "24" }, "3774": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP1", "path": "24" }, "3775": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "3777": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP2", "path": "24" }, "3778": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "EQ", "path": "24" }, "3779": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH2", "path": "24", "value": "0xEE8" }, "3782": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "JUMPI", "path": "24" }, "3783": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3785": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "MLOAD", "path": "24" }, "3786": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "SWAP2", "path": "24" }, "3787": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "POP", "path": "24" }, "3788": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x1F" }, "3790": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "NOT", "path": "24" }, "3791": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x3F" }, "3793": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "RETURNDATASIZE", "path": "24" }, "3794": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "ADD", "path": "24" }, "3795": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "AND", "path": "24" }, "3796": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP3", "path": "24" }, "3797": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "ADD", "path": "24" }, "3798": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x40" }, "3800": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "MSTORE", "path": "24" }, "3801": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "RETURNDATASIZE", "path": "24" }, "3802": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP3", "path": "24" }, "3803": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "MSTORE", "path": "24" }, "3804": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "RETURNDATASIZE", "path": "24" }, "3805": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "3807": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x20" }, "3809": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "DUP5", "path": "24" }, "3810": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "ADD", "path": "24" }, "3811": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "RETURNDATACOPY", "path": "24" }, "3812": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH2", "path": "24", "value": "0xEED" }, "3815": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "JUMP", "path": "24" }, "3816": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "JUMPDEST", "path": "24" }, "3817": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "PUSH1", "path": "24", "value": "0x60" }, "3819": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "SWAP2", "path": "24" }, "3820": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "POP", "path": "24" }, "3821": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "JUMPDEST", "path": "24" }, "3822": { "fn": "Router.initialize", "offset": [ 3276, 3904 ], "op": "POP", "path": "24" }, "3823": { "fn": "Router.initialize", "offset": [ 3246, 3904 ], "op": "POP", "path": "24" }, "3824": { "fn": "Router.initialize", "offset": [ 3246, 3904 ], "op": "SWAP1", "path": "24" }, "3825": { "fn": "Router.initialize", "offset": [ 3246, 3904 ], "op": "POP", "path": "24" }, "3826": { "branch": 87, "fn": "Router.initialize", "offset": [ 3922, 3928 ], "op": "DUP1", "path": "24", "statement": 14 }, "3827": { "fn": "Router.initialize", "offset": [ 3914, 3929 ], "op": "PUSH2", "path": "24", "value": "0xEFB" }, "3830": { "branch": 87, "fn": "Router.initialize", "offset": [ 3914, 3929 ], "op": "JUMPI", "path": "24" }, "3831": { "fn": "Router.initialize", "offset": [ 3914, 3929 ], "op": "PUSH1", "path": "24", "value": "0x0" }, "3833": { "fn": "Router.initialize", "offset": [ 3914, 3929 ], "op": "DUP1", "path": "24" }, "3834": { "fn": "Router.initialize", "offset": [ 3914, 3929 ], "op": "REVERT", "path": "24" }, "3835": { "fn": "Router.initialize", "offset": [ 3914, 3929 ], "op": "JUMPDEST", "path": "24" }, "3836": { "op": "POP" }, "3837": { "fn": "Router.initialize", "offset": [ 3940, 3945 ], "op": "PUSH1", "path": "24", "statement": 15, "value": "0x0" }, "3839": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "DUP1", "path": "24" }, "3840": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "SLOAD", "path": "24" }, "3841": { "op": "PUSH1", "value": "0x1" }, "3843": { "op": "PUSH1", "value": "0x1" }, "3845": { "op": "PUSH1", "value": "0xA0" }, "3847": { "op": "SHL" }, "3848": { "op": "SUB" }, "3849": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "SWAP5", "path": "24" }, "3850": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "DUP6", "path": "24" }, "3851": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "AND", "path": "24" }, "3852": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "PUSH5", "path": "24", "value": "0x100000000" }, "3858": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "MUL", "path": "24" }, "3859": { "op": "PUSH5", "value": "0x100000000" }, "3865": { "op": "PUSH1", "value": "0x1" }, "3867": { "op": "PUSH1", "value": "0xC0" }, "3869": { "op": "SHL" }, "3870": { "op": "SUB" }, "3871": { "op": "NOT" }, "3872": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "SWAP1", "path": "24" }, "3873": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "SWAP2", "path": "24" }, "3874": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "AND", "path": "24" }, "3875": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "OR", "path": "24" }, "3876": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "SWAP1", "path": "24" }, "3877": { "fn": "Router.initialize", "offset": [ 3940, 3954 ], "op": "SSTORE", "path": "24" }, "3878": { "op": "PUSH1", "value": "0x1" }, "3880": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "DUP1", "path": "24", "statement": 16 }, "3881": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "SLOAD", "path": "24" }, "3882": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "SWAP3", "path": "24" }, "3883": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "DUP5", "path": "24" }, "3884": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "AND", "path": "24" }, "3885": { "op": "PUSH1", "value": "0x1" }, "3887": { "op": "PUSH1", "value": "0x1" }, "3889": { "op": "PUSH1", "value": "0xA0" }, "3891": { "op": "SHL" }, "3892": { "op": "SUB" }, "3893": { "op": "NOT" }, "3894": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "SWAP4", "path": "24" }, "3895": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "DUP5", "path": "24" }, "3896": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "AND", "path": "24" }, "3897": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "OR", "path": "24" }, "3898": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "SWAP1", "path": "24" }, "3899": { "fn": "Router.initialize", "offset": [ 4038, 4064 ], "op": "SSTORE", "path": "24" }, "3900": { "fn": "Router.initialize", "offset": [ 4074, 4087 ], "op": "PUSH1", "path": "24", "statement": 17, "value": "0x2" }, "3902": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "DUP1", "path": "24" }, "3903": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SLOAD", "path": "24" }, "3904": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SWAP2", "path": "24" }, "3905": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SWAP1", "path": "24" }, "3906": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SWAP4", "path": "24" }, "3907": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "AND", "path": "24" }, "3908": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SWAP2", "path": "24" }, "3909": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "AND", "path": "24" }, "3910": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "OR", "path": "24" }, "3911": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SWAP1", "path": "24" }, "3912": { "fn": "Router.initialize", "offset": [ 4074, 4104 ], "op": "SSTORE", "path": "24" }, "3913": { "fn": "Router.initialize", "jump": "o", "offset": [ 2718, 4144 ], "op": "JUMP", "path": "24" }, "3914": { "offset": [ 1252, 1294 ], "op": "JUMPDEST", "path": "24" }, "3915": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "PUSH32", "path": "24", "value": "0x0" }, "3948": { "fn": "Router.initialize", "offset": [ 1252, 1294 ], "op": "DUP2", "path": "24" }, "3949": { "fn": "Router.initialize", "jump": "o", "offset": [ 1252, 1294 ], "op": "JUMP", "path": "24" }, "3950": { "op": "JUMPDEST" }, "3951": { "op": "DUP1" }, "3952": { "op": "CALLDATALOAD" }, "3953": { "op": "PUSH1", "value": "0x1" }, "3955": { "op": "PUSH1", "value": "0x1" }, "3957": { "op": "PUSH1", "value": "0xA0" }, "3959": { "op": "SHL" }, "3960": { "op": "SUB" }, "3961": { "op": "DUP2" }, "3962": { "op": "AND" }, "3963": { "op": "DUP2" }, "3964": { "op": "EQ" }, "3965": { "op": "PUSH2", "value": "0xB54" }, "3968": { "op": "JUMPI" }, "3969": { "op": "PUSH1", "value": "0x0" }, "3971": { "op": "DUP1" }, "3972": { "op": "REVERT" }, "3973": { "op": "JUMPDEST" }, "3974": { "op": "PUSH1", "value": "0x0" }, "3976": { "op": "DUP1" }, "3977": { "op": "PUSH1", "value": "0x0" }, "3979": { "op": "PUSH1", "value": "0x60" }, "3981": { "op": "DUP5" }, "3982": { "op": "DUP7" }, "3983": { "op": "SUB" }, "3984": { "op": "SLT" }, "3985": { "op": "ISZERO" }, "3986": { "op": "PUSH2", "value": "0xF99" }, "3989": { "op": "JUMPI" }, "3990": { "op": "DUP3" }, "3991": { "op": "DUP4" }, "3992": { "op": "REVERT" }, "3993": { "op": "JUMPDEST" }, "3994": { "op": "PUSH2", "value": "0xFA2" }, "3997": { "op": "DUP5" }, "3998": { "op": "PUSH2", "value": "0xF6E" }, "4001": { "jump": "i", "op": "JUMP" }, "4002": { "op": "JUMPDEST" }, "4003": { "op": "SWAP3" }, "4004": { "op": "POP" }, "4005": { "op": "PUSH2", "value": "0xFB0" }, "4008": { "op": "PUSH1", "value": "0x20" }, "4010": { "op": "DUP6" }, "4011": { "op": "ADD" }, "4012": { "op": "PUSH2", "value": "0xF6E" }, "4015": { "jump": "i", "op": "JUMP" }, "4016": { "op": "JUMPDEST" }, "4017": { "op": "SWAP2" }, "4018": { "op": "POP" }, "4019": { "op": "PUSH2", "value": "0xFBE" }, "4022": { "op": "PUSH1", "value": "0x40" }, "4024": { "op": "DUP6" }, "4025": { "op": "ADD" }, "4026": { "op": "PUSH2", "value": "0xF6E" }, "4029": { "jump": "i", "op": "JUMP" }, "4030": { "op": "JUMPDEST" }, "4031": { "op": "SWAP1" }, "4032": { "op": "POP" }, "4033": { "op": "SWAP3" }, "4034": { "op": "POP" }, "4035": { "op": "SWAP3" }, "4036": { "op": "POP" }, "4037": { "op": "SWAP3" }, "4038": { "jump": "o", "op": "JUMP" }, "4039": { "op": "JUMPDEST" }, "4040": { "op": "PUSH1", "value": "0x0" }, "4042": { "op": "PUSH1", "value": "0x20" }, "4044": { "op": "DUP3" }, "4045": { "op": "DUP5" }, "4046": { "op": "SUB" }, "4047": { "op": "SLT" }, "4048": { "op": "ISZERO" }, "4049": { "op": "PUSH2", "value": "0xFD8" }, "4052": { "op": "JUMPI" }, "4053": { "op": "DUP1" }, "4054": { "op": "DUP2" }, "4055": { "op": "REVERT" }, "4056": { "op": "JUMPDEST" }, "4057": { "op": "DUP2" }, "4058": { "op": "CALLDATALOAD" }, "4059": { "op": "PUSH1", "value": "0x1" }, "4061": { "op": "PUSH1", "value": "0x1" }, "4063": { "op": "PUSH1", "value": "0xE0" }, "4065": { "op": "SHL" }, "4066": { "op": "SUB" }, "4067": { "op": "NOT" }, "4068": { "op": "DUP2" }, "4069": { "op": "AND" }, "4070": { "op": "DUP2" }, "4071": { "op": "EQ" }, "4072": { "op": "PUSH2", "value": "0xFEF" }, "4075": { "op": "JUMPI" }, "4076": { "op": "DUP2" }, "4077": { "op": "DUP3" }, "4078": { "op": "REVERT" }, "4079": { "op": "JUMPDEST" }, "4080": { "op": "SWAP4" }, "4081": { "op": "SWAP3" }, "4082": { "op": "POP" }, "4083": { "op": "POP" }, "4084": { "op": "POP" }, "4085": { "jump": "o", "op": "JUMP" }, "4086": { "op": "JUMPDEST" }, "4087": { "op": "DUP1" }, "4088": { "op": "MLOAD" }, "4089": { "op": "PUSH1", "value": "0x1" }, "4091": { "op": "PUSH1", "value": "0x1" }, "4093": { "op": "PUSH1", "value": "0xA0" }, "4095": { "op": "SHL" }, "4096": { "op": "SUB" }, "4097": { "op": "AND" }, "4098": { "op": "DUP3" }, "4099": { "op": "MSTORE" }, "4100": { "op": "PUSH1", "value": "0x20" }, "4102": { "op": "DUP1" }, "4103": { "op": "DUP3" }, "4104": { "op": "ADD" }, "4105": { "op": "MLOAD" }, "4106": { "op": "ISZERO" }, "4107": { "op": "ISZERO" }, "4108": { "op": "SWAP1" }, "4109": { "op": "DUP4" }, "4110": { "op": "ADD" }, "4111": { "op": "MSTORE" }, "4112": { "op": "PUSH1", "value": "0x40" }, "4114": { "op": "DUP2" }, "4115": { "op": "ADD" }, "4116": { "op": "MLOAD" }, "4117": { "op": "PUSH1", "value": "0x6" }, "4119": { "op": "DUP2" }, "4120": { "op": "LT" }, "4121": { "op": "PUSH2", "value": "0x101E" }, "4124": { "op": "JUMPI" }, "4125": { "op": "INVALID" }, "4126": { "op": "JUMPDEST" }, "4127": { "op": "PUSH1", "value": "0x40" }, "4129": { "op": "DUP4" }, "4130": { "op": "ADD" }, "4131": { "op": "MSTORE" }, "4132": { "op": "PUSH1", "value": "0x60" }, "4134": { "op": "DUP2" }, "4135": { "op": "DUP2" }, "4136": { "op": "ADD" }, "4137": { "op": "MLOAD" }, "4138": { "op": "PUSH1", "value": "0xFF" }, "4140": { "op": "AND" }, "4141": { "op": "SWAP1" }, "4142": { "op": "DUP4" }, "4143": { "op": "ADD" }, "4144": { "op": "MSTORE" }, "4145": { "op": "PUSH1", "value": "0x80" }, "4147": { "op": "SWAP1" }, "4148": { "op": "DUP2" }, "4149": { "op": "ADD" }, "4150": { "op": "MLOAD" }, "4151": { "op": "PUSH9", "value": "0xFFFFFFFFFFFFFFFFFF" }, "4161": { "op": "AND" }, "4162": { "op": "SWAP2" }, "4163": { "op": "ADD" }, "4164": { "op": "MSTORE" }, "4165": { "jump": "o", "op": "JUMP" }, "4166": { "op": "JUMPDEST" }, "4167": { "op": "PUSH1", "value": "0x0" }, "4169": { "op": "DUP3" }, "4170": { "op": "MLOAD" }, "4171": { "op": "DUP2" }, "4172": { "op": "JUMPDEST" }, "4173": { "op": "DUP2" }, "4174": { "op": "DUP2" }, "4175": { "op": "LT" }, "4176": { "op": "ISZERO" }, "4177": { "op": "PUSH2", "value": "0x1066" }, "4180": { "op": "JUMPI" }, "4181": { "op": "PUSH1", "value": "0x20" }, "4183": { "op": "DUP2" }, "4184": { "op": "DUP7" }, "4185": { "op": "ADD" }, "4186": { "op": "DUP2" }, "4187": { "op": "ADD" }, "4188": { "op": "MLOAD" }, "4189": { "op": "DUP6" }, "4190": { "op": "DUP4" }, "4191": { "op": "ADD" }, "4192": { "op": "MSTORE" }, "4193": { "op": "ADD" }, "4194": { "op": "PUSH2", "value": "0x104C" }, "4197": { "op": "JUMP" }, "4198": { "op": "JUMPDEST" }, "4199": { "op": "DUP2" }, "4200": { "op": "DUP2" }, "4201": { "op": "GT" }, "4202": { "op": "ISZERO" }, "4203": { "op": "PUSH2", "value": "0x1074" }, "4206": { "op": "JUMPI" }, "4207": { "op": "DUP3" }, "4208": { "op": "DUP3" }, "4209": { "op": "DUP6" }, "4210": { "op": "ADD" }, "4211": { "op": "MSTORE" }, "4212": { "op": "JUMPDEST" }, "4213": { "op": "POP" }, "4214": { "op": "SWAP2" }, "4215": { "op": "SWAP1" }, "4216": { "op": "SWAP2" }, "4217": { "op": "ADD" }, "4218": { "op": "SWAP3" }, "4219": { "op": "SWAP2" }, "4220": { "op": "POP" }, "4221": { "op": "POP" }, "4222": { "jump": "o", "op": "JUMP" }, "4223": { "op": "JUMPDEST" }, "4224": { "op": "PUSH1", "value": "0x1" }, "4226": { "op": "PUSH1", "value": "0x1" }, "4228": { "op": "PUSH1", "value": "0xA0" }, "4230": { "op": "SHL" }, "4231": { "op": "SUB" }, "4232": { "op": "SWAP2" }, "4233": { "op": "SWAP1" }, "4234": { "op": "SWAP2" }, "4235": { "op": "AND" }, "4236": { "op": "DUP2" }, "4237": { "op": "MSTORE" }, "4238": { "op": "PUSH1", "value": "0x20" }, "4240": { "op": "ADD" }, "4241": { "op": "SWAP1" }, "4242": { "jump": "o", "op": "JUMP" }, "4243": { "op": "JUMPDEST" }, "4244": { "op": "PUSH2", "value": "0x1E0" }, "4247": { "op": "DUP2" }, "4248": { "op": "ADD" }, "4249": { "op": "PUSH2", "value": "0x10A2" }, "4252": { "op": "DUP3" }, "4253": { "op": "DUP11" }, "4254": { "op": "PUSH2", "value": "0xFF6" }, "4257": { "jump": "i", "op": "JUMP" }, "4258": { "op": "JUMPDEST" }, "4259": { "op": "PUSH2", "value": "0x10AF" }, "4262": { "op": "PUSH1", "value": "0xA0" }, "4264": { "op": "DUP4" }, "4265": { "op": "ADD" }, "4266": { "op": "DUP10" }, "4267": { "op": "PUSH2", "value": "0xFF6" }, "4270": { "jump": "i", "op": "JUMP" }, "4271": { "op": "JUMPDEST" }, "4272": { "op": "PUSH1", "value": "0x1" }, "4274": { "op": "PUSH1", "value": "0x1" }, "4276": { "op": "PUSH1", "value": "0xA0" }, "4278": { "op": "SHL" }, "4279": { "op": "SUB" }, "4280": { "op": "SWAP7" }, "4281": { "op": "SWAP1" }, "4282": { "op": "SWAP7" }, "4283": { "op": "AND" }, "4284": { "op": "PUSH2", "value": "0x140" }, "4287": { "op": "DUP3" }, "4288": { "op": "ADD" }, "4289": { "op": "MSTORE" }, "4290": { "op": "SWAP4" }, "4291": { "op": "ISZERO" }, "4292": { "op": "ISZERO" }, "4293": { "op": "PUSH2", "value": "0x160" }, "4296": { "op": "DUP6" }, "4297": { "op": "ADD" }, "4298": { "op": "MSTORE" }, "4299": { "op": "PUSH1", "value": "0xFF" }, "4301": { "op": "SWAP3" }, "4302": { "op": "DUP4" }, "4303": { "op": "AND" }, "4304": { "op": "PUSH2", "value": "0x180" }, "4307": { "op": "DUP6" }, "4308": { "op": "ADD" }, "4309": { "op": "MSTORE" }, "4310": { "op": "SWAP1" }, "4311": { "op": "DUP3" }, "4312": { "op": "AND" }, "4313": { "op": "PUSH2", "value": "0x1A0" }, "4316": { "op": "DUP5" }, "4317": { "op": "ADD" }, "4318": { "op": "MSTORE" }, "4319": { "op": "AND" }, "4320": { "op": "PUSH2", "value": "0x1C0" }, "4323": { "op": "SWAP1" }, "4324": { "op": "SWAP2" }, "4325": { "op": "ADD" }, "4326": { "op": "MSTORE" }, "4327": { "op": "SWAP3" }, "4328": { "op": "SWAP2" }, "4329": { "op": "POP" }, "4330": { "op": "POP" }, "4331": { "jump": "o", "op": "JUMP" } }, "sha1": "632e5f1f49977cd3cee56a5488db9c3285ba2b9c", "source": "// SPDX-License-Identifier: GPL-3.0-only\npragma solidity ^0.7.0;\npragma abicoder v2;\n\nimport \"./actions/nTokenAction.sol\";\nimport \"./actions/nTokenMintAction.sol\";\nimport \"../global/StorageLayoutV1.sol\";\nimport \"../global/Types.sol\";\nimport \"../../interfaces/notional/NotionalProxy.sol\";\nimport \"../../interfaces/notional/nERC1155Interface.sol\";\nimport \"../../interfaces/notional/NotionalGovernance.sol\";\nimport \"../../interfaces/notional/NotionalCalculations.sol\";\n\n/**\n * @notice Sits behind an upgradeable proxy and routes methods to an appropriate implementation contract. All storage\n * will sit inside the upgradeable proxy and this router will authorize the call and re-route the calls to implementing\n * contracts.\n *\n * This pattern adds an additional hop between the proxy and the ultimate implementation contract, however, it also\n * allows for atomic upgrades of the entire system. Individual implementation contracts will be deployed and then a\n * new Router with the new hardcoded addresses will then be deployed and upgraded into place.\n */\ncontract Router is StorageLayoutV1 {\n // These contract addresses cannot be changed once set by the constructor\n address public immutable GOVERNANCE;\n address public immutable VIEWS;\n address public immutable INITIALIZE_MARKET;\n address public immutable NTOKEN_ACTIONS;\n address public immutable BATCH_ACTION;\n address public immutable ACCOUNT_ACTION;\n address public immutable ERC1155;\n address public immutable LIQUIDATE_CURRENCY;\n address public immutable LIQUIDATE_FCASH;\n address public immutable cETH;\n address public immutable TREASURY;\n address public immutable CALCULATION_VIEWS;\n address private immutable DEPLOYER;\n\n constructor(\n address governance_,\n address views_,\n address initializeMarket_,\n address nTokenActions_,\n address batchAction_,\n address accountAction_,\n address erc1155_,\n address liquidateCurrency_,\n address liquidatefCash_,\n address cETH_,\n address treasury_,\n address calculationViews_\n ) {\n GOVERNANCE = governance_;\n VIEWS = views_;\n INITIALIZE_MARKET = initializeMarket_;\n NTOKEN_ACTIONS = nTokenActions_;\n BATCH_ACTION = batchAction_;\n ACCOUNT_ACTION = accountAction_;\n ERC1155 = erc1155_;\n LIQUIDATE_CURRENCY = liquidateCurrency_;\n LIQUIDATE_FCASH = liquidatefCash_;\n cETH = cETH_;\n DEPLOYER = msg.sender;\n TREASURY = treasury_;\n CALCULATION_VIEWS = calculationViews_;\n\n // This will lock everyone from calling initialize on the implementation contract\n hasInitialized = true;\n }\n\n function initialize(address owner_, address pauseRouter_, address pauseGuardian_) public {\n // Check that only the deployer can initialize\n require(msg.sender == DEPLOYER && !hasInitialized);\n\n // Allow list currency to be called by this contract for the purposes of\n // initializing ETH as a currency\n owner = msg.sender;\n // List ETH as currency id == 1, NOTE: return value is ignored here\n\n // FIXME: on non-mainnet deployments we should be using WETH instead here...\n (bool status, ) =\n address(GOVERNANCE).delegatecall(\n abi.encodeWithSelector(\n NotionalGovernance.listCurrency.selector,\n TokenStorage(cETH, false, TokenType.cETH, Constants.CETH_DECIMAL_PLACES, 0),\n // No underlying set for cETH\n TokenStorage(address(0), false, TokenType.Ether, Constants.ETH_DECIMAL_PLACES, 0),\n address(0),\n false,\n 133, // Initial settings of 133% buffer\n 75, // 75% haircut\n 108 // 8% liquidation discount\n )\n );\n require(status);\n\n owner = owner_;\n // The pause guardian may downgrade the router to the pauseRouter\n pauseRouter = pauseRouter_;\n pauseGuardian = pauseGuardian_;\n\n hasInitialized == true;\n }\n\n /// @notice Returns the implementation contract for the method signature\n /// @param sig method signature to call\n /// @return implementation address\n function getRouterImplementation(bytes4 sig) public view returns (address) {\n if (\n sig == NotionalProxy.batchBalanceAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeAction.selector ||\n sig == NotionalProxy.batchBalanceAndTradeActionWithCallback.selector ||\n sig == NotionalProxy.batchLend.selector\n ) {\n return BATCH_ACTION;\n } else if (\n sig == nTokenAction.nTokenTotalSupply.selector ||\n sig == nTokenAction.nTokenBalanceOf.selector ||\n sig == nTokenAction.nTokenTransferAllowance.selector ||\n sig == nTokenAction.nTokenTransferApprove.selector ||\n sig == nTokenAction.nTokenTransfer.selector ||\n sig == nTokenAction.nTokenTransferFrom.selector ||\n sig == nTokenAction.nTokenClaimIncentives.selector ||\n sig == nTokenAction.nTokenTransferApproveAll.selector ||\n sig == nTokenAction.nTokenPresentValueAssetDenominated.selector ||\n sig == nTokenAction.nTokenPresentValueUnderlyingDenominated.selector\n ) {\n return NTOKEN_ACTIONS;\n } else if (\n sig == NotionalProxy.depositUnderlyingToken.selector ||\n sig == NotionalProxy.depositAssetToken.selector ||\n sig == NotionalProxy.withdraw.selector ||\n sig == NotionalProxy.settleAccount.selector ||\n sig == NotionalProxy.nTokenRedeem.selector ||\n sig == NotionalProxy.enableBitmapCurrency.selector\n ) {\n return ACCOUNT_ACTION;\n } else if (\n sig == nERC1155Interface.supportsInterface.selector ||\n sig == nERC1155Interface.balanceOf.selector ||\n sig == nERC1155Interface.balanceOfBatch.selector ||\n sig == nERC1155Interface.signedBalanceOf.selector ||\n sig == nERC1155Interface.signedBalanceOfBatch.selector ||\n sig == nERC1155Interface.safeTransferFrom.selector ||\n sig == nERC1155Interface.safeBatchTransferFrom.selector ||\n sig == nERC1155Interface.decodeToAssets.selector ||\n sig == nERC1155Interface.encodeToId.selector ||\n sig == nERC1155Interface.setApprovalForAll.selector ||\n sig == nERC1155Interface.isApprovedForAll.selector\n ) {\n return ERC1155;\n } else if (\n sig == NotionalProxy.liquidateLocalCurrency.selector ||\n sig == NotionalProxy.liquidateCollateralCurrency.selector ||\n sig == NotionalProxy.calculateLocalCurrencyLiquidation.selector ||\n sig == NotionalProxy.calculateCollateralCurrencyLiquidation.selector\n ) {\n return LIQUIDATE_CURRENCY;\n } else if (\n sig == NotionalProxy.liquidatefCashLocal.selector ||\n sig == NotionalProxy.liquidatefCashCrossCurrency.selector ||\n sig == NotionalProxy.calculatefCashLocalLiquidation.selector ||\n sig == NotionalProxy.calculatefCashCrossCurrencyLiquidation.selector\n ) {\n return LIQUIDATE_FCASH;\n } else if (\n sig == NotionalProxy.initializeMarkets.selector ||\n sig == NotionalProxy.sweepCashIntoMarkets.selector\n ) {\n return INITIALIZE_MARKET;\n } else if (\n sig == NotionalGovernance.listCurrency.selector ||\n sig == NotionalGovernance.enableCashGroup.selector ||\n sig == NotionalGovernance.updateCashGroup.selector ||\n sig == NotionalGovernance.updateAssetRate.selector ||\n sig == NotionalGovernance.updateETHRate.selector ||\n sig == NotionalGovernance.transferOwnership.selector ||\n sig == NotionalGovernance.claimOwnership.selector ||\n sig == NotionalGovernance.updateIncentiveEmissionRate.selector ||\n sig == NotionalGovernance.updateMaxCollateralBalance.selector ||\n sig == NotionalGovernance.updateDepositParameters.selector ||\n sig == NotionalGovernance.updateInitializationParameters.selector ||\n sig == NotionalGovernance.updateTokenCollateralParameters.selector ||\n sig == NotionalGovernance.updateGlobalTransferOperator.selector ||\n sig == NotionalGovernance.updateAuthorizedCallbackContract.selector ||\n sig == NotionalGovernance.setLendingPool.selector ||\n sig == NotionalProxy.upgradeTo.selector ||\n sig == NotionalProxy.upgradeToAndCall.selector\n ) {\n return GOVERNANCE;\n } else if (\n sig == NotionalTreasury.claimCOMPAndTransfer.selector ||\n sig == NotionalTreasury.transferReserveToTreasury.selector ||\n sig == NotionalTreasury.setTreasuryManager.selector ||\n sig == NotionalTreasury.setReserveBuffer.selector ||\n sig == NotionalTreasury.setReserveCashBalance.selector\n ) {\n return TREASURY;\n } else if (\n sig == NotionalCalculations.calculateNTokensToMint.selector ||\n sig == NotionalCalculations.getfCashAmountGivenCashAmount.selector ||\n sig == NotionalCalculations.getCashAmountGivenfCashAmount.selector ||\n sig == NotionalCalculations.nTokenGetClaimableIncentives.selector\n ) {\n return CALCULATION_VIEWS;\n } else {\n // If not found then delegate to views. This will revert if there is no method on\n // the view contract\n return VIEWS;\n }\n }\n\n /// @dev Delegates the current call to `implementation`.\n /// This function does not return to its internal call site, it will return directly to the external caller.\n function _delegate(address implementation) private {\n // solhint-disable-next-line no-inline-assembly\n assembly {\n // Copy msg.data. We take full control of memory in this inline assembly\n // block because it will not return to Solidity code. We overwrite the\n // Solidity scratch pad at memory position 0.\n calldatacopy(0, 0, calldatasize())\n\n // Call the implementation.\n // out and outsize are 0 because we don't know the size yet.\n let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)\n\n // Copy the returned data.\n returndatacopy(0, 0, returndatasize())\n\n switch result\n // delegatecall returns 0 on error.\n case 0 {\n revert(0, returndatasize())\n }\n default {\n return(0, returndatasize())\n }\n }\n }\n\n fallback() external payable {\n _delegate(getRouterImplementation(msg.sig));\n }\n\n // NOTE: receive() is overridden in \"nProxy\" to allow for eth transfers to succeed\n}\n", "sourceMap": "1056:10103:24:-:0;;;1729:983;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;2119:24:24;;;;;;;;2153:14;;;;;;;2177:37;;;;;;;2224:31;;;;;;;2265:27;;;;;;;2302:31;;;;;;;2343:18;;;;;;;2371:39;;;;;;2420:33;;;;;;2463:12;;;;;;2496:10;2485:21;;;;2516:20;;;;;;2546:37;;;;;;2684:14;:21;;-1:-1:-1;;2684:21:24;;;;;1056:10103;;14:179:168;95:13;;-1:-1:-1;;;;;137:31:168;;127:42;;117:2;;183:1;180;173:12;117:2;76:117;;;:::o;198:1190::-;;;;;;;;;;;;;510:3;498:9;489:7;485:23;481:33;478:2;;;532:6;524;517:22;478:2;560:42;592:9;560:42;:::i;:::-;550:52;;621:51;668:2;657:9;653:18;621:51;:::i;:::-;611:61;;691:51;738:2;727:9;723:18;691:51;:::i;:::-;681:61;;761:51;808:2;797:9;793:18;761:51;:::i;:::-;751:61;;831:52;878:3;867:9;863:19;831:52;:::i;:::-;821:62;;902:52;949:3;938:9;934:19;902:52;:::i;:::-;892:62;;973:52;1020:3;1009:9;1005:19;973:52;:::i;:::-;963:62;;1044:52;1091:3;1080:9;1076:19;1044:52;:::i;:::-;1034:62;;1115:52;1162:3;1151:9;1147:19;1115:52;:::i;:::-;1105:62;;1186:52;1233:3;1222:9;1218:19;1186:52;:::i;:::-;1176:62;;1258:52;1305:3;1294:9;1290:19;1258:52;:::i;:::-;1247:63;;1330:52;1377:3;1366:9;1362:19;1330:52;:::i;:::-;1319:63;;468:920;;;;;;;;;;;;;;:::o;:::-;1056:10103:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", "sourcePath": "contracts/external/Router.sol", "type": "contract" } From a943e56e9e11c64c45d21158b7e56bd040582b0e Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 12:14:30 +0800 Subject: [PATCH 094/120] Replace separate calls to getCurrencyId and getMaturity with single call to getDecodedID --- contracts/interfaces/IWrappedFCash.sol | 6 ----- contracts/mocks/WrappedfCashMock.sol | 23 ++++-------------- .../modules/v1/NotionalTradeModule.sol | 24 +++++-------------- .../modules/v1/notionalTradeModule.spec.ts | 9 +++---- 4 files changed, 13 insertions(+), 49 deletions(-) diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol index 043501329..c6bac00ef 100644 --- a/contracts/interfaces/IWrappedFCash.sol +++ b/contracts/interfaces/IWrappedFCash.sol @@ -43,15 +43,9 @@ interface IWrappedfCash { /// @notice Returns the underlying fCash ID of the token function getfCashId() external view returns (uint256); - /// @notice Returns the underlying fCash maturity of the token - function getMaturity() external view returns (uint40 maturity); - /// @notice True if the fCash has matured, assets mature exactly on the block time function hasMatured() external view returns (bool); - /// @notice Returns the underlying fCash currency - function getCurrencyId() external view returns (uint16 currencyId); - /// @notice Returns the components of the fCash idd function getDecodedID() external view returns (uint16 currencyId, uint40 maturity); diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index d6476a376..f16bdf954 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -39,8 +39,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { int256 private assetPrecision; TokenType private tokenType; - bool private revertCurrencyId; - bool private revertMaturity; + bool private revertDecodedID; uint256 private redeemTokenReturned; uint256 private mintTokenSpent; @@ -104,25 +103,14 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { return fCashId; } - /// @notice Returns the underlying fCash maturity of the token - function getMaturity() external override view returns (uint40) { - require(!revertMaturity, "Test revertion Maturity"); - return maturity; - } - /// @notice True if the fCash has matured, assets mature exactly on the block time function hasMatured() external override view returns (bool) { return matured; } - /// @notice Returns the underlying fCash currency - function getCurrencyId() external override view returns (uint16) { - require(!revertCurrencyId, "Test revertion CurrencyId"); - return currencyId; - } - /// @notice Returns the components of the fCash idd function getDecodedID() external override view returns (uint16, uint40) { + require(!revertDecodedID, "Test revertion DecodedID"); return (currencyId, maturity); } @@ -157,12 +145,9 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { mintTokenSpent = _mintTokenSpent; } - function setRevertCurrencyId(bool _revertCurrencyId) external{ - revertCurrencyId = _revertCurrencyId; + function setRevertDecodedID(bool _revertDecodedID) external{ + revertDecodedID = _revertDecodedID; } - function setRevertMaturity(bool _revertMaturity) external{ - revertMaturity = _revertMaturity; - } } diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 29a74a7f2..522c2a820 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -130,7 +130,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss public ModuleBase(_controller) { - // TODO: Review if we want to make this address mutable. (made it immutable initially to be consistent with other modules) wrappedfCashFactory = _wrappedfCashFactory; } @@ -610,7 +609,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } - // TODO: Looping twice just to get the array length for initialization feels inefficient, review if there is a better way. fCashPositions = new address[](numFCashPositions); uint j; @@ -634,26 +632,16 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss if(!_fCashPosition.isContract()) { return false; } - uint16 currencyId; - try IWrappedfCash(_fCashPosition).getCurrencyId() returns(uint16 _currencyId){ - currencyId = _currencyId; - } catch { - return false; - } - uint40 maturity; - try IWrappedfCash(_fCashPosition).getMaturity() returns(uint40 _maturity){ - maturity = _maturity; - } catch { - return false; - } - - try wrappedfCashFactory.computeAddress(currencyId, maturity) returns(address _computedAddress){ - return _fCashPosition == _computedAddress; + try IWrappedfCash(_fCashPosition).getDecodedID() returns(uint16 _currencyId, uint40 _maturity){ + try wrappedfCashFactory.computeAddress(_currencyId, _maturity) returns(address _computedAddress){ + return _fCashPosition == _computedAddress; + } catch { + return false; + } } catch { return false; } - } /** diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index ea346b969..dea290aba 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -1120,8 +1120,7 @@ describe("NotionalTradeModule", () => { [ "wrong currencyId", "wrong maturity", - "reverted getCurrencyId", - "reverted getMaturity", + "reverted getDecodedID", "reverted computeAddress", "negative unit", ].forEach(reason => { @@ -1131,10 +1130,8 @@ describe("NotionalTradeModule", () => { await wrappedfCashMock.initialize(420, maturity); } else if (reason == "wrong maturity") { await wrappedfCashMock.initialize(currencyId, 420); - } else if (reason == "reverted getCurrencyId") { - await wrappedfCashMock.setRevertCurrencyId(true); - } else if (reason == "reverted getMaturity") { - await wrappedfCashMock.setRevertMaturity(true); + } else if (reason == "reverted getDecodedID") { + await wrappedfCashMock.setRevertDecodedID(true); } else if (reason == "reverted computeAddress") { await wrappedfCashFactoryMock.setRevertComputeAddress(true); } else if (reason == "negative unit") { From 32436edd264319e361ee18b4098aba8add79b75a Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 12:16:56 +0800 Subject: [PATCH 095/120] Remove duplicated IERC20 import --- contracts/interfaces/IWrappedFCash.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol index c6bac00ef..d7011b2e6 100644 --- a/contracts/interfaces/IWrappedFCash.sol +++ b/contracts/interfaces/IWrappedFCash.sol @@ -2,7 +2,6 @@ pragma solidity 0.6.10; pragma experimental "ABIEncoderV2"; -import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; /// @notice Different types of internal tokens From ca922c42e2f9065e2bd0964507e49edf28ab185f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 12:34:07 +0800 Subject: [PATCH 096/120] Replace _getPaymentToken with getToken on fcash wrapper --- contracts/interfaces/IWrappedFCash.sol | 2 ++ contracts/mocks/WrappedfCashMock.sol | 15 +++++++++++++-- .../protocol/modules/v1/NotionalTradeModule.sol | 16 +--------------- 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/contracts/interfaces/IWrappedFCash.sol b/contracts/interfaces/IWrappedFCash.sol index d7011b2e6..4036e65cc 100644 --- a/contracts/interfaces/IWrappedFCash.sol +++ b/contracts/interfaces/IWrappedFCash.sol @@ -60,6 +60,8 @@ interface IWrappedfCash { /// @notice Returns the asset token which the fCash settles to. This will be an interest /// bearing token like a cToken or aToken. function getAssetToken() external view returns (IERC20 assetToken, int256 assetPrecision, TokenType tokenType); + + function getToken(bool useUnderlying) external view returns (IERC20 token, bool isETH); } diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index f16bdf954..753124f1b 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -44,6 +44,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint256 private redeemTokenReturned; uint256 private mintTokenSpent; + address internal constant ETH_ADDRESS = address(0); + constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC20("FCashMock", "FCM") { assetToken = _assetToken; underlyingToken = _underlyingToken; @@ -123,13 +125,13 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { /// @notice Returns the token and precision of the token that this token settles /// to. For example, fUSDC will return the USDC token address and 1e6. The zero /// address will represent ETH. - function getUnderlyingToken() external override view returns (IERC20, int256) { + function getUnderlyingToken() public override view returns (IERC20, int256) { return (underlyingToken, underlyingPrecision); } /// @notice Returns the asset token which the fCash settles to. This will be an interest /// bearing token like a cToken or aToken. - function getAssetToken() external override view returns (IERC20, int256, TokenType) { + function getAssetToken() public override view returns (IERC20, int256, TokenType) { return (assetToken, assetPrecision, tokenType); } @@ -149,5 +151,14 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { revertDecodedID = _revertDecodedID; } + function getToken(bool useUnderlying) public view override returns (IERC20 token, bool isETH) { + if (useUnderlying) { + (token, /* */) = getUnderlyingToken(); + } else { + (token, /* */, /* */) = getAssetToken(); + } + isETH = address(token) == ETH_ADDRESS; + } + } diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 522c2a820..5eaf4c17b 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -385,7 +385,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss if(_isWrappedFCash(component)) { IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(component); if(fCashPosition.hasMatured()) { - IERC20 receiveToken = _getPaymentToken(fCashPosition, toUnderlying); + (IERC20 receiveToken,) = fCashPosition.getToken(toUnderlying); uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); } @@ -560,20 +560,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss } } - /** - * @dev Returns underlying or asset token address for given fCashPosition based on _getUnderlying flag - */ - function _getPaymentToken( - IWrappedfCashComplete _fCashPosition, - bool _getUnderlying - ) - internal - view - returns(IERC20 paymentToken) - { - (IERC20 underlyingToken, IERC20 assetToken) = _getUnderlyingAndAssetTokens(_fCashPosition); - paymentToken = _getUnderlying ? underlyingToken : assetToken; - } /** * @dev Returns both underlying and asset token address for given fCash position From f0b7ae69b6d2cdb1c8ec85424a8054d65c2bd105 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 13:21:15 +0800 Subject: [PATCH 097/120] Use function selectors instead of string signatures for encoding --- .../modules/v1/NotionalTradeModule.sol | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 5eaf4c17b..3123c0a7f 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -485,7 +485,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { // TODO: Review if we want to only approve "_maxAssetAmount" or keep it at maxUint256 - bytes memory approveCallData = abi.encodeWithSignature("approve(address,uint256)", address(_fCashPosition), type(uint256).max); + bytes memory approveCallData = abi.encodeWithSelector(_sendToken.approve.selector, address(_fCashPosition), type(uint256).max); _setToken.invoke(address(_sendToken), 0, approveCallData); } } @@ -504,10 +504,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { uint32 minImpliedRate = 0; - string memory functionSignature = - _fromUnderlying ? "mintViaUnderlying(uint256,uint88,address,uint32)": "mintViaAsset(uint256,uint88,address,uint32)"; - bytes memory mintCallData = abi.encodeWithSignature( - functionSignature, + bytes4 functionSelector = + _fromUnderlying ? _fCashPosition.mintViaUnderlying.selector : _fCashPosition.mintViaAsset.selector; + bytes memory mintCallData = abi.encodeWithSelector( + functionSelector, _maxAssetAmount, uint88(_fCashAmount), address(_setToken), @@ -530,10 +530,10 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss { uint32 maxImpliedRate = type(uint32).max; - string memory functionSignature = - _toUnderlying ? "redeemToUnderlying(uint256,address,uint32)": "redeemToAsset(uint256,address,uint32)"; - bytes memory redeemCallData = abi.encodeWithSignature( - functionSignature, + bytes4 functionSelector = + _toUnderlying ? _fCashPosition.redeemToUnderlying.selector : _fCashPosition.redeemToAsset.selector; + bytes memory redeemCallData = abi.encodeWithSelector( + functionSelector, _fCashAmount, address(_setToken), maxImpliedRate From 678f988e4ee87437d6f5215ce7e627b34963c154 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 17:36:21 +0800 Subject: [PATCH 098/120] Parameterize integration tests to be run for different asset tokens --- contracts/interfaces/external/ICErc20.sol | 2 +- .../notionalTradeModule.spec.ts | 1275 +++++++++-------- 2 files changed, 679 insertions(+), 598 deletions(-) diff --git a/contracts/interfaces/external/ICErc20.sol b/contracts/interfaces/external/ICErc20.sol index 4f5a5f2db..6cb795bf3 100644 --- a/contracts/interfaces/external/ICErc20.sol +++ b/contracts/interfaces/external/ICErc20.sol @@ -43,7 +43,7 @@ interface ICErc20 is IERC20 { function exchangeRateStored() external view returns (uint256); - function underlying() external returns (address); + function underlying() external view returns (address); /** * Sender supplies assets into the market and receives cTokens in exchange diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 2b4771852..ba090b56c 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -26,6 +26,7 @@ import { } from "@utils/contracts"; import { IERC20 } from "@typechain/IERC20"; +import { IERC20Metadata } from "@typechain/IERC20Metadata"; import { ICErc20 } from "@typechain/ICErc20"; import { upgradeNotionalProxy, @@ -37,658 +38,738 @@ import { const expect = getWaffleExpect(); +type AssetTokenName = "cDai" | "cUsdc"; +type UnderlyingTokenName = "dai" | "usdc"; + +const tokenAddresses: Partial> = { + cDai: "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643", + cUsdc: "0x39AA39c021dfbaE8faC545936693aC917d5E7563", +}; + +const underlyingTokens: Record = { + cDai: "dai", + cUsdc: "usdc", +}; + describe("Notional trade module integration [ @forked-mainnet ]", () => { - const cdaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643"; - let owner: Account; - let manager: Account; - let tokens: ForkedTokens; - let dai: IERC20; - let cDai: ICErc20; - let deployer: DeployHelper; - let setup: SystemFixture; - - beforeEach(async () => { - [owner, manager] = await getAccounts(); - deployer = new DeployHelper(owner.wallet); - setup = getSystemFixture(owner.address); - await setup.initialize(); - - // Setup ForkedTokens - await initializeForkedTokens(deployer); - tokens = getForkedTokens(); - dai = tokens.dai; - cDai = (await ethers.getContractAt("ICErc20", cdaiAddress)) as ICErc20; - }); - - describe("When WrappedfCash is deployed", () => { - let wrappedFCashInstance: WrappedfCash; - let wrappedFCashFactory: WrappedfCashFactory; - let currencyId: number; - let maturity: BigNumber; - beforeEach(async () => { - wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); - ({ currencyId, maturity } = await getCurrencyIdAndMaturity(cdaiAddress, 0)); - wrappedFCashInstance = await deployWrappedfCashInstance( - wrappedFCashFactory, - currencyId, - maturity, - ); - }); + for (const [assetTokenName, assetTokenAddress] of Object.entries(tokenAddresses)) { + describe(`When asset token is ${assetTokenName}`, () => { + let owner: Account; + let manager: Account; + let tokens: ForkedTokens; + let assetToken: ICErc20; + let underlyingToken: IERC20Metadata; + let deployer: DeployHelper; + let setup: SystemFixture; - describe("When notional proxy is upgraded", () => { - let daiAmount: BigNumber; - let fCashAmount: BigNumber; beforeEach(async () => { - await upgradeNotionalProxy(owner.wallet); - daiAmount = ethers.utils.parseEther("1"); - fCashAmount = ethers.utils.parseUnits("1", 8); - await dai.transfer(owner.address, daiAmount); + [owner, manager] = await getAccounts(); + deployer = new DeployHelper(owner.wallet); + setup = getSystemFixture(owner.address); + await setup.initialize(); + + // Setup ForkedTokens + await initializeForkedTokens(deployer); + tokens = getForkedTokens(); + underlyingToken = (await ethers.getContractAt( + "IERC20Metadata", + tokens[underlyingTokens[assetTokenName]].address, + tokens[underlyingTokens[assetTokenName]].signer, + )) as IERC20Metadata; + assetToken = (await ethers.getContractAt("ICErc20", assetTokenAddress)) as ICErc20; }); - describe("When setToken with wrappedFCash component is deployed", () => { - let debtIssuanceModule: DebtIssuanceModuleV2; - let mockPreIssuanceHook: ManagerIssuanceHookMock; - let notionalTradeModule: NotionalTradeModule; - let setToken: SetToken; - let wrappedFCashPosition: BigNumber; - + describe("When WrappedfCash is deployed", () => { + let wrappedFCashInstance: WrappedfCash; + let wrappedFCashFactory: WrappedfCashFactory; + let currencyId: number; + let maturity: BigNumber; beforeEach(async () => { - // Deploy DebtIssuanceModuleV2 - debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( - setup.controller.address, + wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); + ({ currencyId, maturity } = await getCurrencyIdAndMaturity(assetTokenAddress, 0)); + wrappedFCashInstance = await deployWrappedfCashInstance( + wrappedFCashFactory, + currencyId, + maturity, ); - await setup.controller.addModule(debtIssuanceModule.address); - - // Deploy NotionalTradeModule - notionalTradeModule = await deployer.modules.deployNotionalTradeModule( - setup.controller.address, - wrappedFCashFactory.address, - ); - await setup.controller.addModule(notionalTradeModule.address); - - // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization - mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); - - wrappedFCashPosition = ethers.utils.parseUnits( - "2", - await wrappedFCashInstance.decimals(), - ); - - await initialize(); }); - async function initialize() { - // Create Set token - setToken = await setup.createSetToken( - [wrappedFCashInstance.address], - [wrappedFCashPosition], - [debtIssuanceModule.address, notionalTradeModule.address], - manager.address, - ); - - // Fund owner with stETH - await tokens.steth.transfer(owner.address, ether(11000)); - - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, - ); - - await setup.integrationRegistry.addIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceModule.address, - ); - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - await notionalTradeModule.connect(manager.wallet).initialize(setToken.address); - } - - it("Should be able to issue set from wrappedFCash", async () => { - daiAmount = ethers.utils.parseEther("10"); - fCashAmount = ethers.utils.parseUnits("9", 8); - const setAmount = ethers.utils.parseEther("1"); - await dai.transfer(owner.address, daiAmount); - - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai, - wrappedFCashInstance, - true, - ); - - await wrappedFCashInstance - .connect(owner.wallet) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - await wrappedFCashInstance - .connect(owner.wallet) - .approve(setToken.address, ethers.constants.MaxUint256); - - const setBalanceBefore = await setToken.balanceOf(owner.address); - await debtIssuanceModule - .connect(owner.wallet) - .issue(setToken.address, setAmount, owner.address); - const setBalanceAfter = await setToken.balanceOf(owner.address); - - expect(setBalanceAfter.sub(setBalanceBefore)).to.eq(setAmount); - }); - describe("When initial amount of set token has been issued", () => { + describe("When notional proxy is upgraded", () => { + let underlyingTokenAmount: BigNumber; + let fCashAmount: BigNumber; beforeEach(async () => { - daiAmount = ethers.utils.parseEther("2000"); - fCashAmount = ethers.utils.parseUnits("2000", 8); - const setAmount = ethers.utils.parseEther("1000"); - await dai.transfer(owner.address, daiAmount); - - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai, - wrappedFCashInstance, - true, - ); - - await wrappedFCashInstance - .connect(owner.wallet) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - await wrappedFCashInstance - .connect(owner.wallet) - .approve(setToken.address, ethers.constants.MaxUint256); - - await debtIssuanceModule - .connect(owner.wallet) - .issue(setToken.address, setAmount, owner.address); + await upgradeNotionalProxy(owner.wallet); + underlyingTokenAmount = ethers.utils.parseUnits("1", await underlyingToken.decimals()); + fCashAmount = ethers.utils.parseUnits("1", 8); + await underlyingToken.transfer(owner.address, underlyingTokenAmount); }); - describe("#mint/redeemFCashPosition", () => { - let receiveToken: IERC20; - let sendToken: IERC20; - let subjectSetToken: string; - let subjectSendToken: string; - let subjectSendQuantity: BigNumber; - let subjectReceiveToken: string; - let subjectMinReceiveQuantity: BigNumber; - let caller: SignerWithAddress; + + describe("When setToken with wrappedFCash component is deployed", () => { + let debtIssuanceModule: DebtIssuanceModuleV2; + let mockPreIssuanceHook: ManagerIssuanceHookMock; + let notionalTradeModule: NotionalTradeModule; + let setToken: SetToken; + let wrappedFCashPosition: BigNumber; beforeEach(async () => { - subjectSetToken = setToken.address; - caller = manager.wallet; + // Deploy DebtIssuanceModuleV2 + debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( + setup.controller.address, + ); + await setup.controller.addModule(debtIssuanceModule.address); + + // Deploy NotionalTradeModule + notionalTradeModule = await deployer.modules.deployNotionalTradeModule( + setup.controller.address, + wrappedFCashFactory.address, + ); + await setup.controller.addModule(notionalTradeModule.address); + + // Deploy mock issuance hook to pass as arg in DebtIssuance module initialization + mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); + + wrappedFCashPosition = ethers.utils.parseUnits( + "2", + await wrappedFCashInstance.decimals(), + ); + + await initialize(); }); - ["buying", "selling"].forEach(tradeDirection => { - ["underlyingToken", "assetToken"].forEach(tokenType => { - describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { - let sendTokenType: string; - let receiveTokenType: string; - let otherToken: IERC20; - let subjectCurrencyId: number; - let subjectMaturity: BigNumber; - beforeEach(async () => { - subjectCurrencyId = currencyId; - subjectMaturity = maturity; - const underlyingTokenQuantity = ethers.utils.parseEther("1"); - const assetToken = cDai; - const underlyingToken = dai; - const fTokenQuantity = ethers.utils.parseUnits("1", 8); - - otherToken = tokenType == "assetToken" ? cDai : dai; - sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; - sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; - receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; - subjectSendToken = sendToken.address; - - receiveToken = tradeDirection == "buying" ? wrappedFCashInstance : otherToken; - subjectReceiveToken = receiveToken.address; - - if (tradeDirection == "buying") { - subjectMinReceiveQuantity = fTokenQuantity; - if (sendTokenType == "assetToken") { - const assetTokenBalanceBefore = await otherToken.balanceOf(owner.address); - await underlyingToken - .connect(owner.wallet) - .approve(assetToken.address, underlyingTokenQuantity); - await assetToken.connect(owner.wallet).mint(underlyingTokenQuantity); - const assetTokenBalanceAfter = await otherToken.balanceOf(owner.address); - subjectSendQuantity = assetTokenBalanceAfter.sub(assetTokenBalanceBefore); - } else { - subjectSendQuantity = underlyingTokenQuantity; - } - // Apparently it is not possible to trade tokens that are not a set component - // Also sending extra tokens to the trade module might break it - // TODO: Review - await notionalTradeModule - .connect(manager.wallet) - .redeemFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - fTokenQuantity.mul(2), - sendToken.address, - subjectSendQuantity, - ); - } else { - subjectSendQuantity = fTokenQuantity; - if (tokenType == "assetToken") { - subjectMinReceiveQuantity = ethers.utils.parseUnits("0.4", 8); - } else { - subjectMinReceiveQuantity = ethers.utils.parseEther("0.9"); - } - } - }); + async function initialize() { + // Create Set token + setToken = await setup.createSetToken( + [wrappedFCashInstance.address], + [wrappedFCashPosition], + [debtIssuanceModule.address, notionalTradeModule.address], + manager.address, + ); + + // Fund owner with stETH + await tokens.steth.transfer(owner.address, ether(11000)); + + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + await notionalTradeModule.connect(manager.wallet).initialize(setToken.address); + } + + it("Should be able to issue set from wrappedFCash", async () => { + underlyingTokenAmount = ethers.utils.parseUnits( + "10", + await underlyingToken.decimals(), + ); + fCashAmount = ethers.utils.parseUnits("9", 8); + const setAmount = ethers.utils.parseEther("1"); + await underlyingToken.transfer(owner.address, underlyingTokenAmount); + + await mintWrappedFCash( + owner.wallet, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken, + wrappedFCashInstance, + true, + ); + + await wrappedFCashInstance + .connect(owner.wallet) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + await wrappedFCashInstance + .connect(owner.wallet) + .approve(setToken.address, ethers.constants.MaxUint256); + + const setBalanceBefore = await setToken.balanceOf(owner.address); + await debtIssuanceModule + .connect(owner.wallet) + .issue(setToken.address, setAmount, owner.address); + const setBalanceAfter = await setToken.balanceOf(owner.address); + + expect(setBalanceAfter.sub(setBalanceBefore)).to.eq(setAmount); + }); + describe("When initial amount of set token has been issued", () => { + beforeEach(async () => { + const setAmountNumber = 1000; + underlyingTokenAmount = ethers.utils.parseUnits( + (setAmountNumber * 2).toString(), + await underlyingToken.decimals(), + ); + fCashAmount = ethers.utils.parseUnits((setAmountNumber * 2).toString(), 8); + const setAmount = ethers.utils.parseEther(setAmountNumber.toString()); + await underlyingToken.transfer(owner.address, underlyingTokenAmount); + + await mintWrappedFCash( + owner.wallet, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken, + wrappedFCashInstance, + true, + ); + + await wrappedFCashInstance + .connect(owner.wallet) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + await wrappedFCashInstance + .connect(owner.wallet) + .approve(setToken.address, ethers.constants.MaxUint256); + + await debtIssuanceModule + .connect(owner.wallet) + .issue(setToken.address, setAmount, owner.address); + }); + describe("#mint/redeemFCashPosition", () => { + let receiveToken: IERC20; + let sendToken: IERC20; + let subjectSetToken: string; + let subjectSendToken: string; + let subjectSendQuantity: BigNumber; + let subjectReceiveToken: string; + let subjectMinReceiveQuantity: BigNumber; + let caller: SignerWithAddress; + + beforeEach(async () => { + subjectSetToken = setToken.address; + caller = manager.wallet; + }); - const subject = () => { - if (tradeDirection == "buying") { - return notionalTradeModule - .connect(caller) - .mintFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectMinReceiveQuantity, - subjectSendToken, - subjectSendQuantity, - ); - } else { - return notionalTradeModule - .connect(caller) - .redeemFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - } - }; - - const subjectCall = () => { - if (tradeDirection == "buying") { - return notionalTradeModule - .connect(caller) - .callStatic.mintFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectMinReceiveQuantity, - subjectSendToken, - subjectSendQuantity, - ); - } else { - return notionalTradeModule - .connect(caller) - .callStatic.redeemFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, + [ + "buying", + // "selling" + ].forEach(tradeDirection => { + [ + "underlyingToken", + // "assetToken" + ].forEach(tokenType => { + describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { + let sendTokenType: string; + let receiveTokenType: string; + let otherToken: IERC20; + let subjectCurrencyId: number; + let subjectMaturity: BigNumber; + beforeEach(async () => { + subjectCurrencyId = currencyId; + subjectMaturity = maturity; + const underlyingTokenQuantity = ethers.utils.parseUnits( + "1", + await underlyingToken.decimals(), ); - } - }; + const fTokenQuantity = ethers.utils.parseUnits("1", 8); - ["new", "existing"].forEach(wrapperType => { - describe(`when using ${wrapperType} wrapper`, () => { - beforeEach(async () => { - if (wrapperType == "new") { - const newWrapperId = await getCurrencyIdAndMaturity(cdaiAddress, 1); - subjectMaturity = newWrapperId.maturity; - subjectCurrencyId = newWrapperId.currencyId; - const newWrapperAddress = await wrappedFCashFactory.computeAddress( - subjectCurrencyId, - subjectMaturity, - ); + otherToken = tokenType == "assetToken" ? assetToken : underlyingToken; + sendToken = tradeDirection == "buying" ? otherToken : wrappedFCashInstance; + sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; + subjectSendToken = sendToken.address; - receiveToken = (await ethers.getContractAt( - "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20", - newWrapperAddress, - )) as IERC20; - } - }); - if (tradeDirection == "selling" && wrapperType == "new") { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "WrappedfCash not deployed for given parameters", - ); - }); - } else { - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = - wrapperType == "new" - ? 0 - : await receiveToken.balanceOf(subjectSetToken); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - subjectSetToken, - ); - expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( - subjectMinReceiveQuantity, - ); - }); + receiveToken = + tradeDirection == "buying" ? wrappedFCashInstance : otherToken; + subjectReceiveToken = receiveToken.address; - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf( - setToken.address, - ); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, + if (tradeDirection == "buying") { + subjectMinReceiveQuantity = fTokenQuantity; + if (sendTokenType == "assetToken") { + const assetTokenBalanceBefore = await otherToken.balanceOf( + owner.address, + ); + await underlyingToken + .connect(owner.wallet) + .approve(assetToken.address, underlyingTokenQuantity); + await assetToken.connect(owner.wallet).mint(underlyingTokenQuantity); + const assetTokenBalanceAfter = await otherToken.balanceOf( + owner.address, + ); + subjectSendQuantity = assetTokenBalanceAfter.sub( + assetTokenBalanceBefore, ); } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity = underlyingTokenQuantity; + } + // Apparently it is not possible to trade tokens that are not a set component + // Also sending extra tokens to the trade module might break it + // TODO: Review + await notionalTradeModule + .connect(manager.wallet) + .redeemFCashPosition( + setToken.address, + subjectCurrencyId, + subjectMaturity, + fTokenQuantity.mul(2), + sendToken.address, subjectSendQuantity, ); + } else { + subjectSendQuantity = fTokenQuantity; + if (tokenType == "assetToken") { + subjectMinReceiveQuantity = ethers.utils.parseUnits("0.4", 8); + } else { + subjectMinReceiveQuantity = ethers.utils.parseEther("0.9"); } - }); + } + }); - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf( - setToken.address, - ); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf( - setToken.address, - ); + const subject = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule + .connect(caller) + .redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + const subjectCall = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .callStatic.mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule + .connect(caller) + .callStatic.redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; + + ["new", "existing"].forEach(wrapperType => { + describe(`when using ${wrapperType} wrapper`, () => { + beforeEach(async () => { + if (wrapperType == "new") { + const newWrapperId = await getCurrencyIdAndMaturity( + assetTokenAddress, + 1, + ); + subjectMaturity = newWrapperId.maturity; + subjectCurrencyId = newWrapperId.currencyId; + const newWrapperAddress = await wrappedFCashFactory.computeAddress( + subjectCurrencyId, + subjectMaturity, + ); + + receiveToken = (await ethers.getContractAt( + "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20", + newWrapperAddress, + )) as IERC20; + } + }); + if (tradeDirection == "selling" && wrapperType == "new") { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "WrappedfCash not deployed for given parameters", + ); + }); } else { - expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); - } + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = + wrapperType == "new" + ? 0 + : await receiveToken.balanceOf(subjectSetToken); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + subjectSetToken, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); + }); - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, + ); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, + ); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, + ); + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf( + setToken.address, + ); + + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub( + otherTokenBalanceBefore, + ); + } else { + expectedResult = otherTokenBalanceBefore.sub( + otherTokenBalanceAfter, + ); + } + + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), + ); + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), + ); + }); - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" + ? subjectMinReceiveQuantity + : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); + + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, + ); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / + 10, + ), + ); + } + + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), + ); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div( - totalSetSupplyEther, - ); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), - ); + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); + + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div( + totalSetSupplyEther, + ); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / + 10, + ), + ); + } + + // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + Math.max(positionChange.div(10 ** 6).toNumber(), 1), + ); + }); + + if (tradeDirection == "buying") { + describe("When sendQuantity is too low", () => { + beforeEach(() => { + subjectSendQuantity = BigNumber.from(1000); + }); + it("should revert", async () => { + const revertReason = + sendTokenType == "underlyingToken" && assetTokenName == "cDai" + ? "Dai/insufficient-balance" + : "ERC20: transfer amount exceeds balance"; + await expect(subject()).to.be.revertedWith(revertReason); + }); + }); + } } + }); + }); + }); + }); + }); - if (receiveTokenType == "underlyingToken") { - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), + describe("#moduleIssue/RedeemHook", () => { + [ + // "issue", "redeem", "manualTrigger" + ].forEach(triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(async () => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + + if (triggerAction == "redeem") { + const underlyingTokenAmount = ethers.utils.parseUnits( + "2.1", + await underlyingToken.decimals(), + ); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + owner.wallet, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken, + wrappedFCashInstance, + true, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else { + await underlyingToken.transfer(caller.address, underlyingTokenAmount); + await underlyingToken + .connect(caller) + .approve(assetToken.address, ethers.constants.MaxUint256); + await assetToken.connect(caller).mint(underlyingTokenAmount); + await assetToken + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + }); + + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const underlyingTokenAmount = ethers.utils.parseUnits( + "2.1", + await underlyingToken.decimals(), ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken, + wrappedFCashInstance, + true, ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); + await wrappedFCashInstance + .connect(caller) + .approve(debtIssuanceModule.address, fCashAmount); } + expect(await wrappedFCashInstance.hasMatured()).to.be.false; }); - - it("should adjust the components position of the sendToken correctly", async () => { + it("fCash position remains the same", async () => { const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, + wrappedFCashInstance.address, ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; await subject(); const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, + wrappedFCashInstance.address, ); + expect(positionAfter).to.eq(positionBefore); + }); + }); - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + describe("When component has matured", () => { + let snapshotId: string; + beforeEach(async () => { + snapshotId = await network.provider.send("evm_snapshot", []); + const maturity = await wrappedFCashInstance.getMaturity(); + await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); + await network.provider.send("evm_mine"); + expect(await wrappedFCashInstance.hasMatured()).to.be.true; + }); + afterEach(async () => { + await network.provider.send("evm_revert", [snapshotId]); + }); - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), + if (triggerAction != "manualTrigger") { + it("should adjust assetToken balance correctly", async () => { + const minAmountAssetTokenTransfered = ethers.utils.parseUnits("90", 8); + const assetTokenBalanceBefore = await assetToken.balanceOf( + caller.address, ); - } + await subject(); + const assetTokenBalanceAfter = await assetToken.balanceOf( + caller.address, + ); + const amountAssetTokenTransfered = + triggerAction == "redeem" + ? assetTokenBalanceAfter.sub(assetTokenBalanceBefore) + : assetTokenBalanceBefore.sub(assetTokenBalanceAfter); - // TODO: Returned trade amount seems to be slighly off / or one of the calculations above has a rounding error. Review - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); - }); + expect(amountAssetTokenTransfered).to.be.gte( + minAmountAssetTokenTransfered, + ); + }); - if (tradeDirection == "buying") { - describe("When sendQuantity is too low", () => { - beforeEach(() => { - subjectSendQuantity = BigNumber.from(1000); - }); - it("should revert", async () => { - const revertReason = - sendTokenType == "underlyingToken" - ? "Dai/insufficient-balance" - : "ERC20"; - await expect(subject()).to.be.revertedWith(revertReason); - }); + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf(caller.address); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf(caller.address); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); }); } - } - }); - }); - }); - }); - }); - describe("#moduleIssue/RedeemHook", () => { - ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { - let subjectSetToken: string; - let subjectReceiver: string; - let subjectAmount: BigNumber; - let caller: SignerWithAddress; - beforeEach(async () => { - subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseEther("1"); - caller = owner.wallet; - subjectReceiver = caller.address; - - if (triggerAction == "redeem") { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai, - wrappedFCashInstance, - true, - ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else { - await dai.transfer(caller.address, daiAmount); - await dai.connect(caller).approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - }); - - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); - } - }; - - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - dai, - daiAmount, - fCashAmount, - cDai, - wrappedFCashInstance, - true, - ); - await wrappedFCashInstance - .connect(caller) - .approve(debtIssuanceModule.address, fCashAmount); - } - expect(await wrappedFCashInstance.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedFCashInstance.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedFCashInstance.address, - ); - expect(positionAfter).to.eq(positionBefore); - }); - }); - - describe("When component has matured", () => { - let snapshotId: string; - beforeEach(async () => { - snapshotId = await network.provider.send("evm_snapshot", []); - const maturity = await wrappedFCashInstance.getMaturity(); - await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); - await network.provider.send("evm_mine"); - expect(await wrappedFCashInstance.hasMatured()).to.be.true; - }); - afterEach(async () => { - await network.provider.send("evm_revert", [snapshotId]); - }); - - if (triggerAction != "manualTrigger") { - it("should adjust assetToken balance correctly", async () => { - const minAmountCDaiTransfered = ethers.utils.parseUnits("90", 8); - const cDaiBalanceBefore = await cDai.balanceOf(caller.address); - await subject(); - const cDaiBalanceAfter = await cDai.balanceOf(caller.address); - const amountCDaiTransfered = - triggerAction == "redeem" - ? cDaiBalanceAfter.sub(cDaiBalanceBefore) - : cDaiBalanceBefore.sub(cDaiBalanceAfter); - - expect(amountCDaiTransfered).to.be.gte(minAmountCDaiTransfered); - }); - - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf(caller.address); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf(caller.address); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); - }); - } - - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be.true; - await subject(); - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be.false; - }); + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be + .true; + await subject(); + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be + .false; + }); - it("Adds assetToken (cDai) to component list", async () => { - expect(await setToken.isComponent(cDai.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(cDai.address)).to.be.true; - }); + it("Adds assetToken to component list", async () => { + expect(await setToken.isComponent(assetToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(assetToken.address)).to.be.true; + }); - it("Adds asset token to component list", async () => { - expect(await setToken.isComponent(cDai.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(cDai.address)).to.be.true; - }); + it("Adds asset token to component list", async () => { + expect(await setToken.isComponent(assetToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(assetToken.address)).to.be.true; + }); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedFCashInstance.balanceOf(subjectSetToken); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedFCashInstance.balanceOf(subjectSetToken); - expect(balanceAfter).to.eq(0); - }); + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedFCashInstance.balanceOf( + subjectSetToken, + ); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedFCashInstance.balanceOf( + subjectSetToken, + ); + expect(balanceAfter).to.eq(0); + }); - it("Afterwards setToken should have received asset token", async () => { - const balanceBefore = await cDai.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await cDai.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + it("Afterwards setToken should have received asset token", async () => { + const balanceBefore = await assetToken.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await assetToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); - it("Afterwards setToken should have positive cDai position", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - cDai.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit(cDai.address); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); + it("Afterwards setToken should have positive assetToken position", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + assetToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + assetToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + }); }); }); }); @@ -698,5 +779,5 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); }); }); - }); + } }); From 688e0ae6bff342a6c1260b486a178167c50ef988 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 17:48:13 +0800 Subject: [PATCH 099/120] Fix type error in integration test --- .../notionalTradeModule.spec.ts | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index ba090b56c..e9f28e980 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -38,17 +38,17 @@ import { const expect = getWaffleExpect(); -type AssetTokenName = "cDai" | "cUsdc"; -type UnderlyingTokenName = "dai" | "usdc"; -const tokenAddresses: Partial> = { +const tokenAddresses: Record = { cDai: "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643", cUsdc: "0x39AA39c021dfbaE8faC545936693aC917d5E7563", + // cWeth: "0x9813ECB6102a117BDbd85AC268D3D5E7ab47523C", }; -const underlyingTokens: Record = { +const underlyingTokens: Record = { cDai: "dai", cUsdc: "usdc", + cWeth: "weth", }; describe("Notional trade module integration [ @forked-mainnet ]", () => { @@ -248,14 +248,8 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - [ - "buying", - // "selling" - ].forEach(tradeDirection => { - [ - "underlyingToken", - // "assetToken" - ].forEach(tokenType => { + ["buying", "selling"].forEach(tradeDirection => { + ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; @@ -577,9 +571,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("#moduleIssue/RedeemHook", () => { - [ - // "issue", "redeem", "manualTrigger" - ].forEach(triggerAction => { + ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; From 07cba1f4681dcd3ac6801486eb2d750144e16011 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 20:45:49 +0800 Subject: [PATCH 100/120] Add eth case to parameterized integration tests --- .../notionalTradeModule.spec.ts | 459 ++++++++++-------- test/integration/notionalTradeModule/utils.ts | 15 +- .../exchange/synthetixExchangeAdapter.spec.ts | 1 - 3 files changed, 278 insertions(+), 197 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index e9f28e980..a2a71b08f 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -28,6 +28,7 @@ import { import { IERC20 } from "@typechain/IERC20"; import { IERC20Metadata } from "@typechain/IERC20Metadata"; import { ICErc20 } from "@typechain/ICErc20"; +import { ICEth } from "@typechain/ICEth"; import { upgradeNotionalProxy, deployWrappedfCashInstance, @@ -38,17 +39,16 @@ import { const expect = getWaffleExpect(); - const tokenAddresses: Record = { cDai: "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643", cUsdc: "0x39AA39c021dfbaE8faC545936693aC917d5E7563", - // cWeth: "0x9813ECB6102a117BDbd85AC268D3D5E7ab47523C", + cEth: "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5", }; const underlyingTokens: Record = { cDai: "dai", cUsdc: "usdc", - cWeth: "weth", + cEth: "weth", }; describe("Notional trade module integration [ @forked-mainnet ]", () => { @@ -57,7 +57,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let owner: Account; let manager: Account; let tokens: ForkedTokens; - let assetToken: ICErc20; + let assetToken: ICErc20 | ICEth; let underlyingToken: IERC20Metadata; let deployer: DeployHelper; let setup: SystemFixture; @@ -76,7 +76,11 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { tokens[underlyingTokens[assetTokenName]].address, tokens[underlyingTokens[assetTokenName]].signer, )) as IERC20Metadata; - assetToken = (await ethers.getContractAt("ICErc20", assetTokenAddress)) as ICErc20; + if (assetTokenName == "cEth") { + assetToken = (await ethers.getContractAt("ICEth", assetTokenAddress)) as ICEth; + } else { + assetToken = (await ethers.getContractAt("ICErc20", assetTokenAddress)) as ICErc20; + } }); describe("When WrappedfCash is deployed", () => { @@ -183,7 +187,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { fCashAmount, assetToken, wrappedFCashInstance, - true, + false, ); await wrappedFCashInstance @@ -203,14 +207,17 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("When initial amount of set token has been issued", () => { beforeEach(async () => { - const setAmountNumber = 1000; + const setAmountNumber = assetTokenName == "cEth" ? 5 : 1000; underlyingTokenAmount = ethers.utils.parseUnits( (setAmountNumber * 2).toString(), await underlyingToken.decimals(), ); fCashAmount = ethers.utils.parseUnits((setAmountNumber * 2).toString(), 8); const setAmount = ethers.utils.parseEther(setAmountNumber.toString()); - await underlyingToken.transfer(owner.address, underlyingTokenAmount); + + if (assetTokenName != "cEth") { + await underlyingToken.transfer(owner.address, underlyingTokenAmount); + } await mintWrappedFCash( owner.wallet, @@ -219,7 +226,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { fCashAmount, assetToken, wrappedFCashInstance, - true, + false, ); await wrappedFCashInstance @@ -248,8 +255,14 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - ["buying", "selling"].forEach(tradeDirection => { - ["underlyingToken", "assetToken"].forEach(tokenType => { + [ + "buying", + "selling" + ].forEach(tradeDirection => { + [ + "underlyingToken", + "assetToken", + ].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; @@ -281,10 +294,19 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const assetTokenBalanceBefore = await otherToken.balanceOf( owner.address, ); - await underlyingToken - .connect(owner.wallet) - .approve(assetToken.address, underlyingTokenQuantity); - await assetToken.connect(owner.wallet).mint(underlyingTokenQuantity); + + if (assetTokenName == "cEth") { + assetToken = assetToken as ICEth; + await assetToken + .connect(owner.wallet) + .mint({ value: underlyingTokenQuantity }); + } else { + await underlyingToken + .connect(owner.wallet) + .approve(assetToken.address, underlyingTokenQuantity); + assetToken = assetToken as ICErc20; + await assetToken.connect(owner.wallet).mint(underlyingTokenQuantity); + } const assetTokenBalanceAfter = await otherToken.balanceOf( owner.address, ); @@ -495,7 +517,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); } - if (receiveTokenType == "underlyingToken") { + if ( + receiveTokenType == "underlyingToken" || + assetTokenName == "cEth" + ) { // TODO: Review why there is some deviation const allowedDeviationPercent = 1; expect(receiveTokenAmountNormalized).to.be.gte( @@ -558,7 +583,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const revertReason = sendTokenType == "underlyingToken" && assetTokenName == "cDai" ? "Dai/insufficient-balance" - : "ERC20: transfer amount exceeds balance"; + : "ERC20"; await expect(subject()).to.be.revertedWith(revertReason); }); }); @@ -571,195 +596,243 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("#moduleIssue/RedeemHook", () => { - ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { - let subjectSetToken: string; - let subjectReceiver: string; - let subjectAmount: BigNumber; - let caller: SignerWithAddress; + [ + "underlying", + "asset" + ].forEach(redeemToken => { + describe(`when redeeming to ${redeemToken}`, () => { + let outputToken: IERC20; beforeEach(async () => { - subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseEther("1"); - caller = owner.wallet; - subjectReceiver = caller.address; - - if (triggerAction == "redeem") { - const underlyingTokenAmount = ethers.utils.parseUnits( - "2.1", - await underlyingToken.decimals(), - ); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - owner.wallet, - underlyingToken, - underlyingTokenAmount, - fCashAmount, - assetToken, - wrappedFCashInstance, - true, - ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else { - await underlyingToken.transfer(caller.address, underlyingTokenAmount); - await underlyingToken - .connect(caller) - .approve(assetToken.address, ethers.constants.MaxUint256); - await assetToken.connect(caller).mint(underlyingTokenAmount); - await assetToken - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } + const toUnderlying = redeemToken == "underlying"; + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, toUnderlying); + outputToken = redeemToken == "underlying" ? underlyingToken : assetToken; }); + [ + "issue", + "redeem", + "manualTrigger" + ].forEach(triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(async () => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + + if (triggerAction == "redeem") { + const underlyingTokenAmount = ethers.utils.parseUnits( + "2.1", + await underlyingToken.decimals(), + ); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + owner.wallet, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken, + wrappedFCashInstance, + false, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else if (triggerAction == "issue") { + if (redeemToken == "asset") { + if (assetTokenName == "cEth") { + assetToken = assetToken as ICEth; + await assetToken + .connect(caller) + .mint({ value: underlyingTokenAmount }); + } else { + await underlyingToken.transfer( + caller.address, + underlyingTokenAmount, + ); + await underlyingToken + .connect(caller) + .approve(assetToken.address, ethers.constants.MaxUint256); + await assetToken.connect(caller).mint(underlyingTokenAmount); + } + await assetToken + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } else { + await underlyingToken.transfer( + caller.address, + underlyingTokenAmount, + ); + await underlyingToken + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + } + }); - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); - } - }; - - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { - const underlyingTokenAmount = ethers.utils.parseUnits( - "2.1", - await underlyingToken.decimals(), - ); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - underlyingToken, - underlyingTokenAmount, - fCashAmount, - assetToken, - wrappedFCashInstance, - true, - ); - await wrappedFCashInstance - .connect(caller) - .approve(debtIssuanceModule.address, fCashAmount); - } - expect(await wrappedFCashInstance.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedFCashInstance.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedFCashInstance.address, - ); - expect(positionAfter).to.eq(positionBefore); - }); - }); + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const underlyingTokenAmount = ethers.utils.parseUnits( + "2.1", + await underlyingToken.decimals(), + ); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken, + wrappedFCashInstance, + false, + ); + await wrappedFCashInstance + .connect(caller) + .approve(debtIssuanceModule.address, fCashAmount); + } + expect(await wrappedFCashInstance.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedFCashInstance.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedFCashInstance.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); - describe("When component has matured", () => { - let snapshotId: string; - beforeEach(async () => { - snapshotId = await network.provider.send("evm_snapshot", []); - const maturity = await wrappedFCashInstance.getMaturity(); - await network.provider.send("evm_setNextBlockTimestamp", [maturity + 1]); - await network.provider.send("evm_mine"); - expect(await wrappedFCashInstance.hasMatured()).to.be.true; - }); - afterEach(async () => { - await network.provider.send("evm_revert", [snapshotId]); - }); + describe("When component has matured", () => { + let snapshotId: string; + beforeEach(async () => { + snapshotId = await network.provider.send("evm_snapshot", []); + const maturity = await wrappedFCashInstance.getMaturity(); + await network.provider.send("evm_setNextBlockTimestamp", [ + maturity + 1, + ]); + await network.provider.send("evm_mine"); + expect(await wrappedFCashInstance.hasMatured()).to.be.true; + }); + afterEach(async () => { + await network.provider.send("evm_revert", [snapshotId]); + }); - if (triggerAction != "manualTrigger") { - it("should adjust assetToken balance correctly", async () => { - const minAmountAssetTokenTransfered = ethers.utils.parseUnits("90", 8); - const assetTokenBalanceBefore = await assetToken.balanceOf( - caller.address, - ); - await subject(); - const assetTokenBalanceAfter = await assetToken.balanceOf( - caller.address, - ); - const amountAssetTokenTransfered = - triggerAction == "redeem" - ? assetTokenBalanceAfter.sub(assetTokenBalanceBefore) - : assetTokenBalanceBefore.sub(assetTokenBalanceAfter); + if (triggerAction != "manualTrigger") { + it("should adjust outputToken balance correctly", async () => { + const minAmountOutputTokenTransfered = ethers.utils.parseUnits( + "90", + 8, + ); + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); + await subject(); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); + const amountOutputTokenTransfered = + triggerAction == "redeem" + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); - expect(amountAssetTokenTransfered).to.be.gte( - minAmountAssetTokenTransfered, - ); - }); + expect(amountOutputTokenTransfered).to.be.gte( + minAmountOutputTokenTransfered, + ); + }); - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf(caller.address); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf(caller.address); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); - }); - } + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf( + caller.address, + ); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf( + caller.address, + ); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + } - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be - .true; - await subject(); - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be - .false; - }); + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be + .true; + await subject(); + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be + .false; + }); - it("Adds assetToken to component list", async () => { - expect(await setToken.isComponent(assetToken.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(assetToken.address)).to.be.true; - }); + it("Adds outputToken to component list", async () => { + expect(await setToken.isComponent(outputToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be.true; + }); - it("Adds asset token to component list", async () => { - expect(await setToken.isComponent(assetToken.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(assetToken.address)).to.be.true; - }); + it("Adds asset token to component list", async () => { + expect(await setToken.isComponent(outputToken.address)).to.be.false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be.true; + }); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedFCashInstance.balanceOf( - subjectSetToken, - ); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedFCashInstance.balanceOf( - subjectSetToken, - ); - expect(balanceAfter).to.eq(0); - }); + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedFCashInstance.balanceOf( + subjectSetToken, + ); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedFCashInstance.balanceOf( + subjectSetToken, + ); + expect(balanceAfter).to.eq(0); + }); - it("Afterwards setToken should have received asset token", async () => { - const balanceBefore = await assetToken.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await assetToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + it("Afterwards setToken should have received asset token", async () => { + const balanceBefore = await outputToken.balanceOf(subjectSetToken); + await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); - it("Afterwards setToken should have positive assetToken position", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - assetToken.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - assetToken.address, - ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); + it("Afterwards setToken should have positive outputToken position", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + }); }); }); }); diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts index 5997b6a0b..e91056501 100644 --- a/test/integration/notionalTradeModule/utils.ts +++ b/test/integration/notionalTradeModule/utils.ts @@ -4,6 +4,7 @@ import { INotionalProxy, WrappedfCash, WrappedfCashFactory } from "@utils/contra import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; import { IERC20 } from "@typechain/IERC20"; import { ICErc20 } from "@typechain/ICErc20"; +import { ICEth } from "@typechain/ICEth"; import DeployHelper from "@utils/deploys"; import { NUpgradeableBeacon__factory } from "@typechain/factories/NUpgradeableBeacon__factory"; @@ -13,6 +14,8 @@ const batchActionArtifact = require("../../../external/abi/notional/BatchAction. const erc1155ActionArtifact = require("../../../external/abi/notional/ERC1155Action.json"); const routerArtifact = require("../../../external/abi/notional/Router.json"); +const cEthAddress = "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5"; + async function impersonateAccount(address: string) { await network.provider.request({ method: "hardhat_impersonateAccount", @@ -128,7 +131,7 @@ export async function mintWrappedFCash( underlyingToken: IERC20, underlyingTokenAmount: BigNumber, fCashAmount: BigNumber, - assetToken: ICErc20, + assetToken: ICErc20 | ICEth, wrappedFCashInstance: WrappedfCash, useUnderlying: boolean = false, receiver: string | undefined = undefined, @@ -142,9 +145,15 @@ export async function mintWrappedFCash( inputToken = underlyingToken; depositAmountExternal = underlyingTokenAmount; } else { - await underlyingToken.connect(signer).approve(assetToken.address, underlyingTokenAmount); const assetTokenBalanceBefore = await assetToken.balanceOf(signer.address); - await assetToken.mint(underlyingTokenAmount); + if (assetToken.address == cEthAddress) { + assetToken = assetToken as ICEth; + await assetToken.connect(signer).mint({ value: underlyingTokenAmount }); + } else { + assetToken = assetToken as ICErc20; + await underlyingToken.connect(signer).approve(assetToken.address, underlyingTokenAmount); + await assetToken.connect(signer).mint(underlyingTokenAmount); + } const assetTokenBalanceAfter = await assetToken.balanceOf(signer.address); depositAmountExternal = assetTokenBalanceAfter.sub(assetTokenBalanceBefore); inputToken = assetToken; diff --git a/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts b/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts index c1ba400be..5baf6876c 100644 --- a/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts +++ b/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts @@ -20,7 +20,6 @@ import { ether, } from "@utils/index"; import { - cacheBeforeEach, getAccounts, getSystemFixture, getWaffleExpect, From e06b6793bc1a7d1d2bbdacd7383539407d6ae57c Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 20:50:03 +0800 Subject: [PATCH 101/120] remove duplicated test --- .../notionalTradeModule/notionalTradeModule.spec.ts | 6 ------ 1 file changed, 6 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index a2a71b08f..18d1053d1 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -797,12 +797,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(await setToken.isComponent(outputToken.address)).to.be.true; }); - it("Adds asset token to component list", async () => { - expect(await setToken.isComponent(outputToken.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be.true; - }); - it("Afterwards setToken should have no fCash balance anymore", async () => { const balanceBefore = await wrappedFCashInstance.balanceOf( subjectSetToken, From 280e347e3692a49aca573a4fe20c114e7cae97a7 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 20:59:56 +0800 Subject: [PATCH 102/120] Merge a few tests to speed up integration pipeline --- .../notionalTradeModule.spec.ts | 52 +++++++------------ 1 file changed, 18 insertions(+), 34 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 18d1053d1..b0462a1bb 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -767,7 +767,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ); }); - it("should issue correct amount of set tokens", async () => { + it(`should ${triggerAction} correct amount of set tokens`, async () => { const setTokenBalanceBefore = await setToken.balanceOf( caller.address, ); @@ -783,48 +783,32 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); } - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be - .true; - await subject(); - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be - .false; - }); + it("Adjusts balances and positions correctly", async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf(subjectSetToken); - it("Adds outputToken to component list", async () => { - expect(await setToken.isComponent(outputToken.address)).to.be.false; await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be.true; - }); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedFCashInstance.balanceOf( + // Check that fcash balance is 0 after + const fCashBalanceAfter = await wrappedFCashInstance.balanceOf( subjectSetToken, ); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedFCashInstance.balanceOf( - subjectSetToken, - ); - expect(balanceAfter).to.eq(0); - }); + expect(fCashBalanceAfter).to.eq(0); - it("Afterwards setToken should have received asset token", async () => { - const balanceBefore = await outputToken.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + // Check that fcash was removed from component list + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be .false; - it("Afterwards setToken should have positive outputToken position", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( + // Check that output token was added to component list + expect(await setToken.isComponent(outputToken.address)).to.be.true; + + // Check that output balance is positive afterwards + const outputTokenBalanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(outputTokenBalanceAfter.sub(outputTokenBalanceBefore)).to.be.gt(0); + + // Check that output token position is positive afterwards + const outputTokenPositionAfter = await setToken.getDefaultPositionRealUnit( outputToken.address, ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); + expect(outputTokenPositionAfter).to.be.gt(0); }); }); }); From aa75a94881b6921f6f49346865cc6c852b345131 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Wed, 18 May 2022 21:17:22 +0800 Subject: [PATCH 103/120] Revert accidental change in synthetixExchangeAdapter test --- .../integration/exchange/synthetixExchangeAdapter.spec.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts b/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts index 5baf6876c..c1ba400be 100644 --- a/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts +++ b/test/protocol/integration/exchange/synthetixExchangeAdapter.spec.ts @@ -20,6 +20,7 @@ import { ether, } from "@utils/index"; import { + cacheBeforeEach, getAccounts, getSystemFixture, getWaffleExpect, From bb1e3761289a4336cfa6e4d96f8eb595163135a5 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 11:48:48 +0800 Subject: [PATCH 104/120] Speed up tests using evm snapshots --- .../notionalTradeModule.spec.ts | 179 ++++++++++-------- 1 file changed, 100 insertions(+), 79 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index b0462a1bb..511f057e8 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -42,7 +42,7 @@ const expect = getWaffleExpect(); const tokenAddresses: Record = { cDai: "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643", cUsdc: "0x39AA39c021dfbaE8faC545936693aC917d5E7563", - cEth: "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5", + // cEth: "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5", }; const underlyingTokens: Record = { @@ -52,70 +52,82 @@ const underlyingTokens: Record = { }; describe("Notional trade module integration [ @forked-mainnet ]", () => { - for (const [assetTokenName, assetTokenAddress] of Object.entries(tokenAddresses)) { - describe(`When asset token is ${assetTokenName}`, () => { - let owner: Account; - let manager: Account; - let tokens: ForkedTokens; - let assetToken: ICErc20 | ICEth; - let underlyingToken: IERC20Metadata; - let deployer: DeployHelper; - let setup: SystemFixture; - - beforeEach(async () => { - [owner, manager] = await getAccounts(); - deployer = new DeployHelper(owner.wallet); - setup = getSystemFixture(owner.address); - await setup.initialize(); - - // Setup ForkedTokens - await initializeForkedTokens(deployer); - tokens = getForkedTokens(); - underlyingToken = (await ethers.getContractAt( - "IERC20Metadata", - tokens[underlyingTokens[assetTokenName]].address, - tokens[underlyingTokens[assetTokenName]].signer, - )) as IERC20Metadata; - if (assetTokenName == "cEth") { - assetToken = (await ethers.getContractAt("ICEth", assetTokenAddress)) as ICEth; - } else { - assetToken = (await ethers.getContractAt("ICErc20", assetTokenAddress)) as ICErc20; - } - }); - - describe("When WrappedfCash is deployed", () => { - let wrappedFCashInstance: WrappedfCash; - let wrappedFCashFactory: WrappedfCashFactory; - let currencyId: number; - let maturity: BigNumber; - beforeEach(async () => { - wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); - ({ currencyId, maturity } = await getCurrencyIdAndMaturity(assetTokenAddress, 0)); - wrappedFCashInstance = await deployWrappedfCashInstance( - wrappedFCashFactory, - currencyId, - maturity, - ); + let owner: Account; + let manager: Account; + let tokens: ForkedTokens; + let deployer: DeployHelper; + let setup: SystemFixture; + before(async () => { + [owner, manager] = await getAccounts(); + deployer = new DeployHelper(owner.wallet); + setup = getSystemFixture(owner.address); + await setup.initialize(); + + // Setup ForkedTokens + await initializeForkedTokens(deployer); + tokens = getForkedTokens(); + }); + describe("When notional proxy is upgraded and wrapper factory deployed", () => { + before(async () => { + await upgradeNotionalProxy(owner.wallet); + }); + for (const [assetTokenName, assetTokenAddress] of Object.entries(tokenAddresses)) { + describe(`When asset token is ${assetTokenName}`, () => { + let assetToken: ICErc20 | ICEth; + let underlyingToken: IERC20Metadata; + + before(async () => { + underlyingToken = (await ethers.getContractAt( + "IERC20Metadata", + tokens[underlyingTokens[assetTokenName]].address, + tokens[underlyingTokens[assetTokenName]].signer, + )) as IERC20Metadata; + if (assetTokenName == "cEth") { + assetToken = (await ethers.getContractAt("ICEth", assetTokenAddress)) as ICEth; + } else { + assetToken = (await ethers.getContractAt("ICErc20", assetTokenAddress)) as ICErc20; + } }); - describe("When notional proxy is upgraded", () => { + describe("When WrappedfCash is deployed", () => { + let wrappedFCashInstance: WrappedfCash; + let currencyId: number; + let maturity: BigNumber; let underlyingTokenAmount: BigNumber; let fCashAmount: BigNumber; - beforeEach(async () => { - await upgradeNotionalProxy(owner.wallet); + let snapshotId: string; + let wrappedFCashFactory: WrappedfCashFactory; + + before(async () => { + wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); + ({ currencyId, maturity } = await getCurrencyIdAndMaturity(assetTokenAddress, 0)); + wrappedFCashInstance = await deployWrappedfCashInstance( + wrappedFCashFactory, + currencyId, + maturity, + ); underlyingTokenAmount = ethers.utils.parseUnits("1", await underlyingToken.decimals()); fCashAmount = ethers.utils.parseUnits("1", 8); await underlyingToken.transfer(owner.address, underlyingTokenAmount); }); + beforeEach(async () => { + snapshotId = await network.provider.send("evm_snapshot", []); + }); + + afterEach(async () => { + await network.provider.send("evm_revert", [snapshotId]); + }); + describe("When setToken with wrappedFCash component is deployed", () => { let debtIssuanceModule: DebtIssuanceModuleV2; let mockPreIssuanceHook: ManagerIssuanceHookMock; let notionalTradeModule: NotionalTradeModule; let setToken: SetToken; let wrappedFCashPosition: BigNumber; + let snapshotId: string; - beforeEach(async () => { + before(async () => { // Deploy DebtIssuanceModuleV2 debtIssuanceModule = await deployer.modules.deployDebtIssuanceModuleV2( setup.controller.address, @@ -139,6 +151,13 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await initialize(); }); + beforeEach(async () => { + snapshotId = await network.provider.send("evm_snapshot", []); + }); + + afterEach(async () => { + await network.provider.send("evm_revert", [snapshotId]); + }); async function initialize() { // Create Set token @@ -256,13 +275,9 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); [ - "buying", - "selling" + "buying", "selling" ].forEach(tradeDirection => { - [ - "underlyingToken", - "assetToken", - ].forEach(tokenType => { + ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; @@ -334,7 +349,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { if (tokenType == "assetToken") { subjectMinReceiveQuantity = ethers.utils.parseUnits("0.4", 8); } else { - subjectMinReceiveQuantity = ethers.utils.parseEther("0.9"); + subjectMinReceiveQuantity = ethers.utils.parseUnits( + "0.9", + await underlyingToken.decimals(), + ); } } }); @@ -511,8 +529,8 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } else { receiveTokenAmountNormalized = BigNumber.from( Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / - 10, + receiveTokenAmount.mul(1000).div(totalSetSupplyEther).toNumber() / + 1000, ), ); } @@ -596,10 +614,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); describe("#moduleIssue/RedeemHook", () => { - [ - "underlying", - "asset" - ].forEach(redeemToken => { + ["underlying", "asset"].forEach(redeemToken => { describe(`when redeeming to ${redeemToken}`, () => { let outputToken: IERC20; beforeEach(async () => { @@ -610,9 +625,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { outputToken = redeemToken == "underlying" ? underlyingToken : assetToken; }); [ - "issue", - "redeem", - "manualTrigger" + "issue", "redeem", "manualTrigger" ].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; @@ -631,6 +644,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await underlyingToken.decimals(), ); const fCashAmount = ethers.utils.parseUnits("2", 8); + await underlyingToken.transfer(owner.address, underlyingTokenAmount); await mintWrappedFCash( owner.wallet, underlyingToken, @@ -702,6 +716,11 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { await underlyingToken.decimals(), ); const fCashAmount = ethers.utils.parseUnits("2", 8); + await underlyingToken.transfer( + caller.address, + underlyingTokenAmount, + ); + await mintWrappedFCash( caller, underlyingToken, @@ -711,6 +730,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { wrappedFCashInstance, false, ); + await wrappedFCashInstance .connect(caller) .approve(debtIssuanceModule.address, fCashAmount); @@ -745,11 +765,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); if (triggerAction != "manualTrigger") { - it("should adjust outputToken balance correctly", async () => { - const minAmountOutputTokenTransfered = ethers.utils.parseUnits( - "90", - 8, - ); + it("callers token balance is adjusted in the correct direction", async () => { const outputTokenBalanceBefore = await outputToken.balanceOf( caller.address, ); @@ -762,9 +778,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); - expect(amountOutputTokenTransfered).to.be.gte( - minAmountOutputTokenTransfered, - ); + expect(amountOutputTokenTransfered).to.be.gt(0); }); it(`should ${triggerAction} correct amount of set tokens`, async () => { @@ -784,7 +798,9 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { } it("Adjusts balances and positions correctly", async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf(subjectSetToken); + const outputTokenBalanceBefore = await outputToken.balanceOf( + subjectSetToken, + ); await subject(); @@ -795,14 +811,19 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { expect(fCashBalanceAfter).to.eq(0); // Check that fcash was removed from component list - expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be .false; + expect(await setToken.isComponent(wrappedFCashInstance.address)).to.be + .false; // Check that output token was added to component list expect(await setToken.isComponent(outputToken.address)).to.be.true; // Check that output balance is positive afterwards - const outputTokenBalanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(outputTokenBalanceAfter.sub(outputTokenBalanceBefore)).to.be.gt(0); + const outputTokenBalanceAfter = await outputToken.balanceOf( + subjectSetToken, + ); + expect( + outputTokenBalanceAfter.sub(outputTokenBalanceBefore), + ).to.be.gt(0); // Check that output token position is positive afterwards const outputTokenPositionAfter = await setToken.getDefaultPositionRealUnit( @@ -821,6 +842,6 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { }); }); }); - }); - } + } + }); }); From 15cec5bd5512cef615510cd82f5a389aa1acca8f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 12:35:49 +0800 Subject: [PATCH 105/120] Fix failing test due to rounding error / deviation --- .../notionalTradeModule.spec.ts | 38 ++++++++----------- 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index 511f057e8..a6c7e383a 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -274,9 +274,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - [ - "buying", "selling" - ].forEach(tradeDirection => { + ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; @@ -527,29 +525,25 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { totalSetSupplyEther, ); } else { + const precision = 10 ** 9; receiveTokenAmountNormalized = BigNumber.from( Math.floor( - receiveTokenAmount.mul(1000).div(totalSetSupplyEther).toNumber() / - 1000, + receiveTokenAmount + .mul(precision) + .div(totalSetSupplyEther) + .toNumber() / precision, ), ); } - if ( - receiveTokenType == "underlyingToken" || - assetTokenName == "cEth" - ) { - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), - ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), - ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } + // TODO: Review why there is some deviation + const allowedDeviation = receiveTokenAmountNormalized.div(10000); + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.sub(allowedDeviation), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.add(allowedDeviation), + ); }); it("should adjust the components position of the sendToken correctly", async () => { @@ -624,9 +618,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .setRedeemToUnderlying(subjectSetToken, toUnderlying); outputToken = redeemToken == "underlying" ? underlyingToken : assetToken; }); - [ - "issue", "redeem", "manualTrigger" - ].forEach(triggerAction => { + ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; From c18fccb8ca6c43771f50b200076d91b6557d39d4 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 12:38:14 +0800 Subject: [PATCH 106/120] Reactivate cEth testcase --- .../integration/notionalTradeModule/notionalTradeModule.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index a6c7e383a..d96107416 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -42,7 +42,7 @@ const expect = getWaffleExpect(); const tokenAddresses: Record = { cDai: "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643", cUsdc: "0x39AA39c021dfbaE8faC545936693aC917d5E7563", - // cEth: "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5", + cEth: "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5", }; const underlyingTokens: Record = { From 14195e08eb421f035ec8ea310a00e54d3ad9f6fc Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 14:28:37 +0800 Subject: [PATCH 107/120] Integrate updated wrapper version with weth support --- .../wrap/notional/WrappedfCash.sol | 3 +- .../modules/v1/NotionalTradeModule.sol | 15 +- package.json | 2 +- .../notionalTradeModule.spec.ts | 28 +- test/integration/notionalTradeModule/utils.ts | 3 +- .../modules/v1/notionalTradeModule.spec.ts | 528 +++++++++--------- utils/deploys/deployExternal.ts | 4 +- utils/deploys/deployModules.ts | 4 +- yarn.lock | 4 +- 9 files changed, 318 insertions(+), 273 deletions(-) diff --git a/contracts/protocol/integration/wrap/notional/WrappedfCash.sol b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol index 68bfaa299..9c79d4033 100644 --- a/contracts/protocol/integration/wrap/notional/WrappedfCash.sol +++ b/contracts/protocol/integration/wrap/notional/WrappedfCash.sol @@ -2,8 +2,9 @@ pragma solidity 0.8.11; import { wfCashERC4626 } from "wrapped-fcash/contracts/wfCashERC4626.sol"; import { INotionalV2 } from "wrapped-fcash/interfaces/notional/INotionalV2.sol"; +import { IWETH9 } from "wrapped-fcash/interfaces/IWETH9.sol"; contract WrappedfCash is wfCashERC4626 { - constructor(INotionalV2 _notionalProxy) wfCashERC4626(_notionalProxy){ + constructor(INotionalV2 _notionalProxy, IWETH9 _weth) wfCashERC4626(_notionalProxy, _weth){ } } diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 3123c0a7f..b3f86e371 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -43,6 +43,9 @@ import { ModuleBase } from "../../lib/ModuleBase.sol"; contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIssuanceHook { using Address for address; + // This value has to be the same as the one used in wrapped-fcash Constants + address internal constant ETH_ADDRESS = address(0); + /* ============ Events ============ */ /** @@ -115,6 +118,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Factory that is used to deploy and check fCash wrapper contracts IWrappedfCashFactory public immutable wrappedfCashFactory; + IERC20 public immutable weth; /* ============ Constructor ============ */ @@ -125,12 +129,15 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss */ constructor( IController _controller, - IWrappedfCashFactory _wrappedfCashFactory + IWrappedfCashFactory _wrappedfCashFactory, + IERC20 _weth + ) public ModuleBase(_controller) { wrappedfCashFactory = _wrappedfCashFactory; + weth = _weth; } /* ============ External Functions ============ */ @@ -386,6 +393,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss IWrappedfCashComplete fCashPosition = IWrappedfCashComplete(component); if(fCashPosition.hasMatured()) { (IERC20 receiveToken,) = fCashPosition.getToken(toUnderlying); + if(address(receiveToken) == ETH_ADDRESS) { + receiveToken = weth; + } uint256 fCashBalance = fCashPosition.balanceOf(address(_setToken)); _redeemFCashPosition(_setToken, fCashPosition, receiveToken, fCashBalance, 0); } @@ -570,6 +580,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss returns(IERC20 underlyingToken, IERC20 assetToken) { (underlyingToken,) = _fCashPosition.getUnderlyingToken(); + if(address(underlyingToken) == ETH_ADDRESS) { + underlyingToken = weth; + } (assetToken,,) = _fCashPosition.getAssetToken(); } diff --git a/package.json b/package.json index 805cbfde8..463831fc1 100644 --- a/package.json +++ b/package.json @@ -112,7 +112,7 @@ "jsbi": "^3.2.5", "module-alias": "^2.2.2", "notional-solidity-sdk": "https://github.com/ckoopmann/notional-solidity-sdk.git#77aa2f8fd8a72b8f5865e561f2d39d4606c3740c", - "wrapped-fcash": "https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f", + "wrapped-fcash": "https://github.com/ckoopmann/wrapped-fcash.git#6b7d870c9b750aa343f0405f3543c9bbb0e3cdfc", "openzeppelin-contracts-V4": "npm:@openzeppelin/contracts@4.5", "@openzeppelin-upgradeable/contracts": "npm:@openzeppelin/contracts-upgradeable@4.5.2", "replace-in-file": "^6.1.0" diff --git a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts index d96107416..19e0f4f0d 100644 --- a/test/integration/notionalTradeModule/notionalTradeModule.spec.ts +++ b/test/integration/notionalTradeModule/notionalTradeModule.spec.ts @@ -99,7 +99,11 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { let wrappedFCashFactory: WrappedfCashFactory; before(async () => { - wrappedFCashFactory = await deployWrappedfCashFactory(deployer, owner.wallet); + wrappedFCashFactory = await deployWrappedfCashFactory( + deployer, + owner.wallet, + tokens.weth.address, + ); ({ currencyId, maturity } = await getCurrencyIdAndMaturity(assetTokenAddress, 0)); wrappedFCashInstance = await deployWrappedfCashInstance( wrappedFCashFactory, @@ -138,6 +142,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { notionalTradeModule = await deployer.modules.deployNotionalTradeModule( setup.controller.address, wrappedFCashFactory.address, + tokens.weth.address, ); await setup.controller.addModule(notionalTradeModule.address); @@ -274,8 +279,14 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { caller = manager.wallet; }); - ["buying", "selling"].forEach(tradeDirection => { - ["underlyingToken", "assetToken"].forEach(tokenType => { + [ + "buying", + "selling" + ].forEach(tradeDirection => { + [ + "underlyingToken", + "assetToken" + ].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; let receiveTokenType: string; @@ -525,7 +536,7 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { totalSetSupplyEther, ); } else { - const precision = 10 ** 9; + const precision = 10 ** 3; receiveTokenAmountNormalized = BigNumber.from( Math.floor( receiveTokenAmount @@ -595,7 +606,10 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { const revertReason = sendTokenType == "underlyingToken" && assetTokenName == "cDai" ? "Dai/insufficient-balance" - : "ERC20"; + : sendTokenType == "underlyingToken" && + assetTokenName == "cEth" + ? "Insufficient cash" + : "ERC20"; await expect(subject()).to.be.revertedWith(revertReason); }); }); @@ -618,7 +632,9 @@ describe("Notional trade module integration [ @forked-mainnet ]", () => { .setRedeemToUnderlying(subjectSetToken, toUnderlying); outputToken = redeemToken == "underlying" ? underlyingToken : assetToken; }); - ["issue", "redeem", "manualTrigger"].forEach(triggerAction => { + [ + "issue", "redeem", "manualTrigger" + ].forEach(triggerAction => { describe(`When hook is triggered by ${triggerAction}`, () => { let subjectSetToken: string; let subjectReceiver: string; diff --git a/test/integration/notionalTradeModule/utils.ts b/test/integration/notionalTradeModule/utils.ts index e91056501..5209e1bdb 100644 --- a/test/integration/notionalTradeModule/utils.ts +++ b/test/integration/notionalTradeModule/utils.ts @@ -111,9 +111,10 @@ export async function deployWrappedfCashInstance( return wrappedFCashInstance; } -export async function deployWrappedfCashFactory(deployer: DeployHelper, owner: SignerWithAddress) { +export async function deployWrappedfCashFactory(deployer: DeployHelper, owner: SignerWithAddress, wethAddress: string) { const wrappedfCashImplementation = await deployer.external.deployWrappedfCash( NOTIONAL_PROXY_ADDRESS, + wethAddress, ); const wrappedfCashBeacon = await new NUpgradeableBeacon__factory(owner).deploy( diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index dea290aba..49e1e1b1b 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -93,6 +93,7 @@ describe("NotionalTradeModule", () => { return deployer.modules.deployNotionalTradeModule( subjectController, subjectWrappedfCashFactory, + setup.weth.address, ); } @@ -110,6 +111,7 @@ describe("NotionalTradeModule", () => { notionalTradeModule = await deployer.modules.deployNotionalTradeModule( setup.controller.address, wrappedfCashFactoryMock.address, + setup.weth.address, ); await setup.controller.addModule(notionalTradeModule.address); @@ -704,7 +706,6 @@ describe("NotionalTradeModule", () => { }); }); } else { - describe("When wrappedFCash is not deployed for given parameters", () => { beforeEach(async () => { subjectCurrencyId = 10; @@ -911,85 +912,25 @@ describe("NotionalTradeModule", () => { .setRedeemToUnderlying(subjectSetToken, toUnderlying); outputToken = redeemToken == "underlying" ? dai : cDai; }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach(triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { - beforeEach(async () => { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - - await cDai.connect(owner.wallet).mint(ether(1)); - const cDaiBalance = await cDai.balanceOf(owner.address); - await cDai - .connect(owner.wallet) - .transfer(wrappedfCashMock.address, cDaiBalance); - - const redemptionAssetAmount = cDaiBalance.div(2); - await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); - - if (triggerAction == "redeem") { - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, - ); - await debtIssuanceModule + ["issue", "redeem", "manualTrigger", "removeModule"].forEach( + triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + beforeEach(async () => { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + + await cDai.connect(owner.wallet).mint(ether(1)); + const cDaiBalance = await cDai.balanceOf(owner.address); + await cDai .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else if (triggerAction == "issue") { - await dai.transfer(caller.address, daiAmount); - - if (redeemToken == "underlying") { - // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance - await dai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } else { - // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance - await dai - .connect(caller) - .approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - } - }); + .transfer(wrappedfCashMock.address, cDaiBalance); - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "removeModule") { - return setToken - .connect(manager.wallet) - .removeModule(notionalTradeModule.address); - } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); - } - }; - - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); + const redemptionAssetAmount = cDaiBalance.div(2); + await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); + + if (triggerAction == "redeem") { await mintWrappedFCash( - caller, + owner.wallet, dai, daiAmount, fCashAmount, @@ -997,222 +938,295 @@ describe("NotionalTradeModule", () => { wrappedfCashMock as any, true, ); - await wrappedfCashMock + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + .approve(debtIssuanceModule.address, subjectAmount); + } else if (triggerAction == "issue") { + await dai.transfer(caller.address, daiAmount); + + if (redeemToken == "underlying") { + // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance + await dai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } else { + // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance + await dai + .connect(caller) + .approve(cDai.address, ethers.constants.MaxUint256); + await cDai.connect(caller).mint(daiAmount); + await cDai + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } } - expect(await wrappedfCashMock.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - expect(positionAfter).to.eq(positionBefore); - }); - }); - - describe("When component has matured", () => { - beforeEach(async () => { - await wrappedfCashMock.setMatured(true); }); - if (["issue", "redeem"].includes(triggerAction)) { - it(`should adjust ${redeemToken} balance correctly`, async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf( - caller.address, - ); - await subject(); - const outputTokenBalanceAfter = await outputToken.balanceOf( - caller.address, - ); - const amountCDaiTransfered = - triggerAction == "redeem" - ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) - : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; - expect(amountCDaiTransfered).to.be.gt(0); + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const daiAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + dai, + daiAmount, + fCashAmount, + cDai as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(caller) + .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); + } + expect(await wrappedfCashMock.hasMatured()).to.be.false; }); - - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf( - caller.address, + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, ); await subject(); - const setTokenBalanceAfter = await setToken.balanceOf(caller.address); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, ); + expect(positionAfter).to.eq(positionBefore); }); - } - - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; - await subject(); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .false; }); - it("Removes wrappedFCash from the list of registered fCashPositions", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.not.include(wrappedfCashMock.address); - }); + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); - it(`Adds ${redeemToken} token to component list`, async () => { - expect(await setToken.isComponent(outputToken.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be.true; - }); + if (["issue", "redeem"].includes(triggerAction)) { + it(`should adjust ${redeemToken} balance correctly`, async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); + await subject(); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); + const amountCDaiTransfered = + triggerAction == "redeem" + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedfCashMock.balanceOf(subjectSetToken); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedfCashMock.balanceOf(subjectSetToken); - expect(balanceAfter).to.eq(0); - }); + expect(amountCDaiTransfered).to.be.gt(0); + }); - it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - const balanceBefore = await outputToken.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf( + caller.address, + ); + await subject(); + const setTokenBalanceAfter = await setToken.balanceOf( + caller.address, + ); + const expectedBalanceChange = + triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, + ); + }); + } - it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); - }); + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .false; + }); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include(wrappedfCashMock.address); }); - it("should not revert", async () => { + + it(`Adds ${redeemToken} token to component list`, async () => { + expect(await setToken.isComponent(outputToken.address)).to.be.false; await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be.true; }); - }); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceAfter).to.eq(0); }); - it("should not revert", async () => { + + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf(subjectSetToken); await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); }); - }); - if (triggerAction == "manualTrigger") { - [ - "wrong currencyId", - "wrong maturity", - "reverted getDecodedID", - "reverted computeAddress", - "negative unit", - ].forEach(reason => { - describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { - beforeEach(async () => { - if (reason == "wrong currencyId") { - await wrappedfCashMock.initialize(420, maturity); - } else if (reason == "wrong maturity") { - await wrappedfCashMock.initialize(currencyId, 420); - } else if (reason == "reverted getDecodedID") { - await wrappedfCashMock.setRevertDecodedID(true); - } else if (reason == "reverted computeAddress") { - await wrappedfCashFactoryMock.setRevertComputeAddress(true); - } else if (reason == "negative unit") { - // We add the owner as a fake-module to be able to add arbitrary addresses as components - await setup.controller - .connect(owner.wallet) - .addModule(owner.address); - await setToken.connect(manager.wallet).addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - // Just changing the default position to <= 0 will make it disappear from the position list - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(wrappedfCashMock.address, -420); - const externalPositionModule = await getRandomAddress(); - await setToken - .connect(owner.wallet) - .addExternalPositionModule( - wrappedfCashMock.address, - externalPositionModule, - ); - // Have to add it back in as an external position to get a negative unit - await setToken - .connect(owner.wallet) - .editExternalPositionUnit( - wrappedfCashMock.address, - externalPositionModule, - -420, - ); - } - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - expect(positionAfter).to.eq(positionBefore); - }); - }); + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); }); - describe("When setToken contains an additional position that is not a smart contract", () => { + describe("When positions have been redeemed already", () => { beforeEach(async () => { - const nonContractComponent = await getRandomAddress(); - // We add the owner as a fake-module to be able to add arbitrary addresses as components - await setup.controller - .connect(owner.wallet) - .addModule(owner.address); - await setToken.connect(manager.wallet).addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - await setToken - .connect(owner.wallet) - .addComponent(nonContractComponent); - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(nonContractComponent, 420); + await notionalTradeModule.redeemMaturedPositions(setToken.address); }); - it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - const balanceBefore = await outputToken.balanceOf(subjectSetToken); + it("should not revert", async () => { await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); }); + }); - it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions(setToken.address); + }); + it("should not revert", async () => { await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); }); }); - } + + if (triggerAction == "manualTrigger") { + [ + "wrong currencyId", + "wrong maturity", + "reverted getDecodedID", + "reverted computeAddress", + "negative unit", + ].forEach(reason => { + describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { + beforeEach(async () => { + if (reason == "wrong currencyId") { + await wrappedfCashMock.initialize(420, maturity); + } else if (reason == "wrong maturity") { + await wrappedfCashMock.initialize(currencyId, 420); + } else if (reason == "reverted getDecodedID") { + await wrappedfCashMock.setRevertDecodedID(true); + } else if (reason == "reverted computeAddress") { + await wrappedfCashFactoryMock.setRevertComputeAddress(true); + } else if (reason == "negative unit") { + // We add the owner as a fake-module to be able to add arbitrary addresses as components + await setup.controller + .connect(owner.wallet) + .addModule(owner.address); + await setToken + .connect(manager.wallet) + .addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + // Just changing the default position to <= 0 will make it disappear from the position list + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, -420); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule( + wrappedfCashMock.address, + externalPositionModule, + ); + // Have to add it back in as an external position to get a negative unit + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( + wrappedfCashMock.address, + externalPositionModule, + -420, + ); + } + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); + }); + + describe("When setToken contains an additional position that is not a smart contract", () => { + beforeEach(async () => { + const nonContractComponent = await getRandomAddress(); + // We add the owner as a fake-module to be able to add arbitrary addresses as components + await setup.controller + .connect(owner.wallet) + .addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .addComponent(nonContractComponent); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(nonContractComponent, 420); + }); + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf( + subjectSetToken, + ); + await subject(); + const balanceAfter = await outputToken.balanceOf(subjectSetToken); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + }); + } + }); }); - }); - }); + }, + ); }); }); }); diff --git a/utils/deploys/deployExternal.ts b/utils/deploys/deployExternal.ts index 9d0c3fd01..965042a3c 100644 --- a/utils/deploys/deployExternal.ts +++ b/utils/deploys/deployExternal.ts @@ -721,8 +721,8 @@ export default class DeployExternalContracts { } // Notional - public async deployWrappedfCash(notionalProxy: Address): Promise { - return await new WrappedfCash__factory(this._deployerSigner).deploy(notionalProxy); + public async deployWrappedfCash(notionalProxy: Address, weth: Address): Promise { + return await new WrappedfCash__factory(this._deployerSigner).deploy(notionalProxy, weth); } public async deployWrappedfCashFactory(beacon: Address): Promise { diff --git a/utils/deploys/deployModules.ts b/utils/deploys/deployModules.ts index a57ab61b4..6f227ae35 100644 --- a/utils/deploys/deployModules.ts +++ b/utils/deploys/deployModules.ts @@ -179,8 +179,8 @@ export default class DeployModules { ).deploy(controller, lendingPoolAddressesProvider); } - public async deployNotionalTradeModule(controller: Address, wrappedfCashFactory: Address): Promise { - return await new NotionalTradeModule__factory(this._deployerSigner).deploy(controller, wrappedfCashFactory); + public async deployNotionalTradeModule(controller: Address, wrappedfCashFactory: Address, weth: Address): Promise { + return await new NotionalTradeModule__factory(this._deployerSigner).deploy(controller, wrappedfCashFactory, weth); } public async deployWrapModuleV2(controller: Address, weth: Address): Promise { diff --git a/yarn.lock b/yarn.lock index 767e8ba0a..c20640bf1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13823,9 +13823,9 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" -"wrapped-fcash@https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f": +"wrapped-fcash@https://github.com/ckoopmann/wrapped-fcash.git#6b7d870c9b750aa343f0405f3543c9bbb0e3cdfc": version "1.0.0" - resolved "https://github.com/ckoopmann/wrapped-fcash.git#59e0ad4a66addd909c3f033a970646355c04bc6f" + resolved "https://github.com/ckoopmann/wrapped-fcash.git#6b7d870c9b750aa343f0405f3543c9bbb0e3cdfc" dependencies: dotenv "^10.0.0" From 23a58ecbd7511973b54a0da38884a0cb53712abe Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 17:05:33 +0800 Subject: [PATCH 108/120] Extend unittest to cover eth/weth case --- contracts/mocks/WrappedfCashMock.sol | 17 +- .../modules/v1/notionalTradeModule.spec.ts | 2025 +++++++++-------- utils/deploys/deployMocks.ts | 4 +- 3 files changed, 1072 insertions(+), 974 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 753124f1b..9fec019e1 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -39,6 +39,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { int256 private assetPrecision; TokenType private tokenType; + IERC20 private weth; + bool private revertDecodedID; uint256 private redeemTokenReturned; @@ -46,9 +48,10 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { address internal constant ETH_ADDRESS = address(0); - constructor (IERC20 _assetToken, IERC20 _underlyingToken) public ERC20("FCashMock", "FCM") { + constructor (IERC20 _assetToken, IERC20 _underlyingToken, IERC20 _weth) public ERC20("FCashMock", "FCM") { assetToken = _assetToken; underlyingToken = _underlyingToken; + weth = _weth; } function initialize(uint16 _currencyId, uint40 _maturity) external override { @@ -75,7 +78,11 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint32 /* minImpliedRate */ ) external override{ uint256 underlyingTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; - underlyingToken.transferFrom(msg.sender, address(this), underlyingTokenAmount); + if(address(underlyingToken) == ETH_ADDRESS) { + weth.transferFrom(msg.sender, address(this), underlyingTokenAmount); + } else { + underlyingToken.transferFrom(msg.sender, address(this), underlyingTokenAmount); + } _mint(receiver, fCashAmount); } @@ -97,7 +104,11 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { ) external override { _burn(msg.sender, amount); uint256 underlyingTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; - underlyingToken.transfer(receiver, underlyingTokenAmount); + if(address(underlyingToken) == ETH_ADDRESS) { + weth.transfer(receiver, underlyingTokenAmount); + } else { + underlyingToken.transfer(receiver, underlyingTokenAmount); + } } /// @notice Returns the underlying fCash ID of the token diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 49e1e1b1b..42fe0fdf6 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -25,6 +25,7 @@ import { getWaffleExpect, } from "@utils/test/index"; import { CompoundFixture, SystemFixture } from "@utils/fixtures"; +import { ADDRESS_ZERO } from "@utils/constants"; import { CERc20 } from "@utils/contracts/compound"; import { IERC20 } from "@typechain/IERC20"; import { mintWrappedFCash } from "../../../integration/notionalTradeModule/utils"; @@ -41,8 +42,6 @@ describe("NotionalTradeModule", () => { let debtIssuanceModule: DebtIssuanceModule; let compoundSetup: CompoundFixture; - let cDai: CERc20; - let dai: StandardTokenMock; let cTokenInitialMantissa: BigNumber; beforeEach(async () => { @@ -56,21 +55,6 @@ describe("NotionalTradeModule", () => { compoundSetup = getCompoundFixture(owner.address); await compoundSetup.initialize(); cTokenInitialMantissa = ether(200000000); - - dai = setup.dai; - cDai = await compoundSetup.createAndEnableCToken( - setup.dai.address, - cTokenInitialMantissa, - compoundSetup.comptroller.address, - compoundSetup.interestRateModel.address, - "Compound Dai", - "cDAI", - 8, - ether(0.75), // 75% collateral factor - ether(1), - ); - await dai.approve(cDai.address, ethers.constants.MaxUint256); - await cDai.mint(ether(100)); mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); }); @@ -126,1082 +110,1055 @@ describe("NotionalTradeModule", () => { ); }); - describe("When wrappedFCashMock is deployed", async () => { - let wrappedfCashMock: WrappedfCashMock; - let daiBalance: BigNumber; - let currencyId: number; - let maturity: number; - beforeEach(async () => { - wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock(cDai.address, dai.address); - currencyId = 1; - maturity = (await ethers.provider.getBlock("latest")).timestamp + 30 * 24 * 3600; - - await wrappedfCashMock.initialize(currencyId, maturity); - - await wrappedfCashFactoryMock.registerWrapper( - currencyId, - maturity, - wrappedfCashMock.address, - ); - - daiBalance = ether(1000); - dai.transfer(owner.address, daiBalance); - dai.approve(wrappedfCashMock.address, daiBalance); - - wrappedfCashMock.mintViaUnderlying(daiBalance, daiBalance, owner.address, 0); - }); - describe("When setToken is deployed", async () => { - let wrappedfCashPosition: BigNumber; - let initialSetBalance: BigNumber; - let setToken: SetToken; - beforeEach(async () => { - wrappedfCashPosition = ethers.utils.parseUnits("2", await wrappedfCashMock.decimals()); - - setToken = await setup.createSetToken( - [wrappedfCashMock.address], - [wrappedfCashPosition], - [debtIssuanceModule.address, notionalTradeModule.address], - manager.address, - ); - - expect(await setToken.isPendingModule(debtIssuanceModule.address)).to.be.true; + [ + "dai", + "weth", + ].forEach(underlyingTokenName => { + describe(`When underlying token is ${underlyingTokenName}`, () => { + let assetToken: CERc20; + let underlyingToken: StandardTokenMock; - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, + beforeEach(async () => { + // @ts-ignore + underlyingToken = setup[underlyingTokenName]; + assetToken = await compoundSetup.createAndEnableCToken( + underlyingToken.address, + cTokenInitialMantissa, + compoundSetup.comptroller.address, + compoundSetup.interestRateModel.address, + "Compound UnderlyingToken", + "cUNDERLYINGTOKEN", + 8, + ether(0.75), // 75% collateral factor + ether(1), ); + await underlyingToken.approve(assetToken.address, ethers.constants.MaxUint256); + await assetToken.mint(ether(100)); - initialSetBalance = daiBalance.div(10); - await wrappedfCashMock.approve(debtIssuanceModule.address, daiBalance); - await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); - }); - - describe("#updateAnySetAllowed", async () => { - let caller: SignerWithAddress; - let subjectStatus: boolean; - - beforeEach(async () => { - caller = owner.wallet; - }); - - const subject = () => { - return notionalTradeModule.connect(caller).updateAnySetAllowed(subjectStatus); - }; - describe("when setting to true", () => { - beforeEach(async () => { - subjectStatus = true; - }); - it("updates allowedSetTokens", async () => { - await subject(); - expect(await notionalTradeModule.anySetAllowed()).to.be.true; - }); - describe("when caller is not the owner", () => { - beforeEach(() => { - caller = manager.wallet; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); - }); - }); - }); + mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); }); - - describe("#updateAllowedSetToken", async () => { - let caller: SignerWithAddress; - let subjectSetToken: Address; - let subjectStatus: boolean; - + describe("When wrappedFCashMock is deployed", async () => { + let wrappedfCashMock: WrappedfCashMock; + let underlyingTokenBalance: BigNumber; + let currencyId: number; + let maturity: number; beforeEach(async () => { - caller = owner.wallet; - }); - - const subject = () => { - return notionalTradeModule - .connect(caller) - .updateAllowedSetToken(subjectSetToken, subjectStatus); - }; - describe("when adding a new allowed set token", () => { - beforeEach(async () => { - subjectStatus = true; - }); - describe("when set token is invalid", () => { - beforeEach(() => { - subjectSetToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Invalid SetToken"); - }); - }); - describe("when set token is valid", () => { - beforeEach(() => { - subjectSetToken = setToken.address; - }); - it("updates allowedSetTokens", async () => { - await subject(); - expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; - }); - }); - describe("when caller is not the owner", () => { - beforeEach(() => { - caller = manager.wallet; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Ownable: caller is not the owner"); - }); - }); + const underlyingAddress = + underlyingToken.address == setup.weth.address + ? ADDRESS_ZERO + : underlyingToken.address; + wrappedfCashMock = await deployer.mocks.deployWrappedfCashMock( + assetToken.address, + underlyingAddress, + setup.weth.address, + ); + currencyId = 1; + maturity = (await ethers.provider.getBlock("latest")).timestamp + 30 * 24 * 3600; + + await wrappedfCashMock.initialize(currencyId, maturity); + + await wrappedfCashFactoryMock.registerWrapper( + currencyId, + maturity, + wrappedfCashMock.address, + ); + + underlyingTokenBalance = ether(100); + await underlyingToken.transfer(owner.address, underlyingTokenBalance); + await underlyingToken.approve(wrappedfCashMock.address, underlyingTokenBalance); + + await wrappedfCashMock.mintViaUnderlying( + underlyingTokenBalance, + underlyingTokenBalance, + owner.address, + 0, + ); }); - describe("when removing an allowed set token", () => { + describe("When setToken is deployed", async () => { + let wrappedfCashPosition: BigNumber; + let initialSetBalance: BigNumber; + let setToken: SetToken; beforeEach(async () => { - subjectSetToken = setToken.address; - subjectStatus = false; - await notionalTradeModule - .connect(owner.wallet) - .updateAllowedSetToken(subjectSetToken, true); - }); - it("updates allowedSetTokens", async () => { - expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; - await subject(); - expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.false; - }); - }); - }); + wrappedfCashPosition = ethers.utils.parseUnits( + "2", + await wrappedfCashMock.decimals(), + ); - describe("#initialize", async () => { - let isAllowListed: boolean = true; - let subjectSetToken: Address; - let subjectCaller: Account; + setToken = await setup.createSetToken( + [wrappedfCashMock.address], + [wrappedfCashPosition], + [debtIssuanceModule.address, notionalTradeModule.address], + manager.address, + ); - beforeEach(async () => { - if (isAllowListed) { - // Add SetToken to allow list - console.log("Updated allow list"); - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - } - - subjectSetToken = setToken.address; - subjectCaller = manager; - console.log("Done"); - }); + expect(await setToken.isPendingModule(debtIssuanceModule.address)).to.be.true; - async function subject(): Promise { - return notionalTradeModule.connect(subjectCaller.wallet).initialize(subjectSetToken); - } + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); - describe("when isAllowListed is true", () => { - before(async () => { - isAllowListed = true; + initialSetBalance = underlyingTokenBalance.div(10); + await wrappedfCashMock.approve(debtIssuanceModule.address, underlyingTokenBalance); + await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule( - notionalTradeModule.address, - ); - expect(isModuleEnabled).to.eq(true); - }); + describe("#updateAnySetAllowed", async () => { + let caller: SignerWithAddress; + let subjectStatus: boolean; - describe("when debt issuance module is not added to integration registry", async () => { beforeEach(async () => { - await setup.integrationRegistry.removeIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - ); - }); - - afterEach(async () => { - // Add debt issuance address to integration - await setup.integrationRegistry.addIntegration( - notionalTradeModule.address, - "DefaultIssuanceModule", - debtIssuanceModule.address, - ); + caller = owner.wallet; }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be valid adapter"); + const subject = () => { + return notionalTradeModule.connect(caller).updateAnySetAllowed(subjectStatus); + }; + describe("when setting to true", () => { + beforeEach(async () => { + subjectStatus = true; + }); + it("updates allowedSetTokens", async () => { + await subject(); + expect(await notionalTradeModule.anySetAllowed()).to.be.true; + }); + describe("when caller is not the owner", () => { + beforeEach(() => { + caller = manager.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Ownable: caller is not the owner", + ); + }); + }); }); }); - describe("when debt issuance module is not initialized on SetToken", async () => { + describe("#updateAllowedSetToken", async () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectStatus: boolean; + beforeEach(async () => { - await setToken.connect(manager.wallet).removeModule(debtIssuanceModule.address); + caller = owner.wallet; }); - afterEach(async () => { - await setToken.connect(manager.wallet).addModule(debtIssuanceModule.address); - // Initialize debIssuance module - await debtIssuanceModule.connect(manager.wallet).initialize( - setToken.address, - ether(0.1), - ether(0), // No issue fee - ether(0), // No redeem fee - owner.address, - mockPreIssuanceHook.address, - ); + const subject = () => { + return notionalTradeModule + .connect(caller) + .updateAllowedSetToken(subjectSetToken, subjectStatus); + }; + describe("when adding a new allowed set token", () => { + beforeEach(async () => { + subjectStatus = true; + }); + describe("when set token is invalid", () => { + beforeEach(() => { + subjectSetToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Invalid SetToken"); + }); + }); + describe("when set token is valid", () => { + beforeEach(() => { + subjectSetToken = setToken.address; + }); + it("updates allowedSetTokens", async () => { + await subject(); + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be + .true; + }); + }); + describe("when caller is not the owner", () => { + beforeEach(() => { + caller = manager.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Ownable: caller is not the owner", + ); + }); + }); }); - - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Issuance not initialized"); + describe("when removing an allowed set token", () => { + beforeEach(async () => { + subjectSetToken = setToken.address; + subjectStatus = false; + await notionalTradeModule + .connect(owner.wallet) + .updateAllowedSetToken(subjectSetToken, true); + }); + it("updates allowedSetTokens", async () => { + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.true; + await subject(); + expect(await notionalTradeModule.allowedSetTokens(subjectSetToken)).to.be.false; + }); }); }); - describe("when the caller is not the SetToken manager", async () => { + describe("#initialize", async () => { + let isAllowListed: boolean = true; + let subjectSetToken: Address; + let subjectCaller: Account; + beforeEach(async () => { - subjectCaller = await getRandomAccount(); - }); + if (isAllowListed) { + // Add SetToken to allow list + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); + } - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + subjectSetToken = setToken.address; + subjectCaller = manager; }); - }); - describe("when SetToken is not in pending state", async () => { - beforeEach(async () => { - const newModule = await getRandomAddress(); - await setup.controller.addModule(newModule); + async function subject(): Promise { + return notionalTradeModule + .connect(subjectCaller.wallet) + .initialize(subjectSetToken); + } - const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( - [setup.weth.address], - [ether(1)], - [newModule], - manager.address, - ); + describe("when isAllowListed is true", () => { + before(async () => { + isAllowListed = true; + }); - subjectSetToken = notionalTradeModuleNotPendingSetToken.address; - }); + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( + notionalTradeModule.address, + ); + expect(isModuleEnabled).to.eq(true); + }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be pending initialization"); - }); - }); + describe("when debt issuance module is not added to integration registry", async () => { + beforeEach(async () => { + await setup.integrationRegistry.removeIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + ); + }); - describe("when the SetToken is not enabled on the controller", async () => { - beforeEach(async () => { - const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( - [setup.weth.address], - [ether(1)], - [notionalTradeModule.address], - manager.address, - ); - - subjectSetToken = nonEnabledSetToken.address; - }); + afterEach(async () => { + // Add debt issuance address to integration + await setup.integrationRegistry.addIntegration( + notionalTradeModule.address, + "DefaultIssuanceModule", + debtIssuanceModule.address, + ); + }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be controller-enabled SetToken"); - }); - }); - }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be valid adapter"); + }); + }); - describe("when isAllowListed is false", async () => { - before(async () => { - isAllowListed = false; - }); + describe("when debt issuance module is not initialized on SetToken", async () => { + beforeEach(async () => { + await setToken + .connect(manager.wallet) + .removeModule(debtIssuanceModule.address); + }); - describe("when SetToken is not allowlisted", async () => { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Not allowed SetToken"); - }); - }); + afterEach(async () => { + await setToken.connect(manager.wallet).addModule(debtIssuanceModule.address); + // Initialize debIssuance module + await debtIssuanceModule.connect(manager.wallet).initialize( + setToken.address, + ether(0.1), + ether(0), // No issue fee + ether(0), // No redeem fee + owner.address, + mockPreIssuanceHook.address, + ); + }); - describe("when any Set can initialize this module", async () => { - beforeEach(async () => { - await notionalTradeModule.updateAnySetAllowed(true); - }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); + }); - it("should enable the Module on the SetToken", async () => { - await subject(); - const isModuleEnabled = await setToken.isInitializedModule( - notionalTradeModule.address, - ); - expect(isModuleEnabled).to.eq(true); - }); - }); - }); - }); + describe("when the caller is not the SetToken manager", async () => { + beforeEach(async () => { + subjectCaller = await getRandomAccount(); + }); - describe("when set token is allowed", () => { - beforeEach(async () => { - await notionalTradeModule.updateAllowedSetToken(setToken.address, true); - }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + }); + }); - describe("when token is initialized on the notional module", () => { - beforeEach(async () => { - await notionalTradeModule.connect(manager.wallet).initialize(setToken.address); - }); + describe("when SetToken is not in pending state", async () => { + beforeEach(async () => { + const newModule = await getRandomAddress(); + await setup.controller.addModule(newModule); + + const notionalTradeModuleNotPendingSetToken = await setup.createSetToken( + [setup.weth.address], + [ether(1)], + [newModule], + manager.address, + ); - describe("#registerToModule", () => { - let caller: SignerWithAddress; - let subjectSetToken: Address; - let subjectIssuanceModule: Address; - let newIssuanceModule: DebtIssuanceMock; + subjectSetToken = notionalTradeModuleNotPendingSetToken.address; + }); - const subject = () => { - return notionalTradeModule - .connect(caller) - .registerToModule(subjectSetToken, subjectIssuanceModule); - }; + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Must be pending initialization"); + }); + }); - beforeEach(async () => { - caller = manager.wallet; - subjectSetToken = setToken.address; - newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); - await setup.controller.addModule(newIssuanceModule.address); - await setToken.connect(manager.wallet).addModule(newIssuanceModule.address); - subjectIssuanceModule = newIssuanceModule.address; - }); + describe("when the SetToken is not enabled on the controller", async () => { + beforeEach(async () => { + const nonEnabledSetToken = await setup.createNonControllerEnabledSetToken( + [setup.weth.address], + [ether(1)], + [notionalTradeModule.address], + manager.address, + ); - describe("when token is initialized on new issuance module", () => { - beforeEach(async () => { - await newIssuanceModule.initialize(setToken.address); - }); + subjectSetToken = nonEnabledSetToken.address; + }); - it("should not revert", async () => { - await subject(); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Must be controller-enabled SetToken", + ); + }); }); }); - describe("when token is NOT initialized on new issuance module", () => { - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Issuance not initialized"); + describe("when isAllowListed is false", async () => { + before(async () => { + isAllowListed = false; }); - }); - }); - describe("#setRedeemToUnderlying", () => { - let subjectSetToken: string; - let subjectToUnderlying: boolean; - let caller: SignerWithAddress; - const subject = () => { - return notionalTradeModule - .connect(caller) - .setRedeemToUnderlying(subjectSetToken, subjectToUnderlying); - }; - beforeEach(() => { - subjectSetToken = setToken.address; - subjectToUnderlying = true; - caller = manager.wallet; - }); - describe("when setting to true", () => { - it("should adjust the state correctly", async () => { - await subject(); - expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be - .true; - }); - describe("when caller is not the manager", () => { - beforeEach(() => { - caller = owner.wallet; - }); + describe("when SetToken is not allowlisted", async () => { it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Must be the SetToken manager"); + await expect(subject()).to.be.revertedWith("Not allowed SetToken"); }); }); - }); - describe("when setting to false", () => { - beforeEach(async () => { - subjectToUnderlying = false; - await notionalTradeModule - .connect(manager.wallet) - .setRedeemToUnderlying(subjectSetToken, true); - expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be - .true; - }); - it("should adjust the state correctly", async () => { - await subject(); - expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be - .false; + describe("when any Set can initialize this module", async () => { + beforeEach(async () => { + await notionalTradeModule.updateAnySetAllowed(true); + }); + + it("should enable the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule( + notionalTradeModule.address, + ); + expect(isModuleEnabled).to.eq(true); + }); }); }); }); - describe("#getFCashPositions", () => { - let subjectSetToken: string; - const subject = () => { - return notionalTradeModule.getFCashPositions(subjectSetToken); - }; - beforeEach(() => { - subjectSetToken = setToken.address; - }); - it("should return the correct fCash positions", async () => { - const fCashPositions = await subject(); - expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); + describe("when set token is allowed", () => { + beforeEach(async () => { + await notionalTradeModule.updateAllowedSetToken(setToken.address, true); }); - describe("When the unit is negative", () => { + + describe("when token is initialized on the notional module", () => { beforeEach(async () => { - await setup.controller.connect(owner.wallet).addModule(owner.address); - await setToken.connect(manager.wallet).addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(wrappedfCashMock.address, -420); - const externalPositionModule = await getRandomAddress(); - await setToken - .connect(owner.wallet) - .addExternalPositionModule(wrappedfCashMock.address, externalPositionModule); - await setToken - .connect(owner.wallet) - .editExternalPositionUnit( - wrappedfCashMock.address, - externalPositionModule, - -420, - ); + await notionalTradeModule.connect(manager.wallet).initialize(setToken.address); }); - it("should not return the fCash component", async () => { - const fCashPositions = await subject(); - expect(fCashPositions).to.deep.eq([]); + + describe("#registerToModule", () => { + let caller: SignerWithAddress; + let subjectSetToken: Address; + let subjectIssuanceModule: Address; + let newIssuanceModule: DebtIssuanceMock; + + const subject = () => { + return notionalTradeModule + .connect(caller) + .registerToModule(subjectSetToken, subjectIssuanceModule); + }; + + beforeEach(async () => { + caller = manager.wallet; + subjectSetToken = setToken.address; + newIssuanceModule = await deployer.mocks.deployDebtIssuanceMock(); + await setup.controller.addModule(newIssuanceModule.address); + await setToken.connect(manager.wallet).addModule(newIssuanceModule.address); + subjectIssuanceModule = newIssuanceModule.address; + }); + + describe("when token is initialized on new issuance module", () => { + beforeEach(async () => { + await newIssuanceModule.initialize(setToken.address); + }); + + it("should not revert", async () => { + await subject(); + }); + }); + + describe("when token is NOT initialized on new issuance module", () => { + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Issuance not initialized"); + }); + }); }); - }); - }); - describe("#redeem/mintFCashPosition", () => { - let receiveToken: IERC20; - let sendToken: IERC20; - let subjectSetToken: string; - let subjectSendToken: string; - let subjectSendQuantity: BigNumber; - let subjectReceiveToken: string; - let subjectMinReceiveQuantity: BigNumber; - let subjectCurrencyId: number; - let subjectMaturity: number | BigNumber; - let caller: SignerWithAddress; - beforeEach(async () => { - subjectSetToken = setToken.address; - caller = manager.wallet; - subjectCurrencyId = currencyId; - subjectMaturity = maturity; - }); + describe("#setRedeemToUnderlying", () => { + let subjectSetToken: string; + let subjectToUnderlying: boolean; + let caller: SignerWithAddress; + const subject = () => { + return notionalTradeModule + .connect(caller) + .setRedeemToUnderlying(subjectSetToken, subjectToUnderlying); + }; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectToUnderlying = true; + caller = manager.wallet; + }); + describe("when setting to true", () => { + it("should adjust the state correctly", async () => { + await subject(); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be + .true; + }); + describe("when caller is not the manager", () => { + beforeEach(() => { + caller = owner.wallet; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Must be the SetToken manager", + ); + }); + }); + }); - ["buying", "selling"].forEach(tradeDirection => { - ["underlyingToken", "assetToken"].forEach(tokenType => { - describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { - let sendTokenType: string; - let receiveTokenType: string; - let otherToken: IERC20; + describe("when setting to false", () => { beforeEach(async () => { - const fTokenQuantity = ethers.utils.parseUnits("1", 8); - - otherToken = tokenType == "assetToken" ? cDai : dai; - sendToken = tradeDirection == "buying" ? otherToken : wrappedfCashMock; - sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; - receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; - subjectSendToken = sendToken.address; - - receiveToken = tradeDirection == "buying" ? wrappedfCashMock : otherToken; - subjectReceiveToken = receiveToken.address; - - subjectMinReceiveQuantity = fTokenQuantity; - subjectSendQuantity = fTokenQuantity; - if (tradeDirection == "buying") { - // Apparently it is not possible to trade tokens that are not a set component - // Also sending extra tokens to the trade module might break it - // TODO: Review - await sendToken.transfer( + subjectToUnderlying = false; + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, true); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be + .true; + }); + it("should adjust the state correctly", async () => { + await subject(); + expect(await notionalTradeModule.redeemToUnderlying(subjectSetToken)).to.be + .false; + }); + }); + }); + + describe("#getFCashPositions", () => { + let subjectSetToken: string; + const subject = () => { + return notionalTradeModule.getFCashPositions(subjectSetToken); + }; + beforeEach(() => { + subjectSetToken = setToken.address; + }); + it("should return the correct fCash positions", async () => { + const fCashPositions = await subject(); + expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); + }); + describe("When the unit is negative", () => { + beforeEach(async () => { + await setup.controller.connect(owner.wallet).addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, -420); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule( wrappedfCashMock.address, - subjectSendQuantity.mul(2), + externalPositionModule, ); - await notionalTradeModule - .connect(manager.wallet) - .redeemFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - fTokenQuantity.mul(2), - sendToken.address, - subjectSendQuantity.mul(2), - ); - } - if (tradeDirection == "selling") { - await receiveToken.transfer( + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( wrappedfCashMock.address, - subjectMinReceiveQuantity.mul(2), + externalPositionModule, + -420, ); - } }); - - const subject = () => { - if (tradeDirection == "buying") { - return notionalTradeModule - .connect(caller) - .mintFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectMinReceiveQuantity, - subjectSendToken, - subjectSendQuantity, - ); - } else { - return notionalTradeModule - .connect(caller) - .redeemFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - } - }; - - const subjectCall = () => { - if (tradeDirection == "buying") { - return notionalTradeModule - .connect(caller) - .callStatic.mintFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectMinReceiveQuantity, - subjectSendToken, - subjectSendQuantity, - ); - } else { - return notionalTradeModule - .connect(caller) - .callStatic.redeemFCashPosition( - subjectSetToken, - subjectCurrencyId, - subjectMaturity, - subjectSendQuantity, - subjectReceiveToken, - subjectMinReceiveQuantity, - ); - } - }; - - if (tradeDirection == "buying") { - describe("When sendToken is neither underlying nor asset token", () => { - beforeEach(async () => { - subjectSendToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", - ); - }); - }); - - describe("When receiveAmount is 0", () => { - beforeEach(async () => { - subjectMinReceiveQuantity = BigNumber.from(0); - }); - it("should not revert", async () => { - await subject(); - }); - }); - - describe(`when too much ${tokenType} is spent`, () => { - beforeEach(async () => { - await wrappedfCashMock.setMintTokenSpent(subjectSendQuantity.mul(2)); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Overspent"); - }); - }); - } else { - describe("When wrappedFCash is not deployed for given parameters", () => { - beforeEach(async () => { - subjectCurrencyId = 10; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "WrappedfCash not deployed for given parameters", - ); - }); - }); - - describe("When receiveToken is neither underlying nor asset token", () => { - beforeEach(async () => { - subjectReceiveToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", - ); - }); - }); - - describe("When sendAmount is 0", () => { - beforeEach(async () => { - subjectSendQuantity = BigNumber.from(0); - }); - it("should not revert", async () => { - await subject(); - }); - }); - describe(`when too little ${tokenType} is returned`, () => { - beforeEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned( - subjectMinReceiveQuantity.div(2), - ); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Not enough received amount", - ); - }); - }); - } - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect(receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore)).to.be.gte( - subjectMinReceiveQuantity, - ); - }); - - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf(setToken.address); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf(setToken.address); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, - ); - } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( - subjectSendQuantity, - ); - } - }); - - it("should not revert when executing trade twice", async () => { - await subject(); - await subject(); - }); - - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf( - setToken.address, - ); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf(setToken.address); - - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); - } else { - expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); - } - - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); - - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); - - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div( - totalSetSupplyEther, - ); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), - ); - } - - if (receiveTokenType == "underlyingToken") { - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), - ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), - ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } - }); - - it("should adjust the components position of the sendToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); - - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), - ); - } - - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); + it("should not return the fCash component", async () => { + const fCashPositions = await subject(); + expect(fCashPositions).to.deep.eq([]); }); }); }); - }); - }); - describe("#moduleIssue/RedeemHook", () => { - let subjectSetToken: string; - let subjectReceiver: string; - let subjectAmount: BigNumber; - let caller: SignerWithAddress; - beforeEach(() => { - subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseEther("1"); - caller = owner.wallet; - subjectReceiver = caller.address; - }); - ["underlying", "asset"].forEach(redeemToken => { - describe(`when redeeming to ${redeemToken}`, () => { - let outputToken: IERC20; + describe("#redeem/mintFCashPosition", () => { + let receiveToken: IERC20; + let sendToken: IERC20; + let subjectSetToken: string; + let subjectSendToken: string; + let subjectSendQuantity: BigNumber; + let subjectReceiveToken: string; + let subjectMinReceiveQuantity: BigNumber; + let subjectCurrencyId: number; + let subjectMaturity: number | BigNumber; + let caller: SignerWithAddress; + beforeEach(async () => { - const toUnderlying = redeemToken == "underlying"; - await notionalTradeModule - .connect(manager.wallet) - .setRedeemToUnderlying(subjectSetToken, toUnderlying); - outputToken = redeemToken == "underlying" ? dai : cDai; + subjectSetToken = setToken.address; + caller = manager.wallet; + subjectCurrencyId = currencyId; + subjectMaturity = maturity; }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach( - triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { + + ["buying", "selling"].forEach(tradeDirection => { + ["underlyingToken", "assetToken"].forEach(tokenType => { + describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { + let sendTokenType: string; + let receiveTokenType: string; + let otherToken: IERC20; beforeEach(async () => { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - - await cDai.connect(owner.wallet).mint(ether(1)); - const cDaiBalance = await cDai.balanceOf(owner.address); - await cDai - .connect(owner.wallet) - .transfer(wrappedfCashMock.address, cDaiBalance); - - const redemptionAssetAmount = cDaiBalance.div(2); - await wrappedfCashMock.setRedeemTokenReturned(redemptionAssetAmount); - - if (triggerAction == "redeem") { - await mintWrappedFCash( - owner.wallet, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, + const fTokenQuantity = ethers.utils.parseUnits("1", 8); + + otherToken = tokenType == "assetToken" ? assetToken : underlyingToken; + sendToken = tradeDirection == "buying" ? otherToken : wrappedfCashMock; + sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; + receiveTokenType = + tradeDirection == "selling" ? tokenType : "wrappedFCash"; + subjectSendToken = sendToken.address; + + receiveToken = + tradeDirection == "buying" ? wrappedfCashMock : otherToken; + subjectReceiveToken = receiveToken.address; + + subjectMinReceiveQuantity = fTokenQuantity; + subjectSendQuantity = fTokenQuantity; + if (tradeDirection == "buying") { + // Apparently it is not possible to trade tokens that are not a set component + // Also sending extra tokens to the trade module might break it + // TODO: Review + await sendToken.transfer( + wrappedfCashMock.address, + subjectSendQuantity.mul(2), + ); + await notionalTradeModule + .connect(manager.wallet) + .redeemFCashPosition( + setToken.address, + subjectCurrencyId, + subjectMaturity, + fTokenQuantity.mul(2), + sendToken.address, + subjectSendQuantity.mul(2), + ); + } + if (tradeDirection == "selling") { + await receiveToken.transfer( + wrappedfCashMock.address, + subjectMinReceiveQuantity.mul(2), ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else if (triggerAction == "issue") { - await dai.transfer(caller.address, daiAmount); - - if (redeemToken == "underlying") { - // If matured tokens are redeemed to underlying token issuer will need that token (dai) for issuance - await dai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } else { - // If matured tokens are redeemed to asset token issuer will need that token (cDai) for issuance - await dai - .connect(caller) - .approve(cDai.address, ethers.constants.MaxUint256); - await cDai.connect(caller).mint(daiAmount); - await cDai - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } } }); const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule + if (tradeDirection == "buying") { + return notionalTradeModule .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule + .mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); + } else { + return notionalTradeModule .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "removeModule") { - return setToken - .connect(manager.wallet) - .removeModule(notionalTradeModule.address); + .redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); + } + }; + + const subjectCall = () => { + if (tradeDirection == "buying") { + return notionalTradeModule + .connect(caller) + .callStatic.mintFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + subjectSendToken, + subjectSendQuantity, + ); } else { return notionalTradeModule .connect(caller) - .redeemMaturedPositions(subjectSetToken); + .callStatic.redeemFCashPosition( + subjectSetToken, + subjectCurrencyId, + subjectMaturity, + subjectSendQuantity, + subjectReceiveToken, + subjectMinReceiveQuantity, + ); } }; - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { - const daiAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - dai, - daiAmount, - fCashAmount, - cDai as any, - wrappedfCashMock as any, - true, + if (tradeDirection == "buying") { + describe("When sendToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectSendToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", ); - await wrappedfCashMock - .connect(caller) - .approve(debtIssuanceModule.address, ethers.constants.MaxUint256); - } - expect(await wrappedfCashMock.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - expect(positionAfter).to.eq(positionBefore); + }); }); - }); - describe("When component has matured", () => { - beforeEach(async () => { - await wrappedfCashMock.setMatured(true); + describe("When receiveAmount is 0", () => { + beforeEach(async () => { + subjectMinReceiveQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); }); - if (["issue", "redeem"].includes(triggerAction)) { - it(`should adjust ${redeemToken} balance correctly`, async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf( - caller.address, + describe(`when too much ${tokenType} is spent`, () => { + beforeEach(async () => { + await wrappedfCashMock.setMintTokenSpent( + subjectSendQuantity.mul(2), ); - await subject(); - const outputTokenBalanceAfter = await outputToken.balanceOf( - caller.address, + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Overspent"); + }); + }); + } else { + describe("When wrappedFCash is not deployed for given parameters", () => { + beforeEach(async () => { + subjectCurrencyId = 10; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "WrappedfCash not deployed for given parameters", ); - const amountCDaiTransfered = - triggerAction == "redeem" - ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) - : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); - - expect(amountCDaiTransfered).to.be.gt(0); }); + }); - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf( - caller.address, + describe("When receiveToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectReceiveToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", ); + }); + }); + + describe("When sendAmount is 0", () => { + beforeEach(async () => { + subjectSendQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { await subject(); - const setTokenBalanceAfter = await setToken.balanceOf( - caller.address, + }); + }); + describe(`when too little ${tokenType} is returned`, () => { + beforeEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned( + subjectMinReceiveQuantity.div(2), ); - const expectedBalanceChange = - triggerAction == "issue" ? subjectAmount : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Not enough received amount", ); }); - } - - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .true; - await subject(); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .false; }); + } + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); + }); - it("Removes wrappedFCash from the list of registered fCashPositions", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, + ); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, + ); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, ); - expect(fCashPositions).to.not.include(wrappedfCashMock.address); - }); + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, + ); + } + }); - it(`Adds ${redeemToken} token to component list`, async () => { - expect(await setToken.isComponent(outputToken.address)).to.be.false; - await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be.true; - }); + it("should not revert when executing trade twice", async () => { + await subject(); + await subject(); + }); - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedfCashMock.balanceOf( - subjectSetToken, + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, + ); + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf( + setToken.address, + ); + + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); + } else { + expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); + } + + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), + ); + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), + ); + }); + + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); + + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, ); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedfCashMock.balanceOf( - subjectSetToken, + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / + 10, + ), ); - expect(balanceAfter).to.eq(0); - }); - - it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - const balanceBefore = await outputToken.balanceOf(subjectSetToken); - await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); + } - it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - outputToken.address, + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); - }); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); - }); - it("should not revert", async () => { - await subject(); - }); - }); + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, + ); - describe("When positions have been redeemed already", () => { + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); + + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, + ), + ); + } + + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), + ); + }); + }); + }); + }); + }); + describe("#moduleIssue/RedeemHook", () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseEther("1"); + caller = owner.wallet; + subjectReceiver = caller.address; + }); + ["underlying", "asset"].forEach(redeemToken => { + describe(`when redeeming to ${redeemToken}`, () => { + let outputToken: IERC20; + beforeEach(async () => { + const toUnderlying = redeemToken == "underlying"; + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, toUnderlying); + outputToken = redeemToken == "underlying" ? underlyingToken : assetToken; + }); + ["issue", "redeem", "manualTrigger", "removeModule"].forEach( + triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions(setToken.address); + const underlyingTokenAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + + await assetToken.connect(owner.wallet).mint(ether(1)); + const assetTokenBalance = await assetToken.balanceOf(owner.address); + await assetToken + .connect(owner.wallet) + .transfer(wrappedfCashMock.address, assetTokenBalance); + + const redemptionAssetAmount = assetTokenBalance.div(2); + await wrappedfCashMock.setRedeemTokenReturned( + redemptionAssetAmount, + ); + + if (triggerAction == "redeem") { + await mintWrappedFCash( + owner.wallet, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken as any, + wrappedfCashMock as any, + true, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else if (triggerAction == "issue") { + await underlyingToken.transfer( + caller.address, + underlyingTokenAmount, + ); + + if (redeemToken == "underlying") { + // If matured tokens are redeemed to underlying token issuer will need that token (underlyingToken) for issuance + await underlyingToken + .connect(caller) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + } else { + // If matured tokens are redeemed to asset token issuer will need that token (assetToken) for issuance + await underlyingToken + .connect(caller) + .approve(assetToken.address, ethers.constants.MaxUint256); + await assetToken.connect(caller).mint(underlyingTokenAmount); + await assetToken + .connect(caller) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + } + } }); - it("should not revert", async () => { - await subject(); + + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const underlyingTokenAmount = ethers.utils.parseEther("2.1"); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(caller) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + } + expect(await wrappedfCashMock.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); }); - }); - if (triggerAction == "manualTrigger") { - [ - "wrong currencyId", - "wrong maturity", - "reverted getDecodedID", - "reverted computeAddress", - "negative unit", - ].forEach(reason => { - describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { - beforeEach(async () => { - if (reason == "wrong currencyId") { - await wrappedfCashMock.initialize(420, maturity); - } else if (reason == "wrong maturity") { - await wrappedfCashMock.initialize(currencyId, 420); - } else if (reason == "reverted getDecodedID") { - await wrappedfCashMock.setRevertDecodedID(true); - } else if (reason == "reverted computeAddress") { - await wrappedfCashFactoryMock.setRevertComputeAddress(true); - } else if (reason == "negative unit") { - // We add the owner as a fake-module to be able to add arbitrary addresses as components - await setup.controller - .connect(owner.wallet) - .addModule(owner.address); - await setToken - .connect(manager.wallet) - .addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - // Just changing the default position to <= 0 will make it disappear from the position list - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(wrappedfCashMock.address, -420); - const externalPositionModule = await getRandomAddress(); - await setToken - .connect(owner.wallet) - .addExternalPositionModule( - wrappedfCashMock.address, - externalPositionModule, - ); - // Have to add it back in as an external position to get a negative unit - await setToken - .connect(owner.wallet) - .editExternalPositionUnit( - wrappedfCashMock.address, - externalPositionModule, - -420, - ); - } + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); + + if (["issue", "redeem"].includes(triggerAction)) { + it(`should adjust ${redeemToken} balance correctly`, async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); + await subject(); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); + const amountAssetTokenTransfered = + triggerAction == "redeem" + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); + + expect(amountAssetTokenTransfered).to.be.gt(0); }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf( + caller.address, ); await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + const setTokenBalanceAfter = await setToken.balanceOf( + caller.address, + ); + const expectedBalanceChange = + triggerAction == "issue" + ? subjectAmount + : subjectAmount.mul(-1); + expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( + expectedBalanceChange, ); - expect(positionAfter).to.eq(positionBefore); }); + } + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be + .false; }); - }); - describe("When setToken contains an additional position that is not a smart contract", () => { - beforeEach(async () => { - const nonContractComponent = await getRandomAddress(); - // We add the owner as a fake-module to be able to add arbitrary addresses as components - await setup.controller - .connect(owner.wallet) - .addModule(owner.address); - await setToken.connect(manager.wallet).addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - await setToken - .connect(owner.wallet) - .addComponent(nonContractComponent); - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(nonContractComponent, 420); + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include(wrappedfCashMock.address); + }); + + it(`Adds ${redeemToken} token to component list`, async () => { + expect(await setToken.isComponent(outputToken.address)).to.be + .false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be + .true; + }); + + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceAfter).to.eq(0); }); + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { const balanceBefore = await outputToken.balanceOf( subjectSetToken, @@ -1221,12 +1178,142 @@ describe("NotionalTradeModule", () => { ); expect(positionAfter.sub(positionBefore)).to.be.gt(0); }); + + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions( + setToken.address, + ); + }); + it("should not revert", async () => { + await subject(); + }); + }); + + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions( + setToken.address, + ); + }); + it("should not revert", async () => { + await subject(); + }); + }); + + if (triggerAction == "manualTrigger") { + [ + "wrong currencyId", + "wrong maturity", + "reverted getDecodedID", + "reverted computeAddress", + "negative unit", + ].forEach(reason => { + describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { + beforeEach(async () => { + if (reason == "wrong currencyId") { + await wrappedfCashMock.initialize(420, maturity); + } else if (reason == "wrong maturity") { + await wrappedfCashMock.initialize(currencyId, 420); + } else if (reason == "reverted getDecodedID") { + await wrappedfCashMock.setRevertDecodedID(true); + } else if (reason == "reverted computeAddress") { + await wrappedfCashFactoryMock.setRevertComputeAddress( + true, + ); + } else if (reason == "negative unit") { + // We add the owner as a fake-module to be able to add arbitrary addresses as components + await setup.controller + .connect(owner.wallet) + .addModule(owner.address); + await setToken + .connect(manager.wallet) + .addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + // Just changing the default position to <= 0 will make it disappear from the position list + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit( + wrappedfCashMock.address, + -420, + ); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule( + wrappedfCashMock.address, + externalPositionModule, + ); + // Have to add it back in as an external position to get a negative unit + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( + wrappedfCashMock.address, + externalPositionModule, + -420, + ); + } + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); + }); + + describe("When setToken contains an additional position that is not a smart contract", () => { + beforeEach(async () => { + const nonContractComponent = await getRandomAddress(); + // We add the owner as a fake-module to be able to add arbitrary addresses as components + await setup.controller + .connect(owner.wallet) + .addModule(owner.address); + await setToken + .connect(manager.wallet) + .addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .addComponent(nonContractComponent); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(nonContractComponent, 420); + }); + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf( + subjectSetToken, + ); + await subject(); + const balanceAfter = await outputToken.balanceOf( + subjectSetToken, + ); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + }); + } }); - } - }); - }); - }, - ); + }); + }, + ); + }); + }); }); }); }); diff --git a/utils/deploys/deployMocks.ts b/utils/deploys/deployMocks.ts index c3b04406a..b90f982cd 100644 --- a/utils/deploys/deployMocks.ts +++ b/utils/deploys/deployMocks.ts @@ -473,8 +473,8 @@ export default class DeployMocks { return await new BytesArrayUtilsMock__factory(this._deployerSigner).deploy(); } - public async deployWrappedfCashMock(assetToken: Address, underlyingToken: Address): Promise { - return await new WrappedfCashMock__factory(this._deployerSigner).deploy(assetToken, underlyingToken); + public async deployWrappedfCashMock(assetToken: Address, underlyingToken: Address, weth: Address): Promise { + return await new WrappedfCashMock__factory(this._deployerSigner).deploy(assetToken, underlyingToken, weth); } public async deployWrappedfCashFactoryMock(): Promise { From e4eb15c953bd1b929d834152a404647937b3a612 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 18:04:50 +0800 Subject: [PATCH 109/120] Fix unittests --- test/protocol/modules/v1/notionalTradeModule.spec.ts | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 42fe0fdf6..d2f09b935 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -110,10 +110,7 @@ describe("NotionalTradeModule", () => { ); }); - [ - "dai", - "weth", - ].forEach(underlyingTokenName => { + ["dai", "weth"].forEach(underlyingTokenName => { describe(`When underlying token is ${underlyingTokenName}`, () => { let assetToken: CERc20; let underlyingToken: StandardTokenMock; @@ -950,7 +947,7 @@ describe("NotionalTradeModule", () => { let caller: SignerWithAddress; beforeEach(() => { subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseEther("1"); + subjectAmount = ethers.utils.parseUnits("1", 8); caller = owner.wallet; subjectReceiver = caller.address; }); From ab1de2665f63a46254fd815c1b1dcb4c4f12c394 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 18:15:11 +0800 Subject: [PATCH 110/120] Speed up unittests --- .../modules/v1/notionalTradeModule.spec.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index d2f09b935..4d2cbd50d 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -1,7 +1,7 @@ import "module-alias/register"; import { BigNumber } from "ethers"; import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address"; -import { ethers } from "hardhat"; +import { ethers, network } from "hardhat"; import { Address } from "@utils/types"; import { Account } from "@utils/test/types"; import { @@ -44,7 +44,7 @@ describe("NotionalTradeModule", () => { let compoundSetup: CompoundFixture; let cTokenInitialMantissa: BigNumber; - beforeEach(async () => { + before(async () => { [owner, manager] = await getAccounts(); deployer = new DeployHelper(owner.wallet); @@ -60,10 +60,19 @@ describe("NotionalTradeModule", () => { describe("when factory mock is deployed", async () => { let wrappedfCashFactoryMock: WrappedfCashFactoryMock; - beforeEach(async () => { + let snapshotId: number; + before(async () => { wrappedfCashFactoryMock = await deployer.mocks.deployWrappedfCashFactoryMock(); }); + beforeEach(async () => { + snapshotId = await network.provider.send("evm_snapshot", []); + }); + + afterEach(async () => { + await network.provider.send("evm_revert", [snapshotId]); + }); + describe("#constructor", async () => { let subjectController: Address; let subjectWrappedfCashFactory: Address; From ec9d61065e7c203ca9bb2705ecc4340bfb9ddb1c Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Thu, 19 May 2022 19:56:59 +0800 Subject: [PATCH 111/120] Only approve as much as necessary --- contracts/protocol/modules/v1/NotionalTradeModule.sol | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index b3f86e371..097327e3d 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -425,7 +425,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss bool fromUnderlying = _isUnderlying(_fCashPosition, _sendToken); - _approveIfNecessary(_setToken, _fCashPosition, _sendToken, _maxSendAmount); + _approve(_setToken, _fCashPosition, _sendToken, _maxSendAmount); uint256 preTradeSendTokenBalance = _sendToken.balanceOf(address(_setToken)); uint256 preTradeReceiveTokenBalance = _fCashPosition.balanceOf(address(_setToken)); @@ -485,7 +485,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss /** * @dev Approve the given wrappedFCash instance to spend the setToken's sendToken */ - function _approveIfNecessary( + function _approve( ISetToken _setToken, IWrappedfCashComplete _fCashPosition, IERC20 _sendToken, @@ -494,8 +494,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss internal { if(IERC20(_sendToken).allowance(address(_setToken), address(_fCashPosition)) < _maxAssetAmount) { - // TODO: Review if we want to only approve "_maxAssetAmount" or keep it at maxUint256 - bytes memory approveCallData = abi.encodeWithSelector(_sendToken.approve.selector, address(_fCashPosition), type(uint256).max); + bytes memory approveCallData = abi.encodeWithSelector(_sendToken.approve.selector, address(_fCashPosition), _maxAssetAmount); _setToken.invoke(address(_sendToken), 0, approveCallData); } } From 8f4ad8c9248cc41a493dd69dd02ea4b144c12901 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 20 May 2022 10:38:24 +0800 Subject: [PATCH 112/120] Fix unittests --- contracts/mocks/WrappedfCashMock.sol | 8 +++++--- .../modules/v1/notionalTradeModule.spec.ts | 17 +++++++++++++++-- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 9fec019e1..680a18558 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -67,7 +67,7 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint32 /* minImpliedRate */ ) external override{ uint256 assetTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; - assetToken.transferFrom(msg.sender, address(this), assetTokenAmount); + require(assetToken.transferFrom(msg.sender, address(this), assetTokenAmount), "WrappedfCashMock: Transfer failed"); _mint(receiver, fCashAmount); } @@ -78,11 +78,13 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { uint32 /* minImpliedRate */ ) external override{ uint256 underlyingTokenAmount = mintTokenSpent == 0 ? depositAmountExternal : mintTokenSpent; + bool transferSuccess; if(address(underlyingToken) == ETH_ADDRESS) { - weth.transferFrom(msg.sender, address(this), underlyingTokenAmount); + transferSuccess = weth.transferFrom(msg.sender, address(this), underlyingTokenAmount); } else { - underlyingToken.transferFrom(msg.sender, address(this), underlyingTokenAmount); + transferSuccess = underlyingToken.transferFrom(msg.sender, address(this), underlyingTokenAmount); } + require(transferSuccess, "WrappedfCashMock: Transfer failed"); _mint(receiver, fCashAmount); } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 4d2cbd50d..98244cdb2 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -748,9 +748,22 @@ describe("NotionalTradeModule", () => { describe(`when too much ${tokenType} is spent`, () => { beforeEach(async () => { - await wrappedfCashMock.setMintTokenSpent( - subjectSendQuantity.mul(2), + const oldSubjectSendQuantity = subjectSendQuantity; + + // Execute trade where we are spending much less than approved to create left-over allowance + subjectSendQuantity = subjectSendQuantity.mul(3).div(2); + await wrappedfCashMock.setMintTokenSpent(1); + await subject(); + + const spendAmount = oldSubjectSendQuantity.mul(5).div(4); + const allowance = await sendToken.allowance( + setToken.address, + wrappedfCashMock.address, ); + expect(allowance).to.be.gte(spendAmount); + await wrappedfCashMock.setMintTokenSpent(spendAmount); + + subjectSendQuantity = oldSubjectSendQuantity; }); it("should revert", async () => { await expect(subject()).to.be.revertedWith("Overspent"); From d170363e0a8afbd48f6009a7d0f51992fed80ba9 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 20 May 2022 10:52:46 +0800 Subject: [PATCH 113/120] Add test case for reverting mint call --- .../modules/v1/notionalTradeModule.spec.ts | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 98244cdb2..e4fbbd894 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -624,7 +624,10 @@ describe("NotionalTradeModule", () => { subjectMaturity = maturity; }); - ["buying", "selling"].forEach(tradeDirection => { + [ + "buying", + // "selling" + ].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; @@ -769,6 +772,23 @@ describe("NotionalTradeModule", () => { await expect(subject()).to.be.revertedWith("Overspent"); }); }); + + describe("when swap fails due to insufficient allowance", () => { + beforeEach(async () => { + await wrappedfCashMock.setMintTokenSpent( + subjectSendQuantity.mul(2), + ); + }); + it("should revert", async () => { + const revertMessage = + tokenType == "assetToken" + ? "WrappedfCashMock: Transfer failed" + : underlyingTokenName == "dai" + ? "ERC20: transfer amount exceeds allowance" + : "Address: low-level call with value failed"; + await expect(subject()).to.be.revertedWith(revertMessage); + }); + }); } else { describe("When wrappedFCash is not deployed for given parameters", () => { beforeEach(async () => { From 725bdaf4fc6934c72764e5200d469b8fba26fb6d Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 20 May 2022 11:38:02 +0800 Subject: [PATCH 114/120] Reactivate sell scenario --- test/protocol/modules/v1/notionalTradeModule.spec.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index e4fbbd894..e63e84cb6 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -624,10 +624,7 @@ describe("NotionalTradeModule", () => { subjectMaturity = maturity; }); - [ - "buying", - // "selling" - ].forEach(tradeDirection => { + ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { let sendTokenType: string; From d0e6a1984e2b272c0d38172963174f3c030df700 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Fri, 20 May 2022 12:36:17 +0800 Subject: [PATCH 115/120] Add test case for when token is not registered component --- .../modules/v1/notionalTradeModule.spec.ts | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index e63e84cb6..34c1b9057 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -725,7 +725,87 @@ describe("NotionalTradeModule", () => { } }; + describe("When paymentToken is not a registered component", () => { + beforeEach(async () => { + const fTokenQuantity = subjectMinReceiveQuantity; + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, + ); + const sendTokenPositionBefore = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + if (tradeDirection == "buying") { + await notionalTradeModule + .connect(manager.wallet) + .mintFCashPosition( + setToken.address, + subjectCurrencyId, + subjectMaturity, + fTokenQuantity, + sendToken.address, + sendTokenBalanceBefore, + ); + } else { + await notionalTradeModule + .connect(manager.wallet) + .redeemFCashPosition( + setToken.address, + subjectCurrencyId, + subjectMaturity, + sendTokenBalanceBefore, + receiveToken.address, + 0, + ); + } + await sendToken.transfer(setToken.address, subjectSendQuantity); + + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, + ); + const sendTokenPositionAfter = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + const componentsAfter = await setToken.getComponents(); + + console.log({ + sendToken: sendToken.address, + sendTokenPositionBefore: sendTokenPositionBefore.toString(), + sendTokenBalanceBefore: sendTokenBalanceBefore.toString(), + sendTokenPositionAfter: sendTokenPositionAfter.toString(), + sendTokenBalanceAfter: sendTokenBalanceAfter.toString(), + componentsAfter, + }); + + expect(sendTokenBalanceAfter).to.be.gte(subjectSendQuantity); + expect(sendTokenPositionAfter).to.eq(0); + }); + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); + }); + }); + if (tradeDirection == "buying") { + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); + }); describe("When sendToken is neither underlying nor asset token", () => { beforeEach(async () => { subjectSendToken = ethers.constants.AddressZero; From f1b11c00de7869bf97b9b6ddc01a4460a65edfaf Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 21 May 2022 12:56:59 +0800 Subject: [PATCH 116/120] Adjust unit tests and add check if module is smartContract in removeModule loop --- contracts/mocks/WrappedfCashMock.sol | 12 +- .../modules/v1/NotionalTradeModule.sol | 5 +- .../modules/v1/notionalTradeModule.spec.ts | 1410 +++++++++-------- 3 files changed, 768 insertions(+), 659 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 680a18558..421b4a355 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -43,8 +43,8 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { bool private revertDecodedID; - uint256 private redeemTokenReturned; - uint256 private mintTokenSpent; + uint256 public redeemTokenReturned; + uint256 public mintTokenSpent; address internal constant ETH_ADDRESS = address(0); @@ -96,7 +96,13 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { ) external override { _burn(msg.sender, amount); uint256 assetTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; - assetToken.transfer(receiver, assetTokenAmount); + console.log("Returning assetToken amount"); + console.logUint(assetTokenAmount); + console.logUint(amount); + console.logUint(redeemTokenReturned); + console.logAddress(address(this)); + console.logUint(assetToken.balanceOf(address(this))); + require(assetToken.transfer(receiver, assetTokenAmount), "WrappedfCashMock: Transfer failed"); } function redeemToUnderlying( diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 097327e3d..de724fe9e 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -34,6 +34,7 @@ import { ISetToken } from "../../../interfaces/ISetToken.sol"; import { ModuleBase } from "../../lib/ModuleBase.sol"; + /** * @title NotionalTradeModule * @author Set Protocol @@ -249,7 +250,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss // Try if unregister exists on any of the modules address[] memory modules = setToken.getModules(); for(uint256 i = 0; i < modules.length; i++) { - try IDebtIssuanceModule(modules[i]).unregisterFromIssuanceModule(setToken) {} catch {} + if(modules[i].isContract()){ + try IDebtIssuanceModule(modules[i]).unregisterFromIssuanceModule(setToken) {} catch {} + } } } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 34c1b9057..e3fdd40c6 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -44,6 +44,8 @@ describe("NotionalTradeModule", () => { let compoundSetup: CompoundFixture; let cTokenInitialMantissa: BigNumber; + let usdc: StandardTokenMock; + before(async () => { [owner, manager] = await getAccounts(); @@ -56,6 +58,7 @@ describe("NotionalTradeModule", () => { await compoundSetup.initialize(); cTokenInitialMantissa = ether(200000000); mockPreIssuanceHook = await deployer.mocks.deployManagerIssuanceHookMock(); + usdc = setup.usdc; }); describe("when factory mock is deployed", async () => { @@ -181,18 +184,15 @@ describe("NotionalTradeModule", () => { ); }); describe("When setToken is deployed", async () => { - let wrappedfCashPosition: BigNumber; + let usdcPosition: BigNumber; let initialSetBalance: BigNumber; let setToken: SetToken; beforeEach(async () => { - wrappedfCashPosition = ethers.utils.parseUnits( - "2", - await wrappedfCashMock.decimals(), - ); + usdcPosition = ethers.utils.parseUnits("2", await usdc.decimals()); setToken = await setup.createSetToken( - [wrappedfCashMock.address], - [wrappedfCashPosition], + [usdc.address], + [usdcPosition], [debtIssuanceModule.address, notionalTradeModule.address], manager.address, ); @@ -210,7 +210,7 @@ describe("NotionalTradeModule", () => { ); initialSetBalance = underlyingTokenBalance.div(10); - await wrappedfCashMock.approve(debtIssuanceModule.address, underlyingTokenBalance); + await usdc.approve(debtIssuanceModule.address, underlyingTokenBalance); await debtIssuanceModule.issue(setToken.address, initialSetBalance, owner.address); }); @@ -569,39 +569,49 @@ describe("NotionalTradeModule", () => { const subject = () => { return notionalTradeModule.getFCashPositions(subjectSetToken); }; - beforeEach(() => { + beforeEach(async () => { subjectSetToken = setToken.address; + await setup.controller.connect(owner.wallet).addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); }); - it("should return the correct fCash positions", async () => { - const fCashPositions = await subject(); - expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); - }); - describe("When the unit is negative", () => { + describe("When set token has fCash position", () => { beforeEach(async () => { - await setup.controller.connect(owner.wallet).addModule(owner.address); - await setToken.connect(manager.wallet).addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(wrappedfCashMock.address, -420); - const externalPositionModule = await getRandomAddress(); + const fCashPosition = 1000; + await setToken.connect(owner.wallet).addComponent(wrappedfCashMock.address); await setToken .connect(owner.wallet) - .addExternalPositionModule( - wrappedfCashMock.address, - externalPositionModule, - ); - await setToken - .connect(owner.wallet) - .editExternalPositionUnit( - wrappedfCashMock.address, - externalPositionModule, - -420, - ); + .editDefaultPositionUnit(wrappedfCashMock.address, fCashPosition); }); - it("should not return the fCash component", async () => { + + it("should return the correct fCash positions", async () => { const fCashPositions = await subject(); - expect(fCashPositions).to.deep.eq([]); + expect(fCashPositions).to.deep.eq([wrappedfCashMock.address]); + }); + describe("When the unit is negative", () => { + beforeEach(async () => { + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, -420); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule( + wrappedfCashMock.address, + externalPositionModule, + ); + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( + wrappedfCashMock.address, + externalPositionModule, + -420, + ); + }); + it("should not return the fCash component", async () => { + const fCashPositions = await subject(); + expect(fCashPositions).to.deep.eq([]); + }); }); }); }); @@ -646,31 +656,15 @@ describe("NotionalTradeModule", () => { subjectMinReceiveQuantity = fTokenQuantity; subjectSendQuantity = fTokenQuantity; - if (tradeDirection == "buying") { - // Apparently it is not possible to trade tokens that are not a set component - // Also sending extra tokens to the trade module might break it - // TODO: Review - await sendToken.transfer( - wrappedfCashMock.address, - subjectSendQuantity.mul(2), - ); - await notionalTradeModule - .connect(manager.wallet) - .redeemFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - fTokenQuantity.mul(2), - sendToken.address, - subjectSendQuantity.mul(2), - ); - } - if (tradeDirection == "selling") { - await receiveToken.transfer( - wrappedfCashMock.address, - subjectMinReceiveQuantity.mul(2), - ); - } + + await sendToken.transfer(setToken.address, subjectSendQuantity.mul(2)); + await receiveToken.transfer( + wrappedfCashMock.address, + subjectMinReceiveQuantity.mul(2), + ); + expect( + await receiveToken.balanceOf(wrappedfCashMock.address), + ).to.be.gte(subjectMinReceiveQuantity.mul(2)); }); const subject = () => { @@ -725,39 +719,43 @@ describe("NotionalTradeModule", () => { } }; - describe("When paymentToken is not a registered component", () => { + describe("When sendToken has never been a registered component", () => { + beforeEach(async () => { + const sendTokenBalance = await sendToken.balanceOf(setToken.address); + const sendTokenPosition = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + + // Assert that set token has positive send token balance but it's not a registered component + expect(sendTokenBalance).to.be.gte(subjectSendQuantity); + expect(sendTokenPosition).to.eq(0); + expect(await setToken.isComponent(sendToken.address)).to.be.false; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "SafeMath: subtraction overflow", + ); + }); + }); + + describe("When sendToken is a registered component", () => { beforeEach(async () => { - const fTokenQuantity = subjectMinReceiveQuantity; const sendTokenBalanceBefore = await sendToken.balanceOf( setToken.address, ); - const sendTokenPositionBefore = await setToken.getTotalComponentRealUnits( - sendToken.address, - ); - if (tradeDirection == "buying") { - await notionalTradeModule - .connect(manager.wallet) - .mintFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - fTokenQuantity, - sendToken.address, - sendTokenBalanceBefore, - ); - } else { - await notionalTradeModule - .connect(manager.wallet) - .redeemFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - sendTokenBalanceBefore, - receiveToken.address, - 0, - ); - } - await sendToken.transfer(setToken.address, subjectSendQuantity); + + const setTokenSupply = await setToken.totalSupply(); + const sendTokenPositionToSet = sendTokenBalanceBefore + .mul(BigNumber.from(10).pow(18)) + .div(setTokenSupply); + + await setup.controller.connect(owner.wallet).addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken.connect(owner.wallet).addComponent(sendToken.address); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(sendToken.address, sendTokenPositionToSet); const sendTokenBalanceAfter = await sendToken.balanceOf( setToken.address, @@ -765,642 +763,623 @@ describe("NotionalTradeModule", () => { const sendTokenPositionAfter = await setToken.getTotalComponentRealUnits( sendToken.address, ); - const componentsAfter = await setToken.getComponents(); - - console.log({ - sendToken: sendToken.address, - sendTokenPositionBefore: sendTokenPositionBefore.toString(), - sendTokenBalanceBefore: sendTokenBalanceBefore.toString(), - sendTokenPositionAfter: sendTokenPositionAfter.toString(), - sendTokenBalanceAfter: sendTokenBalanceAfter.toString(), - componentsAfter, - }); + // Make sure set token was added to set expect(sendTokenBalanceAfter).to.be.gte(subjectSendQuantity); - expect(sendTokenPositionAfter).to.eq(0); - }); - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); + expect(sendTokenPositionAfter).to.be.gt(0); + expect(await setToken.isComponent(sendToken.address)).to.be.true; }); - }); - if (tradeDirection == "buying") { - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); - }); - describe("When sendToken is neither underlying nor asset token", () => { + describe("When paymentToken is not a registered component anymore", () => { beforeEach(async () => { - subjectSendToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, ); - }); - }); + if (tradeDirection == "buying") { + await notionalTradeModule + .connect(manager.wallet) + .mintFCashPosition( + setToken.address, + subjectCurrencyId, + subjectMaturity, + subjectMinReceiveQuantity, + sendToken.address, + sendTokenBalanceBefore, + ); + } else { + await wrappedfCashMock.setRedeemTokenReturned(1); + await notionalTradeModule + .connect(manager.wallet) + .redeemFCashPosition( + setToken.address, + subjectCurrencyId, + subjectMaturity, + sendTokenBalanceBefore, + receiveToken.address, + 0, + ); + await wrappedfCashMock.setRedeemTokenReturned(0); + } + await sendToken.transfer(setToken.address, subjectSendQuantity); - describe("When receiveAmount is 0", () => { - beforeEach(async () => { - subjectMinReceiveQuantity = BigNumber.from(0); + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, + ); + const sendTokenPositionAfter = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + + expect(sendTokenBalanceAfter).to.be.gte(subjectSendQuantity); + expect(sendTokenPositionAfter).to.eq(0); + expect(await setToken.isComponent(sendToken.address)).to.be.false; }); - it("should not revert", async () => { + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await wrappedfCashMock.setRedeemTokenReturned(0); await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); }); }); - describe(`when too much ${tokenType} is spent`, () => { - beforeEach(async () => { - const oldSubjectSendQuantity = subjectSendQuantity; - - // Execute trade where we are spending much less than approved to create left-over allowance - subjectSendQuantity = subjectSendQuantity.mul(3).div(2); - await wrappedfCashMock.setMintTokenSpent(1); + if (tradeDirection == "buying") { + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); await subject(); - - const spendAmount = oldSubjectSendQuantity.mul(5).div(4); - const allowance = await sendToken.allowance( + const receiveTokenBalanceAfter = await receiveToken.balanceOf( setToken.address, - wrappedfCashMock.address, ); - expect(allowance).to.be.gte(spendAmount); - await wrappedfCashMock.setMintTokenSpent(spendAmount); - - subjectSendQuantity = oldSubjectSendQuantity; + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Overspent"); + describe("When sendToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectSendToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); + }); }); - }); - describe("when swap fails due to insufficient allowance", () => { - beforeEach(async () => { - await wrappedfCashMock.setMintTokenSpent( - subjectSendQuantity.mul(2), - ); + describe("When receiveAmount is 0", () => { + beforeEach(async () => { + subjectMinReceiveQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); }); - it("should revert", async () => { - const revertMessage = - tokenType == "assetToken" - ? "WrappedfCashMock: Transfer failed" - : underlyingTokenName == "dai" - ? "ERC20: transfer amount exceeds allowance" - : "Address: low-level call with value failed"; - await expect(subject()).to.be.revertedWith(revertMessage); + + describe(`when too much ${tokenType} is spent`, () => { + beforeEach(async () => { + const oldSubjectSendQuantity = subjectSendQuantity; + + // Execute trade where we are spending much less than approved to create left-over allowance + subjectSendQuantity = subjectSendQuantity.mul(3).div(2); + await wrappedfCashMock.setMintTokenSpent(1); + await subject(); + + const spendAmount = oldSubjectSendQuantity.mul(5).div(4); + const allowance = await sendToken.allowance( + setToken.address, + wrappedfCashMock.address, + ); + expect(allowance).to.be.gte(spendAmount); + await wrappedfCashMock.setMintTokenSpent(spendAmount); + + subjectSendQuantity = oldSubjectSendQuantity; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Overspent"); + }); }); - }); - } else { - describe("When wrappedFCash is not deployed for given parameters", () => { - beforeEach(async () => { - subjectCurrencyId = 10; + + describe("when swap fails due to insufficient allowance", () => { + beforeEach(async () => { + await wrappedfCashMock.setMintTokenSpent( + subjectSendQuantity.mul(2), + ); + }); + it("should revert", async () => { + const revertMessage = + tokenType == "assetToken" + ? "WrappedfCashMock: Transfer failed" + : underlyingTokenName == "dai" + ? "ERC20: transfer amount exceeds allowance" + : "Address: low-level call with value failed"; + await expect(subject()).to.be.revertedWith(revertMessage); + }); }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "WrappedfCash not deployed for given parameters", - ); + } else { + describe("When wrappedFCash is not deployed for given parameters", () => { + beforeEach(async () => { + subjectCurrencyId = 10; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "WrappedfCash not deployed for given parameters", + ); + }); }); - }); - describe("When receiveToken is neither underlying nor asset token", () => { - beforeEach(async () => { - subjectReceiveToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", - ); + describe("When receiveToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectReceiveToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); + }); }); - }); - describe("When sendAmount is 0", () => { - beforeEach(async () => { - subjectSendQuantity = BigNumber.from(0); + describe("When sendAmount is 0", () => { + beforeEach(async () => { + subjectSendQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); }); - it("should not revert", async () => { - await subject(); + describe(`when too little ${tokenType} is returned`, () => { + beforeEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned( + subjectMinReceiveQuantity.div(2), + ); + }); + afterEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned(0); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Not enough received amount", + ); + }); }); + } + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); }); - describe(`when too little ${tokenType} is returned`, () => { - beforeEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned( - subjectMinReceiveQuantity.div(2), + + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, + ); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, + ); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, ); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Not enough received amount", + } else { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( + subjectSendQuantity, ); - }); + } }); - } - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); - }); - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf( - setToken.address, - ); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf( - setToken.address, - ); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, + it("should not revert when executing trade twice", async () => { + await subject(); + await subject(); + }); + + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, ); - } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( - subjectSendQuantity, + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf( + setToken.address, ); - } - }); - it("should not revert when executing trade twice", async () => { - await subject(); - await subject(); - }); + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub( + otherTokenBalanceBefore, + ); + } else { + expectedResult = otherTokenBalanceBefore.sub( + otherTokenBalanceAfter, + ); + } - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf( - setToken.address, - ); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf( - setToken.address, - ); + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(result).to.be.gte( + expectedResult.mul(100 - allowedDeviationPercent).div(100), + ); + expect(result).to.be.lte( + expectedResult.mul(100 + allowedDeviationPercent).div(100), + ); + }); - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub(otherTokenBalanceBefore); - } else { - expectedResult = otherTokenBalanceBefore.sub(otherTokenBalanceAfter); - } + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" + ? subjectMinReceiveQuantity + : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" ? subjectMinReceiveQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, + ); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / + 10, + ), + ); + } - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + if (receiveTokenType == "underlyingToken") { + // TODO: Review why there is some deviation + const allowedDeviationPercent = 1; + expect(receiveTokenAmountNormalized).to.be.gte( + positionChange.mul(100 - allowedDeviationPercent).div(100), + ); + expect(receiveTokenAmountNormalized).to.be.lte( + positionChange.mul(100 + allowedDeviationPercent).div(100), + ); + } else { + expect(receiveTokenAmountNormalized).to.eq(positionChange); + } + }); - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div( - totalSetSupplyEther, + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + sendToken.address, ); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / - 10, - ), + const tradeAmount = await subjectCall(); + const sendTokenAmount = + tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + sendToken.address, ); - } - if (receiveTokenType == "underlyingToken") { - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), - ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), + const positionChange = positionBefore.sub(positionAfter); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } - }); - - it("should adjust the components position of the sendToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + let sendTokenAmountNormalized; + if (sendTokenType == "underlyingToken") { + sendTokenAmountNormalized = sendTokenAmount.div( + totalSetSupplyEther, + ); + } else { + sendTokenAmountNormalized = BigNumber.from( + // TODO: Why do we have to use round here and floor with the receive token ? + Math.round( + sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / + 10, + ), + ); + } - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div(totalSetSupplyEther); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / 10, - ), + expect(sendTokenAmountNormalized).to.closeTo( + positionChange, + positionChange.div(10 ** 6).toNumber(), ); - } - - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); + }); }); }); }); }); - }); - describe("#moduleIssue/RedeemHook", () => { - let subjectSetToken: string; - let subjectReceiver: string; - let subjectAmount: BigNumber; - let caller: SignerWithAddress; - beforeEach(() => { - subjectSetToken = setToken.address; - subjectAmount = ethers.utils.parseUnits("1", 8); - caller = owner.wallet; - subjectReceiver = caller.address; - }); - ["underlying", "asset"].forEach(redeemToken => { - describe(`when redeeming to ${redeemToken}`, () => { - let outputToken: IERC20; + describe("#moduleIssue/RedeemHook", () => { + let subjectSetToken: string; + let subjectReceiver: string; + let subjectAmount: BigNumber; + let caller: SignerWithAddress; + beforeEach(() => { + subjectSetToken = setToken.address; + subjectAmount = ethers.utils.parseUnits("1", 8); + caller = owner.wallet; + subjectReceiver = caller.address; + }); + describe("When wrappedFCash is a registered component", () => { beforeEach(async () => { - const toUnderlying = redeemToken == "underlying"; - await notionalTradeModule - .connect(manager.wallet) - .setRedeemToUnderlying(subjectSetToken, toUnderlying); - outputToken = redeemToken == "underlying" ? underlyingToken : assetToken; - }); - ["issue", "redeem", "manualTrigger", "removeModule"].forEach( - triggerAction => { - describe(`When hook is triggered by ${triggerAction}`, () => { - beforeEach(async () => { - const underlyingTokenAmount = ethers.utils.parseEther("2.1"); - const fCashAmount = ethers.utils.parseUnits("2", 8); - - await assetToken.connect(owner.wallet).mint(ether(1)); - const assetTokenBalance = await assetToken.balanceOf(owner.address); - await assetToken - .connect(owner.wallet) - .transfer(wrappedfCashMock.address, assetTokenBalance); - - const redemptionAssetAmount = assetTokenBalance.div(2); - await wrappedfCashMock.setRedeemTokenReturned( - redemptionAssetAmount, - ); - - if (triggerAction == "redeem") { - await mintWrappedFCash( - owner.wallet, - underlyingToken, - underlyingTokenAmount, - fCashAmount, - assetToken as any, - wrappedfCashMock as any, - true, - ); - await debtIssuanceModule - .connect(owner.wallet) - .issue(subjectSetToken, subjectAmount, caller.address); - await setToken - .connect(caller) - .approve(debtIssuanceModule.address, subjectAmount); - } else if (triggerAction == "issue") { - await underlyingToken.transfer( - caller.address, - underlyingTokenAmount, - ); - - if (redeemToken == "underlying") { - // If matured tokens are redeemed to underlying token issuer will need that token (underlyingToken) for issuance - await underlyingToken - .connect(caller) - .approve( - debtIssuanceModule.address, - ethers.constants.MaxUint256, - ); - } else { - // If matured tokens are redeemed to asset token issuer will need that token (assetToken) for issuance - await underlyingToken - .connect(caller) - .approve(assetToken.address, ethers.constants.MaxUint256); - await assetToken.connect(caller).mint(underlyingTokenAmount); - await assetToken - .connect(caller) - .approve( - debtIssuanceModule.address, - ethers.constants.MaxUint256, - ); - } - } - }); - - const subject = () => { - if (triggerAction == "issue") { - return debtIssuanceModule - .connect(caller) - .issue(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "redeem") { - return debtIssuanceModule - .connect(caller) - .redeem(subjectSetToken, subjectAmount, subjectReceiver); - } else if (triggerAction == "removeModule") { - return setToken - .connect(manager.wallet) - .removeModule(notionalTradeModule.address); - } else { - return notionalTradeModule - .connect(caller) - .redeemMaturedPositions(subjectSetToken); - } - }; + const setTokenSupply = await setToken.totalSupply(); + const fCashAmount = ethers.utils.parseUnits("10", 8); + await wrappedfCashMock.mintViaUnderlying( + 0, + fCashAmount, + setToken.address, + 0, + ); + const setTokenFCashBalance = await wrappedfCashMock.balanceOf( + setToken.address, + ); + const fCashPositionToSet = setTokenFCashBalance + .mul(BigNumber.from(10).pow(18)) + .div(setTokenSupply); + + await setup.controller.connect(owner.wallet).addModule(owner.address); + await setToken.connect(manager.wallet).addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .addComponent(wrappedfCashMock.address); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, fCashPositionToSet); + + const wrappedfCashMockBalanceAfter = await wrappedfCashMock.balanceOf( + setToken.address, + ); + const wrappedfCashMockPositionAfter = await setToken.getTotalComponentRealUnits( + wrappedfCashMock.address, + ); - describe("When component has not matured yet", () => { - beforeEach(async () => { - if (triggerAction == "issue") { + // Make sure set token was added to set + expect(wrappedfCashMockBalanceAfter).to.be.gte(fCashAmount); + expect(wrappedfCashMockPositionAfter).to.be.gt(0); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; + }); + ["underlying", "asset"].forEach(redeemToken => { + describe(`when redeeming to ${redeemToken}`, () => { + let outputToken: IERC20; + beforeEach(async () => { + const toUnderlying = redeemToken == "underlying"; + await notionalTradeModule + .connect(manager.wallet) + .setRedeemToUnderlying(subjectSetToken, toUnderlying); + outputToken = + redeemToken == "underlying" ? underlyingToken : assetToken; + }); + ["issue", "redeem", "manualTrigger", "removeModule"].forEach( + triggerAction => { + describe(`When hook is triggered by ${triggerAction}`, () => { + beforeEach(async () => { const underlyingTokenAmount = ethers.utils.parseEther("2.1"); const fCashAmount = ethers.utils.parseUnits("2", 8); - await mintWrappedFCash( - caller, - underlyingToken, - underlyingTokenAmount, - fCashAmount, - assetToken as any, - wrappedfCashMock as any, - true, - ); - await wrappedfCashMock - .connect(caller) - .approve( - debtIssuanceModule.address, - ethers.constants.MaxUint256, - ); - } - expect(await wrappedfCashMock.hasMatured()).to.be.false; - }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, - ); - expect(positionAfter).to.eq(positionBefore); - }); - }); - - describe("When component has matured", () => { - beforeEach(async () => { - await wrappedfCashMock.setMatured(true); - }); - if (["issue", "redeem"].includes(triggerAction)) { - it(`should adjust ${redeemToken} balance correctly`, async () => { - const outputTokenBalanceBefore = await outputToken.balanceOf( - caller.address, - ); - await subject(); - const outputTokenBalanceAfter = await outputToken.balanceOf( - caller.address, + await assetToken.connect(owner.wallet).mint(ether(1)); + const assetTokenBalance = await assetToken.balanceOf( + owner.address, ); - const amountAssetTokenTransfered = - triggerAction == "redeem" - ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) - : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); - - expect(amountAssetTokenTransfered).to.be.gt(0); - }); + await assetToken + .connect(owner.wallet) + .transfer(wrappedfCashMock.address, assetTokenBalance); - it("should issue correct amount of set tokens", async () => { - const setTokenBalanceBefore = await setToken.balanceOf( - caller.address, - ); - await subject(); - const setTokenBalanceAfter = await setToken.balanceOf( - caller.address, + const redemptionAssetAmount = assetTokenBalance.div(2); + await wrappedfCashMock.setRedeemTokenReturned( + redemptionAssetAmount, ); - const expectedBalanceChange = - triggerAction == "issue" - ? subjectAmount - : subjectAmount.mul(-1); - expect(setTokenBalanceAfter.sub(setTokenBalanceBefore)).to.eq( - expectedBalanceChange, - ); - }); - } - it("Removes wrappedFCash from component list", async () => { - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .true; - await subject(); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be - .false; - }); - - it("Removes wrappedFCash from the list of registered fCashPositions", async () => { - await subject(); - const fCashPositions = await notionalTradeModule.getFCashPositions( - subjectSetToken, - ); - expect(fCashPositions).to.not.include(wrappedfCashMock.address); - }); - - it(`Adds ${redeemToken} token to component list`, async () => { - expect(await setToken.isComponent(outputToken.address)).to.be - .false; - await subject(); - expect(await setToken.isComponent(outputToken.address)).to.be - .true; - }); - - it("Afterwards setToken should have no fCash balance anymore", async () => { - const balanceBefore = await wrappedfCashMock.balanceOf( - subjectSetToken, - ); - expect(balanceBefore).to.be.gt(0); - await subject(); - const balanceAfter = await wrappedfCashMock.balanceOf( - subjectSetToken, - ); - expect(balanceAfter).to.eq(0); - }); - - it(`Afterwards setToken should have received ${redeemToken} token`, async () => { - const balanceBefore = await outputToken.balanceOf( - subjectSetToken, - ); - await subject(); - const balanceAfter = await outputToken.balanceOf(subjectSetToken); - expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); - }); - - it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - outputToken.address, - ); - expect(positionAfter.sub(positionBefore)).to.be.gt(0); - }); + if (triggerAction == "redeem") { + await underlyingToken + .connect(owner.wallet) + .approve( + wrappedfCashMock.address, + ethers.constants.MaxUint256, + ); + await mintWrappedFCash( + owner.wallet, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(owner.wallet) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + await debtIssuanceModule + .connect(owner.wallet) + .issue(subjectSetToken, subjectAmount, caller.address); + await setToken + .connect(caller) + .approve(debtIssuanceModule.address, subjectAmount); + } else if (triggerAction == "issue") { + await underlyingToken.transfer( + caller.address, + underlyingTokenAmount, + ); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions( - setToken.address, - ); - }); - it("should not revert", async () => { - await subject(); + if (redeemToken == "underlying") { + await underlyingToken + .connect(caller) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + } else { + await underlyingToken + .connect(caller) + .approve(assetToken.address, ethers.constants.MaxUint256); + await assetToken + .connect(caller) + .mint(underlyingTokenAmount); + await assetToken + .connect(caller) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + } + } }); - }); - describe("When positions have been redeemed already", () => { - beforeEach(async () => { - await notionalTradeModule.redeemMaturedPositions( - setToken.address, - ); - }); - it("should not revert", async () => { - await subject(); + const subject = () => { + if (triggerAction == "issue") { + return debtIssuanceModule + .connect(caller) + .issue(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "redeem") { + return debtIssuanceModule + .connect(caller) + .redeem(subjectSetToken, subjectAmount, subjectReceiver); + } else if (triggerAction == "removeModule") { + return setToken + .connect(manager.wallet) + .removeModule(notionalTradeModule.address); + } else { + return notionalTradeModule + .connect(caller) + .redeemMaturedPositions(subjectSetToken); + } + }; + + describe("When component has not matured yet", () => { + beforeEach(async () => { + if (triggerAction == "issue") { + const underlyingTokenAmount = ethers.utils.parseEther( + "2.1", + ); + const fCashAmount = ethers.utils.parseUnits("2", 8); + await mintWrappedFCash( + caller, + underlyingToken, + underlyingTokenAmount, + fCashAmount, + assetToken as any, + wrappedfCashMock as any, + true, + ); + await wrappedfCashMock + .connect(caller) + .approve( + debtIssuanceModule.address, + ethers.constants.MaxUint256, + ); + } + expect(await wrappedfCashMock.hasMatured()).to.be.false; + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); }); - }); - if (triggerAction == "manualTrigger") { - [ - "wrong currencyId", - "wrong maturity", - "reverted getDecodedID", - "reverted computeAddress", - "negative unit", - ].forEach(reason => { - describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { - beforeEach(async () => { - if (reason == "wrong currencyId") { - await wrappedfCashMock.initialize(420, maturity); - } else if (reason == "wrong maturity") { - await wrappedfCashMock.initialize(currencyId, 420); - } else if (reason == "reverted getDecodedID") { - await wrappedfCashMock.setRevertDecodedID(true); - } else if (reason == "reverted computeAddress") { - await wrappedfCashFactoryMock.setRevertComputeAddress( - true, - ); - } else if (reason == "negative unit") { - // We add the owner as a fake-module to be able to add arbitrary addresses as components - await setup.controller - .connect(owner.wallet) - .addModule(owner.address); - await setToken - .connect(manager.wallet) - .addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - // Just changing the default position to <= 0 will make it disappear from the position list - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit( - wrappedfCashMock.address, - -420, - ); - const externalPositionModule = await getRandomAddress(); - await setToken - .connect(owner.wallet) - .addExternalPositionModule( - wrappedfCashMock.address, - externalPositionModule, - ); - // Have to add it back in as an external position to get a negative unit - await setToken - .connect(owner.wallet) - .editExternalPositionUnit( - wrappedfCashMock.address, - externalPositionModule, - -420, - ); - } + describe("When component has matured", () => { + beforeEach(async () => { + await wrappedfCashMock.setMatured(true); + }); + + if (["issue", "redeem"].includes(triggerAction)) { + it(`should adjust ${redeemToken} balance correctly`, async () => { + const outputTokenBalanceBefore = await outputToken.balanceOf( + caller.address, + ); + await subject(); + const outputTokenBalanceAfter = await outputToken.balanceOf( + caller.address, + ); + const amountAssetTokenTransfered = + triggerAction == "redeem" + ? outputTokenBalanceAfter.sub(outputTokenBalanceBefore) + : outputTokenBalanceBefore.sub(outputTokenBalanceAfter); + + expect(amountAssetTokenTransfered).to.be.gt(0); }); - it("fCash position remains the same", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + + it("should issue correct amount of set tokens", async () => { + const setTokenBalanceBefore = await setToken.balanceOf( + caller.address, ); await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - wrappedfCashMock.address, + const setTokenBalanceAfter = await setToken.balanceOf( + caller.address, ); - expect(positionAfter).to.eq(positionBefore); + const expectedBalanceChange = + triggerAction == "issue" + ? subjectAmount + : subjectAmount.mul(-1); + expect( + setTokenBalanceAfter.sub(setTokenBalanceBefore), + ).to.eq(expectedBalanceChange); }); + } + + it("Removes wrappedFCash from component list", async () => { + expect(await setToken.isComponent(wrappedfCashMock.address)) + .to.be.true; + await subject(); + expect(await setToken.isComponent(wrappedfCashMock.address)) + .to.be.false; }); - }); - describe("When setToken contains an additional position that is not a smart contract", () => { - beforeEach(async () => { - const nonContractComponent = await getRandomAddress(); - // We add the owner as a fake-module to be able to add arbitrary addresses as components - await setup.controller - .connect(owner.wallet) - .addModule(owner.address); - await setToken - .connect(manager.wallet) - .addModule(owner.address); - await setToken.connect(owner.wallet).initializeModule(); - await setToken - .connect(owner.wallet) - .addComponent(nonContractComponent); - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(nonContractComponent, 420); + it("Removes wrappedFCash from the list of registered fCashPositions", async () => { + await subject(); + const fCashPositions = await notionalTradeModule.getFCashPositions( + subjectSetToken, + ); + expect(fCashPositions).to.not.include( + wrappedfCashMock.address, + ); }); + + it(`Adds ${redeemToken} token to component list`, async () => { + expect(await setToken.isComponent(outputToken.address)).to.be + .false; + await subject(); + expect(await setToken.isComponent(outputToken.address)).to.be + .true; + }); + + it("Afterwards setToken should have no fCash balance anymore", async () => { + const balanceBefore = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceBefore).to.be.gt(0); + await subject(); + const balanceAfter = await wrappedfCashMock.balanceOf( + subjectSetToken, + ); + expect(balanceAfter).to.eq(0); + }); + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { const balanceBefore = await outputToken.balanceOf( subjectSetToken, @@ -1422,12 +1401,133 @@ describe("NotionalTradeModule", () => { ); expect(positionAfter.sub(positionBefore)).to.be.gt(0); }); + + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions( + setToken.address, + ); + }); + it("should not revert", async () => { + await subject(); + }); + }); + + describe("When positions have been redeemed already", () => { + beforeEach(async () => { + await notionalTradeModule.redeemMaturedPositions( + setToken.address, + ); + }); + it("should not revert", async () => { + await subject(); + }); + }); + + if (triggerAction == "manualTrigger") { + [ + "wrong currencyId", + "wrong maturity", + "reverted getDecodedID", + "reverted computeAddress", + "negative unit", + ].forEach(reason => { + describe(`When the wrappedFCash position is not recognized as such because of ${reason}`, () => { + beforeEach(async () => { + if (reason == "wrong currencyId") { + await wrappedfCashMock.initialize(420, maturity); + } else if (reason == "wrong maturity") { + await wrappedfCashMock.initialize(currencyId, 420); + } else if (reason == "reverted getDecodedID") { + await wrappedfCashMock.setRevertDecodedID(true); + } else if (reason == "reverted computeAddress") { + await wrappedfCashFactoryMock.setRevertComputeAddress( + true, + ); + } else if (reason == "negative unit") { + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit( + wrappedfCashMock.address, + -420, + ); + const externalPositionModule = await getRandomAddress(); + await setToken + .connect(owner.wallet) + .addExternalPositionModule( + wrappedfCashMock.address, + externalPositionModule, + ); + // Have to add it back in as an external position to get a negative unit + await setToken + .connect(owner.wallet) + .editExternalPositionUnit( + wrappedfCashMock.address, + externalPositionModule, + -420, + ); + } + }); + it("fCash position remains the same", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + wrappedfCashMock.address, + ); + expect(positionAfter).to.eq(positionBefore); + }); + }); + }); + + describe("When setToken contains an additional position that is not a smart contract", () => { + beforeEach(async () => { + const nonContractComponent = await getRandomAddress(); + // We add the owner as a fake-module to be able to add arbitrary addresses as components + // await setup.controller + // .connect(owner.wallet) + // .addModule(owner.address); + // await setToken + // .connect(manager.wallet) + // .addModule(owner.address); + // await setToken.connect(owner.wallet).initializeModule(); + await setToken + .connect(owner.wallet) + .addComponent(nonContractComponent); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(nonContractComponent, 420); + }); + it(`Afterwards setToken should have received ${redeemToken} token`, async () => { + const balanceBefore = await outputToken.balanceOf( + subjectSetToken, + ); + await subject(); + const balanceAfter = await outputToken.balanceOf( + subjectSetToken, + ); + expect(balanceAfter.sub(balanceBefore)).to.be.gt(0); + }); + + it(`Afterwards setToken should have positive ${redeemToken} position`, async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + outputToken.address, + ); + expect(positionAfter.sub(positionBefore)).to.be.gt(0); + }); + }); + } }); - } - }); - }); - }, - ); + }); + }, + ); + }); + }); }); }); }); From f4eb2d98cfaad132f8dd7ad5578b096764b27482 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sat, 21 May 2022 13:14:15 +0800 Subject: [PATCH 117/120] Add unit test case illustrating issue when adding EOA as module --- .../modules/v1/aaveLeverageModule.spec.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/test/protocol/modules/v1/aaveLeverageModule.spec.ts b/test/protocol/modules/v1/aaveLeverageModule.spec.ts index 39d864f31..28f567159 100644 --- a/test/protocol/modules/v1/aaveLeverageModule.spec.ts +++ b/test/protocol/modules/v1/aaveLeverageModule.spec.ts @@ -3409,6 +3409,25 @@ describe("AaveLeverageModule", () => { return setToken.removeModule(subjectModule); } + describe("When an EOA is registered as a module", () => { + cacheBeforeEach(async () => { + await setup.controller + .addModule(owner.address); + await setToken + .addModule(owner.address); + await setToken.connect(owner.wallet).initializeModule(); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("function call to a non-contract account"); + }); + }); + + it("should remove the Module on the SetToken", async () => { + await subject(); + const isModuleEnabled = await setToken.isInitializedModule(aaveLeverageModule.address); + expect(isModuleEnabled).to.be.false; + }); + it("should remove the Module on the SetToken", async () => { await subject(); const isModuleEnabled = await setToken.isInitializedModule(aaveLeverageModule.address); From 67d5bc6d5c760537aaaffc33fe91ebac4b633320 Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Sun, 22 May 2022 14:16:29 +0800 Subject: [PATCH 118/120] Add check requiring send token to be registered component --- .../modules/v1/NotionalTradeModule.sol | 4 +- .../modules/v1/notionalTradeModule.spec.ts | 147 ++++++++---------- 2 files changed, 71 insertions(+), 80 deletions(-) diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index de724fe9e..58f32e0ad 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -166,6 +166,7 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss onlyManagerAndValidSet(_setToken) returns(uint256) { + require(_setToken.isComponent(address(_sendToken)), "Send token must be an index component"); IWrappedfCashComplete wrappedfCash = _deployWrappedfCash(_currencyId, _maturity); return _mintFCashPosition(_setToken, wrappedfCash, IERC20(_sendToken), _mintAmount, _maxSendAmount); @@ -194,8 +195,9 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss onlyManagerAndValidSet(_setToken) returns(uint256) { - IWrappedfCashComplete wrappedfCash = _getWrappedfCash(_currencyId, _maturity); + require(_setToken.isComponent(address(wrappedfCash)), "FCash to redeem must be an index component"); + return _redeemFCashPosition(_setToken, wrappedfCash, IERC20(_receiveToken), _redeemAmount, _minReceiveAmount); } diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index e3fdd40c6..80db0aebf 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -719,7 +719,7 @@ describe("NotionalTradeModule", () => { } }; - describe("When sendToken has never been a registered component", () => { + describe("When sendToken is not a registered component", () => { beforeEach(async () => { const sendTokenBalance = await sendToken.balanceOf(setToken.address); const sendTokenPosition = await setToken.getTotalComponentRealUnits( @@ -732,9 +732,11 @@ describe("NotionalTradeModule", () => { expect(await setToken.isComponent(sendToken.address)).to.be.false; }); it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "SafeMath: subtraction overflow", - ); + const revertMessage = + tradeDirection == "selling" + ? "FCash to redeem must be an index component" + : "Send token must be an index component"; + await expect(subject()).to.be.revertedWith(revertMessage); }); }); @@ -770,64 +772,6 @@ describe("NotionalTradeModule", () => { expect(await setToken.isComponent(sendToken.address)).to.be.true; }); - describe("When paymentToken is not a registered component anymore", () => { - beforeEach(async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf( - setToken.address, - ); - if (tradeDirection == "buying") { - await notionalTradeModule - .connect(manager.wallet) - .mintFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - subjectMinReceiveQuantity, - sendToken.address, - sendTokenBalanceBefore, - ); - } else { - await wrappedfCashMock.setRedeemTokenReturned(1); - await notionalTradeModule - .connect(manager.wallet) - .redeemFCashPosition( - setToken.address, - subjectCurrencyId, - subjectMaturity, - sendTokenBalanceBefore, - receiveToken.address, - 0, - ); - await wrappedfCashMock.setRedeemTokenReturned(0); - } - await sendToken.transfer(setToken.address, subjectSendQuantity); - - const sendTokenBalanceAfter = await sendToken.balanceOf( - setToken.address, - ); - const sendTokenPositionAfter = await setToken.getTotalComponentRealUnits( - sendToken.address, - ); - - expect(sendTokenBalanceAfter).to.be.gte(subjectSendQuantity); - expect(sendTokenPositionAfter).to.eq(0); - expect(await setToken.isComponent(sendToken.address)).to.be.false; - }); - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await wrappedfCashMock.setRedeemTokenReturned(0); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); - }); - }); - if (tradeDirection == "buying") { it("setToken should receive receiver token", async () => { const receiveTokenBalanceBefore = await receiveToken.balanceOf( @@ -844,6 +788,9 @@ describe("NotionalTradeModule", () => { describe("When sendToken is neither underlying nor asset token", () => { beforeEach(async () => { subjectSendToken = ethers.constants.AddressZero; + await setToken + .connect(owner.wallet) + .addComponent(subjectSendToken); }); it("should revert", async () => { await expect(subject()).to.be.revertedWith( @@ -1102,6 +1049,56 @@ describe("NotionalTradeModule", () => { positionChange.div(10 ** 6).toNumber(), ); }); + + describe("when amount of send token spent is higher than registered position", () => { + beforeEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned(subjectSendQuantity); + const additionalAmount = subjectSendQuantity.div(2); + await sendToken.transfer(setToken.address, additionalAmount); + + const sendTokenPosition = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + const sendTokenBalance = await sendToken.balanceOf( + setToken.address, + ); + + expect(sendTokenBalance.gt(sendTokenPosition)); + + subjectSendQuantity = sendTokenBalance; + }); + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); + }); + + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, + ); + await subject(); + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, + ); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect( + sendTokenBalanceBefore.sub(sendTokenBalanceAfter), + ).to.be.lte(subjectSendQuantity); + } + }); + }); }); }); }); @@ -1130,9 +1127,6 @@ describe("NotionalTradeModule", () => { const setTokenFCashBalance = await wrappedfCashMock.balanceOf( setToken.address, ); - const fCashPositionToSet = setTokenFCashBalance - .mul(BigNumber.from(10).pow(18)) - .div(setTokenSupply); await setup.controller.connect(owner.wallet).addModule(owner.address); await setToken.connect(manager.wallet).addModule(owner.address); @@ -1140,21 +1134,24 @@ describe("NotionalTradeModule", () => { await setToken .connect(owner.wallet) .addComponent(wrappedfCashMock.address); - await setToken - .connect(owner.wallet) - .editDefaultPositionUnit(wrappedfCashMock.address, fCashPositionToSet); const wrappedfCashMockBalanceAfter = await wrappedfCashMock.balanceOf( setToken.address, ); + expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; + expect(wrappedfCashMockBalanceAfter).to.be.gte(fCashAmount); + + const fCashPositionToSet = setTokenFCashBalance + .mul(BigNumber.from(10).pow(18)) + .div(setTokenSupply); + await setToken + .connect(owner.wallet) + .editDefaultPositionUnit(wrappedfCashMock.address, fCashPositionToSet); const wrappedfCashMockPositionAfter = await setToken.getTotalComponentRealUnits( wrappedfCashMock.address, ); - // Make sure set token was added to set - expect(wrappedfCashMockBalanceAfter).to.be.gte(fCashAmount); expect(wrappedfCashMockPositionAfter).to.be.gt(0); - expect(await setToken.isComponent(wrappedfCashMock.address)).to.be.true; }); ["underlying", "asset"].forEach(redeemToken => { describe(`when redeeming to ${redeemToken}`, () => { @@ -1484,14 +1481,6 @@ describe("NotionalTradeModule", () => { describe("When setToken contains an additional position that is not a smart contract", () => { beforeEach(async () => { const nonContractComponent = await getRandomAddress(); - // We add the owner as a fake-module to be able to add arbitrary addresses as components - // await setup.controller - // .connect(owner.wallet) - // .addModule(owner.address); - // await setToken - // .connect(manager.wallet) - // .addModule(owner.address); - // await setToken.connect(owner.wallet).initializeModule(); await setToken .connect(owner.wallet) .addComponent(nonContractComponent); From 17e65c14bef7d32d0f816dac94fa3c53e807aa6f Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 23 May 2022 12:08:53 +0800 Subject: [PATCH 119/120] Parameterize tests to trade less/equal/more than registered position --- .../modules/v1/notionalTradeModule.spec.ts | 567 ++++++++---------- 1 file changed, 265 insertions(+), 302 deletions(-) diff --git a/test/protocol/modules/v1/notionalTradeModule.spec.ts b/test/protocol/modules/v1/notionalTradeModule.spec.ts index 80db0aebf..a886590b0 100644 --- a/test/protocol/modules/v1/notionalTradeModule.spec.ts +++ b/test/protocol/modules/v1/notionalTradeModule.spec.ts @@ -637,7 +637,6 @@ describe("NotionalTradeModule", () => { ["buying", "selling"].forEach(tradeDirection => { ["underlyingToken", "assetToken"].forEach(tokenType => { describe(`When ${tradeDirection} fCash for ${tokenType}`, () => { - let sendTokenType: string; let receiveTokenType: string; let otherToken: IERC20; beforeEach(async () => { @@ -645,7 +644,6 @@ describe("NotionalTradeModule", () => { otherToken = tokenType == "assetToken" ? assetToken : underlyingToken; sendToken = tradeDirection == "buying" ? otherToken : wrappedfCashMock; - sendTokenType = tradeDirection == "buying" ? tokenType : "wrappedFCash"; receiveTokenType = tradeDirection == "selling" ? tokenType : "wrappedFCash"; subjectSendToken = sendToken.address; @@ -771,332 +769,297 @@ describe("NotionalTradeModule", () => { expect(sendTokenPositionAfter).to.be.gt(0); expect(await setToken.isComponent(sendToken.address)).to.be.true; }); - - if (tradeDirection == "buying") { - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); - }); - describe("When sendToken is neither underlying nor asset token", () => { + ["higher", "equal", "less"].forEach(relativeAmount => { + describe(`when amount of send token spent is ${relativeAmount} than/to registered position`, () => { beforeEach(async () => { - subjectSendToken = ethers.constants.AddressZero; - await setToken - .connect(owner.wallet) - .addComponent(subjectSendToken); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", - ); - }); - }); + if (relativeAmount == "higher") { + await wrappedfCashMock.setRedeemTokenReturned( + subjectSendQuantity, + ); + const additionalAmount = subjectSendQuantity; + await sendToken.transfer(setToken.address, additionalAmount); - describe("When receiveAmount is 0", () => { - beforeEach(async () => { - subjectMinReceiveQuantity = BigNumber.from(0); - }); - it("should not revert", async () => { - await subject(); + const sendTokenPosition = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + const sendTokenBalance = await sendToken.balanceOf( + setToken.address, + ); + + expect( + sendTokenBalance.eq(sendTokenPosition.add(additionalAmount)), + ); + subjectSendQuantity = sendTokenPosition.add( + additionalAmount.div(2), + ); + } + if (relativeAmount == "equal") { + const sendTokenPosition = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + const sendTokenBalance = await sendToken.balanceOf( + setToken.address, + ); + expect(sendTokenBalance.eq(sendTokenPosition)); + } + if (relativeAmount == "less") { + const sendTokenPosition = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + subjectSendQuantity = sendTokenPosition.div(2); + subjectMinReceiveQuantity = subjectSendQuantity; + } }); - }); - describe(`when too much ${tokenType} is spent`, () => { - beforeEach(async () => { - const oldSubjectSendQuantity = subjectSendQuantity; + if (tradeDirection == "buying") { + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, + ); + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, + ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); + }); + describe("When sendToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectSendToken = ethers.constants.AddressZero; + await setToken + .connect(owner.wallet) + .addComponent(subjectSendToken); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); + }); + }); - // Execute trade where we are spending much less than approved to create left-over allowance - subjectSendQuantity = subjectSendQuantity.mul(3).div(2); - await wrappedfCashMock.setMintTokenSpent(1); - await subject(); + describe("When receiveAmount is 0", () => { + beforeEach(async () => { + subjectMinReceiveQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); + }); - const spendAmount = oldSubjectSendQuantity.mul(5).div(4); - const allowance = await sendToken.allowance( - setToken.address, - wrappedfCashMock.address, - ); - expect(allowance).to.be.gte(spendAmount); - await wrappedfCashMock.setMintTokenSpent(spendAmount); + describe(`when too much ${tokenType} is spent`, () => { + beforeEach(async () => { + const oldSubjectSendQuantity = subjectSendQuantity; - subjectSendQuantity = oldSubjectSendQuantity; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith("Overspent"); - }); - }); + // Execute trade where we are spending much less than approved to create left-over allowance + subjectSendQuantity = subjectSendQuantity.mul(3).div(2); + await wrappedfCashMock.setMintTokenSpent(1); + await subject(); - describe("when swap fails due to insufficient allowance", () => { - beforeEach(async () => { - await wrappedfCashMock.setMintTokenSpent( - subjectSendQuantity.mul(2), + const spendAmount = oldSubjectSendQuantity.mul(5).div(4); + const allowance = await sendToken.allowance( + setToken.address, + wrappedfCashMock.address, + ); + expect(allowance).to.be.gte(spendAmount); + await wrappedfCashMock.setMintTokenSpent(spendAmount); + + subjectSendQuantity = oldSubjectSendQuantity; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith("Overspent"); + }); + }); + + describe("when swap fails due to insufficient allowance", () => { + beforeEach(async () => { + await wrappedfCashMock.setMintTokenSpent( + subjectSendQuantity.mul(2), + ); + }); + it("should revert", async () => { + const revertMessage = + tokenType == "assetToken" + ? "WrappedfCashMock: Transfer failed" + : underlyingTokenName == "dai" + ? "ERC20: transfer amount exceeds allowance" + : "Address: low-level call with value failed"; + await expect(subject()).to.be.revertedWith(revertMessage); + }); + }); + } else { + describe("When wrappedFCash is not deployed for given parameters", () => { + beforeEach(async () => { + subjectCurrencyId = 10; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "WrappedfCash not deployed for given parameters", + ); + }); + }); + + describe("When receiveToken is neither underlying nor asset token", () => { + beforeEach(async () => { + subjectReceiveToken = ethers.constants.AddressZero; + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Token is neither asset nor underlying token", + ); + }); + }); + + describe("When sendAmount is 0", () => { + beforeEach(async () => { + subjectSendQuantity = BigNumber.from(0); + }); + it("should not revert", async () => { + await subject(); + }); + }); + describe(`when too little ${tokenType} is returned`, () => { + beforeEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned( + subjectMinReceiveQuantity.div(2), + ); + }); + afterEach(async () => { + await wrappedfCashMock.setRedeemTokenReturned(0); + }); + it("should revert", async () => { + await expect(subject()).to.be.revertedWith( + "Not enough received amount", + ); + }); + }); + } + it("setToken should receive receiver token", async () => { + const receiveTokenBalanceBefore = await receiveToken.balanceOf( + setToken.address, ); - }); - it("should revert", async () => { - const revertMessage = - tokenType == "assetToken" - ? "WrappedfCashMock: Transfer failed" - : underlyingTokenName == "dai" - ? "ERC20: transfer amount exceeds allowance" - : "Address: low-level call with value failed"; - await expect(subject()).to.be.revertedWith(revertMessage); - }); - }); - } else { - describe("When wrappedFCash is not deployed for given parameters", () => { - beforeEach(async () => { - subjectCurrencyId = 10; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "WrappedfCash not deployed for given parameters", + await subject(); + const receiveTokenBalanceAfter = await receiveToken.balanceOf( + setToken.address, ); + expect( + receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), + ).to.be.gte(subjectMinReceiveQuantity); }); - }); - describe("When receiveToken is neither underlying nor asset token", () => { - beforeEach(async () => { - subjectReceiveToken = ethers.constants.AddressZero; - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Token is neither asset nor underlying token", + it("setTokens sendToken balance should be adjusted accordingly", async () => { + const sendTokenBalanceBefore = await sendToken.balanceOf( + setToken.address, ); - }); - }); - - describe("When sendAmount is 0", () => { - beforeEach(async () => { - subjectSendQuantity = BigNumber.from(0); - }); - it("should not revert", async () => { await subject(); - }); - }); - describe(`when too little ${tokenType} is returned`, () => { - beforeEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned( - subjectMinReceiveQuantity.div(2), - ); - }); - afterEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned(0); - }); - it("should revert", async () => { - await expect(subject()).to.be.revertedWith( - "Not enough received amount", + const sendTokenBalanceAfter = await sendToken.balanceOf( + setToken.address, ); + if (tradeDirection == "selling") { + expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( + subjectSendQuantity, + ); + } else { + expect( + sendTokenBalanceBefore.sub(sendTokenBalanceAfter), + ).to.be.lte(subjectSendQuantity); + } }); - }); - } - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); - }); - - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf( - setToken.address, - ); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf( - setToken.address, - ); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, - ); - } else { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.be.lte( - subjectSendQuantity, - ); - } - }); - - it("should not revert when executing trade twice", async () => { - await subject(); - await subject(); - }); - - it("should return spent / received amount of non-fcash-token", async () => { - const otherTokenBalanceBefore = await otherToken.balanceOf( - setToken.address, - ); - const result = await subjectCall(); - await subject(); - const otherTokenBalanceAfter = await otherToken.balanceOf( - setToken.address, - ); - - let expectedResult; - if (tradeDirection == "selling") { - expectedResult = otherTokenBalanceAfter.sub( - otherTokenBalanceBefore, - ); - } else { - expectedResult = otherTokenBalanceBefore.sub( - otherTokenBalanceAfter, - ); - } - - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(result).to.be.gte( - expectedResult.mul(100 - allowedDeviationPercent).div(100), - ); - expect(result).to.be.lte( - expectedResult.mul(100 + allowedDeviationPercent).div(100), - ); - }); - - it("should adjust the components position of the receiveToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const tradeAmount = await subjectCall(); - const receiveTokenAmount = - tradeDirection == "buying" - ? subjectMinReceiveQuantity - : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - receiveToken.address, - ); - const positionChange = positionAfter.sub(positionBefore); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); - - let receiveTokenAmountNormalized; - if (receiveTokenType == "underlyingToken") { - receiveTokenAmountNormalized = receiveTokenAmount.div( - totalSetSupplyEther, - ); - } else { - receiveTokenAmountNormalized = BigNumber.from( - Math.floor( - receiveTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / - 10, - ), - ); - } - - if (receiveTokenType == "underlyingToken") { - // TODO: Review why there is some deviation - const allowedDeviationPercent = 1; - expect(receiveTokenAmountNormalized).to.be.gte( - positionChange.mul(100 - allowedDeviationPercent).div(100), - ); - expect(receiveTokenAmountNormalized).to.be.lte( - positionChange.mul(100 + allowedDeviationPercent).div(100), - ); - } else { - expect(receiveTokenAmountNormalized).to.eq(positionChange); - } - }); + if (relativeAmount != "higher") { + it("should not revert when executing trade twice", async () => { + await subject(); + await subject(); + }); + } - it("should adjust the components position of the sendToken correctly", async () => { - const positionBefore = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); - const tradeAmount = await subjectCall(); - const sendTokenAmount = - tradeDirection == "selling" ? subjectSendQuantity : tradeAmount; - await subject(); - const positionAfter = await setToken.getDefaultPositionRealUnit( - sendToken.address, - ); + it("should return spent / received amount of non-fcash-token", async () => { + const otherTokenBalanceBefore = await otherToken.balanceOf( + setToken.address, + ); + const result = await subjectCall(); + await subject(); + const otherTokenBalanceAfter = await otherToken.balanceOf( + setToken.address, + ); - const positionChange = positionBefore.sub(positionAfter); - const totalSetSupplyWei = await setToken.totalSupply(); - const totalSetSupplyEther = totalSetSupplyWei.div( - BigNumber.from(10).pow(18), - ); + let expectedResult; + if (tradeDirection == "selling") { + expectedResult = otherTokenBalanceAfter.sub( + otherTokenBalanceBefore, + ); + } else { + expectedResult = otherTokenBalanceBefore.sub( + otherTokenBalanceAfter, + ); + } - let sendTokenAmountNormalized; - if (sendTokenType == "underlyingToken") { - sendTokenAmountNormalized = sendTokenAmount.div( - totalSetSupplyEther, - ); - } else { - sendTokenAmountNormalized = BigNumber.from( - // TODO: Why do we have to use round here and floor with the receive token ? - Math.round( - sendTokenAmount.mul(10).div(totalSetSupplyEther).toNumber() / - 10, - ), - ); - } + expect(result).to.eq(expectedResult); + }); - expect(sendTokenAmountNormalized).to.closeTo( - positionChange, - positionChange.div(10 ** 6).toNumber(), - ); - }); + it("should adjust the components position of the receiveToken correctly", async () => { + const positionBefore = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); + const tradeAmount = await subjectCall(); + const receiveTokenAmount = + tradeDirection == "buying" + ? subjectMinReceiveQuantity + : tradeAmount; + await subject(); + const positionAfter = await setToken.getDefaultPositionRealUnit( + receiveToken.address, + ); - describe("when amount of send token spent is higher than registered position", () => { - beforeEach(async () => { - await wrappedfCashMock.setRedeemTokenReturned(subjectSendQuantity); - const additionalAmount = subjectSendQuantity.div(2); - await sendToken.transfer(setToken.address, additionalAmount); + const positionChange = positionAfter.sub(positionBefore); + const totalSetSupplyWei = await setToken.totalSupply(); + const totalSetSupplyEther = totalSetSupplyWei.div( + BigNumber.from(10).pow(18), + ); - const sendTokenPosition = await setToken.getTotalComponentRealUnits( - sendToken.address, - ); - const sendTokenBalance = await sendToken.balanceOf( - setToken.address, - ); + let receiveTokenAmountNormalized; + if (receiveTokenType == "underlyingToken") { + receiveTokenAmountNormalized = receiveTokenAmount.div( + totalSetSupplyEther, + ); + } else { + receiveTokenAmountNormalized = BigNumber.from( + Math.floor( + receiveTokenAmount + .mul(10) + .div(totalSetSupplyEther) + .toNumber() / 10, + ), + ); + } - expect(sendTokenBalance.gt(sendTokenPosition)); + expect(receiveTokenAmountNormalized).to.eq(positionChange); + }); - subjectSendQuantity = sendTokenBalance; - }); - it("setToken should receive receiver token", async () => { - const receiveTokenBalanceBefore = await receiveToken.balanceOf( - setToken.address, - ); - await subject(); - const receiveTokenBalanceAfter = await receiveToken.balanceOf( - setToken.address, - ); - expect( - receiveTokenBalanceAfter.sub(receiveTokenBalanceBefore), - ).to.be.gte(subjectMinReceiveQuantity); - }); + it("should adjust the components position of the sendToken correctly", async () => { + const positionBefore = await setToken.getTotalComponentRealUnits( + sendToken.address, + ); + const tradeAmount = await subjectCall(); + let expectedPositionChange = (tradeDirection == "selling" + ? subjectSendQuantity + : tradeAmount + ) + .mul(BigNumber.from(10).pow(18)) + .div(await setToken.totalSupply()); + + if (expectedPositionChange.gt(positionBefore)) { + expectedPositionChange = positionBefore; + } - it("setTokens sendToken balance should be adjusted accordingly", async () => { - const sendTokenBalanceBefore = await sendToken.balanceOf( - setToken.address, - ); - await subject(); - const sendTokenBalanceAfter = await sendToken.balanceOf( - setToken.address, - ); - if (tradeDirection == "selling") { - expect(sendTokenBalanceBefore.sub(sendTokenBalanceAfter)).to.eq( - subjectSendQuantity, + await subject(); + const positionAfter = await setToken.getTotalComponentRealUnits( + sendToken.address, ); - } else { - expect( - sendTokenBalanceBefore.sub(sendTokenBalanceAfter), - ).to.be.lte(subjectSendQuantity); - } + const positionChange = positionBefore.sub(positionAfter); + + expect(positionChange).to.eq(expectedPositionChange); + }); }); }); }); @@ -1153,7 +1116,7 @@ describe("NotionalTradeModule", () => { // Make sure set token was added to set expect(wrappedfCashMockPositionAfter).to.be.gt(0); }); - ["underlying", "asset"].forEach(redeemToken => { + ["asset", "underlying"].forEach(redeemToken => { describe(`when redeeming to ${redeemToken}`, () => { let outputToken: IERC20; beforeEach(async () => { From 39f2e75d6a36afe2ec71d4c1b528c25b8866b40b Mon Sep 17 00:00:00 2001 From: Christian Koopmann Date: Mon, 23 May 2022 12:10:27 +0800 Subject: [PATCH 120/120] Remove outdated TODO comments and logs --- contracts/mocks/WrappedfCashMock.sol | 8 -------- contracts/protocol/modules/v1/NotionalTradeModule.sol | 2 -- 2 files changed, 10 deletions(-) diff --git a/contracts/mocks/WrappedfCashMock.sol b/contracts/mocks/WrappedfCashMock.sol index 421b4a355..8f1c247f1 100644 --- a/contracts/mocks/WrappedfCashMock.sol +++ b/contracts/mocks/WrappedfCashMock.sol @@ -23,8 +23,6 @@ import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import { TokenType, IWrappedfCash } from "../interfaces/IWrappedFCash.sol"; -import "hardhat/console.sol"; - // mock class using BasicToken contract WrappedfCashMock is ERC20, IWrappedfCash { @@ -96,12 +94,6 @@ contract WrappedfCashMock is ERC20, IWrappedfCash { ) external override { _burn(msg.sender, amount); uint256 assetTokenAmount = redeemTokenReturned == 0 ? amount : redeemTokenReturned; - console.log("Returning assetToken amount"); - console.logUint(assetTokenAmount); - console.logUint(amount); - console.logUint(redeemTokenReturned); - console.logAddress(address(this)); - console.logUint(assetToken.balanceOf(address(this))); require(assetToken.transfer(receiver, assetTokenAmount), "WrappedfCashMock: Transfer failed"); } diff --git a/contracts/protocol/modules/v1/NotionalTradeModule.sol b/contracts/protocol/modules/v1/NotionalTradeModule.sol index 58f32e0ad..c959b0509 100644 --- a/contracts/protocol/modules/v1/NotionalTradeModule.sol +++ b/contracts/protocol/modules/v1/NotionalTradeModule.sol @@ -661,8 +661,6 @@ contract NotionalTradeModule is ModuleBase, ReentrancyGuard, Ownable, IModuleIss uint256 setTotalSupply = setToken.totalSupply(); - // This reverts if i try to trade a token that is not a registered component. (I.e. I just sent a lot of sendToken to the contract manually and then try to trade it. - // TODO: Review if this needs to be addressed (uint256 currentSendTokenBalance,,) = setToken.calculateAndEditDefaultPosition( sendToken, setTotalSupply,